} // We test access to couchdb server if (!$error) { include_once($dolibarr_main_document_root . "/core/db/couchdb/lib/couchClient.php"); include_once($dolibarr_main_document_root . "/core/db/couchdb/lib/couchAdmin.php"); print '<input type="hidden" name="couchdb_user_root" value="' . $_POST['couchdb_user_root'] . '">'; print '<input type="hidden" name="couchdb_pass_root" value="' . $_POST['couchdb_pass_root'] . '">'; try { if ($_POST['couchdb_create_admin']) { $couchdb = new couchClient($conf->Couchdb->host . ':' . $conf->Couchdb->port . '/', $conf->Couchdb->name); $couchAdmin = new couchAdmin($couchdb); $couchAdmin->createAdmin($_POST['couchdb_user_root'], $_POST['couchdb_pass_root']); $couchAdmin->addRoleToUser($_POST['couchdb_user_root'], "Administrator"); // Add user in administrator group } $host = substr($conf->Couchdb->host, 7); $couchdb = new couchClient('http://' . $_POST['couchdb_user_root'] . ':' . $_POST['couchdb_pass_root'] . '@' . $host . ':' . $conf->Couchdb->port . '/', $conf->Couchdb->name, array("cookie_auth" => false)); if ($_POST['couchdb_create_database']) $couchdb->createDatabase(); $couchdb->getDatabaseInfos(); print "<tr><td>"; print $langs->trans("ServerConnection") . " (" . $langs->trans("User") . " " . $_POST['couchdb_user_root'] . ") : "; print $dolibarr_main_couchdb_host; print "</td><td>"; print $langs->trans("OK"); print "</td></tr>";
public function testUserRoles() { $adm = new couchAdmin($this->aclient); $user = $adm->getUser("joe"); $this->assertType("object", $user); $this->assertObjectHasAttribute("_id", $user); $this->assertObjectHasAttribute("roles", $user); $this->assertType("array", $user->roles); $this->assertEquals(0, count($user->roles)); $adm->addRoleToUser($user, "cowboy"); $user = $adm->getUser("joe"); $this->assertType("object", $user); $this->assertObjectHasAttribute("_id", $user); $this->assertObjectHasAttribute("roles", $user); $this->assertType("array", $user->roles); $this->assertEquals(1, count($user->roles)); $this->assertEquals("cowboy", reset($user->roles)); $adm->addRoleToUser("joe", "trainstopper"); $user = $adm->getUser("joe"); $this->assertType("object", $user); $this->assertObjectHasAttribute("_id", $user); $this->assertObjectHasAttribute("roles", $user); $this->assertType("array", $user->roles); $this->assertEquals(2, count($user->roles)); $this->assertEquals("cowboy", reset($user->roles)); $this->assertEquals("trainstopper", end($user->roles)); $adm->removeRoleFromUser($user, "cowboy"); $user = $adm->getUser("joe"); $this->assertType("object", $user); $this->assertObjectHasAttribute("_id", $user); $this->assertObjectHasAttribute("roles", $user); $this->assertType("array", $user->roles); $this->assertEquals(1, count($user->roles)); $this->assertEquals("trainstopper", reset($user->roles)); $adm->removeRoleFromUser("joe", "trainstopper"); $user = $adm->getUser("joe"); $this->assertType("object", $user); $this->assertObjectHasAttribute("_id", $user); $this->assertObjectHasAttribute("roles", $user); $this->assertType("array", $user->roles); $this->assertEquals(0, count($user->roles)); }
} $db->free($result); unset($result); /* sql query get sales */ $sql = "SELECT g.rowid, g.nom, ug.fk_user"; $sql.= " FROM ".MAIN_DB_PREFIX."usergroup as g,"; $sql.= " ".MAIN_DB_PREFIX."usergroup_user as ug"; $sql.= " WHERE ug.fk_usergroup = g.rowid"; $result = $db->query($sql); /* init society sales array */ while ($aRow = $db->fetch_object($result)) { if(!empty($col[$aRow->fk_user]->rowid)){ $couchAdmin->addRoleToUser($col[$aRow->fk_user]->name, $aRow->nom); } } $db->free($result); unset($result); //print_r($col);exit; try { $result = $couchdb->storeDocs($col,false); } catch (Exception $e) { echo "Something weird happened: ".$e->getMessage()." (errcode=".$e->getCode().")\n"; exit(1); } print_r($result);