assignInclude( "listings", "$skindir/listings.tpl" ); else $tpl->assignInclude( "listings", _BASEDIR."default_tpls/listings.tpl" ); $tpl->assignInclude( "header", "$skindir/header.tpl" ); $tpl->assignInclude( "footer", "$skindir/footer.tpl" ); include(_BASEDIR."includes/pagesetup.php"); $seriesid = (isset($_GET['seriesid']) && is_numeric($_GET['seriesid'])) ? escapestring($_GET['seriesid']) : false; $sresult = dbquery(_SERIESQUERY." AND seriesid = '$seriesid' LIMIT 1"); $series = dbassoc($sresult); if(file_exists("$skindir/series_title.tpl")) $titleblock = new TemplatePower( "$skindir/series_title.tpl" ); else $titleblock = new TemplatePower( "default_tpls/series_title.tpl" ); $titleblock->prepare( ); $titleblock->newBlock("series"); $titleblock->assign("pagetitle", stripslashes($series['title'])." "._BY." ".$series['penname'].""); $titleblock->assign("summary", stripslashes($series['summary'])); $titleblock->assign("category", $series['catid'] ? catlist($series['catid']) : _NONE); $titleblock->assign("characters", $series['characters'] ? charlist($series['characters']) : _NONE); $titleblock->assign("numstories", $series['numstories']); if($series['classes']) { $classes = array( ); foreach(explode(",", $series['classes']) as $c) { $classes[$classlist[$c]['type']][] = "".$classlist[$c]['name'].""; } } $allclasslist = ""; foreach($classtypelist as $num => $c) { if(isset($classes[$num])) { $titleblock->assign($c['name'], implode(", ", $classes[$num])); $allclasslist .= "".$c['title'].": ".implode(", ", $classes[$num])."
"; } else { $titleblock->assign($c['name'], _NONE); $allclasslist .= "".$c['title'].": "._NONE."
"; } } $seriesType = array(_CLOSED, _MODERATED, _OPEN); $titleblock->assign("open", $seriesType[$series['isopen']]); $codeblocks = dbquery("SELECT * FROM ".TABLEPREFIX."fanfiction_codeblocks WHERE code_type = 'seriestitle'"); while($code = dbassoc($codeblocks)) { eval($code['code_text']); } $titleblock->assign("classifications", $allclasslist); if(isADMIN) $titleblock->assign("adminoptions", "
"._ADMINOPTIONS.": ["._ADD2SERIES."] ["._EDIT."] ["._DELETE."]
"); $jumpmenu = ""; if($reviewsallowed && (isMEMBER || $anonreviews)) { $titleblock->assign("score", ratingpics($series['rating'])); $titleblock->assign("reviews", ""._REVIEWS.""); $titleblock->assign("numreviews", "".$series['reviews'].""); $titleblock->assign("submitreviews", ""._SUBMITREVIEW.""); $jumpmenu .= ""; } if(isMEMBER && $favorites) { $addtofaves = "["._ADDSERIES2FAVES."]"; $jumpmenu .= ""; if($series['isopen'] == 0) { // Only closed series. $addtofaves .= " ["._ADDAUTHOR2FAVES."]"; $jumpmenu .= ""; } } if($series['isopen'] && isMEMBER) { $jumpmenu .= ""; $titleblock->assign("addtoseries", "["._ADD2SERIES."]"); } $jumpmenu = "
"; $titleblock->assign("jumpmenu", $jumpmenu); if(isset($addtofaves)) $titleblock->assign("addtofaves", $addtofaves); $parents = dbquery("SELECT s.title, s.seriesid FROM ".TABLEPREFIX."fanfiction_inseries as i, ".TABLEPREFIX."fanfiction_series as s WHERE s.seriesid = i.seriesid AND i.subseriesid = '$seriesid'"); $plinks = array( ); while($p = dbassoc($parents)) { $plinks[] = "".$p['title'].""; } $titleblock->assign("parentseries", count($plinks) ? implode(", ", $plinks) : _NONE); $codeblocks = dbquery("SELECT * FROM ".TABLEPREFIX."fanfiction_codeblocks WHERE code_type = 'seriestitle'"); while($code = dbassoc($codeblocks)) { eval($code['code_text']); } $output = $titleblock->getOutputContent( ); $cquery = dbquery("SELECT subseriesid, sid, inorder FROM ".TABLEPREFIX."fanfiction_inseries WHERE seriesid = '$seriesid' AND confirmed = 1"); $scount = dbnumrows($cquery); $serieslist = array( ); if($scount) { $subs = array( ); $stories = array( ); while($item = dbassoc($cquery)) { if($item['subseriesid']) $subs[$item['inorder']] = $item['subseriesid']; else $stories[$item['inorder']] = $item['sid']; } if(count($subs) > 0) { $subsquery = dbquery(_SERIESQUERY." AND FIND_IN_SET(seriesid, '".implode(",", $subs)."') > 0"); while($sub = dbassoc($subsquery)) { $serieslist[array_search($sub['seriesid'], $subs)] = $sub; } } if(count($stories)) { $seriesstoryquery = dbquery(_STORYQUERY." AND FIND_IN_SET(sid, '".implode(",", $stories)."') > 0"); while($story = dbassoc($seriesstoryquery)) { $serieslist[array_search($story['sid'], $stories)] = $story; } } } ksort($serieslist); $count = 0; for($a = $offset + 1; $a <= $itemsperpage + $offset; $a++) { $tpl->newBlock("listings"); $stories = isset($serieslist[$a]) ? $serieslist[$a] : false; if(isset($stories['seriesid'])) { $tpl->newBlock("seriesblock"); include("includes/seriesblock.php"); } else if(isset($stories['sid'])) { $tpl->newBlock("storyblock"); include("includes/storyblock.php"); // print_r($stories); } $tpl->gotoBlock("_ROOT"); } if($scount > $itemsperpage) { $tpl->gotoBlock("listings"); $tpl->assign("pagelinks", build_pagelinks("viewseries.php?seriesid=$seriesid&", $scount, $offset)); } $tpl->gotoBlock( "_ROOT" ); $tpl->assign("output", $output); $tpl->printToScreen( ); ?>