Indications supplémentaires pour aider à remplir une adresse correspondant à une carte openstreetmap

This commit is contained in:
echarp 2014-09-21 14:32:59 +02:00
parent d240cf25b1
commit f1e33458fb
11 changed files with 56 additions and 19 deletions

View File

@ -1,6 +1,6 @@
$(document).ready ->
$('.maps #map').each ->
map = L.map('map').setView [46.5, 4], 6
map = L.map 'map'
L.tileLayer('http://{s}.tile.osm.org/{z}/{x}/{y}.png',
attribution: '&copy; <a href="http://osm.org/copyright">OpenStreetMap</a>'
@ -14,6 +14,7 @@ $(document).ready ->
layer.bindPopup feature.properties.popupContent
).addTo map
# Automatic focus to all displayed events
map.fitBounds layer.getBounds()
$('.events #map, .moderations #map').each ->

View File

@ -17,8 +17,8 @@ class Event < ActiveRecord::Base
validates :submitter, email: true
geocoded_by :full_address, lookup: :nominatim
# after_validation :geocode, if: -> (obj) { obj.address_changed? }
after_validation :geocode
after_validation :geocode, if: -> (obj) { obj.address_changed? }
# after_validation :geocode
scope :moderated, -> { where moderated: true }
scope :unmoderated, -> { where moderated: false }

View File

@ -29,6 +29,9 @@
= f.text_area :description, rows: 25, cols: 90
.field
.helper
:markdown
#{t '.address_helper'}
= f.label :address
= f.text_field :address, size: 70
.field

View File

@ -8,9 +8,13 @@
=t '.warning'
%fieldset
%legend=t '.preview'
%legend
%em.fa.fa-eye
=t '.preview'
= render file: '/events/show'
%fieldset
%legend=t '.edit'
%legend
%em.fa.fa-pencil
=t '.edit'
= render '/events/form'

View File

@ -4,7 +4,9 @@
- if @event.description
%fieldset
%legend=t '.preview'
%legend
%em.fa.fa-eye
=t '.preview'
= render file: '/events/show'
- else
@ -16,5 +18,7 @@
#{t '.advises'}
%fieldset
%legend=t '.edit'
%legend
%em.fa.fa-pencil
=t '.edit'
= render 'form'

View File

@ -44,6 +44,13 @@
- if @event.latitude && @event.longitude
#map(latitude="#{@event.latitude}" longitude="#{@event.longitude}")
- elsif controller.action_name != 'show'
%em.fa.fa-compress
%em
=raw t '.noMap'
%a(href="http://osm.org/search?query=#{@event.full_address}")
%img(src='http://www.openstreetmap.org/assets/osm_logo.png' alt='OSM logo' width='22px')
%h3=t '.description'
.description
- markdown = Redcarpet::Markdown.new(Redcarpet::Render::HTML, autolink: true, tables: true)

View File

@ -1,3 +1,3 @@
#flash_messages
- flash.each do |key, value|
.flash(class="#{key}")= value
.flash(class="#{key}")= raw value

View File

@ -6,9 +6,13 @@
%h3.warning=t '.warning'
%fieldset
%legend=t '.preview'
%legend
%em.fa.fa-eye
=t '.preview'
= render file: '/events/show'
%fieldset
%legend=t '.edit'
%legend
%em.fa.fa-pencil
=t '.edit'
= render '/events/form'

View File

@ -36,6 +36,7 @@ en:
add_to_calendar: Add to my calendar
at: At
dateAndPlace: Date and place
noMap: No OpenStreetMap map could be associated to this address. You can test other syntaxes here
description: Description
infos: Informations
actions: Actions
@ -48,6 +49,14 @@ en:
infos: Informations
new:
title: Propose an event
subtitle: This page lets you submit an event in the Agenda du Libre. It will not appear automatically in the Agenda, it will first be validated by a moderator. An electronic mail will be sent to the submitter's email when the event will be moderated.
advises: "# Important recommandations
\n
\n* The event must relate to **Free Software**. The agenda is not intended for other kinds of events.
\n* Do **redact** the description, with complete sentences, rather than a telegraphic style.
\n
\nThe moderation team may modify the event's description, to complete it, make it more readable or agreable.
"
preview: Previsualisation
edit: Edition
create:
@ -66,6 +75,13 @@ en:
update:
ok: Your event was updated
form:
title_helper: Describe in less than 5 words your event, without the address, city or date
description_helper: Describe with as much precision as possible your event
address_helper: _Associated to the city and region, it will generate an [OpenStreetMap](http://www.openstreetmap.org) map, displayed alongside the event_
url_helper: _**Direct** link to a page with more information on the event (detailed location, precise time, program...)_
contact_helper: _Contact's email address, obfuscated so that spammers won't understand it_
submitter_helper: _Submitter's email address. It will only be used by the moderators to contact the person who proposed the event, to inform her about her acceptation or rejection. If this address is absent, the contact's will be used_
tags_helper: _Tags for the event. Tags are separated by spaces. A tag can only contain lower case letters, numbers and hyphens. Among the tags, indicate the organising association's or associations' names. Do not indicate the city or region._
save: Validate
visualise: Visualise
cancel:

View File

@ -36,6 +36,7 @@ fr:
add_to_calendar: Ajouter à mon calendrier
at: À
dateAndPlace: Date et lieu
noMap: Aucune carte OpenStreetMap n'a pu être associée à cette adresse. Vous pouvez tester d'autres syntaxes ici
description: Description
infos: Informations
actions: Actions
@ -48,6 +49,7 @@ fr:
infos: Informations
new:
title: Soumettre un événement
subtitle: 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 sera envoyé à l'adresse e-mail du soumetteur donnée ci-dessous lorsque l'événement aura été modéré.
preview: Prévisualisation
edit: Édition
create:
@ -67,6 +69,7 @@ fr:
update:
ok: Votre événement a été mis à jour
form:
address_helper: "*Associée à la ville et la région, elle générerera une carte [OpenStreetMap](http://www.openstreetmap.org), sera affichée aux côtés de l'événement*"
save: Valider
visualise: Visualiser
cancel:

View File

@ -38,7 +38,7 @@ Ces quelques recommandations vous permettront de proposer un événement qui ser
* 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.
* **É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.
* 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.
@ -53,12 +53,7 @@ Si vous soumettez souvent un événement régulier dans l'Agenda du Libre, vous
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/>`.*
" },
value: '**Décrivez de la manière la plus complète possible votre événement.**' },
{ 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...)_" },
@ -67,7 +62,7 @@ Si vous soumettez souvent un événement régulier dans l'Agenda du Libre, vous
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*" },
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 l'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.*