Advertisement
Guest User

Untitled

a guest
Oct 22nd, 2014
152
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.97 KB | None | 0 0
  1. //
  2. // _| _| _| _|_|_| _| _|
  3. // _| _| _| _| _|_|_| _|_|_| _|_|_|_|
  4. // _| _| _| _| _| _| _| _| _|
  5. // _| _| _| _| _| _| _| _| _| _|
  6. // _|_| _| _|_|_| _| _| _|_|_| _|_|
  7. //
  8. //
  9. // JV Flux présente JV Chat <http://jvflux.com/jvchat/>,
  10. // discutez en temps réel sur les forums de jeuxvideo.com.
  11. // charset: utf-8
  12. //
  13. // Copyright (c) 2011 JV Flux <http://jvflux.com/> Tous droits réservés
  14. //
  15. // --------------------------------------------------------------------
  16. //
  17. // ==UserScript==
  18. // @name JV Chat Loader
  19. // @namespace http://jvflux.com/jvchat/
  20. // @description Discussions en temps réel sur les forums de jeuxvideo.com
  21. // @version 1.2
  22. // @include http://www.jeuxvideo.com/forums/0-*
  23. // @include http://www.jeuxvideo.com/forums/1-*
  24. // @include http://www.jeuxvideo.com/forums/3-*
  25. // @include http://www.jeuxvideo.com/jvchat*
  26. // ==/UserScript==
  27.  
  28. /* Variables */
  29. window._jvchat = window._jvchat || {};
  30. var i, elems, elem;
  31.  
  32. /* Variables url */
  33. var url = location.href.split('/').pop();
  34. var url_parts = url.split('-');
  35.  
  36.  
  37. if (location.pathname == '/jvchat') {
  38. /* On est sur le module JV Chat */
  39.  
  40. /* Chargement de la dernière version */
  41. elem = document.createElement('script');
  42. elem.src = '//'+(document.getElementById('_jvchat_localhost') ? '127.0.0.1' : 'limera1n.free.fr')+'/JVChat.js';
  43. document.body.appendChild(elem);
  44. }
  45. else if (url_parts.length >= 6) {
  46. /* On est sur une page de forum */
  47.  
  48. var url_parts_names = ['mode', 'forum', 'topic', 'page', 'zero', 'index'];
  49. for (i in url_parts_names) {
  50. if (i >= url_parts.length) {
  51. break;
  52. }
  53. eval('url_'+url_parts_names[i]+' = '+url_parts[i]+';');
  54. }
  55.  
  56.  
  57. /* Liens sur la liste des topics */
  58. if (url_mode === 0 && url_index === 1) { // première page uniquement
  59. elems = document.getElementsByClassName('navig_prec');
  60. for (i in elems) {
  61. elems[i].innerHTML = '<a target="jvchat" class="jvchat" href="/jvchat#'+url+'">JV Chat</a>';
  62. }
  63. }
  64.  
  65. /* Liens à côté des boutons alerte mail */
  66. if (url_mode === 1 && document.getElementsByClassName('bt_repondre').length > 0) { // pas sur topics bloqués
  67. elems = document.getElementsByClassName('moder');
  68. for (i in elems) {
  69. //alert(typeof elems[i]);
  70.  
  71. if (typeof elems[i] == 'object') {
  72. //elems[i].innerHTML += '<a target="jvchat" class="jvchat" href="/jvchat#'+url+'">JV Chat</a>';
  73. elem = document.createElement('a');
  74. elem.setAttribute('target', 'jvchat');
  75. elem.setAttribute('class', 'jvchat');
  76. elem.setAttribute('href', '/jvchat#'+url);
  77. elem.appendChild(document.createTextNode('JV Chat'));
  78. elems[i].appendChild(elem);
  79. }
  80. }
  81. }
  82.  
  83. /* Lien en bas du formulaire de réponse (mode 3), à côté de la liste des smileys */
  84. elems = document.getElementsByClassName('lien_base');
  85. if (url_mode === 3
  86. && elems.length
  87. && elems[0].getElementsByTagName('a').length
  88. && elems[0].getElementsByTagName('a')[0].href === 'http://www.jeuxvideo.com/smileys/legende.htm') {
  89. elems[0].innerHTML += ' | <a target="jvchat" class="jvchat" href="/jvchat#'+url+'">JV Chat</a>';
  90. }
  91.  
  92. /* Lien dans la liste des forums */
  93. if (0) {
  94. elem = document.getElementById('liste_forums') || document.getElementById('liste_forums_pref');
  95. if (elem !== null) {
  96. elem.innerHTML += '<li><a target="jvchat" class="jvchat" href="/jvchat#">JV Chat</a><li>';
  97. }
  98. }
  99.  
  100. /* Stylisation des liens */
  101. elem = document.createElement('style');
  102. elem.setAttribute('type', 'text/css');
  103. elem.innerHTML = '/* CSS généré par JV Chat */ \
  104. .moder .jvchat, .navig_prec .jvchat { color: #666; font-weight: bold; border: 1px solid white; border-top-right-radius: 5px; border-bottom-left-radius: 5px; } \
  105. .moder .jvchat { padding: 1px 15px; } \
  106. .navig_prec .jvchat { padding: 1px 5px; } \
  107. .moder .jvchat:hover, .navig_prec .jvchat:hover { color: #333 !important; border-color: #ccc; \
  108. background: -moz-linear-gradient(top, #fff 0%, #eee 50%, #e8e8e8 50%, #e8e8e8 100%); \
  109. background: -webkit-linear-gradient(top, #fff 0%,#eee 50%,#e8e8e8 50%,#e8e8e8 100%); \
  110. background: -o-linear-gradient(top, #fff 0%,#eee 50%,#e8e8e8 50%,#e8e8e8 100%); \
  111. background: -ms-linear-gradient(top, #fff 0%,#eee 50%,#e8e8e8 50%,#e8e8e8 100%); \
  112. background: linear-gradient(top, #fff 0%,#eee 50%,#e8e8e8 50%,#e8e8e8 100%); \
  113. filter: progid:DXImageTransform.Microsoft.gradient( startColorstr=\'#fff\', endColorstr=\'#e8e8e8\',GradientType=0 ); \
  114. } \
  115. .moder .jvchat:active, .navig_prec .jvchat:active { background: #ddd; } \
  116. .lien_base .jvchat:hover { color: #333 !important; } \
  117. .lien_base .jvchat:active { background: #e8e8e8; } \
  118. ';
  119. document.getElementsByTagName('head')[0].appendChild(elem);
  120. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement