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; }
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(); } }
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; }
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(); } }
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("Вы не можете отправить сообщение!", "Вы должны войти в систему", "ОК"); } } }