public override int GetHashCode() { int hash = 1; if (FromUser.Length != 0) { hash ^= FromUser.GetHashCode(); } if (TargetUser.Length != 0) { hash ^= TargetUser.GetHashCode(); } if (Content.Length != 0) { hash ^= Content.GetHashCode(); } if (SendTime != 0) { hash ^= SendTime.GetHashCode(); } if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } return(hash); }
public TargetUser UpdateUser(TargetUser user) { // check if UserName exists under different Identifier if ( this.Users.Values.Any( (TargetUser exisitingUser) => string.Equals(exisitingUser.UserName, user.UserName, StringComparison.Ordinal) && !(exisitingUser.Identifier == user.Identifier)) ) { throw new Exception("Conflict"); } // check if Identifier exists if (!this.Users.ContainsKey(user.Identifier.ToString())) { throw new Exception("NotFound"); } // replace user this.Users[user.Identifier.ToString()] = user; return(this.Users[user.Identifier.ToString()]); }
public async Task PromoteUser(params SocketGuildUser[] Users) { var Me = Context.Guild.CurrentUser; var SendingUser = this.Context.User as SocketGuildUser; //Basic error handling... Make sure all of the expected values are populated. if (SendingUser == null) { throw new System.NullReferenceException("The calling user was null"); } //This will hold the returned message. StringBuilder sb = new StringBuilder(); var CallingUserCurrentRole = SendingUser.GetRole(cfg); var RoleMap = cfg.GetRoleMap(); //Filter the roles to roles managable by WarBot. filterRoleMap(RoleMap, sb, Me); foreach (var TargetUser in Users) { var TargetUserCurrentRole = TargetUser.GetRole(cfg); var TargetuserDesiredRole = TargetUserCurrentRole.GetPromoteRole(RoleMap); if (TargetuserDesiredRole == RoleLevel.None) { sb.AppendLine($"There are no higher roles I can promote {TargetUser.Mention} to. I cannot promote users to a server admin role or higher."); } //Make sure to not manage myself. else if (TargetUser.Id == Me.Id) { sb.AppendLine("I cannot manage my own role. Only a server admin can do that."); } //If there is no higher role to promote a user to. else if (!TargetuserDesiredRole.HasValue) { sb.AppendLine($"I could not find a higher configured role for {TargetUser.Mention}"); } //User's cannot promote to a role equal or higher then their current role. else if (TargetuserDesiredRole >= CallingUserCurrentRole) { sb.AppendLine($"You promote {TargetUser.Mention}, Because the target role would be equal or higher then your current role."); } //User cannot promote to a role equal or higher then their current role. else if (TargetUserCurrentRole >= CallingUserCurrentRole) { sb.AppendLine($"You cannot manage {TargetUser.Mention}, because they are in an equal or higher role then you."); } else { await SetRole(TargetUser, RoleMap, TargetuserDesiredRole.Value, sb); } } //Send the formatted return message. await ReplyAsync(sb.ToString()); }
/// <summary> /// Gets the hash code /// </summary> /// <returns>Returns HashCode</returns> public override int GetHashCode() { return(String.Format("{0}|{1}|{2}|", TargetUser?.GetHashCode() ?? 0, TargetGroup?.GetHashCode() ?? 0, this.Properties.Aggregate(0, (acc, next) => acc += next.GetHashCode()) ).GetHashCode()); }
public override Conversation Build(string userId, OnlineJudger onlineJudger) { DisplayName = GetDisplayName(userId); DisplayImagePath = GetDisplayImagePath(userId); AnotherUserId = SpecialUser(userId).Id; RequestUser.Build(onlineJudger); TargetUser.Build(onlineJudger); return(this); }
private void ProcessSfx(Xml.ModifierEffect effect) { if (effect == null) { return; } if (effect.Sound != null && effect.Sound.Id != 0) { (Target as User)?.PlaySound(effect.Sound.Id); (Source as User)?.PlaySound(effect.Sound.Id); } if (effect.Animations != null) { if (effect.Animations?.Target != null && effect.Animations.Target.Id != 0) { var animation = effect.Animations.Target; if (Target is Monster || !Target.Condition.Comatose || (Target.Condition.Comatose && animation.Id == (Game.Config.Handlers?.Death?.Coma?.Effect ?? 24))) { Target.Effect(effect.Animations.Target.Id, effect.Animations.Target.Speed); } } if (effect.Animations?.SpellEffect != null && effect.Animations?.SpellEffect.Id != 0) { Source?.Effect(effect.Animations.SpellEffect.Id, effect.Animations.SpellEffect.Speed); } } // Message handling if (effect.Messages != null) { if (TargetUser != null) { if (effect.Messages?.Target != null) { TargetUser.SendSystemMessage(string.Format(effect.Messages.Target, SourceUser.Name)); } if (effect.Messages?.Group != null) { TargetUser.Group?.SendMessage(string.Format(effect.Messages.Group, SourceUser.Name)); } } if (effect.Messages?.Source != null && TargetUser != null && TargetUser != SourceUser) { (Source as User)?.SendSystemMessage(string.Format(effect.Messages.Source, TargetUser?.Name ?? string.Empty)); } if (effect.Messages?.Say != null) { Target.Say(string.Format(effect.Messages.Say, Target.Name ?? string.Empty)); } if (effect.Messages?.Shout != null) { Target.Shout(string.Format(effect.Messages.Shout, Target.Name ?? string.Empty)); } } }
public void Should_be_target() { var userTargetting = new UserTargeting { EnvironmentId = System.Guid.Empty }; var target = TargetSpecificUsers.New(userTargetting, "country", TargetOption.IsIn, "es,pl"); var user = new TargetUser("1234556"); user.Add("country", "es"); var isTarget = target.IsTarget(user); Assert.IsTrue(isTarget); }
public bool Equals(AnalizationTask other) { if (ReferenceEquals(other, null)) { return(false); } if (ReferenceEquals(this, other)) { return(true); } return(Observer.Equals(other.Observer) && Observable.Equals(other.Observable) && TargetUser.Equals(other.TargetUser)); }
public TargetUser CreateUser(TargetUser user) { // verify if the user alredy exists if ( this.Users.Values.Any( (TargetUser exisitingUser) => string.Equals(exisitingUser.UserName, user.UserName, StringComparison.Ordinal)) ) { throw new Exception("Conflict"); } // create user Guid resourceIdentifier = Guid.NewGuid(); user.Identifier = resourceIdentifier; this.Users.Add(resourceIdentifier.ToString(), user); return(this.Users[resourceIdentifier.ToString()]); }
public PartialViewResult _ChatBox(int relationshipID, string targetUserID) { string userID = User.Identity.GetUserId(); if (relationshipID == -1) { try { relationshipID = db.Relationships.SqlQuery("dbo.Check_Friends @p0, @p1", userID, targetUserID).FirstOrDefault().ID; } catch (NullReferenceException) { relationshipID = 0; } } relationshipID = relationshipID == 0 ? createNoRelationship(targetUserID) : relationshipID; Relationship relationship = db.Relationships.Find(relationshipID); if (relationship.UserOneID != userID) { targetUserID = relationship.UserOneID; relationship.UserTwoDateTime = DateTime.Now; } else { targetUserID = relationship.UserTwoID; relationship.UserOneDateTime = DateTime.Now; } db.SaveChanges(); List <Message> messages = db.Messages.SqlQuery("select * from Message where RelationshipID = @p0", relationshipID).ToList(); User tuser = db.Users.Find(targetUserID); TargetUser targetUser = new TargetUser(tuser.UserID, tuser.FirstName, tuser.LastName); var results = new List <PartialViewResult>(); ChatboxViewModel chatboxViewModel = new ChatboxViewModel(relationshipID, targetUser, messages); return(PartialView("_ChatBox", chatboxViewModel)); }
public override Task <Resource> RetrieveAsync(IResourceRetrievalParameters parameters, string correlationIdentifier) { if (parameters == null) { throw new ArgumentNullException(nameof(parameters)); } if (string.IsNullOrWhiteSpace(correlationIdentifier)) { throw new ArgumentNullException(nameof(correlationIdentifier)); } if (string.IsNullOrEmpty(parameters?.ResourceIdentifier?.Identifier)) { throw new ArgumentNullException(nameof(parameters)); } // call service TargetUser result = null; try { result = _storageService.RetrieveUser(new Guid(parameters.ResourceIdentifier.Identifier)); } catch (Exception err) { switch (err.Message) { case "NotFound": throw new HttpResponseException(HttpStatusCode.NotFound); default: throw new HttpResponseException(HttpStatusCode.InternalServerError); } } return(Task.FromResult((Core2EnterpriseUser)result as Resource)); }
public override void PostMessage(Thing objThing, PortalKeeperContext <ScheduleEvent> actionContext) { var message = GetMessage(actionContext); var title = MessageTitle.GetValue(actionContext, actionContext); if ((AnswerTypes & ThingKind.Post) == ThingKind.Post) { string strTargetSubReddit = TargetSubReddit.GetValue(actionContext, actionContext); Subreddit objSubReddit = objThing.Reddit.GetSubreddit(strTargetSubReddit); objSubReddit.SubmitTextPost(title, message); } if ((AnswerTypes & ThingKind.Comment) == ThingKind.Comment) { string strParentFullName = TargetParentFullName.GetValue(actionContext, actionContext); Thing targetParent = objThing.Reddit.GetThingByFullname(strParentFullName); this.Reply(targetParent, message); } if ((AnswerTypes & ThingKind.PrivateMessage) == ThingKind.PrivateMessage) { string targetUserName = TargetUser.GetValue(actionContext, actionContext); objThing.Reddit.ComposePrivateMessage(title, message, targetUserName); } }
private void Button_Click(object sender, RoutedEventArgs e) { UpdateTarget(TargetUser.Text); TargetUser.Clear(); }