internal static Task WriteResponseBodyAsync(HttpResponse response, string uid, DateTimeOffset? datetime, TimeSpan? duration, string summary, string description, string location) {
     return response.WriteAsync(
         "BEGIN:VCALENDAR\r\n" +
         "VERSION:2.0\r\n" +
         "BEGIN:VEVENT\r\n" +
         "UID:" + uid + "\r\n" +
         "DTSTART:" + datetime?.ToString(DateTimeFormat) + "\r\n" +
         "DTEND:" + datetime?.Add(duration ?? TimeSpan.Zero).ToString(DateTimeFormat) + "\r\n" +
         "SUMMARY:" + summary + "\r\n" +
         "DESCRIPTION:" + description + "\r\n" +
         "LOCATION:" + location +
         "END:VEVENT\r\n" +
         "END:VCALENDAR\r\n");
 }
		public static async Task WriteOutput(HttpResponse Response, string Title, Head.Tag[] HeadTags, string Body) {
			var sb = new StringBuilder();
			sb.Append("<!DOCTYPE html><head><meta charset=\"utf-8\">");
			if (Title != null) {
				sb.Append("<title>" + Title + "</title>");
			}
			if (HeadTags != null) {
				foreach (var a in HeadTags) {
					sb.Append(a.Output());
				}
			}
			sb.Append("</head><body>");
			sb.Append(Body);
			sb.Append("</body></html>");
			await Response.WriteAsync(sb.ToString());
		}
 public async Task WriteOtherSettingsAsync(HttpResponse response)
 {
     await response.WriteAsync(
         $"OtherSettings Strings: {string.Join(", ", _otherSettings.Strings)}<br>" +
         $"OtherSettings Numbers: {string.Join(", ", _otherSettings.Numbers)}");
 }
 private async Task Json(HttpResponse Response, Site.Page Page) {
     Response.ContentType = "text/javascript";
     var s = @"{""title"":""" + Util.Json.Fix(Page.Title) + @""",""description"":""" + Util.Json.Fix(Page.Description) + @""",""header"":""" + Util.Json.Fix(Page.Header) + @""",""key"":""" + Page.Key + @""",""content"":""" + Util.Json.Fix(Page.Content) + @"""}";
     await Response.WriteAsync(s);
 }
        private async Task Javascript(HttpResponse Response) {
            Response.Headers.Add(Headers.Cache, Headers.Values.Cache);
            Response.ContentType = "text/javascript";

            if (_javascript == null) {
                _javascript = await Util.File.LoadToString("_files/js/this.js");
            }
            await Response.WriteAsync(_javascript);
        }
        private async Task Css(HttpResponse Response) {
            Response.Headers.Add(Headers.Cache, Headers.Values.Cache);
            Response.ContentType = "text/css";

            if (_css == null) {
                _css = await Util.File.LoadToString("_files/css/this.css");
            }
            await Response.WriteAsync(_css);
        }
 private async Task WritePageFooter(HttpResponse response)
 {
     await response.WriteAsync("</body>");
     await response.WriteAsync("</html>");
     //response.Flush();
 }
        private async Task WritePageHeader(HttpResponse response)
        {

            string setupTemplatePath = setupOptions.SetupHeaderConfigPath.Replace("/", Path.DirectorySeparatorChar.ToString());
            if (CultureInfo.CurrentUICulture.TextInfo.IsRightToLeft)
            {
                setupTemplatePath = setupOptions.SetupHeaderConfigPathRtl.Replace("/", Path.DirectorySeparatorChar.ToString());
            }

            //string fsPath = hostingEnvironment.MapPath(setupTemplatePath);
            string fsPath = appBasePath + setupTemplatePath;

            if (System.IO.File.Exists(fsPath))
            {
                string sHtml = string.Empty;
                using (StreamReader oStreamReader = System.IO.File.OpenText(fsPath))
                {
                    sHtml = oStreamReader.ReadToEnd();
                }
                await response.WriteAsync(sHtml);
            }

            //response.Flush();
        }
        private async Task WritePageContent(HttpResponse response, string message, bool showTime)
        {

            if (showTime)
            {
                await response.WriteAsync(
                    string.Format("{0} - {1}",
                    message,
                    DateTime.UtcNow.Subtract(startTime)));
            }
            else
            {
                await response.WriteAsync(message);
            }
            await response.WriteAsync("<br/>");
       
            //response.Flush();

        }
 public static async Task WriteJsonAsync(this HttpResponse response, string json)
 {
     response.ContentType = "application/json";
     await response.WriteAsync(json);
 }
        private static async Task WriteErrorToResponse(HttpResponse response, string error)
        {
            response.StatusCode = (int)HttpStatusCode.BadRequest;
            response.Headers.Add("Pragma", new[] { "no-cache" });
            response.Headers.Add("Cache-Control", new[] { "no-cache" });
            response.ContentType = "text/plain";

            // Padding to >512 to ensure IE doesn't hide the message
            // http://stackoverflow.com/questions/16741062/what-rules-does-ie-use-to-determine-whether-to-show-the-entity-body
            await response.WriteAsync(error.PadRight(513));
        }
        private async Task WriteInstalledSchemaSummary(HttpResponse response)
        {
            //await WritePageContent(response, message, false);
            List<VersionItem> currentSchemas = await setupManager.GetInstalledSchemaList();
            await response.WriteAsync("<h2>Current Schema Versions</h2>");
            await response.WriteAsync("<ul>");

            string formatString = "<li>{0} - {1}</li>";
            foreach(VersionItem item in currentSchemas)
            {
                string itemMarkup = string.Format(formatString, item.Name, item.CurrentVersion.ToString());
                await response.WriteAsync(itemMarkup);
            }

            await response.WriteAsync("</ul>");

        }
 /// <summary>
 /// Writes the given text to the response body. UTF-8 encoding will be used.
 /// </summary>
 /// <param name="response"></param>
 /// <param name="text"></param>
 /// <param name="cancellationToken"></param>
 /// <returns></returns>
 public static Task WriteAsync([NotNull] this HttpResponse response, [NotNull] string text, CancellationToken cancellationToken = default(CancellationToken))
 {
     return(response.WriteAsync(text, Encoding.UTF8, cancellationToken));
 }
 public Task WriteAsync(string text)
 {
     return(_response.WriteAsync(text));
 }
 public static async Task FileNotFound(HttpResponse Response) {
     Response.StatusCode = 404;
     await Response.WriteAsync("File Not Found");
 }