Whatsapp Tool all in one Changue background chats and more

Whatsapp Tool all in one Changue background chats and moree

  1. // ==UserScript==
  2. // @name Whatsapp Tool all in one
  3. // @name:zh-TW Whatsapp Tool all in one Changue background chats and more
  4. // @name:zh-HK Whatsapp Tool all in one Changue background chats and more
  5. // @name:zh-CN Whatsapp Tool all in one Changue background chats and more
  6. // @name:ja Whatsapp Tool all in one Changue background chats and more
  7. // @name:kr Whatsapp Tool all in one Changue background chats and more
  8. // @name:ar Whatsapp Tool all in one Changue background chats and more
  9. // @name:bg Whatsapp Tool all in one Changue background chats and more
  10. // @name:cs Whatsapp Tool all in one Changue background chats and more
  11. // @name:da Whatsapp Tool all in one Changue background chats and more
  12. // @name:de Whatsapp Tool all in one Changue background chats and more
  13. // @name:el Whatsapp Tool all in one Changue background chats and more
  14. // @name:eo Whatsapp Tool all in one Changue background chats and more
  15. // @name:es Whatsapp Tool all in one Changue background chats and more
  16. // @name:fi Whatsapp Tool all in one Changue background chats and more
  17. // @name:fr Whatsapp Tool all in one Changue background chats and more
  18. // @name:fr-CA Whatsapp Tool all in one Changue background chats and more
  19. // @name:he Whatsapp Tool all in one Changue background chats and more
  20. // @name:hu Whatsapp Tool all in one Changue background chats and more
  21. // @name:id Whatsapp Tool all in one Changue background chats and more
  22. // @name:it Whatsapp Tool all in one Changue background chats and more
  23. // @name:ko Whatsapp Tool all in one Changue background chats and more
  24. // @name:nb Whatsapp Tool all in one Changue background chats and more
  25. // @name:nl Whatsapp Tool all in one Changue background chats and more
  26. // @name:pl Whatsapp Tool all in one Changue background chats and more
  27. // @name:pt-BR Whatsapp Tool all in one Changue background chats and more
  28. // @name:ro Whatsapp Tool all in one Changue background chats and more
  29. // @name:ru Whatsapp Tool all in one Changue background chats and more
  30. // @name:sk Whatsapp Tool all in one Changue background chats and more
  31. // @name:sr Whatsapp Tool all in one Changue background chats and more
  32. // @name:sv Whatsapp Tool all in one Changue background chats and more
  33. // @name:th Whatsapp Tool all in one Changue background chats and more
  34. // @name:tr Whatsapp Tool all in one Changue background chats and more
  35. // @name:uk Whatsapp Tool all in one Changue background chats and more
  36. // @name:ug Whatsapp Tool all in one Changue background chats and more
  37. // @name:vi Whatsapp Tool all in one Changue background chats and more
  38. // @description Whatsapp Tool all in one Changue background chats and moree
  39. // @description:ar Whatsapp Tool all in one Changue background chats and moree
  40. // @description:bg Whatsapp Tool all in one Changue background chats and moree
  41. // @description:da Whatsapp Tool all in one Changue background chats and moree
  42. // @description:de Whatsapp Tool all in one Changue background chats and moree
  43. // @description:el Whatsapp Tool all in one Changue background chats and moree
  44. // @description:eo Whatsapp Tool all in one Changue background chats and moree
  45. // @description:fi Whatsapp Tool all in one Changue background chats and moree
  46. // @description:fr-CA Whatsapp Tool all in one Changue background chats and moree
  47. // @description:he Whatsapp Tool all in one Changue background chats and moree
  48. // @description:hu Whatsapp Tool all in one Changue background chats and moree
  49. // @description:id Whatsapp Tool all in one Changue background chats and moree
  50. // @description:it Whatsapp Tool all in one Changue background chats and moree
  51. // @description:ko Whatsapp Tool all in one Changue background chats and moree
  52. // @description:nb Whatsapp Tool all in one Changue background chats and moree
  53. // @description:nl Whatsapp Tool all in one Changue background chats and moree
  54. // @description:pl Whatsapp Tool all in one Changue background chats and moree
  55. // @description:pt-BR Whatsapp Tool all in one Changue background chats and moree
  56. // @description:ro Whatsapp Tool all in one Changue background chats and moree
  57. // @description:ru Whatsapp Tool all in one Changue background chats and moree
  58. // @description:sk Whatsapp Tool all in one Changue background chats and moree
  59. // @description:sr Whatsapp Tool all in one Changue background chats and moree
  60. // @description:sv Whatsapp Tool all in one Changue background chats and moree
  61. // @description:th Whatsapp Tool all in one Changue background chats and moree
  62. // @description:tr Whatsapp Tool all in one Changue background chats and moree
  63. // @description:uk Whatsapp Tool all in one Changue background chats and moree
  64. // @description:ug Whatsapp Tool all in one Changue background chats and moree
  65. // @description:vi Whatsapp Tool all in one Changue background chats and moree
  66. // @homepage https://github.com/DeveloperMDCM/
  67. // @version 1.4
  68. // @description:zh-TW Whatsapp Tool all in one Changue background chats and moree
  69. // @description:zh-HK Whatsapp Tool all in one Changue background chats and moree
  70. // @description:zh-CN Whatsapp Tool all in one Changue background chats and moree
  71. // @description:ja Whatsapp Tool all in one Changue background chats and moree
  72. // @description:kr Whatsapp Tool all in one Changue background chats and moree
  73. // @description:fr Whatsapp Tool all in one Changue background chats and moree
  74. // @description:cs Whatsapp Tool all in one Changue background chats and moree
  75. // @description:en Whatsapp Tool all in one Changue background chats and moree
  76. // @description:es Whatsapp Tool all in one Changue background chats and moree
  77. // @author MDCM
  78. // @match *://*.whatsapp.com/
  79. // @icon https://cdn-icons-png.flaticon.com/512/124/124034.png?w=360
  80. // @grant GM_info
  81. // @grant GM_setValue
  82. // @grant GM_getValue
  83. // @grant unsafeWindow
  84. // @run-at document-end
  85. // @compatible chrome
  86. // @compatible firefox
  87. // @compatible opera
  88. // @compatible safari
  89. // @compatible edge
  90. // @connect https://web.whatsapp.com/
  91. // @license MIT
  92. // @namespace https://github.com/DeveloperMDCM/
  93. // ==/UserScript==
  94.  
  95.  
  96.  
  97.  
  98. (function () {
  99. // Whatsapp tools by: DeveloperMDCM MDCM
  100. //https://github.com/DeveloperMDCM/whatsapp-web-tools
  101. function cargarScript() {
  102. let htmlCss = `
  103. <!DOCTYPE html>
  104. <html lang="en">
  105. <head>
  106. <meta charset="UTF-8">
  107. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  108. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  109. <title>Whataspp</title>
  110.  
  111. </head>
  112. <style>
  113. #btn-mas{
  114. display: none;
  115. }
  116. .cotenido{
  117. position: fixed;
  118. bottom: 10px;
  119. left: 20px;
  120. z-index:99;
  121. width: 0;
  122. }
  123. .redes {
  124. display: flex;
  125. flex-direction: column;
  126. width: 250px;
  127. opacity: 0;
  128. transition: all 500ms ease;
  129. visibility: hidden;
  130. box-shadow: 0px 1px 10px rgba(0,0,0,0.4);
  131. border-radius: 10px;
  132. color: #fff;
  133. background: #fff;
  134.  
  135. }
  136. .redes .encabezado{
  137. display: flex;
  138. flex-direction: column;
  139. background: #202c33;
  140. color: #fff;
  141. padding: 15px 10px;
  142. border-radius: 10px 10px 0px 0px;
  143. }
  144. .redes .encabezado b{
  145. font-size: 20px;
  146. padding-bottom: 5px;
  147. }
  148. .redes .agentes i{
  149. font-size: 25px;
  150. padding: 10px;
  151. margin: 5px 10px;
  152. color: #fff;
  153. background: #06872a;
  154. border-radius: 100px;
  155.  
  156. }
  157. .redes .agentes ul{
  158. list-style: none;
  159.  
  160.  
  161. }
  162. .agentes{
  163. overflow: auto;
  164. max-height: 300px;
  165.  
  166. }
  167. .redes .agentes li{
  168. color: #000;
  169. font-size: 18px;
  170. font-weight: 500;
  171. }
  172. .redes .agentes a{
  173. color: #585858;
  174. text-decoration: none;
  175. cursor: pointer;
  176. display: flex;
  177. justify-content: space-around;
  178. align-items: center;
  179. }
  180. .redes .agentes a:hover{
  181. color: #000;
  182. }
  183. .redes .agentes::-webkit-scrollbar {
  184. -webkit-appearance: none;
  185. }
  186.  
  187. .redes .agentes::-webkit-scrollbar:vertical {
  188. width:10px;
  189. }
  190.  
  191. .redes .agentes::-webkit-scrollbar-button:increment,.redes .agentes::-webkit-scrollbar-button {
  192. display: none;
  193. }
  194.  
  195. .redes .agentes::-webkit-scrollbar:horizontal {
  196. height: 10px;
  197. }
  198.  
  199. .redes .agentes::-webkit-scrollbar-thumb {
  200. background-color: #777;
  201. border-radius: 20px;
  202. border: 2px solid #777;
  203. }
  204.  
  205. .redes .agentes::-webkit-scrollbar-track {
  206. border-radius: 10px;
  207. }
  208.  
  209.  
  210.  
  211. #btn-mas:checked~ .redes {
  212. margin-bottom: 5px;
  213. opacity: 1;
  214. visibility: visible;
  215. }
  216.  
  217.  
  218.  
  219. ul a img {
  220. margin: 5px 0;
  221. }
  222.  
  223. ul li a #files{
  224. position: absolute;
  225. opacity: 0;
  226. }
  227. ul li a #colores{
  228. position: absolute;
  229. width: 245px;
  230. opacity: 0;
  231. }
  232.  
  233. a:hover {
  234. background-color: #9d9999;
  235.  
  236. }
  237. </style>
  238. <body>
  239. <div class="cotenido">
  240. <input type="checkbox" id="btn-mas">
  241. <div class="redes">
  242. <div class="encabezado">
  243. <b>WhatsApp Tools</b>
  244. <b>DeveloperMDCM💻</b>
  245. <p> Configuracion para Whataspp</p>
  246. </div>
  247. <form>
  248. <div class="agentes">
  249. <ul>
  250. <li><a ><img width="35" src="https://cdn-icons-png.flaticon.com/512/2659/2659360.png" alt="" ><input type="file" id="files" name="files" multiple /><p>Background Chats</p></a></li>
  251. <li><a ><img width="35" src="https://cdn-icons-png.flaticon.com/512/1026/1026494.png" alt="" ><input list type="color" id="colores" /><p>Colores Fondo / BG</p></a></li>
  252. <li><a id="tema_sistema" ><img width="35" src="https://cdn-icons-png.flaticon.com/512/1982/1982517.png" alt="" ><p>Theme Light / Dark</p></a></li>
  253. <li><a ><img width="35" src="https://cdn-icons-png.flaticon.com/512/4004/4004693.png" alt="" ><p>(Ctrl+Alt) hidden chats</p></a></li>
  254. <li><a ><img width="35" src="https://cdn-icons-png.flaticon.com/512/6450/6450118.png" alt="" ><p>(Ctrl+Shit) Private chats</p></a></li>
  255. </ul>
  256. </div>
  257. </div>
  258. <div class="btn-mas">
  259. <label for="btn-mas"><img width="50" src="https://cdn-icons-png.flaticon.com/512/4494/4494494.png" alt="" ></label>
  260. </div>
  261. </div>
  262.  
  263.  
  264. </body>
  265. </html>
  266. `;
  267.  
  268. const addButtonFlotant = document.querySelector("#pane-side");
  269.  
  270. if (addButtonFlotant != undefined) {
  271. addButtonFlotant.insertAdjacentHTML("beforebegin", htmlCss);
  272. }
  273.  
  274. let validoPrivacidad = 0;
  275. document.addEventListener("keydown", (e) => {
  276. if (e.ctrlKey && e.keyCode === 16) {
  277. const allDivs = document.querySelector("body");
  278. validoPrivacidad += 1;
  279. switch (validoPrivacidad) {
  280. case 1:
  281. allDivs.style.filter = "blur(10px)";
  282.  
  283. break;
  284. case 2:
  285. allDivs.style.filter = "blur(0)";
  286. validoPrivacidad = 0;
  287. break;
  288. }
  289. }
  290. });
  291.  
  292.  
  293.  
  294. const changeTheme = document.querySelector("#tema_sistema > p");
  295. if(changeTheme != undefined) {
  296. changeTheme.addEventListener("click", () => {
  297. const bodytheme = document.querySelector("body");
  298. const classNamesTheme = document.querySelector("body").classList;
  299. if (classNamesTheme[1] === "dark") {
  300. changeTheme.textContent = "Activate Theme Dark";
  301. bodytheme.classList.remove("dark");
  302. } else {
  303. bodytheme.classList.add("dark");
  304. changeTheme.textContent = "Activate Theme Light";
  305. }
  306. });
  307. }
  308.  
  309. const InputColorOpacity = document.querySelector("#colores");
  310. if(InputColorOpacity != undefined) {
  311. InputColorOpacity.addEventListener("input", function () {
  312. document.body.style.setProperty(
  313. "--conversation-panel-background",
  314. InputColorOpacity.value
  315. );
  316. });
  317. }
  318.  
  319. // // Función para cambiar los estados de un mensaje visto , entregado y leído commin soon
  320. // function cambiarvisto() {
  321. // let visto = document.querySelectorAll(".do8e0lj9.l7jjieqr.k6y3xtnu > span");
  322. // let svgLeido =
  323. // '<svg width="15px" viewBox="0 0 48 48" fill="none" xmlns="http://www.w3.org/2000/svg"><g id="SVGRepo_bgCarrier" stroke-width="0"></g><g id="SVGRepo_tracerCarrier" stroke-linecap="round" stroke-linejoin="round"></g><g id="SVGRepo_iconCarrier"> <rect width="48" height="48" fill="white" fill-opacity="0.01"></rect> <path fill-rule="evenodd" clip-rule="evenodd" d="M24 40.9999C33.9411 40.9999 42 32.6778 42 26.9999C42 21.3219 33.9411 12.9999 24 12.9999C14.0589 12.9999 6 21.3277 6 26.9999C6 32.6721 14.0589 40.9999 24 40.9999Z" fill="#2F88FF" stroke="#000000" stroke-width="4" stroke-linejoin="round"></path> <path d="M24 32.9999C27.3137 32.9999 30 30.3136 30 26.9999C30 23.6862 27.3137 20.9999 24 20.9999C20.6863 20.9999 18 23.6862 18 26.9999C18 30.3136 20.6863 32.9999 24 32.9999Z" fill="#43CCF8" stroke="white" stroke-width="4" stroke-linejoin="round"></path> <path d="M13.2637 11.266L15.8582 14.8862" stroke="#000000" stroke-width="4" stroke-linecap="round"></path> <path d="M35.625 11.7103L33.0304 15.3305" stroke="#000000" stroke-width="4" stroke-linecap="round"></path> <path d="M24.0088 6.99988V12.9999" stroke="#000000" stroke-width="4" stroke-linecap="round"></path> </g></svg>';
  324. // let svgEntregado =
  325. // '<svg width="15px" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><g id="SVGRepo_bgCarrier" stroke-width="0"></g><g id="SVGRepo_tracerCarrier" stroke-linecap="round" stroke-linejoin="round"></g><g id="SVGRepo_iconCarrier"> <path d="M9.76406 5.29519C10.4664 5.10724 11.2123 5 12 5C18.3636 5 22 12 22 12C22 12 21.171 13.5958 19.612 15.2635M4.34912 8.77822C2.8152 10.4307 2 12 2 12C2 12 5.63636 19 12 19C12.8021 19 13.5608 18.8888 14.2744 18.6944M11.5 14.9585C10.4158 14.7766 9.52883 14.0132 9.17071 13M12.5 9.04148C13.7563 9.25224 14.7478 10.2437 14.9585 11.5M3 3L21 21" stroke="#c2c2c2" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path> </g></svg>';
  326. // let svgEnviado =
  327. // '<svg width="15px" fill="#aeaeae" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" stroke="#aeaeae"><g id="SVGRepo_bgCarrier" stroke-width="0"></g><g id="SVGRepo_tracerCarrier" stroke-linecap="round" stroke-linejoin="round"></g><g id="SVGRepo_iconCarrier"><path d="M21.938,10.654a.993.993,0,0,1,0,.692,13.366,13.366,0,0,1-1.081,2.264,1,1,0,1,1-1.714-1.031A11.219,11.219,0,0,0,19.928,11C18.451,7.343,15.373,5,12,5S5.549,7.343,4.072,11a9.315,9.315,0,0,0,6.167,5.787,1,1,0,0,1-.478,1.942,11.393,11.393,0,0,1-7.7-7.383.993.993,0,0,1,0-.692C3.773,6.005,7.674,3,12,3S20.227,6.005,21.938,10.654Zm-2.231,4.639a1,1,0,0,0-1.414,0L17,16.586l-1.293-1.293a1,1,0,0,0-1.414,1.414L15.586,18l-1.293,1.293a1,1,0,0,0,1.414,1.414L17,19.414l1.293,1.293a1,1,0,0,0,1.414-1.414L18.414,18l1.293-1.293A1,1,0,0,0,19.707,15.293ZM9.5,10a1.492,1.492,0,0,1-1.175-.577,4,4,0,1,0,2.1-2.1A1.5,1.5,0,0,1,9.5,10Z"></path></g></svg>';
  328. // for (let i = 1; i < visto.length; i++) {
  329. // visto[i].ariaLabel === " Entregado "
  330. // ? (visto[i].innerHTML = svgEntregado)
  331. // : visto[i].ariaLabel === " Enviado "
  332. // ? (visto[i].innerHTML = svgEnviado)
  333. // : (visto[i].innerHTML = svgLeido);
  334. // }
  335. // }
  336. // Función para cambiar el fondo de los chats
  337. let fondoEnriptado;
  338. function handleFileSelect(evt) {
  339. var files = evt.target.files; // FileList object
  340. // Loop through the FileList and render image files as thumbnails.
  341. for (let i = 0, f; (f = files[i]); i++) {
  342. // Only process image files.
  343. if (!f.type.match("image.*")) {
  344. continue;
  345. }
  346. let reader = new FileReader();
  347. // Closure to capture the file information.
  348. reader.onload = (() => {
  349. return function (e) {
  350. // Render
  351. fondoEnriptado = e.target.result;
  352. let chatbg = document.querySelector(
  353. ".lhggkp7q.qq0sjtgm.tkdu00h0.ln8gz9je.ppled2lx.tbmiozwh.fq1kqmrp.shnvsdv4"
  354. ); // Fondo / bg chats
  355. const vista = document.querySelector("#main > header");
  356.  
  357. const ventaIzquierdaChats = document.querySelector("#side");
  358. if (
  359. chatbg != undefined &&
  360. vista != undefined &&
  361. ventaIzquierdaChats != undefined
  362. ) {
  363. document.body.style.setProperty(
  364. "--conversation-panel-background",
  365. "black"
  366. );
  367. document.body.style.setProperty(
  368. "--conversation-panel-border",
  369. "#00f19ce8"
  370. );
  371. document.querySelector(
  372. "#main > div._2gzeB > div > div._5kRIK"
  373. ).style.backgroundColor = "";
  374. document
  375. .querySelector("html[dir] ._5kRIK")
  376. .style.setProperty(
  377. "background-image",
  378. `url('${fondoEnriptado}')`
  379. );
  380. document
  381. .querySelector("html[dir] ._5kRIK")
  382. .style.setProperty("background-size", `cover`);
  383. }
  384. ventaIzquierdaChats.onclick = () => {
  385. document
  386. .querySelector("html[dir] ._5kRIK")
  387. .style.setProperty("background-size", `cover`);
  388. document
  389. .querySelector("html[dir] ._5kRIK")
  390. .style.setProperty(
  391. "background-image",
  392. `url('${fondoEnriptado}')`
  393. );
  394. };
  395. };
  396. })(f);
  397.  
  398. // Read in the image file as a data URL.
  399. reader.readAsDataURL(f);
  400. }
  401. }
  402. document
  403. .getElementById("files")
  404. .addEventListener("change", handleFileSelect, false);
  405. }
  406. let validoChats = 0;
  407.  
  408. document.addEventListener("keydown", (e) => {
  409. if (e.ctrlKey && e.altKey) {
  410. const chats = document.querySelector("#app > div > div > div._2Ts6i._3RGKj");
  411. validoChats += 1;
  412. switch (validoChats) {
  413. case 1:
  414. chats.style.display = "none";
  415. break;
  416. case 2:
  417. chats.style.display = "";
  418. validoChats = 0;
  419. break;
  420. }
  421. }
  422. });
  423. setInterval(() => {
  424. const loadpague = document.querySelector('._1vjYt');
  425. if(!loadpague) {
  426. setTimeout(() => {
  427. cargarScript();
  428. document.querySelector("#app > div > div > div._2Ts6i._2xAQV > div > div > div._3q5qB > div._1vjYt > h1").textContent = 'WhatsApp Web Mod by: DeveloperMDCM'
  429. }, 1000);
  430.  
  431. }
  432. }, 1000);
  433. // cargarScript();
  434. })();