Commit b7c30f05 authored by Arnaud Bey's avatar Arnaud Bey
Browse files

WIP bootstrap 4

parent e97bc020
......@@ -4,9 +4,9 @@
{% block fos_user_content %}
<div class="row">
<div class="col-md-12">
<div class="col">
<div class="alert alert-success">{{ 'registration.confirmed'|trans({'%username%': user.username}) }}</div>
<a href="{{ path('home') }}" class="btn btn-primary">{{ 'go' | trans }}</a>
<a href="{{ path('home') }}" class="btn btn-sm btn-primary">{{ 'go' | trans }}</a>
</div>
</div>
{% endblock fos_user_content %}
......
<div class="panel panel-default">
<div class="panel-heading">
<h4>Inscription</h4>
</div>
<div class="panel-body">
<div class="card">
<div class="card-header">Inscription</div>
<div class="card-body">
{% if getGeneralParameters().selfRegistration %}
<form action="{{ path('fos_user_registration_register') }}" method="post" class="form-horizontal fos_user_registration_register" autocomplete="off">
<div class="tab-pane fade active in" id="step1">
<div class="form-group">
<span class="form-error">{{ form_errors(form.email) }}</span>
<label class="col-md-5 control-label required" for="fos_user_registration_form_email">
{{ 'user.email' | trans({}, 'messages') }}
</label>
<div class="col-md-4">
<input value="{{ form.vars.value.email }}" class="form-control" id="fos_user_registration_form_email" type="email" required="required" name="fos_user_registration_form[email]">
</div>
<div class="col-md-offset-3">
</div>
<div class="form-group">
<span class="form-error">{{ form_errors(form.email) }}</span>
<label class="col-md-5 control-label required" for="fos_user_registration_form_email">
{{ 'user.email' | trans({}, 'messages') }}
</label>
<div class="col-md-4">
<input value="{{ form.vars.value.email }}" class="form-control" id="fos_user_registration_form_email" type="email" required="required" name="fos_user_registration_form[email]">
</div>
<div class="col-md-offset-3">
</div>
</div>
<div class="form-group">
<span class="form-error">{{ form_errors(form.username) }}</span>
<label class="col-md-5 control-label required" for="fos_user_registration_form_username">
{{ 'registration.username' | trans({}, 'messages') }}
</label>
<div class="col-md-4">
<input value="{{ form.vars.value.username }}" class="form-control" id="fos_user_registration_form_username" type="text" maxlength="255" required="required" name="fos_user_registration_form[username]">
</div>
<div class="col-md-offset-3">
</div>
<div class="form-group">
<span class="form-error">{{ form_errors(form.username) }}</span>
<label class="col-md-5 control-label required" for="fos_user_registration_form_username">
{{ 'registration.username' | trans({}, 'messages') }}
</label>
<div class="col-md-4">
<input value="{{ form.vars.value.username }}" class="form-control" id="fos_user_registration_form_username" type="text" maxlength="255" required="required" name="fos_user_registration_form[username]">
</div>
<div class="form-group">
<span class="form-error">{{ form_errors(form.plainPassword.first) }}</span>
<label class="col-md-5 control-label required" for="fos_user_registration_form_plainPassword_first">
{{ 'registration.password' | trans({}, 'messages') }}
</label>
<div class="col-md-4">
<input class="form-control" id="fos_user_registration_form_plainPassword_first" type="password" required="required" name="fos_user_registration_form[plainPassword][first]">
</div>
<div class="col-md-offset-3">
</div>
<div class="col-md-offset-3">
</div>
<div class="form-group">
<label class="col-md-5 control-label required" for="fos_user_registration_form_plainPassword_second">
{{ 'registration.password_confirmation' | trans({}, 'messages') }}
</label>
<div class="col-md-4">
<input class="form-control" id="fos_user_registration_form_plainPassword_second" type="password" required="required" name="fos_user_registration_form[plainPassword][second]">
</div>
<div class="col-md-offset-3">
</div>
</div>
<div class="form-group">
<span class="form-error">{{ form_errors(form.plainPassword.first) }}</span>
<label class="col-md-5 control-label required" for="fos_user_registration_form_plainPassword_first">
{{ 'registration.password' | trans({}, 'messages') }}
</label>
<div class="col-md-4">
<input class="form-control" id="fos_user_registration_form_plainPassword_first" type="password" required="required" name="fos_user_registration_form[plainPassword][first]">
</div>
<div class="col-md-offset-3">
</div>
</div>
<div class="form-group">
<label class="col-md-5 control-label required" for="fos_user_registration_form_plainPassword_second">
{{ 'registration.password_confirmation' | trans({}, 'messages') }}
</label>
<div class="col-md-4">
<input class="form-control" id="fos_user_registration_form_plainPassword_second" type="password" required="required" name="fos_user_registration_form[plainPassword][second]">
</div>
<div class="col-md-offset-3">
</div>
</div>
<div class="form-group">
<label class="col-md-8 control-label" for="fos_user_registration_solicitation">
{{ form_label(form.solicitation) }}
</label>
<div class="col-md-2">
{{ form_widget(form.solicitation) }}
</div>
<div class="col-md-offset-2">
</div>
<div class="form-group">
<label class="col-md-8 control-label" for="fos_user_registration_solicitation">
{{ form_label(form.solicitation) }}
</label>
<div class="col-md-2">
{{ form_widget(form.solicitation) }}
</div>
<div class="col-md-offset-2">
</div>
</div>
<div class="form-group">
<label class="col-md-8 control-label" for="fos_user_registration_data_use">
{{ form_label(form.dataUse) }}
</label>
<div class="col-md-2">
{{ form_widget(form.dataUse) }}
</div>
<div class="col-md-offset-2">
</div>
<div class="form-group">
<label class="col-md-8 control-label" for="fos_user_registration_data_use">
{{ form_label(form.dataUse) }}
</label>
<div class="col-md-2">
{{ form_widget(form.dataUse) }}
</div>
<div class="col-md-offset-2">
</div>
</div>
<div class="form-group">
{{ form_widget(form._token) }}
<div class="col-md-offset-4 col-md-8">
<input type="submit" id="_submit" name="_submit" value="{{ 'create_account' | trans({}, 'messages') }}" class="btn btn-primary"/>
</div>
<div class="form-group">
{{ form_widget(form._token) }}
<div class="col-md-offset-4 col-md-8">
<input type="submit" id="_submit" name="_submit" value="{{ 'create_account' | trans({}, 'messages') }}" class="btn btn-sm btn-primary"/>
</div>
</div>
</form>
......
......@@ -3,41 +3,35 @@
{% trans_default_domain 'FOSUserBundle' %}
{% block fos_user_content %}
<div class="panel panel-default">
<div class="panel-heading">
<h4>Connexion</h4>
</div>
<div class="panel-body">
<div class="card">
<div class="card-header">Connexion</div>
<div class="card-body">
<form action="{{ path('fos_user_security_check') }}" class="form-horizontal" method="post" autocomplete="off">
<fieldset>
<input type="hidden" name="_csrf_token" value="{{ csrf_token }}" />
{% if error %}
<div class="alert alert-warning">{{ error.messageKey|trans(error.messageData, 'security') }}</div>
{% endif %}
<div class="form-group">
<label for="username" class="col-lg-2 control-label">{{ 'security.login.username'|trans }}</label>
<div class="col-lg-10">
<input type="text" class="form-control" id="username" name="_username">
</div>
</div>
<div class="form-group">
<label for="password" class="col-lg-2 control-label">{{ 'security.login.password'|trans }}</label>
<div class="col-lg-10">
<input type="password" class="form-control" id="password" name="_password">
</div>
</div>
<div class="form-group">
<label class="col-lg-2 control-label" for="remember_me">Keep me logged in</label>
<input style="margin-left:10px" type="checkbox" id="remember_me" name="_remember_me" />
</div>
<div class="form-group">
<div class="col-lg-offset-2 col-lg-10">
<input type="submit" id="_submit" name="_submit" value="{{ 'security.login.submit'|trans }}" class="btn btn-primary"/>
<a class="btn btn-default" href="{{ path('fos_user_resetting_request') }}">Mot de passe oublié ?</a>
<input type="submit" id="_submit" name="_submit" value="{{ 'security.login.submit'|trans }}" class="btn btn-sm btn-primary"/>
<a class="btn btn-sm btn-secondary" href="{{ path('fos_user_resetting_request') }}">Mot de passe oublié ?</a>
</div>
</div>
</fieldset>
......
......@@ -98,10 +98,11 @@
{% endblock %}
<div id="users-device-size">
<div id="xs" class="visible-xs"></div>
<div id="sm" class="visible-sm"></div>
<div id="md" class="visible-md"></div>
<div id="lg" class="visible-lg"></div>
<div id="xs" class="d-block d-sm-none"></div>
<div id="sm" class="d-none d-sm-block d-md-none"></div>
<div id="md" class="d-none d-md-block d-lg-none"></div>
<div id="lg" class="d-none d-lg-block d-xl-none"></div>
<div id="xl" class=".d-none d-xl-block"></div>
</div>
<script type="text/javascript" src="{{ asset('js/translations.js')}}"></script>
......
......@@ -37,7 +37,7 @@ class ComboPoints
private $points;
/**
* @ORM\ManyToOne(targetEntity="LexiconBundle\Entity\Language", inversedBy="wordLengths")
* @ORM\ManyToOne(targetEntity="LexiconBundle\Entity\Language", inversedBy="comboPoints")
* @ORM\JoinColumn(nullable=false)
*/
private $language;
......
......@@ -21,7 +21,7 @@ class ChallengeReplyType extends AbstractType
));
$builder->add('save', SubmitType::class, array(
'attr' => array('class' => 'btn btn-outline-seconary please-wait', 'data-message' => 'Génération de la grille.'),
'attr' => array('class' => 'btn btn-secondary btn-sm mt-2 please-wait', 'data-message' => 'Génération de la grille.'),
'label' => 'accept_challenge',
'translation_domain' => 'messages',
));
......
......@@ -43,7 +43,7 @@ class ChallengeType extends AbstractType
$builder->add('language', EntityType::class, array(
'class' => 'LexiconBundle:Language',
'choice_label' => 'name',
'choice_label' => 'value',
'attr' => array('class' => 'form-control'),
'label' => 'language',
'translation_domain' => 'messages',
......@@ -51,7 +51,7 @@ class ChallengeType extends AbstractType
));
$builder->add('save', SubmitType::class, array(
'attr' => array('class' => 'btn btn-outline-seconary'),
'attr' => array('class' => 'btn btn-secondary btn-sm mt-2'),
'label' => 'challenge!',
'translation_domain' => 'messages',
));
......
......@@ -21,7 +21,7 @@ class ComboPointsType extends AbstractType
));
$builder->add('save', SubmitType::class, array(
'attr' => array('class' => 'btn btn-outline-seconary'),
'attr' => array('class' => 'btn btn-secondary btn-sm mt-2'),
'label' => 'save',
'translation_domain' => 'messages',
));
......
......@@ -49,7 +49,7 @@ class GeneralParametersType extends AbstractType
$builder->add('save', SubmitType::class, array(
'attr' => array('class' => 'btn btn-outline-seconary'),
'attr' => array('class' => 'btn btn-secondary btn-sm mt-2'),
'label' => 'save',
'translation_domain' => 'messages',
));
......
......@@ -21,7 +21,7 @@ class LetterLanguagePointsType extends AbstractType
));
$builder->add('save', SubmitType::class, array(
'attr' => array('class' => 'btn btn-outline-seconary'),
'attr' => array('class' => 'btn btn-secondary btn-sm mt-2'),
'label' => 'save',
'translation_domain' => 'messages',
));
......
......@@ -44,7 +44,7 @@ class MassiveType extends AbstractType
));
$builder->add('save', SubmitType::class, array(
'attr' => array('class' => 'btn btn-outline-seconary btn-primary'),
'attr' => array('class' => 'btn btn-secondary btn-sm mt-2'),
'label' => 'save',
'translation_domain' => 'messages',
));
......
......@@ -52,7 +52,7 @@ class PlayerType extends AbstractType
));
$builder->add('save', SubmitType::class, array(
'attr' => array('class' => 'btn btn-outline-seconary'),
'attr' => array('class' => 'btn btn-secondary btn-sm mt-2'),
'label' => 'save',
'translation_domain' => 'messages',
));
......
......@@ -32,7 +32,7 @@ class ProfileType extends AbstractType
));
$builder->add('save', SubmitType::class, array(
'attr' => array('class' => 'btn btn-outline-seconary'),
'attr' => array('class' => 'btn btn-secondary btn-sm mt-2'),
'label' => 'save',
'translation_domain' => 'messages',
));
......
......@@ -21,7 +21,7 @@ class WordLengthType extends AbstractType
));
$builder->add('save', SubmitType::class, array(
'attr' => array('class' => 'btn btn-outline-seconary'),
'attr' => array('class' => 'btn btn-secondary btn-sm mt-2'),
'label' => 'save',
'translation_domain' => 'messages',
));
......
@font-face {
font-family: 'bellotaregular';
src: url('../fonts/bellota_regular_macroman/Bellota-Regular-webfont.eot');
src: url('../fonts/bellota_regular_macroman/Bellota-Regular-webfont.eot?#iefix') format('embedded-opentype'),
url('../fonts/bellota_regular_macroman/Bellota-Regular-webfont.woff') format('woff'),
url('../fonts/bellota_regular_macroman/Bellota-Regular-webfont.ttf') format('truetype'),
url('../fonts/bellota_regular_macroman/Bellota-Regular-webfont.svg#bellotaregular') format('svg');
font-weight: normal;
font-style: normal;
font-family: 'bellotaregular';
src: url('../fonts/bellota_regular_macroman/Bellota-Regular-webfont.eot');
src: url('../fonts/bellota_regular_macroman/Bellota-Regular-webfont.eot?#iefix') format('embedded-opentype'),
url('../fonts/bellota_regular_macroman/Bellota-Regular-webfont.woff') format('woff'),
url('../fonts/bellota_regular_macroman/Bellota-Regular-webfont.ttf') format('truetype'),
url('../fonts/bellota_regular_macroman/Bellota-Regular-webfont.svg#bellotaregular') format('svg');
font-weight: normal;
font-style: normal;
}
@font-face {
font-family: 'bloggersans';
src: url('../fonts/bloggersans/BloggerSans.eot'); /* IE9 Compat Modes */
src: url('../fonts/bloggersans/BloggerSans.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
url('../fonts/bloggersans/BloggerSans.woff') format('woff'), /* Modern Browsers */
url('../fonts/bloggersans/BloggerSans.ttf') format('truetype'), /* Safari, Android, iOS */
url('../fonts/bloggersans/BloggerSans.svg#BloggerSans-Medium') format('svg'); /* Legacy iOS */
font-style: normal;
font-weight: bold;
}
.panel-heading{
font-family: 'bloggersans', Arial, sans-serif;
text-transform: uppercase;
}
.container{
padding-top: 15px;
}
body{
/*
-webkit-background-size: 40px 40px;
-moz-background-size: 40px 40px;
background-size: 40px 40px;
background-color: #4E98E6;
background-image: -webkit-gradient(linear, 0 0, 100% 100%,
color-stop(.25, rgba(255, 255, 255, .015)), color-stop(.25, transparent),
color-stop(.5, transparent), color-stop(.5, rgba(255, 255, 255, .015)),
color-stop(.75, rgba(255, 255, 255, .015)), color-stop(.75, transparent),
to(transparent));
background-image: -webkit-linear-gradient(-45deg, rgba(255, 255, 255, .015) 25%, transparent 25%,
transparent 50%, rgba(255, 255, 255, .015) 50%, rgba(255, 255, 255, .015) 75%,
transparent 75%, transparent);
background-image: -moz-linear-gradient(-45deg, rgba(255, 255, 255, .015) 25%, transparent 25%,
transparent 50%, rgba(255, 255, 255, .015) 50%, rgba(255, 255, 255, .015) 75%,
transparent 75%, transparent);
background-image: -ms-linear-gradient(-45deg, rgba(255, 255, 255, .015) 25%, transparent 25%,
transparent 50%, rgba(255, 255, 255, .015) 50%, rgba(255, 255, 255, .015) 75%,
transparent 75%, transparent);
background-image: -o-linear-gradient(-45deg, rgba(255, 255, 255, .015) 25%, transparent 25%,
transparent 50%, rgba(255, 255, 255, .015) 50%, rgba(255, 255, 255, .015) 75%,
transparent 75%, transparent);
background-image: linear-gradient(-45deg, rgba(255, 255, 255, .015) 25%, transparent 25%,
transparent 50%, rgba(255, 255, 255, .015) 50%, rgba(255, 255, 255, .015) 75%,
transparent 75%, transparent);
*/
background-color:#A7CB19;
font-family: 'bloggersans';
src: url('../fonts/bloggersans/BloggerSans.eot');
/* IE9 Compat Modes */
src: url('../fonts/bloggersans/BloggerSans.eot?#iefix') format('embedded-opentype'),
/* IE6-IE8 */
url('../fonts/bloggersans/BloggerSans.woff') format('woff'),
/* Modern Browsers */
url('../fonts/bloggersans/BloggerSans.ttf') format('truetype'),
/* Safari, Android, iOS */
url('../fonts/bloggersans/BloggerSans.svg#BloggerSans-Medium') format('svg');
/* Legacy iOS */
font-style: normal;
font-weight: bold;
}
.panel-heading {
font-family: 'bloggersans', Arial, sans-serif;
text-transform: uppercase;
}
.container {
padding-top: 15px;
}
body {
background-color: #A7CB19;
}
.nav-tabs a,
.nav-tabs a:focus,
.nav-tabs a:hover {
outline: 0;
}
div#header-logo {
//background-color: #005497;
background-color:#A7CB19;
background-image: url(../img/logo.png);
background-repeat: no-repeat;
background-size: contain;
background-position: 25% 50%;
width: 100%;
height: 90px;
//border-bottom: 2px solid white;
//background-color: #005497;
background-color: #A7CB19;
background-image: url(../img/logo.png);
background-repeat: no-repeat;
background-size: contain;
background-position: 25% 50%;
width: 100%;
height: 90px;
//border-bottom: 2px solid white;
}
.header-buttons {
position:absolute;
top:15px;
right:5px;
position: absolute;
top: 15px;
right: 5px;
}
.noselect {
-webkit-touch-callout: none; /* iOS Safari */
-webkit-user-select: none; /* Chrome/Safari/Opera */
-khtml-user-select: none; /* Konqueror */
-moz-user-select: none; /* Firefox */
-ms-user-select: none; /* Internet Explorer/Edge */
user-select: none; /* Non-prefixed version, currently not supported by any browser */
-webkit-touch-callout: none;
/* iOS Safari */
-webkit-user-select: none;
/* Chrome/Safari/Opera */
-khtml-user-select: none;
/* Konqueror */
-moz-user-select: none;
/* Firefox */
-ms-user-select: none;
/* Internet Explorer/Edge */
user-select: none;
/* Non-prefixed version, currently not supported by any browser */
}
#please-wait .modal-body{
text-align: center;
background-color:white;
color:black;
text-transform: uppercase;
#please-wait .modal-body {
text-align: center;
background-color: white;
color: black;
text-transform: uppercase;
}
#info-modal .modal-body{
text-align: center;
background-color:white;
color:black;
text-transform: uppercase;
#info-modal .modal-body {
text-align: center;
background-color: white;
color: black;
text-transform: uppercase;
}
.vertical-alignment-helper {
display:table;
height: 100%;
width: 100%;
pointer-events:none; /* This makes sure that we can still click outside of the modal to close it */
display: table;
height: 100%;
width: 100%;
pointer-events: none;
/* This makes sure that we can still click outside of the modal to close it */
}
.vertical-align-center {
/* To center vertically */
display: table-cell;
vertical-align: middle;
pointer-events:none;
/* To center vertically */
display: table-cell;
vertical-align: middle;
pointer-events: none;
}
.modal-content {
/* Bootstrap sets the size of the modal in the modal-dialog class, we need to inherit it */
width:inherit;
height:inherit;
/* To center horizontally */
margin: 0 auto;
pointer-events: all;
/* Bootstrap sets the size of the modal in the modal-dialog class, we need to inherit it */
width: inherit;
height: inherit;
/* To center horizontally */
margin: 0 auto;
pointer-events: all;
}
#footer {
background-color: #222222;
color: #999;
margin-top: 60px;
height: 28px;
position: fixed;
width: 100%;
bottom: 0;
line-height: 28px;
text-align:right;
padding-right:40px;
background-color: #222222;
color: #999;
margin-top: 60px;
height: 28px;
position: fixed;
width: 100%;
bottom: 0;
line-height: 28px;
text-align: right;
padding-right: 40px;
}
.embed-container {
position: relative;
padding-bottom: 56.25%;
height: 0;
overflow: hidden;
max-width: 100%;