PluginProbe ʕ •ᴥ•ʔ
Presto Player / trunk
Presto Player vtrunk
4.4.0 4.3.3 4.3.2 4.3.1 4.3.0 4.2.4 4.2.3 4.2.2 4.2.0 4.2.1 trunk 1.10.0 1.10.1 1.10.2 1.11.0 1.12.0 1.13.0 1.14.0 1.14.1 1.5.10 1.5.11 1.5.12 1.5.13 1.5.14 1.5.15 1.5.5 1.5.6 1.5.7 1.5.8 1.5.9 1.6.0 1.6.1 1.6.10 1.6.11 1.6.12 1.6.13 1.6.2 1.6.3 1.6.4 1.6.5 1.6.6 1.6.7 1.6.8 1.6.9 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.8.6 1.9.0 1.9.1 1.9.10 1.9.11 1.9.12 1.9.13 1.9.14 1.9.2 1.9.3 1.9.4 1.9.5 1.9.6 1.9.7 1.9.8 1.9.9 2.0.0 2.0.1 2.0.10 2.0.11 2.0.12 2.0.13 2.0.14 2.0.15 2.0.16 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7 2.0.8 2.0.9 2.1.0 2.2.0 2.2.1 2.2.2 2.2.3 2.2.3-beta1 2.3.0 2.3.1 2.3.2 2.3.3 3.0.0 3.0.0-beta1 3.0.1 3.0.2 3.0.3 3.0.4 3.0.5 3.0.6 3.0.7 3.0.8 3.1.0 3.1.1 3.1.2 3.1.3 4.0.0 4.0.1 4.0.2 4.0.3 4.0.4 4.0.5 4.0.6 4.0.7 4.0.8 4.1.0 4.1.1 4.1.2 4.1.3 4.1.4
presto-player / inc / Services / AjaxActions.php
presto-player / inc / Services Last commit date
API 6 days ago Abilities 6 days ago Blocks 3 weeks ago License 1 month ago OAuth 6 days ago AdminNotice.php 2 months ago AdminNotices.php 2 months ago AjaxActions.php 2 months ago Blocks.php 2 years ago Compatibility.php 11 months ago FeatureAnnounce.php 6 days ago Learn.php 6 days ago Menu.php 6 days ago Migrations.php 2 years ago NpsSurvey.php 6 months ago Onboarding.php 2 months ago Player.php 3 weeks ago PluginInstaller.php 6 days ago PreloadService.php 1 year ago ProCompatibility.php 3 weeks ago ReusableVideos.php 1 month ago RewriteRulesManager.php 2 years ago Scripts.php 1 month ago Settings.php 3 months ago Shortcodes.php 6 days ago Streamer.php 2 months ago Translation.php 3 weeks ago Usage.php 6 days ago VideoPostType.php 3 weeks ago
AjaxActions.php
59 lines
1 <?php
2 /**
3 * Ajax action handlers.
4 *
5 * @package PrestoPlayer
6 */
7
8 namespace PrestoPlayer\Services;
9
10 use PrestoPlayer\Models\ReusableVideo;
11
12
13 /**
14 * Registers all blocks
15 */
16 class AjaxActions {
17
18 /**
19 * Register actions
20 *
21 * @return void
22 */
23 public function register() {
24 add_action( 'wp_ajax_presto_fetch_videos', array( $this, 'fetchVideos' ) );
25 }
26
27 /**
28 * Fetch videos for dynamic
29 *
30 * @return void
31 */
32 public function fetchVideos() {
33 // Verify nonce.
34 $nonce = isset( $_REQUEST['_wpnonce'] ) ? sanitize_text_field( wp_unslash( $_REQUEST['_wpnonce'] ) ) : '';
35 if ( ! wp_verify_nonce( $nonce, 'wp_rest' ) ) {
36 wp_send_json_error();
37 }
38
39 // Need to edit posts.
40 if ( ! current_user_can( 'edit_posts' ) ) {
41 wp_send_json_error();
42 }
43
44 $args = array();
45
46 if ( ! empty( $_POST['search'] ) ) {
47 $args['s'] = sanitize_text_field( wp_unslash( $_POST['search'] ) );
48 }
49
50 if ( ! empty( $_POST['post_id'] ) ) {
51 $args['post__in'][0] = absint( wp_unslash( $_POST['post_id'] ) ); // Convert single post_id into array.
52 }
53
54 $videos = ( new ReusableVideo() )->fetch( $args );
55
56 wp_send_json_success( $videos );
57 }
58 }
59