their type, extracting some meta-data and other useful information. WARNING: custom added metadata and sharing properties will be overwritten! */ $fileStorageDir = getConfig($config, 'file_storage_dir', TRUE); $cachePath = getConfig($config, 'cache_dir', TRUE); /* each user has their own data directory, easy to link files to users in case the index breaks, so at least the files themselves are not lost, only the metadata added by the user and sharing groups. */ $dbName = getConfig($config, 'db_name', TRUE); $s = new Sag(); $dbs = $s->getAllDatabases()->body; /* if db already exists, delete it */ if (in_array($dbName, $dbs)) { $s->deleteDatabase($dbName); } $s->createDatabase($dbName); $s->setDatabase($dbName); /* load all the map/reduce js functions from mapReduce directory */ $views = array(); foreach (glob("docs/mapReduce/*") as $mrFiles) { list($name, $type) = explode(".", basename($mrFiles)); $views[$name][$type] = file_get_contents($mrFiles); } $view = array("_id" => "_design/files", "type" => "view", "language" => "javascript", "views" => $views); // Add the view $s->post($view);