From 33d9bd112ca027e88c1e1fa59b96eca4b3985cdb Mon Sep 17 00:00:00 2001 From: xcps Date: Sun, 4 Feb 2018 12:12:09 +0500 Subject: [PATCH] Detect by search string length what to search for --- routes/search.js | 61 +++++++++++++++++++++++++----------------------- 1 file changed, 32 insertions(+), 29 deletions(-) diff --git a/routes/search.js b/routes/search.js index 5990eb2..95a7a26 100644 --- a/routes/search.js +++ b/routes/search.js @@ -26,38 +26,41 @@ router.post('/', async function(req, res, next) { } } - // looking for address - const address = await models.Address.findOne({ - where: { - address: search, - }, - }); - if (address) { - res.redirect(`/address/${address.address}/`); - return; - } + if (search.length === 34) { + // looking for address + const address = await models.Address.findOne({ + where: { + address: search, + }, + }); + if (address) { + res.redirect(`/address/${address.address}/`); + return; + } + } else if(search.length === 64) { + // looking for transaction + const transaction = await models.Transaction.findOne({ + where: { + txid: search, + }, + }); + if (transaction) { + res.redirect(`/transaction/${transaction.txid}/`); + return; + } - // looking for transaction - const transaction = await models.Transaction.findOne({ - where: { - txid: search, - }, - }); - if (transaction) { - res.redirect(`/transaction/${transaction.txid}/`); - return; + // looking for block + const block = await models.Block.findOne({ + where: { + hash: search, + }, + }); + if (block) { + res.redirect(`/block/${block.hash}/`); + return; + } } - // looking for block - const block = await models.Block.findOne({ - where: { - hash: search, - }, - }); - if (block) { - res.redirect(`/block/${block.hash}/`); - return; - } res.status(404).render('404'); });