<?php
// MyScale.php 
// RJM Programming
// May, 2015
// Help out MyScale.html with posted MIDI comma separated music data for (sheet music) compositional purposes
$sm="";
$h="h";
$rest="";
$myhtml="";
$jsc="<head><script type='text/javascript'>
  function onlis() {
   try {
    if (parent.document.title != top.document.title) {
      if (parent.document.getElementById('spanh3')) {
        parent.document.getElementById('spanh3').innerHTML='';
      }
      parent.document.getElementById('myh3').style.width='100%';
      parent.document.getElementById('myh3').style.textAlign='left';
    }
   } catch (err) {
   }
  }
</script></head>";
if (isset($_POST['sheetmusic'])) {
  $sm=urldecode($_POST['sheetmusic']);
} else if (isset($_GET['sheetmusic'])) {
  $sm=urldecode($_GET['sheetmusic']);
}
if (isset($_POST['savename'])) {
 if ($_POST['savemusic'] != "") {
    if (strpos(urldecode($_POST['savemusic']), ",") === false || strpos(rtrim(($_POST['savemusic'])), " ") !== false || strpos(rtrim(urldecode($_POST['savemusic'])), "\t") !== false || strpos(rtrim(urldecode($_POST['savemusic'])), "\n") !== false || strpos(rtrim(urldecode($_POST['savemusic'])), "\0") !== false) {
      $myhtml="<html>" . $jsc . "<body onload=\"onlis(); parent.document.title='Illegal MIDI Data ... sorry.'; ";
    } else { 
      file_put_contents(str_replace("%20", " ", urldecode($_POST['savename'])) . ".midicsv", $_POST['savemusic']);
      $filename=str_replace("%20", " ", urldecode($_POST['savename'])) . ".midicsv";
      $myhtml="<html>" . $jsc . "<body onload=\"onlis(); var mylist=parent.document.getElementById('playlist'); if (mylist.innerHTML.indexOf('>" . str_replace(".midicsv", "", $filename) . "<') == -1) { mylist.innerHTML+='<option value=" . str_replace(".midicsv", "", str_replace(" ", "%20", $filename)) . ">" . str_replace(".midicsv", "", $filename) . "</option>';  } ";
    }
 } else if (file_exists(str_replace("%20", " ", urldecode($_POST['savename'])) . ".midicsv")) {
    unlink(str_replace("%20", " ", urldecode($_POST['savename'])) . ".midicsv");
 }
}
if (isset($_GET['retrieve'])) {
 foreach (glob(urldecode($_GET['retrieve']) . ".midicsv") as $filename) {
    $sm=@file_get_contents($filename);
    $sm=str_replace("\n","",$sm);
    $h="";
    $rest=" parent.document.getElementById('savename').value='" . str_replace(".midicsv", "", $filename) . "'; parent.document.getElementById('play').click(); ";
 }
}
if (isset($_GET['pleasecheck'])) {
 foreach (glob("*.midicsv") as $filename) {
    if ($myhtml == "") {
      $myhtml="<html>" . $jsc . "<body onload=\"onlis(); var mylist=parent.document.getElementById('playlist'); if (mylist.innerHTML.indexOf('>" . str_replace(".midicsv", "", $filename) . "<') == -1) { mylist.innerHTML+='<option value=" . str_replace(".midicsv", "", str_replace(" ", "%20", $filename)) . ">" . str_replace(".midicsv", "", $filename) . "</option>'; } ";
    } else {
      $myhtml.=" if (mylist.innerHTML.indexOf('>" . str_replace(".midicsv", "", $filename) . "<') == -1) { mylist.innerHTML+='<option value=" . str_replace(".midicsv", "", str_replace(" ", "%20", $filename)) . ">" . str_replace(".midicsv", "", $filename) . "</option>'; } ";
    }
 }
}
if ($myhtml != "") {
  echo $myhtml . "\"></body></html>";
} else if ($sm != "") {
  echo "<html><body onload=\"parent.document.getElementById('" . $h . "sheetmusic').value='" . str_replace("+", "~", str_replace(" ", "~", $sm)) . "';" . $rest . "\"></body></html>";
}
?>