PluginProbe ʕ •ᴥ•ʔ
Jetpack – WP Security, Backup, Speed, & Growth / 6.7.2
Jetpack – WP Security, Backup, Speed, & Growth v6.7.2
15.9-a.7 15.9-a.5 15.9-a.3 15.9-a.1 15.8 15.8-beta 15.8-a.7 15.8-a.5 5.2.5 5.3.4 5.4.4 5.5.5 5.6.5 5.7.5 5.8.4 5.9.4 6.0.4 6.1 6.1.1 6.1.2 6.1.3 6.1.4 6.1.5 6.2 6.2.1 6.2.2 6.2.3 6.2.4 6.2.5 6.3 6.3.1 6.3.2 6.3.3 6.3.4 6.3.5 6.3.6 6.3.7 6.4 6.4.1 6.4.2 6.4.3 6.4.4 6.4.5 6.4.6 6.5 6.5.1 6.5.2 6.5.3 6.5.4 6.6 6.6.1 6.6.2 6.6.3 6.6.4 6.6.5 6.7 6.7.1 6.7.2 6.7.3 6.7.4 6.8 6.8.1 6.8.2 6.8.3 6.8.4 6.8.5 6.9 6.9.1 6.9.2 6.9.3 6.9.4 7.0 7.0.1 7.0.2 7.0.3 7.0.4 7.0.5 7.1 7.1.1 7.1.2 7.1.3 7.1.4 7.1.5 7.2 7.2.1 7.2.1.1 7.2.2 7.2.3 7.2.4 7.2.5 7.3 7.3.0.1 7.3.1 7.3.1.1 7.3.2 7.3.3 7.3.4 7.3.5 7.4 7.4.1 7.4.2 7.4.3 7.4.4 7.4.5 7.5 7.5.0.1 7.5.1 7.5.2 7.5.3 7.5.4 7.5.5 7.5.6 7.5.7 7.6 7.6.1 7.6.2 7.6.3 7.6.4 7.7 7.7.1 7.7.2 7.7.3 7.7.4 7.7.5 7.7.6 7.8 7.8.1 7.8.2 7.8.3 7.8.4 7.9 7.9.1 7.9.2 7.9.3 7.9.4 8.0 8.0.1 8.0.2 8.0.3 8.1 8.1.1 8.1.2 8.1.3 8.1.4 8.2 8.2.0.1 8.2.1 8.2.2 8.2.3 8.2.4 8.2.5 8.2.6 8.3 8.3.1 8.3.2 8.3.3 8.4 8.4.1 8.4.2 8.4.3 8.4.4 8.4.5 8.5 8.5.1 8.5.2 8.5.3 8.6 8.6.1 8.6.2 8.6.3 8.6.4 8.7 8.7.0.1 8.7.1 8.7.2 8.7.3 8.7.4 8.8 8.8.1 8.8.2 8.8.3 8.8.4 8.8.5 8.9 8.9.1 8.9.2 8.9.3 8.9.4 9.0 9.0.1 9.0.2 9.0.3 9.0.4 9.0.5 9.1 9.1.1 9.1.2 9.1.3 9.2 9.2.1 9.2.2 9.2.3 9.2.4 9.3 9.3.1 9.3.2 9.3.3 9.3.4 9.3.5 9.4 9.4.1 9.4.2 9.4.3 9.4.4 9.5 9.5.1 9.5.2 9.5.3 9.5.4 9.5.5 9.6 9.6.1 9.6.2 9.6.3 9.6.4 9.7 9.7.1 9.7.2 15.7-beta.2 9.7.3 15.7.1 9.8 15.8-a.1 9.8.1 15.8-a.3 9.8.2 2.0.9 9.8.3 2.1.7 9.9 2.2.10 9.9.1 2.3.10 9.9.2 2.4.7 9.9.3 2.5.5 2.6.6 2.7.5 2.8.5 2.9.6 3.0.6 3.1.5 3.2.5 3.3.6 3.4.6 3.5.6 3.6.4 3.7.5 3.8.5 3.9.10 4.0.7 4.1.4 4.2.5 4.3.5 4.4.5 4.5.3 4.6.3 4.7.4 4.8.5 4.9.3 5.0.3 5.1.4 trunk 10.0 10.0.1 10.0.2 10.1 10.1.1 10.1.2 10.2 10.2.1 10.2.2 10.2.3 10.3 10.3.1 10.3.2 10.4 10.4.1 10.4.2 10.5 10.5.1 10.5.2 10.5.3 10.6 10.6.1 10.6.2 10.7 10.7.1 10.7.2 10.8 10.8.1 10.8.2 10.9 10.9.1 10.9.2 10.9.3 11.0 11.0.1 11.0.2 11.1 11.1.1 11.1.2 11.1.3 11.1.4 11.2 11.2.1 11.2.2 11.3 11.3.1 11.3.2 11.3.3 11.3.4 11.4 11.4.1 11.4.2 11.5 11.5.1 11.5.2 11.5.3 11.6 11.6.1 11.6.2 11.7 11.7.1 11.7.2 11.7.3 11.8 11.8.3 11.8.4 11.8.5 11.8.6 11.9 11.9.1 11.9.2 11.9.3 12.0 12.0.1 12.0.2 12.1 12.1.1 12.1.2 12.2 12.2.1 12.2.2 12.3 12.3.1 12.4 12.4.1 12.5 12.5.1 12.6 12.6.1 12.6.2 12.6.3 12.7 12.7.1 12.7.2 12.8 12.8.1 12.8.2 12.9 12.9.1 12.9.2 12.9.3 12.9.4 13.0 13.0.1 13.1 13.1.1 13.1.2 13.1.3 13.1.4 13.2 13.2.1 13.2.2 13.2.3 13.3 13.3.1 13.3.2 13.4 13.4.1 13.4.2 13.4.3 13.4.4 13.5 13.5.1 13.6 13.6.1 13.7 13.7.1 13.8 13.8.1 13.8.2 13.9 13.9.1 14.0 14.1 14.2 14.2.1 14.3 14.4 14.4.1 14.5 14.6 14.7 14.8 14.9 14.9.1 15.0 15.0.1 15.0.2 15.1 15.1.1 15.2 15.3 15.3.1 15.4 15.5 15.6 15.7 15.7-a.1 15.7-a.3 15.7-a.5 15.7-a.7 15.7-beta
jetpack / sal / class.json-api-date.php
jetpack / sal Last commit date
class.json-api-date.php 9 years ago class.json-api-links.php 8 years ago class.json-api-metadata.php 9 years ago class.json-api-platform-jetpack.php 9 years ago class.json-api-platform.php 9 years ago class.json-api-post-base.php 8 years ago class.json-api-post-jetpack.php 9 years ago class.json-api-site-base.php 7 years ago class.json-api-site-jetpack-base.php 8 years ago class.json-api-site-jetpack.php 8 years ago class.json-api-token.php 9 years ago
class.json-api-date.php
89 lines
1 <?php
2
3 class WPCOM_JSON_API_Date {
4 /**
5 * Returns ISO 8601 formatted datetime: 2011-12-08T01:15:36-08:00
6 *
7 * @param $date_gmt (string) GMT datetime string.
8 * @param $date (string) Optional. Used to calculate the offset from GMT.
9 *
10 * @return string
11 */
12 static function format_date( $date_gmt, $date = null ) {
13 $timestamp_gmt = strtotime( "$date_gmt+0000" );
14
15 if ( null === $date ) {
16 $timestamp = $timestamp_gmt;
17 $hours = $minutes = $west = 0;
18 } else {
19 $date_time = date_create( "$date+0000" );
20 if ( $date_time ) {
21 $timestamp = date_format( $date_time, 'U' );
22 } else {
23 $timestamp = 0;
24 }
25
26 // "0000-00-00 00:00:00" == -62169984000
27 if ( - 62169984000 == $timestamp_gmt ) {
28 // WordPress sets post_date=now, post_date_gmt="0000-00-00 00:00:00" for all drafts
29 // WordPress sets post_modified=now, post_modified_gmt="0000-00-00 00:00:00" for new drafts
30
31 // Try to guess the correct offset from the blog's options.
32 $timezone_string = get_option( 'timezone_string' );
33
34 if ( $timezone_string && $date_time ) {
35 $timezone = timezone_open( $timezone_string );
36 if ( $timezone ) {
37 $offset = $timezone->getOffset( $date_time );
38 }
39 } else {
40 $offset = 3600 * get_option( 'gmt_offset' );
41 }
42 } else {
43 $offset = $timestamp - $timestamp_gmt;
44 }
45
46 $west = $offset < 0;
47 $offset = abs( $offset );
48 $hours = (int) floor( $offset / 3600 );
49 $offset -= $hours * 3600;
50 $minutes = (int) floor( $offset / 60 );
51 }
52
53 return (string) gmdate( 'Y-m-d\\TH:i:s', $timestamp ) . sprintf( '%s%02d:%02d', $west ? '-' : '+', $hours, $minutes );
54 }
55
56 /**
57 * Returns ISO 8601 formatted duration interval: P0DT1H10M0S
58 *
59 * @param string $time Duration in minutes or hours.
60 *
61 * @return null|string
62 */
63 static function format_duration( $time ) {
64 $timestamp = strtotime( $time, 0 );
65
66 // Bail early if we don't recognize a date.
67 if ( empty( $timestamp ) ) {
68 return;
69 }
70
71 $days = floor( $timestamp / 86400 );
72 $timestamp = $timestamp % 86400;
73
74 $hours = floor( $timestamp / 3600 );
75 $timestamp = $timestamp % 3600;
76
77 $minutes = floor( $timestamp / 60 );
78 $timestamp = $timestamp % 60;
79
80 return (string) sprintf(
81 'P%dDT%dH%dM%dS',
82 $days,
83 $hours,
84 $minutes,
85 $timestamp
86 );
87 }
88 }
89