fixed exception when using joined columns
Message-ID: <558417db.TimyMi77TozGftJr%ab(a)mathias-kettner.de>
User-Agent: Heirloom mailx 12.5 6/20/10
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Module: check_mk
Branch: master
Commit: 3901bb128497ac4f27a27bb6033e76b1c8a2fa2c
URL:
http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=3901bb128497ac…
Author: Andreas Boesl <ab(a)mathias-kettner.de>
Date: Fri Jun 19 15:22:21 2015 +0200
#2310 FIX multisite view data export: fixed exception when using joined columns
The csv / json / python data export of a mulitsite view did not work correctly
when there were joined columns involved. An exception occured whenever an additional
column was set after the joined column.
Note: A single joined column at the end of a table row did work.
---
.werks/2310 | 14 ++++++++++++++
ChangeLog | 1 +
web/plugins/views/webservice.py | 14 +++++++-------
3 files changed, 22 insertions(+), 7 deletions(-)
diff --git a/.werks/2310 b/.werks/2310
new file mode 100644
index 0000000..9bd2a18
--- /dev/null
+++ b/.werks/2310
@@ -0,0 +1,14 @@
+Title: multisite view data export: fixed exception when using joined columns
+Level: 1
+Component: multisite
+Class: fix
+Compatible: compat
+State: unknown
+Version: 1.2.7i2
+Date: 1434719835
+
+The csv / json / python data export of a mulitsite view did not work correctly
+when there were joined columns involved. An exception occured whenever an additional
+column was set after the joined column.
+
+Note: A single joined column at the end of a table row did work.
diff --git a/ChangeLog b/ChangeLog
index acca58e..3014c8e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -47,6 +47,7 @@
* 2340 FIX: Email validation: Top level domains can now have a maximum length of 24
characters
* 2353 FIX: Fix showing options for availability in BI mode, where above header
* 2356 FIX: Fixed exception in Multisite JSON output
+ * 2310 FIX: multisite view data export: fixed exception when using joined columns...
WATO:
* 1254 The target address for crash reports can now be configured in wato global
settings
diff --git a/web/plugins/views/webservice.py b/web/plugins/views/webservice.py
index ceae7d7..5eec631 100644
--- a/web/plugins/views/webservice.py
+++ b/web/plugins/views/webservice.py
@@ -41,8 +41,8 @@ def render_python(rows, view, group_painters, painters, num_columns,
show_checkb
for row in rows:
html.write("[")
for p in painters:
- row = join_row(row, p)
- tdclass, content = paint_painter(p[0], row)
+ joined_row = join_row(row, p)
+ tdclass, content = paint_painter(p[0], joined_row)
html.write(repr(html.strip_tags(content)))
html.write(",")
html.write("],")
@@ -95,10 +95,10 @@ def render_json(rows, view, group_painters, painters, num_columns,
show_checkbox
first = False
else:
html.write(",")
- row = join_row(row, p)
- tdclass, content = paint_painter(p[0], row)
+ joined_row = join_row(row, p)
+ tdclass, content = paint_painter(p[0], joined_row)
if type(content) == unicode:
- content = content.encode("utf-8")
+ content = content.encode("utf-8")
else:
content = str(content)
content = content.replace("<br>","\n")
@@ -159,8 +159,8 @@ def render_csv(rows, view, group_painters, painters, num_columns,
show_checkboxe
first = False
else:
html.write(csv_separator)
- row = join_row(row, p)
- tdclass, content = paint_painter(p[0], row)
+ joined_row = join_row(row, p)
+ tdclass, content = paint_painter(p[0], joined_row)
content = type(content) in [ int, float ] and str(content) or content
stripped = html.strip_tags(content).replace('\n',
'').replace('"', '""')
html.write('"%s"' % stripped.encode("utf-8"))