From: Alexander Sadleir Date: Wed, 11 Jan 2012 14:10:25 +0000 Subject: Add hierarchical graph X-Git-Url: https://maxious.lambdacomplex.org/git/?p=disclosr.git&a=commitdiff&h=6e9bd9a920ccd832039b9e618c66d1c31d955dc4 --- Add hierarchical graph Former-commit-id: 5b4c5d76fd89c7a77236ac131f75184be44723c9 --- --- a/.gitmodules +++ b/.gitmodules @@ -4,4 +4,7 @@ [submodule "couchdb/settee"] path = couchdb/settee url = https://github.com/inadarei/settee.git +[submodule "lib/springy"] + path = lib/springy + url = https://github.com/dhotson/springy.git --- a/getAgency.php +++ b/getAgency.php @@ -47,10 +47,19 @@ } function addDefaultFields($row) { - $defaultFields = Array("name","orgType","parentOrg"); + global $schemas; + $defaultFields = array_keys($schemas['agency']['properties']); foreach ($defaultFields as $defaultField) { - if (!isset($row[$defaultField])) + if (!isset($row[$defaultField])) { + if ($schemas['agency']['properties'][$defaultField]['type'] == "string") { + $row[$defaultField] = ""; + } + if ($schemas['agency']['properties'][$defaultField]['type'] == "array") { + + $row[$defaultField] = Array(""); + } + } } return $row; } --- /dev/null +++ b/graph.php @@ -1,1 +1,47 @@ + + + + + + + + + + --- a/include/couchdb.inc.php +++ b/include/couchdb.inc.php @@ -9,6 +9,16 @@ $obj->language = "javascript"; $obj->views->all->map = "function(doc) { emit(doc._id, doc); };"; $obj->views->byABN->map = "function(doc) { emit(doc.abn, doc); };"; + $obj->views->byCanonicalName->map = "function(doc) { + if (doc.parentOrg || doc.orgType == 'FMA-DepartmentOfState') { + emit(doc.name, doc._id); + } +};"; + $obj->views->parentOrgs->map = "function(doc) { + if (doc.parentOrg) { + emit(doc._id, doc.parentOrg); + } +};"; $obj->views->byName->map = "function(doc) { emit(doc.name, doc._id); for (name in doc.otherNames) { @@ -52,8 +62,16 @@ require ('couchdb/settee/src/settee.php'); +if( php_uname('n') == "vanille") { + +$server = new SetteeServer('http://192.168.178.21:5984'); +} else + if( php_uname('n') == "kyuubey") { + $server = new SetteeServer('http://192.168.1.8:5984'); - +} else { + $server = new SetteeServer('http://127.0.0.1:5984'); +} function setteErrorHandler($e) { echo $e->getMessage() . "
" . PHP_EOL; } --- /dev/null +++ b/lib/springy --- a/robots.txt +++ b/robots.txt @@ -2,3 +2,4 @@ # www.google.com/support/webmasters/bin/answer.py?hl=en&answer=156449 User-agent: * +Disallow: /admin/ --- a/schemas/agency.json.php +++ b/schemas/agency.json.php @@ -5,8 +5,21 @@ "type" => "object", "properties" => Array( "name" => Array("type" => "string", "required" => true, "x-title"=> "Agency Name", "description" => "Agency Name, most recent and broadest"), - "othernames" => Array("type" => "array", "required" => true, "x-title" => "Agency Past/Other Names", "description" => "Agency Names", + "otherNames" => Array("type" => "array", "required" => true, "x-title" => "Agency Past/Other Names", "description" => "Agency Names", "items" => Array("type" => "string")), + "orgType"=> Array("type" => "string", "required" => true, "x-title"=> "Agency Name", "description" => "Agency Name, most recent and broadest"), + "parentOrg"=> Array("type" => "string", "required" => true, "x-title"=> "Agency Name", "description" => "Agency Name, most recent and broadest"), + "website"=> Array("type" => "string", "required" => true, "x-title"=> "Agency Name", "description" => "Agency Name, most recent and broadest"), + "abn" => Array("type" => "string", "required" => true, "x-title"=> "Agency Name", "description" => "Agency Name, most recent and broadest"), + "contractListURL" => Array("type" => "string", "required" => true, "x-title"=> "Agency Name", "description" => "Agency Name, most recent and broadest"), + "grantsReportingURL" => Array("type" => "string", "required" => true, "x-title"=> "Agency Name", "description" => "Agency Name, most recent and broadest"), + "annualReportURL" => Array("type" => "string", "required" => true, "x-title"=> "Agency Name", "description" => "Agency Name, most recent and broadest"), + "consultanciesURL" => Array("type" => "string", "required" => true, "x-title"=> "Agency Name", "description" => "Agency Name, most recent and broadest"), + "legalExpenditureURL"=> Array("type" => "string", "required" => true, "x-title"=> "Agency Name", "description" => "Agency Name, most recent and broadest"), + "recordsListURL"=> Array("type" => "string", "required" => true, "x-title"=> "Agency Name", "description" => "Agency Name, most recent and broadest"), + "FOIDocumentsURL"=> Array("type" => "string", "required" => true, "x-title"=> "Agency Name", "description" => "Agency Name, most recent and broadest"), + "infoPublicationSchemeURL"=> Array("type" => "string", "required" => true, "x-title"=> "Agency Name", "description" => "Agency Name, most recent and broadest"), + "appointmentsURL"=> Array("type" => "string", "required" => true, "x-title"=> "Agency Name", "description" => "Agency Name, most recent and broadest"), ), /*"org":{"type":"object", "properties":{