protected void Page_Load(object Sender, EventArgs E)
{
pageGlobals.tracer.Add_Trace("sobekcm(.aspx).Page_Load", String.Empty);
try
{
// Process this page request by building the main writer and
// analyzing the request's URL
pageGlobals.On_Page_Load();
// Is the response completed already?
if ((pageGlobals.currentMode == null) || (pageGlobals.currentMode.Request_Completed))
{
return;
}
if (HttpContext.Current.Items.Contains("Original_URL"))
{
string original_url = HttpContext.Current.Items["Original_URL"].ToString();
itemNavForm.Action = original_url;
// Save this as the return spot, if it is not preferences
if ((pageGlobals.currentMode.Mode != Display_Mode_Enum.Preferences) && (pageGlobals.currentMode.Mode != Display_Mode_Enum.Contact))
{
Session["Last_Mode"] = original_url;
}
}
else
{
// Save this as the return spot, if it is not preferences
if ((pageGlobals.currentMode.Mode != Display_Mode_Enum.Preferences) && (pageGlobals.currentMode.Mode != Display_Mode_Enum.Contact))
{
string url = HttpContext.Current.Request.Url.ToString();
Session["Last_Mode"] = url;
}
}
if ((UI_ApplicationCache_Gateway.Settings.Servers.Web_Output_Caching_Minutes > 0) && (String.IsNullOrEmpty(Request.QueryString["refresh"])))
{
if ((pageGlobals.currentMode.Mode != Display_Mode_Enum.Error) &&
(pageGlobals.currentMode.Mode != Display_Mode_Enum.My_Sobek) &&
(pageGlobals.currentMode.Mode != Display_Mode_Enum.Administrative) &&
(pageGlobals.currentMode.Mode != Display_Mode_Enum.Contact) &&
(pageGlobals.currentMode.Mode != Display_Mode_Enum.Contact_Sent) &&
(pageGlobals.currentMode.Mode != Display_Mode_Enum.Item_Print) &&
(pageGlobals.currentMode.Mode != Display_Mode_Enum.Item_Cache_Reload) &&
(pageGlobals.currentMode.Mode != Display_Mode_Enum.Reset) &&
(pageGlobals.currentMode.Mode != Display_Mode_Enum.Internal) &&
(pageGlobals.currentMode.Mode != Display_Mode_Enum.Public_Folder) &&
((pageGlobals.currentMode.Mode != Display_Mode_Enum.Simple_HTML_CMS) || ((pageGlobals.currentMode.WebContent_Type != WebContent_Type_Enum.Edit) && (pageGlobals.currentMode.WebContent_Type != WebContent_Type_Enum.Milestones))) &&
((pageGlobals.currentMode.Mode != Display_Mode_Enum.Aggregation) || (pageGlobals.currentMode.Aggregation_Type != Aggregation_Type_Enum.Home_Edit)) &&
((pageGlobals.currentMode.Mode != Display_Mode_Enum.Aggregation) || (pageGlobals.currentMode.Aggregation_Type != Aggregation_Type_Enum.Work_History)) &&
((pageGlobals.currentMode.Mode != Display_Mode_Enum.Aggregation) || (pageGlobals.currentMode.Aggregation_Type != Aggregation_Type_Enum.User_Permissions)) &&
((pageGlobals.currentMode.Mode != Display_Mode_Enum.Aggregation) || (pageGlobals.currentMode.Aggregation_Type != Aggregation_Type_Enum.Child_Page_Edit)) &&
((pageGlobals.currentMode.Mode != Display_Mode_Enum.Aggregation) || (pageGlobals.currentMode.Aggregation_Type != Aggregation_Type_Enum.Home) || (pageGlobals.currentMode.Home_Type != Home_Type_Enum.Personalized)) &&
(pageGlobals.currentMode.Result_Display_Type != Result_Display_Type_Enum.Export) &&
((pageGlobals.currentMode.Mode != Display_Mode_Enum.Item_Display) || (( !String.IsNullOrEmpty(pageGlobals.currentMode.ViewerCode)) && (pageGlobals.currentMode.ViewerCode.ToUpper().IndexOf("citation") < 0) && (pageGlobals.currentMode.ViewerCode.ToUpper().IndexOf("allvolumes3") < 0))))
{
Response.Cache.SetCacheability(HttpCacheability.Private);
Response.Cache.SetMaxAge(new TimeSpan(0, UI_ApplicationCache_Gateway.Settings.Servers.Web_Output_Caching_Minutes, 0));
}
else
{
Response.Cache.SetCacheability(HttpCacheability.NoCache);
}
}
else
{
Response.Cache.SetCacheability(HttpCacheability.NoCache);
}
// Check if the item nav form should be shown
if (!pageGlobals.mainWriter.Include_Navigation_Form)
{
itemNavForm.Visible = false;
}
else
{
if (!pageGlobals.mainWriter.Include_Main_Place_Holder)
mainPlaceHolder.Visible = false;
if (!pageGlobals.mainWriter.Include_TOC_Place_Holder)
tocPlaceHolder.Visible = false;
}
// The file upload form is only shown in these cases
if ((pageGlobals.mainWriter != null) && (pageGlobals.mainWriter.File_Upload_Possible))
{
itemNavForm.Enctype = "multipart/form-data";
}
// Add the controls now
pageGlobals.mainWriter.Add_Controls(tocPlaceHolder, mainPlaceHolder, pageGlobals.tracer);
}
catch (OutOfMemoryException ee)
{
pageGlobals.tracer.Add_Trace("sobekcm(.aspx).Page_Load", "OutOfMemoryException caught!");
pageGlobals.Email_Information("SobekCM Out of Memory Exception", ee);
}
catch (Exception ee)
{
pageGlobals.tracer.Add_Trace("sobekcm(.aspx).Page_Load", "Exception caught!", Custom_Trace_Type_Enum.Error);
pageGlobals.tracer.Add_Trace("sobekcm(.aspx).Page_Load", ee.Message, Custom_Trace_Type_Enum.Error);
pageGlobals.tracer.Add_Trace("sobekcm(.aspx).Page_Load", ee.StackTrace, Custom_Trace_Type_Enum.Error);
if (pageGlobals.currentMode != null)
{
pageGlobals.currentMode.Mode = Display_Mode_Enum.Error;
pageGlobals.currentMode.Error_Message = "Unknown error caught while executing your request";
pageGlobals.currentMode.Caught_Exception = ee;
}
}
}