PluginProbe ʕ •ᴥ•ʔ
EmbedPress – PDF Embedder, Embed PDF viewer, YouTube Videos, 3D FlipBook, Social feeds & more / 1.0.0
EmbedPress – PDF Embedder, Embed PDF viewer, YouTube Videos, 3D FlipBook, Social feeds & more v1.0.0
4.5.6 4.5.5 4.5.4 4.5.3 4.5.2 trunk 1.0.0 1.1.0 1.1.1 1.1.2 1.1.3 1.2.0 1.3.0 1.3.1 1.4.0 1.4.1 1.4.2 1.4.3 1.4.4 1.5.0 1.6.0 1.6.1 1.6.2 1.6.3 1.7.0 1.7.1 1.7.2 1.7.3 1.7.4 1.7.5 2.0.0 2.0.1 2.0.2 2.0.3 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.2.0 2.2.1 2.2.2 2.3.0 2.3.1 2.3.2 2.3.3 2.4.0 2.4.1 2.5.0 2.5.1 2.5.2 2.5.3 2.5.4 2.5.5 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.7.6 2.7.7 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.1.0 3.1.1 3.1.2 3.1.3 3.2.0 3.2.1 3.3.0 3.3.1 3.3.2 3.3.3 3.3.4 3.3.5 3.3.6 3.3.7 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.6.3 3.6.4 3.6.5 3.6.6 3.6.7 3.6.8 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 3.9.1 3.9.10 3.9.11 3.9.12 3.9.13 3.9.14 3.9.15 3.9.16 3.9.17 3.9.2 3.9.3 3.9.4 3.9.5 3.9.6 3.9.7 3.9.8 3.9.9 4.0.0 4.0.1 4.0.10 4.0.11 4.0.12 4.0.13 4.0.14 4.0.2 4.0.3 4.0.4 4.0.5 4.0.6 4.0.7 4.0.8 4.0.9 4.1.0 4.1.1 4.1.10 4.1.2 4.1.3 4.1.4 4.1.5 4.1.6 4.1.7 4.1.8 4.1.9 4.2.0 4.2.1 4.2.2 4.2.3 4.2.4 4.2.5 4.2.6 4.2.7 4.2.8 4.2.9 4.3.0 4.3.1 4.4.0 4.4.1 4.4.10 4.4.11 4.4.2 4.4.3 4.4.4 4.4.5 4.4.6 4.4.7 4.4.8 4.4.9 4.5.0 4.5.1
embedpress / EmbedPress / Ends / Back / Handler.php
embedpress / EmbedPress / Ends / Back Last commit date
Handler.php 9 years ago Settings.php 9 years ago index.html 9 years ago
Handler.php
114 lines
1 <?php
2 namespace EmbedPress\Ends\Back;
3
4 use \EmbedPress\Ends\Handler as EndHandlerAbstract;
5 use \EmbedPress\Shortcode;
6 use \EmbedPress\Plugin;
7 use \Embera\Embera;
8
9 (defined('ABSPATH') && defined('EMBEDPRESS_IS_LOADED')) or die("No direct script access allowed.");
10
11 /**
12 * The admin-facing functionality of the plugin.
13 * Defines the plugin name, version, and enqueue the admin-specific stylesheets and scripts.
14 *
15 * @package EmbedPress
16 * @subpackage EmbedPress/Ends/Back
17 * @author PressShack <help@pressshack.com>
18 * @copyright Copyright (C) 2016 Open Source Training, LLC. All rights reserved.
19 * @license GPLv2 or later
20 * @since 1.0
21 */
22 class Handler extends EndHandlerAbstract
23 {
24 /**
25 * Method that register all scripts for the admin area.
26 *
27 * @since 1.0
28 */
29 public function enqueueScripts()
30 {
31 $plgSettings = Plugin::getSettings();
32
33 wp_enqueue_script("bootbox-bootstrap", EMBEDPRESS_URL_ASSETS .'js/vendor/bootstrap/bootstrap.min.js', array('jquery'), $this->pluginVersion, true);
34 wp_enqueue_script("bootbox", EMBEDPRESS_URL_ASSETS .'js/vendor/bootbox.min.js', array('jquery', 'bootbox-bootstrap'), $this->pluginVersion, true);
35 wp_enqueue_script($this->pluginName, EMBEDPRESS_URL_ASSETS .'js/preview.js', array('jquery', 'bootbox'), $this->pluginVersion, true);
36 wp_localize_script($this->pluginName, '$data', array(
37 'previewSettings' => array(
38 'juriRoot' => get_site_url() .'/',
39 'versionUID' => $this->pluginVersion,
40 'debug' => true
41 ),
42 'EMBEDPRESS_SHORTCODE' => EMBEDPRESS_SHORTCODE,
43 'EMBEDPRESS_URL_ASSETS' => EMBEDPRESS_URL_ASSETS,
44 'displayPreviewBox' => $plgSettings->displayPreviewBox
45 ));
46 }
47
48 /**
49 * Method that register all stylesheets for the admin area.
50 *
51 * @since 1.0
52 */
53 public function enqueueStyles()
54 {
55 global $wp_scripts;
56
57 wp_enqueue_style('bootbox-bootstrap', EMBEDPRESS_URL_ASSETS .'css/vendor/bootstrap/bootstrap.min.css');
58 wp_enqueue_style($this->pluginName, EMBEDPRESS_URL_ASSETS .'css/preview.css');
59 }
60
61 /**
62 * Method that receive a string via AJAX and return the decoded-shortcoded-version of that string.
63 *
64 * @since 1.0
65 */
66 public function doShortcodeReceivedViaAjax()
67 {
68 $response = array(
69 'data' => array(
70 'content' => Shortcode::parseContent(@$_POST['subject'], true)
71 )
72 );
73
74 header('Content-Type:application/json;charset=UTF-8');
75 echo json_encode($response);
76
77 exit();
78 }
79
80 /**
81 * Method that receive an url via AJAX and return the info about that url/embed.
82 *
83 * @since 1.0
84 */
85 public function getUrlInfoViaAjax()
86 {
87 $response = array(
88 'url' => trim(@$_GET['url']),
89 'canBeResponsive' => false
90 );
91
92 if (!!strlen($response['url'])) {
93 $embera = new Embera();
94
95 $additionalServiceProviders = Plugin::getAdditionalServiceProviders();
96 if (!empty($additionalServiceProviders)) {
97 foreach ($additionalServiceProviders as $serviceProviderClassName => $serviceProviderUrls) {
98 Shortcode::addServiceProvider($serviceProviderClassName, $serviceProviderUrls, $embera);
99 }
100 }
101
102 $urlInfo = $embera->getUrlInfo($response['url']);
103 if (isset($urlInfo[$response['url']])) {
104 $urlInfo = (object)$urlInfo[$response['url']];
105 $response['canBeResponsive'] = Plugin::canServiceProviderBeResponsive($urlInfo->provider_alias);
106 }
107 }
108
109 header('Content-Type:application/json;charset=UTF-8');
110 echo json_encode($response);
111
112 exit();
113 }
114 }