/// <summary> /// Strips the whitespace from any .css file. /// </summary> /// <param name="reader"></param> /// <returns></returns> protected override string Minify(StreamReader reader) { if (Settings.Instance.MinifyContent) { CssMinifier _Minifier = new CssMinifier(); return _Minifier.Minify(reader); } else { return base.Minify(reader); } }
/// <summary> /// Writes the content of the individual stylesheets to the response stream. /// </summary> private void WriteContent(HttpContext context, string file) { using (StreamReader reader = new StreamReader(file)) { //string body = reader.ReadToEnd(); //body = StripWhitespace(body); //body = CheckUrl(body, file); //context.Response.Write(body); Miron.Web.MbCompression.CssMinifier cssMinifier = new Miron.Web.MbCompression.CssMinifier(); string body = cssMinifier.Minify(reader); body = CheckUrl(body, file); context.Response.Write(body); } }
/// <summary> /// Process & Write a StreamReader to an output stream /// </summary> /// <param name="reader"></param> /// <param name="context"></param> /// <param name="encodingMgr"></param> private static void ProcessAndWriteToStream(StreamReader reader, HttpContext context, EncodingManager encodingMgr) { string content = SR.GetString(SR.CREDIT_STRING); if (Settings.Instance.MinifyContent) { if (context.Response.ContentType.Contains("javascript")) { JavaScriptMinifier _Minifier = new JavaScriptMinifier(); content += _Minifier.Minify(reader); } else if (context.Response.ContentType.Contains("css")) { CssMinifier _Minifier = new CssMinifier(); content += _Minifier.Minify(reader); } else { content += reader.ReadToEnd(); } } else { content += reader.ReadToEnd(); } if (encodingMgr.IsEncodingEnabled && Settings.Instance.CompressWebResource) { encodingMgr.SetResponseEncodingType(); byte[] compressed = encodingMgr.CompressString(content); context.Response.OutputStream.Write(compressed, 0, compressed.Length); } else { context.Response.Write(content); } }