diff --git a/lib/WebGUI/MetaData.pm b/lib/WebGUI/MetaData.pm
index d67313a6a..8fe41468c 100644
--- a/lib/WebGUI/MetaData.pm
+++ b/lib/WebGUI/MetaData.pm
@@ -20,6 +20,7 @@ use WebGUI::Session;
use WebGUI::SQL;
use WebGUI::Macro;
use Tie::IxHash;
+use WebGUI::ErrorHandler;
=head1 NAME
@@ -294,7 +295,7 @@ sub getWobjectByCriteria {
if ($wobjectId) {
$scratchId = "WobjectProxy_" . $wobjectId;
if($session{scratch}{$scratchId}) {
- return $session{scratch}{$scratchId};
+ return $session{scratch}{$scratchId} unless ($session{var}{adminOn});
}
}
@@ -360,7 +361,7 @@ sub getWobjectByCriteria {
# No matching wobjects found.
if (scalar(@wids) == 0) {
- return undef;
+ return undef; # fall back to the originally mirrored wobject.
}
my $wid;
# Grab a wid from the results
diff --git a/lib/WebGUI/Wobject/WobjectProxy.pm b/lib/WebGUI/Wobject/WobjectProxy.pm
index 49974ea87..d634d184f 100644
--- a/lib/WebGUI/Wobject/WobjectProxy.pm
+++ b/lib/WebGUI/Wobject/WobjectProxy.pm
@@ -281,7 +281,7 @@ sub _drawQueryBuilder {
|
- |
+
|;
}
diff --git a/www/extras/wobject/WobjectProxy/querybuilder.css b/www/extras/wobject/WobjectProxy/querybuilder.css
index cf81e283b..e98ba2461 100644
--- a/www/extras/wobject/WobjectProxy/querybuilder.css
+++ b/www/extras/wobject/WobjectProxy/querybuilder.css
@@ -33,6 +33,13 @@
font-size: 12px;
}
+.qbButton {
+ height: 20px;
+ font-size: 12px;
+ border-width: 1px;
+ -moz-border-radius: 0px;
+}
+
.qbText {
background-color: white;
text-align: left;
diff --git a/www/extras/wobject/WobjectProxy/querybuilder.js b/www/extras/wobject/WobjectProxy/querybuilder.js
index 9eca475d2..1e0dd7c40 100644
--- a/www/extras/wobject/WobjectProxy/querybuilder.js
+++ b/www/extras/wobject/WobjectProxy/querybuilder.js
@@ -4,14 +4,17 @@ function addCriteria ( fieldname, opform, valform ) {
var value = getValue(valform);
var criteria = form.proxyCriteria.value;
var conjunction = "";
- var re = /^\s*$/;
- if(! re.test(criteria)) {
+ if(! /^\s*$/.test(criteria)) {
conjunction = " " + getValue(form.conjunction) + " ";
}
+ //handle quotes
if(/\s+/.test(fieldname)) {
fieldname = '"' + fieldname + '"';
}
- var statement = fieldname + " " + operator + " " + '"' + value + '"';
+ if(/^\D+$/.test(value)) {
+ value = '"' + value + '"';
+ }
+ var statement = fieldname + " " + operator + " " + value;
form.proxyCriteria.value = criteria + conjunction + statement;
}