summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael <[email protected]>2017-04-12 19:01:27 -0400
committerMichael <[email protected]>2017-04-12 19:01:27 -0400
commitdb70be6c4b15a0c7cd1757d2c541c78dc31c50f5 (patch)
treebb5c17558f86892d8fc00a1cec77898a7ffa28bc
parentda39089abf59284ad89e6b19c2bbcca36b8ba848 (diff)
downloadproject-unite-db70be6c4b15a0c7cd1757d2c541c78dc31c50f5.tar.gz
project-unite-db70be6c4b15a0c7cd1757d2c541c78dc31c50f5.tar.bz2
project-unite-db70be6c4b15a0c7cd1757d2c541c78dc31c50f5.zip
Fix bug with skin repo page IDs
-rw-r--r--Project-Unite/Controllers/SkinsController.cs14
-rw-r--r--Project-Unite/Views/Skins/Index.cshtml2
2 files changed, 13 insertions, 3 deletions
diff --git a/Project-Unite/Controllers/SkinsController.cs b/Project-Unite/Controllers/SkinsController.cs
index a9542a3..f53963d 100644
--- a/Project-Unite/Controllers/SkinsController.cs
+++ b/Project-Unite/Controllers/SkinsController.cs
@@ -20,7 +20,7 @@ namespace Project_Unite.Controllers
public ActionResult ViewSkin(string id)
{
var db = new ApplicationDbContext();
- var skn = db.Skins.FirstOrDefault(x => x.Name == id);
+ var skn = db.Skins.FirstOrDefault(x => x.Id == id);
if (skn == null)
return new HttpStatusCodeResult(404);
return View(skn);
@@ -44,7 +44,17 @@ namespace Project_Unite.Controllers
}
var db = new ApplicationDbContext();
var skin = new Skin();
- skin.Id = Guid.NewGuid().ToString();
+
+ string allowed = "abcdefghijklmnopqrstuvwxyz1234567890-_";
+
+ string id = model.Title.ToLower();
+ foreach(char c in id.ToCharArray())
+ {
+ if (!allowed.Contains(c))
+ id = id.Replace(c, '_');
+ }
+
+ skin.Id = id;
skin.Name = model.Title;
skin.ShortDescription = model.ShortDescription;
skin.PostedAt = DateTime.Now;
diff --git a/Project-Unite/Views/Skins/Index.cshtml b/Project-Unite/Views/Skins/Index.cshtml
index ef0c495..fb2d58d 100644
--- a/Project-Unite/Views/Skins/Index.cshtml
+++ b/Project-Unite/Views/Skins/Index.cshtml
@@ -28,7 +28,7 @@
<tr>
<td><img src="@skin.ScreenshotUrl" style="max-width:320px;width:auto;height:auto;"/></td>
<td>
- @Html.ActionLink(skin.Name, "ViewSkin", "Skins", new { id = skin.Name }, null) <br/>
+ @Html.ActionLink(skin.Name, "ViewSkin", "Skins", new { id = skin.Id }, null) <br/>
<p>By @Html.UserLink(skin.UserId) on @skin.PostedAt</p>
</td>
<td>