| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- import { createApp } from 'https://unpkg.com/petite-vue?module';
- const app = createApp({
- message: null,
- puestos: [],
- carreras: [],
- materias: [],
- usuarios: [],
- async nuevoPuesto(nuevoPuesto) {
- try {
- const res = await fetch('action/puesto.php', {
- method: 'POST',
- body: JSON.stringify({
- puesto_nombre: nuevoPuesto
- })
- });
- const data = await res.json();
- this.puestos.push(data);
- }
- catch (error) {
- alert(`Error: ${error}`);
- }
- },
- async actualizarPuesto(puesto_id, materias, usuario_id) {
- try {
- const res = await fetch('action/puesto.php', {
- method: 'PUT',
- body: JSON.stringify({
- puesto_id,
- materias: materias.map(m => m.materia_id),
- usuario_id
- })
- });
- const data = await res.json();
- this.message = data.msg;
- // after 3 seconds, remove the message
- setTimeout(() => {
- this.message = null;
- }, 3000);
- }
- catch (error) {
- alert(`Error: ${error}`);
- }
- },
- async mounted() {
- this.puestos = await fetch('action/puesto.php').then(res => res.json());
- this.carreras = await fetch('action/action_carreras.php').then(res => res.json());
- this.materias = await fetch('action/action_materias.php').then(res => res.json());
- this.usuarios = await fetch('action/usuarios.php').then(res => res.json());
- }
- }).mount('#app');
|