using System; using System.Collections; using System.ComponentModel; using System.Data; using System.Drawing; using System.Web; using System.Web.SessionState; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.HtmlControls; using System.Net; using System.IO; using System.Text; namespace GoogleControl { /// /// GoogleForm set the CSS with: /// <link rel="stylesheet" href="ControlCss.aspx" type="text/css"> /// ControlCss serves the CSS. ///

Copyright (c) 2002 Alexis Grandemange
/// Mail: alexis.grandemange@pagebox.net

///
This program is free software; you can redistribute it and/or
	/// modify it under the terms of the GNU Lesser General Public
	/// License as published by the Free Software Foundation; version
	/// 2.1 of the License.
	/// This library is distributed in the hope that it will be useful,
	/// but WITHOUT ANY WARRANTY; without even the implied warranty of
	/// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
	/// GNU Lesser General Public License for more details.
	/// A copy of the GNU Lesser General Public License lesser.txt should be
	/// included in the distribution.
///
public class ControlCss : System.Web.UI.Page { public ControlCss() { Page.Init += new System.EventHandler(Page_Init); } private void Page_Load(object sender, System.EventArgs e) { // Put user code to initialize the page here } private void Page_Init(object sender, EventArgs e) { // // CODEGEN: This call is required by the ASP.NET Web Form Designer. // InitializeComponent(); } #region Web Form Designer generated code /// /// Required method for Designer support - do not modify /// the contents of this method with the code editor. /// private void InitializeComponent() { this.Load += new System.EventHandler(this.Page_Load); } #endregion /// /// The CSS is requested in the same session as GoogleForm. /// include use the referer object of the session to retrieve the CSS URL /// from the GoogleControl.xml info. /// Then include download and returns the CSS. /// public void include() { string referer = (string)Session["referer"]; if (referer == null) return; RefererItem ri = (RefererItem)Global.pages[referer]; WebRequest WReq = WebRequest.Create(ri.css); WebResponse WResp = WReq.GetResponse(); StreamReader sr = new StreamReader(WResp.GetResponseStream(), Encoding.ASCII); int length = 1024; char [] buf = new char[1024]; int bytesread = 0; bytesread = sr.Read(buf, 0, length); while(bytesread > 0 ) { Response.Write(buf,0, bytesread); bytesread = sr.Read(buf, 0, length); } } } }