Exemplo n.º 1
0
    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);
        }
    }
Exemplo n.º 2
0
 private void AdditionalResponseParams(PXRenderer renderer, WikiPage article)
 {
     if (renderer is PXRtfRenderer)
     {
         Response.AddHeader("content-disposition", "attachment;filename=\"" + article.Name + ".rtf\"");
         Response.ContentEncoding = this.GetCultureDependentEncoding();
     }
 }
Exemplo n.º 3
0
	private void AdditionalResponseParams(PXRenderer renderer, WikiPage article)
	{
		if (renderer is PXRtfRenderer)
		{
			Response.AddHeader("content-disposition", "attachment;filename=\"" + article.Name + ".rtf\"");
			Response.ContentEncoding = this.GetCultureDependentEncoding();
		}
	}