/// <summary> Constructor for a new instance of the SobekCM_Navigation_Object which stores /// all of the information about an individual request. </summary> /// <param name="QueryString">Query string information for analysis</param> /// <param name="Base_URL"> Requested base URL (without query string, etc..)</param> /// <param name="User_Languages"> Languages preferred by user, per their browser settings </param> /// <param name="Code_Manager"> List of valid collection codes, including mapping from the Sobek collections to Greenstone collections </param> /// <param name="Aggregation_Aliases"> List of all existing aliases for existing aggregations</param> /// <param name="All_Items_Lookup"> [REF] Lookup object used to pull basic information about any item loaded into this library</param> /// <param name="URL_Portals"> List of all web portals into this system </param> /// <param name="Tracer"> Trace object keeps a list of each method executed and important milestones in rendering</param> public SobekCM_Navigation_Object(NameValueCollection QueryString, string Base_URL, string[] User_Languages, Aggregation_Code_Manager Code_Manager, Dictionary<string, string> Aggregation_Aliases, ref Item_Lookup_Object All_Items_Lookup, Portal_List URL_Portals, Custom_Tracer Tracer ) { // Do general item construction Constructor_Helper(); // If there is a mode value or an aggregation value, use the legacy query string analyzer if ((QueryString["m"] != null) || (QueryString["a"] != null) || (QueryString["c"] != null) || (QueryString["s"] != null) || (QueryString["g"] != null) || (QueryString["h"] != null) || (QueryString["i"] != null)) { // Use the legacy query string analyzer SobekCM_QueryString_Analyzer_Legacy analyzerLegacy = new SobekCM_QueryString_Analyzer_Legacy(); analyzerLegacy.Parse_Query(QueryString, this, Base_URL, User_Languages, Code_Manager, Aggregation_Aliases, ref All_Items_Lookup, URL_Portals, Tracer); } else { // Analyze the query string with the default analyzer SobekCM_QueryString_Analyzer analyzer = new SobekCM_QueryString_Analyzer(); analyzer.Parse_Query(QueryString, this, Base_URL, User_Languages, Code_Manager, Aggregation_Aliases, ref All_Items_Lookup, URL_Portals, Tracer); } }
/// <summary> Constructor for a new instance of the SobekCM_Navigation_Object which stores /// all of the information about an individual request. </summary> /// <param name="QueryString">Query string information for analysis</param> /// <param name="Code_Manager"> List of valid collection codes, including mapping from the Sobek collections to Greenstone collections </param> /// <param name="Aggregation_Aliases"> List of all existing aliases for existing aggregations</param> /// <param name="All_Items_Lookup"> [REF] Lookup object used to pull basic information about any item loaded into this library</param> /// <param name="URL_Portals"> List of all web portals into this system </param> public SobekCM_Navigation_Object(NameValueCollection QueryString, Aggregation_Code_Manager Code_Manager, Dictionary<string, string> Aggregation_Aliases, ref Item_Lookup_Object All_Items_Lookup, Portal_List URL_Portals) { // Do general item construction Constructor_Helper(); // Analyze the query string with the default analyzer SobekCM_QueryString_Analyzer analyzer = new SobekCM_QueryString_Analyzer(); analyzer.Parse_Query(QueryString, this, String.Empty, null, Code_Manager, Aggregation_Aliases, ref All_Items_Lookup, URL_Portals, null); }