Merge branch 'filter'

This commit is contained in:
echarp 2016-10-28 11:33:39 +02:00
commit 2d79606e07
11 changed files with 173 additions and 74 deletions

View File

@ -97,9 +97,8 @@ body.events.index table
color: black
font-weight: bolder
.formats
.links
float: right
font-size: smaller
margin-right: 5%
padding-right: 2px
@ -108,7 +107,7 @@ a#banner
margin-left: 5%
padding-left: 2px
body.events.show, body.orgas.show, body.tags.show
body.events.show, body.orgas.show, body.tags.show, body.filter
main
padding: 1em
max-width: 60em

View File

@ -1,18 +1,19 @@
@import font-awesome-sprockets
@import font-awesome
.events form, .moderations form, .orgas, .digests form
.events form, .moderations form, .orgas, .digests form, .filter form
.field, .actions
max-width: 70em
text-align: left
margin-left: auto
margin-right: auto
.helper p
.helper
color: gray
margin: 0
font-style: italic
margin-left: 8em
padding-left: 0.4em
p
margin: 0
margin-left: 8em
padding-left: 0.4em
label
width: 8em
display: inline-block
@ -89,6 +90,19 @@
.field.feed label:before, th.feed:before
content: $fa-var-rss
.field.future label:before
content: $fa-var-backward
.field.period_year label:before
content: $fa-var-fast-backward
.field.period_week label:before
content: $fa-var-step-backward
.field.near_location label:before
content: $fa-var-dot-circle-o
.field.near_distance label:before
content: $fa-var-arrows-h
.field.iframe label:before
content: $fa-var-arrows-alt
.field .radios label
width: auto !important
margin-right: 1em

View File

@ -14,7 +14,7 @@
form#orga_search
right: 0
.formats, a#banner
.links, a#banner
margin: 0.6em auto
table, table.list, table.dates, table.list.dates
@ -107,7 +107,7 @@
aside
display: none
.formats, a#banner
.links, a#banner
float: none
padding: 0.4em 0

View File

@ -0,0 +1,86 @@
%h2
%em.fa.fa-filter
= title t('.title')
:markdown
#{t '.helper'}
= form_tag events_url, method: :get do
.field.future
= label_tag :future, t('.past')
= check_box_tag :future, :false
%span.helper= t '.past_helper'
.field.period_year
.helper
:markdown
#{t '.period_year_helper'}
= label_tag 'period[year]', t('.period_year')
= number_field_tag 'period[year]', (Time.zone.today + 7.days).year
.field.period_week
= label_tag 'period[week]', t('.period_week')
= number_field_tag 'period[week]', (Time.zone.today + 7.days).cweek
.field.near_location
= label_tag 'near[location]', t('.near_location')
= text_field_tag 'near[location]', params['near[location]'],
placeholder: t('.near_location_helper')
.field.near_distance
= label_tag 'near[distance]', t('.near_distance')
= number_field_tag 'near[distance]', params['near[distance]'],
placeholder: t('.near_distance_helper')
km
.field.region
= label_tag :region, t('.region')
= select_tag :region,
options_from_collection_for_select(Region.all, :id, :name),
include_blank: true
.field.tags
= label_tag :tag, t('.tag')
= text_field_tag :tag
.field.iframe
= label_tag :iframe, t('.iframe')
= check_box_tag :iframe, :false
%span.helper= t '.iframe_helper'
.actions
= button_tag do
%em.fa.fa-calendar
= t '.events'
= button_tag formaction: maps_url do
%em.fa.fa-map-marker
= t '.map'
= button_tag formaction: maps_url(format: :json) do
%em.fa.fa-map-pin
= t '.geojson'
= button_tag formaction: events_url(format: :json) do
%em.fa {}
= t '.json'
= button_tag formaction: events_url(format: :rss) do
%em.fa.fa-rss
= t '.rss'
= button_tag formaction: events_url(format: :ics) do
%em.fa.fa-calendar-check-o
= t '.ics'
= button_tag formaction: events_url(format: :xml) do
%em.fa.fa-code
= t '.xml'
= button_tag formaction: orgas_url do
%em.fa.fa-users
= t '.orgas'
= button_tag formaction: digest_url(:markdown) do
%em.fa.fa-hashtag
= t '.digest'

View File

@ -1,5 +1,4 @@
= render '/orgas/search'
= render '/regions/selector'
- if params[:year]
-# Whole year calendar
@ -40,8 +39,7 @@
.day_number= date.day
%ul.events.fa-ul= render events
.formats
%em.fa.fa-rss
.links
= raw t '.calendar_in',
rss: link_to('RSS', events_path(:rss,
tag: params[:tag], region: params[:region])),
@ -50,6 +48,12 @@
ical: link_to('iCal', events_path(:rss,
tag: params[:tag], format: :ics, region: params[:region]))
\-
= link_to application_filter_path do
%em.fa.fa-filter
= t '.filter'
%a#banner(href='http://april.org/campagne')
= image_tag 'priorite-logiciel-libre-je-soutiens-april_2_m.png',
width: '374', height: '48',

View File

@ -50,9 +50,6 @@
%em.fa.fa-users
= t '.propose_orga'
%br/
= link_to regions_path do
%em.fa.fa-rss
= t '.feeds'
= link_to maps_path do
%em.fa.fa-map-marker
= t '.map'

View File

@ -1,5 +1,4 @@
= render 'search'
= render '/regions/selector'
%h2
%em.fa.fa-users

View File

@ -1,41 +0,0 @@
%nav.region_selector
-# Display the currently selected region
%h3
- if params[:region] && params[:region] != 'all'
%em.locality.fa.fa-shield
= Region.find params[:region]
%em.fa.fa-chevron-down
- elsif params[:locality]
%span.placeholder
%em.locality.fa.fa-globe
= t '.national'
%em.fa.fa-chevron-down
- else
%span.placeholder
%em.locality.fa.fa-globe
= t '.all_regions'
%em.fa.fa-chevron-down
-# Choose a region to filter events with
%ul
%li
= link_to t('.all_regions'), region: nil,
start_date: params[:start_date],
year: params[:year],
tag: params[:tag]
- Region.pluck(:id, :name).each do |id, name|
%li
= link_to name, region: id,
start_date: params[:start_date],
year: params[:year],
tag: params[:tag]
- unless controller.class == OrgasController
%li
= link_to locality: 1,
start_date: params[:start_date],
year: params[:year],
tag: params[:tag] do
%em.fa.fa-globe
= t '.national'

View File

@ -23,7 +23,6 @@ en:
suisse: Suisse
propose: Propose an event
propose_orga: Propose an organisation
feeds: Feeds
map: Map
tags: Tags
infos: Infos
@ -34,8 +33,9 @@ en:
title: Hello,
events:
index:
calendar_in: This calendar in %{rss}, %{webcal} or %{ical}
calendar_in: This calendar in <em class='fa fa-rss'></em> %{rss}, %{webcal} or %{ical}
nb_events: "%{count} events"
filter: Advanced filter
show:
orga-list: Region's orgas
add_to_calendar: Add to my calendar
@ -418,3 +418,16 @@ reason:
update_html: <em class='fa fa-exchange'></em>
destroy_html: <em class='fa fa-trash'></em>
feed: RSS feed
application:
filter:
title: Advanced filtering
helper: Parameters can be used in the agenda, for consultation or integration in another website
past: Past
period_year: Year
period_week: Week
near_location: Near
near_distance: Distance
region: Region
tag: Tag
iframe: Borderless

View File

@ -23,7 +23,6 @@ fr:
suisse: Suisse
propose: Proposer un événement
propose_orga: Proposer une organisation
feeds: Flux
map: Carte
tags: Mots-clés
infos: Infos
@ -34,16 +33,17 @@ fr:
title: Bonjour,
events:
index:
calendar_in: Ce calendrier en %{rss}, %{webcal} ou %{ical}
calendar_in: Ce calendrier en <em class='fa fa-rss'></em> %{rss}, %{webcal} ou %{ical}
nb_events: "%{count} événements"
filter: Filtrage avancé
show:
orga-list: Orgas de la région
add_to_calendar: Ajouter à mon calendrier
copy: Dupliquer événement
at: À
dateAndPlace: Date et lieu
noMap: Aucune carte OpenStreetMap n'a pu être associée à cette adresse.
Vous pouvez tester d'autres syntaxes ici
noMap: Aucune carte n'a pu être associée à cette adresse. Vous pouvez
tester d'autres syntaxes ici
description: Description
infos: Informations
actions: Actions
@ -85,8 +85,8 @@ fr:
description_helper: Décrivez de la manière la plus complète possible
votre événement
address_helper: "*Associée à la ville et la région, elle générera une
carte [OpenStreetMap](http://www.openstreetmap.org), affichée aux côtés
de l'événement*"
[carte](http://www.openstreetmap.org), affichée aux côtés de
l'événement*"
url_helper: Lien **direct** vers une page donnant plus d'informations sur
l'événement
contact_helper: Adresse e-mail de contact, affichée de manière peu
@ -115,13 +115,13 @@ fr:
national: Événements nationaux
index:
title: Liste des flux
quick: Chaque flux liste les évènements pour les 30 prochains jours dans
quick: Chaque flux liste les événements pour les 30 prochains jours dans
une région donnée
help: "Quelques fonctionnalités intéressantes à l'aide de paramètres:\n
\n
* `tag`: limiter les évènements à un certain tag. Cela permet par
exemple de récupérer un flux des évènements d'une organisation, à
partir du moment où vous pensez à marquer tous vos évènements avec un
* `tag`: limiter les événements à un certain tag. Cela permet par
exemple de récupérer un flux des événements d'une organisation, à
partir du moment où vous pensez à marquer tous vos événements avec un
tag précis. \n
Exemple: `%{tag}`\n
* `daylimit`: limiter les énévenements futurs à un certain nombre de
@ -149,7 +149,7 @@ fr:
tags:
index:
title: Mots-clés
limited: Seuls les mots-clés portants sur plus de trois évènements sont
limited: Seuls les mots-clés portants sur plus de trois événements sont
affichés dans cette liste
show:
links: Voir aussi
@ -272,8 +272,8 @@ description plus complète."
ok: L'organisation a été mise à jour
form:
address_helper: "*Associée à la ville et la région, elle générera une
carte [OpenStreetMap](http://www.openstreetmap.org), affichée aux côtés
de l'organisation*"
[carte](http://www.openstreetmap.org), affichée aux côtés de
l'organisation*"
url_helper: Lien vers le site web de l'organisation
feed_helper: Lien **direct** vers un flux de syndication, type RSS ou atom
contact_helper: Adresse e-mail de contact, affichée de manière peu
@ -303,7 +303,7 @@ description plus complète."
digests:
markdown:
title: Agenda du Libre pour la semaine %{week} de l'année %{year}
week: Calendrier web, regroupant des évènements liés au Libre (logiciel, salon, atelier, install party, conférence) en France, annoncés par leurs organisateurs. Voici un récapitulatif de la semaine à venir. Le détail de chacun de ces %{count} événements est en seconde partie de dépêche.
week: Calendrier web, regroupant des événements liés au Libre (logiciel, salon, atelier, install party, conférence) en France, annoncés par leurs organisateurs. Voici un récapitulatif de la semaine à venir. Le détail de chacun de ces %{count} événements est en seconde partie de dépêche.
devise:
sessions:
@ -422,3 +422,30 @@ l'adresse:"
update_html: <em class='fa fa-exchange'></em>
destroy_html: <em class='fa fa-trash'></em>
feed: Flux RSS
application:
filter:
title: Filtrage avancé
helper: Plusieurs paramètres sont prévus dans l'agenda, en consultation ou pour l'intégrer à un autre site
past: Passés
past_helper: Inclure aussi les événements passés dans les flux RSS, carte et geojson
period_year: Année
period_year_helper: Pour définir la semaine/année du résumé
period_week: Semaine
near_location: Près de
near_location_helper: ville ou lieu géographique
near_distance: Distance
near_distance_helper: du lieu
region: Région
tag: Mot-clé
iframe: Sans cadre
iframe_helper: Supprime l'en-tête et bas de page, pour intégration dans une iframe
events: Agenda
map: Carte
geojson: GeoJSON
json: JSON
rss: RSS
ics: iCal
xml: XML
digest: Résumé
orgas: Orgas

View File

@ -2,6 +2,7 @@ Rails.application.routes.draw do
get 'application/infos'
get 'application/contact'
get 'application/rules'
get 'application/filter'
get 'stats', to: 'stats#index'
get 'versions', to: 'versions#index'