private void SendErrorReportAttachment(string exceptionType, IEnumerable <Image> screenShots, byte[] skyFileBytes, bool isTest) { if (isTest) // We don't want to be submitting an exception every time the ReportErrorDlgTest is run. { DialogResult = DialogResult.OK; return; } string reportUrl = WebHelpers.GetSkylineLink("/announcements/home/issues/exceptions/insert.view"); // Not L10N var nvc = new NameValueCollection { { "title", PostTitle }, // Not L10N { "body", MessageBody }, // Not L10N { "fromDiscussion", "false" }, // Not L10N { "allowMultipleDiscussions", "false" }, // Not L10N { "rendererType", "TEXT_WITH_LINKS" } // Not L10N }; var files = new Dictionary <string, byte[]>(); foreach (var screenShot in screenShots) { var memoryStream = new MemoryStream(); screenShot.Save(memoryStream, ImageFormat.Jpeg); string name = "Image-" + (files.Count + 1) + ".jpg"; // Not L10N files.Add(name, memoryStream.ToArray()); } if (skyFileBytes != null) { files.Add("skylineFile.sky", skyFileBytes); // Not L10N } HttpUploadFiles(reportUrl, "image/jpeg", nvc, files); // Not L10N DialogResult = DialogResult.OK; }
public static DailyTimeTrack GetCurrentDayClockInOutTime(string userName) { var startDate = WebHelpers.GetCurrentDateTimeByTimeZoneId(WebConfigurationManager.AppSettings["UserTimeZoneId"]).Date; var endDate = startDate.AddDays(1); using (var dbContext = new TimeTrackingEntities()) { var currentUser = dbContext.ExtendedUserProfiles.FirstOrDefault(c => c.UserName.ToLower().Equals(userName)); var userClockInOutTimeList = (from utsh in dbContext.UserTimeTrackHistories where utsh.IsDeleted == false && utsh.UserName.ToLower().Equals(userName.ToLower()) && (utsh.StampDate >= startDate && utsh.StampDate < endDate) && utsh.ClockInTime.Length > 0 select utsh).ToList(); if (userClockInOutTimeList.Any()) { var userTimeStampHistory = userClockInOutTimeList.FirstOrDefault(); if (userTimeStampHistory != null) { var dailyTimeTrack = new DailyTimeTrack(userTimeStampHistory.StampDate, currentUser.HourlyRate.HasValue ? currentUser.HourlyRate.Value : 0) { TimeTrackList = GetTimeTrackList(userClockInOutTimeList, userTimeStampHistory.StampDate). OrderByDescending(c => c.ClockInTime).ThenByDescending( d => d.ClockOutTime).ToList() }; dailyTimeTrack.SubmitButtonText = dailyTimeTrack.TimeTrackList.Any(c => c.ClockOutTime == null) ? WebConfigurationManager.AppSettings["ClockOutText"] : WebConfigurationManager.AppSettings["ClockInText"]; return(dailyTimeTrack); } } return(new DailyTimeTrack()); } }
public ActionResult Create(UserTimeTrackHistoryMapped utth, FormCollection collection) { var userList = MembershipUserExtended.GetFullNameUserNameList(); string userName = collection["UserName"]; if (userList.ContainsValue(userName)) { utth.UserName = userName; DateTime clockInDt; DateTime clockOutDt; if (DateTime.TryParse(utth.ClockInTime, out clockInDt) && DateTime.TryParse(utth.ClockOutTime, out clockOutDt)) { if (clockOutDt.TimeOfDay.CompareTo(clockInDt.TimeOfDay) != -1) // if clock out time is earlier than clock in time than error { utth.ClockInTime = string.Format("{0:t}", clockInDt); utth.ClockOutTime = string.Format("{0:t}", clockOutDt); utth.UserId = MembershipUserExtended.GetUserIdByUserName(userName); utth.CreatedBy = LoggedInUserName; utth.CreatedDate = WebHelpers.GetCurrentDateTimeByTimeZoneId(WebConfigurationManager.AppSettings["UserTimeZoneId"]); utth.IsDeleted = false; var tth = utth.Get(utth.Save()); tth.UserName = userList.FindKeyByValue(userName); ViewBag.Message = "Record inserted successfully."; return(View(tth)); } ViewBag.Message = "Clock Out time can not be earlier than Clock In time."; return(View(utth)); } ViewBag.Message = "Not a valid Clock In/Out time, please make sure time is in correct format."; return(View(utth)); } ViewBag.Message = "Error inserting record."; return(View(new UserTimeTrackHistoryMapped())); }
/// <summary> /// Sends the SMS. /// </summary> /// <param name="message">The message.</param> private async Task SendSMS(Message message) { try { await _smsApi.SendMessage(message.Recipient, message.Text); message.Status = _smsApi.Success ? MessageStatus.Sent : MessageStatus.Failed; message.Response = _smsApi.Response; } catch (Exception ex) { message.Status = MessageStatus.Failed; var err = WebHelpers.ProcessException(ex).Message; if (err.StartsWith("The remote name could not be resolved")) { err = "Unable to reach SMS Server. Make sure application server is connected to the internet."; } message.Response = err; } finally { SaveMessage(message); } }
protected override async Task <HttpResponseMessage> SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) { var json = string.Empty; if (request.Method == HttpMethod.Post && request.RequestUri.AbsoluteUri.Equals("https://portalbase.com/oauth2/token")) { var formBody = WebHelpers.ParseForm(await request.Content.ReadAsStringAsync()); json = this.notifications.GenerateToken(formBody); } else if (request.Method == HttpMethod.Get && request.RequestUri.AbsoluteUri.Equals("https://portalbase.com/api/v1.1/m/profile")) { json = this.notifications.GetUserProfile(request.Headers.Authorization.Scheme, request.Headers.Authorization.Parameter); } var response = new HttpResponseMessage(HttpStatusCode.NotFound); if (!string.IsNullOrEmpty(json)) { response.StatusCode = HttpStatusCode.OK; response.Content = new StringContent(json, Encoding.UTF8, "application/json"); } return(response); }
private void linkProteoWizard_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) { WebHelpers.OpenLink(this, "https://github.com/ProteoWizard"); // Not L10N }
private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) { WebHelpers.OpenSkylineLink(this, "/wiki/home/software/Skyline/page.view?name=LicenseAgreement"); // Not L10N }
private void linkLabelProvider_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) { WebHelpers.OpenLink(this, e.Link.LinkData as string); }
public static void DisableChecks(bool CompletedEvent) { cheats_detected = Get_Cheat_Status(); if (cheats_detected != 0) { if (cheats_detected == 64 && !CompletedEvent) { /* You Know the Rules and So Do I */ } else { if (ServerProxy.Running()) { foreach (string report_url in URLs.AntiCheatFD) { if (Completed == 0) { Completed++; FunctionStatus.ExternalToolsWasUsed = true; } if (report_url.EndsWith("?")) { try { Uri sendReport = new Uri(report_url + "serverip=" + serverip + "&user_id=" + user_id + "&persona_name=" + persona_name + "&event_session=" + event_id + "&cheat_type=" + cheats_detected + "&hwid=" + HardwareID.FingerPrint.Value() + "&persona_id=" + persona_id + "&launcher_hash=" + WebHelpers.Value() + "&launcher_certificate=" + CertificateStore.LauncherSerial + "&hwid_fallback=" + HardwareID.FingerPrint.ValueAlt() + "&car_used=" + DiscordGamePresence.PersonaCarName + "&os_platform=" + InformationCache.OSName + "&event_status=" + CompletedEvent); ServicePointManager.FindServicePoint(sendReport).ConnectionLeaseTimeout = (int)TimeSpan.FromSeconds(30).TotalMilliseconds; var Client = new WebClient { Encoding = Encoding.UTF8 }; if (!WebCalls.Alternative()) { Client = new WebClientWithTimeout { Encoding = Encoding.UTF8 }; } else { Client.Headers.Add("user-agent", "SBRW Launcher " + Application.ProductVersion + " - (" + InsiderInfo.BuildNumberOnly() + ")"); } Client.DownloadStringCompleted += (Nice, Brock) => { Client.Dispose(); }; try { string NTVersion = WindowsProductVersion.GetWindowsBuildNumber() != 0 ? WindowsProductVersion.GetWindowsBuildNumber().ToString() : "Wine"; Client.Headers.Add("os-version", NTVersion); Client.DownloadStringAsync(sendReport); } catch { } } catch { } } else { try { Uri sendReport = new Uri(report_url); ServicePointManager.FindServicePoint(sendReport).ConnectionLeaseTimeout = (int)TimeSpan.FromSeconds(30).TotalMilliseconds; var request = (HttpWebRequest)WebRequest.Create(sendReport); var postData = "serverip=" + serverip + "&user_id=" + user_id + "&persona_name=" + persona_name + "&event_session=" + event_id + "&cheat_type=" + cheats_detected + "&hwid=" + HardwareID.FingerPrint.Value() + "&persona_id=" + persona_id + "&launcher_hash=" + WebHelpers.Value() + "&launcher_certificate=" + CertificateStore.LauncherSerial + "&hwid_fallback=" + HardwareID.FingerPrint.ValueAlt() + "&car_used=" + DiscordGamePresence.PersonaCarName + "&os_platform=" + InformationCache.OSName + "&event_status=" + CompletedEvent; var data = Encoding.ASCII.GetBytes(postData); request.Method = "POST"; request.ContentType = "application/x-www-form-urlencoded"; request.ContentLength = data.Length; request.Timeout = (int)TimeSpan.FromSeconds(30).TotalMilliseconds; using (var stream = request.GetRequestStream()) { stream.Write(data, 0, data.Length); } var response = (HttpWebResponse)request.GetResponse(); String responseString = new StreamReader(response.GetResponseStream()).ReadToEnd(); } catch { } } } } else { if (Completed != URLs.AntiCheatSD.Length) { foreach (string report_url in URLs.AntiCheatSD) { Completed++; if (report_url.EndsWith("?")) { try { Uri sendReport = new Uri(report_url + "serverip=" + serverip + "&user_id=" + user_id + "&cheat_type=" + cheats_detected + "&hwid=" + HardwareID.FingerPrint.Value() + "&launcher_hash=" + WebHelpers.Value() + "&launcher_certificate=" + CertificateStore.LauncherSerial + "&hwid_fallback=" + HardwareID.FingerPrint.ValueAlt() + "&os_platform=" + InformationCache.OSName); ServicePointManager.FindServicePoint(sendReport).ConnectionLeaseTimeout = (int)TimeSpan.FromSeconds(30).TotalMilliseconds; var Client = new WebClient { Encoding = Encoding.UTF8 }; if (!WebCalls.Alternative()) { Client = new WebClientWithTimeout { Encoding = Encoding.UTF8 }; } else { Client.Headers.Add("user-agent", "SBRW Launcher " + Application.ProductVersion + " - (" + InsiderInfo.BuildNumberOnly() + ")"); } Client.DownloadStringCompleted += (Nice, Brock) => { Client.Dispose(); }; try { string NTVersion = WindowsProductVersion.GetWindowsBuildNumber() != 0 ? WindowsProductVersion.GetWindowsBuildNumber().ToString() : "Wine"; Client.Headers.Add("os-version", NTVersion); Client.DownloadStringAsync(sendReport); } catch { } } catch { } } } } } TimeConversions.MUFRTime(); } } detect_MULTIHACK = detect_FAST_POWERUPS = detect_SPEEDHACK = detect_SMOOTH_WALLS = detect_TANK_MODE = detect_WALLHACK = detect_DRIFTMOD = detect_PURSUITBOT = false; cheats_detected = 0; Secret.Abort(); }
public Dictionary <string, string> GetFilesInfo() { return(WebHelpers.GetAllFilesInfo(HttpContext.Current.Server.MapPath("~/ClientBin"))); }
public Dictionary <string, object> Fill(WebInterface webInterface, string filename, OSHttpRequest httpRequest, OSHttpResponse httpResponse, Dictionary <string, object> requestParameters, ITranslator translator, out string response) { response = null; var vars = new Dictionary <string, object> (); var regionListVars = new List <Dictionary <string, object> > (); var user = Authenticator.GetAuthentication(httpRequest); var regionData = Framework.Utilities.DataManager.RequestPlugin <IRegionData> (); var regions = regionData.GetOwnerRegions(user.PrincipalID); if (regions.Count > 0) { foreach (var region in regions) { string info; info = (region.RegionArea < 1000000) ? region.RegionArea + " m2" : (region.RegionArea / 1000000) + " km2"; info = info + ", " + region.RegionTerrain; regionListVars.Add(new Dictionary <string, object> { { "RegionLocX", region.RegionLocX / Constants.RegionSize }, { "RegionLocY", region.RegionLocY / Constants.RegionSize }, { "RegionName", region.RegionName }, { "RegionInfo", info }, { "RegionStatus", WebHelpers.YesNo(translator, region.IsOnline) }, { "RegionID", region.RegionID }, { "RegionURI", region.RegionURI } }); } } else { regionListVars.Add(new Dictionary <string, object> { { "RegionLocX", "" }, { "RegionLocY", "" }, { "RegionName", "" }, { "RegionInfo", translator.GetTranslatedString("NoDetailsText") }, { "RegionStatus", "" }, { "RegionID", "" }, { "RegionURI", "" } }); } vars.Add("RegionList", regionListVars); // labels vars.Add("UserName", user.Name); vars.Add("RegionsText", translator.GetTranslatedString("MenuRegionsTitle")); vars.Add("AddRegionText", translator.GetTranslatedString("AddRegionText")); vars.Add("EditRegionText", translator.GetTranslatedString("EditText")); vars.Add("RegionListText", translator.GetTranslatedString("RegionListText")); vars.Add("RegionText", translator.GetTranslatedString("Region")); vars.Add("RegionNameText", translator.GetTranslatedString("RegionNameText")); vars.Add("RegionLocXText", translator.GetTranslatedString("RegionLocXText")); vars.Add("RegionLocYText", translator.GetTranslatedString("RegionLocYText")); vars.Add("RegionOnlineText", translator.GetTranslatedString("Online")); return(vars); }
public async Task <ActionResult> Login(LoginModel model) { try { var user = await userManager.FindByNameAsync(model.Username); if (user != null) { var result = await signInManager.CheckPasswordSignInAsync(user, model.Password, model.RememberMe); if (result.Succeeded) { user = _context.Users.Where(x => x.Id == user.Id).Include(x => x.UserRoles).Include(x => x.Claims).First(); var role = _context.Roles.Where(x => x.Id == user.UserRoles.First().RoleId).Include(x => x.RoleClaims).First(); var roleClaims = role.RoleClaims.Select(x => x.ClaimValue).Distinct().ToList(); var key = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(configuration["Tokens:Key"])); var creds = new SigningCredentials(key, SecurityAlgorithms.HmacSha256); var nowUtc = DateTime.Now.ToUniversalTime(); var expires = nowUtc.AddMinutes(double.Parse(configuration["Tokens:ExpiryMinutes"])).ToUniversalTime(); var claims = new List <Claim> { new Claim("Id", user.Id), new Claim("UserName", user.UserName) }; var token = new JwtSecurityToken( configuration["Tokens:Issuer"], configuration["Tokens:Audience"], claims, expires: expires, signingCredentials: creds); var tokenResponse = new JwtSecurityTokenHandler().WriteToken(token); var data = new { user.Id, Username = user.UserName, user.Name, user.Email, user.PhoneNumber, Role = role.Name, Claims = roleClaims, Token = tokenResponse }; return(Ok(new { data, message = "Login Successful" })); } return(BadRequest("Invalid Username or Password")); } return(BadRequest("Invalid Username or Password")); } catch (Exception e) { return(BadRequest(WebHelpers.ProcessException(e))); } }
private void lblCustomFormatString_LinkClicked(object sender, System.Windows.Forms.LinkLabelLinkClickedEventArgs e) { WebHelpers.OpenSkylineShortLink(this, @"helptopic-docgridformats"); }
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline. public static void Configure(IApplicationBuilder app, IWebHostEnvironment env) { if (env.IsDevelopment()) { app.UseDeveloperExceptionPage(); } app.UseCustomSerilogRequestLogging(); app.UseRouting(); app.UseStaticFiles(); if (!Directory.Exists("./Images")) { Directory.CreateDirectory("./Images"); } app.UseStaticFiles(new StaticFileOptions { FileProvider = new PhysicalFileProvider( Path.Combine(env.ContentRootPath, "Images")), RequestPath = "/Images" }); app.UseDirectoryBrowser(new DirectoryBrowserOptions { FileProvider = new PhysicalFileProvider( Path.Combine(env.ContentRootPath, "Images")), RequestPath = "/Images" }); app.UseStaticFiles(new StaticFileOptions { FileProvider = new PhysicalFileProvider( Path.Combine(env.ContentRootPath, "Documents")), RequestPath = "/Documents" }); app.UseDirectoryBrowser(new DirectoryBrowserOptions { FileProvider = new PhysicalFileProvider( Path.Combine(env.ContentRootPath, "Documents")), RequestPath = "/Documents" }); app.UseCors("AllowAll"); app.UseApiDoc(); app.UseEndpoints(endpoints => { endpoints.MapControllers(); }); WebHelpers.Configure(app.ApplicationServices.GetRequiredService <IHttpContextAccessor>()); //added request logging app.UseHttpsRedirection(); app.UseMiddleware <JwtMiddleware>(); app.UseMiddleware <ApiLoggingMiddleware>(); app.UseResponseCompression(); app.UseAuthentication(); app.UseAuthorization(); app.UseSecureHeadersMiddleware(SecureHeadersMiddlewareExtensions.BuildDefaultConfiguration()); app.UseEndpoints(endpoints => { endpoints.MapControllers(); }); // app.UseCors(options => options.AllowAnyOrigin()); }
public Dictionary <string, object> Fill(WebInterface webInterface, string filename, OSHttpRequest httpRequest, OSHttpResponse httpResponse, Dictionary <string, object> requestParameters, ITranslator translator, out string response) { response = null; var vars = new Dictionary <string, object> (); var directoryService = Framework.Utilities.DataManager.RequestPlugin <IDirectoryServiceConnector> (); var eventListVars = new List <Dictionary <string, object> > (); IMoneyModule moneyModule = webInterface.Registry.RequestModuleInterface <IMoneyModule> (); var currencySymbol = "$"; if (moneyModule != null) { currencySymbol = moneyModule.InWorldCurrencySymbol; } UserAccount user = Authenticator.GetAuthentication(httpRequest); var eventLevel = 7; // all events; var category = (int)DirectoryManager.EventCategories.All; var timeframe = 24; var pg_checked = "checked"; var ma_checked = "checked"; var ao_checked = "checked"; if (requestParameters.ContainsKey("Submit")) { int level = 0; pg_checked = ""; ma_checked = ""; ao_checked = ""; if (requestParameters.ContainsKey("display_pg")) { level += Util.ConvertEventMaturityToDBMaturity(DirectoryManager.EventFlags.PG); pg_checked = "checked"; } if (requestParameters.ContainsKey("display_ma")) { level += Util.ConvertEventMaturityToDBMaturity(DirectoryManager.EventFlags.Mature); ma_checked = "checked"; } if (requestParameters.ContainsKey("display_ao")) { level += Util.ConvertEventMaturityToDBMaturity(DirectoryManager.EventFlags.Adult); ao_checked = "checked"; } eventLevel = level; string cat = requestParameters ["category"].ToString(); category = int.Parse(cat); string timsel = requestParameters ["timeframe"].ToString(); timeframe = int.Parse(timsel); } // maturity selections vars.Add("PG_checked", pg_checked); vars.Add("MA_checked", ma_checked); vars.Add("AO_checked", ao_checked); // build category selection vars.Add("CategoryType", WebHelpers.EventCategorySelections(category, translator)); // build timeframes vars.Add("TimeFrame", WebHelpers.EventTimeframesSelections(timeframe, translator)); // get some events if (directoryService != null) { var events = new List <EventData> (); events = directoryService.GetUserEvents(user.PrincipalID.ToString(), timeframe, category, eventLevel); if (events.Count == 0) { vars.Add("EditText", ""); eventListVars.Add(new Dictionary <string, object> { { "EventID", "" }, { "CreatorUUID", "" }, { "EventDate", "" }, { "EventDateUTC", "" }, { "CoverCharge", "" }, { "Duration", "" }, { "Name", "" }, { "Description", translator.GetTranslatedString("NoDetailsText") }, { "SimName", "" }, { "GPosX", "" }, { "GPosY", "" }, { "GPosZ", "" }, { "LocalPosX", "" }, { "LocalPosY", "" }, { "LocalPosZ", "" }, { "Maturity", "" }, { "EventFlags", "" }, // same as maturity?? { "Category", "" } }); } else { vars.Add("EditText", translator.GetTranslatedString("EditText")); foreach (var evnt in events) { var evntDateTime = Util.ToDateTime(evnt.dateUTC).ToLocalTime(); eventListVars.Add(new Dictionary <string, object> { { "EventID", evnt.eventID }, { "CreatorUUID", evnt.creator }, { "EventDate", evnt.date }, { "EventDateUTC", Culture.LocaleShortDateTime(evntDateTime) }, { "CoverCharge", currencySymbol + " " + evnt.amount }, { "Duration", WebHelpers.EventDuration((int)evnt.duration, translator) }, { "Name", evnt.name }, { "Description", evnt.description }, { "SimName", evnt.simName }, { "GPosX", evnt.globalPos.X.ToString() }, { "GPosY", evnt.globalPos.Y.ToString() }, { "GPosZ", evnt.globalPos.Z.ToString() }, { "LocalPosX", evnt.regionPos.X.ToString() }, { "LocalPosY", evnt.regionPos.Y.ToString() }, { "LocalPosZ", evnt.regionPos.Z.ToString() }, { "Maturity", WebHelpers.EventMaturity(evnt.maturity) }, { "EventFlags", evnt.eventFlags }, { "Category", WebHelpers.EventCategory(int.Parse(evnt.category), translator) } }); } } vars.Add("EventList", eventListVars); } vars.Add("Events", translator.GetTranslatedString("Events")); // labels vars.Add("UserName", user.Name); vars.Add("EventsText", translator.GetTranslatedString("EventsText")); vars.Add("AddEventText", translator.GetTranslatedString("AddEventText")); vars.Add("EventDateText", translator.GetTranslatedString("EventDateText")); vars.Add("CategoryText", translator.GetTranslatedString("CategoryText")); vars.Add("LocationText", translator.GetTranslatedString("LocationText")); vars.Add("DescriptionText", translator.GetTranslatedString("DescriptionText")); vars.Add("MaturityText", translator.GetTranslatedString("MaturityText")); vars.Add("GeneralText", translator.GetTranslatedString("GeneralText")); vars.Add("MatureText", translator.GetTranslatedString("MatureText")); vars.Add("AdultText", translator.GetTranslatedString("AdultText")); vars.Add("CoverChargeText", translator.GetTranslatedString("CoverChargeText")); vars.Add("DurationText", translator.GetTranslatedString("DurationText")); vars.Add("SearchText", translator.GetTranslatedString("SearchText")); return(vars); }
protected override async Task <AuthenticationTicket> AuthenticateCoreAsync() { var properties = (AuthenticationProperties)null; try { var accessToken = Request.Query["accessToken"]; var expires = Request.Query["expiresIn"]; string text; if (null == accessToken) { var code = (string)null; var state = (string)null; var query = Request.Query; var values = query.GetValues("error"); if (values != null && values.Count >= 1) { _logger.WriteVerbose("Remote server returned an error: " + Request.QueryString); } values = query.GetValues("code"); if (values != null && values.Count == 1) { code = values[0]; } values = query.GetValues("state"); if (values != null && values.Count == 1) { state = values[0]; } properties = Options.StateDataFormat.Unprotect(state); if (properties == null) { return(null); } if (!ValidateCorrelationId(properties, _logger)) { return(new AuthenticationTicket(null, properties)); } if (code == null) { return(new AuthenticationTicket(null, properties)); } var requestPrefix = Request.Scheme + "://" + Request.Host; var redirectUri = requestPrefix + Request.PathBase + Options.CallbackPath; var tokenRequest = "grant_type=authorization_code&code=" + Uri.EscapeDataString(code) + "&redirect_uri=" + Uri.EscapeDataString(redirectUri) + "&client_id=" + Uri.EscapeDataString(Options.AppId) + "&client_secret=" + Uri.EscapeDataString(Options.AppSecret); var tokenResponse = await _httpClient.GetAsync(Options.TokenEndpoint + "?" + tokenRequest, Request.CallCancelled); tokenResponse.EnsureSuccessStatusCode(); text = await tokenResponse.Content.ReadAsStringAsync(); var form = WebHelpers.ParseForm(text); accessToken = form["access_token"]; expires = form["expires"]; } else { properties = new AuthenticationProperties() { RedirectUri = "/Account/ExternalLoginCallback" }; } var graphAddress = Options.UserInformationEndpoint + "?access_token=" + Uri.EscapeDataString(accessToken); if (Options.SendAppSecretProof) { graphAddress += "&appsecret_proof=" + GenerateAppSecretProof(accessToken); } var graphResponse = await _httpClient.GetAsync(graphAddress, Request.CallCancelled); graphResponse.EnsureSuccessStatusCode(); text = await graphResponse.Content.ReadAsStringAsync(); var user = JObject.Parse(text); var context = new FacebookAuthenticatedContext(Context, user, accessToken, expires) { Identity = new ClaimsIdentity(Options.AuthenticationType, "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name", "http://schemas.microsoft.com/ws/2008/06/identity/claims/role") }; if (!string.IsNullOrEmpty(context.Id)) { context.Identity.AddClaim(new Claim("http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier", context.Id, "http://www.w3.org/2001/XMLSchema#string", Options.AuthenticationType)); } if (!string.IsNullOrEmpty(context.UserName)) { context.Identity.AddClaim(new Claim("http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name", context.UserName, "http://www.w3.org/2001/XMLSchema#string", Options.AuthenticationType)); } if (!string.IsNullOrEmpty(context.Email)) { context.Identity.AddClaim(new Claim("http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress", context.Email, "http://www.w3.org/2001/XMLSchema#string", Options.AuthenticationType)); } if (!string.IsNullOrEmpty(context.Name)) { context.Identity.AddClaim(new Claim("urn:facebook:name", context.Name, "http://www.w3.org/2001/XMLSchema#string", Options.AuthenticationType)); if (string.IsNullOrEmpty(context.UserName)) { context.Identity.AddClaim(new Claim("http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name", context.Name, "http://www.w3.org/2001/XMLSchema#string", Options.AuthenticationType)); } } if (!string.IsNullOrEmpty(context.Link)) { context.Identity.AddClaim(new Claim("urn:facebook:link", context.Link, "http://www.w3.org/2001/XMLSchema#string", Options.AuthenticationType)); } context.Properties = properties; await Options.Provider.Authenticated(context); return(new AuthenticationTicket(context.Identity, context.Properties)); } catch (Exception ex) { _logger.WriteError("Authentication failed", ex); return(new AuthenticationTicket(null, properties)); } }
protected override async Task <AuthenticationTicket> AuthenticateCoreAsync() { AuthenticationProperties properties = null; try { string code = null; string state = null; IReadableStringCollection query = Request.Query; IList <string> values = query.GetValues("error"); if (values != null && values.Count >= 1) { _logger.WriteVerbose("Remote server returned an error: " + Request.QueryString); } values = query.GetValues("code"); if (values != null && values.Count == 1) { code = values[0]; } values = query.GetValues("state"); if (values != null && values.Count == 1) { state = values[0]; } properties = Options.StateDataFormat.Unprotect(state); if (properties == null) { return(null); } // OAuth2 10.12 CSRF if (!ValidateCorrelationId(properties, _logger)) { return(new AuthenticationTicket(null, properties)); } if (code == null) { // Null if the remote server returns an error. return(new AuthenticationTicket(null, properties)); } string requestPrefix = Request.Scheme + "://" + Request.Host; string redirectUri = requestPrefix + Request.PathBase + Options.CallbackPath; string tokenRequest = "grant_type=authorization_code" + "&code=" + Uri.EscapeDataString(code) + "&redirect_uri=" + Uri.EscapeDataString(redirectUri) + "&client_id=" + Uri.EscapeDataString(Options.AppId) + "&client_secret=" + Uri.EscapeDataString(Options.AppSecret); HttpResponseMessage tokenResponse = await _httpClient.GetAsync(Options.TokenEndpoint + "?" + tokenRequest, Request.CallCancelled); tokenResponse.EnsureSuccessStatusCode(); string text = await tokenResponse.Content.ReadAsStringAsync(); IFormCollection form = WebHelpers.ParseForm(text); string accessToken = form["access_token"]; string expires = form["expires"]; string graphAddress = Options.UserInformationEndpoint + "?access_token=" + Uri.EscapeDataString(accessToken); if (Options.SendAppSecretProof) { graphAddress += "&appsecret_proof=" + GenerateAppSecretProof(accessToken); } HttpResponseMessage graphResponse = await _httpClient.GetAsync(graphAddress, Request.CallCancelled); graphResponse.EnsureSuccessStatusCode(); text = await graphResponse.Content.ReadAsStringAsync(); JObject user = JObject.Parse(text); var context = new FacebookAuthenticatedContext(Context, user, accessToken, expires); context.Identity = new ClaimsIdentity( Options.AuthenticationType, ClaimsIdentity.DefaultNameClaimType, ClaimsIdentity.DefaultRoleClaimType); if (!string.IsNullOrEmpty(context.Id)) { context.Identity.AddClaim(new Claim(ClaimTypes.NameIdentifier, context.Id, XmlSchemaString, Options.AuthenticationType)); } if (!string.IsNullOrEmpty(context.UserName)) { context.Identity.AddClaim(new Claim(ClaimsIdentity.DefaultNameClaimType, context.UserName, XmlSchemaString, Options.AuthenticationType)); } if (!string.IsNullOrEmpty(context.Email)) { context.Identity.AddClaim(new Claim(ClaimTypes.Email, context.Email, XmlSchemaString, Options.AuthenticationType)); } if (!string.IsNullOrEmpty(context.Name)) { context.Identity.AddClaim(new Claim("urn:facebook:name", context.Name, XmlSchemaString, Options.AuthenticationType)); // Many Facebook accounts do not set the UserName field. Fall back to the Name field instead. if (string.IsNullOrEmpty(context.UserName)) { context.Identity.AddClaim(new Claim(ClaimsIdentity.DefaultNameClaimType, context.Name, XmlSchemaString, Options.AuthenticationType)); } } if (!string.IsNullOrEmpty(context.Link)) { context.Identity.AddClaim(new Claim("urn:facebook:link", context.Link, XmlSchemaString, Options.AuthenticationType)); } context.Properties = properties; await Options.Provider.Authenticated(context); return(new AuthenticationTicket(context.Identity, context.Properties)); } catch (Exception ex) { _logger.WriteError("Authentication failed", ex); return(new AuthenticationTicket(null, properties)); } }
public ActionResult LoginPostback(string returnUrl) { var redirectUrl = WebHelpers.AppendParameter(ConfigOptions.Value.SecureAuthUrl, "ReturnUrl", $"https://{Request.Host.Host}/"); return(new RedirectResult(redirectUrl)); }
public Dictionary <string, object> Fill(WebInterface webInterface, string filename, OSHttpRequest httpRequest, OSHttpResponse httpResponse, Dictionary <string, object> requestParameters, ITranslator translator, out string response) { response = null; var vars = new Dictionary <string, object> (); var estateConnector = Framework.Utilities.DataManager.RequestPlugin <IEstateConnector> (); string estate; if (httpRequest.Query.ContainsKey("EstateID")) { estate = httpRequest.Query ["EstateID"].ToString(); } else { if (requestParameters.ContainsKey("EstateID")) { estate = requestParameters ["EstateID"].ToString(); } else { response = "<h3>Estate details not supplied, redirecting to main page</h3>" + "<script>" + "setTimeout(function() {window.location.href = \"/?page=estate_manager\";}, 1000);" + "</script>"; return(null); } } var estateid = -1; int.TryParse(estate, out estateid); if (requestParameters.ContainsKey("Delete")) { response = "Estate details would have been deleted (but not yet)."; return(null); } if (requestParameters.ContainsKey("Submit")) { var estateSettings = new EstateSettings(); if (estateid >= 0) { estateSettings = estateConnector.GetEstateIDSettings(estateid); } var estateOwner = requestParameters ["EstateOwner"].ToString(); estateSettings.EstateName = requestParameters ["EstateName"].ToString(); estateSettings.EstateOwner = UUID.Parse(estateOwner); estateSettings.PricePerMeter = int.Parse(requestParameters ["PricePerMeter"].ToString()); estateSettings.PublicAccess = requestParameters ["PublicAccess"].ToString() == "1"; estateSettings.TaxFree = requestParameters ["TaxFree"].ToString() == "1"; estateSettings.AllowVoice = requestParameters ["AllowVoice"].ToString() == "1"; estateSettings.AllowDirectTeleport = requestParameters ["AllowDirectTeleport"].ToString() == "1"; estateConnector.SaveEstateSettings(estateSettings); response = "Estate details have been updated." + "<script>" + "setTimeout(function() {window.location.href = \"/?page=estate_manager\";}, 1000);" + "</script>"; return(null); } if (requestParameters.ContainsKey("NewEstate")) { // blank details for new estate vars.Add("EstateID", "-1"); vars.Add("EstateName", ""); vars.Add("UserList", WebHelpers.UserSelections(webInterface.Registry, UUID.Zero)); vars.Add("PricePerMeter", ""); vars.Add("PublicAccess", WebHelpers.YesNoSelection(translator, true)); vars.Add("AllowVoice", WebHelpers.YesNoSelection(translator, true)); vars.Add("TaxFree", WebHelpers.YesNoSelection(translator, true)); vars.Add("AllowDirectTeleport", WebHelpers.YesNoSelection(translator, true)); vars.Add("Submit", translator.GetTranslatedString("AddEstateText")); } else { // get selected estate details var estateSettings = estateConnector.GetEstateIDSettings(estateid); if (estateSettings != null) { vars.Add("EstateID", estateSettings.EstateID.ToString()); vars.Add("EstateName", estateSettings.EstateName); vars.Add("UserList", WebHelpers.UserSelections(webInterface.Registry, estateSettings.EstateOwner)); vars.Add("PricePerMeter", estateSettings.PricePerMeter.ToString()); vars.Add("PublicAccess", WebHelpers.YesNoSelection(translator, estateSettings.PublicAccess)); vars.Add("AllowVoice", WebHelpers.YesNoSelection(translator, estateSettings.AllowVoice)); vars.Add("TaxFree", WebHelpers.YesNoSelection(translator, estateSettings.TaxFree)); vars.Add("AllowDirectTeleport", WebHelpers.YesNoSelection(translator, estateSettings.AllowDirectTeleport)); vars.Add("Submit", translator.GetTranslatedString("SaveUpdates")); } } // labels vars.Add("EstateManagerText", translator.GetTranslatedString("MenuEstateManager")); vars.Add("EstateNameText", translator.GetTranslatedString("EstateText")); vars.Add("EstateOwnerText", translator.GetTranslatedString("MenuOwnerTitle")); vars.Add("PricePerMeterText", translator.GetTranslatedString("PricePerMeterText")); vars.Add("PublicAccessText", translator.GetTranslatedString("PublicAccessText")); vars.Add("AllowVoiceText", translator.GetTranslatedString("AllowVoiceText")); vars.Add("TaxFreeText", translator.GetTranslatedString("TaxFreeText")); vars.Add("AllowDirectTeleportText", translator.GetTranslatedString("AllowDirectTeleportText")); vars.Add("Cancel", translator.GetTranslatedString("Cancel")); vars.Add("InfoMessage", ""); return(vars); }
public ActionResult Login(DevLoginViewModel model, string returnUrl) { var redirectUrl = WebHelpers.AppendParameter(ConfigOptions.Value.SecureAuthUrl, "ReturnUrl", $"https://{Request.Host.Host}/Account/ExternalLoginCallback"); return(ExternalLogin(AuthenticationTypeExternalCookie, redirectUrl)); }
private async Task <AccessToken> ObtainAccessTokenAsync(string consumerKey, string consumerSecret, RequestToken token, string verifier) { //https://dev.xing.com/docs/authentication _logger.WriteVerbose("ObtainAccessToken"); var nonce = Guid.NewGuid().ToString("N"); var authorizationParts = new SortedDictionary <string, string> { { "oauth_consumer_key", consumerKey }, { "oauth_nonce", nonce }, { "oauth_signature_method", "HMAC-SHA1" }, { "oauth_token", token.Token }, { "oauth_timestamp", GenerateTimeStamp() }, { "oauth_verifier", verifier }, { "oauth_version", "1.0" }, }; var parameterBuilder = new StringBuilder(); foreach (var authorizationKey in authorizationParts) { parameterBuilder.AppendFormat("{0}={1}&", Uri.EscapeDataString(authorizationKey.Key), Uri.EscapeDataString(authorizationKey.Value)); } parameterBuilder.Length--; var parameterString = parameterBuilder.ToString(); var canonicalizedRequestBuilder = new StringBuilder(); canonicalizedRequestBuilder.Append(HttpMethod.Post.Method); canonicalizedRequestBuilder.Append("&"); canonicalizedRequestBuilder.Append(Uri.EscapeDataString(AccessTokenEndpoint)); canonicalizedRequestBuilder.Append("&"); canonicalizedRequestBuilder.Append(Uri.EscapeDataString(parameterString)); var signature = ComputeSignature(consumerSecret, token.TokenSecret, canonicalizedRequestBuilder.ToString()); authorizationParts.Add("oauth_signature", signature); authorizationParts.Remove("oauth_verifier"); var authorizationHeaderBuilder = new StringBuilder(); authorizationHeaderBuilder.Append("OAuth "); foreach (var authorizationPart in authorizationParts) { authorizationHeaderBuilder.AppendFormat( "{0}=\"{1}\", ", authorizationPart.Key, Uri.EscapeDataString(authorizationPart.Value)); } authorizationHeaderBuilder.Length = authorizationHeaderBuilder.Length - 2; var request = new HttpRequestMessage(HttpMethod.Post, AccessTokenEndpoint); request.Headers.Add("Authorization", authorizationHeaderBuilder.ToString()); var formPairs = new List <KeyValuePair <string, string> >() { new KeyValuePair <string, string>("oauth_verifier", verifier) }; request.Content = new FormUrlEncodedContent(formPairs); var response = await _httpClient.SendAsync(request, Request.CallCancelled); if (!response.IsSuccessStatusCode) { _logger.WriteError("AccessToken request failed with a status code of " + response.StatusCode); response.EnsureSuccessStatusCode(); // throw } var responseText = await response.Content.ReadAsStringAsync(); var responseParameters = WebHelpers.ParseForm(responseText); return(new AccessToken { Token = Uri.UnescapeDataString(responseParameters["oauth_token"]), TokenSecret = Uri.UnescapeDataString(responseParameters["oauth_token_secret"]), UserId = Uri.UnescapeDataString(responseParameters["user_id"]), }); }
private void SpecLibLinkClicked(LinkLabel linkLabel, string link) { linkLabel.LinkVisited = true; WebHelpers.OpenLink(this, link); }
private void buttonToolStore_Click(object sender, EventArgs e) { WebHelpers.OpenLink(this, _tools[listBoxTools.SelectedIndex].FilePath); }
private async Task <RequestToken> ObtainRequestTokenAsync(string consumerKey, string consumerSecret, string callBackUri, AuthenticationProperties properties) { _logger.WriteVerbose("ObtainRequestToken"); string nonce = Guid.NewGuid().ToString("N"); var authorizationParts = new SortedDictionary <string, string> { { "oauth_callback", callBackUri }, { "oauth_consumer_key", consumerKey }, { "oauth_nonce", nonce }, { "oauth_signature_method", "HMAC-SHA1" }, { "oauth_timestamp", GenerateTimeStamp() }, { "oauth_version", "1.0" } }; var parameterBuilder = new StringBuilder(); foreach (var authorizationKey in authorizationParts) { parameterBuilder.AppendFormat("{0}={1}&", Uri.EscapeDataString(authorizationKey.Key), Uri.EscapeDataString(authorizationKey.Value)); } parameterBuilder.Length--; string parameterString = parameterBuilder.ToString(); var canonicalizedRequestBuilder = new StringBuilder(); canonicalizedRequestBuilder.Append(HttpMethod.Post.Method); canonicalizedRequestBuilder.Append("&"); canonicalizedRequestBuilder.Append(Uri.EscapeDataString(RequestTokenEndpoint)); canonicalizedRequestBuilder.Append("&"); canonicalizedRequestBuilder.Append(Uri.EscapeDataString(parameterString)); string signature = ComputeSignature(consumerSecret, null, canonicalizedRequestBuilder.ToString()); authorizationParts.Add("oauth_signature", signature); var authorizationHeaderBuilder = new StringBuilder(); authorizationHeaderBuilder.Append("OAuth "); foreach (var authorizationPart in authorizationParts) { authorizationHeaderBuilder.AppendFormat( "{0}=\"{1}\", ", authorizationPart.Key, Uri.EscapeDataString(authorizationPart.Value)); } authorizationHeaderBuilder.Length = authorizationHeaderBuilder.Length - 2; var request = new HttpRequestMessage(HttpMethod.Post, RequestTokenEndpoint); request.Headers.Add("Authorization", authorizationHeaderBuilder.ToString()); HttpResponseMessage response = await _httpClient.SendAsync(request, Request.CallCancelled); response.EnsureSuccessStatusCode(); string responseText = await response.Content.ReadAsStringAsync(); IFormCollection responseParameters = WebHelpers.ParseForm(responseText); if (string.Equals(responseParameters["oauth_callback_confirmed"], "true", StringComparison.InvariantCulture)) { return(new RequestToken { Token = Uri.UnescapeDataString(responseParameters["oauth_token"]), TokenSecret = Uri.UnescapeDataString(responseParameters["oauth_token_secret"]), CallbackConfirmed = true, Properties = properties }); } return(new RequestToken()); }
private void linkReleaseNotes_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) { string notes = Install.Type == Install.InstallType.release ? @"notes" : @"notes-daily"; WebHelpers.OpenSkylineShortLink(this, notes); }
private void linkProteoWizard_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) { WebHelpers.OpenLink(this, "http://proteowizard.sourceforge.net/"); // Not L10N }
private void linkProteome_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) { WebHelpers.OpenLink(this, "http://skyline.ms"); // Not L10N }
public Dictionary <string, object> Fill(WebInterface webInterface, string filename, OSHttpRequest httpRequest, OSHttpResponse httpResponse, Dictionary <string, object> requestParameters, ITranslator translator, out string response) { response = null; var vars = new Dictionary <string, object> (); var gridService = webInterface.Registry.RequestModuleInterface <IGridService> (); var user = Authenticator.GetAuthentication(httpRequest); vars.Add("RegionServerURL", webInterface.GridURL); // This needs to be sorted out for grid regions #region EditRegion if (requestParameters.ContainsKey("Submit")) { var regionServerURL = requestParameters ["RegionServerURL"].ToString(); // required if (regionServerURL == "") { response = "<h3>" + translator.GetTranslatedString("RegionServerURLError") + "</h3>"; return(null); } var regionID = requestParameters ["RegionID"].ToString(); var regionName = requestParameters ["RegionName"].ToString(); var regionLocX = requestParameters ["RegionLocX"].ToString(); var regionLocY = requestParameters ["RegionLocY"].ToString(); var regionSizeX = requestParameters ["RegionSizeX"].ToString(); var regionSizeY = requestParameters ["RegionSizeY"].ToString(); var regionType = requestParameters ["RegionType"].ToString(); var regionPresetType = requestParameters ["RegionPresetType"].ToString(); var regionTerrain = requestParameters ["RegionTerrain"].ToString(); var regionLoadTerrain = requestParameters.ContainsKey("RegionLoadTerrain") ? requestParameters ["RegionLoadTerrain"].ToString() : ""; // a bit of idiot proofing if (regionName == "") { response = "<h3>" + translator.GetTranslatedString("RegionNameError") + "</h3>"; return(null); } if ((regionLocX == "") || (regionLocY == "")) { response = "<h3>" + translator.GetTranslatedString("RegionLocationError") + "</h3>"; return(null); } // so far so good... // build the new region details int RegionPort = int.Parse(requestParameters ["RegionPort"].ToString()); var newRegion = new RegionInfo(); if (regionID != "") { newRegion.RegionID = UUID.Parse(regionID); } newRegion.RegionName = regionName; newRegion.RegionType = regionType; newRegion.RegionLocX = int.Parse(regionLocX); newRegion.RegionLocY = int.Parse(regionLocY); newRegion.RegionSizeX = int.Parse(regionSizeX); newRegion.RegionSizeY = int.Parse(regionSizeY); newRegion.RegionPort = RegionPort; newRegion.SeeIntoThisSimFromNeighbor = true; newRegion.InfiniteRegion = true; newRegion.ObjectCapacity = 50000; newRegion.Startup = StartupType.Normal; var regionPreset = regionPresetType.ToLower(); //SubString(0,1); if (regionPreset.StartsWith("c", System.StringComparison.Ordinal)) { newRegion.RegionPort = int.Parse(requestParameters ["RegionPort"].ToString()); newRegion.SeeIntoThisSimFromNeighbor = (requestParameters ["RegionVisibility"].ToString().ToLower() == "yes"); newRegion.InfiniteRegion = (requestParameters ["RegionInfinite"].ToString().ToLower() == "yes"); newRegion.ObjectCapacity = int.Parse(requestParameters ["RegionCapacity"].ToString()); string delayStartup = requestParameters ["RegionDelayStartup"].ToString(); newRegion.Startup = delayStartup.StartsWith("n", System.StringComparison.Ordinal) ? StartupType.Normal : StartupType.Medium; } if (regionPreset.StartsWith("u", System.StringComparison.Ordinal)) { // 'standard' setup newRegion.RegionType = newRegion.RegionType + "Universe"; newRegion.RegionTerrain = "Flatland"; newRegion.Startup = StartupType.Normal; newRegion.SeeIntoThisSimFromNeighbor = true; newRegion.InfiniteRegion = true; newRegion.ObjectCapacity = 100000; newRegion.RegionPort = RegionPort; } if (regionPreset.StartsWith("o", System.StringComparison.Ordinal)) { // 'Openspace' setup newRegion.RegionType = newRegion.RegionType + "Openspace"; if (regionTerrain.StartsWith("a", System.StringComparison.Ordinal)) { newRegion.RegionTerrain = "Aquatic"; } else { newRegion.RegionTerrain = "Grassland"; } newRegion.Startup = StartupType.Medium; newRegion.SeeIntoThisSimFromNeighbor = true; newRegion.InfiniteRegion = true; newRegion.ObjectCapacity = 50000; newRegion.RegionSettings.AgentLimit = 10; newRegion.RegionSettings.AllowLandJoinDivide = false; newRegion.RegionSettings.AllowLandResell = false; } if (regionPreset.StartsWith("h", System.StringComparison.Ordinal)) { // 'Homestead' setup newRegion.RegionType = newRegion.RegionType + "Homestead"; newRegion.RegionTerrain = "Homestead"; newRegion.Startup = StartupType.Medium; newRegion.SeeIntoThisSimFromNeighbor = true; newRegion.InfiniteRegion = true; newRegion.ObjectCapacity = 75000; newRegion.RegionSettings.AgentLimit = 20; newRegion.RegionSettings.AllowLandJoinDivide = false; newRegion.RegionSettings.AllowLandResell = false; } if (regionPreset.StartsWith("f", System.StringComparison.Ordinal)) { // 'Full Region' setup newRegion.RegionType = newRegion.RegionType + "Full Region"; newRegion.RegionTerrain = regionTerrain; newRegion.Startup = StartupType.Normal; newRegion.SeeIntoThisSimFromNeighbor = true; newRegion.InfiniteRegion = true; newRegion.ObjectCapacity = 100000; newRegion.RegionSettings.AgentLimit = 100; if (newRegion.RegionType.StartsWith("M", System.StringComparison.Ordinal)) // defaults are 'true' { newRegion.RegionSettings.AllowLandJoinDivide = false; newRegion.RegionSettings.AllowLandResell = false; newRegion.InfiniteRegion = true; } } if (regionLoadTerrain.Length > 0) { // we are loading terrain from a file... handled later newRegion.RegionTerrain = "Custom"; } // TODO: !!! Assumes everything is local for now !!! if (requestParameters.ContainsKey("NewRegion")) { ISceneManager scenemanager = webInterface.Registry.RequestModuleInterface <ISceneManager> (); if (scenemanager.CreateRegion(newRegion)) { response = "<h3>Successfully created region</h3>" + "<script language=\"javascript\">" + "setTimeout(function() {window.location.href = \"/?page=region_manager\";}, 2000);" + "</script>"; return(null); } response = "<h3>Error creating this region.</h3>"; return(null); } // TODO: This will not work yet :) // update region details var infoConnector = Framework.Utilities.DataManager.RequestPlugin <IRegionInfoConnector> (); if (infoConnector != null) { infoConnector.UpdateRegionInfo(newRegion); response = "<h3>Region details updated.</h3>" + "<script language=\"javascript\">" + "setTimeout(function() {window.location.href = \"/?page=region_manager\";}, 2000);" + "</script>"; } else { response = "<h3>Unable to update Region details!</h3>" + "<script language=\"javascript\">" + "setTimeout(function() {window.location.href = \"/?page=region_manager\";}, 2000);" + "</script>"; } return(null); } #endregion #region EditRegion // we have or need data if (httpRequest.Query.ContainsKey("regionid")) { var region = gridService.GetRegionByUUID(null, UUID.Parse(httpRequest.Query ["regionid"].ToString())); vars.Add("RegionID", region.RegionID.ToString()); vars.Add("RegionName", region.RegionName); UserAccount estateOwnerAccount = null; var estateOwner = UUID.Zero; var estateId = -1; IEstateConnector estateConnector = Framework.Utilities.DataManager.RequestPlugin <IEstateConnector> (); if (estateConnector != null) { EstateSettings estate = estateConnector.GetRegionEstateSettings(region.RegionID); if (estate != null) { estateId = (int)estate.EstateID; estateOwner = estate.EstateOwner; } var accountService = webInterface.Registry.RequestModuleInterface <IUserAccountService> (); if (accountService != null) { estateOwnerAccount = accountService.GetUserAccount(null, estate.EstateOwner); } } vars.Add("EstateList", WebHelpers.EstateSelections(webInterface.Registry, estateOwner.ToString(), estateId)); vars.Add("OwnerUUID", region.EstateOwner); vars.Add("OwnerName", estateOwnerAccount != null ? estateOwnerAccount.Name : "No account found"); vars.Add("RegionLocX", region.RegionLocX / Constants.RegionSize); vars.Add("RegionLocY", region.RegionLocY / Constants.RegionSize); vars.Add("RegionSizeX", region.RegionSizeX); vars.Add("RegionSizeY", region.RegionSizeY); vars.Add("RegionPort", region.InternalPort.ToString()); vars.Add("RegionType", WebHelpers.RegionTypeArgs(translator, region.RegionType)); vars.Add("RegionPresetType", WebHelpers.RegionPresetArgs(translator, region.RegionType)); vars.Add("RegionTerrain", WebHelpers.RegionTerrainArgs(translator, region.RegionTerrain)); // TODO: This will not work yet :) bool switches = false; var infoConnector = Framework.Utilities.DataManager.RequestPlugin <IRegionInfoConnector> (); if (infoConnector != null) { var regionInfo = infoConnector.GetRegionInfo(region.RegionID); if (regionInfo != null) { vars.Add("RegionCapacity", regionInfo.ObjectCapacity.ToString()); vars.Add("RegionVisibility", WebHelpers.YesNoSelection(translator, regionInfo.SeeIntoThisSimFromNeighbor)); vars.Add("RegionInfinite", WebHelpers.YesNoSelection(translator, regionInfo.InfiniteRegion)); vars.Add("RegionDelayStartup", WebHelpers.RegionStartupSelection(translator, regionInfo.Startup)); } } if (!switches) { vars.Add("RegionCapacity", "Unknown"); vars.Add("RegionVisibility", WebHelpers.YesNoSelection(translator, true)); vars.Add("RegionInfinite", WebHelpers.YesNoSelection(translator, true)); vars.Add("RegionDelayStartup", WebHelpers.RegionStartupSelection(translator, StartupType.Normal)); // normal startup } IWebHttpTextureService webTextureService = webInterface.Registry.RequestModuleInterface <IWebHttpTextureService> (); if (webTextureService != null && region.TerrainMapImage != UUID.Zero) { vars.Add("RegionImageURL", webTextureService.GetTextureURL(region.TerrainMapImage)); } else { vars.Add("RegionImageURL", "images/icons/no_picture.jpg"); } vars.Add("Submit", translator.GetTranslatedString("SaveUpdates")); } #endregion vars.Add("RegionPresets", WebHelpers.RegionSelections(webInterface.Registry)); // Labels vars.Add("UserName", user.Name); vars.Add("RegionManagerText", translator.GetTranslatedString("MenuRegionManager")); vars.Add("RegionNameText", translator.GetTranslatedString("RegionNameText")); vars.Add("RegionLocationText", translator.GetTranslatedString("RegionLocationText")); vars.Add("RegionSizeText", translator.GetTranslatedString("RegionSizeText")); vars.Add("RegionTypeText", translator.GetTranslatedString("RegionTypeText")); vars.Add("RegionPresetText", translator.GetTranslatedString("RegionPresetText")); vars.Add("RegionTerrainText", translator.GetTranslatedString("RegionTerrainText")); vars.Add("EstateText", translator.GetTranslatedString("EstateText")); vars.Add("RegionPortText", translator.GetTranslatedString("RegionPortText")); vars.Add("RegionDelayStartupText", translator.GetTranslatedString("RegionDelayStartupText")); vars.Add("RegionVisibilityText", translator.GetTranslatedString("RegionVisibilityText")); vars.Add("RegionInfiniteText", translator.GetTranslatedString("RegionInfiniteText")); vars.Add("RegionCapacityText", translator.GetTranslatedString("RegionCapacityText")); vars.Add("Cancel", translator.GetTranslatedString("Cancel")); vars.Add("InfoMessage", ""); return(vars); }
private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) { WebHelpers.OpenLink(this, "http://proteome.gs.washington.edu/software/Skyline/funding.html"); // Not L10N }
public static bool keylib_activate_get( string prod, string sregid, string email, out string keycode, out string reason) { string str1 = "netwinsite.com"; string str2 = MyKey.keylib_host_new(MyKey.get_host()); string postUrl = string.Format("http://{0}/cgi-bin/keycgi.exe", (object)str1); keycode = "failed"; MyKey.robot_email = string.Format("{{host: {0}}}\r\n{{regid: {1}}}\r\n{{email: {2}}}\r\n{{product: {3}}}\r\n{{build: {4}}}\r\n{{hostid: {5}}}\r\n", (object)str2, (object)sregid, (object)email, (object)prod, (object)MyKey.keylib_build_date(), (object)MyKey.s_hostid); if (email.Length > 0) { MyKey.s_email = email; } reason = ""; sregid = sregid.ToLower(); if (sregid.StartsWith("n")) { sregid = sregid.Substring(1); } Dictionary <string, object> postParameters = new Dictionary <string, object>(); postParameters.Add("cmd", (object)"activate"); postParameters.Add("regid", (object)sregid); postParameters.Add(nameof(email), (object)email); postParameters.Add("host", (object)str2); postParameters.Add("product", (object)prod); postParameters.Add("build", (object)MyKey.keylib_build_date()); postParameters.Add("hostid", (object)MyKey.s_hostid); string end; try { string userAgent = "ftpdav"; HttpWebResponse httpWebResponse = WebHelpers.MultipartFormDataPost(postUrl, userAgent, postParameters, "", ""); end = new StreamReader(httpWebResponse.GetResponseStream()).ReadToEnd(); httpWebResponse.Close(); stat.imsg("image post response {0}", (object)end); } catch (Exception ex) { stat.imsg("image post failed to connect {0}", (object)ex.ToString()); return(false); } keycode = ""; string str3 = ""; foreach (string str4 in end.string_lines_any()) { clib.imsg("Response: {0}", (object)str4); if (str4.StartsWith("key: ")) { keycode = str4.Substring(5); } if (str4.StartsWith("key_state: ")) { str3 = str4.Substring(1); } if (str4.StartsWith("error: ")) { reason = str4.Substring(7); } } if (reason.Length > 0) { return(false); } clib.imsg("key state {0}", (object)str3); MyKey.s_code = keycode; return(true); }