Advertisement
Guest User

Untitled

a guest
May 25th, 2019
105
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.63 KB | None | 0 0
  1. // ==UserScript==
  2. // @name audio pl
  3. // @namespace http://tampermonkey.net/
  4. // @version 0.1
  5. // @description try to take over the world!
  6. // @author You
  7. // @match http://audio.pl/
  8. // @run-at document-start
  9. // @grant unsafeWindow
  10. // ==/UserScript==
  11.  
  12. var listaGlowna = {};
  13. listaGlowna.name = "Lista Główna";
  14. listaGlowna.item1 = [ "Radio ZET", "https://n-15-3.dcs.redcdn.pl/sc/o2/Eurozet/live/audio.livx?audio=5" ];
  15. listaGlowna.item2 = [ "AntyRadio", "https://n-15-3.dcs.redcdn.pl/sc/o2/Eurozet/live/antyradio.livx?audio=5" ];
  16. listaGlowna.item3 = [ "RMF MAXXX", "http://31.192.216.6/RMFMAXXX48" ];
  17. listaGlowna.item4 = [ "Złote Przeboje", "http://stream.radioagora.pl/tuba8936-1.mp3" ];
  18. listaGlowna.item5 = [ "Radio WAWA", "http://pldm.ml/radio?url=https://www.eskago.pl/radio/wawa" ];
  19. listaGlowna.item6 = [ "VOX FM", "http://pldm.ml/radio?url=https://www.eskago.pl/radio/vox-fm" ];
  20. listaGlowna.item7 = [ "ESKA Szczecin", "http://pldm.ml/radio?url=https://www.eskago.pl/radio/eska-szczecin" ];
  21.  
  22. var eskaGO = {};
  23. eskaGO.name = "Eska GO";
  24. eskaGO.item1 = [ "Hity na wiosne", "http://pldm.ml/radio?url=https://www.eskago.pl/radio/special-hity-na-wiosne" ];
  25.  
  26. var openFM = {};
  27. openFM.name = "Open FM";
  28. openFM.item1 = [ "Reggae", "http://stream.open.fm/22" ];
  29.  
  30. var main = {};
  31. main.item1 = listaGlowna;
  32. main.item2 = eskaGO;
  33. main.item3 = openFM;
  34.  
  35. var playlistString = "";
  36. for (var listKey in main) {
  37. var listValue = main[listKey];
  38. playlistString += "<br><h5>" + listValue.name + ":</h5>";
  39. for (var playlistKey in listValue) {
  40. if (playlistKey.includes("item")) {
  41. var playlistValue = listValue[playlistKey];
  42. playlistString += '<li><a href="' + playlistValue[1] + '">' + playlistValue[0] + '</a></li>';
  43. }
  44. }
  45. }
  46.  
  47. document.open();
  48. document.write(`
  49. <!DOCTYPE html>
  50. <html>
  51. <head>
  52. <meta charset="UTF-8">
  53. <title>Radio</title>
  54. <style>
  55. div {
  56. margin: 0;
  57. position: absolute;
  58. top: 50%;
  59. left: 50%;
  60. margin-right: -50%;
  61. transform: translate(-50%, -50%);
  62. }
  63. h5 {
  64. color:green;
  65. text-decoration: underline overline;
  66. padding: 0px;
  67. margin: 0px;
  68. }
  69. #playlist {
  70. list-style: none;
  71. }
  72. #playlist li a {
  73. color:black;
  74. text-decoration: none;
  75. }
  76. #playlist .current-song a {
  77. color:blue;
  78. }
  79. </style>
  80. </head>
  81. <body>
  82. <div>
  83. <audio src="" controls id="audioPlayer"></audio>
  84. <ul id="playlist">` + playlistString + `</ul>
  85. </div>
  86. <script src="https://code.jquery.com/jquery-2.2.0.js"></script>
  87. <script>
  88. (function audioPlayer(){
  89.  
  90. // get audio
  91. var audioList = $("#playlist li a");
  92. var audioCount = audioList.length;
  93. var audioCurrent = 0;
  94.  
  95. // play first audio
  96. $("#audioPlayer")[0].src = $("#playlist li a")[audioCurrent];
  97. $("#audioPlayer")[0].play();
  98.  
  99. // on audio click
  100. $("#playlist li a").click(function(e){
  101. e.preventDefault();
  102. $("#audioPlayer")[0].src = this;
  103. $("#audioPlayer")[0].play();
  104. audioCurrent = $(this).parent().index();
  105. $("#playlist li").removeClass("current-song");
  106. $(this).parent().addClass("current-song");
  107. });
  108.  
  109. // on audio end
  110. $("#audioPlayer")[0].addEventListener("ended", function(){
  111. audioCurrent++;if(audioCurrent == audioCount) audioCurrent = 0;
  112. $("#playlist li").removeClass("current-song");
  113. $("#playlist li:eq("+audioCurrent+")").addClass("current-song");
  114. $("#audioPlayer")[0].src = $("#playlist li a")[audioCurrent].href;
  115. $("#audioPlayer")[0].play();
  116. });
  117. })();
  118. </script>
  119. </body>
  120. </html>`);
  121. document.close();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement