--- a/getAgency.php
+++ b/getAgency.php
@@ -1,9 +1,10 @@
$key | ";
@@ -17,23 +18,68 @@
}
if ($mode == "edit") {
if (is_array($value)) {
- echo "";
+ echo '
+
+
+
+ ";
} else {
- if (strpos($key,"_") === 0) {
+ if (strpos($key, "_") === 0) {
echo"";
+ } else if ($key == "parentOrg") {
+ echo "";
+ } else if (strpos($key, "has") === 0) {
+ echo "";
} else {
- echo "";
-
+ echo "";
+ if ((strpos($key,"URL") > 0 || $key == 'website')&& $value != "") {
+ echo "view";
+ }
+ if ($key == 'abn') {
+ echo "view abn";
+ }
}
}
}
+ //
+}
+
+function addDefaultFields($row) {
+ global $schemas;
+ $defaultFields = array_keys($schemas['agency']['properties']);
+ foreach ($defaultFields as $defaultField) {
+ if (!isset($row[$defaultField])) {
+ if ($schemas['agency']['properties'][$defaultField]['type'] == "string") {
+ if (strpos($defaultField, "has") === 0) {
+ $row[$defaultField] = "false";
+
+ } else {
+ $row[$defaultField] = "";
+ }
+
+ }
+ if ($schemas['agency']['properties'][$defaultField]['type'] == "array") {
+
+ $row[$defaultField] = Array("");
+ }
+ }
+ }
+ return $row;
}
$db = $server->get_db('disclosr-agencies');
+
if (isset($_REQUEST['id'])) {
//get an agency record as json/html, search by name/abn/id
// by name = startkey="Ham"&endkey="Ham\ufff0"
@@ -41,35 +87,80 @@
$row = $db->get($_REQUEST['id']);
//print_r($row);
+ if (sizeof($_POST) > 0) {
+ //print_r($_POST);
+ if (isset($_POST['_id']) && $db->get_rev($_POST['_id']) == $_POST['_rev']) {
+ echo "Edited version was latest version, continue saving";
+ $newdoc = $_POST;
+ $newdoc['metadata']['lastModified'] = time();
+ $row = $db->save($newdoc);
+ } else {
+ echo "ALERT doc revised by someone else while editing.";
+ }
+ }
$mode = "edit";
-
+ $row = addDefaultFields(object_to_array($row));
if ($mode == "view") {
echo '';
- echo ' ' . $row->name . " | ";
+ echo ' ' . $row['name'] . " | ";
echo "Field Name | Field Value | ";
}
if ($mode == "edit") {
- echo ' ";
+ }
+ if ($mode == "edit") {
+ echo '';
+ }
+ } else {
+
+ try {
+ /*$rows = $db->get_view("app", "showNamesABNs")->rows;
+ //print_r($rows);
+ foreach ($rows as $row) {
+ // print_r($row);
+ echo '- ' .
+ (isset($row->value->name) && $row->value->name != "" ? $row->value->name : "NO NAME " . $row->value->abn)
+ . '
';
+ }*/
+ $rows = $db->get_view("app", "byName")->rows;
+ //print_r($rows);
+ foreach ($rows as $row) {
+ // print_r($row);
+ echo '- ' .
+ $row->key
+ . '
';
+ }
+ } catch (SetteeRestClientException $e) {
+ setteErrorHandler($e);
+ }
}
- foreach ($row as $key => $value) {
- echo displayValue($key, $value, $mode);
- }
- if ($mode == "view") {
- echo "";
- }
- if ($mode == "edit") {
- echo '';
- }
-} else {
-
- $rows = $db->get_view("app", "showNamesABNs")->rows;
-//print_r($rows);
- foreach ($rows as $row) {
- // print_r($row);
- echo '- ' .
- (isset($row->value->name) && $row->value->name != "" ? $row->value->name : "NO NAME " . $row->value->abn)
- . '
';
- }
-}
-include_footer();
+ include_footer();
+ ?>
|