Gallery – Photo Gallery and Images Gallery - Version 2.8.3

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 Icon 128x128 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 CHANGED
@@ -2,7 +2,7 @@
2
 
3
  /*
4
  * Robo Gallery
5
- * Version: 2.8.2 - 62297
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.2 - 62297
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.2 - 62297
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.2 - 62297
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.2 - 62297
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' => $this->actionName,
133
  ),
 
 
134
 
135
  'labels' => array(
136
- 'download' => __('Download', 'yo-gallery'),
137
- 'downloading' => __('Downloading', 'yo-gallery'),
138
 
139
- 'activate' => __('Activate', 'yo-gallery'),
140
- 'activating' => __('Activating', 'yo-gallery'),
141
- 'activated' => __('Activated', 'yo-gallery'),
142
 
143
- 'deactivate' => __('Deactivate', 'yo-gallery'),
144
- 'deactivating' => __('Deactivating', 'yo-gallery'),
145
- 'deactivated' => __('Deactivated', 'yo-gallery'),
146
 
147
 
148
- 'information' => __('Information', 'yo-gallery'),
 
 
 
 
149
 
150
- 'installnow' => __('Install Now', 'yo-gallery'),
151
- 'installing' => __('Installing', 'yo-gallery'),
152
- 'installed' => __('Installed', 'yo-gallery'),
 
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
- echo ROBO_GALLERY_OPTIONS.'addon_'.$plugin;
 
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' => 0,
379
- 'active' => 0,
380
- 'message' => '',
381
- 'error' => 0,
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( $plugin && isset( $this->addons[$plugin] ) ){
 
 
 
 
392
 
393
- $item = $this->addons[$plugin];
394
 
395
- if($item['included']){
396
- $status['download'] = 1;
397
- $status['active'] = get_option( ROBO_GALLERY_OPTIONS.'addon_'.$plugin, 0 ) ? 1 : 0;
398
- return $status;
399
- }
400
-
401
- /* for not included */
402
- if( isset($item['slug']) && isset($item['file']) ){
403
 
404
- $plugin_dir = ABSPATH . 'wp-content/plugins/'.$item['slug'].'/';
405
- $plugin_file = ABSPATH . 'wp-content/plugins/'.$item['file'];
406
 
407
- if ( is_dir($plugin_dir) && file_exists($plugin_file) ){
 
408
 
409
- $status['download'] = 1;
410
 
411
- if( is_plugin_active( $item['file'] ) ) $status['active'] = 1;
412
- }
413
 
414
- } else {
415
- $status['message'] = 'Error:: plugin file is empty';
416
- $status['error'] = 1;
417
  }
418
 
419
- } else {
420
- $status['message'] = 'Error:: plugin name is empty';
421
- $status['error'] = 1;
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.2 - 62297
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
- /**/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,14 +82,14 @@
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,7 +108,7 @@
108
  $btn.addClass('disabled');
109
  RBPLUGINMANAGER.showSpinner($btn);
110
 
111
- /**/RBPLUGINMANAGER.toConsole('without');
112
 
113
  if( $btn.hasClass('addon-activate') ){
114
 
@@ -140,15 +140,15 @@
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,14 +160,14 @@
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,7 +180,7 @@
180
  }
181
 
182
  } else {
183
- /**/RBPLUGINMANAGER.toConsole('Error: download unsuccessful');
184
  RBPLUGINMANAGER.hideSpinner( $btn );
185
  RBPLUGINMANAGER.showError( $btn );
186
  }
@@ -188,7 +188,7 @@
188
  });
189
  })
190
  .fail(function() {
191
- /**/RBPLUGINMANAGER.toConsole('Error: send request unsuccessful');
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
- /**/RBPLUGINMANAGER.toConsole('Activate Included slug:'+slug+' code:'+code);
206
- /**/RBPLUGINMANAGER.toConsole('Activate ' + url);
207
 
208
  RBPLUGINMANAGER.updateButtonLabel( $btn, rbsGalleryAddonAttributes.labels.activating )
209
 
@@ -216,7 +216,7 @@
216
  'plugin': code
217
  },
218
  }).done(function() {
219
- /**/RBPLUGINMANAGER.toConsole('Activated');
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
- /**/RBPLUGINMANAGER.toConsole(pluginStatus);
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
- /**/RBPLUGINMANAGER.toConsole('Deactivate Included slug:'+slug+' code:'+code);
261
 
262
  RBPLUGINMANAGER.updateButtonLabel( $btn, rbsGalleryAddonAttributes.labels.deactivating )
263
 
@@ -271,7 +271,7 @@
271
  },
272
  }).done(function() {
273
 
274
- /**/RBPLUGINMANAGER.toConsole('Deactivated');
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
- /**/RBPLUGINMANAGER.toConsole(pluginStatus);
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
- /**/RBPLUGINMANAGER.toConsole('Activate slug:'+slug+' code:'+code);
317
- /**/RBPLUGINMANAGER.toConsole('Activate ' + url);
318
 
319
  RBPLUGINMANAGER.updateButtonLabel( $btn, rbsGalleryAddonAttributes.labels.activating )
320
 
@@ -322,7 +322,7 @@
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,7 +338,7 @@
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,8 +402,47 @@
402
  return false;
403
  };
404
 
405
- $(function() { //wait for ready
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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( 'PW_GALLERY_URL', plugin_dir_url( __FILE__ ) );
13
 
14
- function pw_gallery_field( $field, $meta ) {
15
- wp_enqueue_script( 'pw_gallery_init', PW_GALLERY_URL . 'js/script.js', array( 'jquery' ), null );
16
- wp_enqueue_style( 'pw_gallery_style', PW_GALLERY_URL . 'css/style.css', array(), '', 'all' );
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="pw-gallery rbs_block ">';
29
- echo ' <input type="hidden" class="pw-gallary-value" id="' . $field->args( 'id' ) . '" name="' . $field->args( 'id' ) . '" value="' . $meta . '" />';
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( 'cmb2_render_pw_gallery', 'pw_gallery_field', 10, 2 );
37
 
38
 
39
- function pw_gallery_field_sanitise( $meta_value, $field ) {
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
- .pw-gallery.rbs_block{
6
  text-align: center;
7
  }
8
 
9
- .cmb-type-pw-gallery p.cmb2-metabox-description{
10
  text-align: center;
11
  }
12
 
13
- .cmb-type-pw-gallery{
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-pw-gallery .cmb2-metabox-description{
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
- $('.pw-gallery').each(function() {
3
  var instance = this;
4
- var imgIdInput = $('.pw-gallary-value', instance);
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' => 'pw_gallery',
39
- 'sanitization_cb' => 'pw_gallery_field_sanitise'
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
- if (!is_admin()) return false;
 
 
 
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 return in_array( $pagenow, array( 'post.php', 'post-new.php', 'edit.php' ) );
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 List', 'robo-gallery' ),
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
- if(isset($_GET['showproinfo']) && $_GET['showproinfo']){
18
- if(!function_exists('rbs_gallery_showInformation')){
19
- function rbs_gallery_showInformation(){
20
- wp_enqueue_style("wp-jquery-ui-dialog");
21
- wp_enqueue_script('jquery-ui-dialog');
22
-
23
- wp_enqueue_script('robo-gallery-info', ROBO_GALLERY_URL.'js/admin/info.js', array( 'jquery' ), ROBO_GALLERY_VERSION, true );
24
- wp_enqueue_style ('robo-gallery-info', ROBO_GALLERY_URL.'css/admin/info.css', array( ), '' );
25
-
26
- echo '<div id="rbs_showInformation" '
27
- .'style="display: none;" '
28
- .'data-open="1" '
29
- .'data-title="'.__('Get Robo Gallery Pro version', 'robo-gallery').'" '
30
- .'data-close="'.__('Close').'" '
31
- .'data-info="'.__('Get Pro version', 'robo-gallery').'"'
32
- .'>'
33
- .__('You can create only 3 galleries. Update to PRO to get unlimited galleries', 'robo-gallery')
34
- .'</div>';
35
- }
36
- if(!ROBO_GALLERY_PRO) add_action( 'in_admin_header', 'rbs_gallery_showInformation' );
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 widget( $args, $instance ) {
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
- $gallery_params = array(
37
- 'numberposts' => 1,
38
- 'orderby' => 'date',
39
- 'order' => 'DESC',
40
  'post_type' => ROBO_GALLERY_TYPE_POST,
41
  'post_status' => 'publish',
42
- 'suppress_filters' => true
 
 
 
 
 
 
 
 
 
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
- if(!ROBO_GALLERY_PRO) echo _e( 'This widget available in Pro version','robo-gallery');
 
 
 
 
 
 
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 = __( 'New gallery', 'robo-gallery' );
67
  }
68
 
69
  if ( isset( $instance[ 'galleryId' ] ) ) {
@@ -72,24 +144,22 @@ class rbs_widget extends WP_Widget {
72
  else {
73
  $galleryId = 0;
74
  }
75
- $args = array(
76
- 'child_of' => 0,
77
- 'sort_order' => 'ASC',
78
- 'sort_column' => 'post_title',
79
- 'hierarchical' => 1,
80
- 'selected' => $galleryId,
81
- 'name' => $this->get_field_name( 'galleryId' ),
82
- 'id' => $this->get_field_id( 'galleryId' ),
83
- 'echo' => 1,
84
- 'post_type' => 'robo_gallery_table',
85
- 'show_option_none' => 'Latest Gallery',
86
- 'option_none_value' => '-99',
87
- );
88
- ?>
89
  <?php
90
- if(!ROBO_GALLERY_PRO){ ?>
91
- <p><a href="https://robosoft.co/go.php?product=gallery&task=gopro" target="_blank"> <?php _e( 'This widget available in Pro version','robo-gallery');?> </a></p>
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 wp_dropdown_pages( $args ); ?>
 
 
102
  </p>
103
 
104
- <p><?php _e( 'Configure it in','robo-gallery');?>
 
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">jQuery(function(){ jQuery('#<?php echo $this->get_field_id( 'galleryId' ); ?>').addClass('widefat'); });</script>
 
 
 
 
 
110
  <?php
111
  }
112
 
113
  public function update( $new_instance, $old_instance ) {
114
  $instance = array();
115
- $instance['title'] = ( ! empty( $new_instance['title'] ) ) ? strip_tags( $new_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.2
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 Gallery 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,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** - gallery have 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** - all gallery code implemented in native WordPress style as result our gallery 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** - in gallery 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** - gallery borders and shadows have advanced options for configuration design and style of this gallery interface elements.
51
- * **Font settings** - gallery have 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** - gallery have 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** - gallery fully native for WordPress implemented without any hacks and tricks
54
- * **Multi Categories** - gallery implemented with multi categories albums support. You can create your own galleries tree, depend of your needs
55
- * **Classic gallery layout** - layout of the gallery could have classic style or grid layout, every item on page could have own styles and settings
56
- * **Advanced pagination function** - pagination function of the gallery implemented in google load more style
57
- * **Work in IE, Firefox, Safari, Opera, Chrome** - gallery work properly in all latest versions of the popular browsers
58
- * **Lazy loading option** - in gallery 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** - in gallery 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 gallery 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 gallery 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 of the gallery could be easily changed manually in media manager or you can find order by options in general gallery 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 gallery 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** - in our gallery we 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 gallery 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 gallery 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 gallery 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 gallery image 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 gallery settings you can customize general plugin settings to avoid conflicts with another plugins or wordpress theme.
83
- * **Gallery Admin Interface Modes** - in gallery 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 gallery settings you can define custom ratio for every picture. Every gallery could have personal settings for this option.
86
- * **Thumbnails Fade Effect** - in gallery 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** - in gallery 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** - in gallery 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 gallery 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,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** - in our gallery implemented smart images links and video links parsing algorithm. Implemented auto detection links with turned off link navigation buttons
99
- * **Hover layout template** - gallery 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 layout of the gallery, 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 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
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 gallery settings statistic values could be reset.
106
- * **Gallery Backup** - in our gallery 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** - in gallery 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,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 gallery images manager you can use drag and drop images upload tool.
127
 
128
- = How to change quality of the gallery thumbnails? =
129
 
130
- Quality of the gallery 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 in gallery? =
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 gallery we 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,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 gallery 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 gallery 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 gallery layout? =
157
 
158
- In gallery 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 gallery 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,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.2
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.2');
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';