/index.php Secret
Created
June 1, 2013 23:54
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
// File: index.php | |
// ---------------------------------------------------------------------- | |
// Based on: | |
// PHP-NUKE Web Portal System - http://phpnuke.org/ | |
// Thatware - http://thatware.org/ | |
// ---------------------------------------------------------------------- | |
// LICENSE | |
// | |
// This program is free software; you can redistribute it and/or | |
// modify it under the terms of the GNU General Public License (GPL) | |
// as published by the Free Software Foundation; either version 2 | |
// of the License, or (at your option) any later version. | |
// | |
// This program is distributed in the hope that it will be useful, | |
// but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
// GNU General Public License for more details. | |
// | |
// To read the license please visit http://www.gnu.org/copyleft/gpl.html | |
// ---------------------------------------------------------------------- | |
// Version For PHPNUKE by Rob wolf visit http://www.tremorsfan.com for the latest version. | |
// Original Author of file: Rebecca Smallwood | |
// Fictioneer Updrades to file by Theresa Sanchez and Joyce Melton | |
// ---------------------------------------------------------------------- | |
if (!defined('MODULE_FILE')) {die('You can\'t access this file directly.. . ');} | |
if (!defined('PHP_EOL')) define('PHP_EOL', strtoupper(substr(PHP_OS,0,3) == 'WIN') ? "\r\n" : "\n"); | |
$module_name = basename(dirname(__FILE__)); | |
get_lang($module_name); | |
$pagetitle = '- Fictioneer'; | |
#$ModName = Fictioneer; | |
$ModName = $module_name; | |
$dontcare = -1; | |
include_once 'modules/' . $module_name . '/config.php'; | |
//Intro page | |
function FictioneerMain() { | |
global $bgcolor1, $bgcolor2, $prefix, $db; | |
$result = $db->sql_query('SELECT * FROM `' . $prefix . '_fictioneer_settings`'); | |
if($settings = $db->sql_fetchrow($result)) { | |
FictioneerHeader(); | |
echo '<br />' , PHP_EOL | |
, '<table width="100%">' , PHP_EOL | |
, '<tr valign="top">' , PHP_EOL | |
, '<td width="60%">' , $settings['welcome'], '</td>' , PHP_EOL | |
, '<td width="40%">' , PHP_EOL | |
, '<span class="thick">Categories</span>' , PHP_EOL | |
, '<br /><br />' , PHP_EOL; | |
ListCategories(); | |
echo '<br />' , PHP_EOL | |
, '</td>' , PHP_EOL | |
, '</tr>' , PHP_EOL | |
, '</table>' , PHP_EOL; | |
FictioneerFooter(); | |
} else { | |
echo 'This is an error message.' , PHP_EOL; | |
} | |
} | |
//Header | |
function FictioneerHeader() { | |
global $bgcolor1, $bgcolor2, $module_name, $sitename, $user, $cookie, $subsoff; | |
include_once 'header.php'; | |
OpenTable(); | |
if (is_user($user)) { | |
$userinfo = getusrinfo($user); | |
} else { | |
$userinfo = false; | |
} | |
echo '<br />' , PHP_EOL | |
, '<table width="100%">' , PHP_EOL | |
, '<tr>' , PHP_EOL | |
, '<td colspan="2" class="text-cneter thick">' , $sitename , ' -- ' . _FNNAME . '</td>' , PHP_EOL | |
, '</tr>' , PHP_EOL | |
, '<tr>' , PHP_EOL | |
, '<td>' , PHP_EOL | |
, '<form enctype="multipart/form-data" method="post" action="modules.php?name=' , $module_name , '&file=index&options=SearchResults&pagenumber=1&searchterm=' , $searchterm , '&searchkind=' , $searchkind , '&totalpages=-1">' , PHP_EOL | |
, '<a href="modules.php?name=' , $module_name , '&file=index">Main</a> | '; | |
if($subsoff == '1') { | |
echo '<a href="modules.php?name=' , $module_name , '&file=index&options=ViewRules">Add Story</a> | ' | |
, '<a href=\"modules.php?name=' , $module_name , '&file=index&options=DisplayStories&pagenumber=1&categoryid=-1&totalpages=-1">Recent Stories</a> | '; | |
} | |
if(($subsoff == '1') && $userinfo != false) { | |
echo '<a href="modules.php?name=' , $module_name , '&file=index&options=SearchResults&searchterm=' , $userinfo['username'] , '&pagenumber=1&searchkind=author&totalpages=-1">Your Stories</a> | ' | |
, '<a href="modules.php?name=' , $module_name , '&file=index&options=Help">Help</a> | '; | |
} | |
echo '<select name="searchkind">' , PHP_EOL | |
, ' <option value="author">Author</option>' , PHP_EOL | |
, ' <option value="title">Title</option>' , PHP_EOL | |
, ' <option value="keywords">Keywords</option>' , PHP_EOL | |
, ' <option value="summary">Summary</option>' , PHP_EOL | |
, '</select>' , PHP_EOL | |
, '<input type="text" name="searchterm" size="10" /> ' , PHP_EOL | |
, '<input type="submit" name="search" value="Search" /> ' , PHP_EOL | |
, '</form>' , PHP_EOL | |
, '</td>' , PHP_EOL | |
, '</tr>' , PHP_EOL | |
, '</table>' , PHP_EOL; | |
CloseTable(); | |
OpenTable(); | |
} | |
//Footer | |
function FictioneerFooter() { | |
global $bgcolor1, $bgcolor2; | |
CloseTable(); | |
echo '<br />' , PHP_EOL | |
, '<div class="text-center">' , PHP_EOL | |
, 'Fictioneer Module 0.5 by <a href="http://www.fictioneer.net">Theresa Sanchez</a>, and <a href="http://bigcloset.ateros.com">Joyce Melton</a><br />' , PHP_EOL | |
, 'Original FanFiction Module by <a href="http://orodruin.sourceforge.net">Rebecca Smallwood</a><br />' , PHP_EOL | |
, 'Version for phpnuke by <a href="http://www.tremorsfan.com">Rob Wolf</a> Dev v0.2' , PHP_EOL | |
, '</div>' , PHP_EOL; | |
include_once 'footer.php'; | |
} | |
//Helpfile for clueless people | |
function Help() { | |
global $bgcolor1, $bgcolor2, $module_name; | |
FictioneerHeader(); | |
include_once 'modules/' . $module_name . '/help.txt'; | |
FictioneerFooter(); | |
} | |
//listing of all the top level categories | |
function ListCategories() { | |
global $bgcolor1, $bgcolor2, $prefix, $module_name, $prefix, $db; | |
$result = $db->sql_query('SELECT * SELECT `' . $prefix . '_fictioneer_categories` WHERE `parent` = \'-1\''); | |
while($catlist = $db->sql_fetchrow($result)) { | |
echo '<a href="modules.php?name=' , $module_name , '&file=index&options=DisplayStories&pagenumber=1&categoryid=' , $catlist['categoryid'] . '&totalpages=-1">' , htmlspecialchars($catlist['category'], ENT_QUOTES, _CHARSET) , '</a>' , PHP_EOL | |
, '<div>' , PHP_EOL | |
, $catlist['description'] , PHP_EOL | |
, '</div>' , PHP_EOL | |
, '<br />' , PHP_EOL; | |
} | |
} | |
//this is here so that the admin can view the story without having the header junk and all that | |
function AdminViewStory($storyid, $author, $title) { | |
global $bgcolor1, $bgcolor2, $prefix, $module_name, $nukeurl, $user, $cookie, $admin, $db; | |
$result = $db->sql_query('SELECT * FROM `' . $prefix . '_fictioneer_stories` WHERE `storyid` = \'' . $storyid . '\''); | |
$storyresults = $db->sql_fetchrow($result); | |
if (is_admin($admin)) { | |
echo '<table width="100%">' , PHP_EOL | |
, '<tr>' , PHP_EOL | |
, '<td>' , PHP_EOL | |
, htmlspecialchars($storyresults['title'], ENT_QUOTES, _CHARSET) , ' by <a href="user.php?op=userinfo&uname=' , $storyresults['author'] , '">' , htmlspecialchars($storyresults['author'], ENT_QUOTES, _CHARSET) , '</a>' , PHP_EOL | |
, '</td>' , PHP_EOL | |
, '<td>' , PHP_EOL | |
, '</td>' , PHP_EOL | |
, '<td align="right">' , PHP_EOL; | |
$result = $db->sql_query('SELECT * FROM `' . $prefix . '_fictioneer_stories` WHERE `parentstoryid` = \'' . $storyresults['parentstoryid'] . '\' ORDER BY `storyid` ASC'); | |
echo '<form name="jump">' , PHP_EOL | |
, '<select name="jumpmenu" onchange="location.href=jump.jumpmenu.options[selectedIndex].value">' , PHP_EOL | |
, '<option>Chapters</option>' , PHP_EOL; | |
while ($chapterdisplay = $db->sql_fetchrow($result)) { | |
echo '<option value="modules.php?name=' , $module_name , '&file=index&options=DisplayStory&storyid=' , $chapterdisplay['storyid'] , '">' , htmlspecialchars($chapterdisplay['title'], ENT_QUOTES, _CHARSET) , '</option>' , PHP_EOL; | |
} | |
echo '</select>' , PHP_EOL | |
, '</form>' , PHP_EOL | |
, '</td>' , PHP_EOL | |
, '</tr>' , PHP_EOL | |
, '</table>' , PHP_EOL; | |
//writes out the story, and replaces the carriage returns with <br /> tags | |
$file = 'modules/' . $module_name . '/stories/' . $storyresults['author'] . '/' . $storyresults['storyid'] . '.txt'; | |
$log_file = fopen($file, 'r'); | |
$file_contents = fread($log_file, filesize($file)); | |
echo(nl2br(htmlspecialchars($file_contents))); | |
fclose($log_file); | |
echo '<hr noshade="noshade">' , PHP_EOL | |
, '<form method="post" enctype="multipart/form-data" action="modules.php?name=' , $module_name , '&file=index&options=SubmitVauthorStory&storyid=' , $storyresults['storyid'] , '">' , PHP_EOL | |
, _FNTITLE , ': <input type="text" name="title" value="' , htmlspecialchars($chapterdisplay['title'], ENT_QUOTES, _CHARSET) , '" /><br /><br />' , PHP_EOL | |
, _FNKEYWORDS , ': <textarea name="keywords" cols="40" rows="3">"' , htmlspecialchars($storyresults['keywords'], ENT_QUOTES, _CHARSET) , '</textarea><br /><br />"' , PHP_EOL | |
, _FNSUMMARY , ': <textarea name="summary" cols="40" rows="3">"' , htmlspecialchars($storyresults['summary'], ENT_QUOTES, _CHARSET) , '</textarea><br /><br />' , PHP_EOL | |
, '<input type="hidden" name="storyid" value="' , $storyresults['storyid'] , '" />' , PHP_EOL | |
, '<input type="hidden" name="author" value="' , htmlspecialchars($storyresults['author'], ENT_QUOTES, _CHARSET) , '" />' , PHP_EOL | |
, '<input type="hidden" name="categoryid" value="' , $storyresults['categoryid'] , '" />' , PHP_EOL | |
, '<input type="hidden" name="parentstoryid" value="' , $storyresults['parentstoryid'] , '" />' , PHP_EOL | |
, '<input type="hidden" name="ratingid" value="' , $storyresults['ratingid'] , '" />' , PHP_EOL | |
, '<input type="hidden" name="char1" value="' , htmlspecialchars($storyresults['char1'], ENT_QUOTES, _CHARSET) , '" />' , PHP_EOL | |
, '<input type="hidden" name="char2" value="' , htmlspecialchars($storyresults['char2'], ENT_QUOTES, _CHARSET) , '" />' , PHP_EOL | |
, '<input type="hidden" name="genre" value="' , htmlspecialchars($storyresults['genre'], ENT_QUOTES, _CHARSET) , '" />' , PHP_EOL | |
, '<input type="hidden" name="roundrobin" value="' , $storyresults['roundrobin'] , '" />' , PHP_EOL | |
, _FNTEXT , ': <textarea wrap="virtual" name="story" cols="40" rows="6">'; | |
include_once 'modules/' . $module_name . '/stories/' . $storyresults['author'] . '/' . $storyresults['storyid'] . '.txt'; | |
echo '</textarea>' , PHP_EOL | |
, '<br /><br />' , PHP_EOL | |
, '<input type="submit" name="buttonaction" value="Update Story" />' , PHP_EOL; | |
} | |
} | |
//notes for public | |
//add previous and next 2 pages and have it show what page you're on | |
//if no results when sorting, have it say so. | |
//if no results on search, say so | |
//if no stories by author, say so | |
//notes for admin | |
//fix weird e-mail return address | |
//figure out fatal head error | |
switch($options) { | |
case 'Help': | |
Help(); | |
break; | |
case 'ViewRules': | |
include_once 'modules/' . $module_name . '/fn-submitstory.php'; | |
ViewRules(); | |
break; | |
case 'ChooseCategory': | |
include_once 'modules/' . $module_name . '/fn-submitstory.php'; | |
ChooseCategory(); | |
break; | |
case 'SearchResults': | |
include_once 'modules/' . $module_name . '/fn-displaystory.php'; | |
SearchResults($searchterm, $searchkind, $pagenumber, $totalpages); | |
break; | |
case 'SortResults': | |
include_once 'modules/' . $module_name . '/fn-displaystory.php'; | |
SortResults($categoryid, $ratingid, $char1, $char2, $genre, $pagenumber, $totalpages); | |
break; | |
case 'SubmitVauthorStory': | |
include_once 'modules/' . $module_name . '/fn-submitstory.php'; | |
SubmitVauthorStory($categoryid, $parentstoryid, $title, $keywords, $summary, $story, $ratingid, $char1, $char2, $genre, $author, $email, $roundrobin, $buttonaction, $imgfile, $imgfile_name, $storyid, $unvalidated); | |
break; | |
case 'SubmitUnvalidAuthorStory': | |
include_once ("modules/' . $module_name . '/fn-submitstory.php"); | |
SubmitUnvalidAuthorStory($categoryid, $parentstoryid, $title, $keywords, $summary, $story, $ratingid, $char1, $char2, $genre, $author, $roundrobin, $buttonaction, $imgfile, $imgfile_name, $storyid, $unvalidated); | |
break; | |
case 'SubmitStory': | |
include_once 'modules/' . $module_name . '/fn-submitstory.php'; | |
SubmitStory($author, $user, $categoryid, $parentstoryid, $roundrobin); | |
break; | |
case 'EditStory': | |
include_once 'modules/' . $module_name . '/fn-submitstory.php'; | |
EditStory($storyid, $categoryid); | |
break; | |
case 'DeleteStory': | |
include_once 'modules/' . $module_name . '/fn-submitstory.php'; | |
DeleteStory($deleteall, $storyid, $author, $submit, $transmit); | |
break; | |
case 'DisplayStories': | |
include_once 'modules/' . $module_name . '/fn-displaystory.php'; | |
DisplayStories($summary, $pagenumber, $categoryid, $totalpages); | |
break; | |
case 'DisplayReviews': | |
include_once 'modules/' . $module_name . '/fn-reviews.php'; | |
DisplayReviews($parentstoryid); | |
break; | |
case 'DeleteReviews': | |
include_once 'modules/' . $module_name . '/fn-reviews.php'; | |
DeleteReviews($reviewid, $submit); | |
break; | |
case 'SubmitReview': | |
include_once 'modules/' . $module_name . '/fn-reviews.php'; | |
SubmitReview($parentstoryid, $submit, $comment, $reviewer, $vote); | |
break; | |
case 'DisplayStory': | |
include_once 'modules/' . $module_name . '/fn-displaystory.php'; | |
DisplayStory($storyid, $author, $title); | |
break; | |
case 'AdminViewStory': | |
//include_once 'modules/' . $module_name . '/fn-submitstory.php'; | |
AdminViewStory($storyid, $author, $title); | |
break; | |
case 'SendAcceptance': | |
include_once 'modules/' . $module_name . '/fn-letters.php'; | |
SendAcceptance($submit, $author, $email, $subject, $yesletter); | |
break; | |
case 'SendNoThankYou': | |
include_once 'modules/' . $module_name . '/fn-letters.php'; | |
SendNoThankYou($submit, $author, $email, $subject, $noletter); | |
break; | |
default: | |
FictioneerMain(); | |
break; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment