crea registro, modifica trabla de particpantes y algunas cosas mas en backend

This commit is contained in:
Germán Correa 2021-06-16 14:05:57 -03:00
parent 46c388ce15
commit 30aa37e7be
10 changed files with 186 additions and 217 deletions

View File

@ -1,62 +0,0 @@
PRAGMA foreign_keys=OFF;
BEGIN TRANSACTION;
CREATE TABLE Registro
(
id INTEGER PRIMARY KEY AUTOINCREMENT,
nombre VARCHAR(50) NOT NULL,
apellido VARCHAR(50) NOT NULL,
titulo VARCHAR(50),
afiliacion VARCHAR(50),
ciudad VARCHAR(50),
pais VARCHAR(50),
email VARCHAR(80) NOT NULL UNIQUE,
fechaLlegada DATE,
fechaPartida DATE,
financiacion BOOLEAN NOT NULL,
invitado BOOLEAN NOT NULL,
cartaInvitacion BOOLEAN NOT NULL,
roomingPref VARCHAR(50),
roommate VARCHAR(50),
fechaRegistro DATETIME NOT NULL
);
INSERT INTO "Registro" VALUES(1,'German','Correa','','','Montevideo','Uruguay','german.correa.balier@gmail.com','','',0,0,0,'
','German Correa','2017-12-18 18:05:28');
INSERT INTO "Registro" VALUES(2,'German','Correa','','','Montevideo','Uruguay','german.correa.basslier@gmail.com','','',1,1,1,'
','German Correa','2017-12-18 19:04:38');
INSERT INTO "Registro" VALUES(3,'German','Correa','','','Montevideo','Uruguay','gaaerman.correa.balier@gmail.com','','',0,0,1,'
','German Correa','2017-12-18 19:05:15');
INSERT INTO "Registro" VALUES(4,'German','Correa','','','Montevideo','Uruguay','aagerman.correa.balier@gmail.com','','',1,0,1,'
','German Correa','2017-12-18 19:06:34');
CREATE TABLE Speakers
(
id INTEGER PRIMARY KEY AUTOINCREMENT,
nombre VARCHAR(50) NOT NULL,
apellido VARCHAR(50) NOT NULL,
afiliacion VARCHAR(50) NOT NULL,
foto VARCHAR(200),
web VARCHAR(200),
confirmado BOOLEAN
);
INSERT INTO "Speakers" VALUES(1,'Jairo','Bochi','Universidad Católica de Chile','img/speakers/jariobochi.jpg','http://www.mat.uc.cl/~jairo.bochi/',1);
INSERT INTO "Speakers" VALUES(2,'Christian','Bonatti','Université de Bourgogne','img/speakers/cbonatti.jpg','http://bonatti.perso.math.cnrs.fr/',1);
INSERT INTO "Speakers" VALUES(3,'Keith','Burns','Northwestern University','img/speakers/kburns.jpg','http://www.math.northwestern.edu/~burns/',1);
INSERT INTO "Speakers" VALUES(4,'Yaiza','Canzani','University of North Carolina at Chapel Hill','img/speakers/ycanzani.jpg','http://canzani.web.unc.edu/',1);
INSERT INTO "Speakers" VALUES(5,'Gonzalo','Contreras','CIMAT, Guanajuato','img/speakers/gcontreras.jpg','http://www.cimat.mx/~gonzalo/',1);
INSERT INTO "Speakers" VALUES(6,'Adriana','da Luz','Universidad de la República','img/speakers/adaluz.jpg','',1);
INSERT INTO "Speakers" VALUES(7,'Colin','Guillarmou','Université Paris-Sud','img/speakers/cguillarmou.jpg','https://www.math.u-psud.fr/~guillarmou/',1);
INSERT INTO "Speakers" VALUES(8,'Ursula','Hamenstädt','Universität Bonn','img/speakers/uhamenstadt.jpg','http://www.math.uni-bonn.de/people/ursula/',1);
INSERT INTO "Speakers" VALUES(9,'Thomas','Koberda','University of Virginia','img/speakers/tkoberda.jpg','http://faculty.virginia.edu/Koberda/',1);
INSERT INTO "Speakers" VALUES(10,'Andrés','Koropecki','Universidade Federal Fluminense','img/speakers/akoropecki.jpg','http://www.professores.uff.br/koro/',1);
INSERT INTO "Speakers" VALUES(11,'François','Ledrappier','University of Notre Dame','img/speakers/fledrappier.jpg','http://math.nd.edu/people/faculty/francois-ledrappier/',1);
INSERT INTO "Speakers" VALUES(12,'Yash','Lodha','Cornell University','img/speakers/ylodha.jpg','http://www.math.cornell.edu/m/People/bynetid/yl763',1);
INSERT INTO "Speakers" VALUES(13,'Leonardo','Macarini','Universidade Federal do Rio de Janeiro','img/speakers/lmacarini.jpg','http://www.im.ufrj.br/visualizarDocente.php?idDepartamento=3&idDocente=28',1);
INSERT INTO "Speakers" VALUES(14,'Kathryn','Mann','Brown University','img/speakers/kmann.jpg','http://www.math.brown.edu/~mann/index.html',1);
INSERT INTO "Speakers" VALUES(15,'Andrés','Navas','Universidad de Santiago de Chile','img/speakers/anavas.jpg','http://www.mat.usach.cl/index.php/2012-12-19-12-50-19/academicos/75-andres-navas-flores',1);
INSERT INTO "Speakers" VALUES(16,'Jean-François','Quint','Université Bordeaux I','img/speakers/jfquint.jpg','https://www.math.u-bordeaux.fr/~jquint/',1);
INSERT INTO "Speakers" VALUES(17,'Andrés','Sambarino','Université Paris VI','img/speakers/asambarino.jpg','https://webusers.imj-prg.fr/~andres.sambarino/',1);
INSERT INTO "Speakers" VALUES(18,'Pablo','Shmerkin','Universidad Torcuato Di Tella','img/speakers/pshmerkin.jpg','http://www.utdt.edu/profesores/pshmerkin',1);
INSERT INTO "Speakers" VALUES(19,'Maxime','Wolff','Université Paris VI','img/speakers/mwolff.jpg','https://webusers.imj-prg.fr/~maxime.wolff/',1);
DELETE FROM sqlite_sequence;
INSERT INTO "sqlite_sequence" VALUES('Speakers',19);
INSERT INTO "sqlite_sequence" VALUES('Registro',4);
COMMIT;

Binary file not shown.

View File

@ -12,11 +12,8 @@
}
public function insert($registro){
$sql = 'INSERT INTO Registro (nombre,apellido,titulo,afiliacion,ciudad,'
.'pais,email,fechaLlegada,fechaPartida,'
."cartaInvitacion,roomingPref,roommate,fechaRegistro)"
.' VALUES (:nombre,:apellido,:titulo,:afiliacion,:ciudad,:pais,:email,:fechaLlegada,'
.':fechaPartida,:cartaInvitacion,:roomingPref,:roommate,:fechaRegistro);';
$sql = 'INSERT INTO Registro (nombre,apellido,titulo,afiliacion,ciudad,pais,email,emailzoom,fechaRegistro)'
.' VALUES (:nombre,:apellido,:titulo,:afiliacion,:ciudad,:pais,:email,:emailzoom,:fechaRegistro);';
$stmt = $this->pdo->prepare($sql);
$stmt->execute([
@ -27,13 +24,7 @@
':ciudad' => $registro['ciudad'],
':pais' => $registro['pais'],
':email' => $registro['email'],
':fechaLlegada' => $registro['bda'],
':fechaPartida' => $registro['eda'],
//':financiacion' => $registro['financiacion'],
//':invitado' => $registro['invited'],
':cartaInvitacion' => $registro['letterinvited'],
':roomingPref' => $registro['roomtype'],
':roommate' => $registro['roomate'],
':emailzoom' => $registro['emailzoom'],
':fechaRegistro' => $date = date('Y-m-d H:i:s'),
]);
return $this->pdo->lastInsertId();
@ -45,12 +36,7 @@
return $stmt->fetchAll(\PDO::FETCH_BOTH);
}
public function getSpeakers(){
$stmt = $this->pdo->prepare("SELECT * FROM Speakers");
$stmt -> execute();
return $stmt->fetchAll(\PDO::FETCH_BOTH);
}
public function findByMail($email){
$stmt = $this->pdo->prepare("SELECT * FROM Registro WHERE email=:email");
$stmt->bindParam(":email",$email);

View File

@ -8,34 +8,7 @@ CREATE TABLE IF NOT EXISTS Registro
ciudad VARCHAR(50),
pais VARCHAR(50),
email VARCHAR(80) NOT NULL UNIQUE,
fechaLlegada DATE,
fechaPartida DATE,
/*financiacion BOOLEAN NOT NULL,*/
/*invitado BOOLEAN NOT NULL,*/
cartaInvitacion BOOLEAN NOT NULL,
roomingPref VARCHAR(50),
roommate VARCHAR(50),
emailzoom VARCHAR(80) NOT NULL UNIQUE,
fechaRegistro DATETIME NOT NULL
);
CREATE TABLE IF NOT EXISTS Speakers
(
id INTEGER PRIMARY KEY AUTOINCREMENT,
nombre VARCHAR(50) NOT NULL,
apellido VARCHAR(50) NOT NULL,
afiliacion VARCHAR(50) NOT NULL,
foto VARCHAR(200),
web VARCHAR(200),
confirmado BOOLEAN
);
INSERT INTO Speakers(nombre,apellido,afiliacion,foto,web,confirmado)
VALUES('Alicia','Dickenstein','Universidad de Buenos Aires','img/speakers/adickenstein.jpg','http://mate.dm.uba.ar/~alidick/',1);
INSERT INTO Speakers(nombre,apellido,afiliacion,foto,web,confirmado)
VALUES('Antonio','Montalban','University of California','img/speakers/amontalban.jpg','https://math.berkeley.edu/~antonio/',1);
INSERT INTO Speakers(nombre,apellido,afiliacion,foto,web,confirmado)
VALUES('Jairo','Bochi','Pontificia Universidad Católica de Chile','img/speakers/jbochi.jpg','http://www.mat.uc.cl/~jairo.bochi/',1);
INSERT INTO Speakers(nombre,apellido,afiliacion,foto,web,confirmado)
VALUES('Milton','Jara','Instituto de Matemática Pura e Aplicada','img/speakers/mjara.jpg','https://impa.br/page-pessoas/milton-jara/',1);
INSERT INTO Speakers(nombre,apellido,afiliacion,foto,web,confirmado)
VALUES('Tatiana', 'Toro','University of Washington','img/speakers/ttoro.jpg','https://sites.math.washington.edu/~toro/',1);

View File

@ -5,7 +5,7 @@ function recaptchaCallback(){
}
$().ready(function(){
$("#otrotitulohidden").hide()
$("#statusmsg").hide();
$("#txtbda,#txteda").datepicker({
@ -13,34 +13,31 @@ $().ready(function(){
minDate:new Date(2018,11,17),
maxDate:new Date(2018,11,20)
});
$("#titulo").select2({
data: [
"Estudiante de grado",
"Estudiante de posgrado",
"Posdoctorando",
"Profesor",
"Otro",
],
placeholder: "Seleccione",
width: "100%",
minimumResultsForSearch: Infinity,
});
$("#titulo").on('select2:select', function (e){
var data = e.params.data;
if(data.text==="Otro")
$("#otrotitulohidden").show(500)
else
$("#otrotitulohidden").hide();
})
$("#pais").select2({
data: data.paises,
placeholder: "Select Country",
placeholder: "Seleccione",
width: "100%",
});/*.one('select2-focus', select2Focus).on("select2-blur", function () {
$(this).one('select2-focus', select2Focus)
});
function select2Focus() {
var select2 = $(this).data('select2');
setTimeout(function() {
if (!select2.opened()) {
select2.open();
}
}, 0);
}*/
$("#roomtype").select2({
data: data.roomtypes,
placeholder: "Select Rooming Preference",
width:"100%",
minimumResultsForSearch: -1,
dropdownCssClass: "bigdrop",
});
$('#registerform').on('submit',function(e) {
e.preventDefault();
});
@ -59,9 +56,16 @@ function select2Focus() {
required: true,
email: true
},
//invited:{required:true},
//financiacion:"required",
letterinvited:"required",
ciudad:{required:true},
pais:{required:true},
titulo:{required:true},
otrotitulo:{required: function(){
if($("#titulo").select2('data')[0].id === 'Otro')
return true;
else return false
}},
profesion:{required:true},
afiliacion:{required:true},
hiddenRecaptcha: {
required: function() {
if(grecaptcha.getResponse() == "") return true;
@ -73,18 +77,20 @@ function select2Focus() {
},
messages: {
nombre: {
required: "Please enter your firstname",
minlength: "Your firstname must be at least 2 characters long"
required: "Debe ingresar Nombre",
minlength: "Nombre debe tener al menos 2 caracteres"
},
apellido: {
required: "Please enter your lastname",
minlength: "Your lastname must be at least 2 characters long"
required: "Debe ingresar Apellido",
minlength: "Apellido debe tener al menos 2 caracteres"
},
email: "Please enter a valid e-mail address",
invited: "Select one option please",
financiacion: "Select one option please",
letterinvited: "Select one option please",
hiddenRecaptcha: "Please validate reCAPTCHA",
email: "Dirección de e-mail inválida",
ciudad:"Ingrese ciudad",
pais:"Seleccione País",
titulo: "Debe ingresar profesión o actividiad",
otrotitulo:"Aclare el detalle de su profesión o actividad",
afiliacion:"Debe ingresar su afiliación",
hiddenRecaptcha: "Debe validar reCAPTCHA",
},
@ -92,7 +98,11 @@ function select2Focus() {
var formdata = $(form).serializeArray();
formdata.find(item => item.name === "pais").value = $("#pais").select2("data")[0].text.trim();
formdata.find(item => item.name === "roomtype").value = $("#roomtype").select2("data")[0].text.trim();
if ($("#titulo").select2("data")[0].id !== "Otro")
formdata.find((item) => item.name === "titulo").value = $("#titulo").select2("data")[0].text.trim();
else
formdata.find((item) => item.name === "titulo").value = $("#otrotitulo").val()
console.log(formdata)
var parameters = $.param(formdata);
/*$.ajax({
url: 'api/register',

View File

@ -41,7 +41,29 @@ $app->get('/participantes', function (Request $request, Response $response, arra
$this->logger->info("GDDWorkshop '/participants' route");
$db = $this->db;
$data = $db->getAll();
return $this->renderer->render($response, 'participants.html', ['registros' => $data]);
$result = array('Estudiante de grado'=>array(),'Estudiante de posgrado'=>array(),'Profesor'=>array(),'Posdoctorando'=>array(),'Otro'=>array());
foreach ($data as $element) {
switch ($element['titulo']){
case 'Profesor':
$result['Profesor'][] = $element;
break;
case 'Posdoctorando':
$result['Posdoctorando'][] = $element;
break;
case 'Estudiante de posgrado':
$result['Estudiante de posgrado'][] = $element;
break;
case 'Estudiante de grado':
$result['Estudiante de grado'][] = $element;
break;
default:
$result['Otro'][] = $element;
break;
}
}
//echo '<pre>' . json_encode($result,JSON_PRETTY_PRINT). '</pre>';
return $this->renderer->render($response, 'participants.html', ['registros' => $result]);
});
@ -158,13 +180,23 @@ $app->group('/api', function($app){
else{
if(!isset($data['nombre'])||empty($data['nombre']))
$messages->addMessageNow("submit-register-err", "First name could not be empty");
$messages->addMessageNow("submit-register-err", "Debe ingresar nombre");
if(!isset($data['apellido'])||empty($data['apellido']))
$messages->addMessageNow("submit-register-err", "Last name could not be empty");
$messages->addMessageNow("submit-register-err", "Debe ingresar apellido");
if(!isset($data['email'])||empty($data['email']))
$messages->addMessageNow("submit-register-err", "E-mail could not be empty");
if(!isset($data['letterinvited'])||!is_numeric($data['letterinvited']))
$messages->addMessageNow("submit-register-err", "Question about needing a letter of invitation must have a selected answer");
$messages->addMessageNow("submit-register-err", "Debe ingresar e-mail");
if(!isset($data['ciudad'])||empty($data['ciudad']))
$messages->addMessageNow("submit-register-err", "Debe ingresar ciudad");
if(!isset($data['pais'])||empty($data['pais']))
$messages->addMessageNow("submit-register-err", "Debe seleccionar pais");
if(!isset($data['titulo'])||empty($data['titulo']))
$messages->addMessageNow("submit-register-err", "Debe seleccionar profesión o actividad");
if(!isset($data['afiliacion'])||empty($data['afiliacion']))
$messages->addMessageNow("submit-register-err", "Debe ingresar afiliación");
if(!isset($data['emailzoom'])||empty($data['emailzoom']))
$messages->addMessageNow("submit-register-err", "Debe ingresar e-mail asociado a cuenta Zoom");
/*if(!isset($data['letterinvited'])||!is_numeric($data['letterinvited']))
$messages->addMessageNow("submit-register-err", "Question about needing a letter of invitation must have a selected answer");*/
//ReCaptcha Validation
if(!isset($data['g-recaptcha-response'])||empty($data['g-recaptcha-response'])){
@ -189,8 +221,8 @@ $app->group('/api', function($app){
try{
if($db->findByMail($data['email']))
$messages->addMessageNow("submit-register-err", $data['email']." is already registered<br/>"
."Please contact: <b>surfacedynamics2018@cmat.edu.uy</b>");
$messages->addMessageNow("submit-register-err", $data['email']." ya está registrado<br/>"
."Contacte a: <b>clam2021@fing.edu.uy</b>");
}catch (Exception $e){
$this->logger->debug("Submit register DB error: ".$e->getMessage());
$messages->addMessageNow("submit-register-err", "DB error: ".$e->getMessage());
@ -199,7 +231,7 @@ $app->group('/api', function($app){
if($messages->hasMessage("submit-register-err")){
$arrayresponse = array("success" => false,
"msg"=>"You registration could not be completed:\n",
"msg"=>"Su registro NO pudo ser completado:\n",
"errors"=>$messages->getMessage("submit-register-err"), "data"=>$data);
}
@ -213,7 +245,7 @@ $app->group('/api', function($app){
$arrayresponse = array("success" => true,
"msg"=>"You have been successfully registered to Workshop on Surface Dynamics 2018",
"data"=>$data);
$mailbody = "Hello ".$data["nombre"]." ".$data["apellido"].",\n\n".
/*$mailbody = "Hello ".$data["nombre"]." ".$data["apellido"].",\n\n".
"You have been successfully registered to the Workshop on Surface Dynamics 2018!\n\n".
"If you need to change the information you have provided and for any ".
"questions please contact surfacedynamics2018@cmat.edu.uy\n\n".
@ -222,7 +254,7 @@ $app->group('/api', function($app){
'Reply-To: ' . "surfacedynamics2018@edu.uy" . "\r\n" .
'Content-Type: ' . "text/plain; charset=UTF-8". "\r\n" .
'X-Mailer: PHP/' . phpversion();
mail($data['email'], 'Successfully registered to the Surface Dynamics 2018 Workshop', $mailbody, $headers);
mail($data['email'], 'Successfully registered to the Surface Dynamics 2018 Workshop', $mailbody, $headers);*/
}
$newres = $response->withJson($arrayresponse);
return $newres;

View File

@ -23,7 +23,7 @@ return [
'level' => \Monolog\Logger::DEBUG,
],
'db' => [
'path' => __DIR__."/../db/clam2020.db",
'path' => __DIR__."/../db/clam2021.db",
'schema' => __DIR__."/../db/schema.sql",
'load_schema' => __DIR__."/../db/.schema.lock"
],

View File

@ -24,7 +24,7 @@
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand visible-xs" href="#">Clam2020 Menu</a>
<a class="navbar-brand visible-xs" href="#">Clam2021 Menu</a>
</div>
<div class="navbar-collapse collapse" id="menucollapse">
<div class="container">

View File

@ -4,29 +4,44 @@
<div class="row">
<div class="col-xs-12">
<h1><strong>Participants</strong></h1>
<div class="alert alert-info">
<!--<div class="alert alert-info">
<i class="glyphicon glyphicon-info-sign"></i> <strong>To be announced</strong><br/>
</div>
<table class="table table-striped">
</div>-->
<ul class="nav nav-tabs">
{% for cat,val in registros %}
<li class="{{ loop.index == 1 ? 'active' }}"><a data-toggle="tab" href="#{{ loop.index }}">{{cat}}</a></li>
{% endfor %}
</ul>
<div class="tab-content">
{% for cat,val in registros %}
<section class="{{ loop.index == 1 ? 'in active' }} tab-pane fade" id="{{ loop.index }}">
<table class="table table-striped" >
<thead>
<tr>
<th>First name</th>
<th>Last name</th>
<th>Affiliation</th>
<th>Nombre</th>
<th>Apellido</th>
<th>Afiliación</th>
</tr>
</thead>
<tbody>
{% for reg in registros %}
{% for reg in val %}
<tr>
<td>{{ reg.nombre | title }}</td>
<td>{{ reg.apellido | title }}</td>
<td>{{ reg.afiliacion }}</td>
</tr>
{% endfor %}
{% endfor %}
</tbody>
</table>
</section>
{% endfor %}
</div>
</div>
</div>

View File

@ -42,56 +42,46 @@
<!--<form id="registerform" method="POST" action novalidate="novalidate">
<form id="registerform" method="POST" action novalidate="novalidate">
<fieldset {{ disabled }}>-->
<fieldset {{ disabled }}>
<!-- Nombre y Apellido -->
<!-- <div class="row">
<div class="row">
<div class="form-group col-xs-12 col-sm-6">
<label class="control-label" for="nombre">First Name</label>
<label class="control-label" for="nombre">Nombre</label>
<div class="input-container">
<input id="nombre" class="form-control" name="nombre" type="text">
<input id="nombre" class="form-control" placeholder="Juan" name="nombre" type="text">
</div>
</div>
<div class="form-group col-xs-12 col-sm-6">
<label class="control-label" for="apellido">Last Name</label>
<label class="control-label" for="apellido">Apellido</label>
<div class="input-container">
<input id="apellido" class="form-control" name="apellido" type="text">
<input id="apellido" class="form-control" placeholder="Perez" name="apellido" type="text">
</div>
</div>
</div>-->
<!-- Título y Afiliación -->
<!--<div class="row">
<div class="form-group col-xs-12 col-sm-6">
<label class="control-label" for="titulo">Title</label>
</div>
<!-- Email -->
<div class="row">
<div class="form-group col-xs-12">
<label class="control-label" for="email">Email de contacto</label>
<div class="input-container">
<input id="titulo" class="form-control" name="titulo"
placeholder="Professor, Post Doc, Grad Student(1st year, 2nd year, etc..)" type="text">
<input id="email" class="form-control" name="email"
placeholder="mail@example.com" type="email">
</div>
</div>
<div class="form-group col-xs-12 col-sm-6">
<label class="control-label " for="afiliacion">Affiliation</label>
<div class="input-container">
<input id="afiliacion" class="form-control" name="afiliacion"
placeholder="Which university or organization" type="text">
</div>
</div>
</div>-->
</div>
<!-- Ciudad y Pais -->
<!--<div class="row">
<div class="row">
<div class="form-group col-xs-12 col-sm-6">
<label class=" control-label" for="ciudad">City</label>
<label class=" control-label" for="ciudad">Ciudad</label>
<div class="input-container">
<input id="ciudad" name="ciudad" class="form-control" type="text">
<input id="ciudad" placeholder="Montevideo" name="ciudad" class="form-control" type="text">
</div>
</div>
<div class="form-group col-xs-12 col-sm-6">
<label class=" control-label" for="pais">Country</label>
<label class=" control-label" for="pais">País</label>
<div class="input-container">
<select {{ disabled }} id="pais" name="pais">
<option></optoon>
@ -99,18 +89,43 @@
</div>
</div>
</div>-->
<!-- Email -->
<!--<div class="row">
<div class="form-group col-xs-12">
<label class="control-label" for="email">Email</label>
</div>
<!-- Título y Afiliación -->
<div class="row">
<div class="form-group col-xs-12 col-sm-6">
<label class="control-label" for="titulo">Profesión o Actividad</label>
<div class="input-container">
<input id="email" class="form-control" name="email"
placeholder="mail@example.com" type="email">
<select {{ disabled }} id="titulo" name="titulo">
<option></optoon>
</select>
</div>
<div id="otrotitulohidden" style="margin-top:10px;" class="input-container">
<input id="otrotitulo" placeholder="Detalle otro..." class="form-control" name="otrotitulo">
</div>
</div>
</div>-->
<div class="form-group col-xs-12 col-sm-6">
<label class="control-label " for="afiliacion">Afiliación</label>
<div class="input-container">
<input id="afiliacion" class="form-control" name="afiliacion"
placeholder="Universidad u organización" type="text">
</div>
</div>
</div>
<!-- Email Zoom -->
<div class="row">
<div class="form-group col-xs-12">
<label class="control-label" for="emailzoom">Email de cuenta Zoom</label>
<div class="input-container">
<input id="emailzoom" class="form-control" name="emailzoom"
placeholder="mailzoom@example.com" type="email">
</div>
</div>
</div>
<!-- Beggining date and Endig Date-->
<!--<div class="row">
@ -150,8 +165,8 @@
</div>-->
<!-- Invitation and letter of -->
<div class="row">
<!-- <div class="form-group col-xs-12 col-sm-6">
<!--<div class="row">
<div class="form-group col-xs-12 col-sm-6">
<label class="control-label" for="invited">
Were you invited to participate in this conference?
@ -199,7 +214,7 @@
</div>-->
<!--Captcha -->
<!-- <div class="row">
<div class="row">
<div class="form-group col-xs-12">
<div class="input-container">
@ -212,44 +227,44 @@
<input type="hidden" class="hiddenRecaptcha required" name="hiddenRecaptcha" id="hiddenRecaptcha">
</div>
</div>
</div>-->
</div>
<!-- Confirm Button -->
<!-- <div class="row">
<div class="row">
<div class="form-group col-xs-12 col-sm-8">
<button type="submit" class="btn-lg btn btn-primary">Register</button>
</div>
</div>
<fieldset disabled="disabled">
</form>-->
<!--<fieldset disabled="disabled">-->
</form>
<!--<div id="msgModal" class="modal fade" role="dialog">
<div id="msgModal" class="modal fade" role="dialog" tabindex="-1" aria-hidden="true" labelledby="msgModal">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">&times;</button>
<h4 class="modal-title">Surface Dynamics 2018 Workshop Registration</h4>
<h4 class="modal-title">Registro CLAM2021</h4>
</div>
<div class="modal-body">
<div class="alert">
</div>
</div>-->
<!--<div class="modal-footer">
</div>
<!-- <div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">
</button>
<button type="button" class="btn btn-default" data-dismiss="modal">No
</button>
</div>
</div>-->
</div>
</div>-->
</div>
</div>
{% endblock %}