Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Fix PrintProviderField to work with textboxes and associated test. Se…
…e issue geoext#363
  • Loading branch information
geographika committed Sep 17, 2015
1 parent f1e43bb commit 28bd2ae
Show file tree
Hide file tree
Showing 2 changed files with 32 additions and 5 deletions.
13 changes: 8 additions & 5 deletions src/GeoExt/plugins/PrintProviderField.js
Expand Up @@ -155,11 +155,14 @@ Ext.define('GeoExt.plugins.PrintProviderField', {
*/
onFieldChange: function(field, records) {
var record;
if (Ext.isArray(records)) {
record = records[0];
} else {
record = records;
}
// textfields records parameter is a string, comboboxes are records
if(Ext.isString(records) === false){
if (Ext.isArray(records)) {
record = records[0];
} else {
record = records;
}
}
var printProvider = this.printProvider || field.ownerCt.printProvider;
var value = field.getValue();
this._updating = true;
Expand Down
24 changes: 24 additions & 0 deletions tests/plugins/PrintProviderField.html
Expand Up @@ -190,6 +190,30 @@
t.eq(printProvider.layout.get("name"), printProvider.layouts.getAt(1).get("name"), "Layout value updated in printProvider.");
}

function test_textfield_onFieldChange(t) {
t.plan(1);

var printProvider = Ext.create('GeoExt.data.MapfishPrintProvider', {
capabilities: printCapabilities,
customParams: {foo: "bar"}
});
var plugin = Ext.create('GeoExt.plugins.PrintProviderField', {
printProvider: printProvider
});
var field = Ext.create('Ext.form.field.Text', {
name: "foo",
plugins: plugin,
listeners: {
dirtychange: function(){
// this fires after the change event
t.eq(printProvider.customParams.foo, "foobar", "Custom text field value updated in printProvider.");
}
}
});

field.setValue("foobar");
}

function test_onProviderChange(t) {
t.plan(3);

Expand Down

0 comments on commit 28bd2ae

Please sign in to comment.