Beispiel #1
0
        public async void OnUserClickedCommand(int?index)
        {
            if (!IsEdit && index.HasValue)
            {
                if (index == 0)
                {
                    return;
                }
                else if (index == UsersInGroup.Count - 1)
                {
                    //Push to page
                    NavigationParameters nav = new NavigationParameters();
                    nav.Add("friends", Friends);
                    await _navigationService.NavigateAsync("AddUserToGroupPage", nav);
                }
                else
                {
                    var newCollection = new ObservableCollection <UserDto>(UsersInGroup);
                    newCollection.RemoveAt(index.Value);

                    //Terrible
                    UsersInGroup.Clear();
                    foreach (var u in newCollection)
                    {
                        UsersInGroup.Add(u);
                    }
                }
            }
        }
Beispiel #2
0
        public override void OnNavigatingTo(NavigationParameters parameters)
        {
            base.OnNavigatedTo(parameters);
            if (parameters["user"] != null)
            {
                var user = (UserDto)parameters["user"];
                if (user != null)
                {
                    if (!IsUserInGroup(user))
                    {
                        var newCollection = new ObservableCollection <UserDto>(UsersInGroup);
                        newCollection.Insert(UsersInGroup.Count - 1, user);

                        //Terrible
                        UsersInGroup.Clear();
                        foreach (var u in newCollection)
                        {
                            UsersInGroup.Add(u);
                        }
                    }
                }
            }
            else
            {
                if (parameters["group"] != null)
                {
                    this.Group = (GroupDto)parameters["group"];
                    RaisePropertyChanged(nameof(Group));
                    GroupName        = Group.Name;
                    TrackCost        = Group.TrackCost;
                    SelectedIconName = Group.GroupIconName;
                    RaisePropertyChanged(nameof(GroupName));
                    //UsersInGroup = new ObservableCollection<ShoutUserDto>(Group.Users);
                    UsersInGroup.Clear();
                    UsersInGroup = new ObservableCollection <UserDto>(Group.Users);
                    RaisePropertyChanged(nameof(UsersInGroup));
                }
                else
                {
                    UsersInGroup.Add(Settings.Current.User);

                    UserDto u = new UserDto();
                    u.ID        = DummyGuid;
                    u.AvatarUrl = "ic_plus_white_18dp.png";
                    UsersInGroup.Add(u);
                }

                if (parameters["shout"] != null)
                {
                    ShoutFromEdit = (RecordDto)parameters["shout"];
                }

                if (parameters["edit"] != null)
                {
                    IsEdit = true;
                    Title  = "Edit Group";
                    RaisePropertyChanged(nameof(IsEdit));
                }
            }
        }
Beispiel #3
0
        public override void OnNavigatingTo(NavigationParameters parameters)
        {
            if (parameters["group"] != null)
            {
                this.Group = (ShoutGroupDto)parameters["group"];
                RaisePropertyChanged(nameof(Group));
                ShoutName = Group.Name;
                TrackCost = Group.TrackCost;
                RaisePropertyChanged(nameof(ShoutName));
                //UsersInGroup = new ObservableCollection<ShoutUserDto>(Group.Users);
                UsersInGroup.Clear();
                UsersInGroup = new ObservableCollection <ShoutUserDto>(Group.Users);
                RaisePropertyChanged(nameof(UsersInGroup));
                //foreach (var u in Group.Users)
                //{
                //    UsersInGroup.Add(u);
                //}

                if (CurrentApp.Current.MainViewModel.GroupColourDictionary.ContainsKey(Group.ID))
                {
                    SelectedColour = CurrentApp.Current.MainViewModel.GroupColourDictionary[Group.ID];
                }
            }
            else
            {
                Random r = new Random();
                SelectedColour = MyColours[r.Next(19)];
            }

            if (parameters["shout"] != null)
            {
                ShoutFromEdit = (ShoutDto)parameters["shout"];
            }

            if (parameters["edit"] != null)
            {
                IsEdit = true;
            }
        }