Ladies_Man

vkAudio content

May 9th, 2016
125
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function handleDownload() {
  2. }
  3.  
  4. //listen from background
  5. chrome.runtime.onMessage.addListener(function(msg, sender, sendResponse) {
  6.     switch (msg.key) {
  7.         case "audio":
  8.             modify_audio_list(msg.imgUrl);
  9.             break;
  10.     }
  11.     return true;
  12. });
  13.    
  14. function modify_audio_list(imgSkullUrl) {  
  15.        
  16.     if (-1 == url.indexOf("act=feed")) {
  17.        
  18.         var songs_block = document.getElementById("initial_list");
  19.         var songs = document.getElementsByClassName("audio  fl_l");
  20.        
  21.         var d_btn = '<div class="d_btn" style="display: block; height: 18px; width: 18px; margin-left: 20px; z-index: 1000000;"></div>';
  22.         var d_link = '<div class="d_link">' +
  23.                         '<a class="d_inner_link" href="" title="Yohoho! Download it!">' +
  24.                             '<img src="' + imgSkullUrl + '" alt="" height="18px" width="18px">' +
  25.                         '</a>' +
  26.                      '</div>';
  27.         var d_name = '<div class="d_name" style="display: none;">' +
  28.                         '<div class="d_title"></div>' +
  29.                         '<div class="d_artist"></div>' +
  30.                      '</div>';
  31.        
  32.         for (i = 0; i < songs.length; i++) {
  33.            
  34.             if (0 == songs[i].getElementsByClassName("d_btn").length) {
  35.                
  36.                 //add download button
  37.                 var button_block = songs[i].getElementsByClassName("play_new")[0];
  38.                 button_block.innerHTML += d_btn;
  39.  
  40.                
  41.                 //modify song_name's block
  42.                 var name_block = songs[i].getElementsByClassName("info fl_l")[0];
  43.                 name_block.style.width = "370px";
  44.                 name_block.style.height = "33px";
  45.                 name_block.style.marginLeft = "20px";
  46.                
  47.                 //modify download button
  48.                 var d_b = songs[i].getElementsByClassName("d_btn")[0];
  49.                 d_b.style.cursor = "default";
  50.                 d_b.style.backgroundColor = "white";
  51.                 d_b.style.borderRadius = "3px";
  52.                 d_b.style.border = "1px solid #45668e";
  53.                
  54.                 //prevent auto play
  55.                 d_b.addEventListener('click', handleDownload());
  56.                
  57.                 //add content link and song_name
  58.                 d_b.innerHTML += d_link;
  59.                 d_b.innerHTML += d_name;
  60.                
  61.                
  62.                 //modify href
  63.                 d_l = songs[i].getElementsByTagName("input")[0].value;
  64.                 d_b.getElementsByClassName("d_inner_link")[0].href = d_l;
  65.                
  66.                 //get song_title and artist
  67.                 var artist = songs[i].getElementsByClassName("title_wrap fl_l")[0].getElementsByTagName("a")[0].innerText;
  68.                 var title = songs[i].getElementsByClassName("title_wrap fl_l")[0].getElementsByClassName("title")[0].innerText;
  69.                 songs[i].getElementsByClassName("d_artist")[0].innerText = artist;
  70.                 songs[i].getElementsByClassName("d_title")[0].innerText = title;
  71.                
  72.                
  73.                 /*d_b.getElementsByClassName("d_link")[0].addEventListener("click", function(e) {
  74.                     alert(d_b.getElementsByClassName("d_inner_link")[0].href);
  75.                     alert(this.innerHTML);
  76.                    
  77.                     var editorExtensionId = "ljoihmfhdlaibefabobnmgggmfblioij";
  78.                     chrome.runtime.sendMessage(editorExtensionId, {key: "download"}, function(response) {});
  79.                        
  80.                     chrome.runtime.sendMessage({
  81.                         key: "download",
  82.                         data: songs[i].getElementsByClassName("d_name")[0].innerText
  83.                     });
  84.                    
  85.                     e.stopPropagation();
  86.                    
  87.                 });*/
  88.                
  89.             }
  90.                
  91.            
  92.         }
  93.        
  94.         var vk_script = document.createElement('script');
  95.         vk_script.src = chrome.extension.getURL('vk_script_event.js');
  96.         (document.head || document.documentElement).appendChild(vk_script);
  97.         vk_script.onload = function() {
  98.             vk_script.parentNode.removeChild(vk_script);
  99.         };
  100.  
  101.     }
  102. }
Advertisement
Add Comment
Please, Sign In to add comment