public static string ScrubFilename(Guid rootContentID, string fileName)
{
string newFileName = String.Format("{0}", fileName).Trim();
if (String.IsNullOrEmpty(newFileName)) {
newFileName = rootContentID.ToString();
}
if (newFileName.EndsWith(@"/")) {
newFileName = newFileName.Substring(0, newFileName.Length - 1);
newFileName = newFileName.Replace("//", "/");
}
if (newFileName.ToLowerInvariant().EndsWith(".aspx")) {
newFileName = newFileName.Substring(0, newFileName.Length - 5);
}
newFileName = ScrubFilePath(newFileName).Trim();
if (newFileName.ToLowerInvariant().EndsWith(".htm")) {
newFileName = newFileName.Substring(0, newFileName.Length - 4);
}
if (newFileName.ToLowerInvariant().EndsWith(".html")) {
newFileName = newFileName.Substring(0, newFileName.Length - 5);
}
if (newFileName.EndsWith(@"/")) {
newFileName = newFileName.Trim().Substring(0, newFileName.Length - 1);
}
return newFileName;
}