public SiteEngineerDM(int id, string name, string loginName, System.Security.SecureString password, Common.UserType type, Common.Districts districts, double hour, decimal cost)
 {
     UserID         = id;
     Name           = name;
     LoginName      = loginName;
     Password       = password;
     Type           = type;
     Districts      = districts;
     AuthorisedHour = hour;
     AuthorisedCost = cost;
 }
 public ChatMessage(List <KeyValuePair <string, string> > badges, string channel, string colorHex, string displayName,
                    string emoteSet, bool moderator, bool subscriber, Common.UserType userType, string message)
 {
     Badges      = badges;
     Channel     = channel;
     ColorHex    = colorHex;
     Username    = DisplayName = displayName;
     EmoteSet    = emoteSet;
     IsModerator = moderator;
     Subscriber  = subscriber;
     UserType    = userType;
     Message     = message;
 }
Beispiel #3
0
        public static MySqlConnection getConnection(Common.UserType user_type = Common.UserType.STUDENT)
        {
            switch (user_type)
            {
            case Common.UserType.STUDENT: return(new MySqlConnection(student_connet_string));

            case Common.UserType.TEACHER: return(new MySqlConnection(teacher_connet_string));

            case Common.UserType.ADMIN: return(new MySqlConnection(admin_connet_string));

            default: return(null);
            }
        }
Beispiel #4
0
        /// <summary>
        /// Constructor for UserState.
        /// </summary>
        /// <param name="ircString"></param>
        public UserState(string ircString)
        {
            ColorHex    = ircString.Split(';')[0].Contains("#") ? ircString.Split(';')[0].Split('#')[1] : "";
            DisplayName = ircString.Split(';')[1].Split('=')[1];
            EmoteSet    = ircString.Split(';')[2].Split('=')[1];
            if (ircString.Split(';')[3].Split('=')[1] == "1")
            {
                Subscriber = true;
            }
            if (ircString.Split(';')[4].Split('=')[1] == "1")
            {
                Turbo = true;
            }
            switch (ircString.Split('=')[6].Split(' ')[0])
            {
            case "mod":
                UserType = Common.UserType.Moderator;
                break;

            case "global_mod":
                UserType = Common.UserType.GlobalModerator;
                break;

            case "admin":
                UserType = Common.UserType.Admin;
                break;

            case "staff":
                UserType = Common.UserType.Staff;
                break;

            default:
                UserType = Common.UserType.Viewer;
                break;
            }
            Channel = ircString.Split(' ')[3].Replace("#", "");
        }
Beispiel #5
0
 /// <summary>Constructor of Chatter.</summary>
 public Chatter(string username, Common.UserType userType)
 {
     Username = username;
     UserType = userType;
 }
Beispiel #6
0
 public AccountantDM(int id, string name, string loginName, SecureString password, Common.UserType type) : base()
 {
 }
Beispiel #7
0
        // @badges=subscriber/1,turbo/1;color=#2B119C;display-name=JustFunkIt;emotes=;login=justfunkit;mod=0;msg-id=resub;msg-param-months=2;room-id=44338537;subscriber=1;system-msg=JustFunkIt\ssubscribed\sfor\s2\smonths\sin\sa\srow!;turbo=1;user-id=26526370;user-type= :tmi.twitch.tv USERNOTICE #burkeblack :AVAST YEE SCURVY DOG
        public ReSubscriber(string ircString)
        {
            _rawIrc = ircString;
            foreach (string section in ircString.Split(';'))
            {
                if (section.Contains("="))
                {
                    string key   = section.Split('=')[0];
                    string value = section.Split('=')[1];
                    switch (key)
                    {
                    case "@badges":
                        foreach (string badgeValue in value.Split(','))
                        {
                            _badges.Add(new KeyValuePair <string, string>(badgeValue.Split('/')[0], badgeValue.Split('/')[1]));
                        }
                        break;

                    case "color":
                        _colorHex = value;
                        break;

                    case "display-name":
                        _displayName = value;
                        break;

                    case "emotes":
                        _emoteSet = value;
                        break;

                    case "login":
                        _login = value;
                        break;

                    case "mod":
                        _mod = value == "1";
                        break;

                    case "msg-param-months":
                        _months = int.Parse(value);
                        break;

                    case "room-id":
                        _roomId = int.Parse(value);
                        break;

                    case "subscriber":
                        _sub = value == "1";
                        break;

                    case "system-msg":
                        _systemMessage = value;
                        break;

                    case "turbo":
                        _turbo = value == "1";
                        break;

                    case "user-id":
                        _userId = int.Parse(value);
                        break;
                    }
                }
            }
            // Parse user-type
            if (ircString.Contains("=") && ircString.Contains(" "))
            {
                switch (ircString.Split(' ')[0].Split(';')[13].Split('=')[1])
                {
                case "mod":
                    _userType = Common.UserType.Moderator;
                    break;

                case "global_mod":
                    _userType = Common.UserType.GlobalModerator;
                    break;

                case "admin":
                    _userType = Common.UserType.Admin;
                    break;

                case "staff":
                    _userType = Common.UserType.Staff;
                    break;

                default:
                    _userType = Common.UserType.Viewer;
                    break;
                }
            }


            // Parse channel
            if (ircString.Contains("#") && ircString.Split('#').Count() > 2)
            {
                if (ircString.Split('#')[2].Contains(" "))
                {
                    _channel = ircString.Split('#')[2].Split(' ')[0];
                }
                else
                {
                    _channel = ircString.Split('#')[2];
                }
            }

            // Parse sub message
            if (ircString.Contains($"{ircString.Split(':')[0]}:{ircString.Split(':')[1]}:"))
            {
                _resubMessage = ircString.Replace($"{ircString.Split(':')[0]}:{ircString.Split(':')[1]}:", String.Empty);
            }
        }
 public ChangePassword(string u, Common.UserType ut)
 {
     InitializeComponent();
     username = u;
     role     = ut;
 }
Beispiel #9
0
        /// <summary>
        /// Constructor for UserState.
        /// </summary>
        /// <param name="ircString"></param>
        public UserState(string ircString)
        {
            foreach (string part in ircString.Split(';'))
            {
                // The 'user-type' section does not have a ; suffix, we will account for this outside of for loop, we should exit loop immediately
                if (part.Contains(" :tmi.twitch.tv USERSTATE "))
                {
                    break;
                }
                if (!part.Contains("="))
                {
                    // This should never happen, unless Twitch changes their shit.
                    Console.WriteLine($"Unaccounted for [UserState]: {part}");
                    continue;
                }
                switch (part.Split('=')[0])
                {
                case "@badges":
                    string badges = part.Split('=')[1];
                    if (badges.Contains('/'))
                    {
                        if (!badges.Contains(","))
                        {
                            Badges.Add(new KeyValuePair <string, string>(badges.Split('/')[0], badges.Split('/')[1]));
                        }
                        else
                        {
                            foreach (string badge in badges.Split(','))
                            {
                                Badges.Add(new KeyValuePair <string, string>(badge.Split('/')[0], badge.Split('/')[1]));
                            }
                        }
                    }
                    break;

                case "color":
                    ColorHex = part.Split('=')[1];
                    break;

                case "display-name":
                    DisplayName = part.Split('=')[1];
                    break;

                case "emote-sets":
                    EmoteSet = part.Split('=')[1];
                    break;

                case "mod":
                    Moderator = part.Split('=')[1] == "1";
                    break;

                case "subscriber":
                    Subscriber = part.Split('=')[1] == "1";
                    break;

                default:
                    // This should never happen, unless Twitch changes their shit
                    Console.WriteLine($"Unaccounted for [UserState]: {part.Split('=')[0]}");
                    break;
                }
            }
            // Lets deal with that user-type
            switch (ircString.Split('=')[6].Split(' ')[0])
            {
            case "mod":
                UserType = Common.UserType.Moderator;
                break;

            case "global_mod":
                UserType = Common.UserType.GlobalModerator;
                break;

            case "admin":
                UserType = Common.UserType.Admin;
                break;

            case "staff":
                UserType = Common.UserType.Staff;
                break;

            default:
                UserType = Common.UserType.Viewer;
                break;
            }
            Channel = ircString.Split(' ')[3].Replace("#", "");
            if (DisplayName.ToLower() == Channel.ToLower())
            {
                UserType = Common.UserType.Broadcaster;
            }
        }