diff options
| -rw-r--r-- | routes.js | 4 | ||||
| -rw-r--r-- | utils.js | 4 |
2 files changed, 4 insertions, 4 deletions
@@ -8,8 +8,8 @@ async function createRoute(res, url, slug) { try { if (!utils.isUrlFormatted(url)) return utils.sendBadRequestError(res, 'URL "'+url+'" is malformatted. Must be a valid URL.', 'Malformed URL'); - if (!utils.isAlphaNumeric(slug)) - return utils.sendBadRequestError(res, 'Slug "'+slug+'" is malformatted. Must be alphanumeric.', 'Malformed Short URL'); + if (!utils.isSlugFormatted(slug)) + return utils.sendBadRequestError(res, 'Slug "'+slug+'" is malformatted. Must be 2+ letters or numbers with optional dashes in the middle.', 'Malformed Short URL'); slug = slug.toLowerCase(); if (await Url.exists({slug: slug})) @@ -34,8 +34,8 @@ const helperFunctions = { sendSuccessfulSlugCreation : function (res, slug) { res.status(201).json({status: "SUCCESS", statusCode: 201, data: {shortUrl: config.BASE+slug}}); }, - isAlphaNumeric : function (str) { - return str.match(/^[a-zA-Z0-9]+$/) !== null; + isSlugFormatted : function (str) { + return str.match(/^[a-zA-Z0-9][a-zA-Z0-9\-]*[a-zA-Z0-9]$/) !== null; }, isUrlFormatted : function (str) { try { |
