Sign-in: add presentation + update Symfony

master
Julien Rosset 5 years ago
parent abce19dfab
commit 21ef094a4d

@ -22,9 +22,9 @@
<excludeFolder url="file://$MODULE_DIR$/vendor/doctrine/orm" /> <excludeFolder url="file://$MODULE_DIR$/vendor/doctrine/orm" />
<excludeFolder url="file://$MODULE_DIR$/vendor/doctrine/persistence" /> <excludeFolder url="file://$MODULE_DIR$/vendor/doctrine/persistence" />
<excludeFolder url="file://$MODULE_DIR$/vendor/doctrine/reflection" /> <excludeFolder url="file://$MODULE_DIR$/vendor/doctrine/reflection" />
<excludeFolder url="file://$MODULE_DIR$/vendor/doctrine/sql-formatter" />
<excludeFolder url="file://$MODULE_DIR$/vendor/easycorp/easy-log-handler" /> <excludeFolder url="file://$MODULE_DIR$/vendor/easycorp/easy-log-handler" />
<excludeFolder url="file://$MODULE_DIR$/vendor/egulias/email-validator" /> <excludeFolder url="file://$MODULE_DIR$/vendor/egulias/email-validator" />
<excludeFolder url="file://$MODULE_DIR$/vendor/jdorn/sql-formatter" />
<excludeFolder url="file://$MODULE_DIR$/vendor/laminas/laminas-code" /> <excludeFolder url="file://$MODULE_DIR$/vendor/laminas/laminas-code" />
<excludeFolder url="file://$MODULE_DIR$/vendor/laminas/laminas-eventmanager" /> <excludeFolder url="file://$MODULE_DIR$/vendor/laminas/laminas-eventmanager" />
<excludeFolder url="file://$MODULE_DIR$/vendor/laminas/laminas-zendframework-bridge" /> <excludeFolder url="file://$MODULE_DIR$/vendor/laminas/laminas-zendframework-bridge" />
@ -52,6 +52,7 @@
<excludeFolder url="file://$MODULE_DIR$/vendor/symfony/debug-bundle" /> <excludeFolder url="file://$MODULE_DIR$/vendor/symfony/debug-bundle" />
<excludeFolder url="file://$MODULE_DIR$/vendor/symfony/debug-pack" /> <excludeFolder url="file://$MODULE_DIR$/vendor/symfony/debug-pack" />
<excludeFolder url="file://$MODULE_DIR$/vendor/symfony/dependency-injection" /> <excludeFolder url="file://$MODULE_DIR$/vendor/symfony/dependency-injection" />
<excludeFolder url="file://$MODULE_DIR$/vendor/symfony/deprecation-contracts" />
<excludeFolder url="file://$MODULE_DIR$/vendor/symfony/doctrine-bridge" /> <excludeFolder url="file://$MODULE_DIR$/vendor/symfony/doctrine-bridge" />
<excludeFolder url="file://$MODULE_DIR$/vendor/symfony/dom-crawler" /> <excludeFolder url="file://$MODULE_DIR$/vendor/symfony/dom-crawler" />
<excludeFolder url="file://$MODULE_DIR$/vendor/symfony/dotenv" /> <excludeFolder url="file://$MODULE_DIR$/vendor/symfony/dotenv" />
@ -77,7 +78,6 @@
<excludeFolder url="file://$MODULE_DIR$/vendor/symfony/monolog-bundle" /> <excludeFolder url="file://$MODULE_DIR$/vendor/symfony/monolog-bundle" />
<excludeFolder url="file://$MODULE_DIR$/vendor/symfony/notifier" /> <excludeFolder url="file://$MODULE_DIR$/vendor/symfony/notifier" />
<excludeFolder url="file://$MODULE_DIR$/vendor/symfony/options-resolver" /> <excludeFolder url="file://$MODULE_DIR$/vendor/symfony/options-resolver" />
<excludeFolder url="file://$MODULE_DIR$/vendor/symfony/orm-pack" />
<excludeFolder url="file://$MODULE_DIR$/vendor/symfony/phpunit-bridge" /> <excludeFolder url="file://$MODULE_DIR$/vendor/symfony/phpunit-bridge" />
<excludeFolder url="file://$MODULE_DIR$/vendor/symfony/polyfill-intl-grapheme" /> <excludeFolder url="file://$MODULE_DIR$/vendor/symfony/polyfill-intl-grapheme" />
<excludeFolder url="file://$MODULE_DIR$/vendor/symfony/polyfill-intl-icu" /> <excludeFolder url="file://$MODULE_DIR$/vendor/symfony/polyfill-intl-icu" />
@ -85,6 +85,7 @@
<excludeFolder url="file://$MODULE_DIR$/vendor/symfony/polyfill-intl-normalizer" /> <excludeFolder url="file://$MODULE_DIR$/vendor/symfony/polyfill-intl-normalizer" />
<excludeFolder url="file://$MODULE_DIR$/vendor/symfony/polyfill-mbstring" /> <excludeFolder url="file://$MODULE_DIR$/vendor/symfony/polyfill-mbstring" />
<excludeFolder url="file://$MODULE_DIR$/vendor/symfony/polyfill-php73" /> <excludeFolder url="file://$MODULE_DIR$/vendor/symfony/polyfill-php73" />
<excludeFolder url="file://$MODULE_DIR$/vendor/symfony/polyfill-php80" />
<excludeFolder url="file://$MODULE_DIR$/vendor/symfony/process" /> <excludeFolder url="file://$MODULE_DIR$/vendor/symfony/process" />
<excludeFolder url="file://$MODULE_DIR$/vendor/symfony/profiler-pack" /> <excludeFolder url="file://$MODULE_DIR$/vendor/symfony/profiler-pack" />
<excludeFolder url="file://$MODULE_DIR$/vendor/symfony/property-access" /> <excludeFolder url="file://$MODULE_DIR$/vendor/symfony/property-access" />

@ -4,7 +4,6 @@
<include_path> <include_path>
<path value="$PROJECT_DIR$/vendor/symfony/http-foundation" /> <path value="$PROJECT_DIR$/vendor/symfony/http-foundation" />
<path value="$PROJECT_DIR$/vendor/symfony/security-http" /> <path value="$PROJECT_DIR$/vendor/symfony/security-http" />
<path value="$PROJECT_DIR$/vendor/symfony/orm-pack" />
<path value="$PROJECT_DIR$/vendor/symfony/event-dispatcher" /> <path value="$PROJECT_DIR$/vendor/symfony/event-dispatcher" />
<path value="$PROJECT_DIR$/vendor/composer" /> <path value="$PROJECT_DIR$/vendor/composer" />
<path value="$PROJECT_DIR$/vendor/symfony/dotenv" /> <path value="$PROJECT_DIR$/vendor/symfony/dotenv" />
@ -49,7 +48,6 @@
<path value="$PROJECT_DIR$/vendor/symfony/string" /> <path value="$PROJECT_DIR$/vendor/symfony/string" />
<path value="$PROJECT_DIR$/vendor/symfony/security-core" /> <path value="$PROJECT_DIR$/vendor/symfony/security-core" />
<path value="$PROJECT_DIR$/vendor/symfony/framework-bundle" /> <path value="$PROJECT_DIR$/vendor/symfony/framework-bundle" />
<path value="$PROJECT_DIR$/vendor/jdorn/sql-formatter" />
<path value="$PROJECT_DIR$/vendor/symfony/polyfill-php73" /> <path value="$PROJECT_DIR$/vendor/symfony/polyfill-php73" />
<path value="$PROJECT_DIR$/vendor/symfony/flex" /> <path value="$PROJECT_DIR$/vendor/symfony/flex" />
<path value="$PROJECT_DIR$/vendor/symfony/finder" /> <path value="$PROJECT_DIR$/vendor/symfony/finder" />
@ -113,6 +111,9 @@
<path value="$PROJECT_DIR$/vendor/symfony/security-csrf" /> <path value="$PROJECT_DIR$/vendor/symfony/security-csrf" />
<path value="$PROJECT_DIR$/vendor/symfony/apache-pack" /> <path value="$PROJECT_DIR$/vendor/symfony/apache-pack" />
<path value="$PROJECT_DIR$/vendor/symfony/webpack-encore-bundle" /> <path value="$PROJECT_DIR$/vendor/symfony/webpack-encore-bundle" />
<path value="$PROJECT_DIR$/vendor/symfony/polyfill-php80" />
<path value="$PROJECT_DIR$/vendor/symfony/deprecation-contracts" />
<path value="$PROJECT_DIR$/vendor/doctrine/sql-formatter" />
</include_path> </include_path>
</component> </component>
<component name="PhpProjectSharedConfiguration" php_language_level="7.4" /> <component name="PhpProjectSharedConfiguration" php_language_level="7.4" />

@ -1,5 +1,17 @@
body {
text-align: center;
}
#sign-in { #sign-in {
display: inline-block; display: inline-block;
border: 1px solid rgba(0, 0, 0, .25); border: 1px solid rgba(0, 0, 0, .25);
padding: 5px; padding: 10px;
}
#presentation {
margin-top: 3rem;
div {
text-align: justify;
}
} }

@ -7,32 +7,34 @@
"ext-iconv": "*", "ext-iconv": "*",
"ext-intl": "^7.4", "ext-intl": "^7.4",
"ext-sodium": "^7.4", "ext-sodium": "^7.4",
"doctrine/doctrine-bundle": "*",
"doctrine/doctrine-migrations-bundle": "2.*.*",
"doctrine/orm": "*",
"sensio/framework-extra-bundle": "^5.5", "sensio/framework-extra-bundle": "^5.5",
"symfony/apache-pack": "^1.0", "symfony/apache-pack": "^1.0",
"symfony/asset": "5.0.*", "symfony/asset": "5.*.*",
"symfony/console": "5.0.*", "symfony/console": "5.*.*",
"symfony/dotenv": "5.0.*", "symfony/dotenv": "5.*.*",
"symfony/expression-language": "5.0.*", "symfony/expression-language": "5.*.*",
"symfony/flex": "^1.3.1", "symfony/flex": "^1.3.1",
"symfony/form": "5.0.*", "symfony/form": "5.*.*",
"symfony/framework-bundle": "5.0.*", "symfony/framework-bundle": "5.*.*",
"symfony/http-client": "5.0.*", "symfony/http-client": "5.*.*",
"symfony/intl": "5.0.*", "symfony/intl": "5.*.*",
"symfony/mailer": "5.0.*", "symfony/mailer": "5.*.*",
"symfony/monolog-bundle": "^3.1", "symfony/monolog-bundle": "^3.1",
"symfony/notifier": "5.0.*", "symfony/notifier": "5.*.*",
"symfony/orm-pack": "*", "symfony/process": "5.*.*",
"symfony/process": "5.0.*",
"symfony/profiler-pack": "^1.0", "symfony/profiler-pack": "^1.0",
"symfony/security-bundle": "5.0.*", "symfony/security-bundle": "5.*.*",
"symfony/serializer-pack": "*", "symfony/serializer-pack": "*",
"symfony/string": "5.0.*", "symfony/string": "5.*.*",
"symfony/translation": "5.0.*", "symfony/translation": "5.*.*",
"symfony/twig-pack": "^1.0", "symfony/twig-pack": "^1.0",
"symfony/validator": "5.0.*", "symfony/validator": "5.*.*",
"symfony/web-link": "5.0.*", "symfony/web-link": "5.*.*",
"symfony/webpack-encore-bundle": "^1.7", "symfony/webpack-encore-bundle": "^1.7",
"symfony/yaml": "5.0.*" "symfony/yaml": "5.*.*"
}, },
"require-dev": { "require-dev": {
"symfony/debug-pack": "*", "symfony/debug-pack": "*",
@ -82,7 +84,7 @@
"extra": { "extra": {
"symfony": { "symfony": {
"allow-contrib": true, "allow-contrib": true,
"require": "5.0.*" "require": "5.*.*"
} }
} }
} }

1561
composer.lock generated

File diff suppressed because it is too large Load Diff

@ -75,12 +75,12 @@
"doctrine/reflection": { "doctrine/reflection": {
"version": "v1.1.0" "version": "v1.1.0"
}, },
"doctrine/sql-formatter": {
"version": "1.1.0"
},
"egulias/email-validator": { "egulias/email-validator": {
"version": "2.1.15" "version": "2.1.15"
}, },
"jdorn/sql-formatter": {
"version": "v1.2.17"
},
"laminas/laminas-code": { "laminas/laminas-code": {
"version": "3.4.1" "version": "3.4.1"
}, },
@ -202,6 +202,9 @@
"symfony/dependency-injection": { "symfony/dependency-injection": {
"version": "v5.0.3" "version": "v5.0.3"
}, },
"symfony/deprecation-contracts": {
"version": "v2.1.2"
},
"symfony/doctrine-bridge": { "symfony/doctrine-bridge": {
"version": "v5.0.3" "version": "v5.0.3"
}, },
@ -338,9 +341,6 @@
"symfony/options-resolver": { "symfony/options-resolver": {
"version": "v5.0.3" "version": "v5.0.3"
}, },
"symfony/orm-pack": {
"version": "v1.0.7"
},
"symfony/phpunit-bridge": { "symfony/phpunit-bridge": {
"version": "4.3", "version": "4.3",
"recipe": { "recipe": {
@ -375,6 +375,9 @@
"symfony/polyfill-php73": { "symfony/polyfill-php73": {
"version": "v1.13.1" "version": "v1.13.1"
}, },
"symfony/polyfill-php80": {
"version": "v1.17.1"
},
"symfony/process": { "symfony/process": {
"version": "v5.0.3" "version": "v5.0.3"
}, },

@ -22,12 +22,12 @@
<div class="dropdown"> <div class="dropdown">
<button type="button" id="menu_username" class="dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">{{ app.user.username }}</button> <button type="button" id="menu_username" class="dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">{{ app.user.username }}</button>
<div class="dropdown-menu" aria-labelledby="menu_username"> <div class="dropdown-menu" aria-labelledby="menu_username">
<a href="{{ path('app_security_sign_out') }}" class="dropdown-item">{% trans from 'security' %}sign.out{% endtrans %}</a> <a href="{{ path('app_security_sign_out') }}" class="dropdown-item">{{ 'sign.out'|trans({}, 'security') }}</a>
</div> </div>
</div> </div>
{% else %} {% else %}
{# <li><a href="{{ path('app_security_sign_up') }}">{% trans from 'security' %}sign.up{% endtrans %}</a></li>#} {# <li><a href="{{ path('app_security_sign_up') }}">{% trans from 'security' %}sign.up{% endtrans %}</a></li>#}
<a href="{{ path('app_security_sign_in') }}">{% trans from 'security' %}sign.in{% endtrans %}</a> <a href="{{ path('app_security_sign_in') }}">{{ 'sign.in'|trans({}, 'security') }}</a>
{% endif %} {% endif %}
</nav> </nav>
</header> </header>

@ -1,7 +1,7 @@
{% trans_default_domain 'security' %} {% trans_default_domain 'security' %}
{% extends 'base.html.twig' %} {% extends 'base.html.twig' %}
{% block title %}{% trans %}sign.in{% endtrans %}{% endblock %} {% block title %}{{ 'sign.in'|trans }}{% endblock %}
{% block stylesheets %} {% block stylesheets %}
{{ parent() }} {{ parent() }}
@ -9,34 +9,41 @@
{% endblock %} {% endblock %}
{% block body %} {% block body %}
<h1>{% trans %}sign.in{% endtrans %}</h1>
<section id="sign-in"> <section id="sign-in">
<h1>{{ 'sign.in'|trans }}</h1>
<form method="POST" class="form-validation" novalidate> <form method="POST" class="form-validation" novalidate>
<input type="hidden" name="_csrf_token" value="{{ csrf_token('authenticate') }}"> <input type="hidden" name="_csrf_token" value="{{ csrf_token('authenticate') }}">
<div class="form-group"> <div class="form-group">
<label for="email" class="sr-only">{% trans %}user.email{% endtrans %}</label> <label for="email" class="sr-only">{{ 'user.email'|trans }}</label>
<input type="email" value="{{ username }}" name="email" id="email" class="form-control" placeholder="{% trans %}user.email{% endtrans %}" required autofocus> <input type="email" value="{{ username }}" name="email" id="email" class="form-control" placeholder="{{ 'user.email'|trans }}" required autofocus>
<div class="invalid-feedback">{% trans %}user.invalid.email{% endtrans %}</div> <div class="invalid-feedback">{{ 'user.invalid.email'|trans }}</div>
</div> </div>
<div class="form-group"> <div class="form-group">
<label for="password" class="sr-only">{% trans %}user.password{% endtrans %}</label> <label for="password" class="sr-only">{{ 'user.password'|trans }}</label>
<input type="password" name="password" id="password" class="form-control" placeholder="{% trans %}user.password{% endtrans %}" required> <input type="password" name="password" id="password" class="form-control" placeholder="{{ 'user.password'|trans }}" required>
<div class="invalid-feedback">{% trans %}user.invalid.password{% endtrans %}</div> <div class="invalid-feedback">{{ 'user.invalid.password'|trans }}</div>
</div> </div>
<div class="form-group"> <div class="form-group">
<input type="checkbox" name="_remember_me" id="remember_me"> <input type="checkbox" name="_remember_me" id="remember_me">
<label for="remember_me">{% trans %}sign.remember_me{% endtrans %}</label> <label for="remember_me">{{ 'sign.remember_me'|trans }}</label>
</div> </div>
<div class="form-group"> <div class="form-group">
<button class="btn btn-lg btn-primary" type="submit">{% trans %}sign.in{% endtrans %}</button> <button class="btn btn-lg btn-primary" type="submit">{{ 'sign.in'|trans }}</button>
<a class="btn btn-lg btn-secondary" href="#">{{ 'sign.up'|trans }}</a>
</div> </div>
</form> </form>
</section> </section>
<section id="presentation">
<h1>{{ 'presentation.title'|trans({}, 'messages') }}</h1>
<div>
{{ 'presentation.text'|trans({}, 'messages')|raw }}
</div>
</section>
{% endblock %} {% endblock %}
{% block javascripts %} {% block javascripts %}

@ -28,5 +28,34 @@
<target>Welcome on Giftopic</target> <target>Welcome on Giftopic</target>
</segment> </segment>
</unit> </unit>
<group id="presentation">
<unit id="title">
<segment>
<source>presentation.title</source>
<target>Giftopic : what is it ?</target>
</segment>
</unit>
<!-- <unit id="text">-->
<!-- <segment>-->
<!-- <source>presentation.text</source>-->
<!-- &lt;!&ndash;language=HTML&ndash;&gt;-->
<!-- <target><![CDATA[-->
<!--<p>-->
<!-- Giftopic c'est un site web qui aide à organiser l'achat de cadeaux.-->
<!-- Il dispose de nombreuses fonctionnalités qui vous simplifierons la vie :-->
<!--</p>-->
<!--<ul>-->
<!-- <li>Liste de cadeaux en saisie libre, sans &quot;catalogue&quot; ou liste d'article imposée</li>-->
<!-- <li>Possibilité d'ajouter des cadeaux non prévus dans la liste du destinataire</li>-->
<!-- <li>Contact facile avec l'entourage du destinataire d'un cadeau</li>-->
<!-- <li>Échange de messages avec les autres personnes autour d'un cadeau donné</li>-->
<!-- <li>Appel et suivi de financements à plusieurs d'un cadeau</li>-->
<!-- <li>Etc.</li>-->
<!--</ul>-->
<!--]]></target>-->
<!-- </segment>-->
<!-- </unit>-->
</group>
</file> </file>
</xliff> </xliff>

@ -28,5 +28,34 @@
<target>Bienvenue sur Giftopic</target> <target>Bienvenue sur Giftopic</target>
</segment> </segment>
</unit> </unit>
<group id="presentation">
<unit id="title">
<segment>
<source>presentation.title</source>
<target>Giftopic : qu'est-ce que c'est ?</target>
</segment>
</unit>
<unit id="text">
<segment>
<source>presentation.text</source>
<!--language=HTML-->
<target><![CDATA[
<p>
Giftopic c'est un site web qui aide à organiser l'achat de cadeaux.
Il dispose de nombreuses fonctionnalités qui vous simplifierons la vie :
</p>
<ul>
<li>Liste de cadeaux en saisie libre, sans &quot;catalogue&quot; ou liste d'article imposée</li>
<li>Possibilité d'ajouter des cadeaux non prévus dans la liste du destinataire</li>
<li>Contact facile avec l'entourage du destinataire d'un cadeau</li>
<li>Échange de messages avec les autres personnes autour d'un cadeau donné</li>
<li>Appel et suivi de financements à plusieurs d'un cadeau</li>
<li>Etc.</li>
</ul>
]]></target>
</segment>
</unit>
</group>
</file> </file>
</xliff> </xliff>
Loading…
Cancel
Save