PluginProbe ʕ •ᴥ•ʔ
Jetpack – WP Security, Backup, Speed, & Growth / 14.9.2
Jetpack – WP Security, Backup, Speed, & Growth v14.9.2
12.0.3 12.1.3 12.2.3 12.3.2 12.4.2 12.5.2 12.6.4 12.7.3 12.8.3 12.9.5 13.0.2 13.1.5 13.2.4 13.3.3 13.4.5 13.5.2 13.6.2 13.7.2 13.8.3 13.9.2 14.0.1 14.1.1 14.2.2 14.3.1 14.4.2 14.5.1 14.6.1 14.7.1 14.8.1 14.9.2 15.0.3 15.1.2 15.2.1 15.3.2 15.4.1 15.5.1 15.6.1 15.7.2 15.8.1 15.9.2 16.0.2 16.1.3 16.2-a.5 16.2-a.3 16.1.2 16.2-a.1 16.1.1 16.1 16.1-beta 16.1-beta.2 16.1-beta.3 16.1-a.5 16.1-a.3 16.0.1 16.1-a.1 16.0 16.0-beta 16.0-a.7 16.0-a.5 15.9.1 16.0-a.3 16.0-a.1 15.9 15.9-beta 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 / modules / videopress / class.videopress-cli.php
jetpack / modules / videopress Last commit date
css 1 year ago js 1 year ago class-videopress-attachment-metadata.php 2 years ago class.jetpack-videopress.php 1 year ago class.videopress-cli.php 2 years ago class.videopress-edit-attachment.php 3 years ago class.videopress-gutenberg.php 1 year ago class.videopress-options.php 2 years ago class.videopress-player.php 1 year ago class.videopress-scheduler.php 4 years ago class.videopress-video.php 1 year ago class.videopress-xmlrpc.php 2 years ago editor-media-view.php 2 years ago shortcode.php 1 year ago videopress-admin-rtl.css 1 year ago videopress-admin-rtl.min.css 1 year ago videopress-admin.css 1 year ago videopress-admin.min.css 1 year ago
class.videopress-cli.php
192 lines
1 <?php // phpcs:ignore WordPress.Files.FileName
2 /**
3 * VideoPress CLI
4 *
5 * @package automattic/jetpack
6 */
7
8 if ( defined( 'WP_CLI' ) && WP_CLI ) {
9
10 /**
11 * VideoPress command line utilities.
12 */
13 class VideoPress_CLI extends WP_CLI_Command {
14 /**
15 * Import a VideoPress Video
16 *
17 * ## OPTIONS
18 *
19 * <guid>: Import the video with the specified guid
20 *
21 * ## EXAMPLES
22 *
23 * wp videopress import kUJmAcSf
24 *
25 * @param array $args CLI arguments.
26 */
27 public function import( $args ) {
28 $guid = $args[0];
29 $attachment_id = create_local_media_library_for_videopress_guid( $guid );
30 if ( $attachment_id && ! is_wp_error( $attachment_id ) ) {
31 /* translators: %d: attachment id */
32 WP_CLI::success( sprintf( __( 'The video has been imported as Attachment ID %d', 'jetpack' ), $attachment_id ) );
33 } else {
34 WP_CLI::error( __( 'An error has been encountered.', 'jetpack' ) );
35 }
36 }
37
38 /**
39 * Manually runs the job to cleanup videos from the media library that failed during the upload process.
40 *
41 * ## EXAMPLES
42 *
43 * wp videopress cleanup_videos
44 */
45 public function cleanup_videos() {
46 $num_cleaned = videopress_cleanup_media_library();
47
48 /* translators: %d: number of videos cleaned */
49 WP_CLI::success( sprintf( _n( 'Cleaned up %d video.', 'Cleaned up a total of %d videos.', $num_cleaned, 'jetpack' ), $num_cleaned ) );
50 }
51
52 /**
53 * List out all of the crons that can be run.
54 *
55 * ## EXAMPLES
56 *
57 * wp videopress list_crons
58 */
59 public function list_crons() {
60
61 $scheduler = VideoPress_Scheduler::init();
62 $crons = $scheduler->get_crons();
63 $crons_count = is_countable( $crons ) ? count( $crons ) : 0;
64
65 $schedules = wp_get_schedules();
66
67 if ( $crons_count === 0 ) {
68 WP_CLI::success( __( 'Found no available cron jobs.', 'jetpack' ) );
69
70 } else {
71 /* translators: %d is the number of crons */
72 WP_CLI::success( sprintf( _n( 'Found %d available cron job.', 'Found %d available cron jobs.', $crons_count, 'jetpack' ), $crons_count ) );
73 }
74
75 foreach ( $crons as $cron_name => $cron ) {
76 $interval = isset( $schedules[ $cron['interval'] ]['display'] ) ? $schedules[ $cron['interval'] ]['display'] : $cron['interval'];
77 $runs_next = $scheduler->check_cron( $cron_name );
78 $status = $runs_next ? sprintf( 'Scheduled - Runs Next at %s GMT', gmdate( 'Y-m-d H:i:s', $runs_next ) ) : 'Not Scheduled';
79
80 WP_CLI::log( 'Name: ' . $cron_name );
81 WP_CLI::log( 'Method: ' . $cron['method'] );
82 WP_CLI::log( 'Interval: ' . $interval );
83 WP_CLI::log( 'Status: ' . $status );
84 }
85 }
86
87 /**
88 * Checks for the current status of a cron job.
89 *
90 * ## OPTIONS
91 *
92 * <cron_name>: The name of the cron job to check
93 *
94 * ## EXAMPLES
95 *
96 * wp videopress cron_status cleanup
97 *
98 * @param array $args CLI args.
99 */
100 public function cron_status( $args ) {
101
102 if ( ! isset( $args[0] ) ) {
103 return WP_CLI::error( __( 'You need to provide the name of the cronjob to schedule.', 'jetpack' ) );
104 }
105
106 $scheduler = VideoPress_Scheduler::init();
107
108 if ( ! $scheduler->is_cron_valid( $args[0] ) ) {
109 /* translators: name of a cron job */
110 WP_CLI::error( sprintf( __( 'There is no cron named %s.', 'jetpack' ), $args[0] ) );
111 }
112
113 $time = $scheduler->check_cron( $args[0] );
114
115 if ( ! $time ) {
116 WP_CLI::success( __( 'The cron is not scheduled to run.', 'jetpack' ) );
117
118 } else {
119 /* translators: date/time */
120 WP_CLI::success( sprintf( __( 'Cron will run at: %s GMT', 'jetpack' ), gmdate( 'Y-m-d H:i:s', $time ) ) );
121 }
122 }
123
124 /**
125 * Actives the given cron job
126 *
127 * ## OPTIONS
128 *
129 * <cron_name>: The name of the cron job to check
130 *
131 * ## EXAMPLES
132 *
133 * wp videopress activate_cron cleanup
134 *
135 * @param array $args CLI args.
136 */
137 public function activate_cron( $args ) {
138
139 if ( ! isset( $args[0] ) ) {
140 WP_CLI::error( __( 'You need to provide the name of the cronjob to schedule.', 'jetpack' ) );
141 }
142
143 $scheduler = VideoPress_Scheduler::init();
144
145 if ( ! $scheduler->is_cron_valid( $args[0] ) ) {
146 /* translators: name of a cron job */
147 WP_CLI::error( sprintf( __( 'There is no cron named %s.', 'jetpack' ), $args[0] ) );
148 }
149
150 $scheduler->activate_cron( $args[0] );
151
152 /* translators: name of a cron job */
153 WP_CLI::success( sprintf( __( 'The cron named `%s` was scheduled.', 'jetpack' ), $args[0] ) );
154 }
155
156 /**
157 * Actives the given cron job
158 *
159 * ## OPTIONS
160 *
161 * <cron_name>: The name of the cron job to check
162 *
163 * ## EXAMPLES
164 *
165 * wp videopress deactivate_cron cleanup
166 *
167 * @param array $args CLI args.
168 */
169 public function deactivate_cron( $args ) {
170
171 if ( ! isset( $args[0] ) ) {
172 WP_CLI::error( __( 'You need to provide the name of the cronjob to schedule.', 'jetpack' ) );
173 }
174
175 $scheduler = VideoPress_Scheduler::init();
176
177 if ( ! $scheduler->is_cron_valid( $args[0] ) ) {
178 /* translators: name of a cron job */
179 WP_CLI::error( sprintf( __( 'There is no cron named %s.', 'jetpack' ), $args[0] ) );
180 }
181
182 $scheduler->deactivate_cron( $args[0] );
183
184 /* translators: name of a cron job */
185 WP_CLI::success( sprintf( __( 'The cron named `%s` was removed from the schedule.', 'jetpack' ), $args[0] ) );
186 }
187 }
188
189 // @phan-suppress-next-line PhanUndeclaredFunctionInCallable -- https://github.com/phan/phan/issues/4763
190 WP_CLI::add_command( 'videopress', 'VideoPress_CLI' );
191 }
192