From 4974e2a2ce40aeb3e97e5cb428b22867ce8aaeaa Mon Sep 17 00:00:00 2001 From: Stephan Date: Mon, 16 Mar 2015 10:52:54 +0100 Subject: [PATCH] U4-6306 - hostname validation issue --- .../umbraco/dialogs/AssignDomain2.aspx | 2 +- .../umbraco_client/Dialogs/AssignDomain2.js | 12 +++++++++--- .../umbraco/dialogs/AssignDomain2.aspx | 2 +- 3 files changed, 11 insertions(+), 5 deletions(-) diff --git a/src/Umbraco.Web.UI/umbraco/dialogs/AssignDomain2.aspx b/src/Umbraco.Web.UI/umbraco/dialogs/AssignDomain2.aspx index 2464e9446b..9a69576706 100644 --- a/src/Umbraco.Web.UI/umbraco/dialogs/AssignDomain2.aspx +++ b/src/Umbraco.Web.UI/umbraco/dialogs/AssignDomain2.aspx @@ -51,7 +51,7 @@ - + diff --git a/src/Umbraco.Web.UI/umbraco_client/Dialogs/AssignDomain2.js b/src/Umbraco.Web.UI/umbraco_client/Dialogs/AssignDomain2.js index 92cb1b50a9..cfd33541cb 100644 --- a/src/Umbraco.Web.UI/umbraco_client/Dialogs/AssignDomain2.js +++ b/src/Umbraco.Web.UI/umbraco_client/Dialogs/AssignDomain2.js @@ -52,9 +52,15 @@ ko.applyBindings(self); $.validator.addMethod("domain", function (value, element, param) { + // beware! encode('test') == 'test-' + // read eg https://rt.cpan.org/Public/Bug/Display.html?id=94347 value = punycode.encode(value); - var re = /^(http[s]?:\/\/)?([-\w]+(\.[-\w]+)*)(:\d+)?(\/[-\w]*)?$/gi; - return this.optional(element) || re.test(value); + // that regex is best-effort and certainly not exact + var re = /^(http[s]?:\/\/)?([-\w]+(\.[-\w]+)*)(:\d+)?(\/[-\w]*|-)?$/gi; + var isopt = this.optional(element); + var retest = re.test(value); + var ret = isopt || retest; + return ret; }, self._opts.invalidDomain); $.validator.addMethod("duplicate", function (value, element, param) { @@ -85,7 +91,7 @@ return false; var mask = $('#komask'); - var masked = mask.next(); + var masked = mask.parent(); mask.height(masked.height()); mask.width(masked.width()); mask.show(); diff --git a/src/Umbraco.Web/umbraco.presentation/umbraco/dialogs/AssignDomain2.aspx b/src/Umbraco.Web/umbraco.presentation/umbraco/dialogs/AssignDomain2.aspx index ec6e9f7669..88af0c2007 100644 --- a/src/Umbraco.Web/umbraco.presentation/umbraco/dialogs/AssignDomain2.aspx +++ b/src/Umbraco.Web/umbraco.presentation/umbraco/dialogs/AssignDomain2.aspx @@ -53,7 +53,7 @@ - +