Esempio n. 1
0
        private bool AddUserToGroup(UserGroupTimeLine t, bool Exclusive, bool ReloadImmediately)
        {
            StatusItem selectedItem = (StatusItem)statList.SelectedItem;
            if (selectedItem == null) { return false; }
            if (selectedItem.Tweet.user == null) { return false; }

            string Message = "";
            switch (Exclusive)
            {
                case true:
                    Message="This will move {0} out of the Friends timeline and into the {1} group.\n\nAre you sure you want to proceed?";
                    break;
                case false:
                    Message = "This will copy {0} into the {1} group and still show them in the Friends timeline.\n\nAre you sure you want to proceed?";

                    break;

            }
            if (PockeTwit.Localization.LocalizedMessageBox.Show(Message, "Group User", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2, selectedItem.Tweet.user.screen_name, t.name) == DialogResult.Yes)
            {
                t.AddItem(selectedItem.Tweet.user.id, selectedItem.Tweet.user.screen_name, Exclusive);
                SpecialTimeLinesRepository.Save();
            }
            else
            {
                return false;
            }
            if(Exclusive && ReloadImmediately)
            {
                Cursor.Current = Cursors.WaitCursor;
                ReloadTimeLine();
                Cursor.Current = Cursors.Default;
            }
            return true;
        }
        public static void Load()
        {
            using (var conn = DataBaseUtility.GetConnection())
            {
                conn.Open();
                using (var comm = new SQLiteCommand(conn))
                {
                    comm.CommandText =
                        "SELECT groupname, userid, exclusive, users.screenname FROM usersInGroups INNER JOIN users ON usersInGroups.userid = users.id";
                    using (var r = comm.ExecuteReader())
                    {
                        while (r.Read())
                        {
                            var groupName = r.GetString(0);
                            var userID = r.GetString(1);
                            var exclusive = r.GetBoolean(2);
                            var screenName = r.GetString(3);
                            var thisLine = new UserGroupTimeLine();
                            if (Items.ContainsKey(groupName))
                            {
                                thisLine = (UserGroupTimeLine) Items[groupName];
                            }
                            else
                            {
                                thisLine.name = groupName;
                                Add(thisLine);
                            }
                            thisLine.AddItem(userID, screenName, exclusive);
                        }
                    }

                    comm.CommandText =
                        "SELECT searchName, searchTerm, autoUpdate from savedSearches;";

                    try
                    {

                        using (var r = comm.ExecuteReader())
                        {
                            while (r.Read())
                            {
                                var searchName = r.GetString(0);
                                var searchTerm = r.GetString(1);
                                var autoUpdate = r.GetBoolean(2);

                                var savedLine = new SavedSearchTimeLine
                                                    {
                                                        name = searchName,
                                                        SearchPhrase = searchTerm,
                                                        autoUpdate = autoUpdate
                                                    };
                                Add(savedLine);
                            }
                        }
                    }
                    //Ignore it when we have a mismatched save search table.
                    catch{}
                }
            }
        }