コード例 #1
0
 public MainPage()
 {
     NavigationPage.SetHasNavigationBar(this, false);
     InitializeComponent();
     if (Connectivity.NetworkAccess != NetworkAccess.Internet)
     {
         DisplayAlert("Отсутствует подключение к сети", null, null, "OK");
         return;
     }
     first = ContentManager.GetEventOfTheDay();
     if (Event.Check)
     {
         ContentManager.GetActualEvents();
         Event.Check = false;
     }
     contactsListView.ItemsSource = ReturnFirst();
     LovedPage.LoaderLoved();//разблочить
     eventOfTheDayPicture.Source = first.Picture;
     eventOfTheDayLabelDesc.Text = first.Description;
     eventOfTheDayLabel.Text     = first.Title;
     if (PersonLogin.EmailStatic == null)
     {
         PersonLogin.NameStatic     = Preferences.Get("userName", "error");
         PersonLogin.EmailStatic    = Preferences.Get("userEmail", "error");
         PersonLogin.PhotoUrlStatic = Preferences.Get("userPhoto", "error");
     }
     CosmosLoad.InsertObject(new PersonLogin(PersonLogin.NameStatic, PersonLogin.EmailStatic,
                                             PersonLogin.PhotoUrlStatic));
     ReturnEarlier();
     MyListPage.events = ContentManager.ActualEvents;
 }
コード例 #2
0
ファイル: Detail.xaml.cs プロジェクト: alf3ratz/qSearcher_old
        private async void PlusButton_Clicked(object sender, EventArgs e)
        {
            if (!LovedPage.FavoritesList.Contains(CurrentEvent))
            {
                LovedPage.FavoritesList.Add(CurrentEvent);
                if (Connectivity.NetworkAccess == NetworkAccess.Internet)
                {
                    if (PersonLogin.NameStatic != "empty" && PersonLogin.NameStatic != "error")
                    {
                        try
                        {
                            var ev = CosmosLoad.GetObject <Event>(CurrentEvent.Title).Result;
                            if (ev != null)
                            {
                                CurrentEvent.Users = ev.Users;
                            }
                            var user = CosmosLoad.GetObject <PersonLogin>(PersonLogin.EmailStatic).Result;
                            if (user != null && !CurrentEvent.Users.Contains(user.Id))
                            {
                                CurrentEvent.Users.Add(user.Id);
                            }
                            await CosmosLoad.UpdateEvent(CurrentEvent);
                        }
                        catch (Exception)
                        {
                            await DisplayAlert("Отсутствует подключение к сети", null, null, "OK");
                        }
                    }
                }
                else
                {
                    await DisplayAlert("Отсутствует подключение к сети", null, null, "OK");
                    await DisplayActionSheet("Cобытие было добавлено в список избранного",
                                             "Другие пользователи не увидят вашу метку",
                                             null, null, null);
                }


                LovedPage.SaveFavorites();
            }
        }
コード例 #3
0
        public LikedListPage()
        {
            InitializeComponent();
            if (Connectivity.NetworkAccess != NetworkAccess.Internet)
            {
                DisplayAlert("Отсутствует подключение к сети", null, null, "OK");
                if (!flag)
                {
                    mainGrid.Children.Remove(backArrowGrid);
                }
                else
                {
                    flag = false;
                }
                return;
            }
            var a = CosmosLoad.GetObjects <Event>().Result;

            a.RemoveAll(e => e.Users.Count == 0 || e.Users.TrueForAll(u => CosmosLoad.GetObject <PersonLogin>(u).Result.Email == null));
            LikedList.ItemsSource = a;
        }
コード例 #4
0
ファイル: Detail.xaml.cs プロジェクト: alf3ratz/qSearcher_old
        private async void MinusButton_Clicked(object sender, EventArgs e)
        {
            Event evv = LovedPage.FavoritesList.Find(eve => eve.Title == CurrentEvent.Title);

            if (evv != null)
            {
                LovedPage.FavoritesList.Remove(evv);
                if (Connectivity.NetworkAccess == NetworkAccess.Internet)
                {
                    if (PersonLogin.NameStatic != "empty" && PersonLogin.NameStatic != "error")
                    {
                        try
                        {
                            var ev = CosmosLoad.GetObject <Event>(CurrentEvent.Title).Result;
                            if (ev != null)
                            {
                                CurrentEvent.Users = ev.Users;
                            }
                            var user = CosmosLoad.GetObject <PersonLogin>(PersonLogin.EmailStatic).Result;
                            if (CurrentEvent.Users.Contains(user.Id))
                            {
                                CurrentEvent.Users.Remove(user.Id);
                            }
                            await CosmosLoad.UpdateEvent(CurrentEvent);
                        }
                        catch (Exception)
                        {
                            await DisplayAlert("Отсутствует подключение к сети", null, null, "OK");
                        }
                    }
                }
                else
                {
                    await DisplayAlert("Отсутствует подключение к сети", null, null, "OK");
                    await DisplayActionSheet("Вы удалили событие из списка избранных",
                                             "Данные не отобразятся у других пользователей", null, null, null);
                }
                LovedPage.SaveFavorites();
            }
        }
コード例 #5
0
        async void Handle_ItemTapped(object sender, ItemTappedEventArgs e)
        {
            if (Connectivity.NetworkAccess != NetworkAccess.Internet)
            {
                await DisplayAlert("Отсутствует подключение к сети", null, null, "OK");
                await DisplayAlert("Вы не можете просмотреть информацию", null, null, "OK");

                return;
            }
            if (e.Item == null)
            {
                return;
            }
            var temp = ((ListView)sender).SelectedItem as Event;
            //List<string> userEmail = new List<string>();
            //List<string> userName= new List<string>();
            Dictionary <string, string> user = new Dictionary <string, string>();

            List <PersonLogin> users = new List <PersonLogin>();
            var details = ((ListView)sender).SelectedItem as Event;

            foreach (var item in details.Users)
            {
                users.Add(CosmosLoad.GetObject <PersonLogin>(item).Result);
            }
            if (users.Count == 0)
            {
                await DisplayAlert("Проблемы с подключением", null, "ОК");
            }
            else
            {
                foreach (var it in users)
                {
                    if (!it.LikeCheck)
                    {
                        if (!user.ContainsKey(it.Email))
                        {
                            if (it.Email != null && it.Email != "" && it.Email != "empty")
                            {
                                user.Add(it.Email, it.Name);
                            }
                        }
                    }
                }
            }
            if (user.Count == 0)
            {
                Event ver = CosmosLoad.GetObject <Event>(temp.Title).Result;
                CosmosLoad.DeleteObject <Event>(ver);

                OnAppearing();
            }
            else
            {
                List <string> lst = new List <string>();
                foreach (var item in user.Keys)
                {
                    lst.Add(user[item]);
                }
                var result = await DisplayActionSheet("Лайкнувшие", null, null, lst.ToArray());

                if (PersonLogin.EmailStatic != "empty" && PersonLogin.EmailStatic != null && result != null)
                {
                    foreach (var it in user.Keys)
                    {
                        if (user[it].Equals(result))
                        {
                            SendMessage(it, temp.Title);
                            return;
                        }
                    }
                }
                else
                {
                    await DisplayAlert("Вы не можете отправить сообщение!", "Вы должны войти в систему", "ОК");
                }
            }
        }