public static Dictionary <string, string> GetReqTypeDict(User user) { Dictionary <string, string> ret = new Dictionary <string, string>(); DBConnect connection = new DBConnect(); try { connection.Connect(ConnectionsMgr.GetAdminConnInfo()); using (var query = connection.Select(new[] { _Column.TrxType, _Column.TrxDesc }, _Table.TrxInfo)) { while (query.Read()) { ret.Add(query.Field(0), query.Field(1)); } } connection.Close(); ret.Add("832_A", "Item Attributes"); ret.Add("850_X", "PO Store X-Ref"); ret.Add("856_X", "ASN Release X-Ref"); ret.Add("832_P", "Al Tayer Item Attributes"); return(ret); } catch (Exception e) { ProgramLog.LogError(user, "ProcessQueue", "GetReqTypeDict", e.Message); connection.Close(); return(new Dictionary <string, string>()); } }
public static bool Submit(HttpRequest request, ReportDetail req, string usUserName, string usCustomer, string usPartner) { if (request == null || req == null) { return(false); } DBConnect connectionAdmin = new DBConnect(); try { connectionAdmin.Connect(new DatabaseInfo(ConnectionsMgr.GetAdminConnInfo()) { Database = databaseEmailRequest }); string defaultToEmail = "*****@*****.**"; string defaultFromEmail = "*****@*****.**"; StringBuilder builtMessage = new StringBuilder(); builtMessage.AppendLine("From: " + req.Name); builtMessage.AppendLine("Company: " + req.Company); builtMessage.AppendLine("Email: " + req.Email); builtMessage.AppendLine("Message: " + req.Message); builtMessage.AppendLine(); builtMessage.AppendLine("Additional Info"); builtMessage.AppendLine("IP Address: " + request.UserHostAddress); builtMessage.AppendLine("Browser Info: " + request.UserAgent); builtMessage.AppendLine("Referral: " + request.UrlReferrer.ToString()); DateTime requestTime = DateTime.Now; var vals = new Dictionary <string, string>() { { columnUniqueKey, connectionAdmin.GetNewKey() }, { columnCustomer, (usCustomer ?? "").SQLEscape() }, { columnPartner, (usPartner ?? "").SQLEscape() }, { columnRequestDate, requestTime.ToString("yyyy-MM-dd HH:mm:ss") }, { columnToEmail, defaultToEmail }, { columnFromEmail, defaultFromEmail }, { columnSubject, "EDIOC- Support Submission" }, { columnMessage, WrapTextTo70(builtMessage.ToString().SQLEscape()) }, #if DEBUG { columnProcessed, "Y" }, #else { columnProcessed, "" }, #endif { columnSendAfter, requestTime.ToString("yyyy-MM-dd HH:mm:ss") } }; var result = connectionAdmin.Insert(tableEmailReq, vals.ToNameValueCollection()); return(result.AffectedRows > 0); } catch (Exception e) { ProgramLog.LogError(usUserName, usCustomer, usPartner, "SupportRequest", "Submit", e.Message); return(false); } }
public static OCUserInfo GetOCRecord(string usToken) { OCUserInfo info = new OCUserInfo(); if (string.IsNullOrEmpty(usToken)) { return(info); } string sToken = usToken.SQLEscape(); DBConnect connection = new DBConnect(); DateTime expTime = new DateTime(); try { connection.Connect(ConnectionsMgr.GetAdminConnInfo()); using (var queryUserAuthInfo = connection.Select(new[] { columnUserName, columnActivePartner, columnIsTest, columnCreateDate }, tableOCAuth, string.Format("WHERE {0}='{1}'", columnSessionID, sToken))) { if (queryUserAuthInfo.AffectedRows <= 0) { connection.Close(); return(info); } queryUserAuthInfo.Read(); info.UserName = queryUserAuthInfo.Field(0); info.ActivePartner = queryUserAuthInfo.Field(1); info.IsTest = queryUserAuthInfo.Field(2) == "1"; expTime = (DateTime)queryUserAuthInfo.Field2(3, DateTime.MinValue); connection.Delete(tableOCAuth, string.Format("WHERE {0}='{1}'", columnSessionID, sToken)); } connection.Close(); var authLimit = DateTime.Now.AddSeconds(-OCSessionTimeOutSeconds); if (expTime >= authLimit) //expire date must be within the last OCSessionTimeOutSeconds seconds { info.IsValid = true; } else { throw new Exception("Authentication time is not within range allowed. Auth Time: " + expTime.ToString("yyyy-MM-dd HH:mm:ss") + ", Auth Limit: " + authLimit.ToString("yyyy-MM-dd HH:mm:ss")); } return(info); } catch (Exception ex) { ProgramLog.LogError(null, "Auth", "GetOCRecord", ex.Message); connection.Close(); return(info); } }
private static void _Log(string username, string customer, string partner, string source, string method, string type, string message) { if (customer == "") { customer = "EDIO"; } if (partner == "") { partner = "EDIO"; } string sCustomer = TruncateAndEscape(customer, 4); string sPartner = TruncateAndEscape(partner, 4); string sUsername = TruncateAndEscape(username, 40); string sSource = TruncateAndEscape(source, 32); string sMethod = TruncateAndEscape(method, 32); string sMessage = (string.IsNullOrWhiteSpace(message) ? "" : message).SQLEscape(); bool isTest = false; #if DEBUG isTest = true; #endif var connection = new DBConnect(); try { connection.Connect(ConnectionsMgr.GetAdminConnInfo()); Dictionary <string, string> insertVals = new Dictionary <string, string>() { { _Column.UniqueKey, connection.GetNewKey() }, { columnLogTime, DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") }, { columnSource, sSource }, { columnMethod, sMethod }, { columnStatus, type }, { columnMessage, sMessage }, { _Column.UserName, sUsername }, { _Column.Customer, sCustomer }, { _Column.Partner, sPartner }, { columnIsTest, isTest ? "1" : "0" } }; connection.Insert(tableLog, insertVals.ToNameValueCollection()); } catch { } connection.Close(); }
private static string _GetElemDesc(User user, string usEleNum, string usCode) { DBConnect connect = new DBConnect(); try { connect.Connect(ConnectionsMgr.GetAdminConnInfo()); var queryCodes = connect.Select(_Column.CodeDesc, _Table.DisaCode, string.Format("WHERE {0}='{1}' AND {2}='{3}'", _Column.EleNum, usEleNum.SQLEscape(), _Column.Code, usCode.SQLEscape())); if (queryCodes.Read()) { return(queryCodes.Field(0)); } else { return(""); } } catch (Exception e) { ProgramLog.LogError(user, "ElementLookup", "_GetElemDesc", e.Message); return(""); } }
public static bool BeginGuestSession() { try { // Check existence of session HttpSessionState session = HttpContext.Current.Session; HttpRequest request = HttpContext.Current.Request; if (session == null) { return(false); } User user = new User(); user.UserName = "******"; user.Email = "*****@*****.**"; user.FirstName = "Guest"; user.LastName = ""; user.Level = 1; user.Customer = "GST1"; user.PartnerList = new List <PartnerDetail>(); user.IsGuest = true; List <string> partnerList = new List <string>() { "PART" }; bool isTest = false; //CHECK DEVELOPMENT/TEST ENVIRONMENT string hostname = request.Url.Authority; if (hostname == "10.0.0.245:30658") { isTest = true; } #if DEBUG isTest = true; #endif // Set connection IDs if (!ConnectionsMgr.SetConnIDs(user, isTest)) { // No Conn IDs? ProgramLog.LogError(user, "SessionHandler", "GetUserInfo", string.Format("Unable to get connection IDs for customer {0} and partner {1}.", user.Customer, user.ActivePartner)); return(false); } DBConnect connection = new DBConnect(); // Set partner info connection.Connect(ConnectionsMgr.GetAdminConnInfo()); using (var res = connection.Select(new[] { columnPartner, columnPartnerName }, tablePartnerInfo, string.Format("WHERE {0} IN ({1})", columnPartner, string.Join(",", partnerList.Select(p => "'" + p + "'"))))) { while (res.Read()) { user.PartnerList.Add(new PartnerDetail() { ID = res.Field(0), FullName = res.Field(1) }); } } user.PartnerIndex = 0; connection.Close(); // Set extra company info. connection.Connect(ConnectionsMgr.GetOCConnInfo(user)); using (var res = connection.Select(columnCompanyName, tableCustomerInfo, string.Format("WHERE {0}='{1}'", columnCustomer, user.Customer))) { if (res.AffectedRows == 0) { // No company name? ProgramLog.LogError(user, "SessionHandler", "GetUserInfo", string.Format("Unable to find company name in {0} for customer {1}", tableCustomerInfo, user.Customer)); connection.Close(); return(false); } res.Read(); user.CompanyName = res.Field(0); } connection.Close(); session[SKeys.User] = user; session[SKeys.IsTest] = isTest; session[SKeys.LandingPg] = "Default.aspx"; session[SKeys.TokenSet] = new HashSet <string>(); session[SKeys.TrxDict] = ProcessQueue.GetReqTypeDict(user); session[SKeys.IsOCSession] = false; return(true); } catch (Exception e) { ProgramLog.LogError("Guest", "EDIO", "EDIO", "SessionHandler", "BeginGuestSession", e.Message); return(false); } }
/// <summary> /// Fetches user information based on the username. /// </summary> /// <param name="user">The user object.</param> /// <param name="usUserName">The username of the user.</param> /// <returns>True if successful, false otherwise.</returns> private static bool GetUserInfo(User user, string usUserName, bool isTest) { string sUserName = usUserName.SQLEscape(); List <string> partnerList = new List <string>(); List <PartnerDetail> partnerDetailList = new List <PartnerDetail>(); DBConnect connection = new DBConnect(); try { connection.Connect(ConnectionsMgr.GetAuthConnInfo()); using (var res = connection.Select(new[] { columnEmail, columnFirstName, columnLastName, columnLevel, columnOrgID, columnPartnerList }, tableUserInfo, string.Format("WHERE {0}='{1}'", columnUserName, sUserName))) { if (!res.Read()) { connection.Close(); return(false); } user.UserName = sUserName; user.Email = res.Field(0); user.FirstName = res.Field(1); user.LastName = res.Field(2); user.Level = (int)double.Parse(res.Field(3)); user.Customer = res.Field(4).ToUpper(); partnerList.AddRange(res.Field(5).Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries).Select(pt => pt.Trim())); } connection.Close(); // Set partner info connection.Connect(ConnectionsMgr.GetAdminConnInfo()); using (var res = connection.Select(new[] { columnPartner, columnPartnerName }, tablePartnerInfo, string.Format("WHERE {0} IN ({1})", columnPartner, string.Join(",", partnerList.Select(p => "'" + p + "'"))))) { while (res.Read()) { partnerDetailList.Add(new PartnerDetail() { ID = res.Field(0), FullName = res.Field(1) }); } } connection.Close(); if (partnerDetailList.Count == 0) { // No partners? ProgramLog.LogError(user.UserName, user.Customer, "EDIO", "SessionHandler", "GetUserInfo", string.Format("Unable to find partner list in {0} for user {1}.", tablePartnerInfo, user.UserName)); return(false); } user.PartnerList = partnerDetailList; user.PartnerIndex = 0; // Set connection IDs if (!ConnectionsMgr.SetConnIDs(user, isTest)) { // No Conn IDs? ProgramLog.LogError(user, "SessionHandler", "GetUserInfo", string.Format("Unable to get connection IDs for customer {0} and partner {1}.", user.Customer, user.ActivePartner)); return(false); } // Set extra company info. connection.Connect(ConnectionsMgr.GetOCConnInfo(user)); using (var res = connection.Select(columnCompanyName, tableCustomerInfo, string.Format("WHERE {0}='{1}'", columnCustomer, user.Customer))) { if (res.AffectedRows == 0) { // No company name? ProgramLog.LogError(user, "SessionHandler", "GetUserInfo", string.Format("Unable to find company name in {0} for customer {1}", tableCustomerInfo, user.Customer)); connection.Close(); return(false); } res.Read(); user.CompanyName = res.Field(0); } connection.Close(); return(true); } catch (Exception e) { ProgramLog.LogError("", "EDIO", "EDIO", "SessionHandler", "GetUserInfo", e.Message); return(false); } }