Version Description
- Added: Possibility to add images from Wordpress Media Library.
- Fixed: Image info in lightbox with small effect duration.
- Changed: Effect duration now can be float.
Download this release
Release Info
| Developer | webdorado |
| Plugin | |
| Version | 1.3.41 |
| Comparing to | |
| See all releases | |
Code changes from version 1.3.40 to 1.3.41
- admin/views/BWGViewGalleries_bwg.php +10 -14
- admin/views/BWGViewOptions_bwg.php +0 -11
- css/bwg_tables.css +3 -3
- filemanager/UploadHandler.php +62 -37
- filemanager/controller.php +214 -244
- filemanager/css/default.css +1 -0
- filemanager/js/default.js +10 -152
- filemanager/model.php +173 -394
- filemanager/view.php +1 -90
- framework/BWGOptions.php +2 -2
- framework/WDWLibrary.php +132 -11
- frontend/views/BWGViewGalleryBox.php +15 -6
- includes/bwg_pointers.php +554 -599
- js/bwg.js +64 -2
- photo-gallery.php +159 -57
- readme.txt +6 -1
admin/views/BWGViewGalleries_bwg.php
CHANGED
|
@@ -27,7 +27,6 @@ class BWGViewGalleries_bwg {
|
|
| 27 |
$rows_data = $this->model->get_rows_data();
|
| 28 |
$page_nav = $this->model->page_nav();
|
| 29 |
$search_value = ((isset($_POST['search_value'])) ? esc_html(stripslashes($_POST['search_value'])) : '');
|
| 30 |
-
$search_select_value = ((isset($_POST['search_select_value'])) ? (int) $_POST['search_select_value'] : 0);
|
| 31 |
$asc_or_desc = ((isset($_POST['asc_or_desc'])) ? esc_html(stripslashes($_POST['asc_or_desc'])) : 'asc');
|
| 32 |
$order_by = (isset($_POST['order_by']) ? esc_html(stripslashes($_POST['order_by'])) : 'order');
|
| 33 |
$order_class = 'manage-column column-title sorted ' . $asc_or_desc;
|
|
@@ -62,9 +61,7 @@ class BWGViewGalleries_bwg {
|
|
| 62 |
<?php
|
| 63 |
foreach($gallery_button_array as $key => $value) {
|
| 64 |
?>
|
| 65 |
-
<option value="<?php echo $key; ?>">
|
| 66 |
-
<?php echo $value; ?>
|
| 67 |
-
</option>
|
| 68 |
<?php
|
| 69 |
}
|
| 70 |
?>
|
|
@@ -417,7 +414,7 @@ class BWGViewGalleries_bwg {
|
|
| 417 |
input_alt.innerHTML = files[i]['name'];
|
| 418 |
}
|
| 419 |
else {/*uploaded images and direct URLs of images only*/
|
| 420 |
-
input_alt.innerHTML = files[i]['
|
| 421 |
}
|
| 422 |
td_alt.appendChild(input_alt);
|
| 423 |
|
|
@@ -439,11 +436,10 @@ class BWGViewGalleries_bwg {
|
|
| 439 |
textarea_desc.setAttribute('name', "image_description_" + bwg_j);
|
| 440 |
textarea_desc.setAttribute('rows', "2");
|
| 441 |
textarea_desc.setAttribute('style', "resize:vertical;");
|
| 442 |
-
|
| 443 |
-
|
| 444 |
-
|
| 445 |
-
|
| 446 |
-
textarea_desc.innerHTML = files[i]['credit'] ? 'Author: ' + files[i]['credit'] + '\n' : '';
|
| 447 |
textarea_desc.innerHTML += ((files[i]['aperture'] != 0 && files[i]['aperture'] != '') ? 'Aperture: ' + files[i]['aperture'] + '\n' : '');
|
| 448 |
textarea_desc.innerHTML += ((files[i]['camera'] != 0 && files[i]['camera'] != '') ? 'Camera: ' + files[i]['camera'] + '\n' : '');
|
| 449 |
textarea_desc.innerHTML += ((files[i]['caption'] != 0 && files[i]['caption'] != '') ? 'Caption: ' + files[i]['caption'] + '\n' : '');
|
|
@@ -670,6 +666,7 @@ class BWGViewGalleries_bwg {
|
|
| 670 |
}
|
| 671 |
|
| 672 |
public function image_display($id) {
|
|
|
|
| 673 |
global $WD_BWG_UPLOAD_DIR;
|
| 674 |
global $wd_bwg_options;
|
| 675 |
$rows_data = $this->model->get_image_rows_data($id);
|
|
@@ -706,12 +703,13 @@ class BWGViewGalleries_bwg {
|
|
| 706 |
<a href="<?php echo $query_url; ?>" id="add_image_bwg" class="wd-btn wd-btn-primary wd-btn-icon wd-btn-add thickbox thickbox-preview" id="content-add_media" title="<?php _e("Add Images", 'bwg_back'); ?>" onclick="return false;" style="margin-bottom:5px; <?php if($gallery_type !='') {echo 'display:none';} ?>" >
|
| 707 |
<?php _e('Add Images', 'bwg_back'); ?>
|
| 708 |
</a>
|
|
|
|
| 709 |
<?php
|
| 710 |
$query_url = wp_nonce_url(admin_url('admin-ajax.php'), '', 'bwg_nonce');
|
| 711 |
/*(re?)define ajax_url to add nonce only in admin*/
|
| 712 |
?>
|
| 713 |
<script>
|
| 714 |
-
var ajax_url = "<?php echo $query_url; ?>"
|
| 715 |
</script>
|
| 716 |
<input id="show_add_embed" class="wd-btn wd-btn-primary wd-btn-icon wd-btn-media" type="button" title="<?php _e("Embed Media", 'bwg_back'); ?>" onclick="jQuery('.opacity_add_embed').show(); jQuery('#add_embed_help').hide(); return false;" value="<?php _e("Embed Media", 'bwg_back'); ?>" />
|
| 717 |
<input id="show_bulk_embed" class="wd-btn wd-btn-primary wd-btn-icon wd-btn-bulk_media spider_free_version_button" type="button" title="<?php _e("Social Bulk Embed", 'bwg_back'); ?>" onclick="jQuery('.opacity_bulk_embed').show(); return false;" value="<?php _e("Social Bulk Embed", 'bwg_back'); ?>" />
|
|
@@ -834,9 +832,7 @@ class BWGViewGalleries_bwg {
|
|
| 834 |
<span class="sorting-indicator"></span>
|
| 835 |
</a>
|
| 836 |
</th>
|
| 837 |
-
<th class="manage-column column-cb check-column table_small_col" style="padding-top:12px !important;"><input id="check_all" type="checkbox" onclick="spider_check_all(this)" style="margin:5px auto 0;"
|
| 838 |
-
|
| 839 |
-
</th>
|
| 840 |
<th class="table_small_col">#</th>
|
| 841 |
<th class="table_extra_large_col"><?php _e('Thumbnail', 'bwg_back'); ?></th>
|
| 842 |
<th class="sortable table_extra_large_col <?php if ($image_order_by == 'filename') {echo $order_class;} ?>">
|
| 27 |
$rows_data = $this->model->get_rows_data();
|
| 28 |
$page_nav = $this->model->page_nav();
|
| 29 |
$search_value = ((isset($_POST['search_value'])) ? esc_html(stripslashes($_POST['search_value'])) : '');
|
|
|
|
| 30 |
$asc_or_desc = ((isset($_POST['asc_or_desc'])) ? esc_html(stripslashes($_POST['asc_or_desc'])) : 'asc');
|
| 31 |
$order_by = (isset($_POST['order_by']) ? esc_html(stripslashes($_POST['order_by'])) : 'order');
|
| 32 |
$order_class = 'manage-column column-title sorted ' . $asc_or_desc;
|
| 61 |
<?php
|
| 62 |
foreach($gallery_button_array as $key => $value) {
|
| 63 |
?>
|
| 64 |
+
<option value="<?php echo $key; ?>"><?php echo $value; ?></option>
|
|
|
|
|
|
|
| 65 |
<?php
|
| 66 |
}
|
| 67 |
?>
|
| 414 |
input_alt.innerHTML = files[i]['name'];
|
| 415 |
}
|
| 416 |
else {/*uploaded images and direct URLs of images only*/
|
| 417 |
+
input_alt.innerHTML = files[i]['alt'];
|
| 418 |
}
|
| 419 |
td_alt.appendChild(input_alt);
|
| 420 |
|
| 436 |
textarea_desc.setAttribute('name', "image_description_" + bwg_j);
|
| 437 |
textarea_desc.setAttribute('rows', "2");
|
| 438 |
textarea_desc.setAttribute('style', "resize:vertical;");
|
| 439 |
+
textarea_desc.innerHTML = files[i]['description'] ? files[i]['description'] : '';
|
| 440 |
+
if (<?php echo $wd_bwg_options->read_metadata; ?>) {
|
| 441 |
+
textarea_desc.innerHTML += files[i]['description'] ? '\n' : '';
|
| 442 |
+
textarea_desc.innerHTML += files[i]['credit'] ? 'Author: ' + files[i]['credit'] + '\n' : '';
|
|
|
|
| 443 |
textarea_desc.innerHTML += ((files[i]['aperture'] != 0 && files[i]['aperture'] != '') ? 'Aperture: ' + files[i]['aperture'] + '\n' : '');
|
| 444 |
textarea_desc.innerHTML += ((files[i]['camera'] != 0 && files[i]['camera'] != '') ? 'Camera: ' + files[i]['camera'] + '\n' : '');
|
| 445 |
textarea_desc.innerHTML += ((files[i]['caption'] != 0 && files[i]['caption'] != '') ? 'Caption: ' + files[i]['caption'] + '\n' : '');
|
| 666 |
}
|
| 667 |
|
| 668 |
public function image_display($id) {
|
| 669 |
+
wp_enqueue_media();
|
| 670 |
global $WD_BWG_UPLOAD_DIR;
|
| 671 |
global $wd_bwg_options;
|
| 672 |
$rows_data = $this->model->get_image_rows_data($id);
|
| 703 |
<a href="<?php echo $query_url; ?>" id="add_image_bwg" class="wd-btn wd-btn-primary wd-btn-icon wd-btn-add thickbox thickbox-preview" id="content-add_media" title="<?php _e("Add Images", 'bwg_back'); ?>" onclick="return false;" style="margin-bottom:5px; <?php if($gallery_type !='') {echo 'display:none';} ?>" >
|
| 704 |
<?php _e('Add Images', 'bwg_back'); ?>
|
| 705 |
</a>
|
| 706 |
+
<input type="button" class="wd-btn wd-btn-primary wd-btn-icon wd-btn-add" onclick="spider_media_uploader(event, true); return false;" value="<?php _e("Import from Media Library", 'bwg_back'); ?>" />
|
| 707 |
<?php
|
| 708 |
$query_url = wp_nonce_url(admin_url('admin-ajax.php'), '', 'bwg_nonce');
|
| 709 |
/*(re?)define ajax_url to add nonce only in admin*/
|
| 710 |
?>
|
| 711 |
<script>
|
| 712 |
+
var ajax_url = "<?php echo $query_url; ?>";
|
| 713 |
</script>
|
| 714 |
<input id="show_add_embed" class="wd-btn wd-btn-primary wd-btn-icon wd-btn-media" type="button" title="<?php _e("Embed Media", 'bwg_back'); ?>" onclick="jQuery('.opacity_add_embed').show(); jQuery('#add_embed_help').hide(); return false;" value="<?php _e("Embed Media", 'bwg_back'); ?>" />
|
| 715 |
<input id="show_bulk_embed" class="wd-btn wd-btn-primary wd-btn-icon wd-btn-bulk_media spider_free_version_button" type="button" title="<?php _e("Social Bulk Embed", 'bwg_back'); ?>" onclick="jQuery('.opacity_bulk_embed').show(); return false;" value="<?php _e("Social Bulk Embed", 'bwg_back'); ?>" />
|
| 832 |
<span class="sorting-indicator"></span>
|
| 833 |
</a>
|
| 834 |
</th>
|
| 835 |
+
<th class="manage-column column-cb check-column table_small_col" style="padding-top:12px !important;"><input id="check_all" type="checkbox" onclick="spider_check_all(this)" style="margin:5px auto 0;" /></th>
|
|
|
|
|
|
|
| 836 |
<th class="table_small_col">#</th>
|
| 837 |
<th class="table_extra_large_col"><?php _e('Thumbnail', 'bwg_back'); ?></th>
|
| 838 |
<th class="sortable table_extra_large_col <?php if ($image_order_by == 'filename') {echo $order_class;} ?>">
|
admin/views/BWGViewOptions_bwg.php
CHANGED
|
@@ -1,7 +1,6 @@
|
|
| 1 |
<?php
|
| 2 |
|
| 3 |
class BWGViewOptions_bwg {
|
| 4 |
-
|
| 5 |
private $model;
|
| 6 |
|
| 7 |
public function __construct($model) {
|
|
@@ -1342,16 +1341,6 @@ class BWGViewOptions_bwg {
|
|
| 1342 |
<div class="spider_description"><?php _e('Count of images to preload (0 for all).', 'bwg_back'); ?></div>
|
| 1343 |
</td>
|
| 1344 |
</tr>
|
| 1345 |
-
<tr>
|
| 1346 |
-
<td class="spider_label_options">
|
| 1347 |
-
<label><?php _e('Import from Media Library:', 'bwg_back'); ?></label>
|
| 1348 |
-
</td>
|
| 1349 |
-
<td>
|
| 1350 |
-
<input type="radio" name="enable_ML_import" id="enable_ML_import_1" value="1" <?php if ($row->enable_ML_import) echo 'checked="checked"'; ?> /><label for="enable_ML_import_1"><?php _e('Yes', 'bwg_back'); ?></label>
|
| 1351 |
-
<input type="radio" name="enable_ML_import" id="enable_ML_import_0" value="0" <?php if (!$row->enable_ML_import) echo 'checked="checked"'; ?> /><label for="enable_ML_import_0"><?php _e('No', 'bwg_back'); ?></label>
|
| 1352 |
-
<div class="spider_description"><?php _e('Enable import from Media Library in file manager.', 'bwg_back'); ?></div>
|
| 1353 |
-
</td>
|
| 1354 |
-
</tr>
|
| 1355 |
<tr>
|
| 1356 |
<td class="spider_label_options">
|
| 1357 |
<label><?php _e('Enable html editor:', 'bwg_back'); ?></label>
|
| 1 |
<?php
|
| 2 |
|
| 3 |
class BWGViewOptions_bwg {
|
|
|
|
| 4 |
private $model;
|
| 5 |
|
| 6 |
public function __construct($model) {
|
| 1341 |
<div class="spider_description"><?php _e('Count of images to preload (0 for all).', 'bwg_back'); ?></div>
|
| 1342 |
</td>
|
| 1343 |
</tr>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1344 |
<tr>
|
| 1345 |
<td class="spider_label_options">
|
| 1346 |
<label><?php _e('Enable html editor:', 'bwg_back'); ?></label>
|
css/bwg_tables.css
CHANGED
|
@@ -603,7 +603,7 @@
|
|
| 603 |
}
|
| 604 |
|
| 605 |
#ed_options {
|
| 606 |
-
width:180px;
|
| 607 |
padding: 45px 10px 20px 0;
|
| 608 |
}
|
| 609 |
.wp-pointer.wp-pointer-aligned-right .wp-pointer-arrow {
|
|
@@ -716,7 +716,7 @@ a.wd-btn-primary:hover, a.wd-btn-primary:active, a.wd-btn-primary:link{
|
|
| 716 |
padding: 0px 10px 1px 36px !important;
|
| 717 |
color:#fff;
|
| 718 |
background-repeat: no-repeat;
|
| 719 |
-
background-position:
|
| 720 |
}
|
| 721 |
|
| 722 |
.wd-btn-delete{
|
|
@@ -1029,7 +1029,7 @@ textarea.bwg_popup_input {
|
|
| 1029 |
margin-top: 3px;
|
| 1030 |
}
|
| 1031 |
#display_default_option_panel, #display_panel {
|
| 1032 |
-
float: left
|
| 1033 |
display: block !important;
|
| 1034 |
}
|
| 1035 |
#preview_built_in_watermark, #preview_watermark {
|
| 603 |
}
|
| 604 |
|
| 605 |
#ed_options {
|
| 606 |
+
width: 180px;
|
| 607 |
padding: 45px 10px 20px 0;
|
| 608 |
}
|
| 609 |
.wp-pointer.wp-pointer-aligned-right .wp-pointer-arrow {
|
| 716 |
padding: 0px 10px 1px 36px !important;
|
| 717 |
color:#fff;
|
| 718 |
background-repeat: no-repeat;
|
| 719 |
+
background-position: 10px 50%;
|
| 720 |
}
|
| 721 |
|
| 722 |
.wd-btn-delete{
|
| 1029 |
margin-top: 3px;
|
| 1030 |
}
|
| 1031 |
#display_default_option_panel, #display_panel {
|
| 1032 |
+
float: left;
|
| 1033 |
display: block !important;
|
| 1034 |
}
|
| 1035 |
#preview_built_in_watermark, #preview_watermark {
|
filemanager/UploadHandler.php
CHANGED
|
@@ -24,7 +24,8 @@ require_once(WD_BWG_DIR . '/filemanager/controller.php');
|
|
| 24 |
$controller = new FilemanagerController();
|
| 25 |
|
| 26 |
$upload_handler = new bwg_UploadHandler(array(
|
| 27 |
-
'upload_dir' => $controller->uploads_dir . (isset($_GET['dir']) ? str_replace('\\', '', ($_GET['dir'])) : ''),
|
|
|
|
| 28 |
'accept_file_types' => '/\.(gif|jpe?g|png|aac|m4a|f4a|oga|ogg|mp3|zip)$/i'
|
| 29 |
));
|
| 30 |
|
|
@@ -53,9 +54,10 @@ class bwg_UploadHandler {
|
|
| 53 |
|
| 54 |
function __construct($options = null, $initialize = true, $error_messages = null) {
|
| 55 |
$this->options = array(
|
| 56 |
-
'
|
| 57 |
-
'
|
| 58 |
-
'
|
|
|
|
| 59 |
'user_dirs' => false,
|
| 60 |
'mkdir_mode' => 0755,
|
| 61 |
'param_name' => 'files',
|
|
@@ -185,8 +187,9 @@ class bwg_UploadHandler {
|
|
| 185 |
protected function get_upload_path($file_name = null, $version = null) {
|
| 186 |
$file_name = $file_name ? $file_name : '';
|
| 187 |
$version_path = empty($version) ? '' : $version.'/';
|
| 188 |
-
|
| 189 |
-
|
|
|
|
| 190 |
}
|
| 191 |
|
| 192 |
protected function get_query_separator($url) {
|
|
@@ -204,7 +207,7 @@ class bwg_UploadHandler {
|
|
| 204 |
return $url.'&download=1';
|
| 205 |
}
|
| 206 |
$version_path = empty($version) ? '' : rawurlencode($version).'/';
|
| 207 |
-
return $this->options['upload_url'].$this->get_user_path()
|
| 208 |
.$version_path.rawurlencode($file_name);
|
| 209 |
}
|
| 210 |
|
|
@@ -485,8 +488,7 @@ class bwg_UploadHandler {
|
|
| 485 |
// Keep an existing filename if this is part of a chunked upload:
|
| 486 |
$uploaded_bytes = $this->fix_integer_overflow(intval(isset($content_range[1]) ? $content_range[1] : 0));
|
| 487 |
while(is_file($this->get_upload_path($name))) {
|
| 488 |
-
if ($uploaded_bytes === $this->get_file_size(
|
| 489 |
-
$this->get_upload_path($name))) {
|
| 490 |
break;
|
| 491 |
}
|
| 492 |
$name = $this->upcount_name($name);
|
|
@@ -561,7 +563,7 @@ class bwg_UploadHandler {
|
|
| 561 |
|
| 562 |
protected function handle_image_file($file_path, $file) {
|
| 563 |
if ($this->options['orient_image']) {
|
| 564 |
-
|
| 565 |
}
|
| 566 |
$failed_versions = array();
|
| 567 |
foreach($this->options['image_versions'] as $version => $options) {
|
|
@@ -665,35 +667,61 @@ class bwg_UploadHandler {
|
|
| 665 |
}
|
| 666 |
}
|
| 667 |
|
| 668 |
-
protected function handle_file_import($uploaded_file, $name
|
| 669 |
$parent_dir = wp_upload_dir();
|
| 670 |
-
$
|
|
|
|
| 671 |
$file_type_array = explode('.', $name);
|
| 672 |
$type = strtolower(end($file_type_array));
|
| 673 |
-
|
| 674 |
$file = new stdClass();
|
| 675 |
-
$file->name = $this->get_file_name($name, $type,
|
| 676 |
$file->type = $type;
|
| 677 |
-
$this->handle_form_data($file,
|
| 678 |
$upload_dir = $this->get_upload_path();
|
| 679 |
-
if (!is_dir($upload_dir)) {
|
| 680 |
mkdir($upload_dir, $this->options['mkdir_mode'], true);
|
| 681 |
}
|
| 682 |
$file_path = $this->get_upload_path($file->name);
|
| 683 |
-
|
| 684 |
-
|
| 685 |
-
|
| 686 |
-
|
| 687 |
-
if ($this->options['max_width'] && $this->options['max_height']) {
|
| 688 |
-
// Media libruary Upload.
|
| 689 |
$this->create_scaled_image($file->name, 'main', $this->options);
|
| 690 |
}
|
| 691 |
-
|
| 692 |
-
if (is_int($img_width)) {
|
| 693 |
$this->handle_image_file($file_path, $file);
|
| 694 |
-
}
|
| 695 |
$this->set_file_delete_properties($file);
|
| 696 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 697 |
return $file;
|
| 698 |
}
|
| 699 |
|
|
@@ -875,22 +903,19 @@ class bwg_UploadHandler {
|
|
| 875 |
}
|
| 876 |
|
| 877 |
public function get($print_response = true) {
|
| 878 |
-
if (isset($_GET['import']) && $_GET['import'] ==
|
| 879 |
$file_names = explode('**@**', (isset($_REQUEST['file_namesML']) ? stripslashes($_REQUEST['file_namesML']) : ''));
|
|
|
|
|
|
|
| 880 |
foreach ($file_names as $index => $value) {
|
| 881 |
$file_name_array = explode('/', $value);
|
| 882 |
-
$files[] = $this->handle_file_import(
|
| 883 |
-
$value,
|
| 884 |
-
end($file_name_array),
|
| 885 |
-
0,
|
| 886 |
-
""
|
| 887 |
-
);
|
| 888 |
}
|
| 889 |
-
|
| 890 |
-
|
| 891 |
-
|
| 892 |
-
exit;
|
| 893 |
}
|
|
|
|
| 894 |
if ($print_response && isset($_GET['download'])) {
|
| 895 |
return $this->download();
|
| 896 |
}
|
| 24 |
$controller = new FilemanagerController();
|
| 25 |
|
| 26 |
$upload_handler = new bwg_UploadHandler(array(
|
| 27 |
+
'upload_dir' => $controller->uploads_dir . (isset($_GET['dir']) ? str_replace('\\', '', ($_GET['dir'])) : '/'),
|
| 28 |
+
'upload_url' => $controller->uploads_url,
|
| 29 |
'accept_file_types' => '/\.(gif|jpe?g|png|aac|m4a|f4a|oga|ogg|mp3|zip)$/i'
|
| 30 |
));
|
| 31 |
|
| 54 |
|
| 55 |
function __construct($options = null, $initialize = true, $error_messages = null) {
|
| 56 |
$this->options = array(
|
| 57 |
+
'media_library_folder' => 'imported_from_media_libray' . '/',
|
| 58 |
+
'script_url' => $this->get_full_url() . '/',
|
| 59 |
+
'upload_dir' => dirname($_SERVER['SCRIPT_FILENAME']) . '/files/',
|
| 60 |
+
'upload_url' => $this->get_full_url() . '/files/',
|
| 61 |
'user_dirs' => false,
|
| 62 |
'mkdir_mode' => 0755,
|
| 63 |
'param_name' => 'files',
|
| 187 |
protected function get_upload_path($file_name = null, $version = null) {
|
| 188 |
$file_name = $file_name ? $file_name : '';
|
| 189 |
$version_path = empty($version) ? '' : $version.'/';
|
| 190 |
+
$media_library_folder = (isset($_GET['import']) && $_GET['import'] == 1) ? $this->options['media_library_folder'] : '';
|
| 191 |
+
|
| 192 |
+
return $this->options['upload_dir'] . $media_library_folder . $this->get_user_path() . $version_path . $file_name;
|
| 193 |
}
|
| 194 |
|
| 195 |
protected function get_query_separator($url) {
|
| 207 |
return $url.'&download=1';
|
| 208 |
}
|
| 209 |
$version_path = empty($version) ? '' : rawurlencode($version).'/';
|
| 210 |
+
return $this->options['upload_url'].$this->get_user_path().'/'
|
| 211 |
.$version_path.rawurlencode($file_name);
|
| 212 |
}
|
| 213 |
|
| 488 |
// Keep an existing filename if this is part of a chunked upload:
|
| 489 |
$uploaded_bytes = $this->fix_integer_overflow(intval(isset($content_range[1]) ? $content_range[1] : 0));
|
| 490 |
while(is_file($this->get_upload_path($name))) {
|
| 491 |
+
if ($uploaded_bytes === $this->get_file_size($this->get_upload_path($name))) {
|
|
|
|
| 492 |
break;
|
| 493 |
}
|
| 494 |
$name = $this->upcount_name($name);
|
| 563 |
|
| 564 |
protected function handle_image_file($file_path, $file) {
|
| 565 |
if ($this->options['orient_image']) {
|
| 566 |
+
$this->orient_image($file_path);
|
| 567 |
}
|
| 568 |
$failed_versions = array();
|
| 569 |
foreach($this->options['image_versions'] as $version => $options) {
|
| 667 |
}
|
| 668 |
}
|
| 669 |
|
| 670 |
+
protected function handle_file_import($uploaded_file, $name) {
|
| 671 |
$parent_dir = wp_upload_dir();
|
| 672 |
+
$basedir = $parent_dir['basedir'];
|
| 673 |
+
|
| 674 |
$file_type_array = explode('.', $name);
|
| 675 |
$type = strtolower(end($file_type_array));
|
| 676 |
+
|
| 677 |
$file = new stdClass();
|
| 678 |
+
$file->name = $this->get_file_name($name, $type, 0, "");
|
| 679 |
$file->type = $type;
|
| 680 |
+
$this->handle_form_data($file, 0);
|
| 681 |
$upload_dir = $this->get_upload_path();
|
| 682 |
+
if ( !is_dir($upload_dir) ) {
|
| 683 |
mkdir($upload_dir, $this->options['mkdir_mode'], true);
|
| 684 |
}
|
| 685 |
$file_path = $this->get_upload_path($file->name);
|
| 686 |
+
copy($basedir . '/' . $uploaded_file, $file_path);
|
| 687 |
+
if ( $this->options['max_width'] && $this->options['max_height'] ) {
|
| 688 |
+
// Media library Upload.
|
|
|
|
|
|
|
|
|
|
| 689 |
$this->create_scaled_image($file->name, 'main', $this->options);
|
| 690 |
}
|
| 691 |
+
list($img_width) = @getimagesize(htmlspecialchars_decode($file_path, ENT_COMPAT | ENT_QUOTES));
|
| 692 |
+
if ( is_int($img_width) ) {
|
| 693 |
$this->handle_image_file($file_path, $file);
|
| 694 |
+
}
|
| 695 |
$this->set_file_delete_properties($file);
|
| 696 |
+
|
| 697 |
+
// Additional information.
|
| 698 |
+
|
| 699 |
+
$file->filetype = $type;
|
| 700 |
+
$file->filename = str_replace('.' . $file->filetype, '', $file->name);
|
| 701 |
+
$file->alt = $file->filename;
|
| 702 |
+
$file->reliative_url = $this->options['upload_url'] . '/' . $this->options['media_library_folder'] . $file->name;
|
| 703 |
+
$file->url = '/' . $this->options['media_library_folder'] . '/' . $file->name;
|
| 704 |
+
$file->thumb = $this->options['upload_url'] . '/' . $this->options['media_library_folder'] . '/thumb/' . $file->name;
|
| 705 |
+
$file->thumb_url = '/' . $this->options['media_library_folder'] . '/thumb/' . $file->name;
|
| 706 |
+
|
| 707 |
+
$file_size_kb = (int)(filesize($file_path) / 1024);
|
| 708 |
+
$file->size = $file_size_kb . ' KB';
|
| 709 |
+
$file->date_modified = date('d F Y, H:i', filemtime($file_path));
|
| 710 |
+
$image_info = getimagesize(htmlspecialchars_decode($file_path, ENT_COMPAT | ENT_QUOTES));
|
| 711 |
+
$file->resolution = $image_info[0] . ' x ' . $image_info[1] . ' px';
|
| 712 |
+
|
| 713 |
+
global $wd_bwg_options;
|
| 714 |
+
if ( $wd_bwg_options->read_metadata ) {
|
| 715 |
+
$exif = WDWLibrary::read_image_metadata($upload_dir . '.original/' . $file->name);
|
| 716 |
+
$file->credit = $exif['credit'];
|
| 717 |
+
$file->aperture = $exif['aperture'];
|
| 718 |
+
$file->camera = $exif['camera'];
|
| 719 |
+
$file->caption = $exif['caption'];
|
| 720 |
+
$file->iso = $exif['iso'];
|
| 721 |
+
$file->orientation = $exif['orientation'];
|
| 722 |
+
$file->copyright = $exif['copyright'];
|
| 723 |
+
}
|
| 724 |
+
|
| 725 |
return $file;
|
| 726 |
}
|
| 727 |
|
| 903 |
}
|
| 904 |
|
| 905 |
public function get($print_response = true) {
|
| 906 |
+
if ( isset($_GET['import']) && $_GET['import'] == 1 ) {
|
| 907 |
$file_names = explode('**@**', (isset($_REQUEST['file_namesML']) ? stripslashes($_REQUEST['file_namesML']) : ''));
|
| 908 |
+
|
| 909 |
+
$files = array();
|
| 910 |
foreach ($file_names as $index => $value) {
|
| 911 |
$file_name_array = explode('/', $value);
|
| 912 |
+
$files[] = $this->handle_file_import($value, end($file_name_array));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 913 |
}
|
| 914 |
+
|
| 915 |
+
echo json_encode($files);
|
| 916 |
+
return;
|
|
|
|
| 917 |
}
|
| 918 |
+
|
| 919 |
if ($print_response && isset($_GET['download'])) {
|
| 920 |
return $this->download();
|
| 921 |
}
|
filemanager/controller.php
CHANGED
|
@@ -7,309 +7,279 @@
|
|
| 7 |
|
| 8 |
|
| 9 |
class FilemanagerController {
|
| 10 |
-
|
| 11 |
-
|
| 12 |
-
////////////////////////////////////////////////////////////////////////////////////////
|
| 13 |
-
////////////////////////////////////////////////////////////////////////////////////////
|
| 14 |
-
// Constants //
|
| 15 |
-
////////////////////////////////////////////////////////////////////////////////////////
|
| 16 |
-
////////////////////////////////////////////////////////////////////////////////////////
|
| 17 |
-
// Variables //
|
| 18 |
-
////////////////////////////////////////////////////////////////////////////////////////
|
| 19 |
-
public $uploads_dir;
|
| 20 |
-
public $uploads_url;
|
| 21 |
|
| 22 |
-
|
| 23 |
-
|
| 24 |
-
|
| 25 |
-
|
| 26 |
-
|
| 27 |
-
$
|
| 28 |
-
global $wd_bwg_options;
|
| 29 |
-
$this->uploads_dir = (($wd_bwg_options->images_directory . '/photo-gallery') ? ABSPATH . $wd_bwg_options->images_directory . '/photo-gallery' : WD_BWG_DIR . '/filemanager/uploads');
|
| 30 |
-
if (file_exists($this->uploads_dir) == FALSE) {
|
| 31 |
-
mkdir($this->uploads_dir);
|
| 32 |
-
}
|
| 33 |
-
$this->uploads_url = (($wd_bwg_options->images_directory . '/photo-gallery') ? site_url() . '/' . $wd_bwg_options->images_directory . '/photo-gallery' : WD_BWG_URL . '/filemanager/uploads');
|
| 34 |
}
|
|
|
|
|
|
|
| 35 |
|
| 36 |
-
|
| 37 |
-
|
| 38 |
-
|
| 39 |
-
|
| 40 |
-
$task = isset($_REQUEST['task']) ? stripslashes(esc_html($_REQUEST['task'])) : 'display';
|
| 41 |
-
if (method_exists($this, $task)) {
|
| 42 |
-
$this->$task();
|
| 43 |
-
}
|
| 44 |
-
else {
|
| 45 |
-
$this->display();
|
| 46 |
-
}
|
| 47 |
}
|
| 48 |
-
|
| 49 |
-
|
| 50 |
-
return $this->uploads_dir;
|
| 51 |
}
|
|
|
|
| 52 |
|
| 53 |
-
|
| 54 |
-
|
| 55 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 56 |
|
| 57 |
-
|
| 58 |
-
|
| 59 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 60 |
|
| 61 |
-
|
| 62 |
-
|
| 63 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 64 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 65 |
|
| 66 |
-
|
| 67 |
-
|
| 68 |
-
|
| 69 |
-
|
| 70 |
|
| 71 |
-
|
| 72 |
-
|
| 73 |
-
|
| 74 |
-
|
| 75 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 76 |
}
|
| 77 |
-
|
| 78 |
-
|
|
|
|
|
|
|
|
|
|
| 79 |
}
|
| 80 |
-
$
|
| 81 |
-
$
|
| 82 |
-
|
| 83 |
-
|
|
|
|
| 84 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 85 |
|
| 86 |
-
|
| 87 |
-
|
| 88 |
-
|
| 89 |
-
|
| 90 |
|
| 91 |
-
|
| 92 |
-
|
|
|
|
|
|
|
| 93 |
$file_name = htmlspecialchars_decode($file_name, ENT_COMPAT | ENT_QUOTES);
|
| 94 |
$file_name = str_replace('../', '', $file_name);
|
| 95 |
-
|
| 96 |
-
$file_new_name = (isset($_REQUEST['file_new_name']) ? stripslashes(esc_html($_REQUEST['file_new_name'])) : '');
|
| 97 |
-
$file_new_name = htmlspecialchars_decode($file_new_name, ENT_COMPAT | ENT_QUOTES);
|
| 98 |
-
|
| 99 |
$file_path = $cur_dir_path . '/' . $file_name;
|
| 100 |
$thumb_file_path = $cur_dir_path . '/thumb/' . $file_name;
|
| 101 |
$original_file_path = $cur_dir_path . '/.original/' . $file_name;
|
| 102 |
-
|
| 103 |
-
$msg = '';
|
| 104 |
-
|
| 105 |
if (file_exists($file_path) == false) {
|
| 106 |
-
$msg = "
|
| 107 |
}
|
| 108 |
-
|
| 109 |
-
|
| 110 |
-
|
|
|
|
| 111 |
}
|
| 112 |
-
|
| 113 |
-
|
| 114 |
-
$file_extension = substr($file_name, strrpos($file_name, '.') + 1);
|
| 115 |
-
if (rename($file_path, $cur_dir_path . '/' . $file_new_name . '.' . $file_extension) == false) {
|
| 116 |
-
$msg = "Can't rename the file.";
|
| 117 |
}
|
| 118 |
-
rename($thumb_file_path, $cur_dir_path . '/thumb/' . $file_new_name . '.' . $file_extension);
|
| 119 |
-
rename($original_file_path, $cur_dir_path . '/.original/' . $file_new_name . '.' . $file_extension);
|
| 120 |
-
}
|
| 121 |
-
else {
|
| 122 |
-
$msg = "Can't rename the file.";
|
| 123 |
}
|
| 124 |
-
$_REQUEST['file_names'] = '';
|
| 125 |
-
$query_url = wp_nonce_url( admin_url('admin-ajax.php'), 'addImages', 'bwg_nonce' );
|
| 126 |
-
$query_url = add_query_arg(array('action' => 'addImages', 'filemanager_msg' => $msg, 'width' => '650', 'height' => '500', 'task' => 'display', 'extensions' => esc_html($_REQUEST['extensions']), 'callback' => esc_html($_REQUEST['callback']), 'dir' => $input_dir, 'TB_iframe' => '1'), $query_url);
|
| 127 |
-
header('Location: ' . $query_url);
|
| 128 |
-
exit;
|
| 129 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 130 |
|
| 131 |
-
|
| 132 |
-
|
| 133 |
-
|
| 134 |
-
|
| 135 |
|
| 136 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 137 |
|
| 138 |
-
|
| 139 |
-
|
| 140 |
-
$
|
| 141 |
-
|
| 142 |
-
|
| 143 |
-
|
| 144 |
-
|
| 145 |
-
|
| 146 |
-
|
| 147 |
-
|
| 148 |
-
else {
|
| 149 |
-
$this->remove_file_dir($file_path);
|
| 150 |
-
if (file_exists($thumb_file_path)) {
|
| 151 |
-
$this->remove_file_dir($thumb_file_path);
|
| 152 |
}
|
| 153 |
-
|
| 154 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 155 |
}
|
| 156 |
-
}
|
| 157 |
-
}
|
| 158 |
-
$_REQUEST['file_names'] = '';
|
| 159 |
-
$query_url = wp_nonce_url( admin_url('admin-ajax.php'), 'addImages', 'bwg_nonce' );
|
| 160 |
-
$query_url = add_query_arg(array('action' => 'addImages', 'filemanager_msg' => $msg, 'width' => '650', 'height' => '500', 'task' => 'show_file_manager', 'extensions' => esc_html($_REQUEST['extensions']), 'callback' => esc_html($_REQUEST['callback']), 'dir' => $input_dir, 'TB_iframe' => '1'), $query_url);
|
| 161 |
-
header('Location: ' . $query_url);
|
| 162 |
-
exit;
|
| 163 |
-
}
|
| 164 |
-
|
| 165 |
-
public function paste_items() {
|
| 166 |
-
$input_dir = (isset($_REQUEST['dir']) ? str_replace('\\', '', ($_REQUEST['dir'])) : '');
|
| 167 |
-
$input_dir = htmlspecialchars_decode($input_dir, ENT_COMPAT | ENT_QUOTES);
|
| 168 |
-
$msg = '';
|
| 169 |
-
|
| 170 |
-
$file_names = explode('**#**', (isset($_REQUEST['clipboard_files']) ? stripslashes($_REQUEST['clipboard_files']) : ''));
|
| 171 |
-
// $src_dir = $_SESSION['clipboard_src'];
|
| 172 |
-
$src_dir = (isset($_REQUEST['clipboard_src']) ? stripslashes($_REQUEST['clipboard_src']) : '');
|
| 173 |
-
$src_dir = $src_dir == '' ? $this->uploads_dir : $this->uploads_dir . '/' . $src_dir;
|
| 174 |
-
$src_dir = htmlspecialchars_decode($src_dir, ENT_COMPAT | ENT_QUOTES);
|
| 175 |
-
// $dest_dir = $_SESSION['clipboard_dest'];
|
| 176 |
-
$dest_dir = (isset($_REQUEST['clipboard_dest']) ? stripslashes($_REQUEST['clipboard_dest']) : '');
|
| 177 |
-
$dest_dir = $dest_dir == '' ? $this->uploads_dir : $this->uploads_dir . '/' . $dest_dir;
|
| 178 |
-
$dest_dir = htmlspecialchars_decode($dest_dir, ENT_COMPAT | ENT_QUOTES);
|
| 179 |
|
| 180 |
-
|
| 181 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 182 |
foreach ($file_names as $file_name) {
|
| 183 |
$file_name = htmlspecialchars_decode($file_name, ENT_COMPAT | ENT_QUOTES);
|
| 184 |
$file_name = str_replace('../', '', $file_name);
|
| 185 |
$src = $src_dir . '/' . $file_name;
|
| 186 |
-
if (file_exists($src) == false) {
|
| 187 |
-
$msg = "Failed to copy some of the files.";
|
| 188 |
-
$msg = $file_name;
|
| 189 |
-
continue;
|
| 190 |
-
}
|
| 191 |
$dest = $dest_dir . '/' . $file_name;
|
| 192 |
if (!is_dir($src_dir . '/' . $file_name)) {
|
| 193 |
-
if (!is_dir($dest_dir . '/thumb')) {
|
| 194 |
-
mkdir($dest_dir . '/thumb', 0777);
|
| 195 |
-
}
|
| 196 |
$thumb_src = $src_dir . '/thumb/' . $file_name;
|
| 197 |
$thumb_dest = $dest_dir . '/thumb/' . $file_name;
|
| 198 |
-
if (!is_dir($dest_dir . '
|
| 199 |
-
mkdir($dest_dir . '
|
| 200 |
}
|
| 201 |
$original_src = $src_dir . '/.original/' . $file_name;
|
| 202 |
$original_dest = $dest_dir . '/.original/' . $file_name;
|
| 203 |
-
|
| 204 |
-
|
| 205 |
-
if (file_exists($dest) == true) {
|
| 206 |
-
$path_parts = pathinfo($dest);
|
| 207 |
-
while (file_exists($path_parts['dirname'] . '/' . $path_parts['filename'] . '(' . ++$i . ')' . '.' . $path_parts['extension'])) {
|
| 208 |
-
}
|
| 209 |
-
$dest = $path_parts['dirname'] . '/' . $path_parts['filename'] . '(' . $i . ')' . '.' . $path_parts['extension'];
|
| 210 |
-
if (!is_dir($src_dir . '/' . $file_name)) {
|
| 211 |
-
$thumb_dest = $path_parts['dirname'] . '/thumb/' . $path_parts['filename'] . '(' . $i . ')' . '.' . $path_parts['extension'];
|
| 212 |
-
$original_dest = $path_parts['dirname'] . '/.original/' . $path_parts['filename'] . '(' . $i . ')' . '.' . $path_parts['extension'];
|
| 213 |
}
|
| 214 |
}
|
| 215 |
-
|
| 216 |
-
|
| 217 |
-
$msg = "Failed to copy some of the files.";
|
| 218 |
}
|
| 219 |
if (!is_dir($src_dir . '/' . $file_name)) {
|
| 220 |
-
|
| 221 |
-
|
| 222 |
}
|
| 223 |
}
|
| 224 |
-
|
| 225 |
-
|
| 226 |
-
if ($src_dir != $dest_dir) {
|
| 227 |
-
foreach ($file_names as $file_name) {
|
| 228 |
-
$file_name = htmlspecialchars_decode($file_name, ENT_COMPAT | ENT_QUOTES);
|
| 229 |
-
$file_name = str_replace('../', '', $file_name);
|
| 230 |
-
$src = $src_dir . '/' . $file_name;
|
| 231 |
-
$dest = $dest_dir . '/' . $file_name;
|
| 232 |
-
if (!is_dir($src_dir . '/' . $file_name)) {
|
| 233 |
-
$thumb_src = $src_dir . '/thumb/' . $file_name;
|
| 234 |
-
$thumb_dest = $dest_dir . '/thumb/' . $file_name;
|
| 235 |
-
if (!is_dir($dest_dir . '/thumb')) {
|
| 236 |
-
mkdir($dest_dir . '/thumb', 0777);
|
| 237 |
-
}
|
| 238 |
-
$original_src = $src_dir . '/.original/' . $file_name;
|
| 239 |
-
$original_dest = $dest_dir . '/.original/' . $file_name;
|
| 240 |
-
if (!is_dir($dest_dir . '/.original')) {
|
| 241 |
-
mkdir($dest_dir . '/.original', 0777);
|
| 242 |
-
}
|
| 243 |
-
}
|
| 244 |
-
if ((file_exists($src) == false) || (file_exists($dest) == true) || (!rename($src, $dest))) {
|
| 245 |
-
$msg = "Failed to move some of the files.";
|
| 246 |
-
}
|
| 247 |
-
if (!is_dir($src_dir . '/' . $file_name)) {
|
| 248 |
-
rename($thumb_src, $thumb_dest);
|
| 249 |
-
rename($original_src, $original_dest);
|
| 250 |
-
}
|
| 251 |
-
}
|
| 252 |
-
}
|
| 253 |
-
break;
|
| 254 |
-
}
|
| 255 |
-
$query_url = wp_nonce_url( admin_url('admin-ajax.php'), 'addImages', 'bwg_nonce' );
|
| 256 |
-
$query_url = add_query_arg(array('action' => 'addImages', 'filemanager_msg' => $msg, 'width' => '650', 'height' => '500', 'task' => 'show_file_manager', 'extensions' => esc_html($_REQUEST['extensions']), 'callback' => esc_html($_REQUEST['callback']), 'dir' => $input_dir, 'TB_iframe' => '1'), $query_url);
|
| 257 |
-
header('Location: ' . $query_url);
|
| 258 |
-
exit;
|
| 259 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 260 |
|
| 261 |
-
|
| 262 |
-
|
| 263 |
-
|
| 264 |
-
|
| 265 |
-
|
| 266 |
-
|
| 267 |
|
| 268 |
-
|
| 269 |
-
|
| 270 |
-
|
| 271 |
-
|
| 272 |
-
|
| 273 |
-
|
| 274 |
-
private function remove_file_dir($del_file_dir) {
|
| 275 |
-
if (is_dir($del_file_dir) == true) {
|
| 276 |
-
$files_to_remove = scandir($del_file_dir);
|
| 277 |
-
foreach ($files_to_remove as $file) {
|
| 278 |
-
if ($file != '.' and $file != '..') {
|
| 279 |
-
$this->remove_file_dir($del_file_dir . '/' . $file);
|
| 280 |
-
}
|
| 281 |
}
|
| 282 |
-
rmdir($del_file_dir);
|
| 283 |
-
}
|
| 284 |
-
else {
|
| 285 |
-
unlink($del_file_dir);
|
| 286 |
}
|
|
|
|
| 287 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
| 288 |
|
| 289 |
-
|
| 290 |
-
|
| 291 |
-
|
| 292 |
-
|
| 293 |
-
|
| 294 |
-
|
| 295 |
-
|
| 296 |
-
|
| 297 |
-
|
| 298 |
-
|
| 299 |
-
|
| 300 |
-
}
|
| 301 |
}
|
| 302 |
}
|
| 303 |
-
closedir($dir);
|
| 304 |
-
return true;
|
| 305 |
-
}
|
| 306 |
-
else {
|
| 307 |
-
return copy($src, $dest);
|
| 308 |
}
|
|
|
|
|
|
|
| 309 |
}
|
| 310 |
-
|
| 311 |
-
|
| 312 |
-
|
| 313 |
-
|
| 314 |
-
////////////////////////////////////////////////////////////////////////////////////////
|
| 315 |
}
|
| 7 |
|
| 8 |
|
| 9 |
class FilemanagerController {
|
| 10 |
+
public $uploads_dir;
|
| 11 |
+
public $uploads_url;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 12 |
|
| 13 |
+
public function __construct() {
|
| 14 |
+
$upload_dir = wp_upload_dir();
|
| 15 |
+
global $wd_bwg_options;
|
| 16 |
+
$this->uploads_dir = (($wd_bwg_options->images_directory . '/photo-gallery') ? ABSPATH . $wd_bwg_options->images_directory . '/photo-gallery' : WD_BWG_DIR . '/filemanager/uploads');
|
| 17 |
+
if (file_exists($this->uploads_dir) == FALSE) {
|
| 18 |
+
mkdir($this->uploads_dir);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 19 |
}
|
| 20 |
+
$this->uploads_url = (($wd_bwg_options->images_directory . '/photo-gallery') ? site_url() . '/' . $wd_bwg_options->images_directory . '/photo-gallery' : WD_BWG_URL . '/filemanager/uploads');
|
| 21 |
+
}
|
| 22 |
|
| 23 |
+
public function execute() {
|
| 24 |
+
$task = isset($_REQUEST['task']) ? stripslashes(esc_html($_REQUEST['task'])) : 'display';
|
| 25 |
+
if (method_exists($this, $task)) {
|
| 26 |
+
$this->$task();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 27 |
}
|
| 28 |
+
else {
|
| 29 |
+
$this->display();
|
|
|
|
| 30 |
}
|
| 31 |
+
}
|
| 32 |
|
| 33 |
+
public function get_uploads_dir() {
|
| 34 |
+
return $this->uploads_dir;
|
| 35 |
+
}
|
| 36 |
+
|
| 37 |
+
public function get_uploads_url() {
|
| 38 |
+
return $this->uploads_url;
|
| 39 |
+
}
|
| 40 |
|
| 41 |
+
public function display() {
|
| 42 |
+
require_once WD_BWG_DIR . '/filemanager/model.php';
|
| 43 |
+
$model = new FilemanagerModel($this);
|
| 44 |
+
require_once WD_BWG_DIR . '/filemanager/view.php';
|
| 45 |
+
$view = new FilemanagerView($this, $model);
|
| 46 |
+
$view->display();
|
| 47 |
+
}
|
| 48 |
|
| 49 |
+
public function make_dir() {
|
| 50 |
+
$input_dir = (isset($_REQUEST['dir']) ? str_replace('\\', '', esc_html($_REQUEST['dir'])) : '');
|
| 51 |
+
$input_dir = htmlspecialchars_decode($input_dir, ENT_COMPAT | ENT_QUOTES);
|
| 52 |
+
$cur_dir_path = $input_dir == '' ? $this->uploads_dir : $this->uploads_dir . '/' . $input_dir;
|
| 53 |
+
|
| 54 |
+
$new_dir_path = $cur_dir_path . '/' . (isset($_REQUEST['new_dir_name']) ? stripslashes(esc_html(sanitize_file_name($_REQUEST['new_dir_name']))) : '');
|
| 55 |
+
$new_dir_path = htmlspecialchars_decode($new_dir_path, ENT_COMPAT | ENT_QUOTES);
|
| 56 |
+
$msg = '';
|
| 57 |
+
if (file_exists($new_dir_path) == true) {
|
| 58 |
+
$msg = "Directory already exists.";
|
| 59 |
+
}
|
| 60 |
+
else {
|
| 61 |
+
mkdir($new_dir_path);
|
| 62 |
}
|
| 63 |
+
$query_url = wp_nonce_url( admin_url('admin-ajax.php'), 'addImages', 'bwg_nonce' );
|
| 64 |
+
$query_url = add_query_arg(array('action' => 'addImages', 'filemanager_msg' => $msg, 'width' => '650', 'height' => '500', 'task' => 'display', 'extensions' => esc_html($_REQUEST['extensions']), 'callback' => esc_html($_REQUEST['callback']), 'dir' => $input_dir, 'TB_iframe' => '1'), $query_url);
|
| 65 |
+
header('Location: ' . $query_url);
|
| 66 |
+
exit;
|
| 67 |
+
}
|
| 68 |
|
| 69 |
+
public function rename_item() {
|
| 70 |
+
$input_dir = (isset($_REQUEST['dir']) ? str_replace('\\', '', esc_html($_REQUEST['dir'])) : '');
|
| 71 |
+
$input_dir = htmlspecialchars_decode($input_dir, ENT_COMPAT | ENT_QUOTES);
|
| 72 |
+
$cur_dir_path = $input_dir == '' ? $this->uploads_dir : $this->uploads_dir . '/' . $input_dir;
|
| 73 |
|
| 74 |
+
$file_names = explode('**#**', (isset($_REQUEST['file_names']) ? stripslashes(esc_html($_REQUEST['file_names'])) : ''));
|
| 75 |
+
$file_name = $file_names[0];
|
| 76 |
+
$file_name = htmlspecialchars_decode($file_name, ENT_COMPAT | ENT_QUOTES);
|
| 77 |
+
$file_name = str_replace('../', '', $file_name);
|
| 78 |
+
|
| 79 |
+
$file_new_name = (isset($_REQUEST['file_new_name']) ? stripslashes(esc_html($_REQUEST['file_new_name'])) : '');
|
| 80 |
+
$file_new_name = htmlspecialchars_decode($file_new_name, ENT_COMPAT | ENT_QUOTES);
|
| 81 |
+
|
| 82 |
+
$file_path = $cur_dir_path . '/' . $file_name;
|
| 83 |
+
$thumb_file_path = $cur_dir_path . '/thumb/' . $file_name;
|
| 84 |
+
$original_file_path = $cur_dir_path . '/.original/' . $file_name;
|
| 85 |
+
|
| 86 |
+
$msg = '';
|
| 87 |
+
|
| 88 |
+
if (file_exists($file_path) == false) {
|
| 89 |
+
$msg = "File doesn't exist.";
|
| 90 |
+
}
|
| 91 |
+
elseif (is_dir($file_path) == true) {
|
| 92 |
+
if (rename($file_path, $cur_dir_path . '/' . sanitize_file_name($file_new_name)) == false) {
|
| 93 |
+
$msg = "Can't rename the file.";
|
| 94 |
}
|
| 95 |
+
}
|
| 96 |
+
elseif ((strrpos($file_name, '.') !== false)) {
|
| 97 |
+
$file_extension = substr($file_name, strrpos($file_name, '.') + 1);
|
| 98 |
+
if (rename($file_path, $cur_dir_path . '/' . $file_new_name . '.' . $file_extension) == false) {
|
| 99 |
+
$msg = "Can't rename the file.";
|
| 100 |
}
|
| 101 |
+
rename($thumb_file_path, $cur_dir_path . '/thumb/' . $file_new_name . '.' . $file_extension);
|
| 102 |
+
rename($original_file_path, $cur_dir_path . '/.original/' . $file_new_name . '.' . $file_extension);
|
| 103 |
+
}
|
| 104 |
+
else {
|
| 105 |
+
$msg = "Can't rename the file.";
|
| 106 |
}
|
| 107 |
+
$_REQUEST['file_names'] = '';
|
| 108 |
+
$query_url = wp_nonce_url( admin_url('admin-ajax.php'), 'addImages', 'bwg_nonce' );
|
| 109 |
+
$query_url = add_query_arg(array('action' => 'addImages', 'filemanager_msg' => $msg, 'width' => '650', 'height' => '500', 'task' => 'display', 'extensions' => esc_html($_REQUEST['extensions']), 'callback' => esc_html($_REQUEST['callback']), 'dir' => $input_dir, 'TB_iframe' => '1'), $query_url);
|
| 110 |
+
header('Location: ' . $query_url);
|
| 111 |
+
exit;
|
| 112 |
+
}
|
| 113 |
|
| 114 |
+
public function remove_items() {
|
| 115 |
+
$input_dir = (isset($_REQUEST['dir']) ? str_replace('\\', '', ($_REQUEST['dir'])) : '');
|
| 116 |
+
$input_dir = htmlspecialchars_decode($input_dir, ENT_COMPAT | ENT_QUOTES);
|
| 117 |
+
$cur_dir_path = $input_dir == '' ? $this->uploads_dir : $this->uploads_dir . '/' . $input_dir;
|
| 118 |
|
| 119 |
+
$file_names = explode('**#**', (isset($_REQUEST['file_names']) ? stripslashes(esc_html($_REQUEST['file_names'])) : ''));
|
| 120 |
+
|
| 121 |
+
$msg = '';
|
| 122 |
+
foreach ($file_names as $file_name) {
|
| 123 |
$file_name = htmlspecialchars_decode($file_name, ENT_COMPAT | ENT_QUOTES);
|
| 124 |
$file_name = str_replace('../', '', $file_name);
|
|
|
|
|
|
|
|
|
|
|
|
|
| 125 |
$file_path = $cur_dir_path . '/' . $file_name;
|
| 126 |
$thumb_file_path = $cur_dir_path . '/thumb/' . $file_name;
|
| 127 |
$original_file_path = $cur_dir_path . '/.original/' . $file_name;
|
|
|
|
|
|
|
|
|
|
| 128 |
if (file_exists($file_path) == false) {
|
| 129 |
+
$msg = "Some of the files couldn't be removed.";
|
| 130 |
}
|
| 131 |
+
else {
|
| 132 |
+
$this->remove_file_dir($file_path);
|
| 133 |
+
if (file_exists($thumb_file_path)) {
|
| 134 |
+
$this->remove_file_dir($thumb_file_path);
|
| 135 |
}
|
| 136 |
+
if (file_exists($original_file_path)) {
|
| 137 |
+
$this->remove_file_dir($original_file_path);
|
|
|
|
|
|
|
|
|
|
| 138 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 139 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 140 |
}
|
| 141 |
+
$_REQUEST['file_names'] = '';
|
| 142 |
+
$query_url = wp_nonce_url( admin_url('admin-ajax.php'), 'addImages', 'bwg_nonce' );
|
| 143 |
+
$query_url = add_query_arg(array('action' => 'addImages', 'filemanager_msg' => $msg, 'width' => '650', 'height' => '500', 'task' => 'show_file_manager', 'extensions' => esc_html($_REQUEST['extensions']), 'callback' => esc_html($_REQUEST['callback']), 'dir' => $input_dir, 'TB_iframe' => '1'), $query_url);
|
| 144 |
+
header('Location: ' . $query_url);
|
| 145 |
+
exit;
|
| 146 |
+
}
|
| 147 |
|
| 148 |
+
public function paste_items() {
|
| 149 |
+
$input_dir = (isset($_REQUEST['dir']) ? str_replace('\\', '', ($_REQUEST['dir'])) : '');
|
| 150 |
+
$input_dir = htmlspecialchars_decode($input_dir, ENT_COMPAT | ENT_QUOTES);
|
| 151 |
+
$msg = '';
|
| 152 |
|
| 153 |
+
$file_names = explode('**#**', (isset($_REQUEST['clipboard_files']) ? stripslashes($_REQUEST['clipboard_files']) : ''));
|
| 154 |
+
$src_dir = (isset($_REQUEST['clipboard_src']) ? stripslashes($_REQUEST['clipboard_src']) : '');
|
| 155 |
+
$src_dir = $src_dir == '' ? $this->uploads_dir : $this->uploads_dir . '/' . $src_dir;
|
| 156 |
+
$src_dir = htmlspecialchars_decode($src_dir, ENT_COMPAT | ENT_QUOTES);
|
| 157 |
+
$dest_dir = (isset($_REQUEST['clipboard_dest']) ? stripslashes($_REQUEST['clipboard_dest']) : '');
|
| 158 |
+
$dest_dir = $dest_dir == '' ? $this->uploads_dir : $this->uploads_dir . '/' . $dest_dir;
|
| 159 |
+
$dest_dir = htmlspecialchars_decode($dest_dir, ENT_COMPAT | ENT_QUOTES);
|
| 160 |
|
| 161 |
+
switch ((isset($_REQUEST['clipboard_task']) ? stripslashes($_REQUEST['clipboard_task']) : '')) {
|
| 162 |
+
case 'copy':
|
| 163 |
+
foreach ($file_names as $file_name) {
|
| 164 |
+
$file_name = htmlspecialchars_decode($file_name, ENT_COMPAT | ENT_QUOTES);
|
| 165 |
+
$file_name = str_replace('../', '', $file_name);
|
| 166 |
+
$src = $src_dir . '/' . $file_name;
|
| 167 |
+
if (file_exists($src) == false) {
|
| 168 |
+
$msg = "Failed to copy some of the files.";
|
| 169 |
+
$msg = $file_name;
|
| 170 |
+
continue;
|
|
|
|
|
|
|
|
|
|
|
|
|
| 171 |
}
|
| 172 |
+
$dest = $dest_dir . '/' . $file_name;
|
| 173 |
+
if (!is_dir($src_dir . '/' . $file_name)) {
|
| 174 |
+
if (!is_dir($dest_dir . '/thumb')) {
|
| 175 |
+
mkdir($dest_dir . '/thumb', 0777);
|
| 176 |
+
}
|
| 177 |
+
$thumb_src = $src_dir . '/thumb/' . $file_name;
|
| 178 |
+
$thumb_dest = $dest_dir . '/thumb/' . $file_name;
|
| 179 |
+
if (!is_dir($dest_dir . '/.original')) {
|
| 180 |
+
mkdir($dest_dir . '/.original', 0777);
|
| 181 |
+
}
|
| 182 |
+
$original_src = $src_dir . '/.original/' . $file_name;
|
| 183 |
+
$original_dest = $dest_dir . '/.original/' . $file_name;
|
| 184 |
+
}
|
| 185 |
+
$i = 0;
|
| 186 |
+
if (file_exists($dest) == true) {
|
| 187 |
+
$path_parts = pathinfo($dest);
|
| 188 |
+
while (file_exists($path_parts['dirname'] . '/' . $path_parts['filename'] . '(' . ++$i . ')' . '.' . $path_parts['extension'])) {
|
| 189 |
+
}
|
| 190 |
+
$dest = $path_parts['dirname'] . '/' . $path_parts['filename'] . '(' . $i . ')' . '.' . $path_parts['extension'];
|
| 191 |
+
if (!is_dir($src_dir . '/' . $file_name)) {
|
| 192 |
+
$thumb_dest = $path_parts['dirname'] . '/thumb/' . $path_parts['filename'] . '(' . $i . ')' . '.' . $path_parts['extension'];
|
| 193 |
+
$original_dest = $path_parts['dirname'] . '/.original/' . $path_parts['filename'] . '(' . $i . ')' . '.' . $path_parts['extension'];
|
| 194 |
+
}
|
| 195 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 196 |
|
| 197 |
+
if (!$this->copy_file_dir($src, $dest)) {
|
| 198 |
+
$msg = "Failed to copy some of the files.";
|
| 199 |
+
}
|
| 200 |
+
if (!is_dir($src_dir . '/' . $file_name)) {
|
| 201 |
+
$this->copy_file_dir($thumb_src, $thumb_dest);
|
| 202 |
+
$this->copy_file_dir($original_src, $original_dest);
|
| 203 |
+
}
|
| 204 |
+
}
|
| 205 |
+
break;
|
| 206 |
+
case 'cut':
|
| 207 |
+
if ($src_dir != $dest_dir) {
|
| 208 |
foreach ($file_names as $file_name) {
|
| 209 |
$file_name = htmlspecialchars_decode($file_name, ENT_COMPAT | ENT_QUOTES);
|
| 210 |
$file_name = str_replace('../', '', $file_name);
|
| 211 |
$src = $src_dir . '/' . $file_name;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 212 |
$dest = $dest_dir . '/' . $file_name;
|
| 213 |
if (!is_dir($src_dir . '/' . $file_name)) {
|
|
|
|
|
|
|
|
|
|
| 214 |
$thumb_src = $src_dir . '/thumb/' . $file_name;
|
| 215 |
$thumb_dest = $dest_dir . '/thumb/' . $file_name;
|
| 216 |
+
if (!is_dir($dest_dir . '/thumb')) {
|
| 217 |
+
mkdir($dest_dir . '/thumb', 0777);
|
| 218 |
}
|
| 219 |
$original_src = $src_dir . '/.original/' . $file_name;
|
| 220 |
$original_dest = $dest_dir . '/.original/' . $file_name;
|
| 221 |
+
if (!is_dir($dest_dir . '/.original')) {
|
| 222 |
+
mkdir($dest_dir . '/.original', 0777);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 223 |
}
|
| 224 |
}
|
| 225 |
+
if ((file_exists($src) == false) || (file_exists($dest) == true) || (!rename($src, $dest))) {
|
| 226 |
+
$msg = "Failed to move some of the files.";
|
|
|
|
| 227 |
}
|
| 228 |
if (!is_dir($src_dir . '/' . $file_name)) {
|
| 229 |
+
rename($thumb_src, $thumb_dest);
|
| 230 |
+
rename($original_src, $original_dest);
|
| 231 |
}
|
| 232 |
}
|
| 233 |
+
}
|
| 234 |
+
break;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 235 |
}
|
| 236 |
+
$query_url = wp_nonce_url( admin_url('admin-ajax.php'), 'addImages', 'bwg_nonce' );
|
| 237 |
+
$query_url = add_query_arg(array('action' => 'addImages', 'filemanager_msg' => $msg, 'width' => '650', 'height' => '500', 'task' => 'show_file_manager', 'extensions' => esc_html($_REQUEST['extensions']), 'callback' => esc_html($_REQUEST['callback']), 'dir' => $input_dir, 'TB_iframe' => '1'), $query_url);
|
| 238 |
+
header('Location: ' . $query_url);
|
| 239 |
+
exit;
|
| 240 |
+
}
|
| 241 |
|
| 242 |
+
public function import_items() {
|
| 243 |
+
$query_url = wp_nonce_url( admin_url('admin-ajax.php'), 'bwg_UploadHandler', 'bwg_nonce' );
|
| 244 |
+
$query_url = add_query_arg(array('action' => 'bwg_UploadHandler', 'importer_thumb_width' => esc_html($_REQUEST['importer_thumb_width']), 'importer_thumb_height' => esc_html($_REQUEST['importer_thumb_height']), 'callback' => esc_html($_REQUEST['callback']), 'file_namesML' => esc_html($_REQUEST['file_namesML']), 'importer_img_width' => esc_html($_REQUEST['importer_img_width']), 'importer_img_height' => esc_html($_REQUEST['importer_img_height']), 'import' => 'true', 'redir' => esc_html($_REQUEST['dir']), 'dir' => esc_html($_REQUEST['dir']) . '/'), $query_url);
|
| 245 |
+
header('Location: ' . $query_url);
|
| 246 |
+
exit;
|
| 247 |
+
}
|
| 248 |
|
| 249 |
+
private function remove_file_dir($del_file_dir) {
|
| 250 |
+
if (is_dir($del_file_dir) == true) {
|
| 251 |
+
$files_to_remove = scandir($del_file_dir);
|
| 252 |
+
foreach ($files_to_remove as $file) {
|
| 253 |
+
if ($file != '.' and $file != '..') {
|
| 254 |
+
$this->remove_file_dir($del_file_dir . '/' . $file);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 255 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
| 256 |
}
|
| 257 |
+
rmdir($del_file_dir);
|
| 258 |
}
|
| 259 |
+
else {
|
| 260 |
+
unlink($del_file_dir);
|
| 261 |
+
}
|
| 262 |
+
}
|
| 263 |
|
| 264 |
+
private function copy_file_dir($src, $dest) {
|
| 265 |
+
if (is_dir($src) == true) {
|
| 266 |
+
$dir = opendir($src);
|
| 267 |
+
@mkdir($dest);
|
| 268 |
+
while (false !== ($file = readdir($dir))) {
|
| 269 |
+
if (($file != '.') && ($file != '..')) {
|
| 270 |
+
if (is_dir($src . '/' . $file)) {
|
| 271 |
+
$this->copy_file_dir($src . '/' . $file, $dest . '/' . $file);
|
| 272 |
+
}
|
| 273 |
+
else {
|
| 274 |
+
copy($src . '/' . $file, $dest . '/' . $file);
|
|
|
|
| 275 |
}
|
| 276 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 277 |
}
|
| 278 |
+
closedir($dir);
|
| 279 |
+
return true;
|
| 280 |
}
|
| 281 |
+
else {
|
| 282 |
+
return copy($src, $dest);
|
| 283 |
+
}
|
| 284 |
+
}
|
|
|
|
| 285 |
}
|
filemanager/css/default.css
CHANGED
|
@@ -88,6 +88,7 @@ html, body, div, span, th, td, a {
|
|
| 88 |
bottom: 0;
|
| 89 |
left: 0;
|
| 90 |
right: 0;
|
|
|
|
| 91 |
}
|
| 92 |
|
| 93 |
#file_manager,
|
| 88 |
bottom: 0;
|
| 89 |
left: 0;
|
| 90 |
right: 0;
|
| 91 |
+
width: 100%;
|
| 92 |
}
|
| 93 |
|
| 94 |
#file_manager,
|
filemanager/js/default.js
CHANGED
|
@@ -7,13 +7,10 @@
|
|
| 7 |
var keyFileSelected;
|
| 8 |
var keyFileSelectedML;
|
| 9 |
var filesSelected;
|
| 10 |
-
var filesSelectedML;
|
| 11 |
var dragFiles;
|
| 12 |
var isUploading;
|
| 13 |
|
| 14 |
var ajax = true;
|
| 15 |
-
var importer_ajax = true;
|
| 16 |
-
var media_lib_images = false;
|
| 17 |
|
| 18 |
var all_files_selected = false;
|
| 19 |
var no_selected_files = [];
|
|
@@ -36,29 +33,8 @@ jQuery(document).ready(function () {
|
|
| 36 |
}
|
| 37 |
}
|
| 38 |
});
|
| 39 |
-
var media_lib_elements = 2;
|
| 40 |
-
var media_lib_item_count = jQuery("#importer_body_container #importer_body").data("files_count");
|
| 41 |
-
jQuery("#importer_body_container").scroll(function () {
|
| 42 |
-
var importer_item_count = jQuery("#importer_body .importer_item").length;
|
| 43 |
-
if (importer_ajax && importer_item_count < media_lib_item_count) {
|
| 44 |
-
var scroll_position = jQuery(this).scrollTop() + jQuery(this).innerHeight();
|
| 45 |
-
var scroll_Height = jQuery(this)[0].scrollHeight;
|
| 46 |
-
if (scroll_position >= scroll_Height) {
|
| 47 |
-
var start_count = (media_lib_elements-1)*element_load_count;
|
| 48 |
-
var end_count = media_lib_elements*element_load_count;
|
| 49 |
-
var next_files = media_library_files.slice(start_count, end_count);
|
| 50 |
-
ajax_print_images(next_files , jQuery("#importer_body"), 'importer_item', start_count);
|
| 51 |
-
media_lib_elements++;
|
| 52 |
-
}
|
| 53 |
-
}
|
| 54 |
-
});
|
| 55 |
|
| 56 |
-
|
| 57 |
-
var all_images_count = jQuery("#importer .item_thumb img").length;
|
| 58 |
-
}
|
| 59 |
-
else {
|
| 60 |
-
var all_images_count = jQuery("#file_manager .item_thumb img").length;
|
| 61 |
-
}
|
| 62 |
if (!all_images_count) {
|
| 63 |
setTimeout(function(){jQuery(document).trigger("onUpload")});
|
| 64 |
}
|
|
@@ -70,10 +46,8 @@ jQuery(document).ready(function () {
|
|
| 70 |
}
|
| 71 |
setTimeout(function(){loaded()}, 10000);
|
| 72 |
filesSelected = [];
|
| 73 |
-
filesSelectedML = [];
|
| 74 |
dragFiles = [];
|
| 75 |
|
| 76 |
-
//file manager under system messages
|
| 77 |
jQuery("#wrapper").css("top", jQuery("#file_manager_message").css("height"));
|
| 78 |
jQuery(window).resize(function () {
|
| 79 |
jQuery("#container").css("top", jQuery("#file_manager_message").css("height"));
|
|
@@ -117,7 +91,6 @@ function getClipboardFiles() {
|
|
| 117 |
|
| 118 |
function submit(task, sortBy, sortOrder, itemsView, destDir, fileNewName, newDirName, clipboardTask, clipboardFiles, clipboardSrc, clipboardDest) {
|
| 119 |
var names_array = [];
|
| 120 |
-
var lib_names_array = [];
|
| 121 |
if (all_files_selected === true) {
|
| 122 |
for (i in wdb_all_files) {
|
| 123 |
var index = no_selected_files.indexOf(wdb_all_files[i]["name"]);
|
|
@@ -126,19 +99,10 @@ function submit(task, sortBy, sortOrder, itemsView, destDir, fileNewName, newDir
|
|
| 126 |
names_array.push(all_names);
|
| 127 |
}
|
| 128 |
}
|
| 129 |
-
for (i in media_library_files) {
|
| 130 |
-
var lib_index = no_selected_files.indexOf(media_library_files[i]["name"]);
|
| 131 |
-
if (lib_index < 0) {
|
| 132 |
-
var lib_all_names = media_library_files[i]["path"];
|
| 133 |
-
lib_names_array.push(lib_all_names);
|
| 134 |
-
}
|
| 135 |
-
}
|
| 136 |
fileNames = names_array.join("**#**");
|
| 137 |
-
fileNamesML = lib_names_array.join("**@**");
|
| 138 |
}
|
| 139 |
else {
|
| 140 |
fileNames = filesSelected.join("**#**");
|
| 141 |
-
fileNamesML = filesSelectedML.join("**@**");
|
| 142 |
}
|
| 143 |
|
| 144 |
switch (task) {
|
|
@@ -188,23 +152,18 @@ function submit(task, sortBy, sortOrder, itemsView, destDir, fileNewName, newDir
|
|
| 188 |
if (itemsView != null) {
|
| 189 |
jQuery("form[name=adminForm]").find("input[name=items_view]").val(itemsView);
|
| 190 |
}
|
| 191 |
-
|
| 192 |
if (destDir != null) {
|
| 193 |
jQuery("form[name=adminForm]").find("input[name=dir]").val(destDir);
|
| 194 |
}
|
| 195 |
if (fileNames != null) {
|
| 196 |
jQuery("form[name=adminForm]").find("input[name=file_names]").val(fileNames);
|
| 197 |
}
|
| 198 |
-
if (fileNamesML != null) {
|
| 199 |
-
jQuery("form[name=adminForm]").find("input[name=file_namesML]").val(fileNamesML);
|
| 200 |
-
}
|
| 201 |
if (fileNewName != null) {
|
| 202 |
jQuery("form[name=adminForm]").find("input[name=file_new_name]").val(fileNewName);
|
| 203 |
}
|
| 204 |
if (newDirName != null) {
|
| 205 |
jQuery("form[name=adminForm]").find("input[name=new_dir_name]").val(newDirName);
|
| 206 |
}
|
| 207 |
-
|
| 208 |
if (clipboardTask != null) {
|
| 209 |
jQuery("form[name=adminForm]").find("input[name=clipboard_task]").val(clipboardTask);
|
| 210 |
}
|
|
@@ -236,6 +195,7 @@ function submitFiles() {
|
|
| 236 |
if (filesSelected.length == 0) {
|
| 237 |
return;
|
| 238 |
}
|
|
|
|
| 239 |
var filesValid = [];
|
| 240 |
if (all_files_selected === true) {
|
| 241 |
for (i in wdb_all_files) {
|
|
@@ -245,6 +205,7 @@ function submitFiles() {
|
|
| 245 |
if (index < 0) {
|
| 246 |
fileData['name'] = wdb_all_files[i]["name"];
|
| 247 |
fileData['filename'] = wdb_all_files[i]["filename"];;
|
|
|
|
| 248 |
fileData['url'] = dir + "/" + wdb_all_files[i]["name"];
|
| 249 |
fileData['reliative_url'] = dirUrl + "/" + wdb_all_files[i]["name"];
|
| 250 |
fileData['thumb_url'] = dir + "/thumb/" + wdb_all_files[i]["name"];
|
|
@@ -272,6 +233,7 @@ function submitFiles() {
|
|
| 272 |
var fileData = [];
|
| 273 |
fileData['name'] = filesSelected[i];
|
| 274 |
fileData['filename'] = jQuery(file_object).attr("filename");
|
|
|
|
| 275 |
fileData['url'] = dir + "/" + filesSelected[i];
|
| 276 |
fileData['reliative_url'] = dirUrl + "/" + filesSelected[i];
|
| 277 |
fileData['thumb_url'] = dir + "/thumb/" + filesSelected[i];
|
|
@@ -296,17 +258,6 @@ function submitFiles() {
|
|
| 296 |
window.parent.tb_remove();
|
| 297 |
}
|
| 298 |
|
| 299 |
-
function importFiles() {
|
| 300 |
-
if (filesSelectedML.length == 0) {
|
| 301 |
-
alert();
|
| 302 |
-
alert("Select at least one file to import.");
|
| 303 |
-
return;
|
| 304 |
-
}
|
| 305 |
-
else {
|
| 306 |
-
submit("import_items", null, null, null, null, null, null, null, null, null, dir);
|
| 307 |
-
}
|
| 308 |
-
}
|
| 309 |
-
|
| 310 |
function getScrollBarWidth() {
|
| 311 |
var inner = document.createElement("p");
|
| 312 |
inner.style.width = "100%";
|
|
@@ -449,7 +400,6 @@ function onPathComponentClick(event, obj, key) {
|
|
| 449 |
}
|
| 450 |
|
| 451 |
function onBtnShowImportClick(event, obj) {
|
| 452 |
-
media_lib_images = true;
|
| 453 |
jQuery("#importer").fadeIn();
|
| 454 |
}
|
| 455 |
|
|
@@ -478,7 +428,6 @@ function onKeyDown(e) {
|
|
| 478 |
jQuery(".explorer_item").addClass("explorer_item_select");
|
| 479 |
jQuery(".importer_item").addClass("importer_item_select");
|
| 480 |
filesSelected = [];
|
| 481 |
-
filesSelectedML = [];
|
| 482 |
jQuery(".explorer_item").each(function() {
|
| 483 |
var objName = jQuery(this).attr("name");
|
| 484 |
if (filesSelected.indexOf(objName) == -1) {
|
|
@@ -486,13 +435,6 @@ function onKeyDown(e) {
|
|
| 486 |
keyFileSelected = this;
|
| 487 |
}
|
| 488 |
});
|
| 489 |
-
jQuery(".importer_item").each(function() {
|
| 490 |
-
var objName = jQuery(this).attr("path");
|
| 491 |
-
if (filesSelectedML.indexOf(objName) == -1) {
|
| 492 |
-
filesSelectedML.push(objName);
|
| 493 |
-
keyFileSelectedML = this;
|
| 494 |
-
}
|
| 495 |
-
});
|
| 496 |
e.preventDefault();
|
| 497 |
}
|
| 498 |
}
|
|
@@ -501,18 +443,10 @@ function onFileMOver(event, obj) {
|
|
| 501 |
jQuery(obj).addClass("explorer_item_hover");
|
| 502 |
}
|
| 503 |
|
| 504 |
-
function onFileMOverML(event, obj) {
|
| 505 |
-
jQuery(obj).addClass("importer_item_hover");
|
| 506 |
-
}
|
| 507 |
-
|
| 508 |
function onFileMOut(event, obj) {
|
| 509 |
jQuery(obj).removeClass("explorer_item_hover");
|
| 510 |
}
|
| 511 |
|
| 512 |
-
function onFileMOutML(event, obj) {
|
| 513 |
-
jQuery(obj).removeClass("importer_item_hover");
|
| 514 |
-
}
|
| 515 |
-
|
| 516 |
function onFileClick(event, obj) {
|
| 517 |
jQuery(".explorer_item").removeClass("explorer_item_select");
|
| 518 |
var objName = jQuery(obj).attr("name");
|
|
@@ -559,41 +493,6 @@ function onFileClick(event, obj) {
|
|
| 559 |
updateFileNames();
|
| 560 |
}
|
| 561 |
|
| 562 |
-
function onFileClickML(event, obj) {
|
| 563 |
-
jQuery(".importer_item").removeClass("importer_item_select");
|
| 564 |
-
var objName = jQuery(obj).attr("path");
|
| 565 |
-
if (event.ctrlKey == true || event.metaKey == true) {
|
| 566 |
-
if (filesSelectedML.indexOf(objName) == -1) {
|
| 567 |
-
filesSelectedML.push(objName);
|
| 568 |
-
keyFileSelectedML = obj;
|
| 569 |
-
}
|
| 570 |
-
else {
|
| 571 |
-
filesSelectedML.splice(filesSelectedML.indexOf(objName), 1);
|
| 572 |
-
jQuery(obj).removeClass("importer_item_select");
|
| 573 |
-
}
|
| 574 |
-
}
|
| 575 |
-
else if (event.shiftKey == true) {
|
| 576 |
-
filesSelectedML = [];
|
| 577 |
-
var explorerItems = jQuery(".importer_item");
|
| 578 |
-
var curFileIndex = explorerItems.index(jQuery(obj));
|
| 579 |
-
var keyFileIndex = explorerItems.index(keyFileSelectedML);
|
| 580 |
-
var startIndex = Math.min(keyFileIndex, curFileIndex);
|
| 581 |
-
var endIndex = startIndex + Math.abs(curFileIndex - keyFileIndex);
|
| 582 |
-
for (var i = startIndex; i < endIndex + 1; i++) {
|
| 583 |
-
filesSelectedML.push(jQuery(explorerItems[i]).attr("path"));
|
| 584 |
-
}
|
| 585 |
-
}
|
| 586 |
-
else {
|
| 587 |
-
filesSelectedML = [jQuery(obj).attr("path")];
|
| 588 |
-
keyFileSelectedML = obj;
|
| 589 |
-
}
|
| 590 |
-
|
| 591 |
-
for (var i = 0; i < filesSelectedML.length; i++) {
|
| 592 |
-
jQuery(".importer_item[path='" + filesSelectedML[i] + "']").addClass("importer_item_select");
|
| 593 |
-
}
|
| 594 |
-
updateFileNames();
|
| 595 |
-
}
|
| 596 |
-
|
| 597 |
function onFileDblClick(event, obj) {
|
| 598 |
if (jQuery(obj).attr("isDir") == "true") {
|
| 599 |
submit("", null, null, null, dir + DS + jQuery(obj).attr("name"), null, null, null, null, null, null);
|
|
@@ -605,12 +504,6 @@ function onFileDblClick(event, obj) {
|
|
| 605 |
}
|
| 606 |
}
|
| 607 |
|
| 608 |
-
function onFileDblClickML(event, obj) {
|
| 609 |
-
filesSelectedML = [];
|
| 610 |
-
filesSelectedML.push(jQuery(obj).attr("path"));
|
| 611 |
-
importFiles();
|
| 612 |
-
}
|
| 613 |
-
|
| 614 |
function onFileDragStart(event, obj) {
|
| 615 |
var objName = jQuery(obj).attr("name");
|
| 616 |
if (filesSelected.indexOf(objName) < 0) {
|
|
@@ -671,10 +564,6 @@ function onBtnOpenClick(event, obj) {
|
|
| 671 |
}
|
| 672 |
}
|
| 673 |
|
| 674 |
-
function onBtnImportClick(event, obj) {
|
| 675 |
-
importFiles();
|
| 676 |
-
}
|
| 677 |
-
|
| 678 |
function onBtnCancelClick(event, obj) {
|
| 679 |
window.parent.tb_remove();
|
| 680 |
}
|
|
@@ -693,44 +582,10 @@ function onBtnSelectAllClick() {
|
|
| 693 |
all_files_selected = true;
|
| 694 |
}
|
| 695 |
|
| 696 |
-
function onBtnSelectAllMediLibraryClick() {
|
| 697 |
-
jQuery(".importer_item").addClass("importer_item_select");
|
| 698 |
-
filesSelectedML = [];
|
| 699 |
-
jQuery(".importer_item").each(function() {
|
| 700 |
-
var objName = jQuery(this).attr("path");
|
| 701 |
-
if (filesSelectedML.indexOf(objName) == -1) {
|
| 702 |
-
filesSelectedML.push(objName);
|
| 703 |
-
keyFileSelectedML = this;
|
| 704 |
-
}
|
| 705 |
-
});
|
| 706 |
-
}
|
| 707 |
-
|
| 708 |
function ajax_print_images(files, element, view_type, count) {
|
| 709 |
-
var element_class;
|
| 710 |
-
if (view_type === "explorer_item") {
|
| 711 |
-
element_class = "explorer_item";
|
| 712 |
-
var onmouseover = "onFileMOver(event, this);";
|
| 713 |
-
var onmouseout = "onFileMOut(event, this);";
|
| 714 |
-
var onclick = "onFileClick(event, this);";
|
| 715 |
-
var ondblclick = "onFileDblClick(event, this);";
|
| 716 |
-
var ondragstart = "onFileDragStart(event, this);";
|
| 717 |
-
}
|
| 718 |
-
else {
|
| 719 |
-
element_class = "importer_item";
|
| 720 |
-
var onmouseover = "onFileMOverML(event, this);";
|
| 721 |
-
var onmouseout = "onFileMOutML(event, this);";
|
| 722 |
-
var onclick = "onFileClickML(event, this);";
|
| 723 |
-
var ondblclick = "onFileDblClickML(event, this);";
|
| 724 |
-
var ondragstart = "";
|
| 725 |
-
}
|
| 726 |
-
|
| 727 |
for (i in files) {
|
| 728 |
var corent_file = files[i];
|
| 729 |
var name = corent_file["name"];
|
| 730 |
-
var path = "";
|
| 731 |
-
if (view_type === "importer_item") {
|
| 732 |
-
path = corent_file["path"];
|
| 733 |
-
}
|
| 734 |
var filename = corent_file["filename"];
|
| 735 |
var filethumb = corent_file["thumb"];
|
| 736 |
var filesize = corent_file["size"];
|
|
@@ -744,7 +599,11 @@ function ajax_print_images(files, element, view_type, count) {
|
|
| 744 |
var fileIso = corent_file["iso"];
|
| 745 |
var fileOrientation = corent_file["orientation"];
|
| 746 |
var fileCopyright = corent_file["copyright"];
|
| 747 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 748 |
var ondragover = "";
|
| 749 |
var ondrop = "";
|
| 750 |
if (corent_file['is_dir'] == true) {
|
|
@@ -764,9 +623,8 @@ function ajax_print_images(files, element, view_type, count) {
|
|
| 764 |
var item_size = '<span class="item_size">'+corent_file['size']+'</span>';
|
| 765 |
var item_date_modified = '<span class="item_date_modified">'+corent_file['date_modified']+'</span>';
|
| 766 |
var item_numbering = '<span class="item_numbering">'+item_number+'</span>';
|
| 767 |
-
var explorer_item = '<div class="
|
| 768 |
'name="' + name + '" ' +
|
| 769 |
-
'path="' + path + '" ' +
|
| 770 |
'filename="' + filename + '" ' +
|
| 771 |
'filethumb="' + filethumb + '" ' +
|
| 772 |
'filesize="' + filesize + '" ' +
|
| 7 |
var keyFileSelected;
|
| 8 |
var keyFileSelectedML;
|
| 9 |
var filesSelected;
|
|
|
|
| 10 |
var dragFiles;
|
| 11 |
var isUploading;
|
| 12 |
|
| 13 |
var ajax = true;
|
|
|
|
|
|
|
| 14 |
|
| 15 |
var all_files_selected = false;
|
| 16 |
var no_selected_files = [];
|
| 33 |
}
|
| 34 |
}
|
| 35 |
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 36 |
|
| 37 |
+
var all_images_count = jQuery("#file_manager .item_thumb img").length;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 38 |
if (!all_images_count) {
|
| 39 |
setTimeout(function(){jQuery(document).trigger("onUpload")});
|
| 40 |
}
|
| 46 |
}
|
| 47 |
setTimeout(function(){loaded()}, 10000);
|
| 48 |
filesSelected = [];
|
|
|
|
| 49 |
dragFiles = [];
|
| 50 |
|
|
|
|
| 51 |
jQuery("#wrapper").css("top", jQuery("#file_manager_message").css("height"));
|
| 52 |
jQuery(window).resize(function () {
|
| 53 |
jQuery("#container").css("top", jQuery("#file_manager_message").css("height"));
|
| 91 |
|
| 92 |
function submit(task, sortBy, sortOrder, itemsView, destDir, fileNewName, newDirName, clipboardTask, clipboardFiles, clipboardSrc, clipboardDest) {
|
| 93 |
var names_array = [];
|
|
|
|
| 94 |
if (all_files_selected === true) {
|
| 95 |
for (i in wdb_all_files) {
|
| 96 |
var index = no_selected_files.indexOf(wdb_all_files[i]["name"]);
|
| 99 |
names_array.push(all_names);
|
| 100 |
}
|
| 101 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 102 |
fileNames = names_array.join("**#**");
|
|
|
|
| 103 |
}
|
| 104 |
else {
|
| 105 |
fileNames = filesSelected.join("**#**");
|
|
|
|
| 106 |
}
|
| 107 |
|
| 108 |
switch (task) {
|
| 152 |
if (itemsView != null) {
|
| 153 |
jQuery("form[name=adminForm]").find("input[name=items_view]").val(itemsView);
|
| 154 |
}
|
|
|
|
| 155 |
if (destDir != null) {
|
| 156 |
jQuery("form[name=adminForm]").find("input[name=dir]").val(destDir);
|
| 157 |
}
|
| 158 |
if (fileNames != null) {
|
| 159 |
jQuery("form[name=adminForm]").find("input[name=file_names]").val(fileNames);
|
| 160 |
}
|
|
|
|
|
|
|
|
|
|
| 161 |
if (fileNewName != null) {
|
| 162 |
jQuery("form[name=adminForm]").find("input[name=file_new_name]").val(fileNewName);
|
| 163 |
}
|
| 164 |
if (newDirName != null) {
|
| 165 |
jQuery("form[name=adminForm]").find("input[name=new_dir_name]").val(newDirName);
|
| 166 |
}
|
|
|
|
| 167 |
if (clipboardTask != null) {
|
| 168 |
jQuery("form[name=adminForm]").find("input[name=clipboard_task]").val(clipboardTask);
|
| 169 |
}
|
| 195 |
if (filesSelected.length == 0) {
|
| 196 |
return;
|
| 197 |
}
|
| 198 |
+
|
| 199 |
var filesValid = [];
|
| 200 |
if (all_files_selected === true) {
|
| 201 |
for (i in wdb_all_files) {
|
| 205 |
if (index < 0) {
|
| 206 |
fileData['name'] = wdb_all_files[i]["name"];
|
| 207 |
fileData['filename'] = wdb_all_files[i]["filename"];;
|
| 208 |
+
fileData['alt'] = wdb_all_files[i]["alt"];;
|
| 209 |
fileData['url'] = dir + "/" + wdb_all_files[i]["name"];
|
| 210 |
fileData['reliative_url'] = dirUrl + "/" + wdb_all_files[i]["name"];
|
| 211 |
fileData['thumb_url'] = dir + "/thumb/" + wdb_all_files[i]["name"];
|
| 233 |
var fileData = [];
|
| 234 |
fileData['name'] = filesSelected[i];
|
| 235 |
fileData['filename'] = jQuery(file_object).attr("filename");
|
| 236 |
+
fileData['alt'] = jQuery(file_object).attr("alt");
|
| 237 |
fileData['url'] = dir + "/" + filesSelected[i];
|
| 238 |
fileData['reliative_url'] = dirUrl + "/" + filesSelected[i];
|
| 239 |
fileData['thumb_url'] = dir + "/thumb/" + filesSelected[i];
|
| 258 |
window.parent.tb_remove();
|
| 259 |
}
|
| 260 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 261 |
function getScrollBarWidth() {
|
| 262 |
var inner = document.createElement("p");
|
| 263 |
inner.style.width = "100%";
|
| 400 |
}
|
| 401 |
|
| 402 |
function onBtnShowImportClick(event, obj) {
|
|
|
|
| 403 |
jQuery("#importer").fadeIn();
|
| 404 |
}
|
| 405 |
|
| 428 |
jQuery(".explorer_item").addClass("explorer_item_select");
|
| 429 |
jQuery(".importer_item").addClass("importer_item_select");
|
| 430 |
filesSelected = [];
|
|
|
|
| 431 |
jQuery(".explorer_item").each(function() {
|
| 432 |
var objName = jQuery(this).attr("name");
|
| 433 |
if (filesSelected.indexOf(objName) == -1) {
|
| 435 |
keyFileSelected = this;
|
| 436 |
}
|
| 437 |
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 438 |
e.preventDefault();
|
| 439 |
}
|
| 440 |
}
|
| 443 |
jQuery(obj).addClass("explorer_item_hover");
|
| 444 |
}
|
| 445 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| 446 |
function onFileMOut(event, obj) {
|
| 447 |
jQuery(obj).removeClass("explorer_item_hover");
|
| 448 |
}
|
| 449 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| 450 |
function onFileClick(event, obj) {
|
| 451 |
jQuery(".explorer_item").removeClass("explorer_item_select");
|
| 452 |
var objName = jQuery(obj).attr("name");
|
| 493 |
updateFileNames();
|
| 494 |
}
|
| 495 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 496 |
function onFileDblClick(event, obj) {
|
| 497 |
if (jQuery(obj).attr("isDir") == "true") {
|
| 498 |
submit("", null, null, null, dir + DS + jQuery(obj).attr("name"), null, null, null, null, null, null);
|
| 504 |
}
|
| 505 |
}
|
| 506 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 507 |
function onFileDragStart(event, obj) {
|
| 508 |
var objName = jQuery(obj).attr("name");
|
| 509 |
if (filesSelected.indexOf(objName) < 0) {
|
| 564 |
}
|
| 565 |
}
|
| 566 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| 567 |
function onBtnCancelClick(event, obj) {
|
| 568 |
window.parent.tb_remove();
|
| 569 |
}
|
| 582 |
all_files_selected = true;
|
| 583 |
}
|
| 584 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 585 |
function ajax_print_images(files, element, view_type, count) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 586 |
for (i in files) {
|
| 587 |
var corent_file = files[i];
|
| 588 |
var name = corent_file["name"];
|
|
|
|
|
|
|
|
|
|
|
|
|
| 589 |
var filename = corent_file["filename"];
|
| 590 |
var filethumb = corent_file["thumb"];
|
| 591 |
var filesize = corent_file["size"];
|
| 599 |
var fileIso = corent_file["iso"];
|
| 600 |
var fileOrientation = corent_file["orientation"];
|
| 601 |
var fileCopyright = corent_file["copyright"];
|
| 602 |
+
var onmouseover = "onFileMOver(event, this);";
|
| 603 |
+
var onmouseout = "onFileMOut(event, this);";
|
| 604 |
+
var onclick = "onFileClick(event, this);";
|
| 605 |
+
var ondblclick = "onFileDblClick(event, this);";
|
| 606 |
+
var ondragstart = "onFileDragStart(event, this);";
|
| 607 |
var ondragover = "";
|
| 608 |
var ondrop = "";
|
| 609 |
if (corent_file['is_dir'] == true) {
|
| 623 |
var item_size = '<span class="item_size">'+corent_file['size']+'</span>';
|
| 624 |
var item_date_modified = '<span class="item_date_modified">'+corent_file['date_modified']+'</span>';
|
| 625 |
var item_numbering = '<span class="item_numbering">'+item_number+'</span>';
|
| 626 |
+
var explorer_item = '<div class="explorer_item" ' +
|
| 627 |
'name="' + name + '" ' +
|
|
|
|
| 628 |
'filename="' + filename + '" ' +
|
| 629 |
'filethumb="' + filethumb + '" ' +
|
| 630 |
'filesize="' + filesize + '" ' +
|
filemanager/model.php
CHANGED
|
@@ -9,421 +9,200 @@ $p_dir;
|
|
| 9 |
$s_order;
|
| 10 |
|
| 11 |
class FilemanagerModel {
|
| 12 |
-
|
| 13 |
-
|
| 14 |
-
|
| 15 |
-
|
| 16 |
-
|
| 17 |
-
|
| 18 |
-
|
| 19 |
-
|
| 20 |
-
|
| 21 |
-
|
| 22 |
-
|
| 23 |
-
|
| 24 |
-
|
| 25 |
-
|
| 26 |
-
|
| 27 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 28 |
}
|
| 29 |
-
|
| 30 |
-
|
| 31 |
-
// Public Methods //
|
| 32 |
-
////////////////////////////////////////////////////////////////////////////////////////
|
| 33 |
-
public function get_file_manager_data() {
|
| 34 |
-
global $wd_bwg_options;
|
| 35 |
-
$session_data = array();
|
| 36 |
-
$session_data['sort_by'] = $this->get_from_session('sort_by', 'date_modified');
|
| 37 |
-
$session_data['sort_order'] = $this->get_from_session('sort_order', 'desc');
|
| 38 |
-
$session_data['items_view'] = $this->get_from_session('items_view', 'thumbs');
|
| 39 |
-
$session_data['clipboard_task'] = $this->get_from_session('clipboard_task', '');
|
| 40 |
-
$session_data['clipboard_files'] = $this->get_from_session('clipboard_files', '');
|
| 41 |
-
$session_data['clipboard_src'] = $this->get_from_session('clipboard_src', '');
|
| 42 |
-
$session_data['clipboard_dest'] = $this->get_from_session('clipboard_dest', '');
|
| 43 |
-
|
| 44 |
-
$data = array();
|
| 45 |
-
$data['session_data'] = $session_data;
|
| 46 |
-
$data['path_components'] = $this->get_path_components();
|
| 47 |
-
$data['dir'] = $this->controller->get_uploads_dir() . (isset($_REQUEST['dir']) ? esc_html($_REQUEST['dir']) : '');
|
| 48 |
-
$get_files_data = $this->get_files($session_data['sort_by'], $session_data['sort_order']);
|
| 49 |
-
$data['files'] = $get_files_data['files'];
|
| 50 |
-
$data['files_count'] = $get_files_data['files_count'];
|
| 51 |
-
$data['all_files'] = $get_files_data['all_files'];
|
| 52 |
-
$data['element_load_count'] = $this->element_load_count;
|
| 53 |
-
$media_library_files = ($wd_bwg_options->enable_ML_import ? $this->get_media_library_files($session_data['sort_by'], $session_data['sort_order']) : array());
|
| 54 |
-
if ( !empty($media_library_files) ) {
|
| 55 |
-
$data['media_library_files'] = $media_library_files["files"];
|
| 56 |
-
$data['importer_files_count'] = $media_library_files["importer_files_count"];
|
| 57 |
-
$data['media_library_files_all'] = $media_library_files["media_library_files_all"];
|
| 58 |
-
}
|
| 59 |
-
else {
|
| 60 |
-
$data['media_library_files'] = array();
|
| 61 |
-
$data['importer_files_count'] = 0;
|
| 62 |
-
$data['media_library_files_all'] = array();
|
| 63 |
-
}
|
| 64 |
-
$data['extensions'] = (isset($_REQUEST['extensions']) ? esc_html($_REQUEST['extensions']) : '');
|
| 65 |
-
$data['callback'] = (isset($_REQUEST['callback']) ? esc_html($_REQUEST['callback']) : '');
|
| 66 |
-
return $data;
|
| 67 |
}
|
| 68 |
-
|
| 69 |
-
|
| 70 |
-
|
| 71 |
-
|
| 72 |
-
|
| 73 |
-
|
| 74 |
-
|
| 75 |
-
|
| 76 |
-
|
| 77 |
-
|
| 78 |
-
|
| 79 |
-
|
| 80 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 81 |
}
|
| 82 |
-
|
| 83 |
-
}
|
| 84 |
-
|
| 85 |
-
public function get_path_components() {
|
| 86 |
-
$dir_names = explode('/', (isset($_REQUEST['dir']) ? esc_html($_REQUEST['dir']) : ''));
|
| 87 |
-
$path = '';
|
| 88 |
-
|
| 89 |
-
$components = array();
|
| 90 |
$component = array();
|
| 91 |
-
|
| 92 |
-
$component['name'] = $WD_BWG_UPLOAD_DIR;
|
| 93 |
$component['path'] = $path;
|
| 94 |
$components[] = $component;
|
| 95 |
-
for ($i = 0; $i < count($dir_names); $i++) {
|
| 96 |
-
$dir_name = $dir_names[$i];
|
| 97 |
-
if ($dir_name == '') {
|
| 98 |
-
continue;
|
| 99 |
-
}
|
| 100 |
-
$path .= (($path == '') ? $dir_name : '/' . $dir_name);
|
| 101 |
-
$component = array();
|
| 102 |
-
$component['name'] = $dir_name;
|
| 103 |
-
$component['path'] = $path;
|
| 104 |
-
$components[] = $component;
|
| 105 |
-
}
|
| 106 |
-
return $components;
|
| 107 |
}
|
| 108 |
-
|
| 109 |
-
|
| 110 |
-
|
| 111 |
-
|
| 112 |
-
|
| 113 |
-
|
| 114 |
-
|
| 115 |
-
|
| 116 |
-
|
| 117 |
-
|
| 118 |
-
|
| 119 |
-
|
| 120 |
-
|
| 121 |
-
|
| 122 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 123 |
continue;
|
| 124 |
}
|
| 125 |
-
|
| 126 |
-
|
| 127 |
-
|
| 128 |
-
|
| 129 |
-
|
| 130 |
-
|
| 131 |
-
|
| 132 |
-
|
| 133 |
-
|
| 134 |
-
|
| 135 |
-
|
| 136 |
-
|
| 137 |
-
|
| 138 |
-
|
| 139 |
-
|
| 140 |
-
|
| 141 |
-
$file['name'] = $file_name;
|
| 142 |
-
$filename = substr($file_name, 0, strrpos($file_name, '.'));
|
| 143 |
-
$file['filename'] = str_replace("_", " ", $filename);
|
| 144 |
-
$file_extension = explode('.', $file_name);
|
| 145 |
-
$file['type'] = strtolower(end($file_extension));
|
| 146 |
-
$icon = $icons_dir_url . '/' . $file['type'] . '.png';
|
| 147 |
-
if (file_exists($icons_dir_path . '/' . $file['type'] . '.png') == FALSE) {
|
| 148 |
-
$icon = $icons_dir_url . '/' . '_blank.png';
|
| 149 |
-
}
|
| 150 |
-
$file['thumb'] = $this->is_img($file['type']) ? $parent_dir_url . '/thumb/' . $file_name : $icon;
|
| 151 |
-
$file['icon'] = $icon;
|
| 152 |
-
if (($valid_types[0] != '*') && (in_array($file['type'], $valid_types) == FALSE)) {
|
| 153 |
-
continue;
|
| 154 |
-
}
|
| 155 |
-
$file_size_kb = (int)(filesize($parent_dir . '/' . $file_name) / 1024);
|
| 156 |
-
// $file_size_mb = (int)($file_size_kb / 1024);
|
| 157 |
-
// $file['size'] = $file_size_kb < 1024 ? (string)$file_size_kb . 'KB' : (string)$file_size_mb . 'MB';
|
| 158 |
-
$file['size'] = $file_size_kb . ' KB';
|
| 159 |
-
$file['date_modified'] = date('d F Y, H:i', filemtime($parent_dir . '/' . $file_name));
|
| 160 |
-
$image_info = getimagesize(htmlspecialchars_decode($parent_dir . '/' . $file_name, ENT_COMPAT | ENT_QUOTES));
|
| 161 |
-
$file['resolution'] = $this->is_img($file['type']) ? $image_info[0] . ' x ' . $image_info[1] . ' px' : '';
|
| 162 |
-
$exif = $this->bwg_wp_read_image_metadata( $parent_dir . '/.original/' . $file_name );
|
| 163 |
-
$file['credit'] = $exif['credit'];
|
| 164 |
-
$file['aperture'] = $exif['aperture'];
|
| 165 |
-
$file['camera'] = $exif['camera'];
|
| 166 |
-
$file['caption'] = $exif['caption'];
|
| 167 |
-
$file['iso'] = $exif['iso'];
|
| 168 |
-
$file['orientation'] = $exif['orientation'];
|
| 169 |
-
$file['copyright'] = $exif['copyright'];
|
| 170 |
-
$files[] = $file;
|
| 171 |
-
}
|
| 172 |
}
|
| 173 |
-
|
| 174 |
-
// $result = $sort_order == 'asc' ? array_merge($dirs, $files) : array_merge($files, $dirs);
|
| 175 |
-
$result = array_merge($dirs, $files);
|
| 176 |
-
$files_count = count($result);
|
| 177 |
-
$all_files = $result;
|
| 178 |
-
$result = array_slice($result, 0, $this->element_load_count, true);
|
| 179 |
-
return array("files" => $result, "all_files"=>$all_files, "files_count" => $files_count);
|
| 180 |
}
|
| 181 |
|
| 182 |
-
|
| 183 |
-
|
| 184 |
-
|
| 185 |
-
|
| 186 |
-
|
| 187 |
-
|
| 188 |
-
|
| 189 |
-
|
| 190 |
-
$query_images_args = array(
|
| 191 |
-
'post_type' => 'attachment', 'post_mime_type' =>'image', 'post_status' => 'inherit', 'posts_per_page' => -1,
|
| 192 |
-
);
|
| 193 |
-
$query_images = new WP_Query( $query_images_args );
|
| 194 |
|
| 195 |
-
|
| 196 |
-
|
| 197 |
|
| 198 |
-
|
| 199 |
-
|
| 200 |
-
if (isset($file_meta['file'])) {
|
| 201 |
-
$file = array();
|
| 202 |
-
$file['is_dir'] = FALSE;
|
| 203 |
-
$file_name_array = explode('/', $file_meta['file']);
|
| 204 |
-
$file_name = end($file_name_array);
|
| 205 |
-
$file['name'] = $file_name;
|
| 206 |
-
$file['path'] = $file_meta['file'];
|
| 207 |
-
$file['filename'] = substr($file_name, 0, strrpos($file_name, '.'));
|
| 208 |
-
$file_type_array = explode('.', $file_name);
|
| 209 |
-
$file['type'] = strtolower(end($file_type_array));
|
| 210 |
-
// $file['thumb'] = wp_get_attachment_thumb_url($image->ID);
|
| 211 |
-
if (!empty($file_meta['sizes']) && $file_meta['sizes']['thumbnail']['file']) {
|
| 212 |
-
$file_pos = strrpos($file_meta['file'], '/');
|
| 213 |
-
$sub_folder = substr($file_meta['file'], 0, $file_pos);
|
| 214 |
-
$file['thumb'] = $upload_dir['baseurl'] . '/' . $sub_folder . '/' . $file_meta['sizes']['thumbnail']['file'];
|
| 215 |
-
}
|
| 216 |
-
else {
|
| 217 |
-
$file['thumb'] = $upload_dir['baseurl'] . '/' . $file_meta['file'];
|
| 218 |
-
}
|
| 219 |
-
$file['icon'] = $file['thumb'];
|
| 220 |
-
if (($valid_types[0] != '*') && (in_array($file['type'], $valid_types) == FALSE)) {
|
| 221 |
-
continue;
|
| 222 |
-
}
|
| 223 |
-
$file_size_kb = (int)(@filesize($parent_dir . '/' . $file_meta['file']) / 1024);
|
| 224 |
-
if (!$file_size_kb) continue;
|
| 225 |
-
$file['size'] = $file_size_kb . ' KB';
|
| 226 |
-
$file['date_modified'] = date('d F Y, H:i', filemtime($parent_dir . '/' . $file_meta['file']));
|
| 227 |
-
// $image_info = getimagesize(htmlspecialchars_decode($parent_dir . '/' . $file_meta['file'], ENT_COMPAT | ENT_QUOTES));
|
| 228 |
-
$file['resolution'] = $this->is_img($file['type']) ? $file_meta['width'] . ' x ' . $file_meta['height'] . ' px' : '';
|
| 229 |
-
$exif = $this->bwg_wp_read_image_metadata($parent_dir . '/.original/' . $file_name);
|
| 230 |
-
$file['credit'] = $exif['credit'];
|
| 231 |
-
$file['aperture'] = $exif['aperture'];
|
| 232 |
-
$file['camera'] = $exif['camera'];
|
| 233 |
-
$file['caption'] = $exif['caption'];
|
| 234 |
-
$file['iso'] = $exif['iso'];
|
| 235 |
-
$file['orientation'] = $exif['orientation'];
|
| 236 |
-
$file['copyright'] = $exif['copyright'];
|
| 237 |
-
$files[] = $file;
|
| 238 |
-
}
|
| 239 |
-
}
|
| 240 |
-
$files_count = count($files);
|
| 241 |
-
$all_files = $files;
|
| 242 |
-
$files = array_slice($files, 0, $this->element_load_count, true);
|
| 243 |
-
return array("files" => $files, 'media_library_files_all' => $all_files, "importer_files_count" => $files_count);
|
| 244 |
-
}
|
| 245 |
-
|
| 246 |
-
private function bwg_wp_read_image_metadata( $file ) {
|
| 247 |
-
if (!file_exists($file)) {
|
| 248 |
-
return false;
|
| 249 |
-
}
|
| 250 |
-
list( , , $sourceImageType ) = getimagesize($file);
|
| 251 |
-
$meta = array(
|
| 252 |
-
'aperture' => 0,
|
| 253 |
-
'credit' => '',
|
| 254 |
-
'camera' => '',
|
| 255 |
-
'caption' => '',
|
| 256 |
-
'created_timestamp' => 0,
|
| 257 |
-
'copyright' => '',
|
| 258 |
-
'focal_length' => 0,
|
| 259 |
-
'iso' => 0,
|
| 260 |
-
'shutter_speed' => 0,
|
| 261 |
-
'title' => '',
|
| 262 |
-
'orientation' => 0,
|
| 263 |
-
);
|
| 264 |
-
if ( is_callable( 'iptcparse' ) ) {
|
| 265 |
-
getimagesize( $file, $info );
|
| 266 |
-
if ( ! empty( $info['APP13'] ) ) {
|
| 267 |
-
$iptc = iptcparse( $info['APP13'] );
|
| 268 |
-
if ( ! empty( $iptc['2#105'][0] ) ) {
|
| 269 |
-
$meta['title'] = trim( $iptc['2#105'][0] );
|
| 270 |
-
} elseif ( ! empty( $iptc['2#005'][0] ) ) {
|
| 271 |
-
$meta['title'] = trim( $iptc['2#005'][0] );
|
| 272 |
-
}
|
| 273 |
-
if ( ! empty( $iptc['2#120'][0] ) ) {
|
| 274 |
-
$caption = trim( $iptc['2#120'][0] );
|
| 275 |
-
if ( empty( $meta['title'] ) ) {
|
| 276 |
-
mbstring_binary_safe_encoding();
|
| 277 |
-
$caption_length = strlen( $caption );
|
| 278 |
-
reset_mbstring_encoding();
|
| 279 |
-
if ( $caption_length < 80 ) {
|
| 280 |
-
$meta['title'] = $caption;
|
| 281 |
-
} else {
|
| 282 |
-
$meta['caption'] = $caption;
|
| 283 |
-
}
|
| 284 |
-
} elseif ( $caption != $meta['title'] ) {
|
| 285 |
-
$meta['caption'] = $caption;
|
| 286 |
-
}
|
| 287 |
-
}
|
| 288 |
-
if ( ! empty( $iptc['2#110'][0] ) ) {
|
| 289 |
-
$meta['credit'] = trim( $iptc['2#110'][0] );
|
| 290 |
-
}
|
| 291 |
-
elseif ( ! empty( $iptc['2#080'][0] ) ) {
|
| 292 |
-
$meta['credit'] = trim( $iptc['2#080'][0] );
|
| 293 |
-
}
|
| 294 |
-
if ( ! empty( $iptc['2#055'][0] ) and ! empty( $iptc['2#060'][0] ) ) {
|
| 295 |
-
$meta['created_timestamp'] = strtotime( $iptc['2#055'][0] . ' ' . $iptc['2#060'][0] );
|
| 296 |
-
}
|
| 297 |
-
if ( ! empty( $iptc['2#116'][0] ) ) {
|
| 298 |
-
$meta['copyright'] = trim( $iptc['2#116'][0] );
|
| 299 |
-
}
|
| 300 |
-
}
|
| 301 |
-
}
|
| 302 |
-
if ( is_callable( 'exif_read_data' ) && in_array( $sourceImageType, apply_filters( 'wp_read_image_metadata_types', array( IMAGETYPE_JPEG, IMAGETYPE_TIFF_II, IMAGETYPE_TIFF_MM ) ) ) ) {
|
| 303 |
-
$exif = @exif_read_data( $file );
|
| 304 |
-
if ( empty( $meta['title'] ) && ! empty( $exif['Title'] ) ) {
|
| 305 |
-
$meta['title'] = trim( $exif['Title'] );
|
| 306 |
-
}
|
| 307 |
-
if ( ! empty( $exif['ImageDescription'] ) ) {
|
| 308 |
-
mbstring_binary_safe_encoding();
|
| 309 |
-
$description_length = strlen( $exif['ImageDescription'] );
|
| 310 |
-
reset_mbstring_encoding();
|
| 311 |
-
if ( empty( $meta['title'] ) && $description_length < 80 ) {
|
| 312 |
-
$meta['title'] = trim( $exif['ImageDescription'] );
|
| 313 |
-
if ( empty( $meta['caption'] ) && ! empty( $exif['COMPUTED']['UserComment'] ) && trim( $exif['COMPUTED']['UserComment'] ) != $meta['title'] ) {
|
| 314 |
-
$meta['caption'] = trim( $exif['COMPUTED']['UserComment'] );
|
| 315 |
-
}
|
| 316 |
-
} elseif ( empty( $meta['caption'] ) && trim( $exif['ImageDescription'] ) != $meta['title'] ) {
|
| 317 |
-
$meta['caption'] = trim( $exif['ImageDescription'] );
|
| 318 |
-
}
|
| 319 |
-
} elseif ( empty( $meta['caption'] ) && ! empty( $exif['Comments'] ) && trim( $exif['Comments'] ) != $meta['title'] ) {
|
| 320 |
-
$meta['caption'] = trim( $exif['Comments'] );
|
| 321 |
-
}
|
| 322 |
-
if ( empty( $meta['credit'] ) ) {
|
| 323 |
-
if ( ! empty( $exif['Artist'] ) ) {
|
| 324 |
-
$meta['credit'] = trim( $exif['Artist'] );
|
| 325 |
-
} elseif ( ! empty($exif['Author'] ) ) {
|
| 326 |
-
$meta['credit'] = trim( $exif['Author'] );
|
| 327 |
-
}
|
| 328 |
-
}
|
| 329 |
-
if ( empty( $meta['copyright'] ) && ! empty( $exif['Copyright'] ) ) {
|
| 330 |
-
$meta['copyright'] = trim( $exif['Copyright'] );
|
| 331 |
-
}
|
| 332 |
-
if ( ! empty( $exif['FNumber'] ) ) {
|
| 333 |
-
$meta['aperture'] = round( wp_exif_frac2dec( $exif['FNumber'] ), 2 );
|
| 334 |
-
}
|
| 335 |
-
if ( ! empty( $exif['Model'] ) ) {
|
| 336 |
-
$meta['camera'] = trim( $exif['Model'] );
|
| 337 |
-
}
|
| 338 |
-
if ( empty( $meta['created_timestamp'] ) && ! empty( $exif['DateTimeDigitized'] ) ) {
|
| 339 |
-
$meta['created_timestamp'] = wp_exif_date2ts( $exif['DateTimeDigitized'] );
|
| 340 |
-
}
|
| 341 |
-
if ( ! empty( $exif['FocalLength'] ) ) {
|
| 342 |
-
$meta['focal_length'] = (string) wp_exif_frac2dec( $exif['FocalLength'] );
|
| 343 |
-
}
|
| 344 |
-
if ( ! empty( $exif['ISOSpeedRatings'] ) ) {
|
| 345 |
-
$meta['iso'] = is_array( $exif['ISOSpeedRatings'] ) ? reset( $exif['ISOSpeedRatings'] ) : $exif['ISOSpeedRatings'];
|
| 346 |
-
$meta['iso'] = trim( $meta['iso'] );
|
| 347 |
-
}
|
| 348 |
-
if ( ! empty( $exif['ExposureTime'] ) ) {
|
| 349 |
-
$meta['shutter_speed'] = (string) wp_exif_frac2dec( $exif['ExposureTime'] );
|
| 350 |
-
}
|
| 351 |
-
if ( ! empty( $exif['Orientation'] ) ) {
|
| 352 |
-
$meta['orientation'] = $exif['Orientation'];
|
| 353 |
-
}
|
| 354 |
-
}
|
| 355 |
-
foreach ( array( 'title', 'caption', 'credit', 'copyright', 'camera', 'iso' ) as $key ) {
|
| 356 |
-
if ( $meta[ $key ] && ! seems_utf8( $meta[ $key ] ) ) {
|
| 357 |
-
$meta[ $key ] = utf8_encode( $meta[ $key ] );
|
| 358 |
-
}
|
| 359 |
-
}
|
| 360 |
-
foreach ( $meta as &$value ) {
|
| 361 |
-
if ( is_string( $value ) ) {
|
| 362 |
-
$value = wp_kses_post( $value );
|
| 363 |
-
}
|
| 364 |
-
}
|
| 365 |
-
return $meta;
|
| 366 |
-
}
|
| 367 |
|
| 368 |
-
|
| 369 |
-
|
| 370 |
|
|
|
|
| 371 |
global $p_dir;
|
| 372 |
global $s_order;
|
| 373 |
|
| 374 |
-
$
|
| 375 |
-
$
|
| 376 |
-
|
| 377 |
-
|
| 378 |
-
global $p_dir;
|
| 379 |
-
global $s_order;
|
| 380 |
-
|
| 381 |
-
$size_of_a = filesize($p_dir . '/' . $a);
|
| 382 |
-
$size_of_b = filesize($p_dir . '/' . $b);
|
| 383 |
-
return $s_order == 'asc' ? $size_of_a > $size_of_b : $size_of_a < $size_of_b;
|
| 384 |
-
}
|
| 385 |
-
|
| 386 |
-
function sort_by_date($a, $b) {
|
| 387 |
-
global $p_dir;
|
| 388 |
-
global $s_order;
|
| 389 |
|
| 390 |
-
|
| 391 |
-
|
| 392 |
-
|
| 393 |
-
}
|
| 394 |
|
| 395 |
-
|
| 396 |
-
|
| 397 |
-
|
| 398 |
-
if ($sort_order == 'desc') {
|
| 399 |
-
$file_names = array_reverse($file_names);
|
| 400 |
-
}
|
| 401 |
-
break;
|
| 402 |
-
case 'size':
|
| 403 |
-
usort($file_names, 'sort_by_size');
|
| 404 |
-
break;
|
| 405 |
-
case 'date_modified':
|
| 406 |
-
usort($file_names, 'sort_by_date');
|
| 407 |
-
break;
|
| 408 |
-
}
|
| 409 |
-
return $file_names;
|
| 410 |
}
|
| 411 |
|
| 412 |
-
|
| 413 |
-
|
| 414 |
-
|
| 415 |
-
|
| 416 |
-
|
| 417 |
-
|
| 418 |
-
|
| 419 |
-
|
| 420 |
-
|
| 421 |
-
|
| 422 |
-
|
|
|
|
|
|
|
| 423 |
}
|
| 424 |
-
|
| 425 |
-
|
| 426 |
-
|
| 427 |
-
|
| 428 |
-
|
| 429 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 9 |
$s_order;
|
| 10 |
|
| 11 |
class FilemanagerModel {
|
| 12 |
+
private $controller;
|
| 13 |
+
private $element_load_count = 100;
|
| 14 |
+
|
| 15 |
+
public function __construct($controller) {
|
| 16 |
+
$this->controller = $controller;
|
| 17 |
+
}
|
| 18 |
+
|
| 19 |
+
public function get_file_manager_data() {
|
| 20 |
+
$session_data = array();
|
| 21 |
+
$session_data['sort_by'] = $this->get_from_session('sort_by', 'date_modified');
|
| 22 |
+
$session_data['sort_order'] = $this->get_from_session('sort_order', 'desc');
|
| 23 |
+
$session_data['items_view'] = $this->get_from_session('items_view', 'thumbs');
|
| 24 |
+
$session_data['clipboard_task'] = $this->get_from_session('clipboard_task', '');
|
| 25 |
+
$session_data['clipboard_files'] = $this->get_from_session('clipboard_files', '');
|
| 26 |
+
$session_data['clipboard_src'] = $this->get_from_session('clipboard_src', '');
|
| 27 |
+
$session_data['clipboard_dest'] = $this->get_from_session('clipboard_dest', '');
|
| 28 |
+
|
| 29 |
+
$data = array();
|
| 30 |
+
$data['session_data'] = $session_data;
|
| 31 |
+
$data['path_components'] = $this->get_path_components();
|
| 32 |
+
$data['dir'] = $this->controller->get_uploads_dir() . (isset($_REQUEST['dir']) ? esc_html($_REQUEST['dir']) : '');
|
| 33 |
+
$get_files_data = $this->get_files($session_data['sort_by'], $session_data['sort_order']);
|
| 34 |
+
$data['files'] = $get_files_data['files'];
|
| 35 |
+
$data['files_count'] = $get_files_data['files_count'];
|
| 36 |
+
$data['all_files'] = $get_files_data['all_files'];
|
| 37 |
+
$data['element_load_count'] = $this->element_load_count;
|
| 38 |
+
$data['extensions'] = (isset($_REQUEST['extensions']) ? esc_html($_REQUEST['extensions']) : '');
|
| 39 |
+
$data['callback'] = (isset($_REQUEST['callback']) ? esc_html($_REQUEST['callback']) : '');
|
| 40 |
+
return $data;
|
| 41 |
+
}
|
| 42 |
+
|
| 43 |
+
private function get_from_session($key, $default) {
|
| 44 |
+
if (isset($_REQUEST[$key])) {
|
| 45 |
+
$_REQUEST[$key] = stripslashes($_REQUEST[$key]);
|
| 46 |
}
|
| 47 |
+
else {
|
| 48 |
+
$_REQUEST[$key] = stripslashes($default);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 49 |
}
|
| 50 |
+
return esc_html(stripslashes($_REQUEST[$key]));
|
| 51 |
+
}
|
| 52 |
+
|
| 53 |
+
public function get_path_components() {
|
| 54 |
+
$dir_names = explode('/', (isset($_REQUEST['dir']) ? esc_html($_REQUEST['dir']) : ''));
|
| 55 |
+
$path = '';
|
| 56 |
+
|
| 57 |
+
$components = array();
|
| 58 |
+
$component = array();
|
| 59 |
+
global $WD_BWG_UPLOAD_DIR;
|
| 60 |
+
$component['name'] = $WD_BWG_UPLOAD_DIR;
|
| 61 |
+
$component['path'] = $path;
|
| 62 |
+
$components[] = $component;
|
| 63 |
+
for ($i = 0; $i < count($dir_names); $i++) {
|
| 64 |
+
$dir_name = $dir_names[$i];
|
| 65 |
+
if ($dir_name == '') {
|
| 66 |
+
continue;
|
| 67 |
}
|
| 68 |
+
$path .= (($path == '') ? $dir_name : '/' . $dir_name);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 69 |
$component = array();
|
| 70 |
+
$component['name'] = $dir_name;
|
|
|
|
| 71 |
$component['path'] = $path;
|
| 72 |
$components[] = $component;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 73 |
}
|
| 74 |
+
return $components;
|
| 75 |
+
}
|
| 76 |
+
|
| 77 |
+
function get_files($sort_by, $sort_order) {
|
| 78 |
+
$icons_dir_path = WD_BWG_DIR . '/filemanager/images/file_icons';
|
| 79 |
+
$icons_dir_url = WD_BWG_URL . '/filemanager/images/file_icons';
|
| 80 |
+
$valid_types = explode(',', isset($_REQUEST['extensions']) ? strtolower(esc_html($_REQUEST['extensions'])) : '*');
|
| 81 |
+
$dir = (isset($_REQUEST['dir']) ? '/' . htmlspecialchars_decode(stripslashes(esc_html($_REQUEST['dir'])), ENT_COMPAT | ENT_QUOTES) : '');
|
| 82 |
+
$parent_dir = $this->controller->get_uploads_dir() . $dir;
|
| 83 |
+
$parent_dir_url = $this->controller->get_uploads_url() . $dir;
|
| 84 |
+
|
| 85 |
+
$file_names = $this->get_sorted_file_names($parent_dir, $sort_by, $sort_order);
|
| 86 |
+
|
| 87 |
+
$dirs = array();
|
| 88 |
+
$files = array();
|
| 89 |
+
foreach ($file_names as $file_name) {
|
| 90 |
+
if (($file_name == '.') || ($file_name == '..') || ($file_name == 'thumb') || ($file_name == '.original')) {
|
| 91 |
+
continue;
|
| 92 |
+
}
|
| 93 |
+
if (is_dir($parent_dir . '/' . $file_name) == TRUE) {
|
| 94 |
+
$file = array();
|
| 95 |
+
$file['is_dir'] = TRUE;
|
| 96 |
+
$file['name'] = $file_name;
|
| 97 |
+
$file['alt'] = str_replace("_", " ", $file_name);
|
| 98 |
+
$file['filename'] = str_replace("_", " ", $file_name);
|
| 99 |
+
$file['type'] = '';
|
| 100 |
+
$file['thumb'] = $icons_dir_url . '/dir.png';
|
| 101 |
+
$file['icon'] = $icons_dir_url . '/dir.png';
|
| 102 |
+
$file['size'] = '';
|
| 103 |
+
$file['date_modified'] = '';
|
| 104 |
+
$file['resolution'] = '';
|
| 105 |
+
$dirs[] = $file;
|
| 106 |
+
}
|
| 107 |
+
else {
|
| 108 |
+
$file = array();
|
| 109 |
+
$file['is_dir'] = FALSE;
|
| 110 |
+
$file['name'] = $file_name;
|
| 111 |
+
$filename = substr($file_name, 0, strrpos($file_name, '.'));
|
| 112 |
+
$file['alt'] = str_replace("_", " ", $filename);
|
| 113 |
+
$file['filename'] = str_replace("_", " ", $filename);
|
| 114 |
+
$file_extension = explode('.', $file_name);
|
| 115 |
+
$file['type'] = strtolower(end($file_extension));
|
| 116 |
+
$icon = $icons_dir_url . '/' . $file['type'] . '.png';
|
| 117 |
+
if (file_exists($icons_dir_path . '/' . $file['type'] . '.png') == FALSE) {
|
| 118 |
+
$icon = $icons_dir_url . '/' . '_blank.png';
|
| 119 |
+
}
|
| 120 |
+
$file['thumb'] = $this->is_img($file['type']) ? $parent_dir_url . '/thumb/' . $file_name : $icon;
|
| 121 |
+
$file['icon'] = $icon;
|
| 122 |
+
if (($valid_types[0] != '*') && (in_array($file['type'], $valid_types) == FALSE)) {
|
| 123 |
continue;
|
| 124 |
}
|
| 125 |
+
$file_size_kb = (int)(filesize($parent_dir . '/' . $file_name) / 1024);
|
| 126 |
+
// $file_size_mb = (int)($file_size_kb / 1024);
|
| 127 |
+
// $file['size'] = $file_size_kb < 1024 ? (string)$file_size_kb . 'KB' : (string)$file_size_mb . 'MB';
|
| 128 |
+
$file['size'] = $file_size_kb . ' KB';
|
| 129 |
+
$file['date_modified'] = date('d F Y, H:i', filemtime($parent_dir . '/' . $file_name));
|
| 130 |
+
$image_info = getimagesize(htmlspecialchars_decode($parent_dir . '/' . $file_name, ENT_COMPAT | ENT_QUOTES));
|
| 131 |
+
$file['resolution'] = $this->is_img($file['type']) ? $image_info[0] . ' x ' . $image_info[1] . ' px' : '';
|
| 132 |
+
$exif = WDWLibrary::read_image_metadata( $parent_dir . '/.original/' . $file_name );
|
| 133 |
+
$file['credit'] = $exif['credit'];
|
| 134 |
+
$file['aperture'] = $exif['aperture'];
|
| 135 |
+
$file['camera'] = $exif['camera'];
|
| 136 |
+
$file['caption'] = $exif['caption'];
|
| 137 |
+
$file['iso'] = $exif['iso'];
|
| 138 |
+
$file['orientation'] = $exif['orientation'];
|
| 139 |
+
$file['copyright'] = $exif['copyright'];
|
| 140 |
+
$files[] = $file;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 141 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 142 |
}
|
| 143 |
|
| 144 |
+
// $result = $sort_order == 'asc' ? array_merge($dirs, $files) : array_merge($files, $dirs);
|
| 145 |
+
$result = array_merge($dirs, $files);
|
| 146 |
+
$files_count = count($result);
|
| 147 |
+
$all_files = $result;
|
| 148 |
+
$result = array_slice($result, 0, $this->element_load_count, true);
|
| 149 |
+
return array("files" => $result, "all_files"=>$all_files, "files_count" => $files_count);
|
| 150 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 151 |
|
| 152 |
+
private function get_sorted_file_names($parent_dir, $sort_by, $sort_order) {
|
| 153 |
+
$file_names = scandir($parent_dir);
|
| 154 |
|
| 155 |
+
global $p_dir;
|
| 156 |
+
global $s_order;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 157 |
|
| 158 |
+
$p_dir = $parent_dir;
|
| 159 |
+
$s_order = $sort_order;
|
| 160 |
|
| 161 |
+
function sort_by_size ($a, $b) {
|
| 162 |
global $p_dir;
|
| 163 |
global $s_order;
|
| 164 |
|
| 165 |
+
$size_of_a = filesize($p_dir . '/' . $a);
|
| 166 |
+
$size_of_b = filesize($p_dir . '/' . $b);
|
| 167 |
+
return $s_order == 'asc' ? $size_of_a > $size_of_b : $size_of_a < $size_of_b;
|
| 168 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 169 |
|
| 170 |
+
function sort_by_date($a, $b) {
|
| 171 |
+
global $p_dir;
|
| 172 |
+
global $s_order;
|
|
|
|
| 173 |
|
| 174 |
+
$m_time_a = filemtime($p_dir . '/' . $a);
|
| 175 |
+
$m_time_b = filemtime($p_dir . '/' . $b);
|
| 176 |
+
return $s_order == 'asc' ? $m_time_a > $m_time_b : $m_time_a < $m_time_b;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 177 |
}
|
| 178 |
|
| 179 |
+
switch ($sort_by) {
|
| 180 |
+
case 'name':
|
| 181 |
+
natcasesort($file_names);
|
| 182 |
+
if ($sort_order == 'desc') {
|
| 183 |
+
$file_names = array_reverse($file_names);
|
| 184 |
+
}
|
| 185 |
+
break;
|
| 186 |
+
case 'size':
|
| 187 |
+
usort($file_names, 'sort_by_size');
|
| 188 |
+
break;
|
| 189 |
+
case 'date_modified':
|
| 190 |
+
usort($file_names, 'sort_by_date');
|
| 191 |
+
break;
|
| 192 |
}
|
| 193 |
+
return $file_names;
|
| 194 |
+
}
|
| 195 |
+
|
| 196 |
+
private function is_img($file_type) {
|
| 197 |
+
switch ($file_type) {
|
| 198 |
+
case 'jpg':
|
| 199 |
+
case 'jpeg':
|
| 200 |
+
case 'png':
|
| 201 |
+
case 'bmp':
|
| 202 |
+
case 'gif':
|
| 203 |
+
return true;
|
| 204 |
+
break;
|
| 205 |
+
}
|
| 206 |
+
return false;
|
| 207 |
+
}
|
| 208 |
+
}
|
filemanager/view.php
CHANGED
|
@@ -83,7 +83,6 @@ class FilemanagerView {
|
|
| 83 |
var sortBy = "<?php echo $sort_by; ?>";
|
| 84 |
var sortOrder = "<?php echo $sort_order; ?>";
|
| 85 |
var wdb_all_files = <?php echo isset($file_manager_data["all_files"]) && json_encode($file_manager_data["all_files"]) ? json_encode($file_manager_data["all_files"]) : "''"; ?>;
|
| 86 |
-
var media_library_files = <?php echo isset($file_manager_data["media_library_files_all"]) && json_encode($file_manager_data["media_library_files_all"]) ? json_encode($file_manager_data["media_library_files_all"]) : "''"; ?>;
|
| 87 |
var element_load_count = <?php echo isset($file_manager_data["element_load_count"]) && json_encode($file_manager_data["element_load_count"]) ? json_encode($file_manager_data["element_load_count"]) : "''"; ?>;
|
| 88 |
</script>
|
| 89 |
<script src="<?php echo WD_BWG_URL; ?>/filemanager/js/default.js?ver=<?php echo wd_bwg_version(); ?>"></script>
|
|
@@ -125,12 +124,6 @@ class FilemanagerView {
|
|
| 125 |
<span class="ctrl_bar_btn">
|
| 126 |
<a id="upload_images" class="ctrl_bar_btn wd-btn wd-btn-primary wd-btn-icon wd-btn-uplaod" onclick="onBtnShowUploaderClick(event, this);"><?php echo __('Upload files', 'bwg_back'); ?></a>
|
| 127 |
</span>
|
| 128 |
-
<?php if ($wd_bwg_options->enable_ML_import) { ?>
|
| 129 |
-
<span class="ctrl_bar_divider"></span>
|
| 130 |
-
<span class="ctrl_bar_btn">
|
| 131 |
-
<a class="ctrl_bar_btn wd-btn wd-btn-primary wd-btn-icon btn_import_files" onclick="onBtnShowImportClick(event, this);"><?php echo __('Media library', 'bwg_back'); ?></a>
|
| 132 |
-
</span>
|
| 133 |
-
<?php } ?>
|
| 134 |
<span class="ctrl_bar_divider"></span>
|
| 135 |
<span id="search_by_name" class="ctrl_bar_btn">
|
| 136 |
<input type="search" placeholder="Search" class="ctrl_bar_btn search_by_name">
|
|
@@ -211,6 +204,7 @@ class FilemanagerView {
|
|
| 211 |
<div class="explorer_item" draggable="true"
|
| 212 |
name="<?php echo $file['name']; ?>"
|
| 213 |
filename="<?php echo $file['filename']; ?>"
|
|
|
|
| 214 |
filethumb="<?php echo $file['thumb']; ?>"
|
| 215 |
filesize="<?php echo $file['size']; ?>"
|
| 216 |
filetype="<?php echo strtoupper($file['type']); ?>"
|
|
@@ -276,89 +270,6 @@ class FilemanagerView {
|
|
| 276 |
</div>
|
| 277 |
</div>
|
| 278 |
</div>
|
| 279 |
-
<div id="importer" style="display: none;">
|
| 280 |
-
<div id="importer_bg"></div>
|
| 281 |
-
<div class="ctrls_bar ctrls_bar_header">
|
| 282 |
-
<div class="ctrls_left upload_thumb">
|
| 283 |
-
<?php echo __("Thumbnail Maximum Dimensions:", 'bwg_back'); ?>
|
| 284 |
-
<input type="text" class="upload_thumb_dim" name="importer_thumb_width" id="importer_thumb_width" value="<?php echo $wd_bwg_options->upload_thumb_width; ?>" /> x
|
| 285 |
-
<input type="text" class="upload_thumb_dim" name="importer_thumb_height" id="importer_thumb_height" value="<?php echo $wd_bwg_options->upload_thumb_height; ?>" /> px
|
| 286 |
-
</div>
|
| 287 |
-
<div class="ctrls_right">
|
| 288 |
-
<a class="ctrl_bar_btn btn_back" onclick="onBtnBackClick(event, this);" title="<?php echo __('Back', 'bwg_back'); ?>"></a>
|
| 289 |
-
</div>
|
| 290 |
-
<div class="ctrls_right_img upload_thumb">
|
| 291 |
-
<?php echo __("Image Maximum Dimensions:", 'bwg_back'); ?>
|
| 292 |
-
<input type="text" class="upload_thumb_dim" name="importer_img_width" id="importer_img_width" value="<?php echo $wd_bwg_options->upload_img_width; ?>" /> x
|
| 293 |
-
<input type="text" class="upload_thumb_dim" name="importer_img_height" id="importer_img_height" value="<?php echo $wd_bwg_options->upload_img_height; ?>" /> px
|
| 294 |
-
</div>
|
| 295 |
-
</div>
|
| 296 |
-
<div id="importer_body_wrapper">
|
| 297 |
-
<div id="importer_body_container">
|
| 298 |
-
<div id="importer_body" data-files_count="<?php echo $file_manager_data['importer_files_count'];?>">
|
| 299 |
-
<?php
|
| 300 |
-
foreach ($file_manager_data['media_library_files'] as $key => $file) {
|
| 301 |
-
$file['name'] = esc_html($file['name']);
|
| 302 |
-
$file['filename'] = esc_html($file['filename']);
|
| 303 |
-
$file['thumb'] = esc_html($file['thumb']);
|
| 304 |
-
?>
|
| 305 |
-
<div class="importer_item" draggable="true"
|
| 306 |
-
name="<?php echo $file['name']; ?>"
|
| 307 |
-
path="<?php echo $file['path']; ?>"
|
| 308 |
-
filename="<?php echo $file['filename']; ?>"
|
| 309 |
-
filethumb="<?php echo $file['thumb']; ?>"
|
| 310 |
-
filesize="<?php echo $file['size']; ?>"
|
| 311 |
-
filetype="<?php echo strtoupper($file['type']); ?>"
|
| 312 |
-
date_modified="<?php echo $file['date_modified']; ?>"
|
| 313 |
-
fileresolution="<?php echo $file['resolution']; ?>"
|
| 314 |
-
fileCredit="<?php echo $file['credit']; ?>"
|
| 315 |
-
fileAperture="<?php echo $file['aperture']; ?>"
|
| 316 |
-
fileCamera="<?php echo $file['camera']; ?>"
|
| 317 |
-
fileCaption="<?php echo $file['caption']; ?>"
|
| 318 |
-
fileIso="<?php echo $file['iso']; ?>"
|
| 319 |
-
fileOrientation="<?php echo $file['orientation']; ?>"
|
| 320 |
-
fileCopyright="<?php echo $file['copyright']; ?>"
|
| 321 |
-
onmouseover="onFileMOverML(event, this);"
|
| 322 |
-
onmouseout="onFileMOutML(event, this);"
|
| 323 |
-
onclick="onFileClickML(event, this);"
|
| 324 |
-
ondblclick="onFileDblClickML(event, this);"
|
| 325 |
-
isDir="<?php echo $file['is_dir'] == true ? 'true' : 'false'; ?>">
|
| 326 |
-
<span class="item_numbering"><?php echo ++$i; ?></span>
|
| 327 |
-
<span class="item_thumb">
|
| 328 |
-
<img src="<?php echo $file['thumb']; ?>" <?php echo $key >= 24 ? 'onload="loaded()"' : ''; ?> />
|
| 329 |
-
</span>
|
| 330 |
-
<span class="item_icon">
|
| 331 |
-
<img src="<?php echo $file['icon']; ?>"/>
|
| 332 |
-
</span>
|
| 333 |
-
<span class="item_name">
|
| 334 |
-
<?php echo $file['name']; ?>
|
| 335 |
-
</span>
|
| 336 |
-
<span class="item_size">
|
| 337 |
-
<?php echo $file['size']; ?>
|
| 338 |
-
</span>
|
| 339 |
-
<span class="item_date_modified">
|
| 340 |
-
<?php echo $file['date_modified']; ?>
|
| 341 |
-
</span>
|
| 342 |
-
</div>
|
| 343 |
-
<?php
|
| 344 |
-
}
|
| 345 |
-
?>
|
| 346 |
-
</div>
|
| 347 |
-
</div>
|
| 348 |
-
</div>
|
| 349 |
-
<div class="ctrls_bar ctrls_bar_footer">
|
| 350 |
-
<div class="ctrls_left">
|
| 351 |
-
<a class="ctrl_bar_btn wd-btn wd-btn-primary wd-not-image none_select" onclick="onBtnSelectAllMediLibraryClick();"><?php echo __('Select All','bwg_back'); ?></a>
|
| 352 |
-
</div>
|
| 353 |
-
<div class="ctrls_right">
|
| 354 |
-
<span id="file_names_span">
|
| 355 |
-
<span>
|
| 356 |
-
</span>
|
| 357 |
-
</span>
|
| 358 |
-
<a class="ctrl_bar_btn btn_open wd-btn wd-btn-primary wd-not-image none_select" onclick="onBtnImportClick(event, this);"><?php echo __("Import selected images", 'bwg_back'); ?></a>
|
| 359 |
-
</div>
|
| 360 |
-
</div>
|
| 361 |
-
</div>
|
| 362 |
<div id="uploader">
|
| 363 |
<div id="uploader_bg"></div>
|
| 364 |
<div class="ctrls_bar ctrls_bar_header">
|
| 83 |
var sortBy = "<?php echo $sort_by; ?>";
|
| 84 |
var sortOrder = "<?php echo $sort_order; ?>";
|
| 85 |
var wdb_all_files = <?php echo isset($file_manager_data["all_files"]) && json_encode($file_manager_data["all_files"]) ? json_encode($file_manager_data["all_files"]) : "''"; ?>;
|
|
|
|
| 86 |
var element_load_count = <?php echo isset($file_manager_data["element_load_count"]) && json_encode($file_manager_data["element_load_count"]) ? json_encode($file_manager_data["element_load_count"]) : "''"; ?>;
|
| 87 |
</script>
|
| 88 |
<script src="<?php echo WD_BWG_URL; ?>/filemanager/js/default.js?ver=<?php echo wd_bwg_version(); ?>"></script>
|
| 124 |
<span class="ctrl_bar_btn">
|
| 125 |
<a id="upload_images" class="ctrl_bar_btn wd-btn wd-btn-primary wd-btn-icon wd-btn-uplaod" onclick="onBtnShowUploaderClick(event, this);"><?php echo __('Upload files', 'bwg_back'); ?></a>
|
| 126 |
</span>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 127 |
<span class="ctrl_bar_divider"></span>
|
| 128 |
<span id="search_by_name" class="ctrl_bar_btn">
|
| 129 |
<input type="search" placeholder="Search" class="ctrl_bar_btn search_by_name">
|
| 204 |
<div class="explorer_item" draggable="true"
|
| 205 |
name="<?php echo $file['name']; ?>"
|
| 206 |
filename="<?php echo $file['filename']; ?>"
|
| 207 |
+
alt="<?php echo $file['alt']; ?>"
|
| 208 |
filethumb="<?php echo $file['thumb']; ?>"
|
| 209 |
filesize="<?php echo $file['size']; ?>"
|
| 210 |
filetype="<?php echo strtoupper($file['type']); ?>"
|
| 270 |
</div>
|
| 271 |
</div>
|
| 272 |
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 273 |
<div id="uploader">
|
| 274 |
<div id="uploader_bg"></div>
|
| 275 |
<div class="ctrls_bar ctrls_bar_header">
|
framework/BWGOptions.php
CHANGED
|
@@ -37,6 +37,7 @@ class WD_BWG_Options {
|
|
| 37 |
public $blog_style_title_enable = 1;
|
| 38 |
public $blog_style_images_per_page = 5;
|
| 39 |
public $blog_style_enable_page = 1;
|
|
|
|
| 40 |
|
| 41 |
public $slideshow_type = 'fade';
|
| 42 |
public $slideshow_interval = 5;
|
|
@@ -116,7 +117,6 @@ class WD_BWG_Options {
|
|
| 116 |
public $comment_moderation = 0;
|
| 117 |
public $popup_info_always_show = 0;
|
| 118 |
public $popup_hit_counter = 0;
|
| 119 |
-
public $enable_ML_import = 0;
|
| 120 |
public $showthumbs_name = 0;
|
| 121 |
public $show_album_name = 0;
|
| 122 |
public $show_image_counts = 0;
|
|
@@ -191,7 +191,7 @@ class WD_BWG_Options {
|
|
| 191 |
if ($this->permissions != 'moderate_comments' && $this->permissions != 'publish_posts' && $this->permissions != 'edit_posts') {
|
| 192 |
$this->permissions = 'manage_options';
|
| 193 |
}
|
| 194 |
-
$this->jpeg_quality = $this->image_quality;
|
| 195 |
$this->png_quality = 9 - round(9 * $this->image_quality / 100);
|
| 196 |
}
|
| 197 |
|
| 37 |
public $blog_style_title_enable = 1;
|
| 38 |
public $blog_style_images_per_page = 5;
|
| 39 |
public $blog_style_enable_page = 1;
|
| 40 |
+
public $blog_style_description_enable = 0;
|
| 41 |
|
| 42 |
public $slideshow_type = 'fade';
|
| 43 |
public $slideshow_interval = 5;
|
| 117 |
public $comment_moderation = 0;
|
| 118 |
public $popup_info_always_show = 0;
|
| 119 |
public $popup_hit_counter = 0;
|
|
|
|
| 120 |
public $showthumbs_name = 0;
|
| 121 |
public $show_album_name = 0;
|
| 122 |
public $show_image_counts = 0;
|
| 191 |
if ($this->permissions != 'moderate_comments' && $this->permissions != 'publish_posts' && $this->permissions != 'edit_posts') {
|
| 192 |
$this->permissions = 'manage_options';
|
| 193 |
}
|
| 194 |
+
$this->jpeg_quality = $this->image_quality;
|
| 195 |
$this->png_quality = 9 - round(9 * $this->image_quality / 100);
|
| 196 |
}
|
| 197 |
|
framework/WDWLibrary.php
CHANGED
|
@@ -1,7 +1,6 @@
|
|
| 1 |
<?php
|
| 2 |
|
| 3 |
class WDWLibrary {
|
| 4 |
-
|
| 5 |
public static function get($key, $default_value = '') {
|
| 6 |
if (isset($_GET[$key])) {
|
| 7 |
$value = $_GET[$key];
|
|
@@ -644,7 +643,7 @@ class WDWLibrary {
|
|
| 644 |
}
|
| 645 |
|
| 646 |
public static function ajax_html_frontend_search_box($form_id, $current_view, $cur_gal_id, $images_count, $search_box_width = 180, $placeholder = '') {
|
| 647 |
-
$bwg_search = ((isset($_POST['bwg_search_' . $current_view]) && esc_html($_POST['bwg_search_' . $current_view]) != '') ? esc_html($_POST['bwg_search_' . $current_view]) : '');
|
| 648 |
$type = (isset($_POST['type_' . $current_view]) ? esc_html($_POST['type_' . $current_view]) : 'album');
|
| 649 |
$album_gallery_id = (isset($_POST['album_gallery_id_' . $current_view]) ? esc_html($_POST['album_gallery_id_' . $current_view]) : 0);
|
| 650 |
ob_start();
|
|
@@ -1222,7 +1221,7 @@ class WDWLibrary {
|
|
| 1222 |
else {
|
| 1223 |
return false;
|
| 1224 |
}
|
| 1225 |
-
|
| 1226 |
$watermark_image_resized = imagecreatetruecolor($watermark_width, $watermark_height);
|
| 1227 |
imagecolorallocatealpha($watermark_image_resized, 255, 255, 255, 127);
|
| 1228 |
imagealphablending($watermark_image_resized, FALSE);
|
|
@@ -1233,7 +1232,7 @@ class WDWLibrary {
|
|
| 1233 |
$image = imagecreatefromjpeg($original_filename);
|
| 1234 |
imagecopy($image, $watermark_image_resized, $left, $top, 0, 0, $watermark_width, $watermark_height);
|
| 1235 |
if ($dest_filename <> '') {
|
| 1236 |
-
imagejpeg ($image, $dest_filename, $wd_bwg_options->jpeg_quality);
|
| 1237 |
} else {
|
| 1238 |
header('Content-Type: image/jpeg');
|
| 1239 |
imagejpeg($image, null, $wd_bwg_options->jpeg_quality);
|
|
@@ -1373,11 +1372,133 @@ class WDWLibrary {
|
|
| 1373 |
"height" => ($max_y - $min_y)
|
| 1374 |
);
|
| 1375 |
}
|
| 1376 |
-
|
| 1377 |
-
|
| 1378 |
-
|
| 1379 |
-
|
| 1380 |
-
|
| 1381 |
-
|
| 1382 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1383 |
}
|
| 1 |
<?php
|
| 2 |
|
| 3 |
class WDWLibrary {
|
|
|
|
| 4 |
public static function get($key, $default_value = '') {
|
| 5 |
if (isset($_GET[$key])) {
|
| 6 |
$value = $_GET[$key];
|
| 643 |
}
|
| 644 |
|
| 645 |
public static function ajax_html_frontend_search_box($form_id, $current_view, $cur_gal_id, $images_count, $search_box_width = 180, $placeholder = '') {
|
| 646 |
+
$bwg_search = ((isset($_POST['bwg_search_' . $current_view]) && esc_html($_POST['bwg_search_' . $current_view]) != '') ? esc_html($_POST['bwg_search_' . $current_view]) : '');
|
| 647 |
$type = (isset($_POST['type_' . $current_view]) ? esc_html($_POST['type_' . $current_view]) : 'album');
|
| 648 |
$album_gallery_id = (isset($_POST['album_gallery_id_' . $current_view]) ? esc_html($_POST['album_gallery_id_' . $current_view]) : 0);
|
| 649 |
ob_start();
|
| 1221 |
else {
|
| 1222 |
return false;
|
| 1223 |
}
|
| 1224 |
+
|
| 1225 |
$watermark_image_resized = imagecreatetruecolor($watermark_width, $watermark_height);
|
| 1226 |
imagecolorallocatealpha($watermark_image_resized, 255, 255, 255, 127);
|
| 1227 |
imagealphablending($watermark_image_resized, FALSE);
|
| 1232 |
$image = imagecreatefromjpeg($original_filename);
|
| 1233 |
imagecopy($image, $watermark_image_resized, $left, $top, 0, 0, $watermark_width, $watermark_height);
|
| 1234 |
if ($dest_filename <> '') {
|
| 1235 |
+
imagejpeg ($image, $dest_filename, $wd_bwg_options->jpeg_quality);
|
| 1236 |
} else {
|
| 1237 |
header('Content-Type: image/jpeg');
|
| 1238 |
imagejpeg($image, null, $wd_bwg_options->jpeg_quality);
|
| 1372 |
"height" => ($max_y - $min_y)
|
| 1373 |
);
|
| 1374 |
}
|
| 1375 |
+
|
| 1376 |
+
/**
|
| 1377 |
+
* Return given file metadata.
|
| 1378 |
+
*
|
| 1379 |
+
* @param $file
|
| 1380 |
+
*
|
| 1381 |
+
* @return array|bool
|
| 1382 |
+
*/
|
| 1383 |
+
public static function read_image_metadata( $file ) {
|
| 1384 |
+
if (!file_exists($file)) {
|
| 1385 |
+
return false;
|
| 1386 |
+
}
|
| 1387 |
+
list( , , $sourceImageType ) = getimagesize($file);
|
| 1388 |
+
$meta = array(
|
| 1389 |
+
'aperture' => 0,
|
| 1390 |
+
'credit' => '',
|
| 1391 |
+
'camera' => '',
|
| 1392 |
+
'caption' => '',
|
| 1393 |
+
'created_timestamp' => 0,
|
| 1394 |
+
'copyright' => '',
|
| 1395 |
+
'focal_length' => 0,
|
| 1396 |
+
'iso' => 0,
|
| 1397 |
+
'shutter_speed' => 0,
|
| 1398 |
+
'title' => '',
|
| 1399 |
+
'orientation' => 0,
|
| 1400 |
+
);
|
| 1401 |
+
if ( is_callable( 'iptcparse' ) ) {
|
| 1402 |
+
getimagesize( $file, $info );
|
| 1403 |
+
if ( ! empty( $info['APP13'] ) ) {
|
| 1404 |
+
$iptc = iptcparse( $info['APP13'] );
|
| 1405 |
+
if ( ! empty( $iptc['2#105'][0] ) ) {
|
| 1406 |
+
$meta['title'] = trim( $iptc['2#105'][0] );
|
| 1407 |
+
} elseif ( ! empty( $iptc['2#005'][0] ) ) {
|
| 1408 |
+
$meta['title'] = trim( $iptc['2#005'][0] );
|
| 1409 |
+
}
|
| 1410 |
+
if ( ! empty( $iptc['2#120'][0] ) ) {
|
| 1411 |
+
$caption = trim( $iptc['2#120'][0] );
|
| 1412 |
+
if ( empty( $meta['title'] ) ) {
|
| 1413 |
+
mbstring_binary_safe_encoding();
|
| 1414 |
+
$caption_length = strlen( $caption );
|
| 1415 |
+
reset_mbstring_encoding();
|
| 1416 |
+
if ( $caption_length < 80 ) {
|
| 1417 |
+
$meta['title'] = $caption;
|
| 1418 |
+
} else {
|
| 1419 |
+
$meta['caption'] = $caption;
|
| 1420 |
+
}
|
| 1421 |
+
} elseif ( $caption != $meta['title'] ) {
|
| 1422 |
+
$meta['caption'] = $caption;
|
| 1423 |
+
}
|
| 1424 |
+
}
|
| 1425 |
+
if ( ! empty( $iptc['2#110'][0] ) ) {
|
| 1426 |
+
$meta['credit'] = trim( $iptc['2#110'][0] );
|
| 1427 |
+
}
|
| 1428 |
+
elseif ( ! empty( $iptc['2#080'][0] ) ) {
|
| 1429 |
+
$meta['credit'] = trim( $iptc['2#080'][0] );
|
| 1430 |
+
}
|
| 1431 |
+
if ( ! empty( $iptc['2#055'][0] ) and ! empty( $iptc['2#060'][0] ) ) {
|
| 1432 |
+
$meta['created_timestamp'] = strtotime( $iptc['2#055'][0] . ' ' . $iptc['2#060'][0] );
|
| 1433 |
+
}
|
| 1434 |
+
if ( ! empty( $iptc['2#116'][0] ) ) {
|
| 1435 |
+
$meta['copyright'] = trim( $iptc['2#116'][0] );
|
| 1436 |
+
}
|
| 1437 |
+
}
|
| 1438 |
+
}
|
| 1439 |
+
if ( is_callable( 'exif_read_data' ) && in_array( $sourceImageType, apply_filters( 'wp_read_image_metadata_types', array( IMAGETYPE_JPEG, IMAGETYPE_TIFF_II, IMAGETYPE_TIFF_MM ) ) ) ) {
|
| 1440 |
+
$exif = @exif_read_data( $file );
|
| 1441 |
+
if ( empty( $meta['title'] ) && ! empty( $exif['Title'] ) ) {
|
| 1442 |
+
$meta['title'] = trim( $exif['Title'] );
|
| 1443 |
+
}
|
| 1444 |
+
if ( ! empty( $exif['ImageDescription'] ) ) {
|
| 1445 |
+
mbstring_binary_safe_encoding();
|
| 1446 |
+
$description_length = strlen( $exif['ImageDescription'] );
|
| 1447 |
+
reset_mbstring_encoding();
|
| 1448 |
+
if ( empty( $meta['title'] ) && $description_length < 80 ) {
|
| 1449 |
+
$meta['title'] = trim( $exif['ImageDescription'] );
|
| 1450 |
+
if ( empty( $meta['caption'] ) && ! empty( $exif['COMPUTED']['UserComment'] ) && trim( $exif['COMPUTED']['UserComment'] ) != $meta['title'] ) {
|
| 1451 |
+
$meta['caption'] = trim( $exif['COMPUTED']['UserComment'] );
|
| 1452 |
+
}
|
| 1453 |
+
} elseif ( empty( $meta['caption'] ) && trim( $exif['ImageDescription'] ) != $meta['title'] ) {
|
| 1454 |
+
$meta['caption'] = trim( $exif['ImageDescription'] );
|
| 1455 |
+
}
|
| 1456 |
+
} elseif ( empty( $meta['caption'] ) && ! empty( $exif['Comments'] ) && trim( $exif['Comments'] ) != $meta['title'] ) {
|
| 1457 |
+
$meta['caption'] = trim( $exif['Comments'] );
|
| 1458 |
+
}
|
| 1459 |
+
if ( empty( $meta['credit'] ) ) {
|
| 1460 |
+
if ( ! empty( $exif['Artist'] ) ) {
|
| 1461 |
+
$meta['credit'] = trim( $exif['Artist'] );
|
| 1462 |
+
} elseif ( ! empty($exif['Author'] ) ) {
|
| 1463 |
+
$meta['credit'] = trim( $exif['Author'] );
|
| 1464 |
+
}
|
| 1465 |
+
}
|
| 1466 |
+
if ( empty( $meta['copyright'] ) && ! empty( $exif['Copyright'] ) ) {
|
| 1467 |
+
$meta['copyright'] = trim( $exif['Copyright'] );
|
| 1468 |
+
}
|
| 1469 |
+
if ( ! empty( $exif['FNumber'] ) ) {
|
| 1470 |
+
$meta['aperture'] = round( wp_exif_frac2dec( $exif['FNumber'] ), 2 );
|
| 1471 |
+
}
|
| 1472 |
+
if ( ! empty( $exif['Model'] ) ) {
|
| 1473 |
+
$meta['camera'] = trim( $exif['Model'] );
|
| 1474 |
+
}
|
| 1475 |
+
if ( empty( $meta['created_timestamp'] ) && ! empty( $exif['DateTimeDigitized'] ) ) {
|
| 1476 |
+
$meta['created_timestamp'] = wp_exif_date2ts( $exif['DateTimeDigitized'] );
|
| 1477 |
+
}
|
| 1478 |
+
if ( ! empty( $exif['FocalLength'] ) ) {
|
| 1479 |
+
$meta['focal_length'] = (string) wp_exif_frac2dec( $exif['FocalLength'] );
|
| 1480 |
+
}
|
| 1481 |
+
if ( ! empty( $exif['ISOSpeedRatings'] ) ) {
|
| 1482 |
+
$meta['iso'] = is_array( $exif['ISOSpeedRatings'] ) ? reset( $exif['ISOSpeedRatings'] ) : $exif['ISOSpeedRatings'];
|
| 1483 |
+
$meta['iso'] = trim( $meta['iso'] );
|
| 1484 |
+
}
|
| 1485 |
+
if ( ! empty( $exif['ExposureTime'] ) ) {
|
| 1486 |
+
$meta['shutter_speed'] = (string) wp_exif_frac2dec( $exif['ExposureTime'] );
|
| 1487 |
+
}
|
| 1488 |
+
if ( ! empty( $exif['Orientation'] ) ) {
|
| 1489 |
+
$meta['orientation'] = $exif['Orientation'];
|
| 1490 |
+
}
|
| 1491 |
+
}
|
| 1492 |
+
foreach ( array( 'title', 'caption', 'credit', 'copyright', 'camera', 'iso' ) as $key ) {
|
| 1493 |
+
if ( $meta[ $key ] && ! seems_utf8( $meta[ $key ] ) ) {
|
| 1494 |
+
$meta[ $key ] = utf8_encode( $meta[ $key ] );
|
| 1495 |
+
}
|
| 1496 |
+
}
|
| 1497 |
+
foreach ( $meta as &$value ) {
|
| 1498 |
+
if ( is_string( $value ) ) {
|
| 1499 |
+
$value = wp_kses_post( $value );
|
| 1500 |
+
}
|
| 1501 |
+
}
|
| 1502 |
+
return $meta;
|
| 1503 |
+
}
|
| 1504 |
}
|
frontend/views/BWGViewGalleryBox.php
CHANGED
|
@@ -44,7 +44,7 @@ class BWGViewGalleryBox {
|
|
| 44 |
$popup_info_full_width = (isset($_GET['popup_info_full_width']) ? esc_html($_GET['popup_info_full_width']) : 0);
|
| 45 |
$popup_enable_rate = WDWLibrary::esc_script('get', 'popup_enable_rate', 0, 'int');
|
| 46 |
$popup_hit_counter = (isset($_GET['popup_hit_counter']) ? esc_html($_GET['popup_hit_counter']) : 0);
|
| 47 |
-
$slideshow_effect_duration = (isset($_GET['slideshow_effect_duration']) ? (
|
| 48 |
$slideshow_interval = (isset($_GET['slideshow_interval']) ? (int) $_GET['slideshow_interval'] : 5);
|
| 49 |
$enable_image_ctrl_btn = (isset($_GET['enable_image_ctrl_btn']) ? esc_html($_GET['enable_image_ctrl_btn']) : 0);
|
| 50 |
$enable_comment_social = FALSE;
|
|
@@ -1110,6 +1110,9 @@ class BWGViewGalleryBox {
|
|
| 1110 |
}
|
| 1111 |
bwg_change_watermark_container();
|
| 1112 |
}
|
|
|
|
|
|
|
|
|
|
| 1113 |
}
|
| 1114 |
function bwg_cubeH(current_image_class, next_image_class, direction) {
|
| 1115 |
/* Set to half of image width.*/
|
|
@@ -1144,15 +1147,15 @@ class BWGViewGalleryBox {
|
|
| 1144 |
/* Set active thumbnail.*/
|
| 1145 |
jQuery(".bwg_filmstrip_thumbnail").removeClass("bwg_thumb_active").addClass("bwg_thumb_deactive");
|
| 1146 |
jQuery("#bwg_filmstrip_thumbnail_" + bwg_current_key).removeClass("bwg_thumb_deactive").addClass("bwg_thumb_active");
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1147 |
if (bwg_testBrowser_cssTransitions()) {
|
| 1148 |
jQuery(next_image_class).css('transition', 'opacity ' + bwg_transition_duration + 'ms linear');
|
| 1149 |
jQuery(current_image_class).css({'opacity' : 0, 'z-index': 1});
|
| 1150 |
jQuery(next_image_class).css({'opacity' : 1, 'z-index' : 2});
|
| 1151 |
jQuery(next_image_class).one('webkitTransitionEnd transitionend otransitionend oTransitionEnd mstransitionend', jQuery.proxy(bwg_after_trans));
|
| 1152 |
-
function bwg_after_trans() {
|
| 1153 |
-
jQuery(".bwg_image_info").show();
|
| 1154 |
-
bwg_change_watermark_container();
|
| 1155 |
-
}
|
| 1156 |
}
|
| 1157 |
else {
|
| 1158 |
jQuery(current_image_class).animate({'opacity' : 0, 'z-index' : 1}, bwg_transition_duration);
|
|
@@ -1172,6 +1175,9 @@ class BWGViewGalleryBox {
|
|
| 1172 |
jQuery(current_image_class).fadeTo(bwg_transition_duration, 0);
|
| 1173 |
jQuery(next_image_class).fadeTo(bwg_transition_duration, 1);
|
| 1174 |
}
|
|
|
|
|
|
|
|
|
|
| 1175 |
}
|
| 1176 |
function bwg_grid(cols, rows, ro, tx, ty, sc, op, current_image_class, next_image_class, direction) {
|
| 1177 |
/* If browser does not support CSS transitions.*/
|
|
@@ -1224,7 +1230,7 @@ class BWGViewGalleryBox {
|
|
| 1224 |
rowAdd = Math.ceil(rowRemainder / rows),
|
| 1225 |
leftDist = 0,
|
| 1226 |
img_leftDist = Math.ceil((jQuery(".bwg_slide_bg").width() - cur_img.width()) / 2);
|
| 1227 |
-
|
| 1228 |
/* tx/ty args can be passed as 'auto'/'min-auto' (meaning use slide width/height or negative slide width/height).*/
|
| 1229 |
tx = tx === 'auto' ? contWidth : tx;
|
| 1230 |
tx = tx === 'min-auto' ? - contWidth : tx;
|
|
@@ -1296,6 +1302,9 @@ class BWGViewGalleryBox {
|
|
| 1296 |
}
|
| 1297 |
bwg_change_watermark_container();
|
| 1298 |
}
|
|
|
|
|
|
|
|
|
|
| 1299 |
}
|
| 1300 |
function bwg_sliceV(current_image_class, next_image_class, direction) {
|
| 1301 |
if (direction == 'right') {
|
| 44 |
$popup_info_full_width = (isset($_GET['popup_info_full_width']) ? esc_html($_GET['popup_info_full_width']) : 0);
|
| 45 |
$popup_enable_rate = WDWLibrary::esc_script('get', 'popup_enable_rate', 0, 'int');
|
| 46 |
$popup_hit_counter = (isset($_GET['popup_hit_counter']) ? esc_html($_GET['popup_hit_counter']) : 0);
|
| 47 |
+
$slideshow_effect_duration = (isset($_GET['slideshow_effect_duration']) ? floatval($_GET['slideshow_effect_duration']) : 1);
|
| 48 |
$slideshow_interval = (isset($_GET['slideshow_interval']) ? (int) $_GET['slideshow_interval'] : 5);
|
| 49 |
$enable_image_ctrl_btn = (isset($_GET['enable_image_ctrl_btn']) ? esc_html($_GET['enable_image_ctrl_btn']) : 0);
|
| 50 |
$enable_comment_social = FALSE;
|
| 1110 |
}
|
| 1111 |
bwg_change_watermark_container();
|
| 1112 |
}
|
| 1113 |
+
if (bwg_transition_duration == 0) {
|
| 1114 |
+
bwg_after_trans();
|
| 1115 |
+
}
|
| 1116 |
}
|
| 1117 |
function bwg_cubeH(current_image_class, next_image_class, direction) {
|
| 1118 |
/* Set to half of image width.*/
|
| 1147 |
/* Set active thumbnail.*/
|
| 1148 |
jQuery(".bwg_filmstrip_thumbnail").removeClass("bwg_thumb_active").addClass("bwg_thumb_deactive");
|
| 1149 |
jQuery("#bwg_filmstrip_thumbnail_" + bwg_current_key).removeClass("bwg_thumb_deactive").addClass("bwg_thumb_active");
|
| 1150 |
+
function bwg_after_trans() {
|
| 1151 |
+
jQuery(".bwg_image_info").show();
|
| 1152 |
+
bwg_change_watermark_container();
|
| 1153 |
+
}
|
| 1154 |
if (bwg_testBrowser_cssTransitions()) {
|
| 1155 |
jQuery(next_image_class).css('transition', 'opacity ' + bwg_transition_duration + 'ms linear');
|
| 1156 |
jQuery(current_image_class).css({'opacity' : 0, 'z-index': 1});
|
| 1157 |
jQuery(next_image_class).css({'opacity' : 1, 'z-index' : 2});
|
| 1158 |
jQuery(next_image_class).one('webkitTransitionEnd transitionend otransitionend oTransitionEnd mstransitionend', jQuery.proxy(bwg_after_trans));
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1159 |
}
|
| 1160 |
else {
|
| 1161 |
jQuery(current_image_class).animate({'opacity' : 0, 'z-index' : 1}, bwg_transition_duration);
|
| 1175 |
jQuery(current_image_class).fadeTo(bwg_transition_duration, 0);
|
| 1176 |
jQuery(next_image_class).fadeTo(bwg_transition_duration, 1);
|
| 1177 |
}
|
| 1178 |
+
if (bwg_transition_duration == 0) {
|
| 1179 |
+
bwg_after_trans();
|
| 1180 |
+
}
|
| 1181 |
}
|
| 1182 |
function bwg_grid(cols, rows, ro, tx, ty, sc, op, current_image_class, next_image_class, direction) {
|
| 1183 |
/* If browser does not support CSS transitions.*/
|
| 1230 |
rowAdd = Math.ceil(rowRemainder / rows),
|
| 1231 |
leftDist = 0,
|
| 1232 |
img_leftDist = Math.ceil((jQuery(".bwg_slide_bg").width() - cur_img.width()) / 2);
|
| 1233 |
+
var imgSrc = typeof cur_img.attr('src')=='undefined' ? '' :cur_img.attr('src');
|
| 1234 |
/* tx/ty args can be passed as 'auto'/'min-auto' (meaning use slide width/height or negative slide width/height).*/
|
| 1235 |
tx = tx === 'auto' ? contWidth : tx;
|
| 1236 |
tx = tx === 'min-auto' ? - contWidth : tx;
|
| 1302 |
}
|
| 1303 |
bwg_change_watermark_container();
|
| 1304 |
}
|
| 1305 |
+
if (bwg_transition_duration == 0) {
|
| 1306 |
+
bwg_after_trans();
|
| 1307 |
+
}
|
| 1308 |
}
|
| 1309 |
function bwg_sliceV(current_image_class, next_image_class, direction) {
|
| 1310 |
if (direction == 'right') {
|
includes/bwg_pointers.php
CHANGED
|
@@ -1,165 +1,189 @@
|
|
| 1 |
<?php
|
| 2 |
|
| 3 |
class BWG_pointers {
|
| 4 |
-
|
| 5 |
-
|
| 6 |
-
|
| 7 |
-
|
| 8 |
-
|
| 9 |
-
|
| 10 |
|
| 11 |
-
|
| 12 |
-
|
| 13 |
-
|
| 14 |
-
|
| 15 |
-
|
| 16 |
-
|
| 17 |
-
|
| 18 |
-
|
| 19 |
-
|
| 20 |
-
}
|
| 21 |
-
else {
|
| 22 |
-
add_action('admin_enqueue_scripts', array($this, 'show_pointer'));
|
| 23 |
-
}
|
| 24 |
-
add_action('wp_ajax_bwg_tour', array($this, 'dismiss_pointer'));
|
| 25 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
| 26 |
}
|
|
|
|
| 27 |
|
| 28 |
-
|
| 29 |
-
|
| 30 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 31 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
| 32 |
|
| 33 |
-
|
| 34 |
-
|
| 35 |
-
|
| 36 |
-
|
| 37 |
-
|
| 38 |
-
|
| 39 |
-
|
| 40 |
-
|
|
|
|
| 41 |
}
|
| 42 |
-
|
| 43 |
-
$this->
|
| 44 |
}
|
| 45 |
}
|
|
|
|
| 46 |
|
| 47 |
-
|
| 48 |
-
|
| 49 |
-
|
| 50 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 51 |
}
|
| 52 |
-
|
| 53 |
-
$
|
| 54 |
-
if ((!$post_type && $this->page_url == 'upload_image.php') || !isset($options['post_type']) || (isset($options['post_type']) && $post_type === $options['post_type'])) {
|
| 55 |
-
$t = true;
|
| 56 |
-
}
|
| 57 |
-
if ($options['page'] === $this->page_url && $t) {
|
| 58 |
-
$this->page_pointers[$id] = $this->set_pointer_options($id, $options);
|
| 59 |
-
}
|
| 60 |
}
|
| 61 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
| 62 |
|
| 63 |
-
|
| 64 |
-
|
| 65 |
-
|
| 66 |
-
|
| 67 |
-
|
| 68 |
-
$html .= '<div style="padding:5px 10px; " id="' . $container_id . '">' . $this->pointer_text [$pointer_id] . '</div>';
|
| 69 |
-
return array(
|
| 70 |
-
'selector' => $options['selector'],
|
| 71 |
-
'content' => $html,
|
| 72 |
-
'openFunctionContent' => $openFunctionContent,
|
| 73 |
-
'edge' => $options['edge'],
|
| 74 |
-
'align' => $options['align'],
|
| 75 |
-
'close_on_click' => isset( $options['close_on_click'] ) ? $options['close_on_click'] : false,
|
| 76 |
-
'target_delayed' => isset( $options['target_delayed'] ) ? $options['target_delayed'] : false,
|
| 77 |
-
'show_on_event' => isset( $options['show_on_event'] ) ? $options['show_on_event'] : '',
|
| 78 |
-
'hide_on_event' => isset( $options['hide_on_event'] ) ? $options['hide_on_event'] : ''
|
| 79 |
-
);
|
| 80 |
-
}
|
| 81 |
|
| 82 |
-
|
| 83 |
-
|
| 84 |
-
|
| 85 |
-
|
| 86 |
-
|
| 87 |
-
$this->add_button_script($button_class, $button_options, $container_id);
|
| 88 |
-
$this->$button($button_class, $button_options, $container_id);
|
| 89 |
-
}
|
| 90 |
-
if (isset($options['display']) && $options['display'] === false) {
|
| 91 |
-
$this->pointer_script[] = '$("#' . $container_id . '").closest(".wp-pointer").hide();';
|
| 92 |
-
}
|
| 93 |
-
if (isset($options['scroll'])) {
|
| 94 |
-
$this->pointer_script[] = 'setTimeout(function(){window.scrollTo(0, $("' . $options['scroll'] . '").offset().top-100)},1000);';
|
| 95 |
-
}
|
| 96 |
-
if (isset($options['close_on_click']) && $options['close_on_click'] == true) {
|
| 97 |
-
$this->pointer_script[] = '$("' . $options['selector'] . '").on("click", function() { $("#' . $container_id . '").closest(".wp-pointer").hide();});';
|
| 98 |
-
}
|
| 99 |
-
}
|
| 100 |
-
$pointer_script = $this->pointer_script;
|
| 101 |
-
$this->pointer_script = array();
|
| 102 |
-
return $pointer_script;
|
| 103 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 104 |
|
| 105 |
-
|
| 106 |
-
|
| 107 |
-
|
| 108 |
-
|
|
|
|
|
|
|
| 109 |
}
|
|
|
|
| 110 |
|
| 111 |
-
|
| 112 |
-
|
| 113 |
-
|
| 114 |
-
|
| 115 |
-
|
| 116 |
-
}
|
| 117 |
-
$this->pointer_script[] = '$("#' . $container_id . '").closest(".wp-pointer").find(".' . $button_class . '").on("click",function(){'
|
| 118 |
-
. '$("#' . $pointer_conteiner_id . '") . closest(".wp-pointer") . show();'
|
| 119 |
-
. '$(this).closest(".wp-pointer").hide();'
|
| 120 |
-
. $scroll_srcpt
|
| 121 |
-
. '});';
|
| 122 |
}
|
| 123 |
-
|
| 124 |
-
|
| 125 |
-
|
| 126 |
-
|
| 127 |
-
$element = 'jQuery("#' . $container_id . '").closest(".wp-pointer-content").find(".wp-pointer-buttons")';
|
| 128 |
-
$script = "jQuery('<button " . $button_class . ">" . $options['title'] . "</button>').appendTo(" . $element . ");";
|
| 129 |
-
$this->pointer_script[] = $script;
|
| 130 |
-
}
|
| 131 |
}
|
|
|
|
| 132 |
|
| 133 |
-
|
| 134 |
-
|
| 135 |
-
|
| 136 |
-
|
| 137 |
-
|
| 138 |
-
|
| 139 |
-
|
| 140 |
-
|
| 141 |
-
|
| 142 |
-
|
| 143 |
-
|
| 144 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 145 |
|
| 146 |
-
|
| 147 |
-
|
| 148 |
-
|
| 149 |
-
|
| 150 |
-
|
| 151 |
-
|
| 152 |
-
|
| 153 |
-
|
| 154 |
-
|
| 155 |
-
|
| 156 |
-
|
| 157 |
-
|
| 158 |
-
var showOnEvent = '<?php echo isset( $options['show_on_event'] ) ? $options['show_on_event'] : ''; ?>';
|
| 159 |
-
var hideOnEvent = '<?php echo isset( $options['hide_on_event'] ) ? $options['hide_on_event'] : ''; ?>';
|
| 160 |
-
if ( showOnEvent && showOnEvent != "" ) {
|
| 161 |
-
(function() {
|
| 162 |
-
$(document).on(showOnEvent, function() {
|
| 163 |
$('<?php echo $options['selector']; ?>').pointer({
|
| 164 |
content: '<?php echo $options['content']; ?>',
|
| 165 |
position: {
|
|
@@ -167,497 +191,428 @@ class BWG_pointers {
|
|
| 167 |
align: '<?php echo $options['align']; ?>'
|
| 168 |
},
|
| 169 |
close: function () {
|
| 170 |
-
if ('<?php echo $options['selector']; ?>' != '#select_all_images' ) {
|
| 171 |
jQuery.post(
|
| 172 |
-
|
| 173 |
-
|
| 174 |
-
|
| 175 |
-
});
|
| 176 |
-
}
|
| 177 |
-
}
|
| 178 |
-
}).pointer('open');
|
| 179 |
-
<?php echo $options['openFunctionContent']; ?>
|
| 180 |
-
});
|
| 181 |
-
})()
|
| 182 |
-
}
|
| 183 |
-
else if ( isDelayed ) {
|
| 184 |
-
(function() {
|
| 185 |
-
var interval = setInterval(function() {
|
| 186 |
-
if ( $('<?php echo $options['selector']; ?>').length && $('<?php echo $options['selector']; ?>').is(":visible") ) {
|
| 187 |
-
$('<?php echo $options['selector']; ?>').pointer({
|
| 188 |
-
content: '<?php echo $options['content']; ?>',
|
| 189 |
-
position: {
|
| 190 |
-
edge: '<?php echo $options['edge']; ?>',
|
| 191 |
-
align: '<?php echo $options['align']; ?>'
|
| 192 |
-
},
|
| 193 |
-
close: function () {
|
| 194 |
-
jQuery.post(
|
| 195 |
-
ajaxurl, {'action': action},
|
| 196 |
-
function (response) {
|
| 197 |
|
| 198 |
-
|
| 199 |
-
}
|
| 200 |
-
}).pointer('open');
|
| 201 |
-
|
| 202 |
-
<?php echo $options['openFunctionContent']; ?>
|
| 203 |
-
clearInterval( interval );
|
| 204 |
-
}
|
| 205 |
-
}, 350);
|
| 206 |
-
})()
|
| 207 |
-
}
|
| 208 |
-
else {
|
| 209 |
-
$('<?php echo $options['selector']; ?>').pointer({
|
| 210 |
-
content: '<?php echo $options['content']; ?>',
|
| 211 |
-
position: {
|
| 212 |
-
edge: '<?php echo $options['edge']; ?>',
|
| 213 |
-
align: '<?php echo $options['align']; ?>',
|
| 214 |
-
},
|
| 215 |
-
close: function () {
|
| 216 |
-
if ('<?php echo $options['selector']; ?>' != '#select_all_images') {
|
| 217 |
-
jQuery.post(
|
| 218 |
-
ajaxurl, {'action': action},
|
| 219 |
-
function (response) {
|
| 220 |
-
|
| 221 |
-
});
|
| 222 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
| 223 |
}
|
| 224 |
-
})
|
| 225 |
-
|
| 226 |
-
|
| 227 |
-
|
| 228 |
-
|
| 229 |
-
$
|
| 230 |
-
|
| 231 |
-
|
| 232 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 233 |
}
|
| 234 |
-
|
| 235 |
-
|
| 236 |
-
|
| 237 |
-
|
| 238 |
-
|
| 239 |
-
|
| 240 |
-
|
| 241 |
-
|
| 242 |
-
|
| 243 |
-
|
| 244 |
-
|
| 245 |
-
|
| 246 |
-
}
|
| 247 |
-
</script>
|
| 248 |
-
<?php
|
| 249 |
-
}
|
| 250 |
|
| 251 |
-
private function get_conteiner_id($pointer_id) {
|
| 252 |
-
return $this->prefix . '_' . $pointer_id;
|
| 253 |
-
}
|
| 254 |
-
|
| 255 |
-
public function set_pointer_text(){
|
| 256 |
-
$this->pointer_text = array(
|
| 257 |
-
'plugins' => __('Press Start Tour to learn how to create your first Photo Gallery.', 'bwg_back'),
|
| 258 |
-
'edit_options' => __('Set the settings for gallery/album.', 'bwg_back'),
|
| 259 |
-
'galleries' => __('Press Add New button to create your gallery.', 'bwg_back'),
|
| 260 |
-
/* 'gallery_name' => __('Name your gallery and press Next.', 'bwg_back'),*/
|
| 261 |
-
'Add_image' => __('Press add image button to open Image Upload to add images to gallery.', 'bwg_back'),
|
| 262 |
-
'upload_image' => __('Press to upload images. If you plan to create gallery based on images stored in standard WordPress Media Library, you must enable "Import from Media Library" option from "Global options".', 'bwg_back'),
|
| 263 |
-
'choose_file' => __('Browse photos or drag and drop to upload.', 'bwg_back'),
|
| 264 |
-
'select_all_img' => __('Hit on images you want to add to existing gallery or press Select All button for adding all images.', 'bwg_back'),
|
| 265 |
-
'add_selected_images' => __('To finalize the process of adding images press Add Selected image to gallery. Images will be added to your gallery and pop-up will be closed.', 'bwg_back'),
|
| 266 |
-
'save_gallery' => __('Press Save button. If you want to additionally create an album navigate to Photo Gallery/Albums or navigate to Pages section to insert created gallery into a page.', 'bwg_back'),
|
| 267 |
-
'add_albums' => __('Press Add New button to create your album.', 'bwg_back'),
|
| 268 |
-
/*'albums_name' => __('Name your album and press Next', 'bwg_back'),*/
|
| 269 |
-
'add_albums_gallery' => __('Press Add Albums/Galleries button to choose the galleries and albums which will be included into newly created album.', 'bwg_back'),
|
| 270 |
-
'check_all_album' => __('Select albums/galleries which you want to add to the album.', 'bwg_back'),
|
| 271 |
-
'add_album' => __('Press Add button to add selected items to your album.', 'bwg_back'),
|
| 272 |
-
'save_album' => __('Press Save button. Navigate to Pages section to insert created album into a page.', 'bwg_back'),
|
| 273 |
-
'show_page_gallery_album' => __('Add New Photo Gallery page.', 'bwg_back'),
|
| 274 |
-
'add-page' => __('Press Add New button to create a new page with gallery/album.', 'bwg_back'),
|
| 275 |
-
'add-shortcode-gallery' => __('Click on Photo Gallery shortcode generator icon.', 'bwg_back'),
|
| 276 |
-
'shortcode_gallery_bwg' => __('Select the view option you want to use for your gallery/album based on provided display options', 'bwg_back'),
|
| 277 |
-
'theme_shortcode' => __('Select the gallery/album and define view-related options.', 'bwg_back'),
|
| 278 |
-
'laytbox_shortcode' => __('Define lightbox settings (except slideshow and carousel views with their own sets of features).', 'bwg_back'),
|
| 279 |
-
'advertisement_shortcode' => __('Enable Advertisement previously created in Options section.', 'bwg_back'),
|
| 280 |
-
'insert_shortcode' => __('To finalize the shortcode generation and to insert it to a page press Insert button.', 'bwg_back'),
|
| 281 |
-
'add-shortcode' => __('Publish the page.', 'bwg_back')
|
| 282 |
-
);
|
| 283 |
-
}
|
| 284 |
|
| 285 |
-
|
| 286 |
-
|
| 287 |
-
$Page_url = $this->page_url;
|
| 288 |
}
|
| 289 |
-
|
| 290 |
-
$
|
| 291 |
}
|
| 292 |
-
|
| 293 |
-
|
| 294 |
-
|
| 295 |
-
|
| 296 |
-
|
| 297 |
-
|
| 298 |
-
|
| 299 |
-
|
| 300 |
-
|
| 301 |
-
|
| 302 |
-
|
| 303 |
-
|
| 304 |
-
|
| 305 |
-
|
| 306 |
-
|
| 307 |
-
|
| 308 |
-
|
| 309 |
-
|
| 310 |
-
|
| 311 |
-
|
| 312 |
-
|
| 313 |
-
|
| 314 |
-
|
| 315 |
-
|
| 316 |
-
|
| 317 |
-
|
| 318 |
-
|
| 319 |
-
|
| 320 |
-
|
| 321 |
-
|
| 322 |
-
|
| 323 |
-
|
| 324 |
-
|
| 325 |
-
|
| 326 |
-
|
| 327 |
-
|
| 328 |
-
|
| 329 |
-
|
| 330 |
-
|
| 331 |
-
|
| 332 |
-
|
| 333 |
-
|
| 334 |
-
|
| 335 |
-
|
| 336 |
-
|
| 337 |
-
|
| 338 |
-
|
| 339 |
-
|
| 340 |
-
|
| 341 |
-
|
| 342 |
-
|
| 343 |
-
|
| 344 |
-
|
| 345 |
-
|
| 346 |
-
|
| 347 |
-
|
| 348 |
-
'next_page' => array(
|
| 349 |
-
'title' => __('Next', 'bwg_back'),
|
| 350 |
-
'url' => 'admin.php?page=galleries_bwg'
|
| 351 |
-
)
|
| 352 |
-
),
|
| 353 |
-
'title' => __('Add images', 'bwg_back'),
|
| 354 |
-
'selector' => '#add_image_bwg',
|
| 355 |
-
'edge' => 'top',
|
| 356 |
-
'align' => 'left',
|
| 357 |
-
'tooltip_class' => 'bwg_add_img',
|
| 358 |
-
//'scroll' => '#add_image_bwg',
|
| 359 |
-
'close_on_click' => true
|
| 360 |
),
|
| 361 |
-
'
|
| 362 |
-
|
| 363 |
-
|
| 364 |
-
|
| 365 |
-
|
| 366 |
-
|
| 367 |
-
|
| 368 |
-
|
| 369 |
-
|
| 370 |
-
'
|
| 371 |
-
|
| 372 |
-
|
| 373 |
-
|
| 374 |
-
'target_delayed' => true,
|
| 375 |
-
'show_on_event' => 'onUpload',
|
| 376 |
-
'close_on_click' => true,
|
| 377 |
),
|
| 378 |
-
'
|
| 379 |
-
|
| 380 |
-
|
| 381 |
-
|
| 382 |
-
|
| 383 |
-
|
| 384 |
-
|
| 385 |
-
|
| 386 |
-
'
|
| 387 |
-
|
| 388 |
-
|
| 389 |
-
|
| 390 |
-
|
| 391 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 392 |
),
|
| 393 |
-
'
|
| 394 |
-
|
| 395 |
-
|
| 396 |
-
|
| 397 |
-
|
| 398 |
-
|
| 399 |
-
|
| 400 |
-
|
| 401 |
-
|
| 402 |
-
|
| 403 |
-
|
| 404 |
-
'
|
| 405 |
-
|
| 406 |
-
|
| 407 |
-
|
| 408 |
-
'hide_on_event' => 'onUploadFilesPressed',
|
| 409 |
),
|
| 410 |
-
'
|
| 411 |
-
|
| 412 |
-
|
| 413 |
-
|
| 414 |
-
|
| 415 |
-
|
| 416 |
-
|
| 417 |
-
|
| 418 |
-
|
| 419 |
-
|
| 420 |
-
|
| 421 |
-
|
| 422 |
-
'
|
| 423 |
-
|
| 424 |
-
|
|
|
|
| 425 |
),
|
| 426 |
-
'
|
| 427 |
-
|
| 428 |
-
|
| 429 |
-
|
| 430 |
-
|
| 431 |
-
|
| 432 |
-
|
| 433 |
-
|
| 434 |
-
|
| 435 |
-
|
| 436 |
-
'
|
| 437 |
-
|
| 438 |
-
|
| 439 |
-
|
| 440 |
-
'scroll' => '#save_gall',
|
| 441 |
-
'show_on_event' => 'bwgImagesAdded',
|
| 442 |
-
),
|
| 443 |
-
'add_albums' => array(
|
| 444 |
-
'page' => 'admin.php?page=albums_bwg',
|
| 445 |
-
'buttons' => array(),
|
| 446 |
-
'title' => __('Add album/gallery', 'bwg_back'),
|
| 447 |
-
'selector' => '.add-new-h2',
|
| 448 |
-
'edge' => 'left',
|
| 449 |
-
'align' => 'left',
|
| 450 |
-
'tooltip_class' => 'bwg_gallery_album',
|
| 451 |
),
|
| 452 |
-
|
| 453 |
-
|
| 454 |
-
|
| 455 |
-
|
| 456 |
-
|
| 457 |
-
|
| 458 |
-
|
| 459 |
-
|
| 460 |
-
|
| 461 |
-
|
| 462 |
-
|
| 463 |
-
|
| 464 |
-
'
|
| 465 |
-
|
| 466 |
-
|
| 467 |
-
|
| 468 |
-
|
| 469 |
-
'next_page' => array(
|
| 470 |
-
'title' => __('Next', 'bwg_back'),
|
| 471 |
-
'url' => 'admin.php?page=albums_bwg',
|
| 472 |
-
)
|
| 473 |
-
),
|
| 474 |
-
'title' => __('Add Albums/Galleries', 'bwg_back'),
|
| 475 |
-
'content' => 'description',
|
| 476 |
-
'selector' => '#content-add_media',
|
| 477 |
-
'edge' => 'left',
|
| 478 |
-
'align' => 'left',
|
| 479 |
-
'tooltip_class' => 'bwg_add_gallery_album',
|
| 480 |
-
'close_on_click' => true,
|
| 481 |
-
//'display' =>false
|
| 482 |
),
|
| 483 |
-
'
|
| 484 |
-
|
| 485 |
-
|
| 486 |
-
|
| 487 |
-
|
| 488 |
-
|
| 489 |
-
|
| 490 |
-
|
| 491 |
-
|
| 492 |
-
|
| 493 |
-
'
|
| 494 |
-
|
| 495 |
-
|
| 496 |
-
|
| 497 |
),
|
| 498 |
-
'
|
| 499 |
-
|
| 500 |
-
|
| 501 |
-
|
| 502 |
-
|
| 503 |
-
|
| 504 |
-
|
| 505 |
-
|
| 506 |
-
|
| 507 |
-
|
| 508 |
-
|
| 509 |
-
|
| 510 |
-
|
| 511 |
-
|
| 512 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 513 |
),
|
| 514 |
-
'
|
| 515 |
-
|
| 516 |
-
|
| 517 |
-
|
| 518 |
-
|
| 519 |
-
|
| 520 |
-
|
| 521 |
-
|
| 522 |
-
|
| 523 |
-
|
| 524 |
-
|
| 525 |
-
|
| 526 |
-
'
|
| 527 |
-
|
| 528 |
-
|
| 529 |
-
|
| 530 |
),
|
| 531 |
-
'
|
| 532 |
-
|
| 533 |
-
|
| 534 |
-
|
| 535 |
-
|
| 536 |
-
|
| 537 |
-
|
| 538 |
-
|
| 539 |
-
|
| 540 |
-
|
| 541 |
-
'
|
| 542 |
-
|
| 543 |
-
|
| 544 |
-
|
| 545 |
-
'tooltip_class' => 'show_page',
|
| 546 |
),
|
| 547 |
-
'
|
| 548 |
-
|
| 549 |
-
|
| 550 |
-
|
| 551 |
-
|
| 552 |
-
|
| 553 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 554 |
),
|
| 555 |
-
'
|
| 556 |
-
|
| 557 |
-
|
| 558 |
-
|
| 559 |
-
|
| 560 |
-
|
| 561 |
-
|
| 562 |
-
|
| 563 |
-
|
| 564 |
-
|
| 565 |
-
|
| 566 |
-
|
| 567 |
-
|
| 568 |
-
'
|
| 569 |
-
'
|
|
|
|
| 570 |
),
|
| 571 |
-
'
|
| 572 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 573 |
'buttons' => array(
|
| 574 |
-
|
| 575 |
-
|
| 576 |
-
|
| 577 |
-
|
| 578 |
),
|
| 579 |
-
'title' => __('
|
| 580 |
-
'selector' => '#
|
| 581 |
-
'edge' => '
|
| 582 |
'align' => 'left',
|
| 583 |
-
'
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 584 |
),
|
| 585 |
-
'
|
| 586 |
-
|
| 587 |
-
|
| 588 |
-
|
| 589 |
-
|
| 590 |
-
|
| 591 |
-
|
| 592 |
-
|
| 593 |
-
|
| 594 |
-
'
|
| 595 |
-
|
| 596 |
-
|
| 597 |
-
|
| 598 |
-
'tooltip_class' => 'theme_short',
|
| 599 |
-
'show_on_event' => 'onUploadShortcode',
|
| 600 |
),
|
| 601 |
-
'
|
| 602 |
-
|
| 603 |
-
|
| 604 |
-
|
| 605 |
-
|
| 606 |
-
|
| 607 |
-
|
| 608 |
-
|
| 609 |
-
|
| 610 |
-
|
| 611 |
-
|
| 612 |
-
'
|
| 613 |
-
|
| 614 |
-
|
|
|
|
|
|
|
| 615 |
),
|
| 616 |
-
|
| 617 |
-
|
| 618 |
-
|
| 619 |
-
|
| 620 |
-
|
| 621 |
-
|
| 622 |
-
|
| 623 |
-
|
| 624 |
-
|
| 625 |
-
'
|
| 626 |
-
|
| 627 |
-
|
| 628 |
-
|
| 629 |
-
'display'=> false
|
| 630 |
-
),*/
|
| 631 |
-
'insert_shortcode' => array(
|
| 632 |
-
'page' => 'upload_image.php',
|
| 633 |
-
'buttons' => array(
|
| 634 |
-
'next_page' => array(
|
| 635 |
-
'title' => __('Next', 'bwg_back'),
|
| 636 |
-
'url' => 'post-new.php?post_type=page'
|
| 637 |
-
)
|
| 638 |
-
),
|
| 639 |
-
'title' => __('Insert Shortcode', 'bwg_back'),
|
| 640 |
-
'selector' => '#insert',
|
| 641 |
-
'edge' => 'bottom',
|
| 642 |
-
'align' => 'right',
|
| 643 |
-
'tooltip_class' => 'bwg_insert_short',
|
| 644 |
-
'show_on_event' => 'onUploadShortcode',
|
| 645 |
-
'display'=> false
|
| 646 |
),
|
| 647 |
-
'
|
| 648 |
-
|
| 649 |
-
|
| 650 |
-
|
| 651 |
-
|
| 652 |
-
|
| 653 |
-
|
| 654 |
-
|
| 655 |
-
|
| 656 |
-
|
| 657 |
-
|
| 658 |
-
'
|
| 659 |
-
|
|
|
|
|
|
|
| 660 |
),
|
| 661 |
-
|
| 662 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 663 |
}
|
| 1 |
<?php
|
| 2 |
|
| 3 |
class BWG_pointers {
|
| 4 |
+
private $prefix = 'bwg';
|
| 5 |
+
private $page_url = '';
|
| 6 |
+
private $pointers = array();
|
| 7 |
+
private $page_pointers = array();
|
| 8 |
+
private $pointer_script = array();
|
| 9 |
+
private $pointer_text = array();
|
| 10 |
|
| 11 |
+
public function __construct() {
|
| 12 |
+
$user_meta = get_user_meta(get_current_user_id(), 'bwg_photo_gallery');
|
| 13 |
+
if (is_array($user_meta) && !empty($user_meta)) {
|
| 14 |
+
$this->set_urls();
|
| 15 |
+
$this->set_pointer_text();
|
| 16 |
+
$this->set_pointers();
|
| 17 |
+
$this->get_page_pointers();
|
| 18 |
+
if ($this->page_url == 'upload_image.php') {
|
| 19 |
+
$this->show_pointer();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 20 |
}
|
| 21 |
+
else {
|
| 22 |
+
add_action('admin_enqueue_scripts', array($this, 'show_pointer'));
|
| 23 |
+
}
|
| 24 |
+
add_action('wp_ajax_bwg_tour', array($this, 'dismiss_pointer'));
|
| 25 |
}
|
| 26 |
+
}
|
| 27 |
|
| 28 |
+
public function dismiss_pointer() {
|
| 29 |
+
delete_user_meta(get_current_user_id(), 'bwg_photo_gallery');
|
| 30 |
+
wp_die();
|
| 31 |
+
}
|
| 32 |
+
|
| 33 |
+
private function set_urls() {
|
| 34 |
+
$path_info = pathinfo($_SERVER['REQUEST_URI']);
|
| 35 |
+
$file_name = $path_info['filename'];
|
| 36 |
+
if ( $file_name === 'admin-ajax' && ($_REQUEST['action'] == 'addImages' || $_REQUEST['action'] == 'addAlbumsGalleries' || $_REQUEST['action'] == 'BWGShortcode') ) {
|
| 37 |
+
$this->page_url = 'upload_image.php';
|
| 38 |
+
}
|
| 39 |
+
elseif ($file_name === 'plugins') {
|
| 40 |
+
$this->page_url = 'plugins.php';
|
| 41 |
}
|
| 42 |
+
else {
|
| 43 |
+
$this->page_url = basename($_SERVER['REQUEST_URI']);
|
| 44 |
+
}
|
| 45 |
+
}
|
| 46 |
|
| 47 |
+
private function get_page_pointers() {
|
| 48 |
+
$post_type = false;
|
| 49 |
+
if (isset($_REQUEST['post']) && intval($_REQUEST['post']) !== 0 && isset($_REQUEST['action']) && $_REQUEST['action'] === 'edit') {
|
| 50 |
+
$post_type = get_post_type($_REQUEST['post']);
|
| 51 |
+
}
|
| 52 |
+
foreach ($this->pointers as $id => $options) {
|
| 53 |
+
$t = false;
|
| 54 |
+
if ((!$post_type && $this->page_url == 'upload_image.php') || !isset($options['post_type']) || (isset($options['post_type']) && $post_type === $options['post_type'])) {
|
| 55 |
+
$t = true;
|
| 56 |
}
|
| 57 |
+
if ($options['page'] === $this->page_url && $t) {
|
| 58 |
+
$this->page_pointers[$id] = $this->set_pointer_options($id, $options);
|
| 59 |
}
|
| 60 |
}
|
| 61 |
+
}
|
| 62 |
|
| 63 |
+
private function set_pointer_options($pointer_id, $options) {
|
| 64 |
+
$container_id = $this->get_conteiner_id($pointer_id);
|
| 65 |
+
$html = '<h3>' . $options['title'] . '</h3>';
|
| 66 |
+
$content = (isset($this->pointer_text [$pointer_id])) ? $this->pointer_text [$pointer_id]: 'No text';
|
| 67 |
+
$openFunctionContent = '(function( $ ) {' . join(";", $this->pointer_buttons($container_id, $options) ) . '; $("#' . $container_id . '").closest(".wp-pointer").addClass("wp-pointer-aligned-' . $options['align'] . ' ' . ( isset( $options['tooltip_class'] ) ? $options['tooltip_class'] : '' ) . '"); })( jQuery );';
|
| 68 |
+
$html .= '<div style="padding:5px 10px; " id="' . $container_id . '">' . $this->pointer_text [$pointer_id] . '</div>';
|
| 69 |
+
return array(
|
| 70 |
+
'selector' => $options['selector'],
|
| 71 |
+
'content' => $html,
|
| 72 |
+
'openFunctionContent' => $openFunctionContent,
|
| 73 |
+
'edge' => $options['edge'],
|
| 74 |
+
'align' => $options['align'],
|
| 75 |
+
'close_on_click' => isset( $options['close_on_click'] ) ? $options['close_on_click'] : false,
|
| 76 |
+
'target_delayed' => isset( $options['target_delayed'] ) ? $options['target_delayed'] : false,
|
| 77 |
+
'show_on_event' => isset( $options['show_on_event'] ) ? $options['show_on_event'] : '',
|
| 78 |
+
'hide_on_event' => isset( $options['hide_on_event'] ) ? $options['hide_on_event'] : ''
|
| 79 |
+
);
|
| 80 |
+
}
|
| 81 |
+
|
| 82 |
+
private function pointer_buttons($container_id, $options) {
|
| 83 |
+
$this->pointer_script = array();
|
| 84 |
+
if (isset($options['buttons']) && is_array($options['buttons']) && !empty($options['buttons'])) {
|
| 85 |
+
foreach ($options['buttons'] as $button_class => $button_options) {
|
| 86 |
+
$button = $button_class . '_button';
|
| 87 |
+
$this->add_button_script($button_class, $button_options, $container_id);
|
| 88 |
+
$this->$button($button_class, $button_options, $container_id);
|
| 89 |
+
}
|
| 90 |
+
if (isset($options['display']) && $options['display'] === false) {
|
| 91 |
+
$this->pointer_script[] = '$("#' . $container_id . '").closest(".wp-pointer").hide();';
|
| 92 |
+
}
|
| 93 |
+
if (isset($options['scroll'])) {
|
| 94 |
+
$this->pointer_script[] = 'setTimeout(function(){window.scrollTo(0, $("' . $options['scroll'] . '").offset().top-100)},1000);';
|
| 95 |
}
|
| 96 |
+
if (isset($options['close_on_click']) && $options['close_on_click'] == true) {
|
| 97 |
+
$this->pointer_script[] = '$("' . $options['selector'] . '").on("click", function() { $("#' . $container_id . '").closest(".wp-pointer").hide();});';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 98 |
}
|
| 99 |
}
|
| 100 |
+
$pointer_script = $this->pointer_script;
|
| 101 |
+
$this->pointer_script = array();
|
| 102 |
+
return $pointer_script;
|
| 103 |
+
}
|
| 104 |
|
| 105 |
+
private function next_page_button($button_class, $options, $container_id) {
|
| 106 |
+
$this->pointer_script[] = '$(".' . $button_class . '").on("click",function(){'
|
| 107 |
+
. 'window.location.href="' . $options['url'] . '"'
|
| 108 |
+
. '});';
|
| 109 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 110 |
|
| 111 |
+
private function next_pointer_button($button_class, $options, $container_id) {
|
| 112 |
+
$pointer_conteiner_id = $this->get_conteiner_id($options['pointer_id']);
|
| 113 |
+
$scroll_srcpt = "";
|
| 114 |
+
if (isset($options['scroll'])) {
|
| 115 |
+
$scroll_srcpt = '$(document).scrollTop($("' . $options['scroll'] . '").offset().top - 35);';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 116 |
}
|
| 117 |
+
$this->pointer_script[] = '$("#' . $container_id . '").closest(".wp-pointer").find(".' . $button_class . '").on("click",function(){'
|
| 118 |
+
. '$("#' . $pointer_conteiner_id . '") . closest(".wp-pointer") . show();'
|
| 119 |
+
. '$(this).closest(".wp-pointer").hide();'
|
| 120 |
+
. $scroll_srcpt
|
| 121 |
+
. '});';
|
| 122 |
+
}
|
| 123 |
|
| 124 |
+
private function add_button_script($button_class, $options, $container_id) {
|
| 125 |
+
if ($container_id != 'bwg_Add_image' && $container_id != 'bwg_add_alboms_gallery' && $container_id != 'bwg_add-shortcode' && $container_id != 'bwg_upload_image' && $container_id != 'bwg_add_selected_images' && $container_id != 'bwg_add_albums_gallery' && $container_id != 'bwg_add_album' && $container_id != 'bwg_choose_file' && $container_id != 'bwg_save_album' && $container_id != 'bwg_add-shortcode-gallery' && $container_id != 'bwg_insert_shortcode' && $container_id != 'bwg_save_gallery') {
|
| 126 |
+
$button_class = 'class="button-secondary ' . $button_class . '"';
|
| 127 |
+
$element = 'jQuery("#' . $container_id . '").closest(".wp-pointer-content").find(".wp-pointer-buttons")';
|
| 128 |
+
$script = "jQuery('<button " . $button_class . ">" . $options['title'] . "</button>').appendTo(" . $element . ");";
|
| 129 |
+
$this->pointer_script[] = $script;
|
| 130 |
}
|
| 131 |
+
}
|
| 132 |
|
| 133 |
+
public function show_pointer() {
|
| 134 |
+
if ( $this->page_url == 'upload_image.php' ) {
|
| 135 |
+
ob_start();
|
| 136 |
+
$this->print_pointer_script();
|
| 137 |
+
/* echo ob_get_clean();*/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 138 |
}
|
| 139 |
+
else {
|
| 140 |
+
wp_enqueue_style('wp-pointer');
|
| 141 |
+
wp_enqueue_script('wp-pointer');
|
| 142 |
+
add_action('admin_print_footer_scripts', array($this, 'print_pointer_script'));
|
|
|
|
|
|
|
|
|
|
|
|
|
| 143 |
}
|
| 144 |
+
}
|
| 145 |
|
| 146 |
+
public function print_pointer_script() {
|
| 147 |
+
?>
|
| 148 |
+
<script type="text/javascript">
|
| 149 |
+
if (typeof jQuery != "undefined") {
|
| 150 |
+
jQuery(document).ready(function() {
|
| 151 |
+
(function ($) {
|
| 152 |
+
var action = 'bwg_tour';
|
| 153 |
+
<?php
|
| 154 |
+
foreach ($this->page_pointers as $id => $options) {
|
| 155 |
+
?>
|
| 156 |
+
var t;
|
| 157 |
+
var isDelayed = <?php echo isset( $options['target_delayed'] ) && $options['target_delayed'] == true ? 'true' : 'false'; ?>;
|
| 158 |
+
var showOnEvent = '<?php echo isset( $options['show_on_event'] ) ? $options['show_on_event'] : ''; ?>';
|
| 159 |
+
var hideOnEvent = '<?php echo isset( $options['hide_on_event'] ) ? $options['hide_on_event'] : ''; ?>';
|
| 160 |
+
if ( showOnEvent && showOnEvent != "" ) {
|
| 161 |
+
(function() {
|
| 162 |
+
$(document).on(showOnEvent, function() {
|
| 163 |
+
$('<?php echo $options['selector']; ?>').pointer({
|
| 164 |
+
content: '<?php echo $options['content']; ?>',
|
| 165 |
+
position: {
|
| 166 |
+
edge: '<?php echo $options['edge']; ?>',
|
| 167 |
+
align: '<?php echo $options['align']; ?>'
|
| 168 |
+
},
|
| 169 |
+
close: function () {
|
| 170 |
+
if ('<?php echo $options['selector']; ?>' != '#select_all_images' ) {
|
| 171 |
+
jQuery.post(
|
| 172 |
+
ajaxurl, {'action': action},
|
| 173 |
+
function (response) {
|
| 174 |
|
| 175 |
+
});
|
| 176 |
+
}
|
| 177 |
+
}
|
| 178 |
+
}).pointer('open');
|
| 179 |
+
<?php echo $options['openFunctionContent']; ?>
|
| 180 |
+
});
|
| 181 |
+
})()
|
| 182 |
+
}
|
| 183 |
+
else if ( isDelayed ) {
|
| 184 |
+
(function() {
|
| 185 |
+
var interval = setInterval(function() {
|
| 186 |
+
if ( $('<?php echo $options['selector']; ?>').length && $('<?php echo $options['selector']; ?>').is(":visible") ) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 187 |
$('<?php echo $options['selector']; ?>').pointer({
|
| 188 |
content: '<?php echo $options['content']; ?>',
|
| 189 |
position: {
|
| 191 |
align: '<?php echo $options['align']; ?>'
|
| 192 |
},
|
| 193 |
close: function () {
|
|
|
|
| 194 |
jQuery.post(
|
| 195 |
+
ajaxurl, {'action': action},
|
| 196 |
+
function (response) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 197 |
|
| 198 |
+
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 199 |
}
|
| 200 |
+
}).pointer('open');
|
| 201 |
+
|
| 202 |
+
<?php echo $options['openFunctionContent']; ?>
|
| 203 |
+
clearInterval( interval );
|
| 204 |
}
|
| 205 |
+
}, 350);
|
| 206 |
+
})()
|
| 207 |
+
}
|
| 208 |
+
else {
|
| 209 |
+
$('<?php echo $options['selector']; ?>').pointer({
|
| 210 |
+
content: '<?php echo $options['content']; ?>',
|
| 211 |
+
position: {
|
| 212 |
+
edge: '<?php echo $options['edge']; ?>',
|
| 213 |
+
align: '<?php echo $options['align']; ?>',
|
| 214 |
+
},
|
| 215 |
+
close: function () {
|
| 216 |
+
if ('<?php echo $options['selector']; ?>' != '#select_all_images') {
|
| 217 |
+
jQuery.post(
|
| 218 |
+
ajaxurl, {'action': action},
|
| 219 |
+
function (response) {
|
| 220 |
+
|
| 221 |
+
});
|
| 222 |
}
|
| 223 |
+
}
|
| 224 |
+
}).pointer('open');
|
| 225 |
+
|
| 226 |
+
<?php echo $options['openFunctionContent']; ?>
|
| 227 |
+
}
|
| 228 |
+
|
| 229 |
+
$(document).on(hideOnEvent, function() {
|
| 230 |
+
|
| 231 |
+
try {
|
| 232 |
+
$('<?php echo $options['selector']; ?>').pointer('close');
|
| 233 |
+
}
|
| 234 |
+
catch( e ) {}
|
|
|
|
|
|
|
|
|
|
|
|
|
| 235 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 236 |
|
| 237 |
+
});
|
| 238 |
+
<?php
|
|
|
|
| 239 |
}
|
| 240 |
+
foreach ($this->pointer_script as $id => $script) {
|
| 241 |
+
echo $script;
|
| 242 |
}
|
| 243 |
+
?>
|
| 244 |
+
})(jQuery);
|
| 245 |
+
});
|
| 246 |
+
}
|
| 247 |
+
</script>
|
| 248 |
+
<?php
|
| 249 |
+
}
|
| 250 |
+
|
| 251 |
+
private function get_conteiner_id($pointer_id) {
|
| 252 |
+
return $this->prefix . '_' . $pointer_id;
|
| 253 |
+
}
|
| 254 |
+
|
| 255 |
+
public function set_pointer_text(){
|
| 256 |
+
$this->pointer_text = array(
|
| 257 |
+
'plugins' => __('Press Start Tour to learn how to create your first Photo Gallery.', 'bwg_back'),
|
| 258 |
+
'edit_options' => __('Set the settings for gallery/album.', 'bwg_back'),
|
| 259 |
+
'galleries' => __('Press Add New button to create your gallery.', 'bwg_back'),
|
| 260 |
+
'Add_image' => __('Press add image button to open Image Upload to add images to gallery.', 'bwg_back'),
|
| 261 |
+
'upload_image' => __('Press to upload images.".', 'bwg_back'),
|
| 262 |
+
'choose_file' => __('Browse photos or drag and drop to upload.', 'bwg_back'),
|
| 263 |
+
'select_all_img' => __('Hit on images you want to add to existing gallery or press Select All button for adding all images.', 'bwg_back'),
|
| 264 |
+
'add_selected_images' => __('To finalize the process of adding images press Add Selected image to gallery. Images will be added to your gallery and pop-up will be closed.', 'bwg_back'),
|
| 265 |
+
'save_gallery' => __('Press Save button. If you want to additionally create an album navigate to Photo Gallery/Albums or navigate to Pages section to insert created gallery into a page.', 'bwg_back'),
|
| 266 |
+
'add_albums' => __('Press Add New button to create your album.', 'bwg_back'),
|
| 267 |
+
'add_albums_gallery' => __('Press Add Albums/Galleries button to choose the galleries and albums which will be included into newly created album.', 'bwg_back'),
|
| 268 |
+
'check_all_album' => __('Select albums/galleries which you want to add to the album.', 'bwg_back'),
|
| 269 |
+
'add_album' => __('Press Add button to add selected items to your album.', 'bwg_back'),
|
| 270 |
+
'save_album' => __('Press Save button. Navigate to Pages section to insert created album into a page.', 'bwg_back'),
|
| 271 |
+
'show_page_gallery_album' => __('Add New Photo Gallery page.', 'bwg_back'),
|
| 272 |
+
'add-page' => __('Press Add New button to create a new page with gallery/album.', 'bwg_back'),
|
| 273 |
+
'add-shortcode-gallery' => __('Click on Photo Gallery shortcode generator icon.', 'bwg_back'),
|
| 274 |
+
'shortcode_gallery_bwg' => __('Select the view option you want to use for your gallery/album based on provided display options', 'bwg_back'),
|
| 275 |
+
'theme_shortcode' => __('Select the gallery/album and define view-related options.', 'bwg_back'),
|
| 276 |
+
'laytbox_shortcode' => __('Define lightbox settings (except slideshow and carousel views with their own sets of features).', 'bwg_back'),
|
| 277 |
+
'advertisement_shortcode' => __('Enable Advertisement previously created in Options section.', 'bwg_back'),
|
| 278 |
+
'insert_shortcode' => __('To finalize the shortcode generation and to insert it to a page press Insert button.', 'bwg_back'),
|
| 279 |
+
'add-shortcode' => __('Publish the page.', 'bwg_back')
|
| 280 |
+
);
|
| 281 |
+
}
|
| 282 |
+
|
| 283 |
+
public function set_pointers() {
|
| 284 |
+
if(strpos($this->page_url,'bwg_nonce') > 0) {
|
| 285 |
+
$Page_url = $this->page_url;
|
| 286 |
+
}
|
| 287 |
+
else {
|
| 288 |
+
$Page_url = 'admin.php?page=galleries_bwg&show_pointer=true';
|
| 289 |
+
}
|
| 290 |
+
|
| 291 |
+
$this->pointers = array(
|
| 292 |
+
'plugins' => array(
|
| 293 |
+
'page' => 'plugins.php',
|
| 294 |
+
'buttons' => array(
|
| 295 |
+
'next_page' => array(
|
| 296 |
+
'title' => __('Start', 'bwg_back'),
|
| 297 |
+
'url' => 'admin.php?page=options_bwg'
|
| 298 |
+
)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 299 |
),
|
| 300 |
+
'title' => __('Click to Start Tour', 'bwg_back'),
|
| 301 |
+
'selector' => '#toplevel_page_galleries_bwg',
|
| 302 |
+
'edge' => 'left',
|
| 303 |
+
'scroll'=> '#toplevel_page_galleries_bwg',
|
| 304 |
+
'align' => 'center'
|
| 305 |
+
),
|
| 306 |
+
'edit_options' => array(
|
| 307 |
+
'page' => 'admin.php?page=options_bwg',
|
| 308 |
+
'buttons' => array(
|
| 309 |
+
'next_page' => array(
|
| 310 |
+
'title' => __('Next', 'bwg_back'),
|
| 311 |
+
'url' => 'admin.php?page=galleries_bwg',
|
| 312 |
+
)
|
|
|
|
|
|
|
|
|
|
| 313 |
),
|
| 314 |
+
'title' => __('Photo Gallery options', 'bwg_back'),
|
| 315 |
+
'selector' => '#ed_options',
|
| 316 |
+
'edge' => 'left',
|
| 317 |
+
'align' => 'left',
|
| 318 |
+
'tooltip_class' => 'option_class'
|
| 319 |
+
),
|
| 320 |
+
'galleries' => array(
|
| 321 |
+
'page' => 'admin.php?page=galleries_bwg',
|
| 322 |
+
'buttons' => array(),
|
| 323 |
+
'title' => __('Add a Gallery', 'bwg_back'),
|
| 324 |
+
'selector' => '#galleries_id',
|
| 325 |
+
'edge' => 'left',
|
| 326 |
+
'align' => 'left',
|
| 327 |
+
'tooltip_class' => 'bwg_photo_galleries'
|
| 328 |
+
),
|
| 329 |
+
'Add_image' => array(
|
| 330 |
+
'page' => 'admin.php?page=galleries_bwg',
|
| 331 |
+
'buttons' => array(
|
| 332 |
+
'next_page' => array(
|
| 333 |
+
'title' => __('Next', 'bwg_back'),
|
| 334 |
+
'url' => 'admin.php?page=galleries_bwg'
|
| 335 |
+
)
|
| 336 |
),
|
| 337 |
+
'title' => __('Add images', 'bwg_back'),
|
| 338 |
+
'selector' => '#add_image_bwg',
|
| 339 |
+
'edge' => 'top',
|
| 340 |
+
'align' => 'left',
|
| 341 |
+
'tooltip_class' => 'bwg_add_img',
|
| 342 |
+
//'scroll' => '#add_image_bwg',
|
| 343 |
+
'close_on_click' => true
|
| 344 |
+
),
|
| 345 |
+
'upload_image' => array(
|
| 346 |
+
'page' => 'upload_image.php',
|
| 347 |
+
'buttons' => array(
|
| 348 |
+
'next_pointer' => array(
|
| 349 |
+
'title' => __('Next', 'bwg_back'),
|
| 350 |
+
'pointer_id' => 'choose_file'
|
| 351 |
+
)
|
|
|
|
| 352 |
),
|
| 353 |
+
'title' => __('Upload Images', 'bwg_back'),
|
| 354 |
+
'selector' => '#upload_images',
|
| 355 |
+
'edge' => 'top',
|
| 356 |
+
'align' => 'left',
|
| 357 |
+
'tooltip_class' => 'bwg_upload_img',
|
| 358 |
+
'target_delayed' => true,
|
| 359 |
+
'show_on_event' => 'onUpload',
|
| 360 |
+
'close_on_click' => true,
|
| 361 |
+
),
|
| 362 |
+
'choose_file' => array(
|
| 363 |
+
'page' => 'upload_image.php',
|
| 364 |
+
'buttons' => array(
|
| 365 |
+
'next_pointer' => array(
|
| 366 |
+
'title' => __('Next', 'bwg_back'),
|
| 367 |
+
'pointer_id' => 'select_all_img'
|
| 368 |
+
)
|
| 369 |
),
|
| 370 |
+
'title' => __('Choose file', 'bwg_back'),
|
| 371 |
+
'selector' => '#jQueryUploader',
|
| 372 |
+
'edge' => 'top',
|
| 373 |
+
'align' => 'left',
|
| 374 |
+
'close_on_click' => true,
|
| 375 |
+
'target_delayed' => true
|
| 376 |
+
),
|
| 377 |
+
'select_all_img' => array(
|
| 378 |
+
'page' => 'upload_image.php',
|
| 379 |
+
'buttons' => array(
|
| 380 |
+
'next_pointer' => array(
|
| 381 |
+
'title' => __('Next', 'bwg_back'),
|
| 382 |
+
'pointer_id' => 'add_selected_images'
|
| 383 |
+
)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 384 |
),
|
| 385 |
+
'title' => __('Select Images', 'bwg_back'),
|
| 386 |
+
'content' => 'description',
|
| 387 |
+
'selector' => '#select_all_images',
|
| 388 |
+
'edge' => 'left',
|
| 389 |
+
'align' => 'center',
|
| 390 |
+
'tooltip_class' => 'bwg_select_img',
|
| 391 |
+
'show_on_event' => 'onSelectAllImage',
|
| 392 |
+
'hide_on_event' => 'onUploadFilesPressed',
|
| 393 |
+
),
|
| 394 |
+
'add_selected_images' => array(
|
| 395 |
+
'page' => 'upload_image.php',
|
| 396 |
+
'buttons' => array(
|
| 397 |
+
'next_page' => array(
|
| 398 |
+
'title' => __('Next', 'bwg_back'),
|
| 399 |
+
'url' => 'admin.php?page=galleries_bwg',
|
| 400 |
+
'scroll' => '#save_gall',
|
| 401 |
+
)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 402 |
),
|
| 403 |
+
'title' => __('Add Selected images to gallery', 'bwg_back'),
|
| 404 |
+
'selector' => '#add_selectid_img',
|
| 405 |
+
'edge' => 'bottom',
|
| 406 |
+
'align' => 'left',
|
| 407 |
+
'tooltip_class' => 'bwg_selected_img',
|
| 408 |
+
'display' =>false,
|
| 409 |
+
),
|
| 410 |
+
'save_gallery' => array(
|
| 411 |
+
'page' => 'admin.php?page=galleries_bwg',
|
| 412 |
+
'buttons' => array(
|
| 413 |
+
'next_page' => array(
|
| 414 |
+
'title' => __('Next', 'bwg_back'),
|
| 415 |
+
'url' => 'admin.php?page=albums_bwg'
|
| 416 |
+
)
|
| 417 |
),
|
| 418 |
+
'title' => __('Save gallery', 'bwg_back'),
|
| 419 |
+
'content' => 'description',
|
| 420 |
+
'selector' => '#save_gall',
|
| 421 |
+
'edge' => 'right',
|
| 422 |
+
'align' => 'center',
|
| 423 |
+
'tooltip_class' => 'bwg_gallery_save',
|
| 424 |
+
'scroll' => '#save_gall',
|
| 425 |
+
'show_on_event' => 'bwgImagesAdded',
|
| 426 |
+
),
|
| 427 |
+
'add_albums' => array(
|
| 428 |
+
'page' => 'admin.php?page=albums_bwg',
|
| 429 |
+
'buttons' => array(),
|
| 430 |
+
'title' => __('Add album/gallery', 'bwg_back'),
|
| 431 |
+
'selector' => '.add-new-h2',
|
| 432 |
+
'edge' => 'left',
|
| 433 |
+
'align' => 'left',
|
| 434 |
+
'tooltip_class' => 'bwg_gallery_album',
|
| 435 |
+
),
|
| 436 |
+
'add_albums_gallery' => array(
|
| 437 |
+
'page' => 'admin.php?page=albums_bwg',
|
| 438 |
+
'buttons' => array(
|
| 439 |
+
'next_page' => array(
|
| 440 |
+
'title' => __('Next', 'bwg_back'),
|
| 441 |
+
'url' => 'admin.php?page=albums_bwg',
|
| 442 |
+
)
|
| 443 |
),
|
| 444 |
+
'title' => __('Add Albums/Galleries', 'bwg_back'),
|
| 445 |
+
'content' => 'description',
|
| 446 |
+
'selector' => '#content-add_media',
|
| 447 |
+
'edge' => 'left',
|
| 448 |
+
'align' => 'left',
|
| 449 |
+
'tooltip_class' => 'bwg_add_gallery_album',
|
| 450 |
+
'close_on_click' => true,
|
| 451 |
+
//'display' =>false
|
| 452 |
+
),
|
| 453 |
+
'check_all_album' => array(
|
| 454 |
+
'page' => 'upload_image.php',
|
| 455 |
+
'buttons' => array(
|
| 456 |
+
'next_pointer' => array(
|
| 457 |
+
'title' => __('Next', 'bwg_back'),
|
| 458 |
+
'pointer_id' => 'add_album'
|
| 459 |
+
)
|
| 460 |
),
|
| 461 |
+
'title' => __('Select album/gallery', 'bwg_back'),
|
| 462 |
+
'content' => 'description',
|
| 463 |
+
'selector' => '#check_all',
|
| 464 |
+
'edge' => 'left',
|
| 465 |
+
'align' => 'left',
|
| 466 |
+
'tooltip_class' => 'select_all_album'
|
| 467 |
+
),
|
| 468 |
+
'add_album' => array(
|
| 469 |
+
'page' => 'upload_image.php',
|
| 470 |
+
'buttons' => array(
|
| 471 |
+
'next_page' => array(
|
| 472 |
+
'title' => __('Next', 'bwg_back'),
|
| 473 |
+
'url' => 'upload_image.php'
|
| 474 |
+
)
|
|
|
|
| 475 |
),
|
| 476 |
+
'title' => __('Choosing Galleries/Albums', 'bwg_back'),
|
| 477 |
+
'content' => 'description',
|
| 478 |
+
'selector' => '#add_albums',
|
| 479 |
+
'edge' => 'top',
|
| 480 |
+
'tooltip_class' => 'bwg_add_album_bwg',
|
| 481 |
+
'align' => 'right',
|
| 482 |
+
'display' => false
|
| 483 |
+
),
|
| 484 |
+
'save_album' => array(
|
| 485 |
+
'page' => 'admin.php?page=albums_bwg',
|
| 486 |
+
'buttons' => array(
|
| 487 |
+
'next_page' => array(
|
| 488 |
+
'title' => __('Next', 'bwg_back'),
|
| 489 |
+
'url' => 'edit.php?post_type=page'
|
| 490 |
+
)
|
| 491 |
),
|
| 492 |
+
'title' => __('Save Album', 'bwg_back'),
|
| 493 |
+
'content' => 'description',
|
| 494 |
+
'selector' => '#save_albums',
|
| 495 |
+
'edge' => 'right',
|
| 496 |
+
'align' => 'left',
|
| 497 |
+
'tooltip_class' => 'bwg_album_save',
|
| 498 |
+
'scroll' =>'#save_albums',
|
| 499 |
+
'show_on_event' => 'onAddAlbum',
|
| 500 |
+
),
|
| 501 |
+
'show_page_gallery_album' => array(
|
| 502 |
+
'page' => $Page_url,
|
| 503 |
+
'buttons' => array(
|
| 504 |
+
'next_page' => array(
|
| 505 |
+
'title' => __('Next', 'bwg_back'),
|
| 506 |
+
'url' => 'edit.php?post_type=page'
|
| 507 |
+
)
|
| 508 |
),
|
| 509 |
+
'title' => __('Add New Page', 'bwg_back'),
|
| 510 |
+
'content' => 'description',
|
| 511 |
+
'selector' => '.dashicons-admin-page',
|
| 512 |
+
'edge' => 'left',
|
| 513 |
+
'align' => 'left',
|
| 514 |
+
'scroll' => '.dashicons-admin-page',
|
| 515 |
+
'tooltip_class' => 'show_page',
|
| 516 |
+
),
|
| 517 |
+
'add-page' => array(
|
| 518 |
+
'page' => 'edit.php?post_type=page',
|
| 519 |
+
'buttons' => array(),
|
| 520 |
+
'title' => __('Add Page', 'bwg_back'),
|
| 521 |
+
'selector' => '.page-title-action',
|
| 522 |
+
'edge' => 'top',
|
| 523 |
+
'align' => 'left',
|
| 524 |
+
),
|
| 525 |
+
'add-shortcode-gallery' => array(
|
| 526 |
+
'page' => 'post-new.php?post_type=page',
|
| 527 |
'buttons' => array(
|
| 528 |
+
'next_pointer' => array(
|
| 529 |
+
'title' => __('Next', 'bwg_back'),
|
| 530 |
+
'pointer_id' => 'add-shortcode'
|
| 531 |
+
)
|
| 532 |
),
|
| 533 |
+
'title' => __('Insert Shortcode', 'bwg_back'),
|
| 534 |
+
'selector' => '#mceu_bwg_shorcode',
|
| 535 |
+
'edge' => 'bottom',
|
| 536 |
'align' => 'left',
|
| 537 |
+
'close_on_click' =>true,
|
| 538 |
+
'show_on_event' => 'onUploadImg',
|
| 539 |
+
'tooltip_class' =>'add_short_gall'
|
| 540 |
+
),
|
| 541 |
+
'shortcode_gallery_bwg' => array(
|
| 542 |
+
'page' => 'upload_image.php',
|
| 543 |
+
'buttons' => array(
|
| 544 |
+
'next_pointer' => array(
|
| 545 |
+
'title' => __('Next', 'bwg_back'),
|
| 546 |
+
'pointer_id' => 'theme_shortcode'
|
| 547 |
+
)
|
| 548 |
),
|
| 549 |
+
'title' => __('Choose View', 'bwg_back'),
|
| 550 |
+
'selector' => '#display_thumb',
|
| 551 |
+
'edge' => 'top',
|
| 552 |
+
'align' => 'left',
|
| 553 |
+
'show_on_event' => 'onUploadShortcode'
|
| 554 |
+
),
|
| 555 |
+
'theme_shortcode' => array(
|
| 556 |
+
'page' => 'upload_image.php',
|
| 557 |
+
'buttons' => array(
|
| 558 |
+
'next_pointer' => array(
|
| 559 |
+
'title' => __('Next', 'bwg_back'),
|
| 560 |
+
'pointer_id' => 'laytbox_shortcode'
|
| 561 |
+
)
|
|
|
|
|
|
|
| 562 |
),
|
| 563 |
+
'title' => __('Select gallery', 'bwg_back'),
|
| 564 |
+
'selector' => '#gallery',
|
| 565 |
+
'edge' => 'left',
|
| 566 |
+
'align' => 'center',
|
| 567 |
+
'display'=> false,
|
| 568 |
+
'tooltip_class' => 'theme_short',
|
| 569 |
+
'show_on_event' => 'onUploadShortcode',
|
| 570 |
+
),
|
| 571 |
+
'laytbox_shortcode' => array(
|
| 572 |
+
'page' => 'upload_image.php',
|
| 573 |
+
'buttons' => array(
|
| 574 |
+
'next_pointer' => array(
|
| 575 |
+
'title' => __('Next', 'bwg_back'),
|
| 576 |
+
'pointer_id' => 'insert_shortcode',
|
| 577 |
+
'scroll' =>'#insert'
|
| 578 |
+
)
|
| 579 |
),
|
| 580 |
+
'title' => __('Ligthbox settings', 'bwg_back'),
|
| 581 |
+
'selector' => '#tbody_popup_other',
|
| 582 |
+
'edge' => 'left',
|
| 583 |
+
'align' => 'center',
|
| 584 |
+
'display'=> false
|
| 585 |
+
),
|
| 586 |
+
'insert_shortcode' => array(
|
| 587 |
+
'page' => 'upload_image.php',
|
| 588 |
+
'buttons' => array(
|
| 589 |
+
'next_page' => array(
|
| 590 |
+
'title' => __('Next', 'bwg_back'),
|
| 591 |
+
'url' => 'post-new.php?post_type=page'
|
| 592 |
+
)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 593 |
),
|
| 594 |
+
'title' => __('Insert Shortcode', 'bwg_back'),
|
| 595 |
+
'selector' => '#insert',
|
| 596 |
+
'edge' => 'bottom',
|
| 597 |
+
'align' => 'right',
|
| 598 |
+
'tooltip_class' => 'bwg_insert_short',
|
| 599 |
+
'show_on_event' => 'onUploadShortcode',
|
| 600 |
+
'display'=> false
|
| 601 |
+
),
|
| 602 |
+
'add-shortcode' => array(
|
| 603 |
+
'page' => 'post-new.php?post_type=page',
|
| 604 |
+
'buttons' => array(
|
| 605 |
+
'next_page' => array(
|
| 606 |
+
'title' => __('Next', 'bwg_back'),
|
| 607 |
+
'url' => 'post-new.php?post_type=page'
|
| 608 |
+
)
|
| 609 |
),
|
| 610 |
+
'title' => __('Publish Page', 'bwg_back'),
|
| 611 |
+
'selector' => '#publishing-action',
|
| 612 |
+
'edge' => 'right',
|
| 613 |
+
'align' => 'left',
|
| 614 |
+
'show_on_event' => 'onOpenShortcode'
|
| 615 |
+
),
|
| 616 |
+
);
|
| 617 |
+
}
|
| 618 |
}
|
js/bwg.js
CHANGED
|
@@ -18,7 +18,6 @@ function save_tag(tag_id) {
|
|
| 18 |
var slug = jQuery('input[name=slug'+tag_id+']').val();
|
| 19 |
var datas = "tagname="+tagname+"&"+"slug="+slug+"&"+"tag_id="+tag_id;
|
| 20 |
var td_check,td_name,td_slug,td_count,td_edit,td_delete,massege;
|
| 21 |
-
|
| 22 |
jQuery.ajax({
|
| 23 |
type: "POST",
|
| 24 |
url: ajax_url + "=bwg_edit_tag",
|
|
@@ -1082,7 +1081,6 @@ function bwg_is_instagram_gallery() {
|
|
| 1082 |
}
|
| 1083 |
}
|
| 1084 |
|
| 1085 |
-
|
| 1086 |
/**
|
| 1087 |
*
|
| 1088 |
* @param reset:bool true if reset to standard in case of not empty
|
|
@@ -1276,4 +1274,68 @@ function bwg_change_tab(box) {
|
|
| 1276 |
jQuery("#bwg_standart").css({'borderRight':'2px solid #E1E1E1'});
|
| 1277 |
bwg_change_option_type(jQuery("#type").val());
|
| 1278 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1279 |
}
|
| 18 |
var slug = jQuery('input[name=slug'+tag_id+']').val();
|
| 19 |
var datas = "tagname="+tagname+"&"+"slug="+slug+"&"+"tag_id="+tag_id;
|
| 20 |
var td_check,td_name,td_slug,td_count,td_edit,td_delete,massege;
|
|
|
|
| 21 |
jQuery.ajax({
|
| 22 |
type: "POST",
|
| 23 |
url: ajax_url + "=bwg_edit_tag",
|
| 1081 |
}
|
| 1082 |
}
|
| 1083 |
|
|
|
|
| 1084 |
/**
|
| 1085 |
*
|
| 1086 |
* @param reset:bool true if reset to standard in case of not empty
|
| 1274 |
jQuery("#bwg_standart").css({'borderRight':'2px solid #E1E1E1'});
|
| 1275 |
bwg_change_option_type(jQuery("#type").val());
|
| 1276 |
}
|
| 1277 |
+
}
|
| 1278 |
+
|
| 1279 |
+
/**
|
| 1280 |
+
* Open Wordpress media uploader.
|
| 1281 |
+
*
|
| 1282 |
+
* @param e
|
| 1283 |
+
* @param multiple
|
| 1284 |
+
*/
|
| 1285 |
+
function spider_media_uploader(e, multiple) {
|
| 1286 |
+
if (typeof multiple == "undefined") {
|
| 1287 |
+
var multiple = false;
|
| 1288 |
+
}
|
| 1289 |
+
var custom_uploader;
|
| 1290 |
+
e.preventDefault();
|
| 1291 |
+
// If the uploader object has already been created, reopen the dialog.
|
| 1292 |
+
if (custom_uploader) {
|
| 1293 |
+
custom_uploader.open();
|
| 1294 |
+
}
|
| 1295 |
+
|
| 1296 |
+
custom_uploader = wp.media.frames.file_frame = wp.media({
|
| 1297 |
+
title: bwg_objectL10B.choose_images,
|
| 1298 |
+
library : { type : 'image'},
|
| 1299 |
+
button: { text: bwg_objectL10B.insert},
|
| 1300 |
+
multiple: multiple
|
| 1301 |
+
});
|
| 1302 |
+
// When a file is selected, grab the URL and set it as the text field's value
|
| 1303 |
+
custom_uploader.on('select', function() {
|
| 1304 |
+
if (multiple == false) {
|
| 1305 |
+
attachment = custom_uploader.state().get('selection').first().toJSON();
|
| 1306 |
+
}
|
| 1307 |
+
else {
|
| 1308 |
+
attachment = custom_uploader.state().get('selection').toJSON();
|
| 1309 |
+
}
|
| 1310 |
+
|
| 1311 |
+
var filesSelectedML = [];
|
| 1312 |
+
for (var image in attachment) {
|
| 1313 |
+
var image_url = attachment[image].url;
|
| 1314 |
+
image_url = image_url.replace(bwg_objectL10B.wp_upload_dir.baseurl + '/', '');
|
| 1315 |
+
filesSelectedML.push(image_url);
|
| 1316 |
+
}
|
| 1317 |
+
fileNamesML = filesSelectedML.join("**@**");
|
| 1318 |
+
|
| 1319 |
+
jQuery.ajax({
|
| 1320 |
+
url: bwg_objectL10B.ajax_url,
|
| 1321 |
+
method: "GET",
|
| 1322 |
+
data: {
|
| 1323 |
+
action : "bwg_UploadHandler",
|
| 1324 |
+
file_namesML : fileNamesML,
|
| 1325 |
+
import : 1,
|
| 1326 |
+
},
|
| 1327 |
+
dataType: "json"
|
| 1328 |
+
}).done(function( result ) {
|
| 1329 |
+
for (var i in result) {
|
| 1330 |
+
result[i].alt = attachment[i].alt ? attachment[i].alt : attachment[i].title;
|
| 1331 |
+
result[i].description = attachment[i].description;
|
| 1332 |
+
}
|
| 1333 |
+
bwg_add_image(result);
|
| 1334 |
+
}).fail(function( msg ) {
|
| 1335 |
+
alert(bwg_objectL10B.import_failed);
|
| 1336 |
+
});
|
| 1337 |
+
});
|
| 1338 |
+
|
| 1339 |
+
// Open the uploader dialog.
|
| 1340 |
+
custom_uploader.open();
|
| 1341 |
}
|
photo-gallery.php
CHANGED
|
@@ -4,7 +4,7 @@
|
|
| 4 |
* Plugin Name: Photo Gallery
|
| 5 |
* Plugin URI: https://web-dorado.com/products/wordpress-photo-gallery-plugin.html
|
| 6 |
* Description: This plugin is a fully responsive gallery plugin with advanced functionality. It allows having different image galleries for your posts and pages. You can create unlimited number of galleries, combine them into albums, and provide descriptions and tags.
|
| 7 |
-
* Version: 1.3.
|
| 8 |
* Author: Photo Gallery Team
|
| 9 |
* Author URI: https://web-dorado.com/
|
| 10 |
* License: GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
|
|
@@ -48,7 +48,7 @@ $WD_BWG_UPLOAD_DIR = $wd_bwg_options->images_directory . '/photo-gallery';
|
|
| 48 |
// Plugin menu.
|
| 49 |
function bwg_options_panel() {
|
| 50 |
$parent_slug = null;
|
| 51 |
-
if( get_option( "bwg_subscribe_done" ) == 1 ) {
|
| 52 |
add_menu_page('Photo Gallery', 'Photo Gallery', 'manage_options', 'galleries_bwg', 'bwg_gallery', WD_BWG_URL . '/images/icons/best-wordpress-gallery.png');
|
| 53 |
$parent_slug = "galleries_bwg";
|
| 54 |
}
|
|
@@ -163,9 +163,8 @@ function bwg_filemanager_ajax() {
|
|
| 163 |
else {
|
| 164 |
die('Access Denied');
|
| 165 |
}
|
| 166 |
-
global $wpdb;
|
| 167 |
require_once(WD_BWG_DIR . '/framework/WDWLibrary.php');
|
| 168 |
-
$page = WDWLibrary::get('action');
|
| 169 |
|
| 170 |
if (($page != '') && (($page == 'addImages') || ($page == 'addMusic'))) {
|
| 171 |
if (!WDWLibrary::verify_nonce($page)) {
|
|
@@ -174,16 +173,7 @@ function bwg_filemanager_ajax() {
|
|
| 174 |
require_once(WD_BWG_DIR . '/filemanager/controller.php');
|
| 175 |
$controller_class = 'FilemanagerController';
|
| 176 |
$controller = new $controller_class();
|
| 177 |
-
$
|
| 178 |
-
if ($addImages_ajax == 'addImages_ajax') {
|
| 179 |
-
$load_count = WDWLibrary::get('load_count');
|
| 180 |
-
$images_list = $controller->get_images(intval($load_count));
|
| 181 |
-
echo (json_encode($images_list, true));
|
| 182 |
-
die;
|
| 183 |
-
}
|
| 184 |
-
else {
|
| 185 |
-
$controller->execute(true, 1);
|
| 186 |
-
}
|
| 187 |
}
|
| 188 |
}
|
| 189 |
|
|
@@ -326,7 +316,8 @@ function bwg_shortcode($params) {
|
|
| 326 |
'watermark_type' => 'none',
|
| 327 |
'load_more_image_count' => 15,
|
| 328 |
'show_tag_box' => 0,
|
| 329 |
-
'show_gallery_description' => 0
|
|
|
|
| 330 |
), $params);
|
| 331 |
break;
|
| 332 |
|
|
@@ -370,7 +361,8 @@ function bwg_shortcode($params) {
|
|
| 370 |
'image_browser_title_enable' => 1,
|
| 371 |
'image_browser_description_enable' => 1,
|
| 372 |
'watermark_type' => 'none',
|
| 373 |
-
'show_gallery_description' => 0
|
|
|
|
| 374 |
), $params);
|
| 375 |
break;
|
| 376 |
|
|
@@ -396,7 +388,8 @@ function bwg_shortcode($params) {
|
|
| 396 |
'watermark_type' => 'none',
|
| 397 |
'compuct_album_load_more_image_count' => 15,
|
| 398 |
'compuct_albums_per_page_load_more' => 15,
|
| 399 |
-
'show_gallery_description' => 0
|
|
|
|
| 400 |
), $params);
|
| 401 |
break;
|
| 402 |
|
|
@@ -422,7 +415,8 @@ function bwg_shortcode($params) {
|
|
| 422 |
'watermark_type' => 'none',
|
| 423 |
'extended_album_load_more_image_count' => 15,
|
| 424 |
'extended_albums_per_page_load_more' => 15,
|
| 425 |
-
'show_gallery_description' => 0
|
|
|
|
| 426 |
), $params);
|
| 427 |
break;
|
| 428 |
|
|
@@ -432,7 +426,7 @@ function bwg_shortcode($params) {
|
|
| 432 |
die();
|
| 433 |
}
|
| 434 |
}
|
| 435 |
-
|
| 436 |
shortcode_atts(array(
|
| 437 |
'popup_fullscreen' => 0,
|
| 438 |
'popup_autoplay' => 0,
|
|
@@ -504,12 +498,6 @@ add_shortcode('Best_Wordpress_Gallery', 'bwg_shortcode');
|
|
| 504 |
|
| 505 |
$bwg = 0;
|
| 506 |
function bwg_front_end($params) {
|
| 507 |
-
// Disable Jetpack’s Photon module.
|
| 508 |
-
$photon_removed = FALSE;
|
| 509 |
-
if ( class_exists("Jetpack_Photon") && method_exists(Jetpack_Photon, "instance") ) {
|
| 510 |
-
$photon_removed = remove_filter('image_downsize', array( Jetpack_Photon::instance(), 'filter_image_downsize' ));
|
| 511 |
-
}
|
| 512 |
-
|
| 513 |
require_once(WD_BWG_DIR . '/frontend/controllers/BWGController' . ucfirst($params['gallery_type']) . '.php');
|
| 514 |
$controller_class = 'BWGController' . ucfirst($params['gallery_type']) . '';
|
| 515 |
$controller = new $controller_class();
|
|
@@ -517,11 +505,6 @@ function bwg_front_end($params) {
|
|
| 517 |
$controller->execute($params, 1, $bwg);
|
| 518 |
$bwg++;
|
| 519 |
|
| 520 |
-
// Enable Jetpack’s Photon module.
|
| 521 |
-
if ( $photon_removed ) {
|
| 522 |
-
add_filter( 'image_downsize', array( Jetpack_Photon::instance(), 'filter_image_downsize' ), 10, 3 );
|
| 523 |
-
}
|
| 524 |
-
|
| 525 |
return;
|
| 526 |
}
|
| 527 |
|
|
@@ -706,6 +689,13 @@ function bwg_activate() {
|
|
| 706 |
'thumb_title_font_weight' => 'bold',
|
| 707 |
'thumb_title_margin' => '2px',
|
| 708 |
'thumb_title_shadow' => '0px 0px 0px #888888',
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 709 |
|
| 710 |
'page_nav_position' => 'bottom',
|
| 711 |
'page_nav_align' => 'center',
|
|
@@ -834,6 +824,13 @@ function bwg_activate() {
|
|
| 834 |
'album_compact_thumb_hover_effect' => 'scale',
|
| 835 |
'album_compact_thumb_hover_effect_value' => '1.1',
|
| 836 |
'album_compact_thumb_transition' => 0,
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 837 |
|
| 838 |
'album_extended_thumb_margin' => 2,
|
| 839 |
'album_extended_thumb_padding' => 0,
|
|
@@ -894,6 +891,13 @@ function bwg_activate() {
|
|
| 894 |
'album_extended_desc_padding' => '2px',
|
| 895 |
'album_extended_desc_more_color' => 'F2D22E',
|
| 896 |
'album_extended_desc_more_size' => 12,
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 897 |
|
| 898 |
'masonry_thumb_padding' => 4,
|
| 899 |
'masonry_thumb_border_radius' => '0',
|
|
@@ -907,6 +911,13 @@ function bwg_activate() {
|
|
| 907 |
'masonry_thumb_hover_effect' => 'scale',
|
| 908 |
'masonry_thumb_hover_effect_value' => '1.1',
|
| 909 |
'masonry_thumb_transition' => 0,
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 910 |
|
| 911 |
'slideshow_cont_bg_color' => '000000',
|
| 912 |
'slideshow_close_btn_transparent' => 100,
|
|
@@ -981,6 +992,13 @@ function bwg_activate() {
|
|
| 981 |
'blog_style_share_buttons_color' => 'B3AFAF',
|
| 982 |
'blog_style_share_buttons_bg_transparent' => 0,
|
| 983 |
'blog_style_share_buttons_font_size' => 20,
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 984 |
|
| 985 |
'image_browser_margin' => '2px auto',
|
| 986 |
'image_browser_padding' => '4px',
|
|
@@ -1011,6 +1029,13 @@ function bwg_activate() {
|
|
| 1011 |
'image_browser_full_bg_color' => 'F5F5F5',
|
| 1012 |
'image_browser_full_transparent' => 90,
|
| 1013 |
'image_browser_image_title_align' => 'top',
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1014 |
|
| 1015 |
'lightbox_info_pos' => 'top',
|
| 1016 |
'lightbox_info_align' => 'right',
|
|
@@ -1085,6 +1110,13 @@ function bwg_activate() {
|
|
| 1085 |
'album_masonry_thumb_hover_effect' => 'scale',
|
| 1086 |
'album_masonry_thumb_hover_effect_value' => '1.1',
|
| 1087 |
'album_masonry_thumb_transition' => 0,
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1088 |
|
| 1089 |
'mosaic_thumb_padding' => 4,
|
| 1090 |
'mosaic_thumb_border_radius' => '0',
|
|
@@ -1103,6 +1135,13 @@ function bwg_activate() {
|
|
| 1103 |
'mosaic_thumb_title_margin' => '2px',
|
| 1104 |
'mosaic_thumb_title_shadow' => '0px 0px 0px #888888',
|
| 1105 |
'mosaic_thumb_title_font_size' => 16,
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1106 |
|
| 1107 |
'carousel_cont_bg_color' => '000000',
|
| 1108 |
'carousel_cont_btn_transparent' => 0,
|
|
@@ -1158,6 +1197,13 @@ function bwg_activate() {
|
|
| 1158 |
'thumb_title_font_weight' => 'bold',
|
| 1159 |
'thumb_title_margin' => '5px',
|
| 1160 |
'thumb_title_shadow' => '',
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1161 |
|
| 1162 |
'page_nav_position' => 'bottom',
|
| 1163 |
'page_nav_align' => 'center',
|
|
@@ -1286,6 +1332,13 @@ function bwg_activate() {
|
|
| 1286 |
'album_compact_thumb_hover_effect' => 'rotate',
|
| 1287 |
'album_compact_thumb_hover_effect_value' => '2deg',
|
| 1288 |
'album_compact_thumb_transition' => 1,
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1289 |
|
| 1290 |
'album_extended_thumb_margin' => 2,
|
| 1291 |
'album_extended_thumb_padding' => 4,
|
|
@@ -1346,6 +1399,13 @@ function bwg_activate() {
|
|
| 1346 |
'album_extended_desc_padding' => '2px',
|
| 1347 |
'album_extended_desc_more_color' => 'FFC933',
|
| 1348 |
'album_extended_desc_more_size' => 12,
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1349 |
|
| 1350 |
'masonry_thumb_padding' => 4,
|
| 1351 |
'masonry_thumb_border_radius' => '2px',
|
|
@@ -1359,6 +1419,13 @@ function bwg_activate() {
|
|
| 1359 |
'masonry_thumb_hover_effect' => 'rotate',
|
| 1360 |
'masonry_thumb_hover_effect_value' => '2deg',
|
| 1361 |
'masonry_thumb_transition' => 0,
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1362 |
|
| 1363 |
'slideshow_cont_bg_color' => '000000',
|
| 1364 |
'slideshow_close_btn_transparent' => 100,
|
|
@@ -1433,6 +1500,14 @@ function bwg_activate() {
|
|
| 1433 |
'blog_style_share_buttons_color' => 'A1A1A1',
|
| 1434 |
'blog_style_share_buttons_bg_transparent' => 0,
|
| 1435 |
'blog_style_share_buttons_font_size' => 20,
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1436 |
|
| 1437 |
'image_browser_margin' => '2px auto',
|
| 1438 |
'image_browser_padding' => '4px',
|
|
@@ -1463,6 +1538,13 @@ function bwg_activate() {
|
|
| 1463 |
'image_browser_full_bg_color' => 'FFFFFF',
|
| 1464 |
'image_browser_full_transparent' => 90,
|
| 1465 |
'image_browser_image_title_align' => 'top',
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1466 |
|
| 1467 |
'lightbox_info_pos' => 'top',
|
| 1468 |
'lightbox_info_align' => 'right',
|
|
@@ -1537,6 +1619,13 @@ function bwg_activate() {
|
|
| 1537 |
'album_masonry_thumb_hover_effect' => 'rotate',
|
| 1538 |
'album_masonry_thumb_hover_effect_value' => '2deg',
|
| 1539 |
'album_masonry_thumb_transition' => 1,
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1540 |
|
| 1541 |
'mosaic_thumb_padding' => 4,
|
| 1542 |
'mosaic_thumb_border_radius' => '2px',
|
|
@@ -1555,6 +1644,13 @@ function bwg_activate() {
|
|
| 1555 |
'mosaic_thumb_title_margin' => '2px',
|
| 1556 |
'mosaic_thumb_title_shadow' => '0px 0px 0px #888888',
|
| 1557 |
'mosaic_thumb_title_font_size' => 16,
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1558 |
|
| 1559 |
'carousel_cont_bg_color' => '000000',
|
| 1560 |
'carousel_cont_btn_transparent' => 0,
|
|
@@ -1605,7 +1701,7 @@ function bwg_activate() {
|
|
| 1605 |
));
|
| 1606 |
}
|
| 1607 |
$version = get_option('wd_bwg_version');
|
| 1608 |
-
$new_version = '1.3.
|
| 1609 |
if ($version && version_compare($version, $new_version, '<')) {
|
| 1610 |
require_once WD_BWG_DIR . "/update/bwg_update.php";
|
| 1611 |
bwg_update($version);
|
|
@@ -1657,7 +1753,7 @@ wp_oembed_add_provider( '#https://instagr(\.am|am\.com)/p/.*#i', 'https://api.in
|
|
| 1657 |
|
| 1658 |
function bwg_update_hook() {
|
| 1659 |
$version = get_option('wd_bwg_version');
|
| 1660 |
-
$new_version = '1.3.
|
| 1661 |
if ($version && version_compare($version, $new_version, '<')) {
|
| 1662 |
require_once WD_BWG_DIR . "/update/bwg_update.php";
|
| 1663 |
bwg_update($version);
|
|
@@ -1702,37 +1798,43 @@ function bwg_styles() {
|
|
| 1702 |
|
| 1703 |
// Plugin scripts.
|
| 1704 |
function bwg_scripts() {
|
|
|
|
| 1705 |
wp_enqueue_script('thickbox');
|
| 1706 |
wp_enqueue_script('bwg_admin', WD_BWG_URL . '/js/bwg.js', array(), wd_bwg_version());
|
| 1707 |
wp_localize_script('bwg_admin', 'bwg_objectL10B', array(
|
| 1708 |
-
'bwg_field_required'
|
| 1709 |
-
'bwg_select_image'
|
| 1710 |
-
'bwg_select_audio'
|
| 1711 |
-
'bwg_client_id'
|
| 1712 |
-
'bwg_post_number'
|
| 1713 |
-
'bwg_not_empty'
|
| 1714 |
-
'bwg_enter_url'
|
| 1715 |
-
'bwg_cannot_response'
|
| 1716 |
-
'bwg_something_wrong'
|
| 1717 |
-
'bwg_error'
|
| 1718 |
-
'bwg_show_order'
|
| 1719 |
-
'bwg_hide_order'
|
| 1720 |
-
'selected'
|
| 1721 |
-
'item'
|
| 1722 |
-
'saved'
|
| 1723 |
-
'recovered'
|
| 1724 |
-
'published'
|
| 1725 |
-
'unpublished'
|
| 1726 |
-
'deleted'
|
| 1727 |
-
'one_item'
|
| 1728 |
-
'resized'
|
| 1729 |
-
'watermark_set'
|
| 1730 |
-
'reset'
|
| 1731 |
'save_tag' => __('Save Tag', 'bwg_back'),
|
| 1732 |
'delete_alert' => __('Do you want to delete selected items?', 'bwg_back'),
|
| 1733 |
'default_warning' => __('This action will reset gallery type to mixed and will save that choice. You cannot undo it.', 'bwg_back'),
|
| 1734 |
'change_warning' => __('After pressing save/apply buttons, you cannot change gallery type back to Instagram!', 'bwg_back'),
|
| 1735 |
-
'other_warning' => __('This action will reset gallery type to mixed and will save that choice. You cannot undo it.', 'bwg_back')
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1736 |
));
|
| 1737 |
|
| 1738 |
global $wp_scripts;
|
|
@@ -1885,7 +1987,7 @@ function bwg_options_scripts() {
|
|
| 1885 |
|
| 1886 |
wp_localize_script( 'bwg-deactivate-popup', 'bwgWDDeactivateVars', array(
|
| 1887 |
"prefix" => "bwg" ,
|
| 1888 |
-
"deactivate_class" =>
|
| 1889 |
"email" => $admin_data->data->user_email,
|
| 1890 |
"plugin_wd_url" => "https://web-dorado.com/products/wordpress-photo-gallery-plugin.html",
|
| 1891 |
));
|
| 4 |
* Plugin Name: Photo Gallery
|
| 5 |
* Plugin URI: https://web-dorado.com/products/wordpress-photo-gallery-plugin.html
|
| 6 |
* Description: This plugin is a fully responsive gallery plugin with advanced functionality. It allows having different image galleries for your posts and pages. You can create unlimited number of galleries, combine them into albums, and provide descriptions and tags.
|
| 7 |
+
* Version: 1.3.41
|
| 8 |
* Author: Photo Gallery Team
|
| 9 |
* Author URI: https://web-dorado.com/
|
| 10 |
* License: GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
|
| 48 |
// Plugin menu.
|
| 49 |
function bwg_options_panel() {
|
| 50 |
$parent_slug = null;
|
| 51 |
+
if ( get_option( "bwg_subscribe_done" ) == 1 ) {
|
| 52 |
add_menu_page('Photo Gallery', 'Photo Gallery', 'manage_options', 'galleries_bwg', 'bwg_gallery', WD_BWG_URL . '/images/icons/best-wordpress-gallery.png');
|
| 53 |
$parent_slug = "galleries_bwg";
|
| 54 |
}
|
| 163 |
else {
|
| 164 |
die('Access Denied');
|
| 165 |
}
|
|
|
|
| 166 |
require_once(WD_BWG_DIR . '/framework/WDWLibrary.php');
|
| 167 |
+
$page = WDWLibrary::get('action');
|
| 168 |
|
| 169 |
if (($page != '') && (($page == 'addImages') || ($page == 'addMusic'))) {
|
| 170 |
if (!WDWLibrary::verify_nonce($page)) {
|
| 173 |
require_once(WD_BWG_DIR . '/filemanager/controller.php');
|
| 174 |
$controller_class = 'FilemanagerController';
|
| 175 |
$controller = new $controller_class();
|
| 176 |
+
$controller->execute();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 177 |
}
|
| 178 |
}
|
| 179 |
|
| 316 |
'watermark_type' => 'none',
|
| 317 |
'load_more_image_count' => 15,
|
| 318 |
'show_tag_box' => 0,
|
| 319 |
+
'show_gallery_description' => 0,
|
| 320 |
+
'showthumbs_name' => 0,
|
| 321 |
), $params);
|
| 322 |
break;
|
| 323 |
|
| 361 |
'image_browser_title_enable' => 1,
|
| 362 |
'image_browser_description_enable' => 1,
|
| 363 |
'watermark_type' => 'none',
|
| 364 |
+
'show_gallery_description' => 0,
|
| 365 |
+
'showthumbs_name' => 0,
|
| 366 |
), $params);
|
| 367 |
break;
|
| 368 |
|
| 388 |
'watermark_type' => 'none',
|
| 389 |
'compuct_album_load_more_image_count' => 15,
|
| 390 |
'compuct_albums_per_page_load_more' => 15,
|
| 391 |
+
'show_gallery_description' => 0,
|
| 392 |
+
'show_album_name' => 0,
|
| 393 |
), $params);
|
| 394 |
break;
|
| 395 |
|
| 415 |
'watermark_type' => 'none',
|
| 416 |
'extended_album_load_more_image_count' => 15,
|
| 417 |
'extended_albums_per_page_load_more' => 15,
|
| 418 |
+
'show_gallery_description' => 0,
|
| 419 |
+
'show_album_name' => 0,
|
| 420 |
), $params);
|
| 421 |
break;
|
| 422 |
|
| 426 |
die();
|
| 427 |
}
|
| 428 |
}
|
| 429 |
+
|
| 430 |
shortcode_atts(array(
|
| 431 |
'popup_fullscreen' => 0,
|
| 432 |
'popup_autoplay' => 0,
|
| 498 |
|
| 499 |
$bwg = 0;
|
| 500 |
function bwg_front_end($params) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 501 |
require_once(WD_BWG_DIR . '/frontend/controllers/BWGController' . ucfirst($params['gallery_type']) . '.php');
|
| 502 |
$controller_class = 'BWGController' . ucfirst($params['gallery_type']) . '';
|
| 503 |
$controller = new $controller_class();
|
| 505 |
$controller->execute($params, 1, $bwg);
|
| 506 |
$bwg++;
|
| 507 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 508 |
return;
|
| 509 |
}
|
| 510 |
|
| 689 |
'thumb_title_font_weight' => 'bold',
|
| 690 |
'thumb_title_margin' => '2px',
|
| 691 |
'thumb_title_shadow' => '0px 0px 0px #888888',
|
| 692 |
+
'thumb_gal_title_font_color' => 'CCCCCC',
|
| 693 |
+
'thumb_gal_title_font_style' => 'segoe ui',
|
| 694 |
+
'thumb_gal_title_font_size' => 16,
|
| 695 |
+
'thumb_gal_title_font_weight' => 'bold',
|
| 696 |
+
'thumb_gal_title_margin' => '2px',
|
| 697 |
+
'thumb_gal_title_shadow' => '0px 0px 0px #888888',
|
| 698 |
+
'thumb_gal_title_align' => 'center',
|
| 699 |
|
| 700 |
'page_nav_position' => 'bottom',
|
| 701 |
'page_nav_align' => 'center',
|
| 824 |
'album_compact_thumb_hover_effect' => 'scale',
|
| 825 |
'album_compact_thumb_hover_effect_value' => '1.1',
|
| 826 |
'album_compact_thumb_transition' => 0,
|
| 827 |
+
'album_compact_gal_title_font_color' => 'CCCCCC',
|
| 828 |
+
'album_compact_gal_title_font_style' => 'segoe ui',
|
| 829 |
+
'album_compact_gal_title_font_size' => 16,
|
| 830 |
+
'album_compact_gal_title_font_weight' => 'bold',
|
| 831 |
+
'album_compact_gal_title_margin' => '2px',
|
| 832 |
+
'album_compact_gal_title_shadow' => '0px 0px 0px #888888',
|
| 833 |
+
'album_compact_gal_title_align' => 'center',
|
| 834 |
|
| 835 |
'album_extended_thumb_margin' => 2,
|
| 836 |
'album_extended_thumb_padding' => 0,
|
| 891 |
'album_extended_desc_padding' => '2px',
|
| 892 |
'album_extended_desc_more_color' => 'F2D22E',
|
| 893 |
'album_extended_desc_more_size' => 12,
|
| 894 |
+
'album_extended_gal_title_font_color' => 'CCCCCC',
|
| 895 |
+
'album_extended_gal_title_font_style' => 'segoe ui',
|
| 896 |
+
'album_extended_gal_title_font_size' => 16,
|
| 897 |
+
'album_extended_gal_title_font_weight' => 'bold',
|
| 898 |
+
'album_extended_gal_title_margin' => '2px',
|
| 899 |
+
'album_extended_gal_title_shadow' => '0px 0px 0px #888888',
|
| 900 |
+
'album_extended_gal_title_align' => 'center',
|
| 901 |
|
| 902 |
'masonry_thumb_padding' => 4,
|
| 903 |
'masonry_thumb_border_radius' => '0',
|
| 911 |
'masonry_thumb_hover_effect' => 'scale',
|
| 912 |
'masonry_thumb_hover_effect_value' => '1.1',
|
| 913 |
'masonry_thumb_transition' => 0,
|
| 914 |
+
'masonry_thumb_gal_title_font_color' => 'CCCCCC',
|
| 915 |
+
'masonry_thumb_gal_title_font_style' => 'segoe ui',
|
| 916 |
+
'masonry_thumb_gal_title_font_size' => 16,
|
| 917 |
+
'masonry_thumb_gal_title_font_weight' => 'bold',
|
| 918 |
+
'masonry_thumb_gal_title_margin' => '2px',
|
| 919 |
+
'masonry_thumb_gal_title_shadow' => '0px 0px 0px #888888',
|
| 920 |
+
'masonry_thumb_gal_title_align' => 'center',
|
| 921 |
|
| 922 |
'slideshow_cont_bg_color' => '000000',
|
| 923 |
'slideshow_close_btn_transparent' => 100,
|
| 992 |
'blog_style_share_buttons_color' => 'B3AFAF',
|
| 993 |
'blog_style_share_buttons_bg_transparent' => 0,
|
| 994 |
'blog_style_share_buttons_font_size' => 20,
|
| 995 |
+
'blog_style_gal_title_font_color' => 'CCCCCC',
|
| 996 |
+
'blog_style_gal_title_font_style' => 'segoe ui',
|
| 997 |
+
'blog_style_gal_title_font_size' => 16,
|
| 998 |
+
'blog_style_gal_title_font_weight' => 'bold',
|
| 999 |
+
'blog_style_gal_title_margin' => '2px',
|
| 1000 |
+
'blog_style_gal_title_shadow' => '0px 0px 0px #888888',
|
| 1001 |
+
'blog_style_gal_title_align' => 'center',
|
| 1002 |
|
| 1003 |
'image_browser_margin' => '2px auto',
|
| 1004 |
'image_browser_padding' => '4px',
|
| 1029 |
'image_browser_full_bg_color' => 'F5F5F5',
|
| 1030 |
'image_browser_full_transparent' => 90,
|
| 1031 |
'image_browser_image_title_align' => 'top',
|
| 1032 |
+
'image_browser_gal_title_font_color' => 'CCCCCC',
|
| 1033 |
+
'image_browser_gal_title_font_style' => 'segoe ui',
|
| 1034 |
+
'image_browser_gal_title_font_size' => 16,
|
| 1035 |
+
'image_browser_gal_title_font_weight' => 'bold',
|
| 1036 |
+
'image_browser_gal_title_margin' => '2px',
|
| 1037 |
+
'image_browser_gal_title_shadow' => '0px 0px 0px #888888',
|
| 1038 |
+
'image_browser_gal_title_align' => 'center',
|
| 1039 |
|
| 1040 |
'lightbox_info_pos' => 'top',
|
| 1041 |
'lightbox_info_align' => 'right',
|
| 1110 |
'album_masonry_thumb_hover_effect' => 'scale',
|
| 1111 |
'album_masonry_thumb_hover_effect_value' => '1.1',
|
| 1112 |
'album_masonry_thumb_transition' => 0,
|
| 1113 |
+
'album_masonry_gal_title_font_color' => 'CCCCCC',
|
| 1114 |
+
'album_masonry_gal_title_font_style' => 'segoe ui',
|
| 1115 |
+
'album_masonry_gal_title_font_size' => 16,
|
| 1116 |
+
'album_masonry_gal_title_font_weight' => 'bold',
|
| 1117 |
+
'album_masonry_gal_title_margin' => '2px',
|
| 1118 |
+
'album_masonry_gal_title_shadow' => '0px 0px 0px #888888',
|
| 1119 |
+
'album_masonry_gal_title_align' => 'center',
|
| 1120 |
|
| 1121 |
'mosaic_thumb_padding' => 4,
|
| 1122 |
'mosaic_thumb_border_radius' => '0',
|
| 1135 |
'mosaic_thumb_title_margin' => '2px',
|
| 1136 |
'mosaic_thumb_title_shadow' => '0px 0px 0px #888888',
|
| 1137 |
'mosaic_thumb_title_font_size' => 16,
|
| 1138 |
+
'mosaic_thumb_gal_title_font_color' => 'CCCCCC',
|
| 1139 |
+
'mosaic_thumb_gal_title_font_style' => 'segoe ui',
|
| 1140 |
+
'mosaic_thumb_gal_title_font_size' => 16,
|
| 1141 |
+
'mosaic_thumb_gal_title_font_weight' => 'bold',
|
| 1142 |
+
'mosaic_thumb_gal_title_margin' => '2px',
|
| 1143 |
+
'mosaic_thumb_gal_title_shadow' => '0px 0px 0px #888888',
|
| 1144 |
+
'mosaic_thumb_gal_title_align' => 'center',
|
| 1145 |
|
| 1146 |
'carousel_cont_bg_color' => '000000',
|
| 1147 |
'carousel_cont_btn_transparent' => 0,
|
| 1197 |
'thumb_title_font_weight' => 'bold',
|
| 1198 |
'thumb_title_margin' => '5px',
|
| 1199 |
'thumb_title_shadow' => '',
|
| 1200 |
+
'thumb_gal_title_font_color' => 'CCCCCC',
|
| 1201 |
+
'thumb_gal_title_font_style' => 'segoe ui',
|
| 1202 |
+
'thumb_gal_title_font_size' => 16,
|
| 1203 |
+
'thumb_gal_title_font_weight' => 'bold',
|
| 1204 |
+
'thumb_gal_title_margin' => '2px',
|
| 1205 |
+
'thumb_gal_title_shadow' => '0px 0px 0px #888888',
|
| 1206 |
+
'thumb_gal_title_align' => 'center',
|
| 1207 |
|
| 1208 |
'page_nav_position' => 'bottom',
|
| 1209 |
'page_nav_align' => 'center',
|
| 1332 |
'album_compact_thumb_hover_effect' => 'rotate',
|
| 1333 |
'album_compact_thumb_hover_effect_value' => '2deg',
|
| 1334 |
'album_compact_thumb_transition' => 1,
|
| 1335 |
+
'album_compact_gal_title_font_color' => 'CCCCCC',
|
| 1336 |
+
'album_compact_gal_title_font_style' => 'segoe ui',
|
| 1337 |
+
'album_compact_gal_title_font_size' => 16,
|
| 1338 |
+
'album_compact_gal_title_font_weight' => 'bold',
|
| 1339 |
+
'album_compact_gal_title_margin' => '2px',
|
| 1340 |
+
'album_compact_gal_title_shadow' => '0px 0px 0px #888888',
|
| 1341 |
+
'album_compact_gal_title_align' => 'center',
|
| 1342 |
|
| 1343 |
'album_extended_thumb_margin' => 2,
|
| 1344 |
'album_extended_thumb_padding' => 4,
|
| 1399 |
'album_extended_desc_padding' => '2px',
|
| 1400 |
'album_extended_desc_more_color' => 'FFC933',
|
| 1401 |
'album_extended_desc_more_size' => 12,
|
| 1402 |
+
'album_extended_gal_title_font_color' => 'CCCCCC',
|
| 1403 |
+
'album_extended_gal_title_font_style' => 'segoe ui',
|
| 1404 |
+
'album_extended_gal_title_font_size' => 16,
|
| 1405 |
+
'album_extended_gal_title_font_weight' => 'bold',
|
| 1406 |
+
'album_extended_gal_title_margin' => '2px',
|
| 1407 |
+
'album_extended_gal_title_shadow' => '0px 0px 0px #888888',
|
| 1408 |
+
'album_extended_gal_title_align' => 'center',
|
| 1409 |
|
| 1410 |
'masonry_thumb_padding' => 4,
|
| 1411 |
'masonry_thumb_border_radius' => '2px',
|
| 1419 |
'masonry_thumb_hover_effect' => 'rotate',
|
| 1420 |
'masonry_thumb_hover_effect_value' => '2deg',
|
| 1421 |
'masonry_thumb_transition' => 0,
|
| 1422 |
+
'masonry_thumb_gal_title_font_color' => 'CCCCCC',
|
| 1423 |
+
'masonry_thumb_gal_title_font_style' => 'segoe ui',
|
| 1424 |
+
'masonry_thumb_gal_title_font_size' => 16,
|
| 1425 |
+
'masonry_thumb_gal_title_font_weight' => 'bold',
|
| 1426 |
+
'masonry_thumb_gal_title_margin' => '2px',
|
| 1427 |
+
'masonry_thumb_gal_title_shadow' => '0px 0px 0px #888888',
|
| 1428 |
+
'masonry_thumb_gal_title_align' => 'center',
|
| 1429 |
|
| 1430 |
'slideshow_cont_bg_color' => '000000',
|
| 1431 |
'slideshow_close_btn_transparent' => 100,
|
| 1500 |
'blog_style_share_buttons_color' => 'A1A1A1',
|
| 1501 |
'blog_style_share_buttons_bg_transparent' => 0,
|
| 1502 |
'blog_style_share_buttons_font_size' => 20,
|
| 1503 |
+
'blog_style_image_title_align' => 'top',
|
| 1504 |
+
'blog_style_gal_title_font_color' => 'CCCCCC',
|
| 1505 |
+
'blog_style_gal_title_font_style' => 'segoe ui',
|
| 1506 |
+
'blog_style_gal_title_font_size' => 16,
|
| 1507 |
+
'blog_style_gal_title_font_weight' => 'bold',
|
| 1508 |
+
'blog_style_gal_title_margin' => '2px',
|
| 1509 |
+
'blog_style_gal_title_shadow' => '0px 0px 0px #888888',
|
| 1510 |
+
'blog_style_gal_title_align' => 'center',
|
| 1511 |
|
| 1512 |
'image_browser_margin' => '2px auto',
|
| 1513 |
'image_browser_padding' => '4px',
|
| 1538 |
'image_browser_full_bg_color' => 'FFFFFF',
|
| 1539 |
'image_browser_full_transparent' => 90,
|
| 1540 |
'image_browser_image_title_align' => 'top',
|
| 1541 |
+
'image_browser_gal_title_font_color' => 'CCCCCC',
|
| 1542 |
+
'image_browser_gal_title_font_style' => 'segoe ui',
|
| 1543 |
+
'image_browser_gal_title_font_size' => 16,
|
| 1544 |
+
'image_browser_gal_title_font_weight' => 'bold',
|
| 1545 |
+
'image_browser_gal_title_margin' => '2px',
|
| 1546 |
+
'image_browser_gal_title_shadow' => '0px 0px 0px #888888',
|
| 1547 |
+
'image_browser_gal_title_align' => 'center',
|
| 1548 |
|
| 1549 |
'lightbox_info_pos' => 'top',
|
| 1550 |
'lightbox_info_align' => 'right',
|
| 1619 |
'album_masonry_thumb_hover_effect' => 'rotate',
|
| 1620 |
'album_masonry_thumb_hover_effect_value' => '2deg',
|
| 1621 |
'album_masonry_thumb_transition' => 1,
|
| 1622 |
+
'album_masonry_gal_title_font_color' => 'CCCCCC',
|
| 1623 |
+
'album_masonry_gal_title_font_style' => 'segoe ui',
|
| 1624 |
+
'album_masonry_gal_title_font_size' => 16,
|
| 1625 |
+
'album_masonry_gal_title_font_weight' => 'bold',
|
| 1626 |
+
'album_masonry_gal_title_margin' => '2px',
|
| 1627 |
+
'album_masonry_gal_title_shadow' => '0px 0px 0px #888888',
|
| 1628 |
+
'album_masonry_gal_title_align' => 'center',
|
| 1629 |
|
| 1630 |
'mosaic_thumb_padding' => 4,
|
| 1631 |
'mosaic_thumb_border_radius' => '2px',
|
| 1644 |
'mosaic_thumb_title_margin' => '2px',
|
| 1645 |
'mosaic_thumb_title_shadow' => '0px 0px 0px #888888',
|
| 1646 |
'mosaic_thumb_title_font_size' => 16,
|
| 1647 |
+
'mosaic_thumb_gal_title_font_color' => 'CCCCCC',
|
| 1648 |
+
'mosaic_thumb_gal_title_font_style' => 'segoe ui',
|
| 1649 |
+
'mosaic_thumb_gal_title_font_size' => 16,
|
| 1650 |
+
'mosaic_thumb_gal_title_font_weight' => 'bold',
|
| 1651 |
+
'mosaic_thumb_gal_title_margin' => '2px',
|
| 1652 |
+
'mosaic_thumb_gal_title_shadow' => '0px 0px 0px #888888',
|
| 1653 |
+
'mosaic_thumb_gal_title_align' => 'center',
|
| 1654 |
|
| 1655 |
'carousel_cont_bg_color' => '000000',
|
| 1656 |
'carousel_cont_btn_transparent' => 0,
|
| 1701 |
));
|
| 1702 |
}
|
| 1703 |
$version = get_option('wd_bwg_version');
|
| 1704 |
+
$new_version = '1.3.41';
|
| 1705 |
if ($version && version_compare($version, $new_version, '<')) {
|
| 1706 |
require_once WD_BWG_DIR . "/update/bwg_update.php";
|
| 1707 |
bwg_update($version);
|
| 1753 |
|
| 1754 |
function bwg_update_hook() {
|
| 1755 |
$version = get_option('wd_bwg_version');
|
| 1756 |
+
$new_version = '1.3.41';
|
| 1757 |
if ($version && version_compare($version, $new_version, '<')) {
|
| 1758 |
require_once WD_BWG_DIR . "/update/bwg_update.php";
|
| 1759 |
bwg_update($version);
|
| 1798 |
|
| 1799 |
// Plugin scripts.
|
| 1800 |
function bwg_scripts() {
|
| 1801 |
+
global $wd_bwg_options;
|
| 1802 |
wp_enqueue_script('thickbox');
|
| 1803 |
wp_enqueue_script('bwg_admin', WD_BWG_URL . '/js/bwg.js', array(), wd_bwg_version());
|
| 1804 |
wp_localize_script('bwg_admin', 'bwg_objectL10B', array(
|
| 1805 |
+
'bwg_field_required' => __('field is required.', 'bwg_back'),
|
| 1806 |
+
'bwg_select_image' => __('You must select an image file.', 'bwg_back'),
|
| 1807 |
+
'bwg_select_audio' => __('You must select an audio file.', 'bwg_back'),
|
| 1808 |
+
'bwg_client_id' => __('You do not have Instagram CLIENT_ID. Input its value in Options->Embed options. ', 'bwg_back'),
|
| 1809 |
+
'bwg_post_number' => __('Instagram recent post number must be between 1 and 33.', 'bwg_back'),
|
| 1810 |
+
'bwg_not_empty' => __('The gallery is not empty. Please delete all the images first.', 'bwg_back'),
|
| 1811 |
+
'bwg_enter_url' => __('Please enter url to embed.', 'bwg_back'),
|
| 1812 |
+
'bwg_cannot_response' => __('Error: cannot get response from the server.', 'bwg_back'),
|
| 1813 |
+
'bwg_something_wrong' => __('Error: something wrong happened at the server.', 'bwg_back'),
|
| 1814 |
+
'bwg_error' => __('Error', 'bwg_back'),
|
| 1815 |
+
'bwg_show_order' => __('Show order column', 'bwg_back'),
|
| 1816 |
+
'bwg_hide_order' => __('Hide order column', 'bwg_back'),
|
| 1817 |
+
'selected' => __('Selected', 'bwg_back'),
|
| 1818 |
+
'item' => __('item', 'bwg_back'),
|
| 1819 |
+
'saved' => __('Items Succesfully Saved.', 'bwg_back'),
|
| 1820 |
+
'recovered' => __('Item Succesfully Recovered.', 'bwg_back'),
|
| 1821 |
+
'published' => __('Item Succesfully Published.', 'bwg_back'),
|
| 1822 |
+
'unpublished' => __('Item Succesfully Unpublished.', 'bwg_back'),
|
| 1823 |
+
'deleted' => __('Item Succesfully Deleted.', 'bwg_back'),
|
| 1824 |
+
'one_item' => __('You must select at least one item.', 'bwg_back'),
|
| 1825 |
+
'resized' => __('Items Succesfully resized.', 'bwg_back'),
|
| 1826 |
+
'watermark_set' => __('Watermarks Succesfully Set.', 'bwg_back'),
|
| 1827 |
+
'reset' => __('Items Succesfully Reset.', 'bwg_back'),
|
| 1828 |
'save_tag' => __('Save Tag', 'bwg_back'),
|
| 1829 |
'delete_alert' => __('Do you want to delete selected items?', 'bwg_back'),
|
| 1830 |
'default_warning' => __('This action will reset gallery type to mixed and will save that choice. You cannot undo it.', 'bwg_back'),
|
| 1831 |
'change_warning' => __('After pressing save/apply buttons, you cannot change gallery type back to Instagram!', 'bwg_back'),
|
| 1832 |
+
'other_warning' => __('This action will reset gallery type to mixed and will save that choice. You cannot undo it.', 'bwg_back'),
|
| 1833 |
+
'insert' => __('Insert', 'bwg_back'),
|
| 1834 |
+
'import_failed' => __('Failed to import images from media library', 'bwg_back'),
|
| 1835 |
+
'wp_upload_dir' => wp_upload_dir(),
|
| 1836 |
+
'ajax_url' => wp_nonce_url( admin_url('admin-ajax.php'), 'bwg_UploadHandler', 'bwg_nonce' ),
|
| 1837 |
+
'uploads_url' => site_url() . '/' . $wd_bwg_options->images_directory . '/photo-gallery',
|
| 1838 |
));
|
| 1839 |
|
| 1840 |
global $wp_scripts;
|
| 1987 |
|
| 1988 |
wp_localize_script( 'bwg-deactivate-popup', 'bwgWDDeactivateVars', array(
|
| 1989 |
"prefix" => "bwg" ,
|
| 1990 |
+
"deactivate_class" => 'bwg_deactivate_link',
|
| 1991 |
"email" => $admin_data->data->user_email,
|
| 1992 |
"plugin_wd_url" => "https://web-dorado.com/products/wordpress-photo-gallery-plugin.html",
|
| 1993 |
));
|
readme.txt
CHANGED
|
@@ -4,7 +4,7 @@ Donate link: https://web-dorado.com/products/wordpress-photo-gallery-plugin.html
|
|
| 4 |
Tags: gallery, photo gallery, image gallery, responsive gallery, wordpress gallery plugin, photo albums, gallery slider, gallery lightbox, wordpress photo gallery plugin, fullscreen gallery, watermarking, video gallery
|
| 5 |
Requires at least: 3.4
|
| 6 |
Tested up to: 4.7
|
| 7 |
-
Stable tag: 1.3.
|
| 8 |
License: GPLv2 or later
|
| 9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
| 10 |
|
|
@@ -188,6 +188,11 @@ To enable the feature of adding Media Library images, go to Photo Gallery > Opti
|
|
| 188 |
|
| 189 |
== Changelog ==
|
| 190 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 191 |
= 1.3.40 =
|
| 192 |
* Fixed: Images in a column
|
| 193 |
|
| 4 |
Tags: gallery, photo gallery, image gallery, responsive gallery, wordpress gallery plugin, photo albums, gallery slider, gallery lightbox, wordpress photo gallery plugin, fullscreen gallery, watermarking, video gallery
|
| 5 |
Requires at least: 3.4
|
| 6 |
Tested up to: 4.7
|
| 7 |
+
Stable tag: 1.3.41
|
| 8 |
License: GPLv2 or later
|
| 9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
| 10 |
|
| 188 |
|
| 189 |
== Changelog ==
|
| 190 |
|
| 191 |
+
= 1.3.41 =
|
| 192 |
+
* Added: Possibility to add images from Wordpress Media Library.
|
| 193 |
+
* Fixed: Image info in lightbox with small effect duration.
|
| 194 |
+
* Changed: Effect duration now can be float.
|
| 195 |
+
|
| 196 |
= 1.3.40 =
|
| 197 |
* Fixed: Images in a column
|
| 198 |
|
