<?php |
<?php |
|
|
include "schemas/schemas.inc.php"; |
include "schemas/schemas.inc.php"; |
|
|
function createAgencyDesignDoc() { |
function createAgencyDesignDoc() { |
global $db; |
global $db; |
$obj = new stdClass(); |
$obj = new stdClass(); |
$obj->_id = "_design/" . urlencode("app"); |
$obj->_id = "_design/" . urlencode("app"); |
$obj->language = "javascript"; |
$obj->language = "javascript"; |
$obj->views->byABN->map = "function(doc) { emit(doc.abn, doc); };"; |
$obj->views->byABN->map = "function(doc) { emit(doc.abn, doc); };"; |
$obj->views->byName->map = "function(doc) { emit(doc.name, doc); };"; |
$obj->views->byName->map = "function(doc) { emit(doc.name, doc); |
|
for (name in doc.otherNames) { |
|
if (doc.otherNames[name] != '' && doc.otherNames[name] != doc.name) { |
|
emit(doc.otherNames[name], doc); |
|
} |
|
} |
|
};"; |
$obj->views->byLastModified->map = "function(doc) { emit(doc.metadata.lastModified, doc); }"; |
$obj->views->byLastModified->map = "function(doc) { emit(doc.metadata.lastModified, doc); }"; |
$obj->views->getActive->map = 'function(doc) { if (doc.status == "active") { emit(doc._id, doc); } };'; |
$obj->views->getActive->map = 'function(doc) { if (doc.status == "active") { emit(doc._id, doc); } };'; |
$obj->views->getSuspended->map = 'function(doc) { if (doc.status == "suspended") { emit(doc._id, doc); } };'; |
$obj->views->getSuspended->map = 'function(doc) { if (doc.status == "suspended") { emit(doc._id, doc); } };'; |
$obj->views->getScrapeRequired->map = "function(doc) { emit(doc.abn, doc); };"; |
$obj->views->getScrapeRequired->map = "function(doc) { emit(doc.abn, doc); };"; |
$obj->views->showNamesABNs->map = "function(doc) { emit(doc._id, {name: doc.name, abn: doc.abn}); };"; |
$obj->views->showNamesABNs->map = "function(doc) { emit(doc._id, {name: doc.name, abn: doc.abn}); };"; |
|
// http://stackoverflow.com/questions/646628/javascript-startswith |
|
$obj->views->score->map = 'if(!String.prototype.startsWith){ |
|
String.prototype.startsWith = function (str) { |
|
return !this.indexOf(str); |
|
} |
|
} |
|
|
|
function(doc) { |
|
count = 0; |
|
if (typeof(doc["status"]) == "undefined" || doc["status"] != "suspended") { |
|
for(var propName in doc) { |
|
if(typeof(doc[propName]) != "undefined" && propName.startsWith("l")) { |
|
count++ |
|
} |
|
} |
|
emit(count+doc._id, {id:doc._id, name: doc.name, score:count}); |
|
} |
|
}'; |
|
|
// allow safe updates (even if slightly slower due to extra: rev-detection check). |
// allow safe updates (even if slightly slower due to extra: rev-detection check). |
return $db->save($obj, true); |
return $db->save($obj, true); |
} |
} |
|
|
require ('couchdb/settee/src/settee.php'); |
require ('couchdb/settee/src/settee.php'); |
|
|
$server = new SetteeServer('http://127.0.0.1:5984'); |
$server = new SetteeServer('http://192.168.1.8:5984'); |
|
|
function setteErrorHandler($e) { |
function setteErrorHandler($e) { |
echo $e->getMessage() . "<br>" . PHP_EOL; |
echo $e->getMessage() . "<br>" . PHP_EOL; |
} |
} |
|
|
?> |
?> |
|
|