diff options
author | Rogelio Mita <rogeliomita@activitycentral.com> | 2013-09-10 20:34:49 (GMT) |
---|---|---|
committer | Rogelio Mita <rogeliomita@activitycentral.com> | 2013-09-10 20:34:49 (GMT) |
commit | f086002dfe4a635afcd3d229889aef059fce707c (patch) | |
tree | 80afc963718e89978c5de677a08ce1dde8ec3c83 | |
parent | ba305b43ab490d8efb3de08b266f269adc6ea98c (diff) |
Render respond a DOM element
-rw-r--r-- | webapp/coffee/dependency_input.coffee | 5 | ||||
-rw-r--r-- | webapp/js_tests/files.json | 1 | ||||
-rw-r--r-- | webapp/js_tests/spec/DependencyInputSpec.js | 14 | ||||
-rw-r--r-- | webapp/js_tests/spec/coffee/DependencyInputSpec.coffee | 15 | ||||
-rw-r--r-- | webapp/webapp/static/js/dependency_input.js | 6 |
5 files changed, 36 insertions, 5 deletions
diff --git a/webapp/coffee/dependency_input.coffee b/webapp/coffee/dependency_input.coffee index 520c7c5..13691d6 100644 --- a/webapp/coffee/dependency_input.coffee +++ b/webapp/coffee/dependency_input.coffee @@ -19,6 +19,9 @@ class DependencyInput "group_order": @group_order, } Mustache.tags = ['[[', ']]'] - Mustache.render @template, context + widget = jQuery(Mustache.render @template, context) + input = $(widget[3]) + return widget + window.DependencyInput = DependencyInput
\ No newline at end of file diff --git a/webapp/js_tests/files.json b/webapp/js_tests/files.json index b5762f4..27143d2 100644 --- a/webapp/js_tests/files.json +++ b/webapp/js_tests/files.json @@ -4,6 +4,7 @@ "/static/js/jquery.min.js", "/static/js/jquery-ui.js", "/static/js/mustache-0.7.0.js", + "/static/js/bootstrap.min.js", "/static/js/factoryField.js", "/static/js/dependency_input.js", "/static/js/dynamic_structure.js" diff --git a/webapp/js_tests/spec/DependencyInputSpec.js b/webapp/js_tests/spec/DependencyInputSpec.js index adbde46..10a95f9 100644 --- a/webapp/js_tests/spec/DependencyInputSpec.js +++ b/webapp/js_tests/spec/DependencyInputSpec.js @@ -9,7 +9,7 @@ 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() { + it("render should have group_order, field_order and value", function() { var dependency_input, expected, field_order, group_order; expected = "<span class=\"_parentesis _parentesis_open\">(</span><span class=\"_parentesis _parentesis_close\">)</span>\n<input\n class=\"span2 droppable dependence_value\"\n type=\"text\"\n name=\"groups.0.fields.0.dependence.values\"\n value=\"a value\"\n placeholder=\"nro. ID\" />\n<span class=\"_parentesis _parentesis_open\">(</span><span class=\"_parentesis _parentesis_close\">)</span>"; group_order = "0"; @@ -18,6 +18,18 @@ dependency_input.value = "a value"; return expect(dependency_input.render()).toBe(expected); }); + return it("should respond with popover on click", function() { + var container, dependency_input, field_order, group_order, input, widget; + setFixtures("<div id='container'></div>"); + container = $('#container'); + group_order = "0"; + field_order = "0"; + dependency_input = new DependencyInput(group_order, field_order); + widget = dependency_input.render(); + container.append(widget); + input = container.find("input.dependence_value"); + return input.click(); + }); }); }).call(this); diff --git a/webapp/js_tests/spec/coffee/DependencyInputSpec.coffee b/webapp/js_tests/spec/coffee/DependencyInputSpec.coffee index 702081a..28a47c5 100644 --- a/webapp/js_tests/spec/coffee/DependencyInputSpec.coffee +++ b/webapp/js_tests/spec/coffee/DependencyInputSpec.coffee @@ -30,4 +30,17 @@ describe "DependencyInput", -> 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 + expect(dependency_input.render()).toBe(expected) + + it "should respond with popover on click", -> + setFixtures("<div id='container'></div>") + container = $('#container'); + + group_order = "0" + field_order = "0" + dependency_input = new DependencyInput(group_order, field_order) + widget = dependency_input.render() + container.append(widget) + input = container.find("input.dependence_value") + input.click() + diff --git a/webapp/webapp/static/js/dependency_input.js b/webapp/webapp/static/js/dependency_input.js index ac92e02..ea948b9 100644 --- a/webapp/webapp/static/js/dependency_input.js +++ b/webapp/webapp/static/js/dependency_input.js @@ -11,14 +11,16 @@ } DependencyInput.prototype.render = function() { - var context; + var context, input, widget; context = { "value": this.value, "order": this.field_order, "group_order": this.group_order }; Mustache.tags = ['[[', ']]']; - return Mustache.render(this.template, context); + widget = jQuery(Mustache.render(this.template, context)); + input = $(widget[3]); + return widget; }; return DependencyInput; |