diff --git a/encheres/.babelrc b/encheres/.babelrc
new file mode 100644
index 0000000000000000000000000000000000000000..e94b0a62fc1d4810bd67de7be6602f3636baff5a
--- /dev/null
+++ b/encheres/.babelrc
@@ -0,0 +1,4 @@
+{
+  "presets": ["@babel/preset-env"],
+  "plugins": ["@babel/transform-runtime"]
+}
diff --git a/encheres/client/src/scripts/auctioneer.js b/encheres/client/src/scripts/auctioneer.js
index b51e796a5073a1a648cf27c3b8f31a674f32a7ac..b51ccd29aef7134762e40a6334bbdba269e3bdf1 100644
--- a/encheres/client/src/scripts/auctioneer.js
+++ b/encheres/client/src/scripts/auctioneer.js
@@ -2,8 +2,6 @@ console.log('le bundle-auctioneer a été généré');
 
 const socket = io();
 
-let winnerId;
-
 const inputName = document.getElementById("name");
 const inputValue = document.getElementById("value");
 const buttonStart = document.getElementById("start");
@@ -18,8 +16,8 @@ socket.on("alreadyAuct", () => alreadyAuctioneer());
 
 function alreadyAuctioneer() {
     const prod = document.getElementById("prod-auc");
-    ident.textContent = "Connexion refusée, il y a déjà un comissaire-priseur";
     prod.style.display = "none";
+    ident.textContent = "Connexion refusée, il y a déjà un comissaire-priseur";
 }
 
 const prixActuel = document.getElementById("prixactuel");
@@ -40,23 +38,22 @@ buttonStart.addEventListener("click", startEnchere);
 
 function startEnchere() {
     prixActuel.textContent = inputValue.value+"€";
-    buttonSale.disabled = false;
     ident.textContent = `Debut de l'enchère pour ${inputName.value} à ${inputValue.value}€`;
     socket.emit("infos", inputName.value, inputValue.value);
     socket.on("changePrix", (nouveauPrix, sock) => {
         updatePrix(nouveauPrix, sock);
-        winnerId = sock;
     });
     waitForNewEnchere(true);
 }
 
 function saleProduct() {
     ident.textContent = `Fin de l'enchère. Un ${inputName.value} à ${prixActuel.textContent}`;
-    socket.emit("adjuge", winnerId);
+    socket.emit("adjuge");
     waitForNewEnchere(false);
 }
 
 function updatePrix(nouveauPrix, sock) {
+    buttonSale.disabled = false;
     prixActuel.textContent = nouveauPrix+"€";
     ident.textContent = `Nouvelle enchère réçu de ${sock}`;
 }
diff --git a/encheres/client/src/scripts/bidder.js b/encheres/client/src/scripts/bidder.js
index 5a00f95639aa74cd3ce16d4816dafedee8aca65c..bbe8e6436a272ad563079d0644cdb90a8615f016 100644
--- a/encheres/client/src/scripts/bidder.js
+++ b/encheres/client/src/scripts/bidder.js
@@ -28,6 +28,8 @@ socket.on("infos", (name, value) => {
 
 socket.on("deconnexion", () => deconnexionAuctiooneer());
 
+socket.on("winner", () => {win()});
+
 function changePrix(nouveauPrix) {
     prix[0].textContent = nouveauPrix+"€";
     prixActuel = nouveauPrix;
@@ -46,6 +48,7 @@ function selectPrice(event) {
     socket.emit("prixActuel", prixActuel);
     socket.on("adjuge", () => finishEnchere());
     ident.textContent = `Vous avez fait une enchère de +${selectedPrix}€`;
+    socket.emit("encherisseur");
 }
 
 function finishEnchere() {
diff --git a/encheres/server/controllers/ioController.js b/encheres/server/controllers/ioController.js
index 75de8eee674fad505c2863d7c9776b282c07bf20..96a3cf97a425ae045307efc619b8725e62b0eea8 100644
--- a/encheres/server/controllers/ioController.js
+++ b/encheres/server/controllers/ioController.js
@@ -1,48 +1,62 @@
 export default class IOController {
     #io;
     #clients;
-    #interval = 2000;
-    #maxRandomNumber = 8;
   
     constructor(io) {
       this.#io = io;
-      //this.#clients = new Map();
+      this.#clients = new Map();
     }
   
     registerSocket(socket) {
       console.log(`new connection with id ${socket.id}`);
-      socket.emit('ping', 'ping');
       this.setupListeners(socket);
     }
   
     setupListeners(socket) {
-      socket.on( 'pong', () => this.greatings(socket) );
-      //socket.on( 'disconnect' , () => this.leave(socket) );
+      socket.on("auctioneer", ()=> this.registerAuctioneer(socket));
+      socket.on( 'infos', (name, value) => this.transmitName(name, value) );
+      socket.on("prixActuel", (prixActuel) => this.transmitPrixActuel(prixActuel, socket.id));
+      socket.on( 'disconnect' , () => this.leave(socket) );
+      socket.on("adjuge", ()=> {
+        this.saleProduct();
+      });
+      socket.on("encherisseur", () => {this.registerBidder(socket)});
+    }
+
+    registerAuctioneer(socket) {
+      if (this.#clients.has("auctioneer")) {
+        socket.emit("alreadyAuct");
+      }
+      else {
+        this.#clients.set("auctioneer", socket);
+      }
+    }
+
+    registerBidder(socket) {
+      this.#clients.set("bidder", socket);
     }
   
-    greatings(socket) {
-      console.log(`pong received from (id : ${socket.id}) at ${new Date().toLocaleTimeString()}`);
-      //this.#clients.set(socket.id);
+    transmitName(name, value) {
+      this.#io.emit("infos", name, value);
+    }
+
+    transmitPrixActuel(prixActuel, sock) {
+      this.#io.emit("changePrix", prixActuel, sock);
+    }
+
+    saleProduct() {
+      this.#io.emit("adjuge");
+      this.#clients.get("bidder").emit("winner");
     }
   
     leave(socket) {
-      const timerId = this.#clients.get(socket.id) || 'unknown' ;
       console.log(`disconnection from ${socket.id}`);
-      clearInterval(timerId);
-      this.#clients.delete(socket.id);
+      if (this.#clients.get("auctioneer") === socket){
+        this.#clients.delete("auctioneer");
+        this.#io.emit("deconnexion");
+      }
     }
-  
-    randomNumber(socket=undefined) {
-        const number = randInt(this.#maxRandomNumber);
-        if (socket) {
-          socket.emit('change number', number);
-        }
-        else{
-          this.#io.emit('change number', number);
-        }
-        console.log(`nombre envoyé ${number}`);
-    }
-  
+    
 }
 const randInt = max => Math.floor( Math.random() * max );
   
\ No newline at end of file
diff --git a/encheres/server/public/html/about.html b/encheres/server/public/html/about.html
index 1199e9dd14211193bfd5ba42d48659b1d4231382..1fb6f2d05f338aa0de306c0b8d10858fc1806d2b 100644
--- a/encheres/server/public/html/about.html
+++ b/encheres/server/public/html/about.html
@@ -9,4 +9,10 @@
                                 
     <body>
         <h1>Infos</h1>
+        <div>
+            <p>Auteur de l'application : <strong>Mamadu BAH</strong></p>
+            <p>Numéro de version : <strong>V1.0</strong></p>
+
+            <a href="./">accueil</a>
+        </div>
     </body>
\ No newline at end of file
diff --git a/encheres/server/public/html/auctioneer.html b/encheres/server/public/html/auctioneer.html
index 74b7c4735bc721c74f1df33c947ffca8d54da174..02682b82470ae149e181a102c7050634b38c0150 100644
--- a/encheres/server/public/html/auctioneer.html
+++ b/encheres/server/public/html/auctioneer.html
@@ -6,10 +6,37 @@
         <title>Server</title>
         <link href="./style/style.css" rel="stylesheet" type="text/css"/>
         <script src="/socket.io/socket.io.js"></script>
-    <script defer src="../scripts/auctioneer-bundle.js?8646d609246098631a96"></script></head>
+    <script defer src="../scripts/auctioneer-bundle.js?e95509bbcceaa6519514"></script></head>
                                 
     <body>
         <h1>Comissaire-priseur</h1>
+
+        <div id="ident-auc">Vous êtes le commissaire priseur</div>
+        <div id="prod-auc">
+            <div>
+                <label for="name">Objet aux enchères</label>
+                <input type="text" id="name" name="name" placeholder="Votre texte ici"/>
+            </div> 
+
+            <div>
+                <label for="name">Prix de départ</label>
+                <input type="number" id="value" min="10" max="100" value="10" name="value" placeholder="Votre prix ici"/>
+            </div>
+            <div>Montant actuel enchère : <span id="prixactuel"></span></div>
+            <div class="button">
+                <button id="start" type="button" disabled>
+                    <img src="../image/start.jpg" alt="start"/>
+                </button>
+    
+                <button id="sale" type="button" disabled>
+                    <img src="blabla" alt="sale"/>
+                </button>
+
+            </div>    
+        </div>
+
+        <a href="./">accueil</a>
+
     </body>
 
 </html>
\ No newline at end of file
diff --git a/encheres/server/public/html/bidder.html b/encheres/server/public/html/bidder.html
index f053e67c279777efae1b356850a6f48bc1fa3e13..789b77eeac03274b1d5190f1ca300d7e71ea3d95 100644
--- a/encheres/server/public/html/bidder.html
+++ b/encheres/server/public/html/bidder.html
@@ -6,10 +6,26 @@
         <title>Server</title>
         <link href="./style/style.css" rel="stylesheet" type="text/css"/>
         <script src="/socket.io/socket.io.js"></script>
-    <script defer src="../scripts/bidder-bundle.js?8646d609246098631a96"></script></head>
+    <script defer src="../scripts/bidder-bundle.js?e95509bbcceaa6519514"></script></head>
                                 
     <body>
         <h1>Enchérisseur</h1>
+        <div class="bidder">
+            <div id="ident-bid">Bienvenue</div>
+            <div class="item">Objet en enchères : <span class="description"></span>
+            <div class="item">Prix actuel : <span class="prix"></span> </div>
+        </div>
+
+        <div id="buttons" class="price-options">
+            <p>Enchères possibles :</p>
+            <button class="price-button">20€</button>
+            <button class="price-button">50€</button>
+            <button class="price-button">100€</button>
+
+        </div>
+        
+        <a href="./">accueil</a>
+
     </body>
 
 </html>
\ No newline at end of file
diff --git a/encheres/server/public/images/start.jpg b/encheres/server/public/images/start.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..ecbaf45095acdc7a7b2d9f690bb5029e858df868
Binary files /dev/null and b/encheres/server/public/images/start.jpg differ
diff --git a/encheres/server/public/index.html b/encheres/server/public/index.html
index f1f72bba793e1724075e192fb4be20bf769e5dc0..2d041c62bf2ad834b389b44f5ad77f639cb4fdad 100644
--- a/encheres/server/public/index.html
+++ b/encheres/server/public/index.html
@@ -7,7 +7,7 @@
 	    <title>server</title>
         <link href="./style/style.css" rel="stylesheet" type="text/css"/>
 
-    <script defer src="scripts/main-bundle.js?8646d609246098631a96"></script></head>
+    <script defer src="scripts/main-bundle.js?e95509bbcceaa6519514"></script></head>
 
     <body>
         <h1>Enchères</h1>
diff --git a/encheres/server/public/scripts/auctioneer-bundle.js b/encheres/server/public/scripts/auctioneer-bundle.js
index f857f6d69b8c280b37c23e09c0484491f15cd953..1bed8575aa5e73c60b4221a1831b229221d8c12c 100644
--- a/encheres/server/public/scripts/auctioneer-bundle.js
+++ b/encheres/server/public/scripts/auctioneer-bundle.js
@@ -1,2 +1,2 @@
 /*! For license information please see auctioneer-bundle.js.LICENSE.txt */
-(()=>{var __webpack_modules__={"./src/scripts/auctioneer.js":()=>{eval("console.log('le bundle-auctioneer a été généré');\nconst socket = io();//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2NyaXB0cy9hdWN0aW9uZWVyLmpzIiwibmFtZXMiOlsiY29uc29sZSIsImxvZyIsInNvY2tldCIsImlvIl0sInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9hcHAvLi9zcmMvc2NyaXB0cy9hdWN0aW9uZWVyLmpzP2U2NjIiXSwic291cmNlc0NvbnRlbnQiOlsiY29uc29sZS5sb2coJ2xlIGJ1bmRsZS1hdWN0aW9uZWVyIGEgw6l0w6kgZ8OpbsOpcsOpJyk7XHJcblxyXG5jb25zdCBzb2NrZXQgPSBpbygpO1xyXG4iXSwibWFwcGluZ3MiOiJBQUFBQSxPQUFPLENBQUNDLEdBQUcsQ0FBQyxtQ0FBbUMsQ0FBQztBQUVoRCxNQUFNQyxNQUFNLEdBQUdDLEVBQUUsQ0FBQyxDQUFDIn0=\n//# sourceURL=webpack-internal:///./src/scripts/auctioneer.js\n")}},__webpack_exports__={};__webpack_modules__["./src/scripts/auctioneer.js"]()})();
\ No newline at end of file
+(()=>{var __webpack_modules__={"./src/scripts/auctioneer.js":()=>{eval('console.log(\'le bundle-auctioneer a été généré\');\nconst socket = io();\nconst inputName = document.getElementById("name");\nconst inputValue = document.getElementById("value");\nconst buttonStart = document.getElementById("start");\nconst buttonSale = document.getElementById("sale");\nbuttonSale.addEventListener("click", saleProduct);\nconst ident = document.getElementById("ident-auc");\nsocket.emit("auctioneer");\nsocket.on("alreadyAuct", () => alreadyAuctioneer());\nfunction alreadyAuctioneer() {\n  const prod = document.getElementById("prod-auc");\n  prod.style.display = "none";\n  ident.textContent = "Connexion refusée, il y a déjà un comissaire-priseur";\n}\nconst prixActuel = document.getElementById("prixactuel");\nprixActuel.textContent = inputValue.value + "€";\nfunction emptyInput() {\n  if (inputName.value.trim() === "") {\n    buttonStart.disabled = true;\n  } else {\n    buttonStart.disabled = false;\n  }\n}\ninputName.addEventListener("input", emptyInput);\nbuttonStart.addEventListener("click", startEnchere);\nfunction startEnchere() {\n  prixActuel.textContent = inputValue.value + "€";\n  ident.textContent = `Debut de l\'enchère pour ${inputName.value} à ${inputValue.value}€`;\n  socket.emit("infos", inputName.value, inputValue.value);\n  socket.on("changePrix", (nouveauPrix, sock) => {\n    updatePrix(nouveauPrix, sock);\n  });\n  waitForNewEnchere(true);\n}\nfunction saleProduct() {\n  ident.textContent = `Fin de l\'enchère. Un ${inputName.value} à ${prixActuel.textContent}`;\n  socket.emit("adjuge");\n  waitForNewEnchere(false);\n}\nfunction updatePrix(nouveauPrix, sock) {\n  buttonSale.disabled = false;\n  prixActuel.textContent = nouveauPrix + "€";\n  ident.textContent = `Nouvelle enchère réçu de ${sock}`;\n}\nfunction waitForNewEnchere(disabled) {\n  inputName.disabled = disabled;\n  inputValue.disabled = disabled;\n  buttonStart.disabled = disabled;\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2NyaXB0cy9hdWN0aW9uZWVyLmpzIiwibmFtZXMiOlsiY29uc29sZSIsImxvZyIsInNvY2tldCIsImlvIiwiaW5wdXROYW1lIiwiZG9jdW1lbnQiLCJnZXRFbGVtZW50QnlJZCIsImlucHV0VmFsdWUiLCJidXR0b25TdGFydCIsImJ1dHRvblNhbGUiLCJhZGRFdmVudExpc3RlbmVyIiwic2FsZVByb2R1Y3QiLCJpZGVudCIsImVtaXQiLCJvbiIsImFscmVhZHlBdWN0aW9uZWVyIiwicHJvZCIsInN0eWxlIiwiZGlzcGxheSIsInRleHRDb250ZW50IiwicHJpeEFjdHVlbCIsInZhbHVlIiwiZW1wdHlJbnB1dCIsInRyaW0iLCJkaXNhYmxlZCIsInN0YXJ0RW5jaGVyZSIsIm5vdXZlYXVQcml4Iiwic29jayIsInVwZGF0ZVByaXgiLCJ3YWl0Rm9yTmV3RW5jaGVyZSJdLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vYXBwLy4vc3JjL3NjcmlwdHMvYXVjdGlvbmVlci5qcz9lNjYyIl0sInNvdXJjZXNDb250ZW50IjpbImNvbnNvbGUubG9nKCdsZSBidW5kbGUtYXVjdGlvbmVlciBhIMOpdMOpIGfDqW7DqXLDqScpO1xyXG5cclxuY29uc3Qgc29ja2V0ID0gaW8oKTtcclxuXHJcbmNvbnN0IGlucHV0TmFtZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwibmFtZVwiKTtcclxuY29uc3QgaW5wdXRWYWx1ZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwidmFsdWVcIik7XHJcbmNvbnN0IGJ1dHRvblN0YXJ0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCJzdGFydFwiKTtcclxuXHJcbmNvbnN0IGJ1dHRvblNhbGUgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInNhbGVcIik7XHJcbmJ1dHRvblNhbGUuYWRkRXZlbnRMaXN0ZW5lcihcImNsaWNrXCIsIHNhbGVQcm9kdWN0KTtcclxuXHJcbmNvbnN0IGlkZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCJpZGVudC1hdWNcIik7XHJcblxyXG5zb2NrZXQuZW1pdChcImF1Y3Rpb25lZXJcIik7XHJcbnNvY2tldC5vbihcImFscmVhZHlBdWN0XCIsICgpID0+IGFscmVhZHlBdWN0aW9uZWVyKCkpO1xyXG5cclxuZnVuY3Rpb24gYWxyZWFkeUF1Y3Rpb25lZXIoKSB7XHJcbiAgICBjb25zdCBwcm9kID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCJwcm9kLWF1Y1wiKTtcclxuICAgIHByb2Quc3R5bGUuZGlzcGxheSA9IFwibm9uZVwiO1xyXG4gICAgaWRlbnQudGV4dENvbnRlbnQgPSBcIkNvbm5leGlvbiByZWZ1c8OpZSwgaWwgeSBhIGTDqWrDoCB1biBjb21pc3NhaXJlLXByaXNldXJcIjtcclxufVxyXG5cclxuY29uc3QgcHJpeEFjdHVlbCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwicHJpeGFjdHVlbFwiKTtcclxucHJpeEFjdHVlbC50ZXh0Q29udGVudCA9IGlucHV0VmFsdWUudmFsdWUrXCLigqxcIjtcclxuXHJcbmZ1bmN0aW9uIGVtcHR5SW5wdXQoKSB7XHJcbiAgICBpZihpbnB1dE5hbWUudmFsdWUudHJpbSgpID09PSBcIlwiKSB7XHJcbiAgICAgICAgYnV0dG9uU3RhcnQuZGlzYWJsZWQgPSB0cnVlO1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgICAgYnV0dG9uU3RhcnQuZGlzYWJsZWQgPSBmYWxzZTtcclxuICAgIH1cclxufVxyXG5cclxuaW5wdXROYW1lLmFkZEV2ZW50TGlzdGVuZXIoXCJpbnB1dFwiLCBlbXB0eUlucHV0KTtcclxuXHJcbmJ1dHRvblN0YXJ0LmFkZEV2ZW50TGlzdGVuZXIoXCJjbGlja1wiLCBzdGFydEVuY2hlcmUpO1xyXG5cclxuZnVuY3Rpb24gc3RhcnRFbmNoZXJlKCkge1xyXG4gICAgcHJpeEFjdHVlbC50ZXh0Q29udGVudCA9IGlucHV0VmFsdWUudmFsdWUrXCLigqxcIjtcclxuICAgIGlkZW50LnRleHRDb250ZW50ID0gYERlYnV0IGRlIGwnZW5jaMOocmUgcG91ciAke2lucHV0TmFtZS52YWx1ZX0gw6AgJHtpbnB1dFZhbHVlLnZhbHVlfeKCrGA7XHJcbiAgICBzb2NrZXQuZW1pdChcImluZm9zXCIsIGlucHV0TmFtZS52YWx1ZSwgaW5wdXRWYWx1ZS52YWx1ZSk7XHJcbiAgICBzb2NrZXQub24oXCJjaGFuZ2VQcml4XCIsIChub3V2ZWF1UHJpeCwgc29jaykgPT4ge1xyXG4gICAgICAgIHVwZGF0ZVByaXgobm91dmVhdVByaXgsIHNvY2spO1xyXG4gICAgfSk7XHJcbiAgICB3YWl0Rm9yTmV3RW5jaGVyZSh0cnVlKTtcclxufVxyXG5cclxuZnVuY3Rpb24gc2FsZVByb2R1Y3QoKSB7XHJcbiAgICBpZGVudC50ZXh0Q29udGVudCA9IGBGaW4gZGUgbCdlbmNow6hyZS4gVW4gJHtpbnB1dE5hbWUudmFsdWV9IMOgICR7cHJpeEFjdHVlbC50ZXh0Q29udGVudH1gO1xyXG4gICAgc29ja2V0LmVtaXQoXCJhZGp1Z2VcIik7XHJcbiAgICB3YWl0Rm9yTmV3RW5jaGVyZShmYWxzZSk7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIHVwZGF0ZVByaXgobm91dmVhdVByaXgsIHNvY2spIHtcclxuICAgIGJ1dHRvblNhbGUuZGlzYWJsZWQgPSBmYWxzZTtcclxuICAgIHByaXhBY3R1ZWwudGV4dENvbnRlbnQgPSBub3V2ZWF1UHJpeCtcIuKCrFwiO1xyXG4gICAgaWRlbnQudGV4dENvbnRlbnQgPSBgTm91dmVsbGUgZW5jaMOocmUgcsOpw6d1IGRlICR7c29ja31gO1xyXG59XHJcblxyXG5mdW5jdGlvbiB3YWl0Rm9yTmV3RW5jaGVyZShkaXNhYmxlZCkge1xyXG4gICAgaW5wdXROYW1lLmRpc2FibGVkID0gZGlzYWJsZWQ7XHJcbiAgICBpbnB1dFZhbHVlLmRpc2FibGVkID0gZGlzYWJsZWQ7XHJcbiAgICBidXR0b25TdGFydC5kaXNhYmxlZCA9IGRpc2FibGVkO1xyXG59XHJcblxyXG5cclxuIl0sIm1hcHBpbmdz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\n//# sourceURL=webpack-internal:///./src/scripts/auctioneer.js\n')}},__webpack_exports__={};__webpack_modules__["./src/scripts/auctioneer.js"]()})();
\ No newline at end of file
diff --git a/encheres/server/public/scripts/bidder-bundle.js b/encheres/server/public/scripts/bidder-bundle.js
index 36081fbec2cfc9cfb3b7df492f318040f967349f..775530fafaff0513f73f1c3d96c7d1e174fb5dbe 100644
--- a/encheres/server/public/scripts/bidder-bundle.js
+++ b/encheres/server/public/scripts/bidder-bundle.js
@@ -1,2 +1,2 @@
 /*! For license information please see bidder-bundle.js.LICENSE.txt */
-(()=>{var __webpack_modules__={"./src/scripts/bidder.js":()=>{eval("console.log('le bundle-bidder a été généré');\nconst socket = io();//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2NyaXB0cy9iaWRkZXIuanMiLCJuYW1lcyI6WyJjb25zb2xlIiwibG9nIiwic29ja2V0IiwiaW8iXSwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsid2VicGFjazovL2FwcC8uL3NyYy9zY3JpcHRzL2JpZGRlci5qcz9hNjJhIl0sInNvdXJjZXNDb250ZW50IjpbImNvbnNvbGUubG9nKCdsZSBidW5kbGUtYmlkZGVyIGEgw6l0w6kgZ8OpbsOpcsOpJyk7XHJcblxyXG5jb25zdCBzb2NrZXQgPSBpbygpOyJdLCJtYXBwaW5ncyI6IkFBQUFBLE9BQU8sQ0FBQ0MsR0FBRyxDQUFDLCtCQUErQixDQUFDO0FBRTVDLE1BQU1DLE1BQU0sR0FBR0MsRUFBRSxDQUFDLENBQUMifQ==\n//# sourceURL=webpack-internal:///./src/scripts/bidder.js\n")}},__webpack_exports__={};__webpack_modules__["./src/scripts/bidder.js"]()})();
\ No newline at end of file
+(()=>{var __webpack_modules__={"./src/scripts/bidder.js":()=>{eval('console.log(\'le bundle-bidder a été généré\');\nconst socket = io();\nconst ident = document.getElementById("ident-bid");\nconst description = document.getElementsByClassName("description");\nconst prix = document.getElementsByClassName("prix");\nlet prixActuel = 0;\ndisplayButton("none");\nconst buttons = document.querySelectorAll("button");\nfor (const button of buttons) {\n  button.addEventListener("click", selectPrice);\n}\nfunction displayButton(display) {\n  const divButtons = document.getElementById("buttons");\n  divButtons.style.display = display;\n}\nsocket.on("infos", (name, value) => {\n  ident.textContent = `Une nouvelle enchère commence`;\n  enchereBegin(name, value);\n  displayButton("block");\n  socket.on("changePrix", nouveauPrix => {\n    changePrix(nouveauPrix);\n  });\n});\nsocket.on("deconnexion", () => deconnexionAuctiooneer());\nsocket.on("winner", () => {\n  win();\n});\nfunction changePrix(nouveauPrix) {\n  prix[0].textContent = nouveauPrix + "€";\n  prixActuel = nouveauPrix;\n}\nfunction enchereBegin(name, value) {\n  description[0].textContent = name;\n  prix[0].textContent = value + "€";\n  prixActuel = parseInt(prix[0].textContent);\n}\nfunction selectPrice(event) {\n  const selectedPrix = parseInt(event.target.textContent);\n  prixActuel += selectedPrix;\n  socket.emit("prixActuel", prixActuel);\n  socket.on("adjuge", () => finishEnchere());\n  ident.textContent = `Vous avez fait une enchère de +${selectedPrix}€`;\n  socket.emit("encherisseur");\n}\nfunction finishEnchere() {\n  ident.textContent = `Enchères terminé,  l\'enchère a été remporté par une autre personne`;\n  displayButton("none");\n}\nfunction win() {\n  console.log("ici");\n  ident.textContent = `Enchères terminé, vous avez remporté l\'enchère`;\n  displayButton("none");\n}\nfunction deconnexionAuctiooneer() {\n  ident.textContent = "le comissaire priseur s\'est déconnecté, fin de l\'nchère";\n  prix[0].textContent = "-€";\n  description[0].textContent = "";\n  displayButton("none");\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9zcmMvc2NyaXB0cy9iaWRkZXIuanMiLCJuYW1lcyI6WyJjb25zb2xlIiwibG9nIiwic29ja2V0IiwiaW8iLCJpZGVudCIsImRvY3VtZW50IiwiZ2V0RWxlbWVudEJ5SWQiLCJkZXNjcmlwdGlvbiIsImdldEVsZW1lbnRzQnlDbGFzc05hbWUiLCJwcml4IiwicHJpeEFjdHVlbCIsImRpc3BsYXlCdXR0b24iLCJidXR0b25zIiwicXVlcnlTZWxlY3RvckFsbCIsImJ1dHRvbiIsImFkZEV2ZW50TGlzdGVuZXIiLCJzZWxlY3RQcmljZSIsImRpc3BsYXkiLCJkaXZCdXR0b25zIiwic3R5bGUiLCJvbiIsIm5hbWUiLCJ2YWx1ZSIsInRleHRDb250ZW50IiwiZW5jaGVyZUJlZ2luIiwibm91dmVhdVByaXgiLCJjaGFuZ2VQcml4IiwiZGVjb25uZXhpb25BdWN0aW9vbmVlciIsIndpbiIsInBhcnNlSW50IiwiZXZlbnQiLCJzZWxlY3RlZFByaXgiLCJ0YXJnZXQiLCJlbWl0IiwiZmluaXNoRW5jaGVyZSJdLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vYXBwLy4vc3JjL3NjcmlwdHMvYmlkZGVyLmpzP2E2MmEiXSwic291cmNlc0NvbnRlbnQiOlsiY29uc29sZS5sb2coJ2xlIGJ1bmRsZS1iaWRkZXIgYSDDqXTDqSBnw6luw6lyw6knKTtcclxuXHJcbmNvbnN0IHNvY2tldCA9IGlvKCk7XHJcblxyXG5jb25zdCBpZGVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwiaWRlbnQtYmlkXCIpO1xyXG5jb25zdCBkZXNjcmlwdGlvbiA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoXCJkZXNjcmlwdGlvblwiKTtcclxuY29uc3QgcHJpeCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoXCJwcml4XCIpO1xyXG5cclxubGV0IHByaXhBY3R1ZWwgPSAwO1xyXG5cclxuZGlzcGxheUJ1dHRvbihcIm5vbmVcIik7XHJcbmNvbnN0IGJ1dHRvbnMgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKFwiYnV0dG9uXCIpO1xyXG5mb3IoY29uc3QgYnV0dG9uIG9mIGJ1dHRvbnMpIHtcclxuICAgIGJ1dHRvbi5hZGRFdmVudExpc3RlbmVyKFwiY2xpY2tcIiwgc2VsZWN0UHJpY2UpO1xyXG59XHJcblxyXG5mdW5jdGlvbiBkaXNwbGF5QnV0dG9uKGRpc3BsYXkpIHtcclxuICAgIGNvbnN0IGRpdkJ1dHRvbnMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcImJ1dHRvbnNcIik7XHJcbiAgICBkaXZCdXR0b25zLnN0eWxlLmRpc3BsYXkgPSBkaXNwbGF5O1xyXG59XHJcblxyXG5zb2NrZXQub24oXCJpbmZvc1wiLCAobmFtZSwgdmFsdWUpID0+IHtcclxuICAgIGlkZW50LnRleHRDb250ZW50ID0gYFVuZSBub3V2ZWxsZSBlbmNow6hyZSBjb21tZW5jZWA7XHJcbiAgICBlbmNoZXJlQmVnaW4obmFtZSwgdmFsdWUpO1xyXG4gICAgZGlzcGxheUJ1dHRvbihcImJsb2NrXCIpO1xyXG4gICAgc29ja2V0Lm9uKFwiY2hhbmdlUHJpeFwiLCAobm91dmVhdVByaXgpID0+IHtjaGFuZ2VQcml4KG5vdXZlYXVQcml4KX0pO1xyXG59KTtcclxuXHJcbnNvY2tldC5vbihcImRlY29ubmV4aW9uXCIsICgpID0+IGRlY29ubmV4aW9uQXVjdGlvb25lZXIoKSk7XHJcblxyXG5zb2NrZXQub24oXCJ3aW5uZXJcIiwgKCkgPT4ge3dpbigpfSk7XHJcblxyXG5mdW5jdGlvbiBjaGFuZ2VQcml4KG5vdXZlYXVQcml4KSB7XHJcbiAgICBwcml4WzBdLnRleHRDb250ZW50ID0gbm91dmVhdVByaXgrXCLigqxcIjtcclxuICAgIHByaXhBY3R1ZWwgPSBub3V2ZWF1UHJpeDtcclxufVxyXG5cclxuZnVuY3Rpb24gZW5jaGVyZUJlZ2luKG5hbWUsIHZhbHVlKSB7XHJcbiAgICBkZXNjcmlwdGlvblswXS50ZXh0Q29udGVudCA9IG5hbWU7XHJcbiAgICBwcml4WzBdLnRleHRDb250ZW50ID0gdmFsdWUrXCLigqxcIjtcclxuICAgIHByaXhBY3R1ZWwgPSBwYXJzZUludChwcml4WzBdLnRleHRDb250ZW50KTtcclxufVxyXG5cclxuXHJcbmZ1bmN0aW9uIHNlbGVjdFByaWNlKGV2ZW50KSB7XHJcbiAgICBjb25zdCBzZWxlY3RlZFByaXggPSBwYXJzZUludChldmVudC50YXJnZXQudGV4dENvbnRlbnQpO1xyXG4gICAgcHJpeEFjdHVlbCArPSBzZWxlY3RlZFByaXg7XHJcbiAgICBzb2NrZXQuZW1pdChcInByaXhBY3R1ZWxcIiwgcHJpeEFjdHVlbCk7XHJcbiAgICBzb2NrZXQub24oXCJhZGp1Z2VcIiwgKCkgPT4gZmluaXNoRW5jaGVyZSgpKTtcclxuICAgIGlkZW50LnRleHRDb250ZW50ID0gYFZvdXMgYXZleiBmYWl0IHVuZSBlbmNow6hyZSBkZSArJHtzZWxlY3RlZFByaXh94oKsYDtcclxuICAgIHNvY2tldC5lbWl0KFwiZW5jaGVyaXNzZXVyXCIpO1xyXG59XHJcblxyXG5mdW5jdGlvbiBmaW5pc2hFbmNoZXJlKCkge1xyXG4gICAgaWRlbnQudGV4dENvbnRlbnQgPSBgRW5jaMOocmVzIHRlcm1pbsOpLCAgbCdlbmNow6hyZSBhIMOpdMOpIHJlbXBvcnTDqSBwYXIgdW5lIGF1dHJlIHBlcnNvbm5lYDtcclxuICAgIGRpc3BsYXlCdXR0b24oXCJub25lXCIpO1xyXG59XHJcblxyXG5mdW5jdGlvbiB3aW4oKSB7XHJcbiAgICBjb25zb2xlLmxvZyhcImljaVwiKTtcclxuICAgIGlkZW50LnRleHRDb250ZW50ID0gYEVuY2jDqHJlcyB0ZXJtaW7DqSwgdm91cyBhdmV6IHJlbXBvcnTDqSBsJ2VuY2jDqHJlYDtcclxuICAgIGRpc3BsYXlCdXR0b24oXCJub25lXCIpO1xyXG59XHJcblxyXG5mdW5jdGlvbiBkZWNvbm5leGlvbkF1Y3Rpb29uZWVyKCkge1xyXG4gICAgaWRlbnQudGV4dENvbnRlbnQgPSBcImxlIGNvbWlzc2FpcmUgcHJpc2V1ciBzJ2VzdCBkw6ljb25uZWN0w6ksIGZpbiBkZSBsJ25jaMOocmVcIjtcclxuICAgIHByaXhbMF0udGV4dENvbnRlbnQgPSBcIi3igqxcIjtcclxuICAgIGRlc2NyaXB0aW9uWzBdLnRleHRDb250ZW50ID0gXCJcIjtcclxuICAgIGRpc3BsYXlCdXR0b24oXCJub25lXCIpO1xyXG59XHJcblxyXG5cclxuXHJcbiJdLCJtYXBwaW5ncyI6IkFBQUFBLE9BQU8sQ0FBQ0MsR0FBRyxDQUFDLCtCQUErQixDQUFDO0FBRTVDLE1BQU1DLE1BQU0sR0FBR0MsRUFBRSxDQUFDLENBQUM7QUFFbkIsTUFBTUMsS0FBSyxHQUFHQyxRQUFRLENBQUNDLGNBQWMsQ0FBQyxXQUFXLENBQUM7QUFDbEQsTUFBTUMsV0FBVyxHQUFHRixRQUFRLENBQUNHLHNCQUFzQixDQUFDLGFBQWEsQ0FBQztBQUNsRSxNQUFNQyxJQUFJLEdBQUdKLFFBQVEsQ0FBQ0csc0JBQXNCLENBQUMsTUFBTSxDQUFDO0FBRXBELElBQUlFLFVBQVUsR0FBRyxDQUFDO0FBRWxCQyxhQUFhLENBQUMsTUFBTSxDQUFDO0FBQ3JCLE1BQU1DLE9BQU8sR0FBR1AsUUFBUSxDQUFDUSxnQkFBZ0IsQ0FBQyxRQUFRLENBQUM7QUFDbkQsS0FBSSxNQUFNQyxNQUFNLElBQUlGLE9BQU8sRUFBRTtFQUN6QkUsTUFBTSxDQUFDQyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUVDLFdBQVcsQ0FBQztBQUNqRDtBQUVBLFNBQVNMLGFBQWFBLENBQUNNLE9BQU8sRUFBRTtFQUM1QixNQUFNQyxVQUFVLEdBQUdiLFFBQVEsQ0FBQ0MsY0FBYyxDQUFDLFNBQVMsQ0FBQztFQUNyRFksVUFBVSxDQUFDQyxLQUFLLENBQUNGLE9BQU8sR0FBR0EsT0FBTztBQUN0QztBQUVBZixNQUFNLENBQUNrQixFQUFFLENBQUMsT0FBTyxFQUFFLENBQUNDLElBQUksRUFBRUMsS0FBSyxLQUFLO0VBQ2hDbEIsS0FBSyxDQUFDbUIsV0FBVyxHQUFJLCtCQUE4QjtFQUNuREMsWUFBWSxDQUFDSCxJQUFJLEVBQUVDLEtBQUssQ0FBQztFQUN6QlgsYUFBYSxDQUFDLE9BQU8sQ0FBQztFQUN0QlQsTUFBTSxDQUFDa0IsRUFBRSxDQUFDLFlBQVksRUFBR0ssV0FBVyxJQUFLO0lBQUNDLFVBQVUsQ0FBQ0QsV0FBVyxDQUFDO0VBQUEsQ0FBQyxDQUFDO0FBQ3ZFLENBQUMsQ0FBQztBQUVGdkIsTUFBTSxDQUFDa0IsRUFBRSxDQUFDLGFBQWEsRUFBRSxNQUFNTyxzQkFBc0IsQ0FBQyxDQUFDLENBQUM7QUFFeER6QixNQUFNLENBQUNrQixFQUFFLENBQUMsUUFBUSxFQUFFLE1BQU07RUFBQ1EsR0FBRyxDQUFDLENBQUM7QUFBQSxDQUFDLENBQUM7QUFFbEMsU0FBU0YsVUFBVUEsQ0FBQ0QsV0FBVyxFQUFFO0VBQzdCaEIsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDYyxXQUFXLEdBQUdFLFdBQVcsR0FBQyxHQUFHO0VBQ3JDZixVQUFVLEdBQUdlLFdBQVc7QUFDNUI7QUFFQSxTQUFTRCxZQUFZQSxDQUFDSCxJQUFJLEVBQUVDLEtBQUssRUFBRTtFQUMvQmYsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDZ0IsV0FBVyxHQUFHRixJQUFJO0VBQ2pDWixJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUNjLFdBQVcsR0FBR0QsS0FBSyxHQUFDLEdBQUc7RUFDL0JaLFVBQVUsR0FBR21CLFFBQVEsQ0FBQ3BCLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQ2MsV0FBVyxDQUFDO0FBQzlDO0FBR0EsU0FBU1AsV0FBV0EsQ0FBQ2MsS0FBSyxFQUFFO0VBQ3hCLE1BQU1DLFlBQVksR0FBR0YsUUFBUSxDQUFDQyxLQUFLLENBQUNFLE1BQU0sQ0FBQ1QsV0FBVyxDQUFDO0VBQ3ZEYixVQUFVLElBQUlxQixZQUFZO0VBQzFCN0IsTUFBTSxDQUFDK0IsSUFBSSxDQUFDLFlBQVksRUFBRXZCLFVBQVUsQ0FBQztFQUNyQ1IsTUFBTSxDQUFDa0IsRUFBRSxDQUFDLFFBQVEsRUFBRSxNQUFNYyxhQUFhLENBQUMsQ0FBQyxDQUFDO0VBQzFDOUIsS0FBSyxDQUFDbUIsV0FBVyxHQUFJLGtDQUFpQ1EsWUFBYSxHQUFFO0VBQ3JFN0IsTUFBTSxDQUFDK0IsSUFBSSxDQUFDLGNBQWMsQ0FBQztBQUMvQjtBQUVBLFNBQVNDLGFBQWFBLENBQUEsRUFBRztFQUNyQjlCLEtBQUssQ0FBQ21CLFdBQVcsR0FBSSxvRUFBbUU7RUFDeEZaLGFBQWEsQ0FBQyxNQUFNLENBQUM7QUFDekI7QUFFQSxTQUFTaUIsR0FBR0EsQ0FBQSxFQUFHO0VBQ1g1QixPQUFPLENBQUNDLEdBQUcsQ0FBQyxLQUFLLENBQUM7RUFDbEJHLEtBQUssQ0FBQ21CLFdBQVcsR0FBSSxnREFBK0M7RUFDcEVaLGFBQWEsQ0FBQyxNQUFNLENBQUM7QUFDekI7QUFFQSxTQUFTZ0Isc0JBQXNCQSxDQUFBLEVBQUc7RUFDOUJ2QixLQUFLLENBQUNtQixXQUFXLEdBQUcseURBQXlEO0VBQzdFZCxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUNjLFdBQVcsR0FBRyxJQUFJO0VBQzFCaEIsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDZ0IsV0FBVyxHQUFHLEVBQUU7RUFDL0JaLGFBQWEsQ0FBQyxNQUFNLENBQUM7QUFDekIifQ==\n//# sourceURL=webpack-internal:///./src/scripts/bidder.js\n')}},__webpack_exports__={};__webpack_modules__["./src/scripts/bidder.js"]()})();
\ No newline at end of file
diff --git a/encheres/server/public/style/style.css b/encheres/server/public/style/style.css
index 993a797e063f4289a763f60d5cd2238659305b8f..b2a3bd6165de05266ac18d6e5d9499cf86f02d9f 100644
--- a/encheres/server/public/style/style.css
+++ b/encheres/server/public/style/style.css
@@ -4,12 +4,66 @@ body {
   font-family : Verdana, Helvetica, Arial, sans-serif;
   background-color: white;
   margin : 0% 2%;
+  padding: 50px;
+  font: 14px "Lucida Grande", Helvetica, Arial, sans-serif;
 }
 
-kbd {
+div {
   padding : 0px 2px;
   font-family: "Consolas", "Bitstream Vera Sans Mono", "Courier New", Courier, monospace;
   color : rgb(60,60,60);
   font-style : bold;
   font-size : large;
 }
+
+input {
+  padding: 5px 10px; /* Ajoute un peu de padding pour l'esthétique */
+  width: 150px; /* Réduit la largeur de l'input */
+}
+
+#ident-auc {
+  border: 2px solid #000; /* Ajoute une bordure noire solide autour du conteneur */
+  padding: 10px; /* Ajoute du padding à l'intérieur du conteneur pour ne pas coller au contenu */
+  margin: 10px; /* Ajoute un peu d'espace autour du conteneur */
+}
+
+h1 {
+  color: #00B7FF;
+}
+.bidder, #prod-auc{
+  display: flex; /* Active Flexbox */
+  flex-direction: column; /* Dispose les éléments enfants en colonne */
+  gap: 10px; /* Ajoute un espace entre les éléments enfants */
+  border: 2px solid #000; /* Ajoute une bordure noire solide autour du conteneur */
+  padding: 10px; /* Ajoute du padding à l'intérieur du conteneur pour ne pas coller au contenu */
+  margin: 10px; /* Ajoute un peu d'espace autour du conteneur */
+}
+
+.price-options {
+  display: flex;
+  align-items: center; /* Centre les éléments horizontalement */
+  gap: 10px; /* Espace entre les éléments */
+  border: 2px solid #000; /* Ajoute une bordure noire solide autour du conteneur */
+  padding: 10px; /* Ajoute du padding à l'intérieur du conteneur pour ne pas coller au contenu */
+  margin: 10px; /* Ajoute un peu d'espace autour du conteneur */
+}
+
+.price-options p {
+  margin: 0; /* Supprime la marge par défaut pour aligner correctement le texte */
+  font-size: 18px; /* Taille du texte */
+  color: #333; /* Couleur du texte */
+}
+
+.price-button {
+  padding: 10px 20px; /* Padding autour du texte */
+  font-size: 16px; /* Taille du texte */
+  color: white; /* Couleur du texte */
+  background-color: #007bff; /* Couleur de fond du bouton */
+  border: none; /* Pas de bordure */
+  border-radius: 5px; /* Bordures arrondies */
+  cursor: pointer; /* Change le curseur en main au survol */
+}
+
+.price-button:hover {
+  background-color: #0056b3; /* Couleur de fond du bouton au survol */
+}