diff --git a/db/mysql-with-inserts.sql b/db/mysql-with-inserts.sql index 4e7fc75622a5c840ed1651c0022ed034f4af475a..f4335063fea5e04f64722060c78f26ced093322b 100644 --- a/db/mysql-with-inserts.sql +++ b/db/mysql-with-inserts.sql @@ -1,127 +1,44 @@ --- phpMyAdmin SQL Dump --- version 4.5.1 --- http://www.phpmyadmin.net --- --- Servidor: 127.0.0.1 --- Tiempo de generación: 24-02-2017 a las 13:08:34 --- Versión del servidor: 10.1.9-MariaDB --- Versión de PHP: 5.6.15 - -SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; -SET time_zone = "+00:00"; - - -/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; -/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; -/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; -/*!40101 SET NAMES utf8mb4 */; - --- --- Base de datos: `daaexample` --- -CREATE DATABASE IF NOT EXISTS `daaexample` DEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci; -USE `daaexample`; - --- -------------------------------------------------------- - --- --- Estructura de tabla para la tabla `people` --- - -DROP TABLE IF EXISTS `people`; -CREATE TABLE `people` ( - `id` int(11) NOT NULL, - `name` varchar(50) NOT NULL, - `surname` varchar(100) NOT NULL -) ENGINE=InnoDB DEFAULT CHARSET=latin1; - --- --- RELACIONES PARA LA TABLA `people`: --- - --- -------------------------------------------------------- - --- --- Estructura de tabla para la tabla `pet` --- - -DROP TABLE IF EXISTS `pet`; -CREATE TABLE `pet` ( - `id` int(11) NOT NULL, - `name` varchar(45) NOT NULL, - `breed` varchar(45) DEFAULT NULL, - `idOwner` int(11) NOT NULL -) ENGINE=InnoDB DEFAULT CHARSET=latin1; - --- --- RELACIONES PARA LA TABLA `pet`: --- `idOwner` --- `people` -> `id` --- - --- -------------------------------------------------------- - --- --- Estructura de tabla para la tabla `users` --- - -DROP TABLE IF EXISTS `users`; -CREATE TABLE `users` ( - `login` varchar(100) NOT NULL, - `password` varchar(64) NOT NULL -) ENGINE=InnoDB DEFAULT CHARSET=latin1; - --- --- RELACIONES PARA LA TABLA `users`: --- - --- --- Índices para tablas volcadas --- - --- --- Indices de la tabla `people` --- -ALTER TABLE `people` - ADD PRIMARY KEY (`id`); - --- --- Indices de la tabla `pet` --- -ALTER TABLE `pet` - ADD PRIMARY KEY (`id`), - ADD KEY `idOwner_idx` (`idOwner`); - --- --- Indices de la tabla `users` --- -ALTER TABLE `users` - ADD PRIMARY KEY (`login`); - --- --- AUTO_INCREMENT de las tablas volcadas --- - --- --- AUTO_INCREMENT de la tabla `people` --- -ALTER TABLE `people` - MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=8; --- --- AUTO_INCREMENT de la tabla `pet` --- -ALTER TABLE `pet` - MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=14; --- --- Restricciones para tablas volcadas --- - --- --- Filtros para la tabla `pet` --- -ALTER TABLE `pet` - ADD CONSTRAINT `idOwner` FOREIGN KEY (`idOwner`) REFERENCES `people` (`id`) ON DELETE CASCADE ON UPDATE CASCADE; - -/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; -/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; -/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; +CREATE DATABASE `daaexample`; + +CREATE TABLE `daaexample`.`people` ( + `id` int NOT NULL AUTO_INCREMENT, + `name` varchar(50) NOT NULL, + `surname` varchar(100) NOT NULL, + PRIMARY KEY (`id`) +); + +CREATE TABLE `daaexample`.`pet` ( + `id` int NOT NULL AUTO_INCREMENT, + `name` varchar(45) NOT NULL, + `breed` varchar(45) NOT NULL, + `idOwner` int NOT NULL + PRIMARY KEY (`id`) +); + +CREATE TABLE `daaexample`.`users` ( + `login` varchar(100) NOT NULL, + `password` varchar(64) NOT NULL, + PRIMARY KEY (`login`) +); + +ALTER TABLE `pet` ADD CONSTRAINT `idOwner` FOREIGN KEY (`idOwner`) REFERENCES `people` (`id`) ON DELETE CASCADE ON UPDATE CASCADE; + + +GRANT ALL ON `daaexample`.* TO 'daa'@'localhost' IDENTIFIED BY 'daa'; + +INSERT INTO `daaexample`.`people` (`id`,`name`,`surname`) VALUES (0,'Antón','Pérez'); +INSERT INTO `daaexample`.`people` (`id`,`name`,`surname`) VALUES (0,'Manuel','Martínez'); +INSERT INTO `daaexample`.`people` (`id`,`name`,`surname`) VALUES (0,'Laura','Reboredo'); +INSERT INTO `daaexample`.`people` (`id`,`name`,`surname`) VALUES (0,'Perico','Palotes'); +INSERT INTO `daaexample`.`people` (`id`,`name`,`surname`) VALUES (0,'Ana','María'); +INSERT INTO `daaexample`.`people` (`id`,`name`,`surname`) VALUES (0,'María','Nuevo'); +INSERT INTO `daaexample`.`people` (`id`,`name`,`surname`) VALUES (0,'Alba','Fernández'); +INSERT INTO `daaexample`.`people` (`id`,`name`,`surname`) VALUES (0,'Asunción','Jiménez'); + +INSERT INTO `daaexample`.`pet` (`id`,`name`,`breed`, `idOwner`) VALUES (0,'Jackye','Pitbull', '1'); +INSERT INTO `daaexample`.`pet` (`id`,`name`,`breed`, `idOwner`) VALUES (0,'Robert','Persian cat', '2'); +INSERT INTO `daaexample`.`pet` (`id`,`name`,`breed`, `idOwner`) VALUES (0,'Milles','Hot dog', '3'); + +-- The password for each user is its login suffixed with "pass". For example, user "admin" has the password "adminpass". +INSERT INTO `daaexample`.`users` (`login`,`password`) VALUES ('admin', '43f413b773f7d0cfad0e8e6529ec1249ce71e8697919eab30d82d800a3986b70'); +INSERT INTO `daaexample`.`users` (`login`,`password`) VALUES ('normal', '688f21dd2d65970f174e2c9d35159250a8a23e27585452683db8c5d10b586336'); diff --git a/db/mysql.sql b/db/mysql.sql new file mode 100644 index 0000000000000000000000000000000000000000..3c68e11ee095d379d3f58457f26a4bb91a0c0191 --- /dev/null +++ b/db/mysql.sql @@ -0,0 +1,24 @@ +CREATE DATABASE `daaexample`; + +CREATE TABLE `daaexample`.`people` ( + `id` int NOT NULL AUTO_INCREMENT, + `name` varchar(50) NOT NULL, + `surname` varchar(100) NOT NULL, + PRIMARY KEY (`id`) +); + +CREATE TABLE `daaexample`.`pets` ( + `id` int NOT NULL AUTO_INCREMENT, + `name` varchar(50) NOT NULL, + `breed` varchar(100) NOT NULL, + `idOwner` varchar(100) NOT NULL, + PRIMARY KEY (`id`) +); + +CREATE TABLE `daaexample`.`users` ( + `login` varchar(100) NOT NULL, + `password` varchar(64) NOT NULL, + PRIMARY KEY (`login`) +); + +GRANT ALL ON `daaexample`.* TO 'daa'@'localhost' IDENTIFIED BY 'daa'; diff --git a/src/main/webapp/js/view/pets.js b/src/main/webapp/js/view/pets.js index 8c5a09b72f8f5e58380bd5a2af0c5d78e6fdb0ed..123307de74048540b1a8c41818b2de029bb16cc3 100644 --- a/src/main/webapp/js/view/pets.js +++ b/src/main/webapp/js/view/pets.js @@ -3,6 +3,7 @@ */ var PetsView = (function() { var dao; + var peopleDAO; // Referencia a this que permite acceder a las funciones públicas desde las funciones de jQuery. var self; @@ -12,8 +13,9 @@ var PetsView = (function() { var formQuery = '#' + formId; var listQuery = '#' + listId; - function PetsView(petsDao, formContainerId, listContainerId) { + function PetsView(petsDao, peopleDao, formContainerId, listContainerId) { dao = petsDao; + peopleDAO = peopleDao; self = this; insertPetsForm($('#' + formContainerId)); @@ -135,11 +137,17 @@ var PetsView = (function() { } var insertPetsForm = function(parent) { + + var l = peopleDAO.listPeople(); + parent.append( '