Skip to content
Snippets Groups Projects
Unverified Commit 534c956b authored by sergest's avatar sergest Committed by GitHub
Browse files

Merge branch 'master' into html_bug_fixing

parents 717a7f7e e311ab99
No related branches found
No related tags found
1 merge request!29asdas
......@@ -40,70 +40,59 @@ def logout():
@login_required
def incidencia(idIncidencia):
incidencia = get_incidencia(idIncidencia)
cambioApertura = get_informacion_apertura(idIncidencia)[0]
cambioAsignada = get_informacion_asignada(idIncidencia)
if len(cambioAsignada) > 0:
cambioAsignada = cambioAsignada[0]
cambioCierre = get_informacion_cierre(idIncidencia)
if len(cambioCierre) > 0:
cambioCierre = cambioCierre[0]
listaTecnicos = get_tecnicos()
if request.method == 'POST':
if request.form['action']=="cierre_cliente":
if request.form['action']=="completar":
return redirect(url_for('completar_incidencia', idIncidencia=idIncidencia))
elif request.form['action']=="cierre_cliente":
cambio_estado_incidencia(idIncidencia, 2, current_user.nick)
elif request.form['action']=="cierre_tecnico":
cambio_estado_incidencia(idIncidencia, 3, current_user.nick)
elif request.form['action']=="tecnico":
tecnico = request.form['tecnicoAsignado']
cambio_estado_incidencia(idIncidencia, 1, tecnico)
elif request.form['action']=="n-Solucion":
cambio_estado_incidencia(idIncidencia, 4, current_user.nick)
elif request.form['action']=="Solucion":
cambio_estado_incidencia(idIncidencia,5, current_user.nick)
elif request.form['action']=="add_comentario":
return render_template('add_comentario.html', incidencia=incidencia)
listaTecnicos = get_tecnicos()
cambioApertura = get_cambio_by_estado(idIncidencia, 0)
cambioAsignada = get_cambio_by_estado(idIncidencia, 1)
cambioCierre = get_cambio_by_estado(idIncidencia, 3)
return render_template('info_incidencia.html', incidencia=incidencia, listaTecnicos=listaTecnicos, cambioApertura=cambioApertura, cambioAsignada=cambioAsignada, cambioCierre=cambioCierre)
@app.route('/index')
@login_required
def index():
if current_user.tipo == 0: #Supervisor
incidencias_abiertas = get_incidencias_abiertas_super()
incidencias_notif_cierre = get_incidencias_notif_cierre_super()
incidencias_notif_cierre_cliente=get_incidencias_notif_cierre_super_cliente()
incidencias_abiertas = get_incidencias_by_estado(0)
incidencias_notif_cierre = get_incidencias_by_estado(3)
incidencias_notif_cierre_cliente = get_incidencias_by_estado(2)
return render_template('incidencias_supervisor.html', incidencias_abiertas=incidencias_abiertas, incidencias_notif_cierre=incidencias_notif_cierre, incidencias_notif_cierre_cliente=incidencias_notif_cierre_cliente)
elif current_user.tipo == 1: #Tecnico
incidencias_abiertas = get_incidencias_abiertas(current_user.nick)
incidencias_notif_cierre = get_incidencias_notif_cierre(current_user.nick)
incidencias_pendientes_cierre=get_inciencias_pendientes_cierre(current_user.nick)
incidencias_pendientes_cierre = get_incidencias_pendientes_cierre(current_user.nick)
return render_template('incidencias_tecnico.html', incidencias_abiertas=incidencias_abiertas, incidencias_notif_cierre=incidencias_notif_cierre)
return render_template('incidencias_tecnico.html', incidencias_abiertas=incidencias_abiertas, incidencias_notif_cierre=incidencias_notif_cierre, incidencias_pendientes_cierre=incidencias_pendientes_cierre)
elif current_user.tipo == 2: #Cliente
incidencias = get_incidencias_by_user(current_user.nick)
incidencias_estado=get_incidencias_by_user_estado(current_user.nick)
incidencias_estado_cierre=get_incidencias_by_user_estado_cierre(current_user.nick)
return render_template('incidencias_cliente.html', incidencias=incidencias)
return render_template('incidencias_supervisor.html', incidencias=incidencias, incidencias_estado=incidencias_estado, incidencias_estado_cierre=incidencias_estado_cierre)
@app.route('/incidencias_cerradas')
@login_required
def incidencias_cerradas():
incidencias = get_incidencias_cerradas()
sin_solucion = get_incidencias_by_estado(4)
con_solucion = get_incidencias_by_estado(5)
incidencias = list(set(sin_solucion + con_solucion))
return render_template('incidencias_cliente.html', incidencias=incidencias)
@app.route('/incidencia2/<idIncidencia>', methods=['GET', 'POST'])
@login_required
def incidencia2(idIncidencia):
if request.method == 'POST':
incidencia = get_incidencia(idIncidencia)
return render_template('add_comentario.html', incidencia=incidencia)
@app.route('/registrar_incidencia', methods=['GET', 'POST'])
@login_required
def registrar_incidencia():
......@@ -126,14 +115,33 @@ def registrar_incidencia():
return render_template('registrar_incidencia.html')
@app.route('/completar_incidencia/<idIncidencia>', methods=['GET', 'POST'])
@login_required
def completar_incidencia(idIncidencia):
if request.method == 'POST':
comentario = request.form.get('comentario')
prioridad = request.form.get('prioridad')
tecnico = request.form.get('tecnico')
asignar_incidencia(idIncidencia, comentario, prioridad, tecnico)
return redirect(url_for('incidencia', idIncidencia=idIncidencia))
listaTecnicos = get_tecnicos()
incidencia = get_incidencia(idIncidencia)
return render_template('completar_incidencia.html', incidencia=incidencia, listaTecnicos=listaTecnicos)
@app.route('/add_comentario/<idIncidencia>', methods=['GET', 'POST'])
@login_required
def add_comentario(idIncidencia):
if request.method == 'POST':
if request.form['action']=="add_com":
comentario = request.form.get('comentario')
comentar_incidencia(idIncidencia, comentario)
return redirect(url_for('index'))
elif request.form['action']=="cancelar":
return redirect(url_for('incidencia', idIncidencia=idIncidencia))
return render_template('info_incidencia.html')
......@@ -146,8 +154,8 @@ from flask_sqlalchemy import SQLAlchemy
from sqlalchemy import or_
from flask_login import UserMixin
# app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql://PGPI_grupo02:JEbITzwe@127.0.0.1:3306/PGPI_grupo02'
app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql://PGPI_grupo02:JEbITzwe@jair.lab.inf.uva.es:3306/PGPI_grupo02'
app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql://PGPI_grupo02:JEbITzwe@127.0.0.1:3306/PGPI_grupo02'
#app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql://PGPI_grupo02:JEbITzwe@jair.lab.inf.uva.es:3306/PGPI_grupo02'
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
db = SQLAlchemy(app)
......@@ -212,40 +220,48 @@ def insert_incidencia(titulo, descripcion, fecha, estado, reportadaPor, categori
def get_incidencia(id):
return Incidencia.query.get(id)
def cambio_estado_incidencia(id, estado, usuario):
incidencia = get_incidencia(id)
incidencia.estado = estado
incidencia.tecnicoAsignado = usuario
db.session.commit()
insert_cambio(estado, usuario, id)
def comentar_incidencia(id, comentario):
def asignar_incidencia(id, comentario, prioridad, tecnico):
incidencia = get_incidencia(id)
incidencia.comentario = comentario
incidencia.prioridad = prioridad
incidencia.tecnicoAsignado = tecnico
db.session.commit()
def get_incidencias_cerradas():
return list(Incidencia.query.filter(or_(Incidencia.estado == 4, Incidencia.estado == 5)))
cambio_estado_incidencia(id, 1, current_user.nick)
def comentar_incidencia(id, comentario):
incidencia = get_incidencia(id)
incidencia.comentario = comentario
db.session.commit()
def get_incidencias_by_user(userNick):
return list(Incidencia.query.filter_by(reportadaPor=userNick))
return list(Incidencia.query.filter_by(reportadaPor=userNick, estado=0))
def get_incidencias_by_user_estado(userNick):
return list(Incidencia.query.filter_by(reportadaPor=userNick, estado=1))
def get_incidencias_by_user_estado_cierre(userNick):
return list(Incidencia.query.filter_by(reportadaPor=userNick, estado=2))
def get_incidencias_by_estado(estado):
return list(Incidencia.query.filter_by(estado=estado))
def get_incidencias_abiertas(userNick):
return list(Incidencia.query.filter_by(tecnicoAsignado=userNick, estado=1))
def get_incidencias_abiertas_super():
return list(Incidencia.query.filter_by(estado=0))
def get_incidencias_notif_cierre_super():
return list(Incidencia.query.filter_by(estado=3))
def get_incidencias_notif_cierre_super_cliente():
return list(Incidencia.query.filter_by(estado=2))
def get_incidencias_notif_cierre(userNick):
return list((Incidencia.query.filter_by(reportadaPor=userNick, estado=2)))
def get_inciencias_pendientes_cierre(userNick):
return list((Incidencia.query.filter_by(reportadaPor=userNick, estado=3)))
return list(Incidencia.query.filter_by(tecnicoAsignado=userNick, estado=2))
def get_incidencias_pendientes_cierre(userNick):
return list(Incidencia.query.filter_by(tecnicoAsignado=userNick, estado=3))
#######################
......@@ -256,14 +272,8 @@ def insert_cambio(estado, tecnico, incidencia):
db.session.add(Cambio(fecha=fecha, estado=estado, tecnico=tecnico, incidencia=incidencia))
db.session.commit()
def get_informacion_apertura(id):
return list(Cambio.query.filter_by(incidencia=id, estado=0))
def get_informacion_asignada(id):
return list(Cambio.query.filter_by(incidencia=id, estado=1))
def get_informacion_cierre(id):
return list(Cambio.query.filter_by(incidencia=id, estado=3))
def get_cambio_by_estado(id, estado):
return next(iter(list(Cambio.query.filter_by(incidencia=id, estado=estado))), None)
#######################
# INVENTARIO #
......
......@@ -10,7 +10,7 @@
</a>
<a class="list-group-item d-flex justify-content-start align-items-center bg-light" href="/logout">
<span class="material-icons" style="color: black;">pregnant_woman</span>
<span class="material-icons" style="color: black;">exit_to_app</span>
<span class="collapse width align-top side-options">Cerrar Sesión</span>
</a>
</div>
......@@ -64,9 +64,9 @@
<div class="addCom">
<div class="formuCom">
<form class="formCom" method='POST' action='/add_comentario/{{ incidencia.id }}'>
<textarea placeholder="Añadir Comentario" name="comentario" required>{{ incidencia.comentario }}</textarea>
<button type="submit">Añadir Comentario</button>
<button type="submit">Cancelar</button>
<textarea placeholder="Añadir Comentario" name="comentario">{{ incidencia.comentario }}</textarea>
<button type="submit" name="action" value="add_com">Añadir Comentario</button>
<button type="submit" name="action" value="cancelar">Cancelar</button>
</form>
......
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>PGPIncidents</title>
<!-- Establecer el ancho al ancho del sistema y el zoom al 1 -->
<meta name="viewport" content="width = device-width, initial-scale = 1, shrink-to-fit=no">
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
<link rel="stylesheet" href="{{ url_for('static', filename='css/clientView.css') }}">
<!-- Link al css de Bootstrap -->
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css" integrity="sha384-MCw98/SFnGE8fJT3GXwEOngsV7Zt27NXFoaoApmYm81iuXoPkFOJwJ8ERdknLPMO"
crossorigin="anonymous">
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.6.1/css/all.css" integrity="sha384-gfdkjb5BdAXd+lj+gudLWI+BXq4IuLW5IT+brZEZsLFm++aCMlF1V92rMkPaX4PP"
crossorigin="anonymous">
<link rel="stylesheet" type="text/css" href="../static/css/formulario.css">
<script src="{{ url_for('static', filename='scripts/includeHTML.js') }}"></script>
</head>
<body class="d-flex" style="min-height: 100%;min-width: 100%;">
<!-- barra principal del menú -->
<nav class="navbar navbar-expand-md navbar-dark bg-dark fixed-top pt-0" onmouseover="closeSide('side-nav')">
<div class="d-inline-flex justify-content-center w-100 align-items-center">
<span class="navbar-brand title" style="font-size: 25px;">PGPIncidents</span>
</div>
</nav>
<div id="side-nav" class="side-nav fixed-top flex-nowrap flex-column justify-content-start d-inline-flex align-items-start bg-light" onmouseover="openSide('side-nav')">
<div class="side-title side-content d-flex ">
<img id="user-img" class="user-icon" src="../static/img/default-gravatar.png" alt="user icon">
<span class="collapse width align-self-center" style="min-width: 70%;padding-left: 5%;max-height: 10%">{{ current_user.nick }}</span>
</div>
{% if current_user.tipo == 0 %}
<div w3-include-html="{{ url_for('static', filename='menus/menu_supervisor.html') }}"></div>
{% elif current_user.tipo == 1 %}
<div w3-include-html="{{ url_for('static', filename='menus/menu_tecnico.html') }}"></div>
{% elif current_user.tipo == 2 %}
<div w3-include-html="{{ url_for('static', filename='menus/menu_cliente.html') }}"></div>
{% endif %}
</div>
<div id="data-body" class="container-fluid flex-grow-1" onmouseover="closeSide('side-nav')" >
<!-- Body -->
<!DOCTYPE html>
<div class="inciCli">
<div class="formCli">
<form class="incidentCli" method='POST' action='/completar_incidencia/{{ incidencia.id }}'>
<p> Incidencia {{ incidencia.id }} </p>
<textarea placeholder="Comentario" name="comentario" required></textarea>
<input type="text" placeholder="prioridad" name="prioridad" required/>
<select name="tecnico" required>
{% for i in range(listaTecnicos|length) %}
<option value="{{ listaTecnicos[i].nick }}">{{ listaTecnicos[i].nick }}</option>
{% endfor %}
</select>
<button type="submit">Enviar</button>
</form>
</div>
</div>
</div>
<script>
function openSide(id) {
let el = document.getElementById(id);
if (!el.classList.contains('open')) {
$('.collapse').collapse('show');
el.classList.add('open');
document.getElementById('side-nav').style.width = "200px";
}
};
function closeSide(id) {
let el = document.getElementById(id);
if (el.classList.contains('open')) {
el.classList.remove('open');
$('.collapse').collapse('hide')
document.getElementById('side-nav').style.width = "64px";
}
};
</script>
<!-- jQuery first, then Popper.js, then Bootstrap JS -->
<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo"
crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js" integrity="sha384-ZMP7rVo3mIykV+2+9J3UJ46jBk0WLaUAdn689aCwoqbBJiSnjAK/l8WvCWPIPm49"
crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js" integrity="sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy"
crossorigin="anonymous"></script>
<script>
includeHTML();
</script>
</body>
</html>
......@@ -43,12 +43,20 @@
<div id="data-body" class="container-fluid flex-grow-1" onmouseover="closeSide('side-nav')" >
<!-- Body -->
<div class="row" style="width: 100%; padding-top: 0.5em; padding-bottom: 0.5em; font-size: 2em;">
{% if current_user.tipo==0 %}
<div class="col">
<p class="text-center">Estado de las incidencias del supervisor {{ username }}</p>
</div>
{% endif %}
{% if current_user.tipo==2 %}
<div class="col">
<p class="text-center">Incidencias del cliente {{ username }}</p>
</div>
{% endif %}
</div>
<div style="display: flex;">
{% if current_user.tipo==0 %}
<div>
<p class="text-center" id="tituloColumna">Pendientes de asignar</p>
......@@ -70,7 +78,8 @@
{% endfor %}
</div>
{% endif %}
{% if current_user.tipo==0 %}
<div style="border-left: 1px solid grey; height: 70%;">
<p class="text-center" id="tituloColumna">Pendientes de Cerrar</p>
{% for i in range(incidencias_notif_cierre|length) %}
......@@ -90,6 +99,8 @@
</div>
{% endfor %}
</div>
{% endif %}
{% if current_user.tipo==0 %}
<div style="border-left: 1px solid grey; height: 70%;">
<p class="text-center" id="tituloColumna">Pendientes de Cerrar Cliente</p>
{% for i in range(incidencias_notif_cierre_cliente|length) %}
......@@ -109,6 +120,71 @@
</div>
{% endfor %}
</div>
{% endif %}
{% if current_user.tipo==2 %}
<div style="border-left: 1px solid grey; height: 70%;">
<p class="text-center" id="tituloColumna">Incidencias abiertas</p>
{% for i in range(incidencias|length) %}
<div class="card-deck" style="margin: 1em;">
<div class="card" id="card2">
<div class="card-body">
<a href="/incidencia/{{ incidencias[i].id }}">
<p class="card-title">{{ incidencias[i].titulo }}</p>
<hr>
<p class="card-text">Descripción:</p>
<p class="card-text .text-justify" id="card-description">{{ incidencias[i].descripcion }}</p>
<hr>
<p class="card-text">Incidencia abierta por {{ incidencias[i].reportadaPor }}</p>
</a>
</div>
</div>
</div>
{% endfor %}
</div>
{% endif %}
{% if current_user.tipo==2 %}
<div style="border-left: 1px solid grey; height: 70%;">
<p class="text-center" id="tituloColumna">Incidencias en Resolucion</p>
{% for i in range(incidencias_estado|length) %}
<div class="card-deck" style="margin: 1em;">
<div class="card" id="card2">
<div class="card-body">
<a href="/incidencia/{{ incidencias_estado[i].id }}">
<p class="card-title">{{ incidencias_estado[i].titulo }}</p>
<hr>
<p class="card-text">Descripción:</p>
<p class="card-text .text-justify" id="card-description">{{ incidencias_estado[i].descripcion }}</p>
<hr>
<p class="card-text">Incidencia abierta por {{ incidencias_estado[i].reportadaPor }}</p>
</a>
</div>
</div>
</div>
{% endfor %}
</div>
{% endif %}
{% if current_user.tipo==2 %}
<div style="border-left: 1px solid grey; height: 70%;">
<p class="text-center" id="tituloColumna">Incidencias Solicitud Cierre</p>
{% for i in range(incidencias_estado_cierre|length) %}
<div class="card-deck" style="margin: 1em;">
<div class="card" id="card2">
<div class="card-body">
<a href="/incidencia/{{ incidencias_estado_cierre[i].id }}">
<p class="card-title">{{ incidencias_estado_cierre[i].titulo }}</p>
<hr>
<p class="card-text">Descripción:</p>
<p class="card-text .text-justify" id="card-description">{{ incidencias_estado_cierre[i].descripcion }}</p>
<hr>
<p class="card-text">Incidencia abierta por {{ incidencias_estado_cierre[i].reportadaPor }}</p>
</a>
</div>
</div>
</div>
{% endfor %}
</div>
{% endif %}
</div>
</div>
......
......@@ -53,8 +53,16 @@
<div class="col-md-6">
<div class="card" id="card1">
<div class="card-body">
<h5>Descripción:</h5>
<p class="card-text text-justify" id="card-description"> {{ incidencia.descripcion}}</p>
</div>
{% if incidencia.comentario is defined and incidencia.comentario|length %}
<div class="card-body">
<h5>Comentario:</h5>
<p class="card-text text-justify" id="card-description"> {{ incidencia.comentario}}</p>
</div>
{% endif %}
</div>
</div>
<div class="col-md-6">
......@@ -100,7 +108,7 @@
<div class="steps-timeline" style="margin-top: 7em;">
<div class="steps-one">
<img class="steps-img" src="http://placehold.it/50/3498DB/FFFFFF" alt="" />
<img class="steps-img" src="http://placehold.it/50/3498DB/3498DB" alt="" />
<h3 class="steps-name">
Abierta
</h3>
......@@ -110,8 +118,8 @@
</div>
<div class="steps-two">
{% if incidencia.estado == 1 or incidencia.estado == 2 or incidencia.estado == 3 or incidencia.estado == 4%}
<img class="steps-img" src="http://placehold.it/50/3498DB/FFFFFF" alt="" />
{% if incidencia.estado == 1 or incidencia.estado == 2 or incidencia.estado == 3 or incidencia.estado == 4 or incidencia.estado == 5 %}
<img class="steps-img" src="http://placehold.it/50/3498DB/3498DB" alt="" />
<h3 class="steps-name">
Asignada
</h3>
......@@ -119,7 +127,7 @@
Aceptada y asignada a {{ incidencia.tecnicoAsignado }} el {{ cambioAsignada.fecha }}
</p>
{% else %}
<img class="steps-img" src="http://placehold.it/50/FF0000/FFFFFF" alt="" />
<img class="steps-img" src="http://placehold.it/50/FF0000/FF0000" alt="" />
<h3 class="steps-name">
Asignada
</h3>
......@@ -130,8 +138,8 @@
</div>
<div class="steps-three">
{% if incidencia.estado == 3 or incidencia.etado == 4%}
<img class="steps-img" src="http://placehold.it/50/3498DB/FFFFFF" alt="" />
{% if incidencia.estado == 4 or incidencia.etado == 5%}
<img class="steps-img" src="http://placehold.it/50/3498DB/3498DB" alt="" />
<h3 class="steps-name">
Cerrada
</h3>
......@@ -139,7 +147,7 @@
Incidencia cerrada el {{ cambioCierre.fecha }}
</p>
{% else %}
<img class="steps-img" src="http://placehold.it/50/FF0000/FFFFFF" alt="" />
<img class="steps-img" src="http://placehold.it/50/FF0000/FF0000" alt="" />
<h3 class="steps-name">
Cerrada
</h3>
......@@ -156,48 +164,28 @@
<div id="botonesPiePagina">
{% if (current_user.tipo == 0) and (incidencia.estado == 0) %}
<form method="POST" action='/incidencia/{{ incidencia.id }}'>
<button type="button" class="btn btn-outline-primary" >Añadir comentario</button>
<button type="submit" class="btn btn-outline-primary" name="action" value="tecnico">Asignar tecnico</button>
<select name="tecnicoAsignado">
{% for i in range(listaTecnicos|length) %}
<option value="{{ listaTecnicos[i].nick }}">{{ listaTecnicos[i].nick }}</option>
{% endfor %}
</select>
{% if (current_user.tipo == 0) and (incidencia.estado == 0) %}
<button type="submit" class="btn btn-outline-primary" name="action" value="completar">Completar incidencia</button>
{% endif %}}
</form>
{% if (current_user.tipo == 0) and (incidencia.estado == 1) %}
<form method="POST" action='/incidencia/{{ incidencia.id }}'>
<button type="button" class="btn btn-outline-primary">Añadir comentario</button>
</form>
{% endif %}}
{% if (current_user.tipo == 0) and (incidencia.estado == 3 or incidencia.estado==2) %}
<form method="POST" action='/incidencia/{{ incidencia.id }}'>
<button type="submit" class="btn btn-outline-primary" name="action" value="Solucion">Cerrar Incidencia Solucionada</button>
<button type="submit" class="btn btn-outline-primary" name="action" value="n-Solucion">Cerrar Incidencia sin Solucion</button>
</form>
{% endif %}}
{% if (current_user.tipo == 1) and (incidencia.estado==1) %}
<form method="POST" action='/incidencia2/{{ incidencia.id }}'>
<button type="button" class="btn btn-outline-primary">Añadir comentario</button>
</form>
<form method="POST" action='/incidencia/{{ incidencia.id }}'>
<button type="submit" class="btn btn-outline-primary" name="action" value="add_comentario">Añadir comentario</button>
<button type="submit" class="btn btn-outline-primary" name="action" value="cierre_tecnico">Solicitar Cierre</button>
</form>
{% endif %}}
{% if current_user.tipo == 1 %}
<form method="POST" action='/incidencia2/{{ incidencia.id }}'>
<button type="submit" class="btn btn-outline-primary">Añadir comentario</button>
</form>
<form method="POST" action='/incidencia/{{ incidencia.id }}'>
<button type="submit" class="btn btn-outline-primary">Solicitar Cierre</button>
</form>
{% if (current_user.tipo == 1) and (incidencia.estado!=1) %}
<button type="submit" class="btn btn-outline-primary" name="action" value="add_comentario">Añadir comentario</button>
{% endif %}}
......@@ -205,7 +193,6 @@
<button type="button" class="btn btn-outline-primary">Ver comentario</button>
<button type="submit" class="btn btn-outline-primary" name="action" value="cierre_cliente">Solicitar Cierre</button>
{% endif %}
<!-- </footer> -->
</form>
</div>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment