Version Description
- Gyroscope conflict fix with default control
- WordPress high resolution image upload
- Input type error handled
=
Download this release
Release Info
Developer | rextheme |
Plugin | WP VR – 360 Panorama and virtual tour creator for WordPress |
Version | 4.7.0 |
Comparing to | |
See all releases |
Code changes from version 4.6.0 to 4.7.0
- README.txt +6 -1
- admin/class-wpvr-admin-pages.php +4 -4
- admin/class-wpvr-admin.php +2 -2
- admin/class-wpvr-ajax.php +4 -0
- admin/css/wpvr-admin.css +8 -0
- admin/js/wpvr-admin.js +2 -1
- admin/partials/wpvr_documentation.php +28 -1
- includes/class-wpvr.php +4 -2
- public/class-wpvr-public.php +2 -2
- wpvr.php +3 -3
README.txt
CHANGED
@@ -4,7 +4,7 @@ Donate link: https://rextheme.com/wp-vr-360-panorama-and-virtual-tour-creator-fo
|
|
4 |
Tags: virtual tour, real estate tour, panorama, panorama viewer, virtual tour, 360 panorama, interactive tour
|
5 |
Requires at least: 4.0
|
6 |
Tested up to: 5.3
|
7 |
-
Stable tag: 4.
|
8 |
Requires PHP: 5.6
|
9 |
License: GPLv2 or later
|
10 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
@@ -353,5 +353,10 @@ Simply add "/plugins/wpvr" to exclusion field (or use the location where you sto
|
|
353 |
= 4.6.0 =
|
354 |
* Gyroscope Support fix for custom control
|
355 |
|
|
|
|
|
|
|
|
|
|
|
356 |
== Upgrade Notice ==
|
357 |
Please do update the WP VR to the latest version. Each update makes it sure your plugin is supporting all tour features.
|
4 |
Tags: virtual tour, real estate tour, panorama, panorama viewer, virtual tour, 360 panorama, interactive tour
|
5 |
Requires at least: 4.0
|
6 |
Tested up to: 5.3
|
7 |
+
Stable tag: 4.7.0
|
8 |
Requires PHP: 5.6
|
9 |
License: GPLv2 or later
|
10 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
353 |
= 4.6.0 =
|
354 |
* Gyroscope Support fix for custom control
|
355 |
|
356 |
+
= 4.7.0 =
|
357 |
+
* Gyroscope conflict fix with default control
|
358 |
+
* WordPress high resolution image upload
|
359 |
+
* Input type error handled
|
360 |
+
|
361 |
== Upgrade Notice ==
|
362 |
Please do update the WP VR to the latest version. Each update makes it sure your plugin is supporting all tour features.
|
admin/class-wpvr-admin-pages.php
CHANGED
@@ -17,13 +17,13 @@ class Wpvr_Admin_Pages {
|
|
17 |
*/
|
18 |
function wpvr_add_admin_pages() {
|
19 |
|
20 |
-
add_menu_page( '
|
21 |
|
22 |
-
add_submenu_page( 'wpvr', '
|
23 |
|
24 |
-
add_submenu_page( 'wpvr', '
|
25 |
|
26 |
-
add_submenu_page( 'wpvr', '
|
27 |
|
28 |
do_action('wpvr_pro_license_page');
|
29 |
|
17 |
*/
|
18 |
function wpvr_add_admin_pages() {
|
19 |
|
20 |
+
add_menu_page( 'WP VR', 'WP VR', 'manage_options', 'wpvr', array( $this, 'wpvr_admin_doc'),plugins_url(). '/wpvr/images/icon.png' , 110);
|
21 |
|
22 |
+
add_submenu_page( 'wpvr', 'WP VR', 'Get Started','manage_options', 'wpvr', array( $this, 'wpvr_admin_doc'));
|
23 |
|
24 |
+
add_submenu_page( 'wpvr', 'WP VR', 'Tours','manage_options', 'edit.php?post_type=wpvr_item', NULL);
|
25 |
|
26 |
+
add_submenu_page( 'wpvr', 'WP VR', 'Add New Tour','manage_options', 'post-new.php?post_type=wpvr_item', NULL);
|
27 |
|
28 |
do_action('wpvr_pro_license_page');
|
29 |
|
admin/class-wpvr-admin.php
CHANGED
@@ -181,8 +181,8 @@ class Wpvr_Admin {
|
|
181 |
*/
|
182 |
public function wpvr_add_plugin_custom_post_type() {
|
183 |
$labels = array(
|
184 |
-
'name' => __( '
|
185 |
-
'singular_name' => __( '
|
186 |
'add_new' => __( 'Add New Tour', $this->plugin_name ),
|
187 |
'add_new_item' => __( 'Add New Tour', $this->plugin_name ),
|
188 |
'edit_item' => __( 'Edit Tour', $this->plugin_name ),
|
181 |
*/
|
182 |
public function wpvr_add_plugin_custom_post_type() {
|
183 |
$labels = array(
|
184 |
+
'name' => __( 'Tours', $this->plugin_name ),
|
185 |
+
'singular_name' => __( 'Tours', $this->plugin_name ),
|
186 |
'add_new' => __( 'Add New Tour', $this->plugin_name ),
|
187 |
'add_new_item' => __( 'Add New Tour', $this->plugin_name ),
|
188 |
'edit_item' => __( 'Edit Tour', $this->plugin_name ),
|
admin/class-wpvr-ajax.php
CHANGED
@@ -1282,11 +1282,15 @@ class Wpvr_Ajax {
|
|
1282 |
$editor = sanitize_text_field($_POST['editor']);
|
1283 |
$author = sanitize_text_field($_POST['author']);
|
1284 |
$fontawesome = sanitize_text_field($_POST['fontawesome']);
|
|
|
1285 |
$wpvr_script_control = sanitize_text_field($_POST['wpvr_script_control']);
|
1286 |
$wpvr_script_list = sanitize_text_field($_POST['wpvr_script_list']);
|
|
|
|
|
1287 |
update_option('wpvr_editor_active', $editor);
|
1288 |
update_option('wpvr_author_active', $author);
|
1289 |
update_option('wpvr_fontawesome_disable', $fontawesome);
|
|
|
1290 |
update_option('wpvr_script_control', $wpvr_script_control);
|
1291 |
update_option('wpvr_script_list', $wpvr_script_list);
|
1292 |
$response = array(
|
1282 |
$editor = sanitize_text_field($_POST['editor']);
|
1283 |
$author = sanitize_text_field($_POST['author']);
|
1284 |
$fontawesome = sanitize_text_field($_POST['fontawesome']);
|
1285 |
+
$high_res_image = sanitize_text_field($_POST['high_res_image']);
|
1286 |
$wpvr_script_control = sanitize_text_field($_POST['wpvr_script_control']);
|
1287 |
$wpvr_script_list = sanitize_text_field($_POST['wpvr_script_list']);
|
1288 |
+
$wpvr_script_list = str_replace(' ', '', $wpvr_script_list);
|
1289 |
+
|
1290 |
update_option('wpvr_editor_active', $editor);
|
1291 |
update_option('wpvr_author_active', $author);
|
1292 |
update_option('wpvr_fontawesome_disable', $fontawesome);
|
1293 |
+
update_option('high_res_image', $high_res_image);
|
1294 |
update_option('wpvr_script_control', $wpvr_script_control);
|
1295 |
update_option('wpvr_script_list', $wpvr_script_list);
|
1296 |
$response = array(
|
admin/css/wpvr-admin.css
CHANGED
@@ -3,6 +3,14 @@
|
|
3 |
* included in this file.
|
4 |
*/
|
5 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
6 |
|
7 |
.wpvr_tabs_row {
|
8 |
width: 20% !important;
|
3 |
* included in this file.
|
4 |
*/
|
5 |
|
6 |
+
.wpvr_gt_settings_ruler {
|
7 |
+
content: "";
|
8 |
+
display: block;
|
9 |
+
height: 5px;
|
10 |
+
width: 100%;
|
11 |
+
margin: 30px 0 30px 0;
|
12 |
+
background: #929eaa;
|
13 |
+
}
|
14 |
|
15 |
.wpvr_tabs_row {
|
16 |
width: 20% !important;
|
admin/js/wpvr-admin.js
CHANGED
@@ -1005,7 +1005,7 @@ $(document).on("change","input[type=radio][name=panovideo]",function(event) {
|
|
1005 |
var fontawesome = $('#wpvr_fontawesome_disable').is(':checked');
|
1006 |
var wpvr_script_control = $('#wpvr_script_control').is(':checked');
|
1007 |
var wpvr_script_list = $('#wpvr_script_list').val();
|
1008 |
-
|
1009 |
jQuery.ajax({
|
1010 |
type: "POST",
|
1011 |
url: ajaxurl,
|
@@ -1014,6 +1014,7 @@ $(document).on("change","input[type=radio][name=panovideo]",function(event) {
|
|
1014 |
editor: editor,
|
1015 |
author: author,
|
1016 |
fontawesome: fontawesome,
|
|
|
1017 |
wpvr_script_control: wpvr_script_control,
|
1018 |
wpvr_script_list: wpvr_script_list,
|
1019 |
},
|
1005 |
var fontawesome = $('#wpvr_fontawesome_disable').is(':checked');
|
1006 |
var wpvr_script_control = $('#wpvr_script_control').is(':checked');
|
1007 |
var wpvr_script_list = $('#wpvr_script_list').val();
|
1008 |
+
var high_res_image = $('#high_res_image').is(':checked');
|
1009 |
jQuery.ajax({
|
1010 |
type: "POST",
|
1011 |
url: ajaxurl,
|
1014 |
editor: editor,
|
1015 |
author: author,
|
1016 |
fontawesome: fontawesome,
|
1017 |
+
high_res_image: high_res_image,
|
1018 |
wpvr_script_control: wpvr_script_control,
|
1019 |
wpvr_script_list: wpvr_script_list,
|
1020 |
},
|
admin/partials/wpvr_documentation.php
CHANGED
@@ -223,6 +223,7 @@ if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
|
223 |
$fontawesome_disable = get_option('wpvr_fontawesome_disable');
|
224 |
$wpvr_script_control = get_option('wpvr_script_control');
|
225 |
$wpvr_script_list = get_option('wpvr_script_list');
|
|
|
226 |
?>
|
227 |
<li>
|
228 |
<div class="switch">
|
@@ -247,6 +248,7 @@ if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
|
247 |
</label>
|
248 |
</div>
|
249 |
</li>
|
|
|
250 |
<li>
|
251 |
<div class="switch">
|
252 |
<h6>Select Authors to manage WP VR tours. They can edit, delete and update their own tours only:</h6>
|
@@ -269,6 +271,7 @@ if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
|
269 |
</label>
|
270 |
</div>
|
271 |
</li>
|
|
|
272 |
<li>
|
273 |
<div class="switch">
|
274 |
<h6>Disable Fontawesome from WP VR: </h6>
|
@@ -291,7 +294,30 @@ if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
|
291 |
</label>
|
292 |
</div>
|
293 |
</li>
|
294 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
295 |
<li>
|
296 |
<div class="switch">
|
297 |
<h6>Enable script control to load WP VR scripts on listed pages only:</h6>
|
@@ -314,6 +340,7 @@ if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
|
314 |
</label>
|
315 |
</div>
|
316 |
</li>
|
|
|
317 |
<li style="margin-top: 1.5%;">
|
318 |
<div class="">
|
319 |
<h6 for="wpvr_script_list">Allowed pages to enqueue WP VR Scripts (e.g. https://example.com/tour1/,https://example.com/tour2/): </h6>
|
223 |
$fontawesome_disable = get_option('wpvr_fontawesome_disable');
|
224 |
$wpvr_script_control = get_option('wpvr_script_control');
|
225 |
$wpvr_script_list = get_option('wpvr_script_list');
|
226 |
+
$high_res_image = get_option('high_res_image');
|
227 |
?>
|
228 |
<li>
|
229 |
<div class="switch">
|
248 |
</label>
|
249 |
</div>
|
250 |
</li>
|
251 |
+
<hr class="wpvr_gt_settings_ruler">
|
252 |
<li>
|
253 |
<div class="switch">
|
254 |
<h6>Select Authors to manage WP VR tours. They can edit, delete and update their own tours only:</h6>
|
271 |
</label>
|
272 |
</div>
|
273 |
</li>
|
274 |
+
<hr class="wpvr_gt_settings_ruler">
|
275 |
<li>
|
276 |
<div class="switch">
|
277 |
<h6>Disable Fontawesome from WP VR: </h6>
|
294 |
</label>
|
295 |
</div>
|
296 |
</li>
|
297 |
+
<hr class="wpvr_gt_settings_ruler">
|
298 |
+
<li>
|
299 |
+
<div class="switch">
|
300 |
+
<h6>Disable WordPress default large image handler: </h6>
|
301 |
+
<label>
|
302 |
+
Off
|
303 |
+
<?php
|
304 |
+
if ($high_res_image == "true") {
|
305 |
+
?>
|
306 |
+
<input id="high_res_image" type="checkbox" checked>
|
307 |
+
<?php
|
308 |
+
}
|
309 |
+
else {
|
310 |
+
?>
|
311 |
+
<input id="high_res_image" type="checkbox">
|
312 |
+
<?php
|
313 |
+
}
|
314 |
+
?>
|
315 |
+
<span class="lever"></span>
|
316 |
+
On
|
317 |
+
</label>
|
318 |
+
</div>
|
319 |
+
</li>
|
320 |
+
<hr class="wpvr_gt_settings_ruler">
|
321 |
<li>
|
322 |
<div class="switch">
|
323 |
<h6>Enable script control to load WP VR scripts on listed pages only:</h6>
|
340 |
</label>
|
341 |
</div>
|
342 |
</li>
|
343 |
+
|
344 |
<li style="margin-top: 1.5%;">
|
345 |
<div class="">
|
346 |
<h6 for="wpvr_script_list">Allowed pages to enqueue WP VR Scripts (e.g. https://example.com/tour1/,https://example.com/tour2/): </h6>
|
includes/class-wpvr.php
CHANGED
@@ -216,12 +216,14 @@ class Wpvr {
|
|
216 |
$this->loader->add_action( 'add_meta_boxes', $plugin_admin, 'wpvr_add_setup_metabox' );
|
217 |
$this->loader->add_action( 'wp_ajax_wpvr_preview', $plugin_admin_ajax, 'wpvr_show_preview' );
|
218 |
$this->loader->add_action( 'wp_ajax_wpvr_save', $plugin_admin_ajax, 'wpvr_save_data' );
|
219 |
-
$this->loader->add_action( 'wp_ajax_wpvr_save', $plugin_admin_ajax, 'wpvr_save_data' );
|
220 |
$this->loader->add_action( 'wp_ajax_wpvrvideo_preview', $plugin_admin_ajax, 'wpvrvideo_preview' );
|
221 |
$this->loader->add_action( 'wp_ajax_wpvrstreetview_preview', $plugin_admin_ajax, 'wpvrstreetview_preview' );
|
222 |
$this->loader->add_action( 'wp_ajax_wpvr_file_import', $plugin_admin_ajax, 'wpvr_file_import' );
|
223 |
$this->loader->add_action( 'wp_ajax_wpvr_role_management', $plugin_admin_ajax, 'wpvr_role_management' );
|
224 |
-
|
|
|
|
|
|
|
225 |
}
|
226 |
|
227 |
/**
|
216 |
$this->loader->add_action( 'add_meta_boxes', $plugin_admin, 'wpvr_add_setup_metabox' );
|
217 |
$this->loader->add_action( 'wp_ajax_wpvr_preview', $plugin_admin_ajax, 'wpvr_show_preview' );
|
218 |
$this->loader->add_action( 'wp_ajax_wpvr_save', $plugin_admin_ajax, 'wpvr_save_data' );
|
|
|
219 |
$this->loader->add_action( 'wp_ajax_wpvrvideo_preview', $plugin_admin_ajax, 'wpvrvideo_preview' );
|
220 |
$this->loader->add_action( 'wp_ajax_wpvrstreetview_preview', $plugin_admin_ajax, 'wpvrstreetview_preview' );
|
221 |
$this->loader->add_action( 'wp_ajax_wpvr_file_import', $plugin_admin_ajax, 'wpvr_file_import' );
|
222 |
$this->loader->add_action( 'wp_ajax_wpvr_role_management', $plugin_admin_ajax, 'wpvr_role_management' );
|
223 |
+
$high_res_image = get_option('high_res_image');
|
224 |
+
if ($high_res_image == 'true') {
|
225 |
+
add_filter( 'big_image_size_threshold', '__return_false' );
|
226 |
+
}
|
227 |
}
|
228 |
|
229 |
/**
|
public/class-wpvr-public.php
CHANGED
@@ -310,7 +310,7 @@ class Wpvr_Public {
|
|
310 |
if ($control) {
|
311 |
if (isset($postdata['customcontrol'])) {
|
312 |
$custom_control = $postdata['customcontrol'];
|
313 |
-
if ($custom_control['panupSwitch'] == "on" || $custom_control['panDownSwitch'] == "on" || $custom_control['panLeftSwitch'] == "on" || $custom_control['panRightSwitch'] == "on" || $custom_control['panZoomInSwitch'] == "on" || $custom_control['panZoomOutSwitch'] == "on" || $custom_control['panFullscreenSwitch'] == "on") {
|
314 |
$control = false;
|
315 |
}
|
316 |
}
|
@@ -746,7 +746,7 @@ class Wpvr_Public {
|
|
746 |
|
747 |
//===Custom Control===//
|
748 |
if (isset($custom_control)) {
|
749 |
-
if ( $custom_control['panZoomInSwitch'] == "on" || $custom_control['panZoomOutSwitch'] == "on" ) {
|
750 |
|
751 |
$html .= '<div id="zoom-in-out-controls">';
|
752 |
|
310 |
if ($control) {
|
311 |
if (isset($postdata['customcontrol'])) {
|
312 |
$custom_control = $postdata['customcontrol'];
|
313 |
+
if ($custom_control['panupSwitch'] == "on" || $custom_control['panDownSwitch'] == "on" || $custom_control['panLeftSwitch'] == "on" || $custom_control['panRightSwitch'] == "on" || $custom_control['panZoomInSwitch'] == "on" || $custom_control['panZoomOutSwitch'] == "on" || $custom_control['panFullscreenSwitch'] == "on" || $custom_control['gyroscopeSwitch'] == "on") {
|
314 |
$control = false;
|
315 |
}
|
316 |
}
|
746 |
|
747 |
//===Custom Control===//
|
748 |
if (isset($custom_control)) {
|
749 |
+
if ( $custom_control['panZoomInSwitch'] == "on" || $custom_control['panZoomOutSwitch'] == "on" || $custom_control['gyroscopeSwitch'] == "on") {
|
750 |
|
751 |
$html .= '<div id="zoom-in-out-controls">';
|
752 |
|
wpvr.php
CHANGED
@@ -16,7 +16,7 @@
|
|
16 |
* Plugin Name: WP VR
|
17 |
* Plugin URI: https://rextheme.com/wpvr/
|
18 |
* Description: WP VR - 360 Panorama and virtual tour creator for WordPress is a customized panaroma & virtual builder tool for WordPress Website.
|
19 |
-
* Version: 4.
|
20 |
* Author: Rextheme
|
21 |
* Author URI: http://rextheme.com/
|
22 |
* License: GPL-2.0+
|
@@ -285,7 +285,7 @@ function wpvr_block_render( $attributes ) {
|
|
285 |
if ($control) {
|
286 |
if (isset($postdata['customcontrol'])) {
|
287 |
$custom_control = $postdata['customcontrol'];
|
288 |
-
if ($custom_control['panupSwitch'] == "on" || $custom_control['panDownSwitch'] == "on" || $custom_control['panLeftSwitch'] == "on" || $custom_control['panRightSwitch'] == "on" || $custom_control['panZoomInSwitch'] == "on" || $custom_control['panZoomOutSwitch'] == "on" || $custom_control['panFullscreenSwitch'] == "on") {
|
289 |
$control = false;
|
290 |
}
|
291 |
}
|
@@ -730,7 +730,7 @@ function wpvr_block_render( $attributes ) {
|
|
730 |
}
|
731 |
//===zoom in out Control===//
|
732 |
|
733 |
-
if ($custom_control['panupSwitch'] == "on" || $custom_control['panDownSwitch'] == "on" || $custom_control['panLeftSwitch'] == "on" || $custom_control['panRightSwitch'] == "on" || $custom_control['panFullscreenSwitch'] == "on"
|
734 |
|
735 |
//===Custom Control===//
|
736 |
$html .= '<div id="controls">';
|
16 |
* Plugin Name: WP VR
|
17 |
* Plugin URI: https://rextheme.com/wpvr/
|
18 |
* Description: WP VR - 360 Panorama and virtual tour creator for WordPress is a customized panaroma & virtual builder tool for WordPress Website.
|
19 |
+
* Version: 4.7.0
|
20 |
* Author: Rextheme
|
21 |
* Author URI: http://rextheme.com/
|
22 |
* License: GPL-2.0+
|
285 |
if ($control) {
|
286 |
if (isset($postdata['customcontrol'])) {
|
287 |
$custom_control = $postdata['customcontrol'];
|
288 |
+
if ($custom_control['panupSwitch'] == "on" || $custom_control['panDownSwitch'] == "on" || $custom_control['panLeftSwitch'] == "on" || $custom_control['panRightSwitch'] == "on" || $custom_control['panZoomInSwitch'] == "on" || $custom_control['panZoomOutSwitch'] == "on" || $custom_control['panFullscreenSwitch'] == "on" || $custom_control['gyroscopeSwitch'] == "on") {
|
289 |
$control = false;
|
290 |
}
|
291 |
}
|
730 |
}
|
731 |
//===zoom in out Control===//
|
732 |
|
733 |
+
if ($custom_control['panupSwitch'] == "on" || $custom_control['panDownSwitch'] == "on" || $custom_control['panLeftSwitch'] == "on" || $custom_control['panRightSwitch'] == "on" || $custom_control['panFullscreenSwitch'] == "on") {
|
734 |
|
735 |
//===Custom Control===//
|
736 |
$html .= '<div id="controls">';
|