PluginProbe ʕ •ᴥ•ʔ
Presto Player / 4.5.0
Presto Player v4.5.0
4.5.0 4.4.1 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 2 weeks ago Abilities 2 weeks ago Blocks 1 month ago License 1 month ago OAuth 2 weeks 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 5 days ago Learn.php 2 weeks ago Menu.php 2 weeks ago Migrations.php 2 years ago NpsSurvey.php 7 months ago Onboarding.php 2 months ago Player.php 1 month ago PluginInstaller.php 2 weeks ago PreloadService.php 2 years ago ProCompatibility.php 1 month ago ReusableVideos.php 2 months ago RewriteRulesManager.php 2 years ago Scripts.php 2 months ago Settings.php 3 months ago Shortcodes.php 2 weeks ago Streamer.php 2 months ago Translation.php 1 month ago Usage.php 5 days ago VideoPostType.php 1 month 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