This commit is contained in:
Li 2022-09-21 22:16:57 +00:00
parent 17a328dc94
commit 5c768e7a03
1 changed files with 356 additions and 356 deletions

View File

@ -1,356 +1,356 @@
<?php <?php
include("header.php"); include("header.php");
?> ?>
<?php <?php
function getSdkType(SimpleXMLElement $xml) function getSdkType(SimpleXMLElement $xml)
{ {
if(isset($xml->app_xml_format)) if(isset($xml->app_xml_format))
{ {
if($xml->app_xml_format->attributes()->sdk_type == "PSM SDK") if($xml->app_xml_format->attributes()->sdk_type == "PSM SDK")
{ {
return "PSM"; return "PSM";
} }
else else
{ {
return "PSM Unity"; return "PSM Unity";
} }
} }
else else
{ {
return "PSM"; return "PSM";
} }
} }
if(isset($_GET["game"])) if(isset($_GET["game"]))
{ {
$game = htmlspecialchars($_GET["game"], ENT_QUOTES); $game = htmlspecialchars($_GET["game"], ENT_QUOTES);
$game = str_replace("/", "",$game); $game = str_replace("/", "",$game);
$game = str_replace(".", "",$game); $game = str_replace(".", "",$game);
$game = str_replace("*", "",$game); $game = str_replace("*", "",$game);
if(strlen($game) != 9) if(strlen($game) != 9)
{ {
echo("This is not the bug your looking for :P"); echo("This is not the bug your looking for :P");
die(); die();
} }
?> ?>
<script src="zrif.js"></script> <script src="zrif.js"></script>
<a id="zrif-bin-worker" href=""></a> <a id="zrif-bin-worker" href=""></a>
<?php <?php
$title = getTitle($game); $title = getTitle($game);
$xml = simplexml_load_file('gameinfo/' . $game . "/app.xml", 'SimpleXMLElement', LIBXML_NOENT); $xml = simplexml_load_file('gameinfo/' . $game . "/app.xml", 'SimpleXMLElement', LIBXML_NOENT);
$genreList = $xml->genre_list->children(); $genreList = $xml->genre_list->children();
$languageList = $xml->name->children(); $languageList = $xml->name->children();
$featureList = $xml->feature_list->children(); $featureList = $xml->feature_list->children();
$SDKType = getSdkType($xml); $SDKType = getSdkType($xml);
$zrifinfo = getZRIF($game); $zrifinfo = getZRIF($game);
$zrifPendingInfo = getPendingZRIF($game); $zrifPendingInfo = getPendingZRIF($game);
$pkgSony = getPKG($game); $pkgSony = getPKG($game);
$simulatorZip = "decrypted-files/".$game.".zip"; $simulatorZip = "decrypted-files/".$game.".zip";
$verXML = simplexml_load_file('gameinfo/' . $game . "/version.xml", 'SimpleXMLElement', LIBXML_NOENT); $verXML = simplexml_load_file('gameinfo/' . $game . "/version.xml", 'SimpleXMLElement', LIBXML_NOENT);
$latestVersion = (string)($verXML->appVersion); $latestVersion = (string)($verXML->appVersion);
$pkgReborn = "/pkg/".$game."_00/".$latestVersion."/".$game."_00.pkg"; $pkgReborn = "/pkg/".$game."_00/".$latestVersion."/".$game."_00.pkg";
$metadataXML = simplexml_load_file('gameinfo/' . $game . "/". $latestVersion ."/metadata.xml", 'SimpleXMLElement', LIBXML_NOENT); $metadataXML = simplexml_load_file('gameinfo/' . $game . "/". $latestVersion ."/metadata.xml", 'SimpleXMLElement', LIBXML_NOENT);
$description = $metadataXML->localizedMetadataList->children(); $description = $metadataXML->localizedMetadataList->children();
$screenshot = $metadataXML->screenShotList->screenShot; $screenshot = $metadataXML->screenShotList->screenShot;
$isplayable = ""; $isplayable = "";
if($zrifinfo == "MISSING" && $zrifPendingInfo == "MISSING") if($zrifinfo == "MISSING" && $zrifPendingInfo == "MISSING")
{ {
$isplayable = "<a href=\"/faq.php#add-zrif\" class=\"white\">No, Missing zRIF - Do you have a working copy of this game?</a>"; $isplayable = "<a href=\"/faq.php#add-zrif\" class=\"white\">No, Missing zRIF - Do you have a working copy of this game?</a>";
} }
if(file_exists("psdp-packages/".$game.".psdp")) if(file_exists("psdp-packages/".$game.".psdp"))
{ {
$isplayable = "<a href=\"/psdp-packages/".$game.".psdp\" class=\"white\">Yes, with PSDP Package in Developer Assistant</a>"; $isplayable = "<a href=\"/psdp-packages/".$game.".psdp\" class=\"white\">Yes, with PSDP Package in Developer Assistant</a>";
} }
if($zrifinfo != "MISSING") if($zrifinfo != "MISSING")
{ {
$isplayable = "<a class=\"white\" onclick=\"copy_text('".$zrifinfo."')\">Yes! Copy zRIF String</a> or <a class=\"white\" onclick=\"convert2('".$zrifinfo."')\">Download FAKE.RIF</a>"; $isplayable = "<a class=\"white\" onclick=\"copy_text('".$zrifinfo."')\">Yes! Copy zRIF String</a> or <a class=\"white\" onclick=\"convert2('".$zrifinfo."')\">Download FAKE.RIF</a>";
} }
if($zrifPendingInfo != "MISSING") if($zrifPendingInfo != "MISSING")
{ {
$isplayable = "<a class=\"white\" onclick=\"copy_text('".$zrifPendingInfo."')\">Maybe, Ulthough it hasnt been tested yet- Copy zRIF String</a> or <a class=\"white\" onclick=\"convert2('".$zrifPendingInfo."')\">Download FAKE.RIF</a>"; $isplayable = "<a class=\"white\" onclick=\"copy_text('".$zrifPendingInfo."')\">Maybe, Ulthough it hasnt been tested yet- Copy zRIF String</a> or <a class=\"white\" onclick=\"convert2('".$zrifPendingInfo."')\">Download FAKE.RIF</a>";
} }
?> ?>
<div class="bg-content" style="background-image: url('/gameinfo/<?php echo $game ?>/splash_854x480.png');"></div> <div class="bg-content" style="background-image: url('/gameinfo/<?php echo $game ?>/splash_854x480.png');"></div>
<div class="psm-meta"> <div class="psm-meta">
<div id="psm-title"><?php echo($title.' ('.$game.')') ?></div> <div id="psm-title"><?php echo($title.' ('.$game.')') ?></div>
<div id="psm-top-part"> <div id="psm-top-part">
<div id="psm-icon"> <div id="psm-icon">
<img src="/gameinfo/<?php echo $game ?>/icon_256x256.png" /> <img src="/gameinfo/<?php echo $game ?>/icon_256x256.png" />
</div> </div>
<div id="psm-infos"> <div id="psm-infos">
<ul> <ul>
<li><p>Playable: <?php echo $isplayable ?></p></li> <li><p>Playable: <?php echo $isplayable ?></p></li>
<li><p>Metadata: <a href="/gameinfo/<?php echo $game ?>/app.xml" class="white">app.xml</a>, <a href="/gameinfo/<?php echo $game ?>/text.txt" class="white">copyright.txt</a>, <a href="/gameinfo/<?php echo $game ?>/version.xml" class="white">version.xml</a>, <a href="/gameinfo/<?php echo $game ?>/<?php echo $latestVersion ?>/metadata.xml" class="white">metadata.xml</a></p></li> <li><p>Metadata: <a href="/gameinfo/<?php echo $game ?>/app.xml" class="white">app.xml</a>, <a href="/gameinfo/<?php echo $game ?>/text.txt" class="white">copyright.txt</a>, <a href="/gameinfo/<?php echo $game ?>/version.xml" class="white">version.xml</a>, <a href="/gameinfo/<?php echo $game ?>/<?php echo $latestVersion ?>/metadata.xml" class="white">metadata.xml</a></p></li>
<li><p>Images: <a href="/gameinfo/<?php echo $game ?>/icon_128x128.png" class="white">icon_128x128.png</a>, <a href="/gameinfo/<?php echo $game ?>/icon_256x256.png" class="white">icon_256x256.png</a>, <a href="/gameinfo/<?php echo $game ?>/icon_512x512.png" class="white">icon_512x512.png</a>, <a href="/gameinfo/<?php echo $game ?>/splash_854x480.png" class="white">splash_854x480.png</a><?php echo printScreenshotsLinks($screenshot, $latestVersion, $game) ?></p></li> <li><p>Images: <a href="/gameinfo/<?php echo $game ?>/icon_128x128.png" class="white">icon_128x128.png</a>, <a href="/gameinfo/<?php echo $game ?>/icon_256x256.png" class="white">icon_256x256.png</a>, <a href="/gameinfo/<?php echo $game ?>/icon_512x512.png" class="white">icon_512x512.png</a>, <a href="/gameinfo/<?php echo $game ?>/splash_854x480.png" class="white">splash_854x480.png</a><?php echo printScreenshotsLinks($screenshot, $latestVersion, $game) ?></p></li>
<li><p>Supported locale: <b><?php echo printLanguageList($languageList) ?></b></p></li> <li><p>Supported locale: <b><?php echo printLanguageList($languageList) ?></b></p></li>
<li><p>Genres: <b><?php echo printGenreList($genreList) ?></b></p></li> <li><p>Genres: <b><?php echo printGenreList($genreList) ?></b></p></li>
<li><p>Type: <b><?php echo $SDKType ?></b></p></li> <li><p>Type: <b><?php echo $SDKType ?></b></p></li>
</ul> </ul>
</div> </div>
</div> </div>
<div id="psm-description"> <div id="psm-description">
<hr><?php echo printDescription($description, "en") ?><hr> <hr><?php echo printDescription($description, "en") ?><hr>
</div> </div>
<div id="psm-screenshots" class="blue-scrollbar"> <div id="psm-screenshots" class="blue-scrollbar">
<?php echo printScreenshotsImgTags($screenshot, $latestVersion, $game) ?> <?php echo printScreenshotsImgTags($screenshot, $latestVersion, $game) ?>
</div> </div>
<div id="psm-downloads"> <div id="psm-downloads">
<div class="button-enabled" id="pkg-sony" onclick="open_url('<?php echo $pkgSony ?>')"> <div class="button-enabled" id="pkg-sony" onclick="open_url('<?php echo $pkgSony ?>')">
<a href="<?php echo($pkgSony) ?>" class="nostyle">PKG (Sony Server)</a> <a href="<?php echo($pkgSony) ?>" class="nostyle">PKG (Sony Server)</a>
</div> </div>
<div class="button-enabled" id="pkg-psmrb" onclick="open_url('<?php echo $pkgReborn ?>')"> <div class="button-enabled" id="pkg-psmrb" onclick="open_url('<?php echo $pkgReborn ?>')">
<a href="<?php echo $pkgReborn ?>" class="nostyle">PKG (PSMReborn Server)</a> <a href="<?php echo $pkgReborn ?>" class="nostyle">PKG (PSMReborn Server)</a>
</div> </div>
<?php <?php
if($zrifinfo == "MISSING"){ if($zrifinfo == "MISSING"){
?><div class="button-disabled" id="fake-rif">NoPsmDrm License</div> ?><div class="button-disabled" id="fake-rif">NoPsmDrm License</div>
<?php <?php
} else { } else {
?><div class="button-enabled" id="fake-rif" onclick="convert2('<?php echo $zrifinfo ?>')"> ?><div class="button-enabled" id="fake-rif" onclick="convert2('<?php echo $zrifinfo ?>')">
<a class="nostyle" onclick="convert2('<?php echo $zrifinfo ?>')">NoPsmDrm License</a> <a class="nostyle" onclick="convert2('<?php echo $zrifinfo ?>')">NoPsmDrm License</a>
</div> </div>
<?php } ?> <?php } ?>
<?php <?php
if(file_exists($simulatorZip)) { if(file_exists($simulatorZip)) {
?><div class="button-enabled" onclick="open_url('<?php echo $simulatorZip ?>')"> ?><div class="button-enabled" onclick="open_url('<?php echo $simulatorZip ?>')">
<a href="<?php echo $simulatorZip ?>" class="nostyle">Decrypted Files (For Simulator)</a> <a href="<?php echo $simulatorZip ?>" class="nostyle">Decrypted Files (For Simulator)</a>
</div> </div>
<?php <?php
} else { } else {
?><div class="button-disabled">Decrypted Files (For Simulator)</div> ?><div class="button-disabled">Decrypted Files (For Simulator)</div>
<?php } ?> <?php } ?>
<select onchange="pkg_change_version()" class="version-select"><?php <select onchange="pkg_change_version()" class="version-select"><?php
$dirlist = glob("pkg/".$game."_00/*"); $dirlist = glob("pkg/".$game."_00/*");
$vercount = count($dirlist); $vercount = count($dirlist);
for($i = 0; $i < $vercount; $i++) for($i = 0; $i < $vercount; $i++)
{ {
$ver = basename($dirlist[$i]); $ver = basename($dirlist[$i]);
if($i == $vercount - 1) if($i == $vercount - 1)
{ {
echo'<option selected="'.$ver.'" value="'.$ver.'">'.$ver.'</option>'; echo'<option selected="'.$ver.'" value="'.$ver.'">'.$ver.'</option>';
} }
else else
{ {
echo'<option value="'.$ver.'">'.$ver.'</option>'; echo'<option value="'.$ver.'">'.$ver.'</option>';
} }
} }
?></select> ?></select>
</div> </div>
</div> </div>
<?php <?php
} else { } else {
$searchUsed = isset($_GET["search"]); $searchUsed = isset($_GET["search"]);
$simulatorSearch = false; $simulatorSearch = false;
$unplayableSearch = false; $unplayableSearch = false;
$playableSearch = false; $playableSearch = false;
if(isset($_GET["simulator"])) if(isset($_GET["simulator"]))
{ {
if($_GET["simulator"] == "on") if($_GET["simulator"] == "on")
$simulatorSearch = true; $simulatorSearch = true;
} }
if(isset($_GET["unplayable"])) if(isset($_GET["unplayable"]))
{ {
if($_GET["unplayable"] == "on") if($_GET["unplayable"] == "on")
$unplayableSearch = true; $unplayableSearch = true;
} }
if(isset($_GET["playable"])) if(isset($_GET["playable"]))
{ {
if($_GET["playable"] == "on") if($_GET["playable"] == "on")
$playableSearch = true; $playableSearch = true;
} }
?> ?>
<div id="search-form"> <div id="search-form">
<form action="" method="get"> <form action="" method="get">
<input type="text" name="search" value="<?php <input type="text" name="search" value="<?php
if(isset($_GET["search"])) { if(isset($_GET["search"])) {
echo htmlspecialchars($_GET["search"], ENT_QUOTES); echo htmlspecialchars($_GET["search"], ENT_QUOTES);
} }
?>"/> ?>"/>
<input type="submit"/><br> <input type="submit"/><br>
<input type="radio" name="searchby" value="title" <?php <input type="radio" name="searchby" value="title" <?php
if(!$searchUsed || isset($_GET["searchby"])) { if(!$searchUsed || isset($_GET["searchby"])) {
if(!$searchUsed || $_GET["searchby"] == "title" ) { if(!$searchUsed || $_GET["searchby"] == "title" ) {
echo 'checked="checked"'; echo 'checked="checked"';
} }
} }
?>>Title</input> ?>>Title</input>
<input type="radio" name="searchby" value="titleid" <?php <input type="radio" name="searchby" value="titleid" <?php
if(isset($_GET["searchby"])) { if(isset($_GET["searchby"])) {
if($_GET["searchby"] == "titleid") { if($_GET["searchby"] == "titleid") {
echo 'checked="checked"'; echo 'checked="checked"';
} }
} }
?>>Title ID</input> ?>>Title ID</input>
<input type="radio" name="searchby" value="dev" <?php <input type="radio" name="searchby" value="dev" <?php
if(isset($_GET["searchby"])) { if(isset($_GET["searchby"])) {
if($_GET["searchby"] == "dev") { if($_GET["searchby"] == "dev") {
echo 'checked="checked"'; echo 'checked="checked"';
} }
} }
?>>Developer</input><br> ?>>Developer</input><br>
<input type="checkbox" name="playable" <?php <input type="checkbox" name="playable" <?php
if(!$searchUsed || $playableSearch) { if(!$searchUsed || $playableSearch) {
echo 'checked="checked"'; echo 'checked="checked"';
} }
?>>Show Playable (Has zRIF)</input> ?>>Show Playable (Has zRIF)</input>
<input type="checkbox" name="simulator" <?php <input type="checkbox" name="simulator" <?php
if(!$searchUsed || $simulatorSearch) { if(!$searchUsed || $simulatorSearch) {
echo 'checked="checked"'; echo 'checked="checked"';
} }
?>>Show Simulator-Ready</input> ?>>Show Simulator-Ready</input>
<input type="checkbox" name="unplayable" <?php <input type="checkbox" name="unplayable" <?php
if(!$searchUsed || $unplayableSearch) { if(!$searchUsed || $unplayableSearch) {
echo 'checked="checked"'; echo 'checked="checked"';
} }
?>>Show Unplayable (Only PKG)</input> ?>>Show Unplayable (Only PKG)</input>
</form> </form>
</div> </div>
<div id="psm-gamelist"> <div id="psm-gamelist">
<?php <?php
$dirlist = glob("gameinfo/*"); $dirlist = glob("gameinfo/*");
$playableList = getPlayableList(); $playableList = getPlayableList();
$playablePendingList = getPendingPlayableList(); $playablePendingList = getPendingPlayableList();
foreach ($dirlist as &$path) { foreach ($dirlist as &$path) {
$titleid = basename($path); $titleid = basename($path);
$xml = simplexml_load_file($path . "/app.xml", 'SimpleXMLElement', LIBXML_NOENT); $xml = simplexml_load_file($path . "/app.xml", 'SimpleXMLElement', LIBXML_NOENT);
$title = $xml->name->localized_item[0]->attributes()->value; $title = $xml->name->localized_item[0]->attributes()->value;
$version = $xml->attributes()->version; $version = $xml->attributes()->version;
$genre = $xml->genre_list->genre->attributes()->value; $genre = $xml->genre_list->genre->attributes()->value;
$author = $xml->developer->name->attributes()->value; $author = $xml->developer->name->attributes()->value;
$website = $xml->website->attributes()->href; $website = $xml->website->attributes()->href;
$isPlayable = $playableList[$titleid] == 1 || file_exists("psdp-packages/".$titleid.".psdp"); $isPlayable = $playableList[$titleid] == 1 || file_exists("psdp-packages/".$titleid.".psdp");
$hasSimulator = file_exists("decrypted-files/".$titleid.".zip"); $hasSimulator = file_exists("decrypted-files/".$titleid.".zip");
$isPlayablePending = false; $isPlayablePending = false;
preg_match('/https?:\/\/(?:www\.)?(.+[^\/])/', $website, $website_array); preg_match('/https?:\/\/(?:www\.)?(.+[^\/])/', $website, $website_array);
$websitePretty = $website_array[1]; $websitePretty = $website_array[1];
if($searchUsed) if($searchUsed)
{ {
$search = $_GET["search"]; $search = $_GET["search"];
if(isset($_GET["searchby"]) && $search !== "") if(isset($_GET["searchby"]) && $search !== "")
{ {
$searchby = $_GET["searchby"]; $searchby = $_GET["searchby"];
if($searchby === "title") if($searchby === "title")
{ {
if(strpos(strtolower($title), strtolower($search)) === false) if(strpos(strtolower($title), strtolower($search)) === false)
{ {
continue; continue;
} }
} }
elseif($searchby === "titleid") elseif($searchby === "titleid")
{ {
if(strpos(strtolower($titleid), strtolower($search)) === false) if(strpos(strtolower($titleid), strtolower($search)) === false)
{ {
continue; continue;
} }
} }
elseif($searchby === "dev") elseif($searchby === "dev")
{ {
if(strpos(strtolower($author), strtolower($search)) === false) if(strpos(strtolower($author), strtolower($search)) === false)
{ {
continue; continue;
} }
} }
} }
if(!$simulatorSearch) if(!$simulatorSearch)
{ {
if($hasSimulator) if($hasSimulator)
{ {
continue; continue;
} }
} }
if(!$unplayableSearch) if(!$unplayableSearch)
{ {
if(!$isPlayable && !$isPlayablePending) if(!$isPlayable && !$isPlayablePending)
{ {
continue; continue;
} }
} }
if(!$playableSearch) if(!$playableSearch)
{ {
if(($isPlayable || $isPlayablePending) && !$hasSimulator) if(($isPlayable || $isPlayablePending) && !$hasSimulator)
{ {
continue; continue;
} }
} }
} }
$authorUrl = "libary.php?search=".urlencode($author)."&searchby=dev"; $authorUrl = "libary.php?search=".urlencode($author)."&searchby=dev";
if($playableSearch === true || $searchUsed === false) if($playableSearch === true || $searchUsed === false)
$authorUrl .= "&playable=on"; $authorUrl .= "&playable=on";
if($simulatorSearch === true || $searchUsed === false) if($simulatorSearch === true || $searchUsed === false)
$authorUrl .= "&simulator=on"; $authorUrl .= "&simulator=on";
if($unplayableSearch === true || $searchUsed === false) if($unplayableSearch === true || $searchUsed === false)
$authorUrl .= "&unplayable=on"; $authorUrl .= "&unplayable=on";
?> ?>
<a class="psm-game" href="?game=<?php echo $titleid ?>"> <a class="psm-game" href="?game=<?php echo $titleid ?>">
<img src="/gameinfo/<?php echo $titleid ?>/icon_128x128.png" loading="lazy" width="124" height="124"> <img src="/gameinfo/<?php echo $titleid ?>/icon_128x128.png" loading="lazy" width="124" height="124">
<div class="psm-game-info"> <div class="psm-game-info">
<div class="psm-game-title"> <div class="psm-game-title">
<span><?php echo $title ?></span> <span><?php echo $title ?></span>
<?php if(getSdkType($xml) == "PSM Unity") { ?> <?php if(getSdkType($xml) == "PSM Unity") { ?>
<img src="/img/unity.png" title="Made With Unity" width="10" height="10"> <img src="/img/unity.png" title="Made With Unity" width="10" height="10">
<?php } if($isPlayable) { ?> <?php } if($isPlayable) { ?>
<img src="/img/playable.png" title="zRIF Known" width="10" height="10"> <img src="/img/playable.png" title="zRIF Known" width="10" height="10">
<?php } if($isPlayablePending) { ?> <?php } if($isPlayablePending) { ?>
<img src="/img/pending_playable.png" title="zRIF Maybe Known" width="10" height="10" > <img src="/img/pending_playable.png" title="zRIF Maybe Known" width="10" height="10" >
<?php } if($hasSimulator) { ?> <?php } if($hasSimulator) { ?>
<img src="/img/simulator.png" title="Simulator Files Avalible" width="10" height="10" > <img src="/img/simulator.png" title="Simulator Files Avalible" width="10" height="10" >
<?php } ?> <?php } ?>
</div> </div>
<table> <table>
<tbody> <tbody>
<tr> <tr>
<td>Genre:</td> <td>Genre:</td>
<td><?php echo $genre ?></td> <td><?php echo $genre ?></td>
</tr> </tr>
<tr> <tr>
<td>Version:</td> <td>Version:</td>
<td><?php echo $version ?></td> <td><?php echo $version ?></td>
</tr> </tr>
<tr> <tr>
<td>Author:</td> <td>Author:</td>
<td><a class="white" href="<?php echo $authorUrl ?>"><?php echo $author ?></a></td> <td><a class="white" href="<?php echo $authorUrl ?>"><?php echo $author ?></a></td>
</tr> </tr>
</tbody> </tbody>
</table> </table>
<object> <object>
<a class="white" href="<?php echo $website ?>"><?php echo $websitePretty ?></a> <marquee><a class="white" href="<?php echo $website ?>"><?php echo $websitePretty ?></a></marquee>
</object> </object>
</div> </div>
</a> </a>
<?php <?php
} }
} }
include("footer.php"); include("footer.php");
?> ?>