From d7cd936b5452ba26f1fb623276ab6ca1c20ea1eb Mon Sep 17 00:00:00 2001 From: Julian Lam Date: Tue, 3 Mar 2015 12:34:41 -0500 Subject: [PATCH] added preserveCase option to slugify --- public/src/utils.js | 4 ++-- src/groups.js | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/public/src/utils.js b/public/src/utils.js index 1521d53e28..4efad224fd 100644 --- a/public/src/utils.js +++ b/public/src/utils.js @@ -74,7 +74,7 @@ languageKeyRegex: /\[\[[\w]+:.+\]\]/, //http://dense13.com/blog/2009/05/03/converting-string-to-slug-javascript/ - slugify: function(str) { + slugify: function(str, preserveCase) { if (!str) { str = ''; } str = str.replace(utils.trimRegex, ''); if(utils.isLatin.test(str)) { @@ -82,7 +82,7 @@ } else { str = XRegExp.replace(str, utils.invalidUnicodeChars, '-'); } - str = str.toLocaleLowerCase(); + str = !preserveCase ? str.toLocaleLowerCase() : str; str = str.replace(utils.collapseWhitespace, '-'); str = str.replace(utils.collapseDash, '-'); str = str.replace(utils.trimTrailingDash, ''); diff --git a/src/groups.js b/src/groups.js index ea7d8bcdc4..452b47d56c 100644 --- a/src/groups.js +++ b/src/groups.js @@ -224,10 +224,10 @@ var async = require('async'), if (err) { return callback(err); } - results.base.name = validator.escape(results.base.name); - results.base.description = validator.escape(results.base.description); + results.base.name = !options.unescape ? validator.escape(results.base.name) : results.base.name; + results.base.description = options.unescape ? validator.escape(results.base.description) : results.base.description; results.base.descriptionParsed = descriptionParsed; - results.base.userTitle = validator.escape(results.base.userTitle); + results.base.userTitle = options.unescape ? validator.escape(results.base.userTitle) : results.base.userTitle; results.base.userTitleEnabled = results.base.userTitleEnabled ? !!parseInt(results.base.userTitleEnabled, 10) : true; results.base.createtimeISO = utils.toISOString(results.base.createtime); results.base.members = results.users.filter(Boolean);