public ActionResult RedirectAction(string docId) { string fileName; if (!CheckRequest(docId, out fileName)) { return View("Error"); } Document doc = new Document("", ""); doc.ReadXmlCompressed(fileName); string url = doc.Features.GetFeatureValue("responseUrl"); if (url == null) { ViewBag.ErrorMessage = "Document URL not found."; ViewBag.Details = "Feature name: responseUrl"; return View("Error"); } return Redirect(url); }
public ActionResult Html(string docId) { string xmlFileName, htmlFileName; if (!CheckRequest(docId, out xmlFileName) || !CheckRequest(docId, out htmlFileName, /*htmlFile=*/true)) { return View("Error"); } Document doc = new Document("", ""); doc.ReadXmlCompressed(xmlFileName); string charSet = doc.Features.GetFeatureValue("charSet"); byte[] bytes; using (FileStream stream = new FileStream(htmlFileName, FileMode.Open)) { using (GZipStream gzStream = new GZipStream(stream, CompressionMode.Decompress)) { bytes = gzStream.ReadAllBytes(/*sizeLimit=*/0); } } return File(bytes, "text/html; charset=" + charSet); }
public ActionResult Text(string docId, bool? includeBoilerplate) { string fileName; if (!CheckRequest(docId, out fileName)) { return View("Error"); } if (!includeBoilerplate.HasValue) { includeBoilerplate = false; } Document doc = new Document("", ""); doc.ReadXmlCompressed(fileName); StringBuilder txt = new StringBuilder(); string selector = includeBoilerplate.Value ? "TextBlock" : "TextBlock/Content"; foreach (TextBlock textBlock in doc.GetAnnotatedBlocks(selector)) { txt.AppendLine(textBlock.Text); } return Content(txt.ToString(), "text/plain"); }
public ActionResult Xml(string docId) { string fileName; if (!CheckRequest(docId, out fileName)) { return View("Error"); } Document doc = new Document("", ""); doc.ReadXmlCompressed(fileName); return Content(doc.GetXml(), "application/xml"); }
public ActionResult ViewAction(string docId) { string fileName; if (!CheckRequest(docId, out fileName)) { return View("Error"); } Document doc = new Document("", ""); doc.ReadXmlCompressed(fileName); ArrayList<object> treeItems, features, content; DocumentSerializer.SerializeDocument(doc, out treeItems, out features, out content); // fill ViewBag ViewBag.Title = doc.Name; ViewBag.TreeItemsParam = treeItems; ViewBag.FeaturesParam = features; ViewBag.ContentParam = content; // render return View("View"); }