From c11ad4fbac758adaecc7d1866248263eb4c32faf Mon Sep 17 00:00:00 2001 From: Nicolas Bally Date: Sat, 2 Mar 2019 17:28:58 +0100 Subject: [PATCH] suite --- app/assets/stylesheets/public.scss | 235 ++++++++++++++---- app/controllers/admin/events_controller.rb | 108 ++++---- app/controllers/admin/partners_controller.rb | 54 ++++ app/helpers/events_helper.rb | 27 ++ app/models/dynamic_content.rb | 12 +- app/models/event.rb | 140 ++++++++--- app/models/partner.rb | 7 + app/views/admin/events/_event.html.haml | 13 + app/views/admin/events/_form.html.haml | 50 ++++ app/views/admin/events/_index_block.html.haml | 28 +++ app/views/admin/events/_show.html.haml | 6 + app/views/admin/events/cible.html.haml | 6 + app/views/admin/events/create.js.erb | 4 + app/views/admin/events/destroy.js.erb | 1 + app/views/admin/events/edit.html.haml | 81 ++++++ app/views/admin/events/edit.js.erb | 1 + app/views/admin/events/index.html.haml | 8 + app/views/admin/events/index.js.erb | 1 + app/views/admin/events/new.js.erb | 2 + app/views/admin/events/update.js.erb | 5 + app/views/admin/partners/_form.html.haml | 9 + app/views/admin/partners/edit.html.haml | 14 ++ app/views/admin/partners/index.html.haml | 28 +++ app/views/admin/partners/new.html.haml | 14 ++ app/views/layouts/admin.html.haml | 6 +- app/views/layouts/public.html.haml | 20 +- .../dynamic_contents/_contact.html.haml | 4 - .../dynamic_contents/_contact_leg.html.haml | 4 - .../_contact_militer.html.haml | 4 - .../dynamic_contents/_detenus.html.haml | 39 --- .../_historique_monde.html.haml | 0 .../dynamic_contents/_index_label.html.haml | 105 -------- .../_index_petitions.html.haml | 10 - .../_index_sponsorship.html.haml | 6 - .../dynamic_contents/_militer.html.haml | 71 ------ .../dynamic_contents/_newsletter.html.haml | 12 - .../dynamic_contents/_partners.html.haml | 4 + .../portlets/dynamic_contents/_plan.html.haml | 66 ----- .../portlets/dynamic_contents/_prog.html.haml | 4 + app/views/public/events/_event.html.haml | 5 + app/views/public/events/_events.html.haml | 7 + app/views/public/partners/_partners.html.haml | 11 + config/routes.rb | 3 +- db/migrate/20150309094403_create_events.rb | 18 ++ db/migrate/20190302142600_create_partners.rb | 15 ++ db/schema.rb | 29 ++- .../caviar_dreams/CaviarDreams-webfont.woff | Bin 0 -> 22136 bytes .../CaviarDreams_BoldItalic-webfont.woff | Bin 0 -> 25412 bytes .../CaviarDreams_Italic-webfont.woff | Bin 0 -> 25704 bytes .../Caviar_Dreams_Bold-webfont.woff | Bin 0 -> 22244 bytes public/fonts/caviar_dreams/stylesheet.css | 56 +++++ public/logo.png | Bin 0 -> 5197 bytes test/fixtures/partners.yml | 19 ++ test/models/partner_test.rb | 7 + 54 files changed, 887 insertions(+), 492 deletions(-) create mode 100644 app/controllers/admin/partners_controller.rb create mode 100644 app/helpers/events_helper.rb create mode 100644 app/models/partner.rb create mode 100644 app/views/admin/events/_event.html.haml create mode 100644 app/views/admin/events/_form.html.haml create mode 100644 app/views/admin/events/_index_block.html.haml create mode 100644 app/views/admin/events/_show.html.haml create mode 100644 app/views/admin/events/cible.html.haml create mode 100644 app/views/admin/events/create.js.erb create mode 100644 app/views/admin/events/destroy.js.erb create mode 100644 app/views/admin/events/edit.html.haml create mode 100644 app/views/admin/events/edit.js.erb create mode 100644 app/views/admin/events/index.html.haml create mode 100644 app/views/admin/events/index.js.erb create mode 100644 app/views/admin/events/new.js.erb create mode 100644 app/views/admin/events/update.js.erb create mode 100644 app/views/admin/partners/_form.html.haml create mode 100644 app/views/admin/partners/edit.html.haml create mode 100644 app/views/admin/partners/index.html.haml create mode 100644 app/views/admin/partners/new.html.haml delete mode 100644 app/views/portlets/dynamic_contents/_contact.html.haml delete mode 100644 app/views/portlets/dynamic_contents/_contact_leg.html.haml delete mode 100644 app/views/portlets/dynamic_contents/_contact_militer.html.haml delete mode 100644 app/views/portlets/dynamic_contents/_detenus.html.haml delete mode 100644 app/views/portlets/dynamic_contents/_historique_monde.html.haml delete mode 100644 app/views/portlets/dynamic_contents/_index_label.html.haml delete mode 100644 app/views/portlets/dynamic_contents/_index_petitions.html.haml delete mode 100644 app/views/portlets/dynamic_contents/_index_sponsorship.html.haml delete mode 100644 app/views/portlets/dynamic_contents/_militer.html.haml delete mode 100644 app/views/portlets/dynamic_contents/_newsletter.html.haml create mode 100644 app/views/portlets/dynamic_contents/_partners.html.haml delete mode 100644 app/views/portlets/dynamic_contents/_plan.html.haml create mode 100644 app/views/portlets/dynamic_contents/_prog.html.haml create mode 100644 app/views/public/events/_event.html.haml create mode 100644 app/views/public/events/_events.html.haml create mode 100644 app/views/public/partners/_partners.html.haml create mode 100644 db/migrate/20150309094403_create_events.rb create mode 100644 db/migrate/20190302142600_create_partners.rb create mode 100755 public/fonts/caviar_dreams/CaviarDreams-webfont.woff create mode 100755 public/fonts/caviar_dreams/CaviarDreams_BoldItalic-webfont.woff create mode 100755 public/fonts/caviar_dreams/CaviarDreams_Italic-webfont.woff create mode 100755 public/fonts/caviar_dreams/Caviar_Dreams_Bold-webfont.woff create mode 100755 public/fonts/caviar_dreams/stylesheet.css create mode 100644 public/logo.png create mode 100644 test/fixtures/partners.yml create mode 100644 test/models/partner_test.rb diff --git a/app/assets/stylesheets/public.scss b/app/assets/stylesheets/public.scss index 0fcecec..b231b83 100644 --- a/app/assets/stylesheets/public.scss +++ b/app/assets/stylesheets/public.scss @@ -4,8 +4,8 @@ $orange: #FF931E; $blue: #2BAADA; $dark_orange: #E94F25; -$title_font : "Lato", sans-serif; -$sans_serif_font:"Lato", Arial, sans-serif; +$title_font : "Oswald", sans-serif; +$sans_serif_font:"caviar_dreams", Arial, sans-serif; $serif_font : "Roboto Slab", serif; $cursive_font : 'Galada', cursive; @@ -28,9 +28,11 @@ $cursive_font : 'Galada', cursive; body{ padding:0; - font-family:lato; + font-family:$sans_serif_font; width:100%; margin:0; + background:#c5c6e4; + background:#deddec; } .slide_home_wrapper{ @@ -131,18 +133,23 @@ body{ text-decoration:none; cursor:pointer; } +h1,h2,h3,h4,h5{ + font-family:$title_font; + text-transform:uppercase; + font-weight:700; +} + h1{ background:no-repeat bottom center; text-align:center; - background-image:url('/bottom-lines.png'); + background-size: 225px; padding-top:20px; padding-bottom:10px; margin-bottom:30px; margin-top:0; - text-transform:uppercase; - font-weight:500; + } @@ -220,42 +227,6 @@ h1{ } } -#sub_footer{ - padding: 0 30px; - padding-right:20px; - a{ - text-decoration:none; - color:inherit; - } - i{ - width:17px; - display:inline-block; - } - p{ - padding:0; - margin:0; - } - - #place,#contacts{ - display:inline-block; - padding:25px 0; - font-size:14px; - color:rgba(0,0,0,0.6); - line-height:19px; - } - #place{ - padding-right:25px; - } - - #logos{ - padding:15px 0; - float:right; - img{ - height:90px; - margin:0 10px; - } - } -} #actus{ padding:20px 0; padding-bottom:50px; @@ -310,11 +281,11 @@ h2{ -#logo_fond{ +#logo{ position:absolute; - top:0; - left:0; - height:190px; + top:20px; + left:25px; + height:60px; z-index:3; } @@ -329,7 +300,9 @@ h2{ padding-right:20px; padding-top:30px; - + font-family:$title_font; + text-transform:uppercase; + font-weight:700; background: linear-gradient(to bottom, rgba(0,0,0,0.9) 0%, rgba(0,0,0,0) 100%); @@ -343,19 +316,14 @@ h2{ color:white; text-decoration:none; } - .sub_menu{ - font-size:0.8em; - opacity:0.7; - padding-right:10px; - - } + .menu{ padding:10px 0; a{ display:inline-block; padding:0 10px; font-weight:500; - font-size:1.2em; + font-size:1.4em; text-transform:uppercase; } } @@ -499,4 +467,163 @@ a{ } } +} +.partners{ + + + + text-align:center; + .inner{ + max-width:1000px; + padding:30px 20px; + margin:auto; + + } + .partner{ + + background:white; + + margin:5px; + + display:inline-block; + //border:1px solid rgba(white,0.6); + padding:15px 10px; + &:hover{ + + cursor:pointer; + + } + .p_inner{ + width:150px; + background:no-repeat center center; + background-size:100%; + background-size:contain; + } + + } + + + + +} + +#sub_footer{ + background:rgba(#20102d, 1); + text-align:center; + color:white; + + #contacts{ + padding:0px; + padding-top:20px; + padding-bottom:140px; + text-align:center; + font-weight:bold; + a{ + padding:0 10px; + color:white; + } + } + h3{ + color:rgba(white,0.9); + text-align:center; + font-size:1.7em; + padding-top:40px; + margin:0; + + } + + .partners{ + .inner{max-width:100%; + padding-right:5px; + padding-left:5px;} + + + .partner{ + -webkit-filter: grayscale(100%); /* Safari 6.0 - 9.0 */ + filter: grayscale(100%); + opacity:0.5; + + &:hover{ + opacity:1; + + -webkit-filter: grayscale(0%); /* Safari 6.0 - 9.0 */ + filter: grayscale(0%); + } + + + } + + + + + } + + +} + +#top_band{ + position:relative; + .h1_inner{ + position:absolute; + bottom:0; + right:0; + left:0; + text-align:center; + padding:30px 20px; + + + } + h1{ + display:inline-block; + border-bottom:5px solid white; + font-size:3em; + color:white; + padding:0; + padding-bottom:0px; + margin:0; + + + } +} + +.events{ + text-align:center; + vertical-align:top; + .event{ + vertical-align:top; + background:white; + max-width:700px; + margin:60px auto; + margin-top:0; + box-shadow:0 0 20px rgba(black,0.4); + h2{ + margin:0; + padding:25px 20px; + text-align:center; + } + .img{ + + background:no-repeat center center; + background-size:100%; + background-size:cover; + margin:auto; + max-width:600px; + + + } + + .desc{ + max-width:470px; + padding:10px 30px; + margin:auto; + padding-bottom:30px; + text-align:left; + min-height:150px; + } + + + } + + + } diff --git a/app/controllers/admin/events_controller.rb b/app/controllers/admin/events_controller.rb index 21b1ee6..58f15a3 100644 --- a/app/controllers/admin/events_controller.rb +++ b/app/controllers/admin/events_controller.rb @@ -1,89 +1,83 @@ # -*- encoding : utf-8 -*- class Admin::EventsController < ApplicationController + before_filter :auth_admin - before_filter :auth_admin + + layout "admin" - layout "admin" - - - before_filter :find_events + def index end def cible - + @events = Event.all + render :layout => false - end - + def new - - @event = Event.new() + if params[:event_id] and Event.find(params[:event_id]) + @event = Event.find(params[:event_id]).dup + @event.event_id = params[:event_id] + else + @event = Event.new(:start_at_date =>[ Date.today.day, Date.today.month, Date.today.year].join("/"), :start_at_time => "20:00") + + end end - def edit - @event = Event.find(params[:id]) - + end def create - - @event = Event.new(event_params) + @event = Event.new(params.require(:event).permit!) + - if @event.save - flash[:notice] = "L'event à été ajouté avec succès." - self.find_events + + flash[:notice] = "L'événement à été ajouté avec succès." + + self.find_events #reload events to show new events in the list sort by date. + else render :action => "new" + + end + + end + + def update + @event = Event.find(params[:id]) + + if @event.update_attributes(params.require(:event).permit!) + flash[:notice] = "L'événement à été modifié avec succès." + else + render :action => "edit" + end - end - - - def update - - @event = Event.find(params[:id]) - - - if params[:event] - if @event.update_attributes(event_params) - flash[:notice] = "L'event à été modifié avec succès." - else - render :action => "edit" - end - - - elsif params[:tag_id] - @event.tag_by_tag_ids(params[:tag_id]) - end - - - - end def destroy - @event = Event.find(params[:id]) @event.destroy end + protected def find_events @@ -92,33 +86,29 @@ class Admin::EventsController < ApplicationController start = Date.parse(params[:start]).beginning_of_day params[:start]= start.strftime('%d/%m/%Y') else - params[:start] = "" + params[:start] = "Début" end if params[:stop] and params[:stop] =~ date_regex stop = Date.parse(params[:stop]).end_of_day params[:stop]= stop.strftime('%d/%m/%Y') else - params[:stop] = "" + params[:stop] = "Fin" end - @events = Event.order('start_at DESC') + @events = Event.order('start_at, stop_at') @events = @events.after(start) if start @events = @events.before(stop) if stop - per_page = (params[:per_page] and params[:per_page] != "") ? params[:per_page] : 5000 + per_page = (params[:per_page] and params[:per_page] != "") ? params[:per_page] : 20 page = (params[:page] and params[:page] != "") ? params[:page] : 1 - @events = @events.page(page).per(per_page) + #@events = Event.all.page(page).per(per_page) - #@events = Event.order('start_at, stop_at').after(start).before(stop) + @events = Event.order('start_at DESC, stop_at DESC') + @events = @events.after(start) if start + @events = @events.before(stop) if stop + + + + + @events = @events.page(page).per(per_page) end - - private - def event_params - params.require(:event).permit(:start_at, :title, :slug, :description, :image_file_id) - - - - - end - - end diff --git a/app/controllers/admin/partners_controller.rb b/app/controllers/admin/partners_controller.rb new file mode 100644 index 0000000..66ccca0 --- /dev/null +++ b/app/controllers/admin/partners_controller.rb @@ -0,0 +1,54 @@ +# -*- encoding : utf-8 -*- + +class Admin::PartnersController < ApplicationController + layout "admin" + before_filter :auth_admin + + def index + @partners = Partner.all + end + + def new + @partner = Partner.new + end + + def edit + @partner = Partner.find(params[:id]) + end + + def create + @partner = Partner.new(params.require(:partner).permit!) + + + if @partner.save + redirect_to admin_partners_url, notice: 'Url courte crée.' + + else + render action: "new" + + end + + end + + def update + @partner = Partner.find(params[:id]) + + + if @partner.update_attributes(params.require(:partner).permit!) + redirect_to admin_partners_url, notice: 'Url courte modifiée.' + + else + render action: "edit" + + end + + end + + + def destroy + @partner = Partner.find(params[:id]) + @partner.destroy + + redirect_to admin_partners_url, :notice => "Url courte supprimée." + end +end diff --git a/app/helpers/events_helper.rb b/app/helpers/events_helper.rb new file mode 100644 index 0000000..d3edeeb --- /dev/null +++ b/app/helpers/events_helper.rb @@ -0,0 +1,27 @@ +module EventsHelper + def event_human_date(event, date_format = "%A %e %B %Y", time_format = "%kh%M") + + if event.entire_day? + if event.stop_date? + if event.start_at.strftime('%d/%m/%Y') == event.stop_at.strftime('%d/%m/%Y') + "le #{l(event.start_at, :format => date_format)}" + else + "du #{l(event.start_at, :format => date_format)} au #{l(event.stop_at, :format => date_format)}" + end + else + "le #{l(event.start_at, :format => date_format)}" + end + else + if event.stop_date? + if event.start_at.strftime('%d/%m/%Y') == event.stop_at.strftime('%d/%m/%Y') + "le #{l(event.start_at, :format => date_format)} de #{l(event.start_at, :format => time_format)} à #{l(event.stop_at, :format => time_format)} " + else + "du #{l(event.start_at, :format => date_format)} à #{l(event.start_at, :format => time_format)} au #{l(event.stop_at, :format => date_format)} à #{l(event.stop_at, :format => time_format)} " + end + else + "le #{l(event.start_at, :format => date_format)} à #{l(event.start_at, :format => time_format)}" + end + end + + end +end diff --git a/app/models/dynamic_content.rb b/app/models/dynamic_content.rb index 5c6fb2b..e948317 100644 --- a/app/models/dynamic_content.rb +++ b/app/models/dynamic_content.rb @@ -5,16 +5,8 @@ class DynamicContent < ActiveRecord::Base belongs_to :item NAMES = { - "militer" => "Index militer", - "detenus" => "Index détenus", - "index_label" => "Index Label", - "index_petitions" => "Index Pétitions", - "index_sponsorship" => "Index Parrainages", - "contact" => "Formulaire contact", - "contact_leg" => "Formulaire contact leg", - "contact_militer" => "Formulaire contact militer", - "plan" => "Plan du site", - "newsletter" => "Formulaire newsletter", + "partners" => "Partenaires", + "prog" => "Programation", } diff --git a/app/models/event.rb b/app/models/event.rb index 8969229..efe4e88 100644 --- a/app/models/event.rb +++ b/app/models/event.rb @@ -1,54 +1,118 @@ class Event < ActiveRecord::Base + date_format = /\A(0[1-9]|[12][0-9]|3[01])[\/](0[1-9]|1[012])[\/](19|20)\d\d\z/i + hour_format = /\A([0-1]?[0-9]|2[0-3]):([0-5][0-9])(:[0-5][0-9])?\z/i + validates :title, :presence => true + belongs_to :image_file - - validates :title, :presence => true - validates :slug, :presence => true, :uniqueness => true - has_one :block, :as => :blockable - - after_create :after_creation - - before_validation do - self.slug = self.title.to_slug - - end - after_initialize do - if self.start_at - self.start_at = self.start_at.strftime('%d/%m/%Y') - end - - end +# validates :start_at_date, :presence => true, :format => { :with => date_format } +# validates :start_at_time, :presence => true, :format => { :with => hour_format }, :if => :with_time? +# validates :stop_at_date, :presence => true, :format => { :with => date_format }, :if => :stop_date +# validates :stop_at_time, :presence => true, :format => { :with => hour_format }, :if => [:with_time?,:stop_date] + + attr_accessor :start_at_date, :start_at_time, :stop_at_date, :stop_at_time, :event_id, :skip_date + + has_one :block, :as => :blockable + - def after_creation - @block = Block.new(:block_name => "Contenu") - @block.blockable = self - @block.save - - - end - - def alloweds_types - self.block.allow_types :TitleContent, :TextContent, :ImageContent, :LinkContent, :GalleryContent, :HtmlContent - - end - - #where("enabled = ?",true ). - scope :recents, -> {order("start_at DESC, created_at DESC")} - scope :between, lambda { |start, stop| after(start).before(stop) } scope :after, lambda { |date| - where("(start_at >= ?)", date ) + where("(start_at >= ? or stop_at >= ?)", date, date ) } scope :before, lambda { |date| - where("(start_at <= ?)", date ) + where("(stop_at <= ?) or (start_at <= ?)", date, date ) } + def alloweds_types + self.block.allow_types :TitleContent, :TextContent, :ImageContent, :LinkContent, :GalleryContent, :HtmlContent + + end + + after_create do + if self.event_id and Event.where(:id => self.event_id).exists? + + event = Event.find(self.event_id) + + @block = event.block.dup + @block.blockable = self + @block.save + + else + @block = Block.new(:block_name => "general") + @block.blockable = self + @block.save + end - - - + end + + def create_block(event_id=nil) + if event_id + + else + + + + end + end + + before_validation do + + if !self.skip_date + self.stop_at_date, self.stop_at_time = nil, nil if !self.stop_date + self.start_at_time, self.stop_at_time = nil, nil if self.entire_day + + if self.entire_day + self.start_at = self.start_at_date.to_s + self.stop_at = self.stop_at_date.to_s + else + self.start_at = self.start_at_date.to_s+" "+self.start_at_time.to_s + self.stop_at = self.stop_at_date.to_s+" "+self.stop_at_time.to_s + + end + + end + + if self.stop_date and self.start_at and (self.stop_at.beginning_of_day != self.start_at.beginning_of_day) + self.many_days = true + else + self.many_days = false + end + + true + + end + + def with_time? + true if !self.entire_day + end + + after_initialize do + if self.start_at + if self.entire_day + self.start_at_date = self.start_at.strftime('%d/%m/%Y') + else + self.start_at_date = self.start_at.strftime('%d/%m/%Y') + self.start_at_time = self.start_at.strftime('%H:%M') + end + end + + if self.stop_at + if self.entire_day + self.stop_at_date = self.stop_at.strftime('%d/%m/%Y') + else + self.stop_at_date = self.stop_at.strftime('%d/%m/%Y') + self.stop_at_time = self.stop_at.strftime('%H:%M') + end + end + end + + def human_date + + + + end end diff --git a/app/models/partner.rb b/app/models/partner.rb new file mode 100644 index 0000000..9fdfee4 --- /dev/null +++ b/app/models/partner.rb @@ -0,0 +1,7 @@ +class Partner < ActiveRecord::Base + belongs_to :image_file + belongs_to :second_image_file, :class_name => "ImageFile" + + validates :name, :presence => true + +end diff --git a/app/views/admin/events/_event.html.haml b/app/views/admin/events/_event.html.haml new file mode 100644 index 0000000..02713f4 --- /dev/null +++ b/app/views/admin/events/_event.html.haml @@ -0,0 +1,13 @@ +%tr#event_row.event_row{:id => event.id} + + %td{:style => "width:400px"}=raw event_human_date(event) + %td=event.title + + + %td.actions{:style => "width:200px;text-align:right;"} + = link_to i(:copy), new_admin_event_path(:event_id => event), :remote => true, :style => "padding-right:5px;" + = link_to i(:trash), [:admin, event], :confirm => 'Voulez-vous vraiment supprimer cet événement ?', :method => :delete, :remote => true + = link_to i(:pencil), edit_admin_event_path(event), :remote => true + = link_to i(:plus), edit_admin_event_path(event), :style => "padding:5px;", :class => "show_details" + + diff --git a/app/views/admin/events/_form.html.haml b/app/views/admin/events/_form.html.haml new file mode 100644 index 0000000..f8c1c3e --- /dev/null +++ b/app/views/admin/events/_form.html.haml @@ -0,0 +1,50 @@ += semantic_form_for [:admin,@event], :remote => true do |form| + .content + = form.inputs do + = form.input :title, :label => "Titre :" + = form.hidden_field :event_id + =form.input :image_file_id, :as => :qi_image_select + .event_date_form + -if form.object.errors.messages[:start_at_date] or form.object.errors.messages[:start_at_time] or form.object.errors.messages[:stop_at_date] or form.object.errors.messages[:stop_at_time] + %p.errors + Tout les champs doivent être remplis. Les dates doivent être au format jj/mm/yyyy et les heures au format hh:mm. + .div + =form.label :start_at_date, "Début :", :style=>"display:inline-block;width:50px" + =form.text_field :start_at_date, :id => "event_start_at_date", :class => "datepicker" + .event_time{:style => "display:inline;"} + =form.label :start_at_time, "heure :" + .input-append.bootstrap-timepicke{:style => "display:inline-block;"} + =form.text_field :start_at_time, :id => "event_start_at_time", :class => "timepicker input-small", :style => "width:50px" + %span.add-on + %i.icon-time + + + =form.check_box :entire_day, :id => "event_entire_day" + =form.label :entire_day, "jour entier ?" + .div + %span.stop_at + =form.label :stop_at_date, "Fin :", :style=>"display:inline-block;width:50px" + =form.text_field :stop_at_date, :id => "event_stop_at_date", :class => "datepicker" + .event_time{:style => "display:inline;"} + =form.label :stop_at_time, "heure :" + .input-append.bootstrap-timepicke{:style => "display:inline-block;"} + =form.text_field :stop_at_time, :id => "event_stop_at_time", :class => "timepicker input-small", :style => "width:50px" + %span.add-on + %i.icon-time + + + =form.check_box :stop_date, :id => "event_stop_date" + =form.label :stop_date, "fin précisée ?" + + + = form.inputs do + = form.input :description, :label => "Description courte :", :as => :text + + + + + .actions + = form.submit "Sauvegarder", :class => "btn" + + :javascript + update_event_form(); \ No newline at end of file diff --git a/app/views/admin/events/_index_block.html.haml b/app/views/admin/events/_index_block.html.haml new file mode 100644 index 0000000..b41a012 --- /dev/null +++ b/app/views/admin/events/_index_block.html.haml @@ -0,0 +1,28 @@ + +.search_pannel + + =form_tag "", :method => "get", :remote => true do + .input-append + =text_field_tag :start, params[:start],:class => "datepicker", :placeholder => "Début" + %button.btn{:onclick => "$(this).prev('input').val('');"} + =i(:remove, :icon => false) + + .input-append + =text_field_tag :stop, params[:stop],:class => "datepicker", :placeholder => "Fin" + %button.btn + =i(:remove, :icon => false) + + + + =submit_tag "filtrer", :class => "btn", :style => "margin-bottom: 10px;" + + + + + +%table#events.table.table-hover + =render @events + #pagination + = paginate @events, :remote => true + + diff --git a/app/views/admin/events/_show.html.haml b/app/views/admin/events/_show.html.haml new file mode 100644 index 0000000..25bd2b6 --- /dev/null +++ b/app/views/admin/events/_show.html.haml @@ -0,0 +1,6 @@ +#event_show + %h1 + =@event.title + %em=event_human_date(@event) + + .desc=simple_format @event.description \ No newline at end of file diff --git a/app/views/admin/events/cible.html.haml b/app/views/admin/events/cible.html.haml new file mode 100644 index 0000000..dc7582c --- /dev/null +++ b/app/views/admin/events/cible.html.haml @@ -0,0 +1,6 @@ + +-Event.all.each do |actuality| + + %h4 + =actuality.title + = link_to i(:check_alt, :gray_light,12), "#",:onclick => "manager_send_cible("+actuality.id.to_s+", 'Folder', '#{escape_javascript(actuality.cible_name)}');return false;" if params[:manager] diff --git a/app/views/admin/events/create.js.erb b/app/views/admin/events/create.js.erb new file mode 100644 index 0000000..9b55c26 --- /dev/null +++ b/app/views/admin/events/create.js.erb @@ -0,0 +1,4 @@ +close_pane_hover(); + +$('#events').html("<%= escape_javascript(render(@events))%>"); +$('#event_row_<%= @event.id %>').effect("highlight", {}, 3000); diff --git a/app/views/admin/events/destroy.js.erb b/app/views/admin/events/destroy.js.erb new file mode 100644 index 0000000..0cb6a02 --- /dev/null +++ b/app/views/admin/events/destroy.js.erb @@ -0,0 +1 @@ +$('#event_row_<%=@event.id%>').remove(); diff --git a/app/views/admin/events/edit.html.haml b/app/views/admin/events/edit.html.haml new file mode 100644 index 0000000..2e2cc9c --- /dev/null +++ b/app/views/admin/events/edit.html.haml @@ -0,0 +1,81 @@ +#toolbar-text + +#menu_item_block_edit{:style => "margin-right:330px;margin-top:45px;"} + + =render :partial => "admin/blocks/block", :locals => {:block => @event.block, :sortable => true} + + +%br +%br +%br +%br +%br +%br +%br +%br +%br +%br +%br +#menu_item_inspector_container + + + + + + + + #menu_item_informations + %h4 + Infos sur l'event + + + .panel#collapseOne{:style => "display:none;"} + =render :partial => "form" + + %h4 éléments + + .panel#collapse2 + .block_portlets_sortable#content_types + -@event.block.alloweds_types.each do |slug, name| + + .content_type{:id => slug, :"data-type" => slug} + =#i slug.to_s.constantize.picto + =image_tag("admin/content_type/type_"+slug.to_s+".png", :alt => name, :title => name, :class => "handle") + + + #collapse3{:style => "display:none;"} + %h4 Modifier l'élément + + + .panel + #element_form + + %div#element_form_action + %a.move.btn.btn-default.portlet_handle{:href => "#", :data => {:portlet_id => nil}} + %span.move_message + =ic :arrows +   + déplacer + %span.cancel_message + =ic :ban +   + annuler + + =link_to ic(:"trash-o"), "#", :method => :delete, :data => { :confirm => "Etes-vous sûr ?"}, :remote => true, :class => "btn btn-danger trash" + + %button.save.btn.btn-primary + =ic(:"floppy-o") +   + Sauvegarder + + + + + + + + + + + + diff --git a/app/views/admin/events/edit.js.erb b/app/views/admin/events/edit.js.erb new file mode 100644 index 0000000..61c7a6f --- /dev/null +++ b/app/views/admin/events/edit.js.erb @@ -0,0 +1 @@ +show_pane_hover("<%= escape_javascript(render(:partial => "form"))%>",850,600); \ No newline at end of file diff --git a/app/views/admin/events/index.html.haml b/app/views/admin/events/index.html.haml new file mode 100644 index 0000000..a0bbac2 --- /dev/null +++ b/app/views/admin/events/index.html.haml @@ -0,0 +1,8 @@ +.header + .right= link_to 'Ajouter un événement', new_admin_event_path, :class => "btn", :remote => true + %h1 Agenda + +#events_index=render :partial => "index_block" + +#event_detail + diff --git a/app/views/admin/events/index.js.erb b/app/views/admin/events/index.js.erb new file mode 100644 index 0000000..3a8ebdc --- /dev/null +++ b/app/views/admin/events/index.js.erb @@ -0,0 +1 @@ +$('#events_index').html("<%= escape_javascript(render(:partial => "index_block"))%>"); diff --git a/app/views/admin/events/new.js.erb b/app/views/admin/events/new.js.erb new file mode 100644 index 0000000..fe50966 --- /dev/null +++ b/app/views/admin/events/new.js.erb @@ -0,0 +1,2 @@ +show_pane_hover("<%= escape_javascript(render(:partial => "form"))%>",850,600); + diff --git a/app/views/admin/events/update.js.erb b/app/views/admin/events/update.js.erb new file mode 100644 index 0000000..64de6b8 --- /dev/null +++ b/app/views/admin/events/update.js.erb @@ -0,0 +1,5 @@ +close_pane_hover(); + +$('#event_show').replaceWith("<%= escape_javascript(render(:partial => "show"))%>"); +$('#events').html("<%= escape_javascript(render(@events))%>"); +$('#event_row_<%= @event.id %>').effect("highlight", {}, 3000); \ No newline at end of file diff --git a/app/views/admin/partners/_form.html.haml b/app/views/admin/partners/_form.html.haml new file mode 100644 index 0000000..87310a7 --- /dev/null +++ b/app/views/admin/partners/_form.html.haml @@ -0,0 +1,9 @@ += semantic_form_for([:admin, @partner]) do |f| + =f.inputs do + = f.input :image_file_id, :label => "Image générale :" , :as => :qi_image_select + = f.input :name, :label => "Nom :" + = f.input :description, :label => "Description:" + = f.input :url, :label => "Url :" + + = f.submit "Sauvegarder", :class => "btn btn-primary" + \ No newline at end of file diff --git a/app/views/admin/partners/edit.html.haml b/app/views/admin/partners/edit.html.haml new file mode 100644 index 0000000..0af3f3c --- /dev/null +++ b/app/views/admin/partners/edit.html.haml @@ -0,0 +1,14 @@ +.qi_header + %h1 + + Url courtes + %span + modifier une url + + + +.qi_row + .qi_pannel.qi_plain.padding + = render 'form' + + diff --git a/app/views/admin/partners/index.html.haml b/app/views/admin/partners/index.html.haml new file mode 100644 index 0000000..df41b09 --- /dev/null +++ b/app/views/admin/partners/index.html.haml @@ -0,0 +1,28 @@ +.qi_header + .right= link_to ic(:plus)+' Ajouter un partenaire', new_admin_partner_path, :class => "btn btn-primary" + %h1 + + Partenaires + + +.qi_row + .qi_pannel.qi_plain.padding + %h1 Liste des urls courtes + + %table.stat_table.table.table-striped.table-hover + %tr + %th + %th Nom / desc + %th + + + - @partners.each do |partner| + %tr + %td= image_tag partner.image_file.file.large.medium.small + %td + = partner.name + = simple_format partner.description + %td.actions + = link_to i(:"trash-o"), [:admin, partner], method: :delete, data: { confirm: 'Voulez-vous vraiment supprimer ce partenaire ?' } + = link_to i(:pencil), edit_admin_partner_path(partner) + diff --git a/app/views/admin/partners/new.html.haml b/app/views/admin/partners/new.html.haml new file mode 100644 index 0000000..8ed7274 --- /dev/null +++ b/app/views/admin/partners/new.html.haml @@ -0,0 +1,14 @@ +.qi_header + %h1 + + Url courtes + %span + ajouter une url + + + +.qi_row + .qi_pannel.qi_plain.padding + = render 'form' + + diff --git a/app/views/layouts/admin.html.haml b/app/views/layouts/admin.html.haml index 86c6a5c..7ca2a8e 100644 --- a/app/views/layouts/admin.html.haml +++ b/app/views/layouts/admin.html.haml @@ -70,7 +70,11 @@ %li.divider %li= link_to "Sliders", admin_home_slider_path(1) - %li= link_to "Contacts", admin_contacts_path + + %li= link_to "Partenaires", admin_partners_path + %li= link_to "Evénements", admin_events_path + + %li=# link_to "Contacts", admin_contacts_path diff --git a/app/views/layouts/public.html.haml b/app/views/layouts/public.html.haml index 187ae42..96d3516 100644 --- a/app/views/layouts/public.html.haml +++ b/app/views/layouts/public.html.haml @@ -69,8 +69,8 @@ = stylesheet_link_tag 'public', :media => :all - - + + = stylesheet_link_tag '/fonts/caviar_dreams/stylesheet.css' =javascript_include_tag "https://maps.googleapis.com/maps/api/js?libraries=places,geometry&sensor=false" @@ -157,7 +157,7 @@ -else - .slide_home_wrapper.with_ratio{:style => "background-image:url('#{@img_url}');", :data => {:ratio => 0.35}} + #top_band.slide_home_wrapper.with_ratio{:style => "background-image:url('#{@img_url}');", :data => {:ratio => 0.35}} #menu_top @@ -165,8 +165,10 @@ =render :partial => "public/shared/second_menu" .menu =render :partial => "public/shared/first_menu" - - + =link_to image_tag("/logo.png", :id => "logo"), "/" + -if @title and (!@menu_item or @menu_item.id != 1) + .h1_inner + %h1=@title -if @menu_item and @menu_item.id == 1 #main=yield @@ -185,7 +187,10 @@ .contact_form.contact_militer#form =render :partial => "public/contacts/form" #sub_footer - + %h3 Nos partenaires + + =render :partial => "public/partners/partners" + #logos @@ -197,7 +202,8 @@ #contacts %p - + =link_to "Menstions légales", "/fr/mentions-legales.html", :target => "_blank" + =link_to "Contactez-nous", "mailto:fraternelle-rugby-moirans@orange.fr" .clear diff --git a/app/views/portlets/dynamic_contents/_contact.html.haml b/app/views/portlets/dynamic_contents/_contact.html.haml deleted file mode 100644 index 7193574..0000000 --- a/app/views/portlets/dynamic_contents/_contact.html.haml +++ /dev/null @@ -1,4 +0,0 @@ --@contact = @contact || Contact.new(:raison_id => 1, :survey_set_id => params[:id]) - -.contact_form.contact_militer#form - =render :partial => "public/contacts/form" \ No newline at end of file diff --git a/app/views/portlets/dynamic_contents/_contact_leg.html.haml b/app/views/portlets/dynamic_contents/_contact_leg.html.haml deleted file mode 100644 index 9f454fe..0000000 --- a/app/views/portlets/dynamic_contents/_contact_leg.html.haml +++ /dev/null @@ -1,4 +0,0 @@ --@contact = @contact || Contact.new(:raison_id => 2, :survey_set_id => params[:id]) - -.contact_form.contact_militer#form - =render :partial => "public/contacts/form" \ No newline at end of file diff --git a/app/views/portlets/dynamic_contents/_contact_militer.html.haml b/app/views/portlets/dynamic_contents/_contact_militer.html.haml deleted file mode 100644 index cd89bf4..0000000 --- a/app/views/portlets/dynamic_contents/_contact_militer.html.haml +++ /dev/null @@ -1,4 +0,0 @@ --@contact = @contact || Contact.new(:raison_id => 4, :survey_set_id => params[:id]) - -.contact_form.contact_militer#form - =render :partial => "public/contacts/form" \ No newline at end of file diff --git a/app/views/portlets/dynamic_contents/_detenus.html.haml b/app/views/portlets/dynamic_contents/_detenus.html.haml deleted file mode 100644 index 4fe842d..0000000 --- a/app/views/portlets/dynamic_contents/_detenus.html.haml +++ /dev/null @@ -1,39 +0,0 @@ -.detenus_container - .detenus - -DetenuGroup.order("name").each do |detenu_group| - .detenu_group - %h4=detenu_group.name - - -if detenu_group.detenus.count > 0 - -detenu_group.detenus.order("name").each do |detenu| - .detenu - =detenu.name - -if detenu.sexe == 1 - =ic :mars - - -if detenu.sexe == 2 - =ic :venus - - -if detenu.link? - =link_to "(+ d'infos)", detenu.link, :target => "_blank", :style => "font-size:0.85em" - - .desc - -if detenu.age_text? - =detenu.age_text - -if detenu.age_text? and detenu.free_text? - = "-" - -if detenu.free_text? - %span.free_text - =ic :"chain-broken" - =detenu.free_text - - -if detenu.provisoire - %span.ident - - en cours d'identification - - - -else - .none - Enquête en cours - \ No newline at end of file diff --git a/app/views/portlets/dynamic_contents/_historique_monde.html.haml b/app/views/portlets/dynamic_contents/_historique_monde.html.haml deleted file mode 100644 index e69de29..0000000 diff --git a/app/views/portlets/dynamic_contents/_index_label.html.haml b/app/views/portlets/dynamic_contents/_index_label.html.haml deleted file mode 100644 index f050597..0000000 --- a/app/views/portlets/dynamic_contents/_index_label.html.haml +++ /dev/null @@ -1,105 +0,0 @@ --if @admin - .dynamic - Label - - -.index_label - %h3 Découvrez les marques 100% labélisées - - -NewLabelEntreprise.order("name").all.each do |new_label_entreprise| - =link_to new_label_entreprise.website, :target => "_blank" do - .label_marque_img - .inner_logo{:style => "background-image:url('#{new_label_entreprise.image_file.file.large.medium.url if new_label_entreprise.image_file}');"} - -if !new_label_entreprise.image_file - .inner_title - =new_label_entreprise.name - - %h3 Découvrez les produits labellisés des marques suivantes - - -LabelMarque.order("name").all.each do |label_marque| - =link_to "/public/label_produits?search=true&q=&label_marque_id=#{label_marque.id}", :target => "_blank" do - .label_marque_img - .inner_logo{:style => "background-image:url('#{label_marque.image_file.file.large.medium.url if label_marque.image_file}');"} - -if !label_marque.image_file - .inner_title - =label_marque.name - -:scss - .index_label{ - text-align:center; - h3{ - text-align:center; - margin-top:30px; - margin-bottom:20px; - } - .label_marque_img{ - - height:140px; - width:140px; - margin:2px; - padding:5px; - - display:inline-block; - - position:relative; - border:1px solid rgba(0,0,0,0.1); - .inner_logo{ - position:absolute; - left:12px; - right:12px; - top:12px; - bottom:12px; - background:center center no-repeat; - background-size:100%; - background-size:contain; - - - - } - .inner_title{ - position:absolute; - left:0; - right:0; - top:60px; - text-align:center; - color:black; - - } - } - - } - - -.bottom_subpages - -@menu_item.children.order(:position).each do |menu_item| - - -menu_item_lang = menu_item.menu_item_langs.find_by_lang_site_id(@lang.id) - - - -name = menu_item_lang.name - -if menu_item_lang.enabled == true and menu_item_lang.visible == true - -if menu_item.image_file - - - - -img_url = menu_item.image_file.file.large.medium.url - - -if menu_item.image_file and menu_item.image_file.photograph - -@page_images_credits << menu_item.image_file.photograph - - - - - -css_style = "background-image:url('#{img_url}');background-size:100%;background-size:cover;background-position:center center;display:block;min-height:50px;" - - - .subpage_link - =link_to @one_voice_host.to_s+menu_item_path(:url => menu_item_lang.url, :lang => @lang.slug) , :class => "with_ratio" do - .with_ratio{:style => css_style, :data => {:ratio => 0.62}} - - - .overlay - - - %h4.title - =menu_item.menu_item_langs.find_by_lang_site_id(@lang.id).name \ No newline at end of file diff --git a/app/views/portlets/dynamic_contents/_index_petitions.html.haml b/app/views/portlets/dynamic_contents/_index_petitions.html.haml deleted file mode 100644 index e7045ab..0000000 --- a/app/views/portlets/dynamic_contents/_index_petitions.html.haml +++ /dev/null @@ -1,10 +0,0 @@ - --@petitions = Petition.joins(:petition_langs).where(:petition_langs => {:lang_site_id => @lang.id, :enabled => true}).order("position ASC") - -.petitions_index - .petition_first_page - =render :collection => @petitions[0..8], :partial => "public/petitions/petition" - .cta{:style => "text-align:center;margin:20px 0;"} - =link_to qit("Voir plus de pétitions >"), "#", :onclick => "$(this).closest('.petitions_index').find('.petition_more').show();$(this).closest('.cta').hide();return false;", :class => "btn" - .petition_more{:style => "display:none;"} - =render :collection => @petitions[9..@petitions.size], :partial => "public/petitions/petition" \ No newline at end of file diff --git a/app/views/portlets/dynamic_contents/_index_sponsorship.html.haml b/app/views/portlets/dynamic_contents/_index_sponsorship.html.haml deleted file mode 100644 index 81576c4..0000000 --- a/app/views/portlets/dynamic_contents/_index_sponsorship.html.haml +++ /dev/null @@ -1,6 +0,0 @@ - --@sponsorship_animals = SponsorshipAnimal.where(:enabled => true).order(:position).all - - -.sponsorship_index - =render :collection => @sponsorship_animals, :partial => "public/sponsorship_animals/sponsorship_animal" \ No newline at end of file diff --git a/app/views/portlets/dynamic_contents/_militer.html.haml b/app/views/portlets/dynamic_contents/_militer.html.haml deleted file mode 100644 index e4c2821..0000000 --- a/app/views/portlets/dynamic_contents/_militer.html.haml +++ /dev/null @@ -1,71 +0,0 @@ - --begin - -params[:cat] = params[:cat] || 3 - -@militer_cat = MiliterCat.find(params[:cat]) - - %a{:id => "documents"} - .militer_index - .main_container - %h3 Documents - - -MiliterCat.where(:parent_id => nil).order("position").all.each do |militer_cat| - -if I18n.locale == :fr - -name =militer_cat.name - -else - -name = militer_cat.english_name - - =link_to raw(name), "?cat=#{militer_cat.id}#documents", :class => ("active" if @militer_cat and militer_cat.id == @militer_cat.id), :data => {:id => militer_cat.id} - - .militer - - - -ig = 0 - -@militer_cat.children.order("position").each do |militer_cat| - -ig += 1 - - %h3 - .right - %span.plus{:style => ("display:none;" if ig == 1)} + - %span.moins{:style => ("display:block;" if ig == 1)}= "-" - =militer_cat.name - .militer_content{:style => ("display:block;" if ig == 1)} - -i = 0 - .row - -militer_cat.data_files.where(:lang_site_id => @lang.id).order("militer_position DESC, created_at DESC").each do |data_file| - -i += 1 - - =render data_file - - -if i== 2 - -i = 0 - =raw "
" - .clear - - .clear - - -i = 0 - .row - -@militer_cat.data_files.where(:lang_site_id => @lang.id).order("militer_position DESC, created_at DESC").each do |data_file| - -i += 1 - - =render data_file - - -if i== 2 - -i = 0 - =raw "
" - .clear - - - %br - %br - %br - - :coffeescript - $(".militer h3").click -> - $(this).next(".militer_content").toggle() - $(this).find(".plus").toggle() - $(this).find(".moins").toggle() - --rescue - ="" - diff --git a/app/views/portlets/dynamic_contents/_newsletter.html.haml b/app/views/portlets/dynamic_contents/_newsletter.html.haml deleted file mode 100644 index 1b0c350..0000000 --- a/app/views/portlets/dynamic_contents/_newsletter.html.haml +++ /dev/null @@ -1,12 +0,0 @@ --if @admin - plan du site --else - #newsletter_form - -@registrant = @registrant || Registrant.new - =semantic_form_for [:public, @registrant], :remote => true do |f| - =hidden_field_tag :popup, true - %table{:style => "width:100%;max-width:450px;margin:20px auto;"} - %tr - %td.email=f.input :email, :placeholder => qit("newsletter-home_place_holder-3","Mon email"), :label => false - %td{:style => "width:120px;vertical-align:top"} - =link_to qit("newsletter-submit-3","S'abonner >"), "#", :class => "btn orange", :onclick => "$(this).closest('form').submit();return false;" diff --git a/app/views/portlets/dynamic_contents/_partners.html.haml b/app/views/portlets/dynamic_contents/_partners.html.haml new file mode 100644 index 0000000..7e3020d --- /dev/null +++ b/app/views/portlets/dynamic_contents/_partners.html.haml @@ -0,0 +1,4 @@ +-if @admin + Partenaires +-else + =render :partial => "public/partners/partners" \ No newline at end of file diff --git a/app/views/portlets/dynamic_contents/_plan.html.haml b/app/views/portlets/dynamic_contents/_plan.html.haml deleted file mode 100644 index b8cf650..0000000 --- a/app/views/portlets/dynamic_contents/_plan.html.haml +++ /dev/null @@ -1,66 +0,0 @@ --if @admin - plan du site --else - =raw "
" - .plan_sub - .inner - =link_to qit("Médiathèque"), search_path(:media => true) - =link_to qit("Presse"), search_path(:press => true) - =link_to qit("Documentation"), search_path(:doc => true) - =link_to qit("Boutique"), "/fr/boutique.html" - - - - =raw "
" - - .plan_body - - - -MenuItem.where(:parent_id => nil, :menu_id => 2).order(:position).each do |menu_item| - -description = "" - -description = menu_item.menu_content.description if menu_item.menu_content and menu_item.menu_content_type == "Page" - -if menu_item_link(menu_item) and menu_item_link(menu_item) != "" - - %h3 - =menu_item_link(menu_item) - - -MenuItem.where(:id => menu_item.id).each do |menu_item| - .plan_sub_menu{:class => "plan_sub_"+menu_item.id.to_s } - - - .inner - - - %ul - -MenuItem.where(:parent_id => menu_item.id).order(:position).each do |menu_item| - - -menu_item_lang = menu_item.menu_item_langs.find_by_lang_site_id(@lang.id) - - - -name = menu_item_lang.name - -if menu_item_lang.enabled == true and menu_item_lang.visible == true #and menu_item.menu_content.page_type_id == 4 - - %li - =link_to @one_voice_host.to_s+menu_item_path(:url => menu_item_lang.url, :lang => @lang.slug) , :class => "chapitre_link "+("active" if @menu_item and menu_item.id == @menu_item.id).to_s do - =menu_item.menu_item_langs.find_by_lang_site_id(@lang.id).name - =">" - - - %ul - -MenuItem.where(:parent_id => menu_item.id).order(:position).each do |menu_item| - - -menu_item_lang = menu_item.menu_item_langs.find_by_lang_site_id(@lang.id) - - - -name = menu_item_lang.name - -if menu_item_lang.enabled == true and menu_item_lang.visible == true and menu_item.menu_content.page_type_id == 2 - - %li - =link_to @one_voice_host.to_s+menu_item_path(:url => menu_item_lang.url, :lang => @lang.slug) , :class => "chapitre_link "+("active" if @menu_item and menu_item.id == @menu_item.id).to_s do - =menu_item.menu_item_langs.find_by_lang_site_id(@lang.id).name - =">" - - - - - %h3=link_to "blog", articles_path(:lang => @lang.slug) diff --git a/app/views/portlets/dynamic_contents/_prog.html.haml b/app/views/portlets/dynamic_contents/_prog.html.haml new file mode 100644 index 0000000..e442511 --- /dev/null +++ b/app/views/portlets/dynamic_contents/_prog.html.haml @@ -0,0 +1,4 @@ +-if @admin + Programmation +-else + =render :partial => "public/events/events" \ No newline at end of file diff --git a/app/views/public/events/_event.html.haml b/app/views/public/events/_event.html.haml new file mode 100644 index 0000000..1f14781 --- /dev/null +++ b/app/views/public/events/_event.html.haml @@ -0,0 +1,5 @@ +.event.with_ratio + %h2=event.title + .img.with_ratio{:style => "background-image:url('#{event.image_file.file}');", :data => {:ratio => 0.5}} + .desc + =simple_format event.description \ No newline at end of file diff --git a/app/views/public/events/_events.html.haml b/app/views/public/events/_events.html.haml new file mode 100644 index 0000000..3a0abe9 --- /dev/null +++ b/app/views/public/events/_events.html.haml @@ -0,0 +1,7 @@ +.events + + + + =render Event.all + + .clear \ No newline at end of file diff --git a/app/views/public/partners/_partners.html.haml b/app/views/public/partners/_partners.html.haml new file mode 100644 index 0000000..870acdb --- /dev/null +++ b/app/views/public/partners/_partners.html.haml @@ -0,0 +1,11 @@ +.partners + .inner + -Partner.order("RAND()").all.each do |partner| + -if partner.url? + =link_to partner.url, :target => "_blank" do + .partner + .p_inner.with_ratio{:style => "background-image:url('#{partner.image_file.file.large.medium.small}');", :data => {:ratio => 0.7}} + -else + .partner + .p_inner.with_ratio{:style => "background-image:url('#{partner.image_file.file.large.medium.small}');", :data => {:ratio => 0.7}} + \ No newline at end of file diff --git a/config/routes.rb b/config/routes.rb index f244b37..b5c1c53 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -111,7 +111,8 @@ Rails.application.routes.draw do end namespace :admin do - + resources :partners + resources :events resources :mail_contents resources :mail_templates diff --git a/db/migrate/20150309094403_create_events.rb b/db/migrate/20150309094403_create_events.rb new file mode 100644 index 0000000..50eb4fe --- /dev/null +++ b/db/migrate/20150309094403_create_events.rb @@ -0,0 +1,18 @@ +class CreateEvents < ActiveRecord::Migration + def change + create_table :events do |t| + t.string :title + t.text :description + t.text :long_desc + t.datetime :start_at + t.boolean :entire_day + t.boolean :stop_date + t.datetime :stop_at + t.boolean :many_days + t.integer :image_file_id + t.string :video + + t.timestamps + end + end +end diff --git a/db/migrate/20190302142600_create_partners.rb b/db/migrate/20190302142600_create_partners.rb new file mode 100644 index 0000000..918551a --- /dev/null +++ b/db/migrate/20190302142600_create_partners.rb @@ -0,0 +1,15 @@ +class CreatePartners < ActiveRecord::Migration + def change + create_table :partners do |t| + t.string :name + t.string :url + t.text :description + t.integer :image_file_id + t.integer :second_image_file_id + t.integer :position + t.boolean :princip, :default => false + + t.timestamps null: false + end + end +end diff --git a/db/schema.rb b/db/schema.rb index 4006059..8489aa2 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -11,7 +11,7 @@ # # It's strongly recommended that you check this file into your version control system. -ActiveRecord::Schema.define(version: 20181108173915) do +ActiveRecord::Schema.define(version: 20190302142600) do create_table "admin_admin_roles", force: :cascade do |t| t.integer "admin_id", limit: 4 @@ -349,6 +349,21 @@ ActiveRecord::Schema.define(version: 20181108173915) do add_index "edit_watchers", ["admin_id"], name: "index_edit_watchers_on_admin_id", using: :btree + create_table "events", force: :cascade do |t| + t.string "title", limit: 255 + t.text "description", limit: 65535 + t.text "long_desc", limit: 65535 + t.datetime "start_at" + t.boolean "entire_day" + t.boolean "stop_date" + t.datetime "stop_at" + t.boolean "many_days" + t.integer "image_file_id", limit: 4 + t.string "video", limit: 255 + t.datetime "created_at" + t.datetime "updated_at" + end + create_table "external_links", force: :cascade do |t| t.string "title", limit: 255 t.text "description", limit: 65535 @@ -774,6 +789,18 @@ ActiveRecord::Schema.define(version: 20181108173915) do t.string "civilite", limit: 255 end + create_table "partners", force: :cascade do |t| + t.string "name", limit: 255 + t.string "url", limit: 255 + t.text "description", limit: 65535 + t.integer "image_file_id", limit: 4 + t.integer "second_image_file_id", limit: 4 + t.integer "position", limit: 4 + t.boolean "princip", default: false + t.datetime "created_at", null: false + t.datetime "updated_at", null: false + end + create_table "popup_popupables", force: :cascade do |t| t.integer "popup_id", limit: 4 t.integer "popupable_id", limit: 4 diff --git a/public/fonts/caviar_dreams/CaviarDreams-webfont.woff b/public/fonts/caviar_dreams/CaviarDreams-webfont.woff new file mode 100755 index 0000000000000000000000000000000000000000..bea94a635930b11c8fe740231ab67cbaf5a12b9c GIT binary patch literal 22136 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 literal 0 HcmV?d00001 diff --git a/public/fonts/caviar_dreams/CaviarDreams_BoldItalic-webfont.woff b/public/fonts/caviar_dreams/CaviarDreams_BoldItalic-webfont.woff new file mode 100755 index 0000000000000000000000000000000000000000..aa08f92c405a25abbedce888a3e7097d56b3ab31 GIT binary patch literal 25412 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 V$C&^C007m!V+jBOS(mbj002F`V;=wj literal 0 HcmV?d00001 diff --git a/public/fonts/caviar_dreams/Caviar_Dreams_Bold-webfont.woff b/public/fonts/caviar_dreams/Caviar_Dreams_Bold-webfont.woff new file mode 100755 index 0000000000000000000000000000000000000000..ad10636f9b5b2fb7bba25827168589b42eab18ca GIT binary patch literal 22244 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 literal 0 HcmV?d00001 diff --git a/public/fonts/caviar_dreams/stylesheet.css b/public/fonts/caviar_dreams/stylesheet.css new file mode 100755 index 0000000..35a64f6 --- /dev/null +++ b/public/fonts/caviar_dreams/stylesheet.css @@ -0,0 +1,56 @@ +@font-face { + font-family: 'caviar_dreams'; + src: url('CaviarDreams-webfont.eot'); + src: url('CaviarDreams-webfont.eot?#iefix') format('embedded-opentype'), + url('CaviarDreams-webfont.woff2') format('woff2'), + url('CaviarDreams-webfont.woff') format('woff'), + url('CaviarDreams-webfont.ttf') format('truetype'), + url('CaviarDreams-webfont.svg#caviar_dreamsregular') format('svg'); + font-weight: normal; + font-style: normal; + +} + + + + +@font-face { + font-family: 'caviar_dreams'; + src: url('CaviarDreams_Italic-webfont.eot'); + src: url('CaviarDreams_Italic-webfont.eot?#iefix') format('embedded-opentype'), + url('CaviarDreams_Italic-webfont.woff2') format('woff2'), + url('CaviarDreams_Italic-webfont.woff') format('woff'), + url('CaviarDreams_Italic-webfont.ttf') format('truetype'), + url('CaviarDreams_Italic-webfont.svg#caviar_dreamsitalic') format('svg'); + font-weight: normal; + font-style: italic; + +} + +@font-face { + font-family: 'caviar_dreams'; + src: url('Caviar_Dreams_Bold-webfont.eot'); + src: url('Caviar_Dreams_Bold-webfont.eot?#iefix') format('embedded-opentype'), + url('Caviar_Dreams_Bold-webfont.woff2') format('woff2'), + url('Caviar_Dreams_Bold-webfont.woff') format('woff'), + url('Caviar_Dreams_Bold-webfont.ttf') format('truetype'), + url('Caviar_Dreams_Bold-webfont.svg#caviar_dreamsbold') format('svg'); + font-weight: bold; + font-style: normal; + +} + + +@font-face { + font-family: 'caviar_dreams'; + src: url('CaviarDreams_BoldItalic-webfont.eot'); + src: url('CaviarDreams_BoldItalic-webfont.eot?#iefix') format('embedded-opentype'), + url('CaviarDreams_BoldItalic-webfont.woff2') format('woff2'), + url('CaviarDreams_BoldItalic-webfont.woff') format('woff'), + url('CaviarDreams_BoldItalic-webfont.ttf') format('truetype'), + url('CaviarDreams_BoldItalic-webfont.svg#caviar_dreamsbold_italic') format('svg'); + font-weight: bold; + font-style: italic; + +} + diff --git a/public/logo.png b/public/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..80bb81c371263cdf7d89bf4cac2d9c4854932bd5 GIT binary patch literal 5197 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 S=d1qkW3Ar6xMchD-v0p#hEP-h literal 0 HcmV?d00001 diff --git a/test/fixtures/partners.yml b/test/fixtures/partners.yml new file mode 100644 index 0000000..30a2178 --- /dev/null +++ b/test/fixtures/partners.yml @@ -0,0 +1,19 @@ +# Read about fixtures at http://api.rubyonrails.org/classes/ActiveRecord/FixtureSet.html + +one: + name: MyString + url: MyString + description: MyText + image_file_id: 1 + second_image_file_id: 1 + position: 1 + princip: false + +two: + name: MyString + url: MyString + description: MyText + image_file_id: 1 + second_image_file_id: 1 + position: 1 + princip: false diff --git a/test/models/partner_test.rb b/test/models/partner_test.rb new file mode 100644 index 0000000..e1da258 --- /dev/null +++ b/test/models/partner_test.rb @@ -0,0 +1,7 @@ +require 'test_helper' + +class PartnerTest < ActiveSupport::TestCase + # test "the truth" do + # assert true + # end +end