csrf.html.twig 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. {% extends "SymfonyWebConfiguratorBundle::layout.html.twig" %}
  2. {% block title %}Symfony - Configure CSRF{% endblock %}
  3. {% block content %}
  4. {% form_theme form "SymfonyWebConfiguratorBundle::form.html.twig" %}
  5. {% include "SymfonyWebConfiguratorBundle::steps.html.twig" with { "index": index, "count": count } %}
  6. <h1>CSRF Protection</h1>
  7. <p>Configure CSRF protection for your website :</p>
  8. {{ form_errors(form) }}
  9. <form action="{{ path('_configurator_step', { 'index': index }) }} " method="POST">
  10. <div class="symfony-form-row">
  11. {{ form_label(form.csrf_secret) }}
  12. <div class="symfony-form-field">
  13. {{ form_widget(form.csrf_secret) }}
  14. <a class="symfony-button-grey" href="#" onclick="generateCsrf(); return false;">Generate</a>
  15. <div class="symfony-form-errors">
  16. {{ form_errors(form.csrf_secret) }}
  17. </div>
  18. </div>
  19. </div>
  20. {{ form_rest(form) }}
  21. <div class="symfony-form-footer">
  22. <p><input type="submit" value="Next Step" class="symfony-button-grey" /></p>
  23. <p>* mandatory fields</p>
  24. </div>
  25. </form>
  26. <script type="text/javascript">
  27. function generateCsrf()
  28. {
  29. var result = '';
  30. for (i=0; i < 32; i++) {
  31. result += Math.round(Math.random()*16).toString(16);
  32. }
  33. document.getElementById('csrfstep_csrf_secret').value = result;
  34. }
  35. </script>
  36. {% endblock %}