public IHttpHandler GetDnnHttpHandler(RequestContext requestContext, int portal, int tab, string[] passThrough) { PortalController pcontroller = new PortalController(); PortalInfo pinfo = pcontroller.GetPortal(portal); PortalAliasController pacontroller = new PortalAliasController(); PortalAliasCollection pacollection = pacontroller.GetPortalAliasByPortalID(portal); //pacollection. //PortalSettings psettings = new PortalSettings(pinfo); PortalSettings psettings = new PortalSettings(tab, portal); // 64 is the stats tab. TODO: get by page name and not hardcoded id foreach (string key in pacollection.Keys) { psettings.PortalAlias = pacollection[key]; } TabController tcontroller = new TabController(); // psettings.ActiveTab = tcontroller.GetTab(57, 0, true); // 57 is the profile tab. requestContext.HttpContext.Items["PortalSettings"] = psettings; requestContext.HttpContext.Items["UrlRewrite:OriginalUrl"] = requestContext.HttpContext.Request.RawUrl; //UserInfo uinfo = requestContext.HttpContext.User == null ? new UserInfo() : UserController.GetUserByName(psettings.PortalId, requestContext.HttpContext.User.Identity.Name); UserInfo uinfo = requestContext.HttpContext.User == null ? new UserInfo() : UserController.GetCachedUser(psettings.PortalId, requestContext.HttpContext.User.Identity.Name); requestContext.HttpContext.Items["UserInfo"] = uinfo; foreach (string s in passThrough) { requestContext.HttpContext.Items[s] = requestContext.RouteData.Values[s]; } IHttpHandler page = BuildManager.CreateInstanceFromVirtualPath(VirtualPath, typeof(DotNetNuke.Framework.PageBase)) as IHttpHandler; return(page); }
public override void DoWork() { try { // perform some task List <DNNSnapshotInfo> items; DNNSnapshotController controller = new DNNSnapshotController(); //string vText = HttpContext.Current.Request.Url.Host.ToString(); items = controller.GetDNNSnapshotModules(); // items[0].ToString(); string myList = ""; string myMessage = ""; string vPortalAlias = ""; for (int i = 0; i <= items.Count - 1; i++) { PortalAliasController paController = new PortalAliasController(); PortalAliasCollection aliasCollection = paController.GetPortalAliasByPortalID(items[i].PortalID); IDictionaryEnumerator hs = aliasCollection.GetEnumerator(); hs.MoveNext(); PortalAliasInfo paInfo = (PortalAliasInfo)hs.Entry.Value; vPortalAlias = paInfo.HTTPAlias; if (CheckPage("http://" + vPortalAlias + "/Default.aspx?TabID=" + items[i].TabID.ToString() + "&ScheduledTask=true", out myMessage) == true) { myList += "Status " + myMessage + " - Tab " + items[i].TabID.ToString() + " Loaded!<br>"; } else { myList += myMessage + " - ERROR!!!<br>"; } } // report success to the scheduler framework ScheduleHistoryItem.Succeeded = true; this.ScheduleHistoryItem.AddLogNote("Processing completed at " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + "<br>" + myList.ToString()); } catch (Exception exc) { ScheduleHistoryItem.Succeeded = false; ScheduleHistoryItem.AddLogNote("EXCEPTION: " + exc.ToString()); Errored(ref exc); Exceptions.LogException(exc); } }
public ActionResult AddSiteAlias(UpdateSiteAliasRequest request) { ActionResult actionResult = new ActionResult(); try { int pid = request.PortalId ?? PortalSettings.Current.PortalId; if (!UserInfo.IsSuperUser && pid != PortalSettings.Current.PortalId) { actionResult.AddError(HttpStatusCode.Unauthorized.ToString(), Components.Constants.AuthFailureMessage); } string strAlias = request.HTTPAlias; if (!string.IsNullOrEmpty(strAlias)) { strAlias = strAlias.Trim(); } if (IsHttpAliasValid(strAlias)) { PortalAliasCollection aliases = PortalAliasController.Instance.GetPortalAliases(); if (aliases.Contains(strAlias)) { actionResult.AddError(HttpStatusCode.BadRequest.ToString(), string.Format(Localization.GetString("DuplicateAlias", Dnn.PersonaBar.SiteSettings.Components.Constants.Constants.LocalResourcesFile))); } if (actionResult.IsSuccess) { Enum.TryParse(request.BrowserType, out BrowserTypes browser); PortalAliasInfo portalAlias = new PortalAliasInfo() { PortalID = pid, HTTPAlias = strAlias, Skin = request.Skin, CultureCode = request.CultureCode, BrowserType = browser, IsPrimary = request.IsPrimary }; PortalAliasController.Instance.AddPortalAlias(portalAlias); actionResult.Data = new { SiteAliases = Managers.DomainManager.GetSiteAliases(PortalSettings.Current.PortalId, UserInfo).Data }; } } else { actionResult.AddError(HttpStatusCode.BadRequest.ToString(), string.Format(Localization.GetString("InvalidAlias", Dnn.PersonaBar.SiteSettings.Components.Constants.Constants.LocalResourcesFile))); } } catch (Exception exc) { actionResult.AddError(HttpStatusCode.InternalServerError.ToString(), exc.Message); } return(actionResult); }
private string GetPortalAlias(int PortalId) { PortalAliasController paController = new PortalAliasController(); PortalAliasCollection paCollection = paController.GetPortalAliasByPortalID(PortalId); foreach (DictionaryEntry pa in paCollection) { PortalAliasInfo paI = (PortalAliasInfo)pa.Value; return(paI.HTTPAlias); } return("PortalAlias not found"); }
/// <summary> /// returns the portalId or -1 if something goes wrong /// </summary> /// <param name="context"></param> /// <returns></returns> public static int getPortalId(HttpContext context) { int retVal = -1; string url = getUriWithoutProtocol(context.Request.Url); PortalAliasController controller = new PortalAliasController(); PortalAliasCollection aliasCollection = controller.GetPortalAliases(); foreach (string key in aliasCollection.Keys) { PortalAliasInfo info = aliasCollection[key] as PortalAliasInfo; if (url.StartsWith(info.HTTPAlias)) { retVal = info.PortalID; } } return(retVal); }
/// <summary> /// returns the portalId or -1 if something goes wrong /// </summary> /// <param name="context"></param> /// <returns></returns> public void setPortalIdAndPageName(HttpContext context) { portalId = -1; asmxName = null; string url = getUriWithoutProtocol(context.Request.Url); PortalAliasController controller = new PortalAliasController(); PortalAliasCollection aliasCollection = controller.GetPortalAliases(); foreach (string key in aliasCollection.Keys) { PortalAliasInfo info = aliasCollection[key] as PortalAliasInfo; if (url.StartsWith(info.HTTPAlias)) { portalId = info.PortalID; asmxName = url.Substring(info.HTTPAlias.Length + 1); } } }