PageRenderTime 44ms CodeModel.GetById 28ms RepoModel.GetById 0ms app.codeStats 0ms

/admin/playlist/lib/lib.php

https://github.com/dariusgm/PHPFee
PHP | 382 lines | 254 code | 119 blank | 9 comment | 35 complexity | 3b04f739fdcd68dcaf934bd9ac28d54b MD5 | raw file
  1. <?php
  2. #define ("meinpfad", "/srv/www/vhosts/discollection-radio.eu/httpdocs/admin/playlist/data/");
  3. #
  4. define ("meinpfad", "/opt/lampp/htdocs/admin/playlist/data/");
  5. define ("quali",128000);#128kb/s Mp3
  6. define ("verzoegerung", 2);#2h
  7. function show_create_genre() {
  8. if (isset($_POST["genre_name"]) && isset($_POST["werbung"]) && isset($_POST["pfad"]))
  9. {
  10. $db=mysql_connect("localhost","portal","psacln");
  11. $connect=mysql_select_db("portal",$db);
  12. $sql="INSERT INTO playlist_genre (werbung,pfad,genre_name) VALUES (";
  13. if ($_POST["werbung"]=="ja")
  14. {$sql.="'1',";}
  15. else
  16. {$sql.="'0',";}
  17. $pfad=str_replace("%genre_name%",$_POST["genre_name"],$_POST["pfad"]);
  18. $sql.="'".$pfad."',";
  19. $sql.="'".$_POST["genre_name"]."')";
  20. if (file_exists($pfad))
  21. {echo 'Genre bereits angelegt... Zum l&ouml;schen w&auml;hle bitte den "Genre bearbeiten" Punkt.';}
  22. else
  23. {
  24. if ( mkdir ( $pfad, 0777 ) )#Erstelle Verzeichnis
  25. {
  26. echo 'Verzeichnis erstellt!<br /> Genre hinzugef&uuml;gt. Mp3\'s k&ouml;nnen nun hochgeladen werden.';
  27. $result=mysql_query($sql);# F&uuml;ge in Datenbank ein
  28. $htaccess="AllowOverride All
  29. Order Deny, Allow
  30. Deny from all";#.htaccess
  31. #schreibe Schutzdatei ins neue Verzeichnis
  32. $datei=fopen($pfad."/.htaccess",w);
  33. fwrite($datei,$htaccess);
  34. fclose($datei);
  35. }
  36. }
  37. }
  38. else
  39. {
  40. echo '<form method="post"><table>
  41. <tr>
  42. <td>
  43. Genre Name:
  44. </td>
  45. <TD><input name="genre_name" type="text" maxlength="100" size="75" />
  46. </TD>
  47. </tr>
  48. <TR><TD>Werbung</TD><TD><select name="werbung"><OPTION value="nein">NEIN</OPTION><OPTION value="ja">JA</OPTION></select></TD></TR>
  49. <tr><td>Pfad:</td><td><input name="pfad" value="'.meinpfad.'%genre_name%" type="text" size="75" /></td></tr>
  50. <tr><TD colspan="2"><button type="SUBMIT">Erstellen</button></TD></tr>
  51. <tr><td><input type="hidden" name="userinput" value="'.$_POST["userinput"].'" />
  52. <input type="hidden" name="passinput" value="'.$_POST["passinput"].'" /></td></tr>
  53. </table></form>';
  54. }
  55. }
  56. function show_edit_genre()
  57. { if (isset($_GET["d"]) || isset($_GET["e"]))
  58. {
  59. if(isset($_GET["e"]))
  60. {$db=mysql_connect("localhost","portal","psacln");
  61. $connect=mysql_select_db("portal",$db);
  62. $sql1="UPDATE playlist_genre SET pfad='".$_POST["pfad"]."',genre_name='".$_POST["genre_name"]."' WHERE id='".$_GET["e"]."'";
  63. $result1=mysql_query($sql1);
  64. echo 'Datensatz aktualisiert';
  65. }
  66. if(isset($_GET["d"]))
  67. {$db=mysql_connect("localhost","portal","psacln");
  68. $connect=mysql_select_db("portal",$db);
  69. $sql1="SELECT pfad FROM playlist_genre WHERE id='".$_GET["d"]."'";
  70. $result1=mysql_query($sql1);
  71. $zeile1=mysql_fetch_array($result1);
  72. $dh = @opendir($zeile1["pfad"]);# Pr&uuml;fe ob das Verzeichnis leer ist
  73. while (false !== ($filename = @readdir($dh)))
  74. { if (($filename!=".") && ($filename!="..") && ($filename!=".htaccess"))
  75. {$count++;}
  76. }
  77. if ($count==0 && is_dir($zeile1["pfad"]))
  78. { echo 'Order ist leer. Er wurde gel&ouml;scht.';
  79. unlink($zeile1["pfad"].".htaccess");
  80. rmdir($zeile1["pfad"]);
  81. }
  82. else
  83. {echo 'In dem von dir ausgew&auml;hlten Verzeichnis befinden sich noch <b>'.$count.'</b> Datein die erst manuell gel&ouml;scht werden m&uuml;ssen!';}
  84. }
  85. }
  86. $db=mysql_connect("localhost","portal","psacln");
  87. $connect=mysql_select_db("portal",$db);
  88. $sql1="SELECT * FROM playlist_genre WHERE werbung=0";
  89. $result1=mysql_query($sql1);
  90. echo '<table border="1"><tr><th>ID</th><th>Name</th><th>Pfad</th></tr>';
  91. while($zeile1=mysql_fetch_array($result1))
  92. { echo '<tr><form method="post" action="index.php?x=edit_genre&e='.$zeile1["id"].'"><td>'.$zeile1["id"].'</td><td><input type="text" name="genre_name" value="'.$zeile1["genre_name"].'" /></td><td><input type="text" name="pfad" value="'.$zeile1["pfad"].'" size="75" maxlenght="100" /></td><td><button type="submit">Speichern</button><input type="hidden" name="userinput" value="'.$_POST["userinput"].'" /><input type="hidden" name="passinput" value="'.$_POST["passinput"].'" /></form><form method="post" action="index.php?x=edit_genre&d='.$zeile1["id"].'"><button type="submit">L&ouml;schen</button><input type="hidden" name="userinput" value="'.$_POST["userinput"].'" /><input type="hidden" name="passinput" value="'.$_POST["passinput"].'" /></form></td></tr>';
  93. }
  94. }
  95. function reload_musik()
  96. {
  97. if (isset($_POST["modus"]))
  98. {
  99. #Pruefe ob Playlist aktiviert ist
  100. if ($_POST["modus"]=="alles")
  101. {
  102. # Alles neu Importieren
  103. $db=mysql_connect("localhost","portal","psacln");
  104. $connect=mysql_select_db("portal",$db);
  105. $sql="SELECT id,pfad FROM playlist_genre";
  106. $sql1="TRUNCATE TABLE playlist_file";
  107. $result1=mysql_query($sql1,$db);
  108. $result=mysql_query($sql);
  109. while($zeile=mysql_fetch_array($result))
  110. {
  111. if(is_dir($zeile["pfad"]))
  112. {
  113. $dh = @opendir($zeile["pfad"]);
  114. while (false !== ($filename = @readdir($dh)))
  115. {
  116. if (($filename!=".") && ($filename!="..") && ($filename!=".htaccess"))
  117. {
  118. $sql2="INSERT INTO playlist_file (genre,dateiname,groesse) VALUES (".$zeile["id"].",'".$filename."',".filesize($zeile["pfad"]."/".$filename).")";
  119. $result2=mysql_query($sql2,$db);
  120. }
  121. }
  122. }
  123. else
  124. {echo 'Auf das Verzeichnis: <b>'.$zeile["pfad"].'</b> kann nicht zugegriffen werden. Stellen sie sicher das es noch vorhanden ist und das der Webserver lesenden Zugriff hat auf das Verzeichnis hat!<br /><br />';}
  125. } echo 'Musik wurde neu geladen.';
  126. }
  127. else
  128. { # Fuege neue Songs in die Datenbank
  129. $sql="SELECT id,pfad FROM playlist_genre";
  130. $result1=mysql_query($sql,$db);
  131. while($zeile=mysql_fetch_array($result))
  132. {
  133. $dh = opendir($zeile["pfad"]);
  134. while (false !== ($filename = readdir($dh)))
  135. {
  136. if (($filename!=".") && ($filename!="..") && ($filename!=".htaccess"))
  137. {
  138. $sql2="SELECT id FROM playlist_files WHERE dateiname='".$filename."'";
  139. $result2=mysql_query($sql2,$db);
  140. $zeile2=mysql_fetch_array($result2);
  141. if ($zeile2["id"]!=NULL)
  142. {
  143. $sql3="INSERT INTO playlist_file (genre,dateiname,groesse) VALUES (".$zeile["id"].",'".$filename."',".filesize($zeile["pfad"]."/".$filename).")";
  144. $result3=mysql_query($sql3);
  145. $count++;
  146. }
  147. }
  148. }
  149. }
  150. echo $count;
  151. echo ' Neue Songs wurden in die Datenbank aufgenommen.<br />';
  152. }
  153. $sql_sum="SELECT id FROM playlist_file ORDER BY id DESC LIMIT 1";
  154. $result_sum=mysql_query($sql_sum);
  155. $zeile_sum=mysql_fetch_array($result_sum);
  156. echo 'Es befinden sich: <b> '.$zeile_sum["id"].' </b> Songs in der Datenbank.';
  157. }
  158. else
  159. {
  160. echo '<table><TR><TD>
  161. Sie sind dabei die Musiklisten zu aktualisieren. Bitte beachten sie das dieser Vorgang sehr Rechenaufwendig Ich bitte Sie darum m&ouml;glichst nur ein "UPDATE" auszuf&uuml;hren. Es f&uuml;gt neue Titel hinzu. M&ouml;chten Sie dagegen die Liste auch von nun nicht mehr vorhandenen Musikdatein befreien, benutzen sie bitte die Option "ALLES".
  162. W&auml;hrend dieser Operatrionen muss die Playlist deaktiviert sein auf allen Streams. Dies wird bei beginn gepr&uuml;ft.
  163. </TD></TR>
  164. <form method="POST"><tr><TD>Modus:</TD></tr>
  165. <tr><TD><SELECT name="modus"><option value="update">UPDATE</option><OPTION value="alles">ALLES</OPTION></SELECT></TD></tr>
  166. <tr><TD><input type="hidden" name="userinput" value="'.$_POST["userinput"].'" />
  167. <input type="hidden" name="passinput" value="'.$_POST["passinput"].'" /><button type="SUBMIT">Ausf&uuml;hren</button></TD></tr>
  168. </form>
  169. </table>';
  170. }
  171. }
  172. function show_create_playlist()
  173. { if (isset($_POST["playlist_name"]))
  174. {
  175. $db=mysql_connect("localhost","portal","psacln");
  176. $connect=mysql_select_db("portal",$db);
  177. $sql3="INSERT INTO `playlist_name` (`name`) VALUES ('".filter($_POST["playlist_name"])."')";
  178. $result3=mysql_query($sql3);
  179. $playlist_id=mysql_insert_id();
  180. while (list ($key, $value) = each ($_POST))
  181. {
  182. if (($key!="playlist_name") && ($key!="userinput") && ($key!="passinput") && ($value!=0))
  183. {
  184. $sql2="INSERT INTO playlist_playlists (playlist,genre,anteil) VALUES (".$playlist_id.",".$key.",".$value.")";
  185. $result2=mysql_query($sql2);
  186. }
  187. }
  188. echo 'Playlist: '.$_POST["playlist_name"].' [ID: '.$playlist_id.'] angelegt.';
  189. }
  190. else
  191. {
  192. #Musik
  193. echo '<h3>W&auml;hle deine Musikrichtung(en)</h3>';
  194. $db=mysql_connect("localhost","portal","psacln");
  195. $connect=mysql_select_db("portal",$db);
  196. $sql1="SELECT id,pfad,genre_name FROM playlist_genre WHERE werbung=0 ORDER BY 'genre_name'";
  197. $result1=mysql_query($sql1);
  198. echo '<form method="post"><table><tr><th>Genre</th><td>Pfad</td><th>Prozentsatz</th></tr>';
  199. while($zeile=mysql_fetch_array($result1))
  200. {
  201. echo '<tr><td>'.$zeile["genre_name"].'</td><td>'.$zeile["pfad"].'</td><td><select name="'.$zeile["id"].'">'.show_create_playlist_dropdown($zeile["id"]).'</select></td></tr>';
  202. }
  203. echo '</table>';
  204. echo '<h3>W&auml;hle die Zus&auml;tze</h3>';
  205. #Werbung
  206. $sql1="SELECT id,pfad,genre_name FROM playlist_genre WHERE werbung=1 ORDER BY 'genre_name'";
  207. $result1=mysql_query($sql1);
  208. echo '<table><tr><th>Art</th><td>Pfad</td><th>Absolute Anzahl</th></tr>';
  209. while($zeile=mysql_fetch_array($result1))
  210. {
  211. echo '<tr><td>'.$zeile["genre_name"].'</td><td>'.$zeile["pfad"].'</td><td><select name="'.$zeile["id"].'">';
  212. $i=0;
  213. while($i<11)
  214. {echo '<option value="'.$i.'">'.$i.'</option>';$i++;}
  215. echo '</select></td></tr>';
  216. }
  217. echo '<tr><td>Playlistname:</td><td><input type="text" name="playlist_name" /></td></tr><tr><td><button type="submit">Speichern</td></tr><tr><TD><input type="hidden" name="userinput" value="'.$_POST["userinput"].'" />
  218. <input type="hidden" name="passinput" value="'.$_POST["passinput"].'" /></table>';
  219. }
  220. }
  221. function show_create_playlist_dropdown($genre)
  222. {
  223. $i=0;
  224. while($i<11)
  225. {$drop.='<option value="'.$i.'0">'.$i.'0 %</option>';$i++;}
  226. return $drop;
  227. }
  228. function show_edit_playlist()
  229. {
  230. $db=mysql_connect("localhost","portal","psacln");
  231. $connect=mysql_select_db("portal",$db);
  232. if (isset($_POST["del"]))
  233. {
  234. $del_id=filter($_POST["del"]);
  235. #Loesche Aus Playlist_name
  236. $sql1="DELETE FROM playlist_name WHERE id=".$del_id."";
  237. #Loesche aus Playlist_Playlists
  238. $sql2="DELETE FROM playlist_playlists WHERE playlist=".$del_id."";
  239. $result1=mysql_query($sql1);
  240. $result2=mysql_query($sql2);
  241. echo 'Playliste gel&ouml;scht';
  242. }
  243. $sql1="SELECT id,name FROM playlist_name ORDER BY name";
  244. $result1=mysql_query($sql1);
  245. echo '<table><tr><th>ID</th><th width="200">Playliste</th></tr>';
  246. while($zeile1=mysql_fetch_array($result1))
  247. {
  248. echo '<tr><td><form method="post" action="index.php?x=edit_playlist">'.$zeile1["id"].'</td><td width="200">'.$zeile1["name"].'</td>
  249. <td>
  250. <input type="hidden" name="userinput" value="'.$_POST["userinput"].'" />
  251. <input type="hidden" name="passinput" value="'.$_POST["passinput"].'" />
  252. <input type="hidden" name="del" value="'.$zeile1["id"].'" />
  253. <button type="submit">L&ouml;schen</button></form></td></tr>';
  254. }
  255. echo '</table>';
  256. }
  257. ?>