Version Description
= 1.3.1 = * Adds support for ACF Gutenberg blocks
= 1.3.0 = * Adds support for table caption * Still supports version 4 of ACF
= 1.2.6 = Fixes an PHP error and improves JavaScript code.
Download this release
Release Info
Developer | Jonua |
Plugin | Advanced Custom Fields: Table Field |
Version | 1.3.1-beta2 |
Comparing to | |
See all releases |
Code changes from version 1.3.0 to 1.3.1-beta2
- acf-table-v4.php +1 -1
- acf-table-v5.php +18 -3
- acf-table.php +1 -1
- changelog.txt +3 -0
- js/input-v4.js +1 -1
- js/input-v5.js +55 -6
- lang/acf-table-da_DK.po +2 -2
- lang/acf-table-de_DE.po +2 -2
- lang/acf-table-pl_PL.po +2 -2
- lang/acf-table.pot +2 -2
- readme.txt +9 -2
acf-table-v4.php
CHANGED
@@ -37,7 +37,7 @@
|
|
37 |
// settings
|
38 |
$this->settings = array(
|
39 |
'dir_url' => plugins_url( '', __FILE__ ) . '/',
|
40 |
-
'version' => '1.3.
|
41 |
);
|
42 |
|
43 |
// PREVENTS SAVING INVALID TABLE FIELD JSON DATA {
|
37 |
// settings
|
38 |
$this->settings = array(
|
39 |
'dir_url' => plugins_url( '', __FILE__ ) . '/',
|
40 |
+
'version' => '1.3.1',
|
41 |
);
|
42 |
|
43 |
// PREVENTS SAVING INVALID TABLE FIELD JSON DATA {
|
acf-table-v5.php
CHANGED
@@ -21,7 +21,7 @@ class acf_field_table extends acf_field {
|
|
21 |
* settings (array) Array of settings
|
22 |
*/
|
23 |
$this->settings = array(
|
24 |
-
'version' => '1.3.
|
25 |
'dir_url' => plugins_url( '', __FILE__ ) . '/',
|
26 |
);
|
27 |
|
@@ -214,8 +214,13 @@ class acf_field_table extends acf_field {
|
|
214 |
|
215 |
$e .= '</div>';
|
216 |
|
|
|
|
|
|
|
|
|
|
|
217 |
$e .= '<div class="acf-input-wrap">';
|
218 |
-
$e .= '<input type="hidden" data-field-options="' . urlencode( wp_json_encode( $data_field ) ) . '" id="' . esc_attr( $field['id'] ) . '" class="' . esc_attr( $field['type'] ) . '" name="' . esc_attr( $field['name'] ) . '" value="' .
|
219 |
$e .= '</div>';
|
220 |
|
221 |
$e .= '</div>';
|
@@ -406,7 +411,8 @@ class acf_field_table extends acf_field {
|
|
406 |
|
407 |
if ( is_string( $value ) ) {
|
408 |
|
409 |
-
$value =
|
|
|
410 |
}
|
411 |
|
412 |
if ( is_array( $value ) ) {
|
@@ -453,6 +459,15 @@ class acf_field_table extends acf_field {
|
|
453 |
|
454 |
function format_value( $value, $post_id, $field ) {
|
455 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
456 |
$a = json_decode( $value, true );
|
457 |
|
458 |
$value = false;
|
21 |
* settings (array) Array of settings
|
22 |
*/
|
23 |
$this->settings = array(
|
24 |
+
'version' => '1.3.1',
|
25 |
'dir_url' => plugins_url( '', __FILE__ ) . '/',
|
26 |
);
|
27 |
|
214 |
|
215 |
$e .= '</div>';
|
216 |
|
217 |
+
if ( substr( $field['value'] , 0 , 1 ) === '{' ) {
|
218 |
+
|
219 |
+
$field['value'] = urlencode( $field['value'] );
|
220 |
+
}
|
221 |
+
|
222 |
$e .= '<div class="acf-input-wrap">';
|
223 |
+
$e .= '<input type="hidden" data-field-options="' . urlencode( wp_json_encode( $data_field ) ) . '" id="' . esc_attr( $field['id'] ) . '" class="' . esc_attr( $field['type'] ) . '" name="' . esc_attr( $field['name'] ) . '" value="' . $field['value'] . '"/>';
|
224 |
$e .= '</div>';
|
225 |
|
226 |
$e .= '</div>';
|
411 |
|
412 |
if ( is_string( $value ) ) {
|
413 |
|
414 |
+
$value = str_replace( '%5C', '%5C%5C', $value );
|
415 |
+
$value = urldecode( $value );
|
416 |
}
|
417 |
|
418 |
if ( is_array( $value ) ) {
|
459 |
|
460 |
function format_value( $value, $post_id, $field ) {
|
461 |
|
462 |
+
// CHECK FOR GUTENBERG BLOCK CONTENT (URL ENCODED JSON) {
|
463 |
+
|
464 |
+
if ( substr( $value , 0 , 1 ) === '%' ) {
|
465 |
+
|
466 |
+
$value = urldecode( $value );
|
467 |
+
}
|
468 |
+
|
469 |
+
// }
|
470 |
+
|
471 |
$a = json_decode( $value, true );
|
472 |
|
473 |
$value = false;
|
acf-table.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
Plugin Name: Advanced Custom Fields: Table Field
|
4 |
Plugin URI: http://www.johannheyne.de/
|
5 |
Description: This free Add-on adds a table field type for the Advanced Custom Fields plugin.
|
6 |
-
Version: 1.3.
|
7 |
Author: Johann Heyne
|
8 |
Author URI: http://www.johannheyne.de/
|
9 |
License: GPLv2 or later
|
3 |
Plugin Name: Advanced Custom Fields: Table Field
|
4 |
Plugin URI: http://www.johannheyne.de/
|
5 |
Description: This free Add-on adds a table field type for the Advanced Custom Fields plugin.
|
6 |
+
Version: 1.3.1
|
7 |
Author: Johann Heyne
|
8 |
Author URI: http://www.johannheyne.de/
|
9 |
License: GPLv2 or later
|
changelog.txt
CHANGED
@@ -1,5 +1,8 @@
|
|
1 |
== Changelog ==
|
2 |
|
|
|
|
|
|
|
3 |
= 1.3.0 =
|
4 |
* Adds support for table caption
|
5 |
* Fixes a javascript issue for ACF version 4
|
1 |
== Changelog ==
|
2 |
|
3 |
+
= 1.3.1 =
|
4 |
+
* Adds support for ACF Gutenberg blocks
|
5 |
+
|
6 |
= 1.3.0 =
|
7 |
* Adds support for table caption
|
8 |
* Fixes a javascript issue for ACF version 4
|
js/input-v4.js
CHANGED
@@ -4,7 +4,7 @@
|
|
4 |
|
5 |
var t = this;
|
6 |
|
7 |
-
t.version = '1.3.
|
8 |
|
9 |
t.param = {};
|
10 |
|
4 |
|
5 |
var t = this;
|
6 |
|
7 |
+
t.version = '1.3.1';
|
8 |
|
9 |
t.param = {};
|
10 |
|
js/input-v5.js
CHANGED
@@ -4,7 +4,7 @@
|
|
4 |
|
5 |
var t = this;
|
6 |
|
7 |
-
t.version = '1.3.
|
8 |
|
9 |
t.param = {};
|
10 |
|
@@ -293,19 +293,49 @@
|
|
293 |
|
294 |
p.data = false;
|
295 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
296 |
if ( val !== '' ) {
|
297 |
|
298 |
try {
|
299 |
|
300 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
301 |
}
|
302 |
catch (e) {
|
303 |
|
304 |
-
p.
|
305 |
|
306 |
-
|
307 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
308 |
}
|
|
|
309 |
}
|
310 |
|
311 |
return p.data;
|
@@ -889,7 +919,18 @@
|
|
889 |
|
890 |
p.data = t.update_table_data_version( p.data );
|
891 |
|
892 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
893 |
|
894 |
// }
|
895 |
};
|
@@ -1182,6 +1223,14 @@
|
|
1182 |
|
1183 |
};
|
1184 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1185 |
t.sort_cols = function( p ) {
|
1186 |
|
1187 |
p.obj_table.find('.acf-table-header-row').each( function() {
|
4 |
|
5 |
var t = this;
|
6 |
|
7 |
+
t.version = '1.3.1';
|
8 |
|
9 |
t.param = {};
|
10 |
|
293 |
|
294 |
p.data = false;
|
295 |
|
296 |
+
// CHECK FIELD CONTEXT {
|
297 |
+
|
298 |
+
if ( p.obj_root.closest( '.acf-fields' ).hasClass( 'acf-block-fields' ) ) {
|
299 |
+
|
300 |
+
p.field_context = 'block';
|
301 |
+
}
|
302 |
+
else {
|
303 |
+
|
304 |
+
p.field_context = 'box';
|
305 |
+
}
|
306 |
+
|
307 |
+
// }
|
308 |
+
|
309 |
if ( val !== '' ) {
|
310 |
|
311 |
try {
|
312 |
|
313 |
+
if ( p.field_context === 'box' ) {
|
314 |
+
|
315 |
+
p.data = $.parseJSON( decodeURIComponent( val.replace(/\+/g, '%20') ) );
|
316 |
+
}
|
317 |
+
|
318 |
+
if ( p.field_context === 'block' ) {
|
319 |
+
|
320 |
+
p.data = $.parseJSON( decodeURIComponent( decodeURIComponent( val.replace(/\+/g, '%20') ) ) );
|
321 |
+
}
|
322 |
}
|
323 |
catch (e) {
|
324 |
|
325 |
+
if ( p.field_context === 'box' ) {
|
326 |
|
327 |
+
console.log( 'The tablefield value is not a valid JSON string:', decodeURIComponent( val.replace(/\+/g, '%20') ) );
|
328 |
+
console.log( 'The parsing error:', e );
|
329 |
+
}
|
330 |
+
|
331 |
+
if ( p.field_context === 'block' ) {
|
332 |
+
|
333 |
+
console.log( 'The tablefield value is not a valid JSON string:', decodeURIComponent( decodeURIComponent( val.replace(/\+/g, '%20') ) ) );
|
334 |
+
console.log( 'The tablefield value is not a valid JSON string:', decodeURIComponent( decodeURIComponent( decodeURIComponent( val.replace(/\+/g, '%20') ) ) ) );
|
335 |
+
console.log( 'The parsing error:', e );
|
336 |
+
}
|
337 |
}
|
338 |
+
|
339 |
}
|
340 |
|
341 |
return p.data;
|
919 |
|
920 |
p.data = t.update_table_data_version( p.data );
|
921 |
|
922 |
+
// makes json string from data object
|
923 |
+
var data = JSON.stringify( p.data );
|
924 |
+
|
925 |
+
// adds backslash to all \" in JSON string because encodeURIComponent() strippes backslashes
|
926 |
+
data.replace( /\\"/g, '\\"' );
|
927 |
+
|
928 |
+
// encodes the JSON string to URI component, the format, the JSON string is saved to the database
|
929 |
+
data = encodeURIComponent( data )
|
930 |
+
|
931 |
+
p.obj_root.find( 'input.table' ).val( data );
|
932 |
+
|
933 |
+
t.field_changed( p );
|
934 |
|
935 |
// }
|
936 |
};
|
1223 |
|
1224 |
};
|
1225 |
|
1226 |
+
t.field_changed = function( p ) {
|
1227 |
+
|
1228 |
+
if ( p.field_context === 'block' ) {
|
1229 |
+
|
1230 |
+
p.obj_root.change();
|
1231 |
+
}
|
1232 |
+
};
|
1233 |
+
|
1234 |
t.sort_cols = function( p ) {
|
1235 |
|
1236 |
p.obj_table.find('.acf-table-header-row').each( function() {
|
lang/acf-table-da_DK.po
CHANGED
@@ -38,10 +38,10 @@ msgid ""
|
|
38 |
msgstr ""
|
39 |
|
40 |
#. #-#-#-#-# advanced-custom-fields-table-field-code.pot (Advanced Custom
|
41 |
-
#. Fields: Table Field 1.3.
|
42 |
#. Plugin URI of the plugin/theme
|
43 |
#. #-#-#-#-# advanced-custom-fields-table-field-code.pot (Advanced Custom
|
44 |
-
#. Fields: Table Field 1.3.
|
45 |
#. Author URI of the plugin/theme
|
46 |
msgid "http://www.johannheyne.de/"
|
47 |
msgstr "http://www.johannheyne.de/"
|
38 |
msgstr ""
|
39 |
|
40 |
#. #-#-#-#-# advanced-custom-fields-table-field-code.pot (Advanced Custom
|
41 |
+
#. Fields: Table Field 1.3.1) #-#-#-#-#
|
42 |
#. Plugin URI of the plugin/theme
|
43 |
#. #-#-#-#-# advanced-custom-fields-table-field-code.pot (Advanced Custom
|
44 |
+
#. Fields: Table Field 1.3.1) #-#-#-#-#
|
45 |
#. Author URI of the plugin/theme
|
46 |
msgid "http://www.johannheyne.de/"
|
47 |
msgstr "http://www.johannheyne.de/"
|
lang/acf-table-de_DE.po
CHANGED
@@ -38,10 +38,10 @@ msgstr ""
|
|
38 |
"Tabellen Feldtype hinzu."
|
39 |
|
40 |
#. #-#-#-#-# advanced-custom-fields-table-field-code.pot (Advanced Custom
|
41 |
-
#. Fields: Table Field 1.3.
|
42 |
#. Plugin URI of the plugin/theme
|
43 |
#. #-#-#-#-# advanced-custom-fields-table-field-code.pot (Advanced Custom
|
44 |
-
#. Fields: Table Field 1.3.
|
45 |
#. Author URI of the plugin/theme
|
46 |
msgid "http://www.johannheyne.de/"
|
47 |
msgstr "http://www.johannheyne.de/"
|
38 |
"Tabellen Feldtype hinzu."
|
39 |
|
40 |
#. #-#-#-#-# advanced-custom-fields-table-field-code.pot (Advanced Custom
|
41 |
+
#. Fields: Table Field 1.3.1) #-#-#-#-#
|
42 |
#. Plugin URI of the plugin/theme
|
43 |
#. #-#-#-#-# advanced-custom-fields-table-field-code.pot (Advanced Custom
|
44 |
+
#. Fields: Table Field 1.3.1) #-#-#-#-#
|
45 |
#. Author URI of the plugin/theme
|
46 |
msgid "http://www.johannheyne.de/"
|
47 |
msgstr "http://www.johannheyne.de/"
|
lang/acf-table-pl_PL.po
CHANGED
@@ -36,10 +36,10 @@ msgid ""
|
|
36 |
msgstr ""
|
37 |
|
38 |
#. #-#-#-#-# advanced-custom-fields-table-field-code.pot (Advanced Custom
|
39 |
-
#. Fields: Table Field 1.3.
|
40 |
#. Plugin URI of the plugin/theme
|
41 |
#. #-#-#-#-# advanced-custom-fields-table-field-code.pot (Advanced Custom
|
42 |
-
#. Fields: Table Field 1.3.
|
43 |
#. Author URI of the plugin/theme
|
44 |
msgid "http://www.johannheyne.de/"
|
45 |
msgstr ""
|
36 |
msgstr ""
|
37 |
|
38 |
#. #-#-#-#-# advanced-custom-fields-table-field-code.pot (Advanced Custom
|
39 |
+
#. Fields: Table Field 1.3.1) #-#-#-#-#
|
40 |
#. Plugin URI of the plugin/theme
|
41 |
#. #-#-#-#-# advanced-custom-fields-table-field-code.pot (Advanced Custom
|
42 |
+
#. Fields: Table Field 1.3.1) #-#-#-#-#
|
43 |
#. Author URI of the plugin/theme
|
44 |
msgid "http://www.johannheyne.de/"
|
45 |
msgstr ""
|
lang/acf-table.pot
CHANGED
@@ -32,10 +32,10 @@ msgid "This free Add-on adds a table field type for the Advanced Custom Fields p
|
|
32 |
msgstr ""
|
33 |
|
34 |
#. #-#-#-#-# advanced-custom-fields-table-field-code.pot (Advanced Custom
|
35 |
-
#. Fields: Table Field 1.3.
|
36 |
#. Plugin URI of the plugin/theme
|
37 |
#. #-#-#-#-# advanced-custom-fields-table-field-code.pot (Advanced Custom
|
38 |
-
#. Fields: Table Field 1.3.
|
39 |
#. Author URI of the plugin/theme
|
40 |
msgid "http://www.johannheyne.de/"
|
41 |
msgstr ""
|
32 |
msgstr ""
|
33 |
|
34 |
#. #-#-#-#-# advanced-custom-fields-table-field-code.pot (Advanced Custom
|
35 |
+
#. Fields: Table Field 1.3.1) #-#-#-#-#
|
36 |
#. Plugin URI of the plugin/theme
|
37 |
#. #-#-#-#-# advanced-custom-fields-table-field-code.pot (Advanced Custom
|
38 |
+
#. Fields: Table Field 1.3.1) #-#-#-#-#
|
39 |
#. Author URI of the plugin/theme
|
40 |
msgid "http://www.johannheyne.de/"
|
41 |
msgstr ""
|
readme.txt
CHANGED
@@ -1,8 +1,8 @@
|
|
1 |
=== Advanced Custom Fields: Table Field ===
|
2 |
Contributors: jonua
|
3 |
Tags: acf table
|
4 |
-
Requires at least:
|
5 |
-
Tested up to:
|
6 |
Stable tag: 1.2.6
|
7 |
Requires PHP: 5.6
|
8 |
License: GPLv2 or later
|
@@ -20,6 +20,7 @@ The table field works also with the repeater and flexible field types.
|
|
20 |
= Features =
|
21 |
* Table Header (Option)
|
22 |
* Table Caption (Option)
|
|
|
23 |
* Add and remove table columns and rows
|
24 |
* Change order of columns and rows by dragging
|
25 |
* To move to the next cells editor press key: tab
|
@@ -244,6 +245,9 @@ However, only when activated as a plugin will updates be available.
|
|
244 |
|
245 |
== Upgrade Notice ==
|
246 |
|
|
|
|
|
|
|
247 |
= 1.3.0 =
|
248 |
* Adds support for table caption
|
249 |
* Still supports version 4 of ACF
|
@@ -254,6 +258,9 @@ Fixes an PHP error and improves JavaScript code.
|
|
254 |
|
255 |
== Changelog ==
|
256 |
|
|
|
|
|
|
|
257 |
= 1.3.0 =
|
258 |
* Adds support for table caption
|
259 |
* Fixes a javascript issue for ACF version 4
|
1 |
=== Advanced Custom Fields: Table Field ===
|
2 |
Contributors: jonua
|
3 |
Tags: acf table
|
4 |
+
Requires at least: 5.0.3
|
5 |
+
Tested up to: 5.0.3
|
6 |
Stable tag: 1.2.6
|
7 |
Requires PHP: 5.6
|
8 |
License: GPLv2 or later
|
20 |
= Features =
|
21 |
* Table Header (Option)
|
22 |
* Table Caption (Option)
|
23 |
+
* Support for ACF Gutenberg blocks
|
24 |
* Add and remove table columns and rows
|
25 |
* Change order of columns and rows by dragging
|
26 |
* To move to the next cells editor press key: tab
|
245 |
|
246 |
== Upgrade Notice ==
|
247 |
|
248 |
+
= 1.3.1 =
|
249 |
+
* Adds support for ACF Gutenberg blocks
|
250 |
+
|
251 |
= 1.3.0 =
|
252 |
* Adds support for table caption
|
253 |
* Still supports version 4 of ACF
|
258 |
|
259 |
== Changelog ==
|
260 |
|
261 |
+
= 1.3.1 =
|
262 |
+
* Adds support for ACF Gutenberg blocks
|
263 |
+
|
264 |
= 1.3.0 =
|
265 |
* Adds support for table caption
|
266 |
* Fixes a javascript issue for ACF version 4
|