Gwolle Guestbook - Version 2.3.5

Version Description

  • 2017-11-04
  • Add classes with dashes.
  • Small text updates.
Download this release

Release Info

Developer mpol
Plugin Icon 128x128 Gwolle Guestbook
Version 2.3.5
Comparing to
See all releases

Code changes from version 2.3.4 to 2.3.5

add-on/gb-add-on.php CHANGED
@@ -6,6 +6,10 @@
6
 
7
  function gwolle_gb_addon_translation_strings() {
8
 
 
 
 
 
9
  // function gwolle_gb_addon_page_settings() {
10
  /* translators: Commercial Add-On */
11
  esc_html_e('Add-On Settings', 'gwolle-gb');
@@ -56,6 +60,8 @@ function gwolle_gb_addon_translation_strings() {
56
  esc_attr_e('Ideas?', 'gwolle-gb');
57
  /* translators: Commercial Add-On */
58
  esc_attr_e('Please place them on the support forum. I will see what I can do.', 'gwolle-gb');
 
 
59
 
60
  // function gwolle_gb_addon_page_settingstab_form() {
61
  /* translators: Commercial Add-On */
@@ -83,7 +89,11 @@ function gwolle_gb_addon_translation_strings() {
83
  /* translators: Settings page, option for delete link */
84
  esc_html_e('Delete link', 'gwolle-gb');
85
  /* translators: Commercial Add-On */
86
- esc_html_e('Show delete link in Metabox.', 'gwolle-gb');
 
 
 
 
87
  /* translators: Commercial Add-On */
88
  esc_html_e('A link to delete the entry will be added to the metabox. Only visible for moderators and the author.', 'gwolle-gb');
89
 
6
 
7
  function gwolle_gb_addon_translation_strings() {
8
 
9
+ // description of readme
10
+ /* translators: Commercial Add-On description */
11
+ esc_html_e('Gwolle Guestbook: The Add-On is the add-on for Gwolle Guestbook that gives extra functionality for your guestbook. Meta Fields, Star ratings, Social Sharing and much more.', 'gwolle-gb');
12
+
13
  // function gwolle_gb_addon_page_settings() {
14
  /* translators: Commercial Add-On */
15
  esc_html_e('Add-On Settings', 'gwolle-gb');
60
  esc_attr_e('Ideas?', 'gwolle-gb');
61
  /* translators: Commercial Add-On */
62
  esc_attr_e('Please place them on the support forum. I will see what I can do.', 'gwolle-gb');
63
+ /* translators: Commercial Add-On */
64
+ esc_html__( 'Please place them on the %ssupport forum%s. I will see what I can do.', 'gwolle-gb' );
65
 
66
  // function gwolle_gb_addon_page_settingstab_form() {
67
  /* translators: Commercial Add-On */
89
  /* translators: Settings page, option for delete link */
90
  esc_html_e('Delete link', 'gwolle-gb');
91
  /* translators: Commercial Add-On */
92
+ esc_html_e('Show delete link in Metabox.', 'gwolle-gb'); // deprecated since 1.0.3
93
+ /* translators: Commercial Add-On */
94
+ esc_html_e('Show delete link in Metabox for moderators.', 'gwolle-gb');
95
+ /* translators: Commercial Add-On */
96
+ esc_html_e('Show delete link in Metabox for author.', 'gwolle-gb');
97
  /* translators: Commercial Add-On */
98
  esc_html_e('A link to delete the entry will be added to the metabox. Only visible for moderators and the author.', 'gwolle-gb');
99
 
admin/gb-page-add-on.php CHANGED
@@ -85,8 +85,8 @@ function gwolle_gb_addon_buy() {
85
  <h3><?php esc_html_e('Buy the Add-On.', 'gwolle-gb'); ?></h3>
86
  <p><?php
87
  $link = '<a href="http://www.mojomarketplace.com/item/gwolle-gb-add-on" target="_blank">';
88
- echo sprintf( esc_html__( 'You can buy this add-on at the %sMojo Marketplace%s for only $ 9.', 'gwolle-gb' ), $link, '</a>' ); ?><br />
89
- <?php esc_html_e('Support for the add-on is also at the Mojo Marketplace website.','gwolle-gb'); ?>
90
  </p>
91
  <?php
92
  }
@@ -112,9 +112,8 @@ function gwolle_gb_addon_demo() {
112
  function gwolle_gb_addon_development() {
113
  ?>
114
  <p><?php
115
- esc_html_e('Over the last few years I put about 1000+ hours into this Guestbook plugin in development and support.', 'gwolle-gb'); echo '<br />';
116
- esc_html_e('It is just a hobby for me and it is not about the money. I enjoy it very much.', 'gwolle-gb'); echo '<br />';
117
- esc_html_e('I do like to see some money in return for my work.', 'gwolle-gb'); echo '<br />'; echo '<br />';
118
  esc_html_e('If you buy this Add-On, that will encourage me and does add motivation to keep maintaining and supporting this guestbook software. It is a good way to support me and my work.', 'gwolle-gb');
119
  ?>
120
  </p>
85
  <h3><?php esc_html_e('Buy the Add-On.', 'gwolle-gb'); ?></h3>
86
  <p><?php
87
  $link = '<a href="http://www.mojomarketplace.com/item/gwolle-gb-add-on" target="_blank">';
88
+ echo sprintf( esc_html__( 'You can buy this add-on at the %sMOJO Marketplace%s for only $ 9.', 'gwolle-gb' ), $link, '</a>' ); ?><br />
89
+ <?php esc_html_e('Support for the add-on is also at the MOJO Marketplace website.','gwolle-gb'); ?>
90
  </p>
91
  <?php
92
  }
112
  function gwolle_gb_addon_development() {
113
  ?>
114
  <p><?php
115
+ esc_html_e('Over the last few years I put about 1000+ hours into this Guestbook plugin in development and support.', 'gwolle-gb'); echo '<br />'; echo '<br />';
116
+ esc_html_e('It is just a hobby for me and even if it is not about the money, I still enjoy seeing some money in return for my work.', 'gwolle-gb'); echo '<br />'; echo '<br />';
 
117
  esc_html_e('If you buy this Add-On, that will encourage me and does add motivation to keep maintaining and supporting this guestbook software. It is a good way to support me and my work.', 'gwolle-gb');
118
  ?>
119
  </p>
frontend/css/gwolle-gb-frontend.css CHANGED
@@ -18,31 +18,38 @@
18
 
19
  /* Write button */
20
 
21
- #gwolle_gb_write_button {
 
22
  margin: 20px 0 10px;
23
  }
24
 
25
 
26
  /* Write section */
27
 
28
- #gwolle_gb form#gwolle_gb_new_entry {
 
29
  margin-top: 20px;
30
  text-align: left;
31
  }
32
 
33
  .gwolle_gb_float .label,
34
- .gwolle_gb_float .input {
 
 
35
  float: left;
36
  }
37
 
38
  /* Overwrite shizzle from fancy themes */
39
- body .gwolle_gb_content a {
 
40
  box-shadow: none !important; /* Fuck Twenty Sixteen and Twenty Seventeen */
41
  }
42
 
43
  /* Submit AJAX icon */
44
  #gwolle_gb .gwolle_gb_submit_ajax_icon,
45
- #gwolle_gb .gwolle_gb_addon_preview_ajax_icon {
 
 
46
  display: none;
47
  background-image: url("../images/loading.gif");
48
  background-position: 4px 4px;
@@ -53,13 +60,15 @@ body .gwolle_gb_content a {
53
 
54
  /* Messages / Notices */
55
 
56
- #gwolle_gb #gwolle_gb_messages {
 
57
  border-left: 4px solid #7ad03a;
58
  box-shadow: 2px 2px 2px 0 rgba(0, 0, 0, 0.1);
59
  padding: 1px 12px;
60
  margin: 5px 0 15px;
61
  }
62
- #gwolle_gb #gwolle_gb_messages.error {
 
63
  border-left: 4px solid #dd3d36;
64
  }
65
 
@@ -69,8 +78,11 @@ body .gwolle_gb_content a {
69
  }
70
 
71
  #gwolle_gb form#gwolle_gb_new_entry .input.error, /* recaptcha */
 
72
  #gwolle_gb form#gwolle_gb_new_entry input.error,
73
- #gwolle_gb form#gwolle_gb_new_entry textarea.error {
 
 
74
  border: 1px solid #dd3d36;
75
  }
76
 
@@ -144,7 +156,8 @@ body .gwolle_gb_content a {
144
 
145
  /* Read section */
146
 
147
- #gwolle_gb #gwolle_gb_entries {
 
148
  position: relative;
149
  }
150
 
@@ -168,7 +181,7 @@ body .gwolle_gb_content a {
168
  padding: 10px 0;
169
  margin: 0;
170
  }
171
- #gwolle_gb .gwolle_gb_first {
172
  border-width: 0px;
173
  }
174
  #gwolle_gb .gb-entry-count_0 {
@@ -243,7 +256,8 @@ div.gb-metabox-line.gb-social-media-share a {
243
 
244
  /* Admin Reply */
245
 
246
- #gwolle_gb .gb-entry-admin_reply {
 
247
  margin: 10px 0 0 40px;
248
  padding: 4px 10px 4px 10px;
249
  border-left: 1px solid #ddd;
@@ -252,7 +266,8 @@ div.gb-metabox-line.gb-social-media-share a {
252
 
253
  /* Infinite Scroll */
254
 
255
- #gwolle_gb .gwolle_gb_load_message {
 
256
  display: none;
257
  background-color: #eee;
258
  background-image: url("../images/loading.gif");
@@ -268,30 +283,35 @@ div.gb-metabox-line.gb-social-media-share a {
268
  position: absolute;
269
  z-index: 5;
270
  }
271
- #gwolle_gb .gwolle_gb_end_message {
 
272
  padding-left: 10px;
273
  }
274
 
275
 
276
  /* Widget */
277
 
278
- li.gwolle_gb_widget {
 
279
  border-bottom: 1px #ddd solid;
280
  padding: 3px 0;
281
  margin: 0;
282
  }
283
 
284
- p.gwolle_gb_link {
 
285
  padding: 3px 0;
286
  }
287
 
288
 
289
  /* Widget Slider */
290
 
291
- ul.gwolle_gb_widget_slider {
 
292
  margin-left: 0;
293
  }
294
- ul.gwolle_gb_widget_slider .sss {
 
295
  height: 0;
296
  margin: 0;
297
  padding: 0;
@@ -301,15 +321,19 @@ ul.gwolle_gb_widget_slider .sss {
301
  }
302
 
303
  ul.gwolle_gb_widget_slider li:first-child,
304
- li.gwolle_gb_widget.ssslide:first-child {
 
 
305
  display: inline-block;
306
  }
307
- ul.gwolle_gb_widget_slider li {
 
308
  display: none;
309
  border-bottom: 0px solid #ddd;
310
  }
311
 
312
- li.gwolle_gb_widget.ssslide {
 
313
  width: 100%;
314
  margin: 0;
315
  padding: 0;
@@ -330,7 +354,9 @@ li.gwolle_gb_widget.ssslide {
330
 
331
  /* Form inside a widget */
332
  .widget .gwolle_gb_float .label,
 
333
  .widget .gwolle_gb_float .input,
 
334
  .widget-area .gwolle_gb_float .label,
335
  .widget-area .gwolle_gb_float .input {
336
  float: none;
@@ -349,7 +375,9 @@ li.gwolle_gb_widget.ssslide {
349
 
350
  @media only screen and (max-width: 820px) {
351
  .gwolle_gb_float .label,
352
- .gwolle_gb_float .input {
 
 
353
  float: none;
354
  }
355
  #gwolle_gb .label {
18
 
19
  /* Write button */
20
 
21
+ #gwolle_gb_write_button,
22
+ #gwolle-gb-write-button {
23
  margin: 20px 0 10px;
24
  }
25
 
26
 
27
  /* Write section */
28
 
29
+ #gwolle_gb form#gwolle_gb_new_entry,
30
+ #gwolle_gb form#gwolle-gb-new-entry {
31
  margin-top: 20px;
32
  text-align: left;
33
  }
34
 
35
  .gwolle_gb_float .label,
36
+ .gwolle_gb_float .input,
37
+ .gwolle-gb-float .label,
38
+ .gwolle-gb-float .input {
39
  float: left;
40
  }
41
 
42
  /* Overwrite shizzle from fancy themes */
43
+ body .gwolle_gb_content a,
44
+ body .gwolle-gb-content a {
45
  box-shadow: none !important; /* Fuck Twenty Sixteen and Twenty Seventeen */
46
  }
47
 
48
  /* Submit AJAX icon */
49
  #gwolle_gb .gwolle_gb_submit_ajax_icon,
50
+ #gwolle_gb .gwolle-gb-submit-ajax-icon,
51
+ #gwolle_gb .gwolle_gb_addon_preview_ajax_icon,
52
+ #gwolle_gb .gwolle-gb-addon-preview-ajax-icon {
53
  display: none;
54
  background-image: url("../images/loading.gif");
55
  background-position: 4px 4px;
60
 
61
  /* Messages / Notices */
62
 
63
+ #gwolle_gb #gwolle_gb_messages,
64
+ #gwolle_gb #gwolle-gb-messages {
65
  border-left: 4px solid #7ad03a;
66
  box-shadow: 2px 2px 2px 0 rgba(0, 0, 0, 0.1);
67
  padding: 1px 12px;
68
  margin: 5px 0 15px;
69
  }
70
+ #gwolle_gb #gwolle_gb_messages.error,
71
+ #gwolle_gb #gwolle-gb-messages.error {
72
  border-left: 4px solid #dd3d36;
73
  }
74
 
78
  }
79
 
80
  #gwolle_gb form#gwolle_gb_new_entry .input.error, /* recaptcha */
81
+ #gwolle_gb form#gwolle-gb-new-entry .input.error, /* recaptcha */
82
  #gwolle_gb form#gwolle_gb_new_entry input.error,
83
+ #gwolle_gb form#gwolle-gb-new-entry input.error,
84
+ #gwolle_gb form#gwolle_gb_new_entry textarea.error,
85
+ #gwolle_gb form#gwolle-gb-new-entry textarea.error {
86
  border: 1px solid #dd3d36;
87
  }
88
 
156
 
157
  /* Read section */
158
 
159
+ #gwolle_gb #gwolle_gb_entries,
160
+ #gwolle_gb #gwolle-gb-entries {
161
  position: relative;
162
  }
163
 
181
  padding: 10px 0;
182
  margin: 0;
183
  }
184
+ #gwolle_gb .gwolle-gb-first {
185
  border-width: 0px;
186
  }
187
  #gwolle_gb .gb-entry-count_0 {
256
 
257
  /* Admin Reply */
258
 
259
+ #gwolle_gb .gb-entry-admin_reply,
260
+ #gwolle_gb .gb-entry-admin-reply {
261
  margin: 10px 0 0 40px;
262
  padding: 4px 10px 4px 10px;
263
  border-left: 1px solid #ddd;
266
 
267
  /* Infinite Scroll */
268
 
269
+ #gwolle_gb .gwolle_gb_load_message,
270
+ #gwolle_gb .gwolle-gb-load-message {
271
  display: none;
272
  background-color: #eee;
273
  background-image: url("../images/loading.gif");
283
  position: absolute;
284
  z-index: 5;
285
  }
286
+ #gwolle_gb .gwolle_gb_end_message,
287
+ #gwolle_gb .gwolle-gb-end-message {
288
  padding-left: 10px;
289
  }
290
 
291
 
292
  /* Widget */
293
 
294
+ li.gwolle_gb_widget,
295
+ li.gwolle-gb-widget {
296
  border-bottom: 1px #ddd solid;
297
  padding: 3px 0;
298
  margin: 0;
299
  }
300
 
301
+ p.gwolle_gb_link,
302
+ p.gwolle-gb-link {
303
  padding: 3px 0;
304
  }
305
 
306
 
307
  /* Widget Slider */
308
 
309
+ ul.gwolle_gb_widget_slider,
310
+ ul.gwolle-gb-widget-slider {
311
  margin-left: 0;
312
  }
313
+ ul.gwolle_gb_widget_slider .sss,
314
+ ul.gwolle-gb-widget-slider .sss {
315
  height: 0;
316
  margin: 0;
317
  padding: 0;
321
  }
322
 
323
  ul.gwolle_gb_widget_slider li:first-child,
324
+ ul.gwolle-gb-widget-slider li:first-child,
325
+ li.gwolle_gb_widget.ssslide:first-child,
326
+ li.gwolle-gb-widget.ssslide:first-child {
327
  display: inline-block;
328
  }
329
+ ul.gwolle_gb_widget_slider li,
330
+ ul.gwolle-gb-widget-slider li {
331
  display: none;
332
  border-bottom: 0px solid #ddd;
333
  }
334
 
335
+ li.gwolle_gb_widget.ssslide,
336
+ li.gwolle-gb-widget.ssslide {
337
  width: 100%;
338
  margin: 0;
339
  padding: 0;
354
 
355
  /* Form inside a widget */
356
  .widget .gwolle_gb_float .label,
357
+ .widget .gwolle-gb-float .label,
358
  .widget .gwolle_gb_float .input,
359
+ .widget .gwolle-gb-float .input,
360
  .widget-area .gwolle_gb_float .label,
361
  .widget-area .gwolle_gb_float .input {
362
  float: none;
375
 
376
  @media only screen and (max-width: 820px) {
377
  .gwolle_gb_float .label,
378
+ .gwolle-gb-float .label,
379
+ .gwolle_gb_float .input,
380
+ .gwolle-gb-float .input {
381
  float: none;
382
  }
383
  #gwolle_gb .label {
frontend/gb-form-posthandling.php CHANGED
@@ -57,12 +57,12 @@ function gwolle_gb_frontend_posthandling() {
57
  gwolle_gb_add_formdata( 'author_name', $author_name );
58
  if ( $author_name == "" ) {
59
  if ( isset($form_setting['form_name_mandatory']) && $form_setting['form_name_mandatory'] === 'true' ) {
60
- gwolle_gb_add_message( '<p class="error_fields"><strong>' . esc_html__('Your name is not filled in, even though it is mandatory.', 'gwolle-gb') . '</strong></p>', true, 'author_name'); // mandatory
61
  }
62
  }
63
  } else {
64
  if ( isset($form_setting['form_name_mandatory']) && $form_setting['form_name_mandatory'] === 'true' ) {
65
- gwolle_gb_add_message( '<p class="error_fields"><strong>' . esc_html__('Your name is not filled in, even though it is mandatory.', 'gwolle-gb') . '</strong></p>', true, 'author_name'); // mandatory
66
  }
67
  }
68
  }
@@ -76,12 +76,12 @@ function gwolle_gb_frontend_posthandling() {
76
  gwolle_gb_add_formdata( 'author_origin', $author_origin );
77
  if ( $author_origin == "" ) {
78
  if ( isset($form_setting['form_city_mandatory']) && $form_setting['form_city_mandatory'] === 'true' ) {
79
- gwolle_gb_add_message( '<p class="error_fields"><strong>' . esc_html__('Your origin is not filled in, even though it is mandatory.', 'gwolle-gb') . '</strong></p>', true, 'author_origin'); // mandatory
80
  }
81
  }
82
  } else {
83
  if ( isset($form_setting['form_city_mandatory']) && $form_setting['form_city_mandatory'] === 'true' ) {
84
- gwolle_gb_add_message( '<p class="error_fields"><strong>' . esc_html__('Your origin is not filled in, even though it is mandatory.', 'gwolle-gb') . '</strong></p>', true, 'author_origin'); // mandatory
85
  }
86
  }
87
  }
@@ -95,11 +95,11 @@ function gwolle_gb_frontend_posthandling() {
95
  if ( filter_var( $author_email, FILTER_VALIDATE_EMAIL ) ) {
96
  // Valid Email address.
97
  } else if ( isset($form_setting['form_email_mandatory']) && $form_setting['form_email_mandatory'] === 'true' ) {
98
- gwolle_gb_add_message( '<p class="error_fields"><strong>' . esc_html__('Your e-mail address is not filled in correctly, even though it is mandatory.', 'gwolle-gb') . '</strong></p>', true, 'author_email'); // mandatory
99
  }
100
  } else {
101
  if ( isset($form_setting['form_email_mandatory']) && $form_setting['form_email_mandatory'] === 'true' ) {
102
- gwolle_gb_add_message( '<p class="error_fields"><strong>' . esc_html__('Your e-mail address is not filled in correctly, even though it is mandatory.', 'gwolle-gb') . '</strong></p>', true, 'author_email'); // mandatory
103
  }
104
  }
105
  } else {
@@ -123,11 +123,11 @@ function gwolle_gb_frontend_posthandling() {
123
  if ( filter_var( $author_website, FILTER_VALIDATE_URL ) ) {
124
  // Valid Website URL.
125
  } else if ( isset($form_setting['form_homepage_mandatory']) && $form_setting['form_homepage_mandatory'] === 'true' ) {
126
- gwolle_gb_add_message( '<p class="error_fields"><strong>' . esc_html__('Your website is not filled in, even though it is mandatory.', 'gwolle-gb') . '</strong></p>', true, 'author_website'); // mandatory
127
  }
128
  } else {
129
  if ( isset($form_setting['form_homepage_mandatory']) && $form_setting['form_homepage_mandatory'] === 'true' ) {
130
- gwolle_gb_add_message( '<p class="error_fields"><strong>' . esc_html__('Your website is not filled in, even though it is mandatory.', 'gwolle-gb') . '</strong></p>', true, 'author_website'); // mandatory
131
  }
132
  }
133
  }
@@ -138,7 +138,7 @@ function gwolle_gb_frontend_posthandling() {
138
  $content = trim($_POST['gwolle_gb_content']);
139
  if ( $content == "" ) {
140
  if ( isset($form_setting['form_message_mandatory']) && $form_setting['form_message_mandatory'] === 'true' ) {
141
- gwolle_gb_add_message( '<p class="error_fields"><strong>' . esc_html__('There is no message, even though it is mandatory.', 'gwolle-gb') . '</strong></p>',true, 'content'); // mandatory
142
  }
143
  } else {
144
  $content = gwolle_gb_maybe_encode_emoji( $content, 'content' );
@@ -147,7 +147,7 @@ function gwolle_gb_frontend_posthandling() {
147
  }
148
  } else {
149
  if ( isset($form_setting['form_message_mandatory']) && $form_setting['form_message_mandatory'] === 'true' ) {
150
- gwolle_gb_add_message( '<p class="error_fields"><strong>' . esc_html__('There is no message, even though it is mandatory.', 'gwolle-gb') . '</strong></p>',true, 'content'); // mandatory
151
  }
152
  }
153
  }
@@ -161,7 +161,7 @@ function gwolle_gb_frontend_posthandling() {
161
  if ( isset($_POST['gwolle_gb_antispam_answer']) && trim($_POST['gwolle_gb_antispam_answer']) == trim($antispam_answer) ) {
162
  //echo "You got it!";
163
  } else {
164
- gwolle_gb_add_message( '<p class="error_fields"><strong>' . esc_html__('The anti-spam question was not answered correctly, even though it is mandatory.', 'gwolle-gb') . '</strong></p>', true, 'antispam_answer'); // mandatory
165
  }
166
  }
167
  if ( isset($_POST['gwolle_gb_antispam_answer']) ) {
@@ -183,7 +183,7 @@ function gwolle_gb_frontend_posthandling() {
183
  $gwolle_gb_captcha_correct = $gwolle_gb_captcha->check( $gwolle_gb_captcha_prefix, $gwolle_gb_captcha_code );
184
  // If CAPTCHA validation fails (incorrect value entered in CAPTCHA field) mark comment as spam.
185
  if ( true != $gwolle_gb_captcha_correct ) {
186
- gwolle_gb_add_message( '<p class="error_fields"><strong>' . esc_html__('The CAPTCHA was not filled in correctly, even though it is mandatory.', 'gwolle-gb') . '</strong></p>', true, 'captcha_code' );
187
  //gwolle_gb_add_message( '<p style="display_:none"><strong>' . $gwolle_gb_captcha_correct . '</strong></p>' );
188
  } else {
189
  // verified!
@@ -212,7 +212,7 @@ function gwolle_gb_frontend_posthandling() {
212
  if ( ! $set_data ) {
213
  // Data is not set in the Instance, something happened
214
  do_action( 'gwolle_gb_notsaved_entry_frontend', $entry );
215
- gwolle_gb_add_message( '<p class="set_data"><strong>' . esc_html__('There were errors submitting your guestbook entry.', 'gwolle-gb') . '</strong></p>', true, false );
216
  return false;
217
  }
218
 
@@ -373,7 +373,7 @@ function gwolle_gb_frontend_posthandling() {
373
  foreach ( $entries as $entry_email ) {
374
  if ( $entry_email->get_content() == $entry->get_content() ) {
375
  // Match is double entry
376
- gwolle_gb_add_message( '<p class="double_post"><strong>' . esc_html__('Double post: An entry with the data you entered has already been saved.', 'gwolle-gb') . '</strong></p>', true, 'content' );
377
  do_action( 'gwolle_gb_notsaved_entry_frontend', $entry );
378
  return false;
379
  }
@@ -393,7 +393,7 @@ function gwolle_gb_frontend_posthandling() {
393
  if ( $save ) {
394
  // We have been saved to the Database.
395
 
396
- gwolle_gb_add_message( '<p class="entry_saved">' . esc_html__('Thank you for your entry.','gwolle-gb') . '</p>', false, false );
397
  if ( $entry->get_ischecked() == 0 || $entry->get_isspam() == 1 ) {
398
  gwolle_gb_add_message( '<p>' . esc_html__('We will review it and unlock it in a short while.','gwolle-gb') . '</p>', false, false );
399
  }
@@ -432,7 +432,7 @@ function gwolle_gb_frontend_posthandling() {
432
 
433
  do_action( 'gwolle_gb_notsaved_entry_frontend', $entry );
434
 
435
- gwolle_gb_add_message( '<p class="entry_notsaved">' . esc_html__('Sorry, something went wrong with saving your entry. Please contact a site admin.','gwolle-gb') . '</p>', true, false );
436
 
437
  return false;
438
 
57
  gwolle_gb_add_formdata( 'author_name', $author_name );
58
  if ( $author_name == "" ) {
59
  if ( isset($form_setting['form_name_mandatory']) && $form_setting['form_name_mandatory'] === 'true' ) {
60
+ gwolle_gb_add_message( '<p class="error_fields gb-error-fields"><strong>' . esc_html__('Your name is not filled in, even though it is mandatory.', 'gwolle-gb') . '</strong></p>', true, 'author_name'); // mandatory
61
  }
62
  }
63
  } else {
64
  if ( isset($form_setting['form_name_mandatory']) && $form_setting['form_name_mandatory'] === 'true' ) {
65
+ gwolle_gb_add_message( '<p class="error_fields gb-error-fields"><strong>' . esc_html__('Your name is not filled in, even though it is mandatory.', 'gwolle-gb') . '</strong></p>', true, 'author_name'); // mandatory
66
  }
67
  }
68
  }
76
  gwolle_gb_add_formdata( 'author_origin', $author_origin );
77
  if ( $author_origin == "" ) {
78
  if ( isset($form_setting['form_city_mandatory']) && $form_setting['form_city_mandatory'] === 'true' ) {
79
+ gwolle_gb_add_message( '<p class="error_fields gb-error-fields"><strong>' . esc_html__('Your origin is not filled in, even though it is mandatory.', 'gwolle-gb') . '</strong></p>', true, 'author_origin'); // mandatory
80
  }
81
  }
82
  } else {
83
  if ( isset($form_setting['form_city_mandatory']) && $form_setting['form_city_mandatory'] === 'true' ) {
84
+ gwolle_gb_add_message( '<p class="error_fields gb-error-fields"><strong>' . esc_html__('Your origin is not filled in, even though it is mandatory.', 'gwolle-gb') . '</strong></p>', true, 'author_origin'); // mandatory
85
  }
86
  }
87
  }
95
  if ( filter_var( $author_email, FILTER_VALIDATE_EMAIL ) ) {
96
  // Valid Email address.
97
  } else if ( isset($form_setting['form_email_mandatory']) && $form_setting['form_email_mandatory'] === 'true' ) {
98
+ gwolle_gb_add_message( '<p class="error_fields gb-error-fields"><strong>' . esc_html__('Your e-mail address is not filled in correctly, even though it is mandatory.', 'gwolle-gb') . '</strong></p>', true, 'author_email'); // mandatory
99
  }
100
  } else {
101
  if ( isset($form_setting['form_email_mandatory']) && $form_setting['form_email_mandatory'] === 'true' ) {
102
+ gwolle_gb_add_message( '<p class="error_fields gb-error-fields"><strong>' . esc_html__('Your e-mail address is not filled in correctly, even though it is mandatory.', 'gwolle-gb') . '</strong></p>', true, 'author_email'); // mandatory
103
  }
104
  }
105
  } else {
123
  if ( filter_var( $author_website, FILTER_VALIDATE_URL ) ) {
124
  // Valid Website URL.
125
  } else if ( isset($form_setting['form_homepage_mandatory']) && $form_setting['form_homepage_mandatory'] === 'true' ) {
126
+ gwolle_gb_add_message( '<p class="error_fields gb-error-fields"><strong>' . esc_html__('Your website is not filled in, even though it is mandatory.', 'gwolle-gb') . '</strong></p>', true, 'author_website'); // mandatory
127
  }
128
  } else {
129
  if ( isset($form_setting['form_homepage_mandatory']) && $form_setting['form_homepage_mandatory'] === 'true' ) {
130
+ gwolle_gb_add_message( '<p class="error_fields gb-error-fields"><strong>' . esc_html__('Your website is not filled in, even though it is mandatory.', 'gwolle-gb') . '</strong></p>', true, 'author_website'); // mandatory
131
  }
132
  }
133
  }
138
  $content = trim($_POST['gwolle_gb_content']);
139
  if ( $content == "" ) {
140
  if ( isset($form_setting['form_message_mandatory']) && $form_setting['form_message_mandatory'] === 'true' ) {
141
+ gwolle_gb_add_message( '<p class="error_fields gb-error-fields"><strong>' . esc_html__('There is no message, even though it is mandatory.', 'gwolle-gb') . '</strong></p>',true, 'content'); // mandatory
142
  }
143
  } else {
144
  $content = gwolle_gb_maybe_encode_emoji( $content, 'content' );
147
  }
148
  } else {
149
  if ( isset($form_setting['form_message_mandatory']) && $form_setting['form_message_mandatory'] === 'true' ) {
150
+ gwolle_gb_add_message( '<p class="error_fields gb-error-fields"><strong>' . esc_html__('There is no message, even though it is mandatory.', 'gwolle-gb') . '</strong></p>',true, 'content'); // mandatory
151
  }
152
  }
153
  }
161
  if ( isset($_POST['gwolle_gb_antispam_answer']) && trim($_POST['gwolle_gb_antispam_answer']) == trim($antispam_answer) ) {
162
  //echo "You got it!";
163
  } else {
164
+ gwolle_gb_add_message( '<p class="error_fields gb-error-fields"><strong>' . esc_html__('The anti-spam question was not answered correctly, even though it is mandatory.', 'gwolle-gb') . '</strong></p>', true, 'antispam_answer'); // mandatory
165
  }
166
  }
167
  if ( isset($_POST['gwolle_gb_antispam_answer']) ) {
183
  $gwolle_gb_captcha_correct = $gwolle_gb_captcha->check( $gwolle_gb_captcha_prefix, $gwolle_gb_captcha_code );
184
  // If CAPTCHA validation fails (incorrect value entered in CAPTCHA field) mark comment as spam.
185
  if ( true != $gwolle_gb_captcha_correct ) {
186
+ gwolle_gb_add_message( '<p class="error_fields gb-error-fields"><strong>' . esc_html__('The CAPTCHA was not filled in correctly, even though it is mandatory.', 'gwolle-gb') . '</strong></p>', true, 'captcha_code' );
187
  //gwolle_gb_add_message( '<p style="display_:none"><strong>' . $gwolle_gb_captcha_correct . '</strong></p>' );
188
  } else {
189
  // verified!
212
  if ( ! $set_data ) {
213
  // Data is not set in the Instance, something happened
214
  do_action( 'gwolle_gb_notsaved_entry_frontend', $entry );
215
+ gwolle_gb_add_message( '<p class="set_data gb-set-data"><strong>' . esc_html__('There were errors submitting your guestbook entry.', 'gwolle-gb') . '</strong></p>', true, false );
216
  return false;
217
  }
218
 
373
  foreach ( $entries as $entry_email ) {
374
  if ( $entry_email->get_content() == $entry->get_content() ) {
375
  // Match is double entry
376
+ gwolle_gb_add_message( '<p class="double_post gb-double-post"><strong>' . esc_html__('Double post: An entry with the data you entered has already been saved.', 'gwolle-gb') . '</strong></p>', true, 'content' );
377
  do_action( 'gwolle_gb_notsaved_entry_frontend', $entry );
378
  return false;
379
  }
393
  if ( $save ) {
394
  // We have been saved to the Database.
395
 
396
+ gwolle_gb_add_message( '<p class="entry_saved gb-entry-saved">' . esc_html__('Thank you for your entry.','gwolle-gb') . '</p>', false, false );
397
  if ( $entry->get_ischecked() == 0 || $entry->get_isspam() == 1 ) {
398
  gwolle_gb_add_message( '<p>' . esc_html__('We will review it and unlock it in a short while.','gwolle-gb') . '</p>', false, false );
399
  }
432
 
433
  do_action( 'gwolle_gb_notsaved_entry_frontend', $entry );
434
 
435
+ gwolle_gb_add_message( '<p class="entry_notsaved gb-entry-notsaved">' . esc_html__('Sorry, something went wrong with saving your entry. Please contact a site admin.','gwolle-gb') . '</p>', true, false );
436
 
437
  return false;
438
 
frontend/gb-form.php CHANGED
@@ -135,10 +135,10 @@ function gwolle_gb_frontend_write( $shortcode_atts, $shortcode ) {
135
  $form_setting = gwolle_gb_get_setting( 'form' );
136
  $autofocus = ' autofocus="autofocus"';
137
  if ( get_option( 'gwolle_gb-labels_float', 'true' ) === 'true' ) {
138
- $formclass .= ' gwolle_gb_float';
139
  }
140
  if ( get_option( 'gwolle_gb-form_ajax', 'true' ) === 'true' ) {
141
- $formclass .= ' gwolle_gb_form_ajax';
142
  }
143
 
144
  // Form for submitting new entries
135
  $form_setting = gwolle_gb_get_setting( 'form' );
136
  $autofocus = ' autofocus="autofocus"';
137
  if ( get_option( 'gwolle_gb-labels_float', 'true' ) === 'true' ) {
138
+ $formclass .= ' gwolle_gb_float gwolle-gb-float';
139
  }
140
  if ( get_option( 'gwolle_gb-form_ajax', 'true' ) === 'true' ) {
141
+ $formclass .= ' gwolle_gb_form_ajax gwolle-gb-form-ajax';
142
  }
143
 
144
  // Form for submitting new entries
frontend/gb-read.php CHANGED
@@ -128,7 +128,7 @@ function gwolle_gb_frontend_read( $shortcode_atts, $shortcode ) {
128
  $pagination = gwolle_gb_pagination_frontend( $pageNum, $pages_total );
129
  $output .= $pagination;
130
  } else if ( $navigation == 1 ) {
131
- $entries_list_class .= 'gwolle_gb_infinite';
132
  }
133
  $entries_list_class = apply_filters( 'gwolle_gb_entries_list_class', $entries_list_class );
134
 
128
  $pagination = gwolle_gb_pagination_frontend( $pageNum, $pages_total );
129
  $output .= $pagination;
130
  } else if ( $navigation == 1 ) {
131
+ $entries_list_class .= 'gwolle_gb_infinite gwolle-gb-infinite';
132
  }
133
  $entries_list_class = apply_filters( 'gwolle_gb_entries_list_class', $entries_list_class );
134
 
frontend/gb-shortcode-widget.php CHANGED
@@ -48,14 +48,14 @@ function get_gwolle_gb_shortcode_widget( $atts ) {
48
 
49
  $html5 = current_theme_supports( 'html5' );
50
 
51
- $widget_class = 'gwolle_gb_widget';
52
  $widget_class = apply_filters( 'gwolle_gb_widget_list_class', $widget_class );
53
- $widget_item_class = 'gwolle_gb_widget';
54
  $widget_item_class = apply_filters( 'gwolle_gb_widget_item_class', $widget_item_class );
55
 
56
 
57
  $widget_html = '
58
- <div class="gwolle_gb_widget">';
59
  $widget_html .= apply_filters('widget_title', $widget_title);
60
 
61
  $widget_html .= '
48
 
49
  $html5 = current_theme_supports( 'html5' );
50
 
51
+ $widget_class = 'gwolle_gb_widget gwolle-gb-widget';
52
  $widget_class = apply_filters( 'gwolle_gb_widget_list_class', $widget_class );
53
+ $widget_item_class = 'gwolle_gb_widget gwolle-gb-widget';
54
  $widget_item_class = apply_filters( 'gwolle_gb_widget_item_class', $widget_item_class );
55
 
56
 
57
  $widget_html = '
58
+ <div class="gwolle_gb_widget gwolle-gb-widget">';
59
  $widget_html .= apply_filters('widget_title', $widget_title);
60
 
61
  $widget_html .= '
frontend/gb-widget.php CHANGED
@@ -61,10 +61,10 @@ if (function_exists('register_sidebar') && class_exists('WP_Widget')) {
61
  if ( $slider ) {
62
  wp_register_script( 'gwolle_gb_widget_sss', plugins_url( '/js/sss/sss.js', __FILE__ ), 'jquery', GWOLLE_GB_VER, true );
63
  wp_enqueue_script( 'gwolle_gb_widget_sss' );
64
- $widget_class .= ' gwolle_gb_widget_slider';
65
  }
66
  $widget_class = apply_filters( 'gwolle_gb_widget_list_class', $widget_class );
67
- $widget_item_class = 'gwolle_gb_widget';
68
  $widget_item_class = apply_filters( 'gwolle_gb_widget_item_class', $widget_item_class );
69
 
70
  // Init
@@ -72,7 +72,7 @@ if (function_exists('register_sidebar') && class_exists('WP_Widget')) {
72
 
73
  $widget_html .= $before_widget;
74
  $widget_html .= '
75
- <div class="gwolle_gb_widget">';
76
 
77
  if ($widget_title !== FALSE) {
78
  $widget_html .= $before_title . apply_filters('widget_title', $widget_title) . $after_title;
@@ -233,7 +233,7 @@ if (function_exists('register_sidebar') && class_exists('WP_Widget')) {
233
  // Post the link to the Guestbook.
234
  if ( (int) $postid > 0 ) {
235
  $widget_html .= '
236
- <p class="gwolle_gb_link">
237
  <a href="' . $permalink . '" title="' . esc_attr__('Click here to get to the guestbook.', 'gwolle-gb') . '">' . $link_text . ' &raquo;</a>
238
  </p>';
239
  }
61
  if ( $slider ) {
62
  wp_register_script( 'gwolle_gb_widget_sss', plugins_url( '/js/sss/sss.js', __FILE__ ), 'jquery', GWOLLE_GB_VER, true );
63
  wp_enqueue_script( 'gwolle_gb_widget_sss' );
64
+ $widget_class .= ' gwolle_gb_widget_slider gwolle-gb-widget-slider';
65
  }
66
  $widget_class = apply_filters( 'gwolle_gb_widget_list_class', $widget_class );
67
+ $widget_item_class = 'gwolle_gb_widget gwolle-gb-widget';
68
  $widget_item_class = apply_filters( 'gwolle_gb_widget_item_class', $widget_item_class );
69
 
70
  // Init
72
 
73
  $widget_html .= $before_widget;
74
  $widget_html .= '
75
+ <div class="gwolle_gb_widget gwolle-gb-widget">';
76
 
77
  if ($widget_title !== FALSE) {
78
  $widget_html .= $before_title . apply_filters('widget_title', $widget_title) . $after_title;
233
  // Post the link to the Guestbook.
234
  if ( (int) $postid > 0 ) {
235
  $widget_html .= '
236
+ <p class="gwolle_gb_link gwolle-gb-link">
237
  <a href="' . $permalink . '" title="' . esc_attr__('Click here to get to the guestbook.', 'gwolle-gb') . '">' . $link_text . ' &raquo;</a>
238
  </p>';
239
  }
frontend/gwolle_gb-entry.php CHANGED
@@ -36,12 +36,12 @@ if ( ! function_exists('gwolle_gb_entry_template') ) {
36
  $entry_class = ' gb-entry_' . $entry->get_id();
37
  $entry_class .= ' gb-entry-count_' . $counter;
38
  if ( is_int( $counter / 2 ) ) {
39
- $entry_class .= ' gwolle_gb_even';
40
  } else {
41
- $entry_class .= ' gwolle_gb_uneven';
42
  }
43
  if ( $first == true ) {
44
- $entry_class .= ' gwolle_gb_first';
45
  }
46
 
47
  if ( get_option( 'gwolle_gb-admin_style', 'false' ) === 'true' ) {
@@ -131,7 +131,7 @@ if ( ! function_exists('gwolle_gb_entry_template') ) {
131
  }
132
  $excerpt_length = (int) get_option( 'gwolle_gb-excerpt_length', 0 );
133
  if ( $excerpt_length > 0 ) {
134
- $readmore = '... <a href="#" class="gwolle_gb_readmore" title="' . esc_attr__('Expand this entry and read more', 'gwolle-gb') . '">' . esc_html__('Read more', 'gwolle-gb') . '</a>';
135
  $entry_excerpt = wp_trim_words( $entry_content, $excerpt_length, $readmore );
136
  $entry_content = '
137
  <div class="gb-entry-excerpt">' . $entry_excerpt . '</div>
@@ -163,7 +163,7 @@ if ( ! function_exists('gwolle_gb_entry_template') ) {
163
 
164
  /* Admin Reply Author */
165
  $admin_reply .= '
166
- <div class="gb-admin_reply_uid">';
167
  $admin_reply_name = gwolle_gb_is_moderator( $entry->get_admin_reply_uid() );
168
  /* Admin Avatar */
169
  if ( isset($read_setting['read_aavatar']) && $read_setting['read_aavatar'] === 'true' ) {
@@ -203,7 +203,7 @@ if ( ! function_exists('gwolle_gb_entry_template') ) {
203
  $admin_reply_content = gwolle_gb_bbcode_strip($admin_reply_content);
204
  }
205
  $admin_reply .= '
206
- <div class="gb-admin_reply_content">
207
  ' . $admin_reply_content . '
208
  </div>
209
  </div>';
@@ -217,7 +217,7 @@ if ( ! function_exists('gwolle_gb_entry_template') ) {
217
  if ( $gb_metabox ) {
218
  $entry_output .= '
219
  <div class="gb-metabox-handle">' . esc_html__('...', 'gwolle-gb' ) . '</div>
220
- <div class="gb-metabox gwolle_gb_invisible">' .
221
  $gb_metabox . '
222
  </div>';
223
  }
36
  $entry_class = ' gb-entry_' . $entry->get_id();
37
  $entry_class .= ' gb-entry-count_' . $counter;
38
  if ( is_int( $counter / 2 ) ) {
39
+ $entry_class .= ' gwolle_gb_even gwolle-gb-even';
40
  } else {
41
+ $entry_class .= ' gwolle_gb_uneven gwolle-gb-uneven';
42
  }
43
  if ( $first == true ) {
44
+ $entry_class .= ' gwolle_gb_first gwolle-gb-first';
45
  }
46
 
47
  if ( get_option( 'gwolle_gb-admin_style', 'false' ) === 'true' ) {
131
  }
132
  $excerpt_length = (int) get_option( 'gwolle_gb-excerpt_length', 0 );
133
  if ( $excerpt_length > 0 ) {
134
+ $readmore = '... <a href="#" class="gwolle_gb_readmore gwolle-gb-readmore" title="' . esc_attr__('Expand this entry and read more', 'gwolle-gb') . '">' . esc_html__('Read more', 'gwolle-gb') . '</a>';
135
  $entry_excerpt = wp_trim_words( $entry_content, $excerpt_length, $readmore );
136
  $entry_content = '
137
  <div class="gb-entry-excerpt">' . $entry_excerpt . '</div>
163
 
164
  /* Admin Reply Author */
165
  $admin_reply .= '
166
+ <div class="gb-admin_reply_uid gb-admin-reply-uid">';
167
  $admin_reply_name = gwolle_gb_is_moderator( $entry->get_admin_reply_uid() );
168
  /* Admin Avatar */
169
  if ( isset($read_setting['read_aavatar']) && $read_setting['read_aavatar'] === 'true' ) {
203
  $admin_reply_content = gwolle_gb_bbcode_strip($admin_reply_content);
204
  }
205
  $admin_reply .= '
206
+ <div class="gb-admin_reply_content gb-admin-reply-content">
207
  ' . $admin_reply_content . '
208
  </div>
209
  </div>';
217
  if ( $gb_metabox ) {
218
  $entry_output .= '
219
  <div class="gb-metabox-handle">' . esc_html__('...', 'gwolle-gb' ) . '</div>
220
+ <div class="gb-metabox gwolle_gb_invisible gwolle-gb-invisible">' .
221
  $gb_metabox . '
222
  </div>';
223
  }
frontend/js/gwolle-gb-frontend.js CHANGED
@@ -24,8 +24,8 @@ jQuery(document).ready(function($) {
24
  gwolle_gb_ajax_callback.add( gwolle_gb_readmore );
25
  });
26
  function gwolle_gb_readmore() {
27
- jQuery(".gwolle_gb_readmore").off('click');
28
- jQuery(".gwolle_gb_readmore").on('click', function() {
29
  var content_div = jQuery(this).parent().parent();
30
  jQuery( content_div ).find('.gb-entry-excerpt').css( 'display', 'none' );
31
  jQuery( content_div ).find('.gb-entry-full_content').slideDown(500);
@@ -61,7 +61,7 @@ var gwolle_gb_scroll_busy = false; // Handle async well. Only one request at a t
61
  var gwolle_gb_scroll_callback = jQuery.Callbacks(); // Callback function to be fired after AJAX request.
62
 
63
  jQuery(document).ready(function($) {
64
- if ( jQuery( "#gwolle_gb_entries" ).hasClass( 'gwolle_gb_infinite' ) ) {
65
  var gwolle_gb_scroll_count = 2; // We already have page 1 listed.
66
 
67
  var gwolle_gb_load_message = '<div class="gb-entry gwolle_gb_load_message">' + gwolle_gb_frontend_script.load_message + '</div>' ;
24
  gwolle_gb_ajax_callback.add( gwolle_gb_readmore );
25
  });
26
  function gwolle_gb_readmore() {
27
+ jQuery(".gwolle-gb-readmore").off('click');
28
+ jQuery(".gwolle-gb-readmore").on('click', function() {
29
  var content_div = jQuery(this).parent().parent();
30
  jQuery( content_div ).find('.gb-entry-excerpt').css( 'display', 'none' );
31
  jQuery( content_div ).find('.gb-entry-full_content').slideDown(500);
61
  var gwolle_gb_scroll_callback = jQuery.Callbacks(); // Callback function to be fired after AJAX request.
62
 
63
  jQuery(document).ready(function($) {
64
+ if ( jQuery( "#gwolle_gb_entries" ).hasClass( 'gwolle-gb-infinite' ) ) {
65
  var gwolle_gb_scroll_count = 2; // We already have page 1 listed.
66
 
67
  var gwolle_gb_load_message = '<div class="gb-entry gwolle_gb_load_message">' + gwolle_gb_frontend_script.load_message + '</div>' ;
frontend/js/sss/sss.js CHANGED
@@ -109,7 +109,7 @@ $.fn.sss = function(options) {
109
 
110
 
111
  //jQuery(document).ready(function($) {
112
- jQuery('.gwolle_gb_widget_slider').sss({
113
  slideShow : true, // Set to false to prevent SSS from automatically animating.
114
  startOn : 0, // Slide to display first. Uses array notation (0 = first slide).
115
  transition : 600, // Length (in milliseconds) of the fade transition.
109
 
110
 
111
  //jQuery(document).ready(function($) {
112
+ jQuery('.gwolle-gb-widget-slider').sss({
113
  slideShow : true, // Set to false to prevent SSS from automatically animating.
114
  startOn : 0, // Slide to display first. Uses array notation (0 = first slide).
115
  transition : 600, // Length (in milliseconds) of the fade transition.
functions/gb-messages.php CHANGED
@@ -63,8 +63,8 @@ function gwolle_gb_get_messages() {
63
  $gwolle_gb_error_fields = gwolle_gb_get_error_fields();
64
  if ( is_array( $gwolle_gb_error_fields ) && !empty( $gwolle_gb_error_fields ) ) {
65
  // There was no data filled in, even though that was mandatory.
66
- $returned_messages[] = '<p class="error_fields"><strong>' . esc_html__('There were errors submitting your guestbook entry.', 'gwolle-gb') . '</strong></p>';
67
- $returned_messages[] = '<p class="error_fields" style="display: none;">' . print_r( $gwolle_gb_error_fields, true ) . '</p>';
68
  }
69
  foreach ( $gwolle_gb_messages as $message ) {
70
  $returned_messages[] = $message;
63
  $gwolle_gb_error_fields = gwolle_gb_get_error_fields();
64
  if ( is_array( $gwolle_gb_error_fields ) && !empty( $gwolle_gb_error_fields ) ) {
65
  // There was no data filled in, even though that was mandatory.
66
+ $returned_messages[] = '<p class="error_fields gb-error-fields"><strong>' . esc_html__('There were errors submitting your guestbook entry.', 'gwolle-gb') . '</strong></p>';
67
+ $returned_messages[] = '<p class="error_fields gb-error-fields" style="display: none;">' . print_r( $gwolle_gb_error_fields, true ) . '</p>';
68
  }
69
  foreach ( $gwolle_gb_messages as $message ) {
70
  $returned_messages[] = $message;
functions/gb-metabox.php CHANGED
@@ -16,7 +16,7 @@ function gwolle_gb_entry_metabox_lines_edit_link( $gb_metabox, $entry ) {
16
  if ( function_exists('current_user_can') && current_user_can('moderate_comments') ) {
17
  $gb_metabox .= '
18
  <div class="gb-metabox-line">
19
- <a class="gwolle_gb_edit_link" href="' . admin_url('admin.php?page=' . GWOLLE_GB_FOLDER . '/editor.php&amp;entry_id=' . $entry->get_id() ) . '" title="' . esc_attr__('Edit entry', 'gwolle-gb') . '">' . esc_html__('Edit', 'gwolle-gb') . '</a>
20
  </div>';
21
  }
22
  return $gb_metabox;
16
  if ( function_exists('current_user_can') && current_user_can('moderate_comments') ) {
17
  $gb_metabox .= '
18
  <div class="gb-metabox-line">
19
+ <a class="gwolle_gb_edit_link gwolle-gb-edit-link" href="' . admin_url('admin.php?page=' . GWOLLE_GB_FOLDER . '/editor.php&amp;entry_id=' . $entry->get_id() ) . '" title="' . esc_attr__('Edit entry', 'gwolle-gb') . '">' . esc_html__('Edit', 'gwolle-gb') . '</a>
20
  </div>';
21
  }
22
  return $gb_metabox;
functions/gb-user.php CHANGED
@@ -146,7 +146,7 @@ function gwolle_gb_get_author_name_html($entry) {
146
  $author_website = trim( bp_core_get_user_domain( $author_id ) );
147
  if ($author_website) {
148
  $author_name_html = '<a href="' . $author_website . '" target="_blank"
149
- title="' . /* translators: BuddyPress profile */ esc_html__( 'Visit the profile of', 'gwolle-gb' ) . ' ' . $author_name . ': ' . $author_website . '">' . $author_name_html . '</a>';
150
  }
151
  } else if ( get_option('gwolle_gb-linkAuthorWebsite', 'true') === 'true' ) {
152
  // Link to author website if set in options.
@@ -158,7 +158,7 @@ function gwolle_gb_get_author_name_html($entry) {
158
  }
159
  $author_link_rel = apply_filters( 'gwolle_gb_author_link_rel', 'nofollow' );
160
  $author_name_html = '<a href="' . $author_website . '" target="_blank" rel="' . $author_link_rel . '"
161
- title="' . esc_html__( 'Visit the website of', 'gwolle-gb' ) . ' ' . $author_name . ': ' . $author_website . '">' . $author_name_html . '</a>';
162
  }
163
  }
164
 
146
  $author_website = trim( bp_core_get_user_domain( $author_id ) );
147
  if ($author_website) {
148
  $author_name_html = '<a href="' . $author_website . '" target="_blank"
149
+ title="' . /* translators: BuddyPress profile */ esc_attr__( 'Visit the profile of', 'gwolle-gb' ) . ' ' . $author_name . ': ' . $author_website . '">' . $author_name_html . '</a>';
150
  }
151
  } else if ( get_option('gwolle_gb-linkAuthorWebsite', 'true') === 'true' ) {
152
  // Link to author website if set in options.
158
  }
159
  $author_link_rel = apply_filters( 'gwolle_gb_author_link_rel', 'nofollow' );
160
  $author_name_html = '<a href="' . $author_website . '" target="_blank" rel="' . $author_link_rel . '"
161
+ title="' . esc_attr__( 'Visit the website of', 'gwolle-gb' ) . ' ' . $author_name . ': ' . $author_website . '">' . $author_name_html . '</a>';
162
  }
163
  }
164
 
gwolle-gb.php CHANGED
@@ -3,7 +3,7 @@
3
  Plugin Name: Gwolle Guestbook
4
  Plugin URI: http://zenoweb.nl
5
  Description: Gwolle Guestbook is not just another guestbook for WordPress. The goal is to provide an easy and slim way to integrate a guestbook into your WordPress powered site. Don't use your 'comment' section the wrong way - install Gwolle Guestbook and have a real guestbook.
6
- Version: 2.3.4
7
  Author: Marcel Pol
8
  Author URI: http://zenoweb.nl
9
  License: GPLv2 or later
@@ -32,7 +32,7 @@ Domain Path: /lang/
32
 
33
 
34
  // Plugin Version
35
- define('GWOLLE_GB_VER', '2.3.4');
36
 
37
 
38
  /*
@@ -46,6 +46,7 @@ define('GWOLLE_GB_VER', '2.3.4');
46
  * - Entries Admin page, make columns sortable, add order parameters to get* functions.
47
  * - On Page editor, have a postbox with link to the guestbook admin entries.
48
  * - BBcode: have sublists work.
 
49
  * - On admin pages, have separate functions for $_POST. (editor, entries)
50
  * - Localize admin ajax script.
51
  * - Add Filter for get_entry_count SQL, like get_entries.
3
  Plugin Name: Gwolle Guestbook
4
  Plugin URI: http://zenoweb.nl
5
  Description: Gwolle Guestbook is not just another guestbook for WordPress. The goal is to provide an easy and slim way to integrate a guestbook into your WordPress powered site. Don't use your 'comment' section the wrong way - install Gwolle Guestbook and have a real guestbook.
6
+ Version: 2.3.5
7
  Author: Marcel Pol
8
  Author URI: http://zenoweb.nl
9
  License: GPLv2 or later
32
 
33
 
34
  // Plugin Version
35
+ define('GWOLLE_GB_VER', '2.3.5');
36
 
37
 
38
  /*
46
  * - Entries Admin page, make columns sortable, add order parameters to get* functions.
47
  * - On Page editor, have a postbox with link to the guestbook admin entries.
48
  * - BBcode: have sublists work.
49
+ * - BBcode: add width and height to images.
50
  * - On admin pages, have separate functions for $_POST. (editor, entries)
51
  * - Localize admin ajax script.
52
  * - Add Filter for get_entry_count SQL, like get_entries.
readme.txt CHANGED
@@ -2,8 +2,8 @@
2
  Contributors: Gwolle, mpol
3
  Tags: guestbook, guest book, livre d'or, Gästebuch, libro de visitas
4
  Requires at least: 3.7
5
- Tested up to: 4.8
6
- Stable tag: 2.3.4
7
  License: GPLv2 or later
8
 
9
  Gwolle Guestbook is the WordPress guestbook you've just been looking for. Beautiful and easy.
@@ -388,6 +388,11 @@ But if you don't use standard comments, you can just as easily use the comment s
388
 
389
  == Changelog ==
390
 
 
 
 
 
 
391
  = 2.3.4 =
392
  * 2017-10-19
393
  * When editing date, show new date after saving the date.
2
  Contributors: Gwolle, mpol
3
  Tags: guestbook, guest book, livre d'or, Gästebuch, libro de visitas
4
  Requires at least: 3.7
5
+ Tested up to: 4.9
6
+ Stable tag: 2.3.5
7
  License: GPLv2 or later
8
 
9
  Gwolle Guestbook is the WordPress guestbook you've just been looking for. Beautiful and easy.
388
 
389
  == Changelog ==
390
 
391
+ = 2.3.5 =
392
+ * 2017-11-04
393
+ * Add classes with dashes.
394
+ * Small text updates.
395
+
396
  = 2.3.4 =
397
  * 2017-10-19
398
  * When editing date, show new date after saving the date.