238 lines
8.5 KiB
PHP
238 lines
8.5 KiB
PHP
<?php
|
|
$file = "/home/user/Pictures/Default.png";
|
|
|
|
function GenerateTagForMedia($path) {
|
|
global $file;
|
|
// What even is this massive statement? The answer may shock you.
|
|
// (it's laziness)
|
|
if(isset($_REQUEST["action"]) && $_REQUEST["action"] == "shuffle") {
|
|
return ShuffleMusic();
|
|
}
|
|
if(isset($_REQUEST["openfile"])) {
|
|
if(file_exists($_SERVER["DOCUMENT_ROOT"].$_REQUEST["openfile"]) && !is_dir($_SERVER["DOCUMENT_ROOT"].$_REQUEST["openfile"])) {
|
|
$mime = mime_content_type($_SERVER["DOCUMENT_ROOT"].$_REQUEST["openfile"]);
|
|
if(strstr($mime, "video/")){
|
|
return "<video class='media' controls autoplay>\
|
|
<source src='".$_REQUEST["openfile"]."' type='".$mime."'>\
|
|
</video>";
|
|
// This basically depends on the video tag to support the video and is dumb.
|
|
}else if(strstr($mime, "image/")){
|
|
return "<img class='media' src='".$_REQUEST['openfile']."'>";
|
|
}else if(strstr($mime, "audio/")){
|
|
return "<audio controls autoplay>\
|
|
<source src='".$_REQUEST["openfile"]."' type='".$mime."'>\
|
|
</audio>";
|
|
}
|
|
} else {
|
|
return "<img class='media' src='assets/images/Default.png'>";
|
|
}
|
|
} else {
|
|
return "<img class='media' src='assets/images/Default.png'>";
|
|
}
|
|
}
|
|
|
|
function ShuffleMusic() {
|
|
// Build array of all music in the user's Music directory
|
|
$files = scandir("/home/user/Music/");
|
|
$music = array();
|
|
$temp = "";
|
|
|
|
// Find all files that have .mp3, .wav, or .ogg (not case sensitive) and put them into the $music array
|
|
for ($i = 0; $i < count($files); $i++) {
|
|
if (count($temp) >= 5) {
|
|
$temp = substr($files[$i], count($files[$i]-4));
|
|
} else {
|
|
$temp = "StringTooSmallSkipping";
|
|
}
|
|
if($temp == ".mp3" || $temp == ".wav" || $temp == ".ogg") {
|
|
$music[] = $files[$i];
|
|
}
|
|
}
|
|
}
|
|
|
|
/*if($_REQUEST["action"] == "shuffle") {
|
|
ShufleMusic();
|
|
}*/
|
|
?>
|
|
|
|
<html>
|
|
<head>
|
|
<style>
|
|
body {
|
|
font-family: Calibri;
|
|
background-color: white;
|
|
}
|
|
.container {
|
|
width: 80%;
|
|
margin: auto;
|
|
padding: 0px;
|
|
}
|
|
.left {
|
|
width: 30%;
|
|
float: left;
|
|
}
|
|
.right {
|
|
margin-left: 5%;
|
|
}
|
|
.openDialog {
|
|
position: absolute;
|
|
background: #D3D3D3;
|
|
top: 5%;
|
|
left: 5%;
|
|
width: 90%;
|
|
padding: 5px;
|
|
display: none;
|
|
}
|
|
|
|
.aboutDialog {
|
|
position: absolute;
|
|
background: #D3D3D3;
|
|
top: 5%;
|
|
left: 5%;
|
|
width: 90%;
|
|
height: 90%;
|
|
padding: 5px;
|
|
display: none;
|
|
}
|
|
.actionbar {
|
|
height: 42px;
|
|
width: 100%;
|
|
background-color: black;
|
|
}
|
|
.actionbarbutton {
|
|
width: 32px;
|
|
height: 32px;
|
|
border: 10px;
|
|
}
|
|
.media {
|
|
height: 95%;
|
|
width: auto;
|
|
vertical-align: middle;
|
|
}
|
|
</style>
|
|
</head>
|
|
<body onload="Init();">
|
|
<script type="text/javascript">
|
|
document.addEventListener('contextmenu', event => event.preventDefault());
|
|
function GetDremJSMenuFunctions() {
|
|
return [
|
|
["Open", "OpenDocumentDialog();"],
|
|
["<hr />", ""],
|
|
["Shuffle", "ShuffleMusic();"],
|
|
["<hr />", ""],
|
|
["Toggle Light", "ToggleLight();"],
|
|
["<hr />", ""],
|
|
["About", "About();"]
|
|
];
|
|
}
|
|
|
|
CurrentFile = "/home/user/";
|
|
var MediaTag = "";
|
|
|
|
function Init() {
|
|
//document.getElementById("writingto").innerHTML = "Writing to: " + CurrentFile;
|
|
MediaTag = "<?php echo GenerateTagForMedia("/home/user/Pictures/Default.png"); ?>";
|
|
document.getElementById("open").value = CurrentFile;
|
|
|
|
document.getElementById('MediaBox').innerHTML=MediaTag;
|
|
}
|
|
|
|
function OpenDocumentDialog() {
|
|
document.getElementById("openDialog").style.display = "block";
|
|
}
|
|
|
|
function OpenDocument() {
|
|
/*$.ajax({
|
|
url : window.location.href,
|
|
type : "POST",
|
|
data : {action : "open", open : document.getElementById("open").value},
|
|
success: function(data, textStatus, jqXHR) {
|
|
//console.log(data);// You can see the result which is created in chat.php
|
|
console.log("Successfully Opened");
|
|
},
|
|
error: function (jqXHR, textStatus, errorThrown) {
|
|
console.log(textStatus);// if there is an error
|
|
}
|
|
});*/
|
|
//CurrentFile = document.getElementById("open").value;
|
|
//CancelOpen();
|
|
//Init();
|
|
window.location.href = "index.php?action=open&openfile=" + document.getElementById("open").value;
|
|
}
|
|
|
|
function CancelOpen() {
|
|
document.getElementById("openDialog").style.display = "none";
|
|
}
|
|
|
|
function About() {
|
|
document.getElementById("aboutDialog").style.display = "block";
|
|
}
|
|
|
|
function CloseAbout() {
|
|
document.getElementById("aboutDialog").style.display = "none";
|
|
}
|
|
|
|
function ToggleLight() {
|
|
if (document.getElementsByTagName("body")[0].style.backgroundColor === "black") {
|
|
document.getElementsByTagName("body")[0].style.backgroundColor = "white";
|
|
} else {
|
|
document.getElementsByTagName("body")[0].style.backgroundColor = "black";
|
|
}
|
|
}
|
|
|
|
function ShuffleMusic() {
|
|
$.ajax({
|
|
type:'POST',
|
|
url:'index.php',
|
|
data:'action=shuffle',
|
|
success:function(data) {
|
|
if(data=="Something") {
|
|
// Do Something
|
|
} else {
|
|
// Do Something
|
|
}
|
|
}
|
|
});
|
|
window.location.href = "index.php?action=shuffle";
|
|
}
|
|
</script>
|
|
<!--<div id="actionBar" class="actionbar">
|
|
<div id="light" class="actionbarbutton left">
|
|
<img style="width:42px;height:42px;" src="assets/images/lightbulb-on-white.png" />
|
|
</div>
|
|
</div>-->
|
|
<center>
|
|
<div id="MediaBox">
|
|
|
|
</div>
|
|
</center>
|
|
|
|
<div id="openDialog" class="openDialog">
|
|
<p>Input the path to the media file you would like to open. You can use the File Manager to find the path.</p>
|
|
<!--<form action="index.php" method="POST">
|
|
<input type="hidden" name="action" value="open" />-->
|
|
<input type="text" id="open" name="open" size="50" />
|
|
<input type="submit" id="OpenFile" onclick="OpenDocument()" value="Open File" />
|
|
<!--</form>-->
|
|
<input type="button" onclick="CancelOpen()" value="Cancel" />
|
|
</div>
|
|
|
|
<div id="aboutDialog" class="aboutDialog container">
|
|
<div class="left">
|
|
<img src="cinema.png" style="width:128px;height:128px" />
|
|
</div>
|
|
<div class="right">
|
|
<h1>About DremJS Cinema</h1>
|
|
<h2>Version: 0.1.0b</h2>
|
|
</div>
|
|
<p>
|
|
Open: Opens a media file.<br />
|
|
Toggle Light: Toggles the background to be white or black (easier on the eyes)<br />
|
|
</p>
|
|
<center><input type="button" onclick="CloseAbout()" value="Close" /></center>
|
|
<p>
|
|
</div>
|
|
|
|
|
|
</body>
|
|
</html>
|