diff --git a/lg/members_en.txt b/lg/members_en.txt index 84d2f38affce5880c8eaf082d95872f130c96fc6..5af1bf16c6092d692cf34aad180aa1da075c43ba 100755 --- a/lg/members_en.txt +++ b/lg/members_en.txt @@ -67,4 +67,5 @@ NEXT_YN Feign the following Y[n] landing MEMBER_FILTER search a member EXPIRE_TIME expiration datetime RANDOM_LIST Draw lots +RANDOM_LIST_END membres (max. 100) MEMBERS members \ No newline at end of file diff --git a/lg/members_fr.txt b/lg/members_fr.txt index 5a13228d6573952715dd1a83e33b72894b36d739..d330697c07ed4403f5bb463612b0c6967aaffcd3 100755 --- a/lg/members_fr.txt +++ b/lg/members_fr.txt @@ -67,4 +67,5 @@ NEXT_YN Simuler le palier Y[n] suivant MEMBER_FILTER rechercher un membre EXPIRE_TIME date et heure d'expiration RANDOM_LIST Tirer au sort +RANDOM_LIST_END membres (max. 100) MEMBERS membres \ No newline at end of file diff --git a/lib/constants2.ts b/lib/constants2.ts index 80530f207c94cd82bcc138b4b859b3efb393b4af..32ddf69e2e45554303807dadf8a81821a2c45f31 100755 --- a/lib/constants2.ts +++ b/lib/constants2.ts @@ -13,5 +13,9 @@ export const MonitConstants = { INIT: 2, GET_SENTRIES_COUNT: 3, GET_D_SEN: 3 - } + }, + MEMBERS_VIEW: { + DEFAULT_MEMBERS_RANDOM_NUMBER: 10, + MEMBERS_DISPLAY_MAX: 100, + }, }; diff --git a/routes/members2.ts b/routes/members2.ts index aa761d5a556d0584001ba5bb87149b754452c3e3..6bb77864db7947fbacb5b7f89e923df361dfa646 100755 --- a/routes/members2.ts +++ b/routes/members2.ts @@ -70,8 +70,17 @@ module.exports = async (req: any, res: any, next: any) => { var centrality = req.query.centrality || "no"; // Valeur par défaut var format = req.query.format || 'HTML'; // Valeur par défaut let nextYn = (req.query.nextYn=="yes") ? "yes":"no"; - let randomList = (req.query.randomList=="yes") ? "yes":"no"; - let numberOfRandomMembers = req.query.randomCounts || 10 + let randomList = req.query.randomList === 'no' ? 'no' : 'yes'; + let numberOfRandomMembers = parseInt(req.query.randomCounts) || MonitConstants.MEMBERS_VIEW.DEFAULT_MEMBERS_RANDOM_NUMBER + + // Recherche aléatoire + if (randomList === 'yes') { + if (isNaN(numberOfRandomMembers)) { + numberOfRandomMembers = MonitConstants.MEMBERS_VIEW.DEFAULT_MEMBERS_RANDOM_NUMBER + } + numberOfRandomMembers = Math.min(numberOfRandomMembers, MonitConstants.MEMBERS_VIEW.MEMBERS_DISPLAY_MAX) + } + // Vérifier la valeur de nextYn dans le cache let lastUpgradeTimeDatas = membersQuality(MonitConstants.QUALITY_CACHE_ACTION.INIT); diff --git a/views/members.html b/views/members.html index 462045c5c590858926962919ed65c154f8b0655a..a3dbb9055db3879bc91e1a56b4dc2908f36a0928 100755 --- a/views/members.html +++ b/views/members.html @@ -47,8 +47,8 @@ ${printMenu(MENU_LANG, help, "MEMBERS")} <input type="checkbox" name="pendingSigs" value="yes" ${pendingSigs == 'yes' ? 'checked' : ''}>${LANG["CHECKBOX_PENDING_SIGS"]}.<br> <input type="checkbox" name="mode" value="emitted" ${mode == 'emitted' ? 'checked' : ''}>${LANG["CHECKBOX_MODE_SIG"]}.<br> <input type="checkbox" name="nextYn" value="yes" ${nextYn == 'yes' ? 'checked' : ''}> ${LANG["NEXT_YN"]}<br> -<input type="checkbox" name="randomList" value="yes" ${randomList == 'yes' ? 'checked' : ''}> ${LANG["RANDOM_LIST"]} -<input type="number" name="randomCounts" value="${numberOfRandomMembers}"/> ${LANG["MEMBERS"]}.<br> +<input type="checkbox" name="randomList" value="yes" ${randomList == 'yes' ? 'checked' : ''}> ${LANG["RANDOM_LIST"]} +<input type="number" name="randomCounts" value="${numberOfRandomMembers}"/> ${LANG["RANDOM_LIST_END"]}.<br> <hr> <!-- Afficher la légende et l'aide -->