VK OLD STYLE 2.0

VK OLD STYLE

当前为 2021-11-13 提交的版本,查看 最新版本

  1. // ==UserScript==
  2. // @name VK OLD STYLE 2.0
  3. // @namespace https://*.vk.com/*
  4. // @version 3.0.0
  5. // @description VK OLD STYLE
  6. // @author You
  7. // @match https://*.vk.com/*
  8. // @include https://*.vk.com/*
  9. // @icon https://www.google.com/s2/favicons?domain=vk.com
  10. // @require http://code.jquery.com/jquery-3.4.1.min.js
  11. // @grant all
  12. // @license MIT
  13. // ==/UserScript==
  14. // VARS
  15. //console.log(names3);
  16. // ТАЙМЕРЫ
  17. //document.querySelector("head").insertAdjacentHTML("beforeend","<link rel='stylesheet' type='text/css' href='https://dl.dropbox.com/s/xmqh5683r5r6oxb/vk.css' />")
  18. //if (yourname!==null||undefined)
  19.  
  20. var timer = setInterval(update, 500);
  21. var timer2 = setInterval(update, 5000);
  22. var timer3 = setInterval(changeBgImg,10);
  23. var timer4 = setInterval(ads_remove, 3000);
  24. var timer5 = setInterval(clear,60000);
  25. var timer6 = setInterval(audio,1000);
  26.  
  27.  
  28.  
  29. // ПЕРЕМЕННЫЕ СВЯЗАННЫЕ С КЛАССАМИ
  30. var names2 = document.querySelector('#l_msg a');
  31. var pane = document.querySelector('div.ui_actions_menu_item_panel');
  32. var t5 = document.querySelector('.ui_actions_menu_item_panel');
  33. var t3 = document.querySelector('a.ui_actions_menu_item.im-action.im-action_messenger_settings._im_search_more_action');
  34. var yourname = document.querySelector('a#top_profile_link');
  35. if (yourname!==null||undefined){
  36. yourname = yourname.getAttribute('href');
  37. }
  38.  
  39.  
  40.  
  41.  
  42.  
  43.  
  44.  
  45.  
  46. window.onload = function() {
  47. setTimeout(() => { ads_remove(); }, 500);
  48. setInterval(ads_remove, 3000);
  49. setInterval(clear,60000);
  50. setInterval(titl,1000);
  51. names2.addEventListener("click", settings_update, false);
  52. main();
  53. console.log('Чё ты хотел тут увидеть?');
  54. fix_name();
  55. important2();
  56. //fixvideo();
  57. setInterval(fixvideo,1000);
  58. setInterval(upd2,1000);
  59. };
  60. window.onfocus = function(){
  61. set();
  62. };
  63. window.onblur = function(){
  64. end();
  65. };
  66. function set(){
  67. main();
  68. }
  69.  
  70.  
  71.  
  72.  
  73. function main(){
  74. setInterval(changeBgImg,10);
  75. setInterval(ads_remove, 3000);
  76. setInterval(clear,60000);
  77. setInterval(dot,1000);
  78. setInterval(de,1000);
  79. setInterval(audio,1000);
  80. }
  81.  
  82. function end(){
  83. clearInterval(timer3);
  84. clearInterval(timer4);
  85. clearInterval(timer5);
  86. clearInterval(timer6);
  87. }
  88. function update(){
  89. var create,title,title2,title3,side,video
  90.  
  91. if (window.location.pathname == '/' || window.location.pathname == '/edit'){
  92. title = document.querySelector('header.ProfileEditorVkconnect__header')
  93. title2 = document.querySelector('p.ProfileEditorVkconnect__text')
  94. title3 = document.querySelector('a.flat_button[href="https://id.vk.com/account/"]')
  95. // console.log(title3)
  96. if (title.textContent == 'Редактирование доступно в VK ID'){
  97. title.textContent = 'Ваши данные перенесены в VK Connect'
  98. }
  99. if (title2.textContent == 'Изменять основную информацию можно в настройках единого аккаунта'){
  100. title2.textContent = 'Редактирование информации доступно в настройках единого аккаунта'
  101. title3.innerHTML = 'Перейти в VK Connect'
  102. title3.href = 'https://connect.vk.com/account/'
  103. }
  104. //console.log(title)
  105. }
  106. if (window.location.pathname == '/' || window.location.pathname == '/im')
  107. {
  108. // Это главная страница
  109. if (t5 = document.querySelector('.ui_actions_menu_item_panel')){
  110. clearInterval(timer);
  111. setInterval(timer2);
  112. setInterval(upd,100)
  113. }
  114. else{
  115. settings_update();
  116. clearInterval(timer);
  117. setInterval(timer2);
  118. setInterval(upd,100)
  119. }
  120. }
  121. if (yourname!==null||undefined){
  122. if (document.location.href == yourname)
  123. {
  124. dot();
  125. }}}
  126. function upd2(){
  127. test_f();
  128. var mvhref,side,url,с,h,h1
  129. mvhref = document.querySelector('[data-title="Мои видео"]')
  130. side = document.querySelector('div#side_bar')
  131. url = window.location.href
  132. h = document.querySelector('._video_item.video_can_add.VideoCard.VideoCard--movie.video_item')
  133. h1 = document.querySelector('div#video_all_listvideo_all_list')
  134. if (mvhref){
  135. if (window.location =='https://vk.com/video'||window.location == mvhref.href&&window.location =='https://vk.com/video'||window.location == mvhref.href||url.includes('video')== true){
  136. if (!h1){
  137. setTimeout(() => { twof(); }, 500);
  138. h1 = document.querySelector('._video_item.video_can_delete.video_can_edit_albums.VideoCard.VideoCard--movie')
  139. }
  140. if (!h&&!h1){
  141. setTimeout(() => { onef(); }, 500);
  142. h = document.querySelector('._video_item.video_can_add.VideoCard.VideoCard--movie.video_item')
  143. }}}}
  144.  
  145. function onef(){
  146. var one,two,thr,h9,fo,h10
  147. one = document.querySelector('div#video_subtab_pane_type_trends')
  148. two = document.querySelector('div#video_type_trends_list')
  149. thr = document.querySelectorAll('._video_item.video_can_add.VideoCard.VideoCard--movie')
  150.  
  151. one.classList = 'video_subtab_pane ge_video_pane video_subtab_pane_all';
  152. one.id = 'video_subtab_pane_all';
  153. two.classList = 'video_items_list _video_list_my_all _video_all_list';
  154. two.id = 'video_all_list';
  155. two.style.position = 'relative';
  156. for (h9 = 0; h9 < thr.length; h9++) {
  157. thr[h9].classList.add("video_item")
  158. thr[h9].classList.add("_video_item")
  159. }
  160. for (h10 = 0; h10 < thr.length; h10++) {
  161. thr[h10].classList.add("video_item")
  162. thr[h10].classList.add("_video_item")
  163. }
  164. }
  165. function twof(){
  166. var o,t,f,v
  167. o = document.querySelector('div#video_subtab_pane_all')
  168. t = document.querySelector('div#video_all_list')
  169. f = document.querySelectorAll('._video_item.video_can_delete.video_can_edit_albums.VideoCard.VideoCard--movie')
  170.  
  171. o.classList = 'video_subtab_pane ge_video_pane video_subtab_pane_all';
  172. t.classList = 'video_items_list _video_list_my_all _video_all_list';
  173. t.id = t.id+'video_all_list';
  174. //console.log(f)
  175. for (v = 0; v < f.length; v++) {
  176. f[v].classList.add("video_item")
  177. f[v].classList.add("_video_item")
  178. }
  179. }
  180.  
  181.  
  182.  
  183.  
  184.  
  185.  
  186.  
  187.  
  188.  
  189.  
  190. function test_f(){
  191. var t2 = document.querySelector('.FCWindow')
  192. if (t2){
  193. var t = t2.style.transform
  194. t2.style.transform = localStorage.getItem('test')
  195. localStorage.setItem('test', t);
  196. }
  197. if (t){
  198. localStorage.setItem('test', t);
  199. console.log(localStorage.getItem('test'))
  200. }}
  201.  
  202. function fixvideo(){
  203. var mv = document.createElement('div');
  204. var prev = document.querySelectorAll('.VideoLayout__main .page_block_header.clear_fix')
  205. var sidebar = document.querySelector('div#side_bar')
  206. var fakesearch = document.querySelector('div#video_search_input_wrapper')
  207. var mvhref = document.querySelector('[data-title="Мои видео"]')
  208. var header = document.querySelector('div#video_block_header')
  209. var content,vid,input,h,t
  210.  
  211. // Шапка
  212. mv.innerHTML = '<h2 class="page_block_h2 "> <ul class="ui_tabs clear_fix ui_tabs_header ui_tabs_with_progress" onmouseover="uiTabs.tryInit(this)" id="video_main_tabs" data-inited="1"> <li id="videocat_tab_all"> <a href="'+mvhref+'" class="ui_tab ui_tab_sel" onclick="return uiTabs.goTab(this, event, 1);"> Мои видео </a> </li><li id="videocat_tab_catalog"> <a href="/video" class="ui_tab" onclick="return uiTabs.goTab(this, event, 1);"> Видеокаталог </a> </li><li> <div class="ui_tab_plain ui_tabs_progress" role="link"> </div> </li> <button style="margin-left: 0" class="flat_button" onclick="return VideoUpload.showBox({aid: \'0\', from: \'video\'});">Добавить видео</button><button class="flat_button secondary" id="video_create_live_btn" onclick="VideoUpload.createLiveStream();">Создать трансляцию</button> <button class="flat_button secondary" id="video_add_album_btn" onclick="return Video.createAlbum(event);" style="">Создать альбом</button> <div class="ui_tabs_slider _ui_tabs_slider" style="width: 83.6875px; margin-left: 14px;"></div> </ul> </h2> </div> <div class="eltt eltt_arrow_size_normal eltt_align_center " id=""> <div class="eltt_arrow_back _eltt_arrow_back"> <div class="eltt_arrow"></div> </div> <div class="eltt_content _eltt_content"><div class="video_search_filters_wrap"> <div id="ui_search_fltr_progress" class="ui_search_fltr_progress fl_r"></div> <div class="ui_search_fltr_label">По длительности</div> <div class="ui_search_fltr_sel"><div id="container5" class="selector_container dropdown_container big limited_height" style="width: 200px;"><table cellspacing="0" cellpadding="0" class="selector_table"> <tbody><tr> <td class="selector"> <div class="placeholder_wrap1" style="display: none;"> <div class="placeholder_wrap2"> <div class="placeholder_content" aria-hidden="true" style="color: rgb(124, 127, 130);"></div> <div class="placeholder_cover"></div> </div> </div><div class="selected_items_wrap"><div class="scroll_fader_top"></div> <span class="selected_items"></span> <div class="scroll_fader_bottom"></div></div> <input type="text" class="selector_input selected" readonly="true" style="width: 163px;"> <input type="hidden" name="selectedItems" id="selectedItems" value="0" class="resultField"> <input type="hidden" name="selectedItems_custom" id="selectedItems_custom" value="" class="customField"> </td><td id="dropdown5" class="selector_dropdown" role="button" aria-hidden="true" style="width: 26px;">&nbsp;</td> </tr> </tbody></table> <div class="results_container"> <div class="result_list dividing_line" style="display: none; opacity: 1; width: 200px;"><ul id="list_options_container_4"></ul></div> </div></div></div> <div class="ui_search_fltr_label">По дате</div> <div class="ui_search_fltr_sel"><div id="container6" class="selector_container dropdown_container big limited_height" style="width: 200px;"><table cellspacing="0" cellpadding="0" class="selector_table"> <tbody><tr> <td class="selector"> <div class="placeholder_wrap1" style="display: none;"> <div class="placeholder_wrap2"> <div class="placeholder_content" aria-hidden="true" style="color: rgb(124, 127, 130);"></div> <div class="placeholder_cover"></div> </div> </div><div class="selected_items_wrap"><div class="scroll_fader_top"></div> <span class="selected_items"></span> <div class="scroll_fader_bottom"></div></div> <input type="text" class="selector_input selected" readonly="true" style="width: 163px;"> <input type="hidden" name="selectedItems" id="selectedItems" value="0" class="resultField"> <input type="hidden" name="selectedItems_custom" id="selectedItems_custom" value="" class="customField"> </td><td id="dropdown6" class="selector_dropdown" role="button" aria-hidden="true" style="width: 26px;">&nbsp;</td> </tr> </tbody></table> <div class="results_container"> <div class="result_list dividing_line" style="display: none; opacity: 1; width: 200px;"><ul id="list_options_container_5"></ul></div> </div></div></div> <div class="ui_search_fltr_label">Сортировка</div> <div class="ui_search_fltr_sel"><div id="container7" class="selector_container dropdown_container big limited_height" style="width: 200px;"><table cellspacing="0" cellpadding="0" class="selector_table"> <tbody><tr> <td class="selector"> <div class="placeholder_wrap1" style="display: none;"> <div class="placeholder_wrap2"> <div class="placeholder_content" aria-hidden="true" style="color: rgb(124, 127, 130);"></div> <div class="placeholder_cover"></div> </div> </div><div class="selected_items_wrap"><div class="scroll_fader_top"></div> <span class="selected_items"></span> <div class="scroll_fader_bottom"></div></div> <input type="text" class="selector_input selected" readonly="true" style="width: 163px;"> <input type="hidden" name="selectedItems" id="selectedItems" value="-1" class="resultField"> <input type="hidden" name="selectedItems_custom" id="selectedItems_custom" value="" class="customField"> </td><td id="dropdown7" class="selector_dropdown" role="button" aria-hidden="true" style="width: 26px;">&nbsp;</td> </tr> </tbody></table> <div class="results_container"> <div class="result_list dividing_line" style="display: none; opacity: 1; width: 200px;"><ul id="list_options_container_6"></ul></div> </div></div></div> <div class="checkbox" id="video_fltr_hd" onclick="return checkbox(this);" role="checkbox" aria-checked="false" tabindex="0"><div></div>Высокое качество</div> <div class="checkbox" id="video_fltr_notsafe" onclick="return checkbox(this);" role="checkbox" aria-checked="false" tabindex="0"><div></div>Без ограничений</div> <div class="checkbox " id="video_fltr_live" onclick="return checkbox(this);" role="checkbox" aria-checked="false" tabindex="0"><div></div>Только трансляции</div> </div></div> </div></div>'
  213. mv.id = 'video_block_headertest_id'
  214. if (mvhref){
  215. if (window.location == mvhref.href){
  216. h = document.querySelector('div#video_block_headertest_id')
  217. if (!h){
  218. header.replaceWith(mv)
  219. h = document.querySelector('div#video_block_headertest_id')
  220. //console.log(h)
  221. }}}
  222. if (window.location=='https://vk.com/video'){
  223. mv.innerHTML = '<h2 class="page_block_h2 "> <ul class="ui_tabs clear_fix ui_tabs_header ui_tabs_with_progress" onmouseover="uiTabs.tryInit(this)" id="video_main_tabs" data-inited="1"> <li id="videocat_tab_all"> <a href="'+mvhref+'" class="ui_tab" onclick="return uiTabs.goTab(this, event, 1);"> Мои видео </a> </li><li id="videocat_tab_catalog"> <a href="/video" class="ui_tab ui_tab_sel" onclick="return uiTabs.goTab(this, event, 1);"> Видеокаталог </a> </li><li> <div class="ui_tab_plain ui_tabs_progress" role="link"> </div> </li> <button style="margin-left: 0" class="flat_button" onclick="return VideoUpload.showBox({aid: \'0\', from: \'video\'});">Добавить видео</button><button class="flat_button secondary" id="video_create_live_btn" onclick="VideoUpload.createLiveStream();">Создать трансляцию</button> <button class="flat_button secondary" id="video_add_album_btn" onclick="return Video.createAlbum(event);" style="">Создать альбом</button> <div class="ui_tabs_slider _ui_tabs_slider" style="width: 83.6875px; margin-left: 14px;"></div> </ul> </h2> </div> <div class="eltt eltt_arrow_size_normal eltt_align_center " id=""> <div class="eltt_arrow_back _eltt_arrow_back"> <div class="eltt_arrow"></div> </div> <div class="eltt_content _eltt_content"><div class="video_search_filters_wrap"> <div id="ui_search_fltr_progress" class="ui_search_fltr_progress fl_r"></div> <div class="ui_search_fltr_label">По длительности</div> <div class="ui_search_fltr_sel"><div id="container5" class="selector_container dropdown_container big limited_height" style="width: 200px;"><table cellspacing="0" cellpadding="0" class="selector_table"> <tbody><tr> <td class="selector"> <div class="placeholder_wrap1" style="display: none;"> <div class="placeholder_wrap2"> <div class="placeholder_content" aria-hidden="true" style="color: rgb(124, 127, 130);"></div> <div class="placeholder_cover"></div> </div> </div><div class="selected_items_wrap"><div class="scroll_fader_top"></div> <span class="selected_items"></span> <div class="scroll_fader_bottom"></div></div> <input type="text" class="selector_input selected" readonly="true" style="width: 163px;"> <input type="hidden" name="selectedItems" id="selectedItems" value="0" class="resultField"> <input type="hidden" name="selectedItems_custom" id="selectedItems_custom" value="" class="customField"> </td><td id="dropdown5" class="selector_dropdown" role="button" aria-hidden="true" style="width: 26px;">&nbsp;</td> </tr> </tbody></table> <div class="results_container"> <div class="result_list dividing_line" style="display: none; opacity: 1; width: 200px;"><ul id="list_options_container_4"></ul></div> </div></div></div> <div class="ui_search_fltr_label">По дате</div> <div class="ui_search_fltr_sel"><div id="container6" class="selector_container dropdown_container big limited_height" style="width: 200px;"><table cellspacing="0" cellpadding="0" class="selector_table"> <tbody><tr> <td class="selector"> <div class="placeholder_wrap1" style="display: none;"> <div class="placeholder_wrap2"> <div class="placeholder_content" aria-hidden="true" style="color: rgb(124, 127, 130);"></div> <div class="placeholder_cover"></div> </div> </div><div class="selected_items_wrap"><div class="scroll_fader_top"></div> <span class="selected_items"></span> <div class="scroll_fader_bottom"></div></div> <input type="text" class="selector_input selected" readonly="true" style="width: 163px;"> <input type="hidden" name="selectedItems" id="selectedItems" value="0" class="resultField"> <input type="hidden" name="selectedItems_custom" id="selectedItems_custom" value="" class="customField"> </td><td id="dropdown6" class="selector_dropdown" role="button" aria-hidden="true" style="width: 26px;">&nbsp;</td> </tr> </tbody></table> <div class="results_container"> <div class="result_list dividing_line" style="display: none; opacity: 1; width: 200px;"><ul id="list_options_container_5"></ul></div> </div></div></div> <div class="ui_search_fltr_label">Сортировка</div> <div class="ui_search_fltr_sel"><div id="container7" class="selector_container dropdown_container big limited_height" style="width: 200px;"><table cellspacing="0" cellpadding="0" class="selector_table"> <tbody><tr> <td class="selector"> <div class="placeholder_wrap1" style="display: none;"> <div class="placeholder_wrap2"> <div class="placeholder_content" aria-hidden="true" style="color: rgb(124, 127, 130);"></div> <div class="placeholder_cover"></div> </div> </div><div class="selected_items_wrap"><div class="scroll_fader_top"></div> <span class="selected_items"></span> <div class="scroll_fader_bottom"></div></div> <input type="text" class="selector_input selected" readonly="true" style="width: 163px;"> <input type="hidden" name="selectedItems" id="selectedItems" value="-1" class="resultField"> <input type="hidden" name="selectedItems_custom" id="selectedItems_custom" value="" class="customField"> </td><td id="dropdown7" class="selector_dropdown" role="button" aria-hidden="true" style="width: 26px;">&nbsp;</td> </tr> </tbody></table> <div class="results_container"> <div class="result_list dividing_line" style="display: none; opacity: 1; width: 200px;"><ul id="list_options_container_6"></ul></div> </div></div></div> <div class="checkbox" id="video_fltr_hd" onclick="return checkbox(this);" role="checkbox" aria-checked="false" tabindex="0"><div></div>Высокое качество</div> <div class="checkbox" id="video_fltr_notsafe" onclick="return checkbox(this);" role="checkbox" aria-checked="false" tabindex="0"><div></div>Без ограничений</div> <div class="checkbox " id="video_fltr_live" onclick="return checkbox(this);" role="checkbox" aria-checked="false" tabindex="0"><div></div>Только трансляции</div> </div></div> </div></div>'
  224. mv.id = 'video_block_headertest_id'
  225. h = document.querySelector('div#video_block_headertest_id')
  226. if (!h){
  227. header.replaceWith(mv)
  228. h = document.querySelector('div#video_block_headertest_id')
  229. //alert('1')
  230. //console.log(mv)
  231. }}
  232. vid = document.querySelector('.video_block_layout.VideoLayout__contentsWrapper')
  233. content = document.querySelector('div#video_search_input_wrapper')
  234. if (vid){
  235. if (!t){
  236. vid.insertAdjacentElement('beforeBegin', content);
  237. }}
  238.  
  239. // Перенос поиска
  240. input = document.querySelector('.ui_search_new.ui_search.ui_search_field_empty.video_search_input.VideoSearchInput.ui_search_custom.ui_search_with_custom_controls._wrap')
  241. if (input){
  242. t = document.querySelector('.ui_search_new.ui_search.ui_search_field_empty.video_search_input.ui_search_btn_large._wrap._t')
  243. if (!t){
  244. input.classList = 'ui_search_new ui_search ui_search_field_empty video_search_input ui_search_btn_large _wrap _t'
  245. t = document.querySelector('.ui_search_new.ui_search.ui_search_field_empty.video_search_input.ui_search_btn_large._wrap._t')
  246. //console.log(t)
  247. }}}
  248.  
  249. function important2(){
  250. var del = document.querySelectorAll('a.ui_actions_menu_item.im-action.im-action_business_notify._im_search_more_action,a.ui_actions_menu_item.im-action.im-action_favorites._im_search_more_action,a#top_vkconnect_link,.top_profile_sep,.TopNavBtn__profileName');
  251. var e2
  252. for (e2 = 0; e2 < del.length; e2++) {
  253. del[e2].remove();
  254. }
  255. }
  256.  
  257. function none(){
  258. var modal = document.querySelector('h1.ModalHeader__title').textContent;
  259. //console.log(modal)
  260. if (modal=='Настройки мессенджера'){
  261. var n = document.querySelector('.BaseModal')
  262. n.style.display = 'none';
  263. var uv = document.querySelector('label.Settings__switch.vkuiSwitch.vkuiSwitch--vkcom.Switch.Switch--vkcom.vkuiSwitch--sizeY-regular.Switch--sizeY-regular input.vkuiSwitch__self.Switch__self')
  264. uv.click();
  265. if (uv.checked){
  266. var uw = document.getElementById('ubf')
  267. uw.innerHTML = 'Отключить звуковые уведомления';
  268. }else{
  269. uw = document.getElementById('ubf')
  270. uw.textContent = 'Включить звуковые уведомления';
  271. }
  272. }}
  273.  
  274. function important(){
  275. var create = document.querySelector('.imptfix')
  276. var unread = document.querySelector('a#ui_rmenu_unread');
  277. var impt = document.createElement('a');
  278. var parent = document.querySelector('.page_block.ui_rmenu._im_right_menu.ui_rmenu_pr');
  279. var del = document.querySelectorAll('a.ui_actions_menu_item.im-action.im-action_business_notify._im_search_more_action,a.ui_actions_menu_item.im-action.im-action_favorites._im_search_more_action,a#top_vkconnect_link,.top_profile_sep,.TopNavBtn__profileName');
  280. var biz = document.createElement('a');
  281. var e1
  282.  
  283. impt.setAttribute('tabindex','0');
  284. impt.setAttribute('role','link');
  285. impt.setAttribute('data-action','favorites');
  286. impt.className='ui_rmenu_item _ui_item_unread imptfix';
  287. impt.innerHTML='Важные сообщения';
  288. impt.href='https://vk.com/im?box=fav';
  289.  
  290. biz.setAttribute('tabindex','0');
  291. biz.setAttribute('role','link');
  292. biz.setAttribute('data-action','business_notify');
  293. biz.className='ui_rmenu_item _ui_item_unread bizfix';
  294. biz.innerHTML='Бизнес-уведомления';
  295. biz.href='https://vk.com/im?tab=business_notify';
  296.  
  297.  
  298. unread.insertAdjacentElement('afterEnd', impt);
  299. var fav = document.querySelector('a.ui_rmenu_item._ui_item_unread.imptfix');
  300. fav.insertAdjacentElement('afterEnd', biz);
  301.  
  302. for (e1 = 0; e1 < del.length; e1++) {
  303. del[e1].remove();
  304. }
  305. create = document.querySelector('.imptfix')
  306. }
  307. function upd(){
  308. var style = document.querySelector('.im-page--header.ui_search._im_dialogs_search');
  309. var style2 = document.querySelector('div#setfx');
  310. if (style!=null||undefined){
  311. if (style2.style.transform !== style.style.transform){
  312. style2.style.transform = style.style.transform;}}
  313. }
  314.  
  315. function fix_name(){
  316. console.log('Фикс имени пошёл')
  317. var parentlnk = document.querySelector('div#top_profile_menu')
  318. var lnk = document.querySelector('li#l_pr a')
  319. var setlnk = document.querySelector('a#top_settings_link');
  320. var suplnk = document.querySelector('a#top_support_link');
  321. var loglnk = document.querySelector('a#top_logout_link');
  322. var name = document.querySelector('img.TopNavBtn__profileImg');
  323. var name2 = document.querySelector('a[href*="connect.vk.com"] div[style="color: var(--text_primary);"]')
  324. var name3 = document.querySelector('[style="background-color: var(--content_tint_background); border-radius: 8px; width: 254px; font-family: inherit;"]')
  325. var remove = document.querySelector('a[href*="connect.vk.com"] ')
  326. var remove2 = document.querySelectorAll('div#top_profile_menu span')
  327. var namealt = name.alt
  328. var s = document.querySelector('a#top_profile_link[aria-label="Настройки страницы"]');
  329. var q = document.createElement('div');
  330. var w = document.createElement('a');
  331. var n = document.createElement('a');
  332. var u = document.createElement('div');
  333. var k = document.createElement('div');
  334. var k2 = document.createElement('span');
  335. var b1
  336.  
  337. q.innerHTML = '<div style="padding-right:10px;display:inline-block;vertical-align:top;color:white;font-weight: 500;-webkit-font-smoothing: subpixel-antialiased;">'+namealt+'</div>';
  338. w.className = 'top_profile_mrow'
  339. w.id = 'top_home_link'
  340. w.href = lnk.href
  341. n.className = 'top_profile_mrow'
  342. n.id = 'top_edit_link'
  343. n.href = '/edit'
  344. k2.style = 'position:absolute;pointer-events:none;height:0px;width:0px;bottom:100%;right:42px;border-width: 6px; border-style: solid; margin: 0px -6px; border-color: transparent transparent white; " class=""'
  345. u.innerHTML = '<div style="border-top-color:rgb(219, 228, 236);border-width: 1px medium medium; border-style: solid none none; margin: 4px 13px; "></div>'
  346. k.innerHTML = '<div style="border-top-color:rgb(219, 228, 236);border-width: 1px medium medium; border-style: solid none none; margin: 4px 13px; "></div>'
  347. w.innerHTML ='Моя страница'
  348. n.innerHTML = 'Редактировать'
  349. setlnk.innerHTML ='Настройки'
  350. suplnk.innerHTML ='Помощь'
  351. suplnk.innerHTML ='Помощь'
  352. loglnk.innerHTML ='Выйти'
  353.  
  354.  
  355. if (namealt!=null){
  356.  
  357. s.insertBefore(q,s.firstChild)
  358. setlnk.insertAdjacentElement('beforeBegin', w);
  359. var home = document.querySelector('a#top_home_link')
  360. parentlnk.insertBefore(u,setlnk)
  361. parentlnk.insertBefore(k,loglnk)
  362. parentlnk.insertBefore(n,setlnk)
  363. parentlnk.insertBefore(k2,home)
  364.  
  365. for (b1 = 0; b1 < remove2.length; b1++) {
  366. remove2[b1].remove();
  367. }}
  368. console.log('Фикс прошёл успешно')
  369. }
  370.  
  371. function audio(){
  372. var audio = document.querySelector('ol li a[href*="audios"]')
  373. if (audio){
  374. audio.href = 'https://vk.com/audio?section=all';
  375. }}
  376.  
  377.  
  378. function de(){
  379. var deluser = document.getElementById('page_current_info');
  380. var delimg = document.querySelector('img.page_avatar_img');
  381. if (deluser!==null||undefined){
  382. if (deluser.textContent == 'Страница удалена'){
  383. delimg.src = 'https://dl.dropbox.com/s/089xk7q48rve2cl/deactivated_200.gif';
  384. //console.log('test');
  385. }}}
  386.  
  387. function titl(){
  388. var title =document.title;
  389. var list = document.querySelectorAll('link[rel="icon"], link[rel="shortcut icon"]');
  390. list.forEach(function(element) {
  391. element.setAttribute('href', 'https://web.archive.org/web/20191213152945im_/https://vk.com/images/icons/favicons/fav_logo.ico?6');
  392. });
  393. if (title =='Мессенджер'){
  394. document.title ='Сообщения';
  395. }
  396. if (title.match('Сообщества')){
  397. document.title ='Группы';
  398. }}
  399. /// ПОНРАВИЛОСЬ
  400.  
  401.  
  402.  
  403. var KPP = {
  404. _list: [],
  405. _actions: [],
  406. _addedTag: function (observer, mutations, tag, callback, once) {
  407. for (var i = 0, l = mutations.length; i < l; i++) {
  408. for (var j = 0, m = mutations[i].addedNodes.length; j < m; j++) {
  409. if (mutations[i].addedNodes[j].tagName === tag) {
  410. callback();
  411. if (once) observer.disconnect();
  412. }
  413. }
  414. }
  415. },
  416. _police: new MutationObserver(function (mutations) {
  417. for (var i = 0, l = mutations.length; i < l; i++) {
  418. for (var j = 0, m = mutations[i].addedNodes.length; j < m; j++) {
  419. if (mutations[i].addedNodes[j].nodeType === 1) {
  420. for (var k = KPP._list.length; k--;) {
  421. if (mutations[i].addedNodes[j].matches(KPP._list[k])) { // Обрабатывает только существующие элементы до DOMContentLoaded
  422. if (!mutations[i].addedNodes[j].KPPPassed) {
  423. KPP._actions[k](mutations[i].addedNodes[j]);
  424. mutations[i].addedNodes[j].KPPPassed = true;
  425. }
  426. } else {
  427. var n = mutations[i].addedNodes[j].querySelectorAll(KPP._list[k]);
  428. for (var o = 0, p = n.length; o < p; o++) {
  429. if (!n[o].KPPPassed) {
  430. KPP._actions[k](n[o]);
  431. n[o].KPPPassed = true;
  432. }
  433. }
  434. }
  435. //if (n.length > 0) break
  436. }
  437. }
  438. }
  439. }
  440. }),
  441. head: function (callback) {
  442. if (!document.head) {
  443. var observer = new MutationObserver(function (mutations, observer) {
  444. KPP._addedTag(observer, mutations, 'HEAD', callback, true)
  445. });
  446. observer.observe(document.documentElement, {childList: true});
  447. } else callback();
  448. },
  449. body: function (callback) {
  450. if (!document.body) {
  451. var observer = new MutationObserver(function (mutations, observer) {
  452. KPP._addedTag(observer, mutations, 'BODY', callback, true)
  453. });
  454. observer.observe(document.documentElement, {childList: true});
  455. } else callback();
  456. },
  457. add: function (selector, callback) {
  458. var q = document.querySelectorAll(selector);
  459. if (q.length > 0) {
  460. for (var i = q.length; i--;) {
  461. callback(q[i]);
  462. }
  463. }
  464. KPP._list.push(selector);
  465. KPP._actions.push(callback);
  466. KPP._police.observe(document.documentElement, {childList: true, subtree: true})
  467. },
  468. remove: function (selector) {
  469. var s = KPP._list.indexOf(selector);
  470. if (s !== -1) {
  471. KPP._list.splice(s, 1);
  472. KPP._actions.splice(s, 1);
  473. if (KPP._list.length < 1)
  474. KPP._police.disconnect();
  475. return true
  476. }
  477. return false
  478. },
  479. stop: function (full) {
  480. KPP._police.disconnect();
  481. if (full) {
  482. KPP._list = [];
  483. KPP._actions = [];
  484. }
  485. }
  486. };
  487. function sleep(millis) {
  488. var t = (new Date()).getTime();
  489. var i = 0;
  490. while (((new Date()).getTime() - t) < millis) {
  491. i++;
  492. }
  493. }
  494.  
  495.  
  496. KPP.add('.PostButtonReactions', function (reactions) {
  497. var count = reactions.dataset.reactionCounts;
  498. if (count && !(reactions.dataset.reactionButtonTextIsCounter)) {
  499. count = JSON.parse(count);
  500. if (!Array.isArray(count)) {
  501. count = Object.values(count)
  502. }
  503. var likes = count.reduce(function(previous, current) {
  504. return previous + current
  505. })
  506. reactions.getElementsByClassName('PostButtonReactions__title')[0].textContent = likes;
  507. }
  508. reactions.dataset.reactionButtonTextIsCounter = '1';
  509.  
  510. var target = reactions.dataset.reactionTargetObject;
  511. if (target) {
  512. reactions.setAttribute('onmouseover','Likes.showLikes(this,\'' + target + '\')')
  513. }
  514. });
  515.  
  516. /// Очисктка консоли
  517. function clear(){
  518. console.clear();
  519. //console.log('Console cleared');
  520. }
  521. ///НАСТРОЙКИ
  522. function settings_update(){
  523. var t = document.querySelector('.im-page--dialogs._im_page_dialogs.page_block');
  524. var t2 = document.querySelector('button.im-page--dialogs-header-control.im-page--dialogs-header-control_call._im_create_call');
  525. var t3 = document.querySelector('a.ui_actions_menu_item.im-action.im-action_messenger_settings._im_search_more_action');
  526. var names = document.querySelector('.top_profile_vkconnect_name');
  527. var jk = document.querySelector('a.ui_rmenu_item._ui_item_unread.imptfix');
  528. var div = document.createElement('div');
  529. var div2 = document.createElement('div');
  530. var a = document.createElement('a');
  531. var a2 = document.createElement('a');
  532. var h2 = document.querySelector('div#setfx');
  533.  
  534.  
  535. t3.style.display='none';
  536. //t2.remove();
  537. div.style = 'height:45px;border-top-color:rgb(228, 230, 233);bottom:0px;position:fixed;width:550px;max-width:550px;box-sizing: border-box; -moz-box-sizing: border-box; -ms-box-sizing: border-box; font-size:12.5px;z-index:102;background-color: rgb(255, 255, 255); border-width: 1px medium medium; border-style: solid none none; padding: 16px 20px; ';
  538. div.id = 'setfx'
  539. a.style = 'color:rgb(42, 88, 133);text-decoration:none;cursor:pointer;background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAMAAABhEH5lAAAAWlBMVEUAAACSormTo7yRobqAn5+ToruTo7ySoruSkraRoLqSo7yRortVVapmmZmTo7uTorySoruToruSoryTorySo7uSorwAAACSoruToruAgICSoryTobySo7ySorvlwXDZAAAAHnRSTlMATf5RCHH/fAdD9o4DBZ6qg/XJ5+a9Ad6ZBJ996I/QAalFAAAAj0lEQVR4AXWQhQGEMAwAgx3uDu3+a37adzuoxRO5EYRhJE9iXQmkemTiyYuyqhtoa+n6XJSsh2FEmWboY1E6XijFsaiSddtWYKi8aJ/g0LjxAWPtsicNrCpR2QpNEkiIsolnQwl/iaKzvTtmK7Spa6K+hc8OMLV4vot4K9X+aygv7K3tRdt+G855G86PEV4AnswInNZD9fcAAAAASUVORK5CYII=");background-color: transparent; width:18px;height:18px;display:block;float:right;-webkit-animation-name:none;-webkit-animation-duration:initial;-webkit-animation-timing-function:initial;-webkit-animation-delay:initial;-webkit-animation-iteration-count:initial;-webkit-animation-direction:initial;-webkit-animation-fill-mode:initial;margin: -3px 0px 14px 14px; ';
  540. a2.style = 'color:rgb(42, 88, 133);text-decoration:none;cursor:pointer;';
  541. a2.innerHTML = 'Отключить звуковые уведомления';
  542. a2.setAttribute('id', 'ubf');
  543.  
  544. if (jk==null||undefined){
  545. important();
  546. }
  547. if (t !== null||undefined){
  548. //console.log(div);
  549. if (h2 == null||undefined){
  550. t.appendChild(div);
  551. div.appendChild(div2);
  552. div2.appendChild(a);
  553. div2.appendChild(a2);
  554. a2.addEventListener("click", settings, false);
  555. h2 = document.querySelector('div#setfx');
  556. function settings (){
  557. t3.click();
  558. none();
  559. }}}}
  560.  
  561.  
  562.  
  563. //ADS
  564. function ads_remove(){
  565. var ads = document.querySelectorAll('[data-ad-view]');
  566. var ads2 = document.querySelectorAll('#ads_left,a#feed_blog_reminder,div#games_catalog_header_content,.page_block.apps_feedRightAppsBlock.apps_feedRightAppsBlock_new_apps,div#apps_featured_banner,.page_block.apps_feedRightAppsBlock.apps_feedRightAppsBlock_single_app.apps_feedRightAppsBlock_single_app--,.page_block.apps_feedRightAppsBlock.apps_feedRightAppsBlock_continue_apps');
  567. var ads3 = document.querySelectorAll('[data-ad],#feed_filters,.page_block.apps_feedRightAppsBlock.apps_feedRightAppsBlock_new_apps,#feed_blog_reminder,.page_block.apps_feedRightAppsBlock.apps_feedRightAppsBlock_single_app.apps_feedRightAppsBlock_single_app--promo,.page_block.apps_feedRightAppsBlock.apps_feedRightAppsBlock_single_app.apps_feedRightAppsBlock_single_app--,.page_block.apps_feedRightAppsBlock.apps_feedRightAppsBlock_new_apps');
  568.  
  569. var i;
  570. var i2;
  571. //console.log(ads3);
  572. for (i = 0; i < ads.length; i++) {
  573. ads[i].style.display = "none";
  574. }
  575. for (i2 = 0; i2 < ads2.length; i2++) {
  576. ads2[i2].style.display = "none";
  577. }}
  578.  
  579.  
  580.  
  581. // LIKES
  582. var i20
  583. function changeBgImg(){
  584. var like_anim_cls = document.querySelectorAll('.PostButtonReactions__icon.PostButtonReactions__icon--custom.PostButtonReactions__icon--animationActive,.PostButtonReactions__icon.PostButtonReactions__icon--custom');
  585. //console.log(like_anim_cls);
  586. for (i20 = 0; i20 < like_anim_cls.length; i20++) {
  587. like_anim_cls[i20].style.backgroundImage='url(data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D%220%200%2024%2024%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22m0%200h24v24h-24z%22%20fill%3D%22none%22%2F%3E%3Cpath%20d%3D%22m17%202.9a6.43%206.43%200%200%201%206.4%206.43c0%203.57-1.43%205.36-7.45%2010l-2.78%202.16a1.9%201.9%200%200%201%20-2.33%200l-2.79-2.12c-6.05-4.68-7.45-6.47-7.45-10.04a6.43%206.43%200%200%201%206.4-6.43%205.7%205.7%200%200%201%205%203.1%205.7%205.7%200%200%201%205-3.1z%22%20fill%3D%22%23ff3347%22%2F%3E%3C%2Fsvg%3E)';
  588. }}
  589. function getRandomInRange(min, max) {
  590. return Math.floor(Math.random() * (max - min + 1)) + min;
  591. }
  592.  
  593.  
  594.  
  595.  
  596. // ...
  597. function dot(){
  598. var button = document.querySelector('.page_actions_wide.no_actions .page_action_left');
  599. var div = document.createElement('a');
  600. var area2 = document.querySelectorAll('a.PageActionCell');
  601. var area = document.querySelector('.page_actions_expanded._page_actions_container');
  602. if (document.querySelector('.owner_photo_bubble')){
  603. if (document.querySelector('a.FlatButton.FlatButton--secondary.FlatButton--size-m.FlatButton--wide.dotbtn')){
  604. // Элемент уже создан
  605. }else{
  606. area.classList.toggle("hidden-block");
  607. div.className ='FlatButton FlatButton--secondary FlatButton--size-m FlatButton--wide dotbtn dot';
  608. div.innerHTML = '<span class="FlatButton__in"> <span class="FlatButton__content"></span> </span>';
  609. button.appendChild(div);
  610. div.addEventListener("click",test, false);
  611. if (area[4]){
  612. area2[4].click();
  613. }}}else{
  614. div.remove();
  615. }}
  616. function test(){
  617. var rand
  618. rand = getRandomInRange(0, 4)
  619. switch (rand){
  620. case 0: alert('Эй!!!');
  621. break;
  622. case 1: alert('Зачем ты на меня кликаешь?');
  623. break;
  624. case 2:alert('Что ты делаешь?! НЕ КЛИКАЙ НА МЕНЯ');
  625. break;
  626. case 3:alert('Тебе больше нечем заняться?');
  627. break;
  628. case 4:alert('Отстань от меня!!!');
  629. }
  630. }
  631.  
  632.  
  633.  
  634.