#javascript-typescript

1 messages · Page 67 of 1

slim anvil
#

ce sera plus facilement lisible

keen narwhal
#

bon j'ai essayé, j'ai toujours la même erreur, je suis pourtant bien connecté.

Je me demande si ce n'est pas le nom de ma bdd qui foire??? Où modifie t-on le nom de la bdd sur MongoDB ?

slim anvil
#

ta base de donnée s'appelle bien database ?

#

Je vais revenir juste après, tu peux montrer juste ton code de connexion stp ? sans les identifiants bien sur 😛

keen narwhal
slim anvil
#

il faut surement que tu l'as crées alors mais normalement tu as un onglet clusters avec dedans la liste de tes clusters

keen narwhal
slim anvil
#

sinon envoie une capture d'écran d'atlas que je puisse me remémorer

#

rajoute un .catch() voir si tu as une erreur

#

mais tu as bien ton "connected" qui s'affiche ?

#

et attention a tes identifiants encore 😛

keen narwhal
slim anvil
keen narwhal
# slim anvil clique sur collections

Je crois que je suis sur le bon chemin !
Maintenant il faut que je trouve comment créer un "name", "email" et "password" pour que mes données s'insèrent sans soucis... j'suis vraiment pas familier avec ce truc, j'préfère largement PhpMyAdmin ^^

Merci @slim anvil pour ton aide efficace !!

slim anvil
#

Du coup ta base de données s'appelle ecommerce et non database haha 😛
en gros tu as tes clusters que tu as aussi appelé ecommerce (le gros titre)
et dans la liste tu as tes bases de données (ou il y aussi ecommerce) et dedans ce sont tes collections (tes tables)

Du coup normalement tu aurais pu avoir un cluster ecommerce avec dedans production et dev pour avoir une base prod et une base dev

#

Maintenant il faut que je trouve comment créer un "name", "email" et "password" pour que mes données s'insèrent sans soucis...
Tu parles pour ta connexion c'est ça ?

keen narwhal
slim anvil
#

En gros tu vas venir te créer un Schema, avec par exemple ça comme info:

import { Schema } from 'mongoose'

const schema = new Schema({
  name: String,
  email: String,
  password: String
})
export default schema
#

tu vas venir ensuite import ton schema User (celui du haut)

#

Et venir faire un

const user = new User() // dedans ton objet
user.save() // pour insert en base
keen narwhal
#

merci, Enzo... mais j'ai toujours la même erreur, c'est fatiguant !
Je dois créer ces champs d'abord dans Mongodb? ou ils sont censés se créer automatiquement ?
Je sens que j'y suis presque ça me rend fou ^^

slim anvil
#

Il se crée automatiquement, en suivant ton schéma

#

Tu as la même erreur que tout à l’heure ?? @keen narwhal

tame shore
#

aidé moi svpp

#

je sais pas pourquoi il accepte pas le .

keen narwhal
# slim anvil Tu as la même erreur que tout à l’heure ?? <@456226577798135808>

Oui...
Voici mon code avec le Schema et l'insertion


// création du modèle (classe) pour User

const UserSchema = new Schema({
  email: {
    type: String,
    unique: true,
    lowercase: true,
  },

  password: { type: String },

  profile: {
    name: { type: String, default: "" },
    picture: { type: String, default: "" },
  },

  address: { type: String },
  
  history: [{ date: Date, paid: { type: Number, default: 0 } }],
});

router.get("/signup", function (request, response) {
  response.render("account/signup");
});

router.post("/signup", function (request, response, next) {
  const user = new User();
  user.profile.name = request.body.name;
  user.email = request.body.email;
  user.password = request.body.password;

  // fait une requete vers la BDD pour voir si l'utilisateur existe déjà

  User.findOne({email: request.body.email},function(err, existingUser){
      if (existingUser) {
        console.log(request.body.email + "déjà enregistré dans la BDD");
        return response.redirect("/signup");
      } else {

        // On enregistre dans la BDD
        user.save(function (err) {
          if (err) return next(err);
          response.json("Nouvel utilisateur créé");
        });
      }
    });
  });
// connexion à la BDD

mongoose
  .connect(
    "mongodb+srv://user:pass@cluster01.irba3.mongodb.net/ecommerce?retryWrites=true&w=majority",
    { useNewUrlParser: true, useUnifiedTopology: true }
  )
  .then(() => {
    console.log("connected");
  });```
slim anvil
tame shore
#

comment sa ?

slim anvil
#

tu mets pas les () au bon endroit regarde comment une faire condition

tame shore
#

ok

slim anvil
#

Pour moi ton erreur est pas lié au code @keen narwhal, essaye par hasard de rm rf tes nodes modules de réinstaller

#

De regarder aussi si ta version de node est Good

#

Et juste par hasard si tu run et que tu fais rien est ce que tu as quand même l’erreur ?

#

Rien pendant environ 2/3 min

tame shore
#

@slim anvil je trouve pas

keen narwhal
dire latch
#

Hey 🙂

#

J'ai une petite question, esce que quelqu'un sais faire pour get un lien ? Comme celui là --> || http://www.download.nsc-radio.eu||

Puis, de check si il existe des .bsp et si oui, sa me les dl automatiquement ?

Merci d'avance 🙂

boreal edge
#

Tu veux get un lien en fonction de quoi ?

dire latch
#

Juste le get, puis dl les fichiers dedans qui m'intéresse automatiquement

slim anvil
#

C’était sur

#

vérifie ta version de node, essaye de rm tes nodes modules

#

De vérifier ta string de connexion

#

(Ta variable uri)

#

Tu peux fetch la page @dire latch

#

puis récupérer le body, boucler sur les nodes element et vérifier si il y a des lien en .bsp

dire latch
#

Hmm

tame shore
#

@slim anvil j'ai pas trouvé

#

tu peut me dire ou pas ? S'il te plaît .

slim anvil
#

oui envoie moi ta condition

#
if (message.channel.id === 'xxx' || ['salut', 'bonjour'].includes(message.content)) {
  // code here
}

@tame shore

tame shore
#

Merci beaucoup

#

c'est compliqué !

#

c'est vraiment dure de codé par contre .

slim anvil
#

car tu es au début

#

après ca viendra tout seul 200iq

tame shore
#

je l'espère

dire latch
#

J'ai ça pour le moment

slim anvil
#

en premier temps fais ta requetes sur ta page

#

okay tu récupères quoi dans request

dire latch
#

Tout ça

slim anvil
#

tu fais un response.text()

#

ce sera plus simple :p

dire latch
#

Je sais pas lire 😭

slim anvil
#

hein ? harold

dire latch
#

Mdrr

#

La flemme de lire surtout en anglais là

#

Puis, maintenant que j'ai ça, je ne sais pas comment faire pour check les .bsp dedans 😦

slim anvil
#

t'emmerde pas y en a pas sur le screen kappa

dire latch
#

😦

#

Tes perspicace @slim anvil 😂

slim anvil
#

Maintenant tu fais un

const html = document.createRange().createContextualFragment(response.text())

log html pour voir

tame shore
#

aussi enzo

#

j'ai une question

#

par exemple si je veut dire au bot que si qlq marque sa il répond sa

#

on peut l'écrire que d'une facon ?

#

ou plusieurs ?

dire latch
#

Comme ça ?

#

document n'est pas défini

slim anvil
tame shore
#

ah ok ok

slim anvil
#

mais si c'est un cas précis tu peux juste faire if (message.content === 'toto') { message.reply('Hey') }

tame shore
#

ok ok

#

parceque je galérer

#

mdrrr

slim anvil
#

ah mais t'es en nodejs @dire latch ? harold

tame shore
#

j'était en sueur

dire latch
#

Ba oui @slim anvil mdr

slim anvil
#

Ahh je suis pas sur que createRange existe en nodejs vu que c'est côté serveur

#

c'est meme sur que non d'ailleurs

dire latch
#

Hm

slim anvil
#

tu peux utiliser jsdom si tu veux

#

Sinon tu peux faire sans et te faire une fonction qui va venir regarder toute ta mega string et regarder si tu as un lien en .bsp

#

tu peux faire une regex pour ça

dire latch
#

Connais pas

slim anvil
#

je te laisse aller regarder

dire latch
#

Jcomprends pas quand même

#

Donc bon

jovial turret
#

Salut, à quoi sert module.exports.run ici?

module.exports.run = async (client, message, arguments) => {
   const guild = client.guilds.get("566596189827629066");
   setInterval(function () {
      var memberCount = guild.members.filter(member => !member.user.bot).size;  
      var memberCountChannel = client.channels.get("626462657817477131");
      memberCountChannel.setName(`${guild.name} has ${memberCount} members!`);
   }, 1000);
};

Ce code permet de compter le nombre de membre dans un canal

jovial turret
#

ah j'ai compris

oblique needle
#

Merci sofiane

keen narwhal
#

Yop ! Est-ce que quelqu'un saurait si il est possible de récupérer le contenu d'un console.time, je reprends petit à petit le js et je bloque là dessus pour réaliser un système de retranchement entre deux temps

oak turret
#

log le

#

t'as timeEnd() après je sais pas tellement à quoi ça correspond

indigo remnant
#

Salut, comment je pourrais faire une boucle infini svp ( qui se répète tout le temps ) merci

slim anvil
#

while ( 1 > 2 )

indigo remnant
#

ah ok merci

icy nest
# jovial turret Salut, à quoi sert **module.exports.run** ici? ```js module.exports.run = async ...

Message venant du discord de Graven, je drop ça là car j'ai mal en voyant "var" 😢 :

Pourquoi ne jamais utiliser var ?
var est un mot cle de javascripr permettant de creer des variables mais qui a de nombreux soucis
1-Les scopes:
Ce que la logique dit une variable n'est defini que dans un blockscope mais avec var c'est pas le cas il est defini dans une function scope voila un exemple
for(let i = 0; i < 5; i++){
var j = 5;
}
console.log(j);//La variable j va etre afficher alors qu'elle n'est pas sence existe les var se rattache a la fonction
//ou au document en general si elle sont pas defini dans la fonction

2-Les definitions:
Les variables ne peuvent etre definient qu'une fois dans le scope sur le quel on code et bien avec var ca retourne pas d'erreur quand on defini 2 variables identiques dans un meme scope exemple:
let test = 5;
let test = 'qlq chose'; // ca retourne une erreur

var test2 = 5;
var test2 = 'qlq chose'; //ca retourne pas d'erreur

et c'est pour ca qu'il conseiller d'utiliser let et const qui ont ete ajouter depuis ecmascript 2015 ce qui nous enleve pas mal de soucis (ps: il doit certainement y en avoit d'autre mais je les connai pas)

keen narwhal
hazy mirage
#

@keen narwhal Hey 👋
Tu pourrais nous remontrer ton code stp ?

keen narwhal
# hazy mirage <@456226577798135808> Hey 👋 Tu pourrais nous remontrer ton code stp ?

Oui, voici mon code,

Et le message d'erreur qui est le suivant :

MongooseError: Operation users.insertOne() buffering timed out after 10000ms


// création du modèle (classe) pour User

const UserSchema = new Schema({
  email: {
    type: String,
    unique: true,
    lowercase: true,
  },

  password: { type: String },

  profile: {
    name: { type: String, default: "" },
    picture: { type: String, default: "" },
  },

  address: { type: String },
  
  history: [{ date: Date, paid: { type: Number, default: 0 } }],
});

router.get("/signup", function (request, response) {
  response.render("account/signup");
});

router.post("/signup", function (request, response, next) {
  const user = new User();
  user.profile.name = request.body.name;
  user.email = request.body.email;
  user.password = request.body.password;

  // fait une requete vers la BDD pour voir si l'utilisateur existe déjà

  User.findOne({email: request.body.email},function(err, existingUser){
      if (existingUser) {
        console.log(request.body.email + "déjà enregistré dans la BDD");
        return response.redirect("/signup");
      } else {

        // On enregistre dans la BDD
        user.save(function (err) {
          if (err) return next(err);
          response.json("Nouvel utilisateur créé");
        });
      }
    });
  });
// connexion à la BDD

mongoose
  .connect(
    "mongodb+srv://user:pass@cluster01.irba3.mongodb.net/ecommerce?retryWrites=true&w=majority",
    { useNewUrlParser: true, useUnifiedTopology: true }
  )
  .then(() => {
    console.log("connected");
  });```
hazy mirage
#

Ah pardon j'ai completement confondu le screen d'une autre personne et ton probleme a toi

slim anvil
#

Je l’ai plus en tête

keen narwhal
slim anvil
#

et tu as bien le log connected to mongoDB ?

keen narwhal
slim anvil
#

Mais donc on est d'accord, si tu attends sans rien faire tu as bien l'erreur qui pète aussi @keen narwhal ?

keen narwhal
slim anvil
#

Non je te parle sans rien faire du tout en attendant juste les 1000ms de timeout

#

sans faire de requete rien

#
user.save(function (err) {
          if (err) return next(err);
          response.json("Nouvel utilisateur créé");
        });
// to
user.save()
#

essaye juste de faire ça plz

keen narwhal
#

ok j'essaye

slim anvil
#

donc ca te fera

user.save()
.then(res => {
  // its ok
})
.catch (err => {
  console.log(err.message)
})
#

pas sur que passer des params dans la methode .save() ce soit bon

keen narwhal
slim anvil
#

Montre moi ton code actuellement du coup avec les changements

keen narwhal
slim anvil
#

bah du coup no c'est pas bon haha

keen narwhal
slim anvil
#

envoie moi tout le code qu'il y a dans ta route /signup

keen narwhal
# slim anvil envoie moi tout le code qu'il y a dans ta route /signup
// inclure la librairie express

let express = require("express");

//libraire morgan

let morgan = require("morgan");

//libraire mongoose

let mongoose = require("mongodb");

// Body-Parser

let bodyParser = require("body-parser");

// moteur de template

let ejs = require("ejs");

let engine = require("ejs-mate");

// stocker l'objet express dans une variable plus courte

const app = express();

// connexion à la BDD

mongoose
  .connect(
    "mongodb+srv://user:mdp@cluster01.irba3.mongodb.net/ecommerce?retryWrites=true&w=majority",
    { useNewUrlParser: true, useUnifiedTopology: true }
  )
  .then(() => {
    console.log("connected to mongoDB");
  });

// PASSERELLES (middlewares)

app.use(express.static(__dirname + "/public"));

app.use(morgan("dev"));

app.engine("ejs", engine);

app.set("view engine", "ejs");

app.use(bodyParser.json());

app.use(bodyParser.urlencoded({ extended: true }));


// Définition du chemin (routes) des pages principales

let mainRoutes = require("./routes/main");

app.use(mainRoutes);

let userRoutes = require("./routes/user");

app.use(userRoutes);

// app.post()

// app.put()

// app.delete()

// méthode listen d'express

app.listen(3000, function (err) {
  if (err) throw err;

  console.log("Le serveur est lancé sur le port 3000");
});
#
let router = require("express").Router();

let User = require("../models/user");

// URL LOGIN

// URL SIGNUP

router.get("/signup", function (request, response) {
  response.render("account/signup");
});

router.post("/signup", function (request, response, next) {
  const user = new User();
  user.profile.name = request.body.name;
  user.email = request.body.email;
  user.password = request.body.password;

  // fait une requete vers la BDD pour voir si l'utilisateur existe déjà

  // User.findOne({email: request.body.email},function(err, existingUser){
  //     if (existingUser) {
  //       console.log(request.body.email + "déjà enregistré dans la BDD");
  //       return response.redirect("/signup");
  //     } else {

  //       // On enregistre dans la BDD
  //       user.save(function (err) {
  //         if (err) return next(err);
  //         response.json("Nouvel utilisateur créé");
  //       });
  //     }
  //   });

  user.save(function (err) {
    if (err) return next(err);
    response
      .json("Nouvel utilisateur créé")
      .then((res) => {
        // its ok
      })
      .catch((err) => {
        console.log(err.message);
      });
  });
});

// URL LOGOUT

// URL PROFILE

module.exports = router;
slim anvil
#
router.post("/signup", function (request, response, next) {
  const user = new User();
  user.profile.name = request.body.name;
  user.email = request.body.email;
  user.password = request.body.password;

  // fait une requete vers la BDD pour voir si l'utilisateur existe déjà

  // User.findOne({email: request.body.email},function(err, existingUser){
  //     if (existingUser) {
  //       console.log(request.body.email + "déjà enregistré dans la BDD");
  //       return response.redirect("/signup");
  //     } else {

  //       // On enregistre dans la BDD
  //       user.save(function (err) {
  //         if (err) return next(err);
  //         response.json("Nouvel utilisateur créé");
  //       });
  //     }
  //   });

  user.save()
  .then(res => {
    // its ok
  })
  .catch (err => {
    console.log(err.message)
  })
});
#

comme ca le save pour voir

keen narwhal
keen narwhal
#

Ah, j'avais oublié mon module.exports.

Toujours le même erreur @slim anvil ...

J'abandonne cet exercice il me rend dingue, j'vais passer à autre chose. Merci d'avoir essayé de m'aider en tout cas, c'est gentil

slim anvil
#

screen moi juste la partie /signup pas le reste

keen narwhal
slim anvil
#

la manière dont tu déclares user essaye comme ceci:

const user= new User({
   _id: mongoose.Types.ObjectId(),
   profile: { name: "Enzo" },
   email: "toto@gmail.com",
})
#

et donc enleve ensuite le user.profile etc..

#

puis test le user.save

#

du coup require mongoose dans ce fichier

#

juste pour voir

keen narwhal
slim anvil
#

t'as bien import mongoose ?

keen narwhal
slim anvil
keen narwhal
#

Laisse tomber @slim anvil ... je vais passer à autre chose j'y reviendrai plus tard... là ça fait quelques jours que je bloque là dessus, j'ai rdv avec un formateur demain on verra bien ce qu'il me dit.

Encore merci pour ton temps 😉

hazy mirage
#

@keen narwhal

#

Pour ton problème il va nous falloir le code si tu veux de l’aide

#

(╯°□°)╯︵ ┻━┻

keen narwhal
#

le code ?

oak turret
#

de ton bot..

#

on est pas devin

#

alors faut pas mettre ton token en visibile..

#

et c’est Discord.Client()

keen narwhal
#

ouaip c est bon j ai effacer oops

full scaffold
keen narwhal
#

ça ne fonctionne toujours pas

oak turret
#

ton code

#

t’as installé nodejs, et npm i discord.js ?

keen narwhal
#

j ai un bot

#

node js oui et discord js c est quoi ?

slim anvil
#

t!search bot

cedar oreBOT
slim anvil
#

suis ces tutoriels

hazy mirage
tacit patio
#

Je dois d'abord apprendre les bases moi haha

#

||Je vais galérer et péter un plomb si ça marche pas||

#

Attendez je peux vraiment utiliser JSbin sur téléphone ???

#

Mdr

keen narwhal
#

d accord parce que je n arrive pas à installer discord jsp quoi la

#

je veux juste mettre mon p*tain de bot en ligne

slim anvil
#

Tu as suivis le tutoriel sur le site @keen narwhal

keen narwhal
#

oui

#

comme on installe discord js? en suivant le tutoriel je n est pas réussi

slim anvil
#

Tu bloques a quel moment ?

mighty turtle
#

Salut, ma commande de click dans mon javascript ne peut pas fonctionner dans mon cas, y a t'il une autre comande que l'on peut utiliser pour cliquer sur un bouton ? Merci

<button class="accordion" id="defaultOpen" ><img src="img/accordionpeau.png" /></button>
```JavaScript
document.getElementById("defaultOpen").click();
slim anvil
#

le .click c'est pour trigger via ton code le clique du bouton

#

toi tu veux détecter quand la personne clique ?

oak turret
#
const button = document.getElementById("defaultOpen");
button.addEventListener("click", function() {
  console.log("bouton cliqué");
})
oak turret
#

Hello je me permet de te mentionner @slim anvil, vous utilisiez quel event pour faire pop une image tous les x temps pendant noel ? Je vois pas tellement comment faire à part avec un setInterval() ?

slim anvil
#

Tu peux faire un cron

oak turret
#

ah oui pas con ! j'y vais pas pensé ! Merci ! Bonne soirée !

keen narwhal
#

Yop ! (je remarque que je viens souvent demander de l'aide par rapport à fs x) ) Alors, j'ai un petit soucis qui me bloque sur mon avancée de système de prise de service, fin de service (pour un bot discord military rp). En gros j'explique globalement le projet, je veux réaliser une commande !service qui permet de stocker dans ma data, trois données, isTimer - time - service, isTimer est un int que je peux traduire par un true or false qui permet de déterminer si la commande est à sa première exécution: de base il est égal à 0, et quand la commande !service est exécutée la 1ère fois, isTimer = 1. Time équivaut à une variable temporaire qui récupère l'heure et les minutes à laquelle est envoyée la commande (exemple, commande service envoyée à 10h40: time: "640"). Une fois !serviceexécuté une seconde fois, c'est reset à 0. service ou totalTime est un tableau qui me permettrait de récupérer toutes les durées de service d'un utilisateur.

Là où ça coince c'est que lorsque je rentre une seconde fois la commande !service, time est reset avant que je ne push la différence entre l'heure à laquelle la seconde commande est envoyée moins la valeur time (qui me permettrait de récupérer la durée totale d'un service). Comment faire ?

Et dans un second temps, je n'arrive pas à sauvegarder mon array, quand je le rappelle il se reset. Comment faire aussi sur ce point ?

ps: je n'envoie le code que en mp pour éviter les vols de code, ...

oak turret
#

j'ai pas bien compris ton système perso

#

ah oui ok je vois

#

tu devrais plutôt stocker ça en bdd

#

par exemple, quand un mec fais !service, tu get en bdd si il a une entrée ( test par exemple avec l'id discord de l'user ), si il n'en a pas tu lui créer et tu fais ton système, si il a déjà une entrée alors là tu check si ifTimer = 0 si il l'est c'est ok sinon tu lui return une erreur du type "déjà en service"

#

la bdd te permettrait d'avoir une save permanente

#

use sqlite c'est plutôt simple d'utilisation et facile à gérer 🙂

keen narwhal
#

Je vais essayer de me renseigner

keen narwhal
#

Je préfère tout de même utiliser FS... C'est mieux niveau gestion.

oak turret
#

bof

keen narwhal
#

T'aurais pas une idée pour que je reste sur fs et que j'ai le résultat, et qu'à la fin je transfère sur sqlite et je fais la différence entre les deux

oak turret
#

j'use pas fs sorry

keen narwhal
#

Ah.. Sinon quelqu'un à une idée de comment régler mes deux problèmes

#

Bon un des problèmes a été réglé, il ne me reste plus qu'à push plus d'une donnée dans un array. Je n'y arrive pas, help svp :c

slim anvil
#

.push()

keen narwhal
#

Oui mais le problème étant que je n'arrive pas à sauvegarder mon array pour le conserver dans une certaine mise en place des datas

#
            time = heureMin
            isTimer = 1
            
            
            data[message.author.id] = {
                time,
                isTimer,
                service
            }

Là service redevient vide

#

Je sais pourquoi service est vide étant donné que ma variable de base c'est: var service = [], mais je veux ajouter du contenu dans l'array. En gros, ça se reset quand je refais !service, ce qui est logique mais comment faire pour garder le contenu de service ?

#

@slim anvil

#

A la limite, tu peux vocal ? (pour que je te fasse un partage + explique plus précisément)

slim anvil
#

La no sorry même pas écris je suis assez occupé sorry 😦 plus tard

keen narwhal
#

Ok, tu pourrais me ping quand tu seras là ? Je serais dispo demain matin

slim anvil
#

Yes okay

mighty turtle
mighty turtle
oak turret
#

t'as fais F12 => Console ?

#

ah donc oui c'est différent

#

là le code détecte quand on clique dessus

slim anvil
tame shore
#

Salut tout le monde , je bloque sur sa , quelqu'un pourrait m'aider ? :

#

if (message.content === 'toto') { message.reply('Hey') }

#

je veut sa mais dans un channel donc j'ai fait

#

Mais sa ne marche pas

#

je sais pas si j'ai fait un erreur ou pas

slim anvil
#
if (message.channel.id === 'xxx' && message.content === 'Salut') {
  // return
}
tame shore
#

Mercii

#

Je vais testé

#

🧐

slim anvil
#

?? message n'éxiste pas

tame shore
#

k

oak turret
#

il faut que ça sois dans l’event message

tame shore
#

k

keen narwhal
#

rien ne ce passe help please !

oak turret
#

bah normal déjà

#

if amount > 1

#

< 1 plutôt déjà

#

et log ton amount

keen narwhal
#

c est quoi amount

#

genre je met quoi à amount?

oak turret
#

wtf ? c'est toi qui a fait le code ?

hazy mirage
#

Un tutoriel et je présume qu’il a copié collé

oak turret
#

ah oui pas mal ça j'avais pas vu non plus

#

t!search bot

cedar oreBOT
oak turret
#

@keen narwhal Je te redirige vers ces tutos qui t'apprendront la base 🙂

hazy mirage
#

J’ai l’impression qu’il fait genre commandes/clear/index.js

oak turret
#

c'est possible il a mal du comprendre commando, m'enfin avant ça faut comprendre la base de discord.js et de js surtout, ce qui n'a pas l'air d'être le cas pour lui

keen narwhal
#

euh je suis une fille moi

#

merci.

oak turret
#

sorry j'ai pas fais attention à ton pseudo ahah

keen narwhal
#

comment on quitte un groupe ?

oak turret
#

un groupe sur discord ?

#

ah bah elle a quittée mdr

hazy mirage
#

J’aurais bien dit quelque chose mais pas sûr que ce soit TOS FRIENDLY

mighty turtle
# slim anvil Ça revient quasi au même ce que tu veux faire tu dois juste remettre aussi ton c...

Comment on appelle la fonction ?

J'ai mon menu avec 3 boutons et je voudrais que le bouton 1 soit actif par défaut. J'ai m'a fonction que si on clic sur un des boutons ça l'active et ça fonctionne mais par defaut le bouton 1 est inactif et je veux le rendre actif par defaut pour qu'il affiche son contenu dés l'ouverture de la page afin qu'elle ne soit pas vide. Je sais pas si je me fait bien compendre.

keen narwhal
#

Yop !

J'aurais (encore) besoin d'aide, cette fois ci au sujet des messages collectors. Je voudrais vérifier qu'une réponse à une des questions que je pose avec mon message collector soit un nombre (avec typeof). Une idée de comment récupérer la réponse d'une question donnée dans un tableau ? (les questions sont dans un tableau et l'id de la question où je veux récupérer la réponse c'est 2)

cedar steppe
#

J'ai travailler sur mon bot discord(j'ai déjà fait beaucoup de test en local et il marche niquel), et j'aimerais le mettre en ligne avec heroku. Je me suis crée une application sur heroku et je l'ai link a mon gitHub. Je me suis fait une ressource worker : node index.js que j'ai activé et desactivé le web. J'ai mis mon token dans les variable d'env Quand j'ouvre la "Run console" et que je fait mon "npm start" l'appplication marche niquel mais dès que je quitte la console le bot est désactivé, j'aimerais savoir s'il y a une solution pour qu'il tourne sans que j'ai a avoir le machin d'ouvert?

slim anvil
jovial turret
#

il ne respecte pas ses propres règles et ça se dit "dev" oof

hybrid berry
#

Abadakor

jovial turret
#

du coup j'chui content y a 0 bugs, enfin si on oubli tous ceux qui étaient déjà là avant suefort

hybrid berry
#

Sa doit être bien le web quand tu as ce niveau de connaissance mdr

#

Sinon bof bof

#

Le peux de web que j’ai fait c’était assez chiant

#

Surtout le front

jovial turret
#

nan c'est trop cool le web

slim anvil
#

Par contre utilise + les opérateurs stricte dans ton cas

#

(=== que ==)

jovial turret
#

ouai on me l'a déjà dit, il faut que je m'y habitue :p

hybrid berry
#

Mais ce qui est chiant c’est que tu peux pas faire du front sans un minimum de back 😦

jovial turret
#

si

slim anvil
#

C'est dingue n'empêche les conneries que t'arrives a sortir Lexa

hybrid berry
#

Euh l’inverse pardon

#

Bah de back sans un peu de front

jovial turret
#

c'est assez bizarre le css mais c'est très chouette

slim anvil
#

Pareille tu peux aussi

hybrid berry
#

Ouais mais l’ui sera devenu

#

Degeu

slim anvil
#

Pourquoi tu parles d'UI si tu fais du back

hybrid berry
#

Bah pour avoir un rendu

#

Tu dois savoir les bases du front

jovial turret
#

tu sais que le css est devenu tellement complet que pas mal de jeux l'utilisent in-game?

#

s&box le supportera pour les ui

slim anvil
#

ca répond pas a la question, faire du back c'est pas forcément que faire des sites avec un rendu front

hybrid berry
#

Bah pour faire du back en web t,as besoin de front

slim anvil
#

Ah bon d'accord je savais pas

hybrid berry
#

Après si tu deg a l’aveugle je sais pas comment tu fais

slim anvil
#

Les API que t'utilises elles ont toutes un front

hybrid berry
#

Oui mais le résultat est très basiques

slim anvil
#

Le problème c'est que quand on maitrise pas un sujet faut éviter de s'y lancer

#

Non parce que pour tester ton back tu peux juste faire du testing, ou utiliser par exemple postman pour tester tes routes etc

jovial turret
#

tu as touché enzo très profondément là x)

#

tu l'a vexé le pauvre

slim anvil
#

Y a pas besoin d'avoir de front

hybrid berry
#

Oui c’est sûr Enzo

#

Mais pour avoir un site complet tu dois savoir faire les deux

slim anvil
#

Après faire du code côté serveur ne veut pas dire faire forcément un site....

hybrid berry
#

Oui

#

Après tu vas pas faire g-ca.fr sans front

#

Et inversement

slim anvil
timid loom
keen narwhal
ancient sonnetBOT
#
Citation de Strax#6242 posté dans javascript

Cliquez sur [📝](#javascript-typescript message) pour accéder au message

            Yop ! 

J'aurais (encore) besoin d'aide, cette fois ci au sujet des messages collectors. Je voudrais vérifier qu'une réponse à une des questions que je pose avec mon message collector soit un nombre (avec typeof). Une idée de comment récupérer la réponse d'une question donnée dans un tableau ? (les questions sont dans un tableau et l'id de la question où je veux récupérer la réponse c'est 2)

timid loom
keen narwhal
#

En gros la réponse est dans un message collector sauf que je ne sais pas comment le récupérer. Et oui pour le tableau:

        const absenceQuestions = [
            "Quel est ton nom roleplay ?",
            "Quelle est la durée de ton absence ? (en jours, exemple: 3)",
            "Pour quelle.s raison.s seras-tu absent ?"
        ]
timid loom
#

un messagecollector c'est une structure qui permet de récupérer des messages envoyés dans un channel via des events

#

tu peux bêtement faire un

tonCollector.on('collect', (message) => {
// ici message correspond au message qui vient d'être reçu
}
#

et dans ton event t'as juste à vérifier si le contenu du message peut être adapté en nombre (avec un parseInt ou quelque chose de ce genre)

keen narwhal
#

Le problème étant que je n'arrive pas à récupérer la réponse

#

Le collect je l'ai déjà fait

timid loom
#

t'arrives pas récupérer la réponse? comment ça

keen narwhal
#

Ah attends, quoi que j'ai peut être la réponse sous mes yeux. Attends 2 petites minutes et je te dis

#

Bon je crois avoir trouvé, j'ai simplement fait un: if (typeof m.content[2] === number mais le typeof ne fonctionne pas thinkgeometric

timid loom
#

et avec if (typeof m.content[2] === 'number') ?

keen narwhal
#

Je l'ai bien mis comme ça sur mon code juste une erreur de frappe sur discord

slim anvil
#

enleve le !

keen narwhal
#

J'ai déjà try

slim anvil
#

oui mais faut quand meme l'enlever

#

et si tu log m.content[2] tu as quoi

keen narwhal
#

C'est vrai que je n'ai pas encore essayé, je te dis ça

#

Ca me log la 3e lettre du message :/ J'ai pas le réflexe de log ce que je fais

slim anvil
#

Du coup ta condition sera pas bonne

keen narwhal
#

Yep

slim anvil
#

faut que tu split avant

#

si tu veux le 3eme mot

keen narwhal
#

Là actuellement ça log pour tous les messages donc il faudrait trouver un moyen de récupérer la réponse

keen narwhal
#

🙄

hallow plover
#

Bonjour, je suis assez nouveau dans le développement et j'aimerai savoir quelle serait la meilleure façon de rendre accessible un ensemble de fichiers via un bot discord, permettant d'allumer un serveur, de la façon suivante :

  • un utilisateur se rend sur le discord dans lequel je veux développer le bot, et décide d'allumer le serveur. Il télécharge les fichiers en question, et le serveur est hébergé sur son ordinateur sans trop de manips de sa part (faut pas qu'il ait à chaque fois à télécharger manuellement les fichiers puis allumer le serveur, sinon aucun intérêt...)
  • pendant que le serveur est ouvert, personne ne peut télécharger les fichiers en question
  • puis lorsque l'utilisateur a fini ce qu'il voulait faire avec le serveur il le stoppe et les fichiers sont mis à jour sur le serveur de fichiers (FTP par exemple ?) où ils sont stockés

Petites précisions, le bot discord pourrait éventuellement être allumé juste pour ça, et donc la personne aurait une simple commande à taper, et hébergerait le bot ET le serveur de façon liée, c'est tout à fait envisageable puisque ce serait pour seulement 6 utilisateurs à qui je fais confiance et peux donc fournir les scripts du bot.. C'est peut-être le mieux vu qu'il s'agit d'accéder aux fichiers des utilisateurs pour allumer le serveur, voire à une invite de commande, et que je suppose que ce n'est absolument pas envisageable via un bot hébergé sur un autre ordinateur (pour des raisons évidentes de sécurité)

#

Merci d'avance pour toute aide

#

J'espère que j'ai été compréhensible

#

(oui et donc le script serait en javascript, d'où le lieu du post, mais dites moi si je ne suis pas au bon endroit)

keen narwhal
#

D'ailleurs, je viens de voir pour mon problème, que j'ai pu log la collection dans mon collector.end.

night crane
#

Yo

#

J'ai un soucis

oak turret
#

ton code

slim anvil
keen narwhal
#

J'ai encore log quelque chose de meilleur avec:

console.log(collected.map(m => m.content))

[ 'test', 'yest', 'dsf' ]

Je récup les 3 messages de réponses, mais je n'arrive toujours pas à récupérer le deuxième message (yest)

#

@slim anvil

slim anvil
#

c’est l’index 1

#

donc [1]

night crane
#

Nan c'est bon ça fonctionne merci

night crane
oak turret
#

rien d'impoli quoi, j'te demande juste ton code, si tu le prends comme ça ok

night crane
#

Ton code stp, voila comment formuler c'est tout.

keen narwhal
#

Normalement quand tu formules de l'aide tu devrais l'envoyer sans qu'on est à te demander ton code

cedar steppe
#

Normalement quand tu formules de l'aide tu devrais donner tout les outils pour résoudre le probleme

tacit patio
#

Bonjour, j'ai une question, serait-il possible de m'aider par rapport à l'installation de Visual Studio Code Community s'il vous plaît ? Je suis en vocal afin de montrer mon problème car mon ordinateur est vieux et il n'a qu'un SSD de 118Go presque plein et donc j'essaie de configurer afin de déplacer les fichiers sur mon disque dur externe de 1To

jovial turret
#

quelqu'un ici utilise sequelize?

tame shore
#

je vient de start la sur un nouveau bot et j'ai sa

#

j'ai 0 ligne de code pratiquement

slim anvil
#

montre ton code pour voir

tame shore
#

`const Discord = require("discord.js");

const Client = new Discord.Client;

Client.on("ready", () => {

Client.login("XXX");
`

#

ya que sa

slim anvil
#

ton event ready est pas bon

tame shore
#

wait , c'est a cause du { ?

#

ah shit

slim anvil
#

il est pas fermé

tame shore
#

yes , ptn des erreur de merde

#

merci beaucoup et désolé de t'avoir déranger/ du ping .

slim anvil
#

pas de soucis good luck

tame shore
#

thanks

tame shore
#

toujours la même erreur mais je pense savoir pourquoi

#

je suis sur la bonne page ou pas ??? 😂

#

Et les gens qui veulent recopié le token allez-y , j'ai deja re roll

slim anvil
#

manque une )

oak turret
#

hello, quelqu'un connaît bien Canvas ? car je suis en train de l'use, mais au moment de faire un ctx.arc(), mon image ne s'affiche plus, et j'avoue que je comprends pas très bien tous les arguments de cette fonction...

Sans le beginpath() arc() closepath() et clip() l'image s'affiche bien.. mais j'aimerais lui faire un border-radius quoi..

exotic kernel
#

salut j'espere que quelqu'un pourra repondre. J'ai fairt un bot discord et pour l emoment il n'a qu'une seule command on lui dit "ping" il repond "pong" mais là pour le moment il repond pong 2 fois et je ne sais pas comment regler ça

#
const config = require('./config.json')

const client = new Client({
    partials: ['GUILD_MEMBER', 'CHANNEL', 'USER', 'REACTION']
})

client.on('ready', () => {
    console.log('Le bot est connecté !')

    client.user.setActivity('Nathan son créateur', {
        type: 'WATCHING'
    })
})

client.login(config.token)

client.on('message', (message) => {
    if (message.content === 'ping') {
        message.reply('pong !')
        .catch(console.error)
    }
})```
#

voilà mon code

bold sparrow
#

@exotic kernel Tu as peut-être 2 instances lancées

exotic kernel
#

ah bien vu j'y avait pas pensé mais j'ai regardé et en tout cas dans ce code là il n 'y ena qu'une mais j'ai essayé plusieurs fois de le faire le bot c'est peut etre le code de l'ancien ??

bold sparrow
#

??

exotic kernel
#

en gros dans le fichier de mon bot j'ai déja codé un bot

#

mais je l'ai supprimé

#

car il ne marchait pas

#

peut etre que le code de l'ancien est encore dedans

oak turret
#

Vous savez comment mettre le border-radius du coup sur l'image ?

spring dock
oak turret
#

justement j'ai suivi cet exemple mdr

#

mais j'ai du mal à comprendre les bails là

keen narwhal
ancient sonnetBOT
#
Citation de Strax#6242 posté dans javascript

Cliquez sur [📝](#javascript-typescript message) pour accéder au message

            Yop ! (je remarque que je viens souvent demander de l'aide par rapport à fs x) ) Alors, j'ai un petit soucis qui me bloque sur mon avancée de système de prise de service, fin de service (pour un bot discord military rp). En gros j'explique globalement le projet, je veux réaliser une commande `!service` qui permet de stocker dans ma data, trois données, isTimer - time - service, isTimer est un int que je peux traduire par un true or false qui permet de déterminer si la commande est à sa première exécution: de base il est égal à 0, et quand la commande !`service` est exécutée la 1ère fois, isTimer = 1. Time équivaut à une variable temporaire qui récupère l'heure et les minutes à laquelle est envoyée la commande (exemple, commande service envoyée à 10h40: `time: "640"`). Une fois `!service`exécuté une seconde fois, c'est reset à 0. service ou totalTime est un tableau qui me permettrait de récupérer toutes les durées de service d'un utilisateur.

Là où ça coince c'est que lorsque je rentre une seconde fois la commande !service, time est reset avant que je ne push la différence entre l'heure à laquelle la seconde commande est envoyée moins la valeur time (qui me permettrait de récupérer la durée totale d'un service). Comment faire ?

Et dans un second temps, je n'arrive pas à sauvegarder mon array, quand je le rappelle il se reset. Comment faire aussi sur ce point ?

ps: je n'envoie le code que en mp pour éviter les vols de code, ...

keen narwhal
#

Problème toujours d’actualité si quelqu’un peut m’aider 👀

night crane
#

YO, j'ai un soucis avec mon système de ticket,

J'exécute la commande !ticket, ça me met channel créer et après ça ne mentionne pas les roles inscrit dans le message (les roles sont mentionable)

Code :

oak turret
#

Yop, je cherche à choper tous les users ayant react à un certain émoji, je fais ça mais il me fait une erreur comme quoi users n'existe, je trouve pas de soluce pour les get autrement vous auriez une soluce ?

boreal edge
#

await message.reactions.fetch() avant

#

Essaye voir ? @oak turret

#

Et si jamais ça fonctionne pas, essayer de await sur .users.fetch()

oak turret
#

comment je fais un random() dessus ?

#

un .map() marche po

#

@boreal edge

boreal edge
#

J'avais fais un truc comme ça moi pour un système de giveaway :

oak turret
#

comment je peux faire un random ?

boreal edge
#

await msg.reactions.cache.get('🎉').users.fetch();

#

msg.reactions.cache.get('🎉').users.cache.forEach(user => {

#

( bon après moi j'ai du faire un système de listage dans un object)

#

Ah

#

Mais oui pour random j'ai fais ça moi

#

let winnerID = list[Math.floor(Math.random() * list.length)];

oak turret
#

okay mais je peux pas convert la collection en aray ?

boreal edge
#

Si tu peux

#

.array()

#

en principe

oak turret
#

.fetch().array() du coup ?

boreal edge
#

Euh

oak turret
#

ouais non .array() marche pas comme ça

#

.fetch().array() marche pas du coup

boreal edge
#

Ah yes

#

Fais ça

#
await .fetch()
let users = Array.from(.users.values())
let random = users[Math.floor(Math.random() * users.length)];
#

Tien essayes ça

#

( j'ai edit si jamais )

oak turret
#

pas compris ton .fetch() et ton .users ?

boreal edge
#

En gros

#

Tu await users.fetch()

#

Pour récupérer toutes la liste (on fais les requêtes à l'API si jamais il est pas caché)

#

Ensuite on récupére tout les users

oak turret
#

oui j'suis con my bad

boreal edge
#

donc message.reactions.cache.get(...).users

#

Etc etc

oak turret
#

je test

boreal edge
#

Sa fonctionne ou pas du coup ?

oak turret
#

je vais test

boreal edge
#

Dac 👍

oak turret
#

ça me return undefined

boreal edge
#

le random ?

oak turret
boreal edge
#

Euh

#

Tentes de console log users un coup voir ?

oak turret
#

je fais ça

boreal edge
#

Dac

oak turret
#

ouais non ça fonctionne

#

ça me return tous les users

boreal edge
#

Donc c'est le random qui bug

#

Euh

oak turret
#

normal

boreal edge
#

Bouges pas j'vais faire des tests de mon côté

#

Ah

oak turret
#

Array.from() me le converti pas en array

boreal edge
#

J'ai oublier le Math.floor

oak turret
#

yes xd

boreal edge
#

En principe si

#

Du moins j'crois

oak turret
#

là j'ai pas d'array visible

boreal edge
#

Fais un console log de typeof(users)

#

Après le Array.from voir

oak turret
#

je règle le random et je fais ça

boreal edge
#

Dac

oak turret
#

c'est good yes ^^

#

merci bg ^^

boreal edge
#

np

#

D'ailleurs p'tite question parce que là j'suis en galère aussi

oak turret
#

yess

#

dis moi

boreal edge
#

Tu serais pas comment j'peux get l'invite que le gars à use pour join ?

#

Car j'en aurais besoin

oak turret
#

alors

#

je pense

#

pas sur

#

get l'user dans l'event guildMemberAdd

boreal edge
#

Parce que j'ai beau tester des exemples

oak turret
#

et vois

boreal edge
#

J'arrive pas à get l'invite

oak turret
#

ça doit venir de là

boreal edge
#

J'vais aller voir dans les propriétées du guildMemberAdd du coup

#

Thx, j'te tiens au courant si tu veux 😉

oak turret
#

yes dis moi

boreal edge
#

J'vois pas d'invites snif

#

Bon bah plus qu'a partir chercher kappa

oak turret
#

get le member direct quand il arrive

boreal edge
#

J'regardais justement sur le GuildMember

#

Et en soit si je get l'user, ça me return le GuildMember non ?

oak turret
#

oauip

pastel hearth
#

yo j'essaye de faire un bot discord mais je débute
j'aimerais que quand un joueur rejoigne le server le bot lui envoie un dm
j'ai fait ça:

#

client.on("guildMemberAdd" ,(member) => { member.send("Bienvenue !"); })

#

mais ça ne fonctionne pas et je ne trouve pas comment faire

#

j'avais aussi fais ça:

#

client.on('guildMemberAdd', member => { member.createDM().then(channel => { return channel.send('Bienvenue!') }).catch(console.error) })

boreal edge
#

Yop !

#

En quelle version de discord.js ?

pastel hearth
pastel hearth
#

12.5.0 je pense

tame shore
#

Les gars quelqu'un aurait !ban all deja codé ? bot discord svp

slim anvil
tame shore
#

@slim anvil une commande ban all sur un bot discord est rapide faire ou pas ?

slim anvil
#

Oui

oak turret
#

ban all 🧐

spring dock
#

bizarre

burnt perch
#

Tien tien

hazy mirage
pastel hearth
signal marsh
slim anvil
#

Montre ton code mais tu dois avoir une } manquante et tu dois avoir un try sans catch ni finally

signal marsh
slim anvil
#

oui voilà tu as pleins de try {} sans catch ni finally

#

regarde ici comment ça fonctionne tu auras pas grand chose a rajouter @signal marsh

signal marsh
#

Merci

jovial turret
#

Salut, comment je pourrais faire en sorte que le script attende la fin de l’exécution d'une fonction? J'ai déjà fais un await mais ça ne semble pas marcher 😦

$( document ).ready(async function() {
    await loadNavbar(0);
    $('#parent-0').sortableLists( options );
});
slim anvil
#

le await s’utilise pas n’importe où non plus

#

Tu peux faire une promesse et la resolve quand ta fonction est terminé

jovial turret
#

quelque chose comme ça 🤔

$( document ).ready(async function() {

    Promise.resolve(0).then(function(valeur) {
      loadNavbar(valeur); // "Succès"
    });
    
    $('#parent-0').sortableLists( options );
});
slim anvil
#

Non

#

LoadNavbar c’est ta fonction ?

#

Fais en une promise comme ça tu pourras await dessus

jovial turret
#

oui

slim anvil
#

mais ton promise est pas bon non

jovial turret
#

oki je check ça 👍

#

je ne peux pas transformer ma fonction en promise car je la rappelle plusieurs fois

slim anvil
#

Aie mes yeux

#

Le await devant le $get alors que t’as un callback pour récupérer ta réponse.....

jovial turret
#

xD

#

nan mais j'ai mis ça pour tester x)

#

(au cas où x) )

slim anvil
#

Mais donc elle est où ta promesse là sur ton screen

#

je vois pas que tu es essaye d’en faire une harold

jovial turret
slim anvil
#

Regarde comment on fait une promesse

jovial turret
#

je chercherai demain, merci 👍

tame shore
#

une commande pour un ban all

#

pour lavé un ancien server

#

et j'ai envie de ban all au lieu de le fermé

oak turret
#

bah tu get tous les users

#

et tu les bans mdr aussi simple que ça

#

dans une boucle

tame shore
#

att

#

Je pue la merde en codage

#

mais vraiment

#

je sais même pas comment get tout les users

#

@oak turret

#

et la boucle je sais tkt mdr

oak turret
#

bah apprends et tu sauras 🙂

tame shore
#

comment ?

#

ou

#

mdr

#

j'aurais bien aimé

#

@primal garden

#

shit

#

wrong ping

#

😦

oak turret
#

discord.js

tame shore
#

mdr

oak turret
#

et js si tu ne connais pas le js

tame shore
#

je connais quand meme hein

#

Mais on doit remplie un questionnaire avant non ?

oak turret
#

hein

tame shore
#

laisse tombé mdr

#

j'ai sa ???

#

c'est lequel qui est bon ???

oak turret
#

non mais

#

réfléchis juste un peu comment faire

#

et après tu verras

tame shore
#

ok ok

#

Mais att

#

réfléchire dans le sens

#

dans quel sens ?

#

je code ou

#

tu me perd mdrr

slim anvil
#

t!search bot

cedar oreBOT
tame shore
#

oh

slim anvil
#

On est pas là pour te faire le code entier sinon tu fais une demande de dév

spring dock
#

Et absolument personne t'aidera à faire un truc qui ban tout le monde sur un discord ici.

slim anvil
#

On est là pour t'aider lorsque tu rencontreras des difficultés

tame shore
#

ok ok

#

Beh j'en rencontre mdr

#

trkl

slim anvil
#

Non là tu cherches pas tu veux juste que quelqu'un te le fasse

tame shore
#

nan nan , juste je sais pas par quoi commencé

slim anvil
#

sinon montre ton code et montre ou tu bloques

tame shore
#

beh je sais pas enfête

slim anvil
#

Il te l'a dit

tame shore
#

je pue la merde en codage

#

il me dit get user

#

ce qui me semblerais le plus logique c'est de faire :

#

`if message start with ' - ban all '

targer all user ( je sais pas si c'est bon )

and ban guild member ?`

#

Genre le codage sa fait 1 semaine je suis dessus mais j'ai pas encore commencé a pratiqué

#

ducoup je suis perdu

slim anvil
#

Et bah du coup essayes ce que tu viens de dire

#

tu verras si ca marche

tame shore
#

ok

#

j'installe studio code

#

c'est plus simple

#

je comprends rien sur atom

#

Si ya un problème et j'arrive pas le résoudre je te dirais

tame shore
#

Mais c'est un puzzle

#

je comprends rien

#

j'ai changé d'idée , je vais commencé simplement par envoyé un message en mp puis qu'il me répond

#

Mais je sais pas faut mettre quoi

#

d'abbord

#

j'ai toute les " piece " du puzzle mais il faut les mettre dans l'ordre

jovial turret
#

tapé moi pa kappo

$( document ).ready(function() {
    loadNavbar(0,0);
});

function loadNavbar(parentId,state){
    $.get("<?=$http?>://<?=$_SERVER['HTTP_HOST']?>/vbcms-admin/backTasks/?loadClientNavbar="+parentId, function(data) {
        var navbarItems = JSON.parse(data);
        if (parentId!=0 && data!="[]") {
            $("#item-"+parentId).append("<ul id='parent-"+parentId+"'></ul>");
            //$("#item-"+parentId).appendTo("#parent-"+parentId);
        }
        jQuery.each(JSON.parse(data), function(index){
            $("#parent-"+parentId).append('\
                <li id="item-'+navbarItems[index]["id"]+'">\
                     <div class="modifyNavbarItemList">\
                          <span class="mx-2">'+navbarItems[index]["value1"]+'</span>\
                          <button class="ml-auto mr-2 clickable btn btn-sm btn-brown">Modifier</button>\
                      </div>\
                 </li>');
            loadNavbar(navbarItems[index]["id"],1);
        });
    });
    if (state==0) { // Comme ça ça marche xD
        setTimeout(() => {
            console.log("test");
            $('#parent-0').sortableLists( options );
        }, 1000);
    }
}
#

mais ça marche xD

slim anvil
#

Bah dis donc

oak turret
#

why == ? et pas ===

#

tu verif la value et non le type

jovial turret
#

oui c'est vrai

#

mauvaise habitude :p

slim anvil
#

Si seulement le vrai problème était la

jovial turret
slim anvil
jovial turret
#

je vais mettre ma galerie sur git, je te conseille de prendre des popcorn :p

oak turret
#

xD

slim anvil
#

des lunettes surtout harold

signal marsh
#

Bonjour j'ai probleme. code: https://pastebin.com/7fuUDrMP erreur :https://pastebin.com/04CyaVwW Merci en avance

bold sparrow
#

@signal marsh l’erreur est écrite

#

Tu n’as pas déclaré react

signal marsh
#

@bold sparrow Ha Oui merci

keen narwhal
#

Bonjour, mon bot met des undefined quand il change l'embeb, qui et de chaque 5 seconde
Savez vous comment régler sa ?

slim anvil
#

@keen narwhal log la valeur que tu essayes d’afficher pour voir si elle est bonne

keen narwhal
#

je regarde

slim anvil
#

FR QC etc c’est censé être dans « Nom » ?

keen narwhal
#

C'est les caractères spéciaux qui peuvent générer ce fameux undefined ?

slim anvil
#

Non c’est que ta valeur n’existe pas

#

Tu peux me montrer comment tu l’as récupères et comment tu l’as met dans l’embed ?

#

screen please la bonne partie

keen narwhal
slim anvil
#

On est d’accord que le 2ème screen est juste après le premier dans le code ?

timid abyss
#

slt je cherche un tuto pour crée un bot jeux style pierre feuille ciseau ou meme d'autre truc

slim anvil
#

Si tu fais un console.log de Data2 tu as bien un object avec hostname etc ?

keen narwhal
#

Je vais regarder

slim anvil
#

Yes screen moi ton log si tu veux

timid abyss
#

non mais jan ai pas crée encore je ve juste le lien d'un tuto ytb

slim anvil
keen narwhal
slim anvil
#

Yes okay tu as tout, dès que je suis sur pc je regarde ce sera plus simple que sur téléphone

#

Ça doit être tout bête je pense

keen narwhal
#

ça peut pas être en sorte que c'est à cause de var et let qui font un conflit ?

keen narwhal
#

Je saurais pas te dire j'ai jamais utilisé cette fonction, déso :/

dim sable
#

Bonjour
j'ai utilisé ce menu hamburger pour mon site, mais le problème c'est que en one page il ne se ferme pas quand je clique sur le lien est ce que qqn aurati une solution
Merci
https://codepen.io/erikterwan/pen/EVzeRP

signal marsh
#

Bonsoir j'ai un problème, dans ce code je veut que sa génère un chiffre entre 1 et 4 et que si le chiffre est égale à 3 ou 2 sa envoie un embed mais sa ne marche pas. Et rien dans la console. Svp aidez moi, Merci de l'aide en avance.

const nombre = Math.floor(Math.random() * 4) + 1;
        if (args[0]=== [3] || args[0]=== [2]){ 
            console.log(`${nombre}`) 
             message.channel.send(embedfish)
        canneàpêche.subtract(`canneàpêche_${message.author.id}.canne`, -1) 
        return; 
            
    
        }
    console 
oak turret
#

bah

#

look je sais pas si ça marchera mais

#
function random_nombre(amount) {
  return Math.floor(Math.random() * amount );
}

let nbr_rand = random_nombre(4); 

console.log(nbr_rand)

if ( nbr_rand === 3 || nbr_rand === 2 ) {
  let embed = new Discord.MessageEmbed()
      .setColor()
      .setDescription()
      ...
  // envoi 
}

test ça

keen narwhal
slim anvil
#

Sorry je suis sur pc ce soir, si d’ici là toujours le soucis je Check

keen narwhal
#

okioki

slim anvil
#

Générer un nom aléatoire entre 0 et 4

#

Et ça te return la valeur (nbr_rand) donc ensuite tu conditionnes en fonction de la valeur reçu

signal marsh
#

Ha oui mais sa regle pas le problème @slim anvil

oak turret
#

bah si ^^

#

je t'ai fais la fonction

#

maintenant comme a dit Enzo, t'as plus qu'à tester nbr_rand

#

genre j'update look

signal marsh
#

Ouais mais pour si le chiffre est égale à 3 ou 2 sa envoie un embed @oak turret

oak turret
#

look l'update

signal marsh
#

ha ok

#

Tkanks

oak turret
#

pas de soucis

#

ou si tu veux au lieu de faire des ||

#

tu peux

#
let table = [2, 3];

if ( nbr_rand.includes(table) ) {}

OU 

if ( table.includes(nbr_rand) ) {}

#

un des deux je sais plus lequel, test tu verras bien 😉

hollow idol
#

Bonjour, j'ai un petit souci sur un script js pour un bot discord et j'aimerais savoir si quelqu'un serais dispo pour m'aider à le corriger ?

slim anvil
#

Envoie ton code

#

Les gens t’aideront direct

hollow idol
#

heu ok mais je suppose qu'il y à une commande pour mettre du code afin qu'il soit coloré ?

ancient sonnetBOT
#

Pour envoyer un message avec un code il vous suffit d'entourer votre message de ceci : ```. Ainsi, pour poster votre code dans un message, vous devez faire comme ceci :

```langage
Votre code
```
Et par exemple pour un code en lua :
```lua
print("hello")
```

Le résultat sera le suivant :
Votre code
Et par exemple pour un code en lua :

print("hello")```
hollow idol
#

merci. Alors voila le bot fais ce que je demande SAUF 1 chose, l'enregistrement dans la bdd

#
// Répondre à un message
client.on("message", function (message) {
    if (message.content.startsWith("+save_code")){
        var suffix = message.content.substr(11);
        client.db.query(`SELECT * FROM code_ami WHERE id_membre = '${message.author.id}'`, async (err, results) => {
            // Si l'utilisateur n'existe pas dans la table :
            if (results.length < 1) {
                // Ici, on choisie de l'insérer
                await client.db.query(`INSERT into code_ami (id_membre, CA) VALUES ('${message.author.id}', '${suffix}')`)
                await message.channel.send(`Ton code ami : '${suffix}' a bien été enregistré pour le pseudo ${message.author.username} ! Afin de montrer ton code ami, merci d'utiliser la commande +voir-CA.`)
            } else { // Ici on ne fait rien 
                    }
        })
    }
        return;
})
#

dans client.login, le token du bot est bien présent mais retiré pour poster ici 😉

#

Je précise que la bdd se trouve en local et que j'utilise phpmyadmin

#

Ah oups, j'ai rien dis, je viens de corriger le problème, je me suis trompé dans la structure de ma table, j'avais mis en int alors que je devais mettre en text.

#

Désolé pour le dérangement et merci quand même.

oak turret
#

t'as vu du coup ?

#

ton return; qui bloque tout si je suis pas fou

hollow idol
#

nop mon return ne bloque rien c'est ma stucture de ma table sur mes deux champs, id_membre et CA qui bloquaient ^^

slim anvil
#

@keen narwhal toujours le soucis??

keen narwhal
#

Oui ☹️

#

Et là c'est encore pire, j'ai supprime le salon ou le bot modifier le message et je sais pas le remette xD

slim anvil
#

est-ce que je peux réavoir le code please ? car le screen est pas complet

#

Ah surement dans la config changer l'id du channel ou le msg est

keen narwhal
#

Yep mais enfaite le bot envoyé un message vide avant et après on m'était l'id du message vide ou la le bot modif avec l'embed

#

Je te donne le code des que je retrouve mon pc

#

Je suis sur tel la

keen narwhal
#

Mentionne moi dés que tu a look 😉

signal marsh
#

Bonsoir j'ai un problème dans ce petit code je veut que si le channel.id n'est '771720948369326110' alors il envoie un embed mais le problème même si je suis dans le channel '771720948369326110' sa m'envoie le embed. Merci de l'aide en avance

{ 

 channelid =  message.channel.id
 console.log(channelid)
 if(channelid !== '771720948369326110' || channelid !== '771720947341721601' ) return message.channel.send(embedchannelspeciale)
}
keen narwhal
#

Hey, j'ai cette erreur quand j'allume mon bot sur mon vps mais je ne l'ai pas sur mon ordi donc je ne sais pas si vous avez une solution mais si vous en avez une je suis preneur 👋

oak turret
#

faut que npm i tes packages sur ton serveur

keen narwhal
#

@oak turret Bah en fait j'ai essayé un peu toutes les solutions possible

#

Je viens de le faire

#

Et ça ne marche toujours

#

pas

oak turret
#

t’as npm i sqlite3 ?

keen narwhal
#

Oui

#

J'ai tout fait vraiment 😂

slim anvil
keen narwhal
#

Tu as pas une idée Enzo ? sadgun

slim anvil
#

essaye de rm -rf tes nodes_modules

#

et de les réinstaller pour voir

#

look aussi si ta version de node est à jour, on sait jamais

slim anvil
# keen narwhal

okay galère les screens comme il y a tout le truc autour on voit 15 lignes max par screen pas simple, tu peux m'envoyer le fichier directement dans ce cas ? ce sera plus facilement lisible car là pas gagné

keen narwhal
#

Mais pas sur mon ordi

#

Je sais pas pourquoi

slim anvil
#

t’as Check la version de node

#

Dans tes nodes modules sqlite3 est bien installé ?

keen narwhal
#

Non mais j'arrive pas à l'installer

#

La version est en 14.15.1

keen narwhal
#

regarde ce que ça fait

slim anvil
#

Alors je connais pas l’erreur mais à mon avis si tu copies la ligne de l’erreur et tu l’as fous sur internet tu vas avoir la solution

keen narwhal
#

laquelle

#

node-gyp-install ..........;

slim anvil
#

Ouais essaye de l’installer pour voir ? 🤔

keen narwhal
#

Command not found

slim anvil
#

c'est deprecated et sans update donc je suis pas sur qu'il soit compatible avec la version 14 de nodejs déjà

slim anvil
#

downgrade du coup à mon avis

keen narwhal
#

Ah

slim anvil
#

la meme que tu as en local je pense

keen narwhal
#

Ah oui moi je suis en 12.18

#

😂

slim anvil
#

Oui

#

du coup tu peux faire un
nvm install 12.18.1
nvm use 12.18.1

#

si tu passes par nvm bien sur

#

une fois que c'est fait rm -rf node_modules et refais un npm i pour voir

keen narwhal
#

je suis sur linux

#

C'est quoi nvm ?

#

Je suis une merde en ça

slim anvil
#

c’est pour installer node etc ça facilite le changement de version et autre

slim anvil
#

Faut l’installer aussi

keen narwhal
#

ok

#

C'est quoi juste pour l'installer @slim anvil ?

#

J'ai fais ce que tu m'as dis on a pas bougé

#

😢

#

@slim anvil ça change rien

#

ça me mets toujours l'erreur

slim anvil
#

Tu es bien en node v12 ?

keen narwhal
#

Oui

slim anvil
#

Hmmmm

#

Supprime de ton package.json node pre gryp et installe le nouveau package à la place

#

le @mapbox/node-pre-gryp pour voir

keen narwhal
#

Donc je supprime quoi

#

Le package.json

#

et pas le lock

slim anvil
#

Non dedans tu dois avoir un node-pre-gryp ou pas ?

#

Dans ton package.json

keen narwhal
#

je check ça attt

#

Il y a même pas @slim anvil

slim anvil
#

ça devrait fix ton soucis

keen narwhal
slim anvil
#

Enlève ton client.login si tu veux pour pas que j’ai le token

keen narwhal
#

Oki

slim anvil
signal marsh
#

Okay bas j'essaie

keen narwhal
#

C'est vraiment relou

slim anvil
#

🤔

#

rm rf tes nodes modules

#

Et fais un sudo npm i

keen narwhal
#

ça marche pas ça

slim anvil
#

C’est pas mieux ?

keen narwhal
#

Et sudo il me dit qu'il connait pas

slim anvil
#

hein

keen narwhal
#

Alors que j'ai apt-get install sudo

slim anvil
#

montre comment tu fais le truc

keen narwhal
#

Tient

#

@slim anvil

slim anvil
#

C’est quoi l’OS de ton serveur ? J’y connais moyen en serveur peut être que la @hazy mirage pourra plus t’aider

keen narwhal
#

debian

hazy mirage
#

Yop

#

Tu ne peux pas rm -rf node_modules et tu essayes avec sudo c'est ça ?

keen narwhal
#

Bah regarde

#

ça me fait rien

hazy mirage
#

Oui c'est normal

#

rm package-lock.json aussi ?

keen narwhal
#

ko

#

ok

#

je viens de le faire

hazy mirage
#

Et maintenant npm i ça ne fonctionne toujours pas ?

keen narwhal
hazy mirage
#

Et tu as fait ça : npm install --save sqlite3 ?

#

Et pour l'erreur du dessus essaye ça: apt-get install build-essential

keen narwhal
hazy mirage
#

Ah oui je n'avais pas compris que c'était l'installation de sqlite3 qui foirait, excuse moi

keen narwhal
#

Non mais t'inquiète

hazy mirage
#

et du coup avec le build-essential ça marche pas mieux ?

keen narwhal
#

C'est déjà super sympa de m'aider 😂

hazy mirage
#

Et pour l'erreur du dessus essaye ça: apt-get install build-essential

#

puis après reessaye l'install sqlite3

keen narwhal
#

AH CA MARCHE

keen narwhal
hazy mirage
#

De rien je t'envoie mon paypal

#

Bonne journée 😉

keen narwhal
hazy mirage
keen narwhal
signal marsh
signal marsh
#

Bonjour j'ai besoin d'aide. Dans cette const je veut que sa récupère toute les infos dans Items.
Mais je ne sais pas comment faire

const itemss = items.get(`items_${message.author.id}`)
#

Merci de l'aide

slim anvil
#

items c'est un tableau ?

#

si oui montre a quoi il ressemble

signal marsh
signal marsh
oak turret
#

c'est une bdd ça

signal marsh
oak turret
#

donc tu fais une requête quoi

#

SELECT * FROM table

signal marsh
#

hmm rien compris mais ok

oak turret
#

bah renseigne toi sur les modules sql en nodejs

signal marsh
oak turret
#

bah log ton items alors

#

il te returnera un truc

#

donc

#
const itemss = items.get(`items_${message.author.id}.json`);
signal marsh
#

Hmm sa marche pas

boreal edge
#

Yop !
J'essaye de faire un regex pour search sur Developer Mozilla hors,
J'ai un soucis :
J'ai tenté ce regex : /\\"title\\":\\".*?trim.*?/g sur la page https://developer.mozilla.org/fr/search?q=trim mais il me return beaucoup trop de choses alors que j'aurais simplement besoin du nom et du "slug" après.
Savez vous comment je pourrais faire ?
Merci 😉 (je débute sur les regex x) )

hazy mirage
#

tu peux me cc cette partie stp

boreal edge
#

Dac

cyan iron
#

Yo tout le monde, j'ai vu un bot qui faisait des réponses

cyan iron
#

Vous savez si c'est possible en JS ? :3

oak turret
#

ah bon 🤔

cyan iron
#

Ouais

#

Je savais pas

oak turret
#

je vois rien sur la doc

hazy mirage
cyan iron
#

Merci Pilot beau gosse !

cyan iron
#

Oula j'ai des erreurs sue

#

DUH

#

aled

#

xD

oak turret
#

c’est quoi la fonction?

cyan iron
oak turret
#

pour reply inline

cyan iron
#

.reply

#

apparement

#

d'après ce que j'ai compris

#

Oui c'est ça, message.reply('aaaa')

#

Wait t'as réussi toi @oak turret ?

oak turret
#

no

#

pas essayé

cyan iron
#

Bah moi ça work pas

#

J'ai une erreur WTF

#

Mais genre vraiment, que j'ai jamais vu de ma vie

oak turret
#

mais faut define guildid messageid et channelid

#

jv tester

cyan iron
#

On est d'accord faut juste caler un petit npm i discordjs/discord.js

oak turret
#

yes

cyan iron
#

Bah écoute

#

c'est broken ;-;

oak turret
#

attend

#

j'essaye

cyan iron
#

AAAAAAAAAAAAAAAAAAAAAH

#

J'aurais du faire une backup je me déteste

oak turret
#

xD

cyan iron
#

on remet l'ancienne version harold

oak turret
#

attend j'installe tout ça et je test

cyan iron
#

oki

#

dit moi

#

je vais faire une backup

oak turret
#

ça doit forcément marcher si ils l'ont fait

cyan iron
#

niquel ça s'installe pas maintenant harold

oak turret
#

xD

#

c'est long à s'installer pour moi

cyan iron
#

Ouf c'est réparé harold

#

Tu peux voc ?

#

Au pire

oak turret
#

elle s'est installée la v13 pour toi ?

#

no

cyan iron
#

oUI

oak turret
#

wut

cyan iron
#

Juste nous écouter harold ?

oak turret
#

j'update npm alors

#

j'suis déjà en voc lel

cyan iron
#

oki

#

Moi ça met v12.5.0 @oak turret mais en fait c'est pas la v12.5.0

oak turret
cyan iron
#

J'ai réussi

oak turret
#

comment ?

cyan iron
#
super({partials: ['MESSAGE', 'CHANNEL', 'REACTION', 'MEMBER'], intents: ['GUILDS', 'GUILD_MESSAGES']});
oak turret
#

mh moi il veut même pas bien l'installer

slim anvil
#

Et beh

#

Tout ce vacarme pour update une lib harold

oak turret
#

xD grave

#

@cyan iron ta version de node c'est laquelle ?

cyan iron
slim anvil
cyan iron
#

Ah bah voilà

#

gg

oak turret
#

j'capte pas il veut pas m'update la mienne wtf

slim anvil
#

Ça marche bien Google quand même

#

Supprime tes nodes modules

#

Met à jour ton package json et npm i

oak turret
#

ça marche

#

j'suis en 64 bits pourtant

#

c'good, j'ai désinstaller node, et je l'ai réinstaller avec le nouvelle version

slim anvil
#

damn

#

Go utiliser nvm pour changer de version facilement

signal marsh
oak turret
#

j'connais pas quickdb, m'enfin sur la doc c'est comme ça

#

t'as du te gourer dans ta db ou quoi

signal marsh
#

ok bas je vais re verifié merci quand même

cyan iron
#

@oak turret bro, c'est complètement éclaté

#

Le statut du bot a sauté

#

On va repasser sur l'ancienne version hein harold

oak turret
#

😂

#

go v12 hein xd

cyan iron
#

Au pire je le modifierais quand la v13 sera officielle et obligatoire

#

dans longtemps lol

oak turret
#

yeah

cyan iron
#

NOICE

#

😢

#

C'est le prix à payer

oak turret
#

...

icy nest
#

Quelqu'un aurait une idée de comment faire en sorte qu'à partir d'une commande comme !birthdaydate je puisse stocker l'id du message.author et la date qu'il a procuré et qu'au jour venu un message soit envoyé ou un role assigné?

#

Un peu comme le bot de @slim anvil

spring dock
#

Le bot de Enzo?

icy nest
#

Le gca-base ou je sais pas le quel

#

Qui te met un rang quand une date viens

slim anvil
#

en plus il me Ping 😦 c’est fait via le site nous Raiden, mais sinon je sais pas comment t’aider à part te dire de stocker l’id du user et la date renseigne (vérifie avant que s’en est une) puis tout les soirs tu lances un script qui va venir regarder dans ta table à qui il doit donner le rôle en fonction de la date

#

Si la date d’aujourd’hui == a la date renseigne

icy nest
#

ou ça risque d'avoir des soucis de corruption?

slim anvil
#

Non ça parait bon ça va que très peu l’éditer en soit

deep torrent
#

En vrai se salon devrait pas s'appeler "javascript" mais "discord.js"

slim anvil
#

j'oubliais que discord js c'est pas en js kappa

deep torrent
#

Nan, mais sérieux?

#

Je veux

#

Dire que ça parle tellement souvent de d.js que le salon est quasi dédié à celui ci

oak turret
#

et alors

unborn knot
#

Tout comme le lua

#

80% des questions c'est à propos du gLua néanmoins cela n'empêche personne de poser des questions sur le lua en lui même, ou autre

full scaffold
#

Je suis pas dev js je suis dev ecmascript

timid loom