Quellcode durchsuchen

Feature de view

Ahora la accion view permite ver el usuario sin permitir edicion
Carlos J Corrada Bravo vor 4 Jahren
Ursprung
Commit
5c8f5c7ee3

BIN
__pycache__/administracion.cpython-38.pyc Datei anzeigen


BIN
__pycache__/enfermera.cpython-38.pyc Datei anzeigen


BIN
__pycache__/estudiante.cpython-38.pyc Datei anzeigen


BIN
__pycache__/facultad.cpython-38.pyc Datei anzeigen


BIN
__pycache__/index.cpython-38.pyc Datei anzeigen


BIN
__pycache__/madre.cpython-38.pyc Datei anzeigen


+ 23
- 11
administracion.py Datei anzeigen

@@ -59,25 +59,30 @@ def add(data):
59 59
 
60 60
 
61 61
 def add_form():
62
+	i=1
63
+	orden=1
64
+	entradas={}
65
+	for col in form_order["entradas"]:
66
+		col_data=[]
67
+		for item in form_order["entradas"][col]:
68
+			item.update({"tabindex":orden})
69
+			item.update({"disabled":False})
70
+			orden+=1
71
+		entradas.update({"col"+str(i):col_data})
72
+		i+=1
62 73
 	data= {"titulo":"Administración","accion":"Añadir"}
63 74
 	data.update(form_order)
75
+	data.update({"abled":True})
64 76
 	return jsonify(data)
65 77
 	
66
-def edit_form(id):
78
+def edit_form(id, disabled=False):
67 79
 	administracion = db.Table('administracion', metadata, autoload=True, autoload_with=engine)
68 80
 	usuarios = db.Table('usuarios', metadata, autoload=True, autoload_with=engine)
69 81
 	query = db.select([usuarios, administracion.columns.posicion, administracion.columns.otro])
70 82
 	query = query.select_from(usuarios.join(administracion, usuarios.columns.id == administracion.columns.user_id)).where(administracion.columns.user_id == id)
71 83
 	result = connection.execute(query).fetchall()
72
-# 	print(result)
73 84
 	if not len(result):
74
-# 		return add_form()
75
-# 		return render_template(url_for("formas",accion="add",tipo="administracion"))
76
-# 		return index.formas("add","administracion")
77 85
 		return False
78
-# 		return redirect("http://127.0.0.1:5000/error/administracion/"+id)
79
-# 		return redirect(url_for("maneja_error_user",id=id,tipo="administracion"))
80
-# 		return render_template("error.html",id=id,tipo="administracion")
81 86
 	for row in result:
82 87
 		row_as_dict = dict(row)
83 88
 	i=1
@@ -93,14 +98,21 @@ def edit_form(id):
93 98
 			else:
94 99
 				item.update({"value":str(row_as_dict[item["name"]])})
95 100
 			item.update({"tabindex":orden})
101
+			item.update({"disabled":disabled})
96 102
 			col_data.append(item)
97 103
 			orden+=1
98 104
 		entradas.update({"col"+str(i):col_data})
99 105
 		i+=1
100
-	data= {"titulo":"Administración","accion":"Editar"}
106
+	titulo_accion="Editar"
107
+	if disabled:
108
+		titulo_accion="Ver"
109
+	data= {"titulo":"Administración","accion":titulo_accion}
101 110
 	data.update({"entradas":entradas})
102
-# 	print(data)
111
+	abled=True
112
+	if disabled:
113
+		abled=False
114
+	data.update({"abled":abled})
103 115
 	return jsonify(data)
104
-	
116
+		
105 117
 # print(edit_form(1))
106 118
 # add()

+ 18
- 12
enfermera.py Datei anzeigen

@@ -59,25 +59,30 @@ def add(data):
59 59
 
60 60
 
61 61
 def add_form():
62
+	i=1
63
+	orden=1
64
+	entradas={}
65
+	for col in form_order["entradas"]:
66
+		col_data=[]
67
+		for item in form_order["entradas"][col]:
68
+			item.update({"tabindex":orden})
69
+			item.update({"disabled":False})
70
+			orden+=1
71
+		entradas.update({"col"+str(i):col_data})
72
+		i+=1
62 73
 	data= {"titulo":"Enfermera","accion":"Añadir"}
63 74
 	data.update(form_order)
75
+	data.update({"abled":True})
64 76
 	return jsonify(data)
65 77
 	
66
-def edit_form(id):
78
+def edit_form(id, disabled=False):
67 79
 	enfermera = db.Table('enfermeras', metadata, autoload=True, autoload_with=engine)
68 80
 	usuarios = db.Table('usuarios', metadata, autoload=True, autoload_with=engine)
69 81
 	query = db.select([usuarios, enfermera.columns.especialidad, enfermera.columns.otro])
70 82
 	query = query.select_from(usuarios.join(enfermera, usuarios.columns.id == enfermera.columns.user_id)).where(enfermera.columns.user_id == id)
71 83
 	result = connection.execute(query).fetchall()
72
-# 	print(result)
73 84
 	if not len(result):
74
-# 		return add_form()
75
-# 		return render_template(url_for("formas",accion="add",tipo="enfermera"))
76
-# 		return index.formas("add","enfermera")
77 85
 		return False
78
-# 		return redirect("http://127.0.0.1:5000/error/enfermera/"+id)
79
-# 		return redirect(url_for("maneja_error_user",id=id,tipo="enfermera"))
80
-# 		return render_template("error.html",id=id,tipo="enfermera")
81 86
 	for row in result:
82 87
 		row_as_dict = dict(row)
83 88
 	i=1
@@ -93,14 +98,15 @@ def edit_form(id):
93 98
 			else:
94 99
 				item.update({"value":str(row_as_dict[item["name"]])})
95 100
 			item.update({"tabindex":orden})
101
+			item.update({"disabled":disabled})
96 102
 			col_data.append(item)
97 103
 			orden+=1
98 104
 		entradas.update({"col"+str(i):col_data})
99 105
 		i+=1
100 106
 	data= {"titulo":"Enfermera","accion":"Editar"}
101 107
 	data.update({"entradas":entradas})
102
-# 	print(data)
108
+	abled=True
109
+	if disabled:
110
+		abled=False
111
+	data.update({"abled":abled})
103 112
 	return jsonify(data)
104
-	
105
-# print(edit_form(1))
106
-# add()

+ 18
- 8
estudiante.py Datei anzeigen

@@ -59,20 +59,29 @@ def add(data):
59 59
 
60 60
 
61 61
 def add_form():
62
+	i=1
63
+	orden=1
64
+	entradas={}
65
+	for col in form_order["entradas"]:
66
+		col_data=[]
67
+		for item in form_order["entradas"][col]:
68
+			item.update({"tabindex":orden})
69
+			item.update({"disabled":False})
70
+			orden+=1
71
+		entradas.update({"col"+str(i):col_data})
72
+		i+=1
62 73
 	data= {"titulo":"Estudiante","accion":"Añadir"}
63 74
 	data.update(form_order)
75
+	data.update({"abled":True})
64 76
 	return jsonify(data)
65 77
 	
66
-def edit_form(id):
78
+def edit_form(id, disabled=False):
67 79
 	estudiantes = db.Table('estudiantes', metadata, autoload=True, autoload_with=engine)
68 80
 	usuarios = db.Table('usuarios', metadata, autoload=True, autoload_with=engine)
69 81
 	query = db.select([usuarios, estudiantes.columns.grado, estudiantes.columns.educacion_especial])
70 82
 	query = query.select_from(usuarios.join(estudiantes, usuarios.columns.id == estudiantes.columns.user_id)).where(estudiantes.columns.user_id == id)
71 83
 	result = connection.execute(query).fetchall()
72 84
 	if not len(result):
73
-# 		return add_form()
74
-# 		return redirect(url_for("formas",accion="add",tipo="estudiante"))
75
-# 		return index.formas("add","estudiante")
76 85
 		return False
77 86
 	for row in result:
78 87
 		row_as_dict = dict(row)
@@ -89,14 +98,15 @@ def edit_form(id):
89 98
 			else:
90 99
 				item.update({"value":str(row_as_dict[item["name"]])})
91 100
 			item.update({"tabindex":orden})
101
+			item.update({"disabled":disabled})
92 102
 			col_data.append(item)
93 103
 			orden+=1
94 104
 		entradas.update({"col"+str(i):col_data})
95 105
 		i+=1
96 106
 	data= {"titulo":"Estudiante","accion":"Editar"}
97 107
 	data.update({"entradas":entradas})
98
-# 	print(data)
108
+	abled=True
109
+	if disabled:
110
+		abled=False
111
+	data.update({"abled":abled})
99 112
 	return jsonify(data)
100
-	
101
-# print(edit_form(1))
102
-# add()

+ 19
- 12
facultad.py Datei anzeigen

@@ -59,25 +59,30 @@ def add(data):
59 59
 
60 60
 
61 61
 def add_form():
62
+	i=1
63
+	orden=1
64
+	entradas={}
65
+	for col in form_order["entradas"]:
66
+		col_data=[]
67
+		for item in form_order["entradas"][col]:
68
+			item.update({"tabindex":orden})
69
+			item.update({"disabled":False})
70
+			orden+=1
71
+		entradas.update({"col"+str(i):col_data})
72
+		i+=1
62 73
 	data= {"titulo":"Facultad","accion":"Añadir"}
63 74
 	data.update(form_order)
75
+	data.update({"abled":True})
64 76
 	return jsonify(data)
65 77
 	
66
-def edit_form(id):
78
+def edit_form(id, disabled=False):
67 79
 	facultad = db.Table('facultad', metadata, autoload=True, autoload_with=engine)
68 80
 	usuarios = db.Table('usuarios', metadata, autoload=True, autoload_with=engine)
69 81
 	query = db.select([usuarios, facultad.columns.especialidad, facultad.columns.educacion_especial])
70 82
 	query = query.select_from(usuarios.join(facultad, usuarios.columns.id == facultad.columns.user_id)).where(facultad.columns.user_id == id)
71 83
 	result = connection.execute(query).fetchall()
72
-# 	print(result)
73 84
 	if not len(result):
74
-# 		return add_form()
75
-# 		return render_template(url_for("formas",accion="add",tipo="facultad"))
76
-# 		return index.formas("add","facultad")
77 85
 		return False
78
-# 		return redirect("http://127.0.0.1:5000/error/facultad/"+id)
79
-# 		return redirect(url_for("maneja_error_user",id=id,tipo="facultad"))
80
-# 		return render_template("error.html",id=id,tipo="facultad")
81 86
 	for row in result:
82 87
 		row_as_dict = dict(row)
83 88
 	i=1
@@ -93,14 +98,16 @@ def edit_form(id):
93 98
 			else:
94 99
 				item.update({"value":str(row_as_dict[item["name"]])})
95 100
 			item.update({"tabindex":orden})
101
+			item.update({"disabled":disabled})
96 102
 			col_data.append(item)
97 103
 			orden+=1
98 104
 		entradas.update({"col"+str(i):col_data})
99 105
 		i+=1
100 106
 	data= {"titulo":"Facultad","accion":"Editar"}
101 107
 	data.update({"entradas":entradas})
102
-# 	print(data)
108
+	abled=True
109
+	if disabled:
110
+		abled=False
111
+	data.update({"abled":abled})
103 112
 	return jsonify(data)
104
-	
105
-# print(edit_form(1))
106
-# add()
113
+	

+ 15
- 8
index.py Datei anzeigen

@@ -1,6 +1,7 @@
1 1
 from flask import Flask, render_template, request, redirect, url_for
2 2
 import json
3
-import estudiante, madre, admin, enfermera, facultad
3
+# import estudiante, madre, admin, enfermera, facultad
4
+import forma
4 5
 
5 6
 app = Flask(__name__)
6 7
 
@@ -14,8 +15,7 @@ def procesaUser():
14 15
 	data = request.form
15 16
 	tipo_accion = getattr(__import__(data["tipo"]), data["accion"])
16 17
 	return tipo_accion(data)
17
-	
18
-	
18
+		
19 19
 @app.route('/admin/forma/<accion>/<tipo>/', methods=['GET', 'POST'])
20 20
 @app.route('/admin/forma/<accion>/<tipo>/<id>', methods=['GET', 'POST'])
21 21
 def formas(accion,tipo,id=None):
@@ -26,15 +26,22 @@ def formas(accion,tipo,id=None):
26 26
 @app.route('/admin/formaDatos/<accion>/<tipo>/<id>', methods=['GET', 'POST'])
27 27
 def formaEst(accion, tipo, id=None):
28 28
 # 	data = json.loads('formaEstudiantes.json')
29
-	if(accion=="add"):
29
+	if tipo not in ["enfermera", "administracion", "estudiante", "madre", "facultad"]:
30
+		return {"error":True,"tipo":"tipo_incorrecto","opcion":tipo,"user_type":"admin"}
31
+	if accion not in ["edit", "add", "view"]:
32
+		return {"error":True,"tipo":"accion_incorrecta","opcion":accion,"user_type":"admin"}
33
+	if (accion=="add"):
30 34
 		return __import__(tipo).add_form()
31 35
 	if(accion=="edit"):
32 36
 		resultado=__import__(tipo).edit_form(id)
33 37
 		if resultado==False:
34
-# 			return __import__(tipo).add_form()
35
-# 			return render_template('error.html',tipo=tipo)
36
-# 			return redirect(url_for("maneja_error_user",tipo="facultad"))
37
-			return {"error":True,"tipo":tipo,"user_type":"admin"}
38
+			return {"error":True,"tipo":"usuario_incorrecto","opcion":tipo,"user_type":"admin"}
39
+		else:
40
+			return resultado
41
+	if(accion=="view"):
42
+		resultado=__import__(tipo).edit_form(id,disabled=True)
43
+		if resultado==False:
44
+			return {"error":True,"tipo":"usuario_incorrecto","opcion":tipo,"user_type":"admin"}
38 45
 		else:
39 46
 			return resultado
40 47
 

+ 19
- 12
madre.py Datei anzeigen

@@ -59,25 +59,30 @@ def add(data):
59 59
 
60 60
 
61 61
 def add_form():
62
+	i=1
63
+	orden=1
64
+	entradas={}
65
+	for col in form_order["entradas"]:
66
+		col_data=[]
67
+		for item in form_order["entradas"][col]:
68
+			item.update({"tabindex":orden})
69
+			item.update({"disabled":False})
70
+			orden+=1
71
+		entradas.update({"col"+str(i):col_data})
72
+		i+=1
62 73
 	data= {"titulo":"Madre","accion":"Añadir"}
63 74
 	data.update(form_order)
75
+	data.update({"abled":True})
64 76
 	return jsonify(data)
65 77
 	
66
-def edit_form(id):
78
+def edit_form(id, disabled=False):
67 79
 	madre = db.Table('madres', metadata, autoload=True, autoload_with=engine)
68 80
 	usuarios = db.Table('usuarios', metadata, autoload=True, autoload_with=engine)
69 81
 	query = db.select([usuarios, madre.columns.otro1, madre.columns.otro2])
70 82
 	query = query.select_from(usuarios.join(madre, usuarios.columns.id == madre.columns.user_id)).where(madre.columns.user_id == id)
71 83
 	result = connection.execute(query).fetchall()
72
-# 	print(result)
73 84
 	if not len(result):
74
-# 		return add_form()
75
-# 		return render_template(url_for("formas",accion="add",tipo="madre"))
76
-# 		return index.formas("add","madre")
77 85
 		return False
78
-# 		return redirect("http://127.0.0.1:5000/error/madre/"+id)
79
-# 		return redirect(url_for("maneja_error_user",id=id,tipo="madre"))
80
-# 		return render_template("error.html",id=id,tipo="madre")
81 86
 	for row in result:
82 87
 		row_as_dict = dict(row)
83 88
 	i=1
@@ -93,14 +98,16 @@ def edit_form(id):
93 98
 			else:
94 99
 				item.update({"value":str(row_as_dict[item["name"]])})
95 100
 			item.update({"tabindex":orden})
101
+			item.update({"disabled":disabled})
96 102
 			col_data.append(item)
97 103
 			orden+=1
98 104
 		entradas.update({"col"+str(i):col_data})
99 105
 		i+=1
100 106
 	data= {"titulo":"Madre","accion":"Editar"}
101 107
 	data.update({"entradas":entradas})
102
-# 	print(data)
108
+	abled=True
109
+	if disabled:
110
+		abled=False
111
+	data.update({"abled":abled})
103 112
 	return jsonify(data)
104
-	
105
-# print(edit_form(1))
106
-# add()
113
+	

+ 1
- 1
static/error.js Datei anzeigen

@@ -3,7 +3,7 @@ var error = angular.module('error', ['ngSanitize']);
3 3
 // Define the `PhoneListController` controller on the `phonecatApp` module
4 4
 
5 5
 // error.controller('ErrorController', function ErrorController($http, $scope, tipo, id) {
6
-error.controller('ErrorController', function ErrorController(tipo) {
6
+error.controller('ErrorController', function ErrorController(tipo, opcion) {
7 7
   	console.log(tipo);
8 8
 //   	$window.location.href = '/index';
9 9
 //   	var url = '/formaDatos/'+accion+'/'+tipo+'/'

+ 1
- 0
static/forma.js Datei anzeigen

@@ -16,6 +16,7 @@ forma.controller('FormController', function FormController($http, $scope, accion
16 16
 		  $scope.entradas = response.data.entradas;
17 17
 		  $scope.titulo = response.data.titulo;
18 18
 		  $scope.accion = response.data.accion;
19
+		  $scope.abled = response.data.abled;
19 20
 	  }
20 21
 	  else
21 22
 	  {

+ 2
- 2
templates/error.html Datei anzeigen

@@ -10,10 +10,10 @@
10 10
 <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.9/angular-sanitize.js"></script>
11 11
 	<script src="{{ url_for('static', filename='error.js') }}"></script>
12 12
     <script>
13
-       error.value("tipo", "{{tipo}}");
13
+       error.value("tipo_error", "{{tipo_error}}").value("opcion", "{{opcion}}");
14 14
     </script>
15 15
 </head>
16 16
 <body ng-app="error" ng-controller="ErrorController">
17
-Ese usuario no existe o no es {{tipo}}
17
+Error {{tipo_error}} Ese usuario no existe o no es {{opcion}}
18 18
 </body>
19 19
 </html>

+ 19
- 11
templates/forma.html Datei anzeigen

@@ -12,6 +12,10 @@
12 12
     <script>
13 13
        forma.value("accion", "{{accion}}").value("tipo", "{{tipo}}").value("id", "{{id}}").value("user_type", "{{user_type}}");
14 14
     </script>
15
+    <script>
16
+    	
17
+    </script>
18
+
15 19
 </head>
16 20
 <body ng-app="forma" ng-controller="FormController">
17 21
 <div class="container-fluid">
@@ -47,23 +51,23 @@
47 51
 		{{entrada.label}}
48 52
 	</span>
49 53
 	<span ng-if="entrada.type=='select'">
50
-		<select tabindex="{{entrada.tabindex}}" name="{{entrada.name}}" id="{{entrada.name}}" class="form-control-inline"  style="width: 250px;height: 48px;"
54
+		<select ng-disabled="entrada.disabled" tabindex="{{entrada.tabindex}}" name="{{entrada.name}}" id="{{entrada.name}}" class="form-control-inline"  style="width: 250px;height: 48px;"
51 55
       ng-options="opcion.label for opcion in entrada.options track by opcion.id"
52 56
       ng-model="entrada.value"
53 57
       ng-required="true" required
54 58
       ></select>
55 59
 	</span>
56 60
 	<span ng-if="entrada.type=='checkbox'">
57
-		<input  tabindex="{{entrada.tabindex}}" class="form-control-inline" type="{{entrada.type}}" name="{{entrada.name}}" value="1" ng-checked="{{entrada.value}}" style="width: 250px;height: 48px;align:left;">
61
+		<input ng-disabled="entrada.disabled" tabindex="{{entrada.tabindex}}" class="form-control-inline" type="{{entrada.type}}" name="{{entrada.name}}" value="1" ng-checked="{{entrada.value}}" style="width: 250px;height: 48px;align:left;">
58 62
 	</span>
59 63
 	<span ng-if="entrada.type=='tel'">
60
-		<input tabindex="{{entrada.tabindex}}" class="form-control-inline" type="tel" placeholder="787-123-4567" pattern="[0-9]{3}-[0-9]{3}-[0-9]{4}" ng-required="entrada.require" name="{{entrada.name}}" value="{{entrada.value}}" style="width: 250px;height: 48px;align:left;">
64
+		<input ng-disabled="entrada.disabled" tabindex="{{entrada.tabindex}}" class="form-control-inline" type="tel" placeholder="787-123-4567" pattern="[0-9]{3}-[0-9]{3}-[0-9]{4}" ng-required="entrada.require" name="{{entrada.name}}" value="{{entrada.value}}" style="width: 250px;height: 48px;align:left;">
61 65
 	</span>
62 66
 	<span ng-if="entrada.type=='date'">
63
-		<input tabindex="{{entrada.tabindex}}" class="form-control-inline" type="date" placeholder="yyyy-MM-dd" pattern="\d{4}-\d{1,2}-\d{1,2}" ng-required="entrada.require" name="{{entrada.name}}" value="{{entrada.value}}" style="width: 250px;height: 48px;align:left;">
67
+		<input ng-disabled="entrada.disabled" tabindex="{{entrada.tabindex}}" class="form-control-inline" type="date" placeholder="yyyy-MM-dd" pattern="\d{4}-\d{1,2}-\d{1,2}" ng-required="entrada.require" name="{{entrada.name}}" value="{{entrada.value}}" style="width: 250px;height: 48px;align:left;">
64 68
 	</span>
65 69
 	<span ng-if="entrada.type!='select' && entrada.type!='checkbox' && entrada.type!='tel' && entrada.type!='date'">
66
-		<input tabindex="{{entrada.tabindex}}" ng-required="entrada.require" class="form-control-inline" type="{{entrada.type}}" name="{{entrada.name}}" value="{{entrada.value}}" style="width: 250px;height: 48px;align:left;">
70
+		<input ng-disabled="entrada.disabled" tabindex="{{entrada.tabindex}}" ng-required="entrada.require" class="form-control-inline" type="{{entrada.type}}" name="{{entrada.name}}" value="{{entrada.value}}" style="width: 250px;height: 48px;align:left;">
67 71
 	</span>
68 72
 
69 73
   <span ng-if="entradas.col2[$index].name">
@@ -71,23 +75,23 @@
71 75
 		{{entradas.col2[$index].label}}
72 76
 	</span>
73 77
 	<span ng-if="entradas.col2[$index].type=='select'">
74
-		<select name="{{entradas.col2[$index].name}}" id="{{entradas.col2[$index].name}}" class="form-control-inline"  style="width: 250px;height: 48px;"
78
+		<select ng-disabled="entradas.col2[$index].disabled" name="{{entradas.col2[$index].name}}" id="{{entradas.col2[$index].name}}" class="form-control-inline"  style="width: 250px;height: 48px;"
75 79
       ng-options="opcion.label for opcion in entradas.col2[$index].options track by opcion.id"
76 80
       ng-model="entradas.col2[$index].value"
77 81
       ng-required="entradas.col2[$index].require"
78 82
       ></select>
79 83
 	</span>
80 84
 	<span ng-if="entradas.col2[$index].type=='checkbox'">
81
-			<input class="form-control-inline" type="checkbox" name="{{entradas.col2[$index].name}}" value="1" ng-checked="{{entradas.col2[$index].value}}" style="width: 250px;height: 48px;align:left;">
85
+			<input ng-disabled="entradas.col2[$index].disabled" class="form-control-inline" type="checkbox" name="{{entradas.col2[$index].name}}" value="1" ng-checked="{{entradas.col2[$index].value}}" style="width: 250px;height: 48px;align:left;">
82 86
 	</span>
83 87
 	<span ng-if="entradas.col2[$index].type=='tel'">
84
-		<input class="form-control-inline" type="tel" placeholder="787-123-4567" pattern="[0-9]{3}-[0-9]{3}-[0-9]{4}" ng-required="entradas.col2[$index].require" name="{{entradas.col2[$index].name}}" value="{{entradas.col2[$index].value}}" style="width: 250px;height: 48px;align:left;">
88
+		<input ng-disabled="entradas.col2[$index].disabled" class="form-control-inline" type="tel" placeholder="787-123-4567" pattern="[0-9]{3}-[0-9]{3}-[0-9]{4}" ng-required="entradas.col2[$index].require" name="{{entradas.col2[$index].name}}" value="{{entradas.col2[$index].value}}" style="width: 250px;height: 48px;align:left;">
85 89
 	</span>
86 90
 	<span ng-if="entradas.col2[$index].type=='date'">
87
-		<input class="form-control-inline" type="date" placeholder="yyyy-MM-dd" pattern="\d{4}-\d{1,2}-\d{1,2}" ng-required="entradas.col2[$index].require" name="{{entradas.col2[$index].name}}" value="{{entradas.col2[$index].value}}" style="width: 250px;height: 48px;align:left;">
91
+		<input ng-disabled="entradas.col2[$index].disabled" class="form-control-inline" type="date" placeholder="yyyy-MM-dd" pattern="\d{4}-\d{1,2}-\d{1,2}" ng-required="entradas.col2[$index].require" name="{{entradas.col2[$index].name}}" value="{{entradas.col2[$index].value}}" style="width: 250px;height: 48px;align:left;">
88 92
 	</span>
89 93
 	<span ng-if="entradas.col2[$index].type!='select' && entradas.col2[$index].type!='checkbox' && entradas.col2[$index].type!='tel' && entradas.col2[$index].type!='date'">
90
-		<input class="form-control-inline" type="{{entradas.col2[$index].type}}" ng-required="entradas.col2[$index].require" name="{{entradas.col2[$index].name}}" value="{{entradas.col2[$index].value}}" style="width: 250px;height: 48px;align:left;">
94
+		<input ng-disabled="entradas.col2[$index].disabled" class="form-control-inline" type="{{entradas.col2[$index].type}}" ng-required="entradas.col2[$index].require" name="{{entradas.col2[$index].name}}" value="{{entradas.col2[$index].value}}" style="width: 250px;height: 48px;align:left;">
91 95
 	</span>
92 96
   </span>
93 97
 </div>
@@ -96,7 +100,11 @@
96 100
 <input type="hidden" name="id" value="{{id}}">
97 101
 <input type="hidden" name="accion" value="{{accion}}">
98 102
 <input type="hidden" name="tipo" value="{{tipo}}">
99
-<input class="boton labelForma" type="submit">
103
+      {% raw %}
104
+<span ng-if="abled">
105
+ <input class="boton labelForma" type="submit">
106
+</span>
107
+      {% endraw %}
100 108
 </form>
101 109
 </div>
102 110
 </div>