PluginProbe
Easy Invoice – Invoice Generator, PDF Quotes & Payments / 2.4.1
Easy Invoice – Invoice Generator, PDF Quotes & Payments v2.4.1
2.4.0 2.4.1 2.3.8 2.3.7 2.3.6 2.3.5 2.3.4 2.3.3 2.3.2 2.3.1 2.2.0 2.1.21 2.1.20 2.1.19 2.1.18 2.1.0 2.1.1 2.1.10 2.1.11 2.1.12 2.1.13 2.1.14 2.1.15 2.1.16 2.1.2 All 57 releases
easy-invoice / includes / Helpers / GeneralHelper.php

GeneralHelper.php in Easy Invoice – Invoice Generator, PDF Quotes & Payments 2.4.1, at includes/Helpers/GeneralHelper.php

139 lines 4.7 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 if ( ! defined( 'ABSPATH' ) ) {
4 exit;
5 }
6 // General plugin logic, feature toggles, repository/service getters, plugin state, etc.
7
8 function easy_invoice_should_show_quote_adjust_field(): bool {
9 return \EasyInvoice\Controllers\SettingsController::shouldShowQuoteAdjustField();
10 }
11 function easy_invoice_should_show_invoice_adjust_field(): bool {
12 return \EasyInvoice\Controllers\SettingsController::shouldShowInvoiceAdjustField();
13 }
14 function easy_invoice_get_quote_prefix(): string {
15 return \EasyInvoice\Controllers\SettingsController::getQuotePrefix();
16 }
17 function easy_invoice_get_quote_starting_number(): int {
18 return \EasyInvoice\Controllers\SettingsController::getQuoteStartingNumber();
19 }
20 function easy_invoice_get_quote_terms_conditions(): string {
21 return \EasyInvoice\Controllers\SettingsController::getQuoteTermsConditions();
22 }
23 function easy_invoice_get_quote_footer_text(): string {
24 return \EasyInvoice\Controllers\SettingsController::getQuoteFooterText();
25 }
26 function easy_invoice_should_show_quote_accept_button(): bool {
27 return \EasyInvoice\Controllers\SettingsController::shouldShowQuoteAcceptButton();
28 }
29 function easy_invoice_get_quote_accept_action(): string {
30 return \EasyInvoice\Controllers\SettingsController::getQuoteAcceptAction();
31 }
32 function easy_invoice_get_quote_accept_text(): string {
33 return \EasyInvoice\Controllers\SettingsController::getQuoteAcceptText();
34 }
35 function easy_invoice_get_accepted_quote_message(): string {
36 return \EasyInvoice\Controllers\SettingsController::getAcceptedQuoteMessage();
37 }
38 function easy_invoice_is_decline_reason_required(): bool {
39 return \EasyInvoice\Controllers\SettingsController::isDeclineReasonRequired();
40 }
41 function easy_invoice_get_declined_quote_message(): string {
42 return \EasyInvoice\Controllers\SettingsController::getDeclinedQuoteMessage();
43 }
44 function easy_invoice_get_invoice_prefix(): string {
45 return \EasyInvoice\Controllers\SettingsController::getInvoicePrefix();
46 }
47 function easy_invoice_get_invoice_starting_number(): int {
48 return \EasyInvoice\Controllers\SettingsController::getInvoiceStartingNumber();
49 }
50 function easy_invoice_get_invoice_terms_conditions(): string {
51 return \EasyInvoice\Controllers\SettingsController::getInvoiceTermsConditions();
52 }
53 function easy_invoice_get_invoice_footer_text(): string {
54 return \EasyInvoice\Controllers\SettingsController::getInvoiceFooterText();
55 }
56
57 /**
58 * Get invoice repository helper function.
59 *
60 * @since 1.0.0
61 * @return \EasyInvoice\Interfaces\InvoiceRepositoryInterface
62 */
63 function easy_invoice_get_repository() {
64 return \EasyInvoice\Providers\InvoiceServiceProvider::getInvoiceRepository();
65 }
66
67 /**
68 * Get client repository helper function.
69 *
70 * @since 1.0.0
71 * @return \EasyInvoice\Interfaces\ClientRepositoryInterface
72 */
73 function easy_invoice_get_client_repository() {
74 return \EasyInvoice\Providers\ClientServiceProvider::getClientRepository();
75 }
76
77 /**
78 * Get invoice item repository helper function.
79 *
80 * @since 1.0.0
81 * @return \EasyInvoice\Interfaces\InvoiceItemRepositoryInterface
82 */
83 function easy_invoice_get_invoice_item_repository() {
84 return \EasyInvoice\Providers\InvoiceItemServiceProvider::getInvoiceItemRepository();
85 }
86
87 /**
88 * Get invoice number service helper function.
89 *
90 * @since 1.0.0
91 * @return \EasyInvoice\Services\InvoiceNumberService
92 */
93 function easy_invoice_get_invoice_number_service() {
94 $provider = new \EasyInvoice\Providers\InvoiceNumberServiceProvider();
95 return $provider->getInvoiceNumberService();
96 }
97
98 /**
99 * Get quote number service helper function.
100 *
101 * @since 1.0.0
102 * @return \EasyInvoice\Services\QuoteNumberService
103 */
104 function easy_invoice_get_quote_number_service() {
105 return \EasyInvoice\Providers\QuoteNumberServiceProvider::getQuoteNumberServiceStatic();
106 }
107
108 /**
109 * Check if Easy Invoice Pro is installed and active
110 *
111 * @since 1.0.0
112 * @return bool
113 */
114 function easy_invoice_has_pro(): bool {
115 // The main class is hoisted even when Pro's file bails out early (it
116 // refuses to run against a free plugin older than it needs), so also
117 // require a class that only its autoloader provides.
118 return class_exists('EasyInvoicePro') && class_exists('\\EasyInvoicePro\\Updater\\License');
119 }
120
121 /**
122 * Convert various boolean values to a consistent boolean
123 *
124 * @since 1.0.0
125 * @param mixed $value The value to convert to boolean
126 * @return bool
127 */
128 function easy_invoice_boolean($value): bool {
129 return \EasyInvoice\Helpers\BooleanHelper::toBoolean($value);
130 }
131 function easy_invoice_str_replace($search, $replace, $subject, $count = null) {
132 // Ensure $subject is not null
133 $subject = $subject ?? '';
134
135 if($count === null) {
136 return str_replace($search, $replace, $subject);
137 }
138 return str_replace($search, $replace, $subject, $count);
139 }