PluginProbe ʕ •ᴥ•ʔ
SureCart – Ecommerce Made Easy For Selling Physical Products, Digital Downloads, Subscriptions, Donations, & Payments / 2.31.3
SureCart – Ecommerce Made Easy For Selling Physical Products, Digital Downloads, Subscriptions, Donations, & Payments v2.31.3
4.4.1 4.4.0 4.3.3 4.3.2 4.3.1 4.3.0 4.2.3 4.2.2 4.2.1 1.0.3 1.0.4 1.0.5 1.0.6 1.1.0 1.1.1 1.1.10 1.1.11 1.1.12 1.1.13 1.1.14 1.1.15 1.1.16 1.1.17 1.1.18 1.1.19 1.1.2 1.1.3 1.1.4 1.1.5 1.1.6 1.1.7 1.1.8 1.1.9 1.10.0 1.10.1 1.10.2 1.10.3 1.10.4 1.11.0 1.11.1 1.11.2 1.2.0 1.2.1 1.2.2 1.2.3 1.2.4 1.2.5 1.3.0 1.3.1 1.3.2 1.3.3 1.3.4 1.4.0 1.4.1 1.4.2 1.5.0 1.5.1 1.5.2 1.5.3 1.5.4 1.5.5 1.5.6 1.5.7 1.5.8 1.6.0 1.6.1 1.6.2 1.6.3 1.6.4 1.7.0 1.7.1 1.7.2 1.8.0 1.8.1 1.8.2 1.8.3 1.8.4 1.8.5 1.9.0 1.9.1 1.9.2 1.9.3 1.9.4 1.9.5 2.0.0 2.0.1 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.10.0 2.10.1 2.11.0 2.11.1 2.11.2 2.11.3 2.11.4 2.12.0 2.13.0 2.14.0 2.14.1 2.15.0 2.15.1 2.16.0 2.16.1 2.16.2 2.16.3 2.17.0 2.17.1 2.17.2 2.18.0 2.19.0 2.19.2 2.19.3 2.19.4 2.2.0 2.2.1 2.20.0 2.20.1 2.20.2 2.20.3 2.20.4 2.20.5 2.20.6 2.21.0 2.22.0 2.22.1 2.23.0 2.24.0 2.25.0 2.25.1 2.25.2 2.26.0 2.27.0 2.27.1 2.28.0 2.29.0 2.29.1 2.29.2 2.29.3 2.29.4 2.3.0 2.3.1 2.30.0 2.31.0 2.31.1 2.31.2 2.31.3 2.4.0 2.4.1 2.4.2 2.4.3 2.4.4 2.40.0 2.40.1 2.5.0 2.5.1 2.5.2 2.6.0 2.6.1 2.6.2 2.7.0 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.8.0 2.8.1 2.8.2 2.8.3 2.8.4 2.9.0 3.0.0 3.0.0-RC1 3.0.0-RC2 3.0.0-beta1 3.0.0-beta2 3.0.1 3.0.2 3.0.3 3.0.4 3.0.5 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 3.10.0 3.10.1 3.11.0 3.12.0 3.13.0 3.13.1 3.13.2 3.13.3 3.13.4 3.14.0 3.15.0 3.15.1 3.15.2 3.15.3 3.15.4 3.15.5 3.16.0 3.16.1 3.16.2 3.16.3 3.16.4 3.16.5 3.16.6 3.16.7 3.16.8 3.17.0 3.17.1 3.17.2 3.17.3 3.17.4 3.17.5 3.17.6 3.18.0 3.19.0 3.19.1 3.19.2 3.2.0 3.2.1 3.2.2 3.20.0 3.20.1 3.3.0 3.3.1 3.4.0 3.4.1 3.4.2 3.4.3 3.5.0 3.5.1 3.5.2 3.5.3 3.6.0 3.6.1 3.6.2 3.7.0 3.7.1 3.7.2 3.7.3 3.8.0 3.8.1 3.8.2 3.8.3 3.8.4 3.8.5 3.9.0 4.0.0 4.0.1 4.0.2 4.0.3 trunk 4.1.0 0.2.19.1 4.1.1 1.0.0 4.2.0 1.0.1 1.0.2
surecart / app / src / Support / TimeDate.php
surecart / app / src / Support Last commit date
Blocks 1 year ago Contracts 1 year ago Errors 1 year ago Scripts 2 years ago Arrays.php 3 years ago ColorService.php 3 years ago Currency.php 1 year ago Encryption.php 3 years ago Server.php 2 years ago TimeDate.php 2 years ago Translations.php 3 years ago URL.php 2 years ago UtilityService.php 3 years ago UtilityServiceProvider.php 3 years ago kses.json 1 year ago
TimeDate.php
260 lines
1 <?php
2
3 namespace SureCart\Support;
4
5 /**
6 * Datetime utilities.
7 */
8 class TimeDate {
9 /**
10 * Get the SureCart date format
11 *
12 * @return string
13 */
14 public static function getDateFormat() {
15 $date_format = get_option( 'date_format' );
16 if ( empty( $date_format ) ) {
17 // Return default date format if the option is empty.
18 $date_format = 'F j, Y';
19 }
20 return apply_filters( 'surecart/date_format', $date_format );
21 }
22
23 /**
24 * Get the SureCart time format
25 *
26 * @return string
27 */
28 public static function getTimeFormat() {
29 $time_format = get_option( 'time_format' );
30 if ( empty( $time_format ) ) {
31 // Return default time format if the option is empty.
32 $time_format = 'g:i a';
33 }
34 return apply_filters( 'surecart/time_format', $time_format );
35 }
36
37 /**
38 * Date Format - Allows to change date format for everything SureCart
39 *
40 * @return string
41 */
42 public static function formatDate( $timestamp ) {
43 return date_i18n( self::getDateFormat(), $timestamp );
44 }
45
46 /**
47 * WooCommerce Time Format - Allows to change time format for everything WooCommerce.
48 *
49 * @return string
50 */
51 public static function formatTime( $timestamp ) {
52 return date_i18n( self::getTimeFormat(), $timestamp );
53 }
54
55 /**
56 * Format both date and time
57 *
58 * @param integer $timestamp
59 * @return string
60 */
61 public static function formatDateAndTime( $timestamp ) {
62 return self::formatDate( $timestamp ) . ' ' . self::formatTime( $timestamp );
63 }
64
65 /**
66 * Human readable Human Time Diff
67 *
68 * @param integer $timestamp Timestamp
69 * @return string
70 */
71 public static function humanTimeDiff( $timestamp, $ignore_after = '1 day' ) {
72 if ( $timestamp > strtotime( "-$ignore_after", time() ) ) {
73 return sprintf(
74 /* translators: %s: human-readable time difference */
75 _x( '%s ago', '%s = human-readable time difference', 'surecart' ),
76 human_time_diff( $timestamp, time() )
77 );
78 } else {
79 return self::formatDate( $timestamp );
80 }
81 }
82
83 public static function timezoneOptions() {
84 return [
85 'America/Adak' => __( '(GMT-10:00) America/Adak', 'surecart' ),
86 'Pacific/Honolulu' => __( '(GMT-10:00) Hawaii', 'surecart' ),
87 'America/Juneau' => __( '(GMT-09:00) Alaska', 'surecart' ),
88 'America/Anchorage' => __( '(GMT-09:00) America/Anchorage', 'surecart' ),
89 'America/Metlakatla' => __( '(GMT-09:00) America/Metlakatla', 'surecart' ),
90 'America/Nome' => __( '(GMT-09:00) America/Nome', 'surecart' ),
91 'America/Sitka' => __( '(GMT-09:00) America/Sitka', 'surecart' ),
92 'America/Yakutat' => __( '(GMT-09:00) America/Yakutat', 'surecart' ),
93 'America/Los_Angeles' => __( '(GMT-08:00) Pacific Time (US & Canada)', 'surecart' ),
94 'America/Boise' => __( '(GMT-07:00) America/Boise', 'surecart' ),
95 'America/Phoenix' => __( '(GMT-07:00) Arizona', 'surecart' ),
96 'America/Denver' => __( '(GMT-07:00) Mountain Time (US & Canada)', 'surecart' ),
97 'America/Indiana/Knox' => __( '(GMT-06:00) America/Indiana/Knox', 'surecart' ),
98 'America/Indiana/Tell_City' => __( '(GMT-06:00) America/Indiana/Tell_City', 'surecart' ),
99 'America/Menominee' => __( '(GMT-06:00) America/Menominee', 'surecart' ),
100 'America/North_Dakota/Beulah' => __( '(GMT-06:00) America/North_Dakota/Beulah', 'surecart' ),
101 'America/North_Dakota/Center' => __( '(GMT-06:00) America/North_Dakota/Center', 'surecart' ),
102 'America/North_Dakota/New_Salem' => __( '(GMT-06:00) America/North_Dakota/New_Salem', 'surecart' ),
103 'America/Chicago' => __( '(GMT-06:00) Central Time (US & Canada)', 'surecart' ),
104 'America/Detroit' => __( '(GMT-05:00) America/Detroit', 'surecart' ),
105 'America/Indiana/Marengo' => __( '(GMT-05:00) America/Indiana/Marengo', 'surecart' ),
106 'America/Indiana/Petersburg' => __( '(GMT-05:00) America/Indiana/Petersburg', 'surecart' ),
107 'America/Indiana/Vevay' => __( '(GMT-05:00) America/Indiana/Vevay', 'surecart' ),
108 'America/Indiana/Vincennes' => __( '(GMT-05:00) America/Indiana/Vincennes', 'surecart' ),
109 'America/Indiana/Winamac' => __( '(GMT-05:00) America/Indiana/Winamac', 'surecart' ),
110 'America/Kentucky/Louisville' => __( '(GMT-05:00) America/Kentucky/Louisville', 'surecart' ),
111 'America/Kentucky/Monticello' => __( '(GMT-05:00) America/Kentucky/Monticello', 'surecart' ),
112 'America/New_York' => __( '(GMT-05:00) Eastern Time (US & Canada)', 'surecart' ),
113 'America/Indiana/Indianapolis' => __( '(GMT-05:00) Indiana (East)', 'surecart' ),
114 'Etc/GMT+12' => __( '(GMT-12:00) International Date Line West', 'surecart' ),
115 'Pacific/Pago_Pago' => __( '(GMT-11:00) American Samoa', 'surecart' ),
116 'Pacific/Midway' => __( '(GMT-11:00) Midway Island', 'surecart' ),
117 'America/Tijuana' => __( '(GMT-08:00) Tijuana', 'surecart' ),
118 'America/Chihuahua' => __( '(GMT-07:00) Chihuahua', 'surecart' ),
119 'America/Mazatlan' => __( '(GMT-07:00) Mazatlan', 'surecart' ),
120 'America/Guatemala' => __( '(GMT-06:00) Central America', 'surecart' ),
121 'America/Mexico_City' => __( '(GMT-06:00) Guadalajara', 'surecart' ),
122 'America/Mexico_City' => __( '(GMT-06:00) Mexico City', 'surecart' ),
123 'America/Monterrey' => __( '(GMT-06:00) Monterrey', 'surecart' ),
124 'America/Regina' => __( '(GMT-06:00) Saskatchewan', 'surecart' ),
125 'America/Bogota' => __( '(GMT-05:00) Bogota', 'surecart' ),
126 'America/Lima' => __( '(GMT-05:00) Lima', 'surecart' ),
127 'America/Lima' => __( '(GMT-05:00) Quito', 'surecart' ),
128 'America/Halifax' => __( '(GMT-04:00) Atlantic Time (Canada)', 'surecart' ),
129 'America/Caracas' => __( '(GMT-04:00) Caracas', 'surecart' ),
130 'America/Guyana' => __( '(GMT-04:00) Georgetown', 'surecart' ),
131 'America/La_Paz' => __( '(GMT-04:00) La Paz', 'surecart' ),
132 'America/Puerto_Rico' => __( '(GMT-04:00) Puerto Rico', 'surecart' ),
133 'America/Santiago' => __( '(GMT-04:00) Santiago', 'surecart' ),
134 'America/St_Johns' => __( '(GMT-03:30) Newfoundland', 'surecart' ),
135 'America/Sao_Paulo' => __( '(GMT-03:00) Brasilia', 'surecart' ),
136 'America/Argentina/Buenos_Aires' => __( '(GMT-03:00) Buenos Aires', 'surecart' ),
137 'America/Godthab' => __( '(GMT-03:00) Greenland', 'surecart' ),
138 'America/Montevideo' => __( '(GMT-03:00) Montevideo', 'surecart' ),
139 'Atlantic/South_Georgia' => __( '(GMT-02:00) Mid-Atlantic', 'surecart' ),
140 'Atlantic/Azores' => __( '(GMT-01:00) Azores', 'surecart' ),
141 'Atlantic/Cape_Verde' => __( '(GMT-01:00) Cape Verde Is.', 'surecart' ),
142 'Europe/London' => __( '(GMT+00:00) Edinburgh', 'surecart' ),
143 'Europe/Lisbon' => __( '(GMT+00:00) Lisbon', 'surecart' ),
144 'Europe/London' => __( '(GMT+00:00) London', 'surecart' ),
145 'Africa/Monrovia' => __( '(GMT+00:00) Monrovia', 'surecart' ),
146 'Etc/UTC' => __( '(GMT+00:00) UTC', 'surecart' ),
147 'Europe/Amsterdam' => __( '(GMT+01:00) Amsterdam', 'surecart' ),
148 'Europe/Belgrade' => __( '(GMT+01:00) Belgrade', 'surecart' ),
149 'Europe/Berlin' => __( '(GMT+01:00) Berlin', 'surecart' ),
150 'Europe/Zurich' => __( '(GMT+01:00) Bern', 'surecart' ),
151 'Europe/Bratislava' => __( '(GMT+01:00) Bratislava', 'surecart' ),
152 'Europe/Brussels' => __( '(GMT+01:00) Brussels', 'surecart' ),
153 'Europe/Budapest' => __( '(GMT+01:00) Budapest', 'surecart' ),
154 'Africa/Casablanca' => __( '(GMT+01:00) Casablanca', 'surecart' ),
155 'Europe/Copenhagen' => __( '(GMT+01:00) Copenhagen', 'surecart' ),
156 'Europe/Dublin' => __( '(GMT+01:00) Dublin', 'surecart' ),
157 'Europe/Ljubljana' => __( '(GMT+01:00) Ljubljana', 'surecart' ),
158 'Europe/Madrid' => __( '(GMT+01:00) Madrid', 'surecart' ),
159 'Europe/Paris' => __( '(GMT+01:00) Paris', 'surecart' ),
160 'Europe/Prague' => __( '(GMT+01:00) Prague', 'surecart' ),
161 'Europe/Rome' => __( '(GMT+01:00) Rome', 'surecart' ),
162 'Europe/Sarajevo' => __( '(GMT+01:00) Sarajevo', 'surecart' ),
163 'Europe/Skopje' => __( '(GMT+01:00) Skopje', 'surecart' ),
164 'Europe/Stockholm' => __( '(GMT+01:00) Stockholm', 'surecart' ),
165 'Europe/Vienna' => __( '(GMT+01:00) Vienna', 'surecart' ),
166 'Europe/Warsaw' => __( '(GMT+01:00) Warsaw', 'surecart' ),
167 'Africa/Algiers' => __( '(GMT+01:00) West Central Africa', 'surecart' ),
168 'Europe/Zagreb' => __( '(GMT+01:00) Zagreb', 'surecart' ),
169 'Europe/Zurich' => __( '(GMT+01:00) Zurich', 'surecart' ),
170 'Europe/Athens' => __( '(GMT+02:00) Athens', 'surecart' ),
171 'Europe/Bucharest' => __( '(GMT+02:00) Bucharest', 'surecart' ),
172 'Africa/Cairo' => __( '(GMT+02:00) Cairo', 'surecart' ),
173 'Africa/Harare' => __( '(GMT+02:00) Harare', 'surecart' ),
174 'Europe/Helsinki' => __( '(GMT+02:00) Helsinki', 'surecart' ),
175 'Asia/Jerusalem' => __( '(GMT+02:00) Jerusalem', 'surecart' ),
176 'Europe/Kaliningrad' => __( '(GMT+02:00) Kaliningrad', 'surecart' ),
177 'Europe/Kiev' => __( '(GMT+02:00) Kyiv', 'surecart' ),
178 'Africa/Johannesburg' => __( '(GMT+02:00) Pretoria', 'surecart' ),
179 'Europe/Riga' => __( '(GMT+02:00) Riga', 'surecart' ),
180 'Europe/Sofia' => __( '(GMT+02:00) Sofia', 'surecart' ),
181 'Europe/Tallinn' => __( '(GMT+02:00) Tallinn', 'surecart' ),
182 'Europe/Vilnius' => __( '(GMT+02:00) Vilnius', 'surecart' ),
183 'Asia/Baghdad' => __( '(GMT+03:00) Baghdad', 'surecart' ),
184 'Europe/Istanbul' => __( '(GMT+03:00) Istanbul', 'surecart' ),
185 'Asia/Kuwait' => __( '(GMT+03:00) Kuwait', 'surecart' ),
186 'Europe/Minsk' => __( '(GMT+03:00) Minsk', 'surecart' ),
187 'Europe/Moscow' => __( '(GMT+03:00) Moscow', 'surecart' ),
188 'Africa/Nairobi' => __( '(GMT+03:00) Nairobi', 'surecart' ),
189 'Asia/Riyadh' => __( '(GMT+03:00) Riyadh', 'surecart' ),
190 'Europe/Moscow' => __( '(GMT+03:00) St. Petersburg', 'surecart' ),
191 'Europe/Volgograd' => __( '(GMT+03:00) Volgograd', 'surecart' ),
192 'Asia/Tehran' => __( '(GMT+03:30) Tehran', 'surecart' ),
193 'Asia/Muscat' => __( '(GMT+04:00) Abu Dhabi', 'surecart' ),
194 'Asia/Baku' => __( '(GMT+04:00) Baku', 'surecart' ),
195 'Asia/Muscat' => __( '(GMT+04:00) Muscat', 'surecart' ),
196 'Europe/Samara' => __( '(GMT+04:00) Samara', 'surecart' ),
197 'Asia/Tbilisi' => __( '(GMT+04:00) Tbilisi', 'surecart' ),
198 'Asia/Yerevan' => __( '(GMT+04:00) Yerevan', 'surecart' ),
199 'Asia/Kabul' => __( '(GMT+04:30) Kabul', 'surecart' ),
200 'Asia/Yekaterinburg' => __( '(GMT+05:00) Ekaterinburg', 'surecart' ),
201 'Asia/Karachi' => __( '(GMT+05:00) Islamabad', 'surecart' ),
202 'Asia/Karachi' => __( '(GMT+05:00) Karachi', 'surecart' ),
203 'Asia/Tashkent' => __( '(GMT+05:00) Tashkent', 'surecart' ),
204 'Asia/Kolkata' => __( '(GMT+05:30) Chennai', 'surecart' ),
205 'Asia/Kolkata' => __( '(GMT+05:30) Kolkata', 'surecart' ),
206 'Asia/Kolkata' => __( '(GMT+05:30) Mumbai', 'surecart' ),
207 'Asia/Kolkata' => __( '(GMT+05:30) New Delhi', 'surecart' ),
208 'Asia/Colombo' => __( '(GMT+05:30) Sri Jayawardenepura', 'surecart' ),
209 'Asia/Kathmandu' => __( '(GMT+05:45) Kathmandu', 'surecart' ),
210 'Asia/Almaty' => __( '(GMT+06:00) Almaty', 'surecart' ),
211 'Asia/Dhaka' => __( '(GMT+06:00) Astana', 'surecart' ),
212 'Asia/Dhaka' => __( '(GMT+06:00) Dhaka', 'surecart' ),
213 'Asia/Urumqi' => __( '(GMT+06:00) Urumqi', 'surecart' ),
214 'Asia/Rangoon' => __( '(GMT+06:30) Rangoon', 'surecart' ),
215 'Asia/Bangkok' => __( '(GMT+07:00) Bangkok', 'surecart' ),
216 'Asia/Bangkok' => __( '(GMT+07:00) Hanoi', 'surecart' ),
217 'Asia/Jakarta' => __( '(GMT+07:00) Jakarta', 'surecart' ),
218 'Asia/Krasnoyarsk' => __( '(GMT+07:00) Krasnoyarsk', 'surecart' ),
219 'Asia/Novosibirsk' => __( '(GMT+07:00) Novosibirsk', 'surecart' ),
220 'Asia/Shanghai' => __( '(GMT+08:00) Beijing', 'surecart' ),
221 'Asia/Chongqing' => __( '(GMT+08:00) Chongqing', 'surecart' ),
222 'Asia/Hong_Kong' => __( '(GMT+08:00) Hong Kong', 'surecart' ),
223 'Asia/Irkutsk' => __( '(GMT+08:00) Irkutsk', 'surecart' ),
224 'Asia/Kuala_Lumpur' => __( '(GMT+08:00) Kuala Lumpur', 'surecart' ),
225 'Australia/Perth' => __( '(GMT+08:00) Perth', 'surecart' ),
226 'Asia/Singapore' => __( '(GMT+08:00) Singapore', 'surecart' ),
227 'Asia/Taipei' => __( '(GMT+08:00) Taipei', 'surecart' ),
228 'Asia/Ulaanbaatar' => __( '(GMT+08:00) Ulaanbaatar', 'surecart' ),
229 'Asia/Tokyo' => __( '(GMT+09:00) Osaka', 'surecart' ),
230 'Asia/Tokyo' => __( '(GMT+09:00) Sapporo', 'surecart' ),
231 'Asia/Seoul' => __( '(GMT+09:00) Seoul', 'surecart' ),
232 'Asia/Tokyo' => __( '(GMT+09:00) Tokyo', 'surecart' ),
233 'Asia/Yakutsk' => __( '(GMT+09:00) Yakutsk', 'surecart' ),
234 'Australia/Adelaide' => __( '(GMT+09:30) Adelaide', 'surecart' ),
235 'Australia/Darwin' => __( '(GMT+09:30) Darwin', 'surecart' ),
236 'Australia/Brisbane' => __( '(GMT+10:00) Brisbane', 'surecart' ),
237 'Australia/Melbourne' => __( '(GMT+10:00) Canberra', 'surecart' ),
238 'Pacific/Guam' => __( '(GMT+10:00) Guam', 'surecart' ),
239 'Australia/Hobart' => __( '(GMT+10:00) Hobart', 'surecart' ),
240 'Australia/Melbourne' => __( '(GMT+10:00) Melbourne', 'surecart' ),
241 'Pacific/Port_Moresby' => __( '(GMT+10:00) Port Moresby', 'surecart' ),
242 'Australia/Sydney' => __( '(GMT+10:00) Sydney', 'surecart' ),
243 'Asia/Vladivostok' => __( '(GMT+10:00) Vladivostok', 'surecart' ),
244 'Asia/Magadan' => __( '(GMT+11:00) Magadan', 'surecart' ),
245 'Pacific/Noumea' => __( '(GMT+11:00) New Caledonia', 'surecart' ),
246 'Pacific/Guadalcanal' => __( '(GMT+11:00) Solomon Is.', 'surecart' ),
247 'Asia/Srednekolymsk' => __( '(GMT+11:00) Srednekolymsk', 'surecart' ),
248 'Pacific/Auckland' => __( '(GMT+12:00) Auckland', 'surecart' ),
249 'Pacific/Fiji' => __( '(GMT+12:00) Fiji', 'surecart' ),
250 'Asia/Kamchatka' => __( '(GMT+12:00) Kamchatka', 'surecart' ),
251 'Pacific/Majuro' => __( '(GMT+12:00) Marshall Is.', 'surecart' ),
252 'Pacific/Auckland' => __( '(GMT+12:00) Wellington', 'surecart' ),
253 'Pacific/Chatham' => __( '(GMT+12:45) Chatham Is.', 'surecart' ),
254 'Pacific/Tongatapu' => __( '(GMT+13:00) Nuku&#39;alofa', 'surecart' ),
255 'Pacific/Apia' => __( '(GMT+13:00) Samoa', 'surecart' ),
256 'Pacific/Fakaofo' => __( '(GMT+13:00) Tokelau Is.', 'surecart' ),
257 ];
258 }
259 }
260