Browse Source

Les aides à la saisie du formulaire de soumission sont stockées dans la base, et modifiables par active_admin

recurrent
echarp 8 years ago
parent
commit
9d7f579e61
  1. 1
      Gemfile
  2. 18
      Gemfile.lock
  3. 2
      app/assets/stylesheets/events.css.sass
  4. 2
      app/assets/stylesheets/sessions.css.sass
  5. 56
      app/views/events/_form.html.haml
  6. 52
      db/seeds.rb

1
Gemfile

@ -54,7 +54,6 @@ gem 'activeadmin', github: 'gregbell/active_admin'
gem 'polyamorous', github: 'activerecord-hackery/polyamorous'
gem "formtastic", github: "justinfrench/formtastic"
gem "ransack", github: "activerecord-hackery/ransack", branch: "rails-4.1"
gem "devise", github: "plataformatec/devise"
gem 'rails-i18n'
gem 'devise-i18n'

18
Gemfile.lock

@ -48,17 +48,6 @@ GIT
formtastic (2.3.0.rc2)
actionpack (>= 3.0)
GIT
remote: git://github.com/plataformatec/devise.git
revision: b786c384d54a6365bdc6c0cf6068dc5325a301a9
specs:
devise (3.2.4)
bcrypt (~> 3.0)
orm_adapter (~> 0.1)
railties (>= 3.2.6, < 5)
thread_safe (~> 0.1)
warden (~> 1.2.3)
GIT
remote: git://github.com/svenfuchs/i18n-active_record.git
revision: 55507cf59f8f2173d38e07e18df0e90d25b1f0f6
@ -125,6 +114,12 @@ GEM
compass-rails (1.1.7)
compass (>= 0.12.2)
sprockets (<= 2.11.0)
devise (3.2.4)
bcrypt (~> 3.0)
orm_adapter (~> 0.1)
railties (>= 3.2.6, < 5)
thread_safe (~> 0.1)
warden (~> 1.2.3)
devise-i18n (0.10.3)
em-websocket (0.5.0)
eventmachine (>= 0.12.9)
@ -285,7 +280,6 @@ DEPENDENCIES
activeadmin!
coffee-rails
compass-rails
devise!
devise-i18n
font-awesome-rails
formtastic!

2
app/assets/stylesheets/events.css.sass

@ -152,7 +152,7 @@ table.calendar
margin-bottom: 2px !important
*
vertical-align: middle
p.helper
.helper p
margin: 1px 5px 1px 6.6em
line-height: 0.9em
label

2
app/assets/stylesheets/sessions.css.sass

@ -9,7 +9,7 @@
margin: 0.5em
*
vertical-align: middle
p.helper
.helper p
margin: 1px 5px 1px 6.6em
line-height: 0.9em
label

56
app/views/events/_form.html.haml

@ -1,3 +1,5 @@
- markdown = Redcarpet::Markdown.new(Redcarpet::Render::HTML, autolink: true, tables: true)
= form_for @event do |f|
- if @event.errors.any?
#error_explanation
@ -7,33 +9,12 @@
%li= msg
- unless @event.id
:markdown
Cette page permet de soumettre un évènement dans l'Agenda du Libre. Celui-ci n'apparaîtra pas automatiquement dans l'Agenda, il sera tout d'abord validé par un modérateur. Un courrier électronique vous sera envoyé à l'adresse e-mail de contact donnée ci-dessous lorsque l'évènement aura été modéré.
#advises
%h1 Recommandations importantes
:markdown
Ces quelques recommandations vous permettront de proposer un évènement qui sera validé plus rapidement, et dont la lisibilité sera meilleure pour les utilisateurs de l'Agenda du Libre.
* L'évènement doit concerner le **Logiciel Libre**. L'agenda n'a pas vocation à publier d'autres types d'évènements.
* Le texte des évènements doit être rédigé en français, en **évitant les fautes de grammaire et d'orthographe**.
* Donnez une description **rédigée** de l'évènement, avec des phrases, plutôt qu'un style télégraphique.
* Commencez la description de votre évènement par une phrase reprenant les informations principales, telle que : _« L'association [Zorglub](http://www.asso-zorglub.org) organise une conférence sur le thème des **modèles économiques du Logiciel Libre** le samedi 21 mars de 18h à 20h à la médiathèque Champillion de Montpellier. »_
* Pensez que le lecteur peut ne pas connaître votre association, le logiciel dont il sera question, etc., donc donnez à chaque fois toutes les informations nécessaires. Rappelez **le principe de l'évènement, le public visé, le lieu exact, la date, l'heure**, même si il est régulier (repas, rencontre régulière, etc.) et que vous avez déjà soumis un évènement du même type dans l'Agenda.
* **Égayez au maximum la description** de votre évènement: lien vers le site de votre association, vers le logiciel ou le langage dont il sera question, vers les organismes partenaires, etc. Pour cela, utilisez les balises HTML pour mettre en gras, en italique, faire des paragraphes et des liens.
* Ne mettez pas l'intégralité des mots en majuscule, que ce soit dans le titre, le nom de la ville ou la description.
* Donnez l'**adresse directe** d'un site Web donnant plus d'informations sur l'évènement. Si l'adresse est la page d'accueil du site de votre organisation, veillez à ce que l'évènement soit clairement visible, et que le lecteur n'ait pas à chercher trop longtemps avant de trouver l'information qu'il cherche.
* La description de l'évènement ne doit pas ressembler à une publicité éhontée pour votre entreprise, projet ou logiciel. Le ton d'un communiqué de presse, par exemple, ne convient pas pour l'Agenda du Libre.
* Les évènements de type professionnel sont acceptés dès lors qu'ils sont accessibles et ouverts à tous. Les évènements payants sont acceptés si le prix de l'entrée ne réserve pas l'évènement à un public uniquement professionnel.
L'équipe de modération se réserve le droit de modifier la description de l'évènement pour la rendre plus complète, plus lisible ou plus attrayante.
= raw markdown.render t '.subtitle'
Si vous soumettez souvent un évènement régulier dans l'Agenda du Libre, vous pouvez automatiser cette procédure à l'aide d'un [script que nous vous proposons](http://agendadulibre.org/submit-script-doc.php).
#advises= raw markdown.render t '.advises'
.field
%p.helper
%strong Décrivez en moins de 5 mots votre évènement, sans y indiquer le lieu, la ville ou la date.
.helper= raw markdown.render t '.title_helper'
= f.label :title
= f.text_field :title, size: 70
.field
@ -43,16 +24,7 @@
= f.label Event.human_attribute_name :end_time
= f.datetime_select :end_time
.field
%p.helper
%strong Décrivez de la manière la plus complète possible votre évènement.
%p.helper
%em
:escaped
Les balises HTML autorisées sont <p>, <b>, <i>, <ul>, <ol>, <li>, <br/>, <a>. Merci d'utiliser ces balises pour formater la description de votre évènement.
%p.helper
%em
:escaped
Veillez à utiliser les balises <p> pour formater les paragraphes, et non la balise <br/>.
.helper= raw markdown.render t '.description_helper'
= f.label Event.human_attribute_name :description
= f.text_area :description, rows: 29, cols: 80
@ -68,27 +40,19 @@
= f.select :locality,
options_for_select([[t('attributes.locality_0'), 0], [t('attributes.locality_1'), 1]], @event.locality)
.field
%p.helper
%em
Lien
%strong direct
vers une page donnant plus d'informations sur l'évènement (lieu précis, horaire précis, programme précis...)
.helper= raw markdown.render t '.url_helper'
= f.label Event.human_attribute_name :url
= f.text_field :url, size: 70
.field
%p.helper
%em Adresse e-mail de contact. Elle sera affichée de manière peu compréhensible par les spammeurs.
.helper= raw markdown.render t '.contact_helper'
= f.label Event.human_attribute_name :contact
= f.text_field :contact, size: 70
.field
%p.helper
%em Adresse e-mail du soumetteur de l'évènement. Elle ne sera utilisée que par les modérateurs pour contacter la personne ayant proposé l'évènement, pour lui informer de sa validation ou de son rejet. Si cette adresse n'est pas présente, l'adresse de contact sera utilisée
.helper= raw markdown.render t '.submitter_helper'
= f.label :submitter
= f.text_field :submitter, size: 70
.field
%p.helper
%em Tags pour l'évènement. Les tags sont séparés par des espaces. Un tag ne peut contenir que des lettres minuscules, des chiffres et des tirets.
%p.helper Dans les tags, indiquez le nom de la ou des associations organisatrices. N'indiquez pas le nom de la ville ou de la région.
.helper= raw markdown.render t '.tags_helper'
= f.label :tags
= f.text_field :tags, size: 70

52
db/seeds.rb

@ -7,5 +7,55 @@
# Mayor.create(name: 'Emanuel', city: cities.first)
I18n::Backend::ActiveRecord::Translation.create([
{ locale: 'fr', key: 'layouts.application.subtitle', value: 'L\'agenda des évènements du Logiciel Libre en France' }
{ locale: 'fr', key: 'layouts.application.subtitle',
value: 'L\'agenda des évènements du Logiciel Libre en France' },
{ locale: 'fr', key: 'events.form.subtitle',
value: "Cette page permet de soumettre un évènement dans l'Agenda du Libre. Celui-ci n'apparaîtra pas automatiquement dans l'Agenda, il sera tout d'abord validé par un modérateur. Un courrier électronique vous sera envoyé à l'adresse e-mail de contact donnée ci-dessous lorsque l'évènement aura été modéré." },
{ locale: 'fr', key: 'events.form.advises',
value: "# Recommandations importantes
Ces quelques recommandations vous permettront de proposer un évènement qui sera validé plus rapidement, et dont la lisibilité sera meilleure pour les utilisateurs de l'Agenda du Libre.
* L'évènement doit concerner le **Logiciel Libre**. L'agenda n'a pas vocation à publier d'autres types d'évènements.
* Le texte des évènements doit être rédigé en français, en **évitant les fautes de grammaire et d'orthographe**.
* Donnez une description **rédigée** de l'évènement, avec des phrases, plutôt qu'un style télégraphique.
* Commencez la description de votre évènement par une phrase reprenant les informations principales, telle que: _«L'association [Zorglub](http://www.asso-zorglub.org) organise une conférence sur le thème des **modèles économiques du Logiciel Libre** le samedi 21 mars de 18h à 20h à la médiathèque Champillion de Montpellier.»_
* Pensez que le lecteur peut ne pas connaître votre association, le logiciel dont il sera question, etc., donc donnez à chaque fois toutes les informations nécessaires. Rappelez **le principe de l'évènement, le public visé, le lieu exact, la date, l'heure**, même si il est régulier (repas, rencontre régulière, etc.) et que vous avez déjà soumis un évènement du même type dans l'Agenda.
* **Égayez au maximum la description** de votre évènement: lien vers le site de votre association, vers le logiciel ou le langage dont il sera question, vers les organismes partenaires, etc. Pour cela, utilisez les balises HTML pour mettre en gras, en italique, faire des paragraphes et des liens.
* Ne mettez pas l'intégralité des mots en majuscule, que ce soit dans le titre, le nom de la ville ou la description.
* Donnez l'**adresse directe** d'un site Web donnant plus d'informations sur l'évènement. Si l'adresse est la page d'accueil du site de votre organisation, veillez à ce que l'évènement soit clairement visible, et que le lecteur n'ait pas à chercher trop longtemps avant de trouver l'information qu'il cherche.
* La description de l'évènement ne doit pas ressembler à une publicité éhontée pour votre entreprise, projet ou logiciel. Le ton d'un communiqué de presse, par exemple, ne convient pas pour l'Agenda du Libre.
* Les évènements de type professionnel sont acceptés dès lors qu'ils sont accessibles et ouverts à tous. Les évènements payants sont acceptés si le prix de l'entrée ne réserve pas l'évènement à un public uniquement professionnel.
L'équipe de modération se réserve le droit de modifier la description de l'évènement pour la rendre plus complète, plus lisible ou plus attrayante.
Si vous soumettez souvent un évènement régulier dans l'Agenda du Libre, vous pouvez automatiser cette procédure à l'aide d'un [script que nous vous proposons](http://agendadulibre.org/submit-script-doc.php).
" },
{ locale: 'fr', key: 'events.form.title_helper',
value: "**Décrivez en moins de 5 mots votre évènement, sans y indiquer le lieu, la ville ou la date.**" },
{ locale: 'fr', key: 'events.form.description_helper',
value: "**Décrivez de la manière la plus complète possible votre évènement.**
*Les balises HTML autorisées sont `<p>`, `<b>`, `<i>`, `<ul>`, `<ol>`, `<li>`, `<br/>`, `<a>`. Merci d'utiliser ces balises pour formater la description de votre évènement.*
*Veillez à utiliser les balises `<p>` pour formater les paragraphes, et non la balise `<br/>`.*
" },
{ locale: 'fr', key: 'events.form.url_helper',
value: "_Lien **direct** vers une page donnant plus d'informations sur l'événement (lieu précis, horaire précis, programme précis...)_" },
{ locale: 'fr', key: 'events.form.contact_helper',
value: "*Adresse e-mail de contact. Elle sera affichée de manière peu compréhensible par les spammeurs.*" },
{ locale: 'fr', key: 'events.form.submitter_helper',
value: "*Adresse e-mail du soumetteur de l'évènement. Elle ne sera utilisée que par les modérateurs pour contacter la personne ayant proposé l'évènement, pour lui informer de sa validation ou de son rejet. Si cette adresse n'est pas présente, l'adresse de contact sera utilisée*" },
{ locale: 'fr', key: 'events.form.tags_helper',
value: "*Tags pour l'évènement. Les tags sont séparés par des espaces. Un tag ne peut contenir que des lettres minuscules, des chiffres et des tirets.*
*Dans les tags, indiquez le nom de la ou des associations organisatrices. N'indiquez pas le nom de la ville ou de la région.*" }
])

Loading…
Cancel
Save