From ba305b43ab490d8efb3de08b266f269adc6ea98c Mon Sep 17 00:00:00 2001 From: Rogelio Mita Date: Tue, 10 Sep 2013 18:40:03 +0000 Subject: Applying DependencyInput into dynamic structure of poll --- diff --git a/webapp/coffee/dependency_input.coffee b/webapp/coffee/dependency_input.coffee index 0d70135..520c7c5 100644 --- a/webapp/coffee/dependency_input.coffee +++ b/webapp/coffee/dependency_input.coffee @@ -6,13 +6,15 @@ class DependencyInput class="span2 droppable dependence_value" type="text" name="groups.[[ group_order ]].fields.[[ order ]].dependence.values" - value="" + value="[[ value ]]" placeholder="nro. ID" /> () """ + @value = "" render: -> context = { + "value": @value, "order": @field_order, "group_order": @group_order, } diff --git a/webapp/js_tests/spec/DependencyInputSpec.js b/webapp/js_tests/spec/DependencyInputSpec.js index 8b2bd37..adbde46 100644 --- a/webapp/js_tests/spec/DependencyInputSpec.js +++ b/webapp/js_tests/spec/DependencyInputSpec.js @@ -1,7 +1,7 @@ // Generated by CoffeeScript 1.6.3 (function() { describe("DependencyInput", function() { - return it("should render html element", function() { + it("should render html element", function() { var dependency_input, expected, field_order, group_order; expected = "()\n\n()"; group_order = "1"; @@ -9,6 +9,15 @@ dependency_input = new DependencyInput(group_order, field_order); return expect(dependency_input.render()).toBe(expected); }); + return it("render should have group_order, field_order and value", function() { + var dependency_input, expected, field_order, group_order; + expected = "()\n\n()"; + group_order = "0"; + field_order = "0"; + dependency_input = new DependencyInput(group_order, field_order); + dependency_input.value = "a value"; + return expect(dependency_input.render()).toBe(expected); + }); }); }).call(this); diff --git a/webapp/js_tests/spec/coffee/DependencyInputSpec.coffee b/webapp/js_tests/spec/coffee/DependencyInputSpec.coffee index 5a1759c..702081a 100644 --- a/webapp/js_tests/spec/coffee/DependencyInputSpec.coffee +++ b/webapp/js_tests/spec/coffee/DependencyInputSpec.coffee @@ -14,3 +14,20 @@ describe "DependencyInput", -> field_order = "1" dependency_input = new DependencyInput(group_order, field_order) expect(dependency_input.render()).toBe(expected) + + it "render should have group_order, field_order and value", -> + expected = """ + () + + () + """ + group_order = "0" + field_order = "0" + dependency_input = new DependencyInput(group_order, field_order) + dependency_input.value = "a value" + expect(dependency_input.render()).toBe(expected) \ No newline at end of file diff --git a/webapp/polls/templates/tags/structure.html b/webapp/polls/templates/tags/structure.html index 61e0c63..d6b5765 100644 --- a/webapp/polls/templates/tags/structure.html +++ b/webapp/polls/templates/tags/structure.html @@ -49,6 +49,7 @@ + diff --git a/webapp/webapp/static/js/dependency_input.js b/webapp/webapp/static/js/dependency_input.js index 0cf0e81..ac92e02 100644 --- a/webapp/webapp/static/js/dependency_input.js +++ b/webapp/webapp/static/js/dependency_input.js @@ -6,12 +6,14 @@ function DependencyInput(group_order, field_order) { this.group_order = group_order; this.field_order = field_order; - this.template = "()\n\n()"; + this.template = "()\n\n()"; + this.value = ""; } DependencyInput.prototype.render = function() { var context; context = { + "value": this.value, "order": this.field_order, "group_order": this.group_order }; diff --git a/webapp/webapp/static/js/dynamic_structure.js b/webapp/webapp/static/js/dynamic_structure.js index 9a6aef9..b0a6d91 100644 --- a/webapp/webapp/static/js/dynamic_structure.js +++ b/webapp/webapp/static/js/dynamic_structure.js @@ -409,11 +409,9 @@ var factoryDependences = function(container, values, field_order, group_order) { "operators": _operators }); } else { - widget = Mustache.render(TEMPLATES['dependence_value'], { - "value": value, - "order": field_order, - "group_order": group_order, - }); + dependency_input = new DependencyInput(group_order, field_order); + dependency_input.value = value; + widget = dependency_input.render(); } container.append(widget); -- cgit v0.9.1