'د.إ', 'AFN' => '؋', 'ALL' => 'L', 'AMD' => 'AMD', 'ANG' => 'ƒ', 'AOA' => 'Kz', 'ARS' => '$', 'AUD' => '$', 'AWG' => 'Afl.', 'AZN' => 'AZN', 'BAM' => 'KM', 'BBD' => '$', 'BDT' => '৳ ', 'BGN' => 'лв.', 'BHD' => '.د.ب', 'BIF' => 'Fr', 'BMD' => '$', 'BND' => '$', 'BOB' => 'Bs.', 'BRL' => 'R$', 'BSD' => '$', 'BTC' => '฿', 'BTN' => 'Nu.', 'BWP' => 'P', 'BYR' => 'Br', 'BYN' => 'Br', 'BZD' => '$', 'CAD' => '$', 'CDF' => 'Fr', 'CHF' => 'CHF', 'CLP' => '$', 'CNY' => '¥', 'COP' => '$', 'CRC' => '₡', 'CUC' => '$', 'CUP' => '$', 'CVE' => '$', 'CZK' => 'Kč', 'DJF' => 'Fr', 'DKK' => 'DKK', 'DOP' => 'RD$', 'DZD' => 'د.ج', 'EGP' => 'EGP', 'ERN' => 'Nfk', 'ETB' => 'Br', 'EUR' => '€', 'FJD' => '$', 'FKP' => '£', 'GBP' => '£', 'GEL' => '₾', 'GGP' => '£', 'GHS' => '₵', 'GIP' => '£', 'GMD' => 'D', 'GNF' => 'Fr', 'GTQ' => 'Q', 'GYD' => '$', 'HKD' => '$', 'HNL' => 'L', 'HRK' => 'Kn', 'HTG' => 'G', 'HUF' => 'Ft', 'IDR' => 'Rp', 'ILS' => '₪', 'IMP' => '£', 'INR' => '₹', 'IQD' => 'ع.د', 'IRR' => '﷼', 'IRT' => 'تومان', 'ISK' => 'kr.', 'JEP' => '£', 'JMD' => '$', 'JOD' => 'د.ا', 'JPY' => '¥', 'KES' => 'KSh', 'KGS' => 'сом', 'KHR' => '៛', 'KMF' => 'Fr', 'KPW' => '₩', 'KRW' => '₩', 'KWD' => 'د.ك', 'KYD' => '$', 'KZT' => 'KZT', 'LAK' => '₭', 'LBP' => 'ل.ل', 'LKR' => 'රු', 'LRD' => '$', 'LSL' => 'L', 'LYD' => 'ل.د', 'MAD' => 'د.م.', 'MDL' => 'MDL', 'MGA' => 'Ar', 'MKD' => 'ден', 'MMK' => 'Ks', 'MNT' => '₮', 'MOP' => 'P', 'MRO' => 'UM', 'MUR' => '₨', 'MVR' => '.ރ', 'MWK' => 'MK', 'MXN' => '$', 'MYR' => 'RM', 'MZN' => 'MT', 'NAD' => '$', 'NGN' => '₦', 'NIO' => 'C$', 'NOK' => 'kr', 'NPR' => '₨', 'NZD' => '$', 'OMR' => 'ر.ع.', 'PAB' => 'B/.', 'PEN' => 'S/.', 'PGK' => 'K', 'PHP' => '₱', 'PKR' => '₨', 'PLN' => 'zł', 'PRB' => 'р.', 'PYG' => '₲', 'QAR' => 'ر.ق', 'RMB' => '¥', 'RON' => 'lei', 'RSD' => 'дин.', 'RUB' => '₽', 'RWF' => 'Fr', 'SAR' => 'ر.س', 'SBD' => '$', 'SCR' => '₨', 'SDG' => 'ج.س.', 'SEK' => 'kr', 'SGD' => '$', 'SHP' => '£', 'SLL' => 'Le', 'SOS' => 'Sh', 'SRD' => '$', 'SSP' => '£', 'STD' => 'Db', 'SYP' => 'ل.س', 'SZL' => 'L', 'THB' => '฿', 'TJS' => 'ЅМ', 'TMT' => 'm', 'TND' => 'د.ت', 'TOP' => 'T$', 'TRY' => '₺', 'TTD' => '$', 'TWD' => 'NT$', 'TZS' => 'Sh', 'UAH' => '₴', 'UGX' => 'UGX', 'USD' => '$', 'UYU' => '$', 'UZS' => 'UZS', 'VEF' => 'Bs F', 'VND' => '₫', 'VUV' => 'Vt', 'WST' => 'T', 'XAF' => 'CFA', 'XCD' => '$', 'XOF' => 'CFA', 'XPF' => 'Fr', 'YER' => '﷼', 'ZAR' => 'R', 'ZMW' => 'ZK', ) ); return $currency_symbol = isset($symbols[$currency]) ? $symbols[$currency] : ''; } function pifw_get_invoice_status_name_and_class($status) { $invoice_status = array( "UNPAID" => array('label' => 'Unpaid', 'class' => 'isDraft', 'action' => array('send' => 'Send')), "SENT" => array('label' => 'Unpaid (Sent)', 'class' => 'isDraft', 'action' => array('remind' => 'Remind')), 'SCHEDULED' => array('label' => 'Scheduled', 'class' => 'isDraft'), "DRAFT" => array('label' => 'Draft', 'class' => 'isDraft', 'action' => array('send' => 'Send')), "PAID" => array('label' => 'Paid', 'class' => 'isPaid'), "MARKED_AS_PAID" => array('label' => 'Mark as paid', 'class' => 'isPaid'), "CANCELLED" => array('label' => 'Cancelled', 'class' => 'isCancelled'), "REFUNDED" => array('label' => 'Refunded', 'class' => 'isDraft'), "PARTIALLY_REFUNDED" => array('label' => 'Partially refunded', 'class' => 'isDraft'), "MARKED_AS_REFUNDED" => array('label' => 'Mark as refunded', 'class' => 'isDraft'), "PAYMENT_PENDING" => array('label' => 'Payment pending', 'class' => 'isDraft'), "PARTIALLY_PAID" => array('label' => 'Partially paid', 'class' => 'isPartiallyPaid', 'action' => array('remind' => 'Remind')), ); if (!empty($invoice_status[$status])) { return $invoice_status[$status]; } } function pifw_clean($var) { if (is_array($var)) { return array_map('pifw_clean', $var); } else { return is_scalar($var) ? sanitize_text_field($var) : $var; } } function pifw_get_paypal_invoice_date_format($date, $output_date_format = 'Y-m-d T') { $input_date_format = get_option('date_format'); $string = preg_replace('/[(]+[^*]+/', '', $date); $current_offset = get_option('gmt_offset'); $tzstring = get_option('timezone_string'); $check_zone_info = true; if (false !== strpos($tzstring, 'Etc/GMT')) { $tzstring = ''; } if (empty($tzstring)) { // Create a UTC+- zone if no timezone string exists $check_zone_info = false; if (0 == $current_offset) $tzstring = 'UTC+0'; elseif ($current_offset < 0) $tzstring = 'UTC' . $current_offset; else $tzstring = 'UTC+' . $current_offset; } $allowed_zones = timezone_identifiers_list(); if (in_array($tzstring, $allowed_zones)) { //$tz = new DateTimeZone($tzstring); date_default_timezone_set($tzstring); } else { //$tz = new DateTimeZone('UTC'); date_default_timezone_set('UTC'); } $dt = DateTime::createFromFormat($input_date_format, $string); return $dt->format($output_date_format); } function angelleye_date_format_php_to_js( $sFormat ) { switch( $sFormat ) { //Predefined WP date formats case 'F j, Y': return( 'MM dd, yy' ); break; case 'Y/m/d': return( 'yy/mm/dd' ); break; case 'm/d/Y': return( 'mm/dd/yy' ); break; case 'd/m/Y': return( 'dd/mm/yy' ); break; } }