applications = BoxSocial.Internals.Application.GetStaticApplications(core);
BoxSocial.Internals.Application.LoadApplications(core, AppPrimitives.None, core.PagePath, applications);
}
public void EndResponse()
{
if (!pageEnded)
{
pageEnded = true;
core.Display.Header(this);
long templateStart = timer.ElapsedTicks;
core.Http.Write(template);
double templateSeconds = (timer.ElapsedTicks - templateStart) / 10000000.0;
timer.Stop();
double seconds = (timer.ElapsedTicks) / 10000000.0;
if (core != null)
{
if (core.LoggedInMemberId <= 3 && core.LoggedInMemberId != 0)
{
//HttpContext.Current.Response.Write(string.Format("{0} seconds • {1} queries in {2} seconds • template in {3} seconds
", seconds, db.GetQueryCount(), db.GetQueryTime(), templateSeconds));
}
//HttpContext.Current.Response.Write(db.QueryList.ToString());
}
if (db != null)
{
db.CloseConnection();
}
core.Prose.Close();
//core.Dispose();
//core = null;
core.Http.End();
//System.Threading.Thread.CurrentThread.Abort();
}
}
~TPage()
{
// destructor
if (db != null)
{
db.CloseConnection();
}
core.Prose.Close();
//core.Dispose();
//core = null;
}
public void ParseCoreBreadCrumbs(List parts)
{
ParseCoreBreadCrumbs("BREADCRUMBS", parts);
}
public void ParseCoreBreadCrumbs(string templateVar, List parts)
{
ParseCoreBreadCrumbs(core.Template, templateVar, parts);
}
public void ParseCoreBreadCrumbs(Template template, string templateVar, List parts)
{
string output = string.Empty;
string path = "/";
output = string.Format("{0}",
core.ApplicationSettings.SiteTitle, path);
for (int i = 0; i < parts.Count; i++)
{
if (parts[i][0] != "")
{
output += string.Format(" ‹ {0}",
parts[i][1], path + parts[i][0].TrimStart(new char[] { '*' }));
if (!parts[i][0].StartsWith("*"))
{
path += parts[i][0] + "/";
}
}
}
template.ParseRaw(templateVar, output);
}
}
public class ShowPageEventArgs : EventArgs
{
protected Core core;
protected TPage page;
public Core Core
{
get
{
return core;
}
}
public Mysql Db
{
get
{
return core.Db;
}
}
public TPage Page
{
get
{
return page;
}
}
public Template Template
{
get
{
return core.Template;
}
}
public ShowPageEventArgs(TPage page)
{
this.page = page;
this.core = page.Core;
}
}
}