From 0c9b8ab9ce26cef8176fd7c625c28683ee90a267 Mon Sep 17 00:00:00 2001 From: John Bintz Date: Wed, 3 Apr 2013 06:59:46 -0400 Subject: [PATCH 1/3] ensure slugs don't start or end with a dash --- lib/formtastic-slug/slug_input.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/formtastic-slug/slug_input.rb b/lib/formtastic-slug/slug_input.rb index 8184d8f..e00e36c 100644 --- a/lib/formtastic-slug/slug_input.rb +++ b/lib/formtastic-slug/slug_input.rb @@ -47,7 +47,7 @@ class SlugInput < Formtastic::Inputs::StringInput var setSlug = function(text) { var i, k; - var originalSlug = text.toLowerCase().replace(/[^a-z0-9]+/g, '-'); + var originalSlug = text.toLowerCase().replace(/[^a-z0-9]+/g, '-').replace(/^-|-$/, ''); var newSlug = originalSlug; var index = 0; From 20e3f4ad51441a7760b3d78238d88daf7a52b074 Mon Sep 17 00:00:00 2001 From: John Bintz Date: Wed, 3 Apr 2013 07:29:15 -0400 Subject: [PATCH 2/3] oops --- lib/formtastic-slug/slug_input.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/formtastic-slug/slug_input.rb b/lib/formtastic-slug/slug_input.rb index 71f7539..a6e4dd0 100644 --- a/lib/formtastic-slug/slug_input.rb +++ b/lib/formtastic-slug/slug_input.rb @@ -51,7 +51,7 @@ class SlugInput < Formtastic::Inputs::StringInput var setSlug = function(text) { var i, k; - var originalSlug = text.toLowerCase().replace(/[^a-z0-9]+/g, '-').replace(/^-|-$/, ''); + var originalSlug = text.toLowerCase().replace(/[^a-z0-9]+/g, '-').replace(/(^-|-$)/, ''); var newSlug = originalSlug; var index = 0; From e3c8b165b438649b1137454eab1c1ac5377de0e2 Mon Sep 17 00:00:00 2001 From: John Bintz Date: Tue, 9 Apr 2013 19:33:13 -0400 Subject: [PATCH 3/3] need global replace on slug dash trim --- lib/formtastic-slug/slug_input.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/formtastic-slug/slug_input.rb b/lib/formtastic-slug/slug_input.rb index a6e4dd0..53aa69d 100644 --- a/lib/formtastic-slug/slug_input.rb +++ b/lib/formtastic-slug/slug_input.rb @@ -51,7 +51,7 @@ class SlugInput < Formtastic::Inputs::StringInput var setSlug = function(text) { var i, k; - var originalSlug = text.toLowerCase().replace(/[^a-z0-9]+/g, '-').replace(/(^-|-$)/, ''); + var originalSlug = text.toLowerCase().replace(/[^a-z0-9]+/g, '-').replace(/(^-|-$)/g, ''); var newSlug = originalSlug; var index = 0;