Easy Table - Version 1.3

Version Description

  • Fixed: escape is now working, you can use escape to skip delimiters (also terminators if they're not \r or \n) using escape (default escape character is backslash)
Download this release

Release Info

Developer takien
Plugin Icon wp plugin Easy Table
Version 1.3
Comparing to
See all releases

Code changes from version 1.2 to 1.3

easy-table.php CHANGED
@@ -4,7 +4,7 @@ Plugin Name: Easy Table
4
Plugin URI: http://takien.com/
5
Description: Create table in post, page, or widget in easy way.
6
Author: Takien
7
- Version: 1.2
8
Author URI: http://takien.com/
9
*/
10
@@ -87,7 +87,7 @@ function __construct(){
87
private function easy_table_base($return){
88
$easy_table_base = Array(
89
'name' => 'Easy Table',
90
- 'version' => '1.2',
91
'plugin-domain' => 'easy-table'
92
);
93
return $easy_table_base[$return];
@@ -1191,7 +1191,7 @@ function easy_table_init() {
1191
* Use dedicated str_getcsv since 1.1
1192
*/
1193
if (!function_exists('easy_table_str_getcsv')) {
1194
- function easy_table_str_getcsv($input, $delimiter = ",", $enclosure = '"', $escape = "\\"){
1195
1196
/**
1197
* Bug fix, custom terminator wont work
@@ -1203,6 +1203,8 @@ if (!function_exists('easy_table_str_getcsv')) {
1203
$input = str_replace("\n",'NLINEBREAK',$input);
1204
$input = str_replace("\r",'RLINEBREAK',$input);
1205
}
1206
$fiveMBs = 5 * 1024 * 1024;
1207
if (($handle = fopen("php://temp/maxmemory:$fiveMBs", 'r+')) !== FALSE) {
1208
fputs($handle, $input);
@@ -1215,12 +1217,13 @@ if (!function_exists('easy_table_str_getcsv')) {
1215
1216
$option = get_option('easy_table_plugin_option');
1217
$limit = !empty($option['limit']) ? (int)$option['limit'] : 2000;
1218
- while (($data = @fgetcsv($handle, $limit, $delimiter, $enclosure)) !== FALSE) {
1219
$num = count($data);
1220
for ($c=0; $c < $num; $c++) {
1221
$line++;
1222
$data[$c] = str_replace('NLINEBREAK',"\n",$data[$c]);
1223
$data[$c] = str_replace('RLINEBREAK',"\r",$data[$c]);
1224
$return[$line] = $data[$c];
1225
}
1226
}
4
Plugin URI: http://takien.com/
5
Description: Create table in post, page, or widget in easy way.
6
Author: Takien
7
+ Version: 1.3
8
Author URI: http://takien.com/
9
*/
10
87
private function easy_table_base($return){
88
$easy_table_base = Array(
89
'name' => 'Easy Table',
90
+ 'version' => '1.3',
91
'plugin-domain' => 'easy-table'
92
);
93
return $easy_table_base[$return];
1191
* Use dedicated str_getcsv since 1.1
1192
*/
1193
if (!function_exists('easy_table_str_getcsv')) {
1194
+ function easy_table_str_getcsv($input, $delimiter = ",", $enclosure = '"', $escape = '\\'){
1195
1196
/**
1197
* Bug fix, custom terminator wont work
1203
$input = str_replace("\n",'NLINEBREAK',$input);
1204
$input = str_replace("\r",'RLINEBREAK',$input);
1205
}
1206
+ $input = str_ireplace( $escape.$delimiter,'_ESCAPED_SEPATATOR_',$input );
1207
+
1208
$fiveMBs = 5 * 1024 * 1024;
1209
if (($handle = fopen("php://temp/maxmemory:$fiveMBs", 'r+')) !== FALSE) {
1210
fputs($handle, $input);
1217
1218
$option = get_option('easy_table_plugin_option');
1219
$limit = !empty($option['limit']) ? (int)$option['limit'] : 2000;
1220
+ while (($data = @fgetcsv($handle, $limit, $delimiter, $enclosure, $escape)) !== FALSE) {
1221
$num = count($data);
1222
for ($c=0; $c < $num; $c++) {
1223
$line++;
1224
$data[$c] = str_replace('NLINEBREAK',"\n",$data[$c]);
1225
$data[$c] = str_replace('RLINEBREAK',"\r",$data[$c]);
1226
+ $data[$c] = str_replace('_ESCAPED_SEPATATOR_',$delimiter,$data[$c]);
1227
$return[$line] = $data[$c];
1228
}
1229
}
languages/easy-table-id_ID.mo CHANGED
Binary file
languages/easy-table-id_ID.po CHANGED
@@ -1,9 +1,9 @@
1
msgid ""
2
msgstr ""
3
- "Project-Id-Version: easy-table 1.1.4\n"
4
"Report-Msgid-Bugs-To: \n"
5
"POT-Creation-Date: 2013-05-13 04:14+0700\n"
6
- "PO-Revision-Date: 2013-08-12 12:36+0700\n"
7
"Last-Translator: takien <contact@takien.com>\n"
8
"Language-Team: takien.com <contact@takien.com>\n"
9
"Language: id_ID\n"
1
msgid ""
2
msgstr ""
3
+ "Project-Id-Version: easy-table 1.3\n"
4
"Report-Msgid-Bugs-To: \n"
5
"POT-Creation-Date: 2013-05-13 04:14+0700\n"
6
+ "PO-Revision-Date: 2013-08-20 09:28+0700\n"
7
"Last-Translator: takien <contact@takien.com>\n"
8
"Language-Team: takien.com <contact@takien.com>\n"
9
"Language: id_ID\n"
languages/english.mo CHANGED
Binary file
languages/english.po CHANGED
@@ -1,9 +1,9 @@
1
msgid ""
2
msgstr ""
3
- "Project-Id-Version: easy-table 1.1.4\n"
4
"Report-Msgid-Bugs-To: \n"
5
"POT-Creation-Date: 2013-05-13 04:13+0700\n"
6
- "PO-Revision-Date: 2013-08-12 12:36+0700\n"
7
"Last-Translator: takien <contact@takien.com>\n"
8
"Language-Team: takien.com <contact@takien.com>\n"
9
"Language: en_US\n"
1
msgid ""
2
msgstr ""
3
+ "Project-Id-Version: easy-table 1.3\n"
4
"Report-Msgid-Bugs-To: \n"
5
"POT-Creation-Date: 2013-05-13 04:13+0700\n"
6
+ "PO-Revision-Date: 2013-08-20 09:28+0700\n"
7
"Last-Translator: takien <contact@takien.com>\n"
8
"Language-Team: takien.com <contact@takien.com>\n"
9
"Language: en_US\n"
readme.txt CHANGED
@@ -4,7 +4,7 @@ Donate link: http://takien.com/donate
4
Tags: table,csv,csv-to-table,post,excel,csv file,widget,tablesorter
5
Requires at least: 3.0
6
Tested up to: 3.6
7
- Stable tag: 1.2
8
License: GPLv2 or later
9
License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
@@ -24,6 +24,10 @@ Easy Table using standard CSV format to generate table data, it's easiest way to
24
* Fancy table design (using Twitter CSS bootstrap)
25
* WYSIWYG safe, I mean you can switch HTML/View tab in WordPress editor without breaking the table data.
26
27
= Example usage =
28
29
* Basic table
@@ -179,6 +183,24 @@ row3col1,row3col2,row3col3|
179
row4col1,row4col2,row4col3|
180
[/table]`
181
182
* Table with no heading
183
`[table th="0"]some data here[/table]`
184
@@ -225,6 +247,9 @@ No
225
226
== Changelog ==
227
228
= 1.2 =
229
* Added: `align` parameter is now back. (Previously removed on version 1.1)
230
4
Tags: table,csv,csv-to-table,post,excel,csv file,widget,tablesorter
5
Requires at least: 3.0
6
Tested up to: 3.6
7
+ Stable tag: 1.3
8
License: GPLv2 or later
9
License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
24
* Fancy table design (using Twitter CSS bootstrap)
25
* WYSIWYG safe, I mean you can switch HTML/View tab in WordPress editor without breaking the table data.
26
27
+ = Known bugs =
28
+ * Enclosure will not work on first cell of a row
29
+ * Chinese characters (and others?) usually stripped down on first cell of a row
30
+
31
= Example usage =
32
33
* Basic table
183
row4col1,row4col2,row4col3|
184
[/table]`
185
186
+ * Table with comma in cell using enclosure
187
+ `[table]
188
+ head1,head2,head3
189
+ row1col1,row1col2,"this, should, in, one cell, because, enclosured, with, doublequote"
190
+ row2col1,row2col2,row2col3
191
+ row3col1,row3col2,row3col3
192
+ row4col1,row4col2,row4col3
193
+ [/table]`
194
+
195
+ * Table with comma in cell using escape (since 1.3)
196
+ `[table]
197
+ head1,head2,head3
198
+ row1col1,row1col2,this\, should\, in\, one cell\, because\, commas \,escaped \,with \,backslash
199
+ row2col1,row2col2,row2col3
200
+ row3col1,row3col2,row3col3
201
+ row4col1,row4col2,row4col3
202
+ [/table]`
203
+
204
* Table with no heading
205
`[table th="0"]some data here[/table]`
206
247
248
== Changelog ==
249
250
+ = 1.3 =
251
+ * Fixed: `escape` is now working, you can use escape to skip `delimiter`s (also `terminator`s if they're not \r or \n) using escape (default escape character is backslash)
252
+
253
= 1.2 =
254
* Added: `align` parameter is now back. (Previously removed on version 1.1)
255