|
|
@@ -269,6 +269,17 @@ class Api_WfsDataServer extends Api_WfsServerBase {
|
|
|
} else {
|
|
|
throw new Exception("Error Processing Request - too many refs for ".$acl->getName().".{$itemKey}/{$fldName}");
|
|
|
}
|
|
|
+ } else if ('xsd:base64Binary' === $acl->getXsdFieldType($fldName)) {
|
|
|
+ if (empty($item[$fldName]) && '0' !== $item[$fldName]) continue;
|
|
|
+ $xmlWriter->startElement("{$wfsNs}:{$fldName}");
|
|
|
+ if (!$simple && !$acl->canReadObjectField($fldName, (object)$item)) {
|
|
|
+ $xmlWriter->writeAttribute("{$rootWfsNs}:allow_read", "false");
|
|
|
+ }
|
|
|
+ if (!$simple && !$acl->canWriteObjectField($fldName, (object)$item)) {
|
|
|
+ $xmlWriter->writeAttribute("{$rootWfsNs}:allow_write", "true");
|
|
|
+ }
|
|
|
+ $xmlWriter->text(base64_encode($item[$fldName]));
|
|
|
+ $xmlWriter->endElement();// {$wfsNs}:{$fldName}
|
|
|
} else {
|
|
|
$value = str_replace('&', '&', $item[$fldName]);
|
|
|
if (empty($value) && '0' !== $value) {
|