student setup view rearranged

parent be65fb8e
...@@ -27,7 +27,8 @@ ...@@ -27,7 +27,8 @@
"angular-animate": "~1.4.1", "angular-animate": "~1.4.1",
"angular-sanitize": "~1.4.1", "angular-sanitize": "~1.4.1",
"angular-chart.js": "latest", "angular-chart.js": "latest",
"ng-lodash": "~0.3.0" "ng-lodash": "~0.3.0",
"bootstrap-filestyle": "~1.2.1"
}, },
"resolutions": { "resolutions": {
"angular": ">=1 <1.3.0", "angular": ">=1 <1.3.0",
......
...@@ -56,6 +56,7 @@ ...@@ -56,6 +56,7 @@
"country": "Country", "country": "Country",
"create_account": "Create account", "create_account": "Create account",
"create_an_account": "Create an account", "create_an_account": "Create an account",
"credentials": "Credentials",
"crop_image": "Crop image", "crop_image": "Crop image",
"data_no_saved": "Data can't be saved", "data_no_saved": "Data can't be saved",
"data_saved": "Data saved", "data_saved": "Data saved",
...@@ -97,7 +98,7 @@ ...@@ -97,7 +98,7 @@
"expand_navigation": "Expand navigation", "expand_navigation": "Expand navigation",
"expression": "Expression:", "expression": "Expression:",
"February": "February", "February": "February",
"feedback_picto": "Feedback when a pictogram is placed", "feedback_picto": "Selection feedback",
"filter": "Filter", "filter": "Filter",
"finish_session": "Finish session", "finish_session": "Finish session",
"finished": "Finished", "finished": "Finished",
...@@ -125,6 +126,7 @@ ...@@ -125,6 +126,7 @@
"June": "June", "June": "June",
"language": "Language", "language": "Language",
"large": "Large", "large": "Large",
"large_picto": "Large pictograms",
"last_session": "Last session", "last_session": "Last session",
"legend": "Legend", "legend": "Legend",
"legend_size": "Legend size", "legend_size": "Legend size",
...@@ -217,6 +219,7 @@ ...@@ -217,6 +219,7 @@
"press": "Long press", "press": "Long press",
"previous_actions": "Previous actions", "previous_actions": "Previous actions",
"previous_sessions": "Previous sessions", "previous_sessions": "Previous sessions",
"profile_picture": "Profile picture",
"read_picto": "Read picto", "read_picto": "Read picto",
"register": "Sign in", "register": "Sign in",
"remember": "Remember me", "remember": "Remember me",
...@@ -248,6 +251,7 @@ ...@@ -248,6 +251,7 @@
"show": "Show", "show": "Show",
"size": "Size", "size": "Size",
"small": "Small", "small": "Small",
"small_picto": "Small pictograms",
"sound_setup": "Sound setup", "sound_setup": "Sound setup",
"spanish": "Spanish", "spanish": "Spanish",
"started": "Started", "started": "Started",
......
...@@ -56,6 +56,7 @@ ...@@ -56,6 +56,7 @@
"country": "País", "country": "País",
"create_account": "Crear cuenta", "create_account": "Crear cuenta",
"create_an_account": "Crear una cuenta", "create_an_account": "Crear una cuenta",
"credentials": "Credenciales",
"crop_image": "Recortar imagen", "crop_image": "Recortar imagen",
"data_no_saved": "Los datos no se han podido guardar", "data_no_saved": "Los datos no se han podido guardar",
"data_saved": "Datos guardados", "data_saved": "Datos guardados",
...@@ -97,7 +98,7 @@ ...@@ -97,7 +98,7 @@
"error_loading_pictos": "Error cargando información de los pictos", "error_loading_pictos": "Error cargando información de los pictos",
"error_general": "Se ha producido un error", "error_general": "Se ha producido un error",
"February": "Febrero", "February": "Febrero",
"feedback_picto": "Feedback al colocar un pictograma", "feedback_picto": "Efecto de selección",
"filter": "Filtrar", "filter": "Filtrar",
"finish_session": "Terminar sesión", "finish_session": "Terminar sesión",
"finished": "Completada", "finished": "Completada",
...@@ -125,6 +126,7 @@ ...@@ -125,6 +126,7 @@
"June": "Junio", "June": "Junio",
"language": "Idioma", "language": "Idioma",
"large": "Grande", "large": "Grande",
"large_picto": "Pictograms grandes",
"last_session": "Última sesión", "last_session": "Última sesión",
"legend": "Leyenda", "legend": "Leyenda",
"legend_size": "Tamaño de la leyenda", "legend_size": "Tamaño de la leyenda",
...@@ -217,6 +219,7 @@ ...@@ -217,6 +219,7 @@
"press": "Pulsación larga", "press": "Pulsación larga",
"previous_actions": "Acciones anteriores", "previous_actions": "Acciones anteriores",
"previous_sessions": "Sesiones anteriores", "previous_sessions": "Sesiones anteriores",
"profile_picture": "Foto del perfil",
"read_picto": "Leer picto", "read_picto": "Leer picto",
"register": "Regístrate", "register": "Regístrate",
"register_button": "Registrar", "register_button": "Registrar",
...@@ -249,6 +252,7 @@ ...@@ -249,6 +252,7 @@
"show": "Mostrar", "show": "Mostrar",
"size": "Tamaño", "size": "Tamaño",
"small": "Pequeño", "small": "Pequeño",
"small_picto": "Pictogramas pequeños",
"sound_setup": "Ajustes de sonido", "sound_setup": "Ajustes de sonido",
"spanish": "Español", "spanish": "Español",
"started": "Iniciada", "started": "Iniciada",
......
...@@ -17,6 +17,12 @@ dashboardControllers.controller('StudentSetupCtrl', function StudentSetupCtrl( ...@@ -17,6 +17,12 @@ dashboardControllers.controller('StudentSetupCtrl', function StudentSetupCtrl(
// For tab navigation (here too, if the user refresh the page...) // For tab navigation (here too, if the user refresh the page...)
$scope.nav.tab = 'setup'; $scope.nav.tab = 'setup';
// Set upload button to filestyle
$(":file").filestyle({
buttonText: "&nbsp;" + $translate.instant('change_picture'),
input: false
});
/** /**
* Updates the student picture * Updates the student picture
* @param {Angular file array} $files Image to be uploaded * @param {Angular file array} $files Image to be uploaded
......
...@@ -5,19 +5,25 @@ ...@@ -5,19 +5,25 @@
<div class="col-md-6"> <div class="col-md-6">
<div id="student_personal_edit"> <div id="student_personal_edit">
<form role="form" ng-submit="updateStudent()"> <form role="form" ng-submit="updateStudent()">
<!-- Cambiar imagen de perfil -->
<div class="form-group">
<h4><span class="glyphicon glyphicon-picture" aria-hidden="true"></span> {{ 'change_picture' | translate }}: </h4>
<!-- Input oculto para cargar la redimensión de la imagen (awesome-cropper) -->
<input type="file" ng-file-select="onFileSelect($files)" ng-model="picFile" accept="image/*">
</div>
<h3>{{ 'account' | translate }}</h3>
<div class="row">
<div class="col-md-6">
<legend translate>profile_picture</legend>
<!-- Preview --> <!-- Preview -->
<img class="thumbnail preview" ng-src="{{studentData.pic}}" /> <img class="thumbnail preview" ng-src="{{studentData.pic}}" />
<!-- Fin Cambiar imagen de perfil --> <!-- Fin Cambiar imagen de perfil -->
<div class="form-group">
<input type="file" class="filestyle">
</div>
</div>
<div class="col-md-6">
<fieldset> <fieldset>
<legend translate>account</legend> <legend translate>credentials</legend>
<div class="form-group"> <div class="form-group">
<input type="username" class="form-control" id="setup_username" placeholder="{{ 'username' | translate }}" required ng-model="formUser.username" readonly/> <input type="username" class="form-control" id="setup_username" placeholder="{{ 'username' | translate }}" required ng-model="formUser.username" readonly/>
</div> </div>
...@@ -28,7 +34,18 @@ ...@@ -28,7 +34,18 @@
<div class="form-group"> <div class="form-group">
<input type="password" class="form-control" id="setup_password2" placeholder="{{ 'password_confirm' | translate }}" ng-model="formUser.password_confirm"/> <input type="password" class="form-control" id="setup_password2" placeholder="{{ 'password_confirm' | translate }}" ng-model="formUser.password_confirm"/>
</div> </div>
</fieldset>
</div>
</div>
<fieldset>
<legend translate>personal_data</legend> <legend translate>personal_data</legend>
<div class="row">
<div class="col-md-6">
<div class="form-group"> <div class="form-group">
<input type="text" class="form-control" id="student_personal_edit_name" placeholder="{{ 'name' | translate }}" ng-model="formUser.name" required /> <input type="text" class="form-control" id="student_personal_edit_name" placeholder="{{ 'name' | translate }}" ng-model="formUser.name" required />
</div> </div>
...@@ -43,6 +60,11 @@ ...@@ -43,6 +60,11 @@
</span> </span>
</p> </p>
</div> </div>
</div>
<div class="col-md-6">
<fieldset>
<div class="form-group"> <div class="form-group">
<select class="form-control" name="student_gender" id="student_gender" ng-model="formUser.gender" required> <select class="form-control" name="student_gender" id="student_gender" ng-model="formUser.gender" required>
<option value=" ">&nsp;</option> <option value=" ">&nsp;</option>
...@@ -58,18 +80,9 @@ ...@@ -58,18 +80,9 @@
<option value="IE">Ireland</option> <option value="IE">Ireland</option>
</select> </select>
</div> </div>
</fieldset>
<fieldset ng-if="studentData.supervision != 1">
<legend translate>notes</legend>
<div class="form-group">
<textarea class="form-control" name="student_notes" id="student_notes" ng-model="formUser.notes" rows="5"></textarea>
</div>
</fieldset>
<fieldset>
<legend translate>language</legend>
<div class="form-group"> <div class="form-group">
<span translate>language</span>:
<select class="form-control" name="supervisor_language" id="supervisor_language" ng-model="formUser.lang"> <select class="form-control" name="supervisor_language" id="supervisor_language" ng-model="formUser.lang">
<option value="es-es">Español</option> <option value="es-es">Español</option>
<option value="en-gb">English</option> <option value="en-gb">English</option>
...@@ -77,102 +90,34 @@ ...@@ -77,102 +90,34 @@
</div> </div>
</fieldset> </fieldset>
<div class="form-group text-center">
<button type="submit" class="btn btn-primary" translate>save</button>
</div>
</form>
</div>
<!-- Fin de student_personal_edit -->
</div>
<!-- Parte derecha: Tutores y dispositivos -->
<div class="col-md-6">
<!-- Supervisores (terapeutas) del alumno -->
<div id="student_sups" ng-if="studentData.supervision != 1">
<h3 translate>supervisors</h3>
<!-- Buscador de supervisores -->
<p>
<form role="search" ng-submit="search_sup()">
<div class="input-group">
<input type="email" class="form-control" placeholder="{{ 'search_sup_email' | translate }}" name="email_sup" id="email_sup" ng-model="email_sup" required>
<div class="input-group-btn">
<button class="btn btn-default" type="submit">
<span class="glyphicon glyphicon-search"></span>
</button>
</div> </div>
</div> </div>
</form>
</p>
<!-- Alert and success messages for supervisor found --> <fieldset ng-if="studentData.supervision != 1">
<div ng-show="{{ 'showmessagesupfound' }}" class="alert alert-info"> <legend translate>notes</legend>
<!-- Imagen de perfil del tutor --> <div class="form-group">
<img ng-src="{{supToAdd.pic}}" class="profile" alt="" title="" /> {{ supToAdd.name }} {{ supToAdd.surname }} <textarea class="form-control" name="student_notes" id="student_notes" ng-model="formUser.notes" rows="5"></textarea>
<a class="btn btn-default btn-lg pull-right" role="button" ng-click="add_sup()" translate>add</a>
</div> </div>
<!-- Fin de buscador de supervisores --> </fieldset>
<!-- Supervisores asignados --> <div class="form-group text-center">
<ul class="list-group" id="user_sups"> <button type="submit" class="btn btn-primary" translate>save</button>
<li class="list-group-item" ng-repeat="sup in studentSupervisors">
<!-- Imagen de perfil del supervisor -->
<img ng-src="{{sup.pic}}" class="profile" alt="" title="" />
{{sup.name}} {{sup.surname}}
<a ng-click="delete_sup(sup.id)" class="delete_sup" title="{{ 'unlink' | translate}}">
<span class="color_red glyphicon glyphicon-remove-circle" aria-hidden="true"></span>
</a>
</li>
</ul>
<!-- Fin de Supervisores asignados -->
</div> </div>
<!-- Fin de id student-sups --> </form>
<!-- Tutores (Padres) -->
<div id="student_tutors" ng-if="studentData.supervision != 1">
<h3>{{ 'tutors' | translate }}</h3>
<!-- Buscador de tutores -->
<p>
<form role="search" ng-submit="search_tutor()">
<div class="input-group">
<input type="email" class="form-control" placeholder="{{ 'search_tutor_email' | translate }}" name="email_tutor" id="email_tutor" ng-model="email_tutor" required>
<div class="input-group-btn">
<button class="btn btn-default" type="submit">
<span class="glyphicon glyphicon-search"></span>
</button>
</div> </div>
<!-- Fin de student_personal_edit -->
</div> </div>
</form>
</p>
<!-- Alert and success messages for tutor found -->
<div ng-show="{{ 'showmessagetutorfound' }}" class="alert alert-info">
<!-- Imagen de perfil del tutor -->
<img ng-src="{{tutorToAdd.pic}}" class="profile" alt="" title="" />
{{ tutorToAdd.name }} {{ tutorToAdd.surname }}
<a class="btn btn-default btn-sm pull-right" role="button" ng-click="add_tutor()" translate>add</a>
</div>
<!-- Fin de buscador de tutores -->
<!-- Tutores asignados --> <!-- Configuración dispositivo -->
<ul class="list-group" id="user_tutors"> <div class="col-md-6">
<li class="list-group-item" ng-repeat="tutor in studentTutors">
<!-- Imagen de perfil del tutor -->
<img ng-src="{{tutor.pic}}" class="profile" alt="" title="" />
{{tutor.name}} {{tutor.surname}}
<a ng-click="delete_tutor(tutor.id)" class="delete_tutor" title="{{ 'unlink' | translate}}">
<span class="color_red glyphicon glyphicon-remove-circle" aria-hidden="true"></span>
</a>
</li>
</ul>
<!-- Fin de Tutores asignados -->
<!-- Info message -->
<div class="alert alert-info">{{ 'supervisor_note' | translate }}</div>
</div>
<!-- Fin de id student-tutors -->
<div id="device_setup"> <div id="device_setup">
<h3>{{ 'device_setup' | translate }}</h3> <h3>{{ 'device_setup' | translate }}</h3>
<div class="row">
<div class="col-md-6">
<form role="form" class="form"> <form role="form" class="form">
<fieldset> <fieldset>
<legend>{{ 'categories' | translate }}</legend> <legend>{{ 'categories' | translate }}</legend>
...@@ -185,9 +130,8 @@ ...@@ -185,9 +130,8 @@
</span> </span>
<label class="form-control" for="studentSetupUseCategories">{{ 'use_categories' | translate }}</label> <label class="form-control" for="studentSetupUseCategories">{{ 'use_categories' | translate }}</label>
</div> </div>
<legend>{{ 'picto_style' | translate }}</legend> <legend>{{ 'picto_size' | translate }}</legend>
<div class="form-group"> <div class="form-group">
<h4>{{ 'size' | translate }}</h4>
<div class="input-group"> <div class="input-group">
<span class="input-group-addon"> <span class="input-group-addon">
<input type="radio" <input type="radio"
...@@ -197,7 +141,7 @@ ...@@ -197,7 +141,7 @@
ng-change="update_attributes()"> ng-change="update_attributes()">
</span> </span>
<label class="form-control" for="studentSetupPictoSizeSmall"> <label class="form-control" for="studentSetupPictoSizeSmall">
{{ 'small' | translate }} {{ 'small_picto' | translate }}
</label> </label>
</div> </div>
<div class="input-group"> <div class="input-group">
...@@ -209,11 +153,15 @@ ...@@ -209,11 +153,15 @@
ng-change="update_attributes()"> ng-change="update_attributes()">
</span> </span>
<label class="form-control" for="studentSetupPictoSizeLarge"> <label class="form-control" for="studentSetupPictoSizeLarge">
{{ 'large' | translate }} {{ 'large_picto' | translate }}
</label> </label>
</div> </div>
</div> </div>
</fieldset> </fieldset>
</div>
<div class="col-md-6">
<fieldset> <fieldset>
<legend>{{ 'feedback_picto' | translate }}</legend> <legend>{{ 'feedback_picto' | translate }}</legend>
<div class="input-group"> <div class="input-group">
...@@ -383,6 +331,99 @@ ...@@ -383,6 +331,99 @@
--> -->
</form> </form>
</div> </div>
</div>
</div>
<!-- /configuración dispositivo -->
<!-- Parte derecha: Tutores y dispositivos -->
<!-- Supervisores (terapeutas) del alumno -->
<div id="student_sups" ng-if="studentData.supervision != 1">
<legend translate>supervisors</legend>
<!-- Buscador de supervisores -->
<p>
<form role="search" ng-submit="search_sup()">
<div class="input-group">
<input type="email" class="form-control" placeholder="{{ 'search_sup_email' | translate }}" name="email_sup" id="email_sup" ng-model="email_sup" required>
<div class="input-group-btn">
<button class="btn btn-default" type="submit">
<span class="glyphicon glyphicon-search"></span>
</button>
</div>
</div>
</form>
</p>
<!-- Alert and success messages for supervisor found -->
<div ng-show="{{ 'showmessagesupfound' }}" class="alert alert-info">
<!-- Imagen de perfil del tutor -->
<img ng-src="{{supToAdd.pic}}" class="profile" alt="" title="" /> {{ supToAdd.name }} {{ supToAdd.surname }}
<a class="btn btn-default btn-lg pull-right" role="button" ng-click="add_sup()" translate>add</a>
</div>
<!-- Fin de buscador de supervisores -->
<!-- Supervisores asignados -->
<ul class="list-group" id="user_sups">
<li class="list-group-item" ng-repeat="sup in studentSupervisors">
<!-- Imagen de perfil del supervisor -->
<img ng-src="{{sup.pic}}" class="profile" alt="" title="" />
{{sup.name}} {{sup.surname}}
<a ng-click="delete_sup(sup.id)" class="delete_sup" title="{{ 'unlink' | translate}}">
<span class="color_red glyphicon glyphicon-remove-circle" aria-hidden="true"></span>
</a>
</li>
</ul>
<!-- Fin de Supervisores asignados -->
</div>
<!-- Fin de id student-sups -->
<!-- Tutores (Padres) -->
<div id="student_tutors" ng-if="studentData.supervision != 1">
<legend translate>tutors</legend>
<!-- Buscador de tutores -->
<p>
<form role="search" ng-submit="search_tutor()">
<div class="input-group">
<input type="email" class="form-control" placeholder="{{ 'search_tutor_email' | translate }}" name="email_tutor" id="email_tutor" ng-model="email_tutor" required>
<div class="input-group-btn">
<button class="btn btn-default" type="submit">
<span class="glyphicon glyphicon-search"></span>
</button>
</div>
</div>
</form>
</p>
<!-- Alert and success messages for tutor found -->
<div ng-show="{{ 'showmessagetutorfound' }}" class="alert alert-info">
<!-- Imagen de perfil del tutor -->
<img ng-src="{{tutorToAdd.pic}}" class="profile" alt="" title="" />
{{ tutorToAdd.name }} {{ tutorToAdd.surname }}
<a class="btn btn-default btn-sm pull-right" role="button" ng-click="add_tutor()" translate>add</a>
</div>
<!-- Fin de buscador de tutores -->
<!-- Tutores asignados -->
<ul class="list-group" id="user_tutors">
<li class="list-group-item" ng-repeat="tutor in studentTutors">
<!-- Imagen de perfil del tutor -->
<img ng-src="{{tutor.pic}}" class="profile" alt="" title="" />
{{tutor.name}} {{tutor.surname}}
<a ng-click="delete_tutor(tutor.id)" class="delete_tutor" title="{{ 'unlink' | translate}}">
<span class="color_red glyphicon glyphicon-remove-circle" aria-hidden="true"></span>
</a>
</li>
</ul>
<!-- Fin de Tutores asignados -->
<!-- Info message -->
<div class="alert alert-info">{{ 'supervisor_note' | translate }}</div>
</div>
<!-- Fin de id student-tutors -->
</div> </div>
</div> </div>
<!-- Fin de row --> <!-- Fin de row -->
......
...@@ -25,7 +25,7 @@ module.exports = function (grunt) { ...@@ -25,7 +25,7 @@ module.exports = function (grunt) {
'assets/app/bower_components/angular-chart.js/dist/angular-chart.min.js', 'assets/app/bower_components/angular-chart.js/dist/angular-chart.min.js',
'assets/app/bower_components/ng-lodash/build/ng-lodash.js', 'assets/app/bower_components/ng-lodash/build/ng-lodash.js',
'assets/app/bower_components/ng-file-upload/angular-file-upload-shim.js', 'assets/app/bower_components/ng-file-upload/angular-file-upload-shim.js',
'assets/app/bower_components/bootstrap-filestyle/src/bootstrap-filestyle.min.js',
'assets/scripts/lib/sails.io.js' 'assets/scripts/lib/sails.io.js'
]; ];
var jsFiles = [ var jsFiles = [
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment