--- a/include/couchdb.inc.php
+++ b/include/couchdb.inc.php
@@ -3,6 +3,42 @@
include $basePath . "schemas/schemas.inc.php";
require ($basePath . 'couchdb/settee/src/settee.php');
+function createFOIDocumentsDesignDoc() {
+ /* "map": "function(doc) {\n emit(doc.web_server, 1);\n}",
+ "reduce": "function (key, values, rereduce) {\n return sum(values);\n}"
+ },
+ "byAgency": {
+ "map": "function(doc) {\n emit(doc.agencyID, 1);\n}",
+ "reduce": "function (key, values, rereduce) {\n return sum(values);\n}"
+ },
+ "byURL": {
+ "map": "function(doc) {\n emit(doc.url, doc);\n}"
+*/
+}
+function createDocumentsDesignDoc() {
+ /* "views": {
+ "web_server": {
+ "map": "function(doc) {\n emit(doc.web_server, 1);\n}",
+ "reduce": "function (key, values, rereduce) {\n return sum(values);\n}"
+ },
+ "byAgency": {
+ "map": "function(doc) {\n emit(doc.agencyID, 1);\n}",
+ "reduce": "function (key, values, rereduce) {\n return sum(values);\n}"
+ },
+ "byURL": {
+ "map": "function(doc) {\n emit(doc.url, doc);\n}"
+ },
+ "agency": {
+ "map": "function(doc) {\n emit(doc.agencyID, doc);\n}"
+ },
+ "byWebServer": {
+ "map": "function(doc) {\n emit(doc.web_server, doc);\n}"
+ },
+ "getValidationRequired": {
+ "map": "function(doc) {\nif (doc.mime_type == \"text/html\" \n&& typeof(doc.validation) == \"undefined\") {\n emit(doc._id, doc._attachments);\n}\n}"
+ }
+ } */
+}
function createAgencyDesignDoc() {
global $db;
@@ -29,9 +65,17 @@
$obj->views->byName->map = 'function(doc) {
if (typeof(doc["status"]) == "undefined" || doc["status"] != "suspended") {
emit(doc.name, doc._id);
+if (typeof(doc.shortName) != "undefined" && doc.shortName != doc.name) {
+ emit(doc.shortName, doc._id);
+}
for (name in doc.otherNames) {
if (doc.otherNames[name] != "" && doc.otherNames[name] != doc.name) {
emit(doc.otherNames[name], doc._id);
+}
+ }
+ for (name in doc.foiBodies) {
+if (doc.foiBodies[name] != "" && doc.foiBodies[name] != doc.name) {
+ emit(doc.foiBodies[name], doc._id);
}
}
}
@@ -62,27 +106,31 @@
}
}";
// http://stackoverflow.com/questions/646628/javascript-startswith
- $obj->views->scoreHas->map = 'if(!String.prototype.startsWith){
+ $obj->views->score->map = 'if(!String.prototype.startsWith){
String.prototype.startsWith = function (str) {
return !this.indexOf(str);
}
}
-if(!String.prototype.endsWith){
- String.prototype.endsWith = function(suffix) {
- return this.indexOf(suffix, this.length - suffix.length) !== -1;
- };
-}
+
function(doc) {
-if (typeof(doc["status"]) == "undefined" || doc["status"] != "suspended") {
-for(var propName in doc) {
- if(typeof(doc[propName]) != "undefined" && (propName.startsWith("has") || propName.endsWith("URL"))) {
- emit(propName, 1);
- }
-}
- emit("total", 1);
- }
+ count = 0;
+ if (doc["status"] != "suspended") {
+ for(var propName in doc) {
+ if(typeof(doc[propName]) != "undefined" && doc[propName] != "") {
+ count++;
+ }
+ }
+ portfolio = doc.parentOrg;
+ if (doc.orgType == "FMA-DepartmentOfState") {
+ portfolio = doc._id;
+ }
+ if (doc.orgType == "Court-Commonwealth" || doc.orgType == "FMA-DepartmentOfParliament") {
+ portfolio = doc.orgType;
+ }
+ emit(count+doc._id, {id:doc._id, name: doc.name, score:count, orgType: doc.orgType, portfolio:portfolio});
+ }
}';
- $obj->views->scoreHas->map = 'if(!String.prototype.startsWith){
+ $obj->views->scoreHas->map = 'if(!String.prototype.startsWith){
String.prototype.startsWith = function (str) {
return !this.indexOf(str);
}
@@ -105,7 +153,7 @@
$obj->views->scoreHas->reduce = 'function (key, values, rereduce) {
return sum(values);
}';
- $obj->views->fieldNames->map = '
+ $obj->views->fieldNames->map = '
function(doc) {
for(var propName in doc) {
emit(propName, doc._id);
@@ -120,16 +168,20 @@
}
if (php_uname('n') == "vanille") {
-
- $server = new SetteeServer('http://192.168.178.21:5984');
+ $serverAddr = 'http://192.168.178.21:5984/';
} else
if (php_uname('n') == "KYUUBEY") {
- $server = new SetteeServer('http://192.168.1.148:5984');
+ $serverAddr = 'http://192.168.1.148:5984/';
} else {
- $server = new SetteeServer('http://127.0.0.1:5984');
+ $serverAddr = 'http://127.0.0.1:5984/';
+}
+$server = new SetteeServer($serverAddr);
+
+function setteErrorHandler($e) {
+ if (class_exists('Amon')) {
+ Amon::log($e->getMessage() . " " . print_r($_SERVER,true), array('error'));
+ }
+ echo $e->getMessage() . "
" . PHP_EOL;
}
-function setteErrorHandler($e) {
- echo $e->getMessage() . "
" . PHP_EOL;
-}