async void FacebookCheck(string id, int social, string email, string picture) { var responsefirst = await ClientGuanajoven.verifyemail(email); var y = checkError(responsefirst); if (checkError(responsefirst) != "Correo no encontrado") { //Enter to the system ShowProgress("Validando"); var response = await ClientGuanajoven.loginFacebook(email, id); // checkError(response); if (ValidateResponse(response, checkError(response))) { var user = JsonConvert.DeserializeObject <ResponseUsuario>(response); var posicion = await ClientGuanajoven.getPosition(user.data.api_token); user.data.posicion = ClientGuanajoven.Data(posicion); PropertiesManager.SaveUserInfo(user); ShowProgress(IProgressType.LogedIn); await Task.Delay(600); HideProgress(); await Navigation.PushModalAsync(new HomeDrawerPage()); } HideProgress(); } else { await Navigation.PushAsync(new SignUpPage(id, social, email, picture)); } }
async void LoginClicked(object sender, System.EventArgs e) { if (ValidateUI()) { CheckConnection(); ShowProgress("Validando"); var response = await ClientGuanajoven.signin(_email.Text, _password.Text); // checkError(response); if (ValidateResponse(response, checkError(response))) { var user = JsonConvert.DeserializeObject <ResponseUsuario>(response); var posicion = await ClientGuanajoven.getPosition(user.data.api_token); user.data.posicion = ClientGuanajoven.Data(posicion); PropertiesManager.SaveUserInfo(user); FirebaseObject firebase = new FirebaseObject(); firebase.os = "ios"; firebase.id_usuario = user.data.id + ""; firebase.device_token = App.CurrentApp.DeviceToken; //id de firebase_rg var sendtoken = await ClientGuanajoven.getIdFirebase(firebase); ShowProgress(IProgressType.LogedIn); await Task.Delay(600); HideProgress(); await Navigation.PushModalAsync(new HomeDrawerPage()); } HideProgress(); } }
async void EnviarMensaje(object sender, System.EventArgs e) { if (!string.IsNullOrEmpty(_entryMensaje.Text)) { var now = DateTime.Now; var user = PropertiesManager.GetUserInfo(); var me = new Mensaje(); me.api_token = user.data.api_token; me.mensaje = _entryMensaje.Text; ShowProgress("Enviando"); var message = await ClientGuanajoven.EnviarChat(me); HideProgress(); var isTrue = ClientGuanajoven.Data(message); if (isTrue == "true") { _items.Add(new ChatModel() { mensaje = _entryMensaje.Text, envia_usuario = 1, created_at = now.ToString("u").Substring(0, now.ToString("u").Length - 1), }); ScrollToLast(false); _entryMensaje.Text = ""; await _dialogWriteMessage.FadeTo(0, 200, Easing.SinOut); _dialogWriteMessage.IsVisible = false; } } }
async void SignUpClicked(object sender, System.EventArgs e) { if (isNull(_email.Text)) { await DisplayAlert("Error", "Falta correo", "Aceptar"); return; } if (isNull(_password.Text)) { await DisplayAlert("Error", "Falta contraseña", "Aceptar"); return; } if (isNull(_confirmpassword.Text)) { await DisplayAlert("Error", "Falta confirmar contraseña", "Aceptar"); return; } if (isNull(_curp.Text)) { await DisplayAlert("Error", "Falta CURP", "Aceptar"); return; } if (isNull(_apellidpat.Text)) { await DisplayAlert("Error", "Falta Apellido paterno", "Aceptar"); return; } if (isNull(_apellidmat.Text)) { await DisplayAlert("Error", "Falta Apellido materno", "Aceptar"); return; } if (isNull(_nombre.Text)) { await DisplayAlert("Error", "Falta nombre", "Aceptar"); return; } if (isNull(fecha_nac.Text)) { await DisplayAlert("Error", "Falta fecha de nacimiento", "Aceptar"); return; } if (isNull(_cp.Text)) { await DisplayAlert("Error", "Falta código postal", "Aceptar"); return; } if (pickergenre.SelectedIndex == 0) { await DisplayAlert("Error", "Seleccione un género", "Aceptar"); return; } if (pickerstate.SelectedIndex == 0) { await DisplayAlert("Error", "Seleccione un estado", "Aceptar"); return; } try { if (facebook != null || google != null) { HttpClient client = new HttpClient(); client.MaxResponseContentBufferSize = 256000; Stream stream = await client.GetStreamAsync(url); var xy = stream; var y = GetImageStreamAsBytes(xy); imageurl = "data:image/jpeg;base64," + Convert.ToBase64String(y); aux = imageurl; } else { aux = "data:image/jpeg;base64," + Convert.ToBase64String(bytes); } } catch (Exception ex) { await DisplayAlert("Error", "Falta agregar una imagen", "Aceptar"); return; } if (_confirmpassword.Text == _password.Text) { var email = _email.Text; var password = _password.Text; var confirmarPassword = _confirmpassword.Text; var curp = _curp.Text; var apellidoPaterno = _apellidpat.Text; var apellidoMaterno = _apellidmat.Text; var nombre = _nombre.Text; var genero = getGenre(pickergenre); var fechaNacimiento = fecha_nac.Text; var codigoPostal = _cp.Text; var estadoNacimiento = abrevEstado(pickerstate); var rutaImagen = aux; UsuarioPOJO user = new UsuarioPOJO(); user.email = email; user.password = password; user.confirmar_password = confirmarPassword; user.curp = curp; user.apellido_paterno = apellidoPaterno; user.apellido_materno = apellidoMaterno; user.nombre = nombre; user.genero = genero + ""; user.fecha_nacimiento = fechaNacimiento; user.codigo_postal = codigoPostal; user.estado_nacimiento = estadoNacimiento; user.ruta_imagen = rutaImagen; user.id_google = google; user.id_facebook = facebook; if (ValidateUI()) { CheckConnection(); ShowProgress("Validando"); var response = await ClientGuanajoven.registerUser(user); if (ValidateResponseRegister(response)) { var newuser = JsonConvert.DeserializeObject <ResponseUsuario>(response); //getposition var posicion = await ClientGuanajoven.getPosition(newuser.data.api_token); newuser.data.posicion = ClientGuanajoven.Data(posicion); await Task.Delay(600); ShowProgress(IProgressType.LogedIn); PropertiesManager.SaveUserInfo(newuser); HideProgress(); await Navigation.PushModalAsync(new HomeDrawerPage()); } HideProgress(); } } else { await DisplayAlert("Error", "Verifique que sus contraseñas coincidan", "Aceptar"); } //await Navigation.PushModalAsync(new SignUpPage()); // }
async void CheckNotifications() { if (App.CurrentApp.FromRemoteNotification) { /*await DisplayAlert(App.CurrentApp.NotificationData["title"], * //App.CurrentApp.NotificationData["body"], * string.Join(",", App.CurrentApp.NotificationData.Keys) + ":" + string.Join(",", App.CurrentApp.NotificationData.Values), + "Aceptar");*/ if (App.CurrentApp.NotificationData.ContainsKey("url")) { if (App.CurrentApp.NotificationData["url"] != "chat") { await DisplayAlert(App.CurrentApp.NotificationData["title"], App.CurrentApp.NotificationData["body"], "Aceptar"); App.CurrentApp.RealmInstance.Write(() => { var notifi = new Notificacion(); notifi.url = App.CurrentApp.NotificationData["url"]; notifi.titulo = App.CurrentApp.NotificationData["title"]; notifi.mensaje = App.CurrentApp.NotificationData["body"]; notifi.fecha_emision = DateTime.Now.ToString("u"); App.CurrentApp.RealmInstance.Add(notifi); }); Device.OpenUri(new System.Uri(App.CurrentApp.NotificationData["url"])); } else { //ES CHAT UIMessage.ShowToast("¡Te enviaron un nuevo mensaje!", ToastMessage.ToastPosition.TOP, ToastMessage.Duration.Long , null, Color.FromHex("#003464")); } } else { string url = null; if (App.CurrentApp.NotificationData.ContainsKey("content")) { url = await ClientGuanajoven.GetURL(App.CurrentApp.NotificationData["title"], App.CurrentApp.NotificationData["body"]); url = ClientGuanajoven.Data(url); //await DisplayAlert("","url:"+ ClientGuanajoven.Data(url),"k"); } App.CurrentApp.RealmInstance.Write(() => { var notifi = new Notificacion(); notifi.url = url; notifi.titulo = App.CurrentApp.NotificationData["title"]; notifi.mensaje = App.CurrentApp.NotificationData["body"]; notifi.fecha_emision = DateTime.Now.ToString("u"); App.CurrentApp.RealmInstance.Add(notifi); }); if (url != null) { if (url != "chat" && url != "") { await DisplayAlert(App.CurrentApp.NotificationData["title"], App.CurrentApp.NotificationData["body"], "Aceptar"); Device.OpenUri(new System.Uri(url)); } else { //chat UIMessage.ShowToast("¡Te enviaron un nuevo mensaje!", ToastMessage.ToastPosition.TOP, ToastMessage.Duration.Long , null, Color.FromHex("#003464")); } } } } }
async Task <string> getPuntaje(string apitoken) { var position = await ClientGuanajoven.getPosition(apitoken); return(ClientGuanajoven.Data(position)); }