From 0c767212e26015610fbb646892e0a9ebbb1cc762 Mon Sep 17 00:00:00 2001 From: Rufus Pollock Date: Fri, 29 Jun 2012 00:16:45 +0100 Subject: [PATCH 1/2] [#49,transform,bugfix][s]: be careful about selecting col for transform code as may have no fields as yet. --- src/view.transform.js | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/view.transform.js b/src/view.transform.js index 3c8aa262..0b9a1a8a 100644 --- a/src/view.transform.js +++ b/src/view.transform.js @@ -44,7 +44,11 @@ my.Transform = Backbone.View.extend({ // Put in the basic (identity) transform script // TODO: put this into the template? var editor = this.el.find('.expression-preview-code'); - var col = this.model.fields.models[0].id; + if (this.model.fields.length > 0) { + var col = this.model.fields.models[0].id; + } else { + var col = 'unknown'; + } editor.val("function(doc) {\n doc['"+ col +"'] = doc['"+ col +"'];\n return doc;\n}"); editor.focus().get(0).setSelectionRange(18, 18); editor.keydown(); From 2734f608ba12c3be53aab8b21508d4e584f1d475 Mon Sep 17 00:00:00 2001 From: Rufus Pollock Date: Fri, 29 Jun 2012 00:38:30 +0100 Subject: [PATCH 2/2] [#94,trasnform][s]: show before / after side by side rather than above and below. --- css/transform.css | 8 ++++++++ src/view.transform.js | 47 +++++++++++++++++++------------------------ 2 files changed, 29 insertions(+), 26 deletions(-) diff --git a/css/transform.css b/css/transform.css index 1d25f87b..6c1e9b0e 100644 --- a/css/transform.css +++ b/css/transform.css @@ -29,3 +29,11 @@ color: red; } +.recline-transform .before-after .after { + font-style: italic; +} + +.recline-transform .before-after .after.different { + font-weight: bold; +} + diff --git a/src/view.transform.js b/src/view.transform.js index 0b9a1a8a..6c7d2f6a 100644 --- a/src/view.transform.js +++ b/src/view.transform.js @@ -66,32 +66,28 @@ my.Transform = Backbone.View.extend({ }, editPreviewTemplate: ' \ - \ +
\ \ \ - \ - {{#fields}} \ - \ - {{/fields}} \ + \ + \ + \ \ \ \ + {{#row}} \ \ - \ - {{#row.before}} \ - \ - {{/row.before}} \ - \ - \ - \ - {{#row.after}} \ - \ + \ - {{/row.after}} \ \ + {{/row}} \ \
{{id}}FieldBeforeAfter
Before \ - {{.}} \ + \ + {{field}} \
After \ - {{.}} \ + \ + {{before}} \ + \ + {{after}} \
\ ', @@ -111,19 +107,18 @@ my.Transform = Backbone.View.extend({ var $el = self.el.find('.expression-preview-container'); var fields = self.model.fields.toJSON(); var rows = _.map(previewData.slice(0,4), function(row) { - return { - before: _.map(fields, function(field) { - return row.before[field.id]; - }), - after: _.map(fields, function(field) { - return row.after[field.id]; - }) - }; + return _.map(fields, function(field) { + return { + field: field.id, + before: row.before[field.id], + after: row.after[field.id], + different: !_.isEqual(row.before[field.id], row.after[field.id]) + } + }); }); $el.html(''); _.each(rows, function(row) { var templated = Mustache.render(self.editPreviewTemplate, { - fields: fields, row: row }); $el.append(templated);