private static void ProcessQuery(CacheController cacheCtrl, RewriterAction action, int PortalId)
{
if ((action.QueryUrl.Trim().Length > 0))
{
//split the value into an array based on "/" ( ie. /tabid/##/ )
string parameters = action.QueryUrl.TrimStart('?', '&').Trim();
var rule = cacheCtrl.GetModuleRuleByParameters(action.CultureCode, action.TabId, parameters);
if (rule != null)
{
if (rule.RemoveTab)
{
action.RedirectPage = "";
}
action.RedirectModule = rule.Url;
action.DoRedirect = true;
action.Raison += "+ModuleRule:" + rule.Parameters + ">" + rule.Url;
action.QueryUrl = "";
return;
}
rule = cacheCtrl.GetCustomModuleRuleByParameters(action.CultureCode, action.TabId, parameters);
if (rule != null)
{
if (rule.RemoveTab)
{
action.RedirectPage = "";
}
action.RedirectModule = rule.Replace(parameters, "");
action.DoRedirect = true;
action.Raison += "+ModuleRule:" + parameters + ">" + action.RedirectModule;
action.QueryUrl = "";
return;
}
}
}