function get_objects($status = NULL, $id = NULL, $i = 1)
{
global $db;
$indent = ' ';
if (!in_array($status, array('all', 'owned', 'ordered', 'wanted', 'unwanted'))) {
$status = 'all';
}
$i_sql = "SELECT book_titles.isbn, book_titles.title, book_titles.volume, book_titles.status";
$i_sql .= (!$id) ? " FROM book_titles" : " FROM book_titles, book_series2isbn";
$i_sql .= (!$id) ? " WHERE NOT EXISTS (SELECT * FROM book_series2isbn WHERE book_series2isbn.isbn = book_titles.isbn)" : " WHERE book_series2isbn.isbn = book_titles.isbn AND book_series2isbn.serie_id = {$id}";
$i_sql .= ($status == 'all') ? "" : " AND book_titles.status = '{$status}'";
$i_sql .= " ORDER BY book_titles.volume, book_titles.title ASC";
$i_result = mysql_query($i_sql, $db['connect']);
if (mysql_errno($db['connect'])) die(mysql_errno($db['connect']) . ': ' . mysql_error($db['connect']) . '
'.$i_sql);
if (!$id) {
$sql = "SELECT book_series.id, book_series.serie, book_series.info FROM book_series WHERE book_series.p_id IS NULL ORDER BY book_series.serie ASC";
}
else {
$sql = "SELECT book_series.id, book_series.serie, book_series.info FROM book_series WHERE book_series.p_id = {$id} ORDER BY book_series.serie ASC";
for ($i2 = 0; $i2 < $i; $i2++) {
$level .= '» ';
}
$i++;
}
$result = mysql_query($sql, $db['connect']);
if (mysql_num_rows($result) || mysql_num_rows($i_result)) {
if ((mysql_num_rows($result) && !mysql_num_rows($i_result)) || !$id) {
echo $indent, "\n";
}
if (mysql_num_rows($result)) {
while (list($pid, $serie, $info) = mysql_fetch_array($result)) {
$s_sql = "SELECT book_series.id FROM book_series WHERE book_series.p_id = {$pid}";
$s_result = mysql_query($s_sql, $db['connect']);
if (mysql_errno($db['connect'])) die(mysql_errno($db['connect']) . ': ' . mysql_error($db['connect']) . '
' . $s_sql);
$s2i_sql = "SELECT book_series2isbn.serie_id FROM book_series2isbn WHERE book_series2isbn.serie_id = {$pid}";
$s2i_result = mysql_query($s2i_sql, $db['connect']);
if (mysql_errno($db['connect'])) die(mysql_errno($db['connect']) . ': ' . mysql_error($db['connect']) . '
'.$s2i_sql);
if (!mysql_num_rows($s_result) && !mysql_num_rows($s2i_result)) continue;
$info = ($info) ? ": {$info}" : '';
echo $indent, "\n";
echo $indent, ' | ', $level, $serie, $info, " | \n";
echo $indent, "
\n";
get_objects($status, $pid, $i);
}
}
if (mysql_num_rows($i_result)) {
if ($id) {
echo $indent, "\n";
}
$row = 1;
while (list($isbn, $title, $volume, $status) = mysql_fetch_array($i_result)) {
$volume = (!$volume) ? '' : $volume;
echo $indent, '', "\n";
echo $indent, '  | ', "\n";
echo $indent, ' ', $volume, " | \n";
echo $indent, ' ', "\n";
echo $indent, ' ', $title, " \n";
echo $indent, ' ISBN: ', (stristr($isbn, '_')) ? substr($isbn, 0, strpos($isbn, '_')) : $isbn, "\n";
echo $indent, " | \n";
echo $indent, ' ', "\n";
$a2i_sql = "SELECT book_authors.id, book_authors.firstname, book_authors.lastname FROM book_authors, book_authors2isbn WHERE book_authors.id = book_authors2isbn.author_id AND book_authors2isbn.isbn = '{$isbn}' ORDER BY book_authors.firstname ASC";
$a2i_result = mysql_query($a2i_sql, $db['connect']);
if (mysql_errno($db['connect'])) die(mysql_errno($db['connect']) . ': ' . mysql_error($db['connect']) . ' '.$a2i_sql);
if (mysql_num_rows($a2i_result)) {
$c = 0;
echo $indent, ' ';
while (list($aid, $firstname, $lastname) = mysql_fetch_array($a2i_result)) {
if ($c > 0) {
echo ', ';
}
echo $firstname, ' ', $lastname;
$c++;
}
echo " \n";
}
echo $indent, " | \n";
echo $indent, "
\n";
$row++;
}
if ($id) {
echo $indent, "\n";
}
}
if ((mysql_num_rows($result) && !mysql_num_rows($i_result)) || !$id) {
echo $indent, "\n";
}
}
}