Gallery – Photo Gallery and Images Gallery - Version 1.5.0

Version Description

  • New gallery admin tools implemented
  • New post with gallery generator implemented
  • New wizard for target category for gallery post selection
  • Auto short tag generator in new created post
Download this release

Release Info

Developer robosoft
Plugin Icon 128x128 Gallery – Photo Gallery and Images Gallery
Version 1.5.0
Comparing to
See all releases

Code changes from version 1.4.7 to 1.5.0

css/admin/edit.css CHANGED
@@ -1 +1 @@
1
- /*
2
  z-index: 1000;
3
  opacity: 0.4;
4
  pointer-events: none;
5
  z-index: 1000;
6
  opacity: 0.1;
7
  pointer-events: none;
8
  padding-top: 7px;
9
  text-align: right;
10
  cursor: pointer;
 
11
  z-index: 1000;
12
  opacity: 0.4;
13
  pointer-events: none;
14
  z-index: 1000;
15
  opacity: 0.1;
16
  pointer-events: none;
17
  padding-top: 7px;
18
  text-align: right;
19
  cursor: pointer;
 
1
  z-index: 1000;
2
  opacity: 0.4;
3
  pointer-events: none;
4
  z-index: 1000;
5
  opacity: 0.1;
6
  pointer-events: none;
7
  padding-top: 7px;
8
  text-align: right;
9
  cursor: pointer;
10
+ /*
11
  z-index: 1000;
12
  opacity: 0.4;
13
  pointer-events: none;
14
  z-index: 1000;
15
  opacity: 0.1;
16
  pointer-events: none;
17
  padding-top: 7px;
18
  text-align: right;
19
  cursor: pointer;
includes/extensions/class.postcontroller.php ADDED
@@ -0,0 +1,276 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Wrapper Class to create/manage/update Wordpress posts and pages.
4
+ *
5
+ * @author Harri Bell-Thomas <contact@hbt.io>
6
+ * @created January, 2014
7
+ * @version 1.0.0
8
+ * @license Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0)
9
+ * @license url : http://creativecommons.org/licenses/by-sa/3.0/
10
+ */
11
+ if (!isset($wp_rewrite))
12
+ $wp_rewrite = new WP_Rewrite();
13
+
14
+ class PostController {
15
+
16
+ // Variables for Post Data
17
+ public $PC_title;
18
+ public $PC_type;
19
+ public $PC_content;
20
+ public $PC_category;
21
+ public $PC_template;
22
+ public $PC_slug;
23
+ public $PC_auth_id;
24
+ public $PC_status = "publish";
25
+
26
+ // Variables for Post Updating
27
+ public $PC_current_post;
28
+ public $PC_current_post_id;
29
+ public $PC_current_post_permalink;
30
+
31
+ public $errors = array();
32
+
33
+ // Error Array
34
+ public $PC_errors;
35
+
36
+ // Creation functions
37
+ public function create() {
38
+ if(isset($this->PC_title) ) {
39
+ if ($this->PC_type == 'page')
40
+ $post = get_page_by_title( $this->PC_title, 'OBJECT', $this->PC_type );
41
+ else
42
+ $post = get_page_by_title( $this->PC_title, 'OBJECT', $this->PC_type );
43
+
44
+ $post_data = array(
45
+ 'post_title' => wp_strip_all_tags($this->PC_title),
46
+ 'post_name' => $this->PC_slug,
47
+ 'post_content' => $this->PC_content,
48
+ 'post_status' => $this->PC_status,
49
+ 'post_type' => $this->PC_type,
50
+ 'post_author' => $this->PC_auth_id,
51
+ 'post_category' => $this->PC_category,
52
+ 'page_template' => $this->PC_template
53
+ );
54
+ if(!isset($post)){
55
+ $error_obj = '';
56
+ $this->PC_current_post_id = wp_insert_post( $post_data, $error_obj );
57
+ $this->PC_current_post = get_post((integer)$this->PC_current_post_id, 'OBJECT');
58
+ $this->PC_current_post_permalink = get_permalink((integer)$this->PC_current_post_id);
59
+ return $error_obj;
60
+ }
61
+ else {
62
+ $this->update();
63
+ $this->errors[] = 'That post already exists.'; // Try updating instead. Control passed to the update() function.
64
+ return FALSE;
65
+ }
66
+ }
67
+ else {
68
+ $this->errors[] = 'Title has not been set.';
69
+ return FALSE;
70
+ }
71
+ }
72
+
73
+ // SET POST'S TITLE
74
+ public function set_title($name){
75
+ $this->PC_title = $name;
76
+ return $this->PC_title;
77
+ }
78
+
79
+ // SET POST'S TYPE
80
+ public function set_type($type){
81
+ $this->PC_type = $type;
82
+ return $this->PC_type;
83
+ }
84
+
85
+ // SET POST'S CONTENT
86
+ public function set_content($content){
87
+ $this->PC_content = $content;
88
+ return $this->PC_content;
89
+ }
90
+
91
+ // SET POST'S AUTHOR ID
92
+ public function set_author_id($auth_id){
93
+ $this->PC_auth_id = $auth_id;
94
+ return $this->PC_auth_id;
95
+ }
96
+
97
+ // SET POST'S STATE
98
+ public function set_post_state($content){
99
+ $this->PC_status = $content;
100
+ return $this->PC_status;
101
+ }
102
+
103
+ // SET POST SLUG
104
+ public function set_post_slug($slug){
105
+ $args = array('name' => $slug);
106
+ $posts_query = get_posts( $args );
107
+ if( !get_posts( $args ) && !get_page_by_path( $this->PC_slug ) ) {
108
+ $this->PC_slug = $slug;
109
+ return $this->PC_slug;
110
+ }
111
+ else {
112
+ $this->errors[] = 'Slug already in use.';
113
+ return FALSE;
114
+ }
115
+ }
116
+
117
+ // SET PAGE TEMPLATE
118
+ public function set_page_template($content){
119
+ if ($this->PC_type == "page") {
120
+ $this->PC_template = $content;
121
+ return $this->PC_template;
122
+ }
123
+ else {
124
+ $this->errors[] = 'You can only use template for pages.';
125
+ return FALSE;
126
+ }
127
+ }
128
+
129
+ // ADD CATEGORY IDs TO THE CATEGORIES ARRAY
130
+ public function add_category($IDs){
131
+ if(is_array($IDs)) {
132
+ foreach ($IDs as $id) {
133
+ if (is_int($id)) {
134
+ $this->PC_category[] = $id;
135
+ } else {
136
+ $this->errors[] = '<b>' .$id . '</b> is not a valid integer input.';
137
+ return FALSE;
138
+ }
139
+ }
140
+ } else {
141
+ $this->errors[] = 'Input specified in not a valid array.';
142
+ return FALSE;
143
+ }
144
+ }
145
+
146
+ // Search for Post function
147
+ public function search($by, $data){
148
+ switch ($by) {
149
+ case 'id' :
150
+ if(is_integer($data) && get_post((integer)$data) !== NULL) {
151
+ $this->PC_current_post = get_post((integer)$data, 'OBJECT');
152
+ $this->PC_current_post_id = (integer)$data;
153
+ $this->PC_current_post_permalink = get_permalink((integer)$data);
154
+ return TRUE;
155
+ } else {
156
+ $this->errors[] = 'No post found with that ID.';
157
+ return FALSE;
158
+ }
159
+ break;
160
+
161
+ case 'title' :
162
+ $post = get_page_by_title($data);
163
+ $id = $post->ID;
164
+ if(is_integer($id) && get_post((integer)$id) !== NULL) {
165
+ $this->PC_current_post = get_post((integer)$id, 'OBJECT');
166
+ $this->PC_current_post_id = (integer)$id;
167
+ $this->PC_current_post_permalink = get_permalink((integer)$id);
168
+ return TRUE;
169
+ } else {
170
+ $this->errors[] = 'No post found with that title.';
171
+ return FALSE;
172
+ }
173
+ break;
174
+
175
+ case 'slug' :
176
+ $args = array('name' => $data, 'max_num_posts' => 1);
177
+ $posts_query = get_posts( $args );
178
+ if( $posts_query )
179
+ $id = $posts_query[0]->ID;
180
+ else
181
+ $this->errors[] = 'No post found with that slug.';
182
+ if(is_integer($id) && get_post((integer)$id) !== NULL) {
183
+ $this->PC_current_post = get_post((integer)$id, 'OBJECT');
184
+ $this->PC_current_post_id = (integer)$id;
185
+ $this->PC_current_post_permalink = get_permalink((integer)$id);
186
+ return TRUE;
187
+ } else {
188
+ $this->errors[] = 'No post found with that slug.';
189
+ return FALSE;
190
+ }
191
+
192
+ break;
193
+
194
+ default:
195
+ $this->errors[] = 'No post found.';
196
+ return FALSE;
197
+ break;
198
+ }
199
+ }
200
+
201
+ // Update Post
202
+ public function update(){
203
+ if (isset($this->PC_current_post_id)) {
204
+
205
+ // Declare ID of Post to be updated
206
+ $PC_post['ID'] = $this->PC_current_post_id;
207
+
208
+ // Declare ID of Post to be updated
209
+ if (isset($this->PC_title) && $this->PC_title !== $this->PC_current_post->post_title)
210
+ $PC_post['post_title'] = $this->PC_title;
211
+
212
+ if (isset($this->PC_type) && $this->PC_type !== $this->PC_current_post->post_type)
213
+ $PC_post['post_type'] = $this->PC_type;
214
+
215
+ if (isset($this->PC_auth_id) && $this->PC_auth_id !== $this->PC_current_post->post_type)
216
+ $PC_post['post_author'] = $this->PC_auth_id;
217
+
218
+ if (isset($this->PC_status) && $this->PC_status !== $this->PC_current_post->post_status)
219
+ $PC_post['post_status'] = $this->PC_status;
220
+
221
+ if (isset($this->PC_category) && $this->PC_category !== $this->PC_current_post->post_category)
222
+ $PC_post['post_category'] = $this->PC_category;
223
+
224
+ if (isset($this->PC_template) && $this->PC_template !== $this->PC_current_post->page_template && ($PC_post['post_type'] == 'page' || $this->PC_current_post->post_type == 'page'))
225
+ $PC_post['page_template'] = $this->PC_template;
226
+
227
+ if (isset($this->PC_slug) && $this->PC_slug !== $this->PC_current_post->post_name) {
228
+ $args = array('name' => $this->PC_slug);
229
+ if( !get_posts( $args ) && !get_page_by_path( $this->PC_slug ) )
230
+ $PC_post['post_name'] = $this->PC_slug;
231
+ else
232
+ $this->errors[] = 'Slug Defined is Not Unique';
233
+ }
234
+
235
+ if (isset($this->PC_content) && $this->PC_content !== $this->PC_status->post_content )
236
+ $PC_post['post_content'] = $this->PC_content;
237
+
238
+ wp_update_post( $PC_post );
239
+ }
240
+ return($this->errors);
241
+ }
242
+
243
+ // General functions
244
+ public function get_content(){
245
+ if (isset($this->PC_status->post_content ) )
246
+ return $this->PC_status->post_content;
247
+ }
248
+
249
+ public function get_var($name){
250
+ $name = 'PC_'.$name;
251
+ if (isset($this->$name))
252
+ return $this->$name;
253
+ }
254
+
255
+ public function unset_all(){
256
+ foreach (get_class_vars(get_class($this)) as $name => $default)
257
+ $this->$name = $default;
258
+ }
259
+
260
+ public function __toString() {
261
+ return 'Use the PrettyPrint function to return the contents of this Object. E.g;<pre>$my_post->PrettyPrintAll();</pre>';
262
+ }
263
+
264
+ public function PrettyPrint($data){
265
+ echo "<pre>";
266
+ print_r($data);
267
+ echo "</pre>";
268
+ }
269
+
270
+ public function PrettyPrintAll(){
271
+ echo "<pre>";
272
+ print_r($this);
273
+ echo "</pre>";
274
+ }
275
+ }
276
+ ?>
includes/extensions/rbs_create_post.php ADDED
@@ -0,0 +1,23 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ if ( ! defined( 'WPINC' ) ) die;
3
+
4
+ if(!function_exists('rbs_create_article_button')){
5
+ add_action( 'admin_footer', 'rbs_create_article_button' );
6
+ function rbs_create_article_button(){
7
+ wp_enqueue_script( 'rbs_create_post', ROBO_GALLERY_URL.'js/admin/extensions/create_post.js', array('jquery'), ROBO_GALLERY_VERSION, false);
8
+
9
+ echo ' <div id="rbs_actionWindow" class="hidden" '
10
+ .'data-title="'.__('Article creation dialog','rbs_gallery').'"'
11
+ .'data-close="'.__('Close','rbs_gallery').'"'
12
+ .'data-button="'.__('Create post','rbs_gallery').'"'
13
+ .'>';
14
+ ?>
15
+ <div id="rbs_actionWindowContent">
16
+ <h3> <span class="dashicons dashicons-update"></span> <?php echo __('Loading . . . .','rbs_gallery'); ?></h3>
17
+ </div>
18
+ <?php
19
+ echo '</div>';
20
+ }
21
+ }
22
+
23
+
includes/extensions/rbs_create_post_ajax.php ADDED
@@ -0,0 +1,82 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ if ( ! defined( 'WPINC' ) ) die;
3
+
4
+ rbs_gallery_include('class.postcontroller.php', ROBO_GALLERY_EXTENSIONS_PATH);
5
+
6
+ if(!function_exists('rbs_ajax_create_article')){
7
+ function rbs_ajax_create_article(){
8
+ if(
9
+ isset($_POST['galleryid']) && (int)$_POST['galleryid'] &&
10
+ isset($_POST['categoryid']) && (int)$_POST['categoryid']
11
+ ){
12
+ $galleryid = intval( $_POST['galleryid'] );
13
+ $categoryid = intval( $_POST['categoryid'] );
14
+
15
+ $post_info = get_post( $galleryid );
16
+
17
+ if( gettype($post_info)!='object' ) {
18
+ echo '<p><strong>'.__('Post not created. Error: ','rbs_gallery').'</strong><br><p>empty gallery id</p>';
19
+ die();
20
+ }
21
+
22
+ $Poster = new PostController;
23
+ $Poster->set_title( $post_info->post_title );
24
+ $Poster->add_category( array($categoryid) );
25
+ $Poster->set_type( "post" );
26
+ $Poster->set_content( '[robo-gallery id="'.$galleryid.'"]' );
27
+ $Poster->set_author_id( get_current_user_id() );
28
+ $Poster->set_post_slug( 'post_'.$post_info->post_name );
29
+ $Poster->set_post_state( "publish" );
30
+ $Poster->create();
31
+
32
+ if( isset($Poster->errors) && count($Poster->errors) ){
33
+ echo '<p><strong>'.__('Post not created. Error: ','rbs_gallery').'</strong><br>';
34
+ for ($i=0; $i < count($Poster->errors); $i++) {
35
+ $error = $Poster->errors[$i];
36
+ echo ' &nbsp;&nbsp; - '.$error.'<br>';
37
+ }
38
+ echo '</p>';
39
+ } else {
40
+ echo '<p>'.__('Post created','rbs_gallery').'</p>';
41
+ }
42
+ } else {
43
+ echo '<p><strong>'.__('Error: input value','rbs_gallery').'</strong></p>';
44
+ }
45
+ die();
46
+ }
47
+ }
48
+
49
+ if(!function_exists('rbs_ajax_create_article_form')){
50
+ function rbs_ajax_create_article_form(){
51
+ echo '<div class="form-group">';
52
+ $args = array(
53
+ 'show_option_all' => '',
54
+ 'show_option_none' => '',
55
+ 'option_none_value' => '-1',
56
+ 'orderby' => 'ID',
57
+ 'order' => 'ASC',
58
+ 'show_count' => 0,
59
+ 'hide_empty' => 0,
60
+ 'child_of' => 0,
61
+ 'exclude' => '',
62
+ 'echo' => 1,
63
+ 'selected' => 0,
64
+ 'hierarchical' => 1,
65
+ 'name' => 'cat',
66
+ 'id' => 'rbs_post_create_category',
67
+ 'class' => 'form-control',
68
+ 'depth' => 0,
69
+ 'tab_index' => 0,
70
+ 'taxonomy' => 'category',
71
+ 'hide_if_empty' => false,
72
+ 'value_field' => 'term_id',
73
+ );
74
+
75
+ echo '<label for="rbs_post_create_category">'.__('Select category','rbs_gallery').' </label> ';
76
+
77
+ wp_dropdown_categories( $args );
78
+
79
+ echo '</div>';
80
+ echo '<p>'.__('Title of the article will be the same as gallery title. Target category you can select below. Short tag of the gallery will be insert into created article.','rbs_gallery').'</p>';
81
+ }
82
+ }
includes/options/rbs_gallery_options_tools.php ADDED
@@ -0,0 +1,39 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ * Robo Gallery
4
+ * Version: 1.5
5
+ * By Robosoft
6
+ *
7
+ * Contact: http://robosoft.co
8
+ * Created: 2015
9
+ * Licensed under the GPLv2 license - http://opensource.org/licenses/gpl-2.0.php
10
+ *
11
+ * Copyright (c) 2014-2015, Robosoft. All rights reserved.
12
+ * Available only in http://robosoft.co/
13
+ */
14
+
15
+
16
+ $tools_group = new_cmb2_box( array(
17
+ 'id' => ROBO_GALLERY_PREFIX.'tools_metabox',
18
+ 'title' => '<span class="dashicons dashicons-admin-tools"></span> '.__('Gallery Tools','rbs_gallery'),
19
+ 'object_types' => array( ROBO_GALLERY_TYPE_POST ),
20
+ 'context' => 'side',
21
+ 'priority' => 'low',
22
+ // 'closed' => rbs_gallery_set_checkbox_default_for_new_post(0),
23
+ ));
24
+
25
+ if(isset($_GET['post'])){
26
+ $tools_group->add_field( array(
27
+ 'id' => ROBO_GALLERY_PREFIX.'create_acticle',
28
+ 'type' => 'title',
29
+ 'before_row' => '<div class="rbs_block">'
30
+ .'<div class="rbs-center-block rbs-margin-block">'
31
+ .'<button id="rbs_create_article" data-galleryid="'.(int)$_GET['post'].'" class="btn btn-info btn-lg ">'
32
+ .'<span class="glyphicon glyphicon-plus" aria-hidden="true"></span> '
33
+ .__('Create Post','rbs_gallery')
34
+ .'</button>'
35
+ .'<p class="rbs_desc">'.__('Here you can create and customize new post with gallery inside it','rbs_gallery').'</p> '
36
+ .'</div>',
37
+ 'after_row' => '</div>',
38
+ ));
39
+ }
includes/rbs_gallery_ajax.php CHANGED
@@ -1,12 +1,14 @@
1
  <?php
2
  if ( ! defined( 'WPINC' ) ) die;
3
 
4
- add_action( 'wp_ajax_rbs_gallery_ajax', 'rbs_gallery_ajax_callback' );
5
- function rbs_gallery_ajax_callback() {
6
- global $wpdb;
7
- $whatever = intval( $_POST['whatever'] );
8
- $postid = intval( $_POST['postid'] );
9
- $whatever += 10;
10
- echo $whatever." id:".$postid;
11
- wp_die();
 
12
  }
 
1
  <?php
2
  if ( ! defined( 'WPINC' ) ) die;
3
 
4
+ if(!function_exists('rbs_gallery_ajax_callback')){
5
+ add_action( 'wp_ajax_rbs_gallery', 'rbs_gallery_ajax_callback' );
6
+ function rbs_gallery_ajax_callback(){
7
+ if(isset($_POST['function']) && $_POST['function']){
8
+ $functionName = 'rbs_ajax_'.$_POST['function'];
9
+ if( function_exists( $functionName ) ) $functionName();
10
+ }
11
+ wp_die();
12
+ }
13
  }
14
+
includes/rbs_gallery_edit.php CHANGED
@@ -17,13 +17,16 @@ function rbs_gallery_group_metabox() {
17
  function rbs_gallery_set_checkbox_default_for_new_post( $default ) {
18
  return rbs_gallery_is_edit_page('edit') ? '' : ( $default ? (string) $default : '' );
19
  }
20
- if( rbs_gallery_is_edit_page('edit') ){
21
- if( file_exists(ROBO_GALLERY_INCLUDES_PATH.'options/rbs_gallery_options_copy.php') ) require_once ROBO_GALLERY_INCLUDES_PATH.'options/rbs_gallery_options_copy.php';
22
- }
23
- if( file_exists(ROBO_GALLERY_INCLUDES_PATH.'options/rbs_gallery_options_images.php') ) require_once ROBO_GALLERY_INCLUDES_PATH.'options/rbs_gallery_options_images.php';
24
-
25
- if( rbs_gallery_is_edit_page('edit') ) rbs_gallery_include('rbs_gallery_options_shortcode.php', ROBO_GALLERY_EXTENSIONS_PATH);
26
 
 
 
 
 
 
 
27
  rbs_gallery_include( array(
28
  'rbs_gallery_options_text.php',
29
  'rbs_gallery_options_size.php',
@@ -32,7 +35,7 @@ function rbs_gallery_group_metabox() {
32
  'rbs_gallery_options_button.php',
33
  ), ROBO_GALLERY_OPTIONS_PATH);
34
 
35
- if( !ROBO_GALLERY_PRO ) rbs_gallery_include('rbs_gallery_options_infowide.php', ROBO_GALLERY_EXTENSIONS_PATH);
36
 
37
  rbs_gallery_include( array(
38
  'rbs_gallery_options_loading.php',
@@ -40,9 +43,9 @@ function rbs_gallery_group_metabox() {
40
  'rbs_gallery_options_lightbox.php',
41
  ), ROBO_GALLERY_OPTIONS_PATH);
42
 
43
- if( !ROBO_GALLERY_PRO ) rbs_gallery_include('rbs_gallery_options_info.php', ROBO_GALLERY_EXTENSIONS_PATH);
44
 
45
- if( rbs_gallery_is_edit_page('edit') ) rbs_gallery_include('rbs_create_article_button.php', ROBO_GALLERY_EXTENSIONS_PATH);
46
 
47
  }
48
  add_action( 'cmb2_init', 'rbs_gallery_group_metabox' );
17
  function rbs_gallery_set_checkbox_default_for_new_post( $default ) {
18
  return rbs_gallery_is_edit_page('edit') ? '' : ( $default ? (string) $default : '' );
19
  }
20
+ if( rbs_gallery_is_edit_page('edit') ) rbs_gallery_include('rbs_gallery_options_copy.php', ROBO_GALLERY_OPTIONS_PATH);
21
+
22
+ rbs_gallery_include('rbs_gallery_options_images.php', ROBO_GALLERY_OPTIONS_PATH);
 
 
 
23
 
24
+ if( rbs_gallery_is_edit_page('edit') ){
25
+ rbs_gallery_include( array(
26
+ 'rbs_gallery_options_shortcode.php',
27
+ 'rbs_gallery_options_tools.php',
28
+ ), ROBO_GALLERY_OPTIONS_PATH);
29
+ }
30
  rbs_gallery_include( array(
31
  'rbs_gallery_options_text.php',
32
  'rbs_gallery_options_size.php',
35
  'rbs_gallery_options_button.php',
36
  ), ROBO_GALLERY_OPTIONS_PATH);
37
 
38
+ if( !ROBO_GALLERY_PRO ) rbs_gallery_include('rbs_gallery_options_infowide.php', ROBO_GALLERY_OPTIONS_PATH);
39
 
40
  rbs_gallery_include( array(
41
  'rbs_gallery_options_loading.php',
43
  'rbs_gallery_options_lightbox.php',
44
  ), ROBO_GALLERY_OPTIONS_PATH);
45
 
46
+ if( !ROBO_GALLERY_PRO ) rbs_gallery_include('rbs_gallery_options_info.php', ROBO_GALLERY_OPTIONS_PATH);
47
 
48
+ if( rbs_gallery_is_edit_page('edit') ) rbs_gallery_include('rbs_create_post.php', ROBO_GALLERY_EXTENSIONS_PATH);
49
 
50
  }
51
  add_action( 'cmb2_init', 'rbs_gallery_group_metabox' );
includes/rbs_gallery_init.php CHANGED
@@ -72,12 +72,12 @@ function create_post_type_robo_gallery() {
72
  'edit_item' => __( 'Edit Gallery', 'rbs_gallery' ),
73
  ),
74
 
75
- 'rewrite' => array( 'slug' => 'gallery', 'with_front' => true ),
76
- 'public' => true,
77
- 'has_archive' => false,
78
- 'hierarchical' => true,
79
- 'supports' => array( 'title', 'page-attributes', 'comments'),
80
- 'menu_icon' => 'dashicons-format-gallery',
81
  ));
82
  /* to-do options */
83
  global $wp_rewrite; $wp_rewrite->flush_rules();
@@ -92,7 +92,6 @@ if( rbs_gallery_get_current_post_type() == ROBO_GALLERY_TYPE_POST && !ROBO_GALLE
92
  rbs_gallery_include('rbs_gallery_topblock.php', ROBO_GALLERY_INCLUDES_PATH);
93
  }
94
 
95
-
96
  if( rbs_gallery_get_current_post_type() == ROBO_GALLERY_TYPE_POST && rbs_gallery_is_edit_page('new') && !ROBO_GALLERY_PRO ){
97
  if(!function_exists('rbs_gallery_redirect')){
98
  function rbs_gallery_redirect (){
@@ -106,7 +105,6 @@ if( rbs_gallery_get_current_post_type() == ROBO_GALLERY_TYPE_POST && rbs_galler
106
  }
107
  }
108
 
109
-
110
  if( rbs_gallery_get_current_post_type() == ROBO_GALLERY_TYPE_POST && ( rbs_gallery_is_edit_page('new') || rbs_gallery_is_edit_page('edit') ) ){
111
 
112
  // Adding the Metabox class
@@ -132,17 +130,17 @@ if( rbs_gallery_get_current_post_type() == ROBO_GALLERY_TYPE_POST && ( rbs_galle
132
  'multisize/rbs-multiSize.php',
133
  'rbsradiobutton/rbs-radiobutton.php',
134
  'padding/rbs-padding.php',
135
-
136
-
137
  ), ROBO_GALLERY_CMB_FILEDS_PATH);
138
 
139
  rbs_gallery_include('rbs_gallery_edit.php', ROBO_GALLERY_INCLUDES_PATH);
140
  }
141
 
142
- rbs_gallery_include('rbs_gallery_ajax.php', ROBO_GALLERY_INCLUDES_PATH);
143
-
144
  /* only backend */
145
  if( is_admin() ) rbs_gallery_include(array('rbs_gallery_media.php', 'rbs_gallery_menu.php' ), ROBO_GALLERY_INCLUDES_PATH);
146
 
147
  /* Frontend*/
148
  rbs_gallery_include(array('rbs_gallery_source.php', 'rbs_gallery_helper.php', 'rbs_gallery_class_utils.php', 'rbs_gallery_class.php', 'rbs_gallery_frontend.php' ), ROBO_GALLERY_FRONTEND_PATH);
 
 
 
 
72
  'edit_item' => __( 'Edit Gallery', 'rbs_gallery' ),
73
  ),
74
 
75
+ 'rewrite' => array( 'slug' => 'gallery', 'with_front' => true ),
76
+ 'public' => true,
77
+ 'has_archive' => false,
78
+ 'hierarchical' => true,
79
+ 'supports' => array( 'title', 'page-attributes', 'comments'),
80
+ 'menu_icon' => 'dashicons-format-gallery',
81
  ));
82
  /* to-do options */
83
  global $wp_rewrite; $wp_rewrite->flush_rules();
92
  rbs_gallery_include('rbs_gallery_topblock.php', ROBO_GALLERY_INCLUDES_PATH);
93
  }
94
 
 
95
  if( rbs_gallery_get_current_post_type() == ROBO_GALLERY_TYPE_POST && rbs_gallery_is_edit_page('new') && !ROBO_GALLERY_PRO ){
96
  if(!function_exists('rbs_gallery_redirect')){
97
  function rbs_gallery_redirect (){
105
  }
106
  }
107
 
 
108
  if( rbs_gallery_get_current_post_type() == ROBO_GALLERY_TYPE_POST && ( rbs_gallery_is_edit_page('new') || rbs_gallery_is_edit_page('edit') ) ){
109
 
110
  // Adding the Metabox class
130
  'multisize/rbs-multiSize.php',
131
  'rbsradiobutton/rbs-radiobutton.php',
132
  'padding/rbs-padding.php',
 
 
133
  ), ROBO_GALLERY_CMB_FILEDS_PATH);
134
 
135
  rbs_gallery_include('rbs_gallery_edit.php', ROBO_GALLERY_INCLUDES_PATH);
136
  }
137
 
 
 
138
  /* only backend */
139
  if( is_admin() ) rbs_gallery_include(array('rbs_gallery_media.php', 'rbs_gallery_menu.php' ), ROBO_GALLERY_INCLUDES_PATH);
140
 
141
  /* Frontend*/
142
  rbs_gallery_include(array('rbs_gallery_source.php', 'rbs_gallery_helper.php', 'rbs_gallery_class_utils.php', 'rbs_gallery_class.php', 'rbs_gallery_frontend.php' ), ROBO_GALLERY_FRONTEND_PATH);
143
+
144
+ /* AJAX */
145
+ rbs_gallery_include('rbs_gallery_ajax.php', ROBO_GALLERY_INCLUDES_PATH);
146
+ rbs_gallery_include('rbs_create_post_ajax.php', ROBO_GALLERY_EXTENSIONS_PATH);
js/admin/extensions/create_post.js ADDED
@@ -0,0 +1,105 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /*
2
+ * Robo Gallery
3
+ * Version: 1.0
4
+ * By Robosoft
5
+ *
6
+ * Contact: http://robosoft.co
7
+ * Created: 2015
8
+ * Licensed under the GPLv2 license - http://opensource.org/licenses/gpl-2.0.php
9
+ *
10
+ * Copyright (c) 2014-2015, Robosoft. All rights reserved.
11
+ * Available only in http://robosoft.co/
12
+ */
13
+
14
+ (function($) {
15
+ var progressHtml = '';
16
+
17
+ var rbs_insert_post_button = '';
18
+ var rbs_insert_post_close_button = '';
19
+
20
+ var rbs_insert_post_content = '';
21
+
22
+
23
+ var roboGalleryActionDialog = $("#rbs_actionWindow");
24
+ var roboGalleryActionDialogId =$('#rbs_create_article').data('galleryid');
25
+
26
+
27
+ var bodyClass = roboGalleryActionDialog.data("body");
28
+ if(bodyClass) $("body").addClass(bodyClass);
29
+ roboGalleryActionDialog.dialog({
30
+ 'dialogClass' : 'wp-dialog',
31
+ 'title': roboGalleryActionDialog.data('title'),
32
+ 'modal' : true,
33
+ 'autoOpen' : false,
34
+ 'width': '450', // overcomes width:'auto' and maxWidth bug
35
+ 'maxWidth': 450,
36
+ 'height': 'auto',
37
+ 'fluid': true,
38
+ 'resizable': false,
39
+ 'responsive': true,
40
+ 'draggable': false,
41
+ 'closeOnEscape' : true,
42
+ 'buttons' : [{
43
+ 'text' : roboGalleryActionDialog.data('button'),
44
+ 'class' : 'button-primary rbs-create-post-button-insert',
45
+ 'click' : function(){}
46
+ },{
47
+ 'text' : roboGalleryActionDialog.data('close'),
48
+ 'class' : 'button button-default rbs_dialog_close',
49
+ 'click' : function() { $(this).dialog('close'); }
50
+ },
51
+ ],
52
+ open: function( event, ui ) {}
53
+ });
54
+
55
+ window['roboGalleryActionDialog'] = roboGalleryActionDialog;
56
+ //$(".ui-dialog-titlebar-close").addClass("ui-button ui-widget ui-state-default ui-corner-all ui-button-icon-only ui-dialog-titlebar-close");
57
+
58
+ rbs_insert_post_button = $(".rbs-create-post-button-insert");
59
+ rbs_insert_post_content = $("#rbs_actionWindowContent");
60
+
61
+ $('#rbs_create_article').click(function(evnt){
62
+ evnt.preventDefault();
63
+ if(progressHtml=='') progressHtml= rbs_insert_post_content.html();
64
+ else rbs_insert_post_content.html(progressHtml);
65
+ var data = {
66
+ 'action': 'rbs_gallery',
67
+ 'function': 'create_article_form',
68
+ 'galleryid': roboGalleryActionDialogId,
69
+ };
70
+ rbs_insert_post_button.hide();
71
+ roboGalleryActionDialog.dialog("open");
72
+ $.post(ajaxurl, data, function(response) {
73
+ rbs_insert_post_content.html(response);
74
+ rbs_insert_post_button.show();
75
+ //alert('Got this from the server: ' + response);
76
+ });
77
+ });
78
+
79
+ rbs_insert_post_button.click(function(evnt){
80
+ evnt.preventDefault();
81
+
82
+ var categoryId = $('#rbs_post_create_category').find(":selected").val();
83
+
84
+ rbs_insert_post_content.html(progressHtml);
85
+
86
+ var data = {
87
+ 'action': 'rbs_gallery',
88
+ 'function': 'create_article',
89
+ 'galleryid': roboGalleryActionDialogId,
90
+ 'categoryid': categoryId,
91
+ };
92
+
93
+ rbs_insert_post_button.hide();
94
+
95
+ roboGalleryActionDialog.dialog("open");
96
+
97
+ $.post(ajaxurl, data, function(response) {
98
+ rbs_insert_post_content.html(response);
99
+ //rbs_insert_post_button.show();
100
+ //alert('Got this from the server: ' + response);
101
+ });
102
+ });
103
+
104
+
105
+ })(jQuery);
js/admin/extensions/index.html ADDED
File without changes
readme.txt CHANGED
@@ -4,7 +4,7 @@ Donate link: http://www.robosoft.co/robogallery
4
  Tags: gallery, add gallery, photo gallery, images gallery, media gallery, responsive gallery, gallery image, gallery lightbox, Polaroid gallery, Gallery Plugin, plugin gallery, video gallery, gallery shortcode, responsive images gallery, website gallery, widget gallery, wordpress gallery, wordpress gallery plugin, wordpress photo gallery plugin, wp gallery, wp gallery plugin, wp gallery plugins, multi categories gallery, add galleries, add picture, add pictures, album, best gallery, best gallery plugin, responsive galleries, mobile gallery, mobile galleries, responsive photo gallery, best portfolio, easy media gallery, filterable gallery, filterable portfolio, foto, fotoalbum, fotogalerie, sortable gallery, sortable galleries, free photo gallery, fullscreen gallery, galary, galeri, galerie, galerij, galery, gallary, Galleria, gallerie, galleries, gallery decription, gallery slider, gelary, gellary, gellery, google, grid gallery, image, image album, image gallery, image gallery plugin, image lightbox, image slider, image slideshow, images, jquery, jquery gallery, links, media, multiple pictures, page, pagination gallery, pagination portfolio, photo, photo album, photo albums, photoalbum, photogallery, photos, photoset, picture, pictures, plugin, plugin for gallery, portfolio, portfolio gallery, portfolio plugin, Post, posts, responsive slideshow, responsive wordpress photo gallery, seo image, slide show, slideshow, thumbnail, upload images, upload photos, batch upload, multiply images upload, view images, view pictures, wordpress portfolio plugin, multi-categories gallery, multi categories galleries, robo gallery
5
  Requires at least: 3.3
6
  Tested up to: 4.3
7
- Stable tag: 1.4.7
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-3.0.html
10
 
@@ -212,10 +212,6 @@ In gallery settings you can find hover type options. In settings of the gallery
212
 
213
  First of all you can copy shortcode inside gallery settings , in separate shortcode block. Another way generate shortcode directly in post or page edit mode. You can find wizard button on top of content editor
214
 
215
- = How to change amount of images loading on gallery page? =
216
-
217
- In gallery settings we have few options which makes you able to select amount of the images for the first load and for load more action
218
-
219
  = How to change quality of the gallery thumbnails? =
220
 
221
  Quality of the gallery thumbnails could be easily changed in gallery size option / thumbnails options / source
@@ -224,6 +220,10 @@ Quality of the gallery thumbnails could be easily changed in gallery size option
224
 
225
  When you create gallery in plugin galleries manager you can go to the post or page editor and there using special wizard button insert gallery into your wordpress post or page. Another way you can insert your gallery manually using shortcode, which you can find in gallery edit mode in shortcode section on the right side of the gallery settings
226
 
 
 
 
 
227
  = How to change text below image in lightbox ? =
228
 
229
  In gallery setting you can select which text show below image in gallery lightbox. You can select Caption, Title or image Description as source for this field in gallery lightbox.
@@ -232,10 +232,6 @@ In gallery setting you can select which text show below image in gallery lightbo
232
 
233
  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 gallery grid
234
 
235
- = Is it possible to create direct link on the front end to the gallery? =
236
-
237
- Yes, you can use generated direct link inside particular gallery settings
238
-
239
  = How to change font size of the gallery image caption? =
240
 
241
  In gallery settings you can enable custom caption settings where you can customize font size and see results in live preview
@@ -244,25 +240,25 @@ In gallery settings you can enable custom caption settings where you can customi
244
 
245
  When you open gallery media manager you'll see there list of the gallery images. Click on some image and on the right side you'll see images options. Every gallery image have custom effect field where you can select different hover effect for every image of the gallery.
246
 
247
- = Where specify description of the gallery images? =
248
-
249
- When you open gallery settings inside you'll find images manager section. Images manager make you able to add/edit descriptions and titles of every gallery image
250
-
251
- = How to make shadow for the gallery thumbnails? =
252
 
253
- Shadows of the thumbnails you can customize in gallery settings. With gallery settings you can change size , color and position of the gallery thumbnails shadow
254
 
255
  = How to customize border of the gallery thumbnails? =
256
 
257
  In gallery settings you can find general settings section where you can turn on/off thumbnails border. Also you can customize there style of the border, namely width, color and style of the thumbnail borders
258
 
 
 
 
 
259
  = Do you have some limits for images amount in gallery? =
260
 
261
  No, we don't have any limits for amount of the images in gallery
262
 
263
- = Do you have some limit for images size in gallery? =
264
 
265
- No, we don't have any limits for image size in our gallery.
266
 
267
  = How to enable lazy load in gallery options? =
268
 
@@ -280,6 +276,10 @@ In lightbox section of the gallery settings you can find hide title option. If y
280
 
281
  Our gallery is fully responsive and gallery thumbnails size depend of a lot of factors. Gallery calculate thumbnails automatically depend of the general gallery size and gallery layout settings. First of all you can define ratio values for gallery thumbnails. Size of the thumbnails could be selected from standard pre-defined wordpress sizes: thumbnail, medium, large, full
282
 
 
 
 
 
283
  = How to set description text below image in the lightbox? =
284
 
285
  In gallery settings you can find lightbox section and if you need to show description of the images below images in the lightbox you need to select text source in lightbox settings from defined values.
@@ -296,21 +296,17 @@ Yes, you can have different styles of the borders and shadows for static and hov
296
 
297
  Color of every gallery front end interface element could be changed changed in admin section with color selector. There you can change colors of the menu buttons, load more button, borders, shadows, backgrounds and etc.
298
 
299
- = Which parameters I can change for the gallery thumbnails borders and shadows? =
300
-
301
- You can change size, color and style of gallery thumbnails borders and shadows. Also you can define different parameters for static and hovered status
302
-
303
  = How to customize gallery layouts for different screen resolutions? =
304
 
305
  In admin section of the gallery you'll find columns options which provide you advanced customization options for different resolutions. You can define some static size or auto size for every resolution.
306
 
307
- = How to change font color of the gallery image caption? =
308
 
309
- In gallery settings you can enable custom caption settings where you can customize font color and see results in live preview
310
 
311
- = How to define custom link for some gallery images? =
312
 
313
- Every gallery image have additional fields where you can define custom link, title, description. All this options you can find in gallery images manager, inside general gallery settings
314
 
315
  = How to make gallery thumbnails with rounded corners? =
316
 
@@ -320,6 +316,10 @@ In gallery settings you can find section rounds where with special options you c
320
 
321
  Yes, you can use HTML tags inside gallery image description field
322
 
 
 
 
 
323
  = How to use multi-category functionality of the gallery? =
324
 
325
  In our gallery we implemented multi-categories structure. Every gallery category could have child and parent gallery, which you can manually define in gallery settings
@@ -566,6 +566,12 @@ If any problem occurs, please contact us.
566
 
567
  == Changelog ==
568
 
 
 
 
 
 
 
569
  = 1.4.7 =
570
  * Code optimization
571
  * Update of the API structure
@@ -757,6 +763,9 @@ If any problem occurs, please contact us.
757
 
758
  == Upgrade Notice ==
759
 
 
 
 
760
  = 1.4.7 =
761
  Implemented new backend API structures, prepared new interface elements
762
 
4
  Tags: gallery, add gallery, photo gallery, images gallery, media gallery, responsive gallery, gallery image, gallery lightbox, Polaroid gallery, Gallery Plugin, plugin gallery, video gallery, gallery shortcode, responsive images gallery, website gallery, widget gallery, wordpress gallery, wordpress gallery plugin, wordpress photo gallery plugin, wp gallery, wp gallery plugin, wp gallery plugins, multi categories gallery, add galleries, add picture, add pictures, album, best gallery, best gallery plugin, responsive galleries, mobile gallery, mobile galleries, responsive photo gallery, best portfolio, easy media gallery, filterable gallery, filterable portfolio, foto, fotoalbum, fotogalerie, sortable gallery, sortable galleries, free photo gallery, fullscreen gallery, galary, galeri, galerie, galerij, galery, gallary, Galleria, gallerie, galleries, gallery decription, gallery slider, gelary, gellary, gellery, google, grid gallery, image, image album, image gallery, image gallery plugin, image lightbox, image slider, image slideshow, images, jquery, jquery gallery, links, media, multiple pictures, page, pagination gallery, pagination portfolio, photo, photo album, photo albums, photoalbum, photogallery, photos, photoset, picture, pictures, plugin, plugin for gallery, portfolio, portfolio gallery, portfolio plugin, Post, posts, responsive slideshow, responsive wordpress photo gallery, seo image, slide show, slideshow, thumbnail, upload images, upload photos, batch upload, multiply images upload, view images, view pictures, wordpress portfolio plugin, multi-categories gallery, multi categories galleries, robo gallery
5
  Requires at least: 3.3
6
  Tested up to: 4.3
7
+ Stable tag: 1.5.0
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-3.0.html
10
 
212
 
213
  First of all you can copy shortcode inside gallery settings , in separate shortcode block. Another way generate shortcode directly in post or page edit mode. You can find wizard button on top of content editor
214
 
 
 
 
 
215
  = How to change quality of the gallery thumbnails? =
216
 
217
  Quality of the gallery thumbnails could be easily changed in gallery size option / thumbnails options / source
220
 
221
  When you create gallery in plugin galleries manager you can go to the post or page editor and there using special wizard button insert gallery into your wordpress post or page. Another way you can insert your gallery manually using shortcode, which you can find in gallery edit mode in shortcode section on the right side of the gallery settings
222
 
223
+ = How to change amount of images loading on gallery page? =
224
+
225
+ In gallery settings we have few options which makes you able to select amount of the images for the first load and for load more action
226
+
227
  = How to change text below image in lightbox ? =
228
 
229
  In gallery setting you can select which text show below image in gallery lightbox. You can select Caption, Title or image Description as source for this field in gallery lightbox.
232
 
233
  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 gallery grid
234
 
 
 
 
 
235
  = How to change font size of the gallery image caption? =
236
 
237
  In gallery settings you can enable custom caption settings where you can customize font size and see results in live preview
240
 
241
  When you open gallery media manager you'll see there list of the gallery images. Click on some image and on the right side you'll see images options. Every gallery image have custom effect field where you can select different hover effect for every image of the gallery.
242
 
243
+ = Is it possible to create direct link on the front end to the gallery? =
 
 
 
 
244
 
245
+ Yes, you can use generated direct link inside particular gallery settings
246
 
247
  = How to customize border of the gallery thumbnails? =
248
 
249
  In gallery settings you can find general settings section where you can turn on/off thumbnails border. Also you can customize there style of the border, namely width, color and style of the thumbnail borders
250
 
251
+ = How to make shadow for the gallery thumbnails? =
252
+
253
+ Shadows of the thumbnails you can customize in gallery settings. With gallery settings you can change size , color and position of the gallery thumbnails shadow
254
+
255
  = Do you have some limits for images amount in gallery? =
256
 
257
  No, we don't have any limits for amount of the images in gallery
258
 
259
+ = Where specify description of the gallery images? =
260
 
261
+ When you open gallery settings inside you'll find images manager section. Images manager make you able to add/edit descriptions and titles of every gallery image
262
 
263
  = How to enable lazy load in gallery options? =
264
 
276
 
277
  Our gallery is fully responsive and gallery thumbnails size depend of a lot of factors. Gallery calculate thumbnails automatically depend of the general gallery size and gallery layout settings. First of all you can define ratio values for gallery thumbnails. Size of the thumbnails could be selected from standard pre-defined wordpress sizes: thumbnail, medium, large, full
278
 
279
+ = Do you have some limit for images size in gallery? =
280
+
281
+ No, we don't have any limits for image size in our gallery.
282
+
283
  = How to set description text below image in the lightbox? =
284
 
285
  In gallery settings you can find lightbox section and if you need to show description of the images below images in the lightbox you need to select text source in lightbox settings from defined values.
296
 
297
  Color of every gallery front end interface element could be changed changed in admin section with color selector. There you can change colors of the menu buttons, load more button, borders, shadows, backgrounds and etc.
298
 
 
 
 
 
299
  = How to customize gallery layouts for different screen resolutions? =
300
 
301
  In admin section of the gallery you'll find columns options which provide you advanced customization options for different resolutions. You can define some static size or auto size for every resolution.
302
 
303
+ = Which parameters I can change for the gallery thumbnails borders and shadows? =
304
 
305
+ You can change size, color and style of gallery thumbnails borders and shadows. Also you can define different parameters for static and hovered status
306
 
307
+ = How to change font color of the gallery image caption? =
308
 
309
+ In gallery settings you can enable custom caption settings where you can customize font color and see results in live preview
310
 
311
  = How to make gallery thumbnails with rounded corners? =
312
 
316
 
317
  Yes, you can use HTML tags inside gallery image description field
318
 
319
+ = How to define custom link for some gallery images? =
320
+
321
+ Every gallery image have additional fields where you can define custom link, title, description. All this options you can find in gallery images manager, inside general gallery settings
322
+
323
  = How to use multi-category functionality of the gallery? =
324
 
325
  In our gallery we implemented multi-categories structure. Every gallery category could have child and parent gallery, which you can manually define in gallery settings
566
 
567
  == Changelog ==
568
 
569
+ = 1.5.0 =
570
+ * New gallery admin tools implemented
571
+ * New post with gallery generator implemented
572
+ * New wizard for target category for gallery post selection
573
+ * Auto short tag generator in new created post
574
+
575
  = 1.4.7 =
576
  * Code optimization
577
  * Update of the API structure
763
 
764
  == Upgrade Notice ==
765
 
766
+ = 1.5.0 =
767
+ New wizard for auto post generation with shortcode inside it, new gallery admin tools implemented
768
+
769
  = 1.4.7 =
770
  Implemented new backend API structures, prepared new interface elements
771
 
robogallery.php CHANGED
@@ -8,7 +8,7 @@
8
  * Plugin Name: Robo Gallery
9
  * Plugin URI: http://robosoft.co/robogallery
10
  * Description: A responsive, easy and elegant way to show gallery.
11
- * Version: 1.4.7
12
  * Author: RoboSoft (c)
13
  * Author URI: http://robosoft.co/robogallery
14
  * License: GPL-2.0+
@@ -19,7 +19,7 @@
19
 
20
  if ( ! defined( 'WPINC' ) ) die;
21
  define("ROBO_GALLERY", 1);
22
- define("ROBO_GALLERY_VERSION", '1.4.7');
23
  define("ROBO_GALLERY_PATH", plugin_dir_path( __FILE__ ));
24
  define("ROBO_GALLERY_SPECIAL", 0);
25
 
8
  * Plugin Name: Robo Gallery
9
  * Plugin URI: http://robosoft.co/robogallery
10
  * Description: A responsive, easy and elegant way to show gallery.
11
+ * Version: 1.5.0
12
  * Author: RoboSoft (c)
13
  * Author URI: http://robosoft.co/robogallery
14
  * License: GPL-2.0+
19
 
20
  if ( ! defined( 'WPINC' ) ) die;
21
  define("ROBO_GALLERY", 1);
22
+ define("ROBO_GALLERY_VERSION", '1.5.0');
23
  define("ROBO_GALLERY_PATH", plugin_dir_path( __FILE__ ));
24
  define("ROBO_GALLERY_SPECIAL", 0);
25