protected void Page_Load(object sender, EventArgs e) { string exportType = Request["type"]; WikiReader reader = PXGraph.CreateInstance <WikiReader>(); PXWikiSettings settings = new PXWikiSettings(this, reader); this.SetReaderFilter(reader); WikiPage article = reader.Pages.SelectWindowed(0, 1); reader.Pages.Current = article; PXRenderer renderer = this.CreateRenderer(exportType, settings.Absolute); if (article != null && !string.IsNullOrEmpty(article.Content) && renderer != null) { var ctx = new PXDBContext(settings.Absolute); ctx.Renderer = renderer; ctx.WikiID = article.WikiID; string result = PXWikiParser.Parse(article.Content, ctx); string mime = MimeTypes.GetMimeType("." + exportType); Response.AddHeader("cache-control", "no-store, private"); Response.Clear(); Response.Cache.SetCacheability(HttpCacheability.Private); Response.Cache.SetExpires(DateTime.Now.AddSeconds(2)); Response.Cache.SetValidUntilExpires(true); Response.AddHeader("Content-Type", mime); Response.AddHeader("Content-Encoding", "ansi"); this.AdditionalResponseParams(renderer, article); Response.Write(result); } }
private void AdditionalResponseParams(PXRenderer renderer, WikiPage article) { if (renderer is PXRtfRenderer) { Response.AddHeader("content-disposition", "attachment;filename=\"" + article.Name + ".rtf\""); Response.ContentEncoding = this.GetCultureDependentEncoding(); } }
private void AdditionalResponseParams(PXRenderer renderer, WikiPage article) { if (renderer is PXRtfRenderer) { Response.AddHeader("content-disposition", "attachment;filename=\"" + article.Name + ".rtf\""); Response.ContentEncoding = this.GetCultureDependentEncoding(); } }