public Session GetLoginSession(string username, string password) { Session httpResponse = new Session(); Logging.Info("request", "Received request for GetLoginSession"); Logging.Info("GetLoginSession", "username: "******"GetLoginSession", "Begins."); UserInformation userInformation = SessionHelpers.Login(username, password); if (userInformation == null) { statusCode = (int)HttpStatusCode.Forbidden; httpResponse.Message = "boom"; } else { httpResponse.Message = "good"; httpResponse.username = userInformation.userName; Random random = new System.Random(); string sessionId; while (true) { sessionId = GenericHelpers.CreateMD5(random.Next(114514, 1919810).ToString()); string sessionKeyName = "EARTH_FUSION_SESSION_" + sessionId; if (RedisHelpers.GetString(sessionKeyName) == null) { RedisHelpers.SetString(sessionKeyName, userInformation.userId.ToString()); // three hour RedisHelpers.SetKeyExpireTime(sessionKeyName, 3 * 60 * 60); break; } } httpResponse.sessionId = sessionId; } httpResponse.StatusCode = statusCode; this.HttpContext.Response.StatusCode = statusCode; Logging.Info("request", "Reponse returned for GetLoginSession"); return(httpResponse); }
private void EndGame() { UpdateChallengeProgression(); if (PlayerPrefs.GetInt("GameMode") == GameMode.Tournament.GetHashCode() && _isWinner) { int nbOpponents = PlayerPrefs.GetInt("NbOpponents"); var tournamentOpponent = PlayerPrefs.GetInt("TournamentOpponent", 0); tournamentOpponent++; if (tournamentOpponent <= nbOpponents) { GenericHelpers.ResetGameInProgress(); PlayerPrefs.SetInt("TournamentOpponent", tournamentOpponent); SceneManager.LoadScene("TournamentMatch"); return; } else if (PlayerPrefs.GetInt("Tournament", 0) <= PlayerPrefs.GetInt("CurrentChallengeDifficulty")) { PlayerPrefs.SetInt("Tournament", PlayerPrefs.GetInt("CurrentChallengeDifficulty") + 1); } } PlayerPrefs.SetInt("GameInProgress", 0); if (PlayerPrefs.GetInt("Ads", 1) == 1) { SceneManager.LoadScene("AdScene"); } else { if (PlayerPrefs.GetInt("GameMode") == GameMode.Target.GetHashCode() || PlayerPrefs.GetInt("GameMode") == GameMode.Catch.GetHashCode() || PlayerPrefs.GetInt("GameMode") == GameMode.Breakout.GetHashCode() || PlayerPrefs.GetInt("GameMode") == GameMode.Tournament.GetHashCode()) { SceneManager.LoadScene("ChallengesMenu"); } else { SceneManager.LoadScene("CharSelScene"); } } }
/// <summary> /// Executes a SQL query that returns a list of rows as the result. /// </summary> /// <param name="commandText">The MySQL query to execute</param> /// <param name="parameters">Parameters to pass to the MySQL query</param> /// <returns>A list of a Dictionary of Key, values pairs representing the /// ColumnName and corresponding value</returns> public List <Dictionary <string, string> > Query(string commandText, Dictionary <string, object> parameters) { List <Dictionary <string, string> > rows = null; if (String.IsNullOrEmpty(commandText)) { throw new ArgumentException("Command text cannot be null or empty."); } try { EnsureConnectionOpen(); var command = CreateCommand(commandText, parameters); using (NpgsqlDataReader reader = command.ExecuteReader()) { rows = new List <Dictionary <string, string> >(); while (reader.Read()) { var row = new Dictionary <string, string>(); for (var i = 0; i < reader.FieldCount; i++) { var columnName = reader.GetName(i); var columnValue = reader.IsDBNull(i) ? null : reader.GetValue(i); //.GetString(i); row.Add(columnName, GenericHelpers.NullToString(columnValue)); } rows.Add(row); } } EnsureConnectionClosed(); } catch (NpgsqlException ex) { System.Console.WriteLine("Exception; " + ex.InnerException); } finally { EnsureConnectionClosed(); } return(rows); }
private static IEnumerable <User> GenerateRandomUsers(int userCount, string domainName) { while (userCount-- > 0) { string userName = GenericHelpers.GenerateRandomEntityName(); User user = new User { AccountEnabled = true, MailNickname = userName, DisplayName = userName, PasswordProfile = new PasswordProfile() }; user.PasswordProfile.Password = "******"; user.PasswordProfile.ForceChangePasswordNextSignIn = false; user.UserPrincipalName = $"{userName}@{domainName}"; user.UsageLocation = "US"; user.JobTitle = "RandomlyCreatedTestUser"; yield return(user); } }
internal T ConvertToT <R>(R input, T oldValue) { try { if (typeof(T) == typeof(CustomSortOrder)) { return((T)Enum.Parse(typeof(CustomSortOrder), input.ToString())); } else { return((T)Convert.ChangeType(input, typeof(T))); } } catch (Exception ex) { GenericHelpers.LogException("ConvertToT", ex); } return(oldValue); }
public ActionResult LogOff() { AuthenticationManager.SignOut(DefaultAuthenticationTypes.ApplicationCookie); //login audit string userid = HttpContext.GetOwinContext().Request.User.Identity.GetUserId(); if (!string.IsNullOrEmpty(userid)) { var ip = GenericHelpers.GetUserIPAddress(); if (!string.IsNullOrEmpty(ip)) { LoginAudits auditRecord = LoginAudits.CreateAuditEvent(Guid.NewGuid().ToString(), userid, en_LoginAuditEventType.LogOut, ip); if (auditRecord != null) { int auditRecording = _loginAuditRepository.Insert(auditRecord); } } } return(RedirectToAction("Index", "Home")); }
/// <summary> /// 寻找下一步的执行人 /// 一般用于本节点审核完成后,修改流程实例的当前执行人,可以做到通知等功能 /// </summary> /// <returns></returns> private string GetNextMakers(FlowRuntime wfruntime, NodeDesignateReq request = null) { string makerList = ""; if (wfruntime.nextNodeId == "-1") { throw (new Exception("无法寻找到下一个节点")); } if (wfruntime.nextNodeType == 0) //如果是会签节点 { makerList = GetForkNodeMakers(wfruntime, wfruntime.nextNodeId); } else if (wfruntime.nextNode.setInfo.NodeDesignate == Setinfo.RUNTIME_SPECIAL_ROLE) { //如果是运行时指定角色 if (wfruntime.nextNode.setInfo.NodeDesignate != request.NodeDesignateType) { throw new Exception("前端提交的节点权限类型异常,请检查流程"); } var users = _revelanceApp.Get(Define.USERROLE, false, request.NodeDesignates); makerList = GenericHelpers.ArrayToString(users, makerList); } else if (wfruntime.nextNode.setInfo.NodeDesignate == Setinfo.RUNTIME_SPECIAL_USER) { //如果是运行时指定用户 if (wfruntime.nextNode.setInfo.NodeDesignate != request.NodeDesignateType) { throw new Exception("前端提交的节点权限类型异常,请检查流程"); } makerList = GenericHelpers.ArrayToString(request.NodeDesignates, makerList); } else { makerList = GetNodeMarkers(wfruntime.nextNode); if (string.IsNullOrEmpty(makerList)) { throw (new Exception("无法寻找到节点的审核者,请查看流程设计是否有问题!")); } } return(makerList); }
public UserResponse CreateNew(string username, string password) { if (_context.Users.FirstOrDefault(x => x.Name == username) != null) { return(null); } var newUser = new User { Id = GenericHelpers.GenerateId(), Name = username, PasswordHash = ComputeSha256Hash(password), Role = "user" }; _context.Users.Add(newUser); _context.SaveChanges(); return(new UserResponse(newUser, GenerateToken(newUser))); }
public void TestAutoSuggest() { NavigationHelper.NavigationToURL("https://demos.telerik.com/kendo-ui/autocomplete/index"); //Step 1 - to supply the initial string //var textbox = ObjectRepository.Driver.FindElement(By.Id("countries")); TextBoxHelper.TypeInTextbox(By.Id("countries"), "a"); Thread.Sleep(1000); // Step 2 - Wait for auto suggestion list var wait = GenericHelpers.GetWebDriverWait(TimeSpan.FromSeconds(40)); var elements = wait.Until(GetAllElements(By.XPath("//ul[@id='countries_listbox']/child::li"))); foreach (var ele in elements) { if (ele.Text.Equals("Albania")) { ele.Click(); } } Thread.Sleep(1000); }
/// <summary> /// 寻找该节点执行人 /// </summary> /// <param name="node"></param> /// <returns></returns> private string GetNodeMakers(FlowNode node) { string makerList = ""; if (node.setInfo != null) { if (node.setInfo.NodeDesignate == Setinfo.ALL_USER)//所有成员 { makerList = "1"; } else if (node.setInfo.NodeDesignate == Setinfo.SPECIAL_USER)//指定成员 { makerList = GenericHelpers.ArrayToString(node.setInfo.NodeDesignateData.users, makerList); } else if (node.setInfo.NodeDesignate == Setinfo.SPECIAL_ROLE) //指定角色 { var users = _revelanceApp.Get(Define.USERROLE, false, node.setInfo.NodeDesignateData.roles); makerList = GenericHelpers.ArrayToString(users, makerList); } } return(makerList); }
public static BattlelogPlayerCountsViewModel CompanionPlayerCountsToBattlelog(this ServerDetailsViewModel serverDetails) { return(new BattlelogPlayerCountsViewModel { Map = serverDetails.MapName, MapMode = (ulong)GenericHelpers.GameModeToEnum(serverDetails.MapMode), Players = 0, Queued = 0, Slots = new BattlelogSlotTypesViewModel { Queue = new BattlelogSlotsViewModel { Current = serverDetails.Slots.Queue.Current, Max = serverDetails.Slots.Queue.Max }, Soldier = new BattlelogSlotsViewModel { Current = serverDetails.Slots.Soldier.Current, Max = serverDetails.Slots.Soldier.Max }, Spectator = new BattlelogSlotsViewModel { Current = serverDetails.Slots.Spectator.Current, Max = serverDetails.Slots.Spectator.Max } } }); }
public ActionResult Create(Contact contact, string SortOrder, string SortDirection, int?page, string search) { if (ModelState.IsValid) { var ravenDB = HttpContext.GetOwinContext().Get <IDocumentSession>(); contact.Updated = DateTime.Now; ravenDB.Store(contact); ravenDB.SaveChanges(); TempData["IsValid"] = ""; return(RedirectToAction("Edit", new { id = GenericHelpers.Base64Encode(contact.Id), SortOrder = SortOrder, SortDirection = SortDirection, page = page, search = search, Class = "Contact" })); } TempData["IsValid"] = "Ko"; return(PartialView(contact)); }
private IHandlerRegistration AddHandlers(IHandlerRegistration handlerReg, IQueue queue) { //This is gonna be a bit NASTY //For this queue we need to find all the types we're currently holding handlers for //then add the internal onMessageReceived handler for each type //The reason for all this is calling consume on a queue with existing handlers for types //wipes them out and we have to add all type handlers again - so each time a type is added to be subscribed to //the whole previous set need to be re-added foreach (Type requestType in EntityTypes.EntityRequestAndResponseTypes) { foreach (Type entityType in EntityTypes.EntityBaseTypes) { var requestWithEntityType = requestType.MakeGenericType(entityType); var queueMessageHandlerType = typeof(QueueMessageHandler <>).MakeGenericType(requestWithEntityType); var queueMessageHandlerList = GenericHelpers.InvokeGenericMethod(_handlerManager, requestWithEntityType, typeof(IList), "GetHandlersForType", queue.Name); var list = queueMessageHandlerList as IList; if (list != null && list.Count > 0) { var messageType = typeof(IMessage <>).MakeGenericType(requestWithEntityType); var addParamType = typeof(Action <,>).MakeGenericType(messageType, typeof(MessageReceivedInfo)); var addMethod = GenericHelpers.GetMethodExt(handlerReg.GetType(), "Add", handlerReg.GetType(), addParamType); var addMethodTyped = addMethod.MakeGenericMethod(requestWithEntityType); var onMessageMethod = GenericHelpers.GetMethodExt(this.GetType(), "OnMessageReceived", typeof(void), new Type[] { messageType, typeof(MessageReceivedInfo) }); var onMessageMethodTyped = onMessageMethod.MakeGenericMethod(requestWithEntityType); var action = Delegate.CreateDelegate(addParamType, this, onMessageMethodTyped); handlerReg = (IHandlerRegistration)addMethodTyped.Invoke(handlerReg, new object[] { action }); } } } return(handlerReg); }
public static string GetDeviceReport(RequestManager requestManager) { IEnumerable <Device> devices; using (var builder = GraphRequestBuilder <Device> .GetBuilder <DeviceCollectionResponseHandler>(requestManager, out devices)) { builder.Devices.Request().Select("operatingSystem, isManaged, isCompliant").Top(999).GetAsync().Wait(); foreach (var filter in GenericHelpers.GenerateFilterRangesForAlphaNumProperties("displayName")) { builder.Devices.Request().Select("operatingSystem, isManaged, isCompliant").Top(999).Filter(filter).GetAsync().Wait(); } } var report = devices.Distinct(new GenericHelpers.EntityComparer()).Cast <Device>() .GroupBy(d => $"OS: {d.OperatingSystem ?? "null"}, isManaged: {d.IsManaged ?? false}, isCompliant: {d.IsCompliant ?? false}") .Select(g => new { DeviceCategory = g.Key, DeviceCount = g.Count() }); StringBuilder sb = new StringBuilder(); foreach (var line in report.OrderByDescending(l => l.DeviceCount)) { sb.AppendLine($"{line.DeviceCategory} - Count: {line.DeviceCount}"); } return(sb.ToString()); }
static bool Prefix(PartyVM __instance, SelectorVM <SelectorItemVM> s) { try { if (!__instance.CurrentCharacter.IsPrisoner && s.SelectedIndex != (int)__instance.CurrentCharacter.Character.CurrentFormationClass) { var newFormation = (FormationClass)s.SelectedIndex; var name = __instance.CurrentCharacter.Character.Name.ToString(); var savedFormation = new SavedFormation() { TroopName = name, Formation = newFormation }; PartyManagerSettings.Settings.SavedFormations[name] = savedFormation; PartyManagerSettings.Settings.SaveSettings(); GenericHelpers.LogDebug("PartyVMUpdateCurrentCharacterFormationPatch", $"{name}:{newFormation}"); } } catch (Exception e) { GenericHelpers.LogException("PartyVMUpdateCurrentCharacterFormationPatch", e); } return(true); }
/// <summary> /// 寻找该节点执行人 /// </summary> /// <param name="node"></param> /// <returns></returns> private string GetNodeMarkers(FlowNode node, string flowinstanceCreateUserId = "") { string makerList = ""; if (node.type == FlowNode.START && (!string.IsNullOrEmpty(flowinstanceCreateUserId))) //如果是开始节点,通常情况下是驳回到开始了 { makerList = flowinstanceCreateUserId; } else if (node.setInfo != null) { if (node.setInfo.NodeDesignate == Setinfo.ALL_USER) //所有成员 { makerList = "1"; } else if (node.setInfo.NodeDesignate == Setinfo.SPECIAL_USER) //指定成员 { makerList = GenericHelpers.ArrayToString(node.setInfo.NodeDesignateData.users, makerList); } else if (node.setInfo.NodeDesignate == Setinfo.SPECIAL_ROLE) //指定角色 { var users = _revelanceApp.Get(Define.USERROLE, false, node.setInfo.NodeDesignateData.roles); makerList = GenericHelpers.ArrayToString(users, makerList); } else if (node.setInfo.NodeDesignate == Setinfo.RUNTIME_SPECIAL_ROLE || node.setInfo.NodeDesignate == Setinfo.RUNTIME_SPECIAL_USER) { //如果是运行时选定的用户,则暂不处理。由上个节点审批时选定 } } else //如果没有设置节点信息,默认所有人都可以审核 { makerList = "1"; } return(makerList); }
/// <summary> /// 寻找该节点执行人 /// </summary> /// <param name="node"></param> /// <returns></returns> private string GetMakerList(FlowNode node, string processId) { string makerList = ""; if (node.setInfo == null) { makerList = "-1"; } else { if (node.setInfo.NodeDesignate == Setinfo.ALL_USER)//所有成员 { makerList = "1"; } else if (node.setInfo.NodeDesignate == Setinfo.SPECIAL_USER)//指定成员 { makerList = GenericHelpers.ArrayToString(node.setInfo.NodeDesignateData.users, makerList); if (makerList == "") { makerList = "-1"; } } else if (node.setInfo.NodeDesignate == Setinfo.SPECIAL_ROLE) //指定角色 { var users = RevelanceManagerApp.Get(Define.USERROLE, false, node.setInfo.NodeDesignateData.roles); makerList = GenericHelpers.ArrayToString(users, makerList); if (makerList == "") { makerList = "-1"; } } } return(makerList); }
public ActionResult GenerateLicense(string projectCode) { var acResponse = new ActivityResponse(); try { if (string.IsNullOrEmpty(projectCode)) { acResponse.Code = -1; acResponse.Message = "The selected Project information could not be accessed. Please try again later"; return(Json(acResponse, JsonRequestBehavior.AllowGet)); } var projects = _projectService.Query(p => p.ProjectCode == projectCode).Select().ToList(); if (!projects.Any()) { acResponse.Code = -1; acResponse.Message = "The selected Project information could not be accessed. Please try again later"; return(Json(acResponse, JsonRequestBehavior.AllowGet)); } var fieldTypes = _customFieldTypeService.Queryable().ToList(); if (!fieldTypes.Any()) { acResponse.Code = -1; acResponse.Message = "Project Custom Fields could not be retrieved. Please ensure all required setups are handled appropriately before proceeding."; return(Json(acResponse, JsonRequestBehavior.AllowGet)); } var projectCustomGroups = _projectCustomGroupService.Query(g => g.ProjectCode == projectCode).Select().ToList(); if (!projectCustomGroups.Any()) { acResponse.Code = -1; acResponse.Message = "Project Custom Groups could not be retrieved. Please ensure all required setups are handled appropriately before proceeding."; return(Json(acResponse, JsonRequestBehavior.AllowGet)); } var projectCustomFields = _projectCustomFieldService.Query(g => g.ProjectCode == projectCode).Select().ToList(); if (!projectCustomFields.Any()) { acResponse.Code = -1; acResponse.Message = "Project Custom Fields could not be retrieved. Please ensure all required setups are handled appropriately before proceeding."; return(Json(acResponse, JsonRequestBehavior.AllowGet)); } var project = projects[0]; var projectLicense = new ProjectLicense { ProjectName = project.ProjectName, ProjectDescription = project.ProjectDescription, ProjectCode = project.ProjectCode, LicenseExpiryDate = project.LicenseExpiryDate, DateCreated = project.DateCreated, ProjectCustomGroups = projectCustomGroups.ToArray(), ProjectCustomFields = projectCustomFields.ToArray() }; var customGroups = new List <CustomGroup>(); var customFields = new List <CustomField>(); var customList = new List <CustomList>(); var customListData = new List <CustomListData>(); projectCustomGroups.ForEach(c => { var groups = _customGroupService.Query(l => l.CustomGroupId == c.CustomGroupId).Select().ToList(); if (groups.Any()) { if (!customGroups.Exists(g => g.CustomGroupId == groups[0].CustomGroupId)) { customGroups.Add(groups[0]); } } }); projectCustomFields.ForEach(c => { var fields = _customFieldService.Query(l => l.CustomFieldId == c.CustomFieldId).Select().ToList(); if (!fields.Any()) { return; } var customField = fields[0]; var customLists = _customListService.Query(l => l.CustomListId == customField.CustomListId).Select().ToList(); var cGroups = _customGroupService.Query(l => l.CustomGroupId == customField.CustomGroupId).Select().ToList(); if (cGroups.Any()) { if (!customGroups.Exists(a => a.CustomGroupId == cGroups[0].CustomGroupId)) { customGroups.Add(cGroups[0]); } if (customLists.Any()) { var cListItem = customLists[0]; if (!customList.Exists(a => a.CustomListId == cListItem.CustomListId)) { customList.Add(cListItem); var list = _customListDataService.Query(d => d.CustomListId == cListItem.CustomListId).Select().ToList(); if (list.Any()) { list.ForEach(l => { if (!customListData.Exists(a => a.CustomListDataId == l.CustomListDataId)) { customListData.Add(l); } }); } } } customFields.Add(customField); } }); projectLicense.CustomFields = customFields.ToArray(); projectLicense.CustomGroups = customGroups.ToArray(); projectLicense.CustomLists = customList.ToArray(); projectLicense.CustomListData = customListData.ToArray(); projectLicense.CustomFieldTypes = fieldTypes.ToArray(); const string folderPath = "~/TempProjectSetUp"; var filePath = Server.MapPath(folderPath + "/" + projectLicense.ProjectName.Replace(" ", "-") + ".json"); if (System.IO.File.Exists(filePath)) { System.IO.File.Delete(filePath); } System.IO.File.WriteAllText(filePath, JsonConvert.SerializeObject(projectLicense)); acResponse.Code = 5; acResponse.DownloadLink = GenericHelpers.MapPath(filePath); acResponse.Message = "Project License was successfully generated."; return(Json(acResponse, JsonRequestBehavior.AllowGet)); } catch (Exception e) { ErrorLogger.LogError(e.StackTrace, e.Source, e.Message); acResponse.Code = -1; acResponse.Message = "The selected Project information could not be accessed. Please try again later"; return(Json(acResponse, JsonRequestBehavior.AllowGet)); } }
public void SubmitBug() { submitButton.Click(); GenericHelpers.WaitForElementInPage(By.Id("bugzilla-body"), TimeSpan.FromSeconds(30)); }
private void ActFromBallPosition() { if (HasHitPredictionDisc && _isBackCourt) { if (_linkedPlayer.GetComponent <PlayerBehavior>().SPCooldown <= 0) { _linkedPlayer.GetComponent <PlayerBehavior>().Lift(); //CastSP } return; } var predictionDisc = GetPredictionDisc(); if (predictionDisc != null && predictionDisc.transform.position.y < transform.position.y && GenericHelpers.FloatEqualsPrecision(predictionDisc.transform.position.x, transform.position.x, 0.1f) && transform.position.y - predictionDisc.transform.position.y <= 1.25f && _canDash && _isBackCourt) { var rand = Random.Range(0, 3); if (rand != 0 && (_middleWallBehavior == null || _middleWallBehavior.Order != 2)) { _linkedPlayer.GetComponent <PlayerBehavior>().Dash(); _canDash = false; Invoke("ResetDashPossibility", _repeatDashCooldown); return; } } bool shouldDashLimit = false; if (_ball.transform.position.y < _startReactDistance && Player == CurrentPlayer.PlayerTwo) { return; } if (_ball.transform.position.y > -_startReactDistance && Player == CurrentPlayer.PlayerOne) { return; } if (_ball.transform.position.y > _yBallLimit && Player == CurrentPlayer.PlayerTwo) { shouldDashLimit = true; } if (_ball.transform.position.y < _yBallLimit && Player == CurrentPlayer.PlayerOne) { shouldDashLimit = true; } if ((_canDahEarly && _ball.transform.position.x + _linkedPlayer.GetComponent <PlayerBehavior> ().DashDistance < transform.position.x && _canDash) || (shouldDashLimit == true && _ball.transform.position.x + 0.1f < transform.position.x && _canDash)) { _linkedPlayer.GetComponent <PlayerBehavior> ().Direction = Direction.Left; _linkedPlayer.GetComponent <PlayerBehavior> ().Dash(); _canDash = false; Invoke("ResetDashPossibility", _repeatDashCooldown); } else if ((shouldDashLimit == false && _ball.transform.position.x - _linkedPlayer.GetComponent <PlayerBehavior> ().DashDistance > transform.position.x && _canDash) || (shouldDashLimit == true && _ball.transform.position.x - 0.1f > transform.position.x && _canDash)) { _linkedPlayer.GetComponent <PlayerBehavior> ().Direction = Direction.Right; _linkedPlayer.GetComponent <PlayerBehavior> ().Dash(); _canDash = false; Invoke("ResetDashPossibility", _repeatDashCooldown); } else if (_ball.transform.position.x + 0.2f < transform.position.x) { _linkedPlayer.GetComponent <PlayerBehavior> ().Move(Direction.Left); } else if (_ball.transform.position.x - 0.2f > transform.position.x) { _linkedPlayer.GetComponent <PlayerBehavior> ().Move(Direction.Right); } else if (_linkedPlayer.GetComponent <PlayerBehavior> ().SPCooldown <= 0 && Vector2.Distance(transform.position, _ball.transform.position) <= _startCastDistance) { _linkedPlayer.GetComponent <PlayerBehavior> ().Lift(); //CastSP } else { _linkedPlayer.GetComponent <PlayerBehavior> ().Standby(); } }
public void AttachmentClick() { AddAnAttachmentButton.Click(); GenericHelpers.WaitForElementInPage(By.Id("data"), TimeSpan.FromSeconds(30)); }
/// <summary> /// Processes a request to determine if it matches a known image, otherwise it will generate it. /// </summary> /// <param name="context"></param> /// <returns></returns> public async Task Invoke(HttpContext context) { var path = context.Request.Path; var extension = Path.GetExtension(path.Value); if (!GenericHelpers.IsGetOrHeadMethod(context.Request.Method)) { this.logger.LogRequestMethodNotSupported(context.Request.Method); } else if (!GenericHelpers.IsRequestFileTypeSupported( extension, this.options.OutputFormats.SelectMany( x => x.FileEndings).ToArray() ) ) { this.logger.LogRequestFileTypeNotSupported(extension); } else if (!GenericHelpers.TryMatchPath(path, this.options.TargetFolder)) { this.logger.LogPathMismatch(path); } else { // get the image location on disk var imagePath = Path.Combine( this.env.WebRootPath, path.Value .Replace('/', Path.DirectorySeparatorChar) .TrimStart(Path.DirectorySeparatorChar) ); if (!File.Exists(imagePath)) { this.logger.LogProcessingImage(path.Value); var size = Path.GetFileNameWithoutExtension(path.Value).ToLower(); var filename = Directory.GetParent(path.Value).Name; // var imageSourcePath = Path.Combine( // $"{this.env.ContentRootPath}{this.options.SourceFolder}", // $"{filename}{extension}" // ); FileInfo sourceImageFile; var sourceImageFolder = new DirectoryInfo(Path.Combine( $"{this.env.ContentRootPath}{this.options.SourceFolder}" )); var sourceImageFiles = sourceImageFolder.GetFiles($"{filename}.*"); if (sourceImageFiles == null || sourceImageFiles.Length == 0) { // Image source not found! // Hand over to the next middleware and return. this.logger.LogSourceImageNotFound($"{filename}.*"); await this.next(context); return; } else { if (sourceImageFiles.Length > 1) { this.logger.LogWarning( $"Found multiple source images, take first one: {sourceImageFiles[0].Name}" ); } sourceImageFile = sourceImageFiles[0]; } var targetDir = Path.Combine( this.env.WebRootPath, this.options.TargetFolder .Replace('/', Path.DirectorySeparatorChar) .TrimStart(Path.DirectorySeparatorChar), filename ); if (!Directory.Exists(targetDir)) { this.logger.LogInformation($"Create Directory: \"{targetDir}\""); Directory.CreateDirectory(targetDir); } var sizeSetting = this.options.Sizes.FirstOrDefault( x => (x.Name ?? x.Width.ToString()).ToLower() == size ); if (sizeSetting == null) { // Not supported size! // Hand over to the next middleware and return. this.logger.LogSizeNotSupported(size); await this.next(context); return; } var sourceImageFileExtension = sourceImageFile.Extension.Trim('.'); var isSourceFileSupported = Enum.TryParse <MagickFormat>(sourceImageFileExtension, true, out var format); if (isSourceFileSupported) { using (var image = new MagickImage()) { try { image.Read(sourceImageFile); } // Something went wrong while loading the image with ImageMagick catch (MagickException exception) { this.logger.LogError($"Error while loading image: {exception}"); await this.next(context); return; } image.Resize(sizeSetting.Width, sizeSetting.Height); image.Strip(); if (sizeSetting.Quality >= 0) { this.logger.LogInformation($"Setting Quality to: \"{sizeSetting.Quality}\""); image.Quality = sizeSetting.Quality; } if (sizeSetting.Progressive) { image.Format = MagickFormat.Pjpeg; } using (var stream = new MemoryStream()) { image.Write(stream); stream.Position = 0; this.logger.LogInformation($"LosslessCompress before: {stream.Length / 1024} kb"); var imageOptimizer = new ImageOptimizer(); if (options.LosslessCompress) { imageOptimizer.LosslessCompress(stream); } else { imageOptimizer.Compress(stream); } this.logger.LogInformation($"LosslessCompress after: {stream.Length / 1024} kb"); using ( FileStream file = new FileStream( imagePath, FileMode.Create, System.IO.FileAccess.Write ) ) { stream.WriteTo(file); file.Flush(); } } } } else { this.logger.LogSourceFileTypeNotSupported($"{sourceImageFileExtension}"); await this.next(context); return; } } } await this.next(context); }
public async Task <ActionResult> Login(LoginViewModel model, string returnUrl) { if (!ModelState.IsValid) { return(View(model)); } // This doesn't count login failures towards account lockout // To enable password failures to trigger account lockout, change to shouldLockout: true var user = await UserManager.FindByNameAsync(model.Email); var password = await UserManager.CheckPasswordAsync(user, model.Password); if (user != null && password == true) { if (!user.EmailConfirmed) { ModelState.AddModelError("", "Please confirm your email address to process."); return(View(model)); } else if (user.TwoFactorEnabled) { return(RedirectToAction(nameof(SendCode), new { ReturnUrl = returnUrl, RememberMe = model.RememberMe })); } else if (user.LockoutEnabled) { ModelState.AddModelError("", "User account locked out."); return(View("Lockout")); } else { var result = await SignInManager.PasswordSignInAsync(model.Email, model.Password, model.RememberMe, shouldLockout : false); switch (result) { case SignInStatus.Success: //return RedirectToLocal(returnUrl); FormsAuthentication.SetAuthCookie(user.UserName, true); _loginCountRepo.CountUserLogin(user.Id.ToString()); //audit var ip = GenericHelpers.GetUserIPAddress(); if (!string.IsNullOrEmpty(ip)) { LoginAudits auditRecord = LoginAudits.CreateAuditEvent(Guid.NewGuid().ToString(), user.Id, en_LoginAuditEventType.Login, ip); if (auditRecord != null) { int auditRecording = _loginAuditRepository.Insert(auditRecord); } } return(RedirectToLocal(returnUrl, user.Id.ToString())); case SignInStatus.LockedOut: if (user != null) { //audit var ip3 = GenericHelpers.GetUserIPAddress(); if (!string.IsNullOrEmpty(ip3)) { LoginAudits auditRecord3 = LoginAudits.CreateAuditEvent(Guid.NewGuid().ToString(), user.Id, en_LoginAuditEventType.AccountLockedOut, ip3); if (auditRecord3 != null) { int auditRecording = _loginAuditRepository.Insert(auditRecord3); } } } return(View("Lockout")); case SignInStatus.RequiresVerification: return(RedirectToAction("SendCode", new { ReturnUrl = returnUrl, RememberMe = model.RememberMe })); case SignInStatus.Failure: default: ModelState.AddModelError("", "Invalid login attempt."); if (user != null) { //audit var ip2 = GenericHelpers.GetUserIPAddress(); if (!string.IsNullOrEmpty(ip2)) { LoginAudits auditRecord2 = LoginAudits.CreateAuditEvent(Guid.NewGuid().ToString(), user.Id, en_LoginAuditEventType.FailedLogin, ip2); if (auditRecord2 != null) { int auditRecording = _loginAuditRepository.Insert(auditRecord2); } } } return(View(model)); } } } else { ModelState.AddModelError("", "Invalid Email or Username."); if (user != null) { //audit var ip = GenericHelpers.GetUserIPAddress(); LoginAudits auditRecord = LoginAudits.CreateAuditEvent(Guid.NewGuid().ToString(), user.Id, en_LoginAuditEventType.FailedLogin, ip); if (auditRecord != null) { int auditRecording = _loginAuditRepository.Insert(auditRecord); } } return(View(model)); } }
public void Dash() { bool dashNetOrBackCourt = false; if (!_canDash || IsCastingSP) { return; } else if (Direction == Direction.Standby && _canMoveToNet) { dashNetOrBackCourt = true; if (!GenericHelpers.FloatEqualsPrecision(Mathf.Abs(transform.position.y), Mathf.Abs(_backCourtY), 0.25f)) { Direction = Direction.BackDash; } } _canDash = false; IsDashing = true; float distance = DashDistance; if (dashNetOrBackCourt && Direction == Direction.Standby) { distance = _frontNetYDashDistance; } else if (dashNetOrBackCourt && Direction == Direction.BackDash) { distance = Mathf.Abs(_backCourtY) - Mathf.Abs(transform.position.y); } if (Direction == Direction.Left || Player == CurrentPlayer.PlayerOne && Direction == Direction.BackDash || Player == CurrentPlayer.PlayerTwo && Direction == Direction.Standby) { distance = -distance; } SetOrientation(isDash: true); _dashingDirection = Direction; _dashingStart = transform.position; if (!dashNetOrBackCourt) { _dashingEnd = transform.position + new Vector3(distance, 0.0f, 0.0f); } else { _dashingEnd = transform.position + new Vector3(0.0f, distance, 0.0f); } if (_dashingEnd.x < -_gameManager.GetComponent <GameManagerBehavior>().DistanceWall) { _dashingEnd = new Vector3(-_gameManager.GetComponent <GameManagerBehavior>().DistanceWall, _dashingEnd.y, 0.0f); } if (_dashingEnd.x > _gameManager.GetComponent <GameManagerBehavior>().DistanceWall) { _dashingEnd = new Vector3(_gameManager.GetComponent <GameManagerBehavior>().DistanceWall, _dashingEnd.y, 0.0f); } StretchOnDash(); Animator.enabled = false; CurrentSprite.sprite = DashSprite; Invoke("ResetDash", _dashCooldown); var tmpDashEffect = Instantiate(DashEffect, transform.position, transform.rotation); tmpDashEffect.transform.eulerAngles += new Vector3(0.0f, 0.0f, 180.0f); var tmpDashParticles = Instantiate(DashEffectParticles, transform.position, gameObject.transform.rotation); tmpDashParticles.GetComponent <EffectBehavior>().ObjectToFollow = gameObject; }
public FileLoggingService() { _logDirectory = GenericHelpers.Combine(AppContext.BaseDirectory, "file_logs"); }
/// <summary> /// Method to process the text commands /// </summary> /// <param name="turnContext"></param> /// <param name="cancellationToken"></param> /// <returns></returns> private async Task <DialogTurnResult> ProcessStepAsync(WaterfallStepContext stepContext, CancellationToken cancellationToken) { //Check if the User has already provided the feedback, if yes, then do not show the FeedBack card again. var isFeedbackProvided = await _accessors.FeedbackState.GetAsync(stepContext.Context, () => false, cancellationToken); BizTalkOperationApiHelper apiHelper; List <Application> applications = new List <Application>(); List <SendPort> sendPorts = new List <SendPort>(); List <ReceiveLocation> receiveLocations = new List <ReceiveLocation>(); List <string> reports = new List <string>(); BlobHelper blobHelper; //This works with only the ImBack type events sent by the emulator if (stepContext.Result != null) { var tokenResponse = stepContext.Result as TokenResponse; if (tokenResponse?.Token != null) { var parts = _accessors.CommandState.GetAsync(stepContext.Context, () => string.Empty, cancellationToken: cancellationToken).Result.Split(' '); string command = parts[0].ToLowerInvariant(); string adaptiveCardData; string operationCard = string.Empty; switch (command) { case "getallapplications": apiHelper = new BizTalkOperationApiHelper("getallapplications"); applications = await apiHelper.GetApplicationsAsync(); //string sampleAppListJson = GenericHelpers.ReadTextFromFile(@".\SampleMessages\GetApplications.json"); //List<Application> bizTalkApplications= JsonConvert.DeserializeObject<List<Application>>(sampleAppListJson); //Save the list of application object in the memory so as to see if the result was queried during the same session. //This saves the communication with the Logic App thus saving the number of round trips await _accessors.ApplicationState.SetAsync(stepContext.Context, applications, cancellationToken : cancellationToken); await _accessors.UserState.SaveChangesAsync(stepContext.Context, cancellationToken : cancellationToken); adaptiveCardData = AdaptiveCardsHelper.CreateGetApplicationsAdaptiveCard(applications); await stepContext.Context.SendActivityAsync(DialogHelpers.CreateReply(stepContext.Context, adaptiveCardData, false), cancellationToken : cancellationToken); await stepContext.Context.SendActivityAsync (DialogHelpers.CreateReply(stepContext.Context, string.Format(Constants.AdaptiveCardPath, (isFeedbackProvided ? Constants.AdaptiveCards.OperationMessageNoFB.ToString() : Constants.AdaptiveCards.OperationsMessage.ToString())) , true), cancellationToken); break; case "getorchbyapp": case "getsendportsbyapp": //Check the accessors to check if the ApplicationState contains a list of the application, if yes select it else, query the details from // On premises BizTalk System. This is done to avoid fetching the applications multiple times. applications = await _accessors.ApplicationState.GetAsync(stepContext.Context, () => new List <Application>(), cancellationToken : cancellationToken); if (applications.Count == 0 || applications == null) { apiHelper = new BizTalkOperationApiHelper("getallapplications"); applications = await apiHelper.GetApplicationsAsync(); //string appListJson = GenericHelpers.ReadTextFromFile(@".\SampleMessages\GetApplications.json"); //apps = JsonConvert.DeserializeObject<List<Application>>(appListJson); } adaptiveCardData = AdaptiveCardsHelper.CreateSelectApplicationListAdaptiveCard(applications, command); await stepContext.Context.SendActivityAsync(DialogHelpers.CreateReply(stepContext.Context, adaptiveCardData, false), cancellationToken : cancellationToken); break; case "gethosts": //Check if the Hosts were queried first. If the accessor contains the list then we do not call Logic App //And we save the state. Else we get the host form the State. List <Host> hosts = await _accessors.HostState.GetAsync(stepContext.Context, () => new List <Host>(), cancellationToken); if (hosts.Count == 0 || hosts == null) { apiHelper = new BizTalkOperationApiHelper("gethosts"); hosts = await apiHelper.GetHostsAsync(); } if (hosts.Count == 0) { await stepContext.Context.SendActivityAsync(string.Format(Constants.NotFoundMessage, "gethosts"), cancellationToken : cancellationToken); } else { await _accessors.HostState.SetAsync(stepContext.Context, hosts, cancellationToken); await _accessors.UserState.SaveChangesAsync(stepContext.Context, cancellationToken : cancellationToken); adaptiveCardData = AdaptiveCardsHelper.CreateGetHostsAdaptiveCard(hosts); await stepContext.Context.SendActivityAsync(DialogHelpers.CreateReply(stepContext.Context, adaptiveCardData, false), cancellationToken); } await stepContext.Context.SendActivityAsync (DialogHelpers.CreateReply(stepContext.Context, string.Format(Constants.AdaptiveCardPath, (isFeedbackProvided ? Constants.AdaptiveCards.OperationMessageNoFB.ToString() : Constants.AdaptiveCards.OperationsMessage.ToString())) , true), cancellationToken); break; case "getsuspendedinstances": apiHelper = new BizTalkOperationApiHelper("getsuspendedinstances"); List <Instance> instances = await apiHelper.GetInstancesAsync(); if (instances.Count > 0) { List <Instance> suspendedInstances = instances.Where(x => x.InstanceStatus == Constants.InstanceStatus.Suspended.ToString() || x.InstanceStatus == Constants.InstanceStatus.SuspendedNotResumable.ToString()).ToList(); if (suspendedInstances.Count() > 0) { string report = GenericHelpers.GetSuspendedInstancesReport(suspendedInstances); blobHelper = new BlobHelper(_configuration); string blobName = await blobHelper.UploadReportToBlobAsync(report, "SuspendedInstances"); adaptiveCardData = AdaptiveCardsHelper.CreateGetSuspendedInstancesAdaptiveCard(suspendedInstances); adaptiveCardData = adaptiveCardData.Replace(Constants.ReportDummyUrl, string.Format(Constants.ReportBaseUrl, _storageAccountKey, blobName)); await stepContext.Context.SendActivityAsync(DialogHelpers.CreateReply(stepContext.Context, adaptiveCardData, false), cancellationToken); reports = await _accessors.Reports.GetAsync(stepContext.Context, () => new List <string>(), cancellationToken); //If the reports does not contain the generated blob name, then add and save the list to the accessors. if (!reports.Contains(blobName)) { reports.Add(blobName); await _accessors.Reports.SetAsync(stepContext.Context, reports, cancellationToken); await _accessors.UserState.SaveChangesAsync(stepContext.Context, cancellationToken : cancellationToken); } } else { await stepContext.Context.SendActivityAsync("Sorry No Suspended Instances were found on the environment", cancellationToken : cancellationToken); } } else { await stepContext.Context.SendActivityAsync("Sorry No Instances were found on the environment", cancellationToken : cancellationToken); } await stepContext.Context.SendActivityAsync (DialogHelpers.CreateReply(stepContext.Context, string.Format(Constants.AdaptiveCardPath, (isFeedbackProvided ? Constants.AdaptiveCards.OperationMessageNoFB.ToString() : Constants.AdaptiveCards.OperationsMessage.ToString())) , true), cancellationToken); break; case "startsendport": //Check if the Send Ports are available in the Accessors, if they are available, we will not query the LA sendPorts = await _accessors.SendPortState.GetAsync(stepContext.Context, () => new List <SendPort>(), cancellationToken); if (sendPorts.Count == 0 || sendPorts == null) { apiHelper = new BizTalkOperationApiHelper("getsendportsbyapp"); sendPorts = await apiHelper.GetSendPortsAsync(); //save the list into SendPort State using Accessors } if (sendPorts.Count == 0) { await stepContext.Context.SendActivityAsync(string.Format(Constants.NotFoundMessage, "startsendport"), cancellationToken : cancellationToken); } else { //await _accessors.SendPortState.SetAsync(stepContext.Context, sendPorts, cancellationToken); //await _accessors.UserState.SaveChangesAsync(stepContext.Context, cancellationToken: cancellationToken); if (sendPorts.Where(x => x.Status == "Stopped").ToList().Count() > 0) { adaptiveCardData = AdaptiveCardsHelper.CreateSelectSendPortListAdaptiveCard(sendPorts.Where(x => x.Status == "Stopped").ToList(), "Please Select a send port to start", "startsendport"); await stepContext.Context.SendActivityAsync(DialogHelpers.CreateReply(stepContext.Context, adaptiveCardData, false), cancellationToken); } else { await stepContext.Context.SendActivityAsync("No Send Port is in Stopped State. Please Slect another option."); await stepContext.Context.SendActivityAsync (DialogHelpers.CreateReply(stepContext.Context, string.Format(Constants.AdaptiveCardPath, (isFeedbackProvided ? Constants.AdaptiveCards.OperationMessageNoFB.ToString() : Constants.AdaptiveCards.OperationsMessage.ToString())) , true), cancellationToken); } } break; case "stopsendport": //Check if the Send Ports are available in the Accessors, if they are available, we will not query the LA sendPorts = await _accessors.SendPortState.GetAsync(stepContext.Context, () => new List <SendPort>(), cancellationToken); if (sendPorts.Count == 0 || sendPorts == null) { apiHelper = new BizTalkOperationApiHelper("getsendportsbyapp"); sendPorts = await apiHelper.GetSendPortsAsync(); //save the list into SendPort State using Accessors } if (sendPorts.Count == 0) { await stepContext.Context.SendActivityAsync(string.Format(Constants.NotFoundMessage, "stopsendport"), cancellationToken : cancellationToken); } else { //await _accessors.SendPortState.SetAsync(stepContext.Context, sendPorts, cancellationToken); //await _accessors.UserState.SaveChangesAsync(stepContext.Context, cancellationToken: cancellationToken); if (sendPorts.Where(x => x.Status == "Started").ToList().Count() > 0) { adaptiveCardData = AdaptiveCardsHelper.CreateSelectSendPortListAdaptiveCard(sendPorts.Where(x => x.Status == "Started").ToList(), "Please Select a send port to stop", "stopsendport"); await stepContext.Context.SendActivityAsync(DialogHelpers.CreateReply(stepContext.Context, adaptiveCardData, false), cancellationToken); } else { await stepContext.Context.SendActivityAsync("No Send Port is in Started State. Please Slect another option."); await stepContext.Context.SendActivityAsync (DialogHelpers.CreateReply(stepContext.Context, string.Format(Constants.AdaptiveCardPath, (isFeedbackProvided ? Constants.AdaptiveCards.OperationMessageNoFB.ToString() : Constants.AdaptiveCards.OperationsMessage.ToString())) , true), cancellationToken); } } break; case "enablerl": receiveLocations = await _accessors.ReceiveLocationState.GetAsync(stepContext.Context, () => new List <ReceiveLocation>(), cancellationToken); if (receiveLocations.Count == 0 || receiveLocations == null) { apiHelper = new BizTalkOperationApiHelper("getrls"); receiveLocations = await apiHelper.GetReceiveLocationsAsync(); } if (receiveLocations.Count == 0) { await stepContext.Context.SendActivityAsync(string.Format(Constants.NotFoundMessage, "enablerl"), cancellationToken : cancellationToken); } else { //await _accessors.SendPortState.SetAsync(stepContext.Context, sendPorts, cancellationToken); //await _accessors.UserState.SaveChangesAsync(stepContext.Context, cancellationToken: cancellationToken); if (receiveLocations.Where(x => !x.Enable).ToList().Count() > 0) { adaptiveCardData = AdaptiveCardsHelper.CreateSelectReceiveLocationListAdaptiveCard(receiveLocations.Where(x => !x.Enable).ToList(), "Please Select a Receive Location To Enable", "enablerl"); await stepContext.Context.SendActivityAsync(DialogHelpers.CreateReply(stepContext.Context, adaptiveCardData, false), cancellationToken); } else { await stepContext.Context.SendActivityAsync("No Receive Location is in Disabled State. Please Slect another option."); await stepContext.Context.SendActivityAsync (DialogHelpers.CreateReply(stepContext.Context, string.Format(Constants.AdaptiveCardPath, (isFeedbackProvided ? Constants.AdaptiveCards.OperationMessageNoFB.ToString() : Constants.AdaptiveCards.OperationsMessage.ToString())) , true), cancellationToken); } } break; case "disablerl": receiveLocations = await _accessors.ReceiveLocationState.GetAsync(stepContext.Context, () => new List <ReceiveLocation>(), cancellationToken); if (receiveLocations.Count == 0 || receiveLocations == null) { apiHelper = new BizTalkOperationApiHelper("getrls"); receiveLocations = await apiHelper.GetReceiveLocationsAsync(); } if (receiveLocations.Count == 0) { await stepContext.Context.SendActivityAsync(string.Format(Constants.NotFoundMessage, "disablerl"), cancellationToken : cancellationToken); } else { //await _accessors.SendPortState.SetAsync(stepContext.Context, sendPorts, cancellationToken); //await _accessors.UserState.SaveChangesAsync(stepContext.Context, cancellationToken: cancellationToken); if (receiveLocations.Where(x => x.Enable).ToList().Count() > 0) { adaptiveCardData = AdaptiveCardsHelper.CreateSelectReceiveLocationListAdaptiveCard(receiveLocations.Where(x => x.Enable).ToList(), "Please Select a Receive Location To Disable", "disablerl"); await stepContext.Context.SendActivityAsync(DialogHelpers.CreateReply(stepContext.Context, adaptiveCardData, false), cancellationToken); } else { await stepContext.Context.SendActivityAsync("No Receive Location is in Enabled State. Please Slect another option."); await stepContext.Context.SendActivityAsync (DialogHelpers.CreateReply(stepContext.Context, string.Format(Constants.AdaptiveCardPath, (isFeedbackProvided ? Constants.AdaptiveCards.OperationMessageNoFB.ToString() : Constants.AdaptiveCards.OperationsMessage.ToString())) , true), cancellationToken); } } break; case "feedback": adaptiveCardData = string.Format(Constants.AdaptiveCardPath, Constants.AdaptiveCards.FeedBackCard.ToString()); await stepContext.Context.SendActivityAsync(DialogHelpers.CreateReply(stepContext.Context, adaptiveCardData, true), cancellationToken : cancellationToken); //await stepContext.Context.SendActivityAsync // (DialogHelpers.CreateReply(stepContext.Context, // string.Format(Constants.AdaptiveCardPath, (isFeedbackProvided ? Constants.AdaptiveCards.OperationMessageNoFB.ToString() : Constants.AdaptiveCards.OperationsMessage.ToString())) // ,true), cancellationToken); break; default: await stepContext.Context.SendActivityAsync (DialogHelpers.CreateReply(stepContext.Context, string.Format(Constants.AdaptiveCardPath, (isFeedbackProvided ? Constants.AdaptiveCards.OperationMessageNoFB.ToString() : Constants.AdaptiveCards.OperationsMessage.ToString())) , true), cancellationToken); break; } } } else { var token = JToken.Parse(stepContext.Context.Activity.ChannelData.ToString()); if (System.Convert.ToBoolean(token["postback"].Value <string>())) { JToken commandToken = JToken.Parse(stepContext.Context.Activity.Value.ToString()); string command = GenericHelpers.ParseToken(commandToken, "command"); string adaptiveCardData = string.Empty; string applicationName = string.Empty; switch (command) { case "getorchbyapp": // Check if the Orchestration list is available in the Irchestration State in Accessors. //If the list is there, we will not call the Logic APp else we call the Logic APp and save the //Orchestration List in the Orchestration State. List <Orchestration> orchestrations = await _accessors.OrchestrationState.GetAsync(stepContext.Context, () => new List <Orchestration>(), cancellationToken); if (orchestrations.Count == 0 || orchestrations == null) { apiHelper = new BizTalkOperationApiHelper("getorchbyapp"); orchestrations = await apiHelper.GetOrchestrationsAsync(); } if (orchestrations.Count == 0) { await stepContext.Context.SendActivityAsync(string.Format(Constants.NotFoundMessage, "getorchbyapp"), cancellationToken : cancellationToken); } else { await _accessors.OrchestrationState.SetAsync(stepContext.Context, orchestrations, cancellationToken); await _accessors.UserState.SaveChangesAsync(stepContext.Context, cancellationToken : cancellationToken); applicationName = commandToken["applicationChoiceSet"].Value <string>(); adaptiveCardData = AdaptiveCardsHelper.CreateGetOrchestrationsAdaptiveCard(orchestrations.Where(x => x.ApplicationName == applicationName).ToList(), applicationName); await stepContext.Context.SendActivityAsync(DialogHelpers.CreateReply(stepContext.Context, adaptiveCardData, false), cancellationToken); } break; case "getsendportsbyapp": //Check if the Send Ports are avaiable in the SendPOrtS STate using the accessors, if they are not, call the Logic APp to //Query the result sendPorts = await _accessors.SendPortState.GetAsync(stepContext.Context, () => new List <SendPort>(), cancellationToken); if (sendPorts.Count == 0 || sendPorts == null) { apiHelper = new BizTalkOperationApiHelper("getsendportsbyapp"); sendPorts = await apiHelper.GetSendPortsAsync(); //save the list into SendPort State using Accessors } if (sendPorts.Count == 0) { await stepContext.Context.SendActivityAsync(string.Format(Constants.NotFoundMessage, "getsendportsbyapp"), cancellationToken : cancellationToken); } else { //await _accessors.SendPortState.SetAsync(stepContext.Context, sendPorts, cancellationToken); //await _accessors.UserState.SaveChangesAsync(stepContext.Context, cancellationToken: cancellationToken); applicationName = commandToken["applicationChoiceSet"].Value <string>(); adaptiveCardData = AdaptiveCardsHelper.CreateGetSendPortsByAppAdaptiveCard(sendPorts.Where(x => x.ApplicationName == applicationName).ToList(), applicationName); await stepContext.Context.SendActivityAsync(DialogHelpers.CreateReply(stepContext.Context, adaptiveCardData, false), cancellationToken); } break; case "startsendport": string sendportName = commandToken["sendPortChoiceSet"].Value <string>(); apiHelper = new BizTalkOperationApiHelper("startsendport", sendportName); bool status = await apiHelper.ChangeSendportStateAsync(); string message = string.Empty; if (status) { message = "Operation Completed Successfully"; } else { message = "Operation Failed"; } await stepContext.Context.SendActivityAsync(message, cancellationToken : cancellationToken); break; case "stopsendport": string sendport = commandToken["sendPortChoiceSet"].Value <string>(); apiHelper = new BizTalkOperationApiHelper("stopsendport", sendport); bool opStatus = await apiHelper.ChangeSendportStateAsync(); string responsemessage = string.Empty; if (opStatus) { message = "Operation Completed Successfully"; } else { message = "Operation Failed"; } await stepContext.Context.SendActivityAsync(message, cancellationToken : cancellationToken); break; case "enablerl": string receiveLocation = commandToken["receiveLocationsChoiceSet"].Value <string>(); apiHelper = new BizTalkOperationApiHelper("getrls"); receiveLocations = await apiHelper.GetReceiveLocationsAsync(); string receivePort = receiveLocations.Where(x => x.Name == receiveLocation).FirstOrDefault().ReceivePortName; //Stop the RL now apiHelper = new BizTalkOperationApiHelper("enablerl", receiveLocation, receivePort); bool rlStatus = await apiHelper.ChangeReceiveLocationStateAsync(); if (rlStatus) { message = "Operation Completed Successfully"; } else { message = "Operation Failed"; } await stepContext.Context.SendActivityAsync(message, cancellationToken : cancellationToken); break; case "disablerl": string rl = commandToken["receiveLocationsChoiceSet"].Value <string>(); apiHelper = new BizTalkOperationApiHelper("getrls"); receiveLocations = await apiHelper.GetReceiveLocationsAsync(); string rp = receiveLocations.Where(x => x.Name == rl).FirstOrDefault().ReceivePortName; //Stop the RL now apiHelper = new BizTalkOperationApiHelper("disablerl", rl, rp); bool rlopStatus = await apiHelper.ChangeReceiveLocationStateAsync(); if (rlopStatus) { message = "Operation Completed Successfully"; } else { message = "Operation Failed"; } await stepContext.Context.SendActivityAsync(message, cancellationToken : cancellationToken); break; case "feedback": //Save the state that the user has provided the feedback. If Saved, this case will not executed again in the same session. if (!isFeedbackProvided) { await _accessors.FeedbackState.SetAsync(stepContext.Context, true, cancellationToken); await _accessors.UserState.SaveChangesAsync(stepContext.Context, cancellationToken : cancellationToken); isFeedbackProvided = true; } await stepContext.Context.SendActivityAsync("Thank You for the feedback."); break; default: await stepContext.Context.SendActivityAsync("Unable To Perform the task"); break; } await stepContext.Context.SendActivityAsync (DialogHelpers.CreateReply(stepContext.Context, string.Format(Constants.AdaptiveCardPath, (isFeedbackProvided ? Constants.AdaptiveCards.OperationMessageNoFB.ToString() : Constants.AdaptiveCards.OperationsMessage.ToString())) , true), cancellationToken); } else { await stepContext.Context.SendActivityAsync("We couldn't Sign you in. Please try again later"); } } await _accessors.CommandState.DeleteAsync(stepContext.Context, cancellationToken); return(await stepContext.EndDialogAsync(cancellationToken : cancellationToken)); }
// GET: HitList public PartialViewResult Index(string SortOrder, string SortDirection, int?page, string pageSize, string search, string Class) { if (!string.IsNullOrEmpty(search)) { ViewBag.Filtered = "Y"; } else { ViewBag.Filtered = "N"; } //List<Project> projects; var ravenDb = HttpContext.GetOwinContext().Get <IDocumentSession>(); RavenQueryStatistics statsRef = new RavenQueryStatistics(); if (page == null) { page = 1; } if (Request.Cookies["pageSize"] == null) { pageSize = GenericHelpers.IsNull(pageSize, "10"); HttpCookie pageSizeCookie = new HttpCookie("pageSize"); pageSizeCookie.Value = pageSize; Response.Cookies.Add(pageSizeCookie); } else { pageSize = GenericHelpers.IsNull(pageSize, Request.Cookies["pageSize"].Value); Response.Cookies["pageSize"].Value = pageSize; } foreach (var pSize in GenericHelpers.PageSizeList) { pSize.Selected = false; if (pSize.Text == pageSize.ToString()) { pSize.Selected = true; } } int pageNumber = (page ?? 1); int skippedResult = Convert.ToInt32(pageSize) * (pageNumber - 1); object results; switch (Class) { case "Project": results = GetHitList.GetPage <Project, Project>(ravenDb, skippedResult, Convert.ToInt32(pageSize), "Id", SortOrder, SortDirection, search, out statsRef); break; case "Contact": results = GetHitList.GetPage <Contact, Contact>(ravenDb, skippedResult, Convert.ToInt32(pageSize), "Id", SortOrder, SortDirection, search, out statsRef); break; case "User": results = GetHitList.GetPage <ApplicationUser, ApplicationUser>(ravenDb, skippedResult, Convert.ToInt32(pageSize), "Id", SortOrder, SortDirection, search, out statsRef); break; case "Distributor": results = GetHitList.GetPage <Distributor, Distributor>(ravenDb, skippedResult, Convert.ToInt32(pageSize), "Id", SortOrder, SortDirection, search, out statsRef); break; case "Detail": results = GetHitList.GetPage <ProjectDetail, ProjectDetail>(ravenDb, skippedResult, Convert.ToInt32(pageSize), "Id", SortOrder, SortDirection, search, out statsRef); break; case "Warning": results = GetHitList.GetPage <Warning, Warning>(ravenDb, skippedResult, Convert.ToInt32(pageSize), "Id", SortOrder, SortDirection, search, out statsRef); break; default: results = GetHitList.GetPage <Project, Project>(ravenDb, skippedResult, Convert.ToInt32(pageSize), "Id", SortOrder, SortDirection, search, out statsRef); break; } ViewBag.TotalPage = Math.Round((double)(statsRef.TotalResults / Convert.ToInt32(pageSize))) + 1; ViewBag.ActualPage = pageNumber; ViewBag.TotalResult = statsRef.TotalResults; ViewBag.SortOrder = SortOrder; ViewBag.SortDirection = SortDirection; ViewBag.PageSizeList = GenericHelpers.PageSizeList; ViewBag.Search = search; ViewData["controller"] = Class; return(PartialView("Index", results)); }
private void OnTextChange(object sender, TextCompositionEventArgs e) { e.Handled = !GenericHelpers.IsTextAllowed(e.Text); }
/// <summary> /// Parses all config classes for file conversion /// </summary> /// <param name="assembly">The assembly to parse from</param> private Dictionary <string, Dictionary <string, Dictionary <string, ConfigParseItem> > > ParseConfig(Assembly assembly = null) { Dictionary <string, Dictionary <string, Dictionary <string, ConfigParseItem> > > parseDict = new Dictionary <string, Dictionary <string, Dictionary <string, ConfigParseItem> > >(); foreach (Type type in GenericHelpers.GetTypesWithAttribute(typeof(ConfigGroup), assembly)) { if (!type.IsAbstract && !type.IsSealed) { throw new ForgeCritical(Language.ForgeCriticalInvalidConfigGroupClassType + type.Name); } ConfigGroup config = type.GetCustomAttributes(typeof(ConfigGroup), true).FirstOrDefault() as ConfigGroup; foreach (PropertyInfo propertyInfo in type.GetProperties()) { //Turn all config items into ParseItems foreach (ConfigItem configItem in propertyInfo.GetCustomAttributes(typeof(ConfigItem), true)) { ConfigParseItem parseItem = new ConfigParseItem { ConfigDefault = configItem.DefaultValue, ConfigName = configItem.Name, Property = propertyInfo, }; if (parseItem.ConfigName == null) { parseItem.ConfigName = parseItem.Property.Name; } if (config != null && parseDict.ContainsKey(config.FileName)) { if (parseDict[config.FileName].ContainsKey(config.GroupName)) { parseDict[config.FileName][config.GroupName].Add(parseItem.ConfigName, parseItem); } else { parseDict[config.FileName].Add(config.GroupName, new Dictionary <string, ConfigParseItem> { { parseItem.ConfigName, parseItem } }); } } else { if (config != null) { parseDict.Add( config.FileName, new Dictionary <string, Dictionary <string, ConfigParseItem> > { { config.GroupName, new Dictionary <string, ConfigParseItem> { { parseItem.ConfigName, parseItem } } } } ); } } } } } return(parseDict); }
public void initPlugin() { GenericHelpers.CreateGameObjectAndAttachClass <PluginMenu>(); }