public static void LoginUser(DataRow member, bool persist, bool rememberName) { WebContext.Profile.UserEmail = member["Email"].ToString(); WebContext.Profile.UserGuid = (System.Guid)member["Geuid"]; WebContext.Profile.UserId = (int)member["MemberId"]; WebContext.Profile.UserLogged = true; WebContext.Profile.UserRememberMe = persist; WebContext.Profile.UserRememberName = rememberName; WebContext.Profile.UserFullName = string.Format("{0} {1}", member["FirstName"], member["LastName"]); WebContext.Profile.CurrentUserStatus = (int)MembersManager.GetUserStatus(member); WebContext.Profile.Roles = (int)member["Roles"]; WebContext.Profile.CurrentUserType = UserType.User; WebContext.Profile.dbUserName = member["UserName"].ToString(); //MembersManager.UpdateOnlineStatus((int)member["MemberId"], true); FriendsManager fMgr = new FriendsManager(); WebContext.Profile.FriendsCount = fMgr.GetFriendsCount((int)member["MemberId"]); MemberLoginActivity mlMgr = new MemberLoginActivity(); mlMgr.AddMemberLogin((int)member["MemberId"], WebContext.IPAddress + "," + WebTools.WebContext.Request.ServerVariables["LOCAL_ADDR"]); Caching.UpdateUserCache(); }
public override void DataBind() { if (_bound) { return; } _bound = true; if (CMSMode == false && !CMSMode.Value && !this.MyPage.Editable) { StringBuilder cond = new StringBuilder(); if (!String.IsNullOrWhiteSpace(Type)) { cond.Append(string.Format(" And (Type='{0}' or UniqueName='{0}')", StringUtils.SQLEncode(Type))); } if (status != DownloadStatus.All) { cond.Append(string.Format(" And Status={0}", (int)Status)); } if (NetworkBound) { NetworkRelations networkRelations = new NetworkRelations(); cond.Append(" and " + networkRelations.GetRelationQueryByMember(cte.NetworkRelationTable, cte.NetworkRelateToField, WebContext.Profile.UserId)); } if (NonMemberNetworkBound) { NetworkRelations networkRelations = new NetworkRelations(); cond.Append(" and " + networkRelations.GetRelationQueryByNetwork(cte.NetworkRelationTable, cte.NetworkRelateToField, Int32.Parse(networkName))); } if (!string.IsNullOrWhiteSpace(Condition)) { cond.Append(string.Format(" And " + Condition)); } if (DisplaySinceLastLogin) { System.Data.DataRow member = lw.Members.Security.User.LoggedInUser(this, false) as System.Data.DataRow; MemberLoginActivity mlMgr = new MemberLoginActivity(); DataView dv = mlMgr.GetMemberActivity((int)member["MemberId"]); dv.Sort = "Id Desc"; if (dv.Count >= 2) { cond.Append(string.Format(" and DateAdded>='{0}'", dv[1]["LoggedInDate"])); } } this.SelectCommand = string.Format(" select Top {0} d.*, '{1}/' + d.UniqueName + '/' + d.FileName as DownloadLink, FileSize/1024 as KB from DownloadsView d where Status<>{2} {3}", Top, Downloads.DownloadsVR, (int)DownloadStatus.Disabled, cond.ToString() ); if (!EnablePaging) { this.SelectCommand += " Order By " + OrderBy; } } else { System.Web.HttpRequest Request = WebContext.Request; string cond = "1=1 "; if (!string.IsNullOrWhiteSpace(Condition)) { cond += string.Format(" And " + Condition); } if (!String.IsNullOrEmpty(Request["q"])) { cond += string.Format(" and (Title like '%{0}%' or FileName like '%{0}%')", StringUtils.SQLEncode(Request["q"])); } if (!String.IsNullOrEmpty(Request["NetworkId"])) { cond += string.Format(" and DownloadId in (select DownloadId from DownloadsNetwork where NetworkId = {0})", Int32.Parse(Request["NetworkId"])); } if (!String.IsNullOrWhiteSpace(Type)) { cond += (string.Format(" And (Type='{0}' or UniqueName='{0}')", StringUtils.SQLEncode(Type))); } if (!String.IsNullOrEmpty(Request["TypeId"])) { string _type = Request["TypeId"]; cond += string.Format(" and DownloadType={0}", Int32.Parse(_type)); } if (!String.IsNullOrEmpty(Request["Status"])) { string _Status = Request["Status"]; cond += string.Format(" and Status={0}", Int32.Parse(_Status)); } this.SelectCommand = string.Format(" select top {3} d.*, '{1}/' + d.UniqueName + '/' + d.FileName as DownloadLink, FileSize/1024 as KB from DownloadsView d where {2}", "100%", Downloads.DownloadsVR, cond, Top ); if (!EnablePaging) { this.SelectCommand += " Order By " + OrderBy; } } base.DataBind(); }
public override void Action() { WebContext.CreateHttpContext(); MemberLoginActivity mlMgr = new MemberLoginActivity(); DataView members = mlMgr.GetMembersActivity(string.Format("LoggedInDate >='{0}'", DateTime.Now.AddDays(-7))); members.Sort = "MemberId Asc, LoggedInDate Desc"; Mail m = new Mail("Login Activity"); int MemberID = -1; bool _bound = false; string emailTo = ""; StringBuilder str = new StringBuilder("<table><tr><th>Ip Address</th><th>Login Date</th></tr>"); foreach (DataRowView drv in members) { if (!_bound) { MemberID = (int)drv["MemberId"]; _bound = true; } if ((int)drv["MemberId"] != MemberID) { str.Append("</table>"); try { m.Data = new NameValueCollection(); m.Data["Result"] = str.ToString(); m.To = emailTo; m.Send(); } catch { } MemberID = (int)drv["MemberId"]; str = new StringBuilder("<table><tr><th>Ip Address</th><th>Login Date</th></tr>"); str.Append(string.Format("<tr><td>{0}</td><td>{1}</td></tr>", drv["IpAddress"], drv["LoggedInDate"])); emailTo = (string)drv["Email"]; } else { str.Append(string.Format("<tr><td>{0}</td><td>{1}</td></tr>", drv["IpAddress"], drv["LoggedInDate"])); emailTo = (string)drv["Email"]; } } str.Append("</table>"); try { m.Data = new NameValueCollection(); m.Data["Result"] = str.ToString(); m.To = emailTo; m.Send(); } catch { } }