@using System.Globalization @using OurUmbraco.Wiki.BusinessLogic @using umbraco @using umbraco.BusinessLogic @using umbraco.cms.businesslogic.member @using umbraco.cms.businesslogic.web @using umbraco.NodeFactory @{ int nodeId; var projectId = Request.QueryString["p"]; int.TryParse(projectId, out nodeId); if (nodeId != 0) { var project = new Node(nodeId); var owner = project.GetProperty("owner").Value; var m = Member.GetCurrentMember(); if (Request.Form["compatibleVersion"] != null) { if (m != null && owner == m.Id.ToString(CultureInfo.InvariantCulture)) { var allVersions = UmbracoVersion.AvailableVersions().Values; var postedVersions = Request.Form["compatibleVersion"].Split(','); //Check if these are existing versions in the list of all available versions var saveVersions = postedVersions.Where(version => allVersions.SingleOrDefault(x => x.Version.ToString(CultureInfo.InvariantCulture) == version) != null).ToList(); if (saveVersions.Any()) { var commaSeparatedList = saveVersions.Aggregate((a, x) => a + "," + x); var files = WikiFile.CurrentFiles(nodeId).Where(x => x.FileType == "package"); var fileVersions = WikiFile.GetVersionsFromString(commaSeparatedList); foreach (var wikiFile in files) { wikiFile.Versions = fileVersions; wikiFile.Save(); } var doc = new Document(nodeId); doc.Publish(new User(0)); library.UpdateDocumentCache(doc.Id); } } } if (m != null && owner == m.Id.ToString(CultureInfo.InvariantCulture)) {

Update the compatibiliy of @project.Name

This package is currently set to be compatible with the versions below.

If it is compatible with versions not selected then please select them now and click "Save".

var node = new Node(nodeId); var compatibleVersions = node.GetProperty("compatibleVersions").Value.Replace("saved,", string.Empty).Split(','); var options = string.Empty; foreach (var uv in UmbracoVersion.AvailableVersions().Values) { var selected = string.Empty; if (compatibleVersions.Contains(uv.Version)) { selected = "checked='checked'"; } options += string.Format("
", uv.Version, uv.Name, selected); }
@Html.Raw(options)
} } }