diff --git a/.DS_Store b/.DS_Store index cd0ff733d6de107dac68ce8f078ecd280a154783..1271d8c01561c9d304ca0cfdacd630c82b86d919 100644 Binary files a/.DS_Store and b/.DS_Store differ diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000000000000000000000000000000000000..6f3a2913e199cebe9ace75cf7e5a2818da27fbd3 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,3 @@ +{ + "liveServer.settings.port": 5501 +} \ No newline at end of file diff --git a/GPL.sql b/GPL.sql deleted file mode 100644 index 7063ace2d3c9bb814d0509835464782a1d9c7b91..0000000000000000000000000000000000000000 --- a/GPL.sql +++ /dev/null @@ -1,245 +0,0 @@ --- MySQL Script generated by MySQL Workbench --- mié 16 ago 2023 12:56:00 --- Model: New Model Version: 1.0 --- MySQL Workbench Forward Engineering - -SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0; -SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0; -SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION'; - --- ----------------------------------------------------- --- Schema labsol --- ----------------------------------------------------- -DROP SCHEMA IF EXISTS `labsol` ; - --- ----------------------------------------------------- --- Schema labsol --- ----------------------------------------------------- -CREATE SCHEMA IF NOT EXISTS `labsol` ; -USE `labsol` ; - --- ----------------------------------------------------- --- Table `labsol`.`solicitante` --- ----------------------------------------------------- -DROP TABLE IF EXISTS `labsol`.`solicitante` ; - -CREATE TABLE IF NOT EXISTS `labsol`.`solicitante` ( - `idsolicitante` INT NOT NULL, - `so_nombre` VARCHAR(35) NOT NULL, - `so_apP` VARCHAR(35) NOT NULL, - `so_apM` VARCHAR(35) NOT NULL, - `so_correo` VARCHAR(85) NOT NULL, - `so_conthash` VARCHAR(65) NOT NULL, - PRIMARY KEY (`idsolicitante`)) -ENGINE = InnoDB; - - --- ----------------------------------------------------- --- Table `labsol`.`institucion` --- ----------------------------------------------------- -DROP TABLE IF EXISTS `labsol`.`institucion` ; - -CREATE TABLE IF NOT EXISTS `labsol`.`institucion` ( - `idinstitucion` INT NOT NULL, - `nombre oficial` VARCHAR(90) NOT NULL, - PRIMARY KEY (`idinstitucion`)) -ENGINE = InnoDB; - - --- ----------------------------------------------------- --- Table `labsol`.`proyecto` --- ----------------------------------------------------- -DROP TABLE IF EXISTS `labsol`.`proyecto` ; - -CREATE TABLE IF NOT EXISTS `labsol`.`proyecto` ( - `idproyecto` INT NOT NULL, - `nombrePr` VARCHAR(85) NOT NULL, - `solicitante_idsolicitante` INT NOT NULL, - PRIMARY KEY (`idproyecto`), - INDEX `fk_proyecto_solicitante1_idx` (`solicitante_idsolicitante` ASC) , - CONSTRAINT `fk_proyecto_solicitante1` - FOREIGN KEY (`solicitante_idsolicitante`) - REFERENCES `labsol`.`solicitante` (`idsolicitante`) - ON DELETE CASCADE - ON UPDATE CASCADE) -ENGINE = InnoDB; - - --- ----------------------------------------------------- --- Table `labsol`.`alumno` --- ----------------------------------------------------- -DROP TABLE IF EXISTS `labsol`.`alumno` ; - -CREATE TABLE IF NOT EXISTS `labsol`.`alumno` ( - `idalumno` INT NOT NULL, - `al_nombre` VARCHAR(35) NOT NULL, - `al_apP` VARCHAR(35) NOT NULL, - `al_apM` VARCHAR(35) NOT NULL, - `al_correo` VARCHAR(35) NOT NULL, - `al_conthash` VARCHAR(45) NOT NULL, - `institucion_idinstitucion` INT NOT NULL, - `proyecto_idproyecto` INT NULL, - PRIMARY KEY (`idalumno`), - INDEX `fk_alumno_institucion1_idx` (`institucion_idinstitucion` ASC) , - INDEX `fk_alumno_proyecto1_idx` (`proyecto_idproyecto` ASC) , - CONSTRAINT `fk_alumno_institucion1` - FOREIGN KEY (`institucion_idinstitucion`) - REFERENCES `labsol`.`institucion` (`idinstitucion`) - ON DELETE CASCADE - ON UPDATE CASCADE, - CONSTRAINT `fk_alumno_proyecto1` - FOREIGN KEY (`proyecto_idproyecto`) - REFERENCES `labsol`.`proyecto` (`idproyecto`) - ON DELETE NO ACTION - ON UPDATE NO ACTION) -ENGINE = InnoDB; - - --- ----------------------------------------------------- --- Table `labsol`.`ins_reducciones` --- ----------------------------------------------------- -DROP TABLE IF EXISTS `labsol`.`ins_reducciones` ; - -CREATE TABLE IF NOT EXISTS `labsol`.`ins_reducciones` ( - `reduccion` VARCHAR(25) NOT NULL, - `institucion_idinstitucion` INT NOT NULL, - PRIMARY KEY (`reduccion`, `institucion_idinstitucion`), - INDEX `fk_ins_reducciones_institucion_idx` (`institucion_idinstitucion` ASC) , - CONSTRAINT `fk_ins_reducciones_institucion` - FOREIGN KEY (`institucion_idinstitucion`) - REFERENCES `labsol`.`institucion` (`idinstitucion`) - ON DELETE CASCADE - ON UPDATE CASCADE) -ENGINE = InnoDB; - - --- ----------------------------------------------------- --- Table `labsol`.`siprints` --- ----------------------------------------------------- -DROP TABLE IF EXISTS `labsol`.`siprints` ; - -CREATE TABLE IF NOT EXISTS `labsol`.`siprints` ( - `idsiprints` INT NOT NULL, - `inicio` DATE NULL, - `final` DATE NULL, - `siprintscol` VARCHAR(45) NULL, - `activo` TINYINT NOT NULL, - `proyecto_idproyecto` INT NOT NULL, - PRIMARY KEY (`idsiprints`, `proyecto_idproyecto`), - INDEX `fk_siprints_proyecto1_idx` (`proyecto_idproyecto` ASC) , - CONSTRAINT `fk_siprints_proyecto1` - FOREIGN KEY (`proyecto_idproyecto`) - REFERENCES `labsol`.`proyecto` (`idproyecto`) - ON DELETE CASCADE - ON UPDATE CASCADE) -ENGINE = InnoDB; - - --- ----------------------------------------------------- --- Table `labsol`.`tareas` --- ----------------------------------------------------- -DROP TABLE IF EXISTS `labsol`.`tareas` ; - -CREATE TABLE IF NOT EXISTS `labsol`.`tareas` ( - `idtareas` INT NOT NULL, - `tarea` LONGTEXT NOT NULL, - `estadoal` VARCHAR(45) NOT NULL, - `estadoadmins` VARCHAR(45) NULL, - `siprints_idsiprints` INT NOT NULL, - `siprints_proyecto_idproyecto` INT NOT NULL, - `tareas_idtareas` INT NULL, - `tareas_siprints_idsiprints` INT NULL, - `tareas_siprints_proyecto_idproyecto` INT NULL, - PRIMARY KEY (`idtareas`, `siprints_idsiprints`, `siprints_proyecto_idproyecto`), - INDEX `fk_tareas_siprints1_idx` (`siprints_idsiprints` ASC, `siprints_proyecto_idproyecto` ASC, `tareas_idtareas` ASC, `tareas_siprints_idsiprints` ASC, `tareas_siprints_proyecto_idproyecto` ASC) , - INDEX `fk_tareas_tareas1_idx` (`tareas_idtareas` ASC, `tareas_siprints_idsiprints` ASC, `tareas_siprints_proyecto_idproyecto` ASC) , - CONSTRAINT `fk_tareas_siprints1` - FOREIGN KEY (`siprints_idsiprints` , `siprints_proyecto_idproyecto` , `tareas_idtareas` , `tareas_siprints_idsiprints` , `tareas_siprints_proyecto_idproyecto`) - REFERENCES `labsol`.`siprints` (`idsiprints` , `proyecto_idproyecto` , `idsiprints` , `idsiprints` , `idsiprints`) - ON DELETE CASCADE - ON UPDATE CASCADE, - CONSTRAINT `fk_tareas_tareas1` - FOREIGN KEY (`tareas_idtareas` , `tareas_siprints_idsiprints` , `tareas_siprints_proyecto_idproyecto`) - REFERENCES `labsol`.`tareas` (`idtareas` , `siprints_idsiprints` , `siprints_proyecto_idproyecto`) - ON DELETE NO ACTION - ON UPDATE NO ACTION) -ENGINE = InnoDB; - - --- ----------------------------------------------------- --- Table `labsol`.`tareas_has_alumno` --- ----------------------------------------------------- -DROP TABLE IF EXISTS `labsol`.`tareas_has_alumno` ; - -CREATE TABLE IF NOT EXISTS `labsol`.`tareas_has_alumno` ( - `tareas_idtareas` INT NOT NULL, - `tareas_siprints_idsiprints` INT NOT NULL, - `tareas_siprints_proyecto_idproyecto` INT NOT NULL, - `alumno_idalumno` INT NULL, - PRIMARY KEY (`tareas_idtareas`, `tareas_siprints_idsiprints`, `tareas_siprints_proyecto_idproyecto`, `alumno_idalumno`), - INDEX `fk_tareas_has_alumno_alumno1_idx` (`alumno_idalumno` ASC) , - CONSTRAINT `fk_tareas_has_alumno_tareas1` - FOREIGN KEY (`tareas_idtareas` , `tareas_siprints_idsiprints` , `tareas_siprints_proyecto_idproyecto`) - REFERENCES `labsol`.`tareas` (`idtareas` , `siprints_idsiprints` , `siprints_proyecto_idproyecto`) - ON DELETE CASCADE - ON UPDATE CASCADE, - CONSTRAINT `fk_tareas_has_alumno_alumno1` - FOREIGN KEY (`alumno_idalumno`) - REFERENCES `labsol`.`alumno` (`idalumno`) - ON DELETE CASCADE - ON UPDATE CASCADE) -ENGINE = InnoDB; - - --- ----------------------------------------------------- --- Table `labsol`.`comentario` --- ----------------------------------------------------- -DROP TABLE IF EXISTS `labsol`.`comentario` ; - -CREATE TABLE IF NOT EXISTS `labsol`.`comentario` ( - `idcomentario` INT NOT NULL, - `comentario` LONGTEXT NOT NULL, - `alumno_idalumno` INT NOT NULL, - `tareas_idtareas` INT NOT NULL, - `tareas_siprints_idsiprints` INT NOT NULL, - `tareas_siprints_proyecto_idproyecto` INT NOT NULL, - PRIMARY KEY (`idcomentario`, `alumno_idalumno`, `tareas_idtareas`, `tareas_siprints_idsiprints`, `tareas_siprints_proyecto_idproyecto`), - INDEX `fk_comentario_alumno1_idx` (`alumno_idalumno` ASC, `tareas_idtareas` ASC, `tareas_siprints_idsiprints` ASC, `tareas_siprints_proyecto_idproyecto` ASC) , - INDEX `fk_comentario_tareas1_idx` (`tareas_idtareas` ASC, `tareas_siprints_idsiprints` ASC, `tareas_siprints_proyecto_idproyecto` ASC) , - CONSTRAINT `fk_comentario_alumno1` - FOREIGN KEY (`alumno_idalumno` , `tareas_idtareas` , `tareas_siprints_idsiprints` , `tareas_siprints_proyecto_idproyecto`) - REFERENCES `labsol`.`alumno` (`idalumno` , `idalumno` , `idalumno` , `idalumno`) - ON DELETE CASCADE - ON UPDATE CASCADE, - CONSTRAINT `fk_comentario_tareas1` - FOREIGN KEY (`tareas_idtareas` , `tareas_siprints_idsiprints` , `tareas_siprints_proyecto_idproyecto`) - REFERENCES `labsol`.`tareas` (`idtareas` , `siprints_idsiprints` , `siprints_proyecto_idproyecto`) - ON DELETE CASCADE - ON UPDATE CASCADE) -ENGINE = InnoDB; - - --- ----------------------------------------------------- --- Table `labsol`.`etiquetas` --- ----------------------------------------------------- -DROP TABLE IF EXISTS `labsol`.`etiquetas` ; - -CREATE TABLE IF NOT EXISTS `labsol`.`etiquetas` ( - `idetiquetas` INT NOT NULL, - `etiqueta` VARCHAR(60) NOT NULL, - `tareas_idtareas` INT NOT NULL, - `tareas_siprints_idsiprints` INT NOT NULL, - `tareas_siprints_proyecto_idproyecto` INT NOT NULL, - PRIMARY KEY (`idetiquetas`, `tareas_idtareas`, `tareas_siprints_idsiprints`, `tareas_siprints_proyecto_idproyecto`), - INDEX `fk_etiquetas_tareas1_idx` (`tareas_idtareas` ASC, `tareas_siprints_idsiprints` ASC, `tareas_siprints_proyecto_idproyecto` ASC) , - CONSTRAINT `fk_etiquetas_tareas1` - FOREIGN KEY (`tareas_idtareas` , `tareas_siprints_idsiprints` , `tareas_siprints_proyecto_idproyecto`) - REFERENCES `labsol`.`tareas` (`idtareas` , `siprints_idsiprints` , `siprints_proyecto_idproyecto`) - ON DELETE CASCADE - ON UPDATE CASCADE) -ENGINE = InnoDB; - - -SET SQL_MODE=@OLD_SQL_MODE; -SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS; -SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS; diff --git a/GPL2.sql b/GPL2.sql new file mode 100644 index 0000000000000000000000000000000000000000..4a51a161599a0053b14647b2d298d4924fb26f0f --- /dev/null +++ b/GPL2.sql @@ -0,0 +1,352 @@ +-- MySQL Script generated by MySQL Workbench +-- lun 06 nov 2023 19:46:44 +-- Model: New Model Version: 1.0 +-- MySQL Workbench Forward Engineering + +SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0; +SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0; +SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION'; + +-- ----------------------------------------------------- +-- Schema labsol2 +-- ----------------------------------------------------- +DROP SCHEMA IF EXISTS `labsol2` ; + +-- ----------------------------------------------------- +-- Schema labsol2 +-- ----------------------------------------------------- +CREATE SCHEMA IF NOT EXISTS `labsol2` ; +USE `labsol2` ; + +-- ----------------------------------------------------- +-- Table `labsol2`.`solicitante` +-- ----------------------------------------------------- +DROP TABLE IF EXISTS `labsol2`.`solicitante` ; + +CREATE TABLE IF NOT EXISTS `labsol2`.`solicitante` ( + `idsolicitante` INT NOT NULL, + `so_nombre` VARCHAR(35) NOT NULL, + `so_apP` VARCHAR(35) NOT NULL, + `so_apM` VARCHAR(35) NULL, + `so_correo` VARCHAR(85) NOT NULL, + `so_conthash` VARCHAR(60) NOT NULL, + PRIMARY KEY (`idsolicitante`)) +ENGINE = InnoDB; + + +-- ----------------------------------------------------- +-- Table `labsol2`.`proyecto` +-- ----------------------------------------------------- +DROP TABLE IF EXISTS `labsol2`.`proyecto` ; + +CREATE TABLE IF NOT EXISTS `labsol2`.`proyecto` ( + `idproyect` INT NOT NULL, + `nombrePr` VARCHAR(45) NOT NULL, + `proyectcol` VARCHAR(85) NOT NULL, + `img` LONGTEXT NULL, + `solicitante_idsolicitante` INT NULL, + PRIMARY KEY (`idproyect`), + INDEX `fk_proyecto_solicitante1_idx` (`solicitante_idsolicitante` ASC) , + CONSTRAINT `fk_proyecto_solicitante1` + FOREIGN KEY (`solicitante_idsolicitante`) + REFERENCES `labsol2`.`solicitante` (`idsolicitante`) + ON DELETE SET NULL + ON UPDATE SET NULL) +ENGINE = InnoDB; + + +-- ----------------------------------------------------- +-- Table `labsol2`.`institucion` +-- ----------------------------------------------------- +DROP TABLE IF EXISTS `labsol2`.`institucion` ; + +CREATE TABLE IF NOT EXISTS `labsol2`.`institucion` ( + `idinstitucion` INT NOT NULL, + `nombre_oficial` VARCHAR(250) NOT NULL, + PRIMARY KEY (`idinstitucion`)) +ENGINE = InnoDB; + + +-- ----------------------------------------------------- +-- Table `labsol2`.`alumno` +-- ----------------------------------------------------- +DROP TABLE IF EXISTS `labsol2`.`alumno` ; + +CREATE TABLE IF NOT EXISTS `labsol2`.`alumno` ( + `idalumno` INT NOT NULL, + `al_nombre` VARCHAR(35) NOT NULL, + `al_apP` VARCHAR(35) NOT NULL, + `al_apM` VARCHAR(35) NULL, + `al_correo` VARCHAR(85) NOT NULL, + `al_conthash` VARCHAR(60) NOT NULL, + `al_idinstitucion` INT NOT NULL, + PRIMARY KEY (`idalumno`, `al_idinstitucion`), + INDEX `fk_alumno_institucion1_idx` (`al_idinstitucion` ASC) , + CONSTRAINT `fk_alumno_institucion1` + FOREIGN KEY (`al_idinstitucion`) + REFERENCES `labsol2`.`institucion` (`idinstitucion`) + ON DELETE CASCADE + ON UPDATE CASCADE) +ENGINE = InnoDB; + + +-- ----------------------------------------------------- +-- Table `labsol2`.`sprint` +-- ----------------------------------------------------- +DROP TABLE IF EXISTS `labsol2`.`sprint` ; + +CREATE TABLE IF NOT EXISTS `labsol2`.`sprint` ( + `idsprint` INT NOT NULL, + `nombre_sp` VARCHAR(50) NOT NULL, + `inicio` VARCHAR(45) NULL, + `final` VARCHAR(45) NULL, + `objetivo` LONGTEXT NULL, + `estado` VARCHAR(45) NOT NULL, + `spr_idproyect` INT NOT NULL, + PRIMARY KEY (`idsprint`, `spr_idproyect`), + INDEX `fk_sprint_proyecto1_idx` (`spr_idproyect` ASC) , + CONSTRAINT `fk_sprint_proyecto1` + FOREIGN KEY (`spr_idproyect`) + REFERENCES `labsol2`.`proyecto` (`idproyect`) + ON DELETE CASCADE + ON UPDATE CASCADE) +ENGINE = InnoDB; + + +-- ----------------------------------------------------- +-- Table `labsol2`.`estadoAdm` +-- ----------------------------------------------------- +DROP TABLE IF EXISTS `labsol2`.`estadoAdm` ; + +CREATE TABLE IF NOT EXISTS `labsol2`.`estadoAdm` ( + `idestadoAdm` INT NOT NULL, + `estadoAd` VARCHAR(35) NULL, + `estAdm_idproyect` INT NOT NULL, + PRIMARY KEY (`idestadoAdm`, `estAdm_idproyect`), + INDEX `fk_estadoAdm_proyecto1_idx` (`estAdm_idproyect` ASC) , + CONSTRAINT `fk_estadoAdm_proyecto1` + FOREIGN KEY (`estAdm_idproyect`) + REFERENCES `labsol2`.`proyecto` (`idproyect`) + ON DELETE CASCADE + ON UPDATE CASCADE) +ENGINE = InnoDB; + + +-- ----------------------------------------------------- +-- Table `labsol2`.`estadoAl` +-- ----------------------------------------------------- +DROP TABLE IF EXISTS `labsol2`.`estadoAl` ; + +CREATE TABLE IF NOT EXISTS `labsol2`.`estadoAl` ( + `idestadoAl` INT NOT NULL, + `estadoAl` VARCHAR(45) NULL, + `estAl_idproyect` INT NOT NULL, + PRIMARY KEY (`idestadoAl`, `estAl_idproyect`), + INDEX `fk_estadoAl_proyecto1_idx` (`estAl_idproyect` ASC) , + CONSTRAINT `fk_estadoAl_proyecto1` + FOREIGN KEY (`estAl_idproyect`) + REFERENCES `labsol2`.`proyecto` (`idproyect`) + ON DELETE CASCADE + ON UPDATE CASCADE) +ENGINE = InnoDB; + + +-- ----------------------------------------------------- +-- Table `labsol2`.`subnombre` +-- ----------------------------------------------------- +DROP TABLE IF EXISTS `labsol2`.`subnombre` ; + +CREATE TABLE IF NOT EXISTS `labsol2`.`subnombre` ( + `subnombre` VARCHAR(30) NOT NULL, + `sub_idinstitucion` INT NOT NULL, + PRIMARY KEY (`subnombre`, `sub_idinstitucion`), + INDEX `fk_subnombre_institucion1_idx` (`sub_idinstitucion` ASC) , + CONSTRAINT `fk_subnombre_institucion1` + FOREIGN KEY (`sub_idinstitucion`) + REFERENCES `labsol2`.`institucion` (`idinstitucion`) + ON DELETE CASCADE + ON UPDATE CASCADE) +ENGINE = InnoDB; + + +-- ----------------------------------------------------- +-- Table `labsol2`.`tarea` +-- ----------------------------------------------------- +DROP TABLE IF EXISTS `labsol2`.`tarea` ; + +CREATE TABLE IF NOT EXISTS `labsol2`.`tarea` ( + `idtarea` INT NOT NULL, + `tarea` VARCHAR(45) NOT NULL, + `descripcion` LONGTEXT NULL, + `prioridad` VARCHAR(8) NULL, + `tarea_idtarea` INT NULL, + `estadoAdm_idestadoAdm` INT NULL, + `estadoAl_idestadoAl` INT NULL, + `sprint_idsprint` INT NOT NULL, + `ta_spr_idproyect` INT NOT NULL, + `notificador` INT NOT NULL, + PRIMARY KEY (`idtarea`), + INDEX `fk_tarea_tarea1_idx` (`tarea_idtarea` ASC) , + INDEX `fk_tarea_estadoAdm1_idx` (`estadoAdm_idestadoAdm` ASC) , + INDEX `fk_tarea_estadoAl1_idx` (`estadoAl_idestadoAl` ASC) , + INDEX `fk_tarea_sprint1_idx` (`sprint_idsprint` ASC, `ta_spr_idproyect` ASC) , + CONSTRAINT `fk_tarea_tarea1` + FOREIGN KEY (`tarea_idtarea`) + REFERENCES `labsol2`.`tarea` (`idtarea`) + ON DELETE CASCADE + ON UPDATE CASCADE, + CONSTRAINT `fk_tarea_estadoAdm1` + FOREIGN KEY (`estadoAdm_idestadoAdm`) + REFERENCES `labsol2`.`estadoAdm` (`idestadoAdm`) + ON DELETE NO ACTION + ON UPDATE NO ACTION, + CONSTRAINT `fk_tarea_estadoAl1` + FOREIGN KEY (`estadoAl_idestadoAl`) + REFERENCES `labsol2`.`estadoAl` (`idestadoAl`) + ON DELETE NO ACTION + ON UPDATE NO ACTION, + CONSTRAINT `fk_tarea_sprint1` + FOREIGN KEY (`sprint_idsprint` , `ta_spr_idproyect`) + REFERENCES `labsol2`.`sprint` (`idsprint` , `spr_idproyect`) + ON DELETE CASCADE + ON UPDATE CASCADE) +ENGINE = InnoDB; + + +-- ----------------------------------------------------- +-- Table `labsol2`.`etiquetas` +-- ----------------------------------------------------- +DROP TABLE IF EXISTS `labsol2`.`etiquetas` ; + +CREATE TABLE IF NOT EXISTS `labsol2`.`etiquetas` ( + `idetiquetas` INT NOT NULL, + `etiqueta` VARCHAR(40) NOT NULL, + `color` VARCHAR(45) NULL, + `e_idproyect` INT NOT NULL, + `e_idtarea` INT NULL, + PRIMARY KEY (`idetiquetas`, `e_idproyect`), + INDEX `fk_etiquetas_proyecto_idx` (`e_idproyect` ASC) , + INDEX `fk_etiquetas_tarea1_idx` (`e_idtarea` ASC) , + CONSTRAINT `fk_etiquetas_proyecto` + FOREIGN KEY (`e_idproyect`) + REFERENCES `labsol2`.`proyecto` (`idproyect`) + ON DELETE CASCADE + ON UPDATE CASCADE, + CONSTRAINT `fk_etiquetas_tarea1` + FOREIGN KEY (`e_idtarea`) + REFERENCES `labsol2`.`tarea` (`idtarea`) + ON DELETE NO ACTION + ON UPDATE NO ACTION) +ENGINE = InnoDB; + + +-- ----------------------------------------------------- +-- Table `labsol2`.`comentario` +-- ----------------------------------------------------- +DROP TABLE IF EXISTS `labsol2`.`comentario` ; + +CREATE TABLE IF NOT EXISTS `labsol2`.`comentario` ( + `idcomentario` INT NOT NULL, + `comentario` LONGTEXT NOT NULL, + `c_idtarea` INT NOT NULL, + `c_idalumno` INT NOT NULL, + PRIMARY KEY (`idcomentario`), + INDEX `fk_comentario_tarea1_idx` (`c_idtarea` ASC) , + INDEX `fk_comentario_alumno1_idx` (`c_idalumno` ASC) , + CONSTRAINT `fk_comentario_tarea1` + FOREIGN KEY (`c_idtarea`) + REFERENCES `labsol2`.`tarea` (`idtarea`) + ON DELETE CASCADE + ON UPDATE CASCADE, + CONSTRAINT `fk_comentario_alumno1` + FOREIGN KEY (`c_idalumno`) + REFERENCES `labsol2`.`alumno` (`idalumno`) + ON DELETE NO ACTION + ON UPDATE NO ACTION) +ENGINE = InnoDB; + + +-- ----------------------------------------------------- +-- Table `labsol2`.`administrador` +-- ----------------------------------------------------- +DROP TABLE IF EXISTS `labsol2`.`administrador` ; + +CREATE TABLE IF NOT EXISTS `labsol2`.`administrador` ( + `idadministrador` INT NOT NULL, + `ad_nombre` VARCHAR(35) NOT NULL, + `ad_apP` VARCHAR(35) NOT NULL, + `ad_apM` VARCHAR(35) NULL, + `ad_correo` VARCHAR(85) NOT NULL, + `ad_conthash` VARCHAR(60) NOT NULL, + PRIMARY KEY (`idadministrador`)) +ENGINE = InnoDB; + + +-- ----------------------------------------------------- +-- Table `labsol2`.`tarea_a_alumno` +-- ----------------------------------------------------- +DROP TABLE IF EXISTS `labsol2`.`tarea_a_alumno` ; + +CREATE TABLE IF NOT EXISTS `labsol2`.`tarea_a_alumno` ( + `r_idtarea` INT NOT NULL, + `r_idalumno` INT NOT NULL, + PRIMARY KEY (`r_idtarea`, `r_idalumno`), + INDEX `fk_tarea_has_alumno_alumno1_idx` (`r_idalumno` ASC) , + INDEX `fk_tarea_has_alumno_tarea1_idx` (`r_idtarea` ASC) , + CONSTRAINT `fk_tarea_has_alumno_tarea1` + FOREIGN KEY (`r_idtarea`) + REFERENCES `labsol2`.`tarea` (`idtarea`) + ON DELETE CASCADE + ON UPDATE CASCADE, + CONSTRAINT `fk_tarea_has_alumno_alumno1` + FOREIGN KEY (`r_idalumno`) + REFERENCES `labsol2`.`alumno` (`idalumno`) + ON DELETE NO ACTION + ON UPDATE NO ACTION) +ENGINE = InnoDB; + + +-- ----------------------------------------------------- +-- Table `labsol2`.`documentos` +-- ----------------------------------------------------- +DROP TABLE IF EXISTS `labsol2`.`documentos` ; + +CREATE TABLE IF NOT EXISTS `labsol2`.`documentos` ( + `iddocumentos` INT NOT NULL, + `documentoscol` LONGTEXT NULL, + `alumno_idalumno` INT NOT NULL, + PRIMARY KEY (`iddocumentos`, `alumno_idalumno`), + INDEX `fk_documentos_alumno1_idx` (`alumno_idalumno` ASC) , + CONSTRAINT `fk_documentos_alumno1` + FOREIGN KEY (`alumno_idalumno`) + REFERENCES `labsol2`.`alumno` (`idalumno`) + ON DELETE CASCADE + ON UPDATE CASCADE) +ENGINE = InnoDB; + + +-- ----------------------------------------------------- +-- Table `labsol2`.`proyecto_alumno` +-- ----------------------------------------------------- +DROP TABLE IF EXISTS `labsol2`.`proyecto_alumno` ; + +CREATE TABLE IF NOT EXISTS `labsol2`.`proyecto_alumno` ( + `pa_idproyect` INT NOT NULL, + `pa_idalumno` INT NOT NULL, + PRIMARY KEY (`pa_idproyect`, `pa_idalumno`), + CONSTRAINT `fk_proyecto_alumno_proyecto1` + FOREIGN KEY (`pa_idproyect`) + REFERENCES `labsol2`.`proyecto` (`idproyect`) + ON DELETE CASCADE + ON UPDATE CASCADE, + CONSTRAINT `fk_proyecto_alumno_proyecto2` + FOREIGN KEY (`pa_idalumno`) + REFERENCES `labsol2`.`alumno` (`idalumno`) + ON DELETE CASCADE + ON UPDATE CASCADE) +ENGINE = InnoDB; + + +SET SQL_MODE=@OLD_SQL_MODE; +SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS; +SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS; diff --git a/calendar.html b/calendar.html new file mode 100644 index 0000000000000000000000000000000000000000..bb9f3a2699463bd714fb63e624e848e41ab3fe61 --- /dev/null +++ b/calendar.html @@ -0,0 +1,83 @@ + + + + + + + + + + + + Calendario - Eventos + + + +
+
+
+
+ +
december 2015
+ +
+
+
Do
+
Lu
+
Ma
+
Mi
+
Ju
+
Vi
+
Sa
+
+
+
+
+ + +
+ +
+
+
+
+
+
wed
+
12th december 2023
+
+
+
+
+
Añadir evento
+ +
+
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+ + + + + + + \ No newline at end of file diff --git a/css/backlog.css b/css/backlog.css index 8165e44d8115c472dfd84f718822cb52be78ce0b..9501111c553d55dde9f3b25a54348391ae4c7e0f 100644 --- a/css/backlog.css +++ b/css/backlog.css @@ -35,4 +35,81 @@ border: none; background: #c4c4c4; +} +.punteado { + border-style: dotted; + border-width: 2px; + border-color: #797979; + } +.contenido{ + margin: 0px 1px 0px 1px; + min-height: 150px; +} +.btnincidencias{ + margin: 4px 0px 4px 0px; +} +.add-sprint-button{ + border: none; + background: #d4d4d4; + margin: 0; +} +.add-sprint-button:hover{ + border: none; + background: #c4c4c4; + +} +.incidencia-text{ + font-size: .8em; + margin: 0; + margin-top: 7px; + margin-bottom: 7px; +} +.incidencia-cont{ + background-color: #ffb0b0; + padding: 0; + margin: auto; +} +.incidencia-progreso{ + background-color: #fff1b0; + padding: 0; + margin: auto; +} +.incidencia-listo{ + background-color: #d6ffb0; + padding: 0; + margin: auto; +} +.incidencia-generic{ + background-color: #b0e2ff; + padding: 0; + margin: auto; +} +.margin0{ + margin: 0; + padding: 0; +} +.empty-background{ + background: rgba(255,255,255,0.3); + border: 0; +} +.limpio{ + text-decoration: none; + color: black; +} +.delete{ + text-decoration: none; + display: inline-block; + background: red; + border-radius: 5px; + color: white; + font-size: 1.5rem; + font-weight: bold; + width: 45px; + height: 30px; + color: white; + margin-left: auto; + display: flex; + justify-content: center; + align-items: center; + cursor: pointer; } \ No newline at end of file diff --git a/css/calendar.css b/css/calendar.css index 36fea1aa2916be27e447bf7646bbf44ac1cd8cc4..a7b3b4b01de30c6ac4dfd36b1d5b7866972c62ad 100644 --- a/css/calendar.css +++ b/css/calendar.css @@ -1,12 +1,7 @@ :root { --primary-clr: #b38add; } -* { - margin: 0; - padding: 0; - box-sizing: border-box; - font-family: "Poppins", sans-serif; -} + /* nice scroll bar */ ::-webkit-scrollbar { width: 5px; diff --git a/css/proyectos.css b/css/proyectos.css index c05629ccbe3dbfec372c1a600f7d6986094234de..075e3fcc960a31a83c17b00a47cb520e33400512 100644 --- a/css/proyectos.css +++ b/css/proyectos.css @@ -1,13 +1,14 @@ .proys-cont{ margin-top: 20px; + margin-left: -30px; } .proy{ background-color: white; border-radius: 5px; opacity: .75; - margin-left: 4px; - margin-right: 4px; + margin-left: px; + margin-right: 10px; } .img-psrc{ @@ -24,11 +25,14 @@ font-size: 17px; margin-bottom: 4px; } + .tittle-seccion{ + padding-right: 25px; /* Ajusta el valor según el espacio deseado a la derecha */ + padding-left: 10px; padding: 0; color: white; font-size: 19px; - margin-top: 4px; + margin-top: 20px; } .subtittle-p{ padding: 0; @@ -50,4 +54,9 @@ } .max-hight{ height: 45px; +} + +.container{ + margin: 0px 0px 0px 12px; + padding: 0; } \ No newline at end of file diff --git a/css/style.css b/css/style.css index f2449edebcacf9989eeed7ee7da98aadd4642a43..f6904a823e9d180a069f1452f5f1906a103f8aec 100644 --- a/css/style.css +++ b/css/style.css @@ -1,12 +1,13 @@ @import url('https://fonts.googleapis.com/css2?family=Ubuntu:wght@300;400;500;700&display=swap'); -*{ + +* { margin: 0; padding: 0; box-sizing: border-box; font-family: 'Ubuntu', sans-serif; } -:root{ +:root { --blue: #287bff; --white: #fff; --grey: #f5f5f5; @@ -14,43 +15,44 @@ --black2: #999; } -body{ +body { min-height: 100vh; overflow-x: hidden; } -.container{ +.container_nav { position: relative; width: 100%; } -.navigation{ +.abajo { + margin-bottom: 28vh; +} + +.navigation { position: fixed; + width: 300px; height: 100%; - margin-left: 0; - padding-left: 0; - background: linear-gradient(135deg, #325e9d 0%, #aa7bfa 100%); + background: linear-gradient(135deg, #325e9d 0%, #aa7bfa 100%); + border-left: 10px linear-gradient(135deg, #325e9d 0%, #aa7bfa 100%); transition: 0.5s; overflow: hidden; - width: 60px; } -.navigation.active{ - - width: 300px; - +.navigation.active { + width: 80px; } -.navigation ul{ +.navigation ul { position: absolute; - top: 0; - left: 0; + top: 0px; + left: 5px; margin: 0; - padding: 0; + padding: 5px; width: 100%; } -.navigation ul li{ +.navigation ul li { position: relative; width: 100%; list-style: none; @@ -60,17 +62,17 @@ body{ /* al colocar el cursor se ve en blanco cada fila en el menu */ .navigation ul li:hover, -.navigation ul li.hovered{ +.navigation ul li.hovered { background: var(--white); } /* Espacio de mi lista en el menu */ -.navigation ul li:nth-child(1){ - margin-bottom: 40px; +.navigation ul li:nth-child(1) { + margin-bottom: 50px; pointer-events: none; } -.navigation ul li a{ +.navigation ul li a { position: relative; display: block; width: 100%; @@ -80,11 +82,18 @@ body{ } .navigation ul li:hover a, -.navigation ul li.hovered a{ +.navigation ul li.hovered a { color: var(--blue); } -.navigation ul li a .icon{ +.activo { + background: #2a2f4f; + color: white; + /* codigo extra para ver curba */ + +} + +.navigation ul li a .icon { position: relative; display: block; min-width: 60px; @@ -93,12 +102,12 @@ body{ text-align: center; } -.navigation ul li a .icon ion-icon{ +.navigation ul li a .icon ion-icon { font-size: 1.75em; } -.navigation ul li a .title{ - position: relative; +.navigation ul li a .title { + position: relative; display: block; padding: 0 10px; height: 60px; @@ -109,7 +118,7 @@ body{ /* Curve outside */ .navigation ul li:hover a::before, -.navigation ul li.hovered a::before{ +.navigation ul li.hovered a::before { content: ''; position: absolute; right: 0; @@ -123,7 +132,7 @@ body{ } .navigation ul li:hover a::after, -.navigation ul li.hovered a::after{ +.navigation ul li.hovered a::after { content: ''; position: absolute; right: 0; @@ -137,27 +146,27 @@ body{ } /* User */ -.main.active{ - width: calc(100% - 300px); - left: 300px; +.main.active { + width: calc(100% - 80px); + left: 80px; } -.main{ +.main { position: absolute; - width: calc(100% - 60px); - left: 60px; + width: calc(100% - 300px); + left: 300px; min-height: 100vh; background: var(--white); transition: 0.5s; - + background-color: #325E9D; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100%25'%3E%3Cdefs%3E%3ClinearGradient id='a' gradientUnits='userSpaceOnUse' x1='0' x2='0' y1='0' y2='100%25' gradientTransform='rotate(230,960,456)'%3E%3Cstop offset='0' stop-color='%23325E9D'/%3E%3Cstop offset='1' stop-color='%23B34A37'/%3E%3C/linearGradient%3E%3Cpattern patternUnits='userSpaceOnUse' id='b' width='451' height='375.8' x='0' y='0' viewBox='0 0 1080 900'%3E%3Cg fill-opacity='0.09'%3E%3Cpolygon fill='%23444' points='90 150 0 300 180 300'/%3E%3Cpolygon points='90 150 180 0 0 0'/%3E%3Cpolygon fill='%23AAA' points='270 150 360 0 180 0'/%3E%3Cpolygon fill='%23DDD' points='450 150 360 300 540 300'/%3E%3Cpolygon fill='%23999' points='450 150 540 0 360 0'/%3E%3Cpolygon points='630 150 540 300 720 300'/%3E%3Cpolygon fill='%23DDD' points='630 150 720 0 540 0'/%3E%3Cpolygon fill='%23444' points='810 150 720 300 900 300'/%3E%3Cpolygon fill='%23FFF' points='810 150 900 0 720 0'/%3E%3Cpolygon fill='%23DDD' points='990 150 900 300 1080 300'/%3E%3Cpolygon fill='%23444' points='990 150 1080 0 900 0'/%3E%3Cpolygon fill='%23DDD' points='90 450 0 600 180 600'/%3E%3Cpolygon points='90 450 180 300 0 300'/%3E%3Cpolygon fill='%23666' points='270 450 180 600 360 600'/%3E%3Cpolygon fill='%23AAA' points='270 450 360 300 180 300'/%3E%3Cpolygon fill='%23DDD' points='450 450 360 600 540 600'/%3E%3Cpolygon fill='%23999' points='450 450 540 300 360 300'/%3E%3Cpolygon fill='%23999' points='630 450 540 600 720 600'/%3E%3Cpolygon fill='%23FFF' points='630 450 720 300 540 300'/%3E%3Cpolygon points='810 450 720 600 900 600'/%3E%3Cpolygon fill='%23DDD' points='810 450 900 300 720 300'/%3E%3Cpolygon fill='%23AAA' points='990 450 900 600 1080 600'/%3E%3Cpolygon fill='%23444' points='990 450 1080 300 900 300'/%3E%3Cpolygon fill='%23222' points='90 750 0 900 180 900'/%3E%3Cpolygon points='270 750 180 900 360 900'/%3E%3Cpolygon fill='%23DDD' points='270 750 360 600 180 600'/%3E%3Cpolygon points='450 750 540 600 360 600'/%3E%3Cpolygon points='630 750 540 900 720 900'/%3E%3Cpolygon fill='%23444' points='630 750 720 600 540 600'/%3E%3Cpolygon fill='%23AAA' points='810 750 720 900 900 900'/%3E%3Cpolygon fill='%23666' points='810 750 900 600 720 600'/%3E%3Cpolygon fill='%23999' points='990 750 900 900 1080 900'/%3E%3Cpolygon fill='%23999' points='180 0 90 150 270 150'/%3E%3Cpolygon fill='%23444' points='360 0 270 150 450 150'/%3E%3Cpolygon fill='%23FFF' points='540 0 450 150 630 150'/%3E%3Cpolygon points='900 0 810 150 990 150'/%3E%3Cpolygon fill='%23222' points='0 300 -90 450 90 450'/%3E%3Cpolygon fill='%23FFF' points='0 300 90 150 -90 150'/%3E%3Cpolygon fill='%23FFF' points='180 300 90 450 270 450'/%3E%3Cpolygon fill='%23666' points='180 300 270 150 90 150'/%3E%3Cpolygon fill='%23222' points='360 300 270 450 450 450'/%3E%3Cpolygon fill='%23FFF' points='360 300 450 150 270 150'/%3E%3Cpolygon fill='%23444' points='540 300 450 450 630 450'/%3E%3Cpolygon fill='%23222' points='540 300 630 150 450 150'/%3E%3Cpolygon fill='%23AAA' points='720 300 630 450 810 450'/%3E%3Cpolygon fill='%23666' points='720 300 810 150 630 150'/%3E%3Cpolygon fill='%23FFF' points='900 300 810 450 990 450'/%3E%3Cpolygon fill='%23999' points='900 300 990 150 810 150'/%3E%3Cpolygon points='0 600 -90 750 90 750'/%3E%3Cpolygon fill='%23666' points='0 600 90 450 -90 450'/%3E%3Cpolygon fill='%23AAA' points='180 600 90 750 270 750'/%3E%3Cpolygon fill='%23444' points='180 600 270 450 90 450'/%3E%3Cpolygon fill='%23444' points='360 600 270 750 450 750'/%3E%3Cpolygon fill='%23999' points='360 600 450 450 270 450'/%3E%3Cpolygon fill='%23666' points='540 600 630 450 450 450'/%3E%3Cpolygon fill='%23222' points='720 600 630 750 810 750'/%3E%3Cpolygon fill='%23FFF' points='900 600 810 750 990 750'/%3E%3Cpolygon fill='%23222' points='900 600 990 450 810 450'/%3E%3Cpolygon fill='%23DDD' points='0 900 90 750 -90 750'/%3E%3Cpolygon fill='%23444' points='180 900 270 750 90 750'/%3E%3Cpolygon fill='%23FFF' points='360 900 450 750 270 750'/%3E%3Cpolygon fill='%23AAA' points='540 900 630 750 450 750'/%3E%3Cpolygon fill='%23FFF' points='720 900 810 750 630 750'/%3E%3Cpolygon fill='%23222' points='900 900 990 750 810 750'/%3E%3Cpolygon fill='%23222' points='1080 300 990 450 1170 450'/%3E%3Cpolygon fill='%23FFF' points='1080 300 1170 150 990 150'/%3E%3Cpolygon points='1080 600 990 750 1170 750'/%3E%3Cpolygon fill='%23666' points='1080 600 1170 450 990 450'/%3E%3Cpolygon fill='%23DDD' points='1080 900 1170 750 990 750'/%3E%3C/g%3E%3C/pattern%3E%3C/defs%3E%3Crect x='0' y='0' fill='url(%23a)' width='100%25' height='100%25'/%3E%3Crect x='0' y='0' fill='url(%23b)' width='100%25' height='100%25'/%3E%3C/svg%3E"); background-attachment: fixed; background-size: cover; } -.topbar{ +.topbar { width: 100%; height: 60px; display: flex; @@ -166,7 +175,7 @@ body{ padding: 0 10px; } -.toggle{ +.toggle { position: relative; width: 60px; height: 60px; @@ -175,20 +184,21 @@ body{ align-items: center; font-size: 2.5em; cursor: pointer; + color: #fff; } -.search{ +.search { position: relative; width: 400px; margin: 0 10px; } -.search label{ +.search label { position: relative; width: 100%; } -.search label input{ +.search label input { width: 100%; height: 40px; border-radius: 40px; @@ -199,14 +209,14 @@ body{ border: 1px solid var(--black2); } -.search label ion-icon{ +.search label ion-icon { position: absolute; top: 0; left: 10px; font-size: 1.2em; } -.user{ +.user { position: relative; min-width: 40px; height: 40px; @@ -215,7 +225,7 @@ body{ cursor: pointer; } -.user img{ +.user img { position: absolute; top: 0; left: 0; @@ -225,30 +235,30 @@ body{ } /* Calendario chico (muestra el dia) */ -.wrapper{ +.wrapper { width: 440px; background: var(--white); border-radius: 10px; } -.container-cal{ +.container-cal { padding-left: 20px; padding-top: 20px; } -.wrapper header{ +.wrapper header { display: flex; align-items: center; padding: 25px 30px 10px; justify-content: space-between; } -header .current-date{ +header .current-date { font-size: 1.45rem; font-weight: 600; } -header .icons span{ +header .icons span { height: 38px; width: 38px; color: #878787; @@ -260,53 +270,53 @@ header .icons span{ border-radius: 50%; } -header .icons span:hover{ +header .icons span:hover { background: #f2f2f2; } -header .icons span:last-child{ +header .icons span:last-child { margin-right: -10px; } -.calendar{ +.calendar { padding: 20px; } -.calendar ul{ +.calendar ul { display: flex; list-style: none; flex-wrap: wrap; text-align: center; } -.calendar .days{ +.calendar .days { margin-bottom: 20px; } -.calendar .weeks li{ +.calendar .weeks li { font-weight: 500; } -.calendar ul li{ - position: relative; +.calendar ul li { + position: relative; width: calc(100% / 7); } -.calendar .days li{ +.calendar .days li { z-index: 1; cursor: pointer; margin-top: 23px; } -.days li.inactive{ +.days li.inactive { color: #aaa; } -.days li.active{ +.days li.active { color: var(--white); } -.calendar .days li::before{ +.calendar .days li::before { position: absolute; content: ""; height: 35px; @@ -318,15 +328,23 @@ header .icons span:last-child{ transform: translate(-50%, -50%); } -.days li:hover::before{ +.days li:hover::before { background: #f2f2f2; } -.activo{ - background: #2a2f4f; - color: white; -} -.days li.active::before{ +.days li.active::before { background: #9b59b6; +} + +.bg-transparent { + border: none; + background: none; + cursor: pointer; + margin: 0; + padding: 0; +} + +.btn-menu { + color: #fff; } \ No newline at end of file diff --git a/css/subir_doc.css b/css/subir_doc.css new file mode 100644 index 0000000000000000000000000000000000000000..c612f2a76136823421bb1e8b8a87669bbe0ec0ec --- /dev/null +++ b/css/subir_doc.css @@ -0,0 +1,177 @@ +.container-titulo { + margin: 30px 30px; + padding: 20px; + border-bottom: 3px solid #ffffff; + opacity: .80; +} + +.container-titulo h1 { + text-align: center; + color: #ffffff; + font-weight: bold; + font-size: 45px; + font-family: 'Times New Roman', Times, serif; +} + +p.tittle-board { + padding-right: 10px; + padding-left: 20px; + color: white; + font-size: 25px; + margin-top: 5px; + +} + +.container-board { + display: flex; + margin-left: 15px; + margin-right: 15px; + overflow-x: scroll; + /* Permite el desplazamiento horizontal */ + white-space: nowrap; + /* Evita que los elementos se envuelvan a la siguiente línea */ + text-align: left; + /* Alinea los elementos a la izquierda */ +} + +.box { + flex: 0 0 auto; + margin: 0 2vw; + /* Márgenes relativos al ancho de la pantalla */ + min-width: 150px; + /* Ancho mínimo de cada caja */ + max-width: 25%; + /* Ancho máximo relativo al contenedor padre */ + +} + +.paloma { + display: inline-block; + /* Para que el icono y el texto estén en línea */ + color: white; + /* Cambia el color del icono a blanco */ + font-size: 25px; + /* Cambia el tamaño del icono (ajusta el valor según sea necesario) */ + vertical-align: middle; + /* Alinea verticalmente el icono y el texto */ + margin-right: 8px; + /* Agrega un margen derecho para separar el icono del texto (ajusta el valor según sea necesario) */ +} + +.cajas { + width: 300px; + min-height: 400px; + margin: 20px; + border: 2px dashed #fff; + background-color: rgba(142, 175, 197, 0.3); +} + +.list { + background: #e91e63; + height: 60px; + margin: 30px; + color: #fff; + display: flex; + align-items: center; + cursor: pointer; + font-weight: bold; + font-size: 20px; + opacity: 1; +} + +.list ion-icon { + width: 35px; + height: 20px; + margin-right: 5px; + margin-left: 1px; +} + +.container-addCaja { + margin-left: 35px; + margin-bottom: 10px; + color: white; +} + +.btn-info { + display: flex; + align-items: center; + justify-content: center; + text-align: center; + background-color: aliceblue; + width: 80px; + height: 60px; +} + +#plus { + width: 50px; + /* Ajusta el tamaño según sea necesario */ + height: 50px; + /* Ajusta el tamaño según sea necesario */ +} + +.nuevoTitulo { + margin: 2px; + padding: 8px; + width: 292px; + background-color: transparent; /* Establecer el fondo como transparente */ + opacity: .75; + border: none; + font-size: 25px; + color: #fff; + text-shadow: 0 0 5px rgba(255, 255, 255, 0.8); /* Ajusta los valores según sea necesario */ + +} + +.nuevoTitulo::placeholder { + /* Restablecer todos los estilos predeterminados */ + font-style: normal; /* Puede ser itálica en algunos navegadores por defecto */ + color: initial; /* Establecer el color inicial (normalmente gris) */ + opacity: 1; /* Restablecer la opacidad a su valor original */ + color: white; + text-shadow: 0 0 5px rgba(255, 255, 255, 0.8); /* Ajusta los valores según sea necesario */ +} + +.contenedor-pdf{ + margin: 2px; + padding: 8px; + width: 292px; + height: 70%; + /* Establecer el fondo como transparente */ + opacity: .75; + border: none; + font-size: 25px; + color: #fff; + text-shadow: 0 0 5px rgba(255, 255, 255, 0.8); /* Ajusta los valores según sea necesario */ +} + + +#custom-btn{ + margin-top: 40%; + width: 100%; + height: 40px; + display: block; + border: none; + outline: none; + border-radius: 25px; + color: #ffffff; + font-size: 15px; + font-weight: 500; + letter-spacing: .5spx; + text-transform: uppercase; + cursor: pointer; + background: linear-gradient(135deg, #3a8ffe 0%, #9658fe 100%); +} + + +.box .icon{ + margin-top: 10%; + font-size: 100px; + align-items: center; + color: #9658fe; +} + +.box .text{ + font-size: 18px; + font-weight: 500; + color: #fff; +} \ No newline at end of file diff --git a/css/tablero.css b/css/tablero.css new file mode 100644 index 0000000000000000000000000000000000000000..f5710648343876f8a0dfd46bcaef061fd1e75f68 --- /dev/null +++ b/css/tablero.css @@ -0,0 +1,182 @@ +.container-titulo { + margin: 0px 30px 5px; + padding: 20px 0px 0px 0px; + border-bottom: 3px solid #ffffff; + opacity: .75; +} + +.container-titulo h1 { + text-align: center; + color: #ffffff; + font-weight: bold; + font-size: 45px; + font-family: 'Times New Roman', Times, serif; +} + +p.tittle-board { + padding-right: 10px; + padding-left: 20px; + color: white; + font-size: 25px; + margin-top: 5px; + +} + +.container-board { + display: flex; + margin-left: 15px; + margin-right: 15px; + padding-bottom: 70px; + overflow-x: scroll; + /* Permite el desplazamiento horizontal */ + white-space: nowrap; + /* Evita que los elementos se envuelvan a la siguiente línea */ + text-align: left; + /* Alinea los elementos a la izquierda */ +} + +.box { + flex: 0 0 auto; + margin: 0 2vw; + /* Márgenes relativos al ancho de la pantalla */ + min-width: 150px; + /* Ancho mínimo de cada caja */ + max-width: 25%; + /* Ancho máximo relativo al contenedor padre */ + +} + +.paloma { + display: inline-block; + /* Para que el icono y el texto estén en línea */ + color: white; + /* Cambia el color del icono a blanco */ + font-size: 25px; + /* Cambia el tamaño del icono (ajusta el valor según sea necesario) */ + vertical-align: middle; + /* Alinea verticalmente el icono y el texto */ + margin-right: 8px; + /* Agrega un margen derecho para separar el icono del texto (ajusta el valor según sea necesario) */ +} + +.cajas { + width: 400px; + min-height: 480px; + margin: 6px; + border: 2px dashed #fff; + border-radius: 8px; + background-color: rgba(142, 175, 197, 0.3); +} + +.list { + background: #ef6a6a; + height: 45px; + margin: 10px 15px 10px 15px; + color: #fff; + display: flex; + overflow: hidden; + align-items: center; + cursor: pointer; + font-weight: bold; + font-size: 18px; + border-radius: 5px; + opacity: 1; +} + +.list ion-icon { + width: 35px; + height: 20px; + margin-right: 5px; + margin-left: 1px; +} + +.container-addCaja { + margin-left: 35px; + margin-bottom: 10px; + color: white; +} + +.btn-blanco { + display: flex; + align-items: center; + justify-content: center; + text-align: center; + margin: 0px 3px 0px 3px; + background-color: aliceblue; + width: 60px; + height: 35px; +} + +#plus { + width: 50px; + /* Ajusta el tamaño según sea necesario */ + height: 50px; + /* Ajusta el tamaño según sea necesario */ +} + +.nuevoTitulo { + margin: 2px 2px 0px 2px; + padding: 8px; + width: 292px; + background-color: transparent; /* Establecer el fondo como transparente */ + opacity: .75; + border: none; + font-size: 22px; + color: #fff; + text-shadow: 0 0 5px rgba(255, 255, 255, 0.8); /* Ajusta los valores según sea necesario */ + +} + +.nuevoTitulo::placeholder { + /* Restablecer todos los estilos predeterminados */ + font-style: normal; /* Puede ser itálica en algunos navegadores por defecto */ + color: initial; /* Establecer el color inicial (normalmente gris) */ + opacity: 1; /* Restablecer la opacidad a su valor original */ + color: white; + text-shadow: 0 0 5px rgba(255, 255, 255, 0.8); /* Ajusta los valores según sea necesario */ +} + +.box.cajas.paloma input.nuevoTitulo { + margin: 2px; + padding: 8px; + width: 70px; + background-color: transparent; /* Establecer el fondo como transparente */ + opacity: .75; + border: none; + font-size: 25px; + color: #fff; + text-shadow: 0 0 5px rgba(255, 255, 255, 0.8); /* Ajusta los valores según sea necesario */ +} + +.add-sprint-button{ + border: none; + background: #d4d4d4; + margin: 0; +} +.add-sprint-button:hover{ + border: none; + background: #c4c4c4; + +} +.delete{ + text-decoration: none; + display: inline-block; + background: red; + border-radius: 5px; + color: white; + font-size: 1.5rem; + font-weight: bold; + width: 45px; + height: 30px; + color: white; + margin-left: auto; + display: flex; + justify-content: center; + align-items: center; + cursor: pointer; +} +.element{ + font-size: 1.2em; + margin: 2px 0px 2px 0px; + +} \ No newline at end of file diff --git a/diagrama base de datos.mwb b/diagrama base de datos.mwb new file mode 100644 index 0000000000000000000000000000000000000000..ba402e3fc5d5ac31467373c5d65c3fd57ff44034 Binary files /dev/null and b/diagrama base de datos.mwb differ diff --git a/diagrama base de datos.mwb.bak b/diagrama base de datos.mwb.bak new file mode 100644 index 0000000000000000000000000000000000000000..804949eee26d037f24b82d12aa66d1d91a7217c9 Binary files /dev/null and b/diagrama base de datos.mwb.bak differ diff --git a/images/labsol_logo.png b/images/labsol_logo.png old mode 100644 new mode 100755 diff --git a/images/perfilwoman.png b/images/perfilwoman.png old mode 100644 new mode 100755 diff --git a/images/proyecto1/1Borderlands.jpeg b/images/proyecto1/1Borderlands.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..833e28fcc314e041cd013dd6a5068e9d333cce34 Binary files /dev/null and b/images/proyecto1/1Borderlands.jpeg differ diff --git a/images/proyecto1/1Familia.jpeg b/images/proyecto1/1Familia.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..9df0525ad5d3a6daaf3f6bb7f8765f50040ccbe2 Binary files /dev/null and b/images/proyecto1/1Familia.jpeg differ diff --git a/images/proyecto1/1Halo infinite.jpeg b/images/proyecto1/1Halo infinite.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..7ede19fafb0a19d6b96810e01a282d493cdb8fe6 Binary files /dev/null and b/images/proyecto1/1Halo infinite.jpeg differ diff --git a/images/proyecto2/2Resident evil2.jpeg b/images/proyecto2/2Resident evil2.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..48520965fa38a72974eb366ed988b52853be9f3f Binary files /dev/null and b/images/proyecto2/2Resident evil2.jpeg differ diff --git a/images/proyecto2/2ssd samsung.jpeg b/images/proyecto2/2ssd samsung.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..1cbee05eb79f0de7ac10640d7f764b4803778d52 Binary files /dev/null and b/images/proyecto2/2ssd samsung.jpeg differ diff --git a/images/proyecto3/3Borderlands.jpeg b/images/proyecto3/3Borderlands.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..833e28fcc314e041cd013dd6a5068e9d333cce34 Binary files /dev/null and b/images/proyecto3/3Borderlands.jpeg differ diff --git a/images/proyecto3/3Nier Automata.jpeg b/images/proyecto3/3Nier Automata.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..35e00da5fa4a5e3478c7b5d6bf94c0dc9fadf220 Binary files /dev/null and b/images/proyecto3/3Nier Automata.jpeg differ diff --git a/images/proyecto4/4Perfect DarkZero.jpg b/images/proyecto4/4Perfect DarkZero.jpg new file mode 100644 index 0000000000000000000000000000000000000000..91e5a85255ee7f75ee8dcf9ba62e81d306599bc7 Binary files /dev/null and b/images/proyecto4/4Perfect DarkZero.jpg differ diff --git a/images/proyecto7/7Nier Automata.jpeg b/images/proyecto7/7Nier Automata.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..35e00da5fa4a5e3478c7b5d6bf94c0dc9fadf220 Binary files /dev/null and b/images/proyecto7/7Nier Automata.jpeg differ diff --git a/images/user1.png b/images/user1.png old mode 100644 new mode 100755 diff --git a/index.html b/index.php similarity index 62% rename from index.html rename to index.php index c66b6edfaf5c135dee9ff0429db2a1c1df9f6c46..e4e77330fa32d55d29e46122cce91ba000f04198 100644 --- a/index.html +++ b/index.php @@ -1,3 +1,7 @@ + @@ -17,23 +21,20 @@ - + -
+
@@ -87,6 +93,9 @@
+
+ +
- -
-
-
-

-
- chevron_left - chevron_right -
-
-
-
    -
  • Do
  • -
  • Lu
  • -
  • Ma
  • -
  • Mi
  • -
  • Ju
  • -
  • Vi
  • -
  • Sa
  • -
-
    + -
-
-
-
diff --git a/js/calendar.js b/js/calendar.js index ade2aec90f65aae44f448cff62e0854b5a01e5c6..7e43f5dca0eb6c5413667bc36c3f10153e2ff423 100644 --- a/js/calendar.js +++ b/js/calendar.js @@ -1,3 +1,5 @@ +//Prueba 2 + const calendar = document.querySelector(".calendar"), date = document.querySelector(".date"), daysContainer = document.querySelector(".days"), diff --git a/js/principal.js b/js/principal.js index 37cd0f325f2ed2ee1b66e1cba428ced528ce39bf..f323091d94146a32e672d3c0340dd3fccd8fdc15 100644 --- a/js/principal.js +++ b/js/principal.js @@ -15,6 +15,7 @@ let toggle = document.querySelector('.toggle'); let navigation = document.querySelector('.navigation'); let main = document.querySelector('.main'); +//Holaa Mundo toggle.onclick = function(){ navigation.classList.toggle('active'); main.classList.toggle('active'); diff --git a/js/subincidencias.js b/js/subincidencias.js new file mode 100644 index 0000000000000000000000000000000000000000..cb723a36fd0289aa20751384df58e6baa2114d9b --- /dev/null +++ b/js/subincidencias.js @@ -0,0 +1,77 @@ +//const addBtn = document.querySelector(".add"); + + +function removeInput() { + this.parentElement.remove(); + i--; +} +var i = 0; + +var botonesDelSub = document.querySelectorAll(".deleteSub"); +botonesDelSub.forEach(botonDelSub => { + botonDelSub.addEventListener("click", removeInput); +}); + +/*function addInput(event){ + event.preventDefault();*/ + +//Con el final ed del modal de edicion identificar el numero de ning para el valor i +function addInput(idSprint) { + const input = document.querySelector(".subincidencias-group" + idSprint); + //var edicion = idSprint.substring(idSprint.length - 1); + if (!esNumerico(idSprint)) { + const elements = input.querySelectorAll("[name='ning']"); + if (elements.length === 0) { + + } else { + i = elements[(elements.length)-1].value; + } + } + //preventDefault(); + console.log(" pasa el if!"); + i++; + const name = document.createElement("input"); + name.type = "text"; + name.className = "form-control"; + name.placeholder = "Nombre de subincidencia"; + name.name = "nombreSub" + i; + + const labelDesc = document.createElement("label"); + labelDesc.textContent = "Descripcion"; + + const descripcion = document.createElement("textarea"); + descripcion.cols = "45"; + descripcion.rows = "10"; + descripcion.className = "form-control"; + //descripcion.placeholder = "Digite su cantidad"; + descripcion.name = "descrip" + i; + + const btn = document.createElement("a"); + btn.className = "delete"; + btn.innerHTML = "×"; + + btn.addEventListener("click", removeInput); + + const flex = document.createElement("div"); + flex.className = "flex"; + input.appendChild(flex); + + var invi = document.createElement("input"); + invi.type = "hidden"; + invi.name = "ning"; + invi.value = i; + + flex.appendChild(name); + flex.appendChild(labelDesc); + flex.appendChild(descripcion); + flex.appendChild(invi); + flex.appendChild(btn); + +} + + +function esNumerico(value) { + return typeof value === 'number'; +} + +//addBtn.addEventListener("click", addInput); \ No newline at end of file diff --git a/js/tablero.js b/js/tablero.js new file mode 100644 index 0000000000000000000000000000000000000000..d1b00cff3a20ef00e7104953b74dbd5bb3731553 --- /dev/null +++ b/js/tablero.js @@ -0,0 +1,122 @@ +let lists = document.querySelectorAll(".list"); +let boxes = document.querySelectorAll(".box"); +let agregarCajaBtn = document.getElementById("agregarCaja"); +let containerBoard = document.querySelector(".container-board"); +var idList; + +lists.forEach(function (list) { + list.addEventListener("dragstart", function (e) { + let selected = e.target; + + // Agrega eventos de arrastre a las cajas para permitir soltar en ellas + boxes.forEach(function (box) { + box.addEventListener("dragover", function (e) { + e.preventDefault(); + + }); + + box.addEventListener("drop", function (e) { + box.appendChild(selected); + actulizarInstEstado(list.id,box.id); + selected = null; + }); + }); + }); +}); + +agregarCajaBtn.addEventListener("click", function () { + let proyecto = getParameterByName('proy'); + $.ajax({ + method: "POST", + url: "../../php/tablero.php", + data: {//temporal + accion: "create", + proy: proyecto + }, + success: function (Respuesta) { + //alert(Respuesta); + let miObjetoJSON = JSON.parse(Respuesta); + if (miObjetoJSON.estado == 1) { + + let newBox = document.createElement("div"); + newBox.className = "box cajas"; + newBox.id = miObjetoJSON.id; + + let newInput = document.createElement("input"); + newInput.type = "text"; + newInput.className = "nuevoTitulo"; + newInput.placeholder = "Nuevo título"; + newInput.value = ""; + + newBox.appendChild(newInput); + containerBoard.appendChild(newBox); + + newBox.addEventListener("dragover", function (e) { + e.preventDefault(); + }); + + newBox.addEventListener("drop", function (e) { + let selected = document.querySelector(".list.dragging"); + if (selected) { + newBox.appendChild(selected); + selected.classList.remove("dragging"); + } + //console.log("idlist"+idList) + //actulizarInstEstado(list.id,newBox.id); + }); + + newInput.addEventListener("click", function () { + console.log("Contenido guardado:", newInput.value); + }); + + } else { + + } + } + }); +}); + +lists.forEach(function (list) { + list.addEventListener("dragstart", function (e) { + e.dataTransfer.setData("text/plain", ""); // necesario para que funcione en Firefox + list.classList.add("dragging"); + //console.log("idlist"+idList) + }); + + list.addEventListener("dragend", function () { + lists.forEach(function (list) { + list.classList.remove("dragging"); + idList=list.id; + }); + }); +}); + +function getParameterByName(name) { + name = name.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]"); + var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"), + results = regex.exec(location.search); + return results === null ? "" : decodeURIComponent(results[1].replace(/\+/g, " ")); +} + +function actulizarInstEstado(incid, tabid){ + //console.log(incid); + //console.log(tabid); + $.ajax({ + method: "POST", + url: "../../php/tablero.php", + data: {//temporal + accion: "actualizarInsEst", + incidenciaId: incid, + estadoId: tabid + }, + success: function (Respuesta) { + //alert(Respuesta); + let miObjetoJSON = JSON.parse(Respuesta); + if (miObjetoJSON.estado == 1) { + console.log(miObjetoJSON.sql) + } else { + + } + } + }); +} diff --git a/pages/.DS_Store b/pages/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..0d43ace7f634e050c0ebcdf339ea67cb00140028 Binary files /dev/null and b/pages/.DS_Store differ diff --git a/pages/Register_solicitante.html b/pages/Register_solicitante.php similarity index 75% rename from pages/Register_solicitante.html rename to pages/Register_solicitante.php index d3624d9de0fd14128c02263a5feee96e19b62081..711b926dc4f1c7e158559d867cf8e9d344df0011 100644 --- a/pages/Register_solicitante.html +++ b/pages/Register_solicitante.php @@ -1,3 +1,7 @@ + @@ -35,44 +39,44 @@
-
+

Registro de Solicitantes

- + Nombre
- + Apellido paterno
- + Apellido Materno
- + Correo electrónico
- + Contraseña
- +
diff --git a/pages/Register_student.html b/pages/Register_student.php similarity index 73% rename from pages/Register_student.html rename to pages/Register_student.php index 5d6c0f86ae8ace83782d66c18c4e0fdb69771dfd..a42334aa8499b42c6e6bca0292e0a6c7dc54c1f9 100644 --- a/pages/Register_student.html +++ b/pages/Register_student.php @@ -1,3 +1,7 @@ + @@ -34,47 +38,47 @@
-
+

Registro de Alumnos

- + Nombre
- + Apellido paterno
- + Apellido Materno
- + Correo electrónico
- + Contraseña
- - Institución de procedencia + + Institución de procedencia (Nombre completo)
- +
diff --git a/pages/calendario.html b/pages/calendario.html index e1bdf3b03e6d5ce4a8e5614e59c218957612f6ab..25b3c8778b48608bb5f33ad1cf1c1c0a3da27cb9 100644 --- a/pages/calendario.html +++ b/pages/calendario.html @@ -1,98 +1,108 @@ - - - - - - - - - Calendario - Eventos - - - -
-
-
-
- -
december 2015
- -
-
-
Do
-
Lu
-
Ma
-
Mi
-
Ju
-
Vi
-
Sa
-
-
-
-
- - -
- -
-
-
-
-
-
wed
-
12th december 2023
-
-
-
-
-
Añadir evento
- -
-
-
- -
-
- -
-
- -
-
- -
-
- + + + + + + + + + + Calendario - Eventos + + + + + + + + + + + + + + + + + + + + + + + + + - + + - - - + \ No newline at end of file diff --git a/pages/login.html b/pages/login.php similarity index 75% rename from pages/login.html rename to pages/login.php index 1e70c982f833d17434b8277bd4f5aeab9c76c4db..10369c745f1f140bafc6430fd54d379a6af1d6c0 100644 --- a/pages/login.html +++ b/pages/login.php @@ -1,3 +1,7 @@ +antes

'; +include "../php/log.php"; +?> @@ -31,24 +35,24 @@
-
+

Inicia sesión

- - Usuario + + Correo
- + Contraseña
- +
diff --git a/pages/proyectos.html b/pages/proyectos.html deleted file mode 100644 index 64a1537277471885b0bedb97ba0a11a18ed39217..0000000000000000000000000000000000000000 --- a/pages/proyectos.html +++ /dev/null @@ -1,220 +0,0 @@ - - - - - - - Proyectos - - - - - - - - - - -
- -
- - - - - - - - - - \ No newline at end of file diff --git a/pages/proyectos.php b/pages/proyectos.php new file mode 100644 index 0000000000000000000000000000000000000000..0a41be652946750c5f97832b601522fae0d83392 --- /dev/null +++ b/pages/proyectos.php @@ -0,0 +1,200 @@ + + + + + + + + + + + + Proyectos + + + + + + + + + + + + + + + + +
+
+
+ +
+ + + +
+ us +
+
+ + +
+

Proyectos:

+ +
+
+ +
+
+
+
+

Recientes:

+ +
+
+ +
+ +
+
+
+
+
+

Nombre Actividad

+
+
+
+
+

Proyecto

+
+
+
+
+ +
+
+ +
+
+ + +
+
+ + + + + + + + + + + + + \ No newline at end of file diff --git a/pages/proyectos/backlog.html b/pages/proyectos/backlog.html deleted file mode 100644 index 2150381e2728e9932b31d6b2965ea266b6e10aff..0000000000000000000000000000000000000000 --- a/pages/proyectos/backlog.html +++ /dev/null @@ -1,233 +0,0 @@ - - - - - - - Backlog - - - - - - - - - - -
- - - - -
- -
- -
-
-

Backlog

-
-
- -
- -
- col2 -
-
-
-
-
- - - - \ No newline at end of file diff --git a/pages/proyectos/backlog.php b/pages/proyectos/backlog.php new file mode 100644 index 0000000000000000000000000000000000000000..4deb71ef45f31322675c3cdb13d0e453cb887e3c --- /dev/null +++ b/pages/proyectos/backlog.php @@ -0,0 +1,428 @@ + + + + + + + + Backlog + + + + + + + + + + +
+ + + + +
+ +
+ +
+
+

Backlog

+
+
+
+
+ +
+ +
+ +
+
+
+ +
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/pages/proyectos/board.php b/pages/proyectos/board.php new file mode 100644 index 0000000000000000000000000000000000000000..8490fca0a118366bafdad547831590db65d81e33 --- /dev/null +++ b/pages/proyectos/board.php @@ -0,0 +1,246 @@ + + + + + + + + + + + + Tablero + + + + + + + + + + + + + + + + +
+ + + + +
+ + + + +
+

Tablero

+
+ +
+ +
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/pages/subir_doc.html b/pages/subir_doc.html new file mode 100644 index 0000000000000000000000000000000000000000..f0908ed17e13b52728c38f06d54e4b2fcd421b2f --- /dev/null +++ b/pages/subir_doc.html @@ -0,0 +1,210 @@ + + + + + + + + + + + Subir Documentos + + + + + + + + + + + + + + + + + + + + + +
+
+
+

+ +

+
+ + + +
+ us +
+
+ + + +
+

Subir Documentos

+
+ +
+ +
+ +
+ +
+ + +
+
+ +
+
+ Ningún archivo elegido, todavía! +
+ +
+
+ + +
+ +
+ +
+ + +
+ +
+ + +
+
+ +
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/php/agregarAlumnoProy.php b/php/agregarAlumnoProy.php new file mode 100644 index 0000000000000000000000000000000000000000..2a287b3871746795ceb814f57eea70ac1cde2639 --- /dev/null +++ b/php/agregarAlumnoProy.php @@ -0,0 +1,23 @@ +query($sqlAgregarAlumosProy) == true) { + + } else { + echo "

Error al asignar al grupo

"; + } + } catch (mysqli_sql_exception $e) { + echo "

Error,asignacion ya existente

"; + } + } + } else { + echo "

Error, selecciona al menos un Alumno

"; + } +} \ No newline at end of file diff --git a/php/conexion.php b/php/conexion.php new file mode 100644 index 0000000000000000000000000000000000000000..b5c9c901c09c532f5d967897aa3bd09e4148b844 --- /dev/null +++ b/php/conexion.php @@ -0,0 +1,14 @@ + \ No newline at end of file diff --git a/php/crearProyecto.php b/php/crearProyecto.php new file mode 100644 index 0000000000000000000000000000000000000000..62056bca3e9ab4356d521af0c9f6b9f3b4e83c70 --- /dev/null +++ b/php/crearProyecto.php @@ -0,0 +1,102 @@ +query($sql1); + if ($res->num_rows > 0) { + while ($row = $res->fetch_assoc()) { + $Idres = ($row["idproyect"]) + 1; + } + } else { + $Idres = 1; + } + + if ($_FILES['imagens']['size'] != 0) { + $tmp_name = $_FILES["imagens"]["tmp_name"]; + $nombrei = $_FILES['imagens']['name']; + //if (! is_dir('imgRecetas') ) mkdir ( 'imgRecetas' , 0755); + $carpeta = "../images/proyecto" . $Idres; + $config['upload_path'] = $carpeta; + if (!is_dir($carpeta)) { + if (mkdir($carpeta, 0777, true)) { + $destino = $carpeta . "/" . $Idres . $nombrei; + if (move_uploaded_file($tmp_name, $destino)) { + //echo "se subio"; + } else { + //echo $_FILES['imagens']['error']; + } + } else { + die('Fallo al crear las carpetas...'); + } + } else { + $destino = $carpeta . "/" . $Idres . $nombrei; + if (move_uploaded_file($tmp_name, $destino)) { + //echo "se subio"; + } else { + //echo $_FILES['imagens']['error']; + } + } + $sqlproy = "INSERT INTO proyecto (idproyect,nombrePr,proyectcol,img) + VALUES ('$Idres','$proy','$proycom','$destino')"; + }else{ + $sqlproy = "INSERT INTO proyecto (idproyect,nombrePr,proyectcol) + VALUES ('$Idres','$proy','$proycom')"; + } + if ($con->query($sqlproy) == true) { + + $sqlEstAl = "SELECT 'idestadoAl' FROM `estadoAl` WHERE estAl_idproyect='$Idres' ORDER BY idestadoAl ASC"; + $resEstAl = $con->query($sqlEstAl); + if ($resEstAl->num_rows > 0) { + while ($rowresEstAl = $resEstAl->fetch_assoc()) { + $IdresEstAl = ($rowresEstAl["idestadoAl"]) + 1; + } + } else { + $IdresEstAl = 1; + } + + $sqlCrearEstAl1 = "INSERT INTO `estadoAl` (idestadoAl,estadoAl,estAl_idproyect) + VALUES ('$IdresEstAl','Por hacer','$Idres'); "; + $IdresEstAl++; + + $sqlCrearEstAl2 = "INSERT INTO `estadoAl` (idestadoAl,estadoAl,estAl_idproyect) + VALUES ('$IdresEstAl','En curso','$Idres'); "; + $IdresEstAl++; + + $sqlCrearEstAl3 = "INSERT INTO `estadoAl` (idestadoAl,estadoAl,estAl_idproyect) + VALUES ('$IdresEstAl','Listo','$Idres'); "; + + $sqlEst = "SELECT 'idestadoAdm' FROM `estadoAdm` WHERE estAdm_idproyect='$Idres' ORDER BY idestadoAdm ASC"; + $resEst = $con->query($sqlEstAl); + if ($resEst->num_rows > 0) { + while ($rowresEst = $resEst->fetch_assoc()) { + $IdresEst = ($rowresEst["idestadoAdm"]) + 1; + } + } else { + $IdresEst = 1; + } + + $sqlCrearEstAdm1 = "INSERT INTO `estadoAdm` (idestadoAdm,estadoAd,estAdm_idproyect) + VALUES ('$IdresEst','En revision','$Idres'); "; + $IdresEst++; + + $sqlCrearEstAdm2 = "INSERT INTO `estadoAdm` (idestadoAdm,estadoAd,estAdm_idproyect) + VALUES ('$IdresEst','Completado','$Idres'); "; + $IdresEst++; + + $sqlCrearEst = $sqlCrearEstAl1.$sqlCrearEstAl2.$sqlCrearEstAl3.$sqlCrearEstAdm1.$sqlCrearEstAdm2; + echo $sqlCrearEst; + if ($con->multi_query($sqlCrearEst) == true) { + header("Location:./proyectos.php"); + }else{ + echo "

Error en la creación de estados

"; + } + }else{ + echo "

Error al guardar

"; + } + } + } +} diff --git a/php/crearSprint.php b/php/crearSprint.php new file mode 100644 index 0000000000000000000000000000000000000000..1a964d3ff656964b057564c661c5fbc34afa6adf --- /dev/null +++ b/php/crearSprint.php @@ -0,0 +1,24 @@ +query($sqlid); + if ($res->num_rows > 0) { + while ($row = $res->fetch_assoc()) { + $idSprint = ($row["idsprint"]) + 1; + } + } else { + $idSprint = 1; + } + $sqlInserSprint = "INSERT INTO sprint (idsprint,nombre_sp,estado,spr_idproyect) + VALUES ('$idSprint','Sprint $idSprint','inactivo','$proyecto')"; + //echo $sqlInserSprint; + if ($con->query($sqlInserSprint) == true) { + + } else { + echo "

Error al guardar

"; + } +} diff --git a/php/editarInc.php b/php/editarInc.php new file mode 100644 index 0000000000000000000000000000000000000000..d13bcf70c55b15bf341e32436ee1d4ffcc7378be --- /dev/null +++ b/php/editarInc.php @@ -0,0 +1,92 @@ +query($sqlCrearInc)) { + + $sqlAlumInc = "UPDATE tarea_a_alumno SET r_idalumno = '$RespInc' WHERE r_idtarea = $idInc"; + if ($con->query($sqlAlumInc)) { + + //echo "antes del for"; + if (isset($_POST['ning']) && !empty($_POST['ning'])) { + $ning = $_POST['ning']; + + $sqlDelSubs = "DELETE FROM `tarea` WHERE `tarea_idtarea` = '$idInc'"; + if ($con->query($sqlDelSubs) == true) { + + $sqlidIncidencia = "SELECT idtarea FROM `tarea` ORDER BY idtarea ASC"; + $resInc = $con->query($sqlidIncidencia); + if ($resInc->num_rows > 0) { + while ($rowInc = $resInc->fetch_assoc()) { + $subIdIn = ($rowInc["idtarea"]) + 1; + } + } else { + $subIdIn = 1; + } + + for ($x = 1; $x <= $ning; $x++) { + //echo "for"; + + if (isset($_POST['nombreSub' . $x])) { + + $subIdIn++; + $nombreSubInc = $_POST['nombreSub' . $x]; + $desSubInc = $_POST['descrip' . $x]; + + $sqlInsSubInc = "INSERT INTO `tarea` + (idtarea, tarea, descripcion, prioridad, tarea_idtarea, estadoAl_idestadoAl, sprint_idsprint, ta_spr_idproyect, notificador) + VALUES ('$subIdIn', '$nombreSubInc', '$desSubInc', '$prioInc', '$idInc', '$estAlInc', '$sprintInc', '$proyecto', '$InfoInc')"; + //echo $sqlpa; + + //echo $sqlInsSubInc; + if ($con->query($sqlInsSubInc)) { + + } else { + echo "

Error al guardar relacion

"; + } + } else { + echo "

Una sub-incidencia no se pudo guardar, no deje espacios en blanco

"; + //$sqld = "DELETE FROM tarea WHERE idtarea ='$idInc' "; + //$con->query($sqld); + break; + } + } + } + + } + } + } else { + echo "

Error al guardar

"; + } + } + } + } + } + } + } + } +} \ No newline at end of file diff --git a/php/editarSprints.php b/php/editarSprints.php new file mode 100644 index 0000000000000000000000000000000000000000..316992e4d0184fe2100eb97618578985ebe57ff4 --- /dev/null +++ b/php/editarSprints.php @@ -0,0 +1,52 @@ +query($sqledit) == true) { + + } else { + echo '

Error, problemas al actualizar Sprint

'; + } + //echo $sqledit; +} \ No newline at end of file diff --git a/php/eliminarInc.php b/php/eliminarInc.php new file mode 100644 index 0000000000000000000000000000000000000000..f8d63a7ba57fa7aff2336f01acda319a7bd8a8b2 --- /dev/null +++ b/php/eliminarInc.php @@ -0,0 +1,21 @@ +query($sqlDelInc) == true) { + if ($con->query($sqlDelSubInc) == true) { + + } else { + echo "

Error al eliminar subtarea

"; + } + } else { + echo "

Error al eliminar

"; + } +} diff --git a/php/eliminarMiemProy.php b/php/eliminarMiemProy.php new file mode 100644 index 0000000000000000000000000000000000000000..23bda2e246440af767ba77d4b853d753137cfd9f --- /dev/null +++ b/php/eliminarMiemProy.php @@ -0,0 +1,23 @@ +query($sqlEliminarMiemProy) == true) { + + } else { + echo "

Error al eliminar del grupo

"; + } + } catch (mysqli_sql_exception $e) { + echo "

Error,asignacion existente e inmutable

"; + } + } + } else { + echo "

Error, selecciona al menos un Miembro

"; + } +} \ No newline at end of file diff --git a/php/eliminarSprint.php b/php/eliminarSprint.php new file mode 100644 index 0000000000000000000000000000000000000000..b9428b41157a76f8b541a41944666d4ff0825c70 --- /dev/null +++ b/php/eliminarSprint.php @@ -0,0 +1,16 @@ +query($sqlDelSprint) == true) { + + } else { + echo "

Error al eliminar

"; + } +} diff --git a/php/estadoSprint.php b/php/estadoSprint.php new file mode 100644 index 0000000000000000000000000000000000000000..12b309e17d31422c25d7915cc9189be531e8d293 --- /dev/null +++ b/php/estadoSprint.php @@ -0,0 +1,27 @@ +query($sqlVerEstadoSrpints); + + if ($res->num_rows > 0) { + while ($row = $res->fetch_assoc()) { + //echo $estadoSprint; + if ($row["estado"] == 'inactivo') { + $sqlEstadoSprint = "UPDATE `sprint` SET estado = 'activo' WHERE idsprint = '$sprint' and spr_idproyect = '$proyecto'"; + //echo $sqlInserSprint; + } else { + $sqlEstadoSprint = "UPDATE `sprint` SET estado = 'inactivo' WHERE idsprint = '$sprint' and spr_idproyect = '$proyecto'"; + //echo $sqlInserSprint; + } + if ($con->query($sqlEstadoSprint) == true) { + } else { + echo "

Error al guardar

"; + } + } + } +} diff --git a/php/guardarIncidencia.php b/php/guardarIncidencia.php new file mode 100644 index 0000000000000000000000000000000000000000..39e5cc9c9873c6690f3b3d270bcde7b531eee4f5 --- /dev/null +++ b/php/guardarIncidencia.php @@ -0,0 +1,85 @@ +query($sqlidIncidencia); + if ($resInc->num_rows > 0) { + while ($rowInc = $resInc->fetch_assoc()) { + $idInc = ($rowInc["idtarea"]) + 1; + } + } else { + $idInc = 1; + } + + $proyecto = $_GET['proy']; + $nomInc = $_POST['nomIncidencia']; + $estAlInc = $_POST['estAlIncidencia']; + $DesInc = $_POST['desIncidencia']; + $InfoInc = $_POST['informadorIncidencia']; + $RespInc = $_POST['responsableIncidencia']; + $prioInc = $_POST['prioriIncidencia']; + $sprintInc = $_POST['sprintIcidencidencia']; + + $sqlCrearInc = "INSERT INTO `tarea` + (idtarea, tarea, descripcion, prioridad, estadoAl_idestadoAl, sprint_idsprint, ta_spr_idproyect, notificador) + VALUES ('$idInc', '$nomInc', '$DesInc', '$prioInc', '$estAlInc', '$sprintInc', '$proyecto', '$InfoInc')"; + //echo $sqlCrearInc; + if ($con->query($sqlCrearInc)) { + + $sqlAlumInc = "INSERT INTO tarea_a_alumno(r_idtarea,r_idalumno) + VALUES ($idInc,$RespInc)"; + if ($con->query($sqlAlumInc)) { + + $subIdIn = $idInc; + + //echo "antes del for"; + if (isset($_POST['ning'])&&!empty($_POST['ning'])) { + $ning = $_POST['ning']; + for ($x = 1; $x <= $ning; $x++) { + //echo "for"; + + if (isset($_POST['nombreSub' . $x])) { + + $subIdIn++; + $nombreSubInc = $_POST['nombreSub' . $x]; + $desSubInc = $_POST['descrip' . $x]; + + $sqlInsSubInc = "INSERT INTO `tarea` + (idtarea, tarea, descripcion, prioridad, tarea_idtarea, estadoAl_idestadoAl, sprint_idsprint, ta_spr_idproyect, notificador) + VALUES ('$subIdIn', '$nombreSubInc', '$desSubInc', '$prioInc', '$idInc', '$estAlInc', '$sprintInc', '$proyecto', '$InfoInc')"; + //echo $sqlpa; + + //echo $sqlInsSubInc; + if ($con->query($sqlInsSubInc)) { + + } else { + echo "

Error al guardar relacion

"; + } + } else { + echo "

No deje pasos en blanco

"; + $sqld = "DELETE FROM tarea WHERE idtarea ='$idInc' "; + $con->query($sqld); + break; + } + } + + } + } + } else { + echo "

Error al guardar

"; + } + } + } + } + } + } + } + } +} \ No newline at end of file diff --git a/php/log.php b/php/log.php new file mode 100755 index 0000000000000000000000000000000000000000..3401f34b1e240f571b205bf69b1c3526e107e2a4 --- /dev/null +++ b/php/log.php @@ -0,0 +1,84 @@ +query($sql); + if ($res->num_rows > 0) { + while ($row = $res->fetch_assoc()) { + $ID = $row["idalumno"]; + $usuario = $row["nombre"]; + $conth = $row["al_conthash"]; + //unset($_SESSION ['Contras']) elimina esa bariable de sesion + if (password_verify($cont, $conth)) { + $_SESSION['ID'] = $ID; + $_SESSION['Usuario'] = $usuario; + $_SESSION['Tipo'] = 1; + $con->close(); + //echo $_SESSION['Usuario']; + header("Location:../index.php"); + } else { + echo "

Contraseña incorrecta

"; + } + } + } else { + $sql = "SELECT idsolicitante, CONCAT(so_nombre,' ',so_apP,' ',so_apM) AS nombre, so_conthash FROM `solicitante` WHERE so_correo = '$usuario'"; + //echo $sql; + $res = $con->query($sql); + if ($res->num_rows > 0) { + while ($row = $res->fetch_assoc()) { + $ID = $row["idsolicitante"]; + $usuario = $row["nombre"]; + $conth = $row["so_conthash"]; + //unset($_SESSION ['Contras']) elimina esa bariable de sesion + if (password_verify($cont, $conth)) { + $_SESSION['ID'] = $ID; + $_SESSION['Usuario'] = $usuario; + $_SESSION['Tipo'] = 0; + $con->close(); + //echo $_SESSION['Usuario']; + header("Location:../index.php"); + } + } + } else { + $sql = "SELECT idadministrador, CONCAT(ad_nombre,' ',ad_apP,' ',ad_apM) AS nombre, ad_conthash FROM `administrador` WHERE ad_correo = '$usuario'"; + //echo $sql; + $res = $con->query($sql); + if ($res->num_rows > 0) { + while ($row = $res->fetch_assoc()) { + $ID = $row["idadministrador"]; + $usuario = $row["nombre"]; + $conth = $row["ad_conthash"]; + //unset($_SESSION ['Contras']) elimina esa bariable de sesion + if (password_verify($cont, $conth)) { + $_SESSION['ID'] = $ID; + $_SESSION['Usuario'] = $usuario; + $_SESSION['Tipo'] = 2; + $con->close(); + //echo $_SESSION['Usuario']; + header("Location:../index.php"); + } + } + } else { + echo '

Usuario no existente

'; + } + } + } + } else { + + echo '

Llene los campos

'; + } + } else { + + echo '

Llene los campos

'; + } +} diff --git a/php/modalCrearIncidencia.php b/php/modalCrearIncidencia.php new file mode 100644 index 0000000000000000000000000000000000000000..399ac40bfda8d7ade67c61617964beabc1a8e4b0 --- /dev/null +++ b/php/modalCrearIncidencia.php @@ -0,0 +1,138 @@ +query($sqlVerSrpints); +$id = $_SESSION['ID']; +if ($res->num_rows > 0) { + while ($row = $res->fetch_assoc()){ + //echo $row["estado"]."estado"; + echo ''; + } +} \ No newline at end of file diff --git a/php/modalEditarInc.php b/php/modalEditarInc.php new file mode 100644 index 0000000000000000000000000000000000000000..dbe1f23a97a69055a4a4cdc54af71230ede8423e --- /dev/null +++ b/php/modalEditarInc.php @@ -0,0 +1,208 @@ +query($sqlVerIncSprint); +if ($res->num_rows > 0) { + while ($row = $res->fetch_assoc()){ + echo' + + '; + } +} diff --git a/php/modalsEdSprrints.php b/php/modalsEdSprrints.php new file mode 100644 index 0000000000000000000000000000000000000000..6210e77733619efcd46031d84ee5f2bc60b584c5 --- /dev/null +++ b/php/modalsEdSprrints.php @@ -0,0 +1,54 @@ +query($sqlVerSrpints); +if ($res->num_rows > 0) { + while ($row = $res->fetch_assoc()){ + echo''; + } +} \ No newline at end of file diff --git a/php/registroAl.php b/php/registroAl.php new file mode 100755 index 0000000000000000000000000000000000000000..2f9da713b95e70637bfae9317730ea6d58d41a5b --- /dev/null +++ b/php/registroAl.php @@ -0,0 +1,91 @@ +query($sqldup); + $sqldup1 = "SELECT * FROM `alumno` WHERE al_correo = '$corr'"; + $resup1 = $con->query($sqldup1); + if (!($resup->num_rows > 0) && !($resup1->num_rows > 0)) { + $flag = false; + $institucion = $_POST['institucion']; + $sqlins = "SELECT * FROM `institucion` WHERE nombre_oficial = '$institucion' "; + $resi = $con->query($sqlins); + if ($resi->num_rows > 0) { + while ($rowi = $resi->fetch_assoc()) { + $idInstitucion = $rowi["idinstitucion"]; + } + $flag = true; + } else { + $sqlins = "SELECT * FROM `institucion` ORDER BY idinstitucion ASC"; + $resi = $con->query($sqlins); + if ($resi->num_rows > 0) { + while ($rowi = $resi->fetch_assoc()) { + $idInstitucion = ($rowi["idinstitucion"]) + 1; + } + } else { + $idInstitucion = 1; + } + $sqlinsins = "INSERT INTO `institucion` (idinstitucion, nombre_oficial) VALUES ('$idInstitucion','$institucion')"; + if ($con->query($sqlinsins) == true) { + $flag = true; + } else { + $flag = false; + echo "

Error al guardar la institucion de procedencia

"; + } + } + if ($flag) { + $sql1 = "SELECT * FROM `alumno` ORDER BY idalumno ASC"; + + $res = $con->query($sql1); + if ($res->num_rows > 0) { + while ($row = $res->fetch_assoc()) { + $IdUs = ($row["idalumno"]) + 1; + } + } else { + $IdUs = 1; + } + $cont = $_POST['contraseña']; + $conthash = password_hash($cont, PASSWORD_DEFAULT); + $sql = "INSERT INTO `alumno` (`idalumno`, `al_nombre`, `al_apP`, `al_apM`, `al_conthash`, `al_correo`, `al_idinstitucion`)VALUES + ($IdUs,'$usuario','$app','$apm','$conthash','$corr','$idInstitucion')"; + echo $sql; + if ($con->query($sql) == true) { + header("Location:login.php"); + } else { + echo "

Error al guardar usuario

"; + } + + $con->close(); + } + }else{ + echo "

Error el correo ya existe

"; + } + }else { + echo '

Error, porfavor llene todos los campos

'; + } + } else { + echo '

Error, porfavor llene todos los campos

'; + } + } else { + echo '

Error, porfavor llene todos los campos

'; + } + } else { + echo '

Error, porfavor llene todos los campos

'; + } + } else { + echo '

Error, porfavor llene todos los campos

'; + } + } else { + echo '

Error, porfavor llene todos los campos

'; + } +} diff --git a/php/registroSol.php b/php/registroSol.php new file mode 100755 index 0000000000000000000000000000000000000000..a038e2d3e83e751d526fc64186aba3ee31887f77 --- /dev/null +++ b/php/registroSol.php @@ -0,0 +1,58 @@ +query($sqldup); + $sqldup1 = "SELECT * FROM `alumno` WHERE al_correo = '$corr'"; + $resup1 = $con->query($sqldup1); + if (!($resup->num_rows > 0) && !($resup1->num_rows > 0)) { + $sql1 = "SELECT idsolicitante FROM `solicitante` ORDER BY idsolicitante ASC"; + + $res = $con->query($sql1); + if ($res->num_rows > 0) { + while ($row = $res->fetch_assoc()) { + $IdUs = ($row["idsolicitante"]) + 1; + } + } else { + $IdUs = 1; + } + $cont = $_POST['contraseña']; + $conthash = password_hash($cont, PASSWORD_DEFAULT); + $sql = "INSERT INTO `solicitante` (`idsolicitante`, `so_nombre`, `so_apP`, `so_apM`, `so_conthash`, `so_correo`)VALUES + ($IdUs,'$usuario','$app','$apm','$conthash','$corr')"; + echo $sql; + if ($con->query($sql) == true) { + header("Location:login.php"); + } else { + echo "

Error al guardar

"; + } + + $con->close(); + }else{ + echo "

Error el correo ya existe

"; + } + } else { + echo '

Error, porfavor llene todos los campos

'; + } + } else { + echo '

Error, porfavor llene todos los campos

'; + } + } else { + echo '

Error, porfavor llene todos los campos

'; + } + } else { + echo '

Error, porfavor llene todos los campos

'; + } + } else { + echo '

Error, porfavor llene todos los campos

'; + } +} diff --git a/php/sessionestado.php b/php/sessionestado.php new file mode 100755 index 0000000000000000000000000000000000000000..98fd7235c291282772f83c395e44ba9053010cc9 --- /dev/null +++ b/php/sessionestado.php @@ -0,0 +1,8 @@ + \ No newline at end of file diff --git a/php/tablero.php b/php/tablero.php new file mode 100644 index 0000000000000000000000000000000000000000..5b10cc84bc58beee1acff5761d0020ef73fbbb90 --- /dev/null +++ b/php/tablero.php @@ -0,0 +1,81 @@ +query($Select); + if ($res->num_rows > 0) { + while ($row = $res->fetch_assoc()) { + $idestAl = ($row["idestadoAl"]) + 1; + } + } else { + $idestAl = '1'; + } + $Insertar = "INSERT INTO estadoAl (idestadoAl,estadoAl,estAl_idproyect) VALUES ($idestAl,'Nuevo título','$proyecto')"; + if ($con->query($Insertar) == true) { + $Respuesta["estado"] = 1; + $Respuesta["id"] = $idestAl; + $Respuesta["mensaje"] = "Tablero agregado"; + } else { + $Respuesta["estado"] = 0; + $Respuesta["mensaje"] = "Ocurrio un error desconocido"; + } + //$Respuesta["estado"] = 1; + $con->close(); + echo json_encode($Respuesta); + +} + +function actualizarInsEst ($con){ + + $incidenia = $_POST['incidenciaId']; + $tablero = $_POST['estadoId']; + $sqlCrearInc = "UPDATE `tarea` SET estadoAl_idestadoAl = '$tablero' + WHERE `idtarea` = '$incidenia'"; + if ($con->query($sqlCrearInc)) { + $Respuesta["estado"] = 1; + //$Respuesta["sql"] = $sqlCrearInc; + }else{ + $Respuesta["estado"] = 0; + } + //$Respuesta["estado"] = 1; + $Respuesta["sql"] = $sqlCrearInc; + $con->close(); + echo json_encode($Respuesta); +} \ No newline at end of file diff --git a/php/verAlumnos.php b/php/verAlumnos.php new file mode 100644 index 0000000000000000000000000000000000000000..9824ba8594b673871713d9c648d60050f95f4028 --- /dev/null +++ b/php/verAlumnos.php @@ -0,0 +1,23 @@ +query($sqlverAlumnos); + +if($res->num_rows>0){ + while($row = $res->fetch_assoc()){ + echo' + '.$row["nombre"].' + '.$row["al_correo"].' + + + + '; + } +} +else{ + echo "

Error no se encontraron datos

"; +} diff --git a/php/verEquipo.php b/php/verEquipo.php new file mode 100644 index 0000000000000000000000000000000000000000..41cb34be99865587553c45a31cc991bab8202a8a --- /dev/null +++ b/php/verEquipo.php @@ -0,0 +1,34 @@ +query($sqlVerEquipo); +if ($resVerEq->num_rows > 0) { + while ($rowVerEq = $resVerEq->fetch_assoc()) { + + if ($rowVerEq["idalumno"] == $_SESSION['ID'] && $_SESSION['Tipo'] == 0) { + + } else { + echo ' + '; + } + + } + echo ' + '; +} else { + echo ' + + '; +} \ No newline at end of file diff --git a/php/verEstadosInc.php b/php/verEstadosInc.php new file mode 100644 index 0000000000000000000000000000000000000000..7775527368d3cc32bb6621d98681e29ff11ccf36 --- /dev/null +++ b/php/verEstadosInc.php @@ -0,0 +1,44 @@ +query($sqEstadosAlumn); + +if($res->num_rows>0){ + $i=1; + while($row = $res->fetch_assoc()){ + echo' +
'; + if($i<=3){ + echo' + '; + }else{ + echo' + '; + } + + $sqlVerInci = "SELECT * FROM `tarea` ta JOIN `sprint` sp ON(ta.sprint_idsprint=sp.`idsprint`) + WHERE ta.estadoAl_idestadoAl = '".$row["idestadoAl"]."' AND sp.estado = 'activo' AND + `sp`.`spr_idproyect` = '$proyecto' AND ta.ta_spr_idproyect = '$proyecto' AND ta.tarea_idtarea IS NULL ORDER BY `tarea_idtarea` ASC"; + + $resVerInci =$con->query($sqlVerInci); + if($resVerInci->num_rows>0){ + + while($rowVerInci = $resVerInci->fetch_assoc()){ + echo' +
+ '.$rowVerInci["tarea"].' +
'; + } + } + + echo '
'; + $i++; + } + +} +else{ + echo "

Error no se encontraron datos

"; +} diff --git a/php/verMiembros.php b/php/verMiembros.php new file mode 100644 index 0000000000000000000000000000000000000000..3f682fa0403949edd7f83a59cf694b4a20c33928 --- /dev/null +++ b/php/verMiembros.php @@ -0,0 +1,23 @@ +query($sqlverAlumnos); + +if($res->num_rows>0){ + while($row = $res->fetch_assoc()){ + echo' + '.$row["nombre"].' + '.$row["al_correo"].' + + + + '; + } +} +else{ + echo "

Error no se encontraron datos

"; +} diff --git a/php/verSprint.php b/php/verSprint.php new file mode 100644 index 0000000000000000000000000000000000000000..1ea08c1fc4182d93b1898ac14ab4c1474a3b7a5d --- /dev/null +++ b/php/verSprint.php @@ -0,0 +1,157 @@ +query($sqlVerSrpints); +if ($res->num_rows > 0) { + while ($row = $res->fetch_assoc()){ + //echo $row["estado"]."estado"; + echo '
+
+
+
+ +
+
+ +
+
+
'; + if($row["estado"] == "inactivo"){ + echo''; + }else{ + echo''; + } + echo' +
+
+ +
+
+
+
+
'; + $sqlVerInci = "SELECT * FROM `tarea` WHERE sprint_idsprint = '".$row["idsprint"]."' + AND tarea_idtarea IS NULL AND ta_spr_idproyect = $proyecto"; + //echo $sqlVerInci; + $resVerInc = $con->query($sqlVerInci); + if ($resVerInc->num_rows > 0) { + while ($rowVerInc = $resVerInc->fetch_assoc()){ + $color = $rowVerInc["estadoAl_idestadoAl"]; + switch ($color){ + case 1: + echo' +
'; + break; + case 2: + echo' +
'; + break; + case 3: + echo' +
'; + break; + default: + echo' +
'; + break; + } + + echo' +
+

'.$rowVerInc["tarea"].'

+
+
+ +
+ +
'; + } + } + echo' +
+
+
+
+ +
+
+
+
+
+
'; + } +} \ No newline at end of file diff --git a/php/visualizarProyectos.php b/php/visualizarProyectos.php new file mode 100644 index 0000000000000000000000000000000000000000..10730d93987080b8d15f1f53022f0f085e46f91a --- /dev/null +++ b/php/visualizarProyectos.php @@ -0,0 +1,44 @@ +query($sqlVproy); +if ($res->num_rows > 0) { + while ($row = $res->fetch_assoc()) { + echo ''; + } +} else { + echo "

sin proyectos visibles

"; +} diff --git a/prueba.html b/prueba.html new file mode 100644 index 0000000000000000000000000000000000000000..1b0376a64914c91b2a86d7f91d1c6dc2839e0008 --- /dev/null +++ b/prueba.html @@ -0,0 +1,70 @@ + + + + + + Selector de Hora + + + +
+ + + + +
+ + + + diff --git a/prueba1.html b/prueba1.html new file mode 100644 index 0000000000000000000000000000000000000000..15278c18ebd6916206f6e9a4b1aeb49aafee3e91 --- /dev/null +++ b/prueba1.html @@ -0,0 +1,123 @@ + + + + + + + + + + + + Labsol Proyects + + + + + + + + + + + + + + + +
+
+
+ +
+ + + +
+ usuario +
+
+ + + +
+ + + + + + + + + + + \ No newline at end of file diff --git a/verPdf.html b/verPdf.html new file mode 100644 index 0000000000000000000000000000000000000000..ebd44c4d266b563f2cd0bedd94d302491bb1fe32 --- /dev/null +++ b/verPdf.html @@ -0,0 +1,116 @@ + + + + + + Modal PDF User + + + + + + + + + + + +