Version Description
- Update image widget add-on
- Modify add-ons installation
- Update images manager
- Small fixes of the interface
Download this release
Release Info
Developer | robosoft |
Plugin | Gallery – Photo Gallery and Images Gallery |
Version | 2.8.3 |
Comparing to | |
See all releases |
Code changes from version 2.8.2 to 2.8.3
- app/app.php +7 -1
- app/class.brand.php +1 -1
- app/class.listing.php +123 -0
- app/class.php +30 -0
- app/class.view.php +1 -1
- app/extensions/index.html +0 -0
- app/extensions/manager/class.addons.action.php +1 -1
- app/extensions/manager/class.addons.php +97 -53
- app/extensions/manager/init.php +1 -1
- app/extensions/manager/js/script.js +65 -26
- app/extensions/manager/templates/addon.tpl.php +1 -0
- app/extensions/manager/templates/confirm.tpl.php +9 -0
- app/index.html +0 -0
- app/views/index.html +0 -0
- cmb2/fields/gallery/cmb-field-gallery.php +11 -9
- cmb2/fields/gallery/css/style.css +4 -4
- cmb2/fields/gallery/js/script.js +2 -2
- includes/options/rbs_gallery_options_images.php +2 -2
- includes/rbs_gallery_init.php +8 -4
- includes/rbs_gallery_list.php +66 -21
- includes/rbs_gallery_widget.php +135 -40
- readme.txt +60 -48
- robogallery.php +6 -8
app/app.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
|
3 |
/*
|
4 |
* Robo Gallery
|
5 |
-
* Version: 2.8.
|
6 |
* By Robosoft
|
7 |
*
|
8 |
* Contact: https://robosoft.co/robogallery/
|
@@ -19,4 +19,10 @@ include_once ROBO_GALLERY_APP_PATH.'class.brand.php';
|
|
19 |
|
20 |
/* extensions */
|
21 |
define("ROBO_GALLERY_APP_EXTENSIONS_PATH", ROBO_GALLERY_APP_PATH.'extensions/');
|
|
|
|
|
|
|
|
|
|
|
22 |
include_once ROBO_GALLERY_APP_EXTENSIONS_PATH.'manager/init.php';
|
|
2 |
|
3 |
/*
|
4 |
* Robo Gallery
|
5 |
+
* Version: 2.8.4 - 76726
|
6 |
* By Robosoft
|
7 |
*
|
8 |
* Contact: https://robosoft.co/robogallery/
|
19 |
|
20 |
/* extensions */
|
21 |
define("ROBO_GALLERY_APP_EXTENSIONS_PATH", ROBO_GALLERY_APP_PATH.'extensions/');
|
22 |
+
|
23 |
+
include_once ROBO_GALLERY_APP_PATH.'class.php';
|
24 |
+
|
25 |
+
include_once ROBO_GALLERY_APP_PATH.'class.listing.php';
|
26 |
+
|
27 |
include_once ROBO_GALLERY_APP_EXTENSIONS_PATH.'manager/init.php';
|
28 |
+
|
app/class.brand.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
|
3 |
/*
|
4 |
* Robo Gallery
|
5 |
-
* Version: 2.8.
|
6 |
* By Robosoft
|
7 |
*
|
8 |
* Contact: https://robosoft.co/robogallery/
|
2 |
|
3 |
/*
|
4 |
* Robo Gallery
|
5 |
+
* Version: 2.8.4 - 76726
|
6 |
* By Robosoft
|
7 |
*
|
8 |
* Contact: https://robosoft.co/robogallery/
|
app/class.listing.php
ADDED
@@ -0,0 +1,123 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Robo Gallery
|
4 |
+
* Version: 2.8.4 - 76726
|
5 |
+
* By Robosoft
|
6 |
+
*
|
7 |
+
* Contact: https://robosoft.co/robogallery/
|
8 |
+
* Created: 2015
|
9 |
+
* Licensed under the GPLv2 license - http://opensource.org/licenses/gpl-2.0.php
|
10 |
+
|
11 |
+
*/
|
12 |
+
|
13 |
+
if ( ! defined( 'ABSPATH' ) ) exit;
|
14 |
+
|
15 |
+
|
16 |
+
class rbsGalleryListing extends roboGalleryClass{
|
17 |
+
|
18 |
+
protected $postType;
|
19 |
+
|
20 |
+
protected $title;
|
21 |
+
|
22 |
+
public $view;
|
23 |
+
|
24 |
+
/* ============== */
|
25 |
+
public function __construct(){
|
26 |
+
if( rbs_gallery_get_current_post_type() != ROBO_GALLERY_TYPE_POST ) return ;
|
27 |
+
parent::__construct();
|
28 |
+
$this->postType = ROBO_GALLERY_TYPE_POST;
|
29 |
+
//$this->view = new rbsGalleryClassView( $this->path.'templates/' );
|
30 |
+
}
|
31 |
+
|
32 |
+
public function hooks(){
|
33 |
+
global $page;
|
34 |
+
add_action( 'init', array($this, 'init') );
|
35 |
+
|
36 |
+
add_action( 'manage_'.ROBO_GALLERY_TYPE_POST.'_posts_custom_column', array($this, 'custom_columns'), 10, 2 );
|
37 |
+
add_filter( 'manage_'.ROBO_GALLERY_TYPE_POST.'_posts_columns', array($this, 'custom_header'));
|
38 |
+
|
39 |
+
if( rbs_gallery_is_edit_page('list') ){
|
40 |
+
if( isset($_GET['showproinfo']) && $_GET['showproinfo'] && !ROBO_GALLERY_PRO ){
|
41 |
+
//add_action('admin_print_styles-' . $page, array($this, 'admin_styles'));
|
42 |
+
add_action('in_admin_header', array($this, 'show_info') );
|
43 |
+
}
|
44 |
+
add_action( 'in_admin_header', array($this, 'assets') );
|
45 |
+
}
|
46 |
+
}
|
47 |
+
|
48 |
+
public function assets (){
|
49 |
+
wp_enqueue_script('robo-gallery-lising-js', ROBO_GALLERY_URL.'js/admin/listing.js', array( 'jquery' ), ROBO_GALLERY_VERSION, true );
|
50 |
+
wp_enqueue_style ('robo-gallery-lising-css', ROBO_GALLERY_URL.'css/admin/list.css', array( ), ROBO_GALLERY_VERSION );
|
51 |
+
|
52 |
+
/* remove extra content from OUR PLUGIN settings section */
|
53 |
+
$css_inline = '#wpbody .fs-notice,#wpbody .fs-sticky,#wpbody .fs-has-title,#wpbody .wd-admin-notice,#wpbody .ngg_admin_notice{ display: none !important;}';
|
54 |
+
wp_add_inline_style('robo-gallery-lising-css', $css_inline);
|
55 |
+
}
|
56 |
+
|
57 |
+
public function custom_header($columns) {
|
58 |
+
return array_merge(
|
59 |
+
$columns,
|
60 |
+
array(
|
61 |
+
'rbs_gallery_views' => __('Views','robo-gallery'),
|
62 |
+
'rbs_gallery' => __('Shortcode' ,'robo-gallery')
|
63 |
+
)
|
64 |
+
);
|
65 |
+
}
|
66 |
+
|
67 |
+
public function custom_columns( $column, $post_id ) {
|
68 |
+
switch ( $column ) {
|
69 |
+
case 'rbs_gallery' :
|
70 |
+
global $post;
|
71 |
+
//$slug = '' ; $slug = $post->post_name;
|
72 |
+
$shortcode = '
|
73 |
+
<input readonly="readonly" size="23" value="[robo-gallery id='.$post_id.']" class="robo-gallery-shortcode" type="text" />';
|
74 |
+
echo $shortcode;
|
75 |
+
break;
|
76 |
+
|
77 |
+
case 'rbs_gallery_views' :
|
78 |
+
global $post;
|
79 |
+
$views = '';
|
80 |
+
$views = (int) get_post_meta( $post->ID, 'gallery_views_count', true);
|
81 |
+
//if(!$views) $views = '-';
|
82 |
+
echo $views;
|
83 |
+
break;
|
84 |
+
}
|
85 |
+
}
|
86 |
+
|
87 |
+
|
88 |
+
public function show_info(){
|
89 |
+
wp_enqueue_style("wp-jquery-ui-dialog");
|
90 |
+
wp_enqueue_script('jquery-ui-dialog');
|
91 |
+
|
92 |
+
wp_enqueue_script('robo-gallery-info', ROBO_GALLERY_URL.'js/admin/info.js', array( 'jquery' ), ROBO_GALLERY_VERSION, true );
|
93 |
+
wp_enqueue_style ('robo-gallery-info', ROBO_GALLERY_URL.'css/admin/info.css', array( ), '' );
|
94 |
+
|
95 |
+
echo '<div id="rbs_showInformation" '
|
96 |
+
.'style="display: none;" '
|
97 |
+
.'data-open="1" '
|
98 |
+
.'data-title="'.__('Get Robo Gallery Pro version', 'robo-gallery').'" '
|
99 |
+
.'data-close="'.__('Close').'" '
|
100 |
+
.'data-info="'.__('Get Pro version', 'robo-gallery').'"'
|
101 |
+
.'>'
|
102 |
+
.__('You can create only 3 galleries. Update to PRO to get unlimited galleries', 'robo-gallery')
|
103 |
+
.'</div>';
|
104 |
+
}
|
105 |
+
}
|
106 |
+
|
107 |
+
new rbsGalleryListing();
|
108 |
+
|
109 |
+
|
110 |
+
/*add_action( 'load-edit.php', function() {
|
111 |
+
add_filter( 'views_edit-'.ROBO_GALLERY_TYPE_POST, 'robo_gallery_listing_tabs' );
|
112 |
+
});
|
113 |
+
|
114 |
+
function robo_gallery_listing_tabs() {
|
115 |
+
echo '
|
116 |
+
<br/>
|
117 |
+
<h2 class="nav-tab-wrapper">
|
118 |
+
<a class="nav-tab" href="admin.php?page=gallery">Gallery</a>
|
119 |
+
<a class="nav-tab nav-tab-active" href="edit.php?post_type=statistics">Statistics</a>
|
120 |
+
<a class="nav-tab" href="edit.php?post_type=backup">Backup</a>
|
121 |
+
</h2><br/>
|
122 |
+
';
|
123 |
+
}*/
|
app/class.php
ADDED
@@ -0,0 +1,30 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Robo Gallery
|
4 |
+
* Version: 2.8.4 - 76726
|
5 |
+
* By Robosoft
|
6 |
+
*
|
7 |
+
* Contact: https://robosoft.co/robogallery/
|
8 |
+
* Created: 2015
|
9 |
+
* Licensed under the GPLv2 license - http://opensource.org/licenses/gpl-2.0.php
|
10 |
+
|
11 |
+
*/
|
12 |
+
|
13 |
+
if ( ! defined( 'ABSPATH' ) ) exit;
|
14 |
+
|
15 |
+
|
16 |
+
class roboGalleryClass{
|
17 |
+
|
18 |
+
public function __construct( ){
|
19 |
+
$this->hooks();
|
20 |
+
$this->ajaxHooks();
|
21 |
+
}
|
22 |
+
|
23 |
+
public function hooks(){
|
24 |
+
add_action( 'init', array($this, 'init') );
|
25 |
+
}
|
26 |
+
|
27 |
+
public function ajaxHooks(){ }
|
28 |
+
|
29 |
+
public function init(){}
|
30 |
+
}
|
app/class.view.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
|
3 |
/*
|
4 |
* Robo Gallery
|
5 |
-
* Version: 2.8.
|
6 |
* By Robosoft
|
7 |
*
|
8 |
* Contact: https://robosoft.co/robogallery/
|
2 |
|
3 |
/*
|
4 |
* Robo Gallery
|
5 |
+
* Version: 2.8.4 - 76726
|
6 |
* By Robosoft
|
7 |
*
|
8 |
* Contact: https://robosoft.co/robogallery/
|
app/extensions/index.html
ADDED
File without changes
|
app/extensions/manager/class.addons.action.php
CHANGED
@@ -1,7 +1,7 @@
|
|
1 |
<?php
|
2 |
/*
|
3 |
* Robo Gallery
|
4 |
-
* Version: 2.8.
|
5 |
* By Robosoft
|
6 |
*
|
7 |
* Contact: https://robosoft.co/robogallery/
|
1 |
<?php
|
2 |
/*
|
3 |
* Robo Gallery
|
4 |
+
* Version: 2.8.4 - 76726
|
5 |
* By Robosoft
|
6 |
*
|
7 |
* Contact: https://robosoft.co/robogallery/
|
app/extensions/manager/class.addons.php
CHANGED
@@ -1,7 +1,7 @@
|
|
1 |
<?php
|
2 |
/*
|
3 |
* Robo Gallery
|
4 |
-
* Version: 2.8.
|
5 |
* By Robosoft
|
6 |
*
|
7 |
* Contact: https://robosoft.co/robogallery/
|
@@ -29,6 +29,8 @@ class rbsGalleryAddons{
|
|
29 |
|
30 |
protected $menuTag='';
|
31 |
|
|
|
|
|
32 |
public $view;
|
33 |
|
34 |
public function __construct( $postType ){
|
@@ -41,6 +43,10 @@ class rbsGalleryAddons{
|
|
41 |
|
42 |
$this->checkDepends();
|
43 |
|
|
|
|
|
|
|
|
|
44 |
$this->title = rbsGalleryBrand::getPluginName();
|
45 |
|
46 |
$this->assetsUri = plugin_dir_url(__FILE__);
|
@@ -50,8 +56,6 @@ class rbsGalleryAddons{
|
|
50 |
$this->tag = "{$this->postType}-file";
|
51 |
|
52 |
$this->view = new rbsGalleryClassView( $this->path.'templates/' );
|
53 |
-
|
54 |
-
$this->addons = $this->getAddons();
|
55 |
|
56 |
$this->addAjaxHooks();
|
57 |
|
@@ -75,6 +79,20 @@ class rbsGalleryAddons{
|
|
75 |
}
|
76 |
|
77 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
78 |
public function showAddons(){
|
79 |
$this->enqueueScripts();
|
80 |
$this->renderAddons();
|
@@ -94,16 +112,19 @@ class rbsGalleryAddons{
|
|
94 |
|
95 |
if ($this->postType !== $screen->post_type) return;
|
96 |
|
|
|
|
|
97 |
wp_enqueue_style(
|
98 |
$this->tag,
|
99 |
$this->assetsUri . 'css/style.css',
|
100 |
array()
|
101 |
);
|
|
|
102 |
wp_enqueue_style('wp-jquery-ui-dialog');
|
103 |
-
|
104 |
wp_enqueue_script('jquery-ui-dialog');
|
105 |
|
106 |
add_thickbox();
|
|
|
107 |
wp_enqueue_script('plugin-install');
|
108 |
|
109 |
wp_enqueue_script(
|
@@ -114,11 +135,8 @@ class rbsGalleryAddons{
|
|
114 |
true
|
115 |
);
|
116 |
|
117 |
-
|
118 |
-
|
119 |
-
$custom_css = " <style>html body div#wpcontent div.fs-notice, .ngg_admin_notice{display: none !important; }</style> ";
|
120 |
-
|
121 |
-
wp_add_inline_style( $this->tag, $custom_css );
|
122 |
|
123 |
wp_localize_script(
|
124 |
$this->tag.'-js',
|
@@ -129,39 +147,68 @@ class rbsGalleryAddons{
|
|
129 |
'ajaxUrl' => admin_url('admin-ajax.php'),
|
130 |
|
131 |
'action' => array(
|
132 |
-
'save' =>
|
133 |
),
|
|
|
|
|
134 |
|
135 |
'labels' => array(
|
136 |
-
'download' => __('Download', '
|
137 |
-
'downloading' => __('Downloading', '
|
138 |
|
139 |
-
'activate' => __('Activate', '
|
140 |
-
'activating' => __('Activating', '
|
141 |
-
'activated' => __('Activated', '
|
142 |
|
143 |
-
'deactivate' => __('Deactivate', '
|
144 |
-
'deactivating' => __('Deactivating', '
|
145 |
-
'deactivated' => __('Deactivated', '
|
146 |
|
147 |
|
148 |
-
'information' => __('Information', '
|
|
|
|
|
|
|
|
|
149 |
|
150 |
-
'
|
151 |
-
'
|
152 |
-
'
|
|
|
153 |
),
|
154 |
)
|
155 |
);
|
156 |
}
|
157 |
|
158 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
159 |
|
160 |
|
161 |
public function renderAddons() {
|
162 |
|
163 |
/*$this->checkPermission();*/
|
164 |
|
|
|
|
|
|
|
165 |
$params=array(
|
166 |
'addons' => '',
|
167 |
'categories' => $this->getCategories(),
|
@@ -225,8 +272,6 @@ class rbsGalleryAddons{
|
|
225 |
'public' => $this->getAddonData($addon, 'public'),
|
226 |
'included' => $this->getAddonData($addon, 'included'),
|
227 |
|
228 |
-
// 'price' => $this->getAddonData($addon, 'price'),
|
229 |
-
|
230 |
'desc' => $this->getAddonData($addon, 'desc'),
|
231 |
|
232 |
'category' => $this->getAddonData($addon, 'category'),
|
@@ -294,7 +339,8 @@ class rbsGalleryAddons{
|
|
294 |
public function activatePlugin( $plugin, $action = 'activate' ){
|
295 |
if(!$plugin ) return false;
|
296 |
$activateCode = $action=='activate' ? 1 : 0;
|
297 |
-
|
|
|
298 |
|
299 |
update_option( ROBO_GALLERY_OPTIONS.'addon_'.$plugin, $activateCode );
|
300 |
return true;
|
@@ -375,51 +421,49 @@ class rbsGalleryAddons{
|
|
375 |
function checkPluginStatus( $plugin ){
|
376 |
|
377 |
$status = array(
|
378 |
-
'download'
|
379 |
-
'active'
|
380 |
-
'message'
|
381 |
-
'error'
|
382 |
);
|
383 |
|
384 |
if( !$plugin ){
|
385 |
$status['error'] = 1;
|
386 |
$status['message'] = 'Error:: input parameters is empty';
|
387 |
-
|
388 |
return $status;
|
389 |
}
|
390 |
|
391 |
-
if(
|
|
|
|
|
|
|
|
|
392 |
|
393 |
-
|
394 |
|
395 |
-
|
396 |
-
|
397 |
-
|
398 |
-
|
399 |
-
|
400 |
-
|
401 |
-
/* for not included */
|
402 |
-
if( isset($item['slug']) && isset($item['file']) ){
|
403 |
|
404 |
-
|
405 |
-
|
406 |
|
407 |
-
|
|
|
408 |
|
409 |
-
|
410 |
|
411 |
-
|
412 |
-
}
|
413 |
|
414 |
-
|
415 |
-
$status['message'] = 'Error:: plugin file is empty';
|
416 |
-
$status['error'] = 1;
|
417 |
}
|
418 |
|
419 |
-
|
420 |
-
|
421 |
-
|
422 |
-
|
423 |
|
424 |
return $status;
|
425 |
}
|
1 |
<?php
|
2 |
/*
|
3 |
* Robo Gallery
|
4 |
+
* Version: 2.8.4 - 76726
|
5 |
* By Robosoft
|
6 |
*
|
7 |
* Contact: https://robosoft.co/robogallery/
|
29 |
|
30 |
protected $menuTag='';
|
31 |
|
32 |
+
protected $pluginConfirm = '';
|
33 |
+
|
34 |
public $view;
|
35 |
|
36 |
public function __construct( $postType ){
|
43 |
|
44 |
$this->checkDepends();
|
45 |
|
46 |
+
$this->addons = $this->getAddons();
|
47 |
+
|
48 |
+
$this->checkRequestVars();
|
49 |
+
|
50 |
$this->title = rbsGalleryBrand::getPluginName();
|
51 |
|
52 |
$this->assetsUri = plugin_dir_url(__FILE__);
|
56 |
$this->tag = "{$this->postType}-file";
|
57 |
|
58 |
$this->view = new rbsGalleryClassView( $this->path.'templates/' );
|
|
|
|
|
59 |
|
60 |
$this->addAjaxHooks();
|
61 |
|
79 |
}
|
80 |
|
81 |
|
82 |
+
public function checkRequestVars(){
|
83 |
+
if(
|
84 |
+
isset($_GET['plugin_confirm']) &&
|
85 |
+
$_GET['plugin_confirm']
|
86 |
+
){
|
87 |
+
$plugin = sanitize_text_field( $_GET['plugin_confirm'] );
|
88 |
+
|
89 |
+
$status = $this->checkPluginStatus( $plugin );
|
90 |
+
|
91 |
+
if( !$status['error'] && !$status['active'] ) $this->pluginConfirm = $plugin;
|
92 |
+
}
|
93 |
+
}
|
94 |
+
|
95 |
+
|
96 |
public function showAddons(){
|
97 |
$this->enqueueScripts();
|
98 |
$this->renderAddons();
|
112 |
|
113 |
if ($this->postType !== $screen->post_type) return;
|
114 |
|
115 |
+
|
116 |
+
|
117 |
wp_enqueue_style(
|
118 |
$this->tag,
|
119 |
$this->assetsUri . 'css/style.css',
|
120 |
array()
|
121 |
);
|
122 |
+
|
123 |
wp_enqueue_style('wp-jquery-ui-dialog');
|
|
|
124 |
wp_enqueue_script('jquery-ui-dialog');
|
125 |
|
126 |
add_thickbox();
|
127 |
+
|
128 |
wp_enqueue_script('plugin-install');
|
129 |
|
130 |
wp_enqueue_script(
|
135 |
true
|
136 |
);
|
137 |
|
138 |
+
/*$custom_css = "html body div#wpcontent div.fs-notice, .ngg_admin_notice{display: none !important; }";
|
139 |
+
wp_add_inline_style( $this->tag, $custom_css );*/
|
|
|
|
|
|
|
140 |
|
141 |
wp_localize_script(
|
142 |
$this->tag.'-js',
|
147 |
'ajaxUrl' => admin_url('admin-ajax.php'),
|
148 |
|
149 |
'action' => array(
|
150 |
+
'save' => '', //$this->actionName
|
151 |
),
|
152 |
+
|
153 |
+
'pluginConfirm' => $this->pluginConfirm ? 1 : 0,
|
154 |
|
155 |
'labels' => array(
|
156 |
+
'download' => __('Download', 'robo-gallery'),
|
157 |
+
'downloading' => __('Downloading', 'robo-gallery'),
|
158 |
|
159 |
+
'activate' => __('Activate', 'robo-gallery'),
|
160 |
+
'activating' => __('Activating', 'robo-gallery'),
|
161 |
+
'activated' => __('Activated', 'robo-gallery'),
|
162 |
|
163 |
+
'deactivate' => __('Deactivate', 'robo-gallery'),
|
164 |
+
'deactivating' => __('Deactivating', 'robo-gallery'),
|
165 |
+
'deactivated' => __('Deactivated', 'robo-gallery'),
|
166 |
|
167 |
|
168 |
+
'information' => __('Information', 'robo-gallery'),
|
169 |
+
|
170 |
+
'installnow' => __('Install Now', 'robo-gallery'),
|
171 |
+
'installing' => __('Installing', 'robo-gallery'),
|
172 |
+
'installed' => __('Installed', 'robo-gallery'),
|
173 |
|
174 |
+
'confirm_title' => __('Confirmation', 'robo-gallery'),
|
175 |
+
'confirm_desc' => __('Please confirm that you wish to install new Add-on:', 'robo-gallery'),
|
176 |
+
'confirm_cancel' => __('Cancel', 'robo-gallery'),
|
177 |
+
'confirm_button' => __('Confirm', 'robo-gallery'),
|
178 |
),
|
179 |
)
|
180 |
);
|
181 |
}
|
182 |
|
183 |
|
184 |
+
public function confirmDialog(){
|
185 |
+
|
186 |
+
$params = array(
|
187 |
+
'title' => '',
|
188 |
+
'slug' => '',
|
189 |
+
);
|
190 |
+
|
191 |
+
if( isset($this->addons[$this->pluginConfirm]) ){
|
192 |
+
|
193 |
+
if( isset($this->addons[$this->pluginConfirm]['title']) ){
|
194 |
+
$params['title'] = $this->addons[$this->pluginConfirm]['title'];
|
195 |
+
}
|
196 |
+
|
197 |
+
if( isset($this->addons[$this->pluginConfirm]['slug']) ){
|
198 |
+
$params['slug'] = $this->addons[$this->pluginConfirm]['slug'];
|
199 |
+
}
|
200 |
+
}
|
201 |
+
echo $this->view->content("confirm", $params);
|
202 |
+
}
|
203 |
|
204 |
|
205 |
public function renderAddons() {
|
206 |
|
207 |
/*$this->checkPermission();*/
|
208 |
|
209 |
+
if($this->pluginConfirm) $this->confirmDialog();
|
210 |
+
|
211 |
+
|
212 |
$params=array(
|
213 |
'addons' => '',
|
214 |
'categories' => $this->getCategories(),
|
272 |
'public' => $this->getAddonData($addon, 'public'),
|
273 |
'included' => $this->getAddonData($addon, 'included'),
|
274 |
|
|
|
|
|
275 |
'desc' => $this->getAddonData($addon, 'desc'),
|
276 |
|
277 |
'category' => $this->getAddonData($addon, 'category'),
|
339 |
public function activatePlugin( $plugin, $action = 'activate' ){
|
340 |
if(!$plugin ) return false;
|
341 |
$activateCode = $action=='activate' ? 1 : 0;
|
342 |
+
|
343 |
+
//echo ROBO_GALLERY_OPTIONS.'addon_'.$plugin;
|
344 |
|
345 |
update_option( ROBO_GALLERY_OPTIONS.'addon_'.$plugin, $activateCode );
|
346 |
return true;
|
421 |
function checkPluginStatus( $plugin ){
|
422 |
|
423 |
$status = array(
|
424 |
+
'download' => 0,
|
425 |
+
'active' => 0,
|
426 |
+
'message' => '',
|
427 |
+
'error' => 0,
|
428 |
);
|
429 |
|
430 |
if( !$plugin ){
|
431 |
$status['error'] = 1;
|
432 |
$status['message'] = 'Error:: input parameters is empty';
|
|
|
433 |
return $status;
|
434 |
}
|
435 |
|
436 |
+
if( !isset( $this->addons[$plugin] ) ){
|
437 |
+
$status['error'] = 1;
|
438 |
+
$status['message'] = 'Error:: plugin not found';
|
439 |
+
return $status;
|
440 |
+
}
|
441 |
|
442 |
+
$item = $this->addons[$plugin];
|
443 |
|
444 |
+
if($item['included']){
|
445 |
+
$status['download'] = 1;
|
446 |
+
$status['active'] = get_option( ROBO_GALLERY_OPTIONS.'addon_'.$plugin, 0 ) ? 1 : 0;
|
447 |
+
return $status;
|
448 |
+
}
|
|
|
|
|
|
|
449 |
|
450 |
+
/* for not included */
|
451 |
+
if( isset($item['slug']) && isset($item['file']) ){
|
452 |
|
453 |
+
$plugin_dir = ABSPATH . 'wp-content/plugins/'.$item['slug'].'/';
|
454 |
+
$plugin_file = ABSPATH . 'wp-content/plugins/'.$item['file'];
|
455 |
|
456 |
+
if ( is_dir($plugin_dir) && file_exists($plugin_file) ){
|
457 |
|
458 |
+
$status['download'] = 1;
|
|
|
459 |
|
460 |
+
if( is_plugin_active( $item['file'] ) ) $status['active'] = 1;
|
|
|
|
|
461 |
}
|
462 |
|
463 |
+
} else {
|
464 |
+
$status['message'] = 'Error:: plugin file is empty';
|
465 |
+
$status['error'] = 1;
|
466 |
+
}
|
467 |
|
468 |
return $status;
|
469 |
}
|
app/extensions/manager/init.php
CHANGED
@@ -1,7 +1,7 @@
|
|
1 |
<?php
|
2 |
/*
|
3 |
* Robo Gallery
|
4 |
-
* Version: 2.8.
|
5 |
* By Robosoft
|
6 |
*
|
7 |
* Contact: https://robosoft.co/robogallery/
|
1 |
<?php
|
2 |
/*
|
3 |
* Robo Gallery
|
4 |
+
* Version: 2.8.4 - 76726
|
5 |
* By Robosoft
|
6 |
*
|
7 |
* Contact: https://robosoft.co/robogallery/
|
app/extensions/manager/js/script.js
CHANGED
@@ -5,24 +5,24 @@
|
|
5 |
}
|
6 |
|
7 |
RBPLUGINMANAGER.showSpinner = function($btn) {
|
8 |
-
|
9 |
var $container = $btn.find('.icon-loading.dashicons-update');
|
10 |
$container.removeClass('icon-loading-hide').addClass('spin');
|
11 |
};
|
12 |
|
13 |
RBPLUGINMANAGER.hideSpinner = function($btn) {
|
14 |
-
|
15 |
var $container = $btn.find('.icon-loading.dashicons-update');
|
16 |
$container.removeClass('spin').addClass('icon-loading-hide');
|
17 |
};
|
18 |
|
19 |
RBPLUGINMANAGER.showError = function($btn) {
|
20 |
-
|
21 |
$btn.parent().next('.download-error').css('display', 'block');
|
22 |
};
|
23 |
|
24 |
RBPLUGINMANAGER.updateButtonLabel = function($btn, label) {
|
25 |
-
|
26 |
$btn.find('span.text').text(label);
|
27 |
};
|
28 |
|
@@ -82,14 +82,14 @@
|
|
82 |
|
83 |
|
84 |
if ($btn.attr('target') == '_blank' || $btn.hasClass('addon-link') ) {
|
85 |
-
|
86 |
return true;
|
87 |
}
|
88 |
|
89 |
e.preventDefault();
|
90 |
|
91 |
if ($btn.is('.disabled')) {
|
92 |
-
|
93 |
return false;
|
94 |
}
|
95 |
|
@@ -108,7 +108,7 @@
|
|
108 |
$btn.addClass('disabled');
|
109 |
RBPLUGINMANAGER.showSpinner($btn);
|
110 |
|
111 |
-
|
112 |
|
113 |
if( $btn.hasClass('addon-activate') ){
|
114 |
|
@@ -140,15 +140,15 @@
|
|
140 |
|
141 |
RBPLUGINMANAGER.updateButtonLabel( $btn, rbsGalleryAddonAttributes.labels.downloading );
|
142 |
|
143 |
-
|
144 |
-
|
145 |
|
146 |
jQuery.ajax({
|
147 |
method: "POST",
|
148 |
url: url,
|
149 |
}).done(function() {
|
150 |
|
151 |
-
|
152 |
|
153 |
jQuery.ajax({ // Check if plugin installed
|
154 |
type: 'POST',
|
@@ -160,14 +160,14 @@
|
|
160 |
},
|
161 |
|
162 |
error: function(){
|
163 |
-
|
164 |
RBPLUGINMANAGER.hideSpinner( $btn );
|
165 |
RBPLUGINMANAGER.showError( $btn );
|
166 |
},
|
167 |
success: function(response){
|
168 |
var pluginStatus = JSON.parse( response );
|
169 |
|
170 |
-
|
171 |
|
172 |
if( pluginStatus.download == 1) {
|
173 |
/* plugin downloaded */
|
@@ -180,7 +180,7 @@
|
|
180 |
}
|
181 |
|
182 |
} else {
|
183 |
-
|
184 |
RBPLUGINMANAGER.hideSpinner( $btn );
|
185 |
RBPLUGINMANAGER.showError( $btn );
|
186 |
}
|
@@ -188,7 +188,7 @@
|
|
188 |
});
|
189 |
})
|
190 |
.fail(function() {
|
191 |
-
|
192 |
RBPLUGINMANAGER.hideSpinner( $btn );
|
193 |
RBPLUGINMANAGER.showError( $btn );
|
194 |
});
|
@@ -202,8 +202,8 @@
|
|
202 |
slug = $btn.data('slug'),
|
203 |
code = $btn.data('code');
|
204 |
|
205 |
-
|
206 |
-
|
207 |
|
208 |
RBPLUGINMANAGER.updateButtonLabel( $btn, rbsGalleryAddonAttributes.labels.activating )
|
209 |
|
@@ -216,7 +216,7 @@
|
|
216 |
'plugin': code
|
217 |
},
|
218 |
}).done(function() {
|
219 |
-
|
220 |
|
221 |
jQuery.ajax({ // Check if plugin installed
|
222 |
type: 'POST',
|
@@ -232,7 +232,7 @@
|
|
232 |
success: function(response){
|
233 |
var pluginStatus = JSON.parse(response);
|
234 |
|
235 |
-
|
236 |
|
237 |
if( pluginStatus.download == 1 && pluginStatus.active==1 ) {
|
238 |
/* plugin active */
|
@@ -257,7 +257,7 @@
|
|
257 |
var slug = $btn.data('slug'),
|
258 |
code = $btn.data('code');
|
259 |
|
260 |
-
|
261 |
|
262 |
RBPLUGINMANAGER.updateButtonLabel( $btn, rbsGalleryAddonAttributes.labels.deactivating )
|
263 |
|
@@ -271,7 +271,7 @@
|
|
271 |
},
|
272 |
}).done(function() {
|
273 |
|
274 |
-
|
275 |
|
276 |
jQuery.ajax({ // Check if plugin installed
|
277 |
type: 'POST',
|
@@ -287,7 +287,7 @@
|
|
287 |
success: function(response){
|
288 |
var pluginStatus = JSON.parse(response);
|
289 |
|
290 |
-
|
291 |
|
292 |
if( pluginStatus.active==0 ) {
|
293 |
/* plugin active */
|
@@ -313,8 +313,8 @@
|
|
313 |
slug = $btn.data('slug'),
|
314 |
code = $btn.data('code');
|
315 |
|
316 |
-
|
317 |
-
|
318 |
|
319 |
RBPLUGINMANAGER.updateButtonLabel( $btn, rbsGalleryAddonAttributes.labels.activating )
|
320 |
|
@@ -322,7 +322,7 @@
|
|
322 |
method: "POST",
|
323 |
url: url,
|
324 |
}).done(function() {
|
325 |
-
|
326 |
|
327 |
jQuery.ajax({ // Check if plugin installed
|
328 |
type: 'POST',
|
@@ -338,7 +338,7 @@
|
|
338 |
success: function(response){
|
339 |
var pluginStatus = JSON.parse(response);
|
340 |
|
341 |
-
|
342 |
|
343 |
if( pluginStatus.download == 1 && pluginStatus.active==1 ) {
|
344 |
/* plugin active */
|
@@ -402,8 +402,47 @@
|
|
402 |
return false;
|
403 |
};
|
404 |
|
405 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
406 |
|
|
|
|
|
407 |
RBPLUGINMANAGER.bindTabs();
|
408 |
RBPLUGINMANAGER.bindActionButtons();
|
409 |
RBPLUGINMANAGER.bindTagLinks();
|
5 |
}
|
6 |
|
7 |
RBPLUGINMANAGER.showSpinner = function($btn) {
|
8 |
+
RBPLUGINMANAGER.toConsole('function: showSpinner');
|
9 |
var $container = $btn.find('.icon-loading.dashicons-update');
|
10 |
$container.removeClass('icon-loading-hide').addClass('spin');
|
11 |
};
|
12 |
|
13 |
RBPLUGINMANAGER.hideSpinner = function($btn) {
|
14 |
+
RBPLUGINMANAGER.toConsole('function: hideSpinner');
|
15 |
var $container = $btn.find('.icon-loading.dashicons-update');
|
16 |
$container.removeClass('spin').addClass('icon-loading-hide');
|
17 |
};
|
18 |
|
19 |
RBPLUGINMANAGER.showError = function($btn) {
|
20 |
+
RBPLUGINMANAGER.toConsole('function: showError');
|
21 |
$btn.parent().next('.download-error').css('display', 'block');
|
22 |
};
|
23 |
|
24 |
RBPLUGINMANAGER.updateButtonLabel = function($btn, label) {
|
25 |
+
RBPLUGINMANAGER.toConsole('function: updateButtonLabel');
|
26 |
$btn.find('span.text').text(label);
|
27 |
};
|
28 |
|
82 |
|
83 |
|
84 |
if ($btn.attr('target') == '_blank' || $btn.hasClass('addon-link') ) {
|
85 |
+
RBPLUGINMANAGER.toConsole('open link');
|
86 |
return true;
|
87 |
}
|
88 |
|
89 |
e.preventDefault();
|
90 |
|
91 |
if ($btn.is('.disabled')) {
|
92 |
+
RBPLUGINMANAGER.toConsole('disabled');
|
93 |
return false;
|
94 |
}
|
95 |
|
108 |
$btn.addClass('disabled');
|
109 |
RBPLUGINMANAGER.showSpinner($btn);
|
110 |
|
111 |
+
RBPLUGINMANAGER.toConsole('without');
|
112 |
|
113 |
if( $btn.hasClass('addon-activate') ){
|
114 |
|
140 |
|
141 |
RBPLUGINMANAGER.updateButtonLabel( $btn, rbsGalleryAddonAttributes.labels.downloading );
|
142 |
|
143 |
+
RBPLUGINMANAGER.toConsole('download slug:'+slug+' code:'+code);
|
144 |
+
RBPLUGINMANAGER.toConsole('Download ' + url);
|
145 |
|
146 |
jQuery.ajax({
|
147 |
method: "POST",
|
148 |
url: url,
|
149 |
}).done(function() {
|
150 |
|
151 |
+
RBPLUGINMANAGER.toConsole('Done download');
|
152 |
|
153 |
jQuery.ajax({ // Check if plugin installed
|
154 |
type: 'POST',
|
160 |
},
|
161 |
|
162 |
error: function(){
|
163 |
+
RBPLUGINMANAGER.toConsole('Error: check unsuccessful');
|
164 |
RBPLUGINMANAGER.hideSpinner( $btn );
|
165 |
RBPLUGINMANAGER.showError( $btn );
|
166 |
},
|
167 |
success: function(response){
|
168 |
var pluginStatus = JSON.parse( response );
|
169 |
|
170 |
+
RBPLUGINMANAGER.toConsole(pluginStatus);
|
171 |
|
172 |
if( pluginStatus.download == 1) {
|
173 |
/* plugin downloaded */
|
180 |
}
|
181 |
|
182 |
} else {
|
183 |
+
RBPLUGINMANAGER.toConsole('Error: download unsuccessful');
|
184 |
RBPLUGINMANAGER.hideSpinner( $btn );
|
185 |
RBPLUGINMANAGER.showError( $btn );
|
186 |
}
|
188 |
});
|
189 |
})
|
190 |
.fail(function() {
|
191 |
+
RBPLUGINMANAGER.toConsole('Error: send request unsuccessful');
|
192 |
RBPLUGINMANAGER.hideSpinner( $btn );
|
193 |
RBPLUGINMANAGER.showError( $btn );
|
194 |
});
|
202 |
slug = $btn.data('slug'),
|
203 |
code = $btn.data('code');
|
204 |
|
205 |
+
RBPLUGINMANAGER.toConsole('Activate Included slug:'+slug+' code:'+code);
|
206 |
+
RBPLUGINMANAGER.toConsole('Activate ' + url);
|
207 |
|
208 |
RBPLUGINMANAGER.updateButtonLabel( $btn, rbsGalleryAddonAttributes.labels.activating )
|
209 |
|
216 |
'plugin': code
|
217 |
},
|
218 |
}).done(function() {
|
219 |
+
RBPLUGINMANAGER.toConsole('Activated');
|
220 |
|
221 |
jQuery.ajax({ // Check if plugin installed
|
222 |
type: 'POST',
|
232 |
success: function(response){
|
233 |
var pluginStatus = JSON.parse(response);
|
234 |
|
235 |
+
RBPLUGINMANAGER.toConsole(pluginStatus);
|
236 |
|
237 |
if( pluginStatus.download == 1 && pluginStatus.active==1 ) {
|
238 |
/* plugin active */
|
257 |
var slug = $btn.data('slug'),
|
258 |
code = $btn.data('code');
|
259 |
|
260 |
+
RBPLUGINMANAGER.toConsole('Deactivate Included slug:'+slug+' code:'+code);
|
261 |
|
262 |
RBPLUGINMANAGER.updateButtonLabel( $btn, rbsGalleryAddonAttributes.labels.deactivating )
|
263 |
|
271 |
},
|
272 |
}).done(function() {
|
273 |
|
274 |
+
RBPLUGINMANAGER.toConsole('Deactivated');
|
275 |
|
276 |
jQuery.ajax({ // Check if plugin installed
|
277 |
type: 'POST',
|
287 |
success: function(response){
|
288 |
var pluginStatus = JSON.parse(response);
|
289 |
|
290 |
+
RBPLUGINMANAGER.toConsole(pluginStatus);
|
291 |
|
292 |
if( pluginStatus.active==0 ) {
|
293 |
/* plugin active */
|
313 |
slug = $btn.data('slug'),
|
314 |
code = $btn.data('code');
|
315 |
|
316 |
+
RBPLUGINMANAGER.toConsole('Activate slug:'+slug+' code:'+code);
|
317 |
+
RBPLUGINMANAGER.toConsole('Activate ' + url);
|
318 |
|
319 |
RBPLUGINMANAGER.updateButtonLabel( $btn, rbsGalleryAddonAttributes.labels.activating )
|
320 |
|
322 |
method: "POST",
|
323 |
url: url,
|
324 |
}).done(function() {
|
325 |
+
RBPLUGINMANAGER.toConsole('Activated');
|
326 |
|
327 |
jQuery.ajax({ // Check if plugin installed
|
328 |
type: 'POST',
|
338 |
success: function(response){
|
339 |
var pluginStatus = JSON.parse(response);
|
340 |
|
341 |
+
RBPLUGINMANAGER.toConsole(pluginStatus);
|
342 |
|
343 |
if( pluginStatus.download == 1 && pluginStatus.active==1 ) {
|
344 |
/* plugin active */
|
402 |
return false;
|
403 |
};
|
404 |
|
405 |
+
RBPLUGINMANAGER.showConfirm = function() {
|
406 |
+
|
407 |
+
RBPLUGINMANAGER.toConsole('function showConfirm');
|
408 |
+
|
409 |
+
var rbsConfirmDialog = $("#rbs-addons-confirm-dialog");
|
410 |
+
|
411 |
+
let slug = rbsConfirmDialog.attr('data-slug');;
|
412 |
+
|
413 |
+
rbsConfirmDialog.dialog({
|
414 |
+
'dialogClass' : 'wp-dialog',
|
415 |
+
'title': rbsGalleryAddonAttributes.labels.confirm_title,
|
416 |
+
'modal' : true,
|
417 |
+
'autoOpen' : true,
|
418 |
+
'width': '450', // overcomes width:'auto' and maxWidth bug
|
419 |
+
'maxWidth': 450,
|
420 |
+
'height': 'auto',
|
421 |
+
'fluid': true,
|
422 |
+
'resizable': false,
|
423 |
+
'responsive': true,
|
424 |
+
'draggable': false,
|
425 |
+
'closeOnEscape' : true,
|
426 |
+
'buttons' : [{
|
427 |
+
'text' : rbsGalleryAddonAttributes.labels.confirm_button,
|
428 |
+
'class' : 'button-primary rbs_close_dialog',
|
429 |
+
'click' : function(){
|
430 |
+
$(this).dialog('close');
|
431 |
+
$('.addon-button[data-slug="'+slug+'"]').click();
|
432 |
+
}
|
433 |
+
},
|
434 |
+
{
|
435 |
+
'text' : rbsGalleryAddonAttributes.labels.confirm_cancel,
|
436 |
+
'class' : 'button button-default rbs_dialog_close',
|
437 |
+
'click' : function() { $(this).dialog('close'); }
|
438 |
+
}],
|
439 |
+
//open: function( event, ui ) {}
|
440 |
+
});
|
441 |
+
window['rbsConfirmDialog'] = rbsConfirmDialog;
|
442 |
+
};
|
443 |
|
444 |
+
$(function() { //wait for ready
|
445 |
+
if(rbsGalleryAddonAttributes.pluginConfirm) RBPLUGINMANAGER.showConfirm();
|
446 |
RBPLUGINMANAGER.bindTabs();
|
447 |
RBPLUGINMANAGER.bindActionButtons();
|
448 |
RBPLUGINMANAGER.bindTagLinks();
|
app/extensions/manager/templates/addon.tpl.php
CHANGED
@@ -101,6 +101,7 @@ if( $commercial && !$status['download'] ) $class=" addon-link ";
|
|
101 |
<div class="addon-desc"><?php _e($desc); ?></div>
|
102 |
|
103 |
</div>
|
|
|
104 |
<div class="download-error" style="display: none;">
|
105 |
<?php echo sprintf( __("Oops ... Something went wrong. Wordpress don't able to download add-on. Please try again later or download it manually from <a class='thickbox open-plugin-details-modal' href='%s'>[here]</a>. In the case if this situation repeat contact our [support team]",'robo-gallery'), $informationUrl ); ?>
|
106 |
</div>
|
101 |
<div class="addon-desc"><?php _e($desc); ?></div>
|
102 |
|
103 |
</div>
|
104 |
+
|
105 |
<div class="download-error" style="display: none;">
|
106 |
<?php echo sprintf( __("Oops ... Something went wrong. Wordpress don't able to download add-on. Please try again later or download it manually from <a class='thickbox open-plugin-details-modal' href='%s'>[here]</a>. In the case if this situation repeat contact our [support team]",'robo-gallery'), $informationUrl ); ?>
|
107 |
</div>
|
app/extensions/manager/templates/confirm.tpl.php
ADDED
@@ -0,0 +1,9 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
?>
|
4 |
+
<div id="rbs-addons-confirm-dialog" style="display: none;" data-slug="<?php echo $slug; ?>">
|
5 |
+
<p>
|
6 |
+
<?php _e('Please confirm that you wish to install new Add-on:','robo-gallery'); ?>
|
7 |
+
<strong><?php echo $title;?></strong>
|
8 |
+
</p>
|
9 |
+
</div>
|
app/index.html
ADDED
File without changes
|
app/views/index.html
ADDED
File without changes
|
cmb2/fields/gallery/cmb-field-gallery.php
CHANGED
@@ -9,13 +9,15 @@ Author URI: http://www.philwylie.co.uk/
|
|
9 |
License: GPLv2+
|
10 |
*/
|
11 |
|
12 |
-
define( '
|
13 |
|
14 |
-
function
|
15 |
-
wp_enqueue_script( '
|
16 |
-
wp_enqueue_style( '
|
17 |
-
|
18 |
|
|
|
|
|
|
|
19 |
|
20 |
/*if ( ! empty( $meta ) ) {
|
21 |
$meta = implode( ',', $meta );
|
@@ -25,18 +27,18 @@ function pw_gallery_field( $field, $meta ) {
|
|
25 |
$meta = ' ';
|
26 |
} else $meta = implode( ',', $meta );
|
27 |
|
28 |
-
echo '<div class="
|
29 |
-
echo ' <input type="hidden" class="
|
30 |
echo ' <button class="btn btn-info btn-lg "><span class="glyphicon glyphicon-picture" aria-hidden="true"></span> ' . ( $field->args( 'button' ) ? $field->args( 'button' ) : 'Manage gallery' ) . ' </button>';
|
31 |
echo '</div>';
|
32 |
|
33 |
$desc = $field->args( 'desc' );
|
34 |
if ( ! empty( $desc ) ) echo '<p class="cmb2-metabox-description">' . $desc . '</p>';
|
35 |
}
|
36 |
-
add_filter( '
|
37 |
|
38 |
|
39 |
-
function
|
40 |
if ( empty( $meta_value ) ) {
|
41 |
$meta_value = '';
|
42 |
} else {
|
9 |
License: GPLv2+
|
10 |
*/
|
11 |
|
12 |
+
define( 'ROBO_GALLERY_IMAGES_FIELD_URL', plugin_dir_url( __FILE__ ) );
|
13 |
|
14 |
+
function robo_gallery_images_field( $field, $meta ) {
|
15 |
+
wp_enqueue_script( 'robo-gallery-images-field', ROBO_GALLERY_IMAGES_FIELD_URL . 'js/script.js', array( 'jquery' ), null );
|
16 |
+
wp_enqueue_style( 'robo-gallery-images-field', ROBO_GALLERY_IMAGES_FIELD_URL . 'css/style.css', array(), '', 'all' );
|
|
|
17 |
|
18 |
+
/* remove extra content from OUR PLUGIN settings section */
|
19 |
+
$css_inline = '#wpbody .fs-notice,#wpbody .fs-sticky,#wpbody .fs-has-title,#wpbody .wd-admin-notice,#wpbody .ngg_admin_notice{ display: none !important;}';
|
20 |
+
wp_add_inline_style('robo-gallery-images-field', $css_inline);
|
21 |
|
22 |
/*if ( ! empty( $meta ) ) {
|
23 |
$meta = implode( ',', $meta );
|
27 |
$meta = ' ';
|
28 |
} else $meta = implode( ',', $meta );
|
29 |
|
30 |
+
echo '<div class="robo-gallery-images-field rbs_block ">';
|
31 |
+
echo ' <input type="hidden" class="robo-gallery-images-field-value" id="' . $field->args( 'id' ) . '" name="' . $field->args( 'id' ) . '" value="' . $meta . '" />';
|
32 |
echo ' <button class="btn btn-info btn-lg "><span class="glyphicon glyphicon-picture" aria-hidden="true"></span> ' . ( $field->args( 'button' ) ? $field->args( 'button' ) : 'Manage gallery' ) . ' </button>';
|
33 |
echo '</div>';
|
34 |
|
35 |
$desc = $field->args( 'desc' );
|
36 |
if ( ! empty( $desc ) ) echo '<p class="cmb2-metabox-description">' . $desc . '</p>';
|
37 |
}
|
38 |
+
add_filter( 'cmb2_render_robo_gallery_images_field', 'robo_gallery_images_field', 10, 2 );
|
39 |
|
40 |
|
41 |
+
function robo_gallery_images_field_sanitise( $meta_value, $field ) {
|
42 |
if ( empty( $meta_value ) ) {
|
43 |
$meta_value = '';
|
44 |
} else {
|
cmb2/fields/gallery/css/style.css
CHANGED
@@ -2,15 +2,15 @@
|
|
2 |
display: none
|
3 |
}
|
4 |
|
5 |
-
.
|
6 |
text-align: center;
|
7 |
}
|
8 |
|
9 |
-
.cmb-type-
|
10 |
text-align: center;
|
11 |
}
|
12 |
|
13 |
-
.cmb-type-
|
14 |
padding: 0 !important;
|
15 |
margin: 20px 0 0 0 !important;
|
16 |
}
|
@@ -25,6 +25,6 @@ table.compat-attachment-fields tr.compat-field-rsg_gallery_effect{
|
|
25 |
display:block !important;
|
26 |
}
|
27 |
|
28 |
-
#side-sortables .cmb-type-
|
29 |
padding-bottom: 5px;
|
30 |
}
|
2 |
display: none
|
3 |
}
|
4 |
|
5 |
+
.robo-gallery-images-field.rbs_block{
|
6 |
text-align: center;
|
7 |
}
|
8 |
|
9 |
+
.cmb-type-robo-gallery-images-field p.cmb2-metabox-description{
|
10 |
text-align: center;
|
11 |
}
|
12 |
|
13 |
+
.cmb-type-robo-gallery-images-field{
|
14 |
padding: 0 !important;
|
15 |
margin: 20px 0 0 0 !important;
|
16 |
}
|
25 |
display:block !important;
|
26 |
}
|
27 |
|
28 |
+
#side-sortables .cmb-type-robo-gallery-images-field .cmb2-metabox-description{
|
29 |
padding-bottom: 5px;
|
30 |
}
|
cmb2/fields/gallery/js/script.js
CHANGED
@@ -1,7 +1,7 @@
|
|
1 |
(function ($) {
|
2 |
-
$('.
|
3 |
var instance = this;
|
4 |
-
var imgIdInput = $('.
|
5 |
$('button', instance).click(function(event){
|
6 |
event.preventDefault();
|
7 |
var idList = imgIdInput.val();
|
1 |
(function ($) {
|
2 |
+
$('.robo-gallery-images-field').each(function() {
|
3 |
var instance = this;
|
4 |
+
var imgIdInput = $('.robo-gallery-images-field-value', instance);
|
5 |
$('button', instance).click(function(event){
|
6 |
event.preventDefault();
|
7 |
var idList = imgIdInput.val();
|
includes/options/rbs_gallery_options_images.php
CHANGED
@@ -35,8 +35,8 @@ $images_group->add_field(array(
|
|
35 |
'desc' => __( 'Click on Manage Images button to open Images Manager where you can upload, edit or delete images from gallery. Also here you can edit settings of every particular image, define alt, links, description text', 'rbs_gallery' ),
|
36 |
'button' => __( 'Manage Images', 'rbs_gallery' ),
|
37 |
'id' => ROBO_GALLERY_PREFIX . 'galleryImages',
|
38 |
-
'type' => '
|
39 |
-
'sanitization_cb' => '
|
40 |
));
|
41 |
|
42 |
|
35 |
'desc' => __( 'Click on Manage Images button to open Images Manager where you can upload, edit or delete images from gallery. Also here you can edit settings of every particular image, define alt, links, description text', 'rbs_gallery' ),
|
36 |
'button' => __( 'Manage Images', 'rbs_gallery' ),
|
37 |
'id' => ROBO_GALLERY_PREFIX . 'galleryImages',
|
38 |
+
'type' => 'robo_gallery_images_field',
|
39 |
+
'sanitization_cb' => 'robo_gallery_images_field_sanitise'
|
40 |
));
|
41 |
|
42 |
|
includes/rbs_gallery_init.php
CHANGED
@@ -41,13 +41,17 @@ if( is_admin() ){
|
|
41 |
rbs_gallery_include( array( 'rbs_gallery_config.php', 'rbs_gallery_button.php', 'rbs_gallery_widget.php'), ROBO_GALLERY_INCLUDES_PATH );
|
42 |
|
43 |
if(!function_exists('rbs_gallery_is_edit_page')){
|
|
|
44 |
function rbs_gallery_is_edit_page($new_edit = null){
|
45 |
global $pagenow;
|
46 |
-
|
|
|
|
|
|
|
47 |
if($new_edit == "list") return in_array( $pagenow, array( 'edit.php', ) );
|
48 |
elseif($new_edit == "edit") return in_array( $pagenow, array( 'post.php' ) );
|
49 |
elseif($new_edit == "new") return in_array( $pagenow, array( 'post-new.php' ) );
|
50 |
-
else
|
51 |
}
|
52 |
}
|
53 |
|
@@ -78,7 +82,7 @@ function create_post_type_robo_gallery() {
|
|
78 |
'labels' => array(
|
79 |
'name' => 'Robo Gallery',
|
80 |
'singular_name' => __( 'Robo Gallery', 'robo-gallery' ),
|
81 |
-
'all_items' => __( 'Galleries
|
82 |
'add_new' => __( 'Add Gallery', 'robo-gallery' ),
|
83 |
'add_new_item' => __( 'Add Gallery', 'robo-gallery' ),
|
84 |
'edit_item' => __( 'Edit Gallery', 'robo-gallery' ),
|
@@ -104,7 +108,7 @@ if(!function_exists('rbs_gallery_main_init')){
|
|
104 |
function rbs_gallery_main_init() {
|
105 |
|
106 |
if( rbs_gallery_get_current_post_type() == ROBO_GALLERY_TYPE_POST && rbs_gallery_is_edit_page('list') ){
|
107 |
-
rbs_gallery_include('rbs_gallery_list.php', ROBO_GALLERY_INCLUDES_PATH);
|
108 |
}
|
109 |
|
110 |
if( rbs_gallery_get_current_post_type() == ROBO_GALLERY_TYPE_POST && !ROBO_GALLERY_PRO ){
|
41 |
rbs_gallery_include( array( 'rbs_gallery_config.php', 'rbs_gallery_button.php', 'rbs_gallery_widget.php'), ROBO_GALLERY_INCLUDES_PATH );
|
42 |
|
43 |
if(!function_exists('rbs_gallery_is_edit_page')){
|
44 |
+
|
45 |
function rbs_gallery_is_edit_page($new_edit = null){
|
46 |
global $pagenow;
|
47 |
+
|
48 |
+
if( !is_admin() ) return false;
|
49 |
+
if( defined('DOING_AJAX') && DOING_AJAX ) return false;
|
50 |
+
|
51 |
if($new_edit == "list") return in_array( $pagenow, array( 'edit.php', ) );
|
52 |
elseif($new_edit == "edit") return in_array( $pagenow, array( 'post.php' ) );
|
53 |
elseif($new_edit == "new") return in_array( $pagenow, array( 'post-new.php' ) );
|
54 |
+
else return in_array( $pagenow, array( 'post.php', 'post-new.php', 'edit.php' ) );
|
55 |
}
|
56 |
}
|
57 |
|
82 |
'labels' => array(
|
83 |
'name' => 'Robo Gallery',
|
84 |
'singular_name' => __( 'Robo Gallery', 'robo-gallery' ),
|
85 |
+
'all_items' => __( 'Manage Galleries', 'robo-gallery' ),
|
86 |
'add_new' => __( 'Add Gallery', 'robo-gallery' ),
|
87 |
'add_new_item' => __( 'Add Gallery', 'robo-gallery' ),
|
88 |
'edit_item' => __( 'Edit Gallery', 'robo-gallery' ),
|
108 |
function rbs_gallery_main_init() {
|
109 |
|
110 |
if( rbs_gallery_get_current_post_type() == ROBO_GALLERY_TYPE_POST && rbs_gallery_is_edit_page('list') ){
|
111 |
+
//rbs_gallery_include('rbs_gallery_list.php', ROBO_GALLERY_INCLUDES_PATH);
|
112 |
}
|
113 |
|
114 |
if( rbs_gallery_get_current_post_type() == ROBO_GALLERY_TYPE_POST && !ROBO_GALLERY_PRO ){
|
includes/rbs_gallery_list.php
CHANGED
@@ -14,27 +14,56 @@
|
|
14 |
|
15 |
if ( ! defined( 'ABSPATH' ) ) exit;
|
16 |
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
38 |
}
|
39 |
|
40 |
|
@@ -76,6 +105,22 @@ if(!function_exists('add_rbs_table_columns')){
|
|
76 |
|
77 |
|
78 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
79 |
if(!function_exists('rbs_gallery_robogalleryList')){
|
80 |
function rbs_gallery_robogalleryList (){
|
81 |
wp_enqueue_script('robo-gallery-lising-js', ROBO_GALLERY_URL.'js/admin/listing.js', array( 'jquery' ), ROBO_GALLERY_VERSION, true );
|
14 |
|
15 |
if ( ! defined( 'ABSPATH' ) ) exit;
|
16 |
|
17 |
+
|
18 |
+
class rbsGalleryListing{
|
19 |
+
|
20 |
+
protected $postType;
|
21 |
+
|
22 |
+
protected $title;
|
23 |
+
|
24 |
+
public $view;
|
25 |
+
|
26 |
+
/* ============== */
|
27 |
+
public function __construct( ){
|
28 |
+
$this->postType = ROBO_GALLERY_TYPE_POST;
|
29 |
+
|
30 |
+
$this->view = new rbsGalleryClassView( $this->path.'templates/' );
|
31 |
+
|
32 |
+
$this->addAjaxHooks();
|
33 |
+
|
34 |
+
$this->hooks();
|
35 |
+
|
36 |
+
}
|
37 |
+
|
38 |
+
protected function hooks(){
|
39 |
+
add_action( 'init', array($this, 'init') );
|
40 |
+
|
41 |
+
if( isset($_GET['showproinfo']) && $_GET['showproinfo'] && !ROBO_GALLERY_PRO ){
|
42 |
+
add_action( 'in_admin_header', array($this, 'show_information') );
|
43 |
+
}
|
44 |
+
}
|
45 |
+
|
46 |
+
public function init(){
|
47 |
+
|
48 |
+
}
|
49 |
+
|
50 |
+
public function show_information(){
|
51 |
+
wp_enqueue_style("wp-jquery-ui-dialog");
|
52 |
+
wp_enqueue_script('jquery-ui-dialog');
|
53 |
+
|
54 |
+
wp_enqueue_script('robo-gallery-info', ROBO_GALLERY_URL.'js/admin/info.js', array( 'jquery' ), ROBO_GALLERY_VERSION, true );
|
55 |
+
wp_enqueue_style ('robo-gallery-info', ROBO_GALLERY_URL.'css/admin/info.css', array( ), '' );
|
56 |
+
|
57 |
+
echo '<div id="rbs_showInformation" '
|
58 |
+
.'style="display: none;" '
|
59 |
+
.'data-open="1" '
|
60 |
+
.'data-title="'.__('Get Robo Gallery Pro version', 'robo-gallery').'" '
|
61 |
+
.'data-close="'.__('Close').'" '
|
62 |
+
.'data-info="'.__('Get Pro version', 'robo-gallery').'"'
|
63 |
+
.'>'
|
64 |
+
.__('You can create only 3 galleries. Update to PRO to get unlimited galleries', 'robo-gallery')
|
65 |
+
.'</div>';
|
66 |
+
}
|
67 |
}
|
68 |
|
69 |
|
105 |
|
106 |
|
107 |
|
108 |
+
/*add_action( 'load-edit.php', function() {
|
109 |
+
add_filter( 'views_edit-'.ROBO_GALLERY_TYPE_POST, 'robo_gallery_listing_tabs' ); // talk is my custom post type
|
110 |
+
});
|
111 |
+
|
112 |
+
# echo the tabs
|
113 |
+
function robo_gallery_listing_tabs() {
|
114 |
+
echo '
|
115 |
+
<h2 class="nav-tab-wrapper">
|
116 |
+
<a class="nav-tab" href="admin.php?page=gallery">Gallery</a>
|
117 |
+
<a class="nav-tab nav-tab-active" href="edit.php?post_type=statistics">Statistics</a>
|
118 |
+
<a class="nav-tab" href="edit.php?post_type=backup">Backup</a>
|
119 |
+
</h2>
|
120 |
+
';
|
121 |
+
}*/
|
122 |
+
|
123 |
+
|
124 |
if(!function_exists('rbs_gallery_robogalleryList')){
|
125 |
function rbs_gallery_robogalleryList (){
|
126 |
wp_enqueue_script('robo-gallery-lising-js', ROBO_GALLERY_URL.'js/admin/listing.js', array( 'jquery' ), ROBO_GALLERY_VERSION, true );
|
includes/rbs_gallery_widget.php
CHANGED
@@ -24,46 +24,118 @@ class rbs_widget extends WP_Widget {
|
|
24 |
);
|
25 |
}
|
26 |
|
27 |
-
public function
|
28 |
-
$title = apply_filters( 'widget_title', $instance['title'] );
|
29 |
-
$galleryId = $instance['galleryId'];
|
30 |
|
31 |
-
echo $args['before_widget'];
|
32 |
-
if( ! empty( $title ) ) echo $args['before_title'] . $title . $args['after_title'];
|
33 |
-
|
34 |
-
if( $galleryId == -99 ){
|
35 |
|
36 |
-
|
37 |
-
'numberposts' => 1,
|
38 |
-
'orderby' => 'date',
|
39 |
-
'order' => 'DESC',
|
40 |
'post_type' => ROBO_GALLERY_TYPE_POST,
|
41 |
'post_status' => 'publish',
|
42 |
-
'
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
43 |
);
|
|
|
44 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
45 |
$posts_array = get_posts( $gallery_params );
|
46 |
|
47 |
if( isset($posts_array[0]) && isset($posts_array[0]->ID) ){
|
48 |
$galleryId = $posts_array[0]->ID;
|
49 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
50 |
}
|
51 |
|
52 |
-
if( function_exists( 'rbs_pro_widget' ) ){
|
53 |
rbs_pro_widget($galleryId);
|
54 |
-
}
|
55 |
-
|
56 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
57 |
|
58 |
echo $args['after_widget'];
|
59 |
}
|
60 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
61 |
|
62 |
public function form( $instance ) {
|
63 |
if ( isset( $instance[ 'title' ] ) ) {
|
64 |
$title = $instance[ 'title' ];
|
65 |
} else {
|
66 |
-
$title = __( '
|
67 |
}
|
68 |
|
69 |
if ( isset( $instance[ 'galleryId' ] ) ) {
|
@@ -72,24 +144,22 @@ class rbs_widget extends WP_Widget {
|
|
72 |
else {
|
73 |
$galleryId = 0;
|
74 |
}
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
?>
|
89 |
<?php
|
90 |
-
|
91 |
-
|
92 |
-
<?php } ?>
|
93 |
<p>
|
94 |
<label for="<?php echo $this->get_field_id( 'title' ); ?>">
|
95 |
<?php _e( 'Title' ); ?>:
|
@@ -98,28 +168,53 @@ class rbs_widget extends WP_Widget {
|
|
98 |
</p>
|
99 |
<p>
|
100 |
<label for="<?php echo $this->get_field_id( 'galleryId' ); ?>"><?php _e( 'Gallery:' ); ?></label>
|
101 |
-
<?php
|
|
|
|
|
102 |
</p>
|
103 |
|
104 |
-
<p
|
|
|
105 |
<a href="edit.php?post_type=robo_gallery_table">
|
106 |
<?php _e( 'Robo Gallery plugin','robo-gallery');?>
|
107 |
</a>
|
108 |
</p>
|
109 |
-
<script type="text/javascript">
|
|
|
|
|
|
|
|
|
|
|
110 |
<?php
|
111 |
}
|
112 |
|
113 |
public function update( $new_instance, $old_instance ) {
|
114 |
$instance = array();
|
115 |
-
$instance['title'] = ( !
|
116 |
$instance['galleryId'] = ( ! empty( $new_instance['galleryId'] ) ) ? (int) $new_instance['galleryId'] : 0;
|
117 |
return $instance;
|
118 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
119 |
}
|
120 |
|
121 |
function rbs_load_widget(){ register_widget( 'rbs_widget' ); }
|
122 |
-
/*
|
123 |
-
add_action( 'robo_gallery_widgets_init', 'rbs_load_widget' );*/
|
124 |
|
125 |
add_action( 'widgets_init', 'rbs_load_widget' );
|
24 |
);
|
25 |
}
|
26 |
|
27 |
+
public function getIdGallery( $galleryId ){
|
|
|
|
|
28 |
|
|
|
|
|
|
|
|
|
29 |
|
30 |
+
$gallery_params = array(
|
31 |
+
'numberposts' => 1,
|
|
|
|
|
32 |
'post_type' => ROBO_GALLERY_TYPE_POST,
|
33 |
'post_status' => 'publish',
|
34 |
+
/* 'hierarchical' => 1,
|
35 |
+
'exclude' => '',
|
36 |
+
'include' => '',
|
37 |
+
'authors' => '',
|
38 |
+
'child_of' => 0,
|
39 |
+
'exclude_tree' => '',
|
40 |
+
'number' => '',
|
41 |
+
'offset' => 0,
|
42 |
+
'category' => 0,
|
43 |
+
'suppress_filters' => true */
|
44 |
);
|
45 |
+
|
46 |
|
47 |
+
switch ($galleryId) {
|
48 |
+
case -99:
|
49 |
+
$gallery_params['orderby'] = 'date';
|
50 |
+
$gallery_params['order'] = 'DESC';
|
51 |
+
break;
|
52 |
+
case -98:
|
53 |
+
$gallery_params['orderby'] = 'rand';
|
54 |
+
break;
|
55 |
+
case -97:
|
56 |
+
$gallery_params['orderby'] = 'meta_value_num';
|
57 |
+
$gallery_params['meta_key'] = 'gallery_views_count';
|
58 |
+
$gallery_params['order'] = 'DESC';
|
59 |
+
break;
|
60 |
+
|
61 |
+
}
|
62 |
$posts_array = get_posts( $gallery_params );
|
63 |
|
64 |
if( isset($posts_array[0]) && isset($posts_array[0]->ID) ){
|
65 |
$galleryId = $posts_array[0]->ID;
|
66 |
}
|
67 |
+
|
68 |
+
return $galleryId;
|
69 |
+
}
|
70 |
+
|
71 |
+
public function widget( $args, $instance ) {
|
72 |
+
$title = apply_filters( 'widget_title', $instance['title'] );
|
73 |
+
|
74 |
+
$galleryId = $instance['galleryId'];
|
75 |
+
|
76 |
+
echo $args['before_widget'];
|
77 |
+
|
78 |
+
if( ! empty( $title ) ) echo $args['before_title'] . $title . $args['after_title'];
|
79 |
+
|
80 |
+
if( $galleryId == -99 || $galleryId == -98 || $galleryId == -97 ){
|
81 |
+
$galleryId = $this->getIdGallery($galleryId);
|
82 |
}
|
83 |
|
84 |
+
if( ROBO_GALLERY_PRO && function_exists( 'rbs_pro_widget' ) ){
|
85 |
rbs_pro_widget($galleryId);
|
86 |
+
} elseif( class_exists('rbsImageWidgetGallery') ){
|
87 |
+
rbsImageWidgetGallery::show($galleryId);
|
88 |
+
} else {
|
89 |
+
echo '<p>'
|
90 |
+
.__( 'Robo Gallery', 'robo-gallery')
|
91 |
+
.' :: '
|
92 |
+
.__('Please install Image Widget to be able to publish it here','robo-gallery')
|
93 |
+
.'</p>';
|
94 |
+
}
|
95 |
|
96 |
echo $args['after_widget'];
|
97 |
}
|
98 |
|
99 |
+
public function galleryList($selected){
|
100 |
+
$args = array(
|
101 |
+
'sort_order' => 'ASC',
|
102 |
+
'sort_column' => 'post_title',
|
103 |
+
'hierarchical' => 0,
|
104 |
+
'exclude' => '',
|
105 |
+
'include' => '',
|
106 |
+
'meta_key' => '',
|
107 |
+
'meta_value' => '',
|
108 |
+
'authors' => '',
|
109 |
+
'child_of' => 0,
|
110 |
+
'selected' => $selected,
|
111 |
+
/*'parent' => -1,*/
|
112 |
+
'exclude_tree' => '',
|
113 |
+
'number' => '',
|
114 |
+
'offset' => 0,
|
115 |
+
'post_type' => ROBO_GALLERY_TYPE_POST,
|
116 |
+
'post_status' => 'publish',
|
117 |
+
);
|
118 |
+
?>
|
119 |
+
<select id="<?php echo $this->get_field_id( 'galleryId' );?>" name="<?php echo $this->get_field_name( 'galleryId' );?>" >
|
120 |
+
<option value="-99" <?php selected( $selected, -99 ); ?>><?php echo esc_attr( '- '.__( 'Latest Gallery', 'robo-gallery' ) ); ?></option>
|
121 |
+
<option value="-98" <?php selected( $selected, -98 ); ?>><?php echo esc_attr( '- '.__( 'Random Gallery', 'robo-gallery' ) ); ?></option>
|
122 |
+
<option value="-97" <?php selected( $selected, -97 ); ?>><?php echo esc_attr( '- '.__( 'Most Viewed Gallery', 'robo-gallery' ) ); ?></option>
|
123 |
+
<option value="-100" disabled>-----------------------------</option>
|
124 |
+
<?php
|
125 |
+
$pages = get_pages($args);
|
126 |
+
echo walk_page_dropdown_tree( $pages, 0, $args );
|
127 |
+
?>
|
128 |
+
</select>
|
129 |
+
<?php
|
130 |
+
}
|
131 |
+
|
132 |
+
|
133 |
|
134 |
public function form( $instance ) {
|
135 |
if ( isset( $instance[ 'title' ] ) ) {
|
136 |
$title = $instance[ 'title' ];
|
137 |
} else {
|
138 |
+
$title = __( 'Gallery Widget', 'robo-gallery' );
|
139 |
}
|
140 |
|
141 |
if ( isset( $instance[ 'galleryId' ] ) ) {
|
144 |
else {
|
145 |
$galleryId = 0;
|
146 |
}
|
147 |
+
|
148 |
+
|
149 |
+
|
150 |
+
if( !class_exists('rbsImageWidgetGallery') && !ROBO_GALLERY_PRO){
|
151 |
+
?>
|
152 |
+
<p>
|
153 |
+
<?php _e('You need to install new version of the widget to make it work. Install free or paid version of the Image Widget.', 'robo-gallery'); ?>
|
154 |
+
</p>
|
155 |
+
<p style="text-align: center; margin-bottom: 0;">
|
156 |
+
<a class="button" href="<?php echo esc_url( self_admin_url( 'edit.php?post_type='.ROBO_GALLERY_TYPE_POST.'&page='.ROBO_GALLERY_TYPE_POST.'-addons&plugin_confirm=widget') ); ?>" style="margin-bottom: 12px;"><?php _e('Install Free Version', 'robo-gallery'); ?></a>
|
157 |
+
|
158 |
+
<a class="button button-primary" href="https://robosoft.co/go.php?product=gallery&task=gopro" target="_blank"> <?php _e( 'Install Paid Version','robo-gallery'); ?></a>
|
159 |
+
</p>
|
|
|
160 |
<?php
|
161 |
+
}
|
162 |
+
?>
|
|
|
163 |
<p>
|
164 |
<label for="<?php echo $this->get_field_id( 'title' ); ?>">
|
165 |
<?php _e( 'Title' ); ?>:
|
168 |
</p>
|
169 |
<p>
|
170 |
<label for="<?php echo $this->get_field_id( 'galleryId' ); ?>"><?php _e( 'Gallery:' ); ?></label>
|
171 |
+
<?php
|
172 |
+
$this->galleryList($galleryId);
|
173 |
+
?>
|
174 |
</p>
|
175 |
|
176 |
+
<p>
|
177 |
+
<?php _e( 'Configure it in','robo-gallery');?>
|
178 |
<a href="edit.php?post_type=robo_gallery_table">
|
179 |
<?php _e( 'Robo Gallery plugin','robo-gallery');?>
|
180 |
</a>
|
181 |
</p>
|
182 |
+
<script type="text/javascript">
|
183 |
+
|
184 |
+
jQuery(document).ready( function($) {
|
185 |
+
//jQuery('#<?php echo $this->get_field_id( 'galleryId' ); ?>').addClass('widefat');
|
186 |
+
});
|
187 |
+
</script>
|
188 |
<?php
|
189 |
}
|
190 |
|
191 |
public function update( $new_instance, $old_instance ) {
|
192 |
$instance = array();
|
193 |
+
$instance['title'] = ( isset($new_instance['title']) && !empty( $new_instance['title'] ) ) ? sanitize_text_field( $new_instance['title'] ) : '';
|
194 |
$instance['galleryId'] = ( ! empty( $new_instance['galleryId'] ) ) ? (int) $new_instance['galleryId'] : 0;
|
195 |
return $instance;
|
196 |
}
|
197 |
+
|
198 |
+
function prevDropdownPages(){
|
199 |
+
$args = array(
|
200 |
+
'child_of' => 0,
|
201 |
+
'sort_order' => 'ASC',
|
202 |
+
'sort_column' => 'post_title',
|
203 |
+
'hierarchical' => 1,
|
204 |
+
'selected' => $galleryId,
|
205 |
+
'name' => $this->get_field_name( 'galleryId' ),
|
206 |
+
'id' => $this->get_field_id( 'galleryId' ),
|
207 |
+
'echo' => 1,
|
208 |
+
'post_type' => ROBO_GALLERY_TYPE_POST,
|
209 |
+
'show_option_none' => 'Latest Gallery',
|
210 |
+
'option_none_value' => '-99',
|
211 |
+
);
|
212 |
+
|
213 |
+
wp_dropdown_pages( $args );
|
214 |
+
}
|
215 |
+
|
216 |
}
|
217 |
|
218 |
function rbs_load_widget(){ register_widget( 'rbs_widget' ); }
|
|
|
|
|
219 |
|
220 |
add_action( 'widgets_init', 'rbs_load_widget' );
|
readme.txt
CHANGED
@@ -4,7 +4,7 @@ Donate link: https://robosoft.co/robogallery
|
|
4 |
Tags: gallery, photo gallery, image gallery, wordpress gallery plugin, responsive gallery
|
5 |
Requires at least: 3.3
|
6 |
Tested up to: 4.9
|
7 |
-
Stable tag: 2.8.
|
8 |
License: GPLv2 or later
|
9 |
License URI: https://www.gnu.org/licenses/gpl-3.0.html
|
10 |
|
@@ -14,7 +14,7 @@ Robo Gallery is advanced responsive photo gallery plugin. Flexible gallery image
|
|
14 |
|
15 |
#### [Gallery Most Easy and Powerful plugin to create attractive image section on your WordPress website.](https://robosoft.co/robogallery/#overview)
|
16 |
|
17 |
-
#### Gallery on your website it's really attractive and very important part of your pages. If you looking for fast, easy gallery with simple and very beautiful, highly customizable design [here is it...](https://robosoft.co/robogallery/#overview) Gallery where even newbie in WordPress will be able to create your first gallery in few minutes and at the same time Wordpress professionals get advanced tools and freedom of creativity. Just download this
|
18 |
|
19 |
= Install and create your first WordPress gallery plugin in few minutes =
|
20 |
|
@@ -39,55 +39,55 @@ Robo Gallery is advanced responsive photo gallery plugin. Flexible gallery image
|
|
39 |
|
40 |
* **Fully responsive gallery and Mobile features** - advanced responsive gallery. Plugin implemented with advanced settings for different devices screen size.
|
41 |
* **Fade effects** - one of the gallery hover animation it's classic fade effect.
|
42 |
-
* **Batch images upload** -
|
43 |
* **Auto-resizing for thumbnails and images** - gallery media manager allow you make additional customization of the gallery images, like: rotation, flip, crop, manual resize.
|
44 |
* **Customizable 15 hover effects** - all gallery hover effects working in cooperation with interface configuration options. You can easily change style and colors of the hover animation elements.
|
45 |
-
* **Implemented to avoid AJAX libs conflicts** -
|
46 |
* **Polaroid gallery** - with our plugin you can create Polaroid gallery just with few clicks.
|
47 |
* **Advanced Polaroid Styles** - Polaroid gallery styles implemented with advanced functionality. Implemented left, right and centre Gallery images titles alignment. Polaroid gallery description panel of the gallery images background color selector. Polaroid gallery description panel text source.
|
48 |
-
* **Build in colors selector** -
|
49 |
* **Social sharing** - gallery lightbox support social sharing in twitter, facebook, google plus and pinterest.
|
50 |
-
* **Build in borders and shadows settings** -
|
51 |
-
* **Font settings** -
|
52 |
-
* **Different resolutions** -
|
53 |
-
* **Implemented in native WordPress style using native classes** -
|
54 |
-
* **Multi Categories** -
|
55 |
-
* **Classic gallery layout** - layout
|
56 |
-
* **Advanced pagination function** - pagination function
|
57 |
-
* **Work in IE, Firefox, Safari, Opera, Chrome** -
|
58 |
-
* **Lazy loading option** -
|
59 |
-
* **Advanced cache options** -
|
60 |
* **Overlay effects** - all hover effects of the gallery thumbnails are highly customizable and have full set of options
|
61 |
-
* **Backend text settings preview** - all gallery images titles, captions, descriptions are highly customizable also we have life preview of the changes in
|
62 |
* **Resizing crop function** - in gallery media managed you'll find great set of very useful features for example gallery images crop, and manual resizing
|
63 |
-
* **Optional mobile touch support** - our
|
64 |
-
* **Custom ordering of the images** - ordering for all gallery images
|
65 |
* **Ability to insert gallery to the WordPress post, page, widget** - every gallery could be insert in to post, page or widget with build in shortcode tag or using wizard button - shortcode generator in post or page editor
|
66 |
-
* **Gallery lightbox social buttons** - in
|
67 |
* **Gallery lightbox background color** - in gallery lightbox settings you can change color of the background with comfortable color selector
|
68 |
* **Lightbox background transparency** - in lightbox settings you can change transparency of the background with comfortable color selector
|
69 |
* **Lightbox font color** - in lightbox settings you can change color of the font with comfortable color selector
|
70 |
* **Lightbox font transparency** - in lightbox settings you can change transparency of the font with comfortable color selector
|
71 |
-
* **Advanced Compatibility** -
|
72 |
* **Advanced Social Sharing** - advanced social sharing functionality in lightbox. Implemented deep linking functionality for the gallery images social sharing services Facebook, Twitter, Pinterest, Google+, VK
|
73 |
-
* **Click Thumbnails** - advanced click functionality. You can use click on buttons or on the gallery thumbnails to enlarge image or open image link. With new functionality you can combine absolutely different features of the
|
74 |
* **Gallery Alignment** - alignment of the photo gallery in post or page depend of your needs. You don't need to use HTML tags or some CSS tricks this function gonna help you to align your images gallery the way you need. Possible to select one from implemented alignment modes: left, right, center for images gallery alignment inside post or page content.
|
75 |
-
* **Gallery Padding** - new padding options. Define custom values in pixels for padding
|
76 |
* **Post Generator** - new function for the automatically post creation with gallery tag inside it. Advanced post manager implemented with additional functions for customization and management all your gallery posts in one place.
|
77 |
-
* **Description Panel** - new
|
78 |
* **Swipe in Lightbox** - gallery lightbox support swipe effect on multiply mobile devices. Swipe properly work in lightbox for all gallery images. Tested for Android and iOS.
|
79 |
-
* **Advanced Link Button Design** - front end interface have link button. This button provide linking functionality on every
|
80 |
This interface gallery button have wide range of the front end interface customization options. You can easily change this button color, border and icon.
|
81 |
* **Hover Description Template** - every gallery image contain description field. In additional parameters of the image hover you can define some HTML or tags or build-in tags for customization of the image description.
|
82 |
-
* **Gallery Plugin Compatibility Settings** - in
|
83 |
-
* **Gallery Admin Interface Modes** - in
|
84 |
* **Video Gallery Links** - in media manager every image have separate option for video link. Video Gallery links could be specified to to the youtube or vimeo.
|
85 |
-
* **Images Custom Ratio** - in
|
86 |
-
* **Thumbnails Fade Effect** -
|
87 |
-
* **Advanced Load more function** -
|
88 |
-
* **SEO code optimization** -
|
89 |
* **Gallery Template** - in our gallery we have advanced templating engine for images description. Every hover text of gallery image could be edit and customized with built-in templating options.
|
90 |
-
* **Gallery Cache** - incredible new super cache option make your
|
91 |
|
92 |
|
93 |
= Gallery Pro Key Features =
|
@@ -95,16 +95,16 @@ This interface gallery button have wide range of the front end interface customi
|
|
95 |
* **Tags for gallery images** - every gallery image contain description field. In additional parameters of the image hover you can define some HTML or tags or build-in tags for customization of the image description.
|
96 |
* **Grid layout** - in plugin implemented not only classic gallery layout, but also grid layout for the modern style with different size of the gallery thumbnails.
|
97 |
* **Support Videos** - every image have option where possible to define video link for every particular picture
|
98 |
-
* **Smart Links** -
|
99 |
-
* **Hover layout template** -
|
100 |
-
* **Customizable Grid** - every gallery image have additional options for customization of the layout
|
101 |
* **Customizable hover icons** - all icons of the gallery buttons fully customizable and every icon could be easily changed with build in icons wizard
|
102 |
-
* **Ability to insert gallery to the Wordpress widget** - every
|
103 |
* **Clone gallery** - if you have hundreds of galleries on the website this feature is really useful for you! Clone settings of another gallery to apply it to another galleries. So you can copy styles of the source gallery to as much galleries as you need just by one click.
|
104 |
* **Custom Thumbnails Shadows** - shadow it's very stylish element of the thumbnail images on the front end. You can make your gallery looks absolutely different with different styled shadow.
|
105 |
-
* **Gallery Statistics** - every item have very useful and simple statistics functionality. You can easily check every photos views. In
|
106 |
-
* **Gallery Backup** -
|
107 |
-
* **Multisite Support** -
|
108 |
* **Drag and Drop Categories Gallery Manager** - in gallery implemented advanced categories gallery manager with drag and drop functionality. Categories gallery manager with simple and intuitive interface.
|
109 |
|
110 |
|
@@ -123,23 +123,23 @@ You don't need do any additional configurations or manual code changes. You can
|
|
123 |
|
124 |
= How to upload images to the gallery? =
|
125 |
|
126 |
-
When you create new gallery or open already existent item for edit on the right side of the edit gallery section you'll see images manager button. When you open images manager you'll be able there edit all media resources settings. Upload, edit or delete. In
|
127 |
|
128 |
-
= How to change quality of the
|
129 |
|
130 |
-
Quality of the
|
131 |
|
132 |
= Where it's possible to define vertical and horizontal paddings? =
|
133 |
|
134 |
In gallery settings you can define horizontal and vertical paddings between thumbnails
|
135 |
|
136 |
-
= Do you have some limit for images size
|
137 |
|
138 |
No, we don't have any limits for image size.
|
139 |
|
140 |
= How I can create custom (grid) layout of the thumbnails? =
|
141 |
|
142 |
-
In our
|
143 |
|
144 |
= Is it possible to insert video as gallery link? =
|
145 |
|
@@ -147,19 +147,19 @@ Yes. When you open media manager you'll see there list of the images. Click on s
|
|
147 |
|
148 |
= How to define size of the gallery images thumbnails? =
|
149 |
|
150 |
-
Our
|
151 |
|
152 |
= How to load more function work? =
|
153 |
|
154 |
-
In
|
155 |
|
156 |
-
= How to change amount of the columns in
|
157 |
|
158 |
-
In
|
159 |
|
160 |
= How to enable swipe mode for lightbox? =
|
161 |
|
162 |
-
When you open
|
163 |
|
164 |
== Screenshots ==
|
165 |
|
@@ -192,6 +192,12 @@ If any problem occurs, please contact us.
|
|
192 |
|
193 |
== Changelog ==
|
194 |
|
|
|
|
|
|
|
|
|
|
|
|
|
195 |
= 2.8.2 =
|
196 |
* Added new image gallery widget to the add-ons section
|
197 |
|
@@ -411,6 +417,12 @@ If any problem occurs, please contact us.
|
|
411 |
|
412 |
== Upgrade Notice ==
|
413 |
|
|
|
|
|
|
|
|
|
|
|
|
|
414 |
= 2.8.2 =
|
415 |
Added new image gallery widget to the add-ons section
|
416 |
|
4 |
Tags: gallery, photo gallery, image gallery, wordpress gallery plugin, responsive gallery
|
5 |
Requires at least: 3.3
|
6 |
Tested up to: 4.9
|
7 |
+
Stable tag: 2.8.3
|
8 |
License: GPLv2 or later
|
9 |
License URI: https://www.gnu.org/licenses/gpl-3.0.html
|
10 |
|
14 |
|
15 |
#### [Gallery Most Easy and Powerful plugin to create attractive image section on your WordPress website.](https://robosoft.co/robogallery/#overview)
|
16 |
|
17 |
+
#### Gallery on your website it's really attractive and very important part of your pages. If you looking for fast, easy gallery with simple and very beautiful, highly customizable design [here is it...](https://robosoft.co/robogallery/#overview) Gallery where even newbie in WordPress will be able to create your first gallery in few minutes and at the same time Wordpress professionals get advanced tools and freedom of creativity. Just download this plugin and you'll not look for any other gallery any more! [Fall in Love with this Gallery like we do!](https://robosoft.co/robogallery/#overview)
|
18 |
|
19 |
= Install and create your first WordPress gallery plugin in few minutes =
|
20 |
|
39 |
|
40 |
* **Fully responsive gallery and Mobile features** - advanced responsive gallery. Plugin implemented with advanced settings for different devices screen size.
|
41 |
* **Fade effects** - one of the gallery hover animation it's classic fade effect.
|
42 |
+
* **Batch images upload** - advanced media manager which allow to upload batch of the images by one click. Just drag and drop set of the gallery images and it's upload automatically to the server.
|
43 |
* **Auto-resizing for thumbnails and images** - gallery media manager allow you make additional customization of the gallery images, like: rotation, flip, crop, manual resize.
|
44 |
* **Customizable 15 hover effects** - all gallery hover effects working in cooperation with interface configuration options. You can easily change style and colors of the hover animation elements.
|
45 |
+
* **Implemented to avoid AJAX libs conflicts** - code implemented in native WordPress style as result our plugin don't have any conflicts and work really stable.
|
46 |
* **Polaroid gallery** - with our plugin you can create Polaroid gallery just with few clicks.
|
47 |
* **Advanced Polaroid Styles** - Polaroid gallery styles implemented with advanced functionality. Implemented left, right and centre Gallery images titles alignment. Polaroid gallery description panel of the gallery images background color selector. Polaroid gallery description panel text source.
|
48 |
+
* **Build in colors selector** - you can easily change color of any interface element.
|
49 |
* **Social sharing** - gallery lightbox support social sharing in twitter, facebook, google plus and pinterest.
|
50 |
+
* **Build in borders and shadows settings** - borders and shadows have advanced options for configuration design and style of this gallery interface elements.
|
51 |
+
* **Font settings** - build in advanced text style editor options. With this options you can fully customize title, caption, description of the every gallery image
|
52 |
+
* **Different resolutions** - implemented advanced size control options where you can define layout or fixed size for the gallery elements on different screen resolutions
|
53 |
+
* **Implemented in native WordPress style using native classes** - native for WordPress implemented without any hacks and tricks
|
54 |
+
* **Multi Categories** - multi categories albums support. You can create your own galleries tree, depend of your needs
|
55 |
+
* **Classic gallery layout** - layout could have classic style or grid layout, every item on page could have own styles and settings
|
56 |
+
* **Advanced pagination function** - pagination function implemented in google load more style
|
57 |
+
* **Work in IE, Firefox, Safari, Opera, Chrome** - work properly in all latest versions of the popular browsers
|
58 |
+
* **Lazy loading option** - implemented advanced lazy loading options, for the case when you have big sets of the gallery images you can define amount of the galleries images for the first load and for the next steps of the load more option
|
59 |
+
* **Advanced cache options** - implemented advanced images caching options
|
60 |
* **Overlay effects** - all hover effects of the gallery thumbnails are highly customizable and have full set of options
|
61 |
+
* **Backend text settings preview** - all gallery images titles, captions, descriptions are highly customizable also we have life preview of the changes in backend
|
62 |
* **Resizing crop function** - in gallery media managed you'll find great set of very useful features for example gallery images crop, and manual resizing
|
63 |
+
* **Optional mobile touch support** - our plugin support mobile devices and you can customize responsive gallery layout settings for different screen sizes
|
64 |
+
* **Custom ordering of the images** - ordering for all gallery images could be easily changed manually in media manager or you can find order by options in general settings
|
65 |
* **Ability to insert gallery to the WordPress post, page, widget** - every gallery could be insert in to post, page or widget with build in shortcode tag or using wizard button - shortcode generator in post or page editor
|
66 |
+
* **Gallery lightbox social buttons** - in plugin settings you can turn on/off social buttons
|
67 |
* **Gallery lightbox background color** - in gallery lightbox settings you can change color of the background with comfortable color selector
|
68 |
* **Lightbox background transparency** - in lightbox settings you can change transparency of the background with comfortable color selector
|
69 |
* **Lightbox font color** - in lightbox settings you can change color of the font with comfortable color selector
|
70 |
* **Lightbox font transparency** - in lightbox settings you can change transparency of the font with comfortable color selector
|
71 |
+
* **Advanced Compatibility** - implement advanced compatibility options to avoid conflict with libraries of another plugins and theme. You can switch between modes to find properly value for your gallery and your case.
|
72 |
* **Advanced Social Sharing** - advanced social sharing functionality in lightbox. Implemented deep linking functionality for the gallery images social sharing services Facebook, Twitter, Pinterest, Google+, VK
|
73 |
+
* **Click Thumbnails** - advanced click functionality. You can use click on buttons or on the gallery thumbnails to enlarge image or open image link. With new functionality you can combine absolutely different features of the clicking functionality.
|
74 |
* **Gallery Alignment** - alignment of the photo gallery in post or page depend of your needs. You don't need to use HTML tags or some CSS tricks this function gonna help you to align your images gallery the way you need. Possible to select one from implemented alignment modes: left, right, center for images gallery alignment inside post or page content.
|
75 |
+
* **Gallery Padding** - new padding options. Define custom values in pixels for padding thumbnails block in post or page content. Is it possible to define padding from left, right, top and bottom side.
|
76 |
* **Post Generator** - new function for the automatically post creation with gallery tag inside it. Advanced post manager implemented with additional functions for customization and management all your gallery posts in one place.
|
77 |
+
* **Description Panel** - new image description panel in lightbox, few different themes. Settings section make you able to change gallery panel theme styles. In gallery description panel you can define few content source. Image title, image caption or image description.
|
78 |
* **Swipe in Lightbox** - gallery lightbox support swipe effect on multiply mobile devices. Swipe properly work in lightbox for all gallery images. Tested for Android and iOS.
|
79 |
+
* **Advanced Link Button Design** - front end interface have link button. This button provide linking functionality on every thumbnail.
|
80 |
This interface gallery button have wide range of the front end interface customization options. You can easily change this button color, border and icon.
|
81 |
* **Hover Description Template** - every gallery image contain description field. In additional parameters of the image hover you can define some HTML or tags or build-in tags for customization of the image description.
|
82 |
+
* **Gallery Plugin Compatibility Settings** - in plugin settings you can customize general plugin settings to avoid conflicts with another plugins or wordpress theme.
|
83 |
+
* **Gallery Admin Interface Modes** - in pluign settings you can customize plugin interface settings to avoid conflicts with another plugins.
|
84 |
* **Video Gallery Links** - in media manager every image have separate option for video link. Video Gallery links could be specified to to the youtube or vimeo.
|
85 |
+
* **Images Custom Ratio** - in plugin settings you can define custom ratio for every picture. Every gallery could have personal settings for this option.
|
86 |
+
* **Thumbnails Fade Effect** - implemented Fade effect for the hover of the photo thumbnails. With such effect gallery hover animation become more attractive and eye catching.
|
87 |
+
* **Advanced Load more function** - implemented very attractive navigation mode. Auto pre loading images like endless list of the gallery images. Load more function have alot of customization options to make it work the way you need.
|
88 |
+
* **SEO code optimization** - implemented few front end code output modes. One simplified mode with all core front end gallery code elements another mode with additional not visible elements. This option have additional modes. This SEO output modes give you default output mode, thumbnail, thumnails+links mode.
|
89 |
* **Gallery Template** - in our gallery we have advanced templating engine for images description. Every hover text of gallery image could be edit and customized with built-in templating options.
|
90 |
+
* **Gallery Cache** - incredible new super cache option make your page load ten time faster. This function use absolutely new model of the images load. When you enable cache for big size gallery it's gonna be much faster and effective to use our plugin. Your visitors will be really surprised by the speed of the page load.
|
91 |
|
92 |
|
93 |
= Gallery Pro Key Features =
|
95 |
* **Tags for gallery images** - every gallery image contain description field. In additional parameters of the image hover you can define some HTML or tags or build-in tags for customization of the image description.
|
96 |
* **Grid layout** - in plugin implemented not only classic gallery layout, but also grid layout for the modern style with different size of the gallery thumbnails.
|
97 |
* **Support Videos** - every image have option where possible to define video link for every particular picture
|
98 |
+
* **Smart Links** - implemented smart images links and video links parsing algorithm. Implemented auto detection links with turned off link navigation buttons
|
99 |
+
* **Hover layout template** - hover effects have set of advanced options. For example you can customize layout of the gallery hover effect with build in tags
|
100 |
+
* **Customizable Grid** - every gallery image have additional options for customization of the photos layout, as result you can build fully custom gallery grid, depend of your needs. You can decide which size of the gallery matrix you need on your website
|
101 |
* **Customizable hover icons** - all icons of the gallery buttons fully customizable and every icon could be easily changed with build in icons wizard
|
102 |
+
* **Ability to insert gallery to the Wordpress widget** - every item could be insert in to post, page or widget with build in shortcode tag or using wizard button - shortcode generator in post or page editor
|
103 |
* **Clone gallery** - if you have hundreds of galleries on the website this feature is really useful for you! Clone settings of another gallery to apply it to another galleries. So you can copy styles of the source gallery to as much galleries as you need just by one click.
|
104 |
* **Custom Thumbnails Shadows** - shadow it's very stylish element of the thumbnail images on the front end. You can make your gallery looks absolutely different with different styled shadow.
|
105 |
+
* **Gallery Statistics** - every item have very useful and simple statistics functionality. You can easily check every photos views. In settings statistic values could be reset.
|
106 |
+
* **Gallery Backup** - implemented multifunctional galleries backup function. With this modes you can easily transfer settings and galleries images from one server to another. Backup functionality have mode to make export only album settings or full backup with images and settings.
|
107 |
+
* **Multisite Support** - implemented multisite support. You can install plugin in admin dashboard and enable plugin for all child blogs.
|
108 |
* **Drag and Drop Categories Gallery Manager** - in gallery implemented advanced categories gallery manager with drag and drop functionality. Categories gallery manager with simple and intuitive interface.
|
109 |
|
110 |
|
123 |
|
124 |
= How to upload images to the gallery? =
|
125 |
|
126 |
+
When you create new gallery or open already existent item for edit on the right side of the edit gallery section you'll see images manager button. When you open images manager you'll be able there edit all media resources settings. Upload, edit or delete. In images manager you can use drag and drop images upload tool.
|
127 |
|
128 |
+
= How to change quality of the thumbnails? =
|
129 |
|
130 |
+
Quality of the thumbnails could be easily changed in size option / thumbnails options / source
|
131 |
|
132 |
= Where it's possible to define vertical and horizontal paddings? =
|
133 |
|
134 |
In gallery settings you can define horizontal and vertical paddings between thumbnails
|
135 |
|
136 |
+
= Do you have some limit for images size? =
|
137 |
|
138 |
No, we don't have any limits for image size.
|
139 |
|
140 |
= How I can create custom (grid) layout of the thumbnails? =
|
141 |
|
142 |
+
In our plugin implemented layout based on columns amount. So you can general amount of the columns in your gallery grid and define custom amount of the columns which every image gonna take. As result you can customize layout of the grid
|
143 |
|
144 |
= Is it possible to insert video as gallery link? =
|
145 |
|
147 |
|
148 |
= How to define size of the gallery images thumbnails? =
|
149 |
|
150 |
+
Our thumbnails layout is fully responsive and thumbnails size depend of a lot of factors. It's calculate thumbnails automatically depend of the general size and layout settings. First of all you can define ratio values for the thumbnails. Size of the thumbnails could be selected from standard pre-defined wordpress sizes: thumbnail, medium, large, full
|
151 |
|
152 |
= How to load more function work? =
|
153 |
|
154 |
+
In admin section you can define amount of the images for the first load and after click on load more button. Load more it's such google style pagination functionality which make you able to limit amount of the images for the first load
|
155 |
|
156 |
+
= How to change amount of the columns in layout? =
|
157 |
|
158 |
+
In general settings you can find thumbnails columns options which could depend of the device screen size. You can define different gallery columns amount for different resolution.
|
159 |
|
160 |
= How to enable swipe mode for lightbox? =
|
161 |
|
162 |
+
When you open settings in list of the options you can find lightbox settings block. There switch on swipe options if you wish to enable this mode in gallery lightbox.
|
163 |
|
164 |
== Screenshots ==
|
165 |
|
192 |
|
193 |
== Changelog ==
|
194 |
|
195 |
+
= 2.8.3 =
|
196 |
+
* Update image widget add-on
|
197 |
+
* Modify add-ons installation
|
198 |
+
* Update images manager
|
199 |
+
* Small fixes of the interface
|
200 |
+
|
201 |
= 2.8.2 =
|
202 |
* Added new image gallery widget to the add-ons section
|
203 |
|
417 |
|
418 |
== Upgrade Notice ==
|
419 |
|
420 |
+
= 2.8.3 =
|
421 |
+
Update image widget add-on
|
422 |
+
Modify add-ons installation
|
423 |
+
Update images manager
|
424 |
+
Small fixes of the interface
|
425 |
+
|
426 |
= 2.8.2 =
|
427 |
Added new image gallery widget to the add-ons section
|
428 |
|
robogallery.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
Plugin Name: Robo Gallery
|
4 |
Plugin URI: https://robosoft.co/wordpress-gallery-plugin
|
5 |
Description: Gallery modes photo gallery, images gallery, video gallery, Polaroid gallery, gallery lighbox, portfolio gallery, responsive gallery
|
6 |
-
Version: 2.8.
|
7 |
Author: RoboSoft
|
8 |
Author URI: https://robosoft.co/wordpress-gallery-plugin
|
9 |
License: GPLv3 or later
|
@@ -15,7 +15,7 @@ if(!defined('WPINC'))die;
|
|
15 |
if(!defined("ABSPATH"))exit;
|
16 |
|
17 |
define("ROBO_GALLERY", 1);
|
18 |
-
define("ROBO_GALLERY_VERSION", '2.8.
|
19 |
|
20 |
define("ROBO_GALLERY_OPTIONS", 'rbs_opt_');
|
21 |
|
@@ -85,12 +85,6 @@ if(!function_exists('rbs_gallery_include')){
|
|
85 |
}
|
86 |
}
|
87 |
|
88 |
-
|
89 |
-
/* version 3 */
|
90 |
-
define("ROBO_GALLERY_APP_PATH", ROBO_GALLERY_PATH.'app/'); /* FIX APP => app */
|
91 |
-
require_once ROBO_GALLERY_APP_PATH.'app.php';
|
92 |
-
|
93 |
-
|
94 |
function activateRoboGallery() {
|
95 |
require_once ROBO_GALLERY_INCLUDES_PATH.'rbs_class_activator.php';
|
96 |
Robo_Gallery_Activator::activate();
|
@@ -107,3 +101,7 @@ register_deactivation_hook( __FILE__, 'deactivateRoboGallery' );
|
|
107 |
|
108 |
if( file_exists(ROBO_GALLERY_INCLUDES_PATH.'rbs_gallery_init.php') )
|
109 |
require_once ROBO_GALLERY_INCLUDES_PATH.'rbs_gallery_init.php';
|
|
|
|
|
|
|
|
3 |
Plugin Name: Robo Gallery
|
4 |
Plugin URI: https://robosoft.co/wordpress-gallery-plugin
|
5 |
Description: Gallery modes photo gallery, images gallery, video gallery, Polaroid gallery, gallery lighbox, portfolio gallery, responsive gallery
|
6 |
+
Version: 2.8.3
|
7 |
Author: RoboSoft
|
8 |
Author URI: https://robosoft.co/wordpress-gallery-plugin
|
9 |
License: GPLv3 or later
|
15 |
if(!defined("ABSPATH"))exit;
|
16 |
|
17 |
define("ROBO_GALLERY", 1);
|
18 |
+
define("ROBO_GALLERY_VERSION", '2.8.3');
|
19 |
|
20 |
define("ROBO_GALLERY_OPTIONS", 'rbs_opt_');
|
21 |
|
85 |
}
|
86 |
}
|
87 |
|
|
|
|
|
|
|
|
|
|
|
|
|
88 |
function activateRoboGallery() {
|
89 |
require_once ROBO_GALLERY_INCLUDES_PATH.'rbs_class_activator.php';
|
90 |
Robo_Gallery_Activator::activate();
|
101 |
|
102 |
if( file_exists(ROBO_GALLERY_INCLUDES_PATH.'rbs_gallery_init.php') )
|
103 |
require_once ROBO_GALLERY_INCLUDES_PATH.'rbs_gallery_init.php';
|
104 |
+
|
105 |
+
/* version 3 */
|
106 |
+
define("ROBO_GALLERY_APP_PATH", ROBO_GALLERY_PATH.'app/');
|
107 |
+
require_once ROBO_GALLERY_APP_PATH.'app.php';
|