Ce sujet a été résolu
Spawn
2 ans
j'ai mis ça mais en vrai je sais même pas installer le script ayooo
j'ai tampermonkey pourtant mais je suis un 0 en informatique
j'ai tampermonkey pourtant mais je suis un 0 en informatique
il y a 2 ans
Y a au moins un mec qui a testé l'actualisation auto ? Parce que j'ai c/c le script dans tampermokey et ça marche pas malgré que le script soit actif et ce sur 2 navigateurs différents.
il y a 2 ans
Flemme khey, chatgpt m'a dit qu'il n'y a rien de suspect et m'a détaillé l'utilité de chaque ligne du code
Ah pas con ça
Après comme j'ai dit, faites gaffe avec les MAJs automatiques

Après comme j'ai dit, faites gaffe avec les MAJs automatiques

il y a 2 ans
j'ai mis ça mais en vrai je sais même pas installer le script ayooo
j'ai tampermonkey pourtant mais je suis un 0 en informatique
j'ai tampermonkey pourtant mais je suis un 0 en informatique
il y a 2 ans
ANTOlNEFORUM2
2 ans
Le nom du script est On'Chat.
On peut l'interpréter de plusieurs manières :
- La Fusion de Onche et de Chat.
- La phrase "On chat" à interpréter comme "On tchat"
- Le fait de mettre la fonctionnalité 'Chat' sur On
Features :
- Update automatique des messages quand on est sur la dernière page
- Autoscroll quand un nouveau message est posté
- Les messages s'envoient quand on appuie sur la touche 'Entrée'
Script validé et disponible sur JVScript
:
https://jvscript.fr/script/onchat
PS : On oublie pas de dire Merci Antoine
MAJ 17/03 11:20
- L'autoscroll s'applique maintenant que quand la zone de texte est définie
- On peut faire shit + Entrer pour mettre une ligne
On peut l'interpréter de plusieurs manières :
- La Fusion de Onche et de Chat.
- La phrase "On chat" à interpréter comme "On tchat"
- Le fait de mettre la fonctionnalité 'Chat' sur On
Features :
- Update automatique des messages quand on est sur la dernière page
- Autoscroll quand un nouveau message est posté
- Les messages s'envoient quand on appuie sur la touche 'Entrée'
Script validé et disponible sur JVScript
:
PS : On oublie pas de dire Merci Antoine
MAJ 17/03 11:20
- L'autoscroll s'applique maintenant que quand la zone de texte est définie
- On peut faire shit + Entrer pour mettre une ligne
Bj bg
il y a 2 ans-PEMT
pareil
je suis sur Brave je clique sur "télécharger" ça m'envoie vers une page avec du code et c'est tout
je suppose que faudrait le c/c sur tampermonkey, mais les lignes de code c'est un top produit à condition de ne pas dépasser 8 ou 9 donc perso flemme
je suis sur Brave je clique sur "télécharger" ça m'envoie vers une page avec du code et c'est tout
je suppose que faudrait le c/c sur tampermonkey, mais les lignes de code c'est un top produit à condition de ne pas dépasser 8 ou 9 donc perso flemme
il y a 2 ans
c'est cool mais faudrait qu'on puisse choisir sur quel topic l'activer parce que là
il y a 2 ans
Le script sans l'option "entrer"
// ==UserScript==
// @name On'Chat
// @namespace http://tampermonkey.net/
// @version 0.1
// @description Ajoute un LiveChat sur onche.org comme sur JVChat
// @author [email protected]
// @match
https://onche.org/topic/*
// @icon
https://www.google.com/s2[...]p;domain=tampermonkey.net
// @grant none
// ==/UserScript==
(function() {
'use strict';
// CONFIGURATION
const MESSAGES_PER_PAGES = 20;
const fullUrlString = document.querySelector("div.pagination a.active").getAttribute('href');
const rawUrlString = fullUrlString.split('\/').slice(0, -1).join('\/');
let activePage = parseInt(document.querySelector('.active').text, 10);
const allPagesElements = document.querySelectorAll("div.content.pagination div.pagination")[0].querySelectorAll('a');
let currentMessageCount = document.querySelectorAll("div.messages div.message:not(.answer)").length;
let initialMaxPage = parseInt(allPagesElements[allPagesElements.length - 1].text, 10);
console.log("Script is on")
console.log(rawUrlString)
function callMakeRequest() {
makeRequest(rawUrlString + "/" + activePage)
}
function makeRequest(url) {
// Create a new XMLHttpRequest object
const xhr = new XMLHttpRequest();
// Define the URL and method of the request
const method = "GET";
// Open the request with the URL and method
xhr.open(method, url);
// Define the callback function to read the response
xhr.onload = function() {
if (xhr.status === 200) {
const response = xhr.responseText;
const parser = new DOMParser();
const htmlDocument = parser.parseFromString(response, "text/html"); // Parse the HTML response
let messageCount = htmlDocument.querySelectorAll("div.messages div.message:not(.answer)").length
console.log(htmlDocument.querySelectorAll("div.messages div.message:not(.answer)"))
console.log("Number of text messages:", messageCount);
if (messageCount > currentMessageCount) {
console.log("New message")
let numberOfMessagesToAdd = messageCount - currentMessageCount;
let nodeArray = htmlDocument.querySelectorAll("div.messages div.message:not(.answer)")
let substring = Array.from(nodeArray).slice(messageCount - numberOfMessagesToAdd, messageCount);
// console.log(substring)
substring.forEach(element => {
document.querySelector('.messages').appendChild(element);
});
currentMessageCount = messageCount;
document.querySelector(".textarea").scrollIntoView({
block: "center",
inline: "nearest",
behavior: "smooth"
});
if (currentMessageCount === MESSAGES_PER_PAGES) {
activePage += 1
currentMessageCount = 0
}
}
//console.log(response);
// Replace this with your actual response handling code
}
};
// Send the request
xhr.send();
}
console.log()
if (activePage !== initialMaxPage) { return }
setInterval(callMakeRequest, 2000);
})();
// ==UserScript==
// @name On'Chat
// @namespace http://tampermonkey.net/
// @version 0.1
// @description Ajoute un LiveChat sur onche.org comme sur JVChat
// @author [email protected]
// @match
// @icon
// @grant none
// ==/UserScript==
(function() {
'use strict';
// CONFIGURATION
const MESSAGES_PER_PAGES = 20;
const fullUrlString = document.querySelector("div.pagination a.active").getAttribute('href');
const rawUrlString = fullUrlString.split('\/').slice(0, -1).join('\/');
let activePage = parseInt(document.querySelector('.active').text, 10);
const allPagesElements = document.querySelectorAll("div.content.pagination div.pagination")[0].querySelectorAll('a');
let currentMessageCount = document.querySelectorAll("div.messages div.message:not(.answer)").length;
let initialMaxPage = parseInt(allPagesElements[allPagesElements.length - 1].text, 10);
console.log("Script is on")
console.log(rawUrlString)
function callMakeRequest() {
makeRequest(rawUrlString + "/" + activePage)
}
function makeRequest(url) {
// Create a new XMLHttpRequest object
const xhr = new XMLHttpRequest();
// Define the URL and method of the request
const method = "GET";
// Open the request with the URL and method
xhr.open(method, url);
// Define the callback function to read the response
xhr.onload = function() {
if (xhr.status === 200) {
const response = xhr.responseText;
const parser = new DOMParser();
const htmlDocument = parser.parseFromString(response, "text/html"); // Parse the HTML response
let messageCount = htmlDocument.querySelectorAll("div.messages div.message:not(.answer)").length
console.log(htmlDocument.querySelectorAll("div.messages div.message:not(.answer)"))
console.log("Number of text messages:", messageCount);
if (messageCount > currentMessageCount) {
console.log("New message")
let numberOfMessagesToAdd = messageCount - currentMessageCount;
let nodeArray = htmlDocument.querySelectorAll("div.messages div.message:not(.answer)")
let substring = Array.from(nodeArray).slice(messageCount - numberOfMessagesToAdd, messageCount);
// console.log(substring)
substring.forEach(element => {
document.querySelector('.messages').appendChild(element);
});
currentMessageCount = messageCount;
document.querySelector(".textarea").scrollIntoView({
block: "center",
inline: "nearest",
behavior: "smooth"
});
if (currentMessageCount === MESSAGES_PER_PAGES) {
activePage += 1
currentMessageCount = 0
}
}
//console.log(response);
// Replace this with your actual response handling code
}
};
// Send the request
xhr.send();
}
console.log()
if (activePage !== initialMaxPage) { return }
setInterval(callMakeRequest, 2000);
})();
il y a 2 ans
ANTOlNEFORUM2
2 ans
Okay j'ai fix le truc pour entré et l'autoscroll
ajouter un toogle pour activer/desactiver le script et met le par défaut à OFF
il y a 2 ans
ajouter un toogle pour activer/desactiver le script et met le par défaut à OFF
Non j'ai fait en sorte que si la zone pour écrire le texte est visible ça scrolle sinon ça ne scrolle pas
il y a 2 ans
Non j'ai fait en sorte que si la zone pour écrire le texte est visible ça scrolle sinon ça ne scrolle pas
oui mais on veut povoir activer le script que sur certains topics là ça va envoyer des requete pour rien meme sur les topics où l'avoir le live n'a pas d'interet
il y a 2 ans