diff --git a/.gcloudignore b/.gcloudignore new file mode 100644 index 0000000..5b26e15 --- /dev/null +++ b/.gcloudignore @@ -0,0 +1,27 @@ +# This file specifies files that are *not* uploaded to Google Cloud Platform +# using gcloud. It follows the same syntax as .gitignore, with the addition of +# "#!include" directives (which insert the entries of the given .gitignore-style +# file at that point). +# +# For more information, run: +# $ gcloud topic gcloudignore +# +.gcloudignore +# If you would like to upload your .git directory, .gitignore file or files +# from your .gitignore file, remove the corresponding line +# below: +.git +.gitignore + +# Node.js dependencies: +node_modules/ + +# Archivos de desarrollo +src/ +public/ + +# Archivos de JetBrains +.idea/ + +# Archivos de TypeScript +*.ts \ No newline at end of file diff --git a/.gitignore b/.gitignore index 185e663..c20fb41 100644 --- a/.gitignore +++ b/.gitignore @@ -19,3 +19,6 @@ yarn-error.log* *.njsproj *.sln *.sw* + +# Archivos js (ya que estoy usando ts) +/Backend/*.js \ No newline at end of file diff --git a/Backend/VARIABLES.ts b/Backend/VARIABLES.ts new file mode 100644 index 0000000..c7e8e60 --- /dev/null +++ b/Backend/VARIABLES.ts @@ -0,0 +1,8 @@ +const SQL_CONNECT_DATA:object = { + host: '35.193.16.64', + user: 'Araozu', + password: 'xsakah4b', + database: 'Usuarios_DB' +}; + +module.exports.sqlConnectData = SQL_CONNECT_DATA; \ No newline at end of file diff --git a/Backend/registrarUsuario.ts b/Backend/registrarUsuario.ts new file mode 100644 index 0000000..1b80026 --- /dev/null +++ b/Backend/registrarUsuario.ts @@ -0,0 +1,89 @@ +const exec = (nombre:string, email:string, pass:string, sesion:any) => + new Promise((resolve, reject) => { + const mysql = require('mysql'); + const SQL_CONNECT_DATA = require('./VARIABLES').sqlConnectData; + + const con = mysql.createConnection(SQL_CONNECT_DATA); + + con.connect((err:any) => { + if (err) reject("Error al conectarse a la BBDD. registrarUsuarios.ts 10.\n" + err); + + con.query( + `SELECT email FROM usuarios WHERE email='${email}'`, + (err:any, respuesta:any) => { + const data = JSON.stringify(respuesta); + if (data === "[]") { + + con.query( + `INSERT INTO usuarios (GOOGLE_ID, nombre, email, img, carritoActual, contrasena, ROL) + VALUES ('0','${nombre}', '${email}', '/img/usuario.png', '{}', '${pass}', 'user' )`, + (err:any, respuesta:any) => { + if (err) reject ('Error al ejecutar SQL. registrarUsuario.ts 22\n' + err); + + /* El servidor me obligo a hacer esto en vez de usar SELECT LAST_INSERT_ID() */ + con.query( + `SELECT USER_ID FROM usuarios WHERE email='${email}'`, + (err:any, respuesta:any) => { + if (err) reject ('Error al ejecutar SQL. registrarUsuario.ts 27\n' + err); + + /* Crea la variable de sesion */ + sesion.nombre = nombre; + sesion.email = email; + sesion.img = '/img/usuario.png'; + sesion.carritoActual = '{}'; + sesion.USER_ID = respuesta[0]["USER_ID"]; + sesion.ROL = 'user'; + + sesion.save((err:any) => { + if (err) + console.log(`Error :c\n${err}`) + }); + + const datos = { + nombre, + email, + img: '/img/usuario.png', + carritoActual: '{}', + 'USER_ID': respuesta[0]["USER_ID"], + ROL: 'user', + logged: true + }; + resolve(`{ "existe": false, "creado": true, "data": ${JSON.stringify(datos)} }`); + } + ); + } + ); + + } else { + resolve(`{ "existe": true }`); + } + } + ); + + }); + }); + +const registrar = (req:any, res:any) => { + res.header('Access-Control-Allow-Origin', 'http://localhost:8081'); + res.header('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE'); + res.header('Access-Control-Allow-Headers', 'Content-Type'); + + const sesion = req.session; + + const nombre:string = req.body.nombre; + const email:string = req.body.email; + const pass:string = req.body.pass; + + if (nombre && email && pass) { + exec(nombre, email, pass, sesion) + .then(respuesta => { + res.send(respuesta); + }) + .catch(reason => console.log("Ups. Un error.\n" + reason)); + } else { + res.send("Error, datos insuficientes."); + } + +}; + +module.exports.registrar = registrar; \ No newline at end of file diff --git a/Backend/start.ts b/Backend/revisarUsuarioG.ts similarity index 68% rename from Backend/start.ts rename to Backend/revisarUsuarioG.ts index 5ddf51e..3227662 100644 --- a/Backend/start.ts +++ b/Backend/revisarUsuarioG.ts @@ -1,38 +1,28 @@ -declare var require:any; - -const express = require('express'); -const app = express(); -app.use(express.json()); -app.use(express.urlencoded()); -const port:number = 3000; - const validator = require('./google_validation.js').validator; const crearUsuario = (con:any, data:object) => { return new Promise((resolve, reject) => { - con.query (`INSERT INTO usuarios (nombre, email, img, carritoActual, GOOGLE_ID)\ - VALUES ( '${(data as any)["nombreUsuario"]}', '${(data as any)["emailUsuario"]}', - '${(data as any)["imagenUsuario"]}', '{}', '${(data as any)["googleID"]}')`, + con.query ( + `INSERT INTO usuarios (nombre, email, img, carritoActual, GOOGLE_ID, ROL)\ + VALUES ('${(data as any)["nombreUsuario"]}', '${(data as any)["emailUsuario"]}', + '${(data as any)["imagenUsuario"]}', '{}', '${(data as any)["googleID"]}', 'user')`, (err:any, res:string) => { if (err) { - reject("Error al ejecutar query SQL (start.ts fila 18))...\n" + err); + reject("Error al ejecutar query SQL (revisarUsuarioG.ts fila 18))...\n" + err); } + console.log("Resultado de añadir usuario a la BBDD (revisarUsuarioG.ts 22):\n" + res); resolve("Exito."); } ); }); }; -const revisarUsuarioG = (usuario:object) => { +const revisarUsuarioG = (usuario:object, sesion:any) => { return new Promise((resolve, reject) => { const mysql = require('mysql'); + const SQL_CONNECT_DATA = require('./VARIABLES').sqlConnectData; - const con = mysql.createConnection({ - host: '35.193.16.64', - user: 'Araozu', - password: 'xsakah4b', - database: 'Usuarios_DB' - }); + const con = mysql.createConnection(SQL_CONNECT_DATA); con.connect( (err:any) => { if (err) { @@ -44,7 +34,7 @@ const revisarUsuarioG = (usuario:object) => { const imagenUsuario:string = (usuario as any)["picture"]; const googleID:number = (usuario as any)["sub"]; - con.query (`SELECT nombre, email, img, carritoActual, USER_ID FROM usuarios WHERE GOOGLE_ID='${googleID}'`, + con.query (`SELECT nombre, email, img, carritoActual, USER_ID, ROL FROM usuarios WHERE GOOGLE_ID='${googleID}'`, (err:any, response:any) => { if (err) { reject("Error al ejecutar query SQL"); @@ -54,7 +44,7 @@ const revisarUsuarioG = (usuario:object) => { crearUsuario(con, {nombreUsuario, emailUsuario, imagenUsuario, googleID}) .then( () => { resolve(`{ "nombre": "${nombreUsuario}", "email": "${emailUsuario}", "img": "${imagenUsuario}", - "carrito": {}`); + "carrito": {}, "rol": "user"}`); }) .catch((msg:string) => { reject("Error al crear el usuario...\n" + msg); @@ -69,8 +59,8 @@ const revisarUsuarioG = (usuario:object) => { }); }; -app.post('/log-inG',(req:any, res:any) => { - res.header('Access-Control-Allow-Origin', 'http://localhost:8080'); +const revisarUsuario = (req:any, res:any) => { + res.header('Access-Control-Allow-Origin', 'http://localhost:8081'); res.header('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE'); res.header('Access-Control-Allow-Headers', 'Content-Type'); @@ -78,15 +68,13 @@ app.post('/log-inG',(req:any, res:any) => { validator(token) .then( (usuario:object) => { - revisarUsuarioG(usuario) + revisarUsuarioG(usuario, req.session) .then(response => res.send(response.toString())) .catch(err => res.send(err)) }) .catch(console.error); -}); +}; -app.listen(port, () => { - console.log(`Estoy escuchando el puerto ${port} we v:`); -}); +module.exports.revisarUsuarioG = revisarUsuario; \ No newline at end of file diff --git a/Backend/usuarioLogueado.ts b/Backend/usuarioLogueado.ts new file mode 100644 index 0000000..7a30b50 --- /dev/null +++ b/Backend/usuarioLogueado.ts @@ -0,0 +1,34 @@ +function revisarSesion(req:any, res:any) { + res.header('Access-Control-Allow-Origin', 'http://localhost:8081'); + res.header('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE'); + res.header('Access-Control-Allow-Headers', 'Content-Type'); + + const sesion = req.session; + + const USER_ID = sesion.USER_ID; + if (USER_ID) { + console.log("Recorde el usuario :3"); + + const nombre = sesion.nombre; + const email = sesion.email; + const img = sesion.img; + const carritoActual = sesion.carritoActual; + const ROL = sesion.ROL; + + const data = { + nombre, + email, + img, + carritoActual: JSON.parse(carritoActual), + ROL, + USER_ID, + logged: true + }; + + res.send(JSON.stringify(data)); + } else { + res.send(`{ "logged": false }`); + } +} + +module.exports.revisarSesion = revisarSesion; \ No newline at end of file diff --git a/Backend/usuarios.ts b/Backend/usuarios.ts new file mode 100644 index 0000000..781a357 --- /dev/null +++ b/Backend/usuarios.ts @@ -0,0 +1,41 @@ +/* Metodo que obtiene los usuarios que existen. */ +const obtenerUsuarios = () => { + return new Promise((resolve, reject) => { + const con = require('mysql').createConnection({ + host: '35.193.16.64', + user: 'Araozu', + password: 'xsakah4b', + database: 'Usuarios_DB' + }); + + con.connect( (err:any) => { + if (err) { + console.log("Error en usuarios.ts 13.\n" + err); + reject("Error :c"); + } + + con.query( + `SELECT USER_ID, GOOGLE_ID, nombre, ROL FROM usuarios WHERE ROL='user'`, + (err:any, response:any) => { + if (err) { + console.log("Error en usuarios.ts 21.\n" + err); + reject("Error :c"); + } + resolve(response); + } + ); + }); + }); +}; + +const procesar = (req:any, res:any) => { + res.header('Access-Control-Allow-Origin', 'http://localhost:8081'); + res.header('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE'); + res.header('Access-Control-Allow-Headers', 'Content-Type'); + + obtenerUsuarios() + .then((resultado:object) => res.send(JSON.stringify(resultado))) + .catch(reason => res.send(reason)); +}; + +module.exports.usuarios = procesar; \ No newline at end of file diff --git a/app.ts b/app.ts new file mode 100644 index 0000000..cb26aaa --- /dev/null +++ b/app.ts @@ -0,0 +1,25 @@ +const expressr = require('express'); +const apuri = expressr(); +const session = require('express-session'); + +apuri.use(expressr.json()); +apuri.use(expressr.urlencoded()); +apuri.use(expressr.static('dist')); +apuri.use(session({ + secret: 'azopotamadre we v:', + resave: false, + saveUninitialized: false +})); + +/* PUERTO NECESARIO PARA DEPLOYAR EN GOOGLE CLOUD!!! */ +const puerto = 8080; + +apuri.post('/log-inG', require('./Backend/revisarUsuarioG.js').revisarUsuarioG); +apuri.post('/usuarios', require('./Backend/usuarios.js').usuarios); +apuri.post('/registro', require('./Backend/registrarUsuario.js').registrar); +apuri.post('/sesion', require('./Backend/usuarioLogueado').revisarSesion); + +apuri.get('/'); + + +apuri.listen(puerto, () => console.log(`Estoy escuchando el puerto ${puerto} we v:`)); \ No newline at end of file diff --git a/app.yaml b/app.yaml new file mode 100644 index 0000000..10a3713 --- /dev/null +++ b/app.yaml @@ -0,0 +1,6 @@ +runtime: nodejs8 + +instance_class: F2 + +env_variables: + BUCKET_NAME: "example-gcs-bucket" diff --git a/babel.config.js b/babel.config.js index ba17966..fd1df2a 100644 --- a/babel.config.js +++ b/babel.config.js @@ -2,4 +2,4 @@ module.exports = { presets: [ '@vue/app' ] -} +}; diff --git a/package-lock.json b/package-lock.json index 39ea4af..bea6ed0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -796,6 +796,80 @@ "integrity": "sha512-yprFYuno9FtNsSHVlSWd+nRlmGoAbqbeCwOryP6sC/zoCjhpArcRMYp19EvpSUSizJAlsXEwJv+wcWS9XaXdMw==", "dev": true }, + "@types/body-parser": { + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.17.0.tgz", + "integrity": "sha512-a2+YeUjPkztKJu5aIF2yArYFQQp8d51wZ7DavSHjFuY1mqVgidGyzEQ41JIVNy82fXj8yPgy2vJmfIywgESW6w==", + "requires": { + "@types/connect": "3.4.32", + "@types/node": "10.12.1" + } + }, + "@types/connect": { + "version": "3.4.32", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.32.tgz", + "integrity": "sha512-4r8qa0quOvh7lGD0pre62CAb1oni1OO6ecJLGCezTmhQ8Fz50Arx9RUszryR8KlgK6avuSXvviL6yWyViQABOg==", + "requires": { + "@types/node": "10.12.1" + } + }, + "@types/events": { + "version": "1.2.0", + "resolved": "http://registry.npmjs.org/@types/events/-/events-1.2.0.tgz", + "integrity": "sha512-KEIlhXnIutzKwRbQkGWb/I4HFqBuUykAdHgDED6xqwXJfONCjF5VoE0cXEiurh3XauygxzeDzgtXUqvLkxFzzA==" + }, + "@types/express": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.16.0.tgz", + "integrity": "sha512-TtPEYumsmSTtTetAPXlJVf3kEqb6wZK0bZojpJQrnD/djV4q1oB6QQ8aKvKqwNPACoe02GNiy5zDzcYivR5Z2w==", + "requires": { + "@types/body-parser": "1.17.0", + "@types/express-serve-static-core": "4.16.0", + "@types/serve-static": "1.13.2" + } + }, + "@types/express-serve-static-core": { + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.16.0.tgz", + "integrity": "sha512-lTeoCu5NxJU4OD9moCgm0ESZzweAx0YqsAcab6OB0EB3+As1OaHtKnaGJvcngQxYsi9UNv0abn4/DRavrRxt4w==", + "requires": { + "@types/events": "1.2.0", + "@types/node": "10.12.1", + "@types/range-parser": "1.2.2" + } + }, + "@types/mime": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-2.0.0.tgz", + "integrity": "sha512-A2TAGbTFdBw9azHbpVd+/FkdW2T6msN1uct1O9bH3vTerEHKZhTXJUQXy+hNq1B0RagfU8U+KBdqiZpxjhOUQA==" + }, + "@types/mysql": { + "version": "2.15.5", + "resolved": "https://registry.npmjs.org/@types/mysql/-/mysql-2.15.5.tgz", + "integrity": "sha512-4QAISTUGZbcFh7bqdndo08xRdES5OTU+JODy8VCZbe1yiXyGjqw1H83G43XjQ3IbC10wn9xlGd44A5RXJwNh0Q==", + "requires": { + "@types/node": "10.12.1" + } + }, + "@types/node": { + "version": "10.12.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-10.12.1.tgz", + "integrity": "sha512-i1sl+WCX2OCHeUi9oi7PiCNUtYFrpWhpcx878vpeq/tlZTKzcFdHePlyFHVbWqeuKN0SRPl/9ZFDSTsfv9h7VQ==" + }, + "@types/range-parser": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.2.tgz", + "integrity": "sha512-HtKGu+qG1NPvYe1z7ezLsyIaXYyi8SoAVqWDZgDQ8dLrsZvSzUNCwZyfX33uhWxL/SU0ZDQZ3nwZ0nimt507Kw==" + }, + "@types/serve-static": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.13.2.tgz", + "integrity": "sha512-/BZ4QRLpH/bNYgZgwhKEh+5AsboDBcUdlBYgzoLX0fpj3Y2gp6EApyOlM3bK53wQS/OE1SrdSYBAbux2D1528Q==", + "requires": { + "@types/express-serve-static-core": "4.16.0", + "@types/mime": "2.0.0" + } + }, "@vue/babel-preset-app": { "version": "3.0.5", "resolved": "https://registry.npmjs.org/@vue/babel-preset-app/-/babel-preset-app-3.0.5.tgz", @@ -1171,7 +1245,6 @@ "version": "1.3.5", "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.5.tgz", "integrity": "sha1-63d99gEXI6OxTopywIBcjoZ0a9I=", - "dev": true, "requires": { "mime-types": "2.1.20", "negotiator": "0.6.1" @@ -1637,8 +1710,7 @@ "array-flatten": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=", - "dev": true + "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" }, "array-map": { "version": "0.0.0", @@ -2070,7 +2142,6 @@ "version": "1.18.2", "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.2.tgz", "integrity": "sha1-h2eKGdhLR9hZuDGZvVm84iKxBFQ=", - "dev": true, "requires": { "bytes": "3.0.0", "content-type": "1.0.4", @@ -2088,7 +2159,6 @@ "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, "requires": { "ms": "2.0.0" } @@ -2096,14 +2166,12 @@ "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" }, "qs": { "version": "6.5.1", "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", - "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==", - "dev": true + "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==" } } }, @@ -2292,8 +2360,7 @@ "bytes": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=", - "dev": true + "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=" }, "cacache": { "version": "10.0.4", @@ -2956,14 +3023,12 @@ "content-disposition": { "version": "0.5.2", "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", - "integrity": "sha1-DPaLud318r55YcOoUXjLhdunjLQ=", - "dev": true + "integrity": "sha1-DPaLud318r55YcOoUXjLhdunjLQ=" }, "content-type": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", - "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", - "dev": true + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" }, "convert-source-map": { "version": "1.6.0", @@ -2977,14 +3042,12 @@ "cookie": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz", - "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=", - "dev": true + "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=" }, "cookie-signature": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=", - "dev": true + "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" }, "copy-concurrently": { "version": "1.0.5", @@ -3081,6 +3144,11 @@ "parse-json": "4.0.0" } }, + "crc": { + "version": "3.4.4", + "resolved": "https://registry.npmjs.org/crc/-/crc-3.4.4.tgz", + "integrity": "sha1-naHpgOO9RPxck79as9ozeNheRms=" + }, "create-ecdh": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.3.tgz", @@ -3604,8 +3672,7 @@ "depd": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", - "dev": true + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" }, "des.js": { "version": "1.0.0", @@ -3620,8 +3687,7 @@ "destroy": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", - "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=", - "dev": true + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" }, "detect-node": { "version": "2.0.4", @@ -3788,8 +3854,7 @@ "ee-first": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=", - "dev": true + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "ejs": { "version": "2.6.1", @@ -3827,8 +3892,7 @@ "encodeurl": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", - "dev": true + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=" }, "end-of-stream": { "version": "1.4.1", @@ -3923,8 +3987,7 @@ "escape-html": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=", - "dev": true + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" }, "escape-string-regexp": { "version": "1.0.5", @@ -3972,8 +4035,7 @@ "etag": { "version": "1.8.1", "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", - "dev": true + "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" }, "event-pubsub": { "version": "4.3.0", @@ -4049,7 +4111,6 @@ "version": "4.16.3", "resolved": "http://registry.npmjs.org/express/-/express-4.16.3.tgz", "integrity": "sha1-avilAjUNsyRuzEvs9rWjTSL37VM=", - "dev": true, "requires": { "accepts": "1.3.5", "array-flatten": "1.1.1", @@ -4087,7 +4148,6 @@ "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, "requires": { "ms": "2.0.0" } @@ -4095,20 +4155,48 @@ "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" }, "qs": { "version": "6.5.1", "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", - "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==", - "dev": true + "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==" }, "safe-buffer": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", - "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==", - "dev": true + "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==" + } + } + }, + "express-session": { + "version": "1.15.6", + "resolved": "https://registry.npmjs.org/express-session/-/express-session-1.15.6.tgz", + "integrity": "sha512-r0nrHTCYtAMrFwZ0kBzZEXa1vtPVrw0dKvGSrKP4dahwBQ1BJpF2/y1Pp4sCD/0kvxV4zZeclyvfmw0B4RMJQA==", + "requires": { + "cookie": "0.3.1", + "cookie-signature": "1.0.6", + "crc": "3.4.4", + "debug": "2.6.9", + "depd": "1.1.2", + "on-headers": "1.0.1", + "parseurl": "1.3.2", + "uid-safe": "2.1.5", + "utils-merge": "1.0.1" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" } } }, @@ -4566,7 +4654,6 @@ "version": "1.1.1", "resolved": "http://registry.npmjs.org/finalhandler/-/finalhandler-1.1.1.tgz", "integrity": "sha512-Y1GUDo39ez4aHAw7MysnUD5JzYX+WaIj8I57kO3aEPT1fFRL4sr7mjei97FgnwhAyyzRYmQZaTHb2+9uZ1dPtg==", - "dev": true, "requires": { "debug": "2.6.9", "encodeurl": "1.0.2", @@ -4581,7 +4668,6 @@ "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, "requires": { "ms": "2.0.0" } @@ -4589,8 +4675,7 @@ "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" } } }, @@ -4699,8 +4784,7 @@ "forwarded": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", - "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=", - "dev": true + "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=" }, "fragment-cache": { "version": "0.2.1", @@ -4714,8 +4798,7 @@ "fresh": { "version": "0.5.2", "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", - "dev": true + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=" }, "friendly-errors-webpack-plugin": { "version": "1.7.0", @@ -5916,7 +5999,6 @@ "version": "1.6.3", "resolved": "http://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", - "dev": true, "requires": { "depd": "1.1.2", "inherits": "2.0.3", @@ -6288,8 +6370,7 @@ "iconv-lite": { "version": "0.4.19", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz", - "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==", - "dev": true + "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==" }, "icss-replace-symbols": { "version": "1.1.0", @@ -6513,8 +6594,7 @@ "ipaddr.js": { "version": "1.8.0", "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.8.0.tgz", - "integrity": "sha1-6qM9bd16zo9/b+DJygRA5wZzix4=", - "dev": true + "integrity": "sha1-6qM9bd16zo9/b+DJygRA5wZzix4=" }, "is-absolute-url": { "version": "2.1.0", @@ -7286,8 +7366,7 @@ "media-typer": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", - "dev": true + "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" }, "mem": { "version": "4.0.0", @@ -7345,8 +7424,7 @@ "merge-descriptors": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=", - "dev": true + "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" }, "merge-source-map": { "version": "1.1.0", @@ -7374,8 +7452,7 @@ "methods": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", - "dev": true + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=" }, "micromatch": { "version": "2.3.11", @@ -7416,14 +7493,12 @@ "mime-db": { "version": "1.36.0", "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.36.0.tgz", - "integrity": "sha512-L+xvyD9MkoYMXb1jAmzI/lWYAxAMCPvIBSWur0PZ5nOf5euahRLVqH//FKW9mWp2lkqUgYiXPgkzfMUFi4zVDw==", - "dev": true + "integrity": "sha512-L+xvyD9MkoYMXb1jAmzI/lWYAxAMCPvIBSWur0PZ5nOf5euahRLVqH//FKW9mWp2lkqUgYiXPgkzfMUFi4zVDw==" }, "mime-types": { "version": "2.1.20", "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.20.tgz", "integrity": "sha512-HrkrPaP9vGuWbLK1B1FfgAkbqNjIuy4eHlIYnFi7kamZyLLrGlo2mpcx0bBmNpKqBtYtAfGbodDddIgddSJC2A==", - "dev": true, "requires": { "mime-db": "1.36.0" } @@ -7669,8 +7744,7 @@ "negotiator": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz", - "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk=", - "dev": true + "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk=" }, "neo-async": { "version": "2.5.2", @@ -8135,7 +8209,6 @@ "version": "2.3.0", "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", - "dev": true, "requires": { "ee-first": "1.1.1" } @@ -8143,8 +8216,7 @@ "on-headers": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.1.tgz", - "integrity": "sha1-ko9dD0cNSTQmUepnlLCFfBAGk/c=", - "dev": true + "integrity": "sha1-ko9dD0cNSTQmUepnlLCFfBAGk/c=" }, "once": { "version": "1.4.0", @@ -8353,8 +8425,7 @@ "parseurl": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz", - "integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M=", - "dev": true + "integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M=" }, "pascalcase": { "version": "0.1.1", @@ -8407,8 +8478,7 @@ "path-to-regexp": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=", - "dev": true + "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=" }, "path-type": { "version": "3.0.0", @@ -9147,7 +9217,6 @@ "version": "2.0.4", "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.4.tgz", "integrity": "sha512-5erio2h9jp5CHGwcybmxmVqHmnCBZeewlfJ0pex+UW7Qny7OOZXTtH56TGNyBizkgiOwhJtMKrVzDTeKcySZwA==", - "dev": true, "requires": { "forwarded": "0.1.2", "ipaddr.js": "1.8.0" @@ -9241,6 +9310,11 @@ "integrity": "sha512-sluvZZ1YiTLD5jsqZcDmFyV2EwToyXZBfpoVOmktMmW+VEnhgakFHnasVph65fOjGPTWN0Nw3+XQaSeMayr0kg==", "dev": true }, + "random-bytes": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/random-bytes/-/random-bytes-1.0.0.tgz", + "integrity": "sha1-T2ih3Arli9P7lYSMMDJNt11kNgs=" + }, "randomatic": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-3.1.0.tgz", @@ -9288,14 +9362,12 @@ "range-parser": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", - "integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4=", - "dev": true + "integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4=" }, "raw-body": { "version": "2.3.2", "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.3.2.tgz", "integrity": "sha1-vNYMd9Prk83gBQKVw/N5OJvIj4k=", - "dev": true, "requires": { "bytes": "3.0.0", "http-errors": "1.6.2", @@ -9306,14 +9378,12 @@ "depd": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.1.tgz", - "integrity": "sha1-V4O04cRZ8G+lyif5kfPQbnoxA1k=", - "dev": true + "integrity": "sha1-V4O04cRZ8G+lyif5kfPQbnoxA1k=" }, "http-errors": { "version": "1.6.2", "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.2.tgz", "integrity": "sha1-CgAsyFcHGSp+eUbO7cERVfYOxzY=", - "dev": true, "requires": { "depd": "1.1.1", "inherits": "2.0.3", @@ -9324,8 +9394,7 @@ "setprototypeof": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz", - "integrity": "sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ=", - "dev": true + "integrity": "sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ=" } } }, @@ -10339,7 +10408,6 @@ "version": "0.16.2", "resolved": "https://registry.npmjs.org/send/-/send-0.16.2.tgz", "integrity": "sha512-E64YFPUssFHEFBvpbbjr44NCLtI1AohxQ8ZSiJjQLskAdKuriYEP6VyGEsRDH8ScozGpkaX1BGvhanqCwkcEZw==", - "dev": true, "requires": { "debug": "2.6.9", "depd": "1.1.2", @@ -10360,7 +10428,6 @@ "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, "requires": { "ms": "2.0.0" } @@ -10368,14 +10435,12 @@ "mime": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz", - "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==", - "dev": true + "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==" }, "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" } } }, @@ -10421,7 +10486,6 @@ "version": "1.13.2", "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.13.2.tgz", "integrity": "sha512-p/tdJrO4U387R9oMjb1oj7qSMaMfmOyd4j9hOFoxZe2baQszgHcSWjuya/CiT5kgZZKRudHNOA0pYXOl8rQ5nw==", - "dev": true, "requires": { "encodeurl": "1.0.2", "escape-html": "1.0.3", @@ -10467,8 +10531,7 @@ "setprototypeof": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", - "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", - "dev": true + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==" }, "sha.js": { "version": "2.4.11", @@ -10936,8 +10999,7 @@ "statuses": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz", - "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew==", - "dev": true + "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew==" }, "stdout-stream": { "version": "1.4.1", @@ -11345,7 +11407,6 @@ "version": "1.6.16", "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.16.tgz", "integrity": "sha512-HRkVv/5qY2G6I8iab9cI7v1bOIdhm94dVjQCPFElW9W+3GeDOSHmy2EBYe4VTApuzolPcmgFTN3ftVJRKR2J9Q==", - "dev": true, "requires": { "media-typer": "0.3.0", "mime-types": "2.1.20" @@ -11415,6 +11476,14 @@ } } }, + "uid-safe": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/uid-safe/-/uid-safe-2.1.5.tgz", + "integrity": "sha512-KPHm4VL5dDXKz01UuEd88Df+KzynaohSL9fBh096KWAxSKZQDI2uBrVqtvRM4rwrIrRRKsdLNML/lnaaVSRioA==", + "requires": { + "random-bytes": "1.0.0" + } + }, "unicode-canonical-property-names-ecmascript": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz", @@ -11517,8 +11586,7 @@ "unpipe": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", - "dev": true + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" }, "unquote": { "version": "1.1.1", @@ -11714,8 +11782,7 @@ "utils-merge": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", - "dev": true + "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" }, "uuid": { "version": "3.3.2", @@ -11736,8 +11803,7 @@ "vary": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", - "dev": true + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" }, "vendors": { "version": "1.0.2", diff --git a/package.json b/package.json index 956afec..d052588 100644 --- a/package.json +++ b/package.json @@ -3,11 +3,16 @@ "version": "0.1.0", "private": true, "scripts": { - "backend": "node Backend/start.js", - "serve": "vue-cli-service serve", - "build": "vue-cli-service build" + "serve": "vue-cli-service serve --port 8081", + "build": "vue-cli-service build", + "start": "node app.js" }, "dependencies": { + "@types/express": "^4.16.0", + "@types/mysql": "^2.15.5", + "@types/node": "^10.12.1", + "express": "^4.16.3", + "express-session": "^1.15.6", "google-auth-library": "^2.0.0", "mysql": "^2.16.0", "vue": "^2.5.17", diff --git a/public/img/usuario.png b/public/img/usuario.png new file mode 100644 index 0000000..18f2890 Binary files /dev/null and b/public/img/usuario.png differ diff --git a/src/App.vue b/src/App.vue index 7ecf3fa..7492eac 100644 --- a/src/App.vue +++ b/src/App.vue @@ -5,6 +5,25 @@ \ No newline at end of file diff --git a/src/components/Admin/Usuarios.vue b/src/components/Admin/Usuarios.vue new file mode 100644 index 0000000..196a538 --- /dev/null +++ b/src/components/Admin/Usuarios.vue @@ -0,0 +1,53 @@ + + + + + \ No newline at end of file diff --git a/src/components/Admin/Usuarios/Usuario.vue b/src/components/Admin/Usuarios/Usuario.vue new file mode 100644 index 0000000..3cb72a2 --- /dev/null +++ b/src/components/Admin/Usuarios/Usuario.vue @@ -0,0 +1,27 @@ + + + + + \ No newline at end of file diff --git a/src/components/headerMin.vue b/src/components/headerMin.vue index 9d79d7a..a60739b 100644 --- a/src/components/headerMin.vue +++ b/src/components/headerMin.vue @@ -20,7 +20,8 @@
- Bienvenido, {{ nombreDeUsuario }} + Bienvenido, {{ nombreDeUsuario }}
+ Ir a la zona administrativa.

@@ -30,16 +31,27 @@ - \ No newline at end of file diff --git a/src/components/navBar.vue b/src/components/navBar.vue index 16b43be..a836c91 100644 --- a/src/components/navBar.vue +++ b/src/components/navBar.vue @@ -3,8 +3,10 @@ diff --git a/src/router.js b/src/router.js index 1cd71b6..88df3db 100644 --- a/src/router.js +++ b/src/router.js @@ -35,6 +35,20 @@ export default new Router({ path: '/mi-cuenta/', name: 'MiCuenta', component: () => import('./views/MiCuenta') + }, + { + path: '/mi-pedido/', + name: 'MiPedido', + component: () => import('./views/MiPedido') + }, + { + path: '/a/', + name: 'Administracion', + component: () => import('./views/Administracion/Inicio'), + children: [ + { path: 'usuarios', component: () => import('./components/Admin/Usuarios') }, + { path: 'empleados', component: () => import('./components/Admin/Empleados') } + ] } ] }) diff --git a/src/variables.ts b/src/variables.ts new file mode 100644 index 0000000..87f7262 --- /dev/null +++ b/src/variables.ts @@ -0,0 +1,8 @@ +const conexion_backend = "http://localhost:8080"; +const conexion_gcloud = ""; + +/* De este estilo porque por alguna razon a babel no le agrado module.exports en este archivo. */ +export default conexion_backend; + + +// module.exports.conexion = conexion_backend; \ No newline at end of file diff --git a/src/views/Administracion/Inicio.vue b/src/views/Administracion/Inicio.vue index 81aa11e..5612836 100644 --- a/src/views/Administracion/Inicio.vue +++ b/src/views/Administracion/Inicio.vue @@ -1,13 +1,64 @@ \ No newline at end of file diff --git a/src/views/Login-Registro.vue b/src/views/Login-Registro.vue index d73801d..8d05134 100644 --- a/src/views/Login-Registro.vue +++ b/src/views/Login-Registro.vue @@ -22,9 +22,11 @@ Inicia sesión con tu email:

-
+ -
+


@@ -39,15 +41,19 @@ Regístrate con tu email:

- + -
+

-
+

-
+

@@ -57,7 +63,58 @@

+
+ Trabajando...
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ +
+
+
+
+
+
+
+
+
+
+
+ +
+
+
+
+
+
+
+
+
+
+
+
+

@@ -66,30 +123,43 @@ + + \ No newline at end of file diff --git a/src/views/carrito.vue b/src/views/carrito.vue index 963191d..2f25717 100644 --- a/src/views/carrito.vue +++ b/src/views/carrito.vue @@ -4,7 +4,7 @@ -
+
Carrito de compras