entermainmenu(); } else { $moviepage = str_replace("%20", " ", $moviepage); $title = strtoupper(basename($moviepage)); echo "<title>{$title}</title>\n"; if (file_exists($moviedb)) { $moviedbcontent = unserialize(file_get_contents($moviedb)); } if ($root == $moviepage) { $allowedscanpath = file($moviefolderscfg); $pages = array(); foreach ($allowedscanpath as $page) { scanfolder(trim($page), $moviedbcontent, true); } } else { scanfolder($moviepage, $moviedbcontent); } printfolder(); printfiles(); } } /******************************************************* * FUNCTIONS *******************************************************/ /******************************************************* * entermainmenu - first menu entry. */ function entermainmenu() { global $scriptfile, $moviedb, $root; printitem("Browse HDD", $scriptfile . '?page=' . $root, "http://xtreamer-web-sdk.googlecode.com/svn/trunk/rss/scripts/image/X.png");
<channel> <?php $root = "/tmp/usbmounts/"; $aMovieFolder = array(); $aMovieFiles = array(); $moviepage = $_GET["page"]; if ("" == $moviepage) { echo "<title>Movie HDD Browser</title>\n"; unset($aMovieFolder); scanfolder($root); printfolder($root); } else { $moviepage = str_replace("%20", " ", $moviepage); echo "<title>.." . substr($moviepage, strlen($root)) . "</title>\n"; unset($aMovieFolder); scanfolder($moviepage); printfolder($moviepage); printfiles($moviepage); } function checkForMoviefolder($folder) { $moviefolder = ""; if ($dh = opendir($folder)) { while (false !== ($file = readdir($dh))) { if ("." != $file && ".." != $file && is_dir($folder . "/" . $file)) { break; } else { if (is_file($folder . "/" . $file)) { if (substr($file, 0, strlen($file) - 4) == basename($folder)) { $moviefolder = $folder . "/" . $file; break;
$result[] = $method; } } return $result; } $doc = array(); $doc['public'] = array('name' => 'Public', 'description' => 'Methods for get public info', 'methods' => scanfolder('public')); $doc['security'] = array('name' => 'Security', 'description' => 'Methods for login, logout, registration and restore password.', 'methods' => scanfolder('security')); $doc['updates'] = array('name' => 'Updates', 'description' => 'Methods for update database', 'methods' => scanfolder('updates')); $doc['users'] = array('name' => 'Users', 'description' => 'Methods for work with users', 'methods' => scanfolder('users')); $doc['games'] = array('name' => 'Games', 'description' => 'Methods for work with games', 'methods' => scanfolder('games')); $doc['quests'] = array('name' => 'Quests', 'description' => 'Methods for work with quests', 'methods' => scanfolder('quests')); $doc['events'] = array('name' => 'Events', 'description' => 'Events/News from the system or by admin', 'methods' => scanfolder('events')); $doc['feedback'] = array('name' => 'Feedback', 'description' => 'Methods for work with feedback', 'methods' => scanfolder('feedback')); $doc['statistics'] = array('name' => 'Statistics', 'description' => 'Methods for work with statistics', 'methods' => scanfolder('statistics')); $doc['admin'] = array('name' => 'Admin', 'description' => 'Methods for admin only', 'methods' => scanfolder('admin')); /** * Indents a flat JSON string to make it more human-readable. * @param string $json The original JSON string to process. * @return string Indented version of the original JSON string. */ function indent($json) { $result = ''; $pos = 0; $strLen = strlen($json); $indentStr = ' '; $newLine = "\n"; $prevChar = ''; $outOfQuotes = true; for ($i = 0; $i <= $strLen; $i++) {