Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorsreyes <sreyes@dataworks.com.py>2014-09-30 12:55:41 (GMT)
committer sreyes <sreyes@dataworks.com.py>2014-09-30 12:55:41 (GMT)
commit0a25b660f3decececd0bd6c88761c2d4a492b4ed (patch)
treef682eb66c5bb11c513831ea75e5020230e097000
parentd7575563a46b0bbd8f27e4c079c6d404206c413e (diff)
parent5270f36069849801c0949a922ca2b3de031003d4 (diff)
Merge remote-tracking branch 'remotes/origin/Cecilia' into samurey
Conflicts: EjercitarServer/build/classes/beans/AdministracionBean.class EjercitarServer/build/classes/beans/AdministracionBeanRemote.class EjercitarServer/build/classes/beans/EjercitarWSBean.class EjercitarWeb/build/classes/src/NuevoEjercicioServlet.class EjercitarWeb/build/classes/src/NuevoTemaServlet.class
-rw-r--r--EjercitarJPA/src/model/Alumno.java6
-rw-r--r--EjercitarJPA/src/model/Curso.java6
-rw-r--r--EjercitarJPA/src/model/Profesor.java8
-rw-r--r--EjercitarServer/build/classes/META-INF/MANIFEST.MF2
-rw-r--r--EjercitarServer/build/classes/beans/red_alumno_1.xdsl60
-rw-r--r--EjercitarServer/build/classes/red_alumno_1.xdsl60
-rw-r--r--EjercitarServer/build/classes/red_base_curso_1.xdsl60
-rw-r--r--EjercitarServer/ejbModule/beans/EjercitarWSBean.java12
-rw-r--r--EjercitarServer/ejbModule/beans/Simulacion.java72
-rw-r--r--EjercitarWeb/WebContent/Asignatura.jsp2
-rw-r--r--EjercitarWeb/WebContent/Concepto.jsp19
-rw-r--r--EjercitarWeb/WebContent/Ejercicios.jsp24
-rw-r--r--EjercitarWeb/WebContent/Tarea.jsp2
-rw-r--r--EjercitarWeb/WebContent/concepto_ed.jsp21
-rw-r--r--EjercitarWeb/WebContent/js/validaciones.js113
-rw-r--r--EjercitarWeb/WebContent/profesor.jsp11
-rw-r--r--EjercitarWeb/src/src/EditarConceptoServlet.java8
-rw-r--r--EjercitarWeb/src/src/NuevaAsignaturaServlet.java5
-rw-r--r--EjercitarWeb/src/src/NuevoConceptoServlet.java9
-rw-r--r--EjercitarWeb/src/src/NuevoEjercicioServlet.java15
20 files changed, 258 insertions, 257 deletions
diff --git a/EjercitarJPA/src/model/Alumno.java b/EjercitarJPA/src/model/Alumno.java
index 45d1fbb..b878a19 100644
--- a/EjercitarJPA/src/model/Alumno.java
+++ b/EjercitarJPA/src/model/Alumno.java
@@ -73,13 +73,13 @@ public class Alumno implements Serializable {
@ManyToOne
private Curso curso;
@Transient
- private String tipoAlumno;
+ private Double tipoAlumno;
- public String getTipoAlumno() {
+ public Double getTipoAlumno() {
return tipoAlumno;
}
- public void setTipoAlumno(String tipoAlumno) {
+ public void setTipoAlumno(Double tipoAlumno) {
this.tipoAlumno = tipoAlumno;
}
diff --git a/EjercitarJPA/src/model/Curso.java b/EjercitarJPA/src/model/Curso.java
index cf34ae6..dea2e82 100644
--- a/EjercitarJPA/src/model/Curso.java
+++ b/EjercitarJPA/src/model/Curso.java
@@ -9,6 +9,7 @@ import java.util.List;
import javax.persistence.Basic;
import javax.persistence.Column;
import javax.persistence.Entity;
+import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
@@ -49,10 +50,11 @@ public class Curso implements Serializable {
@Size(max = 1)
@Column(name = "turno")
private String turno;
- @JoinTable(name = "curso_profesor", joinColumns = {
+ /*@JoinTable(name = "curso_profesor", joinColumns = {
@JoinColumn(name = "id_curso", referencedColumnName = "id_curso")}, inverseJoinColumns = {
@JoinColumn(name = "id_profesor", referencedColumnName = "id_profesor")})
- @ManyToMany
+ @ManyToMany*/
+ @ManyToMany(mappedBy = "cursoList", fetch=FetchType.EAGER)
private List<Profesor> profesorList;
@JoinColumn(name = "escuela", referencedColumnName = "id_escuela")
@ManyToOne
diff --git a/EjercitarJPA/src/model/Profesor.java b/EjercitarJPA/src/model/Profesor.java
index 1aca780..76a14d4 100644
--- a/EjercitarJPA/src/model/Profesor.java
+++ b/EjercitarJPA/src/model/Profesor.java
@@ -14,6 +14,8 @@ import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.JoinTable;
import javax.persistence.ManyToMany;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
@@ -72,7 +74,11 @@ public class Profesor implements Serializable {
@Size(max = 10)
@Column(name = "password")
private String password;
- @ManyToMany(mappedBy = "profesorList", fetch=FetchType.EAGER)
+ //@ManyToMany(mappedBy = "profesorList", fetch=FetchType.EAGER)
+ @JoinTable(name = "curso_profesor", joinColumns = {
+ @JoinColumn(name = "id_profesor", referencedColumnName = "id_profesor")}, inverseJoinColumns = {
+ @JoinColumn(name = "id_curso", referencedColumnName = "id_curso")})
+ @ManyToMany
private List<Curso> cursoList;
@OneToMany(mappedBy = "profesor")
private List<Ejercicio> ejercicioList;
diff --git a/EjercitarServer/build/classes/META-INF/MANIFEST.MF b/EjercitarServer/build/classes/META-INF/MANIFEST.MF
deleted file mode 100644
index 59499bc..0000000
--- a/EjercitarServer/build/classes/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,2 +0,0 @@
-Manifest-Version: 1.0
-
diff --git a/EjercitarServer/build/classes/beans/red_alumno_1.xdsl b/EjercitarServer/build/classes/beans/red_alumno_1.xdsl
deleted file mode 100644
index 9e30f46..0000000
--- a/EjercitarServer/build/classes/beans/red_alumno_1.xdsl
+++ /dev/null
@@ -1,60 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<smile version="1.0" id="Network1" numsamples="1000" discsamples="10000">
- <nodes>
- <cpt id="C1">
- <state id="State0" />
- <state id="State1" />
- <probabilities>0.5 0.5</probabilities>
- </cpt>
- <cpt id="E1">
- <state id="State0" />
- <state id="State1" />
- <parents>C1</parents>
- <probabilities>0.5 0.5 0.5 0.5</probabilities>
- </cpt>
- <cpt id="E2">
- <state id="State0" />
- <state id="State1" />
- <parents>C1</parents>
- <probabilities>0.5 0.5 0.5 0.5</probabilities>
- </cpt>
- <cpt id="E3">
- <state id="State0" />
- <state id="State1" />
- <parents>C1</parents>
- <probabilities>0.5 0.5 0.5 0.5</probabilities>
- </cpt>
- </nodes>
- <extensions>
- <genie version="1.0" app="GeNIe 2.0.4779.0" name="Network1" faultnameformat="nodestate">
- <node id="E1">
- <name>E1</name>
- <interior color="e5f6f7" />
- <outline color="000080" />
- <font color="000000" name="Arial" size="8" />
- <position>203 276 251 306</position>
- </node>
- <node id="E2">
- <name>E2</name>
- <interior color="e5f6f7" />
- <outline color="000080" />
- <font color="000000" name="Arial" size="8" />
- <position>365 272 413 302</position>
- </node>
- <node id="E3">
- <name>E3</name>
- <interior color="e5f6f7" />
- <outline color="000080" />
- <font color="000000" name="Arial" size="8" />
- <position>508 290 556 320</position>
- </node>
- <node id="C1">
- <name>C1</name>
- <interior color="e5f6f7" />
- <outline color="000080" />
- <font color="000000" name="Arial" size="8" />
- <position>354 101 390 123</position>
- </node>
- </genie>
- </extensions>
-</smile>
diff --git a/EjercitarServer/build/classes/red_alumno_1.xdsl b/EjercitarServer/build/classes/red_alumno_1.xdsl
deleted file mode 100644
index 9e30f46..0000000
--- a/EjercitarServer/build/classes/red_alumno_1.xdsl
+++ /dev/null
@@ -1,60 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<smile version="1.0" id="Network1" numsamples="1000" discsamples="10000">
- <nodes>
- <cpt id="C1">
- <state id="State0" />
- <state id="State1" />
- <probabilities>0.5 0.5</probabilities>
- </cpt>
- <cpt id="E1">
- <state id="State0" />
- <state id="State1" />
- <parents>C1</parents>
- <probabilities>0.5 0.5 0.5 0.5</probabilities>
- </cpt>
- <cpt id="E2">
- <state id="State0" />
- <state id="State1" />
- <parents>C1</parents>
- <probabilities>0.5 0.5 0.5 0.5</probabilities>
- </cpt>
- <cpt id="E3">
- <state id="State0" />
- <state id="State1" />
- <parents>C1</parents>
- <probabilities>0.5 0.5 0.5 0.5</probabilities>
- </cpt>
- </nodes>
- <extensions>
- <genie version="1.0" app="GeNIe 2.0.4779.0" name="Network1" faultnameformat="nodestate">
- <node id="E1">
- <name>E1</name>
- <interior color="e5f6f7" />
- <outline color="000080" />
- <font color="000000" name="Arial" size="8" />
- <position>203 276 251 306</position>
- </node>
- <node id="E2">
- <name>E2</name>
- <interior color="e5f6f7" />
- <outline color="000080" />
- <font color="000000" name="Arial" size="8" />
- <position>365 272 413 302</position>
- </node>
- <node id="E3">
- <name>E3</name>
- <interior color="e5f6f7" />
- <outline color="000080" />
- <font color="000000" name="Arial" size="8" />
- <position>508 290 556 320</position>
- </node>
- <node id="C1">
- <name>C1</name>
- <interior color="e5f6f7" />
- <outline color="000080" />
- <font color="000000" name="Arial" size="8" />
- <position>354 101 390 123</position>
- </node>
- </genie>
- </extensions>
-</smile>
diff --git a/EjercitarServer/build/classes/red_base_curso_1.xdsl b/EjercitarServer/build/classes/red_base_curso_1.xdsl
deleted file mode 100644
index 9e30f46..0000000
--- a/EjercitarServer/build/classes/red_base_curso_1.xdsl
+++ /dev/null
@@ -1,60 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<smile version="1.0" id="Network1" numsamples="1000" discsamples="10000">
- <nodes>
- <cpt id="C1">
- <state id="State0" />
- <state id="State1" />
- <probabilities>0.5 0.5</probabilities>
- </cpt>
- <cpt id="E1">
- <state id="State0" />
- <state id="State1" />
- <parents>C1</parents>
- <probabilities>0.5 0.5 0.5 0.5</probabilities>
- </cpt>
- <cpt id="E2">
- <state id="State0" />
- <state id="State1" />
- <parents>C1</parents>
- <probabilities>0.5 0.5 0.5 0.5</probabilities>
- </cpt>
- <cpt id="E3">
- <state id="State0" />
- <state id="State1" />
- <parents>C1</parents>
- <probabilities>0.5 0.5 0.5 0.5</probabilities>
- </cpt>
- </nodes>
- <extensions>
- <genie version="1.0" app="GeNIe 2.0.4779.0" name="Network1" faultnameformat="nodestate">
- <node id="E1">
- <name>E1</name>
- <interior color="e5f6f7" />
- <outline color="000080" />
- <font color="000000" name="Arial" size="8" />
- <position>203 276 251 306</position>
- </node>
- <node id="E2">
- <name>E2</name>
- <interior color="e5f6f7" />
- <outline color="000080" />
- <font color="000000" name="Arial" size="8" />
- <position>365 272 413 302</position>
- </node>
- <node id="E3">
- <name>E3</name>
- <interior color="e5f6f7" />
- <outline color="000080" />
- <font color="000000" name="Arial" size="8" />
- <position>508 290 556 320</position>
- </node>
- <node id="C1">
- <name>C1</name>
- <interior color="e5f6f7" />
- <outline color="000080" />
- <font color="000000" name="Arial" size="8" />
- <position>354 101 390 123</position>
- </node>
- </genie>
- </extensions>
-</smile>
diff --git a/EjercitarServer/ejbModule/beans/EjercitarWSBean.java b/EjercitarServer/ejbModule/beans/EjercitarWSBean.java
index 5fb58dd..1bd9f69 100644
--- a/EjercitarServer/ejbModule/beans/EjercitarWSBean.java
+++ b/EjercitarServer/ejbModule/beans/EjercitarWSBean.java
@@ -255,6 +255,12 @@ public class EjercitarWSBean implements EjercitarWSRemote {
if(utilidadMaxParcial > utilidadMax) {
utilidadMax = utilidadMaxParcial;
ejercicio = ejercicioConcepto;
+ } else if (utilidadMaxParcial == utilidadMax) {
+ Random rnd = new Random();
+ int eleccion = rnd.nextInt(2);
+ if (eleccion == 1) {
+ ejercicio = ejercicioConcepto;
+ }
}
hUtilidades.put(utilidadMaxParcial, ejercicioConcepto);
@@ -433,7 +439,7 @@ public class EjercitarWSBean implements EjercitarWSRemote {
public void corregirProbabilidadesEjercicios() {
- Asignatura asignatura = em.find(Asignatura.class, 13);
+ Asignatura asignatura = em.find(Asignatura.class, 3);
System.out.println(asignatura.getNombre());
List<Tema> temas = (List<Tema>) em.createQuery("select t from Tema t where t.asignatura = :asignatura").setParameter("asignatura", asignatura).getResultList();
@@ -444,7 +450,7 @@ public class EjercitarWSBean implements EjercitarWSRemote {
System.out.println("conceptos " + conceptos.size() );
Network net = new Network();
- net.readFile("/home/redes/red_asignatura_13.xdsl");
+ net.readFile("/home/redes/red_asignatura_3.xdsl");
System.out.println("########## leido #############");
@@ -461,7 +467,7 @@ public class EjercitarWSBean implements EjercitarWSRemote {
}
}
- net.writeFile("/home/redes/red_asignatura_13.xdsl");
+ net.writeFile("/home/redes/red_asignatura_3.xdsl");
}
diff --git a/EjercitarServer/ejbModule/beans/Simulacion.java b/EjercitarServer/ejbModule/beans/Simulacion.java
index a82eaa0..5ee614e 100644
--- a/EjercitarServer/ejbModule/beans/Simulacion.java
+++ b/EjercitarServer/ejbModule/beans/Simulacion.java
@@ -1,5 +1,9 @@
package beans;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Random;
+
import javax.ejb.EJB;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
@@ -7,15 +11,19 @@ import javax.persistence.PersistenceContext;
import model.Alumno;
import model.Asignatura;
import model.Curso;
+import model.Ejercicio;
+import model.Tarea;
public class Simulacion {
@EJB
AdministracionBean admin;
-
- public Alumno crearAlumno(Curso curso, String tipo){
+ @EJB
+ EjercitarWSBean ws;
+
+ public Alumno crearAlumno(Curso curso, Double tipo){
Alumno alumno = new Alumno();
@@ -33,32 +41,74 @@ public class Simulacion {
}
- public void generacionAlumno(Asignatura asignatura){
+ public List<Alumno> generacionAlumnos(Asignatura asignatura){
Curso curso = asignatura.getCurso();
int cantidadAlumnos = 30;
- String tipo;
+ Double tipo;
+
+ List<Alumno> alumnos = new ArrayList<Alumno>();
+
for (int i = 0; i < cantidadAlumnos; i++) {
if(i <= 10){
tipo = TipoAlumno.NIVEL_CONOCIMIENTO_BAJO;
- }else if(i >10 && i <=15){
+ }else if(i >10 && i <=20){
tipo = TipoAlumno.NIVEL_CONOCIMIENTO_MEDIO;
}else{
tipo = TipoAlumno.NIVEL_CONOCIMIENTO_ALTO;
}
- crearAlumno(curso, tipo);
-
+ Alumno alumno = crearAlumno(curso, tipo);
+
+ alumnos.add(alumno);
}
admin.crearRedAlumnos(asignatura.getIdAsignatura());
-
+
+ return alumnos;
+ }
+
+
+ public void simular(Asignatura asignatura, Tarea tarea) {
+
+
+ List<Alumno> alumnos = generacionAlumnos(asignatura);
+
+ for(Alumno alumno : alumnos) {
+
+ String siguienteEjercicio = ws.getSiguienteEjercicio(tarea.getIdTarea(), alumno.getIdAlumno(), 0, "respuesta");
+ Boolean parada = false;
+ int cant = 0;
+ while(!parada) {
+
+ String [] ejercicioString = siguienteEjercicio.split("#");
+ int idEjercicio = Integer.valueOf(ejercicioString[0]);
+ Ejercicio ejercicio = null;//admin.getEjercicio(idEjercicio);
+
+ Random rnd = new Random();
+ int decision = rnd.nextInt(100);
+ String respuesta = null;
+ int idRespuesta;
+ if(decision <= (alumno.getTipoAlumno()*100)) {
+ respuesta = ejercicio.getRespuesta().getDescripcion();
+ idRespuesta = ejercicio.getRespuesta().getIdRespuesta();
+ } else {
+ respuesta = ejercicio.getRespuestaList().get(0).equals(ejercicio.getRespuesta()) ?
+ ejercicio.getRespuestaList().get(1).getDescripcion() : ejercicio.getRespuestaList().get(0).getDescripcion();
+ idRespuesta = ejercicio.getRespuestaList().get(0).equals(ejercicio.getRespuesta()) ?
+ ejercicio.getRespuestaList().get(1).getIdRespuesta() : ejercicio.getRespuestaList().get(0).getIdRespuesta();
+ }
+
+ siguienteEjercicio = ws.getSiguienteEjercicio(tarea.getIdTarea(), alumno.getIdAlumno(), idRespuesta, respuesta);
+
+ }
+ }
}
public static class TipoAlumno {
- public static final String NIVEL_CONOCIMIENTO_BAJO = "OO";
- public static final String NIVEL_CONOCIMIENTO_MEDIO = "0.5";
- public static final String NIVEL_CONOCIMIENTO_ALTO = "1";
+ public static final Double NIVEL_CONOCIMIENTO_BAJO = 0.0;
+ public static final Double NIVEL_CONOCIMIENTO_MEDIO = 0.5;
+ public static final Double NIVEL_CONOCIMIENTO_ALTO = 1.0;
}
diff --git a/EjercitarWeb/WebContent/Asignatura.jsp b/EjercitarWeb/WebContent/Asignatura.jsp
index 38469f5..3a42a91 100644
--- a/EjercitarWeb/WebContent/Asignatura.jsp
+++ b/EjercitarWeb/WebContent/Asignatura.jsp
@@ -19,7 +19,7 @@
<div class="e-panel-bd panel panel-primary">
<div class="panel-heading">Nueva Asignatura</div>
<div class="panel-body">
- <form class="form-horizontal" role="form" name="form" method="post" action="">
+ <form class="form-horizontal" role="form" id="form1"name="form" method="post" action="">
<div class="form-group">
<label for="nombre" class="col-sm-2 control-label">Nombre:</label>
<div class="col-sm-10">
diff --git a/EjercitarWeb/WebContent/Concepto.jsp b/EjercitarWeb/WebContent/Concepto.jsp
index 659ca95..c89e28a 100644
--- a/EjercitarWeb/WebContent/Concepto.jsp
+++ b/EjercitarWeb/WebContent/Concepto.jsp
@@ -51,15 +51,16 @@
</select>
</div>
</div>
- <fieldset class="span4">
- <legend>Probabilidades</legend>
- <div class="form-group">
- <label for="a_priori" class="col-sm-2 control-label">A priori:</label>
- <div class="col-sm-10">
- <input type="text" name="a_priori" id="a_priori" value="0.5" />
+ <div class="form-group">
+ <label for="a_priori" class="col-sm-2 control-label">Conocimiento inicial:</label>
+ <div class="col-sm-10 " >
+ <input type="text" name="a_priori" id="a_priori" value="0.5" disabled/>
</div>
- </div>
- <div class="form-group">
+ </div>
+ <!-- >fieldset class="span4">
+
+
+ <>div class="form-group">
<label for="adivinanza" class="col-sm-2 control-label">Adivinanza:</label>
<div class="col-sm-10">
<input type="text" name="adivinanza" id="adivinanza" value="0.2" />
@@ -71,7 +72,7 @@
<input type="text" name="descuido" id="descuido" value="0.2" />
</div>
</div>
- </fieldset>
+ </fieldset-->
<button class="btn btn-default btn-primary" type="submit" name="Submit">
<span class="e-button-text">Guardar</span>
</button>
diff --git a/EjercitarWeb/WebContent/Ejercicios.jsp b/EjercitarWeb/WebContent/Ejercicios.jsp
index 3d7f01b..f6b347e 100644
--- a/EjercitarWeb/WebContent/Ejercicios.jsp
+++ b/EjercitarWeb/WebContent/Ejercicios.jsp
@@ -28,7 +28,7 @@
<div class="e-panel-bd panel panel-primary">
<div class="panel-heading">Nuevo Ejercicio</div>
<div class="panel-body">
- <form class="form-horizontal" role="form" name="ejercicio_form" method="post" enctype="multipart/form-data">
+ <form class="form-horizontal" role="form" id="form1" name="ejercicio_form" method="post" enctype="multipart/form-data">
<input type="hidden" name="lista_conceptos" id="lista_conceptos" value="asdf">
<input type="hidden" name="asignatura" id="asignatura" value=<%=request.getParameter("asignatura")%>>
<%Profesor profesor = (Profesor) request.getSession().getAttribute("profesor");%>
@@ -54,19 +54,19 @@
<div class="form-group">
<label for="respuesta2" class="col-sm-2 control-label">Respuesta 2:</label>
<div class="col-sm-10">
- <input type="text" name="respuesta2" class="form-control" id="respuesta2">
+ <input type="text" name="respuesta2" id="respuesta2" class="form-control" id="respuesta2">
</div>
</div>
<div class="form-group">
<label for="respuesta3" class="col-sm-2 control-label">Respuesta 3:</label>
<div class="col-sm-10">
- <input type="text" name="respuesta3" class="form-control" id="respuesta3">
+ <input type="text" name="respuesta3" id="respuesta3" class="form-control" id="respuesta3">
</div>
</div>
<div class="form-group">
<label for="respuesta4" class="col-sm-2 control-label">Respuesta 4:</label>
<div class="col-sm-10">
- <input type="text" name="respuesta4" class="form-control" id="respuesta4">
+ <input type="text" name="respuesta4" id="respuesta4" class="form-control" id="respuesta4">
</div>
</div>
<div class="form-group">
@@ -81,15 +81,25 @@
</div>
</div>
<div class="form-group">
- <label for="adivinanza" class="col-sm-2 control-label">Adivinanza:</label>
+ <label for="adivinanza" class="col-sm-2 control-label">Descuido:</label>
<div class="col-sm-10">
- <input type="text" name="adivinanza" class="form-control" id="adivinanza"/>
+ <!-- >input type="text" name="adivinanza" class="form-control" id="adivinanza"/-->
+ <select class="form-control" name="descuido">
+ <option id="1" name="des_1" value="0.1">Bajo</option>
+ <option id="2" name="des_2" value="0.2">Medio</option>
+ <option id="3" name="des_3" value="0.3">Alto</option>
+ </select>
</div>
</div>
<div class="form-group">
<label for="dificultad" class="col-sm-2 control-label">Dificultad:</label>
<div class="col-sm-10">
- <input type="text" name="dificultad" class="form-control" id="dificultad"/>
+ <!-- >input type="text" name="dificultad" class="form-control" id="dificultad"/-->
+ <select class="form-control" name="dificultad">
+ <option id="1" name="dif_1" value="1">Fácil</option>
+ <option id="2" name="dif_2" value="2">Normal</option>
+ <option id="3" name="dif_33" value="3">Dificil</option>
+ </select>
</div>
</div>
<div class="form-group">
diff --git a/EjercitarWeb/WebContent/Tarea.jsp b/EjercitarWeb/WebContent/Tarea.jsp
index aa61038..0037220 100644
--- a/EjercitarWeb/WebContent/Tarea.jsp
+++ b/EjercitarWeb/WebContent/Tarea.jsp
@@ -29,7 +29,7 @@
<div class="e-panel-bd panel panel-primary">
<div class="panel-heading">Nueva Tarea</div>
<div class="panel-body">
- <form class="form-horizontal" role="form" name="ejercicio_form" method="post">
+ <form class="form-horizontal" role="form" id="form1" name="ejercicio_form" method="post">
<input type="hidden" name="lista_conceptos" id="lista_conceptos" value="asdf">
<input type="hidden" name="asignatura" id="asignatura" value=<%= request.getParameter("asignatura") %>>
<div class="form-group">
diff --git a/EjercitarWeb/WebContent/concepto_ed.jsp b/EjercitarWeb/WebContent/concepto_ed.jsp
index 6c6c87c..edf40da 100644
--- a/EjercitarWeb/WebContent/concepto_ed.jsp
+++ b/EjercitarWeb/WebContent/concepto_ed.jsp
@@ -39,7 +39,7 @@
</div>
</div>
<div class="form-group">
- <label for="descripcion" class="col-sm-2 control-label">Descripci�n:</label>
+ <label for="descripcion" class="col-sm-2 control-label">Descripci&oacute;n:</label>
<div class="col-sm-10">
<input type="text" class="form-control" name="descripcion" id="descripcion" value=<%= concepto.getDescripcion() %> <% if (asignatura.getIniciado() == true) { %>disabled <%} %>></input>
</div>
@@ -50,14 +50,15 @@
<input type="text" name="tema" id="tema" class="form-control" value=<%=concepto.getTema().getNombre()%> disabled>
</div>
</div>
- <fieldset class="span4">
- <legend>Probabilidades</legend>
- <div class="form-group">
- <label for="a_priori" class="col-sm-2 control-label">A priori:</label>
+ <div class="form-group">
+ <label for="a_priori" class="col-sm-2 control-label">Conocimiento inicial:</label>
<div class="col-sm-10">
- <input type="text" name="a_priori" id="a_priori" value=<%= concepto.getApriori() %> <% if (asignatura.getIniciado() == true) { %>disabled <%} %> />
+ <input type="text" name="a_priori" id="a_priori" value=<%= concepto.getApriori() %> <% if (asignatura.getIniciado() == true) { %>disabled <%} %> disabled/>
</div>
- </div>
+ </div>
+ <!-- > fieldset class="span4">
+ <legend>Probabilidad:</legend>
+
<div class="form-group">
<label for="adivinanza" class="col-sm-2 control-label">Adivinanza:</label>
<div class="col-sm-10">
@@ -70,7 +71,7 @@
<input type="text" name="descuido" id="descuido" value=<%= concepto.getDescuido() %> <% if (asignatura.getIniciado() == true) { %>disabled <%} %> />
</div>
</div>
- </fieldset>
+ </fieldset-->
<button class="btn btn-default btn-primary" type="submit" name="Submit">
<span class="e-button-text">Guardar</span>
</button>
@@ -95,7 +96,7 @@
max: 1,
min: 0
});
- $("#adivinanza").spinner({
+ /*$("#adivinanza").spinner({
step: 0.1,
numberFormat: "n",
max: 1,
@@ -106,7 +107,7 @@
numberFormat: "n",
max: 1,
min: 0
- });
+ });*/
</script>
</body>
</html> \ No newline at end of file
diff --git a/EjercitarWeb/WebContent/js/validaciones.js b/EjercitarWeb/WebContent/js/validaciones.js
index 8a4fdc8..df56fde 100644
--- a/EjercitarWeb/WebContent/js/validaciones.js
+++ b/EjercitarWeb/WebContent/js/validaciones.js
@@ -4,26 +4,87 @@
//js para validaciones de formularios
+$.validator.addMethod("dateFormat",
+ function(value, element) {
+ return value.match(/^dd?-dd?-dd$/);
+},
+ "Ingrese la fecha con formato dd-mm-yyyy.");
+
+
$(document).ready(function(){
$('#form1').validate({
rules: {
+ //validaciones para profesor
nombre: {
minlength: 4,
required: true
},
- descripcion: {
- required: true
- },
+ usuario: {
+ minlength: 5,
+ required: true
+ },
+ password: {
+ minlength: 5,
+ required: true
+ },
+ apellido: {
+ required: true
+ },
+ cedula: {
+ required: true,
+ number: true
+ },
+
+ cursos: {
+ required: true
+ } ,
+ descripcion: {
+ required: true
+ },
curso: {
required: true
},
tema: {
required: true
},
+ a_priori: {
+ required: true,
+ number:true,
+ pattern: /0+(\.[0-9][0-9]?)?/
+ },
+ enunciado: {
+ minlength: 4,
+ required: true
+
+ },
+ respuesta1: {
+ required: true
+
+ },
+ respuesta2: {
+ required: true
+
+ },
+ respuesta3: {
+ required: true
+
+ },
+ respuesta4: {
+ required: true
+
+ },
+ cantejercicio: {
+ required: true,
+ number: true
+ },
+ fecha_nac:{
+ date:true,
+ dateFormat: true
+ },
message: {
minlength: 2,
required: true,
@@ -32,19 +93,55 @@ $(document).ready(function(){
}
},
messages: {
-
- descripcion: " El campo descripcion es obligatorio",
+ descripcion: " El campo descripci&oacute;n es obligatorio",
curso: "Se requiere seleccionar un curso",
tema: "Se requiere seleccionar un tema",
nombre: {
required: " El campo Nombre es obligatorio.",
minlength: jQuery.format(" Ingrese mas de {0} caracteres "),
remote: jQuery.format("{0} is already in use")
- }
+ },
+ apellido: {
+ required: " El campo Apellido es obligatorio.",
+ minlength: jQuery.format(" Ingrese mas de {0} caracteres "),
+ remote: jQuery.format("{0} is already in use")
+ },
+ password: {
+ required: " El campo Contrase&ntilde;a es obligatorio.",
+ minlength: jQuery.format(" Ingrese mas de {0} caracteres "),
+ remote: jQuery.format("{0} is already in use")
+ },
+ tema: "El campo Tema es obligatorio",
+ usuario: "El campo Usuario es obligatorio",
+ cursos: "Se requiere seleccionar un curso",
+ cedula: {
+ required: "El campo c&eacute;dula es obligatorio",
+ number: "Se requiere valor num&eacute;rico"
+ },
+ a_priori: {
+ number: "El campo Conocimiento Inicial es obligatorio",
+ pattern: "Se requiere ingresar de la forma o.dd"
+ },
+ fecha_nac: {
+ date: "Ingrese una fecha v&aacute;lida",
+ },
+ respuesta1: "El campo Respuesta 1 es obligatorio",
+ respuesta2: "El campo Respuesta 2 es obligatorio",
+ respuesta3: "El campo Respuesta 3 es obligatorio",
+ respuesta4: "El campo Respuesta 4 es obligatorio",
+ enunciado: {
+ required: " El campo enunciado es obligatorio.",
+ minlength: jQuery.format(" Ingrese mas de {0} caracteres "),
+ remote: jQuery.format("{0} is already in use")
+ },
+ cantejercicio: {
+ required: "El campo Cantidad Ejercicio es obligatorio",
+ number: "Se requiere valor num&eacute;rico"
+ },
+
}
});
-
-
+
}); \ No newline at end of file
diff --git a/EjercitarWeb/WebContent/profesor.jsp b/EjercitarWeb/WebContent/profesor.jsp
index 77f3c07..2c6358e 100644
--- a/EjercitarWeb/WebContent/profesor.jsp
+++ b/EjercitarWeb/WebContent/profesor.jsp
@@ -9,6 +9,7 @@
<link rel="stylesheet" href="lib/bootstrap/css/bootstrap.min.css" />
<link rel="stylesheet" href="css/ejercitar-base.css" />
<link rel="stylesheet" href="css/jquery.multiselect.css" />
+ <link rel="stylesheet" href="/resources/demos/style.css">
<!-- Scripts -->
<script type="text/javascript" src="js/smoothness/jquery-1.10.2.js"></script>
<script type="text/javascript" src="js/smoothness/jquery-ui-1.10.4.custom.js"></script>
@@ -17,6 +18,14 @@
<script type="text/javascript" src="js/validaciones.js"></script>
<script type="text/javascript" src="js/multiselect/jquery.multiselect.min.js"></script>
<script type="text/javascript" src="js/multiselect/jquery.multiselect.es.js"></script>
+ <script>
+ $(function() {
+ $.datepicker.setDefaults($.datepicker.regional["es"]);
+ $( "#fecha_nac" ).datepicker();
+ });
+
+
+ </script>
</head>
<body class="e-body">
<div class="container e-viewport">
@@ -27,7 +36,7 @@
<div class="e-panel-bd panel panel-primary">
<div class="panel-heading">Ingresar Nuevo Profesor</div>
<div class="panel-body">
- <form class="form-horizontal" role="form" name="form1" method="post" action="">
+ <form class="form-horizontal" role="form" name="form1" id="form1" method="post" action="">
<input type="hidden" name="lista_cursos" id="lista_cursos" value="asdf">
<div class="form-group">
<label for="usuario" class="col-sm-2 control-label">Usuario:</label>
diff --git a/EjercitarWeb/src/src/EditarConceptoServlet.java b/EjercitarWeb/src/src/EditarConceptoServlet.java
index cad6362..949f743 100644
--- a/EjercitarWeb/src/src/EditarConceptoServlet.java
+++ b/EjercitarWeb/src/src/EditarConceptoServlet.java
@@ -80,17 +80,17 @@ public class EditarConceptoServlet extends HttpServlet {
}
else {
- String adivinanza = request.getParameter("adivinanza");
+ //String adivinanza = request.getParameter("adivinanza");
String apriori = request.getParameter("a_priori");
- String descuido = request.getParameter("descuido");
+ //String descuido = request.getParameter("descuido");
//String peso = request.getParameter("peso");
String descripcion = request.getParameter("descripcion");
String nombre = request.getParameter("nombre");
int idProfesor = Integer.valueOf(request.getParameter("profesor"));
//int idTema = Integer.valueOf(request.getParameter("tema"));
- concepto.setAdivinanza(Double.parseDouble(adivinanza));
+ //concepto.setAdivinanza(Double.parseDouble(adivinanza));
concepto.setApriori(Double.parseDouble(apriori));
- concepto.setDescuido(Double.parseDouble(descuido));
+ //concepto.setDescuido(Double.parseDouble(descuido));
//concepto.setPeso(Double.valueOf(peso));
concepto.setDescripcion(descripcion);
concepto.setNombre(nombre);
diff --git a/EjercitarWeb/src/src/NuevaAsignaturaServlet.java b/EjercitarWeb/src/src/NuevaAsignaturaServlet.java
index abbeed5..ff43f67 100644
--- a/EjercitarWeb/src/src/NuevaAsignaturaServlet.java
+++ b/EjercitarWeb/src/src/NuevaAsignaturaServlet.java
@@ -49,8 +49,9 @@ public class NuevaAsignaturaServlet extends HttpServlet {
response.setContentType("text/html;charset=UTF-8");
RequestDispatcher rd = getServletContext().getRequestDispatcher("/Asignatura.jsp");
Profesor profesor = (Profesor)request.getSession().getAttribute("profesor");
-
- List<Curso> cursos = profesor.getCursoList();
+ List<Curso> cursos = em.createQuery("select c from Curso c join c.profesorList p where p.idProfesor = :profesor").setParameter("profesor", profesor.getIdProfesor()).getResultList();
+ System.out.println(cursos.size());
+ // List<Curso> cursos = profesor.getCursoList();
request.setAttribute("lista_cursos", cursos);
rd.forward(request, response);
}
diff --git a/EjercitarWeb/src/src/NuevoConceptoServlet.java b/EjercitarWeb/src/src/NuevoConceptoServlet.java
index 46dc5c9..5d25943 100644
--- a/EjercitarWeb/src/src/NuevoConceptoServlet.java
+++ b/EjercitarWeb/src/src/NuevoConceptoServlet.java
@@ -68,18 +68,17 @@ public class NuevoConceptoServlet extends HttpServlet {
//ProfesorEAO profesor = new ProfesorEAO();
//TemaEAO tema = new TemaEAO();
//ConceptoEAO conceptoEAO = new ConceptoEAO();
- String adivinanza = request.getParameter("adivinanza");
- System.out.println("aaaddddddddddddddddddddd " + adivinanza);
+ //String adivinanza = request.getParameter("adivinanza");
String apriori = request.getParameter("a_priori");
- String descuido = request.getParameter("descuido");
+ //String descuido = request.getParameter("descuido");
// String peso = request.getParameter("peso");
String descripcion = request.getParameter("descripcion");
String nombre = request.getParameter("nombre");
int idProfesor = Integer.valueOf(request.getParameter("profesor"));
int idTema = Integer.valueOf(request.getParameter("tema"));
- concepto.setAdivinanza(Double.parseDouble(adivinanza));
+ //concepto.setAdivinanza(Double.parseDouble(adivinanza));
concepto.setApriori(Double.parseDouble(apriori));
- concepto.setDescuido(Double.parseDouble(descuido));
+ //concepto.setDescuido(Double.parseDouble(descuido));
//concepto.setPeso(Double.valueOf(peso));
concepto.setDescripcion(descripcion);
concepto.setNombre(nombre);
diff --git a/EjercitarWeb/src/src/NuevoEjercicioServlet.java b/EjercitarWeb/src/src/NuevoEjercicioServlet.java
index 9528c7a..5aa0b5b 100644
--- a/EjercitarWeb/src/src/NuevoEjercicioServlet.java
+++ b/EjercitarWeb/src/src/NuevoEjercicioServlet.java
@@ -110,7 +110,7 @@ public class NuevoEjercicioServlet extends HttpServlet {
Part filePart = request.getPart("imagen");
- //byte [] imagen = request.getParameter("imagen").;
+ //byte [] imagen = request.getParameter("imagen").getBytes();
//ejercicio.setImagen(imagen);
int respuesta = Integer.valueOf(request.getParameter("respuesta_correcta"));
@@ -129,20 +129,21 @@ public class NuevoEjercicioServlet extends HttpServlet {
break;
}
int idAsignatura = Integer.valueOf(request.getParameter("asignatura"));
-
- double adivinanza = Double.valueOf(request.getParameter("adivinanza"));
+ System.out.println(request.getParameter("descuido"));
+ System.out.println(request.getParameter("dificultad"));
+ double adivinanza = Double.valueOf(request.getParameter("descuido"));
ejercicio.setAdivinanza(adivinanza);
ejercicio.setNivelDificultad(Integer.valueOf(request.getParameter("dificultad")));
- //System.out.println(request.getParameter("imagen").getBytes());
+// System.out.println(request.getParameter("imagen").getBytes());
abr.agregarEjercicio(ejercicio, idAsignatura);
-
- /* Ejercicio ej = (Ejercicio) em.createQuery("Select e from Ejercicio e where e.enunciado = :enunciado")
+ System.out.print(request.getServletContext().getRealPath("/"));
+ Ejercicio ej = (Ejercicio) em.createQuery("Select e from Ejercicio e where e.enunciado = :enunciado")
.setParameter("enunciado", ejercicio.getEnunciado()).getSingleResult();
- filePart.write("img/imagen_ejercicio_" + ej.getIdEjercicio());*/
+ //filePart.write("img/imagen_ejercicio_" + ej.getIdEjercicio()+ ".png");
response.sendRedirect("/EjercitarWeb/VistaAsignaturaServlet?asignatura="+idAsignatura);
}