public async Task <bool> sendResultadoExamen(string asignatura, int numRespuestasCorrectas, int numeroPreguntas, List <PreguntaRespondidaInterface> lista, long tiempo, string tipoExamen) { string json = ""; List <RespuestaPregunta> list = new List <RespuestaPregunta>(); if (tipoExamen == "na") { list = RespuestaPregunta.parseRespuestaPregunta(lista.Cast <PreguntaRespondida>().ToList()); } else if (tipoExamen == "ma") { list = RespuestaPregunta.parseRespuestaPregunta(lista.Cast <PreguntaMultiRespondida>().ToList()); } else if (tipoExamen == "pa") { list = RespuestaPregunta.parseRespuestaPregunta(lista.Cast <PreguntaParejasRespondida>().ToList()); } else if (tipoExamen == "sa") { list = RespuestaPregunta.parseRespuestaPregunta(lista.Cast <PreguntaRespondidaCorta>().ToList()); } else { return(false); } json = JsonConvert.SerializeObject(list); string response = await Comunicacion.sendResults(AplicationSettings.getToken(), AplicationSettings.getIdTest(), json, tiempo + "", numRespuestasCorrectas + "", tipoExamen); //Continuar por aqui... return(true); }
public async Task <bool> updateMensajesTablon(int idInit, int idFin, int idFaculty) { string response = await Comunicacion.updateMessages(AplicationSettings.getToken(), idInit + "", idFin + "", idFaculty + ""); JObject json = JObject.Parse(response); if ((string)json.SelectToken("error") == "200") { List <UpdateMensajeTablon> listUpdate = new List <UpdateMensajeTablon>(); JArray mensajeJArray = (JArray)json.SelectToken("data"); foreach (var m in mensajeJArray) { listUpdate.Add(new UpdateMensajeTablon(Convert.ToInt32((string)m.SelectToken("pk")), Convert.ToInt32((string)m.SelectToken("num_fav")), Convert.ToBoolean((string)m.SelectToken("user_favorited")), Convert.ToBoolean((string)m.SelectToken("borrado")))); } dataBase.updateInfoMensajesTablon(listUpdate); if (updateMensajesTablonCompletado != null) { updateMensajesTablonCompletado(this, new UpdateMensajesEventArgs(listUpdate)); } return(true); } return(false); }
public async Task <bool> getExamenCortas(string asignatura, string numPreguntas) { List <PreguntaInterface> preguntasExamen = new List <PreguntaInterface>(); string response = await Comunicacion.getExamen(AplicationSettings.getToken(), asignatura, "sa", numPreguntas); JObject o = JObject.Parse(response); if ((string)o.SelectToken("error") == "200") { AplicationSettings.setIdTest((string)o.SelectToken("test")); JArray preguntas = (JArray)o.SelectToken("data"); foreach (var p in preguntas) { preguntasExamen.Add(new PreguntaCortaRespuesta(Convert.ToInt32((string)p.SelectToken("pk")), (string)p.SelectToken("enunciado"), (string)p.SelectToken("respuestaCorta"), Convert.ToInt32((string)p.SelectToken("tema")))); } if (getExanenCompletado != null) { getExanenCompletado(this, new ExamenEventArgs(preguntasExamen)); } return(true); } return(false); }
public async Task <bool> getThemeFromServer(string asignatura) { List <Tema> temasAsignatura = new List <Tema>(); string response = await Comunicacion.getTemaAsignatura(AplicationSettings.getToken(), asignatura); JObject o = JObject.Parse(response); if ((string)o.SelectToken("error") == "200") { JArray temas = (JArray)o.SelectToken("data"); foreach (var t in temas) { temasAsignatura.Add(new Tema(Convert.ToInt32((string)t.SelectToken("pk")), (string)t.SelectToken("nombre"), Convert.ToInt32(asignatura))); } if (getTemasServerCompletado != null) { getTemasServerCompletado(this, new TemaEventServerArgs(temasAsignatura)); } DB_Tema.insertAll(temasAsignatura); return(true); } return(false); }
//Funcion que se llama cuando el usuario pulsa el boton "Aceptar". //Esta funcuion te redirecciona a la ventana principal de la aplicación si el usuario existe, //en caso contrario te muestra un mensaje de error. private async void Aceptar_Click(object sender, RoutedEventArgs e) { Task <bool> tarea = usuarioCorrecto(Usuario.Text, Contraseña.Password); //Comprobar si el usuario y contraseña es el correcto. if (await tarea) { if (Usuario.Text == "root") { NavigationService.Navigate(new Uri("/View/AdminVista.xaml", UriKind.Relative)); } else { AplicationSettings.RegistrarUsuario(Usuario.Text, Contraseña.Password); //NavigationService.Navigate(new Uri("/View/Inicial.xaml", UriKind.Relative)); //NavigationService.GoBack(); NavigationService.Navigate(new Uri("/View/Principal.xaml", UriKind.Relative)); } } else { MessageBox.Show("Usuario o contraseña incorrectos."); Contraseña.Password = ""; } }
public async void EnviarMensajeTablon(string message) { mostarMensaje("Enviando mensaje"); await servicioMensajes.postMensajeTablon(message, AplicationSettings.getIdTablonMensajes()); ocultarMensaje(); }
private async void Inicializa(object sender, RoutedEventArgs e) { servicioExamen.getExanenCompletado += (s, a) => { preguntas = a.preguntas.Cast <PreguntaCortaRespuesta>().ToList(); if (preguntas.Count > 0) { respuestas = new string[preguntas.Count]; for (int i = 0; i < respuestas.Length; i++) { respuestas[i] = ""; } posicion = 0; actualizaVista(); GridCargando.Visibility = System.Windows.Visibility.Collapsed; tiempoTranscurrido = new Stopwatch(); tiempoTranscurrido.Start(); } }; if (idTema == "") { await servicioExamen.getExamenCortas(idAsignatura, AplicationSettings.getNumeroDePreguntasExamen()); } else { await servicioExamen.getExamenCortas(idAsignatura, idTema, AplicationSettings.getNumeroDePreguntasExamen()); } }
private void BotonAgregarAsignatura_Click(object sender, RoutedEventArgs e) { //BD_AsignaturaExamen.insert(elementoSelecionadoAsignatura()); Comunicacion_Asignatura.addAsingaturaFavorito(AplicationSettings.getToken(), elementoSelecionadoAsignatura()); BotonAgregarAsignatura.IsEnabled = false; Notificacion.Text = elementoSelecionadoAsignatura().nombre + " se añadio"; }
private async void Enviar_Click(object sender, RoutedEventArgs e) { if (ListItemCurso.SelectedItem == null || ListItemCurso.SelectedItem.ToString() == "") { MessageBox.Show("Selecciona un curso"); return; } if (ListItemAño.SelectedItem == null || ListItemAño.SelectedItem.ToString() == "") { MessageBox.Show("Selecciona un año"); return; } if (ListItemAsignatura.SelectedItem == null || ListItemAsignatura.SelectedItem.ToString() == "") { MessageBox.Show("Selecciona una asignatura"); return; } if (botonPulsado == 0) { MessageBox.Show("Selecciona almenos una imagen (Pulsa el boton + )"); return; } GridCargando.Visibility = System.Windows.Visibility.Visible; string eltema = null; if (ListItemTema.SelectedItem != null && ListItemTema.SelectedItem.ToString() != "") { eltema = searchIdTheme() + ""; } string masDeUnaImagen = "True"; if (botonPulsado > 1) { masDeUnaImagen = "False"; } string token = await Comunicacion.createDocument(AplicationSettings.getToken(), searchIdAsignatrua() + "", eltema, ListItemAño.SelectedItem.ToString(), "", "notes", masDeUnaImagen, TextBoxDescription.Text, fotos.ElementAt(0)); for (int i = 1; i < fotos.Count; i++) { if (i + 1 == fotos.Count) { await Comunicacion.updateDocument(token, "notes", "True", (i + 1) + "", fotos.ElementAt(i)); } else { await Comunicacion.updateDocument(token, "notes", "False", (i + 1) + "", fotos.ElementAt(i)); } } GridCargando.Visibility = System.Windows.Visibility.Collapsed; MessageBox.Show("Mensaje subido, gracias por tu colaboracion"); }
public string Register() { string response = "Operation Timeout Register"; char comunication = 'r'; // We are re-using the _socket object initialized in the Connect method if (_socket != null) { //Creo los credenciales del registro. //ChatRegister credenciales = new ChatRegister(AplicationSettings.getToken(), AplicationSettings.getIdUniversidadUsuario()); MensajeMovilLogin credenciales = new MensajeMovilLogin(AplicationSettings.getToken(), AplicationSettings.getIdUniversidadUsuario()); //Paso la credencial a un string que tenga el JSON string credencialesJSON = JsonConvert.SerializeObject(credenciales); // Create SocketAsyncEventArgs context object SocketAsyncEventArgs socketEventArg = new SocketAsyncEventArgs(); // Set properties on context object socketEventArg.RemoteEndPoint = _socket.RemoteEndPoint; socketEventArg.UserToken = null; // Inline event handler for the Completed event. // Note: This event handler was implemented inline in order // to make this method self-contained. socketEventArg.Completed += new EventHandler <SocketAsyncEventArgs>(delegate(object s, SocketAsyncEventArgs e) { if (comunication == 'r') { response = e.SocketError.ToString(); // Unblock the UI thread _clientDone_register.Set(); } }); // Add the data to be sent into the buffer byte[] payload = Encoding.UTF8.GetBytes(credencialesJSON); socketEventArg.SetBuffer(payload, 0, payload.Length); // Sets the state of the event to nonsignaled, causing threads to block _clientDone_register.Reset(); // Make an asynchronous Send request over the socket _socket.SendAsync(socketEventArg); // Block the UI thread for a maximum of TIMEOUT_MILLISECONDS milliseconds. // If no response comes back within this time then proceed _clientDone_register.WaitOne(TIMEOUT_MILLISECONDS); } else { response = "Socket is not initialized"; } return(response); }
public async void CargarMensajesTablon() { mostarMensaje("Cargando mensajes"); await servicioMensajes.getMensajesTablonFromServer(AplicationSettings.getIdTablonMensajes()); //servicioMensajes.getMensajesTablon(); //System.Threading.Thread.Sleep(5000); ocultarMensaje(); }
public async void setTema(string asignatura, string idTema) { mostarMensaje("Cargando Examen"); await servicioExamen.getExamenNormal(asignatura, idTema, AplicationSettings.getNumeroDePreguntasExamen()); idAsignatura = asignatura; ocultarMensaje(); tiempoTranscurrido.Start(); }
private async Task <bool> sendImagePerfilServer(byte[] b) { if (b.Length > 0) { Comunicacion.sendImagePerfil(AplicationSettings.getToken(), b); return(true); } return(false); }
public async void setAsignatura(string asignatura) { mostarMensaje("Cargando Examen"); //Aun que el visual se queja de esto, asi esta bien. await servicioExamen.getExamenNormal(asignatura, AplicationSettings.getNumeroDePreguntasExamen()); idAsignatura = asignatura; ocultarMensaje(); tiempoTranscurrido.Start(); }
private async void obtenerExamenApuntes(string idSubject, string idTheme, string type) { var doc = await Comunicacion.getDocuments(AplicationSettings.getToken(), idSubject, idTheme, type); foreach (var d in doc) { documentos.Add(d); } this.OnPropertyChanged("Documentos"); }
private async void Button_Click_1(object sender, RoutedEventArgs e) { if (terminalModel == "") { terminalModel = await DeviceInfoHelper.GetDeviceModelAsync(); } if (termnalPlataform == "") { termnalPlataform = "WindowsPhone " + Environment.OSVersion.Version.ToString(); } if (terminalDisplaysize == "") { terminalDisplaysize = Application.Current.Host.Content.ActualWidth + "x" + Application.Current.Host.Content.ActualHeight; } if (!controlUser) { NombreUsuario.BorderBrush = new SolidColorBrush(Colors.Red); MessageBox.Show("Nombre de usuario no valido"); } else if (!controlPass) { PasswordUsuario.BorderBrush = new SolidColorBrush(Colors.Red); MessageBox.Show("Contraseña demasiado corta"); } else if (!controlEmail) { EmailUsuario.BorderBrush = new SolidColorBrush(Colors.Red); MessageBox.Show("Email no valido"); } else if (id_provincia == 0) { ListItemProvincias.BorderBrush = new SolidColorBrush(Colors.Red); MessageBox.Show("Seleciona una provincia"); } else if (id_universidad == 0) { ListItemUniversidad.BorderBrush = new SolidColorBrush(Colors.Red); MessageBox.Show("Seleciona una universidad"); } else if (id_facultad == 0) { ListItemFacultades.BorderBrush = new SolidColorBrush(Colors.Red); MessageBox.Show("Seleciona una facultad"); } else if (await Comunicacion_Usuario.RegistrarUsuario(NombreUsuario.Text, PasswordUsuario.Password, EmailUsuario.Text, id_universidad + "", id_facultad + "", terminalModel, termnalPlataform, terminalDisplaysize)) { AplicationSettings.RegistrarUsuario(NombreUsuario.Text, PasswordUsuario.Password); NavigationService.Navigate(new Uri("/View/Principal.xaml", UriKind.Relative)); } else { MessageBox.Show(AplicationSettings.getErrorServer()); AplicationSettings.setErrorServer(""); } }
private void BotonBorrarAsignatura_Click(object sender, RoutedEventArgs e) { Comunicacion_Asignatura.deleteAsingaturaFavorito(AplicationSettings.getToken(), elementoSelecionadoAsignatura()); var asignatura = elementoSelecionadoAsignatura().nombre; Notificacion.Text = asignatura + " ha sido borrada"; asignaturas.Remove(elementoSelecionadoAsignatura()); rellenarList(); BotonBorrarAsignatura.IsEnabled = false; Notificacion.Text = ""; }
private void bw_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e) { foreach (var m in mensajesHilo) { ponerMensaje(m, m.userID == Convert.ToInt32(AplicationSettings.getIdUsuario())); } if (!bw.IsBusy) { bw.RunWorkerAsync(); } }
public async Task <bool> borrarMensaje(string idMensaje) { string response = await Comunicacion.deleteMensaje(AplicationSettings.getToken(), idMensaje); JObject json = JObject.Parse(response); if ((string)json.SelectToken("error") == "200") { return(true); } return(false); }
public async Task <bool> getMensajesTablonFromServer(string idFacultad) { List <MensajeTablon> mensajesNuevos = new List <MensajeTablon>(); var asd = dataBase.getMAXIdFormMensajeTablon(idFacultad); string response = await Comunicacion.getMensajes(AplicationSettings.getToken(), dataBase.getMAXIdFormMensajeTablon(idFacultad) + "", idFacultad); JObject json = JObject.Parse(response); if ((string)json.SelectToken("error") == "200") { List <int> idUsuariosDistintos = new List <int>(); JArray jArray = (JArray)json["data"]; foreach (var mensaje in jArray) { JObject userInfo = (JObject)mensaje.SelectToken("usuario"); string asdasdasdsa = (string)userInfo.SelectToken("image"); int idUsuarioActual = Convert.ToInt32((string)userInfo.SelectToken("pk")); mensajesNuevos.Add(new MensajeTablon( Convert.ToInt32((string)mensaje.SelectToken("pk")), idUsuarioActual, (string)userInfo.SelectToken("username"), (string)mensaje.SelectToken("texto"), //Comunicacion.baseURL + (string)userInfo.SelectToken("image"), Comunicacion.baseURL + "media/users/pic_image_" + (string)userInfo.SelectToken("pk") + ".jpg", Convert.ToInt32((string)mensaje.SelectToken("fecha_creacion")), Convert.ToInt32(idFacultad), Convert.ToInt32((string)mensaje.SelectToken("num_fav")), Convert.ToBoolean((string)mensaje.SelectToken("user_favorited")))); if (idUsuariosDistintos.Contains(idUsuarioActual)) { idUsuariosDistintos.Add(idUsuarioActual); } } dataBase.insertAll(mensajesNuevos); if (getMensajesTablonServerCompletado != null) { getMensajesTablonServerCompletado(this, new MensajesTablonServerEventArgs(mensajesNuevos)); } return(true); } else if ((string)json.SelectToken("error") == "201") { if (getMensajesTablonServerCompletado != null) { getMensajesTablonServerCompletado(this, new MensajesTablonServerEventArgs(mensajesNuevos)); } } return(false); }
private void Inicilizar(object sender, RoutedEventArgs e) { imagenPerfil.Source = new BitmapImage(new Uri(Comunicacion.baseURL + "media/users/pic_image_" + AplicationSettings.getIdUsuario() + ".jpg", UriKind.Absolute)); if (AplicationSettings.GetAnonimo()) { anonimo.Background = new SolidColorBrush(Colors.White); } if (AplicationSettings.GetProfesor()) { BotonProfesor.Visibility = System.Windows.Visibility.Visible; } }
private void anonimo_Click_1(object sender, RoutedEventArgs e) { if (AplicationSettings.GetAnonimo()) { anonimo.Background = new SolidColorBrush(Colors.Black); AplicationSettings.SetAnonimo(false); } else { anonimo.Background = new SolidColorBrush(Colors.White); AplicationSettings.SetAnonimo(true); } }
public async Task <bool> favMesajeTablon(MensajeTablon message) { string response = await Comunicacion.favoriteMessage(AplicationSettings.getToken(), message.identificador + ""); JObject json = JObject.Parse(response); if ((string)json.SelectToken("error") == "200") { dataBase.updateMessage(message); return(true); } return(false); }
//Comando que se ejecuta al pulsar el boton /*public ICommand getMensajesTablon * { * get; * private set; * } * * public ICommand postMensajesTablon * { * get; * private set; * }*/ /*public ICommand GetMensajesTablon * { * get * { * if (getMensajesTablon == null) * { * getMensajesTablon = new ActionCommand(() => * { * servicioMensajes.getMensajesTablon(); * }); * } * * return getMensajesTablon; * } * }*/ //Constructor. public MensajesTablonViewModel() { mensajes = new ObservableCollection <MensajeTablon>(); servicioMensajes.getMensajesTablonCompletado += (s, a) => { //mensajes = new ObservableCollection<MensajeTablon>(a.mensajes); //if (a.mensajes.Count > 0) // servicioMensajes.updateMensajesTablon(a.mensajes[a.mensajes.Count - 1].identificador, a.mensajes[0].identificador, a.mensajes[0].identificadorTablon); //this.OnPropertyChanged("Mensajes"); insertarNuevosMensajes(a.mensajes); //servicioMensajes.getMensajesTablonFromServer(AplicationSettings.getIdTablonMensajes()); if (mensajes.Count > 0) { servicioMensajes.updateMensajesTablon(mensajes[mensajes.Count - 1].identificador, mensajes[0].identificador, mensajes[0].identificadorTablon); } this.OnPropertyChanged("Mensajes"); }; servicioMensajes.getMensajesTablonServerCompletado += (s, a) => { //if (mensajes.Count > 0) //servicioMensajes.updateMensajesTablon(mensajes[mensajes.Count - 1].identificador, mensajes[0].identificador, mensajes[0].identificadorTablon); insertarNuevosMensajes(a.mensajes); this.OnPropertyChanged("Mensajes"); }; servicioMensajes.updateMensajesTablonCompletado += (s, a) => { servicioMensajes.getMensajesTablonFromServer(AplicationSettings.getIdTablonMensajes()); //Hacer lo que sea cuando toque //En caso de poner el numero de likes a los corazones hacerlo aqui. foreach (var m in a.mensajes) { if (m.deleted) { for (int i = 0; i < mensajes.Count; i++) { if (m.id == mensajes[i].identificador) { mensajes.RemoveAt(i); } } } } }; visibilidadMensaje = Visibility.Collapsed; servicioMensajes.getMensajesTablon(); }
private void Inicilizar(object sender, RoutedEventArgs e) { if (ListItemCurso.Items.Count == 0)// Este if evita el problema de que salga mucash veces el 1 2 3 4 { //Empezamos rellenado el ListItem del curso ListItemCurso.Items.Add(""); ListItemCurso.Items.Add("1"); ListItemCurso.Items.Add("2"); ListItemCurso.Items.Add("3"); ListItemCurso.Items.Add("4"); //Asignamos El nombre de la facultad nombreFacultad.Text = BD_Facultad.selectById(Convert.ToInt32(AplicationSettings.getIdFacultadUsuario())).nombre; //Asignamos el nombre de la universidad nombreUniversidad.Text = BD_Universidad.selectById(Convert.ToInt32(AplicationSettings.getIdUniversidadUsuario())).nombre; } }
public static async Task <bool> CambiarFacultad(string idFacultad, string pass) { string result = await Comunicacion.cambiarFacultad(AplicationSettings.getToken(), pass, idFacultad); JObject o = JObject.Parse(result); if ((string)o.SelectToken("error") == "200") { return(true); } else { AplicationSettings.setErrorServer((string)o.SelectToken("error_msg")); return(false); } }
public static async Task <bool> CambiarContraseña(string antiguaPass, string nuevaPass) { string result = await Comunicacion.cambiarContraseña(AplicationSettings.getToken(), antiguaPass, nuevaPass); JObject o = JObject.Parse(result); if ((string)o.SelectToken("error") == "200") { return(true); } else { AplicationSettings.setErrorServer((string)o.SelectToken("error_msg")); return(false); } }
private void cargarMensajes() { List <MensajeServerMensaje> mensajes = BDMensajes.getMessagesFromRoom(sala); if (mensajes == null) { //MessageBox.Show("El mensaje que estas intentando acceder ha sido borrado"); } else { foreach (var m in mensajes) { ponerMensaje(m, m.userID == Convert.ToInt32(AplicationSettings.getIdUsuario())); } } }
private async void PhoneApplicationPage_Loaded(object sender, RoutedEventArgs e) { ////Pie Chart Data Source //ObservableCollection<PieData> PieDataCollection = new ObservableCollection<PieData>() //{ // new PieData() { Title = "Correctas", Value = 60 }, // new PieData() { Title = "Falladas", Value = 25 }, // new PieData() { Title = "Sin Contestar", Value = 5 } //}; //PieChart.DataSource = PieDataCollection; ////Line Chart Data Source //ObservableCollection<LineData> LineDataCollection = new ObservableCollection<LineData>() //{ // new LineData { Category = "E1", Line1 = 80, Line2 = 40, Line3 = 50 }, // new LineData { Category = "E2", Line1 = 50, Line2 = 70, Line3 = 40 }, // new LineData { Category = "E3", Line1 = 60, Line2 = 50, Line3 = 20 }, // new LineData { Category = "E4", Line1 = 10, Line2 = 30, Line3 = 50 }, // new LineData { Category = "E5", Line1 = 40, Line2 = 10, Line3 = 70 } //}; //LineChart.DataSource = LineDataCollection; estadisticas = await Comunicacion.getStatic(AplicationSettings.getToken()); if (estadisticas.test != null) { ObservableCollection <PieData> PieDataCollection = new ObservableCollection <PieData>(); PieDataCollection.Add(new PieData("Correctas", estadisticas.per_correcta)); PieDataCollection.Add(new PieData("Incorrectas", estadisticas.per_incorrecta)); PieDataCollection.Add(new PieData("No Respondidas", estadisticas.per_noRespondida)); PieChart.DataSource = PieDataCollection; ObservableCollection <LineData> LineDataCollection = new ObservableCollection <LineData>(); int i = 1; foreach (var a in estadisticas.test) { LineDataCollection.Add(new LineData { Category = "Test" + i, Line1 = a.correctasSobreCien(), Line2 = a.falladasSobreCien(), Line3 = a.sinResponderSobreCien() }); i++; } LineChart.DataSource = LineDataCollection; NotaMedia.Text = (double)(estadisticas.per_correcta / 10) + ""; TiempoMedio.Text = (double)(estadisticas.avg_tiempo / 1000) + " s"; } }
public static async Task <bool> RegistrarUsuario(string usuario, string contraseña, string correo, string uni, string facul, string model, string platform, string displaysize) { string result = await Comunicacion.registrarUsuario(usuario, contraseña, correo, uni, facul, model, platform, displaysize); JObject o = JObject.Parse(result); if ((string)o.SelectToken("error") == "200") { savesPropertys(o); return(true); } else if ((string)o.SelectToken("error") == "406") { AplicationSettings.setErrorServer((string)o.SelectToken("error_msg")); } return(false); }