Version Description
- 2020-04-28
- Many CSS ids and classes have changed, please review your custom CSS.
- Plugin supports multiple forms on one page now.
- Fix serialized options.
- Add pause on hover for super-simple-slider.
- Fix updating of datetime on admin editor.
- Fix double class attributes in form.
- Run timeout function only once, set timout to 1 second.
- Remove separators from BBcode icons.
- Add loading="lazy" attribute to bbcode images.
- Add filters 'gwolle_gb_author_origin_prefill', 'gwolle_gb_author_content_prefill' and 'gwolle_gb_author_content_label'.
- Deprecate 'gwolle_gb_content_label' filter.
- Update strings for add-on.
Download this release
Release Info
| Developer | mpol |
| Plugin | |
| Version | 4.0.0 |
| Comparing to | |
| See all releases | |
Code changes from version 3.1.9 to 4.0.0
- add-on/gb-add-on.php +33 -6
- add-on/index.html +0 -0
- admin/css/gwolle-gb-admin.css +4 -1
- admin/gb-ajax-management.php +2 -2
- admin/gb-page-add-on.php +10 -6
- admin/gb-page-editor.php +24 -22
- admin/gb-page-entries.php +3 -3
- admin/gb-page-export.php +3 -3
- admin/gb-page-gwolle-gb.php +10 -5
- admin/gb-page-import.php +2 -2
- admin/gb-page-settings.php +8 -10
- admin/gb-upgrade.php +16 -2
- admin/gwolle-gb-hooks.php +38 -1
- admin/js/gwolle-gb-admin.js +4 -19
- admin/tabs/gb-admintab.php +2 -2
- admin/tabs/gb-antispamtab.php +10 -10
- admin/tabs/gb-debugtab.php +3 -5
- admin/tabs/gb-emailtab.php +8 -8
- admin/tabs/gb-formtab.php +16 -16
- admin/tabs/gb-readingtab.php +17 -17
- admin/tabs/gb-uninstalltab.php +6 -5
- changelog-v0.txt → changelog/changelog-v0.txt +0 -0
- changelog-v1.txt → changelog/changelog-v1.txt +0 -0
- changelog-v2.txt → changelog/changelog-v2.txt +0 -0
- changelog/changelog-v3.txt +89 -0
- changelog/index.html +0 -0
- docs/filters/gwolle_gb_author_content_label.txt +25 -0
- docs/filters/gwolle_gb_author_content_prefill.txt +25 -0
- docs/filters/gwolle_gb_author_email_prefill.txt +1 -1
- docs/filters/gwolle_gb_author_name_prefill.txt +1 -1
- docs/filters/gwolle_gb_author_origin_prefill.txt +25 -0
- docs/filters/gwolle_gb_author_website_prefill.txt +1 -1
- docs/filters/gwolle_gb_button.txt +2 -2
- docs/filters/gwolle_gb_content_label.txt +1 -0
- docs/filters/gwolle_gb_entry_save.txt +2 -2
- frontend/css/gwolle-gb-frontend.css +78 -88
- frontend/gb-form-posthandling.php +3 -3
- frontend/gb-form.php +49 -41
- frontend/gb-read.php +5 -5
- frontend/gb-shortcodes.php +3 -3
- frontend/gwolle_gb-entry.php +9 -5
- frontend/js/gwolle-gb-frontend.js +93 -77
- frontend/js/sss/sss.js +46 -31
- frontend/markitup/jquery.markitup.js +5 -8
- frontend/markitup/style.css +16 -15
- functions/gb-akismet.php +2 -2
- functions/gb-bbcode_emoji.php +1 -1
- functions/gb-class-entry.php +33 -27
- functions/gb-debug.php +2 -2
- functions/gb-settings.php +4 -3
- functions/gb-stop-forum-spam.php +1 -1
- gwolle-gb-hooks.php +1 -1
- gwolle-gb.php +3 -7
- lang/gwolle-gb-da_DK.mo +0 -0
- lang/gwolle-gb-da_DK.po +0 -1997
- readme.txt +27 -18
add-on/gb-add-on.php
CHANGED
|
@@ -1,7 +1,8 @@
|
|
| 1 |
<?php
|
| 2 |
/*
|
| 3 |
* These strings are not used for the main plugin, but for the Commercial Add-On at:
|
| 4 |
-
*
|
|
|
|
| 5 |
*/
|
| 6 |
|
| 7 |
|
|
@@ -92,6 +93,10 @@ Entry content:
|
|
| 92 |
/* translators: Commercial Add-On metabox line */
|
| 93 |
esc_html__('Email author', 'gwolle-gb');
|
| 94 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| 95 |
// function gwolle_gb_addon_form_starrating( $output ) {
|
| 96 |
/* translators: Commercial Add-On */
|
| 97 |
esc_html__('Rating', 'gwolle-gb');
|
|
@@ -116,6 +121,8 @@ Entry content:
|
|
| 116 |
|
| 117 |
// function gwolle_gb_addon_page_settingstab_form() {
|
| 118 |
/* translators: Commercial Add-On */
|
|
|
|
|
|
|
| 119 |
esc_html_e('Configure the extra fields that you want.', 'gwolle-gb');
|
| 120 |
/* translators: Commercial Add-On */
|
| 121 |
esc_html_e('The slug of the field is where your data is attached to. Only change the slug if you know what you are doing.', 'gwolle-gb');
|
|
@@ -135,7 +142,24 @@ Entry content:
|
|
| 135 |
esc_html__('Delete this meta field?', 'gwolle-gb' );
|
| 136 |
/* translators: Commercial Add-On */
|
| 137 |
esc_html__('Delete this string row?', 'gwolle-gb' );
|
| 138 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 139 |
|
| 140 |
// function gwolle_gb_addon_page_settingstab_misc() {
|
| 141 |
/* translators: Settings page, option for preview */
|
|
@@ -154,6 +178,12 @@ Entry content:
|
|
| 154 |
esc_html_e('Show author email in Metabox.', 'gwolle-gb');
|
| 155 |
/* translators: Commercial Add-On */
|
| 156 |
esc_html_e('The email address of the author will be added to the metabox.', 'gwolle-gb');
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 157 |
/* translators: Settings page, option for delete link */
|
| 158 |
esc_html_e('Delete link', 'gwolle-gb');
|
| 159 |
/* translators: Commercial Add-On */
|
|
@@ -164,7 +194,6 @@ Entry content:
|
|
| 164 |
esc_html_e('Show delete link in Metabox for author.', 'gwolle-gb');
|
| 165 |
/* translators: Commercial Add-On */
|
| 166 |
esc_html_e('A link to delete the entry will be added to the metabox. Only visible for moderators and the author.', 'gwolle-gb');
|
| 167 |
-
|
| 168 |
/* translators: Commercial Add-On, option for auto anonymize */
|
| 169 |
esc_html_e('Auto Anonymize', 'gwolle-gb');
|
| 170 |
/* translators: Commercial Add-On, option for auto anonymize */
|
|
@@ -175,8 +204,6 @@ Entry content:
|
|
| 175 |
esc_html_e('Be very carefull with this option.', 'gwolle-gb');
|
| 176 |
/* translators: Commercial Add-On, option for auto anonymize */
|
| 177 |
esc_html_e('Auto Anonymize entries older than:', 'gwolle-gb');
|
| 178 |
-
|
| 179 |
-
|
| 180 |
/* translators: Commercial Add-On */
|
| 181 |
esc_html_e('Auto Delete', 'gwolle-gb');
|
| 182 |
/* translators: Commercial Add-On */
|
|
@@ -283,5 +310,5 @@ Entry content:
|
|
| 283 |
__( 'When visitors report an entry as abusive, the entry ID will be stored in a cookie in the browser. Also, the IP address will be saved temporarily in the database together with the number of reports.', 'gwolle-gb' );
|
| 284 |
|
| 285 |
/* translators: %s is the name of the meta field */
|
| 286 |
-
|
| 287 |
}
|
| 1 |
<?php
|
| 2 |
/*
|
| 3 |
* These strings are not used for the main plugin, but for the Commercial Add-On at:
|
| 4 |
+
* https://zenoweb.nl/downloads/gwolle-guestbook-add-on/
|
| 5 |
+
* https://www.mojomarketplace.com/item/gwolle-gb-add-on
|
| 6 |
*/
|
| 7 |
|
| 8 |
|
| 93 |
/* translators: Commercial Add-On metabox line */
|
| 94 |
esc_html__('Email author', 'gwolle-gb');
|
| 95 |
|
| 96 |
+
//function gwolle_gb_entry_metabox_lines_like_ajax( $gb_metabox, $entry ) {
|
| 97 |
+
/* translators: Commercial Add-On metabox line */
|
| 98 |
+
esc_attr__('Like this entry', 'gwolle-gb');
|
| 99 |
+
|
| 100 |
// function gwolle_gb_addon_form_starrating( $output ) {
|
| 101 |
/* translators: Commercial Add-On */
|
| 102 |
esc_html__('Rating', 'gwolle-gb');
|
| 121 |
|
| 122 |
// function gwolle_gb_addon_page_settingstab_form() {
|
| 123 |
/* translators: Commercial Add-On */
|
| 124 |
+
esc_html_e('version', 'gwolle-gb');
|
| 125 |
+
/* translators: Commercial Add-On */
|
| 126 |
esc_html_e('Configure the extra fields that you want.', 'gwolle-gb');
|
| 127 |
/* translators: Commercial Add-On */
|
| 128 |
esc_html_e('The slug of the field is where your data is attached to. Only change the slug if you know what you are doing.', 'gwolle-gb');
|
| 142 |
esc_html__('Delete this meta field?', 'gwolle-gb' );
|
| 143 |
/* translators: Commercial Add-On */
|
| 144 |
esc_html__('Delete this string row?', 'gwolle-gb' );
|
| 145 |
+
/* translators: Commercial Add-On */
|
| 146 |
+
esc_html__('The slug %s is a reserved slug, please use a different slug.', 'gwolle-gb');
|
| 147 |
+
/* translators: Commercial Add-On */
|
| 148 |
+
esc_html_e('Type:', 'gwolle-gb');
|
| 149 |
+
/* translators: Commercial Add-On */
|
| 150 |
+
esc_html_e('Text', 'gwolle-gb');
|
| 151 |
+
/* translators: Commercial Add-On */
|
| 152 |
+
esc_html_e('Checkbox', 'gwolle-gb');
|
| 153 |
+
/* translators: Commercial Add-On */
|
| 154 |
+
esc_html_e('Radio buttons', 'gwolle-gb');
|
| 155 |
+
/* translators: Commercial Add-On */
|
| 156 |
+
esc_html_e('Select dropdown', 'gwolle-gb');
|
| 157 |
+
/* translators: Commercial Add-On */
|
| 158 |
+
esc_html_e('Textarea', 'gwolle-gb');
|
| 159 |
+
/* translators: Commercial Add-On */
|
| 160 |
+
esc_html_e('Enter options for the radio buttons or select dropdown.', 'gwolle-gb');
|
| 161 |
+
/* translators: Commercial Add-On */
|
| 162 |
+
esc_html_e( 'Use one option on each line. When the meta field is saved, it will be saved with this value.', 'gwolle-gb' );
|
| 163 |
|
| 164 |
// function gwolle_gb_addon_page_settingstab_misc() {
|
| 165 |
/* translators: Settings page, option for preview */
|
| 178 |
esc_html_e('Show author email in Metabox.', 'gwolle-gb');
|
| 179 |
/* translators: Commercial Add-On */
|
| 180 |
esc_html_e('The email address of the author will be added to the metabox.', 'gwolle-gb');
|
| 181 |
+
/* translators: Settings page, option for likes */
|
| 182 |
+
esc_html_e('Likes', 'gwolle-gb');
|
| 183 |
+
/* translators: Settings page, option for likes */
|
| 184 |
+
esc_html_e('Enable likes for entries.', 'gwolle-gb');
|
| 185 |
+
/* translators: Settings page, option for likes */
|
| 186 |
+
esc_html_e('This will enable likes, people can add a like to an entry and see the number of likes that were given.', 'gwolle-gb');
|
| 187 |
/* translators: Settings page, option for delete link */
|
| 188 |
esc_html_e('Delete link', 'gwolle-gb');
|
| 189 |
/* translators: Commercial Add-On */
|
| 194 |
esc_html_e('Show delete link in Metabox for author.', 'gwolle-gb');
|
| 195 |
/* translators: Commercial Add-On */
|
| 196 |
esc_html_e('A link to delete the entry will be added to the metabox. Only visible for moderators and the author.', 'gwolle-gb');
|
|
|
|
| 197 |
/* translators: Commercial Add-On, option for auto anonymize */
|
| 198 |
esc_html_e('Auto Anonymize', 'gwolle-gb');
|
| 199 |
/* translators: Commercial Add-On, option for auto anonymize */
|
| 204 |
esc_html_e('Be very carefull with this option.', 'gwolle-gb');
|
| 205 |
/* translators: Commercial Add-On, option for auto anonymize */
|
| 206 |
esc_html_e('Auto Anonymize entries older than:', 'gwolle-gb');
|
|
|
|
|
|
|
| 207 |
/* translators: Commercial Add-On */
|
| 208 |
esc_html_e('Auto Delete', 'gwolle-gb');
|
| 209 |
/* translators: Commercial Add-On */
|
| 310 |
__( 'When visitors report an entry as abusive, the entry ID will be stored in a cookie in the browser. Also, the IP address will be saved temporarily in the database together with the number of reports.', 'gwolle-gb' );
|
| 311 |
|
| 312 |
/* translators: %s is the name of the meta field */
|
| 313 |
+
esc_html__('The %s field was not filled in, even though it is mandatory.', 'gwolle-gb');
|
| 314 |
}
|
add-on/index.html
ADDED
|
File without changes
|
admin/css/gwolle-gb-admin.css
CHANGED
|
@@ -8,7 +8,7 @@
|
|
| 8 |
clear: both;
|
| 9 |
}
|
| 10 |
|
| 11 |
-
.
|
| 12 |
display: none;
|
| 13 |
}
|
| 14 |
|
|
@@ -275,6 +275,9 @@ form.gwolle_gb_options.active {
|
|
| 275 |
width: 100px;
|
| 276 |
}
|
| 277 |
|
|
|
|
|
|
|
|
|
|
| 278 |
|
| 279 |
/*
|
| 280 |
* Dashboard Widget
|
| 8 |
clear: both;
|
| 9 |
}
|
| 10 |
|
| 11 |
+
.gwolle-gb-hide {
|
| 12 |
display: none;
|
| 13 |
}
|
| 14 |
|
| 275 |
width: 100px;
|
| 276 |
}
|
| 277 |
|
| 278 |
+
.gwolle_gb_options .form-table td {
|
| 279 |
+
vertical-align: top;
|
| 280 |
+
}
|
| 281 |
|
| 282 |
/*
|
| 283 |
* Dashboard Widget
|
admin/gb-ajax-management.php
CHANGED
|
@@ -219,14 +219,14 @@ function gwolle_gb_ajax_javascript() {
|
|
| 219 |
jQuery( 'input#istrash' ).prop('checked', false);
|
| 220 |
|
| 221 |
jQuery( 'input#remove' ).prop('checked', false);
|
| 222 |
-
jQuery( 'label.gwolle_gb_remove' ).addClass('
|
| 223 |
break;
|
| 224 |
case 'trash':
|
| 225 |
jQuery( '.entry-icons' ).addClass('trash').removeClass('notrash');
|
| 226 |
jQuery( '.gwolle_gb_actions' ).addClass('trash').removeClass('notrash');
|
| 227 |
jQuery( 'input#istrash' ).prop('checked', true);
|
| 228 |
|
| 229 |
-
jQuery( 'label.gwolle_gb_remove' ).removeClass('
|
| 230 |
break;
|
| 231 |
}
|
| 232 |
|
| 219 |
jQuery( 'input#istrash' ).prop('checked', false);
|
| 220 |
|
| 221 |
jQuery( 'input#remove' ).prop('checked', false);
|
| 222 |
+
jQuery( 'label.gwolle_gb_remove' ).addClass('gwolle-gb-hide');
|
| 223 |
break;
|
| 224 |
case 'trash':
|
| 225 |
jQuery( '.entry-icons' ).addClass('trash').removeClass('notrash');
|
| 226 |
jQuery( '.gwolle_gb_actions' ).addClass('trash').removeClass('notrash');
|
| 227 |
jQuery( 'input#istrash' ).prop('checked', true);
|
| 228 |
|
| 229 |
+
jQuery( 'label.gwolle_gb_remove' ).removeClass('gwolle-gb-hide');
|
| 230 |
break;
|
| 231 |
}
|
| 232 |
|
admin/gb-page-add-on.php
CHANGED
|
@@ -81,6 +81,7 @@ function gwolle_gb_addon_features() {
|
|
| 81 |
<li>' . esc_html__('Social Media Sharing (optional).', 'gwolle-gb').'</li>
|
| 82 |
<li>' . esc_html__('Star Ratings, with voting and display and Rich Snippets for SEO (optional).','gwolle-gb').'</li>
|
| 83 |
<li>' . esc_html__('Average star rating per guestbook, including a widget.','gwolle-gb').'</li>
|
|
|
|
| 84 |
<li>' . esc_html__('Preview for the frontend form.','gwolle-gb').'</li>
|
| 85 |
<li>' . esc_html__('Preview for the admin editor form.','gwolle-gb').'</li>
|
| 86 |
<li>' . esc_html__('Admin reply on the frontend with AJAX.','gwolle-gb').'</li>
|
|
@@ -99,16 +100,19 @@ function gwolle_gb_addon_features() {
|
|
| 99 |
|
| 100 |
|
| 101 |
/*
|
| 102 |
-
* Metabox with the link to the
|
| 103 |
*/
|
| 104 |
function gwolle_gb_addon_buy() {
|
| 105 |
?>
|
| 106 |
<h3><?php esc_html_e('Buy the Add-On.', 'gwolle-gb'); ?></h3>
|
| 107 |
<p><?php
|
| 108 |
-
$link = '<a href="
|
| 109 |
/* translators: %s is a link */
|
| 110 |
-
echo sprintf( esc_html__( 'You can buy this add-on at the %
|
| 111 |
-
<?php
|
|
|
|
|
|
|
|
|
|
| 112 |
</p>
|
| 113 |
<?php
|
| 114 |
}
|
|
@@ -121,14 +125,14 @@ function gwolle_gb_addon_demo() {
|
|
| 121 |
?>
|
| 122 |
<h3><?php esc_html_e('Demo with the Add-On.', 'gwolle-gb'); ?></h3>
|
| 123 |
<p><?php
|
| 124 |
-
$link = '<a href="
|
| 125 |
/* translators: %s is a link */
|
| 126 |
echo sprintf( esc_html__( 'The demo site of this plugin is available with the add-on enabled at %sthe demo site%s.', 'gwolle-gb' ), $link, '</a>' ); ?>
|
| 127 |
</p>
|
| 128 |
|
| 129 |
<h3><?php esc_html_e('Demo without the Add-On.', 'gwolle-gb'); ?></h3>
|
| 130 |
<p><?php
|
| 131 |
-
$link = '<a href="
|
| 132 |
/* translators: %s is a link */
|
| 133 |
echo sprintf( esc_html__( 'For comparison you can also see the %sdemo site without the add-on%s enabled.', 'gwolle-gb' ), $link, '</a>' ); ?>
|
| 134 |
</p>
|
| 81 |
<li>' . esc_html__('Social Media Sharing (optional).', 'gwolle-gb').'</li>
|
| 82 |
<li>' . esc_html__('Star Ratings, with voting and display and Rich Snippets for SEO (optional).','gwolle-gb').'</li>
|
| 83 |
<li>' . esc_html__('Average star rating per guestbook, including a widget.','gwolle-gb').'</li>
|
| 84 |
+
<li>' . esc_html__('Like an entry and view likes for each entry.','gwolle-gb').'</li>
|
| 85 |
<li>' . esc_html__('Preview for the frontend form.','gwolle-gb').'</li>
|
| 86 |
<li>' . esc_html__('Preview for the admin editor form.','gwolle-gb').'</li>
|
| 87 |
<li>' . esc_html__('Admin reply on the frontend with AJAX.','gwolle-gb').'</li>
|
| 100 |
|
| 101 |
|
| 102 |
/*
|
| 103 |
+
* Metabox with the link to the webshop for the add-on.
|
| 104 |
*/
|
| 105 |
function gwolle_gb_addon_buy() {
|
| 106 |
?>
|
| 107 |
<h3><?php esc_html_e('Buy the Add-On.', 'gwolle-gb'); ?></h3>
|
| 108 |
<p><?php
|
| 109 |
+
$link = '<a href="https://zenoweb.nl/downloads/gwolle-guestbook-add-on/" target="_blank">';
|
| 110 |
/* translators: %s is a link */
|
| 111 |
+
echo sprintf( esc_html__( 'You can buy this add-on at the %sZenoWeb Webshop%s for only $ 9.', 'gwolle-gb' ), $link, '</a>' ); ?><br />
|
| 112 |
+
<?php
|
| 113 |
+
$link = '<a href="https://zenoweb.nl/forums/forum/guestbook-add-on/" target="_blank">';
|
| 114 |
+
/* translators: %s is a link */
|
| 115 |
+
echo sprintf( esc_html__('Support for the add-on is also at the %sZenoWeb Support Forum%s.','gwolle-gb'), $link, '</a>' ); ?>
|
| 116 |
</p>
|
| 117 |
<?php
|
| 118 |
}
|
| 125 |
?>
|
| 126 |
<h3><?php esc_html_e('Demo with the Add-On.', 'gwolle-gb'); ?></h3>
|
| 127 |
<p><?php
|
| 128 |
+
$link = '<a href="https://demo.zenoweb.nl/wordpress-plugins/gwolle-guestbook-the-add-on/" target="_blank">';
|
| 129 |
/* translators: %s is a link */
|
| 130 |
echo sprintf( esc_html__( 'The demo site of this plugin is available with the add-on enabled at %sthe demo site%s.', 'gwolle-gb' ), $link, '</a>' ); ?>
|
| 131 |
</p>
|
| 132 |
|
| 133 |
<h3><?php esc_html_e('Demo without the Add-On.', 'gwolle-gb'); ?></h3>
|
| 134 |
<p><?php
|
| 135 |
+
$link = '<a href="https://demo.zenoweb.nl/wordpress-plugins/gwolle-gb/" target="_blank">';
|
| 136 |
/* translators: %s is a link */
|
| 137 |
echo sprintf( esc_html__( 'For comparison you can also see the %sdemo site without the add-on%s enabled.', 'gwolle-gb' ), $link, '</a>' ); ?>
|
| 138 |
</p>
|
admin/gb-page-editor.php
CHANGED
|
@@ -62,7 +62,7 @@ function gwolle_gb_page_editor() {
|
|
| 62 |
?>
|
| 63 |
<div class="wrap gwolle_gb">
|
| 64 |
<div id="icon-gwolle-gb"><br /></div>
|
| 65 |
-
<h1><?php echo $sectionHeading; ?></h1>
|
| 66 |
|
| 67 |
<?php
|
| 68 |
if ( $gwolle_gb_messages ) {
|
|
@@ -73,7 +73,7 @@ function gwolle_gb_page_editor() {
|
|
| 73 |
}
|
| 74 |
?>
|
| 75 |
|
| 76 |
-
<form name="gwolle_gb_editor" id="gwolle_gb_editor" method="POST" action="" accept-charset="UTF-8">
|
| 77 |
<input type="hidden" name="gwolle_gb_page" value="editor" />
|
| 78 |
<input type="hidden" name="entry_id" value="<?php echo $entry->get_id(); ?>" />
|
| 79 |
|
|
@@ -140,7 +140,7 @@ function gwolle_gb_editor_postbox_content( $entry ) {
|
|
| 140 |
gwolle_gb_enqueue_markitup();
|
| 141 |
|
| 142 |
// Emoji symbols
|
| 143 |
-
echo '<div class="gwolle_gb_emoji
|
| 144 |
$emoji = gwolle_gb_get_emoji();
|
| 145 |
// make it into images for nice colors.
|
| 146 |
if ( function_exists('wp_staticize_emoji') ) {
|
|
@@ -160,7 +160,7 @@ function gwolle_gb_editor_postbox_website( $entry ) {
|
|
| 160 |
<input type="url" name="gwolle_gb_author_website" value="<?php echo gwolle_gb_sanitize_output( $entry->get_author_website() ); ?>" id="author_website" placeholder="<?php esc_attr_e('Website', 'gwolle-gb'); ?>" />
|
| 161 |
<p><?php
|
| 162 |
/* translators: %s is a code element */
|
| 163 |
-
echo sprintf( esc_html__('Example: %
|
| 164 |
</p>
|
| 165 |
<?php
|
| 166 |
}
|
|
@@ -187,7 +187,7 @@ function gwolle_gb_editor_postbox_admin_reply( $entry ) {
|
|
| 187 |
|
| 188 |
<?php
|
| 189 |
if ( isset($form_setting['form_bbcode_enabled']) && $form_setting['form_bbcode_enabled'] === 'true' ) {
|
| 190 |
-
echo '<div class="gwolle_gb_admin_reply_emoji
|
| 191 |
// Emoji symbols
|
| 192 |
$emoji = gwolle_gb_get_emoji();
|
| 193 |
// make it into images for nice colors.
|
|
@@ -304,7 +304,7 @@ function gwolle_gb_editor_postbox_icons( $entry ) {
|
|
| 304 |
|
| 305 |
<?php
|
| 306 |
$trashclass = '';
|
| 307 |
-
if ( $entry->get_istrash() == '0' ) { $trashclass = '
|
| 308 |
<br />
|
| 309 |
<label for="remove" class="selectit gwolle_gb_remove <?php echo $trashclass; ?>">
|
| 310 |
<input id="remove" name="remove" type="checkbox" />
|
|
@@ -395,7 +395,7 @@ function gwolle_gb_editor_postbox_details( $entry ) {
|
|
| 395 |
</span><br />
|
| 396 |
<?php esc_html_e("Author's IP-address", 'gwolle-gb'); ?>: <span><?php
|
| 397 |
if (strlen( $entry->get_author_ip() ) > 0) {
|
| 398 |
-
echo '<a href="
|
| 399 |
title="' . esc_attr__('Whois search for this IP', 'gwolle-gb') . '" target="_blank">
|
| 400 |
' . $entry->get_author_ip() . '
|
| 401 |
</a>';
|
|
@@ -474,24 +474,27 @@ function gwolle_gb_editor_meta_inputs( $entry ) {
|
|
| 474 |
$date = current_time( 'timestamp' );
|
| 475 |
}
|
| 476 |
|
| 477 |
-
$dd =
|
| 478 |
-
$mm =
|
| 479 |
-
$yy =
|
| 480 |
-
$hh =
|
| 481 |
-
$mn =
|
| 482 |
|
| 483 |
// Day
|
| 484 |
echo '<label><span class="screen-reader-text">' . esc_html__( 'Day', 'gwolle-gb' ) . '</span><input type="text" id="dd" name="dd" value="' . $dd . '" size="2" maxlength="2" autocomplete="off" /></label>';
|
| 485 |
|
| 486 |
// Month
|
| 487 |
-
echo '<label for="mm"><span class="screen-reader-text">' . esc_html__( 'Month', 'gwolle-gb' ) . '</span
|
|
|
|
| 488 |
for ( $i = 1; $i < 13; $i = $i +1 ) {
|
| 489 |
$monthnum = zeroise($i, 2);
|
| 490 |
-
echo
|
|
|
|
| 491 |
/* translators: 1: month number (01, 02, etc.), 2: month abbreviation */
|
| 492 |
-
echo sprintf( esc_html__( '%1$s-%2$s', 'gwolle-gb' ), $monthnum, $wp_locale->get_month_abbrev( $wp_locale->get_month( $i ) ) ) .
|
| 493 |
}
|
| 494 |
-
echo '
|
|
|
|
| 495 |
|
| 496 |
// Year
|
| 497 |
echo '<label for="yy"><span class="screen-reader-text">' . esc_html__( 'Year', 'gwolle-gb' ) . '</span><input type="text" id="yy" name="yy" value="' . $yy . '" size="4" maxlength="4" autocomplete="off" /></label>';
|
|
@@ -503,8 +506,8 @@ function gwolle_gb_editor_meta_inputs( $entry ) {
|
|
| 503 |
?>
|
| 504 |
|
| 505 |
<div class="gwolle_gb_timestamp">
|
| 506 |
-
<!-- Clicking OK will place a timestamp here. -->
|
| 507 |
-
<input type="
|
| 508 |
</div>
|
| 509 |
</div>
|
| 510 |
|
|
@@ -670,11 +673,10 @@ function gwolle_gb_page_editor_update( $entry ) {
|
|
| 670 |
}
|
| 671 |
}
|
| 672 |
|
| 673 |
-
/* Check if the datetime changed, and update
|
| 674 |
if ( isset($_POST['gwolle_gb_timestamp']) && is_numeric($_POST['gwolle_gb_timestamp']) ) {
|
| 675 |
-
|
| 676 |
-
|
| 677 |
-
}
|
| 678 |
}
|
| 679 |
|
| 680 |
/* Check if the book_id changed, and update accordingly */
|
| 62 |
?>
|
| 63 |
<div class="wrap gwolle_gb">
|
| 64 |
<div id="icon-gwolle-gb"><br /></div>
|
| 65 |
+
<h1><?php echo $sectionHeading; ?> (Gwolle Guestbook) - v<?php echo GWOLLE_GB_VER; ?></h1>
|
| 66 |
|
| 67 |
<?php
|
| 68 |
if ( $gwolle_gb_messages ) {
|
| 73 |
}
|
| 74 |
?>
|
| 75 |
|
| 76 |
+
<form name="gwolle_gb_editor" id="gwolle_gb_editor" method="POST" action="#" accept-charset="UTF-8">
|
| 77 |
<input type="hidden" name="gwolle_gb_page" value="editor" />
|
| 78 |
<input type="hidden" name="entry_id" value="<?php echo $entry->get_id(); ?>" />
|
| 79 |
|
| 140 |
gwolle_gb_enqueue_markitup();
|
| 141 |
|
| 142 |
// Emoji symbols
|
| 143 |
+
echo '<div class="gwolle_gb_emoji gwolle-gb-hide">';
|
| 144 |
$emoji = gwolle_gb_get_emoji();
|
| 145 |
// make it into images for nice colors.
|
| 146 |
if ( function_exists('wp_staticize_emoji') ) {
|
| 160 |
<input type="url" name="gwolle_gb_author_website" value="<?php echo gwolle_gb_sanitize_output( $entry->get_author_website() ); ?>" id="author_website" placeholder="<?php esc_attr_e('Website', 'gwolle-gb'); ?>" />
|
| 161 |
<p><?php
|
| 162 |
/* translators: %s is a code element */
|
| 163 |
+
echo sprintf( esc_html__('Example: %shttps://www.example.com/%s', 'gwolle-gb'), '<code>', '</code>' ); ?>
|
| 164 |
</p>
|
| 165 |
<?php
|
| 166 |
}
|
| 187 |
|
| 188 |
<?php
|
| 189 |
if ( isset($form_setting['form_bbcode_enabled']) && $form_setting['form_bbcode_enabled'] === 'true' ) {
|
| 190 |
+
echo '<div class="gwolle_gb_admin_reply_emoji gwolle-gb-hide">';
|
| 191 |
// Emoji symbols
|
| 192 |
$emoji = gwolle_gb_get_emoji();
|
| 193 |
// make it into images for nice colors.
|
| 304 |
|
| 305 |
<?php
|
| 306 |
$trashclass = '';
|
| 307 |
+
if ( $entry->get_istrash() == '0' ) { $trashclass = 'gwolle-gb-hide'; } ?>
|
| 308 |
<br />
|
| 309 |
<label for="remove" class="selectit gwolle_gb_remove <?php echo $trashclass; ?>">
|
| 310 |
<input id="remove" name="remove" type="checkbox" />
|
| 395 |
</span><br />
|
| 396 |
<?php esc_html_e("Author's IP-address", 'gwolle-gb'); ?>: <span><?php
|
| 397 |
if (strlen( $entry->get_author_ip() ) > 0) {
|
| 398 |
+
echo '<a href="https://www.db.ripe.net/whois?form_type=simple&searchtext=' . $entry->get_author_ip() . '"
|
| 399 |
title="' . esc_attr__('Whois search for this IP', 'gwolle-gb') . '" target="_blank">
|
| 400 |
' . $entry->get_author_ip() . '
|
| 401 |
</a>';
|
| 474 |
$date = current_time( 'timestamp' );
|
| 475 |
}
|
| 476 |
|
| 477 |
+
$dd = date_i18n( 'd', $date );
|
| 478 |
+
$mm = date_i18n( 'm', $date );
|
| 479 |
+
$yy = date_i18n( 'Y', $date );
|
| 480 |
+
$hh = date_i18n( 'H', $date );
|
| 481 |
+
$mn = date_i18n( 'i', $date );
|
| 482 |
|
| 483 |
// Day
|
| 484 |
echo '<label><span class="screen-reader-text">' . esc_html__( 'Day', 'gwolle-gb' ) . '</span><input type="text" id="dd" name="dd" value="' . $dd . '" size="2" maxlength="2" autocomplete="off" /></label>';
|
| 485 |
|
| 486 |
// Month
|
| 487 |
+
echo '<label for="mm"><span class="screen-reader-text">' . esc_html__( 'Month', 'gwolle-gb' ) . '</span>
|
| 488 |
+
<select id="mm" name="mm">';
|
| 489 |
for ( $i = 1; $i < 13; $i = $i +1 ) {
|
| 490 |
$monthnum = zeroise($i, 2);
|
| 491 |
+
echo '
|
| 492 |
+
<option value="' . $monthnum . '" ' . selected( $monthnum, $mm, false ) . '>';
|
| 493 |
/* translators: 1: month number (01, 02, etc.), 2: month abbreviation */
|
| 494 |
+
echo sprintf( esc_html__( '%1$s-%2$s', 'gwolle-gb' ), $monthnum, $wp_locale->get_month_abbrev( $wp_locale->get_month( $i ) ) ) . '</option>';
|
| 495 |
}
|
| 496 |
+
echo '
|
| 497 |
+
</select></label>';
|
| 498 |
|
| 499 |
// Year
|
| 500 |
echo '<label for="yy"><span class="screen-reader-text">' . esc_html__( 'Year', 'gwolle-gb' ) . '</span><input type="text" id="yy" name="yy" value="' . $yy . '" size="4" maxlength="4" autocomplete="off" /></label>';
|
| 506 |
?>
|
| 507 |
|
| 508 |
<div class="gwolle_gb_timestamp">
|
| 509 |
+
<!-- Clicking OK will place a local timestamp here. -->
|
| 510 |
+
<input type="text" id="gwolle_gb_timestamp" name="gwolle_gb_timestamp" value="" />
|
| 511 |
</div>
|
| 512 |
</div>
|
| 513 |
|
| 673 |
}
|
| 674 |
}
|
| 675 |
|
| 676 |
+
/* Check if the datetime changed, and update from all input. */
|
| 677 |
if ( isset($_POST['gwolle_gb_timestamp']) && is_numeric($_POST['gwolle_gb_timestamp']) ) {
|
| 678 |
+
$timestamp = (int) $_POST['gwolle_gb_timestamp'];
|
| 679 |
+
$entry->set_datetime( $timestamp );
|
|
|
|
| 680 |
}
|
| 681 |
|
| 682 |
/* Check if the book_id changed, and update accordingly */
|
admin/gb-page-entries.php
CHANGED
|
@@ -172,7 +172,7 @@ function gwolle_gb_page_entries() {
|
|
| 172 |
|
| 173 |
<div class="wrap gwolle_gb">
|
| 174 |
<div id="icon-gwolle-gb"><br /></div>
|
| 175 |
-
<h1><?php esc_html_e('Guestbook entries', 'gwolle-gb'); ?></h1>
|
| 176 |
|
| 177 |
<?php
|
| 178 |
if ( $gwolle_gb_messages ) {
|
|
@@ -182,7 +182,7 @@ function gwolle_gb_page_entries() {
|
|
| 182 |
'</div>';
|
| 183 |
} ?>
|
| 184 |
|
| 185 |
-
<form name="gwolle_gb_entries" id="gwolle_gb_entries" action="" method="POST" accept-charset="UTF-8">
|
| 186 |
|
| 187 |
<input type="hidden" name="gwolle_gb_page" value="entries" />
|
| 188 |
<!-- the following fields give us some information used for processing the mass edit -->
|
|
@@ -423,7 +423,7 @@ function gwolle_gb_page_entries() {
|
|
| 423 |
<span class="visible-icon" title="' . esc_html__('Visible', 'gwolle-gb') . '"></span>
|
| 424 |
<span class="invisible-icon" title="' . esc_html__('Invisible', 'gwolle-gb') . '"></span>
|
| 425 |
<span class="spam-icon" title="' . esc_html__('Spam', 'gwolle-gb') . '"></span>
|
| 426 |
-
<span class="trash-icon" title="' . /* translators: Is in Trashcan */ esc_html__('In Trash', 'gwolle-gb') . '"
|
| 427 |
$admin_reply = gwolle_gb_sanitize_output( $entry->get_admin_reply(), 'admin_reply' );
|
| 428 |
if ( strlen( trim($admin_reply) ) > 0 ) {
|
| 429 |
$html_output .= '
|
| 172 |
|
| 173 |
<div class="wrap gwolle_gb">
|
| 174 |
<div id="icon-gwolle-gb"><br /></div>
|
| 175 |
+
<h1><?php esc_html_e('Guestbook entries', 'gwolle-gb'); ?> (Gwolle Guestbook) - v<?php echo GWOLLE_GB_VER; ?></h1>
|
| 176 |
|
| 177 |
<?php
|
| 178 |
if ( $gwolle_gb_messages ) {
|
| 182 |
'</div>';
|
| 183 |
} ?>
|
| 184 |
|
| 185 |
+
<form name="gwolle_gb_entries" id="gwolle_gb_entries" action="#" method="POST" accept-charset="UTF-8">
|
| 186 |
|
| 187 |
<input type="hidden" name="gwolle_gb_page" value="entries" />
|
| 188 |
<!-- the following fields give us some information used for processing the mass edit -->
|
| 423 |
<span class="visible-icon" title="' . esc_html__('Visible', 'gwolle-gb') . '"></span>
|
| 424 |
<span class="invisible-icon" title="' . esc_html__('Invisible', 'gwolle-gb') . '"></span>
|
| 425 |
<span class="spam-icon" title="' . esc_html__('Spam', 'gwolle-gb') . '"></span>
|
| 426 |
+
<span class="trash-icon" title="' . /* translators: Is in Trashcan */ esc_html__('In Trash', 'gwolle-gb') . '"></span>';
|
| 427 |
$admin_reply = gwolle_gb_sanitize_output( $entry->get_admin_reply(), 'admin_reply' );
|
| 428 |
if ( strlen( trim($admin_reply) ) > 0 ) {
|
| 429 |
$html_output .= '
|
admin/gb-page-export.php
CHANGED
|
@@ -28,7 +28,7 @@ function gwolle_gb_page_export() {
|
|
| 28 |
?>
|
| 29 |
<div class="wrap gwolle_gb">
|
| 30 |
<div id="icon-gwolle-gb"><br /></div>
|
| 31 |
-
<h1><?php esc_html_e('Export guestbook entries.', 'gwolle-gb'); ?></h1>
|
| 32 |
|
| 33 |
<div id="poststuff" class="gwolle_gb_export metabox-holder">
|
| 34 |
<div class="postbox-container">
|
|
@@ -253,10 +253,10 @@ function gwolle_gb_export_postbox_user() {
|
|
| 253 |
<p><?php esc_html_e('Select one option below, either User ID or Email address', 'gwolle-gb'); ?></p>
|
| 254 |
<p>
|
| 255 |
<label for="gwolle_gb_user_id" class="text-info"><?php esc_html_e('User ID', 'gwolle-gb'); ?>:<br />
|
| 256 |
-
<input type="text" name="gwolle_gb_user_id" value="" placeholder="<?php esc_html_e('User ID', 'gwolle-gb'); ?>" />
|
| 257 |
</label><br />
|
| 258 |
<label for="gwolle_gb_user_email" class="text-info"><?php esc_html_e('User Email', 'gwolle-gb'); ?>:<br />
|
| 259 |
-
<input type="text" name="gwolle_gb_user_email" value="" placeholder="<?php esc_html_e('User Email', 'gwolle-gb'); ?>" />
|
| 260 |
</label>
|
| 261 |
</p>
|
| 262 |
|
| 28 |
?>
|
| 29 |
<div class="wrap gwolle_gb">
|
| 30 |
<div id="icon-gwolle-gb"><br /></div>
|
| 31 |
+
<h1><?php esc_html_e('Export guestbook entries.', 'gwolle-gb'); ?> (Gwolle Guestbook) - v<?php echo GWOLLE_GB_VER; ?></h1>
|
| 32 |
|
| 33 |
<div id="poststuff" class="gwolle_gb_export metabox-holder">
|
| 34 |
<div class="postbox-container">
|
| 253 |
<p><?php esc_html_e('Select one option below, either User ID or Email address', 'gwolle-gb'); ?></p>
|
| 254 |
<p>
|
| 255 |
<label for="gwolle_gb_user_id" class="text-info"><?php esc_html_e('User ID', 'gwolle-gb'); ?>:<br />
|
| 256 |
+
<input type="text" name="gwolle_gb_user_id" id="gwolle_gb_user_id" value="" placeholder="<?php esc_html_e('User ID', 'gwolle-gb'); ?>" />
|
| 257 |
</label><br />
|
| 258 |
<label for="gwolle_gb_user_email" class="text-info"><?php esc_html_e('User Email', 'gwolle-gb'); ?>:<br />
|
| 259 |
+
<input type="text" name="gwolle_gb_user_email" id="gwolle_gb_user_email" value="" placeholder="<?php esc_html_e('User Email', 'gwolle-gb'); ?>" />
|
| 260 |
</label>
|
| 261 |
</p>
|
| 262 |
|
admin/gb-page-gwolle-gb.php
CHANGED
|
@@ -32,12 +32,17 @@ function gwolle_gb_welcome() {
|
|
| 32 |
|
| 33 |
add_meta_box('gwolle_gb_help', esc_html__('Help', 'gwolle-gb'), 'gwolle_gb_overview_help', 'gwolle_gb_welcome', 'right');
|
| 34 |
add_meta_box('gwolle_gb_support', esc_html__('Support and Translations', 'gwolle-gb'), 'gwolle_gb_overview_support', 'gwolle_gb_welcome', 'right');
|
| 35 |
-
add_meta_box('
|
| 36 |
|
| 37 |
?>
|
| 38 |
<div class="wrap gwolle_gb">
|
| 39 |
<div id="icon-gwolle-gb"><br /></div>
|
| 40 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 41 |
|
| 42 |
<?php
|
| 43 |
$gwolle_gb_messages = gwolle_gb_get_messages();
|
|
@@ -203,7 +208,7 @@ function gwolle_gb_overview_notification() {
|
|
| 203 |
}
|
| 204 |
}
|
| 205 |
} ?>
|
| 206 |
-
<form name="gwolle_gb_welcome" method="post" action="">
|
| 207 |
<?php
|
| 208 |
settings_fields( 'gwolle_gb_options' );
|
| 209 |
do_settings_sections( 'gwolle_gb_options' );
|
|
@@ -261,7 +266,7 @@ function gwolle_gb_overview_thanks() {
|
|
| 261 |
<li><a href="https://akismet.com/tos/" target="_blank">' . esc_html__( 'Akismet', 'gwolle-gb' ) . '</a></li>
|
| 262 |
<li><a href="https://www.stopforumspam.com" target="_blank">' . esc_html__( 'Stop Forum Spam', 'gwolle-gb' ) . '</a></li>
|
| 263 |
<li><a href="https://markitup.jaysalvat.com/" target="_blank">' . esc_html__( 'MarkItUp', 'gwolle-gb' ) . '</a></li>
|
| 264 |
-
<li><a href="
|
| 265 |
</ul>';
|
| 266 |
}
|
| 267 |
|
|
@@ -326,7 +331,7 @@ function gwolle_gb_overview_support() {
|
|
| 326 |
* Metabox with text about wp.org reviews.
|
| 327 |
* Call for donations is gone.
|
| 328 |
*/
|
| 329 |
-
function
|
| 330 |
?>
|
| 331 |
<h3><?php esc_html_e('Review this plugin.', 'gwolle-gb'); ?></h3>
|
| 332 |
<p><?php
|
| 32 |
|
| 33 |
add_meta_box('gwolle_gb_help', esc_html__('Help', 'gwolle-gb'), 'gwolle_gb_overview_help', 'gwolle_gb_welcome', 'right');
|
| 34 |
add_meta_box('gwolle_gb_support', esc_html__('Support and Translations', 'gwolle-gb'), 'gwolle_gb_overview_support', 'gwolle_gb_welcome', 'right');
|
| 35 |
+
add_meta_box('gwolle_gb_review', /* translators: Reviews on the plugin page at WordPress.org */ esc_html__('Review', 'gwolle-gb'), 'gwolle_gb_overview_review', 'gwolle_gb_welcome', 'right');
|
| 36 |
|
| 37 |
?>
|
| 38 |
<div class="wrap gwolle_gb">
|
| 39 |
<div id="icon-gwolle-gb"><br /></div>
|
| 40 |
+
<?php
|
| 41 |
+
$heading = esc_html__('Gwolle Guestbook', 'gwolle-gb');
|
| 42 |
+
if ( $heading != 'Gwolle Guestbook' ) { // translated, so we add the real name.
|
| 43 |
+
$heading .= ' (Gwolle Guestbook)';
|
| 44 |
+
} ?>
|
| 45 |
+
<h1><?php echo $heading . ' - v' . GWOLLE_GB_VER; ?></h1>
|
| 46 |
|
| 47 |
<?php
|
| 48 |
$gwolle_gb_messages = gwolle_gb_get_messages();
|
| 208 |
}
|
| 209 |
}
|
| 210 |
} ?>
|
| 211 |
+
<form name="gwolle_gb_welcome" method="post" action="#">
|
| 212 |
<?php
|
| 213 |
settings_fields( 'gwolle_gb_options' );
|
| 214 |
do_settings_sections( 'gwolle_gb_options' );
|
| 266 |
<li><a href="https://akismet.com/tos/" target="_blank">' . esc_html__( 'Akismet', 'gwolle-gb' ) . '</a></li>
|
| 267 |
<li><a href="https://www.stopforumspam.com" target="_blank">' . esc_html__( 'Stop Forum Spam', 'gwolle-gb' ) . '</a></li>
|
| 268 |
<li><a href="https://markitup.jaysalvat.com/" target="_blank">' . esc_html__( 'MarkItUp', 'gwolle-gb' ) . '</a></li>
|
| 269 |
+
<li><a href="https://supersimpleslider.com/" target="_blank">' . esc_html__( 'Super Simple Slider', 'gwolle-gb' ) . '</a></li>
|
| 270 |
</ul>';
|
| 271 |
}
|
| 272 |
|
| 331 |
* Metabox with text about wp.org reviews.
|
| 332 |
* Call for donations is gone.
|
| 333 |
*/
|
| 334 |
+
function gwolle_gb_overview_review() {
|
| 335 |
?>
|
| 336 |
<h3><?php esc_html_e('Review this plugin.', 'gwolle-gb'); ?></h3>
|
| 337 |
<p><?php
|
admin/gb-page-import.php
CHANGED
|
@@ -2,7 +2,7 @@
|
|
| 2 |
/*
|
| 3 |
* Lets the user import guestbook entries from other plugins.
|
| 4 |
* Currently supported:
|
| 5 |
-
* - DMSGuestbook (
|
| 6 |
* - WordPress comments from a page, post or just all.
|
| 7 |
* - Gwolle-GB through a CSV-file.
|
| 8 |
*/
|
|
@@ -32,7 +32,7 @@ function gwolle_gb_page_import() {
|
|
| 32 |
?>
|
| 33 |
<div class="wrap gwolle_gb">
|
| 34 |
<div id="icon-gwolle-gb"><br /></div>
|
| 35 |
-
<h1><?php esc_html_e('Import guestbook entries.', 'gwolle-gb'); ?></h1>
|
| 36 |
|
| 37 |
<?php
|
| 38 |
$gwolle_gb_messages = gwolle_gb_get_messages();
|
| 2 |
/*
|
| 3 |
* Lets the user import guestbook entries from other plugins.
|
| 4 |
* Currently supported:
|
| 5 |
+
* - DMSGuestbook (https://wordpress.org/plugins/dmsguestbook/).
|
| 6 |
* - WordPress comments from a page, post or just all.
|
| 7 |
* - Gwolle-GB through a CSV-file.
|
| 8 |
*/
|
| 32 |
?>
|
| 33 |
<div class="wrap gwolle_gb">
|
| 34 |
<div id="icon-gwolle-gb"><br /></div>
|
| 35 |
+
<h1><?php esc_html_e('Import guestbook entries.', 'gwolle-gb'); ?> (Gwolle Guestbook) - v<?php echo GWOLLE_GB_VER; ?></h1>
|
| 36 |
|
| 37 |
<?php
|
| 38 |
$gwolle_gb_messages = gwolle_gb_get_messages();
|
admin/gb-page-settings.php
CHANGED
|
@@ -34,7 +34,7 @@ function gwolle_gb_page_settings() {
|
|
| 34 |
<div class="wrap gwolle_gb">
|
| 35 |
|
| 36 |
<div id="icon-gwolle-gb"><br /></div>
|
| 37 |
-
<h1><?php esc_html_e('Settings', 'gwolle-gb'); ?></h1>
|
| 38 |
|
| 39 |
<?php
|
| 40 |
if ( $gwolle_gb_errors ) {
|
|
@@ -65,38 +65,38 @@ function gwolle_gb_page_settings() {
|
|
| 65 |
<?php } ?>
|
| 66 |
</h2>
|
| 67 |
|
| 68 |
-
<form name="gwolle_gb_options" role="tabpanel" class="gwolle_gb_options gwolle_gb_forms <?php if ($active_tab == 'gwolle_gb_forms') { echo "active";} ?>" method="post" action="">
|
| 69 |
<?php gwolle_gb_page_settingstab_form(); ?>
|
| 70 |
</form>
|
| 71 |
|
| 72 |
|
| 73 |
-
<form name="gwolle_gb_options" role="tabpanel" class="gwolle_gb_options gwolle_gb_reading <?php if ($active_tab == 'gwolle_gb_reading') { echo "active";} ?>" method="post" action="">
|
| 74 |
<?php gwolle_gb_page_settingstab_reading(); ?>
|
| 75 |
</form>
|
| 76 |
|
| 77 |
|
| 78 |
-
<form name="gwolle_gb_options" role="tabpanel" class="gwolle_gb_options gwolle_gb_admin <?php if ($active_tab == 'gwolle_gb_admin') { echo "active";} ?>" method="post" action="">
|
| 79 |
<?php gwolle_gb_page_settingstab_admin(); ?>
|
| 80 |
</form>
|
| 81 |
|
| 82 |
|
| 83 |
-
<form name="gwolle_gb_options" role="tabpanel" class="gwolle_gb_options gwolle_gb_antispam <?php if ($active_tab == 'gwolle_gb_antispam') { echo "active";} ?>" method="post" action="">
|
| 84 |
<?php gwolle_gb_page_settingstab_antispam(); ?>
|
| 85 |
</form>
|
| 86 |
|
| 87 |
|
| 88 |
-
<form name="gwolle_gb_options" role="tabpanel" class="gwolle_gb_options gwolle_gb_mail <?php if ($active_tab == 'gwolle_gb_mail') { echo "active";} ?>" method="post" action="">
|
| 89 |
<?php gwolle_gb_page_settingstab_email(); ?>
|
| 90 |
</form>
|
| 91 |
|
| 92 |
|
| 93 |
-
<form name="gwolle_gb_options" role="tabpanel" class="gwolle_gb_options gwolle_gb_debug <?php if ($active_tab == 'gwolle_gb_debug') { echo "active";} ?>" method="post" action="">
|
| 94 |
<?php gwolle_gb_page_settingstab_debug(); ?>
|
| 95 |
</form>
|
| 96 |
|
| 97 |
|
| 98 |
<?php if ( function_exists('is_multisite') && ! is_multisite() ) { ?>
|
| 99 |
-
<form name="gwolle_gb_options" role="tabpanel" class="gwolle_gb_options gwolle_gb_uninstall <?php if ($active_tab == 'gwolle_gb_uninstall') { echo "active";} ?>" method="post" action="">
|
| 100 |
<?php gwolle_gb_page_settingstab_uninstall(); ?>
|
| 101 |
</form>
|
| 102 |
<?php } ?>
|
|
@@ -195,7 +195,6 @@ function gwolle_gb_page_settings_update() {
|
|
| 195 |
$form_setting[$item] = 'false';
|
| 196 |
}
|
| 197 |
}
|
| 198 |
-
$form_setting = serialize( $form_setting );
|
| 199 |
update_option( 'gwolle_gb-form', $form_setting );
|
| 200 |
break;
|
| 201 |
case 'gwolle_gb_reading':
|
|
@@ -273,7 +272,6 @@ function gwolle_gb_page_settings_update() {
|
|
| 273 |
$read_setting[$item] = 'false';
|
| 274 |
}
|
| 275 |
}
|
| 276 |
-
$read_setting = serialize( $read_setting );
|
| 277 |
update_option( 'gwolle_gb-read', $read_setting );
|
| 278 |
break;
|
| 279 |
case 'gwolle_gb_admin':
|
| 34 |
<div class="wrap gwolle_gb">
|
| 35 |
|
| 36 |
<div id="icon-gwolle-gb"><br /></div>
|
| 37 |
+
<h1><?php esc_html_e('Settings', 'gwolle-gb'); ?> (Gwolle Guestbook) - v<?php echo GWOLLE_GB_VER; ?></h1>
|
| 38 |
|
| 39 |
<?php
|
| 40 |
if ( $gwolle_gb_errors ) {
|
| 65 |
<?php } ?>
|
| 66 |
</h2>
|
| 67 |
|
| 68 |
+
<form name="gwolle_gb_options" role="tabpanel" class="gwolle_gb_options gwolle_gb_forms <?php if ($active_tab == 'gwolle_gb_forms') { echo "active";} ?>" method="post" action="#">
|
| 69 |
<?php gwolle_gb_page_settingstab_form(); ?>
|
| 70 |
</form>
|
| 71 |
|
| 72 |
|
| 73 |
+
<form name="gwolle_gb_options" role="tabpanel" class="gwolle_gb_options gwolle_gb_reading <?php if ($active_tab == 'gwolle_gb_reading') { echo "active";} ?>" method="post" action="#">
|
| 74 |
<?php gwolle_gb_page_settingstab_reading(); ?>
|
| 75 |
</form>
|
| 76 |
|
| 77 |
|
| 78 |
+
<form name="gwolle_gb_options" role="tabpanel" class="gwolle_gb_options gwolle_gb_admin <?php if ($active_tab == 'gwolle_gb_admin') { echo "active";} ?>" method="post" action="#">
|
| 79 |
<?php gwolle_gb_page_settingstab_admin(); ?>
|
| 80 |
</form>
|
| 81 |
|
| 82 |
|
| 83 |
+
<form name="gwolle_gb_options" role="tabpanel" class="gwolle_gb_options gwolle_gb_antispam <?php if ($active_tab == 'gwolle_gb_antispam') { echo "active";} ?>" method="post" action="#">
|
| 84 |
<?php gwolle_gb_page_settingstab_antispam(); ?>
|
| 85 |
</form>
|
| 86 |
|
| 87 |
|
| 88 |
+
<form name="gwolle_gb_options" role="tabpanel" class="gwolle_gb_options gwolle_gb_mail <?php if ($active_tab == 'gwolle_gb_mail') { echo "active";} ?>" method="post" action="#">
|
| 89 |
<?php gwolle_gb_page_settingstab_email(); ?>
|
| 90 |
</form>
|
| 91 |
|
| 92 |
|
| 93 |
+
<form name="gwolle_gb_options" role="tabpanel" class="gwolle_gb_options gwolle_gb_debug <?php if ($active_tab == 'gwolle_gb_debug') { echo "active";} ?>" method="post" action="#">
|
| 94 |
<?php gwolle_gb_page_settingstab_debug(); ?>
|
| 95 |
</form>
|
| 96 |
|
| 97 |
|
| 98 |
<?php if ( function_exists('is_multisite') && ! is_multisite() ) { ?>
|
| 99 |
+
<form name="gwolle_gb_options" role="tabpanel" class="gwolle_gb_options gwolle_gb_uninstall <?php if ($active_tab == 'gwolle_gb_uninstall') { echo "active";} ?>" method="post" action="#">
|
| 100 |
<?php gwolle_gb_page_settingstab_uninstall(); ?>
|
| 101 |
</form>
|
| 102 |
<?php } ?>
|
| 195 |
$form_setting[$item] = 'false';
|
| 196 |
}
|
| 197 |
}
|
|
|
|
| 198 |
update_option( 'gwolle_gb-form', $form_setting );
|
| 199 |
break;
|
| 200 |
case 'gwolle_gb_reading':
|
| 272 |
$read_setting[$item] = 'false';
|
| 273 |
}
|
| 274 |
}
|
|
|
|
| 275 |
update_option( 'gwolle_gb-read', $read_setting );
|
| 276 |
break;
|
| 277 |
case 'gwolle_gb_admin':
|
admin/gb-upgrade.php
CHANGED
|
@@ -502,6 +502,22 @@ function gwolle_gb_upgrade() {
|
|
| 502 |
");
|
| 503 |
}
|
| 504 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 505 |
/* Upgrade to new shiny db collation. Since WP 4.2 */
|
| 506 |
require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
|
| 507 |
if ( function_exists('maybe_convert_table_to_utf8mb4') ) {
|
|
@@ -558,7 +574,6 @@ function gwolle_gb_set_defaults() {
|
|
| 558 |
'form_recaptcha_enabled' => 'false',
|
| 559 |
'form_privacy_enabled' => 'false'
|
| 560 |
);
|
| 561 |
-
$defaults = serialize( $defaults );
|
| 562 |
update_option( 'gwolle_gb-form', $defaults );
|
| 563 |
}
|
| 564 |
if ( get_option('gwolle_gb-form_ajax', false) == false ) {
|
|
@@ -614,7 +629,6 @@ function gwolle_gb_set_defaults() {
|
|
| 614 |
'read_aavatar' => 'false',
|
| 615 |
'read_editlink' => 'true'
|
| 616 |
);
|
| 617 |
-
$defaults = serialize( $defaults );
|
| 618 |
update_option( 'gwolle_gb-read', $defaults );
|
| 619 |
}
|
| 620 |
if ( get_option('gwolle_gb-refuse-spam', false) == false ) {
|
| 502 |
");
|
| 503 |
}
|
| 504 |
|
| 505 |
+
if (version_compare($installed_ver, '4.0.0', '<')) {
|
| 506 |
+
/*
|
| 507 |
+
* 3.1.9->4.0.0
|
| 508 |
+
* Fix serialized options.
|
| 509 |
+
*/
|
| 510 |
+
$options = array(
|
| 511 |
+
'gwolle_gb-form',
|
| 512 |
+
'gwolle_gb-read',
|
| 513 |
+
);
|
| 514 |
+
foreach ( $options as $option ) {
|
| 515 |
+
$value = get_option( $option, array() );
|
| 516 |
+
$value = maybe_unserialize( $value );
|
| 517 |
+
update_option( $option, $value );
|
| 518 |
+
}
|
| 519 |
+
}
|
| 520 |
+
|
| 521 |
/* Upgrade to new shiny db collation. Since WP 4.2 */
|
| 522 |
require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
|
| 523 |
if ( function_exists('maybe_convert_table_to_utf8mb4') ) {
|
| 574 |
'form_recaptcha_enabled' => 'false',
|
| 575 |
'form_privacy_enabled' => 'false'
|
| 576 |
);
|
|
|
|
| 577 |
update_option( 'gwolle_gb-form', $defaults );
|
| 578 |
}
|
| 579 |
if ( get_option('gwolle_gb-form_ajax', false) == false ) {
|
| 629 |
'read_aavatar' => 'false',
|
| 630 |
'read_editlink' => 'true'
|
| 631 |
);
|
|
|
|
| 632 |
update_option( 'gwolle_gb-read', $defaults );
|
| 633 |
}
|
| 634 |
if ( get_option('gwolle_gb-refuse-spam', false) == false ) {
|
admin/gwolle-gb-hooks.php
CHANGED
|
@@ -3,7 +3,7 @@
|
|
| 3 |
/*
|
| 4 |
* WordPress Actions and Filters.
|
| 5 |
* See the Plugin API in the Codex:
|
| 6 |
-
*
|
| 7 |
*/
|
| 8 |
|
| 9 |
|
|
@@ -134,3 +134,40 @@ function gwolle_gb_multisite_uninstall() {
|
|
| 134 |
}
|
| 135 |
}
|
| 136 |
add_action('admin_init', 'gwolle_gb_multisite_uninstall', 99);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 3 |
/*
|
| 4 |
* WordPress Actions and Filters.
|
| 5 |
* See the Plugin API in the Codex:
|
| 6 |
+
* https://codex.wordpress.org/Plugin_API
|
| 7 |
*/
|
| 8 |
|
| 9 |
|
| 134 |
}
|
| 135 |
}
|
| 136 |
add_action('admin_init', 'gwolle_gb_multisite_uninstall', 99);
|
| 137 |
+
|
| 138 |
+
|
| 139 |
+
/*
|
| 140 |
+
* Show admin notice when gwolle-gb-addon is active and needs an update.
|
| 141 |
+
* Is dismissable by activating or updating.
|
| 142 |
+
*
|
| 143 |
+
* @since 4.0.0
|
| 144 |
+
*/
|
| 145 |
+
function gwolle_gb_deps_admin_notice() {
|
| 146 |
+
$class = 'notice notice-error';
|
| 147 |
+
|
| 148 |
+
if ( ! isset($_GET['page']) ) {
|
| 149 |
+
return;
|
| 150 |
+
}
|
| 151 |
+
$pos = strpos($_GET['page'], 'gwolle-gb');
|
| 152 |
+
if ($pos === false) {
|
| 153 |
+
return;
|
| 154 |
+
}
|
| 155 |
+
|
| 156 |
+
$active = is_plugin_active( 'gwolle-gb-addon/gwolle-gb-addon.php' ); // true or false
|
| 157 |
+
if ( $active ) {
|
| 158 |
+
$zeno_el = '<a href="https://zenoweb.nl/downloads/gwolle-guestbook-add-on/" target="_blank">';
|
| 159 |
+
$zeno_el_close = '</a>';
|
| 160 |
+
$mojo_el = '<a href="https://www.mojomarketplace.com/item/gwolle-gb-add-on" target="_blank">';
|
| 161 |
+
$mojo_el_close = '</a>';
|
| 162 |
+
$required_version = '2.0.0';
|
| 163 |
+
|
| 164 |
+
if ( GWOLLE_GB_ADDON_VER && version_compare( GWOLLE_GB_ADDON_VER, $required_version, '>=' ) ) {
|
| 165 |
+
return; // We have the minimal version.
|
| 166 |
+
}
|
| 167 |
+
|
| 168 |
+
$message = sprintf( esc_html__( 'Gwolle Guestbook: This version of the Gwolle Guestbook Add-On is too old for this version of Gwolle Guestbook, you need at least %s. You have version %s. Go to the %sZenoWeb Webshop%s or to %sMOJO%s and login, download and update the Add-On.', 'gwolle-gb' ), $required_version, GWOLLE_GB_ADDON_VER, $zeno_el, $zeno_el_close, $mojo_el, $mojo_el_close );
|
| 169 |
+
printf( '<div class="%1$s"><p>%2$s</p></div>', esc_attr( $class ), $message );
|
| 170 |
+
|
| 171 |
+
}
|
| 172 |
+
}
|
| 173 |
+
add_action( 'admin_notices', 'gwolle_gb_deps_admin_notice' );
|
admin/js/gwolle-gb-admin.js
CHANGED
|
@@ -66,12 +66,10 @@ jQuery(document).ready(function($) {
|
|
| 66 |
var mn = jQuery("#mn").val();
|
| 67 |
|
| 68 |
var gwolle_date = new Date( yy, mm - 1, dd, hh, mn );
|
| 69 |
-
|
| 70 |
-
|
| 71 |
-
var timestamp = Math.round( gwolle_date.getTime() / 1000 )
|
| 72 |
-
jQuery("#gwolle_gb_timestamp").val(timestamp);
|
| 73 |
-
|
| 74 |
-
var readable_time = gb_timeconverter( timestamp );
|
| 75 |
jQuery( 'span.gb-editor-datetime' ).text( readable_time );
|
| 76 |
|
| 77 |
var author_name = jQuery("#gwolle_gb_author_name").val();
|
|
@@ -86,19 +84,6 @@ jQuery(document).ready(function($) {
|
|
| 86 |
});
|
| 87 |
});
|
| 88 |
|
| 89 |
-
/* Convert Unix timestamp to readable time. */
|
| 90 |
-
function gb_timeconverter( timestamp ) {
|
| 91 |
-
var datetime = new Date( timestamp * 1000 );
|
| 92 |
-
var months = ['Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec'];
|
| 93 |
-
var year = datetime.getFullYear();
|
| 94 |
-
var month = months[datetime.getMonth()];
|
| 95 |
-
var date = datetime.getDate();
|
| 96 |
-
var hour = datetime.getHours();
|
| 97 |
-
var min = datetime.getMinutes();
|
| 98 |
-
var readable_time = date + ' ' + month + ' ' + year + ' ' + hour + ':' + min;
|
| 99 |
-
return readable_time;
|
| 100 |
-
}
|
| 101 |
-
|
| 102 |
|
| 103 |
/*
|
| 104 |
* Settings Page
|
| 66 |
var mn = jQuery("#mn").val();
|
| 67 |
|
| 68 |
var gwolle_date = new Date( yy, mm - 1, dd, hh, mn );
|
| 69 |
+
readable_time = gwolle_date.toUTCString();
|
| 70 |
+
readable_time = readable_time.replace(/GMT/i, '');
|
| 71 |
+
var timestamp = Math.round( gwolle_date.getTime() / 1000 );
|
| 72 |
+
jQuery("#gwolle_gb_timestamp").val(timestamp); // local time of the server.
|
|
|
|
|
|
|
| 73 |
jQuery( 'span.gb-editor-datetime' ).text( readable_time );
|
| 74 |
|
| 75 |
var author_name = jQuery("#gwolle_gb_author_name").val();
|
| 84 |
});
|
| 85 |
});
|
| 86 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 87 |
|
| 88 |
/*
|
| 89 |
* Settings Page
|
admin/tabs/gb-admintab.php
CHANGED
|
@@ -30,7 +30,7 @@ function gwolle_gb_page_settingstab_admin() {
|
|
| 30 |
<table class="form-table">
|
| 31 |
<tbody>
|
| 32 |
|
| 33 |
-
<tr
|
| 34 |
<th scope="row"><label for="entries_per_page"><?php esc_html_e('Entries per page in the admin', 'gwolle-gb'); ?></label></th>
|
| 35 |
<td>
|
| 36 |
<select name="entries_per_page" id="entries_per_page">
|
|
@@ -50,7 +50,7 @@ function gwolle_gb_page_settingstab_admin() {
|
|
| 50 |
</td>
|
| 51 |
</tr>
|
| 52 |
|
| 53 |
-
<tr
|
| 54 |
<th scope="row"><label for="showEntryIcons"><?php esc_html_e('Entry icons', 'gwolle-gb'); ?></label></th>
|
| 55 |
<td>
|
| 56 |
<input type="checkbox" <?php
|
| 30 |
<table class="form-table">
|
| 31 |
<tbody>
|
| 32 |
|
| 33 |
+
<tr>
|
| 34 |
<th scope="row"><label for="entries_per_page"><?php esc_html_e('Entries per page in the admin', 'gwolle-gb'); ?></label></th>
|
| 35 |
<td>
|
| 36 |
<select name="entries_per_page" id="entries_per_page">
|
| 50 |
</td>
|
| 51 |
</tr>
|
| 52 |
|
| 53 |
+
<tr>
|
| 54 |
<th scope="row"><label for="showEntryIcons"><?php esc_html_e('Entry icons', 'gwolle-gb'); ?></label></th>
|
| 55 |
<td>
|
| 56 |
<input type="checkbox" <?php
|
admin/tabs/gb-antispamtab.php
CHANGED
|
@@ -30,7 +30,7 @@ function gwolle_gb_page_settingstab_antispam() {
|
|
| 30 |
<table class="form-table">
|
| 31 |
<tbody>
|
| 32 |
|
| 33 |
-
<tr
|
| 34 |
<th scope="row"><label for="moderate-entries"><?php /* translators: Settings page, option for moderation */ esc_html_e('Moderate Guestbook', 'gwolle-gb'); ?></label></th>
|
| 35 |
<td>
|
| 36 |
<input <?php
|
|
@@ -49,7 +49,7 @@ function gwolle_gb_page_settingstab_antispam() {
|
|
| 49 |
</td>
|
| 50 |
</tr>
|
| 51 |
|
| 52 |
-
<tr
|
| 53 |
<th scope="row"><label for="refuse-spam"><?php /* translators: Settings page, option for refusing spam */ esc_html_e('Refuse Spam', 'gwolle-gb'); ?></label></th>
|
| 54 |
<td>
|
| 55 |
<input <?php
|
|
@@ -68,7 +68,7 @@ function gwolle_gb_page_settingstab_antispam() {
|
|
| 68 |
</td>
|
| 69 |
</tr>
|
| 70 |
|
| 71 |
-
<tr
|
| 72 |
<th scope="row"><label for="honeypot"><?php esc_html_e('Honeypot', 'gwolle-gb'); ?></label></th>
|
| 73 |
<td>
|
| 74 |
<input <?php
|
|
@@ -85,7 +85,7 @@ function gwolle_gb_page_settingstab_antispam() {
|
|
| 85 |
</td>
|
| 86 |
</tr>
|
| 87 |
|
| 88 |
-
<tr
|
| 89 |
<th scope="row"><label for="gwolle_gb_nonce"><?php esc_html_e('Nonce', 'gwolle-gb'); ?></label></th>
|
| 90 |
<td>
|
| 91 |
<input <?php
|
|
@@ -110,7 +110,7 @@ function gwolle_gb_page_settingstab_antispam() {
|
|
| 110 |
</td>
|
| 111 |
</tr>
|
| 112 |
|
| 113 |
-
<tr
|
| 114 |
<th scope="row"><label for="gwolle_gb_longtext"><?php esc_html_e('Long Text', 'gwolle-gb'); ?></label></th>
|
| 115 |
<td>
|
| 116 |
<input <?php
|
|
@@ -132,7 +132,7 @@ function gwolle_gb_page_settingstab_antispam() {
|
|
| 132 |
</td>
|
| 133 |
</tr>
|
| 134 |
|
| 135 |
-
<tr
|
| 136 |
<th scope="row"><label for="gwolle_gb_linkchecker"><?php esc_html_e('Link Checker', 'gwolle-gb'); ?></label></th>
|
| 137 |
<td>
|
| 138 |
<input <?php
|
|
@@ -151,7 +151,7 @@ function gwolle_gb_page_settingstab_antispam() {
|
|
| 151 |
</td>
|
| 152 |
</tr>
|
| 153 |
|
| 154 |
-
<tr
|
| 155 |
<th scope="row"><label for="gwolle_gb_timeout"><?php esc_html_e('Form Timeout', 'gwolle-gb'); ?></label></th>
|
| 156 |
<td>
|
| 157 |
<input <?php
|
|
@@ -170,7 +170,7 @@ function gwolle_gb_page_settingstab_antispam() {
|
|
| 170 |
</td>
|
| 171 |
</tr>
|
| 172 |
|
| 173 |
-
<tr
|
| 174 |
<th scope="row">
|
| 175 |
<label for="akismet-active"><?php esc_html_e('Akismet', 'gwolle-gb'); ?></label>
|
| 176 |
</th>
|
|
@@ -210,7 +210,7 @@ function gwolle_gb_page_settingstab_antispam() {
|
|
| 210 |
</td>
|
| 211 |
</tr>
|
| 212 |
|
| 213 |
-
<tr
|
| 214 |
<th scope="row"><label for="gwolle_gb_sfs"><?php esc_html_e('Stop Forum Spam', 'gwolle-gb'); ?></label></th>
|
| 215 |
<td>
|
| 216 |
<input <?php
|
|
@@ -236,7 +236,7 @@ function gwolle_gb_page_settingstab_antispam() {
|
|
| 236 |
$antispam_question = gwolle_gb_sanitize_output( get_option('gwolle_gb-antispam-question') );
|
| 237 |
$antispam_answer = gwolle_gb_sanitize_output( get_option('gwolle_gb-antispam-answer') );
|
| 238 |
?>
|
| 239 |
-
<tr
|
| 240 |
<th scope="row"><label for="antispam-question"><?php esc_html_e('Custom Anti-Spam Security Question', 'gwolle-gb'); ?></label></th>
|
| 241 |
<td>
|
| 242 |
<div>
|
| 30 |
<table class="form-table">
|
| 31 |
<tbody>
|
| 32 |
|
| 33 |
+
<tr>
|
| 34 |
<th scope="row"><label for="moderate-entries"><?php /* translators: Settings page, option for moderation */ esc_html_e('Moderate Guestbook', 'gwolle-gb'); ?></label></th>
|
| 35 |
<td>
|
| 36 |
<input <?php
|
| 49 |
</td>
|
| 50 |
</tr>
|
| 51 |
|
| 52 |
+
<tr>
|
| 53 |
<th scope="row"><label for="refuse-spam"><?php /* translators: Settings page, option for refusing spam */ esc_html_e('Refuse Spam', 'gwolle-gb'); ?></label></th>
|
| 54 |
<td>
|
| 55 |
<input <?php
|
| 68 |
</td>
|
| 69 |
</tr>
|
| 70 |
|
| 71 |
+
<tr>
|
| 72 |
<th scope="row"><label for="honeypot"><?php esc_html_e('Honeypot', 'gwolle-gb'); ?></label></th>
|
| 73 |
<td>
|
| 74 |
<input <?php
|
| 85 |
</td>
|
| 86 |
</tr>
|
| 87 |
|
| 88 |
+
<tr>
|
| 89 |
<th scope="row"><label for="gwolle_gb_nonce"><?php esc_html_e('Nonce', 'gwolle-gb'); ?></label></th>
|
| 90 |
<td>
|
| 91 |
<input <?php
|
| 110 |
</td>
|
| 111 |
</tr>
|
| 112 |
|
| 113 |
+
<tr>
|
| 114 |
<th scope="row"><label for="gwolle_gb_longtext"><?php esc_html_e('Long Text', 'gwolle-gb'); ?></label></th>
|
| 115 |
<td>
|
| 116 |
<input <?php
|
| 132 |
</td>
|
| 133 |
</tr>
|
| 134 |
|
| 135 |
+
<tr>
|
| 136 |
<th scope="row"><label for="gwolle_gb_linkchecker"><?php esc_html_e('Link Checker', 'gwolle-gb'); ?></label></th>
|
| 137 |
<td>
|
| 138 |
<input <?php
|
| 151 |
</td>
|
| 152 |
</tr>
|
| 153 |
|
| 154 |
+
<tr>
|
| 155 |
<th scope="row"><label for="gwolle_gb_timeout"><?php esc_html_e('Form Timeout', 'gwolle-gb'); ?></label></th>
|
| 156 |
<td>
|
| 157 |
<input <?php
|
| 170 |
</td>
|
| 171 |
</tr>
|
| 172 |
|
| 173 |
+
<tr>
|
| 174 |
<th scope="row">
|
| 175 |
<label for="akismet-active"><?php esc_html_e('Akismet', 'gwolle-gb'); ?></label>
|
| 176 |
</th>
|
| 210 |
</td>
|
| 211 |
</tr>
|
| 212 |
|
| 213 |
+
<tr>
|
| 214 |
<th scope="row"><label for="gwolle_gb_sfs"><?php esc_html_e('Stop Forum Spam', 'gwolle-gb'); ?></label></th>
|
| 215 |
<td>
|
| 216 |
<input <?php
|
| 236 |
$antispam_question = gwolle_gb_sanitize_output( get_option('gwolle_gb-antispam-question') );
|
| 237 |
$antispam_answer = gwolle_gb_sanitize_output( get_option('gwolle_gb-antispam-answer') );
|
| 238 |
?>
|
| 239 |
+
<tr>
|
| 240 |
<th scope="row"><label for="antispam-question"><?php esc_html_e('Custom Anti-Spam Security Question', 'gwolle-gb'); ?></label></th>
|
| 241 |
<td>
|
| 242 |
<div>
|
admin/tabs/gb-debugtab.php
CHANGED
|
@@ -31,7 +31,7 @@ function gwolle_gb_page_settingstab_debug() {
|
|
| 31 |
<table class="form-table">
|
| 32 |
<tbody>
|
| 33 |
|
| 34 |
-
<tr
|
| 35 |
<td scope="row" colspan="2">
|
| 36 |
<p>
|
| 37 |
<?php esc_html_e('Please provide this information when posting a support message on the support forum.', 'gwolle-gb'); ?>
|
|
@@ -79,7 +79,7 @@ function gwolle_gb_page_settingstab_debug() {
|
|
| 79 |
}
|
| 80 |
?>
|
| 81 |
|
| 82 |
-
<tr
|
| 83 |
<th scope="row"><label for="blogdescription"><?php esc_html_e('Test', 'gwolle-gb'); ?></label></th>
|
| 84 |
<td>
|
| 85 |
<p>
|
|
@@ -91,9 +91,7 @@ function gwolle_gb_page_settingstab_debug() {
|
|
| 91 |
</td>
|
| 92 |
</tr>
|
| 93 |
|
| 94 |
-
|
| 95 |
-
<?php gwolle_gb_debug_info(); ?>
|
| 96 |
-
</tr>
|
| 97 |
|
| 98 |
</tbody>
|
| 99 |
</table>
|
| 31 |
<table class="form-table">
|
| 32 |
<tbody>
|
| 33 |
|
| 34 |
+
<tr>
|
| 35 |
<td scope="row" colspan="2">
|
| 36 |
<p>
|
| 37 |
<?php esc_html_e('Please provide this information when posting a support message on the support forum.', 'gwolle-gb'); ?>
|
| 79 |
}
|
| 80 |
?>
|
| 81 |
|
| 82 |
+
<tr>
|
| 83 |
<th scope="row"><label for="blogdescription"><?php esc_html_e('Test', 'gwolle-gb'); ?></label></th>
|
| 84 |
<td>
|
| 85 |
<p>
|
| 91 |
</td>
|
| 92 |
</tr>
|
| 93 |
|
| 94 |
+
<?php gwolle_gb_debug_info(); ?>
|
|
|
|
|
|
|
| 95 |
|
| 96 |
</tbody>
|
| 97 |
</table>
|
admin/tabs/gb-emailtab.php
CHANGED
|
@@ -36,7 +36,7 @@ function gwolle_gb_page_settingstab_email() {
|
|
| 36 |
$user_ids = explode( ",", $user_ids );
|
| 37 |
} ?>
|
| 38 |
|
| 39 |
-
<tr
|
| 40 |
<th scope="row"><label><?php esc_html_e('Subscription status', 'gwolle-gb'); ?></label></th>
|
| 41 |
<td>
|
| 42 |
<?php
|
|
@@ -49,7 +49,7 @@ function gwolle_gb_page_settingstab_email() {
|
|
| 49 |
</td>
|
| 50 |
</tr>
|
| 51 |
|
| 52 |
-
<tr
|
| 53 |
<th scope="row"><label for="subscribe"><?php esc_html_e('Subscribe moderators', 'gwolle-gb'); ?></label></th>
|
| 54 |
<td>
|
| 55 |
<select name="subscribe" id="subscribe">
|
|
@@ -82,7 +82,7 @@ function gwolle_gb_page_settingstab_email() {
|
|
| 82 |
</td>
|
| 83 |
</tr>
|
| 84 |
|
| 85 |
-
<tr
|
| 86 |
<th scope="row"><label for="unsubscribe"><?php esc_html_e('Unsubscribe moderators', 'gwolle-gb'); ?></label></th>
|
| 87 |
<td>
|
| 88 |
<?php
|
|
@@ -116,7 +116,7 @@ function gwolle_gb_page_settingstab_email() {
|
|
| 116 |
</td>
|
| 117 |
</tr>
|
| 118 |
|
| 119 |
-
<tr
|
| 120 |
<th scope="row"><label for="admin_mail_from"><?php /* translators: Setting for SMTP mail from header */ esc_html_e('Send from address', 'gwolle-gb'); ?></label></th>
|
| 121 |
<td>
|
| 122 |
<input type="email" name="admin_mail_from" id="admin_mail_from" class="regular-text" value="<?php echo gwolle_gb_sanitize_output( get_option('gwolle_gb-mail-from', false) ); ?>" placeholder="info@example.com" />
|
|
@@ -131,7 +131,7 @@ function gwolle_gb_page_settingstab_email() {
|
|
| 131 |
</td>
|
| 132 |
</tr>
|
| 133 |
|
| 134 |
-
<tr
|
| 135 |
<th scope="row"><label for="adminMailContent"><?php esc_html_e('Admin mail content', 'gwolle-gb'); ?></label></th>
|
| 136 |
<td>
|
| 137 |
<?php
|
|
@@ -173,7 +173,7 @@ Entry content:
|
|
| 173 |
</td>
|
| 174 |
</tr>
|
| 175 |
|
| 176 |
-
<tr
|
| 177 |
<th scope="row"><label for="mail_author"><?php esc_html_e('Mail Author', 'gwolle-gb'); ?></label></th>
|
| 178 |
<td>
|
| 179 |
<input <?php
|
|
@@ -191,7 +191,7 @@ Entry content:
|
|
| 191 |
</td>
|
| 192 |
</tr>
|
| 193 |
|
| 194 |
-
<tr
|
| 195 |
<th scope="row"><label for="authorMailContent"><?php esc_html_e('Author mail content', 'gwolle-gb'); ?></label></th>
|
| 196 |
<td>
|
| 197 |
<?php
|
|
@@ -231,7 +231,7 @@ Entry content:
|
|
| 231 |
</td>
|
| 232 |
</tr>
|
| 233 |
|
| 234 |
-
<tr
|
| 235 |
<th scope="row"><label for="gwolle_gb-mail_admin_replyContent"><?php esc_html_e('Admin Reply mail content', 'gwolle-gb'); ?></label></th>
|
| 236 |
<td>
|
| 237 |
<?php
|
| 36 |
$user_ids = explode( ",", $user_ids );
|
| 37 |
} ?>
|
| 38 |
|
| 39 |
+
<tr>
|
| 40 |
<th scope="row"><label><?php esc_html_e('Subscription status', 'gwolle-gb'); ?></label></th>
|
| 41 |
<td>
|
| 42 |
<?php
|
| 49 |
</td>
|
| 50 |
</tr>
|
| 51 |
|
| 52 |
+
<tr>
|
| 53 |
<th scope="row"><label for="subscribe"><?php esc_html_e('Subscribe moderators', 'gwolle-gb'); ?></label></th>
|
| 54 |
<td>
|
| 55 |
<select name="subscribe" id="subscribe">
|
| 82 |
</td>
|
| 83 |
</tr>
|
| 84 |
|
| 85 |
+
<tr>
|
| 86 |
<th scope="row"><label for="unsubscribe"><?php esc_html_e('Unsubscribe moderators', 'gwolle-gb'); ?></label></th>
|
| 87 |
<td>
|
| 88 |
<?php
|
| 116 |
</td>
|
| 117 |
</tr>
|
| 118 |
|
| 119 |
+
<tr>
|
| 120 |
<th scope="row"><label for="admin_mail_from"><?php /* translators: Setting for SMTP mail from header */ esc_html_e('Send from address', 'gwolle-gb'); ?></label></th>
|
| 121 |
<td>
|
| 122 |
<input type="email" name="admin_mail_from" id="admin_mail_from" class="regular-text" value="<?php echo gwolle_gb_sanitize_output( get_option('gwolle_gb-mail-from', false) ); ?>" placeholder="info@example.com" />
|
| 131 |
</td>
|
| 132 |
</tr>
|
| 133 |
|
| 134 |
+
<tr>
|
| 135 |
<th scope="row"><label for="adminMailContent"><?php esc_html_e('Admin mail content', 'gwolle-gb'); ?></label></th>
|
| 136 |
<td>
|
| 137 |
<?php
|
| 173 |
</td>
|
| 174 |
</tr>
|
| 175 |
|
| 176 |
+
<tr>
|
| 177 |
<th scope="row"><label for="mail_author"><?php esc_html_e('Mail Author', 'gwolle-gb'); ?></label></th>
|
| 178 |
<td>
|
| 179 |
<input <?php
|
| 191 |
</td>
|
| 192 |
</tr>
|
| 193 |
|
| 194 |
+
<tr>
|
| 195 |
<th scope="row"><label for="authorMailContent"><?php esc_html_e('Author mail content', 'gwolle-gb'); ?></label></th>
|
| 196 |
<td>
|
| 197 |
<?php
|
| 231 |
</td>
|
| 232 |
</tr>
|
| 233 |
|
| 234 |
+
<tr>
|
| 235 |
<th scope="row"><label for="gwolle_gb-mail_admin_replyContent"><?php esc_html_e('Admin Reply mail content', 'gwolle-gb'); ?></label></th>
|
| 236 |
<td>
|
| 237 |
<?php
|
admin/tabs/gb-formtab.php
CHANGED
|
@@ -30,7 +30,7 @@ function gwolle_gb_page_settingstab_form() {
|
|
| 30 |
<table class="form-table">
|
| 31 |
<tbody>
|
| 32 |
|
| 33 |
-
<tr
|
| 34 |
<th scope="row"><label for="require_login"><?php esc_html_e('Require Login', 'gwolle-gb'); ?></label></th>
|
| 35 |
<td>
|
| 36 |
<input type="checkbox" id="require_login" name="require_login" <?php
|
|
@@ -44,7 +44,7 @@ function gwolle_gb_page_settingstab_form() {
|
|
| 44 |
</td>
|
| 45 |
</tr>
|
| 46 |
|
| 47 |
-
<tr
|
| 48 |
<th scope="row"><label for="labels_float"><?php esc_html_e('Labels float', 'gwolle-gb'); ?></label></th>
|
| 49 |
<td>
|
| 50 |
<input type="checkbox" id="labels_float" name="labels_float" <?php
|
|
@@ -58,7 +58,7 @@ function gwolle_gb_page_settingstab_form() {
|
|
| 58 |
</td>
|
| 59 |
</tr>
|
| 60 |
|
| 61 |
-
<tr
|
| 62 |
<th scope="row"><label for="gb_header"><?php esc_html_e('Header Text', 'gwolle-gb'); ?></label></th>
|
| 63 |
<td><?php
|
| 64 |
$header = gwolle_gb_sanitize_output( get_option('gwolle_gb-header', false) );
|
|
@@ -73,7 +73,7 @@ function gwolle_gb_page_settingstab_form() {
|
|
| 73 |
</td>
|
| 74 |
</tr>
|
| 75 |
|
| 76 |
-
<tr
|
| 77 |
<th scope="row"><label for="notice"><?php esc_html_e('Notice Text', 'gwolle-gb'); ?></label></th>
|
| 78 |
<td>
|
| 79 |
<?php
|
|
@@ -99,7 +99,7 @@ We reserve the right to edit, delete, or not publish entries.
|
|
| 99 |
</td>
|
| 100 |
</tr>
|
| 101 |
|
| 102 |
-
<tr
|
| 103 |
<th scope="row"><label for="form_ajax"><?php esc_html_e('Use AJAX', 'gwolle-gb'); ?></label></th>
|
| 104 |
<td>
|
| 105 |
<input type="checkbox" id="form_ajax" name="form_ajax" <?php
|
|
@@ -113,7 +113,7 @@ We reserve the right to edit, delete, or not publish entries.
|
|
| 113 |
</td>
|
| 114 |
</tr>
|
| 115 |
|
| 116 |
-
<tr
|
| 117 |
<th scope="row"><label for="store_ip"><?php esc_html_e('Store IP Address', 'gwolle-gb'); ?></label></th>
|
| 118 |
<td>
|
| 119 |
<input type="checkbox" id="store_ip" name="store_ip" <?php
|
|
@@ -130,7 +130,7 @@ We reserve the right to edit, delete, or not publish entries.
|
|
| 130 |
</td>
|
| 131 |
</tr>
|
| 132 |
|
| 133 |
-
<tr
|
| 134 |
<th scope="row"><label for="gb_remove_ip"><?php esc_html_e('Remove IP Address', 'gwolle-gb'); ?></label></th>
|
| 135 |
<td>
|
| 136 |
<input type="checkbox" id="gb_remove_ip" name="gb_remove_ip" />
|
|
@@ -146,11 +146,11 @@ We reserve the right to edit, delete, or not publish entries.
|
|
| 146 |
|
| 147 |
<?php $form_setting = gwolle_gb_get_setting( 'form' ); ?>
|
| 148 |
|
| 149 |
-
<tr
|
| 150 |
<td colspan="3"><h3><?php esc_html_e('Configure the form that is shown to visitors.', 'gwolle-gb'); ?></h3></td>
|
| 151 |
</tr>
|
| 152 |
|
| 153 |
-
<tr
|
| 154 |
<th scope="row"><label for="form_name_enabled"><?php esc_html_e('Name', 'gwolle-gb'); ?>:</label></th>
|
| 155 |
<td>
|
| 156 |
<input type="checkbox" id="form_name_enabled" name="form_name_enabled"<?php
|
|
@@ -170,7 +170,7 @@ We reserve the right to edit, delete, or not publish entries.
|
|
| 170 |
</td>
|
| 171 |
</tr>
|
| 172 |
|
| 173 |
-
<tr
|
| 174 |
<th scope="row"><label for="form_city_enabled"><?php esc_html_e('City', 'gwolle-gb'); ?>:</label></th>
|
| 175 |
<td>
|
| 176 |
<input type="checkbox" id="form_city_enabled" name="form_city_enabled"<?php
|
|
@@ -190,7 +190,7 @@ We reserve the right to edit, delete, or not publish entries.
|
|
| 190 |
</td>
|
| 191 |
</tr>
|
| 192 |
|
| 193 |
-
<tr
|
| 194 |
<th scope="row"><label for="form_email_enabled"><?php esc_html_e('Email', 'gwolle-gb'); ?>:</label></th>
|
| 195 |
<td>
|
| 196 |
<input type="checkbox" id="form_email_enabled" name="form_email_enabled"<?php
|
|
@@ -210,7 +210,7 @@ We reserve the right to edit, delete, or not publish entries.
|
|
| 210 |
</td>
|
| 211 |
</tr>
|
| 212 |
|
| 213 |
-
<tr
|
| 214 |
<th scope="row"><label for="form_homepage_enabled"><?php esc_html_e('Website', 'gwolle-gb'); ?>:</label></th>
|
| 215 |
<td>
|
| 216 |
<input type="checkbox" id="form_homepage_enabled" name="form_homepage_enabled"<?php
|
|
@@ -230,7 +230,7 @@ We reserve the right to edit, delete, or not publish entries.
|
|
| 230 |
</td>
|
| 231 |
</tr>
|
| 232 |
|
| 233 |
-
<tr
|
| 234 |
<th scope="row"><label for="form_message_enabled"><?php esc_html_e('Message', 'gwolle-gb'); ?>:</label></th>
|
| 235 |
<td>
|
| 236 |
<input type="checkbox" id="form_message_enabled" name="form_message_enabled"<?php
|
|
@@ -250,7 +250,7 @@ We reserve the right to edit, delete, or not publish entries.
|
|
| 250 |
</td>
|
| 251 |
</tr>
|
| 252 |
|
| 253 |
-
<tr
|
| 254 |
<th scope="row"><label for="form_bbcode_enabled"><?php esc_html_e('Visual formatting and Emoji', 'gwolle-gb'); ?>:</label></th>
|
| 255 |
<td>
|
| 256 |
<input type="checkbox" id="form_bbcode_enabled" name="form_bbcode_enabled"<?php
|
|
@@ -265,7 +265,7 @@ We reserve the right to edit, delete, or not publish entries.
|
|
| 265 |
</td>
|
| 266 |
</tr>
|
| 267 |
|
| 268 |
-
<tr
|
| 269 |
<th scope="row"><label for="form_antispam_enabled"><?php esc_html_e('Custom Anti-spam', 'gwolle-gb'); ?>:</label></th>
|
| 270 |
<td>
|
| 271 |
<input type="checkbox" id="form_antispam_enabled" name="form_antispam_enabled"<?php
|
|
@@ -280,7 +280,7 @@ We reserve the right to edit, delete, or not publish entries.
|
|
| 280 |
</td>
|
| 281 |
</tr>
|
| 282 |
|
| 283 |
-
<tr
|
| 284 |
<th scope="row"><label for="form_privacy_enabled"><?php esc_html_e('Privacy checkbox', 'gwolle-gb'); ?>:</label></th>
|
| 285 |
<td>
|
| 286 |
<input type="checkbox" id="form_privacy_enabled" name="form_privacy_enabled"<?php
|
| 30 |
<table class="form-table">
|
| 31 |
<tbody>
|
| 32 |
|
| 33 |
+
<tr>
|
| 34 |
<th scope="row"><label for="require_login"><?php esc_html_e('Require Login', 'gwolle-gb'); ?></label></th>
|
| 35 |
<td>
|
| 36 |
<input type="checkbox" id="require_login" name="require_login" <?php
|
| 44 |
</td>
|
| 45 |
</tr>
|
| 46 |
|
| 47 |
+
<tr>
|
| 48 |
<th scope="row"><label for="labels_float"><?php esc_html_e('Labels float', 'gwolle-gb'); ?></label></th>
|
| 49 |
<td>
|
| 50 |
<input type="checkbox" id="labels_float" name="labels_float" <?php
|
| 58 |
</td>
|
| 59 |
</tr>
|
| 60 |
|
| 61 |
+
<tr>
|
| 62 |
<th scope="row"><label for="gb_header"><?php esc_html_e('Header Text', 'gwolle-gb'); ?></label></th>
|
| 63 |
<td><?php
|
| 64 |
$header = gwolle_gb_sanitize_output( get_option('gwolle_gb-header', false) );
|
| 73 |
</td>
|
| 74 |
</tr>
|
| 75 |
|
| 76 |
+
<tr>
|
| 77 |
<th scope="row"><label for="notice"><?php esc_html_e('Notice Text', 'gwolle-gb'); ?></label></th>
|
| 78 |
<td>
|
| 79 |
<?php
|
| 99 |
</td>
|
| 100 |
</tr>
|
| 101 |
|
| 102 |
+
<tr>
|
| 103 |
<th scope="row"><label for="form_ajax"><?php esc_html_e('Use AJAX', 'gwolle-gb'); ?></label></th>
|
| 104 |
<td>
|
| 105 |
<input type="checkbox" id="form_ajax" name="form_ajax" <?php
|
| 113 |
</td>
|
| 114 |
</tr>
|
| 115 |
|
| 116 |
+
<tr>
|
| 117 |
<th scope="row"><label for="store_ip"><?php esc_html_e('Store IP Address', 'gwolle-gb'); ?></label></th>
|
| 118 |
<td>
|
| 119 |
<input type="checkbox" id="store_ip" name="store_ip" <?php
|
| 130 |
</td>
|
| 131 |
</tr>
|
| 132 |
|
| 133 |
+
<tr>
|
| 134 |
<th scope="row"><label for="gb_remove_ip"><?php esc_html_e('Remove IP Address', 'gwolle-gb'); ?></label></th>
|
| 135 |
<td>
|
| 136 |
<input type="checkbox" id="gb_remove_ip" name="gb_remove_ip" />
|
| 146 |
|
| 147 |
<?php $form_setting = gwolle_gb_get_setting( 'form' ); ?>
|
| 148 |
|
| 149 |
+
<tr>
|
| 150 |
<td colspan="3"><h3><?php esc_html_e('Configure the form that is shown to visitors.', 'gwolle-gb'); ?></h3></td>
|
| 151 |
</tr>
|
| 152 |
|
| 153 |
+
<tr>
|
| 154 |
<th scope="row"><label for="form_name_enabled"><?php esc_html_e('Name', 'gwolle-gb'); ?>:</label></th>
|
| 155 |
<td>
|
| 156 |
<input type="checkbox" id="form_name_enabled" name="form_name_enabled"<?php
|
| 170 |
</td>
|
| 171 |
</tr>
|
| 172 |
|
| 173 |
+
<tr>
|
| 174 |
<th scope="row"><label for="form_city_enabled"><?php esc_html_e('City', 'gwolle-gb'); ?>:</label></th>
|
| 175 |
<td>
|
| 176 |
<input type="checkbox" id="form_city_enabled" name="form_city_enabled"<?php
|
| 190 |
</td>
|
| 191 |
</tr>
|
| 192 |
|
| 193 |
+
<tr>
|
| 194 |
<th scope="row"><label for="form_email_enabled"><?php esc_html_e('Email', 'gwolle-gb'); ?>:</label></th>
|
| 195 |
<td>
|
| 196 |
<input type="checkbox" id="form_email_enabled" name="form_email_enabled"<?php
|
| 210 |
</td>
|
| 211 |
</tr>
|
| 212 |
|
| 213 |
+
<tr>
|
| 214 |
<th scope="row"><label for="form_homepage_enabled"><?php esc_html_e('Website', 'gwolle-gb'); ?>:</label></th>
|
| 215 |
<td>
|
| 216 |
<input type="checkbox" id="form_homepage_enabled" name="form_homepage_enabled"<?php
|
| 230 |
</td>
|
| 231 |
</tr>
|
| 232 |
|
| 233 |
+
<tr>
|
| 234 |
<th scope="row"><label for="form_message_enabled"><?php esc_html_e('Message', 'gwolle-gb'); ?>:</label></th>
|
| 235 |
<td>
|
| 236 |
<input type="checkbox" id="form_message_enabled" name="form_message_enabled"<?php
|
| 250 |
</td>
|
| 251 |
</tr>
|
| 252 |
|
| 253 |
+
<tr>
|
| 254 |
<th scope="row"><label for="form_bbcode_enabled"><?php esc_html_e('Visual formatting and Emoji', 'gwolle-gb'); ?>:</label></th>
|
| 255 |
<td>
|
| 256 |
<input type="checkbox" id="form_bbcode_enabled" name="form_bbcode_enabled"<?php
|
| 265 |
</td>
|
| 266 |
</tr>
|
| 267 |
|
| 268 |
+
<tr>
|
| 269 |
<th scope="row"><label for="form_antispam_enabled"><?php esc_html_e('Custom Anti-spam', 'gwolle-gb'); ?>:</label></th>
|
| 270 |
<td>
|
| 271 |
<input type="checkbox" id="form_antispam_enabled" name="form_antispam_enabled"<?php
|
| 280 |
</td>
|
| 281 |
</tr>
|
| 282 |
|
| 283 |
+
<tr>
|
| 284 |
<th scope="row"><label for="form_privacy_enabled"><?php esc_html_e('Privacy checkbox', 'gwolle-gb'); ?>:</label></th>
|
| 285 |
<td>
|
| 286 |
<input type="checkbox" id="form_privacy_enabled" name="form_privacy_enabled"<?php
|
admin/tabs/gb-readingtab.php
CHANGED
|
@@ -31,7 +31,7 @@ function gwolle_gb_page_settingstab_reading() {
|
|
| 31 |
<table class="form-table">
|
| 32 |
<tbody>
|
| 33 |
|
| 34 |
-
<tr
|
| 35 |
<th scope="row"><label for="entriesPerPage"><?php esc_html_e('Entries per page on the frontend', 'gwolle-gb'); ?></label></th>
|
| 36 |
<td>
|
| 37 |
<select name="entriesPerPage" id="entriesPerPage">
|
|
@@ -51,7 +51,7 @@ function gwolle_gb_page_settingstab_reading() {
|
|
| 51 |
</td>
|
| 52 |
</tr>
|
| 53 |
|
| 54 |
-
<tr
|
| 55 |
<th scope="row"><label for="excerpt_length"><?php esc_html_e('Length of the entry content', 'gwolle-gb'); ?></label></th>
|
| 56 |
<td>
|
| 57 |
<select name="excerpt_length" id="excerpt_length">
|
|
@@ -81,7 +81,7 @@ function gwolle_gb_page_settingstab_reading() {
|
|
| 81 |
</td>
|
| 82 |
</tr>
|
| 83 |
|
| 84 |
-
<tr
|
| 85 |
<th scope="row"><label for="showLineBreaks"><?php esc_html_e('Line breaks', 'gwolle-gb'); ?></label></th>
|
| 86 |
<td>
|
| 87 |
<input type="checkbox" id="showLineBreaks" name="showLineBreaks"<?php
|
|
@@ -98,7 +98,7 @@ function gwolle_gb_page_settingstab_reading() {
|
|
| 98 |
</td>
|
| 99 |
</tr>
|
| 100 |
|
| 101 |
-
<tr
|
| 102 |
<th scope="row"><label for="showSmilies"><?php esc_html_e('Smileys', 'gwolle-gb'); ?></label></th>
|
| 103 |
<td>
|
| 104 |
<input type="checkbox" id="showSmilies" name="showSmilies"<?php
|
|
@@ -113,7 +113,7 @@ function gwolle_gb_page_settingstab_reading() {
|
|
| 113 |
</td>
|
| 114 |
</tr>
|
| 115 |
|
| 116 |
-
<tr
|
| 117 |
<th scope="row"><label for="linkAuthorWebsite"><?php esc_html_e('Links', 'gwolle-gb'); ?></label></th>
|
| 118 |
<td>
|
| 119 |
<input type="checkbox" id="linkAuthorWebsite" name="linkAuthorWebsite"<?php
|
|
@@ -127,7 +127,7 @@ function gwolle_gb_page_settingstab_reading() {
|
|
| 127 |
</td>
|
| 128 |
</tr>
|
| 129 |
|
| 130 |
-
<tr
|
| 131 |
<th scope="row"><label for="admin_style"><?php esc_html_e('Admin Entry Styling', 'gwolle-gb'); ?></label></th>
|
| 132 |
<td>
|
| 133 |
<input type="checkbox" id="admin_style" name="admin_style"<?php
|
|
@@ -141,7 +141,7 @@ function gwolle_gb_page_settingstab_reading() {
|
|
| 141 |
</td>
|
| 142 |
</tr>
|
| 143 |
|
| 144 |
-
<tr
|
| 145 |
<th scope="row"><label for="navigation"><?php esc_html_e('Navigation', 'gwolle-gb'); ?></label></th>
|
| 146 |
<td>
|
| 147 |
<?php $navigation = (int) get_option( 'gwolle_gb-navigation', 0 ); ?>
|
|
@@ -155,7 +155,7 @@ function gwolle_gb_page_settingstab_reading() {
|
|
| 155 |
</td>
|
| 156 |
</tr>
|
| 157 |
|
| 158 |
-
<tr
|
| 159 |
<th scope="row"><label for="paginate_all"><?php esc_html_e('Pagination', 'gwolle-gb'); ?></label></th>
|
| 160 |
<td>
|
| 161 |
<input type="checkbox" id="paginate_all" name="paginate_all"<?php
|
|
@@ -172,11 +172,11 @@ function gwolle_gb_page_settingstab_reading() {
|
|
| 172 |
|
| 173 |
<?php $read_setting = gwolle_gb_get_setting( 'read' ); ?>
|
| 174 |
|
| 175 |
-
<tr
|
| 176 |
<td colspan="2"><h3><?php esc_html_e('Configure the parts of the entries that are shown to visitors.', 'gwolle-gb'); ?></h3></td>
|
| 177 |
</tr>
|
| 178 |
|
| 179 |
-
<tr
|
| 180 |
<th scope="row"><label for="read_avatar"><?php esc_html_e('Avatar', 'gwolle-gb'); ?>:</label></th>
|
| 181 |
<td>
|
| 182 |
<input type="checkbox" id="read_avatar" name="read_avatar"<?php
|
|
@@ -188,7 +188,7 @@ function gwolle_gb_page_settingstab_reading() {
|
|
| 188 |
</td>
|
| 189 |
</tr>
|
| 190 |
|
| 191 |
-
<tr
|
| 192 |
<th scope="row"><label for="read_name"><?php esc_html_e('Name', 'gwolle-gb'); ?>:</label></th>
|
| 193 |
<td>
|
| 194 |
<input type="checkbox" id="read_name" name="read_name"<?php
|
|
@@ -200,7 +200,7 @@ function gwolle_gb_page_settingstab_reading() {
|
|
| 200 |
</td>
|
| 201 |
</tr>
|
| 202 |
|
| 203 |
-
<tr
|
| 204 |
<th scope="row"><label for="read_city"><?php esc_html_e('City', 'gwolle-gb'); ?>:</label></th>
|
| 205 |
<td>
|
| 206 |
<input type="checkbox" id="read_city" name="read_city"<?php
|
|
@@ -212,7 +212,7 @@ function gwolle_gb_page_settingstab_reading() {
|
|
| 212 |
</td>
|
| 213 |
</tr>
|
| 214 |
|
| 215 |
-
<tr
|
| 216 |
<th scope="row"><label for="read_datetime"><?php esc_html_e('Date and Time', 'gwolle-gb'); ?>:</label></th>
|
| 217 |
<td>
|
| 218 |
<input type="checkbox" id="read_datetime" name="read_datetime"<?php
|
|
@@ -225,7 +225,7 @@ function gwolle_gb_page_settingstab_reading() {
|
|
| 225 |
</td>
|
| 226 |
</tr>
|
| 227 |
|
| 228 |
-
<tr
|
| 229 |
<th scope="row"><label for="read_date"><?php esc_html_e('Date', 'gwolle-gb'); ?>:</label></th>
|
| 230 |
<td>
|
| 231 |
<input type="checkbox" id="read_date" name="read_date"<?php
|
|
@@ -238,7 +238,7 @@ function gwolle_gb_page_settingstab_reading() {
|
|
| 238 |
</td>
|
| 239 |
</tr>
|
| 240 |
|
| 241 |
-
<tr
|
| 242 |
<th scope="row"><label for="read_content"><?php esc_html_e('Content', 'gwolle-gb'); ?>:</label></th>
|
| 243 |
<td>
|
| 244 |
<input type="checkbox" id="read_content" name="read_content"<?php
|
|
@@ -250,7 +250,7 @@ function gwolle_gb_page_settingstab_reading() {
|
|
| 250 |
</td>
|
| 251 |
</tr>
|
| 252 |
|
| 253 |
-
<tr
|
| 254 |
<th scope="row"><label for="read_aavatar"><?php esc_html_e('Admin Avatar', 'gwolle-gb'); ?>:</label></th>
|
| 255 |
<td>
|
| 256 |
<input type="checkbox" id="read_aavatar" name="read_aavatar"<?php
|
|
@@ -262,7 +262,7 @@ function gwolle_gb_page_settingstab_reading() {
|
|
| 262 |
</td>
|
| 263 |
</tr>
|
| 264 |
|
| 265 |
-
<tr
|
| 266 |
<th scope="row"><label for="read_editlink"><?php esc_html_e('Edit link', 'gwolle-gb'); ?>:</label></th>
|
| 267 |
<td>
|
| 268 |
<input type="checkbox" id="read_editlink" name="read_editlink"<?php
|
| 31 |
<table class="form-table">
|
| 32 |
<tbody>
|
| 33 |
|
| 34 |
+
<tr>
|
| 35 |
<th scope="row"><label for="entriesPerPage"><?php esc_html_e('Entries per page on the frontend', 'gwolle-gb'); ?></label></th>
|
| 36 |
<td>
|
| 37 |
<select name="entriesPerPage" id="entriesPerPage">
|
| 51 |
</td>
|
| 52 |
</tr>
|
| 53 |
|
| 54 |
+
<tr>
|
| 55 |
<th scope="row"><label for="excerpt_length"><?php esc_html_e('Length of the entry content', 'gwolle-gb'); ?></label></th>
|
| 56 |
<td>
|
| 57 |
<select name="excerpt_length" id="excerpt_length">
|
| 81 |
</td>
|
| 82 |
</tr>
|
| 83 |
|
| 84 |
+
<tr>
|
| 85 |
<th scope="row"><label for="showLineBreaks"><?php esc_html_e('Line breaks', 'gwolle-gb'); ?></label></th>
|
| 86 |
<td>
|
| 87 |
<input type="checkbox" id="showLineBreaks" name="showLineBreaks"<?php
|
| 98 |
</td>
|
| 99 |
</tr>
|
| 100 |
|
| 101 |
+
<tr>
|
| 102 |
<th scope="row"><label for="showSmilies"><?php esc_html_e('Smileys', 'gwolle-gb'); ?></label></th>
|
| 103 |
<td>
|
| 104 |
<input type="checkbox" id="showSmilies" name="showSmilies"<?php
|
| 113 |
</td>
|
| 114 |
</tr>
|
| 115 |
|
| 116 |
+
<tr>
|
| 117 |
<th scope="row"><label for="linkAuthorWebsite"><?php esc_html_e('Links', 'gwolle-gb'); ?></label></th>
|
| 118 |
<td>
|
| 119 |
<input type="checkbox" id="linkAuthorWebsite" name="linkAuthorWebsite"<?php
|
| 127 |
</td>
|
| 128 |
</tr>
|
| 129 |
|
| 130 |
+
<tr>
|
| 131 |
<th scope="row"><label for="admin_style"><?php esc_html_e('Admin Entry Styling', 'gwolle-gb'); ?></label></th>
|
| 132 |
<td>
|
| 133 |
<input type="checkbox" id="admin_style" name="admin_style"<?php
|
| 141 |
</td>
|
| 142 |
</tr>
|
| 143 |
|
| 144 |
+
<tr>
|
| 145 |
<th scope="row"><label for="navigation"><?php esc_html_e('Navigation', 'gwolle-gb'); ?></label></th>
|
| 146 |
<td>
|
| 147 |
<?php $navigation = (int) get_option( 'gwolle_gb-navigation', 0 ); ?>
|
| 155 |
</td>
|
| 156 |
</tr>
|
| 157 |
|
| 158 |
+
<tr>
|
| 159 |
<th scope="row"><label for="paginate_all"><?php esc_html_e('Pagination', 'gwolle-gb'); ?></label></th>
|
| 160 |
<td>
|
| 161 |
<input type="checkbox" id="paginate_all" name="paginate_all"<?php
|
| 172 |
|
| 173 |
<?php $read_setting = gwolle_gb_get_setting( 'read' ); ?>
|
| 174 |
|
| 175 |
+
<tr>
|
| 176 |
<td colspan="2"><h3><?php esc_html_e('Configure the parts of the entries that are shown to visitors.', 'gwolle-gb'); ?></h3></td>
|
| 177 |
</tr>
|
| 178 |
|
| 179 |
+
<tr>
|
| 180 |
<th scope="row"><label for="read_avatar"><?php esc_html_e('Avatar', 'gwolle-gb'); ?>:</label></th>
|
| 181 |
<td>
|
| 182 |
<input type="checkbox" id="read_avatar" name="read_avatar"<?php
|
| 188 |
</td>
|
| 189 |
</tr>
|
| 190 |
|
| 191 |
+
<tr>
|
| 192 |
<th scope="row"><label for="read_name"><?php esc_html_e('Name', 'gwolle-gb'); ?>:</label></th>
|
| 193 |
<td>
|
| 194 |
<input type="checkbox" id="read_name" name="read_name"<?php
|
| 200 |
</td>
|
| 201 |
</tr>
|
| 202 |
|
| 203 |
+
<tr>
|
| 204 |
<th scope="row"><label for="read_city"><?php esc_html_e('City', 'gwolle-gb'); ?>:</label></th>
|
| 205 |
<td>
|
| 206 |
<input type="checkbox" id="read_city" name="read_city"<?php
|
| 212 |
</td>
|
| 213 |
</tr>
|
| 214 |
|
| 215 |
+
<tr>
|
| 216 |
<th scope="row"><label for="read_datetime"><?php esc_html_e('Date and Time', 'gwolle-gb'); ?>:</label></th>
|
| 217 |
<td>
|
| 218 |
<input type="checkbox" id="read_datetime" name="read_datetime"<?php
|
| 225 |
</td>
|
| 226 |
</tr>
|
| 227 |
|
| 228 |
+
<tr>
|
| 229 |
<th scope="row"><label for="read_date"><?php esc_html_e('Date', 'gwolle-gb'); ?>:</label></th>
|
| 230 |
<td>
|
| 231 |
<input type="checkbox" id="read_date" name="read_date"<?php
|
| 238 |
</td>
|
| 239 |
</tr>
|
| 240 |
|
| 241 |
+
<tr>
|
| 242 |
<th scope="row"><label for="read_content"><?php esc_html_e('Content', 'gwolle-gb'); ?>:</label></th>
|
| 243 |
<td>
|
| 244 |
<input type="checkbox" id="read_content" name="read_content"<?php
|
| 250 |
</td>
|
| 251 |
</tr>
|
| 252 |
|
| 253 |
+
<tr>
|
| 254 |
<th scope="row"><label for="read_aavatar"><?php esc_html_e('Admin Avatar', 'gwolle-gb'); ?>:</label></th>
|
| 255 |
<td>
|
| 256 |
<input type="checkbox" id="read_aavatar" name="read_aavatar"<?php
|
| 262 |
</td>
|
| 263 |
</tr>
|
| 264 |
|
| 265 |
+
<tr>
|
| 266 |
<th scope="row"><label for="read_editlink"><?php esc_html_e('Edit link', 'gwolle-gb'); ?>:</label></th>
|
| 267 |
<td>
|
| 268 |
<input type="checkbox" id="read_editlink" name="read_editlink"<?php
|
admin/tabs/gb-uninstalltab.php
CHANGED
|
@@ -18,6 +18,7 @@ function gwolle_gb_page_settingstab_uninstall() {
|
|
| 18 |
die(esc_html__('You need a higher level of permission.', 'gwolle-gb'));
|
| 19 |
}
|
| 20 |
if ( function_exists('is_multisite') && is_multisite() ) {
|
|
|
|
| 21 |
return;
|
| 22 |
} ?>
|
| 23 |
|
|
@@ -33,17 +34,17 @@ function gwolle_gb_page_settingstab_uninstall() {
|
|
| 33 |
<table class="form-table">
|
| 34 |
<tbody>
|
| 35 |
|
| 36 |
-
<tr
|
| 37 |
<th scope="row" style="color:#FF0000;"><label><?php esc_html_e('Uninstall', 'gwolle-gb'); ?></label></th>
|
| 38 |
<td>
|
| 39 |
-
<?php esc_html_e('Uninstalling means that all database entries are removed (settings and entries).', 'gwolle-gb');
|
| 40 |
-
echo '<br />';
|
| 41 |
-
|
| 42 |
?>
|
| 43 |
</td>
|
| 44 |
</tr>
|
| 45 |
|
| 46 |
-
<tr
|
| 47 |
<th scope="row" style="color:#FF0000;"><label for="gwolle_gb_uninstall_confirmed"><?php esc_html_e('Confirm', 'gwolle-gb'); ?></label></th>
|
| 48 |
<td>
|
| 49 |
<input type="checkbox" name="gwolle_gb_uninstall_confirmed" id="gwolle_gb_uninstall_confirmed">
|
| 18 |
die(esc_html__('You need a higher level of permission.', 'gwolle-gb'));
|
| 19 |
}
|
| 20 |
if ( function_exists('is_multisite') && is_multisite() ) {
|
| 21 |
+
esc_html_e('You are on a multisite install of WordPress. Please take a look at the documentation how to remove all the data of this plugin on multisite.', 'gwolle-gb');
|
| 22 |
return;
|
| 23 |
} ?>
|
| 24 |
|
| 34 |
<table class="form-table">
|
| 35 |
<tbody>
|
| 36 |
|
| 37 |
+
<tr>
|
| 38 |
<th scope="row" style="color:#FF0000;"><label><?php esc_html_e('Uninstall', 'gwolle-gb'); ?></label></th>
|
| 39 |
<td>
|
| 40 |
+
<?php esc_html_e('Uninstalling means that all database entries are removed (settings and entries).', 'gwolle-gb'); echo '<br />';
|
| 41 |
+
_e('This can <strong>not</strong> be undone.', 'gwolle-gb'); echo '<br />';
|
| 42 |
+
esc_html_e('It is a good idea to make a backup of your website before you touch this button.', 'gwolle-gb');
|
| 43 |
?>
|
| 44 |
</td>
|
| 45 |
</tr>
|
| 46 |
|
| 47 |
+
<tr>
|
| 48 |
<th scope="row" style="color:#FF0000;"><label for="gwolle_gb_uninstall_confirmed"><?php esc_html_e('Confirm', 'gwolle-gb'); ?></label></th>
|
| 49 |
<td>
|
| 50 |
<input type="checkbox" name="gwolle_gb_uninstall_confirmed" id="gwolle_gb_uninstall_confirmed">
|
changelog-v0.txt → changelog/changelog-v0.txt
RENAMED
|
File without changes
|
changelog-v1.txt → changelog/changelog-v1.txt
RENAMED
|
File without changes
|
changelog-v2.txt → changelog/changelog-v2.txt
RENAMED
|
File without changes
|
changelog/changelog-v3.txt
ADDED
|
@@ -0,0 +1,89 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
|
| 2 |
+
== Changelog ==
|
| 3 |
+
|
| 4 |
+
= 3.1.9 =
|
| 5 |
+
* 2020-02-01
|
| 6 |
+
* Fix undefined variable notice (thanks ronr1999).
|
| 7 |
+
* Add 'float:none;' to frontend button.
|
| 8 |
+
|
| 9 |
+
= 3.1.8 =
|
| 10 |
+
* 2020-01-21
|
| 11 |
+
* Add highlight to search results (thanks @robinnatter).
|
| 12 |
+
* Add searchwords to search widget after searching.
|
| 13 |
+
* Do not set meta_key when shortcode is used in widget or one-page design.
|
| 14 |
+
* Show InnoDB engine on debug tab.
|
| 15 |
+
* Show existence of database tables on debug tab.
|
| 16 |
+
|
| 17 |
+
= 3.1.7 =
|
| 18 |
+
* 2019-10-25
|
| 19 |
+
* Show subscription status for email notifications on settings page.
|
| 20 |
+
* Comment out unused images in markitup CSS.
|
| 21 |
+
* Set rel='nofollow noopener noreferrer' for bbcode links and user website.
|
| 22 |
+
* Set referrerpolicy='no-referrer' for bbcode images and avatar.
|
| 23 |
+
* Add filter 'gwolle_gb_bbcode_img_referrer'.
|
| 24 |
+
* Update strings for add-on.
|
| 25 |
+
|
| 26 |
+
= 3.1.6 =
|
| 27 |
+
* 2019-08-21
|
| 28 |
+
* Use wp_kses for filtering html elements.
|
| 29 |
+
* Add support for quotes already in the bbcode link.
|
| 30 |
+
|
| 31 |
+
= 3.1.5 =
|
| 32 |
+
* 2019-06-08
|
| 33 |
+
* Add log entry for privacy policy accepted (gets added to notification mail).
|
| 34 |
+
* Add msg_txt key/value to log entries for plain text display.
|
| 35 |
+
* Small updates to install routine.
|
| 36 |
+
* Support new wp_initialize_site action for multisite.
|
| 37 |
+
|
| 38 |
+
= 3.1.4 =
|
| 39 |
+
* 2019-05-03
|
| 40 |
+
* Make it possible to set entry to moderated with the gwolle_gb_new_entry_frontend filter.
|
| 41 |
+
* Update strings for add-on.
|
| 42 |
+
|
| 43 |
+
= 3.1.3 =
|
| 44 |
+
* 2019-04-16
|
| 45 |
+
* Small fix for silly mistake.
|
| 46 |
+
|
| 47 |
+
= 3.1.2 =
|
| 48 |
+
* 2019-04-04
|
| 49 |
+
* Improve accessibility for the frontend metabox.
|
| 50 |
+
* Add filter gwolle_gb_new_entry_frontend.
|
| 51 |
+
* Add filter gwolle_gb_get_permalink.
|
| 52 |
+
* Change arrows in next/prev pagination.
|
| 53 |
+
* Auto-detect line endings in import from CSV.
|
| 54 |
+
|
| 55 |
+
= 3.1.1 =
|
| 56 |
+
* 2019-03-08
|
| 57 |
+
* Drop check for mime-type on import, too many problems.
|
| 58 |
+
* Small CSS fix for pagination.
|
| 59 |
+
|
| 60 |
+
= 3.1.0 =
|
| 61 |
+
* 2019-02-19
|
| 62 |
+
* Remove support for Really Simple Captcha plugin, since it is ineffective.
|
| 63 |
+
* Please take a look at the other options for spamfilters, there are more and better options.
|
| 64 |
+
* Update CSS for admin navigation for WP 5.1.
|
| 65 |
+
* Add screen-reader-text to navigation for frontend and admin.
|
| 66 |
+
* Small fixes found by the phan tool.
|
| 67 |
+
|
| 68 |
+
= 3.0.0 =
|
| 69 |
+
* 2019-01-22
|
| 70 |
+
* Add search widget (only visible on guestbook pages).
|
| 71 |
+
* Add '[noscript]' to frontend form for when JavaScript is disabled.
|
| 72 |
+
* Add function 'gwolle_gb_post_is_guestbook'.
|
| 73 |
+
* Add function 'gwolle_gb_get_entries_from_search'.
|
| 74 |
+
* Add function 'gwolle_gb_enqueue_markitup'.
|
| 75 |
+
* Fix BBcode: support images inside links.
|
| 76 |
+
* Fix BBcode: have sublists work.
|
| 77 |
+
* Show new username and book ID after editing in editor postbox.
|
| 78 |
+
* Add some accessibility fixes.
|
| 79 |
+
* Switch database engine to InnoDB.
|
| 80 |
+
* Don't use transients for hashed field names, is faster this way.
|
| 81 |
+
* Better test if admin user exists for admin_reply.
|
| 82 |
+
* Use 'field-name' for gwolle_gb_content too.
|
| 83 |
+
* On admin pages, have separate functions for $_POST update. (settings, editor, entries).
|
| 84 |
+
* Use GWOLLE_GB_URL where appropriate.
|
| 85 |
+
* Use static vars instead of global vars.
|
| 86 |
+
* Integrate 2 JavaScript files for Markitup/BBcode.
|
| 87 |
+
* Switch export to 2000 entries per part instead of 3000.
|
| 88 |
+
* Add strings for add-on 1.3.0.
|
| 89 |
+
* Cleanup changelog. Add changelog-v2.txt.
|
changelog/index.html
ADDED
|
File without changes
|
docs/filters/gwolle_gb_author_content_label.txt
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
|
| 2 |
+
|
| 3 |
+
==Description==
|
| 4 |
+
|
| 5 |
+
The <b>"gwolle_gb_author_content_label"</b> filter is used to change the text of the label for the textarea of the content at the frontend.
|
| 6 |
+
|
| 7 |
+
You can use this filter as:
|
| 8 |
+
|
| 9 |
+
<code><?php add_filter( 'gwolle_gb_author_content_label', 'filter_function_name' ) ?></code>
|
| 10 |
+
|
| 11 |
+
Where 'filter_function_name' is the function WordPress should call when the filter is being used.
|
| 12 |
+
|
| 13 |
+
'''filter_function_name''' should be a unique function name. It cannot match any other function name already declared.
|
| 14 |
+
|
| 15 |
+
|
| 16 |
+
==Examples==
|
| 17 |
+
|
| 18 |
+
|
| 19 |
+
function my_gwolle_gb_author_content_label( $label ) {
|
| 20 |
+
// $label is a string
|
| 21 |
+
$label = 'test';
|
| 22 |
+
return $label;
|
| 23 |
+
}
|
| 24 |
+
add_filter( 'gwolle_gb_author_content_label', 'my_gwolle_gb_author_content_label', 10, 1 );
|
| 25 |
+
|
docs/filters/gwolle_gb_author_content_prefill.txt
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
|
| 2 |
+
|
| 3 |
+
==Description==
|
| 4 |
+
|
| 5 |
+
The <b>"gwolle_gb_author_content_prefill"</b> filter is used to change the prefill of the content textarea field at the frontend.
|
| 6 |
+
|
| 7 |
+
You can use this filter as:
|
| 8 |
+
|
| 9 |
+
<code><?php add_filter( 'gwolle_gb_author_content_prefill', 'filter_function_name' ) ?></code>
|
| 10 |
+
|
| 11 |
+
Where 'filter_function_name' is the function WordPress should call when the filter is being used.
|
| 12 |
+
|
| 13 |
+
'''filter_function_name''' should be a unique function name. It cannot match any other function name already declared.
|
| 14 |
+
|
| 15 |
+
|
| 16 |
+
==Examples==
|
| 17 |
+
|
| 18 |
+
|
| 19 |
+
function my_gwolle_gb_author_content_prefill( $prefill ) {
|
| 20 |
+
// $prefill is a string
|
| 21 |
+
$prefill = ''; // no prefill, just an empty string
|
| 22 |
+
return $prefill;
|
| 23 |
+
}
|
| 24 |
+
add_filter( 'gwolle_gb_author_content_prefill', 'my_gwolle_gb_author_content_prefill', 10, 1 );
|
| 25 |
+
|
docs/filters/gwolle_gb_author_email_prefill.txt
CHANGED
|
@@ -2,7 +2,7 @@
|
|
| 2 |
|
| 3 |
==Description==
|
| 4 |
|
| 5 |
-
The <b>"gwolle_gb_author_email_prefill"</b> filter is used to change the prefill of the input field
|
| 6 |
|
| 7 |
You can use this filter as:
|
| 8 |
|
| 2 |
|
| 3 |
==Description==
|
| 4 |
|
| 5 |
+
The <b>"gwolle_gb_author_email_prefill"</b> filter is used to change the prefill of the email input field at the frontend.
|
| 6 |
|
| 7 |
You can use this filter as:
|
| 8 |
|
docs/filters/gwolle_gb_author_name_prefill.txt
CHANGED
|
@@ -2,7 +2,7 @@
|
|
| 2 |
|
| 3 |
==Description==
|
| 4 |
|
| 5 |
-
The <b>"gwolle_gb_author_name_prefill"</b> filter is used to change the prefill of the input field
|
| 6 |
|
| 7 |
You can use this filter as:
|
| 8 |
|
| 2 |
|
| 3 |
==Description==
|
| 4 |
|
| 5 |
+
The <b>"gwolle_gb_author_name_prefill"</b> filter is used to change the prefill of the name input field at the frontend.
|
| 6 |
|
| 7 |
You can use this filter as:
|
| 8 |
|
docs/filters/gwolle_gb_author_origin_prefill.txt
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
|
| 2 |
+
|
| 3 |
+
==Description==
|
| 4 |
+
|
| 5 |
+
The <b>"gwolle_gb_author_origin_prefill"</b> filter is used to change the prefill of the origin input field at the frontend.
|
| 6 |
+
|
| 7 |
+
You can use this filter as:
|
| 8 |
+
|
| 9 |
+
<code><?php add_filter( 'gwolle_gb_author_origin_prefill', 'filter_function_name' ) ?></code>
|
| 10 |
+
|
| 11 |
+
Where 'filter_function_name' is the function WordPress should call when the filter is being used.
|
| 12 |
+
|
| 13 |
+
'''filter_function_name''' should be a unique function name. It cannot match any other function name already declared.
|
| 14 |
+
|
| 15 |
+
|
| 16 |
+
==Examples==
|
| 17 |
+
|
| 18 |
+
|
| 19 |
+
function my_gwolle_gb_author_origin_prefill( $prefill ) {
|
| 20 |
+
// $prefill is a string
|
| 21 |
+
$prefill = ''; // no prefill, just an empty string
|
| 22 |
+
return $prefill;
|
| 23 |
+
}
|
| 24 |
+
add_filter( 'gwolle_gb_author_origin_prefill', 'my_gwolle_gb_author_origin_prefill', 10, 1 );
|
| 25 |
+
|
docs/filters/gwolle_gb_author_website_prefill.txt
CHANGED
|
@@ -2,7 +2,7 @@
|
|
| 2 |
|
| 3 |
==Description==
|
| 4 |
|
| 5 |
-
The <b>"gwolle_gb_author_website_prefill"</b> filter is used to change the prefill of the input field
|
| 6 |
|
| 7 |
You can use this filter as:
|
| 8 |
|
| 2 |
|
| 3 |
==Description==
|
| 4 |
|
| 5 |
+
The <b>"gwolle_gb_author_website_prefill"</b> filter is used to change the prefill of the website input field at the frontend.
|
| 6 |
|
| 7 |
You can use this filter as:
|
| 8 |
|
docs/filters/gwolle_gb_button.txt
CHANGED
|
@@ -19,8 +19,8 @@ Where 'filter_function_name' is the function WordPress should call when the filt
|
|
| 19 |
function my_gwolle_gb_button( $button ) {
|
| 20 |
// $button is a string
|
| 21 |
$button = '
|
| 22 |
-
<div
|
| 23 |
-
<input type="button" class="button btn btn-default" value="» ' . esc_attr__('Write a new entry.', 'gwolle-gb') . '" />
|
| 24 |
</div>';
|
| 25 |
|
| 26 |
return $button;
|
| 19 |
function my_gwolle_gb_button( $button ) {
|
| 20 |
// $button is a string
|
| 21 |
$button = '
|
| 22 |
+
<div class="gwolle-gb-write-button">
|
| 23 |
+
<input type="button" name="gwolle-gb-write-button" class="button btn btn-default" value="» ' . esc_attr__('Write a new entry.', 'gwolle-gb') . '" />
|
| 24 |
</div>';
|
| 25 |
|
| 26 |
return $button;
|
docs/filters/gwolle_gb_content_label.txt
CHANGED
|
@@ -3,6 +3,7 @@
|
|
| 3 |
==Description==
|
| 4 |
|
| 5 |
The <b>"gwolle_gb_content_label"</b> filter is used to change the text of the label for the textarea of the content at the frontend.
|
|
|
|
| 6 |
|
| 7 |
You can use this filter as:
|
| 8 |
|
| 3 |
==Description==
|
| 4 |
|
| 5 |
The <b>"gwolle_gb_content_label"</b> filter is used to change the text of the label for the textarea of the content at the frontend.
|
| 6 |
+
This filter is deprecated, please use gwolle_gb_author_content_label.
|
| 7 |
|
| 8 |
You can use this filter as:
|
| 9 |
|
docs/filters/gwolle_gb_entry_save.txt
CHANGED
|
@@ -18,8 +18,8 @@ Where 'filter_function_name' is the function WordPress should call when the filt
|
|
| 18 |
|
| 19 |
function my_gwolle_gb_entry_save( $entry ) {
|
| 20 |
// $entry is an array.
|
| 21 |
-
// Example where every entry that gets saved gets the current time
|
| 22 |
-
$entry['datetime'] =
|
| 23 |
return $entry;
|
| 24 |
}
|
| 25 |
add_filter( 'gwolle_gb_entry_save', 'my_gwolle_gb_entry_save');
|
| 18 |
|
| 19 |
function my_gwolle_gb_entry_save( $entry ) {
|
| 20 |
// $entry is an array.
|
| 21 |
+
// Example where every entry that gets saved gets the current time in GMT
|
| 22 |
+
$entry['datetime'] = time();
|
| 23 |
return $entry;
|
| 24 |
}
|
| 25 |
add_filter( 'gwolle_gb_entry_save', 'my_gwolle_gb_entry_save');
|
frontend/css/gwolle-gb-frontend.css
CHANGED
|
@@ -4,33 +4,30 @@
|
|
| 4 |
*/
|
| 5 |
|
| 6 |
|
| 7 |
-
|
| 8 |
clear: left;
|
| 9 |
position: relative;
|
| 10 |
}
|
| 11 |
|
| 12 |
-
|
| 13 |
display: none;
|
| 14 |
}
|
| 15 |
-
|
| 16 |
visibility: hidden;
|
| 17 |
}
|
| 18 |
|
| 19 |
/* Write button */
|
| 20 |
|
| 21 |
-
|
| 22 |
-
#gwolle-gb-write-button {
|
| 23 |
margin: 20px 0 10px;
|
| 24 |
}
|
| 25 |
-
|
| 26 |
-
#gwolle-gb-write-button input.button {
|
| 27 |
float: none; /* To avoid problems with too invasive themes. */
|
| 28 |
}
|
| 29 |
|
| 30 |
/* Write section */
|
| 31 |
|
| 32 |
-
|
| 33 |
-
#gwolle_gb form#gwolle-gb-new-entry {
|
| 34 |
position: relative;
|
| 35 |
margin-top: 20px;
|
| 36 |
text-align: left;
|
|
@@ -55,15 +52,13 @@ button.gb-notice-dismiss {
|
|
| 55 |
width: 13px;
|
| 56 |
}
|
| 57 |
|
| 58 |
-
.gwolle_gb_float .label,
|
| 59 |
-
.gwolle_gb_float .input,
|
| 60 |
.gwolle-gb-float .label,
|
| 61 |
.gwolle-gb-float .input {
|
| 62 |
float: left;
|
| 63 |
}
|
| 64 |
|
| 65 |
/* Text meant only for screen readers in broken themes. */
|
| 66 |
-
|
| 67 |
border: 0;
|
| 68 |
clip: rect(1px, 1px, 1px, 1px);
|
| 69 |
clip-path: inset(50%);
|
|
@@ -84,10 +79,10 @@ body .gwolle-gb-content a {
|
|
| 84 |
}
|
| 85 |
|
| 86 |
/* Submit AJAX icon */
|
| 87 |
-
|
| 88 |
-
|
| 89 |
-
|
| 90 |
-
|
| 91 |
display: none;
|
| 92 |
background-image: url("../images/loading.gif");
|
| 93 |
background-position: 4px 4px;
|
|
@@ -98,71 +93,71 @@ body .gwolle-gb-content a {
|
|
| 98 |
|
| 99 |
/* Messages / Notices */
|
| 100 |
|
| 101 |
-
|
| 102 |
-
|
| 103 |
border-left: 4px solid #7ad03a;
|
| 104 |
box-shadow: 2px 2px 2px 0 rgba(0, 0, 0, 0.1);
|
| 105 |
padding: 1px 12px;
|
| 106 |
margin: 5px 0 15px;
|
| 107 |
}
|
| 108 |
-
|
| 109 |
-
|
| 110 |
border-left: 4px solid #dd3d36;
|
| 111 |
}
|
| 112 |
|
| 113 |
-
|
| 114 |
margin: 0.5em 0;
|
| 115 |
padding: 2px;
|
| 116 |
}
|
| 117 |
|
| 118 |
-
|
| 119 |
-
|
| 120 |
-
|
| 121 |
-
|
| 122 |
border: 1px solid #dd3d36;
|
| 123 |
}
|
| 124 |
-
|
| 125 |
-
#gwolle_gb form#gwolle-gb-new-entry input[type="checkbox"].error {
|
| 126 |
box-shadow: 1px 1px 0px 0px rgba(221,61,54,1);
|
| 127 |
}
|
| 128 |
|
| 129 |
-
|
| 130 |
-
|
| 131 |
vertical-align: top;
|
| 132 |
width: 80%;
|
| 133 |
}
|
| 134 |
-
|
| 135 |
width: 35%;
|
| 136 |
}
|
| 137 |
-
|
| 138 |
width: 50%;
|
| 139 |
border: 0px;
|
| 140 |
}
|
| 141 |
|
| 142 |
-
|
| 143 |
-
|
| 144 |
-
|
| 145 |
-
|
|
|
|
| 146 |
width: 100%;
|
| 147 |
}
|
| 148 |
-
|
| 149 |
height: 150px;
|
| 150 |
}
|
| 151 |
-
|
| 152 |
clear: both;
|
| 153 |
}
|
| 154 |
|
| 155 |
|
| 156 |
/* Page Navigation */
|
| 157 |
|
| 158 |
-
|
| 159 |
width: 100%;
|
| 160 |
text-align: right;
|
| 161 |
padding: 8px 0;
|
| 162 |
}
|
| 163 |
|
| 164 |
-
|
| 165 |
-
|
| 166 |
display: inline-block;
|
| 167 |
padding: 0px 6px;
|
| 168 |
margin-left: 0;
|
|
@@ -173,37 +168,36 @@ body .gwolle-gb-content a {
|
|
| 173 |
}
|
| 174 |
|
| 175 |
/* Current page */
|
| 176 |
-
|
| 177 |
-
|
| 178 |
background: #eee;
|
| 179 |
color: #000;
|
| 180 |
opacity: 0.8;
|
| 181 |
border: 1px solid #ddd;
|
| 182 |
}
|
| 183 |
-
|
| 184 |
padding: 0px 3px;
|
| 185 |
color: #555;
|
| 186 |
}
|
| 187 |
|
| 188 |
/* Border-radius for whole pagination thing. */
|
| 189 |
-
|
| 190 |
-
|
| 191 |
border-radius: 3px 0 0 3px;
|
| 192 |
}
|
| 193 |
-
|
| 194 |
-
|
| 195 |
border-radius: 0 3px 3px 0;
|
| 196 |
}
|
| 197 |
|
| 198 |
|
| 199 |
/* Read section */
|
| 200 |
|
| 201 |
-
|
| 202 |
-
#gwolle_gb #gwolle-gb-entries {
|
| 203 |
position: relative;
|
| 204 |
}
|
| 205 |
|
| 206 |
-
|
| 207 |
color: #333;
|
| 208 |
background-color: #e6e6e6;
|
| 209 |
background-repeat: repeat-x;
|
|
@@ -214,41 +208,41 @@ body .gwolle-gb-content a {
|
|
| 214 |
background-image: linear-gradient(top, #f4f4f4, #e6e6e6);
|
| 215 |
padding-left: 5px;
|
| 216 |
}
|
| 217 |
-
|
| 218 |
color: #666;
|
| 219 |
}
|
| 220 |
-
|
| 221 |
position: relative;
|
| 222 |
border-top: 1px #ddd solid;
|
| 223 |
padding: 10px 0;
|
| 224 |
margin: 0;
|
| 225 |
clear: left;
|
| 226 |
}
|
| 227 |
-
|
| 228 |
border-width: 0px;
|
| 229 |
}
|
| 230 |
-
|
| 231 |
border-bottom: 1px #ddd solid; /* Ajax added entry */
|
| 232 |
}
|
| 233 |
|
| 234 |
-
|
| 235 |
-
|
| 236 |
display: block;
|
| 237 |
}
|
| 238 |
-
|
| 239 |
margin: 0 0 8px 0;
|
| 240 |
}
|
| 241 |
-
|
| 242 |
padding-left: 10px;
|
| 243 |
font-weight: bold;
|
| 244 |
}
|
| 245 |
-
|
| 246 |
padding-left: 10px;
|
| 247 |
}
|
| 248 |
-
|
| 249 |
max-width: 100%;
|
| 250 |
}
|
| 251 |
-
|
| 252 |
background-color: #ddff00;
|
| 253 |
}
|
| 254 |
|
|
@@ -277,7 +271,7 @@ div.gb-metabox {
|
|
| 277 |
box-sizing: border-box;
|
| 278 |
z-index: 10;
|
| 279 |
}
|
| 280 |
-
|
| 281 |
border-top: 1px #ddd solid;
|
| 282 |
}
|
| 283 |
div.gb-metabox-line {
|
|
@@ -311,8 +305,8 @@ div.gb-metabox-line.gb-social-media-share a {
|
|
| 311 |
|
| 312 |
/* Admin Reply */
|
| 313 |
|
| 314 |
-
|
| 315 |
-
|
| 316 |
margin: 10px 0 0 40px;
|
| 317 |
padding: 4px 10px 4px 10px;
|
| 318 |
border-left: 1px solid #ddd;
|
|
@@ -321,8 +315,8 @@ div.gb-metabox-line.gb-social-media-share a {
|
|
| 321 |
|
| 322 |
/* Infinite Scroll */
|
| 323 |
|
| 324 |
-
|
| 325 |
-
|
| 326 |
display: none;
|
| 327 |
background-color: #eee;
|
| 328 |
background-image: url("../images/loading.gif");
|
|
@@ -338,8 +332,8 @@ div.gb-metabox-line.gb-social-media-share a {
|
|
| 338 |
position: absolute;
|
| 339 |
z-index: 5;
|
| 340 |
}
|
| 341 |
-
|
| 342 |
-
|
| 343 |
padding-left: 10px;
|
| 344 |
}
|
| 345 |
|
|
@@ -408,20 +402,18 @@ li.gwolle-gb-widget.ssslide {
|
|
| 408 |
|
| 409 |
|
| 410 |
/* Form inside a widget */
|
| 411 |
-
.widget .gwolle_gb_float div.label,
|
| 412 |
.widget .gwolle-gb-float div.label,
|
| 413 |
-
.widget .gwolle_gb_float div.input,
|
| 414 |
.widget .gwolle-gb-float div.input,
|
| 415 |
-
.widget-area .
|
| 416 |
-
.widget-area .
|
| 417 |
float: none;
|
| 418 |
}
|
| 419 |
-
.widget
|
| 420 |
-
.widget-area
|
| 421 |
width: 100%;
|
| 422 |
}
|
| 423 |
-
.widget
|
| 424 |
-
.widget-area
|
| 425 |
width: 100%;
|
| 426 |
}
|
| 427 |
|
|
@@ -429,35 +421,33 @@ li.gwolle-gb-widget.ssslide {
|
|
| 429 |
/* Responsive Design */
|
| 430 |
|
| 431 |
@media only screen and (max-width: 820px) {
|
| 432 |
-
.gwolle_gb_float div.label,
|
| 433 |
.gwolle-gb-float div.label,
|
| 434 |
-
.gwolle_gb_float div.input,
|
| 435 |
.gwolle-gb-float div.input {
|
| 436 |
float: none;
|
| 437 |
}
|
| 438 |
-
|
| 439 |
-
|
| 440 |
-
|
| 441 |
-
|
| 442 |
width: 80%;
|
| 443 |
}
|
| 444 |
}
|
| 445 |
@media only screen and (max-width: 620px) {
|
| 446 |
-
.gwolle_gb_float div.label,
|
| 447 |
.gwolle-gb-float div.label,
|
| 448 |
-
.gwolle_gb_float div.input,
|
| 449 |
.gwolle-gb-float div.input {
|
| 450 |
float: none;
|
| 451 |
}
|
| 452 |
-
|
| 453 |
-
|
| 454 |
-
|
| 455 |
-
|
| 456 |
width: 100%;
|
| 457 |
}
|
| 458 |
}
|
| 459 |
|
|
|
|
| 460 |
/* Add-On */
|
|
|
|
| 461 |
div.gwolle-gb-starrating-result {
|
| 462 |
position: absolute;
|
| 463 |
top: 0;
|
| 4 |
*/
|
| 5 |
|
| 6 |
|
| 7 |
+
.gwolle-gb {
|
| 8 |
clear: left;
|
| 9 |
position: relative;
|
| 10 |
}
|
| 11 |
|
| 12 |
+
.gwolle-gb .gwolle-gb-hide {
|
| 13 |
display: none;
|
| 14 |
}
|
| 15 |
+
.gwolle-gb .gwolle-gb-invisible {
|
| 16 |
visibility: hidden;
|
| 17 |
}
|
| 18 |
|
| 19 |
/* Write button */
|
| 20 |
|
| 21 |
+
.gwolle-gb-write-button {
|
|
|
|
| 22 |
margin: 20px 0 10px;
|
| 23 |
}
|
| 24 |
+
.gwolle-gb-write-button input.button {
|
|
|
|
| 25 |
float: none; /* To avoid problems with too invasive themes. */
|
| 26 |
}
|
| 27 |
|
| 28 |
/* Write section */
|
| 29 |
|
| 30 |
+
.gwolle-gb form.gwolle-gb-write {
|
|
|
|
| 31 |
position: relative;
|
| 32 |
margin-top: 20px;
|
| 33 |
text-align: left;
|
| 52 |
width: 13px;
|
| 53 |
}
|
| 54 |
|
|
|
|
|
|
|
| 55 |
.gwolle-gb-float .label,
|
| 56 |
.gwolle-gb-float .input {
|
| 57 |
float: left;
|
| 58 |
}
|
| 59 |
|
| 60 |
/* Text meant only for screen readers in broken themes. */
|
| 61 |
+
.gwolle-gb .screen-reader-text {
|
| 62 |
border: 0;
|
| 63 |
clip: rect(1px, 1px, 1px, 1px);
|
| 64 |
clip-path: inset(50%);
|
| 79 |
}
|
| 80 |
|
| 81 |
/* Submit AJAX icon */
|
| 82 |
+
.gwolle-gb .gwolle_gb_submit_ajax_icon,
|
| 83 |
+
.gwolle-gb .gwolle-gb-submit-ajax-icon,
|
| 84 |
+
.gwolle-gb .gwolle_gb_addon_preview_ajax_icon,
|
| 85 |
+
.gwolle-gb .gwolle-gb-addon-preview-ajax-icon {
|
| 86 |
display: none;
|
| 87 |
background-image: url("../images/loading.gif");
|
| 88 |
background-position: 4px 4px;
|
| 93 |
|
| 94 |
/* Messages / Notices */
|
| 95 |
|
| 96 |
+
.gwolle-gb .gwolle_gb_messages,
|
| 97 |
+
.gwolle-gb .gwolle-gb-messages {
|
| 98 |
border-left: 4px solid #7ad03a;
|
| 99 |
box-shadow: 2px 2px 2px 0 rgba(0, 0, 0, 0.1);
|
| 100 |
padding: 1px 12px;
|
| 101 |
margin: 5px 0 15px;
|
| 102 |
}
|
| 103 |
+
.gwolle-gb .gwolle_gb_messages.error,
|
| 104 |
+
.gwolle-gb .gwolle-gb-messages.error {
|
| 105 |
border-left: 4px solid #dd3d36;
|
| 106 |
}
|
| 107 |
|
| 108 |
+
.gwolle-gb .error p, div.updated p {
|
| 109 |
margin: 0.5em 0;
|
| 110 |
padding: 2px;
|
| 111 |
}
|
| 112 |
|
| 113 |
+
.gwolle-gb form.gwolle-gb-write div.input.error,
|
| 114 |
+
.gwolle-gb form.gwolle-gb-write input.error,
|
| 115 |
+
.gwolle-gb form.gwolle-gb-write select.error,
|
| 116 |
+
.gwolle-gb form.gwolle-gb-write textarea.error {
|
| 117 |
border: 1px solid #dd3d36;
|
| 118 |
}
|
| 119 |
+
.gwolle-gb form.gwolle-gb-write input[type="checkbox"].error {
|
|
|
|
| 120 |
box-shadow: 1px 1px 0px 0px rgba(221,61,54,1);
|
| 121 |
}
|
| 122 |
|
| 123 |
+
.gwolle-gb div.label,
|
| 124 |
+
.gwolle-gb div.input {
|
| 125 |
vertical-align: top;
|
| 126 |
width: 80%;
|
| 127 |
}
|
| 128 |
+
.gwolle-gb .gwolle-gb-float div.label {
|
| 129 |
width: 35%;
|
| 130 |
}
|
| 131 |
+
.gwolle-gb .gwolle-gb-float div.input {
|
| 132 |
width: 50%;
|
| 133 |
border: 0px;
|
| 134 |
}
|
| 135 |
|
| 136 |
+
.gwolle-gb div.input input[type="text"],
|
| 137 |
+
.gwolle-gb div.input input[type="email"],
|
| 138 |
+
.gwolle-gb div.input input[type="url"],
|
| 139 |
+
.gwolle-gb div.input textarea,
|
| 140 |
+
.gwolle-gb div.input select {
|
| 141 |
width: 100%;
|
| 142 |
}
|
| 143 |
+
.gwolle-gb div.input textarea {
|
| 144 |
height: 150px;
|
| 145 |
}
|
| 146 |
+
.gwolle-gb .clearBoth {
|
| 147 |
clear: both;
|
| 148 |
}
|
| 149 |
|
| 150 |
|
| 151 |
/* Page Navigation */
|
| 152 |
|
| 153 |
+
.gwolle-gb .page-navigation {
|
| 154 |
width: 100%;
|
| 155 |
text-align: right;
|
| 156 |
padding: 8px 0;
|
| 157 |
}
|
| 158 |
|
| 159 |
+
.gwolle-gb .page-navigation a,
|
| 160 |
+
.gwolle-gb .page-navigation span {
|
| 161 |
display: inline-block;
|
| 162 |
padding: 0px 6px;
|
| 163 |
margin-left: 0;
|
| 168 |
}
|
| 169 |
|
| 170 |
/* Current page */
|
| 171 |
+
.gwolle-gb .page-navigation a:hover,
|
| 172 |
+
.gwolle-gb .page-navigation span.current {
|
| 173 |
background: #eee;
|
| 174 |
color: #000;
|
| 175 |
opacity: 0.8;
|
| 176 |
border: 1px solid #ddd;
|
| 177 |
}
|
| 178 |
+
.gwolle-gb .page-navigation span.dots {
|
| 179 |
padding: 0px 3px;
|
| 180 |
color: #555;
|
| 181 |
}
|
| 182 |
|
| 183 |
/* Border-radius for whole pagination thing. */
|
| 184 |
+
.gwolle-gb .page-navigation a:nth-child(2),
|
| 185 |
+
.gwolle-gb .page-navigation span:nth-child(2) {
|
| 186 |
border-radius: 3px 0 0 3px;
|
| 187 |
}
|
| 188 |
+
.gwolle-gb .page-navigation a:last-child,
|
| 189 |
+
.gwolle-gb .page-navigation span:last-child {
|
| 190 |
border-radius: 0 3px 3px 0;
|
| 191 |
}
|
| 192 |
|
| 193 |
|
| 194 |
/* Read section */
|
| 195 |
|
| 196 |
+
.gwolle-gb .gwolle-gb-read {
|
|
|
|
| 197 |
position: relative;
|
| 198 |
}
|
| 199 |
|
| 200 |
+
.gwolle-gb .admin-entry {
|
| 201 |
color: #333;
|
| 202 |
background-color: #e6e6e6;
|
| 203 |
background-repeat: repeat-x;
|
| 208 |
background-image: linear-gradient(top, #f4f4f4, #e6e6e6);
|
| 209 |
padding-left: 5px;
|
| 210 |
}
|
| 211 |
+
.gwolle-gb .admin-entry a {
|
| 212 |
color: #666;
|
| 213 |
}
|
| 214 |
+
.gwolle-gb .gb-entry {
|
| 215 |
position: relative;
|
| 216 |
border-top: 1px #ddd solid;
|
| 217 |
padding: 10px 0;
|
| 218 |
margin: 0;
|
| 219 |
clear: left;
|
| 220 |
}
|
| 221 |
+
.gwolle-gb .gwolle-gb-first {
|
| 222 |
border-width: 0px;
|
| 223 |
}
|
| 224 |
+
.gwolle-gb .gb-entry-count_0 {
|
| 225 |
border-bottom: 1px #ddd solid; /* Ajax added entry */
|
| 226 |
}
|
| 227 |
|
| 228 |
+
.gwolle-gb .gb-entry .gb-author-info,
|
| 229 |
+
.gwolle-gb .gb-entry .gb-entry-content {
|
| 230 |
display: block;
|
| 231 |
}
|
| 232 |
+
.gwolle-gb .gb-entry .gb-author-info .gb-author-avatar {
|
| 233 |
margin: 0 0 8px 0;
|
| 234 |
}
|
| 235 |
+
.gwolle-gb .gb-entry .gb-author-info .gb-author-name {
|
| 236 |
padding-left: 10px;
|
| 237 |
font-weight: bold;
|
| 238 |
}
|
| 239 |
+
.gwolle-gb .gb-entry .gb-entry-content {
|
| 240 |
padding-left: 10px;
|
| 241 |
}
|
| 242 |
+
.gwolle-gb .gb-entry .gb-entry-content img {
|
| 243 |
max-width: 100%;
|
| 244 |
}
|
| 245 |
+
.gwolle-gb .gb-entry .gb-highlight {
|
| 246 |
background-color: #ddff00;
|
| 247 |
}
|
| 248 |
|
| 271 |
box-sizing: border-box;
|
| 272 |
z-index: 10;
|
| 273 |
}
|
| 274 |
+
.gwolle-gb .gb-entry-count_1 div.gb-metabox {
|
| 275 |
border-top: 1px #ddd solid;
|
| 276 |
}
|
| 277 |
div.gb-metabox-line {
|
| 305 |
|
| 306 |
/* Admin Reply */
|
| 307 |
|
| 308 |
+
.gwolle-gb .gb-entry-admin_reply,
|
| 309 |
+
.gwolle-gb .gb-entry-admin-reply {
|
| 310 |
margin: 10px 0 0 40px;
|
| 311 |
padding: 4px 10px 4px 10px;
|
| 312 |
border-left: 1px solid #ddd;
|
| 315 |
|
| 316 |
/* Infinite Scroll */
|
| 317 |
|
| 318 |
+
.gwolle-gb .gwolle_gb_load_message,
|
| 319 |
+
.gwolle-gb .gwolle-gb-load-message {
|
| 320 |
display: none;
|
| 321 |
background-color: #eee;
|
| 322 |
background-image: url("../images/loading.gif");
|
| 332 |
position: absolute;
|
| 333 |
z-index: 5;
|
| 334 |
}
|
| 335 |
+
.gwolle-gb .gwolle_gb_end_message,
|
| 336 |
+
.gwolle-gb .gwolle-gb-end-message {
|
| 337 |
padding-left: 10px;
|
| 338 |
}
|
| 339 |
|
| 402 |
|
| 403 |
|
| 404 |
/* Form inside a widget */
|
|
|
|
| 405 |
.widget .gwolle-gb-float div.label,
|
|
|
|
| 406 |
.widget .gwolle-gb-float div.input,
|
| 407 |
+
.widget-area .gwolle-gb-float div.label,
|
| 408 |
+
.widget-area .gwolle-gb-float div.input {
|
| 409 |
float: none;
|
| 410 |
}
|
| 411 |
+
.widget .gwolle-gb div.label,
|
| 412 |
+
.widget-area .gwolle-gb div.label {
|
| 413 |
width: 100%;
|
| 414 |
}
|
| 415 |
+
.widget .gwolle-gb div.input,
|
| 416 |
+
.widget-area .gwolle-gb div.input {
|
| 417 |
width: 100%;
|
| 418 |
}
|
| 419 |
|
| 421 |
/* Responsive Design */
|
| 422 |
|
| 423 |
@media only screen and (max-width: 820px) {
|
|
|
|
| 424 |
.gwolle-gb-float div.label,
|
|
|
|
| 425 |
.gwolle-gb-float div.input {
|
| 426 |
float: none;
|
| 427 |
}
|
| 428 |
+
.gwolle-gb .gwolle-gb-float div.label,
|
| 429 |
+
.gwolle-gb .gwolle-gb-float div.input,
|
| 430 |
+
.gwolle-gb div.label,
|
| 431 |
+
.gwolle-gb div.input {
|
| 432 |
width: 80%;
|
| 433 |
}
|
| 434 |
}
|
| 435 |
@media only screen and (max-width: 620px) {
|
|
|
|
| 436 |
.gwolle-gb-float div.label,
|
|
|
|
| 437 |
.gwolle-gb-float div.input {
|
| 438 |
float: none;
|
| 439 |
}
|
| 440 |
+
.gwolle-gb .gwolle-gb-float div.label,
|
| 441 |
+
.gwolle-gb .gwolle-gb-float div.input,
|
| 442 |
+
.gwolle-gb div.label,
|
| 443 |
+
.gwolle-gb div.input {
|
| 444 |
width: 100%;
|
| 445 |
}
|
| 446 |
}
|
| 447 |
|
| 448 |
+
|
| 449 |
/* Add-On */
|
| 450 |
+
|
| 451 |
div.gwolle-gb-starrating-result {
|
| 452 |
position: absolute;
|
| 453 |
top: 0;
|
frontend/gb-form-posthandling.php
CHANGED
|
@@ -180,7 +180,7 @@ function gwolle_gb_frontend_posthandling() {
|
|
| 180 |
/* Privacy checkbox for GDPR compliance. */
|
| 181 |
if ( isset($form_setting['form_privacy_enabled']) && $form_setting['form_privacy_enabled'] === 'true' ) {
|
| 182 |
if (isset($_POST['gwolle_gb_privacy']) && $_POST['gwolle_gb_privacy'] == 'on') {
|
| 183 |
-
|
| 184 |
} else {
|
| 185 |
gwolle_gb_add_message( '<p class="error_fields gb-error-fields"><strong>' . esc_html__('You did not accept the privacy policy, even though it is mandatory.', 'gwolle-gb') . '</strong></p>', true, 'gwolle_gb_privacy'); // mandatory
|
| 186 |
}
|
|
@@ -385,8 +385,8 @@ function gwolle_gb_frontend_posthandling() {
|
|
| 385 |
// Input fields were filled in, so continue.
|
| 386 |
$timeout = (int) $_POST["$field_name"];
|
| 387 |
$timeout2 = (int) $_POST["$field_name2"];
|
| 388 |
-
if ( ($timeout2 - $timeout) <
|
| 389 |
-
// Submitted less then
|
| 390 |
$entry->set_isspam(true);
|
| 391 |
$marked_by_timeout = true;
|
| 392 |
if (get_option( 'gwolle_gb-refuse-spam', 'false') == 'true') {
|
| 180 |
/* Privacy checkbox for GDPR compliance. */
|
| 181 |
if ( isset($form_setting['form_privacy_enabled']) && $form_setting['form_privacy_enabled'] === 'true' ) {
|
| 182 |
if (isset($_POST['gwolle_gb_privacy']) && $_POST['gwolle_gb_privacy'] == 'on') {
|
| 183 |
+
gwolle_gb_add_formdata( 'gwolle_gb_privacy', 'on' );
|
| 184 |
} else {
|
| 185 |
gwolle_gb_add_message( '<p class="error_fields gb-error-fields"><strong>' . esc_html__('You did not accept the privacy policy, even though it is mandatory.', 'gwolle-gb') . '</strong></p>', true, 'gwolle_gb_privacy'); // mandatory
|
| 186 |
}
|
| 385 |
// Input fields were filled in, so continue.
|
| 386 |
$timeout = (int) $_POST["$field_name"];
|
| 387 |
$timeout2 = (int) $_POST["$field_name2"];
|
| 388 |
+
if ( ($timeout2 - $timeout) < 2 ) {
|
| 389 |
+
// Submitted less then 1 second after loading. Considered spam.
|
| 390 |
$entry->set_isspam(true);
|
| 391 |
$marked_by_timeout = true;
|
| 392 |
if (get_option( 'gwolle_gb-refuse-spam', 'false') == 'true') {
|
frontend/gb-form.php
CHANGED
|
@@ -26,7 +26,7 @@ function gwolle_gb_frontend_write( $shortcode_atts, $shortcode ) {
|
|
| 26 |
$output = '';
|
| 27 |
$button_class = (string) apply_filters( 'gwolle_gb_button_class', '' );
|
| 28 |
|
| 29 |
-
// Set data up for prefilling
|
| 30 |
$name = '';
|
| 31 |
$origin = '';
|
| 32 |
$email = '';
|
|
@@ -46,14 +46,17 @@ function gwolle_gb_frontend_write( $shortcode_atts, $shortcode ) {
|
|
| 46 |
}
|
| 47 |
$email = $userdata->user_email;
|
| 48 |
$website = $userdata->user_url;
|
| 49 |
-
|
| 50 |
-
$name = apply_filters( 'gwolle_gb_author_name_prefill', $name);
|
| 51 |
-
$email = apply_filters( 'gwolle_gb_author_email_prefill', $email);
|
| 52 |
-
$website = apply_filters( 'gwolle_gb_author_website_prefill', $website);
|
| 53 |
}
|
| 54 |
}
|
| 55 |
|
| 56 |
-
//
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 57 |
if ( $gwolle_gb_errors ) {
|
| 58 |
if ( is_array($gwolle_gb_formdata) && ! empty($gwolle_gb_formdata) ) {
|
| 59 |
if (isset($gwolle_gb_formdata['author_name'])) {
|
|
@@ -85,9 +88,9 @@ function gwolle_gb_frontend_write( $shortcode_atts, $shortcode ) {
|
|
| 85 |
if ( $gwolle_gb_errors ) {
|
| 86 |
$messageclass = 'error';
|
| 87 |
}
|
| 88 |
-
$output .= '<div
|
| 89 |
if ( isset($gwolle_gb_messages) && $gwolle_gb_messages != '') {
|
| 90 |
-
$output .= '<div
|
| 91 |
$output .= $gwolle_gb_messages;
|
| 92 |
$output .= '</div>';
|
| 93 |
}
|
|
@@ -97,7 +100,7 @@ function gwolle_gb_frontend_write( $shortcode_atts, $shortcode ) {
|
|
| 97 |
// Option to allow only logged-in users to post. Don't show the form if not logged-in. We still see the messages above.
|
| 98 |
if ( !is_user_logged_in() && get_option('gwolle_gb-require_login', 'false') == 'true' ) {
|
| 99 |
$output .= '
|
| 100 |
-
<div
|
| 101 |
<h3>' . esc_html__('Log in to post an entry', 'gwolle-gb') . '</h3>';
|
| 102 |
|
| 103 |
$args = array(
|
|
@@ -118,15 +121,15 @@ function gwolle_gb_frontend_write( $shortcode_atts, $shortcode ) {
|
|
| 118 |
* Button 'write a new entry.'
|
| 119 |
* Only show when shortcode [gwolle_gb] is used and there are no errors.
|
| 120 |
*/
|
| 121 |
-
$formclass = '';
|
| 122 |
if ( ( $shortcode_atts['button'] == 'true' ) && ( ! $gwolle_gb_errors ) ) {
|
| 123 |
$button = '
|
| 124 |
-
<div
|
| 125 |
-
<input type="button" class="button btn btn-default ' . $button_class . '" value="» ' . /* translators: Button text */ esc_attr__('Write a new entry.', 'gwolle-gb') . '" />
|
| 126 |
</div>';
|
| 127 |
$output .= apply_filters( 'gwolle_gb_button', $button);
|
| 128 |
|
| 129 |
-
$formclass .= '
|
| 130 |
}
|
| 131 |
|
| 132 |
|
|
@@ -136,7 +139,7 @@ function gwolle_gb_frontend_write( $shortcode_atts, $shortcode ) {
|
|
| 136 |
$form_setting = gwolle_gb_get_setting( 'form' );
|
| 137 |
$autofocus = ' autofocus="autofocus"';
|
| 138 |
if ( get_option( 'gwolle_gb-labels_float', 'true' ) === 'true' ) {
|
| 139 |
-
$formclass .= '
|
| 140 |
}
|
| 141 |
if ( get_option( 'gwolle_gb-form_ajax', 'true' ) === 'true' ) {
|
| 142 |
$formclass .= ' gwolle_gb_form_ajax gwolle-gb-form-ajax';
|
|
@@ -153,13 +156,13 @@ function gwolle_gb_frontend_write( $shortcode_atts, $shortcode ) {
|
|
| 153 |
';
|
| 154 |
}
|
| 155 |
$output .= '
|
| 156 |
-
<form
|
| 157 |
<h3>' . $header . '</h3>
|
| 158 |
' . $hidebutton . '
|
| 159 |
-
<input type="hidden" name="gwolle_gb_function"
|
| 160 |
|
| 161 |
// The book_id from the shortcode, to be used by the posthandling function again.
|
| 162 |
-
$output .= '<input type="hidden" name="gwolle_gb_book_id"
|
| 163 |
|
| 164 |
// Use this filter to just add something
|
| 165 |
$output .= apply_filters( 'gwolle_gb_write_add_before', '' );
|
|
@@ -173,11 +176,11 @@ function gwolle_gb_frontend_write( $shortcode_atts, $shortcode ) {
|
|
| 173 |
<div class="label"><label for="' . $field_name . '" class="text-info">' . $label . ':';
|
| 174 |
if ( isset($form_setting['form_name_mandatory']) && $form_setting['form_name_mandatory'] === 'true' ) { $output .= ' *';}
|
| 175 |
$output .= '</label></div>
|
| 176 |
-
<div class="input"><input class="wp-exclude-emoji ';
|
| 177 |
if (in_array($field_name, $gwolle_gb_error_fields)) {
|
| 178 |
$output .= ' error';
|
| 179 |
}
|
| 180 |
-
$output .= '" value="' . $name . '" type="text" name="' . $field_name . '"
|
| 181 |
if ( in_array($field_name, $gwolle_gb_error_fields) && isset($autofocus) ) {
|
| 182 |
$output .= $autofocus;
|
| 183 |
$autofocus = false; // disable it for the next error.
|
|
@@ -200,11 +203,11 @@ function gwolle_gb_frontend_write( $shortcode_atts, $shortcode ) {
|
|
| 200 |
<div class="label"><label for="' . $field_name . '" class="text-info">' . $label . ':';
|
| 201 |
if ( isset($form_setting['form_city_mandatory']) && $form_setting['form_city_mandatory'] === 'true' ) { $output .= ' *';}
|
| 202 |
$output .= '</label></div>
|
| 203 |
-
<div class="input"><input class="wp-exclude-emoji ';
|
| 204 |
if (in_array($field_name, $gwolle_gb_error_fields)) {
|
| 205 |
$output .= ' error';
|
| 206 |
}
|
| 207 |
-
$output .= '" value="' . $origin . '" type="text" name="' . $field_name . '"
|
| 208 |
if ( in_array($field_name, $gwolle_gb_error_fields) && isset($autofocus) ) {
|
| 209 |
$output .= $autofocus;
|
| 210 |
$autofocus = false; // disable it for the next error.
|
|
@@ -226,11 +229,11 @@ function gwolle_gb_frontend_write( $shortcode_atts, $shortcode ) {
|
|
| 226 |
<div class="label"><label for="' . $field_name . '" class="text-info">' . $label . ':';
|
| 227 |
if ( isset($form_setting['form_email_mandatory']) && $form_setting['form_email_mandatory'] === 'true' ) { $output .= ' *';}
|
| 228 |
$output .= '</label></div>
|
| 229 |
-
<div class="input"><input class="';
|
| 230 |
if (in_array($field_name, $gwolle_gb_error_fields)) {
|
| 231 |
$output .= ' error';
|
| 232 |
}
|
| 233 |
-
$output .= '" value="' . $email . '" ' . ($html5 ? 'type="email"' : 'type="text"') . ' name="' . $field_name . '"
|
| 234 |
if ( in_array($field_name, $gwolle_gb_error_fields) && isset($autofocus) ) {
|
| 235 |
$output .= $autofocus;
|
| 236 |
$autofocus = false; // disable it for the next error.
|
|
@@ -244,7 +247,7 @@ function gwolle_gb_frontend_write( $shortcode_atts, $shortcode ) {
|
|
| 244 |
} else {
|
| 245 |
if ( isset($email) && strlen($email) > 0 ) {
|
| 246 |
// For logged in users, just save the email anyway.
|
| 247 |
-
$output .= '<input
|
| 248 |
}
|
| 249 |
}
|
| 250 |
$output .= apply_filters( 'gwolle_gb_write_add_after_email', '' );
|
|
@@ -257,11 +260,11 @@ function gwolle_gb_frontend_write( $shortcode_atts, $shortcode ) {
|
|
| 257 |
<div class="label"><label for="' . $field_name . '" class="text-info">' . $label . ':';
|
| 258 |
if ( isset($form_setting['form_homepage_mandatory']) && $form_setting['form_homepage_mandatory'] === 'true' ) { $output .= ' *';}
|
| 259 |
$output .= '</label></div>
|
| 260 |
-
<div class="input"><input class="';
|
| 261 |
if (in_array($field_name, $gwolle_gb_error_fields)) {
|
| 262 |
$output .= ' error';
|
| 263 |
}
|
| 264 |
-
$output .= '" value="' . $website . '" ' . ($html5 ? 'type="url"' : 'type="text"') . ' name="' . $field_name . '"
|
| 265 |
if ( in_array($field_name, $gwolle_gb_error_fields) && isset($autofocus) ) {
|
| 266 |
$output .= $autofocus;
|
| 267 |
$autofocus = false; // disable it for the next error.
|
|
@@ -288,8 +291,8 @@ function gwolle_gb_frontend_write( $shortcode_atts, $shortcode ) {
|
|
| 288 |
<label for="' . $field_name2 . '" class="text-primary">' . esc_html__('Do not touch this', 'gwolle-gb') . ':</label>
|
| 289 |
</div>
|
| 290 |
<div class="input">
|
| 291 |
-
<input value="' . $honeypot_value . '" type="text" name="' . $field_name . '"
|
| 292 |
-
<input value="" type="text" name="' . $field_name2 . '"
|
| 293 |
</div>
|
| 294 |
</div>
|
| 295 |
<div class="clearBoth"></div>';
|
|
@@ -307,8 +310,8 @@ function gwolle_gb_frontend_write( $shortcode_atts, $shortcode ) {
|
|
| 307 |
<label for="' . $field_name2 . '" class="text-primary">' . esc_html__('Do not touch this', 'gwolle-gb') . ':</label>
|
| 308 |
</div>
|
| 309 |
<div class="input">
|
| 310 |
-
<input value="' . $random . '" type="text" name="' . $field_name . '"
|
| 311 |
-
<input value="' . $random . '" type="text" name="' . $field_name2 . '"
|
| 312 |
</div>
|
| 313 |
</div>
|
| 314 |
<div class="clearBoth"></div>';
|
|
@@ -317,12 +320,13 @@ function gwolle_gb_frontend_write( $shortcode_atts, $shortcode ) {
|
|
| 317 |
/* Content */
|
| 318 |
if ( isset($form_setting['form_message_enabled']) && $form_setting['form_message_enabled'] === 'true' ) {
|
| 319 |
$field_name = gwolle_gb_get_field_name( 'content' );
|
| 320 |
-
$label = apply_filters( 'gwolle_gb_content_label', esc_html__('Guestbook entry', 'gwolle-gb') );
|
|
|
|
| 321 |
$output .= '<div class="' . $field_name . '">
|
| 322 |
<div class="label"><label for="' . $field_name . '" class="text-info">' . $label . ':';
|
| 323 |
if ( isset($form_setting['form_message_mandatory']) && $form_setting['form_message_mandatory'] === 'true' ) { $output .= ' *';}
|
| 324 |
$output .= '</label></div>
|
| 325 |
-
<div class="input"><textarea name="' . $field_name . '"
|
| 326 |
if (in_array($field_name, $gwolle_gb_error_fields)) {
|
| 327 |
$output .= ' error';
|
| 328 |
}
|
|
@@ -341,7 +345,7 @@ function gwolle_gb_frontend_write( $shortcode_atts, $shortcode ) {
|
|
| 341 |
gwolle_gb_enqueue_markitup();
|
| 342 |
|
| 343 |
// Emoji symbols
|
| 344 |
-
$output .= '<div class="gwolle_gb_emoji
|
| 345 |
$output .= gwolle_gb_get_emoji();
|
| 346 |
$output .= '</div>';
|
| 347 |
}
|
|
@@ -368,11 +372,11 @@ function gwolle_gb_frontend_write( $shortcode_atts, $shortcode ) {
|
|
| 368 |
<label for="' . $field_name . '" class="text-info">' . $label . ': *<br />
|
| 369 |
' . esc_html__('Question:', 'gwolle-gb') . ' ' . $antispam_question . '</label>
|
| 370 |
</div>
|
| 371 |
-
<div class="input"><input class="';
|
| 372 |
if (in_array( $field_name, $gwolle_gb_error_fields)) {
|
| 373 |
-
$output .= ' error';
|
| 374 |
}
|
| 375 |
-
$output .= '" value="' . $antispam . '" type="text" name="' . $field_name . '"
|
| 376 |
if ( in_array( $field_name, $gwolle_gb_error_fields) && isset($autofocus) ) {
|
| 377 |
$output .= $autofocus;
|
| 378 |
$autofocus = false; // disable it for the next error.
|
|
@@ -388,6 +392,10 @@ function gwolle_gb_frontend_write( $shortcode_atts, $shortcode ) {
|
|
| 388 |
|
| 389 |
/* Privacy checkbox for GDPR compliance. */
|
| 390 |
if ( isset($form_setting['form_privacy_enabled']) && $form_setting['form_privacy_enabled'] === 'true' ) {
|
|
|
|
|
|
|
|
|
|
|
|
|
| 391 |
$a_open = '';
|
| 392 |
$a_close = '';
|
| 393 |
if ( function_exists( 'get_privacy_policy_url' ) ) {
|
|
@@ -402,7 +410,7 @@ function gwolle_gb_frontend_write( $shortcode_atts, $shortcode ) {
|
|
| 402 |
$output .= '
|
| 403 |
<div class="gwolle_gb_privacy">
|
| 404 |
<div class="label"><label for="gwolle_gb_privacy" class="text-info">' . $label . ': *</label></div>
|
| 405 |
-
<div class="input"><input type="checkbox" name="gwolle_gb_privacy"
|
| 406 |
</div>
|
| 407 |
<div class="clearBoth"> </div>';
|
| 408 |
}
|
|
@@ -411,21 +419,21 @@ function gwolle_gb_frontend_write( $shortcode_atts, $shortcode ) {
|
|
| 411 |
if (get_option( 'gwolle_gb-nonce', 'true') == 'true') {
|
| 412 |
$field_name = gwolle_gb_get_field_name( 'nonce' );
|
| 413 |
$nonce = wp_create_nonce( 'gwolle_gb_add_entry' );
|
| 414 |
-
$output .= '<input type="hidden"
|
| 415 |
}
|
| 416 |
|
| 417 |
/* Use this filter to just add something */
|
| 418 |
$output .= apply_filters( 'gwolle_gb_write_add_form', '' );
|
| 419 |
|
| 420 |
$output .= '
|
| 421 |
-
<div
|
| 422 |
|
| 423 |
<noscript><div class="no-js">' . esc_html__( 'Warning: This form can only be used if JavaScript is enabled in your browser.', 'gwolle-gb' ) . '</div></noscript>
|
| 424 |
|
| 425 |
<div class="gwolle_gb_submit">
|
| 426 |
-
<div class="label
|
| 427 |
<div class="input">
|
| 428 |
-
<input type="submit" name="gwolle_gb_submit"
|
| 429 |
<span class="gwolle_gb_submit_ajax_icon"></span>
|
| 430 |
';
|
| 431 |
|
| 26 |
$output = '';
|
| 27 |
$button_class = (string) apply_filters( 'gwolle_gb_button_class', '' );
|
| 28 |
|
| 29 |
+
// Set data up for prefilling a form in case of errors or prefill data.
|
| 30 |
$name = '';
|
| 31 |
$origin = '';
|
| 32 |
$email = '';
|
| 46 |
}
|
| 47 |
$email = $userdata->user_email;
|
| 48 |
$website = $userdata->user_url;
|
|
|
|
|
|
|
|
|
|
|
|
|
| 49 |
}
|
| 50 |
}
|
| 51 |
|
| 52 |
+
// Prefill filters where you can add your own inital content for the form elements.
|
| 53 |
+
$name = apply_filters( 'gwolle_gb_author_name_prefill', $name);
|
| 54 |
+
$origin = apply_filters( 'gwolle_gb_author_origin_prefill', $origin);
|
| 55 |
+
$email = apply_filters( 'gwolle_gb_author_email_prefill', $email);
|
| 56 |
+
$website = apply_filters( 'gwolle_gb_author_website_prefill', $website);
|
| 57 |
+
$content = apply_filters( 'gwolle_gb_author_content_prefill', $content);
|
| 58 |
+
|
| 59 |
+
// Only show old data when there are errors and overwrite the prefill data.
|
| 60 |
if ( $gwolle_gb_errors ) {
|
| 61 |
if ( is_array($gwolle_gb_formdata) && ! empty($gwolle_gb_formdata) ) {
|
| 62 |
if (isset($gwolle_gb_formdata['author_name'])) {
|
| 88 |
if ( $gwolle_gb_errors ) {
|
| 89 |
$messageclass = 'error';
|
| 90 |
}
|
| 91 |
+
$output .= '<div class="gwolle_gb_messages_top_container">';
|
| 92 |
if ( isset($gwolle_gb_messages) && $gwolle_gb_messages != '') {
|
| 93 |
+
$output .= '<div class="gwolle_gb_messages ' . $messageclass . '">';
|
| 94 |
$output .= $gwolle_gb_messages;
|
| 95 |
$output .= '</div>';
|
| 96 |
}
|
| 100 |
// Option to allow only logged-in users to post. Don't show the form if not logged-in. We still see the messages above.
|
| 101 |
if ( !is_user_logged_in() && get_option('gwolle_gb-require_login', 'false') == 'true' ) {
|
| 102 |
$output .= '
|
| 103 |
+
<div class="gwolle-gb-write">
|
| 104 |
<h3>' . esc_html__('Log in to post an entry', 'gwolle-gb') . '</h3>';
|
| 105 |
|
| 106 |
$args = array(
|
| 121 |
* Button 'write a new entry.'
|
| 122 |
* Only show when shortcode [gwolle_gb] is used and there are no errors.
|
| 123 |
*/
|
| 124 |
+
$formclass = 'gwolle-gb-write';
|
| 125 |
if ( ( $shortcode_atts['button'] == 'true' ) && ( ! $gwolle_gb_errors ) ) {
|
| 126 |
$button = '
|
| 127 |
+
<div class="gwolle-gb-write-button">
|
| 128 |
+
<input type="button" name="gwolle-gb-write-button" class="button btn btn-default ' . $button_class . '" value="» ' . /* translators: Button text */ esc_attr__('Write a new entry.', 'gwolle-gb') . '" />
|
| 129 |
</div>';
|
| 130 |
$output .= apply_filters( 'gwolle_gb_button', $button);
|
| 131 |
|
| 132 |
+
$formclass .= ' gwolle-gb-hide';
|
| 133 |
}
|
| 134 |
|
| 135 |
|
| 139 |
$form_setting = gwolle_gb_get_setting( 'form' );
|
| 140 |
$autofocus = ' autofocus="autofocus"';
|
| 141 |
if ( get_option( 'gwolle_gb-labels_float', 'true' ) === 'true' ) {
|
| 142 |
+
$formclass .= ' gwolle-gb-float';
|
| 143 |
}
|
| 144 |
if ( get_option( 'gwolle_gb-form_ajax', 'true' ) === 'true' ) {
|
| 145 |
$formclass .= ' gwolle_gb_form_ajax gwolle-gb-form-ajax';
|
| 156 |
';
|
| 157 |
}
|
| 158 |
$output .= '
|
| 159 |
+
<form action="#" method="POST" class="' . $formclass . '">
|
| 160 |
<h3>' . $header . '</h3>
|
| 161 |
' . $hidebutton . '
|
| 162 |
+
<input type="hidden" name="gwolle_gb_function" class="gwolle_gb_function" value="add_entry" />';
|
| 163 |
|
| 164 |
// The book_id from the shortcode, to be used by the posthandling function again.
|
| 165 |
+
$output .= '<input type="hidden" name="gwolle_gb_book_id" class="gwolle_gb_book_id" value="' . $shortcode_atts['book_id'] . '" />';
|
| 166 |
|
| 167 |
// Use this filter to just add something
|
| 168 |
$output .= apply_filters( 'gwolle_gb_write_add_before', '' );
|
| 176 |
<div class="label"><label for="' . $field_name . '" class="text-info">' . $label . ':';
|
| 177 |
if ( isset($form_setting['form_name_mandatory']) && $form_setting['form_name_mandatory'] === 'true' ) { $output .= ' *';}
|
| 178 |
$output .= '</label></div>
|
| 179 |
+
<div class="input"><input class="wp-exclude-emoji ' . $field_name;
|
| 180 |
if (in_array($field_name, $gwolle_gb_error_fields)) {
|
| 181 |
$output .= ' error';
|
| 182 |
}
|
| 183 |
+
$output .= '" value="' . $name . '" type="text" name="' . $field_name . '" placeholder="' . $label . '"';
|
| 184 |
if ( in_array($field_name, $gwolle_gb_error_fields) && isset($autofocus) ) {
|
| 185 |
$output .= $autofocus;
|
| 186 |
$autofocus = false; // disable it for the next error.
|
| 203 |
<div class="label"><label for="' . $field_name . '" class="text-info">' . $label . ':';
|
| 204 |
if ( isset($form_setting['form_city_mandatory']) && $form_setting['form_city_mandatory'] === 'true' ) { $output .= ' *';}
|
| 205 |
$output .= '</label></div>
|
| 206 |
+
<div class="input"><input class="wp-exclude-emoji ' . $field_name;
|
| 207 |
if (in_array($field_name, $gwolle_gb_error_fields)) {
|
| 208 |
$output .= ' error';
|
| 209 |
}
|
| 210 |
+
$output .= '" value="' . $origin . '" type="text" name="' . $field_name . '" placeholder="' . $label . '"';
|
| 211 |
if ( in_array($field_name, $gwolle_gb_error_fields) && isset($autofocus) ) {
|
| 212 |
$output .= $autofocus;
|
| 213 |
$autofocus = false; // disable it for the next error.
|
| 229 |
<div class="label"><label for="' . $field_name . '" class="text-info">' . $label . ':';
|
| 230 |
if ( isset($form_setting['form_email_mandatory']) && $form_setting['form_email_mandatory'] === 'true' ) { $output .= ' *';}
|
| 231 |
$output .= '</label></div>
|
| 232 |
+
<div class="input"><input class="' . $field_name;
|
| 233 |
if (in_array($field_name, $gwolle_gb_error_fields)) {
|
| 234 |
$output .= ' error';
|
| 235 |
}
|
| 236 |
+
$output .= '" value="' . $email . '" ' . ($html5 ? 'type="email"' : 'type="text"') . ' name="' . $field_name . '" placeholder="' . $label . '" ';
|
| 237 |
if ( in_array($field_name, $gwolle_gb_error_fields) && isset($autofocus) ) {
|
| 238 |
$output .= $autofocus;
|
| 239 |
$autofocus = false; // disable it for the next error.
|
| 247 |
} else {
|
| 248 |
if ( isset($email) && strlen($email) > 0 ) {
|
| 249 |
// For logged in users, just save the email anyway.
|
| 250 |
+
$output .= '<input value="' . $email . '" type="hidden" name="gwolle_gb_author_email" class="gwolle_gb_author_email" />';
|
| 251 |
}
|
| 252 |
}
|
| 253 |
$output .= apply_filters( 'gwolle_gb_write_add_after_email', '' );
|
| 260 |
<div class="label"><label for="' . $field_name . '" class="text-info">' . $label . ':';
|
| 261 |
if ( isset($form_setting['form_homepage_mandatory']) && $form_setting['form_homepage_mandatory'] === 'true' ) { $output .= ' *';}
|
| 262 |
$output .= '</label></div>
|
| 263 |
+
<div class="input"><input class="' . $field_name;
|
| 264 |
if (in_array($field_name, $gwolle_gb_error_fields)) {
|
| 265 |
$output .= ' error';
|
| 266 |
}
|
| 267 |
+
$output .= '" value="' . $website . '" ' . ($html5 ? 'type="url"' : 'type="text"') . ' name="' . $field_name . '" placeholder="' . $label . '" ';
|
| 268 |
if ( in_array($field_name, $gwolle_gb_error_fields) && isset($autofocus) ) {
|
| 269 |
$output .= $autofocus;
|
| 270 |
$autofocus = false; // disable it for the next error.
|
| 291 |
<label for="' . $field_name2 . '" class="text-primary">' . esc_html__('Do not touch this', 'gwolle-gb') . ':</label>
|
| 292 |
</div>
|
| 293 |
<div class="input">
|
| 294 |
+
<input value="' . $honeypot_value . '" type="text" name="' . $field_name . '" class="' . $field_name . '" placeholder="" />
|
| 295 |
+
<input value="" type="text" name="' . $field_name2 . '" class="' . $field_name2 . '" placeholder="" />
|
| 296 |
</div>
|
| 297 |
</div>
|
| 298 |
<div class="clearBoth"></div>';
|
| 310 |
<label for="' . $field_name2 . '" class="text-primary">' . esc_html__('Do not touch this', 'gwolle-gb') . ':</label>
|
| 311 |
</div>
|
| 312 |
<div class="input">
|
| 313 |
+
<input value="' . $random . '" type="text" name="' . $field_name . '" class="' . $field_name . '" placeholder="" />
|
| 314 |
+
<input value="' . $random . '" type="text" name="' . $field_name2 . '" class="' . $field_name2 . '" placeholder="" />
|
| 315 |
</div>
|
| 316 |
</div>
|
| 317 |
<div class="clearBoth"></div>';
|
| 320 |
/* Content */
|
| 321 |
if ( isset($form_setting['form_message_enabled']) && $form_setting['form_message_enabled'] === 'true' ) {
|
| 322 |
$field_name = gwolle_gb_get_field_name( 'content' );
|
| 323 |
+
$label = apply_filters( 'gwolle_gb_content_label', esc_html__('Guestbook entry', 'gwolle-gb') ); // backwards compatible.
|
| 324 |
+
$label = apply_filters( 'gwolle_gb_author_content_label', $label ); // new consistent name.
|
| 325 |
$output .= '<div class="' . $field_name . '">
|
| 326 |
<div class="label"><label for="' . $field_name . '" class="text-info">' . $label . ':';
|
| 327 |
if ( isset($form_setting['form_message_mandatory']) && $form_setting['form_message_mandatory'] === 'true' ) { $output .= ' *';}
|
| 328 |
$output .= '</label></div>
|
| 329 |
+
<div class="input"><textarea name="' . $field_name . '" class="' . $field_name . ' wp-exclude-emoji';
|
| 330 |
if (in_array($field_name, $gwolle_gb_error_fields)) {
|
| 331 |
$output .= ' error';
|
| 332 |
}
|
| 345 |
gwolle_gb_enqueue_markitup();
|
| 346 |
|
| 347 |
// Emoji symbols
|
| 348 |
+
$output .= '<div class="gwolle_gb_emoji gwolle-gb-hide">';
|
| 349 |
$output .= gwolle_gb_get_emoji();
|
| 350 |
$output .= '</div>';
|
| 351 |
}
|
| 372 |
<label for="' . $field_name . '" class="text-info">' . $label . ': *<br />
|
| 373 |
' . esc_html__('Question:', 'gwolle-gb') . ' ' . $antispam_question . '</label>
|
| 374 |
</div>
|
| 375 |
+
<div class="input"><input class="' . $field_name;
|
| 376 |
if (in_array( $field_name, $gwolle_gb_error_fields)) {
|
| 377 |
+
$output .= ' error ';
|
| 378 |
}
|
| 379 |
+
$output .= '" value="' . $antispam . '" type="text" name="' . $field_name . '" placeholder="' . esc_attr__('Answer', 'gwolle-gb') . '" ';
|
| 380 |
if ( in_array( $field_name, $gwolle_gb_error_fields) && isset($autofocus) ) {
|
| 381 |
$output .= $autofocus;
|
| 382 |
$autofocus = false; // disable it for the next error.
|
| 392 |
|
| 393 |
/* Privacy checkbox for GDPR compliance. */
|
| 394 |
if ( isset($form_setting['form_privacy_enabled']) && $form_setting['form_privacy_enabled'] === 'true' ) {
|
| 395 |
+
$checked = '';
|
| 396 |
+
if ( isset($gwolle_gb_formdata['gwolle_gb_privacy']) && $gwolle_gb_formdata['gwolle_gb_privacy'] == 'on' ) {
|
| 397 |
+
$checked = ' checked="checked"';
|
| 398 |
+
}
|
| 399 |
$a_open = '';
|
| 400 |
$a_close = '';
|
| 401 |
if ( function_exists( 'get_privacy_policy_url' ) ) {
|
| 410 |
$output .= '
|
| 411 |
<div class="gwolle_gb_privacy">
|
| 412 |
<div class="label"><label for="gwolle_gb_privacy" class="text-info">' . $label . ': *</label></div>
|
| 413 |
+
<div class="input"><input type="checkbox" name="gwolle_gb_privacy" class="gwolle_gb_privacy" required' . $checked . ' /></div>
|
| 414 |
</div>
|
| 415 |
<div class="clearBoth"> </div>';
|
| 416 |
}
|
| 419 |
if (get_option( 'gwolle_gb-nonce', 'true') == 'true') {
|
| 420 |
$field_name = gwolle_gb_get_field_name( 'nonce' );
|
| 421 |
$nonce = wp_create_nonce( 'gwolle_gb_add_entry' );
|
| 422 |
+
$output .= '<input type="hidden" class="' . $field_name . '" name="' . $field_name . '" value="' . $nonce . '" />';
|
| 423 |
}
|
| 424 |
|
| 425 |
/* Use this filter to just add something */
|
| 426 |
$output .= apply_filters( 'gwolle_gb_write_add_form', '' );
|
| 427 |
|
| 428 |
$output .= '
|
| 429 |
+
<div class="gwolle_gb_messages_bottom_container"></div>
|
| 430 |
|
| 431 |
<noscript><div class="no-js">' . esc_html__( 'Warning: This form can only be used if JavaScript is enabled in your browser.', 'gwolle-gb' ) . '</div></noscript>
|
| 432 |
|
| 433 |
<div class="gwolle_gb_submit">
|
| 434 |
+
<div class="label gwolle-gb-invisible text-muted"> </div>
|
| 435 |
<div class="input">
|
| 436 |
+
<input type="submit" name="gwolle_gb_submit" class="gwolle_gb_submit button btn btn-primary ' . $button_class . '" value="' . esc_attr__('Submit', 'gwolle-gb') . '" />
|
| 437 |
<span class="gwolle_gb_submit_ajax_icon"></span>
|
| 438 |
';
|
| 439 |
|
frontend/gb-read.php
CHANGED
|
@@ -43,8 +43,8 @@ function gwolle_gb_frontend_read( $shortcode_atts, $shortcode ) {
|
|
| 43 |
$output .= esc_html__( 'Sorry, but this entry does not seem to exist.', 'gwolle-gb' );
|
| 44 |
} else {
|
| 45 |
|
| 46 |
-
$entries_list_class = apply_filters( 'gwolle_gb_entries_list_class', '' );
|
| 47 |
-
$output .= '<div
|
| 48 |
|
| 49 |
$first = true;
|
| 50 |
$counter = 0;
|
|
@@ -164,7 +164,7 @@ function gwolle_gb_frontend_read( $shortcode_atts, $shortcode ) {
|
|
| 164 |
|
| 165 |
/* Page navigation on top */
|
| 166 |
$navigation = (int) get_option( 'gwolle_gb-navigation', 0 );
|
| 167 |
-
$entries_list_class = '';
|
| 168 |
if ( $navigation == 0 ) {
|
| 169 |
$pagination = gwolle_gb_pagination_frontend( $pageNum, $pages_total );
|
| 170 |
$output .= $pagination;
|
|
@@ -176,13 +176,13 @@ function gwolle_gb_frontend_read( $shortcode_atts, $shortcode ) {
|
|
| 176 |
/* Entries from the template */
|
| 177 |
if ( ! is_array( $entries ) || empty( $entries ) ) {
|
| 178 |
$no_entries = apply_filters( 'gwolle_gb_read_no_entries', esc_html__('(no entries yet)', 'gwolle-gb') );
|
| 179 |
-
$output .= '<div
|
| 180 |
$output .= $no_entries;
|
| 181 |
$output .= '</div>';
|
| 182 |
} else {
|
| 183 |
$first = true;
|
| 184 |
|
| 185 |
-
$output .= '<div
|
| 186 |
|
| 187 |
$args = array(
|
| 188 |
'checked' => 'checked',
|
| 43 |
$output .= esc_html__( 'Sorry, but this entry does not seem to exist.', 'gwolle-gb' );
|
| 44 |
} else {
|
| 45 |
|
| 46 |
+
$entries_list_class = apply_filters( 'gwolle_gb_entries_list_class', 'gwolle-gb-read ' );
|
| 47 |
+
$output .= '<div class="' . $entries_list_class . '" data-book_id="' . $shortcode_atts['book_id'] . '">';
|
| 48 |
|
| 49 |
$first = true;
|
| 50 |
$counter = 0;
|
| 164 |
|
| 165 |
/* Page navigation on top */
|
| 166 |
$navigation = (int) get_option( 'gwolle_gb-navigation', 0 );
|
| 167 |
+
$entries_list_class = 'gwolle-gb-read ';
|
| 168 |
if ( $navigation == 0 ) {
|
| 169 |
$pagination = gwolle_gb_pagination_frontend( $pageNum, $pages_total );
|
| 170 |
$output .= $pagination;
|
| 176 |
/* Entries from the template */
|
| 177 |
if ( ! is_array( $entries ) || empty( $entries ) ) {
|
| 178 |
$no_entries = apply_filters( 'gwolle_gb_read_no_entries', esc_html__('(no entries yet)', 'gwolle-gb') );
|
| 179 |
+
$output .= '<div class="' . $entries_list_class . '" data-book_id="' . $shortcode_atts['book_id'] . '">';
|
| 180 |
$output .= $no_entries;
|
| 181 |
$output .= '</div>';
|
| 182 |
} else {
|
| 183 |
$first = true;
|
| 184 |
|
| 185 |
+
$output .= '<div class="' . $entries_list_class . '" data-book_id="' . $shortcode_atts['book_id'] . '">';
|
| 186 |
|
| 187 |
$args = array(
|
| 188 |
'checked' => 'checked',
|
frontend/gb-shortcodes.php
CHANGED
|
@@ -54,7 +54,7 @@ function get_gwolle_gb( $atts ) {
|
|
| 54 |
|
| 55 |
|
| 56 |
// Define $output
|
| 57 |
-
$output = '<div
|
| 58 |
|
| 59 |
// Add the form
|
| 60 |
$output .= gwolle_gb_frontend_write( $shortcode_atts, $shortcode );
|
|
@@ -96,7 +96,7 @@ function get_gwolle_gb_write( $atts ) {
|
|
| 96 |
|
| 97 |
|
| 98 |
// Define $output
|
| 99 |
-
$output = '<div
|
| 100 |
|
| 101 |
// Add the form
|
| 102 |
$output .= gwolle_gb_frontend_write( $shortcode_atts, $shortcode );
|
|
@@ -133,7 +133,7 @@ function get_gwolle_gb_read( $atts ) {
|
|
| 133 |
|
| 134 |
|
| 135 |
// Define $output
|
| 136 |
-
$output = '<div
|
| 137 |
|
| 138 |
// Add the list of entries to show
|
| 139 |
$output .= gwolle_gb_frontend_read( $shortcode_atts, $shortcode );
|
| 54 |
|
| 55 |
|
| 56 |
// Define $output
|
| 57 |
+
$output = '<div class="gwolle-gb">';
|
| 58 |
|
| 59 |
// Add the form
|
| 60 |
$output .= gwolle_gb_frontend_write( $shortcode_atts, $shortcode );
|
| 96 |
|
| 97 |
|
| 98 |
// Define $output
|
| 99 |
+
$output = '<div class="gwolle-gb">';
|
| 100 |
|
| 101 |
// Add the form
|
| 102 |
$output .= gwolle_gb_frontend_write( $shortcode_atts, $shortcode );
|
| 133 |
|
| 134 |
|
| 135 |
// Define $output
|
| 136 |
+
$output = '<div class="gwolle-gb">';
|
| 137 |
|
| 138 |
// Add the list of entries to show
|
| 139 |
$output .= gwolle_gb_frontend_read( $shortcode_atts, $shortcode );
|
frontend/gwolle_gb-entry.php
CHANGED
|
@@ -135,11 +135,11 @@ if ( ! function_exists('gwolle_gb_entry_template') ) {
|
|
| 135 |
}
|
| 136 |
$excerpt_length = (int) get_option( 'gwolle_gb-excerpt_length', 0 );
|
| 137 |
if ( $excerpt_length > 0 ) {
|
| 138 |
-
$readmore = '... <a href="#" class="
|
| 139 |
$entry_excerpt = wp_trim_words( $entry_content, $excerpt_length, $readmore );
|
| 140 |
$entry_content = '
|
| 141 |
<div class="gb-entry-excerpt">' . $entry_excerpt . '</div>
|
| 142 |
-
<div class="gb-entry-
|
| 143 |
}
|
| 144 |
if ( get_option('gwolle_gb-showSmilies', 'true') === 'true' ) {
|
| 145 |
// should be done after wp_trim_words to keep all the smileys intact.
|
|
@@ -212,7 +212,7 @@ if ( ! function_exists('gwolle_gb_entry_template') ) {
|
|
| 212 |
$admin_reply_excerpt = wp_trim_words( $admin_reply_content, $excerpt_length, $readmore );
|
| 213 |
$admin_reply .= '
|
| 214 |
<div class="gb-admin_reply-excerpt">' . $admin_reply_excerpt . '</div>
|
| 215 |
-
<div class="gb-admin_reply-full-content
|
| 216 |
' . $admin_reply_content . '
|
| 217 |
</div>';
|
| 218 |
} else {
|
|
@@ -228,12 +228,16 @@ if ( ! function_exists('gwolle_gb_entry_template') ) {
|
|
| 228 |
}
|
| 229 |
}
|
| 230 |
|
| 231 |
-
/* Metabox for entry.
|
|
|
|
|
|
|
|
|
|
|
|
|
| 232 |
$gb_metabox = apply_filters( 'gwolle_gb_entry_metabox_lines', '', $entry );
|
| 233 |
if ( $gb_metabox ) {
|
| 234 |
$entry_output .= '
|
| 235 |
<div class="gb-metabox-handle" tabindex="0">' . esc_html__('...', 'gwolle-gb' ) . '<span class="screen-reader-text"> ' . esc_html__('Toggle this metabox.', 'gwolle-gb') . '</span></div>
|
| 236 |
-
<div class="gb-metabox
|
| 237 |
$gb_metabox . '
|
| 238 |
</div>';
|
| 239 |
}
|
| 135 |
}
|
| 136 |
$excerpt_length = (int) get_option( 'gwolle_gb-excerpt_length', 0 );
|
| 137 |
if ( $excerpt_length > 0 ) {
|
| 138 |
+
$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>';
|
| 139 |
$entry_excerpt = wp_trim_words( $entry_content, $excerpt_length, $readmore );
|
| 140 |
$entry_content = '
|
| 141 |
<div class="gb-entry-excerpt">' . $entry_excerpt . '</div>
|
| 142 |
+
<div class="gb-entry-full-content gwolle-gb-hide">' . $entry_content . '</div>';
|
| 143 |
}
|
| 144 |
if ( get_option('gwolle_gb-showSmilies', 'true') === 'true' ) {
|
| 145 |
// should be done after wp_trim_words to keep all the smileys intact.
|
| 212 |
$admin_reply_excerpt = wp_trim_words( $admin_reply_content, $excerpt_length, $readmore );
|
| 213 |
$admin_reply .= '
|
| 214 |
<div class="gb-admin_reply-excerpt">' . $admin_reply_excerpt . '</div>
|
| 215 |
+
<div class="gb-admin_reply-full-content gwolle-gb-hide">
|
| 216 |
' . $admin_reply_content . '
|
| 217 |
</div>';
|
| 218 |
} else {
|
| 228 |
}
|
| 229 |
}
|
| 230 |
|
| 231 |
+
/* Metabox for entry with more metabox-lines with information or actions.
|
| 232 |
+
* For the handle we use a div with a tabindex=0 instead of a button.
|
| 233 |
+
* Button elements are not easy to style on the frontend for every theme out there.
|
| 234 |
+
* With Javascript we toggle the metabox open or closed.
|
| 235 |
+
*/
|
| 236 |
$gb_metabox = apply_filters( 'gwolle_gb_entry_metabox_lines', '', $entry );
|
| 237 |
if ( $gb_metabox ) {
|
| 238 |
$entry_output .= '
|
| 239 |
<div class="gb-metabox-handle" tabindex="0">' . esc_html__('...', 'gwolle-gb' ) . '<span class="screen-reader-text"> ' . esc_html__('Toggle this metabox.', 'gwolle-gb') . '</span></div>
|
| 240 |
+
<div class="gb-metabox gwolle-gb-invisible">' .
|
| 241 |
$gb_metabox . '
|
| 242 |
</div>';
|
| 243 |
}
|
frontend/js/gwolle-gb-frontend.js
CHANGED
|
@@ -7,17 +7,19 @@
|
|
| 7 |
* Event for clicking the button, and getting the form visible.
|
| 8 |
*/
|
| 9 |
jQuery(document).ready(function($) {
|
| 10 |
-
jQuery( "
|
| 11 |
-
jQuery(
|
| 12 |
-
jQuery("
|
|
|
|
| 13 |
return false;
|
| 14 |
});
|
| 15 |
});
|
| 16 |
// And close it again.
|
| 17 |
jQuery(document).ready(function($) {
|
| 18 |
jQuery( "button.gb-notice-dismiss" ).click(function() {
|
| 19 |
-
jQuery(
|
| 20 |
-
jQuery("
|
|
|
|
| 21 |
return false;
|
| 22 |
});
|
| 23 |
});
|
|
@@ -34,17 +36,17 @@ jQuery(document).ready(function($) {
|
|
| 34 |
function gwolle_gb_readmore() {
|
| 35 |
jQuery(".gb-entry-content .gwolle-gb-readmore").off('click');
|
| 36 |
jQuery(".gb-entry-content .gwolle-gb-readmore").on('click', function() {
|
| 37 |
-
var content_div = jQuery(this).
|
| 38 |
-
jQuery(
|
| 39 |
-
jQuery(
|
| 40 |
return false;
|
| 41 |
});
|
| 42 |
|
| 43 |
jQuery(".gb-entry-admin_reply .gwolle-gb-readmore").off('click');
|
| 44 |
jQuery(".gb-entry-admin_reply .gwolle-gb-readmore").on('click', function() {
|
| 45 |
-
var content_div = jQuery(this).
|
| 46 |
-
jQuery(
|
| 47 |
-
jQuery(
|
| 48 |
return false;
|
| 49 |
});
|
| 50 |
}
|
|
@@ -61,14 +63,14 @@ jQuery(document).ready(function($) {
|
|
| 61 |
function gwolle_gb_metabox_handle() {
|
| 62 |
jQuery('div.gb-metabox-handle').off('click');
|
| 63 |
jQuery('div.gb-metabox-handle').on('click', function() {
|
| 64 |
-
var
|
| 65 |
-
jQuery(
|
| 66 |
return false;
|
| 67 |
});
|
| 68 |
jQuery("div.gb-metabox-handle").keypress(function(e) {
|
| 69 |
-
if (e.keyCode == 13) {
|
| 70 |
-
var
|
| 71 |
-
jQuery(
|
| 72 |
return false;
|
| 73 |
}
|
| 74 |
});
|
|
@@ -76,28 +78,29 @@ function gwolle_gb_metabox_handle() {
|
|
| 76 |
}
|
| 77 |
jQuery(document).ready(function($) {
|
| 78 |
jQuery('body').on('click', function( el ) {
|
| 79 |
-
jQuery('div.gb-metabox').addClass( '
|
| 80 |
});
|
| 81 |
});
|
| 82 |
|
| 83 |
|
| 84 |
/*
|
| 85 |
* Event for Infinite Scroll. Get more pages when you are at the bottom.
|
|
|
|
| 86 |
*/
|
| 87 |
var gwolle_gb_scroll_on = true; // The end has not been reached yet. We still get entries back.
|
| 88 |
var gwolle_gb_scroll_busy = false; // Handle async well. Only one request at a time.
|
| 89 |
var gwolle_gb_scroll_callback = jQuery.Callbacks(); // Callback function to be fired after AJAX request.
|
| 90 |
|
| 91 |
jQuery(document).ready(function($) {
|
| 92 |
-
if ( jQuery( "
|
| 93 |
var gwolle_gb_scroll_count = 2; // We already have page 1 listed.
|
| 94 |
|
| 95 |
var gwolle_gb_load_message = '<div class="gb-entry gwolle_gb_load_message">' + gwolle_gb_frontend_script.load_message + '</div>' ;
|
| 96 |
-
jQuery( "
|
| 97 |
|
| 98 |
jQuery(window).scroll(function() {
|
| 99 |
// have 10px diff for sensitivity.
|
| 100 |
-
if ( ( jQuery(window).scrollTop() > jQuery(document).height() - jQuery(window).height() -10 ) && gwolle_gb_scroll_on == true && gwolle_gb_scroll_busy == false) {
|
| 101 |
gwolle_gb_scroll_busy = true;
|
| 102 |
gwolle_gb_load_page(gwolle_gb_scroll_count);
|
| 103 |
gwolle_gb_scroll_count++;
|
|
@@ -115,17 +118,17 @@ jQuery(document).ready(function($) {
|
|
| 115 |
action: 'gwolle_gb_infinite_scroll',
|
| 116 |
pageNum: page,
|
| 117 |
permalink: window.location.href,
|
| 118 |
-
book_id: jQuery( "
|
| 119 |
};
|
| 120 |
|
| 121 |
jQuery.post( gwolle_gb_frontend_script.ajax_url, data, function(response) {
|
| 122 |
|
| 123 |
jQuery('.gwolle_gb_load_message').toggle();
|
| 124 |
if ( response == 'false' ) {
|
| 125 |
-
jQuery( "
|
| 126 |
gwolle_gb_scroll_on = false;
|
| 127 |
} else {
|
| 128 |
-
jQuery( "
|
| 129 |
}
|
| 130 |
|
| 131 |
/*
|
|
@@ -160,13 +163,15 @@ jQuery(document).ready(function($) {
|
|
| 160 |
* Mangle data for the honeypot.
|
| 161 |
*/
|
| 162 |
jQuery(document).ready(function($) {
|
| 163 |
-
|
| 164 |
-
|
| 165 |
-
|
| 166 |
-
|
| 167 |
-
|
| 168 |
-
|
| 169 |
-
|
|
|
|
|
|
|
| 170 |
});
|
| 171 |
|
| 172 |
|
|
@@ -174,21 +179,20 @@ jQuery(document).ready(function($) {
|
|
| 174 |
* Mangle data for the form timeout.
|
| 175 |
*/
|
| 176 |
jQuery(document).ready(function($) {
|
| 177 |
-
|
| 178 |
-
|
| 179 |
-
|
| 180 |
-
var timeout = gwolle_gb_frontend_script.timeout;
|
| 181 |
-
var timeout2 = gwolle_gb_frontend_script.timeout2;
|
| 182 |
|
| 183 |
-
|
| 184 |
-
|
| 185 |
|
| 186 |
-
|
| 187 |
-
|
| 188 |
|
| 189 |
-
|
| 190 |
-
|
| 191 |
-
}
|
|
|
|
| 192 |
|
| 193 |
|
| 194 |
/*
|
|
@@ -202,9 +206,9 @@ var gwolle_gb_ajax_data = {
|
|
| 202 |
};
|
| 203 |
|
| 204 |
jQuery(document).ready(function($) {
|
| 205 |
-
jQuery( '.gwolle_gb_form_ajax
|
| 206 |
-
|
| 207 |
-
jQuery( '
|
| 208 |
|
| 209 |
// Use an object, arrays are only indexed by integers.
|
| 210 |
var gwolle_gb_ajax_data = {
|
|
@@ -212,26 +216,33 @@ jQuery(document).ready(function($) {
|
|
| 212 |
action: 'gwolle_gb_form_ajax'
|
| 213 |
};
|
| 214 |
|
| 215 |
-
jQuery('.
|
| 216 |
var val = jQuery( this ).prop('value'); // For some reason, some hosts do not see any value here, and data does not get sent.
|
| 217 |
-
var
|
| 218 |
-
|
| 219 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 220 |
if ( checked == true ) {
|
| 221 |
-
gwolle_gb_ajax_data[
|
| 222 |
}
|
| 223 |
} else {
|
| 224 |
-
gwolle_gb_ajax_data[
|
| 225 |
-
/*if ( typeof console != 'undefined' ) {
|
| 226 |
-
console.log( id + ': ' + val );
|
| 227 |
-
console.table( val );
|
| 228 |
-
} */
|
| 229 |
}
|
| 230 |
});
|
| 231 |
-
jQuery('.
|
| 232 |
var val = jQuery( this ).val();
|
| 233 |
-
var
|
| 234 |
-
gwolle_gb_ajax_data[
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 235 |
});
|
| 236 |
|
| 237 |
jQuery.post( gwolle_gb_frontend_script.ajax_url, gwolle_gb_ajax_data, function( response ) {
|
|
@@ -249,29 +260,30 @@ jQuery(document).ready(function($) {
|
|
| 249 |
var gwolle_gb_errors = data['gwolle_gb_errors'];
|
| 250 |
var gwolle_gb_error_fields = data['gwolle_gb_error_fields'];
|
| 251 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 252 |
// we have all the data we expect.
|
| 253 |
if ( typeof data['saved'] == 'number' ) {
|
| 254 |
|
| 255 |
// Show returned messages.
|
| 256 |
-
|
| 257 |
-
|
| 258 |
-
jQuery( '
|
| 259 |
-
|
| 260 |
-
// Remove error class from input fields.
|
| 261 |
-
jQuery( '#gwolle_gb_new_entry input' ).removeClass( 'error' );
|
| 262 |
-
jQuery( '#gwolle_gb_new_entry textarea' ).removeClass( 'error' );
|
| 263 |
|
| 264 |
// Remove form from view.
|
| 265 |
-
jQuery( '
|
| 266 |
-
jQuery( '
|
| 267 |
|
| 268 |
// Prepend entry to the entry list if desired.
|
| 269 |
if ( typeof data['entry'] == 'string' ) {
|
| 270 |
-
jQuery( '
|
| 271 |
}
|
| 272 |
|
| 273 |
// Scroll to messages div. Add 80px to offset for themes with fixed headers.
|
| 274 |
-
var offset = jQuery( '
|
| 275 |
jQuery('html, body').animate({
|
| 276 |
scrollTop: offset
|
| 277 |
}, 200, function() {
|
|
@@ -279,9 +291,9 @@ jQuery(document).ready(function($) {
|
|
| 279 |
});
|
| 280 |
|
| 281 |
// Reset content textarea.
|
| 282 |
-
jQuery( '
|
| 283 |
|
| 284 |
-
jQuery( '
|
| 285 |
|
| 286 |
/*
|
| 287 |
* Add callback for after AJAX request. Used for metabox-handle for new entries.
|
|
@@ -306,17 +318,21 @@ jQuery(document).ready(function($) {
|
|
| 306 |
// Not saved...
|
| 307 |
|
| 308 |
// Show returned messages.
|
| 309 |
-
|
| 310 |
-
|
| 311 |
|
| 312 |
// Add error class to failed input fields.
|
| 313 |
-
jQuery( '.gwolle_gb_form_ajax input' ).removeClass( 'error' );
|
| 314 |
-
jQuery( '.gwolle_gb_form_ajax textarea' ).removeClass( 'error' );
|
| 315 |
jQuery.each( gwolle_gb_error_fields, function( index, value ) {
|
| 316 |
-
jQuery( '
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 317 |
});
|
| 318 |
|
| 319 |
-
jQuery( '
|
| 320 |
|
| 321 |
}
|
| 322 |
} else if (typeof console != "undefined") {
|
| 7 |
* Event for clicking the button, and getting the form visible.
|
| 8 |
*/
|
| 9 |
jQuery(document).ready(function($) {
|
| 10 |
+
jQuery( "div.gwolle-gb-write-button input" ).click(function() {
|
| 11 |
+
var main_div = jQuery( this ).closest( 'div.gwolle-gb' );
|
| 12 |
+
jQuery("div.gwolle-gb-write-button", main_div).slideUp(1000);
|
| 13 |
+
jQuery("form.gwolle-gb-write", main_div).slideDown(1000);
|
| 14 |
return false;
|
| 15 |
});
|
| 16 |
});
|
| 17 |
// And close it again.
|
| 18 |
jQuery(document).ready(function($) {
|
| 19 |
jQuery( "button.gb-notice-dismiss" ).click(function() {
|
| 20 |
+
var main_div = jQuery( this ).closest( 'div.gwolle-gb' );
|
| 21 |
+
jQuery("div.gwolle-gb-write-button", main_div).slideDown(1000);
|
| 22 |
+
jQuery("form.gwolle-gb-write", main_div).slideUp(1000);
|
| 23 |
return false;
|
| 24 |
});
|
| 25 |
});
|
| 36 |
function gwolle_gb_readmore() {
|
| 37 |
jQuery(".gb-entry-content .gwolle-gb-readmore").off('click');
|
| 38 |
jQuery(".gb-entry-content .gwolle-gb-readmore").on('click', function() {
|
| 39 |
+
var content_div = jQuery(this).closest( '.gb-entry-content' );
|
| 40 |
+
jQuery('.gb-entry-excerpt', content_div).css( 'display', 'none' );
|
| 41 |
+
jQuery('.gb-entry-full-content', content_div).slideDown(500);
|
| 42 |
return false;
|
| 43 |
});
|
| 44 |
|
| 45 |
jQuery(".gb-entry-admin_reply .gwolle-gb-readmore").off('click');
|
| 46 |
jQuery(".gb-entry-admin_reply .gwolle-gb-readmore").on('click', function() {
|
| 47 |
+
var content_div = jQuery(this).closest( '.gb-entry-admin_reply' );
|
| 48 |
+
jQuery('.gb-admin_reply-excerpt', content_div).css( 'display', 'none' );
|
| 49 |
+
jQuery('.gb-admin_reply-full-content', content_div).slideDown(500);
|
| 50 |
return false;
|
| 51 |
});
|
| 52 |
}
|
| 63 |
function gwolle_gb_metabox_handle() {
|
| 64 |
jQuery('div.gb-metabox-handle').off('click');
|
| 65 |
jQuery('div.gb-metabox-handle').on('click', function() {
|
| 66 |
+
var entry_div = jQuery(this).closest('div.gb-entry');
|
| 67 |
+
jQuery('div.gb-metabox', entry_div).toggleClass( 'gwolle-gb-invisible' );
|
| 68 |
return false;
|
| 69 |
});
|
| 70 |
jQuery("div.gb-metabox-handle").keypress(function(e) {
|
| 71 |
+
if (e.keyCode == 13) { // Enter key.
|
| 72 |
+
var entry_div = jQuery(this).closest('div.gb-entry');
|
| 73 |
+
jQuery('div.gb-metabox', entry_div).toggleClass( 'gwolle-gb-invisible' );
|
| 74 |
return false;
|
| 75 |
}
|
| 76 |
});
|
| 78 |
}
|
| 79 |
jQuery(document).ready(function($) {
|
| 80 |
jQuery('body').on('click', function( el ) {
|
| 81 |
+
jQuery('div.gb-metabox').addClass( 'gwolle-gb-invisible' );
|
| 82 |
});
|
| 83 |
});
|
| 84 |
|
| 85 |
|
| 86 |
/*
|
| 87 |
* Event for Infinite Scroll. Get more pages when you are at the bottom.
|
| 88 |
+
* This function does not support multiple lists on one page.
|
| 89 |
*/
|
| 90 |
var gwolle_gb_scroll_on = true; // The end has not been reached yet. We still get entries back.
|
| 91 |
var gwolle_gb_scroll_busy = false; // Handle async well. Only one request at a time.
|
| 92 |
var gwolle_gb_scroll_callback = jQuery.Callbacks(); // Callback function to be fired after AJAX request.
|
| 93 |
|
| 94 |
jQuery(document).ready(function($) {
|
| 95 |
+
if ( jQuery( ".gwolle-gb-read" ).hasClass( 'gwolle-gb-infinite' ) ) {
|
| 96 |
var gwolle_gb_scroll_count = 2; // We already have page 1 listed.
|
| 97 |
|
| 98 |
var gwolle_gb_load_message = '<div class="gb-entry gwolle_gb_load_message">' + gwolle_gb_frontend_script.load_message + '</div>' ;
|
| 99 |
+
jQuery( ".gwolle-gb-read" ).append( gwolle_gb_load_message );
|
| 100 |
|
| 101 |
jQuery(window).scroll(function() {
|
| 102 |
// have 10px diff for sensitivity.
|
| 103 |
+
if ( ( jQuery(window).scrollTop() > jQuery(document).height() - jQuery(window).height() - 10 ) && gwolle_gb_scroll_on == true && gwolle_gb_scroll_busy == false) {
|
| 104 |
gwolle_gb_scroll_busy = true;
|
| 105 |
gwolle_gb_load_page(gwolle_gb_scroll_count);
|
| 106 |
gwolle_gb_scroll_count++;
|
| 118 |
action: 'gwolle_gb_infinite_scroll',
|
| 119 |
pageNum: page,
|
| 120 |
permalink: window.location.href,
|
| 121 |
+
book_id: jQuery( ".gwolle-gb-read" ).attr( "data-book_id" )
|
| 122 |
};
|
| 123 |
|
| 124 |
jQuery.post( gwolle_gb_frontend_script.ajax_url, data, function(response) {
|
| 125 |
|
| 126 |
jQuery('.gwolle_gb_load_message').toggle();
|
| 127 |
if ( response == 'false' ) {
|
| 128 |
+
jQuery( ".gwolle-gb-read" ).append( gwolle_gb_end_message );
|
| 129 |
gwolle_gb_scroll_on = false;
|
| 130 |
} else {
|
| 131 |
+
jQuery( ".gwolle-gb-read" ).append( response );
|
| 132 |
}
|
| 133 |
|
| 134 |
/*
|
| 163 |
* Mangle data for the honeypot.
|
| 164 |
*/
|
| 165 |
jQuery(document).ready(function($) {
|
| 166 |
+
jQuery( 'form.gwolle-gb-write' ).each( function( index, form ) {
|
| 167 |
+
var honeypot = gwolle_gb_frontend_script.honeypot;
|
| 168 |
+
var honeypot2 = gwolle_gb_frontend_script.honeypot2;
|
| 169 |
+
var val = jQuery( 'input.' + honeypot, form ).val();
|
| 170 |
+
if ( val > 0 ) {
|
| 171 |
+
jQuery( 'input.' + honeypot2, form ).val( val );
|
| 172 |
+
jQuery( 'input.' + honeypot, form ).val( '' );
|
| 173 |
+
}
|
| 174 |
+
});
|
| 175 |
});
|
| 176 |
|
| 177 |
|
| 179 |
* Mangle data for the form timeout.
|
| 180 |
*/
|
| 181 |
jQuery(document).ready(function($) {
|
| 182 |
+
jQuery( 'form.gwolle-gb-write' ).each( function( index, form ) {
|
| 183 |
+
var timeout = gwolle_gb_frontend_script.timeout;
|
| 184 |
+
var timeout2 = gwolle_gb_frontend_script.timeout2;
|
|
|
|
|
|
|
| 185 |
|
| 186 |
+
var timer = new Number( jQuery( 'input.' + timeout, form ).val() );
|
| 187 |
+
var timer2 = new Number( jQuery( 'input.' + timeout2, form ).val() );
|
| 188 |
|
| 189 |
+
var timer = timer - 1;
|
| 190 |
+
var timer2 = timer2 + 1;
|
| 191 |
|
| 192 |
+
jQuery( 'input.' + timeout, form ).val( timer );
|
| 193 |
+
jQuery( 'input.' + timeout2, form ).val( timer2 );
|
| 194 |
+
});
|
| 195 |
+
});
|
| 196 |
|
| 197 |
|
| 198 |
/*
|
| 206 |
};
|
| 207 |
|
| 208 |
jQuery(document).ready(function($) {
|
| 209 |
+
jQuery( '.gwolle_gb_form_ajax input.gwolle_gb_submit' ).click( function( submit_button ) {
|
| 210 |
+
var main_div = jQuery( this ).closest( 'div.gwolle-gb' );
|
| 211 |
+
jQuery( '.gwolle_gb_submit_ajax_icon', main_div ).css( 'display', 'inline' );
|
| 212 |
|
| 213 |
// Use an object, arrays are only indexed by integers.
|
| 214 |
var gwolle_gb_ajax_data = {
|
| 216 |
action: 'gwolle_gb_form_ajax'
|
| 217 |
};
|
| 218 |
|
| 219 |
+
jQuery('form.gwolle-gb-write input', main_div).each(function( index, value ) {
|
| 220 |
var val = jQuery( this ).prop('value'); // For some reason, some hosts do not see any value here, and data does not get sent.
|
| 221 |
+
var name = jQuery( this ).attr('name');
|
| 222 |
+
var type = jQuery( this ).attr('type');
|
| 223 |
+
if ( type == 'checkbox' ) {
|
| 224 |
+
var checked = jQuery( this, main_div ).prop('checked');
|
| 225 |
+
if ( checked == true ) {
|
| 226 |
+
gwolle_gb_ajax_data[name] = 'on'; // Mimick standard post value.
|
| 227 |
+
}
|
| 228 |
+
} else if ( type == 'radio' ) {
|
| 229 |
+
var checked = jQuery( this, main_div ).prop('checked');
|
| 230 |
if ( checked == true ) {
|
| 231 |
+
gwolle_gb_ajax_data[name] = val;
|
| 232 |
}
|
| 233 |
} else {
|
| 234 |
+
gwolle_gb_ajax_data[name] = val;
|
|
|
|
|
|
|
|
|
|
|
|
|
| 235 |
}
|
| 236 |
});
|
| 237 |
+
jQuery('form.gwolle-gb-write textarea', main_div).each(function( index, value ) {
|
| 238 |
var val = jQuery( this ).val();
|
| 239 |
+
var name = jQuery( this ).attr('name');
|
| 240 |
+
gwolle_gb_ajax_data[name] = val;
|
| 241 |
+
});
|
| 242 |
+
jQuery( 'form.gwolle-gb-write select', main_div ).each(function( index, value ) {
|
| 243 |
+
var val = jQuery( value ).val();
|
| 244 |
+
var name = jQuery( value ).attr('name');
|
| 245 |
+
gwolle_gb_ajax_data[name] = val;
|
| 246 |
});
|
| 247 |
|
| 248 |
jQuery.post( gwolle_gb_frontend_script.ajax_url, gwolle_gb_ajax_data, function( response ) {
|
| 260 |
var gwolle_gb_errors = data['gwolle_gb_errors'];
|
| 261 |
var gwolle_gb_error_fields = data['gwolle_gb_error_fields'];
|
| 262 |
|
| 263 |
+
jQuery( '.gwolle_gb_form_ajax input' ).removeClass( 'error' );
|
| 264 |
+
jQuery( '.gwolle_gb_form_ajax select' ).removeClass( 'error' );
|
| 265 |
+
jQuery( '.gwolle_gb_form_ajax textarea' ).removeClass( 'error' );
|
| 266 |
+
jQuery( '.gwolle_gb_form_ajax div.input').removeClass( 'error' );
|
| 267 |
+
|
| 268 |
// we have all the data we expect.
|
| 269 |
if ( typeof data['saved'] == 'number' ) {
|
| 270 |
|
| 271 |
// Show returned messages.
|
| 272 |
+
jQuery( '.gwolle_gb_messages_bottom_container', main_div ).html('');
|
| 273 |
+
jQuery( '.gwolle_gb_messages_top_container', main_div ).html('<div class="gwolle_gb_messages">' + data['gwolle_gb_messages'] + '</div>');
|
| 274 |
+
jQuery( '.gwolle_gb_messages', main_div ).removeClass( 'error' );
|
|
|
|
|
|
|
|
|
|
|
|
|
| 275 |
|
| 276 |
// Remove form from view.
|
| 277 |
+
jQuery( '.gwolle-gb-write', main_div ).css( 'display', 'none' );
|
| 278 |
+
jQuery( '.gwolle-gb-write-button', main_div ).css( 'display', 'block' );
|
| 279 |
|
| 280 |
// Prepend entry to the entry list if desired.
|
| 281 |
if ( typeof data['entry'] == 'string' ) {
|
| 282 |
+
jQuery( '.gwolle-gb-read', main_div ).prepend( data['entry'] );
|
| 283 |
}
|
| 284 |
|
| 285 |
// Scroll to messages div. Add 80px to offset for themes with fixed headers.
|
| 286 |
+
var offset = jQuery( '.gwolle_gb_messages_top_container' ).offset().top - 80;
|
| 287 |
jQuery('html, body').animate({
|
| 288 |
scrollTop: offset
|
| 289 |
}, 200, function() {
|
| 291 |
});
|
| 292 |
|
| 293 |
// Reset content textarea.
|
| 294 |
+
jQuery( 'textarea', main_div ).val('');
|
| 295 |
|
| 296 |
+
jQuery( '.gwolle_gb_submit_ajax_icon', main_div ).css( 'display', 'none' );
|
| 297 |
|
| 298 |
/*
|
| 299 |
* Add callback for after AJAX request. Used for metabox-handle for new entries.
|
| 318 |
// Not saved...
|
| 319 |
|
| 320 |
// Show returned messages.
|
| 321 |
+
jQuery( '.gwolle_gb_messages_top_container', main_div ).html('');
|
| 322 |
+
jQuery( '.gwolle_gb_messages_bottom_container', main_div ).html('<div class="gwolle_gb_messages" class="error">' + data['gwolle_gb_messages'] + '</div>');
|
| 323 |
|
| 324 |
// Add error class to failed input fields.
|
|
|
|
|
|
|
| 325 |
jQuery.each( gwolle_gb_error_fields, function( index, value ) {
|
| 326 |
+
jQuery( 'select.' + value, main_div ).addClass( 'error' );
|
| 327 |
+
jQuery( 'textarea.' + value, main_div ).addClass( 'error' );
|
| 328 |
+
jQuery( 'input.' + value, main_div ).addClass( 'error' );
|
| 329 |
+
var type = jQuery( 'input.' + value, main_div ).attr('type');
|
| 330 |
+
if ( typeof type != 'undefined' && type == 'radio' ) {
|
| 331 |
+
jQuery( 'input.' + value, main_div ).closest('div.input').addClass( 'error' );
|
| 332 |
+
}
|
| 333 |
});
|
| 334 |
|
| 335 |
+
jQuery( '.gwolle_gb_submit_ajax_icon', main_div ).css( 'display', 'none' );
|
| 336 |
|
| 337 |
}
|
| 338 |
} else if (typeof console != "undefined") {
|
frontend/js/sss/sss.js
CHANGED
|
@@ -7,11 +7,11 @@ $.fn.sss = function(options) {
|
|
| 7 |
// Options
|
| 8 |
|
| 9 |
var settings = $.extend({
|
| 10 |
-
|
| 11 |
-
|
| 12 |
-
|
| 13 |
-
|
| 14 |
-
|
| 15 |
}, options);
|
| 16 |
|
| 17 |
return this.each(function() {
|
|
@@ -36,48 +36,49 @@ $.fn.sss = function(options) {
|
|
| 36 |
// Reset Slideshow
|
| 37 |
|
| 38 |
reset_timer = settings.slideShow ? function() {
|
| 39 |
-
|
| 40 |
-
|
| 41 |
} : $.noop;
|
| 42 |
|
| 43 |
// Animate Slider
|
| 44 |
|
| 45 |
function get_height(target) {
|
| 46 |
-
|
| 47 |
}
|
| 48 |
|
| 49 |
function animate_slide(target) {
|
| 50 |
-
|
| 51 |
-
|
| 52 |
-
|
|
|
|
| 53 |
|
| 54 |
-
|
| 55 |
-
|
| 56 |
|
| 57 |
-
|
| 58 |
-
|
| 59 |
-
|
| 60 |
-
|
| 61 |
-
reset_timer();
|
| 62 |
|
| 63 |
-
|
|
|
|
|
|
|
| 64 |
|
| 65 |
// Next Slide
|
| 66 |
|
| 67 |
function next_slide() {
|
| 68 |
-
|
| 69 |
-
|
| 70 |
}
|
| 71 |
|
| 72 |
// Prev Slide
|
| 73 |
|
| 74 |
function prev_slide() {
|
| 75 |
-
|
| 76 |
-
|
| 77 |
}
|
| 78 |
|
| 79 |
if (settings.arrows) {
|
| 80 |
-
|
| 81 |
}
|
| 82 |
|
| 83 |
next = slider.find('.sssnext'),
|
|
@@ -85,20 +86,34 @@ $.fn.sss = function(options) {
|
|
| 85 |
|
| 86 |
$(window).on('load', function() {
|
| 87 |
|
| 88 |
-
|
| 89 |
-
|
| 90 |
-
|
| 91 |
-
|
|
|
|
|
|
|
|
|
|
| 92 |
});
|
| 93 |
|
| 94 |
animate_slide(target);
|
| 95 |
|
| 96 |
$(document).keydown(function(e) {
|
| 97 |
-
|
| 98 |
-
|
| 99 |
-
|
|
|
|
|
|
|
|
|
|
| 100 |
});
|
| 101 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 102 |
});
|
| 103 |
// End
|
| 104 |
|
| 7 |
// Options
|
| 8 |
|
| 9 |
var settings = $.extend({
|
| 10 |
+
slideShow : true,
|
| 11 |
+
startOn : 0,
|
| 12 |
+
speed : 3500,
|
| 13 |
+
transition : 400,
|
| 14 |
+
arrows : true
|
| 15 |
}, options);
|
| 16 |
|
| 17 |
return this.each(function() {
|
| 36 |
// Reset Slideshow
|
| 37 |
|
| 38 |
reset_timer = settings.slideShow ? function() {
|
| 39 |
+
clearTimeout(timer);
|
| 40 |
+
timer = setTimeout(next_slide, settings.speed);
|
| 41 |
} : $.noop;
|
| 42 |
|
| 43 |
// Animate Slider
|
| 44 |
|
| 45 |
function get_height(target) {
|
| 46 |
+
return ((slides.eq(target).height() / slider.width()) * 100) + '%';
|
| 47 |
}
|
| 48 |
|
| 49 |
function animate_slide(target) {
|
| 50 |
+
if ( $( wrapper ).hasClass( 'sss-hover' ) ) { reset_timer(); return; }
|
| 51 |
+
if (!animating) {
|
| 52 |
+
animating = true;
|
| 53 |
+
var target_slide = slides.eq(target);
|
| 54 |
|
| 55 |
+
target_slide.fadeIn(transition);
|
| 56 |
+
slides.not(target_slide).fadeOut(transition);
|
| 57 |
|
| 58 |
+
slider.animate({paddingBottom: get_height(target)}, transition, function() {
|
| 59 |
+
animating = false;
|
| 60 |
+
});
|
|
|
|
|
|
|
| 61 |
|
| 62 |
+
reset_timer();
|
| 63 |
+
}
|
| 64 |
+
};
|
| 65 |
|
| 66 |
// Next Slide
|
| 67 |
|
| 68 |
function next_slide() {
|
| 69 |
+
target = target === slide_count - 1 ? 0 : target + 1;
|
| 70 |
+
animate_slide(target);
|
| 71 |
}
|
| 72 |
|
| 73 |
// Prev Slide
|
| 74 |
|
| 75 |
function prev_slide() {
|
| 76 |
+
target = target === 0 ? slide_count - 1 : target - 1;
|
| 77 |
+
animate_slide(target);
|
| 78 |
}
|
| 79 |
|
| 80 |
if (settings.arrows) {
|
| 81 |
+
slider.append('<div class="sssprev"/>', '<div class="sssnext"/>');
|
| 82 |
}
|
| 83 |
|
| 84 |
next = slider.find('.sssnext'),
|
| 86 |
|
| 87 |
$(window).on('load', function() {
|
| 88 |
|
| 89 |
+
slider.css({paddingBottom: get_height(target)}).click(function(e) {
|
| 90 |
+
clicked = $(e.target);
|
| 91 |
+
if (clicked.is(next)) {
|
| 92 |
+
next_slide()
|
| 93 |
+
} else if (clicked.is(prev)) {
|
| 94 |
+
prev_slide()
|
| 95 |
+
}
|
| 96 |
});
|
| 97 |
|
| 98 |
animate_slide(target);
|
| 99 |
|
| 100 |
$(document).keydown(function(e) {
|
| 101 |
+
key = e.keyCode;
|
| 102 |
+
if (key === 39) {
|
| 103 |
+
next_slide()
|
| 104 |
+
} else if (key === 37) {
|
| 105 |
+
prev_slide()
|
| 106 |
+
}
|
| 107 |
});
|
| 108 |
|
| 109 |
+
$( wrapper ).hover(
|
| 110 |
+
function() {
|
| 111 |
+
$( wrapper ).addClass( 'sss-hover' );
|
| 112 |
+
}, function() {
|
| 113 |
+
$( wrapper ).removeClass( 'sss-hover' );
|
| 114 |
+
}
|
| 115 |
+
);
|
| 116 |
+
|
| 117 |
});
|
| 118 |
// End
|
| 119 |
|
frontend/markitup/jquery.markitup.js
CHANGED
|
@@ -681,15 +681,11 @@ var marktitup_mySettings = {
|
|
| 681 |
markupSet: [
|
| 682 |
{name: gwolle_gb_localize.bold, key:'B', openWith:'(!([b]|!|<b>)!)', closeWith:'(!([/b]|!|</b>)!)' },
|
| 683 |
{name: gwolle_gb_localize.italic, key:'I', openWith:'(!([i]|!|<i>)!)', closeWith:'(!([/i]|!|</i>)!)' },
|
| 684 |
-
{separator:'---------------' },
|
| 685 |
{name: gwolle_gb_localize.bullet, openWith:'[li]', closeWith:'[/li]', multiline:true, openBlockWith:'[ul]\n', closeBlockWith:'\n[/ul]'},
|
| 686 |
{name: gwolle_gb_localize.numeric, openWith:'[li]', closeWith:'[/li]', multiline:true, openBlockWith:'[ol]\n', closeBlockWith:'\n[/ol]'},
|
| 687 |
-
{
|
| 688 |
-
{name: gwolle_gb_localize.
|
| 689 |
-
{name: gwolle_gb_localize.link, key:'L', openWith:'[url href=[![' + gwolle_gb_localize.link + ':!:http://]!]]', closeWith:'[/url]', placeHolder: gwolle_gb_localize.linktext },
|
| 690 |
-
{separator:'---------------' },
|
| 691 |
{name: gwolle_gb_localize.clean, className:'clean', replaceWith:function(markitup) { return markitup.selection.replace(/\[(.*?)\]/g, "") } },
|
| 692 |
-
{separator:'---------------' },
|
| 693 |
{name: gwolle_gb_localize.emoji, className:'emoji' }
|
| 694 |
]
|
| 695 |
}
|
|
@@ -698,8 +694,9 @@ var marktitup_mySettings = {
|
|
| 698 |
jQuery(document).ready(function() {
|
| 699 |
|
| 700 |
/* Initialize BBcode editor */
|
| 701 |
-
jQuery('
|
| 702 |
-
jQuery('#
|
|
|
|
| 703 |
|
| 704 |
|
| 705 |
/* Slide the Emoji rows (frontend, main editor) */
|
| 681 |
markupSet: [
|
| 682 |
{name: gwolle_gb_localize.bold, key:'B', openWith:'(!([b]|!|<b>)!)', closeWith:'(!([/b]|!|</b>)!)' },
|
| 683 |
{name: gwolle_gb_localize.italic, key:'I', openWith:'(!([i]|!|<i>)!)', closeWith:'(!([/i]|!|</i>)!)' },
|
|
|
|
| 684 |
{name: gwolle_gb_localize.bullet, openWith:'[li]', closeWith:'[/li]', multiline:true, openBlockWith:'[ul]\n', closeBlockWith:'\n[/ul]'},
|
| 685 |
{name: gwolle_gb_localize.numeric, openWith:'[li]', closeWith:'[/li]', multiline:true, openBlockWith:'[ol]\n', closeBlockWith:'\n[/ol]'},
|
| 686 |
+
{name: gwolle_gb_localize.picture, key:'P', replaceWith:'[img][![' + gwolle_gb_localize.source + ':!:https://]!][/img]' },
|
| 687 |
+
{name: gwolle_gb_localize.link, key:'L', openWith:'[url href=[![' + gwolle_gb_localize.link + ':!:https://]!]]', closeWith:'[/url]', placeHolder: gwolle_gb_localize.linktext },
|
|
|
|
|
|
|
| 688 |
{name: gwolle_gb_localize.clean, className:'clean', replaceWith:function(markitup) { return markitup.selection.replace(/\[(.*?)\]/g, "") } },
|
|
|
|
| 689 |
{name: gwolle_gb_localize.emoji, className:'emoji' }
|
| 690 |
]
|
| 691 |
}
|
| 694 |
jQuery(document).ready(function() {
|
| 695 |
|
| 696 |
/* Initialize BBcode editor */
|
| 697 |
+
jQuery('.gwolle-gb-write textarea.gwolle_gb_content').markItUp(marktitup_mySettings);
|
| 698 |
+
jQuery('#gwolle_gb_editor textarea#gwolle_gb_content').markItUp(marktitup_mySettings);
|
| 699 |
+
jQuery('#gwolle_gb_editor textarea#gwolle_gb_admin_reply').markItUp(marktitup_mySettings);
|
| 700 |
|
| 701 |
|
| 702 |
/* Slide the Emoji rows (frontend, main editor) */
|
frontend/markitup/style.css
CHANGED
|
@@ -2,7 +2,8 @@
|
|
| 2 |
// markItUp! Universal MarkUp Engine, JQuery plugin
|
| 3 |
// By Jay Salvat - http://markitup.jaysalvat.com/
|
| 4 |
// ------------------------------------------------------------------*/
|
| 5 |
-
|
|
|
|
| 6 |
.markItUp * {
|
| 7 |
margin:0px;
|
| 8 |
padding:0px;
|
|
@@ -17,7 +18,7 @@
|
|
| 17 |
clear:both;
|
| 18 |
overflow:auto;
|
| 19 |
}
|
| 20 |
-
.markItUpPreviewFrame
|
| 21 |
overflow:auto;
|
| 22 |
background-color:#FFFFFF;
|
| 23 |
border:1px solid #3C769D;
|
|
@@ -39,8 +40,8 @@
|
|
| 39 |
}
|
| 40 |
/***************************************************************************************/
|
| 41 |
/* first row of buttons */
|
| 42 |
-
|
| 43 |
-
|
| 44 |
/* Reset for theme's CSS */
|
| 45 |
margin: 0;
|
| 46 |
padding: 0;
|
|
@@ -98,21 +99,21 @@
|
|
| 98 |
.markItUpHeader ul ul ul li {
|
| 99 |
float:none;
|
| 100 |
}
|
| 101 |
-
|
| 102 |
-
|
| 103 |
display: block;
|
| 104 |
box-sizing: content-box;
|
| 105 |
width: 20px;
|
| 106 |
height: 20px;
|
| 107 |
-
text-indent
|
| 108 |
-
background-repeat:no-repeat;
|
| 109 |
-
padding: 3px
|
| 110 |
margin: 0px;
|
| 111 |
}
|
| 112 |
-
|
| 113 |
-
|
| 114 |
-
|
| 115 |
-
|
| 116 |
box-sizing: content-box;
|
| 117 |
}
|
| 118 |
.markItUpHeader ul ul a {
|
|
@@ -123,8 +124,8 @@
|
|
| 123 |
padding:5px 5px 5px 25px;
|
| 124 |
background-position:2px 50%;
|
| 125 |
}
|
| 126 |
-
|
| 127 |
-
|
| 128 |
color:#FFF;
|
| 129 |
background-color:#3C769D;
|
| 130 |
}
|
| 2 |
// markItUp! Universal MarkUp Engine, JQuery plugin
|
| 3 |
// By Jay Salvat - http://markitup.jaysalvat.com/
|
| 4 |
// ------------------------------------------------------------------*/
|
| 5 |
+
.gwolle-gb .markItUp *,
|
| 6 |
+
#gwolle_gb_editor .markItUp *,
|
| 7 |
.markItUp * {
|
| 8 |
margin:0px;
|
| 9 |
padding:0px;
|
| 18 |
clear:both;
|
| 19 |
overflow:auto;
|
| 20 |
}
|
| 21 |
+
.markItUpPreviewFrame {
|
| 22 |
overflow:auto;
|
| 23 |
background-color:#FFFFFF;
|
| 24 |
border:1px solid #3C769D;
|
| 40 |
}
|
| 41 |
/***************************************************************************************/
|
| 42 |
/* first row of buttons */
|
| 43 |
+
.gwolle-gb .markItUpHeader ul li,
|
| 44 |
+
#gwolle_gb_editor .markItUpHeader ul li {
|
| 45 |
/* Reset for theme's CSS */
|
| 46 |
margin: 0;
|
| 47 |
padding: 0;
|
| 99 |
.markItUpHeader ul ul ul li {
|
| 100 |
float:none;
|
| 101 |
}
|
| 102 |
+
.gwolle-gb .markItUpHeader ul a,
|
| 103 |
+
#gwolle_gb_editor .markItUpHeader ul a {
|
| 104 |
display: block;
|
| 105 |
box-sizing: content-box;
|
| 106 |
width: 20px;
|
| 107 |
height: 20px;
|
| 108 |
+
text-indent: -10000px;
|
| 109 |
+
background-repeat: no-repeat;
|
| 110 |
+
padding: 3px 4px 1px 4px;
|
| 111 |
margin: 0px;
|
| 112 |
}
|
| 113 |
+
.gwolle-gb .markItUpHeader ul a::before,
|
| 114 |
+
.gwolle-gb .markItUpHeader ul a::after,
|
| 115 |
+
#gwolle_gb_editor .markItUpHeader ul a::before,
|
| 116 |
+
#gwolle_gb_editor .markItUpHeader ul a::after {
|
| 117 |
box-sizing: content-box;
|
| 118 |
}
|
| 119 |
.markItUpHeader ul ul a {
|
| 124 |
padding:5px 5px 5px 25px;
|
| 125 |
background-position:2px 50%;
|
| 126 |
}
|
| 127 |
+
.gwolle-gb .markItUpHeader ul ul a:hover,
|
| 128 |
+
#gwolle_gb_editor .markItUpHeader ul ul a:hover {
|
| 129 |
color:#FFF;
|
| 130 |
background-color:#3C769D;
|
| 131 |
}
|
functions/gb-akismet.php
CHANGED
|
@@ -1,7 +1,7 @@
|
|
| 1 |
<?php
|
| 2 |
/**
|
| 3 |
* Akismet Function
|
| 4 |
-
* Akismet API:
|
| 5 |
* Copied and edited from Contact Form 7
|
| 6 |
*/
|
| 7 |
|
|
@@ -84,7 +84,7 @@ function gwolle_gb_akismet( $entry, $action ) {
|
|
| 84 |
$comment['referrer'] = $_SERVER['HTTP_REFERER'];
|
| 85 |
}
|
| 86 |
|
| 87 |
-
//
|
| 88 |
$comment['comment_type'] = 'comment';
|
| 89 |
|
| 90 |
$permalink = gwolle_gb_get_permalink( get_the_ID() );
|
| 1 |
<?php
|
| 2 |
/**
|
| 3 |
* Akismet Function
|
| 4 |
+
* Akismet API: https://akismet.com/development/api/
|
| 5 |
* Copied and edited from Contact Form 7
|
| 6 |
*/
|
| 7 |
|
| 84 |
$comment['referrer'] = $_SERVER['HTTP_REFERER'];
|
| 85 |
}
|
| 86 |
|
| 87 |
+
// https://blog.akismet.com/2012/06/19/pro-tip-tell-us-your-comment_type/
|
| 88 |
$comment['comment_type'] = 'comment';
|
| 89 |
|
| 90 |
$permalink = gwolle_gb_get_permalink( get_the_ID() );
|
functions/gb-bbcode_emoji.php
CHANGED
|
@@ -41,7 +41,7 @@ function gwolle_gb_bbcode_parse( $str ) {
|
|
| 41 |
// First images, then links, so we support images inside links.
|
| 42 |
$bbcode_img_referrer = apply_filters( 'gwolle_gb_bbcode_img_referrer', 'no-referrer' );
|
| 43 |
$pattern = "#\[img\]([^\[]*)\[/img\]#i";
|
| 44 |
-
$replace = '<img src="\\1" alt="" referrerpolicy="' . $bbcode_img_referrer . '" />';
|
| 45 |
$str = preg_replace($pattern, $replace, $str);
|
| 46 |
|
| 47 |
// Links with quotes.
|
| 41 |
// First images, then links, so we support images inside links.
|
| 42 |
$bbcode_img_referrer = apply_filters( 'gwolle_gb_bbcode_img_referrer', 'no-referrer' );
|
| 43 |
$pattern = "#\[img\]([^\[]*)\[/img\]#i";
|
| 44 |
+
$replace = '<img src="\\1" alt="" referrerpolicy="' . $bbcode_img_referrer . '" loading="lazy" />';
|
| 45 |
$str = preg_replace($pattern, $replace, $str);
|
| 46 |
|
| 47 |
// Links with quotes.
|
functions/gb-class-entry.php
CHANGED
|
@@ -13,25 +13,31 @@ if ( strpos($_SERVER['PHP_SELF'], basename(__FILE__) )) {
|
|
| 13 |
* Class gwolle_gb_entry
|
| 14 |
* Each instance is an entry in the guestbook.
|
| 15 |
*
|
| 16 |
-
*
|
| 17 |
-
*
|
| 18 |
-
* $
|
| 19 |
-
*
|
| 20 |
-
*
|
| 21 |
-
*
|
| 22 |
-
*
|
| 23 |
-
* $
|
| 24 |
-
* $
|
| 25 |
-
* $
|
| 26 |
-
* $
|
| 27 |
-
* $
|
| 28 |
-
* $
|
| 29 |
-
* $
|
| 30 |
-
* $
|
| 31 |
-
* $
|
| 32 |
-
* $
|
| 33 |
-
* $
|
| 34 |
-
* $
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 35 |
*
|
| 36 |
*/
|
| 37 |
|
|
@@ -56,7 +62,7 @@ class gwolle_gb_entry {
|
|
| 56 |
$this->author_ip = (string) "";
|
| 57 |
$this->author_host = (string) "";
|
| 58 |
$this->content = (string) "";
|
| 59 |
-
$this->datetime = (
|
| 60 |
$this->ischecked = (int) 0;
|
| 61 |
$this->checkedby = (int) 0;
|
| 62 |
$this->istrash = (int) 0;
|
|
@@ -162,7 +168,7 @@ class gwolle_gb_entry {
|
|
| 162 |
'author_ip' => $data['author_ip'],
|
| 163 |
'author_host' => $data['author_host'],
|
| 164 |
'content' => stripslashes($data['content']),
|
| 165 |
-
'datetime' => $data['datetime'],
|
| 166 |
'ischecked' => (int) $data['ischecked'],
|
| 167 |
'checkedby' => (int) $data['checkedby'],
|
| 168 |
'istrash' => (int) $data['istrash'],
|
|
@@ -469,13 +475,13 @@ class gwolle_gb_entry {
|
|
| 469 |
public function set_date($date = NULL) {
|
| 470 |
_deprecated_function( __FUNCTION__, ' 1.4.2', 'set_datetime()' );
|
| 471 |
}
|
| 472 |
-
public function set_datetime($
|
| 473 |
-
$
|
| 474 |
-
if ( ! $
|
| 475 |
-
$
|
| 476 |
}
|
| 477 |
-
if ($
|
| 478 |
-
$this->datetime = $
|
| 479 |
}
|
| 480 |
}
|
| 481 |
public function set_ischecked($ischecked) {
|
| 13 |
* Class gwolle_gb_entry
|
| 14 |
* Each instance is an entry in the guestbook.
|
| 15 |
*
|
| 16 |
+
* Member variables are set to protected, you are supposed to use setter and getter functions.
|
| 17 |
+
*
|
| 18 |
+
* $datetime is a UNIX timestamp in local time.
|
| 19 |
+
* This does not really exist, since a UNIX timestamp is always GMT.
|
| 20 |
+
* For backwards compatibility this is used even though it is wrong.
|
| 21 |
+
*
|
| 22 |
+
* Variable: Database field: Type in DB Type in PHP Description: Value when saving in db:
|
| 23 |
+
* $id id int(10) int id of the entry/row/instance required, autoincrement
|
| 24 |
+
* $author_name author_name text string name of the author required
|
| 25 |
+
* $author_id author_id int(5) int author is also registered user required, default 0
|
| 26 |
+
* $author_email author_email text string email address of the author required
|
| 27 |
+
* $author_origin author_origin text string city of the author required
|
| 28 |
+
* $author_website author_website text string website of the author required
|
| 29 |
+
* $author_ip author_ip text string ip address of the author required
|
| 30 |
+
* $author_host author_host text string hostname of that ip address required
|
| 31 |
+
* $content content longtext string content of the entry required
|
| 32 |
+
* $date date varchar(10) date of posting the entry, timestamp deprecated, use datetime which is an int, not varchar (sorting goes wrong).
|
| 33 |
+
* $datetime datetime bigint(8) int date of posting the entry, timestamp required, local timestamp
|
| 34 |
+
* $ischecked ischecked tinyint(1) int checked/moderated by an admin, 0 or 1 required, default 0
|
| 35 |
+
* $checkedby checkedby int(5) int admin who checked/moderated this entry required, default 0
|
| 36 |
+
* $istrash istrash varchar(1) int entry is placed in the trashbin, 0 or 1 required, default 0
|
| 37 |
+
* $isspam isspam varchar(1) int entry is considered as spam, 0 or 1 required, default 0
|
| 38 |
+
* $admin_reply admin_reply longtext string content of the reply from an admin required, default empty
|
| 39 |
+
* $admin_reply_uid admin_reply_uid int(5) int user_id of the admin that replied required, default 0
|
| 40 |
+
* $book_id book_id int(8) int the book in which the entry is placed required, default 1
|
| 41 |
*
|
| 42 |
*/
|
| 43 |
|
| 62 |
$this->author_ip = (string) "";
|
| 63 |
$this->author_host = (string) "";
|
| 64 |
$this->content = (string) "";
|
| 65 |
+
$this->datetime = (int) current_time( 'timestamp' );
|
| 66 |
$this->ischecked = (int) 0;
|
| 67 |
$this->checkedby = (int) 0;
|
| 68 |
$this->istrash = (int) 0;
|
| 168 |
'author_ip' => $data['author_ip'],
|
| 169 |
'author_host' => $data['author_host'],
|
| 170 |
'content' => stripslashes($data['content']),
|
| 171 |
+
'datetime' => (int) $data['datetime'],
|
| 172 |
'ischecked' => (int) $data['ischecked'],
|
| 173 |
'checkedby' => (int) $data['checkedby'],
|
| 174 |
'istrash' => (int) $data['istrash'],
|
| 475 |
public function set_date($date = NULL) {
|
| 476 |
_deprecated_function( __FUNCTION__, ' 1.4.2', 'set_datetime()' );
|
| 477 |
}
|
| 478 |
+
public function set_datetime($datetime = 0) {
|
| 479 |
+
$datetime = intval($datetime); // timestamp can be cast to int.
|
| 480 |
+
if ( ! $datetime ) {
|
| 481 |
+
$datetime = current_time( 'timestamp' );
|
| 482 |
}
|
| 483 |
+
if ($datetime) {
|
| 484 |
+
$this->datetime = $datetime;
|
| 485 |
}
|
| 486 |
}
|
| 487 |
public function set_ischecked($ischecked) {
|
functions/gb-debug.php
CHANGED
|
@@ -187,11 +187,11 @@ function gwolle_gb_test_add_entry( $emoji = false ) {
|
|
| 187 |
'author_id' => 0,
|
| 188 |
'author_email' => 'test@example.com',
|
| 189 |
'author_origin' => 'Zwolle',
|
| 190 |
-
'author_website' => '
|
| 191 |
'author_ip' => '127.0.0.1',
|
| 192 |
'author_host' => 'example.com',
|
| 193 |
'content' => $content,
|
| 194 |
-
'datetime' =>
|
| 195 |
'ischecked' => 0,
|
| 196 |
'checkedby' => 0,
|
| 197 |
'istrash' => 1,
|
| 187 |
'author_id' => 0,
|
| 188 |
'author_email' => 'test@example.com',
|
| 189 |
'author_origin' => 'Zwolle',
|
| 190 |
+
'author_website' => 'https://example.com',
|
| 191 |
'author_ip' => '127.0.0.1',
|
| 192 |
'author_host' => 'example.com',
|
| 193 |
'content' => $content,
|
| 194 |
+
'datetime' => time(),
|
| 195 |
'ischecked' => 0,
|
| 196 |
'checkedby' => 0,
|
| 197 |
'istrash' => 1,
|
functions/gb-settings.php
CHANGED
|
@@ -11,6 +11,7 @@ if ( strpos($_SERVER['PHP_SELF'], basename(__FILE__) )) {
|
|
| 11 |
* Register Settings
|
| 12 |
*/
|
| 13 |
function gwolle_gb_register_settings() {
|
|
|
|
| 14 |
register_setting( 'gwolle_gb_options', 'gwolle_gb-admin_style', 'strval' ); // 'false'
|
| 15 |
register_setting( 'gwolle_gb_options', 'gwolle_gb-adminMailContent', 'strval' ); // empty by default
|
| 16 |
register_setting( 'gwolle_gb_options', 'gwolle_gb-akismet-active', 'strval' ); // 'false'
|
|
@@ -20,7 +21,7 @@ function gwolle_gb_register_settings() {
|
|
| 20 |
register_setting( 'gwolle_gb_options', 'gwolle_gb-entries_per_page', 'intval' ); // 20
|
| 21 |
register_setting( 'gwolle_gb_options', 'gwolle_gb-entriesPerPage', 'intval' ); // 20
|
| 22 |
register_setting( 'gwolle_gb_options', 'gwolle_gb-excerpt_length', 'intval' ); // 0
|
| 23 |
-
register_setting( 'gwolle_gb_options', 'gwolle_gb-form', '
|
| 24 |
register_setting( 'gwolle_gb_options', 'gwolle_gb-form_ajax', 'strval' ); // 'true'
|
| 25 |
register_setting( 'gwolle_gb_options', 'gwolle_gb-header', 'strval' ); // string, but initially empty
|
| 26 |
register_setting( 'gwolle_gb_options', 'gwolle_gb-honeypot', 'strval' ); // 'true'
|
|
@@ -35,10 +36,10 @@ function gwolle_gb_register_settings() {
|
|
| 35 |
register_setting( 'gwolle_gb_options', 'gwolle_gb-moderate-entries', 'strval' ); // 'true'
|
| 36 |
register_setting( 'gwolle_gb_options', 'gwolle_gb-navigation', 'intval' ); // 0 or 1, default is 0
|
| 37 |
register_setting( 'gwolle_gb_options', 'gwolle_gb-nonce', 'strval' ); // 'true'
|
| 38 |
-
register_setting( 'gwolle_gb_options', 'gwolle_gb-notifyByMail', 'strval' ); //
|
| 39 |
register_setting( 'gwolle_gb_options', 'gwolle_gb-notice', 'strval' ); // string, but initially empty
|
| 40 |
register_setting( 'gwolle_gb_options', 'gwolle_gb-paginate_all', 'strval' ); // 'false'
|
| 41 |
-
register_setting( 'gwolle_gb_options', 'gwolle_gb-read', '
|
| 42 |
register_setting( 'gwolle_gb_options', 'gwolle_gb-refuse-spam', 'strval' ); // 'false'
|
| 43 |
register_setting( 'gwolle_gb_options', 'gwolle_gb-require_login', 'strval' ); // 'false'
|
| 44 |
register_setting( 'gwolle_gb_options', 'gwolle_gb-sfs', 'strval' ); // 'false'
|
| 11 |
* Register Settings
|
| 12 |
*/
|
| 13 |
function gwolle_gb_register_settings() {
|
| 14 |
+
// option_name sanitize default value
|
| 15 |
register_setting( 'gwolle_gb_options', 'gwolle_gb-admin_style', 'strval' ); // 'false'
|
| 16 |
register_setting( 'gwolle_gb_options', 'gwolle_gb-adminMailContent', 'strval' ); // empty by default
|
| 17 |
register_setting( 'gwolle_gb_options', 'gwolle_gb-akismet-active', 'strval' ); // 'false'
|
| 21 |
register_setting( 'gwolle_gb_options', 'gwolle_gb-entries_per_page', 'intval' ); // 20
|
| 22 |
register_setting( 'gwolle_gb_options', 'gwolle_gb-entriesPerPage', 'intval' ); // 20
|
| 23 |
register_setting( 'gwolle_gb_options', 'gwolle_gb-excerpt_length', 'intval' ); // 0
|
| 24 |
+
register_setting( 'gwolle_gb_options', 'gwolle_gb-form', 'array' ); // serialized array, but initially empty
|
| 25 |
register_setting( 'gwolle_gb_options', 'gwolle_gb-form_ajax', 'strval' ); // 'true'
|
| 26 |
register_setting( 'gwolle_gb_options', 'gwolle_gb-header', 'strval' ); // string, but initially empty
|
| 27 |
register_setting( 'gwolle_gb_options', 'gwolle_gb-honeypot', 'strval' ); // 'true'
|
| 36 |
register_setting( 'gwolle_gb_options', 'gwolle_gb-moderate-entries', 'strval' ); // 'true'
|
| 37 |
register_setting( 'gwolle_gb_options', 'gwolle_gb-navigation', 'intval' ); // 0 or 1, default is 0
|
| 38 |
register_setting( 'gwolle_gb_options', 'gwolle_gb-nonce', 'strval' ); // 'true'
|
| 39 |
+
register_setting( 'gwolle_gb_options', 'gwolle_gb-notifyByMail', 'strval' ); // comma separated list of User IDs, initially empty
|
| 40 |
register_setting( 'gwolle_gb_options', 'gwolle_gb-notice', 'strval' ); // string, but initially empty
|
| 41 |
register_setting( 'gwolle_gb_options', 'gwolle_gb-paginate_all', 'strval' ); // 'false'
|
| 42 |
+
register_setting( 'gwolle_gb_options', 'gwolle_gb-read', 'array' ); // serialized array, but initially empty
|
| 43 |
register_setting( 'gwolle_gb_options', 'gwolle_gb-refuse-spam', 'strval' ); // 'false'
|
| 44 |
register_setting( 'gwolle_gb_options', 'gwolle_gb-require_login', 'strval' ); // 'false'
|
| 45 |
register_setting( 'gwolle_gb_options', 'gwolle_gb-sfs', 'strval' ); // 'false'
|
functions/gb-stop-forum-spam.php
CHANGED
|
@@ -1,7 +1,7 @@
|
|
| 1 |
<?php
|
| 2 |
/**
|
| 3 |
* Stop Forum Spam Function
|
| 4 |
-
*
|
| 5 |
* Copied and edited from seriously-simple-spam-blocker
|
| 6 |
*/
|
| 7 |
|
| 1 |
<?php
|
| 2 |
/**
|
| 3 |
* Stop Forum Spam Function
|
| 4 |
+
* https://www.stopforumspam.com
|
| 5 |
* Copied and edited from seriously-simple-spam-blocker
|
| 6 |
*/
|
| 7 |
|
gwolle-gb-hooks.php
CHANGED
|
@@ -3,7 +3,7 @@
|
|
| 3 |
/*
|
| 4 |
* WordPress Actions and Filters.
|
| 5 |
* See the Plugin API in the Codex:
|
| 6 |
-
*
|
| 7 |
*/
|
| 8 |
|
| 9 |
|
| 3 |
/*
|
| 4 |
* WordPress Actions and Filters.
|
| 5 |
* See the Plugin API in the Codex:
|
| 6 |
+
* https://codex.wordpress.org/Plugin_API
|
| 7 |
*/
|
| 8 |
|
| 9 |
|
gwolle-gb.php
CHANGED
|
@@ -3,9 +3,9 @@
|
|
| 3 |
Plugin Name: Gwolle Guestbook
|
| 4 |
Plugin URI: https://wordpress.org/plugins/gwolle-gb/
|
| 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:
|
| 7 |
Author: Marcel Pol
|
| 8 |
-
Author URI:
|
| 9 |
License: GPLv2 or later
|
| 10 |
Text Domain: gwolle-gb
|
| 11 |
Domain Path: /lang/
|
|
@@ -32,7 +32,7 @@ Domain Path: /lang/
|
|
| 32 |
|
| 33 |
|
| 34 |
// Plugin Version
|
| 35 |
-
define('GWOLLE_GB_VER', '
|
| 36 |
|
| 37 |
|
| 38 |
/*
|
|
@@ -59,10 +59,6 @@ define('GWOLLE_GB_VER', '3.1.9');
|
|
| 59 |
* - Use foreign keys through a hook with SQL, and add a setter for meta.
|
| 60 |
* - Or add function to prepopulate metas for export.
|
| 61 |
* - Add emoji for Zwarte Piet and Sinterklaas when locale=nl_nl.
|
| 62 |
-
* - Look into saving a timestamp including offset. Look again at saving from editor.
|
| 63 |
-
* - Use button for metabox control.
|
| 64 |
-
* - phase out current_time:
|
| 65 |
-
* https://make.wordpress.org/core/2019/09/23/date-time-improvements-wp-5-3/
|
| 66 |
* - Support rewrite API for single entry.
|
| 67 |
* - Use select2 or similar for subscribe/unsubcribe dropdowns.
|
| 68 |
*/
|
| 3 |
Plugin Name: Gwolle Guestbook
|
| 4 |
Plugin URI: https://wordpress.org/plugins/gwolle-gb/
|
| 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: 4.0.0
|
| 7 |
Author: Marcel Pol
|
| 8 |
+
Author URI: https://timelord.nl
|
| 9 |
License: GPLv2 or later
|
| 10 |
Text Domain: gwolle-gb
|
| 11 |
Domain Path: /lang/
|
| 32 |
|
| 33 |
|
| 34 |
// Plugin Version
|
| 35 |
+
define('GWOLLE_GB_VER', '4.0.0');
|
| 36 |
|
| 37 |
|
| 38 |
/*
|
| 59 |
* - Use foreign keys through a hook with SQL, and add a setter for meta.
|
| 60 |
* - Or add function to prepopulate metas for export.
|
| 61 |
* - Add emoji for Zwarte Piet and Sinterklaas when locale=nl_nl.
|
|
|
|
|
|
|
|
|
|
|
|
|
| 62 |
* - Support rewrite API for single entry.
|
| 63 |
* - Use select2 or similar for subscribe/unsubcribe dropdowns.
|
| 64 |
*/
|
lang/gwolle-gb-da_DK.mo
DELETED
|
Binary file
|
lang/gwolle-gb-da_DK.po
DELETED
|
@@ -1,1997 +0,0 @@
|
|
| 1 |
-
# SOME DESCRIPTIVE TITLE.
|
| 2 |
-
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
| 3 |
-
# This file is distributed under the same license as the PACKAGE package.
|
| 4 |
-
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
| 5 |
-
#
|
| 6 |
-
msgid ""
|
| 7 |
-
msgstr ""
|
| 8 |
-
"Project-Id-Version: \n"
|
| 9 |
-
"Report-Msgid-Bugs-To: \n"
|
| 10 |
-
"POT-Creation-Date: 2015-06-15 13:38+0100\n"
|
| 11 |
-
"PO-Revision-Date: 2015-06-15 13:40+0100\n"
|
| 12 |
-
"Last-Translator: Bo Nielsen <wp@bfn.dk>\n"
|
| 13 |
-
"Language-Team: \n"
|
| 14 |
-
"Language: da\n"
|
| 15 |
-
"MIME-Version: 1.0\n"
|
| 16 |
-
"Content-Type: text/plain; charset=UTF-8\n"
|
| 17 |
-
"Content-Transfer-Encoding: 8bit\n"
|
| 18 |
-
"X-Generator: Poedit 1.8.1\n"
|
| 19 |
-
"X-Poedit-SourceCharset: UTF-8\n"
|
| 20 |
-
|
| 21 |
-
#: actions.php:35 actions.php:36 frontend/widget.php:22
|
| 22 |
-
#: frontend/widget.php:188
|
| 23 |
-
msgid "Guestbook"
|
| 24 |
-
msgstr "Gæstebog"
|
| 25 |
-
|
| 26 |
-
#: actions.php:46 actions.php:47 admin/tabs/admintab.php:36
|
| 27 |
-
#: admin/tabs/readingtab.php:36
|
| 28 |
-
msgid "Entries"
|
| 29 |
-
msgstr "Indlæg"
|
| 30 |
-
|
| 31 |
-
#. /editor.php
|
| 32 |
-
#: actions.php:54
|
| 33 |
-
msgid "Entry editor"
|
| 34 |
-
msgstr "Rediger Indlæg."
|
| 35 |
-
|
| 36 |
-
#: actions.php:54 admin/page-gwolle-gb.php:85
|
| 37 |
-
msgid "New entry"
|
| 38 |
-
msgstr "Nyt indlæg"
|
| 39 |
-
|
| 40 |
-
#. /settings.php
|
| 41 |
-
#: actions.php:57 actions.php:80 admin/page-settings.php:314
|
| 42 |
-
msgid "Settings"
|
| 43 |
-
msgstr "Indstillinger"
|
| 44 |
-
|
| 45 |
-
#. /import.php
|
| 46 |
-
#: actions.php:60
|
| 47 |
-
msgid "Import"
|
| 48 |
-
msgstr "Importer"
|
| 49 |
-
|
| 50 |
-
#. /export.php
|
| 51 |
-
#: actions.php:63
|
| 52 |
-
msgid "Export"
|
| 53 |
-
msgstr "Eksporter"
|
| 54 |
-
|
| 55 |
-
#: actions.php:190 actions.php:194 frontend/rss.php:70 frontend/rss.php:73
|
| 56 |
-
msgid "Guestbook Feed"
|
| 57 |
-
msgstr "Gæstebog Feed"
|
| 58 |
-
|
| 59 |
-
#: admin/dashboard-widget.php:116 admin/page-entries.php:696
|
| 60 |
-
#: frontend/read.php:236
|
| 61 |
-
msgid "Edit entry"
|
| 62 |
-
msgstr "Rediger indlæg"
|
| 63 |
-
|
| 64 |
-
#: admin/dashboard-widget.php:116 admin/page-entries.php:696
|
| 65 |
-
#: frontend/read.php:236
|
| 66 |
-
msgid "Edit"
|
| 67 |
-
msgstr "Rediger"
|
| 68 |
-
|
| 69 |
-
#: admin/dashboard-widget.php:120 admin/page-editor.php:425
|
| 70 |
-
#: admin/page-entries.php:699
|
| 71 |
-
msgid "Check entry"
|
| 72 |
-
msgstr "Tjek indlæg"
|
| 73 |
-
|
| 74 |
-
#: admin/dashboard-widget.php:120 admin/page-editor.php:425
|
| 75 |
-
#: admin/page-entries.php:699
|
| 76 |
-
msgid "Check"
|
| 77 |
-
msgstr "Tjek"
|
| 78 |
-
|
| 79 |
-
#: admin/dashboard-widget.php:124 admin/page-editor.php:428
|
| 80 |
-
#: admin/page-entries.php:702
|
| 81 |
-
msgid "Uncheck entry"
|
| 82 |
-
msgstr "Fravælg adgang"
|
| 83 |
-
|
| 84 |
-
#: admin/dashboard-widget.php:124 admin/page-editor.php:428
|
| 85 |
-
#: admin/page-entries.php:702
|
| 86 |
-
msgid "Uncheck"
|
| 87 |
-
msgstr "Fravælg"
|
| 88 |
-
|
| 89 |
-
#: admin/dashboard-widget.php:128 admin/page-editor.php:431
|
| 90 |
-
#: admin/page-entries.php:705
|
| 91 |
-
msgid "Mark entry as spam."
|
| 92 |
-
msgstr "Marker indlæg som spam."
|
| 93 |
-
|
| 94 |
-
#: admin/dashboard-widget.php:128 admin/page-editor.php:374
|
| 95 |
-
#: admin/page-editor.php:431 admin/page-entries.php:437
|
| 96 |
-
#: admin/page-entries.php:705
|
| 97 |
-
msgid "Spam"
|
| 98 |
-
msgstr "Spam"
|
| 99 |
-
|
| 100 |
-
#: admin/dashboard-widget.php:132 admin/page-editor.php:434
|
| 101 |
-
#: admin/page-entries.php:708
|
| 102 |
-
msgid "Mark entry as not-spam."
|
| 103 |
-
msgstr "Marker indlæg som 'ikke spam'"
|
| 104 |
-
|
| 105 |
-
#: admin/dashboard-widget.php:132 admin/page-editor.php:434
|
| 106 |
-
#: admin/page-entries.php:708
|
| 107 |
-
msgid "Not spam"
|
| 108 |
-
msgstr "Ikke spam"
|
| 109 |
-
|
| 110 |
-
#: admin/dashboard-widget.php:136 admin/page-editor.php:437
|
| 111 |
-
#: admin/page-entries.php:711
|
| 112 |
-
msgid "Move entry to trash."
|
| 113 |
-
msgstr "Flyt indlæg til papirkurven."
|
| 114 |
-
|
| 115 |
-
#: admin/dashboard-widget.php:136 admin/page-editor.php:384
|
| 116 |
-
#: admin/page-editor.php:437 admin/page-entries.php:441
|
| 117 |
-
#: admin/page-entries.php:711
|
| 118 |
-
msgid "Trash"
|
| 119 |
-
msgstr "Papirkurv"
|
| 120 |
-
|
| 121 |
-
#: admin/dashboard-widget.php:140 admin/page-editor.php:440
|
| 122 |
-
#: admin/page-entries.php:714
|
| 123 |
-
msgid "Recover entry from trash."
|
| 124 |
-
msgstr "Genindlæs indlæg fra papirkurven."
|
| 125 |
-
|
| 126 |
-
#: admin/dashboard-widget.php:140 admin/page-editor.php:440
|
| 127 |
-
#: admin/page-entries.php:714
|
| 128 |
-
msgid "Untrash"
|
| 129 |
-
msgstr "Fjern fra papirkurven"
|
| 130 |
-
|
| 131 |
-
#: admin/dashboard-widget.php:144 admin/page-editor.php:443
|
| 132 |
-
#: admin/page-entries.php:717
|
| 133 |
-
msgid "Please wait..."
|
| 134 |
-
msgstr "Vent venligst..."
|
| 135 |
-
|
| 136 |
-
#: admin/dashboard-widget.php:144 admin/page-editor.php:443
|
| 137 |
-
#: admin/page-entries.php:717
|
| 138 |
-
msgid "Wait..."
|
| 139 |
-
msgstr "Vent..."
|
| 140 |
-
|
| 141 |
-
#: admin/dashboard-widget.php:155
|
| 142 |
-
msgid "Refresh"
|
| 143 |
-
msgstr "Opdater"
|
| 144 |
-
|
| 145 |
-
#: admin/dashboard-widget.php:156
|
| 146 |
-
msgid "View all"
|
| 147 |
-
msgstr "Vis alle"
|
| 148 |
-
|
| 149 |
-
#: admin/dashboard-widget.php:157
|
| 150 |
-
msgid "View new"
|
| 151 |
-
msgstr "Vis ny"
|
| 152 |
-
|
| 153 |
-
#: admin/dashboard-widget.php:160
|
| 154 |
-
msgid "No new and unchecked guestbook entries."
|
| 155 |
-
msgstr "Ingen nye og ikke tjekkede gæstebogs indlæg"
|
| 156 |
-
|
| 157 |
-
#: admin/dashboard-widget.php:172
|
| 158 |
-
msgid "Guestbook (new entries)"
|
| 159 |
-
msgstr "Gæstebog (nye indlæg)"
|
| 160 |
-
|
| 161 |
-
#: admin/installSplash.php:14
|
| 162 |
-
msgid "Installation"
|
| 163 |
-
msgstr "Installation"
|
| 164 |
-
|
| 165 |
-
#: admin/installSplash.php:20
|
| 166 |
-
msgid ""
|
| 167 |
-
"Welcome!<br>It seems that either you're using this plugin for the first time "
|
| 168 |
-
"or you've deleted all settings.<br>However, to use this plugin we have to "
|
| 169 |
-
"setup the database tables. Good for you, we've made this as easy as possible."
|
| 170 |
-
"<br>All you've got to do is click on that button below, and that's it."
|
| 171 |
-
msgstr ""
|
| 172 |
-
"Velkommen!<br> Det ser ud til at du bruger dette plugin for første gang "
|
| 173 |
-
"eller at du har slettet alle indstillinger. <br> For at bruge dette plugin "
|
| 174 |
-
"skal der bruges en forbindelse til databasetabellen. Heldigvis for dig, er "
|
| 175 |
-
"dette gjort nemmest muligt for dig. <br> Alt du skal gøre er at klikke på "
|
| 176 |
-
"knappen nedenunder, og så er det gjort."
|
| 177 |
-
|
| 178 |
-
#: admin/installSplash.php:26
|
| 179 |
-
msgid "Sure, let's do this!"
|
| 180 |
-
msgstr "Helt sikkert, lad os gøre det!"
|
| 181 |
-
|
| 182 |
-
#: admin/installSplash.php:33
|
| 183 |
-
#, php-format
|
| 184 |
-
msgid "Allright, we're done. <a href=\"%s\">Click here to continue...</a>"
|
| 185 |
-
msgstr "OK, vi er færdige. <a href=\"%s\">Klik her for at fortsætte...</a>"
|
| 186 |
-
|
| 187 |
-
#: admin/installSplash.php:35
|
| 188 |
-
#, php-format
|
| 189 |
-
msgid ""
|
| 190 |
-
"It looks like there has been an error. <a href=\"%s\">Click here to "
|
| 191 |
-
"continue...</a>"
|
| 192 |
-
msgstr ""
|
| 193 |
-
"Det ser ud til at der er sket en fejl. <a href=\"%s\">Klik her for at "
|
| 194 |
-
"fortsætte...</a>"
|
| 195 |
-
|
| 196 |
-
#: admin/page-editor.php:15 admin/page-entries.php:16 admin/page-export.php:17
|
| 197 |
-
#: admin/page-gwolle-gb.php:278 admin/page-import.php:26
|
| 198 |
-
#: admin/page-settings.php:15 admin/tabs/admintab.php:15
|
| 199 |
-
#: admin/tabs/antispamtab.php:15 admin/tabs/emailtab.php:15
|
| 200 |
-
#: admin/tabs/formtab.php:15 admin/tabs/readingtab.php:15
|
| 201 |
-
#: admin/tabs/uninstalltab.php:18
|
| 202 |
-
msgid "Cheatin’ uh?"
|
| 203 |
-
msgstr "Snyder’ uh?"
|
| 204 |
-
|
| 205 |
-
#: admin/page-editor.php:32
|
| 206 |
-
msgid "Edit guestbook entry"
|
| 207 |
-
msgstr "Rediger gæstebogens indlæg"
|
| 208 |
-
|
| 209 |
-
#: admin/page-editor.php:45
|
| 210 |
-
msgid "Entry could not be found."
|
| 211 |
-
msgstr "Indlæg kunne ikke findes."
|
| 212 |
-
|
| 213 |
-
#: admin/page-editor.php:47
|
| 214 |
-
msgid "Guestbook entry (error)"
|
| 215 |
-
msgstr "Indlæg i gæstebog (fejl)"
|
| 216 |
-
|
| 217 |
-
#: admin/page-editor.php:50
|
| 218 |
-
msgid "New guestbook entry"
|
| 219 |
-
msgstr "Nyt indlæg i gæstebogen"
|
| 220 |
-
|
| 221 |
-
#: admin/page-editor.php:60
|
| 222 |
-
msgid "Something strange happened."
|
| 223 |
-
msgstr "Der er sket noget mærkeligt."
|
| 224 |
-
|
| 225 |
-
#: admin/page-editor.php:88
|
| 226 |
-
msgid "Submitted as Spam to the Akismet service."
|
| 227 |
-
msgstr "Videresendt som spam til Akismet service."
|
| 228 |
-
|
| 229 |
-
#: admin/page-editor.php:97
|
| 230 |
-
msgid "Submitted as Ham to the Akismet service."
|
| 231 |
-
msgstr "Videresend som 'Ham' til Akismet service"
|
| 232 |
-
|
| 233 |
-
#: admin/page-editor.php:148 admin/page-gwolle-gb.php:355
|
| 234 |
-
#: admin/page-settings.php:320
|
| 235 |
-
msgid "Changes saved."
|
| 236 |
-
msgstr "Ændringerne er gemt."
|
| 237 |
-
|
| 238 |
-
#: admin/page-editor.php:150 admin/page-editor.php:245
|
| 239 |
-
msgid "Error happened during saving."
|
| 240 |
-
msgstr "Fejl under gemning."
|
| 241 |
-
|
| 242 |
-
#: admin/page-editor.php:154
|
| 243 |
-
msgid "Entry was not changed."
|
| 244 |
-
msgstr "Indlæg er ikke ændret."
|
| 245 |
-
|
| 246 |
-
#: admin/page-editor.php:165
|
| 247 |
-
msgid "Entry removed."
|
| 248 |
-
msgstr "Indlæg er fjernet."
|
| 249 |
-
|
| 250 |
-
#: admin/page-editor.php:210
|
| 251 |
-
msgid "Entry has no content, even though that is mandatory."
|
| 252 |
-
msgstr "Indlæg har intet indhold, selvom feltet kræver det."
|
| 253 |
-
|
| 254 |
-
#: admin/page-editor.php:243
|
| 255 |
-
msgid "Entry saved."
|
| 256 |
-
msgstr "Indlæget er gemt."
|
| 257 |
-
|
| 258 |
-
#: admin/page-editor.php:249
|
| 259 |
-
msgid "Entry was not saved."
|
| 260 |
-
msgstr "Indlæget er ikke gemt."
|
| 261 |
-
|
| 262 |
-
#: admin/page-editor.php:322 admin/page-editor.php:415
|
| 263 |
-
#: admin/page-editor.php:459 admin/page-editor.php:514
|
| 264 |
-
#: admin/page-editor.php:549 admin/page-editor.php:566
|
| 265 |
-
#: admin/page-editor.php:574 admin/page-export.php:40
|
| 266 |
-
#: admin/page-import.php:338 admin/page-import.php:405
|
| 267 |
-
#: admin/page-import.php:526
|
| 268 |
-
msgid "Click to open or close"
|
| 269 |
-
msgstr "Klik for at åbne eller lukke."
|
| 270 |
-
|
| 271 |
-
#: admin/page-editor.php:322
|
| 272 |
-
msgid "Options"
|
| 273 |
-
msgstr "Indstillinger"
|
| 274 |
-
|
| 275 |
-
#: admin/page-editor.php:343
|
| 276 |
-
msgid "This entry is not yet visible."
|
| 277 |
-
msgstr "Dette indlæg er ikke synligt endnu."
|
| 278 |
-
|
| 279 |
-
#: admin/page-editor.php:347 admin/page-editor.php:352
|
| 280 |
-
msgid "This entry is Visible."
|
| 281 |
-
msgstr "Dette indlæg er synligt."
|
| 282 |
-
|
| 283 |
-
#: admin/page-editor.php:348 admin/page-editor.php:353
|
| 284 |
-
msgid "This entry is Not Visible."
|
| 285 |
-
msgstr "Dette indlæg er ikke synligt."
|
| 286 |
-
|
| 287 |
-
#: admin/page-editor.php:364
|
| 288 |
-
msgid "Checked"
|
| 289 |
-
msgstr "Tjekket"
|
| 290 |
-
|
| 291 |
-
#: admin/page-editor.php:392
|
| 292 |
-
msgid "Remove this entry Permanently."
|
| 293 |
-
msgstr "Fjern dette indlæg permanent."
|
| 294 |
-
|
| 295 |
-
#: admin/page-editor.php:403
|
| 296 |
-
msgid "Save"
|
| 297 |
-
msgstr "Gem"
|
| 298 |
-
|
| 299 |
-
#: admin/page-editor.php:415
|
| 300 |
-
msgid "Actions"
|
| 301 |
-
msgstr "Handlinger"
|
| 302 |
-
|
| 303 |
-
#: admin/page-editor.php:459
|
| 304 |
-
msgid "Details"
|
| 305 |
-
msgstr "Detaljer"
|
| 306 |
-
|
| 307 |
-
#: admin/page-editor.php:463 admin/page-entries.php:567
|
| 308 |
-
#: admin/page-entries.php:583
|
| 309 |
-
msgid "Author"
|
| 310 |
-
msgstr "Forfatter"
|
| 311 |
-
|
| 312 |
-
#: admin/page-editor.php:467 admin/page-editor.php:475
|
| 313 |
-
#: admin/page-editor.php:496 admin/page-editor.php:504
|
| 314 |
-
#: functions/function.log.php:164
|
| 315 |
-
msgid "Unknown"
|
| 316 |
-
msgstr "Ukendt"
|
| 317 |
-
|
| 318 |
-
#: admin/page-editor.php:471
|
| 319 |
-
msgid "E-Mail"
|
| 320 |
-
msgstr "E-Mail"
|
| 321 |
-
|
| 322 |
-
#: admin/page-editor.php:480 admin/page-editor.php:524
|
| 323 |
-
msgid "Written"
|
| 324 |
-
msgstr "Skrevet"
|
| 325 |
-
|
| 326 |
-
#: admin/page-editor.php:485
|
| 327 |
-
msgid "Not yet"
|
| 328 |
-
msgstr "Ikke endnu"
|
| 329 |
-
|
| 330 |
-
#: admin/page-editor.php:489
|
| 331 |
-
msgid "Author's IP-address"
|
| 332 |
-
msgstr "Forfatter's IP-adresse"
|
| 333 |
-
|
| 334 |
-
#: admin/page-editor.php:492
|
| 335 |
-
msgid "Whois search for this IP"
|
| 336 |
-
msgstr "Whois søgning for denne IP"
|
| 337 |
-
|
| 338 |
-
#: admin/page-editor.php:500
|
| 339 |
-
msgid "Host"
|
| 340 |
-
msgstr "Udbyder"
|
| 341 |
-
|
| 342 |
-
#: admin/page-editor.php:514
|
| 343 |
-
msgid "Entry log"
|
| 344 |
-
msgstr "Indlægs log"
|
| 345 |
-
|
| 346 |
-
#: admin/page-editor.php:533
|
| 347 |
-
msgid "No log yet."
|
| 348 |
-
msgstr "Ingen log endnu"
|
| 349 |
-
|
| 350 |
-
#: admin/page-editor.php:549 frontend/write.php:215
|
| 351 |
-
msgid "Guestbook entry"
|
| 352 |
-
msgstr "Gæstebogs indlæg"
|
| 353 |
-
|
| 354 |
-
#: admin/page-editor.php:554
|
| 355 |
-
#, php-format
|
| 356 |
-
msgid ""
|
| 357 |
-
"Line breaks will not be visible to the visitors due to your <a href=\"%s"
|
| 358 |
-
"\">settings</a>."
|
| 359 |
-
msgstr ""
|
| 360 |
-
"Linjeskift vil ikke være synlig for besøgende, på grund af din <a href=\"%s"
|
| 361 |
-
"\">indstillinger</a>."
|
| 362 |
-
|
| 363 |
-
#: admin/page-editor.php:566 frontend/write.php:196 frontend/write.php:203
|
| 364 |
-
#: admin/tabs/formtab.php:165
|
| 365 |
-
msgid "Website"
|
| 366 |
-
msgstr "Hjemmeside"
|
| 367 |
-
|
| 368 |
-
#: admin/page-editor.php:569
|
| 369 |
-
msgid "Example: <code>http://www.example.com/</code>"
|
| 370 |
-
msgstr "Eksempel: <code>http://www.example.com/</code>"
|
| 371 |
-
|
| 372 |
-
#: admin/page-editor.php:574 admin/page-export.php:61
|
| 373 |
-
msgid "Origin"
|
| 374 |
-
msgstr "Origin"
|
| 375 |
-
|
| 376 |
-
#: admin/page-entries.php:209
|
| 377 |
-
msgid "entry checked."
|
| 378 |
-
msgstr "indlæg tjekket"
|
| 379 |
-
|
| 380 |
-
#: admin/page-entries.php:211
|
| 381 |
-
msgid "entries checked."
|
| 382 |
-
msgstr "indlæg tjekket"
|
| 383 |
-
|
| 384 |
-
#: admin/page-entries.php:213
|
| 385 |
-
msgid "No entries checked."
|
| 386 |
-
msgstr "Ingen indlæg tjekket."
|
| 387 |
-
|
| 388 |
-
#: admin/page-entries.php:217
|
| 389 |
-
msgid "entry unchecked."
|
| 390 |
-
msgstr "Indlæg ikke tjekket."
|
| 391 |
-
|
| 392 |
-
#: admin/page-entries.php:219
|
| 393 |
-
msgid "entries unchecked."
|
| 394 |
-
msgstr "Indlæg ikke tjekket."
|
| 395 |
-
|
| 396 |
-
#: admin/page-entries.php:221
|
| 397 |
-
msgid "No entries unchecked."
|
| 398 |
-
msgstr "Ingen indlæg er umarkeret"
|
| 399 |
-
|
| 400 |
-
#: admin/page-entries.php:225
|
| 401 |
-
msgid ""
|
| 402 |
-
"entry marked as spam and submitted to Akismet as spam (if Akismet was "
|
| 403 |
-
"enabled)."
|
| 404 |
-
msgstr ""
|
| 405 |
-
"indlægene markeret som spam og videresendt til Akismet som som (hvis Akismet "
|
| 406 |
-
"er aktiveret)"
|
| 407 |
-
|
| 408 |
-
#: admin/page-entries.php:227
|
| 409 |
-
msgid ""
|
| 410 |
-
"entries marked as spam and submitted to Akismet as spam (if Akismet was "
|
| 411 |
-
"enabled)."
|
| 412 |
-
msgstr ""
|
| 413 |
-
"indlæg markeret som spam og videresendt til Akismet som som (hvis Akismet er "
|
| 414 |
-
"aktiveret)"
|
| 415 |
-
|
| 416 |
-
#: admin/page-entries.php:229
|
| 417 |
-
msgid "No entries marked as spam."
|
| 418 |
-
msgstr "Ingen indlæg er markeret som spam"
|
| 419 |
-
|
| 420 |
-
#: admin/page-entries.php:233
|
| 421 |
-
msgid ""
|
| 422 |
-
"entry marked as not spam and submitted to Akismet as ham (if Akismet was "
|
| 423 |
-
"enabled)."
|
| 424 |
-
msgstr ""
|
| 425 |
-
"Indlæg markeret som ikke spam og indsendes til Akismet som ham (hvis Akismet "
|
| 426 |
-
"blev aktiveret)."
|
| 427 |
-
|
| 428 |
-
#: admin/page-entries.php:235
|
| 429 |
-
msgid ""
|
| 430 |
-
"entries marked as not spam and submitted to Akismet as ham (if Akismet was "
|
| 431 |
-
"enabled)."
|
| 432 |
-
msgstr ""
|
| 433 |
-
"Indlæg markeret som ikke spam og indsendes til Akismet som ham(hvis Akismet "
|
| 434 |
-
"blev aktiveret)."
|
| 435 |
-
|
| 436 |
-
#: admin/page-entries.php:237
|
| 437 |
-
msgid "No entries marked as not spam."
|
| 438 |
-
msgstr "Ingen indlæg er markeret som ikke spam"
|
| 439 |
-
|
| 440 |
-
#: admin/page-entries.php:241
|
| 441 |
-
msgid "entry considered spam and marked as such."
|
| 442 |
-
msgstr "Indlæg indeholder spam og er markeret som sådan."
|
| 443 |
-
|
| 444 |
-
#: admin/page-entries.php:243
|
| 445 |
-
msgid "entries considered spam and marked as such."
|
| 446 |
-
msgstr "Indlæg indeholder spam og er markeret som sådan."
|
| 447 |
-
|
| 448 |
-
#: admin/page-entries.php:246
|
| 449 |
-
msgid "entry not considered spam and marked as such."
|
| 450 |
-
msgstr "Indlæg inderholder ikke spam er er markeret som sådan."
|
| 451 |
-
|
| 452 |
-
#: admin/page-entries.php:248
|
| 453 |
-
msgid "entries not considered spam and marked as such."
|
| 454 |
-
msgstr "Indlæg inderholder ikke spam er er markeret som sådan."
|
| 455 |
-
|
| 456 |
-
#: admin/page-entries.php:251
|
| 457 |
-
msgid "entry already considered spam and not changed."
|
| 458 |
-
msgstr "Indlæg er allerede markeret som spam og er markeret som sådan."
|
| 459 |
-
|
| 460 |
-
#: admin/page-entries.php:253
|
| 461 |
-
msgid "entries already considered spam and not changed."
|
| 462 |
-
msgstr "Indlæg er allerede markeret som spam og er markeret som sådan."
|
| 463 |
-
|
| 464 |
-
#: admin/page-entries.php:256
|
| 465 |
-
msgid "entry already considered not spam and not changed."
|
| 466 |
-
msgstr ""
|
| 467 |
-
"Indlæg er allerede markeret som værende ikke spam og er derfor ikke ændret."
|
| 468 |
-
|
| 469 |
-
#: admin/page-entries.php:258
|
| 470 |
-
msgid "entries already considered not spam and not changed."
|
| 471 |
-
msgstr ""
|
| 472 |
-
"Indlæg er allerede markeret som værende ikke spam og er derfor ikke ændret."
|
| 473 |
-
|
| 474 |
-
#: admin/page-entries.php:262
|
| 475 |
-
msgid "entry moved to trash."
|
| 476 |
-
msgstr "Indlæg flyttet til papirkurven."
|
| 477 |
-
|
| 478 |
-
#: admin/page-entries.php:264
|
| 479 |
-
msgid "entries moved to trash."
|
| 480 |
-
msgstr "Indlæg flyttet til papirkurven."
|
| 481 |
-
|
| 482 |
-
#: admin/page-entries.php:266
|
| 483 |
-
msgid "No entries moved to trash."
|
| 484 |
-
msgstr "Ingen indlæg er flyttet til papirkurven."
|
| 485 |
-
|
| 486 |
-
#: admin/page-entries.php:270
|
| 487 |
-
msgid "entry recovered from trash."
|
| 488 |
-
msgstr "Indlæg er genskabt fra papirkurven."
|
| 489 |
-
|
| 490 |
-
#: admin/page-entries.php:272
|
| 491 |
-
msgid "entries recovered from trash."
|
| 492 |
-
msgstr "Indlæg er genskabt fra papirkurven."
|
| 493 |
-
|
| 494 |
-
#: admin/page-entries.php:274
|
| 495 |
-
msgid "No entries recovered from trash."
|
| 496 |
-
msgstr "Ingen indlæg er genskabt fra papirkurven."
|
| 497 |
-
|
| 498 |
-
#: admin/page-entries.php:278 admin/page-entries.php:293
|
| 499 |
-
msgid "entry removed permanently."
|
| 500 |
-
msgstr "Indlæg er permanent slettet"
|
| 501 |
-
|
| 502 |
-
#: admin/page-entries.php:280 admin/page-entries.php:295
|
| 503 |
-
msgid "entries removed permanently."
|
| 504 |
-
msgstr "Indlæg er permanent slettet"
|
| 505 |
-
|
| 506 |
-
#: admin/page-entries.php:282 admin/page-entries.php:297
|
| 507 |
-
msgid "No entries permanently removed."
|
| 508 |
-
msgstr "Ingen indlæg er permanent flyttet."
|
| 509 |
-
|
| 510 |
-
#: admin/page-entries.php:329
|
| 511 |
-
msgid "Please activate Akismet if you want to battle spam."
|
| 512 |
-
msgstr "Aktiver venligst Akismet hvis du slippe for spam."
|
| 513 |
-
|
| 514 |
-
#: admin/page-entries.php:402
|
| 515 |
-
msgid "Guestbook entries"
|
| 516 |
-
msgstr "Gæstebogs indlæg"
|
| 517 |
-
|
| 518 |
-
#: admin/page-entries.php:424
|
| 519 |
-
msgid "All"
|
| 520 |
-
msgstr "Alle"
|
| 521 |
-
|
| 522 |
-
#: admin/page-entries.php:429
|
| 523 |
-
msgid "Unlocked"
|
| 524 |
-
msgstr "Oplåst"
|
| 525 |
-
|
| 526 |
-
#: admin/page-entries.php:433
|
| 527 |
-
msgid "New"
|
| 528 |
-
msgstr "Ny"
|
| 529 |
-
|
| 530 |
-
#: admin/page-entries.php:448
|
| 531 |
-
msgid "Mass edit actions"
|
| 532 |
-
msgstr "Rediger flere"
|
| 533 |
-
|
| 534 |
-
#: admin/page-entries.php:451
|
| 535 |
-
msgid "Recover from trash"
|
| 536 |
-
msgstr "Genskab fra papirkurv"
|
| 537 |
-
|
| 538 |
-
#: admin/page-entries.php:452 admin/page-entries.php:469
|
| 539 |
-
msgid "Remove permanently"
|
| 540 |
-
msgstr "Fjern permanent"
|
| 541 |
-
|
| 542 |
-
#: admin/page-entries.php:455
|
| 543 |
-
msgid "Mark as checked"
|
| 544 |
-
msgstr "Marker som tjekket"
|
| 545 |
-
|
| 546 |
-
#: admin/page-entries.php:458
|
| 547 |
-
msgid "Mark as not checked"
|
| 548 |
-
msgstr "Marker som ikke tjekket"
|
| 549 |
-
|
| 550 |
-
#: admin/page-entries.php:461
|
| 551 |
-
msgid "Mark as spam"
|
| 552 |
-
msgstr "Marker som spam"
|
| 553 |
-
|
| 554 |
-
#: admin/page-entries.php:463
|
| 555 |
-
msgid "Mark as not spam"
|
| 556 |
-
msgstr "Marker som ikke spam"
|
| 557 |
-
|
| 558 |
-
#: admin/page-entries.php:465
|
| 559 |
-
msgid "Check with Akismet"
|
| 560 |
-
msgstr "Tjek med Akismet"
|
| 561 |
-
|
| 562 |
-
#: admin/page-entries.php:467
|
| 563 |
-
msgid "Move to trash"
|
| 564 |
-
msgstr "Flyt til papirkurv"
|
| 565 |
-
|
| 566 |
-
#: admin/page-entries.php:474
|
| 567 |
-
msgid "Apply"
|
| 568 |
-
msgstr "Anvend"
|
| 569 |
-
|
| 570 |
-
#: admin/page-entries.php:477 admin/page-entries.php:735
|
| 571 |
-
msgid "Empty Spam"
|
| 572 |
-
msgstr "Tøm Spam"
|
| 573 |
-
|
| 574 |
-
#: admin/page-entries.php:479 admin/page-entries.php:737
|
| 575 |
-
msgid "Empty Trash"
|
| 576 |
-
msgstr "Tøm papirkurv"
|
| 577 |
-
|
| 578 |
-
#: admin/page-entries.php:492
|
| 579 |
-
msgid "Showing:"
|
| 580 |
-
msgstr "Vis:"
|
| 581 |
-
|
| 582 |
-
#: admin/page-entries.php:493
|
| 583 |
-
msgid "of"
|
| 584 |
-
msgstr "af"
|
| 585 |
-
|
| 586 |
-
#: admin/page-entries.php:560 admin/page-entries.php:576
|
| 587 |
-
msgid "ID"
|
| 588 |
-
msgstr "ID"
|
| 589 |
-
|
| 590 |
-
#: admin/page-entries.php:566 admin/page-entries.php:582
|
| 591 |
-
#: admin/tabs/readingtab.php:189
|
| 592 |
-
msgid "Date"
|
| 593 |
-
msgstr "Dato"
|
| 594 |
-
|
| 595 |
-
#: admin/page-entries.php:568 admin/page-entries.php:584
|
| 596 |
-
msgid "Entry (excerpt)"
|
| 597 |
-
msgstr "Indlæg (uddrag)"
|
| 598 |
-
|
| 599 |
-
#: admin/page-entries.php:569 admin/page-entries.php:585
|
| 600 |
-
msgid "Action"
|
| 601 |
-
msgstr "Aktion"
|
| 602 |
-
|
| 603 |
-
#: admin/page-entries.php:598
|
| 604 |
-
msgid "No entries found."
|
| 605 |
-
msgstr "Ingen indlæg fundet"
|
| 606 |
-
|
| 607 |
-
#: admin/page-export.php:27
|
| 608 |
-
msgid "Export guestbook entries."
|
| 609 |
-
msgstr "Eksporter gæstebogens indlæg"
|
| 610 |
-
|
| 611 |
-
#: admin/page-export.php:40
|
| 612 |
-
msgid "Export guestbook entries from Gwolle-GB"
|
| 613 |
-
msgstr "Eksport gæstebogens indlæg fra Gwolle-GB"
|
| 614 |
-
|
| 615 |
-
#: admin/page-export.php:47
|
| 616 |
-
msgid "No entries were found."
|
| 617 |
-
msgstr "Ingen indlæg er fundet."
|
| 618 |
-
|
| 619 |
-
#: admin/page-export.php:52
|
| 620 |
-
#, php-format
|
| 621 |
-
msgid "%d entries were found and will be exported."
|
| 622 |
-
msgstr "%d indlæg er fundet og vil blive eksporteret."
|
| 623 |
-
|
| 624 |
-
#: admin/page-export.php:55
|
| 625 |
-
msgid "The exporter will preserve the following data per entry:"
|
| 626 |
-
msgstr "Eksportøren bevarer følgende data pr indlæg:"
|
| 627 |
-
|
| 628 |
-
#: admin/page-export.php:58 admin/page-import.php:372
|
| 629 |
-
#: admin/page-import.php:413 frontend/write.php:139 frontend/write.php:146
|
| 630 |
-
#: admin/tabs/formtab.php:105 admin/tabs/readingtab.php:152
|
| 631 |
-
msgid "Name"
|
| 632 |
-
msgstr "Navn"
|
| 633 |
-
|
| 634 |
-
#: admin/page-export.php:59 admin/page-import.php:373
|
| 635 |
-
#: admin/page-import.php:415
|
| 636 |
-
msgid "E-Mail address"
|
| 637 |
-
msgstr "E-Mail adresse"
|
| 638 |
-
|
| 639 |
-
#: admin/page-export.php:60 admin/page-import.php:374
|
| 640 |
-
#: admin/page-import.php:416
|
| 641 |
-
msgid "URL/Website"
|
| 642 |
-
msgstr "URL/Hjemmeside"
|
| 643 |
-
|
| 644 |
-
#: admin/page-export.php:62 admin/page-import.php:375
|
| 645 |
-
#: admin/page-import.php:417
|
| 646 |
-
msgid "Date of the entry"
|
| 647 |
-
msgstr "Dato for indlæget"
|
| 648 |
-
|
| 649 |
-
#: admin/page-export.php:63 admin/page-import.php:376
|
| 650 |
-
#: admin/page-import.php:418
|
| 651 |
-
msgid "IP address"
|
| 652 |
-
msgstr "IP adresse"
|
| 653 |
-
|
| 654 |
-
#: admin/page-export.php:64
|
| 655 |
-
msgid "Host address"
|
| 656 |
-
msgstr "Host adresse"
|
| 657 |
-
|
| 658 |
-
#: admin/page-export.php:65 admin/page-import.php:377
|
| 659 |
-
#: admin/page-import.php:419 admin/tabs/formtab.php:185
|
| 660 |
-
#: admin/tabs/uninstalltab.php:31
|
| 661 |
-
msgid "Message"
|
| 662 |
-
msgstr "Meddelelse"
|
| 663 |
-
|
| 664 |
-
#: admin/page-export.php:66 admin/page-import.php:379
|
| 665 |
-
msgid "\"is checked\" flag"
|
| 666 |
-
msgstr "\"er tjekket\" flag"
|
| 667 |
-
|
| 668 |
-
#: admin/page-export.php:67 admin/page-import.php:378
|
| 669 |
-
msgid "\"is spam\" flag"
|
| 670 |
-
msgstr "\"er spam\" flag"
|
| 671 |
-
|
| 672 |
-
#: admin/page-export.php:68
|
| 673 |
-
msgid "\"is trash\" flag"
|
| 674 |
-
msgstr "\"er affald\" flag"
|
| 675 |
-
|
| 676 |
-
#: admin/page-export.php:70
|
| 677 |
-
msgid "The exporter does not delete any data, so your data will still be here."
|
| 678 |
-
msgstr ""
|
| 679 |
-
"Ved eksporter bliver ingen data slettet, så dine data vil stadig være "
|
| 680 |
-
"tilstede."
|
| 681 |
-
|
| 682 |
-
#: admin/page-export.php:75
|
| 683 |
-
msgid "Export all entries from this website."
|
| 684 |
-
msgstr "Eksporter alle indlæg fra denne hjemmeside."
|
| 685 |
-
|
| 686 |
-
#: admin/page-export.php:79
|
| 687 |
-
msgid "Start export"
|
| 688 |
-
msgstr "Begynd eksporter"
|
| 689 |
-
|
| 690 |
-
#: admin/page-gwolle-gb.php:34
|
| 691 |
-
msgid "Overview"
|
| 692 |
-
msgstr "Overblik"
|
| 693 |
-
|
| 694 |
-
#: admin/page-gwolle-gb.php:48
|
| 695 |
-
msgid "Entry total"
|
| 696 |
-
msgstr "Indlæg ialt"
|
| 697 |
-
|
| 698 |
-
#: admin/page-gwolle-gb.php:51
|
| 699 |
-
msgid "Entries total"
|
| 700 |
-
msgstr "Indlæg ialt"
|
| 701 |
-
|
| 702 |
-
#: admin/page-gwolle-gb.php:67
|
| 703 |
-
msgid "Unlocked entry"
|
| 704 |
-
msgstr "Oplåst indlæg"
|
| 705 |
-
|
| 706 |
-
#: admin/page-gwolle-gb.php:69
|
| 707 |
-
msgid "Unlocked entries"
|
| 708 |
-
msgstr "Oplåst indlæg"
|
| 709 |
-
|
| 710 |
-
#: admin/page-gwolle-gb.php:87
|
| 711 |
-
msgid "New entries"
|
| 712 |
-
msgstr "Nye indlæg"
|
| 713 |
-
|
| 714 |
-
#: admin/page-gwolle-gb.php:103
|
| 715 |
-
msgid "Spam entry"
|
| 716 |
-
msgstr "Spam indlæg"
|
| 717 |
-
|
| 718 |
-
#: admin/page-gwolle-gb.php:105
|
| 719 |
-
msgid "Spam entries"
|
| 720 |
-
msgstr "Spam indlæg"
|
| 721 |
-
|
| 722 |
-
#: admin/page-gwolle-gb.php:121
|
| 723 |
-
msgid "Trashed entry"
|
| 724 |
-
msgstr "Affalds indlæg"
|
| 725 |
-
|
| 726 |
-
#: admin/page-gwolle-gb.php:123
|
| 727 |
-
msgid "Trashed entries"
|
| 728 |
-
msgstr "Affalds indlæg"
|
| 729 |
-
|
| 730 |
-
#: admin/page-gwolle-gb.php:136
|
| 731 |
-
msgid "Write admin entry"
|
| 732 |
-
msgstr "Skriv administrator indlæg"
|
| 733 |
-
|
| 734 |
-
#: admin/page-gwolle-gb.php:147 admin/tabs/emailtab.php:47
|
| 735 |
-
msgid ""
|
| 736 |
-
"Sorry, but the function <code>mail()</code> required to notify you by mail "
|
| 737 |
-
"is not enabled in your PHP configuration. You might want to install a "
|
| 738 |
-
"WordPress plugin that uses SMTP instead of <code>mail()</code>. Or you can "
|
| 739 |
-
"contact your hosting provider to change this."
|
| 740 |
-
msgstr ""
|
| 741 |
-
"Beklager, denne funktion <code>mail()</code> kræver at underrette dig pr "
|
| 742 |
-
"mail er ikke etableret i din PHP configuration. Du kan måske installere et "
|
| 743 |
-
"wordpress plugin der bruger SMTP i stedet for <code>mail()</code>. Eller du "
|
| 744 |
-
"kan kontakte din Webhotel for at ændre dette."
|
| 745 |
-
|
| 746 |
-
#: admin/page-gwolle-gb.php:173
|
| 747 |
-
msgid "Send me an e-mail when a new entry has been posted."
|
| 748 |
-
msgstr "Send mig en e-mail, når et nyt indlæg har været udgivet."
|
| 749 |
-
|
| 750 |
-
#: admin/page-gwolle-gb.php:175
|
| 751 |
-
msgid "Save setting"
|
| 752 |
-
msgstr "Gem indstillinger"
|
| 753 |
-
|
| 754 |
-
#: admin/page-gwolle-gb.php:180
|
| 755 |
-
msgid "The following users have subscribed to this service:"
|
| 756 |
-
msgstr "Følgende brugere har tilmeldt sig til denne service:"
|
| 757 |
-
|
| 758 |
-
#: admin/page-gwolle-gb.php:192 functions/function.log.php:173
|
| 759 |
-
#: admin/tabs/emailtab.php:66 admin/tabs/emailtab.php:119
|
| 760 |
-
msgid "You"
|
| 761 |
-
msgstr "Dig"
|
| 762 |
-
|
| 763 |
-
#: admin/page-gwolle-gb.php:201
|
| 764 |
-
msgid "No subscriber yet"
|
| 765 |
-
msgstr "Ingen abonnenter endnu"
|
| 766 |
-
|
| 767 |
-
#: admin/page-gwolle-gb.php:221
|
| 768 |
-
msgid "This is how you can get your guestbook displayed on your website:"
|
| 769 |
-
msgstr "Sådan får du vist din gæstebog på siden:"
|
| 770 |
-
|
| 771 |
-
#: admin/page-gwolle-gb.php:223
|
| 772 |
-
msgid "Create a new page."
|
| 773 |
-
msgstr "Opret en ny side."
|
| 774 |
-
|
| 775 |
-
#: admin/page-gwolle-gb.php:224
|
| 776 |
-
msgid ""
|
| 777 |
-
"Choose a title and set "[gwolle_gb]" (without the quotes) as the "
|
| 778 |
-
"content."
|
| 779 |
-
msgstr ""
|
| 780 |
-
"Vælg en titel, og sæt "[gwolle_gb]" (uden anførselstegn) som "
|
| 781 |
-
"indholdet."
|
| 782 |
-
|
| 783 |
-
#: admin/page-gwolle-gb.php:225
|
| 784 |
-
msgid ""
|
| 785 |
-
"It is probably a good idea to disable comments on that page; otherwise, your "
|
| 786 |
-
"visitors might get a little confused."
|
| 787 |
-
msgstr ""
|
| 788 |
-
"Det er nok en god ide at deaktivere kommentarer på denne side; ellers kan "
|
| 789 |
-
"dine besøgende blive lidt forvirret."
|
| 790 |
-
|
| 791 |
-
#: admin/page-gwolle-gb.php:232
|
| 792 |
-
msgid "These entries will be visible for your visitors:"
|
| 793 |
-
msgstr "Disse indlæg vil være synlige for dine besøgende:"
|
| 794 |
-
|
| 795 |
-
#: admin/page-gwolle-gb.php:234
|
| 796 |
-
msgid "Marked as Checked."
|
| 797 |
-
msgstr "Marker som tjekket."
|
| 798 |
-
|
| 799 |
-
#: admin/page-gwolle-gb.php:235
|
| 800 |
-
msgid "Not marked as Spam."
|
| 801 |
-
msgstr "Ikke markeret som Spam."
|
| 802 |
-
|
| 803 |
-
#: admin/page-gwolle-gb.php:236
|
| 804 |
-
msgid "Not marked as Trash."
|
| 805 |
-
msgstr "Ikke markeret som affald"
|
| 806 |
-
|
| 807 |
-
#: admin/page-gwolle-gb.php:240
|
| 808 |
-
msgid "The Main Menu counter counts the following entries:"
|
| 809 |
-
msgstr "Hovedmenuen tæller følgende oplysninger:"
|
| 810 |
-
|
| 811 |
-
#: admin/page-gwolle-gb.php:242
|
| 812 |
-
msgid "Marked as Unchecked (You might want to moderate them)."
|
| 813 |
-
msgstr "Markeret som ukontrolleret (Du vil måske moderere dem)."
|
| 814 |
-
|
| 815 |
-
#: admin/page-gwolle-gb.php:243
|
| 816 |
-
msgid "Not marked as Spam (You might want to check them)."
|
| 817 |
-
msgstr "Ikke markeret som spam (Du vil måske tjekke dem)."
|
| 818 |
-
|
| 819 |
-
#: admin/page-gwolle-gb.php:244
|
| 820 |
-
msgid "Not marked as Trash (You decide what goes to the trash)."
|
| 821 |
-
msgstr "Ikke markeret som affald (Du bestemmer, hvad der går til papirkurven)."
|
| 822 |
-
|
| 823 |
-
#: admin/page-gwolle-gb.php:251
|
| 824 |
-
msgid "This plugin is being maintained by Marcel Pol from"
|
| 825 |
-
msgstr "Dette plugin bliver vedligeholdt af Marcel Pol fra"
|
| 826 |
-
|
| 827 |
-
#: admin/page-gwolle-gb.php:255
|
| 828 |
-
msgid "Review this plugin."
|
| 829 |
-
msgstr "Anmeld dette plugin"
|
| 830 |
-
|
| 831 |
-
#: admin/page-gwolle-gb.php:256
|
| 832 |
-
msgid "If this plugin has any value to you, then please leave a review at"
|
| 833 |
-
msgstr ""
|
| 834 |
-
"Hvis dette plugin har nogen værdi for dig, så kan du skrive en anmeldelse på"
|
| 835 |
-
|
| 836 |
-
#: admin/page-gwolle-gb.php:257
|
| 837 |
-
msgid "The plugin page at wordpress.org."
|
| 838 |
-
msgstr "Plugin siden på wordpress.org."
|
| 839 |
-
|
| 840 |
-
#: admin/page-gwolle-gb.php:258
|
| 841 |
-
msgid "the plugin page at wordpress.org"
|
| 842 |
-
msgstr "Plugin siden på wordpress.org."
|
| 843 |
-
|
| 844 |
-
#: admin/page-gwolle-gb.php:261
|
| 845 |
-
msgid "Donate to the EFF."
|
| 846 |
-
msgstr "Doner til EFF"
|
| 847 |
-
|
| 848 |
-
#: admin/page-gwolle-gb.php:262
|
| 849 |
-
msgid ""
|
| 850 |
-
"The Electronic Frontier Foundation is one of the few organisations that "
|
| 851 |
-
"wants to keep the internet a free place."
|
| 852 |
-
msgstr ""
|
| 853 |
-
"Electronic Frontier Foundation er en af de få organisationer, der ønsker at "
|
| 854 |
-
"holde internettet et frit sted."
|
| 855 |
-
|
| 856 |
-
#: admin/page-gwolle-gb.php:263
|
| 857 |
-
msgid "Please donate to the EFF."
|
| 858 |
-
msgstr "Giv venligst et bidrag til EFF."
|
| 859 |
-
|
| 860 |
-
#: admin/page-gwolle-gb.php:265 admin/page-gwolle-gb.php:267
|
| 861 |
-
msgid "Donate to the maintainer."
|
| 862 |
-
msgstr "Donér til vedligeholderen."
|
| 863 |
-
|
| 864 |
-
#: admin/page-gwolle-gb.php:266
|
| 865 |
-
msgid ""
|
| 866 |
-
"If you rather want to donate to the maintainer of the plugin, you can donate "
|
| 867 |
-
"through PayPal."
|
| 868 |
-
msgstr ""
|
| 869 |
-
"Hvis du hellere vil donere til vedligeholderen af plugin, kan du donere via "
|
| 870 |
-
"PayPal."
|
| 871 |
-
|
| 872 |
-
#: admin/page-gwolle-gb.php:267
|
| 873 |
-
msgid "Donate through"
|
| 874 |
-
msgstr "Doner igennem "
|
| 875 |
-
|
| 876 |
-
#: admin/page-gwolle-gb.php:267
|
| 877 |
-
msgid "PayPal"
|
| 878 |
-
msgstr "PayPal"
|
| 879 |
-
|
| 880 |
-
#: admin/page-gwolle-gb.php:268
|
| 881 |
-
msgid "to"
|
| 882 |
-
msgstr "til"
|
| 883 |
-
|
| 884 |
-
#: admin/page-gwolle-gb.php:338
|
| 885 |
-
msgid "Welcome to the Guestbook!"
|
| 886 |
-
msgstr "Velkommen til gæstebogen!"
|
| 887 |
-
|
| 888 |
-
#: admin/page-gwolle-gb.php:339
|
| 889 |
-
msgid "E-mail Notifications"
|
| 890 |
-
msgstr "E-Mail Notifikationer"
|
| 891 |
-
|
| 892 |
-
#: admin/page-gwolle-gb.php:340
|
| 893 |
-
msgid "Review and Donate"
|
| 894 |
-
msgstr "Anmeld og Doner"
|
| 895 |
-
|
| 896 |
-
#: admin/page-gwolle-gb.php:342 admin/page-gwolle-gb.php:343
|
| 897 |
-
msgid "Help"
|
| 898 |
-
msgstr "Hjælp"
|
| 899 |
-
|
| 900 |
-
#: admin/page-gwolle-gb.php:344
|
| 901 |
-
msgid "This plugin uses the following scripts/programs/images:"
|
| 902 |
-
msgstr "Dette plugin bruger følgende scripts / programmer / billeder:"
|
| 903 |
-
|
| 904 |
-
#: admin/page-gwolle-gb.php:349
|
| 905 |
-
msgid "Gwolle Guestbook"
|
| 906 |
-
msgstr "Gwolle Gæstebog"
|
| 907 |
-
|
| 908 |
-
#: admin/page-import.php:90
|
| 909 |
-
msgid ""
|
| 910 |
-
"I'm sorry, but I wasn't able to import entries from DMSGuestbook "
|
| 911 |
-
"successfully."
|
| 912 |
-
msgstr ""
|
| 913 |
-
"Jeg er ked af, men jeg var ikke i stand til at importere indlæg fra "
|
| 914 |
-
"DMSGuestbook."
|
| 915 |
-
|
| 916 |
-
#: admin/page-import.php:92
|
| 917 |
-
msgid "1 entry imported successfully from DMSGuestbook."
|
| 918 |
-
msgstr "1 indlæg importeret fra DMSGuestbook."
|
| 919 |
-
|
| 920 |
-
#: admin/page-import.php:94
|
| 921 |
-
#, php-format
|
| 922 |
-
msgid "%d entries imported successfully from DMSGuestbook."
|
| 923 |
-
msgstr "% d indlæg importeret fra DMSGuestbook."
|
| 924 |
-
|
| 925 |
-
#: admin/page-import.php:98
|
| 926 |
-
msgid ""
|
| 927 |
-
"<strong>Nothing to import.</strong> The guestbook you've chosen does not "
|
| 928 |
-
"contain any entries."
|
| 929 |
-
msgstr ""
|
| 930 |
-
"<strong> Intet at importere </ strong> Gæstebogen du har valgt indeholder "
|
| 931 |
-
"ingen indlæg.."
|
| 932 |
-
|
| 933 |
-
#: admin/page-import.php:103
|
| 934 |
-
msgid "I'm sorry, but I wasn't able to find the MySQL table of DMSGuestbook."
|
| 935 |
-
msgstr ""
|
| 936 |
-
"Jeg er ked af det, men jeg var ikke i stand til at finde den MySQL tabel "
|
| 937 |
-
"over DMSGuestbook."
|
| 938 |
-
|
| 939 |
-
#: admin/page-import.php:108
|
| 940 |
-
msgid "You haven't chosen a guestbook. Please select one and try again."
|
| 941 |
-
msgstr "Du har ikke valgt en gæstebog. Vælg en, og prøv igen."
|
| 942 |
-
|
| 943 |
-
#: admin/page-import.php:133 admin/page-import.php:181
|
| 944 |
-
msgid ""
|
| 945 |
-
"You haven't chosen how to import from WordPress comments. Please choose and "
|
| 946 |
-
"try again."
|
| 947 |
-
msgstr ""
|
| 948 |
-
"Du har ikke valgt, hvordan du importere fra WordPress kommentarer. Vælg "
|
| 949 |
-
"venligst og prøv igen."
|
| 950 |
-
|
| 951 |
-
#: admin/page-import.php:168
|
| 952 |
-
msgid ""
|
| 953 |
-
"I'm sorry, but I wasn't able to import comments from that page successfully."
|
| 954 |
-
msgstr ""
|
| 955 |
-
"Jeg er ked af det, men jeg var ikke i stand til at importere kommentarer fra "
|
| 956 |
-
"den pågældende side med succes."
|
| 957 |
-
|
| 958 |
-
#: admin/page-import.php:170
|
| 959 |
-
msgid "1 entry imported successfully from WordPress comments."
|
| 960 |
-
msgstr "1 indlæg importeret fra WordPress kommentarer."
|
| 961 |
-
|
| 962 |
-
#: admin/page-import.php:172
|
| 963 |
-
#, php-format
|
| 964 |
-
msgid "%d entries imported successfully from WordPress comments."
|
| 965 |
-
msgstr "% d indlæg importeret fra WordPress kommentarer."
|
| 966 |
-
|
| 967 |
-
#: admin/page-import.php:176
|
| 968 |
-
msgid ""
|
| 969 |
-
"<strong>Nothing to import.</strong> There seem to be no comments on this "
|
| 970 |
-
"page, post or at all."
|
| 971 |
-
msgstr ""
|
| 972 |
-
"<strong> Intet at importere. </ strong> Der synes ikke at være nogen "
|
| 973 |
-
"kommentarer til denne side, indlæg overhovedet."
|
| 974 |
-
|
| 975 |
-
#: admin/page-import.php:195
|
| 976 |
-
msgid "Your filesize is too large."
|
| 977 |
-
msgstr "Din filstørrelse er for stor."
|
| 978 |
-
|
| 979 |
-
#: admin/page-import.php:216
|
| 980 |
-
msgid "Invalid file format."
|
| 981 |
-
msgstr "Ugyldigt filformat."
|
| 982 |
-
|
| 983 |
-
#: admin/page-import.php:241
|
| 984 |
-
msgid ""
|
| 985 |
-
"It seems your CSV file is from an export that is not compatible with this "
|
| 986 |
-
"version of Gwolle-GB."
|
| 987 |
-
msgstr ""
|
| 988 |
-
"Det ser ud til din CSV-fil er fra en eksport, der ikke er kompatibel med "
|
| 989 |
-
"denne version af Gwolle-GB."
|
| 990 |
-
|
| 991 |
-
#: admin/page-import.php:250 admin/page-import.php:284
|
| 992 |
-
msgid "Your data seems to be corrupt. Import failed."
|
| 993 |
-
msgstr "Dine data synes at være korrupt. Import mislykkedes."
|
| 994 |
-
|
| 995 |
-
#: admin/page-import.php:293
|
| 996 |
-
msgid "I'm sorry, but I wasn't able to import entries from the CSV file."
|
| 997 |
-
msgstr ""
|
| 998 |
-
"Undskyld, men jeg var ikke i stand til at importere poster fra CSV-filen."
|
| 999 |
-
|
| 1000 |
-
#: admin/page-import.php:295
|
| 1001 |
-
msgid "1 entry imported successfully from the CSV file."
|
| 1002 |
-
msgstr "1 indlæg importeret fra CSV-filen."
|
| 1003 |
-
|
| 1004 |
-
#: admin/page-import.php:297
|
| 1005 |
-
#, php-format
|
| 1006 |
-
msgid "%d entries imported successfully from the CSV file."
|
| 1007 |
-
msgstr "%d indlæg importeret fra CSV-filen."
|
| 1008 |
-
|
| 1009 |
-
#: admin/page-import.php:306
|
| 1010 |
-
msgid "Your upload triggered the following error:"
|
| 1011 |
-
msgstr "Din upload udløste følgende fejl:"
|
| 1012 |
-
|
| 1013 |
-
#: admin/page-import.php:319
|
| 1014 |
-
msgid "Import guestbook entries."
|
| 1015 |
-
msgstr "Import gæstebogsindlæg."
|
| 1016 |
-
|
| 1017 |
-
#: admin/page-import.php:338
|
| 1018 |
-
msgid "Import guestbook entries from DMSGuestbook"
|
| 1019 |
-
msgstr "Importer gæstebogs indlæg fra DMSGuestbook"
|
| 1020 |
-
|
| 1021 |
-
#: admin/page-import.php:367
|
| 1022 |
-
#, php-format
|
| 1023 |
-
msgid "%d entries were found and will be imported."
|
| 1024 |
-
msgstr "%d indlæg blev fundet, og vil blive importeret."
|
| 1025 |
-
|
| 1026 |
-
#: admin/page-import.php:370 admin/page-import.php:411
|
| 1027 |
-
msgid "The importer will preserve the following data per entry:"
|
| 1028 |
-
msgstr "Importøren vil bevare følgende data pr indlæg:"
|
| 1029 |
-
|
| 1030 |
-
#: admin/page-import.php:381 admin/page-import.php:422
|
| 1031 |
-
msgid ""
|
| 1032 |
-
"However, data such as HTML formatting is not supported by Gwolle-GB and "
|
| 1033 |
-
"<strong>will not</strong> be imported."
|
| 1034 |
-
msgstr ""
|
| 1035 |
-
"Imidlertid er data såsom HTML-formatering ikke understøttet af Gwolle-GB og "
|
| 1036 |
-
"kan <strong> ikke </ strong> importeres."
|
| 1037 |
-
|
| 1038 |
-
#: admin/page-import.php:383 admin/page-import.php:426
|
| 1039 |
-
msgid ""
|
| 1040 |
-
"The importer does not delete any data, so you can go back whenever you want."
|
| 1041 |
-
msgstr "Importøren sletter ikke nogen data, så du kan gå tilbage når du vil."
|
| 1042 |
-
|
| 1043 |
-
#: admin/page-import.php:389
|
| 1044 |
-
msgid "Import all entries from DMSGuestbook."
|
| 1045 |
-
msgstr "Importer alle indlæg fra DMSGuestbook."
|
| 1046 |
-
|
| 1047 |
-
#: admin/page-import.php:393 admin/page-import.php:518
|
| 1048 |
-
#: admin/page-import.php:537
|
| 1049 |
-
msgid "Start import"
|
| 1050 |
-
msgstr "Begynd importer"
|
| 1051 |
-
|
| 1052 |
-
#: admin/page-import.php:396
|
| 1053 |
-
msgid "DMSGuestbook was not found."
|
| 1054 |
-
msgstr "DMSGuestbook blev ikke fundet."
|
| 1055 |
-
|
| 1056 |
-
#: admin/page-import.php:405
|
| 1057 |
-
msgid "Import guestbook entries from WordPress comments"
|
| 1058 |
-
msgstr "Importer gæstebogsindlæg fra WordPress kommentarer"
|
| 1059 |
-
|
| 1060 |
-
#: admin/page-import.php:414
|
| 1061 |
-
msgid "User ID"
|
| 1062 |
-
msgstr "Bruger ID"
|
| 1063 |
-
|
| 1064 |
-
#: admin/page-import.php:420
|
| 1065 |
-
msgid "\"approved\" status"
|
| 1066 |
-
msgstr "\"Godkendt\" status"
|
| 1067 |
-
|
| 1068 |
-
#: admin/page-import.php:424
|
| 1069 |
-
msgid "Spam comments will not be imported."
|
| 1070 |
-
msgstr "Spam-kommentarer vil ikke blive importeret."
|
| 1071 |
-
|
| 1072 |
-
#: admin/page-import.php:429
|
| 1073 |
-
msgid "Select a page to import the comments from:"
|
| 1074 |
-
msgstr "Vælg en side at importere kommentarerne fra:"
|
| 1075 |
-
|
| 1076 |
-
#: admin/page-import.php:431 admin/page-import.php:469
|
| 1077 |
-
msgid "Select"
|
| 1078 |
-
msgstr "Vælg"
|
| 1079 |
-
|
| 1080 |
-
#: admin/page-import.php:455 admin/page-import.php:492
|
| 1081 |
-
msgid " Comments"
|
| 1082 |
-
msgstr "Kommentarer"
|
| 1083 |
-
|
| 1084 |
-
#: admin/page-import.php:457 admin/page-import.php:494
|
| 1085 |
-
msgid "1 Comment"
|
| 1086 |
-
msgstr "1 Kommentar"
|
| 1087 |
-
|
| 1088 |
-
#: admin/page-import.php:467
|
| 1089 |
-
msgid "Select a post to import the comments from:"
|
| 1090 |
-
msgstr "Vælg et indlæg at importere kommentarer fra:"
|
| 1091 |
-
|
| 1092 |
-
#: admin/page-import.php:511
|
| 1093 |
-
msgid "Select where to import the comments from:"
|
| 1094 |
-
msgstr "Vælg, hvor der skal importeres kommentarer fra:"
|
| 1095 |
-
|
| 1096 |
-
#: admin/page-import.php:512
|
| 1097 |
-
msgid "Comments from selected page."
|
| 1098 |
-
msgstr "Kommentarer fra udvalgte side."
|
| 1099 |
-
|
| 1100 |
-
#: admin/page-import.php:513
|
| 1101 |
-
msgid "Comments from selected post."
|
| 1102 |
-
msgstr "Kommentarer fra udvalgte post."
|
| 1103 |
-
|
| 1104 |
-
#: admin/page-import.php:514
|
| 1105 |
-
msgid "All Comments"
|
| 1106 |
-
msgstr "Alle Kommentarer"
|
| 1107 |
-
|
| 1108 |
-
#: admin/page-import.php:526
|
| 1109 |
-
msgid "Import guestbook entries from Gwolle-GB"
|
| 1110 |
-
msgstr "Importer gæstebogs indlæg fra Gwolle-GB"
|
| 1111 |
-
|
| 1112 |
-
#: admin/page-import.php:532
|
| 1113 |
-
msgid "Select a CSV file with exported entries to import again:"
|
| 1114 |
-
msgstr "Vælg en CSV fil med eksporterede indlæg at importere igen."
|
| 1115 |
-
|
| 1116 |
-
#: admin/page-settings.php:326
|
| 1117 |
-
msgid "Form"
|
| 1118 |
-
msgstr "Formular"
|
| 1119 |
-
|
| 1120 |
-
#: admin/page-settings.php:327
|
| 1121 |
-
msgid "Reading"
|
| 1122 |
-
msgstr "Læsning"
|
| 1123 |
-
|
| 1124 |
-
#: admin/page-settings.php:328
|
| 1125 |
-
msgid "Admin"
|
| 1126 |
-
msgstr "Admin"
|
| 1127 |
-
|
| 1128 |
-
#: admin/page-settings.php:329 frontend/write.php:282 frontend/write.php:313
|
| 1129 |
-
msgid "Anti-spam"
|
| 1130 |
-
msgstr "Anti-Spam"
|
| 1131 |
-
|
| 1132 |
-
#: admin/page-settings.php:330
|
| 1133 |
-
msgid "E-mail"
|
| 1134 |
-
msgstr "E-Mail"
|
| 1135 |
-
|
| 1136 |
-
#: admin/page-settings.php:331 admin/tabs/uninstalltab.php:45
|
| 1137 |
-
msgid "Uninstall"
|
| 1138 |
-
msgstr "Afinstaller"
|
| 1139 |
-
|
| 1140 |
-
#: frontend/posthandling.php:39
|
| 1141 |
-
msgid "Submitting a new guestbook entry is only allowed for logged-in users."
|
| 1142 |
-
msgstr ""
|
| 1143 |
-
"Indsendelse af et nyt gæstebogsindlæg er kun tilladt for registrerede "
|
| 1144 |
-
"brugere."
|
| 1145 |
-
|
| 1146 |
-
#: frontend/posthandling.php:208 frontend/posthandling.php:251
|
| 1147 |
-
msgid "There were errors submitting your guestbook entry."
|
| 1148 |
-
msgstr "Der var fejl ved dit indlæg."
|
| 1149 |
-
|
| 1150 |
-
#: frontend/posthandling.php:214
|
| 1151 |
-
msgid "Your name is not filled in, even though it is mandatory."
|
| 1152 |
-
msgstr "Dit navn er ikke udfyldt, selv om det er obligatorisk."
|
| 1153 |
-
|
| 1154 |
-
#: frontend/posthandling.php:217
|
| 1155 |
-
msgid "Your origin is not filled in, even though it is mandatory."
|
| 1156 |
-
msgstr "Din oprindelse ikke udfyldt, selv om det er obligatorisk."
|
| 1157 |
-
|
| 1158 |
-
#: frontend/posthandling.php:220
|
| 1159 |
-
msgid ""
|
| 1160 |
-
"Your e-mail address is not filled in correctly, even though it is mandatory."
|
| 1161 |
-
msgstr ""
|
| 1162 |
-
"Din e-mail-adresse er ikke udfyldt korrekt, selvom det er obligatorisk."
|
| 1163 |
-
|
| 1164 |
-
#: frontend/posthandling.php:223
|
| 1165 |
-
msgid "Your website is not filled in, even though it is mandatory."
|
| 1166 |
-
msgstr "Din hjemmeside er ikke udfyldt, selv om det er obligatorisk."
|
| 1167 |
-
|
| 1168 |
-
#: frontend/posthandling.php:226
|
| 1169 |
-
msgid "There is no message, even though it is mandatory."
|
| 1170 |
-
msgstr "Der er ingen meddelelse, selvom det er obligatorisk."
|
| 1171 |
-
|
| 1172 |
-
#: frontend/posthandling.php:229
|
| 1173 |
-
msgid ""
|
| 1174 |
-
"The anti-spam question was not answered correctly, even though it is "
|
| 1175 |
-
"mandatory."
|
| 1176 |
-
msgstr ""
|
| 1177 |
-
"Anti-spam spørgsmålet blev ikke besvaret korrekt, selvom det er obligatorisk."
|
| 1178 |
-
|
| 1179 |
-
#: frontend/posthandling.php:232
|
| 1180 |
-
msgid "The reCAPTCHA was not filled in correctly, even though it is mandatory."
|
| 1181 |
-
msgstr "ReCAPTCHA var ikke udfyldt korrekt, selvom det er obligatorisk."
|
| 1182 |
-
|
| 1183 |
-
#: frontend/posthandling.php:324
|
| 1184 |
-
msgid "Double post: An entry with the data you entered has already been saved."
|
| 1185 |
-
msgstr ""
|
| 1186 |
-
"Dobbelt indlæg: En post med de data, du har indtastet er allerede gemt."
|
| 1187 |
-
|
| 1188 |
-
#: frontend/posthandling.php:341
|
| 1189 |
-
msgid "Thank you for your entry."
|
| 1190 |
-
msgstr "Tak for dit indlæg."
|
| 1191 |
-
|
| 1192 |
-
#: frontend/posthandling.php:343
|
| 1193 |
-
msgid "We will review it and unlock it in a short while."
|
| 1194 |
-
msgstr "Vi vil gennemgå det og aktivere det snarrest."
|
| 1195 |
-
|
| 1196 |
-
#: frontend/posthandling.php:380 admin/tabs/emailtab.php:138
|
| 1197 |
-
msgid ""
|
| 1198 |
-
"\n"
|
| 1199 |
-
"Hello,\n"
|
| 1200 |
-
"\n"
|
| 1201 |
-
"There is a new guestbook entry at '%blog_name%'.\n"
|
| 1202 |
-
"You can check it at %entry_management_url%.\n"
|
| 1203 |
-
"\n"
|
| 1204 |
-
"Have a nice day.\n"
|
| 1205 |
-
"Your Gwolle-GB-Mailer\n"
|
| 1206 |
-
"\n"
|
| 1207 |
-
"\n"
|
| 1208 |
-
"Website address: %blog_url%\n"
|
| 1209 |
-
"User name: %user_name%\n"
|
| 1210 |
-
"User email: %user_email%\n"
|
| 1211 |
-
"Entry status: %status%\n"
|
| 1212 |
-
"Entry content:\n"
|
| 1213 |
-
"%entry_content%\n"
|
| 1214 |
-
msgstr ""
|
| 1215 |
-
"\n"
|
| 1216 |
-
"Hej,\n"
|
| 1217 |
-
"\n"
|
| 1218 |
-
"Der er et nyt gæstebogs indlæg ved '%blog_name%'.\n"
|
| 1219 |
-
"Du kan tjekke det på % entry_management_url%.\n"
|
| 1220 |
-
"\n"
|
| 1221 |
-
"Hav en god dag.\n"
|
| 1222 |
-
"Din Gwolle-GB-Mailer\n"
|
| 1223 |
-
"\n"
|
| 1224 |
-
"\n"
|
| 1225 |
-
"Websted: % blog_url%\n"
|
| 1226 |
-
"Brugernavn:% user_name%\n"
|
| 1227 |
-
"Bruger email:% user_email%\n"
|
| 1228 |
-
"Indlægsstatus:% status%\n"
|
| 1229 |
-
"Indlæg indhold:\n"
|
| 1230 |
-
"% entry_content%\n"
|
| 1231 |
-
|
| 1232 |
-
#: frontend/posthandling.php:401 frontend/posthandling.php:467
|
| 1233 |
-
msgid "New Guestbook Entry"
|
| 1234 |
-
msgstr "Nyt Gæstebogs indlæg"
|
| 1235 |
-
|
| 1236 |
-
#: frontend/posthandling.php:448 admin/tabs/emailtab.php:198
|
| 1237 |
-
msgid ""
|
| 1238 |
-
"\n"
|
| 1239 |
-
"Hello,\n"
|
| 1240 |
-
"\n"
|
| 1241 |
-
"You have just posted a new guestbook entry at '%blog_name%'.\n"
|
| 1242 |
-
"\n"
|
| 1243 |
-
"Have a nice day.\n"
|
| 1244 |
-
"The editors at %blog_name%.\n"
|
| 1245 |
-
"\n"
|
| 1246 |
-
"\n"
|
| 1247 |
-
"Website address: %blog_url%\n"
|
| 1248 |
-
"User name: %user_name%\n"
|
| 1249 |
-
"User email: %user_email%\n"
|
| 1250 |
-
"Entry content:\n"
|
| 1251 |
-
"%entry_content%\n"
|
| 1252 |
-
msgstr ""
|
| 1253 |
-
"\n"
|
| 1254 |
-
"Hej,\n"
|
| 1255 |
-
"\n"
|
| 1256 |
-
"Du har lige sendt en ny gæstebogsindlæg ved '%blog_name%'.\n"
|
| 1257 |
-
"\n"
|
| 1258 |
-
"Ha' en god dag.\n"
|
| 1259 |
-
"Redaktøren på %blog_name%.\n"
|
| 1260 |
-
"\n"
|
| 1261 |
-
"\n"
|
| 1262 |
-
"Hjemmeside addresse: %blog_url%\n"
|
| 1263 |
-
"Brugernavn: %user_name%\n"
|
| 1264 |
-
"Bruger email: %user_email%\n"
|
| 1265 |
-
"Indlægs indhold:\n"
|
| 1266 |
-
"%entry_content%\n"
|
| 1267 |
-
|
| 1268 |
-
#: frontend/read.php:79
|
| 1269 |
-
msgid "Previous page"
|
| 1270 |
-
msgstr "Forrige side"
|
| 1271 |
-
|
| 1272 |
-
#: frontend/read.php:92 frontend/read.php:100 frontend/read.php:106
|
| 1273 |
-
#: frontend/read.php:121 frontend/read.php:132
|
| 1274 |
-
msgid "Page"
|
| 1275 |
-
msgstr "Side"
|
| 1276 |
-
|
| 1277 |
-
#: frontend/read.php:103 frontend/read.php:133
|
| 1278 |
-
msgid "Next page"
|
| 1279 |
-
msgstr "Næste side"
|
| 1280 |
-
|
| 1281 |
-
#: frontend/read.php:144
|
| 1282 |
-
msgid "(no entries yet)"
|
| 1283 |
-
msgstr "(ingen indlæg endnu)"
|
| 1284 |
-
|
| 1285 |
-
#: frontend/read.php:192
|
| 1286 |
-
msgid "from"
|
| 1287 |
-
msgstr "fra"
|
| 1288 |
-
|
| 1289 |
-
#: frontend/read.php:201
|
| 1290 |
-
msgid "wrote on"
|
| 1291 |
-
msgstr "skrev den"
|
| 1292 |
-
|
| 1293 |
-
#: frontend/read.php:205
|
| 1294 |
-
msgid "on"
|
| 1295 |
-
msgstr "på"
|
| 1296 |
-
|
| 1297 |
-
#: frontend/rss.php:84
|
| 1298 |
-
msgid "Guestbook Entry by"
|
| 1299 |
-
msgstr "Gæstebogs indlæg af"
|
| 1300 |
-
|
| 1301 |
-
#: frontend/widget.php:12
|
| 1302 |
-
msgid "Displays the recent guestbook entries."
|
| 1303 |
-
msgstr "Vis seneste indlæg i gæstebogen."
|
| 1304 |
-
|
| 1305 |
-
#: frontend/widget.php:28 frontend/widget.php:194
|
| 1306 |
-
msgid "Visit guestbook"
|
| 1307 |
-
msgstr "Besøg gæstebogen"
|
| 1308 |
-
|
| 1309 |
-
#: frontend/widget.php:147
|
| 1310 |
-
msgid "Click here to get to the guestbook."
|
| 1311 |
-
msgstr "Klik her for at gå til gæstebogen."
|
| 1312 |
-
|
| 1313 |
-
#: frontend/widget.php:210
|
| 1314 |
-
msgid "Title:"
|
| 1315 |
-
msgstr "Titel:"
|
| 1316 |
-
|
| 1317 |
-
#: frontend/widget.php:216
|
| 1318 |
-
msgid "Number of entries:"
|
| 1319 |
-
msgstr "Antal af indlæg"
|
| 1320 |
-
|
| 1321 |
-
#: frontend/widget.php:232
|
| 1322 |
-
msgid "Best entries to show:"
|
| 1323 |
-
msgstr "Vis bedste indlæg"
|
| 1324 |
-
|
| 1325 |
-
#: frontend/widget.php:234
|
| 1326 |
-
msgid "List of entry_id's, comma-separated"
|
| 1327 |
-
msgstr "Listen af indlægs ID'er, komma separeret "
|
| 1328 |
-
|
| 1329 |
-
#: frontend/widget.php:240
|
| 1330 |
-
msgid "Show name of author."
|
| 1331 |
-
msgstr "Vis navnet på forfatteren."
|
| 1332 |
-
|
| 1333 |
-
#: frontend/widget.php:246
|
| 1334 |
-
msgid "Show date of entry."
|
| 1335 |
-
msgstr "Vis indlægets dato"
|
| 1336 |
-
|
| 1337 |
-
#: frontend/widget.php:250
|
| 1338 |
-
msgid "Number of words for each entry:"
|
| 1339 |
-
msgstr "Antal ord i hvert indlæg:"
|
| 1340 |
-
|
| 1341 |
-
#: frontend/widget.php:266
|
| 1342 |
-
msgid "Link text:"
|
| 1343 |
-
msgstr "Genvejs tekst:"
|
| 1344 |
-
|
| 1345 |
-
#: frontend/widget.php:272
|
| 1346 |
-
msgid "Select the page of the guestbook:"
|
| 1347 |
-
msgstr "Vælg siden i gæstebogen:"
|
| 1348 |
-
|
| 1349 |
-
#: frontend/widget.php:274
|
| 1350 |
-
msgid "Select page"
|
| 1351 |
-
msgstr "Vælg side"
|
| 1352 |
-
|
| 1353 |
-
#: frontend/write.php:94
|
| 1354 |
-
msgid "Write a new entry."
|
| 1355 |
-
msgstr "Skriv et nyt indlæg."
|
| 1356 |
-
|
| 1357 |
-
#: frontend/write.php:102
|
| 1358 |
-
msgid "Log in to post an entry"
|
| 1359 |
-
msgstr "Log ind for at skrive et indlæg"
|
| 1360 |
-
|
| 1361 |
-
#: frontend/write.php:129 admin/tabs/formtab.php:58
|
| 1362 |
-
msgid "Write a new entry for the Guestbook"
|
| 1363 |
-
msgstr "Skriv et nyt indlæg til gæstebogen"
|
| 1364 |
-
|
| 1365 |
-
#: frontend/write.php:158 frontend/write.php:165 admin/tabs/formtab.php:125
|
| 1366 |
-
#: admin/tabs/readingtab.php:164
|
| 1367 |
-
msgid "City"
|
| 1368 |
-
msgstr "By"
|
| 1369 |
-
|
| 1370 |
-
#: frontend/write.php:177 frontend/write.php:184 admin/tabs/formtab.php:145
|
| 1371 |
-
msgid "Email"
|
| 1372 |
-
msgstr "Email"
|
| 1373 |
-
|
| 1374 |
-
#: frontend/write.php:283
|
| 1375 |
-
msgid "Question:"
|
| 1376 |
-
msgstr "Spørgsmål:"
|
| 1377 |
-
|
| 1378 |
-
#: frontend/write.php:289
|
| 1379 |
-
msgid "Answer"
|
| 1380 |
-
msgstr "Svar"
|
| 1381 |
-
|
| 1382 |
-
#: frontend/write.php:333
|
| 1383 |
-
msgid "Submit"
|
| 1384 |
-
msgstr "Send"
|
| 1385 |
-
|
| 1386 |
-
#: frontend/write.php:342 admin/tabs/formtab.php:74
|
| 1387 |
-
msgid ""
|
| 1388 |
-
"\n"
|
| 1389 |
-
"Fields marked with * are obligatory.\n"
|
| 1390 |
-
"Your E-mail address wil not be published.\n"
|
| 1391 |
-
"For security reasons we save the ip address %ip%.\n"
|
| 1392 |
-
"It might be that your entry will only be visible in the guestbook after we "
|
| 1393 |
-
"reviewed it.\n"
|
| 1394 |
-
"We reserve our right to edit, delete, or not publish entries.\n"
|
| 1395 |
-
msgstr ""
|
| 1396 |
-
"\n"
|
| 1397 |
-
"Felter markeret med * er oblitoriske.\n"
|
| 1398 |
-
"Din E-mail adresse vil ikke blive offentliggjort.\n"
|
| 1399 |
-
"Af sikkerhedsårsager vil vi gemme din ip adresse %ip%.\n"
|
| 1400 |
-
"Det er muligt at dit indlæg først vil blive vist i gæstebogen, efter det er "
|
| 1401 |
-
"blevet gennemlæst.\n"
|
| 1402 |
-
"Vi forbeholder os retten til at redigere, slette, eller ikke at "
|
| 1403 |
-
"offentliggøre indlæg.\n"
|
| 1404 |
-
|
| 1405 |
-
#: functions/function.log.php:94
|
| 1406 |
-
msgid "Entry has been locked."
|
| 1407 |
-
msgstr "Indlæg er blevet låst."
|
| 1408 |
-
|
| 1409 |
-
#: functions/function.log.php:95
|
| 1410 |
-
msgid "Entry has been checked."
|
| 1411 |
-
msgstr "Indlæg er blevet kontrolleret."
|
| 1412 |
-
|
| 1413 |
-
#: functions/function.log.php:96
|
| 1414 |
-
msgid "Entry marked as spam."
|
| 1415 |
-
msgstr "Indlæg er markeret som spam."
|
| 1416 |
-
|
| 1417 |
-
#: functions/function.log.php:97
|
| 1418 |
-
msgid "Entry marked as not spam."
|
| 1419 |
-
msgstr "Indlæg markeret som ikke-spam."
|
| 1420 |
-
|
| 1421 |
-
#: functions/function.log.php:98
|
| 1422 |
-
msgid "Entry has been edited."
|
| 1423 |
-
msgstr "Indlæg er blevet redigeret."
|
| 1424 |
-
|
| 1425 |
-
#: functions/function.log.php:99
|
| 1426 |
-
msgid "Imported from DMSGuestbook"
|
| 1427 |
-
msgstr "Importeret fra DMSGuestbook"
|
| 1428 |
-
|
| 1429 |
-
#: functions/function.log.php:100
|
| 1430 |
-
msgid "Imported from WordPress comments"
|
| 1431 |
-
msgstr "Importeret fra WordPress kommentarer"
|
| 1432 |
-
|
| 1433 |
-
#: functions/function.log.php:101
|
| 1434 |
-
msgid "Imported from Gwolle-GB"
|
| 1435 |
-
msgstr "Importeret fra Gwolle-DK"
|
| 1436 |
-
|
| 1437 |
-
#: functions/function.log.php:102
|
| 1438 |
-
msgid "Exported to CSV file"
|
| 1439 |
-
msgstr "Eksporteres til CSV-fil"
|
| 1440 |
-
|
| 1441 |
-
#: functions/function.log.php:103
|
| 1442 |
-
msgid "Entry has been trashed."
|
| 1443 |
-
msgstr "Indlæg er blevet smidt i papirkurven."
|
| 1444 |
-
|
| 1445 |
-
#: functions/function.log.php:104
|
| 1446 |
-
msgid "Entry has been untrashed."
|
| 1447 |
-
msgstr "Indlæg er blevet reddet fra papirkurven."
|
| 1448 |
-
|
| 1449 |
-
#: functions/function.misc.php:63
|
| 1450 |
-
msgid "No content to display. This entry is empty."
|
| 1451 |
-
msgstr "Intet indhold at vise. Dette indlæg er tomt."
|
| 1452 |
-
|
| 1453 |
-
#: admin/tabs/admintab.php:26
|
| 1454 |
-
msgid "Entries per page in the admin"
|
| 1455 |
-
msgstr "Indlæg per side i admin"
|
| 1456 |
-
|
| 1457 |
-
#: admin/tabs/admintab.php:41
|
| 1458 |
-
msgid "Number of entries shown in the admin."
|
| 1459 |
-
msgstr "Antal indlæg vist i admin."
|
| 1460 |
-
|
| 1461 |
-
#: admin/tabs/admintab.php:46
|
| 1462 |
-
msgid "Entry icons"
|
| 1463 |
-
msgstr "Indlægs ikoner"
|
| 1464 |
-
|
| 1465 |
-
#: admin/tabs/admintab.php:52
|
| 1466 |
-
msgid "Show entry icons"
|
| 1467 |
-
msgstr "Vis indlægs ikoner"
|
| 1468 |
-
|
| 1469 |
-
#: admin/tabs/admintab.php:54
|
| 1470 |
-
msgid ""
|
| 1471 |
-
"These icons are shown in every entry row of the admin list, so that you know "
|
| 1472 |
-
"its status (checked, spam and trash)."
|
| 1473 |
-
msgstr ""
|
| 1474 |
-
"Disse ikoner vises i hvert indlægsrække af admin listen, så du kender dens "
|
| 1475 |
-
"status (kontrolleret, spam og papirkurv)."
|
| 1476 |
-
|
| 1477 |
-
#: admin/tabs/admintab.php:61 admin/tabs/antispamtab.php:140
|
| 1478 |
-
#: admin/tabs/emailtab.php:235 admin/tabs/formtab.php:252
|
| 1479 |
-
#: admin/tabs/readingtab.php:229
|
| 1480 |
-
msgid "Save settings"
|
| 1481 |
-
msgstr "Gem indstillinger"
|
| 1482 |
-
|
| 1483 |
-
#: admin/tabs/antispamtab.php:26
|
| 1484 |
-
msgid "Moderate Guestbook"
|
| 1485 |
-
msgstr "Rediger Gæstebog"
|
| 1486 |
-
|
| 1487 |
-
#: admin/tabs/antispamtab.php:34
|
| 1488 |
-
msgid "Moderate entries before publishing them."
|
| 1489 |
-
msgstr "Rediger indlæg før offentliggørelse af dem."
|
| 1490 |
-
|
| 1491 |
-
#: admin/tabs/antispamtab.php:38
|
| 1492 |
-
msgid ""
|
| 1493 |
-
"New entries have to be unlocked by a moderator before they are visible to "
|
| 1494 |
-
"the public."
|
| 1495 |
-
msgstr ""
|
| 1496 |
-
"Nye poster skal låses op af en moderator, før de er synlige for "
|
| 1497 |
-
"offentligheden."
|
| 1498 |
-
|
| 1499 |
-
#: admin/tabs/antispamtab.php:40
|
| 1500 |
-
msgid ""
|
| 1501 |
-
"It is recommended that you turn this on, because you are responsible for the "
|
| 1502 |
-
"content on your website."
|
| 1503 |
-
msgstr ""
|
| 1504 |
-
"Det anbefales, at du aktiverer dette , fordi du er ansvarlig for indholdet "
|
| 1505 |
-
"på din hjemmeside."
|
| 1506 |
-
|
| 1507 |
-
#: admin/tabs/antispamtab.php:50
|
| 1508 |
-
msgid "Learn more about Akismet..."
|
| 1509 |
-
msgstr "Lær mere om Akismet"
|
| 1510 |
-
|
| 1511 |
-
#: admin/tabs/antispamtab.php:50 admin/tabs/antispamtab.php:106
|
| 1512 |
-
msgid "What's that?"
|
| 1513 |
-
msgstr "Hvad er dette?"
|
| 1514 |
-
|
| 1515 |
-
#: admin/tabs/antispamtab.php:60
|
| 1516 |
-
msgid ""
|
| 1517 |
-
"Akismet helps you to fight spam. It's free and easy to install. Download and "
|
| 1518 |
-
"install it today to stop spam in your guestbook."
|
| 1519 |
-
msgstr ""
|
| 1520 |
-
"Akismet hjælper dig med at bekæmpe spam. Det er gratis og let at installere. "
|
| 1521 |
-
"Hente og installere den i dag for at stoppe spam i din gæstebog."
|
| 1522 |
-
|
| 1523 |
-
#: admin/tabs/antispamtab.php:63
|
| 1524 |
-
#, php-format
|
| 1525 |
-
msgid ""
|
| 1526 |
-
"Sorry, wasn't able to locate your <strong>WordPress API key</strong>. You "
|
| 1527 |
-
"can enter it at the <a href=\"%s\">Akismet configuration page</a>."
|
| 1528 |
-
msgstr ""
|
| 1529 |
-
"Beklager, kunne ikke finde din <strong> WordPress API-nøgle </ strong>. Du "
|
| 1530 |
-
"kan indtaste det på <a href=\"%s\"> Akismet konfigurationsside </a>."
|
| 1531 |
-
|
| 1532 |
-
#: admin/tabs/antispamtab.php:72
|
| 1533 |
-
msgid "Use Akismet"
|
| 1534 |
-
msgstr "Brug Akismet"
|
| 1535 |
-
|
| 1536 |
-
#: admin/tabs/antispamtab.php:74
|
| 1537 |
-
msgid ""
|
| 1538 |
-
"The WordPress API key has been found, so you can start using Akismet right "
|
| 1539 |
-
"now."
|
| 1540 |
-
msgstr ""
|
| 1541 |
-
"WordPress API-nøgle er fundet, så du kan begynde at bruge Akismet lige nu."
|
| 1542 |
-
|
| 1543 |
-
#: admin/tabs/antispamtab.php:85
|
| 1544 |
-
msgid "Custom Anti-Spam Security Question"
|
| 1545 |
-
msgstr "Brugerdefineret Anti-Spam sikkerhedsspørgsmål"
|
| 1546 |
-
|
| 1547 |
-
#: admin/tabs/antispamtab.php:88
|
| 1548 |
-
msgid "12 + six ="
|
| 1549 |
-
msgstr "12 + seks ="
|
| 1550 |
-
|
| 1551 |
-
#: admin/tabs/antispamtab.php:89
|
| 1552 |
-
msgid "Custom security question to battle spam."
|
| 1553 |
-
msgstr "Tilpasset sikkerhedsspørgsmål for at bekæmpe spam."
|
| 1554 |
-
|
| 1555 |
-
#: admin/tabs/antispamtab.php:91
|
| 1556 |
-
msgid "18"
|
| 1557 |
-
msgstr "18"
|
| 1558 |
-
|
| 1559 |
-
#: admin/tabs/antispamtab.php:92
|
| 1560 |
-
msgid "The answer to your security question."
|
| 1561 |
-
msgstr "varet på dit sikkerhedsspørgsmål."
|
| 1562 |
-
|
| 1563 |
-
#: admin/tabs/antispamtab.php:94
|
| 1564 |
-
msgid ""
|
| 1565 |
-
"You can ask your visitors to answer a custom security question, so only real "
|
| 1566 |
-
"people can post an entry."
|
| 1567 |
-
msgstr ""
|
| 1568 |
-
"Du kan bede dine besøgende til at besvare et brugerdefineret "
|
| 1569 |
-
"sikkerhedsspørgsmål, så kun virkelige mennesker kan bogføre en post."
|
| 1570 |
-
|
| 1571 |
-
#: admin/tabs/antispamtab.php:106
|
| 1572 |
-
msgid "Learn more about reCAPTCHA..."
|
| 1573 |
-
msgstr "Lær mere om reCAPTCHA ..."
|
| 1574 |
-
|
| 1575 |
-
#: admin/tabs/antispamtab.php:117
|
| 1576 |
-
msgid "<strong>Site (Public)</strong> key of your reCAPTCHA account"
|
| 1577 |
-
msgstr "<strong> Side (Offentlig) </ strong> -tasten på din reCAPTCHA konto"
|
| 1578 |
-
|
| 1579 |
-
#: admin/tabs/antispamtab.php:120
|
| 1580 |
-
msgid "<strong>Secret</strong> key of your reCAPTCHA account"
|
| 1581 |
-
msgstr "<strong> Hemmelig </ strong> -tasten på din reCAPTCHA konto"
|
| 1582 |
-
|
| 1583 |
-
#: admin/tabs/antispamtab.php:123
|
| 1584 |
-
msgid ""
|
| 1585 |
-
"reCAPTCHA is a way to have visitors fill in a field with a few letters or "
|
| 1586 |
-
"numbers. It is a way to make sure that you have a human visitor and not a "
|
| 1587 |
-
"spambot. Not every visitor will appreciate it though, some will consider it "
|
| 1588 |
-
"unfriendly."
|
| 1589 |
-
msgstr ""
|
| 1590 |
-
"reCAPTCHA er en måde at få besøgende udfylde et felt med et par bogstaver "
|
| 1591 |
-
"eller tal. Det er en måde at sikre, at du har et menneske og ikke en "
|
| 1592 |
-
"spambot. Ikke alle besøgende vil sætte pris på det selv, vil nogle mener det "
|
| 1593 |
-
"uvenlige."
|
| 1594 |
-
|
| 1595 |
-
#: admin/tabs/antispamtab.php:125
|
| 1596 |
-
msgid "The keys can be found at your"
|
| 1597 |
-
msgstr "Nøglerne kan findes på din"
|
| 1598 |
-
|
| 1599 |
-
#: admin/tabs/antispamtab.php:125
|
| 1600 |
-
msgid "Go to my reCAPTCHA sites..."
|
| 1601 |
-
msgstr "Gå til min reCAPTCHA side ..."
|
| 1602 |
-
|
| 1603 |
-
#: admin/tabs/antispamtab.php:125
|
| 1604 |
-
msgid "reCAPTCHA sites overview"
|
| 1605 |
-
msgstr "reCAPTCHA sites oversigt"
|
| 1606 |
-
|
| 1607 |
-
#: admin/tabs/antispamtab.php:130
|
| 1608 |
-
msgid ""
|
| 1609 |
-
"<strong>Warning:</strong> Apparently you already use a reCAPTCHA library in "
|
| 1610 |
-
"your theme or another plugin. The reCAPTCHA library in Gwolle-GB will not be "
|
| 1611 |
-
"loaded, and the found one will be used instead. This might give unexpected "
|
| 1612 |
-
"results."
|
| 1613 |
-
msgstr ""
|
| 1614 |
-
"<strong> Advarsel: </ strong> Tilsyneladende bruger du allerede et reCAPTCHA "
|
| 1615 |
-
"bibliotek i dit tema eller en anden plugin. Det reCAPTCHA bibliotek i Gwolle-"
|
| 1616 |
-
"GB indlæses ikke, og den anden vil blive anvendt i stedet. Dette kan give "
|
| 1617 |
-
"uventede resultater."
|
| 1618 |
-
|
| 1619 |
-
#: admin/tabs/antispamtab.php:132
|
| 1620 |
-
msgid ""
|
| 1621 |
-
"<strong>Warning:</strong> Apparently you already use a reCAPTCHA library in "
|
| 1622 |
-
"your theme or another plugin. However, this is an old and incompatible "
|
| 1623 |
-
"version, so reCAPTCHA will not be used for Gwolle-GB."
|
| 1624 |
-
msgstr ""
|
| 1625 |
-
"<strong> Advarsel: </ strong> Tilsyneladende bruger du allerede et reCAPTCHA "
|
| 1626 |
-
"bibliotek i dit tema eller et andet plugin. Men dette er gammelt og "
|
| 1627 |
-
"inkompatibel, så reCAPTCHA ikke vil blive anvendt til Gwolle-GB."
|
| 1628 |
-
|
| 1629 |
-
#: admin/tabs/emailtab.php:26
|
| 1630 |
-
msgid "Admin mail from address"
|
| 1631 |
-
msgstr "Admin mail fra adressen"
|
| 1632 |
-
|
| 1633 |
-
#: admin/tabs/emailtab.php:32
|
| 1634 |
-
msgid ""
|
| 1635 |
-
"You can set the email address that is used for the From header of the mail "
|
| 1636 |
-
"that a notification subscriber gets on new entries."
|
| 1637 |
-
msgstr ""
|
| 1638 |
-
"Du kan indstille den e-mailadresse, der bruges til Fra overskriften på "
|
| 1639 |
-
"mailen, som en abonnent får på nye indlæg."
|
| 1640 |
-
|
| 1641 |
-
#: admin/tabs/emailtab.php:34
|
| 1642 |
-
msgid "By default the main admin address is used from General >> Settings."
|
| 1643 |
-
msgstr ""
|
| 1644 |
-
"Som standard de vigtigste admin adresse bruges fra General >> indstillinger."
|
| 1645 |
-
|
| 1646 |
-
#: admin/tabs/emailtab.php:41
|
| 1647 |
-
msgid "Unsubscribe moderators"
|
| 1648 |
-
msgstr "Afmeld moderatorer"
|
| 1649 |
-
|
| 1650 |
-
#: admin/tabs/emailtab.php:51
|
| 1651 |
-
msgid "Unsubscribe User"
|
| 1652 |
-
msgstr "Afmeld Bruger"
|
| 1653 |
-
|
| 1654 |
-
#: admin/tabs/emailtab.php:73
|
| 1655 |
-
msgid "These users have subscribed to the notification emails."
|
| 1656 |
-
msgstr "Disse brugere abonnerer på anmeldelses- e-mails."
|
| 1657 |
-
|
| 1658 |
-
#: admin/tabs/emailtab.php:74
|
| 1659 |
-
msgid ""
|
| 1660 |
-
"Select a user if you want that user to unsubscribe from the notification "
|
| 1661 |
-
"emails."
|
| 1662 |
-
msgstr ""
|
| 1663 |
-
"Vælg en bruger, hvis du ønsker, at brugeren at afmeldes anmeldelses- e-mails."
|
| 1664 |
-
|
| 1665 |
-
#: admin/tabs/emailtab.php:79
|
| 1666 |
-
msgid "Subscribe moderators"
|
| 1667 |
-
msgstr "Tilmeld moderatorer"
|
| 1668 |
-
|
| 1669 |
-
#: admin/tabs/emailtab.php:82
|
| 1670 |
-
msgid "Subscribe User"
|
| 1671 |
-
msgstr "Tilmeld Bruger"
|
| 1672 |
-
|
| 1673 |
-
#: admin/tabs/emailtab.php:125
|
| 1674 |
-
msgid "You can subscribe a moderator to the notification emails."
|
| 1675 |
-
msgstr "Du kan tilføje en moderator til at abonnere på anmeldelsen e-mails."
|
| 1676 |
-
|
| 1677 |
-
#: admin/tabs/emailtab.php:126
|
| 1678 |
-
msgid "Select a user that you want subscribed to the notification emails."
|
| 1679 |
-
msgstr "Vælg den bruger, du vil tilføje som abonnet på meddelelser e-mails."
|
| 1680 |
-
|
| 1681 |
-
#: admin/tabs/emailtab.php:127
|
| 1682 |
-
msgid ""
|
| 1683 |
-
"You will only see users with the roles of Administrator, Editor and Author, "
|
| 1684 |
-
"who have the capability 'moderate_comments' ."
|
| 1685 |
-
msgstr ""
|
| 1686 |
-
"Du vil kun se brugerne roller administrator, moderator og forfatter, der har "
|
| 1687 |
-
"evnen 'moderer_kommentarer'."
|
| 1688 |
-
|
| 1689 |
-
#: admin/tabs/emailtab.php:133
|
| 1690 |
-
msgid "Admin mail content"
|
| 1691 |
-
msgstr "Admin mail-indhold"
|
| 1692 |
-
|
| 1693 |
-
#: admin/tabs/emailtab.php:160
|
| 1694 |
-
msgid ""
|
| 1695 |
-
"You can set the content of the mail that a notification subscriber gets on "
|
| 1696 |
-
"new entries. The following tags are supported:"
|
| 1697 |
-
msgstr ""
|
| 1698 |
-
"Du kan ændre indholdet af mailen, som en abonnent får på nye indlæg. "
|
| 1699 |
-
"Følgende koder er understøttet:"
|
| 1700 |
-
|
| 1701 |
-
#: admin/tabs/emailtab.php:175
|
| 1702 |
-
msgid "Mail Author"
|
| 1703 |
-
msgstr "Send email til forfatter"
|
| 1704 |
-
|
| 1705 |
-
#: admin/tabs/emailtab.php:183
|
| 1706 |
-
msgid "Mail the author with a confirmation email."
|
| 1707 |
-
msgstr "Send mail til forfatter med en bekræftelses mail."
|
| 1708 |
-
|
| 1709 |
-
#: admin/tabs/emailtab.php:187
|
| 1710 |
-
msgid ""
|
| 1711 |
-
"The author of the guestbook entry will receive an email after posting. It "
|
| 1712 |
-
"will have a copy of the entry."
|
| 1713 |
-
msgstr ""
|
| 1714 |
-
"Forfatteren af gæstebogens indlæg vil modtage en e-mail efter "
|
| 1715 |
-
"offentliggørelsen. Det vil have en kopi af posten."
|
| 1716 |
-
|
| 1717 |
-
#: admin/tabs/emailtab.php:193
|
| 1718 |
-
msgid "Author mail content"
|
| 1719 |
-
msgstr "Forfatter indholds mail"
|
| 1720 |
-
|
| 1721 |
-
#: admin/tabs/emailtab.php:218
|
| 1722 |
-
msgid ""
|
| 1723 |
-
"You can set the content of the mail that the author of the entry will "
|
| 1724 |
-
"receive. The following tags are supported:"
|
| 1725 |
-
msgstr ""
|
| 1726 |
-
"Du kan ændre indholdet af mailen, som forfatteren af indlæget vil modtage. "
|
| 1727 |
-
"Følgende koder er understøttet:"
|
| 1728 |
-
|
| 1729 |
-
#: admin/tabs/formtab.php:26
|
| 1730 |
-
msgid "Require Login"
|
| 1731 |
-
msgstr "Kræv login"
|
| 1732 |
-
|
| 1733 |
-
#: admin/tabs/formtab.php:33
|
| 1734 |
-
msgid "Require user to be logged in."
|
| 1735 |
-
msgstr "Kræv bruger skal være logget ind."
|
| 1736 |
-
|
| 1737 |
-
#: admin/tabs/formtab.php:35
|
| 1738 |
-
msgid "Only allow logged-in users to add a guestbook entry."
|
| 1739 |
-
msgstr "Tillad kun registrerede brugere at tilføje en gæstebog indlæg."
|
| 1740 |
-
|
| 1741 |
-
#: admin/tabs/formtab.php:40
|
| 1742 |
-
msgid "Labels float"
|
| 1743 |
-
msgstr "Etiketter formular"
|
| 1744 |
-
|
| 1745 |
-
#: admin/tabs/formtab.php:47
|
| 1746 |
-
msgid "Labels in the form float to the left."
|
| 1747 |
-
msgstr "Etiketter i formular vises til venstre."
|
| 1748 |
-
|
| 1749 |
-
#: admin/tabs/formtab.php:49
|
| 1750 |
-
msgid ""
|
| 1751 |
-
"Labels in the form float to the left. Otherwise the labels will be above the "
|
| 1752 |
-
"input-fields."
|
| 1753 |
-
msgstr ""
|
| 1754 |
-
"Etiketter i formularer vises til venstre. Ellers vil etiketterne være over "
|
| 1755 |
-
"input-felterne."
|
| 1756 |
-
|
| 1757 |
-
#: admin/tabs/formtab.php:54
|
| 1758 |
-
msgid "Header Text"
|
| 1759 |
-
msgstr "Overskrift"
|
| 1760 |
-
|
| 1761 |
-
#: admin/tabs/formtab.php:63
|
| 1762 |
-
msgid "You can set the header that is shown on top of the form."
|
| 1763 |
-
msgstr "Du kan indstille overskrifter, der vises på toppen af formularen."
|
| 1764 |
-
|
| 1765 |
-
#: admin/tabs/formtab.php:69
|
| 1766 |
-
msgid "Notice Text"
|
| 1767 |
-
msgstr "Note Tekst"
|
| 1768 |
-
|
| 1769 |
-
#: admin/tabs/formtab.php:86
|
| 1770 |
-
msgid "You can set the content of the notice that gets shown below the form."
|
| 1771 |
-
msgstr ""
|
| 1772 |
-
"Du kan indstille indholdet af meddelelsen, der bliver vist nedenfor "
|
| 1773 |
-
"formularen."
|
| 1774 |
-
|
| 1775 |
-
#: admin/tabs/formtab.php:88
|
| 1776 |
-
msgid "You can use the tag %ip% to show the ip address."
|
| 1777 |
-
msgstr "Du kan bruge mærke t% ip% for at vise ip-adresse."
|
| 1778 |
-
|
| 1779 |
-
#: admin/tabs/formtab.php:101
|
| 1780 |
-
msgid "Configure the form that is shown to visitors."
|
| 1781 |
-
msgstr "Konfigurer den form, der vises for besøgende."
|
| 1782 |
-
|
| 1783 |
-
#: admin/tabs/formtab.php:112 admin/tabs/formtab.php:132
|
| 1784 |
-
#: admin/tabs/formtab.php:152 admin/tabs/formtab.php:172
|
| 1785 |
-
#: admin/tabs/formtab.php:192 admin/tabs/formtab.php:212
|
| 1786 |
-
#: admin/tabs/formtab.php:227 admin/tabs/formtab.php:242
|
| 1787 |
-
#: admin/tabs/readingtab.php:147 admin/tabs/readingtab.php:159
|
| 1788 |
-
#: admin/tabs/readingtab.php:171 admin/tabs/readingtab.php:183
|
| 1789 |
-
#: admin/tabs/readingtab.php:196 admin/tabs/readingtab.php:209
|
| 1790 |
-
#: admin/tabs/readingtab.php:221
|
| 1791 |
-
msgid "Enabled"
|
| 1792 |
-
msgstr "Aktiveret"
|
| 1793 |
-
|
| 1794 |
-
#: admin/tabs/formtab.php:120 admin/tabs/formtab.php:140
|
| 1795 |
-
#: admin/tabs/formtab.php:160 admin/tabs/formtab.php:180
|
| 1796 |
-
#: admin/tabs/formtab.php:200
|
| 1797 |
-
msgid "Mandatory"
|
| 1798 |
-
msgstr "Obligatorisk"
|
| 1799 |
-
|
| 1800 |
-
#: admin/tabs/formtab.php:205
|
| 1801 |
-
msgid "BBcode and Emoji"
|
| 1802 |
-
msgstr "BBcode og Emoji"
|
| 1803 |
-
|
| 1804 |
-
#: admin/tabs/formtab.php:215
|
| 1805 |
-
msgid "Will only be shown if the Message is enabled."
|
| 1806 |
-
msgstr "Vises kun hvis meddelelsen er aktiveret."
|
| 1807 |
-
|
| 1808 |
-
#: admin/tabs/formtab.php:220
|
| 1809 |
-
msgid "Custom Anti-spam"
|
| 1810 |
-
msgstr "Brugerdefineret Anti-spam"
|
| 1811 |
-
|
| 1812 |
-
#: admin/tabs/formtab.php:230 admin/tabs/formtab.php:245
|
| 1813 |
-
msgid "When enabled it is mandatory."
|
| 1814 |
-
msgstr "Når aktiveret er dette felt obligatorisk."
|
| 1815 |
-
|
| 1816 |
-
#: admin/tabs/formtab.php:235 admin/tabs/uninstalltab.php:63
|
| 1817 |
-
msgid "reCAPTCHA"
|
| 1818 |
-
msgstr "reCAPTCHA"
|
| 1819 |
-
|
| 1820 |
-
#: admin/tabs/readingtab.php:26
|
| 1821 |
-
msgid "Entries per page on the frontend"
|
| 1822 |
-
msgstr "Indlæg per side på frontend"
|
| 1823 |
-
|
| 1824 |
-
#: admin/tabs/readingtab.php:41
|
| 1825 |
-
msgid "Number of entries shown on the frontend."
|
| 1826 |
-
msgstr "Antal poster der skal vises på frontend."
|
| 1827 |
-
|
| 1828 |
-
#: admin/tabs/readingtab.php:46
|
| 1829 |
-
msgid "Length of the entry content"
|
| 1830 |
-
msgstr "Længden af indhold i indlæg"
|
| 1831 |
-
|
| 1832 |
-
#: admin/tabs/readingtab.php:56
|
| 1833 |
-
msgid "Unlimited Words"
|
| 1834 |
-
msgstr "Ubegrænset antal ord"
|
| 1835 |
-
|
| 1836 |
-
#: admin/tabs/readingtab.php:63
|
| 1837 |
-
msgid "Words"
|
| 1838 |
-
msgstr "Ord"
|
| 1839 |
-
|
| 1840 |
-
#: admin/tabs/readingtab.php:69
|
| 1841 |
-
msgid "Maximum length of the entry content in words."
|
| 1842 |
-
msgstr "Maksimal længde af indholdet post i ord."
|
| 1843 |
-
|
| 1844 |
-
#: admin/tabs/readingtab.php:70
|
| 1845 |
-
msgid "Please be aware that this will strip linebreaks as well."
|
| 1846 |
-
msgstr "Vær opmærksom på, at dette vil fratage linieskift også."
|
| 1847 |
-
|
| 1848 |
-
#: admin/tabs/readingtab.php:76
|
| 1849 |
-
msgid "Line breaks"
|
| 1850 |
-
msgstr "Linjeskift"
|
| 1851 |
-
|
| 1852 |
-
#: admin/tabs/readingtab.php:83
|
| 1853 |
-
msgid "Show line breaks."
|
| 1854 |
-
msgstr "Vis Linjeskift"
|
| 1855 |
-
|
| 1856 |
-
#: admin/tabs/readingtab.php:85
|
| 1857 |
-
msgid ""
|
| 1858 |
-
"Show line breaks as the entry authors entered them. (May result in very long "
|
| 1859 |
-
"entries. Is turned off by default.)"
|
| 1860 |
-
msgstr ""
|
| 1861 |
-
"Vis linjeskift som forfatteren har indtastet dem. (Kan resultere i meget "
|
| 1862 |
-
"lange poster. Er som standard deaktiveret.)"
|
| 1863 |
-
|
| 1864 |
-
#: admin/tabs/readingtab.php:90
|
| 1865 |
-
msgid "Smileys"
|
| 1866 |
-
msgstr "Smileys"
|
| 1867 |
-
|
| 1868 |
-
#: admin/tabs/readingtab.php:97
|
| 1869 |
-
msgid "Display smileys as images."
|
| 1870 |
-
msgstr "Vis smileys som billeder."
|
| 1871 |
-
|
| 1872 |
-
#: admin/tabs/readingtab.php:99
|
| 1873 |
-
#, php-format
|
| 1874 |
-
msgid ""
|
| 1875 |
-
"Replaces smileys in entries like :) with their image %s. Uses the WP smiley "
|
| 1876 |
-
"replacer, so check on that one if you'd like to add new/more smileys."
|
| 1877 |
-
msgstr ""
|
| 1878 |
-
"Erstatter smileys i poster som :) med deres image % s. Bruger WP smiley "
|
| 1879 |
-
"erstatning, så tjek på, at en hvis du ønsker at tilføje nye / flere smileys."
|
| 1880 |
-
|
| 1881 |
-
#: admin/tabs/readingtab.php:104
|
| 1882 |
-
msgid "Links"
|
| 1883 |
-
msgstr "Genveje"
|
| 1884 |
-
|
| 1885 |
-
#: admin/tabs/readingtab.php:111
|
| 1886 |
-
msgid "Link authors' name to their website."
|
| 1887 |
-
msgstr "Link forfatternes navn til deres hjemmeside."
|
| 1888 |
-
|
| 1889 |
-
#: admin/tabs/readingtab.php:113
|
| 1890 |
-
msgid ""
|
| 1891 |
-
"The author of an entry can set his/her website. If this setting is checked, "
|
| 1892 |
-
"his/her name will be a link to that website."
|
| 1893 |
-
msgstr ""
|
| 1894 |
-
"Forfatteren af en post kan sætte hans / hendes hjemmeside. Hvis denne "
|
| 1895 |
-
"indstilling er markeret, vil hans / hendes navn være et link til denne "
|
| 1896 |
-
"hjemmeside."
|
| 1897 |
-
|
| 1898 |
-
#: admin/tabs/readingtab.php:118
|
| 1899 |
-
msgid "Admin Entry Styling"
|
| 1900 |
-
msgstr "Admin indlæg Styling"
|
| 1901 |
-
|
| 1902 |
-
#: admin/tabs/readingtab.php:125
|
| 1903 |
-
msgid "Admin entries get a special CSS styling."
|
| 1904 |
-
msgstr "Admins indlæg får en særlig CSS styling."
|
| 1905 |
-
|
| 1906 |
-
#: admin/tabs/readingtab.php:127
|
| 1907 |
-
msgid ""
|
| 1908 |
-
"Admin entries get a special CSS styling. It will get a lightgrey background."
|
| 1909 |
-
msgstr ""
|
| 1910 |
-
"Admin indlæg får en særlig CSS styling. Det vil få en lysegrå baggrund."
|
| 1911 |
-
|
| 1912 |
-
#: admin/tabs/readingtab.php:135
|
| 1913 |
-
msgid "Configure the parts of the entries that are shown to visitors."
|
| 1914 |
-
msgstr "Konfigurer de dele af de indlæg, der vises for besøgende."
|
| 1915 |
-
|
| 1916 |
-
#: admin/tabs/readingtab.php:140
|
| 1917 |
-
msgid "Avatar"
|
| 1918 |
-
msgstr "Avatar"
|
| 1919 |
-
|
| 1920 |
-
#: admin/tabs/readingtab.php:176
|
| 1921 |
-
msgid "Date and Time"
|
| 1922 |
-
msgstr "Dato og Tid"
|
| 1923 |
-
|
| 1924 |
-
#: admin/tabs/readingtab.php:184
|
| 1925 |
-
msgid "Setting this will show the date and the time of the entry."
|
| 1926 |
-
msgstr "Indstillingen her vil vise dato og tidspunktet for oprettelse."
|
| 1927 |
-
|
| 1928 |
-
#: admin/tabs/readingtab.php:197
|
| 1929 |
-
msgid ""
|
| 1930 |
-
"Setting this will show the date of the entry. If Date and Time above are "
|
| 1931 |
-
"enabled, that setting has preference."
|
| 1932 |
-
msgstr ""
|
| 1933 |
-
"Indstillingen her vil vise datoen for oprettelse. Hvis dato og tid ovenover "
|
| 1934 |
-
"er aktiveret, har den indstilling fortrinsret."
|
| 1935 |
-
|
| 1936 |
-
#: admin/tabs/readingtab.php:202
|
| 1937 |
-
msgid "Content"
|
| 1938 |
-
msgstr "Indhold"
|
| 1939 |
-
|
| 1940 |
-
#: admin/tabs/readingtab.php:214
|
| 1941 |
-
msgid "Edit link"
|
| 1942 |
-
msgstr "Rediger genvej"
|
| 1943 |
-
|
| 1944 |
-
#: admin/tabs/readingtab.php:222
|
| 1945 |
-
msgid ""
|
| 1946 |
-
"A link to the editor will be added to the content. Only visible for "
|
| 1947 |
-
"moderators."
|
| 1948 |
-
msgstr ""
|
| 1949 |
-
"En genvej til moderatoren vil blive tilføjet til indholdet. Kun synlig for "
|
| 1950 |
-
"moderatorer."
|
| 1951 |
-
|
| 1952 |
-
#: admin/tabs/uninstalltab.php:34
|
| 1953 |
-
msgid "The entries and settings have been removed."
|
| 1954 |
-
msgstr "Indlægene og indstillinger er blevet fjernet."
|
| 1955 |
-
|
| 1956 |
-
#: admin/tabs/uninstalltab.php:35
|
| 1957 |
-
msgid "The plugin is deactivated."
|
| 1958 |
-
msgstr "Dette plugin er deaktiveret."
|
| 1959 |
-
|
| 1960 |
-
#: admin/tabs/uninstalltab.php:36
|
| 1961 |
-
msgid "You can now go to your"
|
| 1962 |
-
msgstr "Du kan nu gå til din"
|
| 1963 |
-
|
| 1964 |
-
#: admin/tabs/uninstalltab.php:36
|
| 1965 |
-
msgid "dashboard."
|
| 1966 |
-
msgstr "Skrivebord"
|
| 1967 |
-
|
| 1968 |
-
#: admin/tabs/uninstalltab.php:47
|
| 1969 |
-
msgid ""
|
| 1970 |
-
"Uninstalling means that all database entries are removed (settings and "
|
| 1971 |
-
"entries)."
|
| 1972 |
-
msgstr ""
|
| 1973 |
-
"Afinstallation betyder, at alle database poster er fjernet (indstillinger og "
|
| 1974 |
-
"indlæg)."
|
| 1975 |
-
|
| 1976 |
-
#: admin/tabs/uninstalltab.php:49
|
| 1977 |
-
msgid "This can <strong>not</strong> be undone."
|
| 1978 |
-
msgstr "Dette kan <strong> ikke </ strong> fortrydes."
|
| 1979 |
-
|
| 1980 |
-
#: admin/tabs/uninstalltab.php:55
|
| 1981 |
-
msgid "Confirm"
|
| 1982 |
-
msgstr "Bekræft"
|
| 1983 |
-
|
| 1984 |
-
#: admin/tabs/uninstalltab.php:58
|
| 1985 |
-
msgid "Yes, I'm absolutely sure of this. Proceed!"
|
| 1986 |
-
msgstr "Ja, jeg er helt sikker på dette. Fortsæt!"
|
| 1987 |
-
|
| 1988 |
-
#: admin/tabs/uninstalltab.php:66
|
| 1989 |
-
msgid "Also delete the reCAPTCHA keys"
|
| 1990 |
-
msgstr "Slet også reCAPTCHA nøgler"
|
| 1991 |
-
|
| 1992 |
-
#: admin/tabs/uninstalltab.php:73
|
| 1993 |
-
msgid "Uninstall »"
|
| 1994 |
-
msgstr "Afinstaller »"
|
| 1995 |
-
|
| 1996 |
-
#~ msgid "at"
|
| 1997 |
-
#~ msgstr "klokken"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
readme.txt
CHANGED
|
@@ -3,7 +3,7 @@ Contributors: Gwolle, mpol
|
|
| 3 |
Tags: guestbook, guest book, livre d'or, Gästebuch, review
|
| 4 |
Requires at least: 3.7
|
| 5 |
Tested up to: 5.4
|
| 6 |
-
Stable tag:
|
| 7 |
License: GPLv2 or later
|
| 8 |
Requires PHP: 5.3
|
| 9 |
|
|
@@ -67,7 +67,7 @@ I will make a request on make/polyglots to have you added as validator for this
|
|
| 67 |
|
| 68 |
= Demo =
|
| 69 |
|
| 70 |
-
Check out the demo at [
|
| 71 |
|
| 72 |
= Add-On =
|
| 73 |
|
|
@@ -79,6 +79,7 @@ Current features include:
|
|
| 79 |
* Social Media Sharing (optional).
|
| 80 |
* Star Ratings, with voting and display and Rich Snippets for SEO (optional).
|
| 81 |
* Average star rating per guestbook.
|
|
|
|
| 82 |
* Preview for the frontend form.
|
| 83 |
* Preview for the admin editor form.
|
| 84 |
* Admin reply on the frontend with AJAX.
|
|
@@ -93,11 +94,11 @@ Current features include:
|
|
| 93 |
* Auto Anonymize timer (optional).
|
| 94 |
* Auto Delete timer (optional).
|
| 95 |
|
| 96 |
-
You can buy the Add-On at [
|
| 97 |
|
| 98 |
= Demo with Add-On =
|
| 99 |
|
| 100 |
-
Check out the demo with the Add-On enabled at [
|
| 101 |
|
| 102 |
= Compatibility =
|
| 103 |
|
|
@@ -129,12 +130,6 @@ With version 1.0 there have been some changes:
|
|
| 129 |
The plugin itself is released under the GNU General Public License. A copy of this license can be found at the license homepage or
|
| 130 |
in the gwolle-gb.php file at the top.
|
| 131 |
|
| 132 |
-
= Known Issues =
|
| 133 |
-
|
| 134 |
-
On some websites sending the data from the form doesn't work correctly. Some field data is being sent and some not.
|
| 135 |
-
If you are affected by this issue and can debug this to find the real problem, please do so and report it on the support forum.
|
| 136 |
-
Disabling AJAX for the form is a good workaround.
|
| 137 |
-
|
| 138 |
= Hooks: Actions and Filters =
|
| 139 |
|
| 140 |
There are many hooks available in this plugin. Documentation is included in the zip file in /docs/actions and /docs/filters. Examples are included. If you have a need for a hook, please request this in the support forum.
|
|
@@ -203,7 +198,7 @@ The next lines are made up of the content.
|
|
| 203 |
|
| 204 |
There are some gotchas:
|
| 205 |
|
| 206 |
-
* Date needs to be a UNIX timestamp. For manually creating a timestamp, look at the [timestamp generator](
|
| 207 |
* Use commas for field separators. If you use Office software like Excel (which is hell) or LibreOffice Calc, set this correctly.
|
| 208 |
* Use double quotes around each field. When no quotes are used the import process can break when having quotes or commas inside the content of the entry.
|
| 209 |
* The file should be encoded as UTF-8 without BOM to correctly enter special characters.
|
|
@@ -247,13 +242,13 @@ I will make a request on make/polyglots to have you added as validator for this
|
|
| 247 |
|
| 248 |
= What about Spam? =
|
| 249 |
|
| 250 |
-
By default this plugin uses a Honeypot feature and a
|
| 251 |
|
| 252 |
If you still have problems there are more options:
|
| 253 |
|
| 254 |
* Honeypot feature: Hidden input field that only spambots would fill in.
|
| 255 |
-
* Nonce: Will verify if you really loaded the page with the form first, before posting an entry. Spambots will just submit the form without having a Nonce.
|
| 256 |
* Form Timeout: If the form was sent in too fast after loading the page, the entry will be marked as spam.
|
|
|
|
| 257 |
* Akismet: Third party spamfilter by Automattic. Works really well, but not everybody likes to use a third party service.
|
| 258 |
* Stop Forum Spam: Third party spamfilter. Again, works really well, but not everybody likes to use a third party service.
|
| 259 |
* Custom Anti-Spam question: Use a simple quiz question to test if you are human.
|
|
@@ -284,6 +279,10 @@ You can set the book_id automatically to the post_id with this shortcode:
|
|
| 284 |
|
| 285 |
[gwolle_gb book_id="post_id"]
|
| 286 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| 287 |
= I only want to show one entry. =
|
| 288 |
|
| 289 |
You can use a shortcode parameter for showing just one entry:
|
|
@@ -333,11 +332,6 @@ If a user with capability of 'moderate_comments' posts an entry, it will be mark
|
|
| 333 |
There is validation of the length of words in the content and author name.
|
| 334 |
If the words are too long and it looks abusive, it will be marked as unchecked. A moderator will still be needed to manually edit and check these entries.
|
| 335 |
|
| 336 |
-
= On the form I see text meant for screen-readers. =
|
| 337 |
-
|
| 338 |
-
Your theme is missing some necessary CSS for '.screen-reader-text'. Please contact the maker of your theme.
|
| 339 |
-
More information can be found in the [Handbook](https://make.wordpress.org/accessibility/handbook/markup/the-css-class-screen-reader-text/) about Accessibility.
|
| 340 |
-
|
| 341 |
= When opening the RSS Feed, I get a Error 404 =
|
| 342 |
|
| 343 |
You can refresh your rewrite rules, by going to Settings / Permalinks, and save your permalinks again.
|
|
@@ -428,6 +422,21 @@ But if you don't use standard comments, you can just as easily use the comment s
|
|
| 428 |
|
| 429 |
== Changelog ==
|
| 430 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 431 |
= 3.1.9 =
|
| 432 |
* 2020-02-01
|
| 433 |
* Fix undefined variable notice (thanks ronr1999).
|
| 3 |
Tags: guestbook, guest book, livre d'or, Gästebuch, review
|
| 4 |
Requires at least: 3.7
|
| 5 |
Tested up to: 5.4
|
| 6 |
+
Stable tag: 4.0.0
|
| 7 |
License: GPLv2 or later
|
| 8 |
Requires PHP: 5.3
|
| 9 |
|
| 67 |
|
| 68 |
= Demo =
|
| 69 |
|
| 70 |
+
Check out the demo at [https://demo.zenoweb.nl](https://demo.zenoweb.nl/wordpress-plugins/gwolle-gb/).
|
| 71 |
|
| 72 |
= Add-On =
|
| 73 |
|
| 79 |
* Social Media Sharing (optional).
|
| 80 |
* Star Ratings, with voting and display and Rich Snippets for SEO (optional).
|
| 81 |
* Average star rating per guestbook.
|
| 82 |
+
* Like an entry and view likes for each entry.
|
| 83 |
* Preview for the frontend form.
|
| 84 |
* Preview for the admin editor form.
|
| 85 |
* Admin reply on the frontend with AJAX.
|
| 94 |
* Auto Anonymize timer (optional).
|
| 95 |
* Auto Delete timer (optional).
|
| 96 |
|
| 97 |
+
You can buy the Add-On at [ZenoWeb Webshop](https://zenoweb.nl/downloads/gwolle-guestbook-add-on/) for only $ 9.
|
| 98 |
|
| 99 |
= Demo with Add-On =
|
| 100 |
|
| 101 |
+
Check out the demo with the Add-On enabled at [https://demo.zenoweb.nl](https://demo.zenoweb.nl/wordpress-plugins/gwolle-guestbook-the-add-on/).
|
| 102 |
|
| 103 |
= Compatibility =
|
| 104 |
|
| 130 |
The plugin itself is released under the GNU General Public License. A copy of this license can be found at the license homepage or
|
| 131 |
in the gwolle-gb.php file at the top.
|
| 132 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 133 |
= Hooks: Actions and Filters =
|
| 134 |
|
| 135 |
There are many hooks available in this plugin. Documentation is included in the zip file in /docs/actions and /docs/filters. Examples are included. If you have a need for a hook, please request this in the support forum.
|
| 198 |
|
| 199 |
There are some gotchas:
|
| 200 |
|
| 201 |
+
* Date needs to be a UNIX timestamp. For manually creating a timestamp, look at the [timestamp generator](https://www.timestampgenerator.com/). When using a [formatted date](https://www.php.net/manual/en/datetime.formats.date.php), the plugin will try to read it correctly. If it fails it will use today's date.
|
| 202 |
* Use commas for field separators. If you use Office software like Excel (which is hell) or LibreOffice Calc, set this correctly.
|
| 203 |
* Use double quotes around each field. When no quotes are used the import process can break when having quotes or commas inside the content of the entry.
|
| 204 |
* The file should be encoded as UTF-8 without BOM to correctly enter special characters.
|
| 242 |
|
| 243 |
= What about Spam? =
|
| 244 |
|
| 245 |
+
By default this plugin uses a Honeypot feature and a Timeout feature. If spambots try to post guestbook entries this should work sufficiently.
|
| 246 |
|
| 247 |
If you still have problems there are more options:
|
| 248 |
|
| 249 |
* Honeypot feature: Hidden input field that only spambots would fill in.
|
|
|
|
| 250 |
* Form Timeout: If the form was sent in too fast after loading the page, the entry will be marked as spam.
|
| 251 |
+
* Nonce: Will verify if you really loaded the page with the form first, before posting an entry. Spambots will just submit the form without having a Nonce.
|
| 252 |
* Akismet: Third party spamfilter by Automattic. Works really well, but not everybody likes to use a third party service.
|
| 253 |
* Stop Forum Spam: Third party spamfilter. Again, works really well, but not everybody likes to use a third party service.
|
| 254 |
* Custom Anti-Spam question: Use a simple quiz question to test if you are human.
|
| 279 |
|
| 280 |
[gwolle_gb book_id="post_id"]
|
| 281 |
|
| 282 |
+
= I use Infinite Scroll with multiple guestbooks =
|
| 283 |
+
|
| 284 |
+
This is not really supported and might result in strange issues.
|
| 285 |
+
|
| 286 |
= I only want to show one entry. =
|
| 287 |
|
| 288 |
You can use a shortcode parameter for showing just one entry:
|
| 332 |
There is validation of the length of words in the content and author name.
|
| 333 |
If the words are too long and it looks abusive, it will be marked as unchecked. A moderator will still be needed to manually edit and check these entries.
|
| 334 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 335 |
= When opening the RSS Feed, I get a Error 404 =
|
| 336 |
|
| 337 |
You can refresh your rewrite rules, by going to Settings / Permalinks, and save your permalinks again.
|
| 422 |
|
| 423 |
== Changelog ==
|
| 424 |
|
| 425 |
+
= 4.0.0 =
|
| 426 |
+
* 2020-04-28
|
| 427 |
+
* Many CSS ids and classes have changed, please review your custom CSS.
|
| 428 |
+
* Plugin supports multiple forms on one page now.
|
| 429 |
+
* Fix serialized options.
|
| 430 |
+
* Add pause on hover for super-simple-slider.
|
| 431 |
+
* Fix updating of datetime on admin editor.
|
| 432 |
+
* Fix double class attributes in form.
|
| 433 |
+
* Run timeout function only once, set timout to 1 second.
|
| 434 |
+
* Remove separators from BBcode icons.
|
| 435 |
+
* Add loading="lazy" attribute to bbcode images.
|
| 436 |
+
* Add filters 'gwolle_gb_author_origin_prefill', 'gwolle_gb_author_content_prefill' and 'gwolle_gb_author_content_label'.
|
| 437 |
+
* Deprecate 'gwolle_gb_content_label' filter.
|
| 438 |
+
* Update strings for add-on.
|
| 439 |
+
|
| 440 |
= 3.1.9 =
|
| 441 |
* 2020-02-01
|
| 442 |
* Fix undefined variable notice (thanks ronr1999).
|
