Przeróbka nowego YouTube

Podnosi pasek akcji na pasek przycisku subskrypcji, stale wyświetla ilość subskrypcji a do daty dodaje pełną nazwą miesiąca.

当前为 2014-09-03 提交的版本,查看 最新版本

  1. // ==UserScript==
  2. // @name Przeróbka nowego YouTube
  3. // @description Podnosi pasek akcji na pasek przycisku subskrypcji, stale wyświetla ilość subskrypcji a do daty dodaje pełną nazwą miesiąca.
  4. // @version 5.03.089
  5. // @author look997
  6. // @license MIT License
  7. // @resource metadata https://github.com/look997/PNYT/raw/master/pnyt.user.js
  8. // @include *youtube.com/*
  9. // @date 2014-09-04
  10. // @grant none
  11. // @namespace https://greasyfork.org/users/4353
  12. // ==/UserScript==
  13. "use strict";
  14.  
  15. document.cookie = "wide=1; domain=.youtube.com";
  16. function $(a) {return document.getElementById(a);}
  17. $("watch7-container").className = "watch-wide";
  18.  
  19.  
  20. function glFun () { // GŁÓWNA FUNKCJA
  21. dodajStyl('dataDodSId',''
  22. +"#watch8-secondary-actions .yt-uix-button-content { display: none; }"
  23. // auto hide
  24. +"#watch7-user-header:hover #watch8-action-buttons { visibility: visible !important; }"
  25. +"#watch8-action-buttons { visibility: hidden !important; }" // Domyślnie ukryty pasek akcji
  26. // Podniesienie i dopasowanie paska akcji
  27. +"#watch8-secondary-actions { position: relative; }"
  28. //+"#watch7-views-info { top: -8px !important; bottom: auto !important; right: 0px !important; }"
  29. +"#watch7-views-info { bottom: 31px !important; width: 192px !important; }"
  30. +"#watch7-user-header { padding-bottom: 3px !important; }"
  31. +"#watch8-action-buttons { display: inline; padding-top: 0px; border-top: none; }"
  32. +"#watch8-action-buttons:after,"
  33. +"#watch8-action-buttons:before { content: none !important; }"
  34. +"#watch8-secondary-actions .yt-uix-button { padding: 0px 0px !important; }"
  35. // Stałe wyświetlanie liczby subskrybcji kanału autora filmu
  36. +".yt-subscription-button-subscriber-count-branded-horizontal, .html5-text-button, .yt-subscription-button-subscriber-count-unbranded { display: inline-block !important; }"
  37. // Skok do aktualnie odtwarzanego elementu na playliście
  38. +" .watch-wide #watch-appbar-playlist .playlist-videos-list { "
  39. +" height: 490px !important; "
  40. +" } "
  41. +" .watch-wide #watch-appbar-playlist { "
  42. +" min-height: 592px !important; "
  43. +" } "
  44. +" #watch-appbar-playlist .playlist-videos-list { "
  45. +" max-height: 490px !important; "
  46. +" } "
  47. );
  48. document.querySelector("#watch7-user-header").appendChild(document.querySelector("#watch8-action-buttons"));
  49. document.querySelector("#watch7-user-header").appendChild(document.querySelector("#watch8-sentiment-actions"));
  50. document.querySelector("#watch7-user-header").appendChild(document.querySelector("#watch7-views-info"));
  51. var addBut = document.querySelector("#watch8-secondary-actions .addto-button .yt-uix-button-content").textContent;
  52. var shareBut = document.querySelector('#watch8-secondary-actions [data-trigger-for="action-panel-share"] .yt-uix-button-content').textContent;
  53. var moreBut = document.querySelector('#action-panel-overflow-button .yt-uix-button-content').textContent;
  54. var addBut = document.querySelector("#watch8-secondary-actions .addto-button").title = addBut;
  55. var shareBut = document.querySelector('#watch8-secondary-actions [data-trigger-for="action-panel-share"]').title = shareBut;
  56. var shareBut = document.querySelector('#action-panel-overflow-button').title = moreBut;
  57. // Pełna nazwa miesiąca dodania filmu
  58. var infoDate = document.querySelector("#watch-uploader-info strong");
  59. var datfilm = infoDate.textContent;
  60. var odatmies = datfilm.substring(datfilm.length-8, datfilm.length-5);
  61. switch (odatmies){
  62. case 'sty': var datmies = "stycznia"; break;
  63. case 'lut': var datmies = "lutego"; break;
  64. case 'mar': var datmies = "marca"; break;
  65. case 'kwi': var datmies = "kwietnia"; break;
  66. case 'maj': var datmies = "maja"; break;
  67. case 'cze': var datmies = "czerwca"; break;
  68. case 'lip': var datmies = "lipca"; break;
  69. case 'sie': var datmies = "sierpnia"; break;
  70. case 'wrz': var datmies = "września"; break;
  71. case 'paź': var datmies = "października"; break;
  72. case 'lis': var datmies = "listopada"; break;
  73. case 'gru': var datmies = "grudnia"; break;
  74. default: var datmies = odatmies;
  75. }
  76. infoDate.textContent = datfilm.replace(odatmies, datmies);
  77. // Playlista
  78. // ...
  79. }
  80.  
  81.  
  82. function dodajStyl (idStyle,styles) { // Dodanie stylu
  83. if(document.getElementById(idStyle)){ document.getElementsByTagName("head")[0].removeChild(document.getElementById(idStyle)); }
  84. var css = document.createElement('style'); css.type = 'text/css'; css.id = idStyle;
  85. css.styleSheet ? css.styleSheet.cssText = styles : css.appendChild( document.createTextNode(styles) );
  86. document.getElementsByTagName("head")[0].appendChild(css);
  87. }
  88.  
  89.  
  90. function readCookie (name) {
  91. var nameEQ = name + "=";
  92. var ca = document.cookie.split(';');
  93. for(var i=0;i < ca.length;i++) {
  94. var c = ca[i];
  95. while (c.charAt(0)==' ') c = c.substring(1,c.length);
  96. if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
  97. }
  98. return null;
  99. }
  100.  
  101. document.addEventListener("DOMContentLoaded", glFun);