From a7b633d93c14819f8d06c0535e133ddca826144e Mon Sep 17 00:00:00 2001 From: Kubat <mael.martin31@gmail.com> Date: Fri, 6 Nov 2020 10:09:48 +0100 Subject: [PATCH] Fix search in DB --- instance/index.html | 22 +++++++++++----------- instance/main.js | 12 ++++++------ main.js | 10 ++++++++-- 3 files changed, 25 insertions(+), 19 deletions(-) diff --git a/instance/index.html b/instance/index.html index e67b106..cc36629 100644 --- a/instance/index.html +++ b/instance/index.html @@ -24,13 +24,13 @@ </style> <script> $(document).ready(() => { - $('#filterInput').on('keyup', () => { - var value = $(this).val().toLowerCase(); - $('#panelLeft *').filter(() => { - $(this).toggle( - $(this).text().toLowerCase().indexOf(value) > -1 - ); - }); + $('#filterInput').on('keypress', e => { + /* On 'Return'. */ + if (e.which != 13) return; + ipcRenderer.send( + 'reload-db-request', + $('#filterInput').val() + ); }); }); </script> @@ -42,14 +42,14 @@ class="d-flex flex-row bd-highlight mb-3 row card" ></div> <div id="panelWrapper" class="row"> - <div + <ul id="panelLeft" class="col panel d-flex flex-column bd-highlight mb-3" - ></div> - <div + ></ul> + <ul id="panelRight" class="col panel d-flex flex-column bd-highlight mb-3" - ></div> + ></ul> </div> <div id="progressBar" diff --git a/instance/main.js b/instance/main.js index d1f2ebd..c70b2e1 100644 --- a/instance/main.js +++ b/instance/main.js @@ -100,18 +100,18 @@ ipcRenderer.on('reload-db-responce', (event, arg) => { var karaList = ''; logger.debug(`Web page got reload-db`); arg.forEach(kara => { - karaList += `<div class="card p-2 bd-highlight shadow-none d-flex flex-row bd-highlight mb-3 karaCard"> + karaList += `<li class="card p-2 bd-highlight shadow-none d-flex flex-row bd-highlight mb-3 karaCard"> <span class="karaElement text-uppercase p-2 bd-highlight badge badge-light"><b>${kara.language}</b></span> <span class="karaElement text-uppercase p-2 bd-highlight badge badge-light"><b>${kara.cat}</b></span> <span class="karaElement text-uppercase p-2 bd-highlight badge badge-light"><b>${kara.type}</b></span> - <div class="karaElement p-2 bd-highlight mr-auto"><b>${kara.source}<br> ${kara.title}</b> <i>[${kara.author}]</i></div> + <span class="karaElement p-2 bd-highlight mr-auto"><b>${kara.source}<br> ${kara.title}</b> <i>[${kara.author}]</i></span> <div class="karaElement p-2 bd-highlight"> <div class="d-flex flex-row bd-highlight mb-3 btn-group karaActionBtnGroup" role="group"> <button class="btn btn-outline-light karaActionBtn"><i class="fas fa-plus"></i></button> <button class="btn btn-outline-light karaActionBtn"><i class="fas fa-level-up-alt"></i></button> </div> </div> - </div>`; + </li>`; }); document.getElementById('panelLeft').innerHTML = karaList; }); @@ -121,11 +121,11 @@ ipcRenderer.on('reload-queue-responce', (event, arg) => { var karaList = ''; logger.debug(`Web page got reload-queue`); arg.forEach(kara => { - karaList += `<div class="card p-2 bd-highlight shadow-none d-flex flex-row bd-highlight mb-3 karaCard"> + karaList += `<li class="card p-2 bd-highlight shadow-none d-flex flex-row bd-highlight mb-3 karaCard"> <span class="karaElement text-uppercase p-2 bd-highlight badge badge-light"><b>${kara.language}</b></span> <span class="karaElement text-uppercase p-2 bd-highlight badge badge-light"><b>${kara.cat}</b></span> <span class="karaElement text-uppercase p-2 bd-highlight badge badge-light"><b>${kara.type}</b></span> - <div class="karaElement p-2 bd-highlight mr-auto"><b>${kara.source}<br> ${kara.title}</b> <i>[${kara.author}]</i></div> + <span class="karaElement p-2 bd-highlight mr-auto"><b>${kara.source}<br> ${kara.title}</b> <i>[${kara.author}]</i></span> <span class="karaElement p-3 bd-highlight"><b>${kara.position}</b></span> <div class="karaElement p-2 bd-highlight"> <div class="d-flex flex-row bd-highlight mb-3 btn-group karaActionBtnGroup" role="group"> @@ -133,7 +133,7 @@ ipcRenderer.on('reload-queue-responce', (event, arg) => { <button class="btn btn-outline-light karaActionBtn"><i class="fas fa-play"></i></button> </div> </div> - </div>`; + </li>`; }); document.getElementById('panelRight').innerHTML = karaList; }); diff --git a/main.js b/main.js index 76296c6..895eb3b 100644 --- a/main.js +++ b/main.js @@ -143,9 +143,15 @@ ipcMain.on('cmd-clear', (event, arg) => { * The `arg` is the HTML object of the pannel */ ipcMain.on('reload-db-request', (event, arg) => { logger.info('Reloading the DB content'); - myDb.all().then(karas => { + var callback = karas => { event.reply('reload-db-responce', karas); - }); + }; + if (arg) { + logger.debug(`Reload DB with search '${arg}'`); + myDb.search(arg).then(callback); + } else { + myDb.all().then(callback); + } }); /* Send the queue to the webpage when asked to */ -- GitLab