uid = $users[array_rand($users)];
$node->type = 'book';
$node->parent = $parents[array_rand($parents)];
$node->weight = rand(-4,4);
$next = 1 + db_result(db_query("SELECT MAX(nid) FROM {node}"));
$node->title = "page #$next ($node->type)";
$node->filter = variable_get('filter_default_format', 1);
$node->status = 1;
$node->comment = 2;
$node->body = create_content();
$node->teaser = node_teaser($node->body);
$node->promote = rand(0, 1);
// Save the node:
node_save($node);
unset($node);
}
}
function create_content() {
$nparas = rand(1,12);
$type = rand(0,3);
$output = "";
switch($type % 3) {
case 1: // html
for ($i = 1; $i <= $nparas; $i++) {
$output .= create_para(rand(10,40),1);
}
break;
case 2: // brs only
for ($i = 1; $i <= $nparas; $i++) {
$output .= create_para(rand(10,40),2);
}
break;
default: // plain text
for ($i = 1; $i <= $nparas; $i++) {
$output .= create_para(rand(10,40)) ."\n";
}
}
return $output;
}
function create_para($words, $type = 0) {
$output = "";
switch ($type) {
case 1:
$output .= "
";
$output .= create_greeking($words);
$output = trim($output) ."
";
break;
case 2:
$output .= create_greeking($words);
$output = trim($output) ."
";
break;
default:
$output .= create_greeking($words);
$output = trim($output);
}
return $output;
}
function create_greeking($words) {
$dictionary = array("abbas", "abdo", "abico", "abigo", "abluo", "accumsan",
"acsi", "ad", "adipiscing", "aliquam", "aliquip", "amet", "antehabeo",
"appellatio", "aptent", "at", "augue", "autem", "bene", "blandit",
"brevitas", "caecus", "camur", "capto", "causa", "cogo", "comis",
"commodo", "commoveo", "consectetuer", "consequat", "conventio", "cui",
"damnum", "decet", "defui", "diam", "dignissim", "distineo", "dolor",
"dolore", "dolus", "duis", "ea", "eligo", "elit", "enim", "erat",
"eros", "esca", "esse", "et", "eu", "euismod", "eum", "ex", "exerci",
"exputo", "facilisi", "facilisis", "fere", "feugiat", "gemino",
"genitus", "gilvus", "gravis", "haero", "hendrerit", "hos", "huic",
"humo", "iaceo", "ibidem", "ideo", "ille", "illum", "immitto",
"importunus", "imputo", "in", "incassum", "inhibeo", "interdico",
"iriure", "iusto", "iustum", "jugis", "jumentum", "jus", "laoreet",
"lenis", "letalis", "lobortis", "loquor", "lucidus", "luctus", "ludus",
"luptatum", "macto", "magna", "mauris", "melior", "metuo", "meus",
"minim", "modo", "molior", "mos", "natu", "neo", "neque", "nibh",
"nimis", "nisl", "nobis", "nostrud", "nulla", "nunc", "nutus", "obruo",
"occuro", "odio", "olim", "oppeto", "os", "pagus", "pala", "paratus",
"patria", "paulatim", "pecus", "persto", "pertineo", "plaga", "pneum",
"populus", "praemitto", "praesent", "premo", "probo", "proprius",
"quadrum", "quae", "qui", "quia", "quibus", "quidem", "quidne", "quis",
"ratis", "refero", "refoveo", "roto", "rusticus", "saepius",
"sagaciter", "saluto", "scisco", "secundum", "sed", "si", "similis",
"singularis", "sino", "sit", "sudo", "suscipere", "suscipit", "tamen",
"tation", "te", "tego", "tincidunt", "torqueo", "tum", "turpis",
"typicus", "ulciscor", "ullamcorper", "usitas", "ut", "utinam",
"utrum", "uxor", "valde", "valetudo", "validus", "vel", "velit",
"veniam", "venio", "vereor", "vero", "verto", "vicis", "vindico",
"virtus", "voco", "volutpat", "vulpes", "vulputate", "wisi", "ymo",
"zelus");
$greeking = "";
while ($words > 0) {
$sentence_length = rand(3,10);
$greeking .= ucfirst($dictionary[array_rand($dictionary)]);
for ($i = 1; $i < $sentence_length; $i++) {
$greeking .= " " . $dictionary[array_rand($dictionary)];
}
$greeking .= ". ";
$words -= $sentence_length;
}
return $greeking;
}
function get_users() {
$users = array();
$result = db_query("SELECT uid FROM {users} WHERE uid > 0");
while($user = db_fetch_object($result)){
$users[] = $user->uid;
}
return $users;
}
// get user ids
$users = get_users();
$num = $num_pages/5;
// create pseudo-random book nodes
create_nodes($num_top, $users);
$parents = array();
for ($i = 0; $i < $num; $i++){
$result = db_query("SELECT DISTINCT(nid) FROM {book}");
while ($node = db_fetch_object($result)) {
$parents[]=$node->nid;
}
create_nodes(5, $users, $parents);
}
print("created $num_top top-level book nodes and ");
print(($num*5) ." additional book nodes
");
?>