diff --git a/Gemfile b/Gemfile index aac9128..54ebf05 100644 --- a/Gemfile +++ b/Gemfile @@ -37,7 +37,7 @@ gem "twitter-bootstrap-rails" gem 'formtastic-bootstrap' gem 'kaminari-bootstrap' -gem 'acts_as_commentable' + gem "mysql2" gem 'ransack' \ No newline at end of file diff --git a/Gemfile.lock b/Gemfile.lock index 07ab651..b7744f5 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -36,7 +36,6 @@ GEM minitest (~> 5.1) thread_safe (~> 0.3, >= 0.3.4) tzinfo (~> 1.1) - acts_as_commentable (4.0.2) acts_as_tree (2.1.0) activerecord (>= 3.0.0) arel (6.0.0) @@ -211,7 +210,6 @@ PLATFORMS ruby DEPENDENCIES - acts_as_commentable acts_as_tree bcrypt (~> 3.1.7) capistrano (= 2.15.5) diff --git a/app/models/album.rb b/app/models/album.rb deleted file mode 100644 index 7c44dbb..0000000 --- a/app/models/album.rb +++ /dev/null @@ -1,5 +0,0 @@ -# -*- encoding : utf-8 -*- -class Album < ActiveRecord::Base - validates :name, :presence => true, :uniqueness => true - -end diff --git a/app/models/allowed_block_content.rb b/app/models/allowed_block_content.rb deleted file mode 100644 index d642807..0000000 --- a/app/models/allowed_block_content.rb +++ /dev/null @@ -1,5 +0,0 @@ -# -*- encoding : utf-8 -*- -class AllowedBlockContent < ActiveRecord::Base - belongs_to :block - belongs_to :content_type -end diff --git a/app/models/article.rb b/app/models/article.rb deleted file mode 100644 index 918a232..0000000 --- a/app/models/article.rb +++ /dev/null @@ -1,116 +0,0 @@ -class Article < ActiveRecord::Base - - has_many :comments, :as => :commentable - - belongs_to :image_file - validates :title, :presence => true - validates :slug, :presence => true, :uniqueness => true - has_one :block, :as => :blockable - - belongs_to :category - has_many :enabled_comments,-> {where(:enabled => true)}, :source => :comments, :as => :commentable - after_create :after_creation - - - HUMAN_NAME = "lien vers un article." - - before_validation do - self.slug = self.slug.to_slug - self.tags_cache = self.tags_cache.gsub(/ +/, ' ').gsub(/, /,',').gsub(/ ,/,',').gsub(/,+/, ',') - self.tags_cache = self.tags_cache.to_s.gsub(/ +/, ' ').gsub(/, /,',').gsub(/ ,/,',').gsub(/,+/, ',') - - end - - - - 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 - - - scope :recents, -> {where("enabled = ?",true ).order("published_at DESC, created_at DESC")} - - scope :between, lambda { |start, stop| - after(start).before(stop) - } - - scope :after, lambda { |date| - where("(published_at >= ?)", date ) - } - scope :before, lambda { |date| - where("(published_at <= ?)", date ) - } - - - - after_initialize do - if self.published_at - self.published_at = self.published_at.strftime('%d/%m/%Y') - end - - end - - - - - - before_save do - #self.tags_cache = nil - - tag_list = self.tags_cache.split(',').uniq - - tag_names = [] - tag_objects_list = [] - - tag_list.each do |tag_name| - if tag = Tag.create(:name => tag_name.capitalize) and tag.id - self.tags << tag - else - tag = Tag.find_by_slug(tag_name.to_slug) - self.tags << tag if !self.tags.include?(tag) - end - tag_objects_list << tag - tag_names << tag.name - end - self.tags_cache = tag_names.sort.join(",").to_s - tags_to_remove = tags - tag_objects_list - tags_id_to_remove = (tags - tag_objects_list).map {|t| t.id} - self.tag_taggables.where(:tag_id => tags_id_to_remove).each { |t| t.destroy } - - - end - - - - has_many :tag_taggables, :as => :taggable - has_many :tags, :through => :tag_taggables - - def generate_tags_cache - self.tags_cache = self.tags.map{|a| a.name}.join(",").to_s - end - - def tag_by_tag_ids(tags_id) - Tag.find(tags_id).each do |tag| - self.tags << tag if !self.tags.include?(tag) - end - self.generate_tags_cache - self.save - - end - - before_destroy do - self.tags_cache = "" - self.save - end - - -end diff --git a/app/models/block.rb b/app/models/block.rb deleted file mode 100644 index 8d03a1d..0000000 --- a/app/models/block.rb +++ /dev/null @@ -1,60 +0,0 @@ -# -*- encoding : utf-8 -*- -class Block < ActiveRecord::Base - - ContentTypes = { - TitleContent: "Titre", - TextContent: "Texte", - ImageContent: "Image", - LinkContent:"Lien", - BreakContent: "Séparation", - HtmlContent: "Code HTML", - DownloadContent: "Téléchargement", - GalleryContent: "Galerie", - DynamicContent: "Contenu dynamique", - TableContent: "Tableau", - BlockContent: "Bloc", - MapContent: "Plan", - } - - - belongs_to :blockable, :polymorphic => true - - #has_many :portlets, :dependent => :destroy, -> {:order => :position} - - has_many :portlets,-> { order :position }, dependent: :destroy - - accepts_nested_attributes_for :portlets - - - def allow_types(*type) - if type == [:all] - ContentTypes - else - allow_types = {} - type.each do |content| - - allow_types[content] = ContentTypes[content] - end - allow_types - end - end - -def alloweds_types - allow_types :all #:TitleContent, :ImageContent - -end - - def dup - @block = Block.new(self.attributes) - @block.id = nil - @block.save - - self.portlets.each do |portlet| - new_p = portlet.dup - new_p.save - @block.portlets << new_p - end - @block - end - -end diff --git a/app/models/block_content.rb b/app/models/block_content.rb deleted file mode 100644 index 65fe4e1..0000000 --- a/app/models/block_content.rb +++ /dev/null @@ -1,60 +0,0 @@ -# -*- encoding : utf-8 -*- -class BlockContent < ActiveRecord::Base - has_one :portlet, :as => :content, :dependent => :destroy - has_many :blocks, :as => :blockable, :dependent => :destroy - - validates :nbr_columns, :presence => true - - STYLES = [["normal",1],["fond gris foncé",2],["fond gris clair",3],["fond bleu",4],["fond jaune",5],["fond vert",6],["fond béton",7],["Contenu centré",8]] - - - - before_create do - self.row1 = self.row2 = self.row3 = self.row4 = 12/self.nbr_columns.to_i - - end - - def row1_value - self.row1.to_i - - end - - def row2_value - self.row1.to_i+self.row2.to_i - - end - - def row3_value - self.row1.to_i+self.row2.to_i+self.row3.to_i - - end - - def row4_value - self.row1.to_i+self.row2.to_i+self.row3.to_i+self.row4.to_i - - end - - - def dup - @new = BlockContent.new(self.attributes) - @new.id = nil - @new.save - - - self.blocks.each do |block| - - new_b = block.dup - new_b.blockable = @new - new_b.save - - end - - @new - - end - - def self.picto - "columns" - end - -end diff --git a/app/models/break_content.rb b/app/models/break_content.rb deleted file mode 100644 index 6f2f322..0000000 --- a/app/models/break_content.rb +++ /dev/null @@ -1,10 +0,0 @@ -# -*- encoding : utf-8 -*- -class BreakContent < ActiveRecord::Base - - has_one :portlet, :as => :content, :dependent => :destroy - STYLES = []#[["Style 1",1], ["Style 2",2]] - - def self.picto - "minus" - end -end diff --git a/app/models/category.rb b/app/models/category.rb deleted file mode 100644 index e87fd27..0000000 --- a/app/models/category.rb +++ /dev/null @@ -1,127 +0,0 @@ -class Category < ActiveRecord::Base - has_many :articles - - validates :name, :presence => true, :uniqueness => true - validates :slug, :presence => true, :uniqueness => true - - before_validation do - self.slug = self.name.to_slug - self.validate_permalink - - end - attr_accessor :skip_before_update, :skip_permalink - acts_as_tree - - - - - - - def generate_permalink - r = "" - - node, ancestors = self, [] - ancestors << node = Category.find(node.parent_id) while node.parent_id? - - - - ancestors.reverse.each do |ancestor| - r += ancestor.slug.to_s - r+= "/" - end - r+= self.slug.to_s - end - - def set_permalink - - - if !skip_permalink - - self.permalink = self.generate_permalink - self.skip_permalink = true - self.skip_before_update = true - - - - self.save - - end - - end - - - - def validate_permalink - self.parent_id = nil if self.parent_id == 0 - errors.add(:parent_id, 'doit être différent de la page actuelle') if parent_id == id and id != nil - - if self.id - errors.add(:parent_id, 'attention la page parente à pour page parente celle-ci = boucle') if self.parent_id and self.id == Category.find(self.parent_id).parent_id - end - - conditions = ["parent_id "+(self.parent_id ? "=" : "IS")+" ? and slug = ? "+("and id != ?" if self.id).to_s,self.parent_id ,self.slug] - conditions << self.id if self.id - if Category.where(conditions).first - errors.add(:slug, 'est déjà utilisé') - - end - - - end - - - - - - - before_create do - if !position - top = Category.where( :parent_id => self.parent_id).order("position DESC") - if top - self.position = top.position.to_i + 1 - else - self.position = 1 - end - end - - end - - before_update do - - if self.parent_id_changed? - - Category.where(["position > ? and parent_id "+(self.changes['parent_id'][0] ? "=" : "IS")+" ?",self.position,self.changes['parent_id'][0]]).each do |portlet| - portlet.position = portlet.position - 1 - portlet.save! - end - - self.position = 1 - - Category.where(["parent_id "+(self.parent_id ? "=" : "IS")+" ?",self.parent_id]).each do |portlet| - portlet.position = portlet.position + 1 - - portlet.save! - end - - - - - - end - end - - before_destroy do - Category.where(["position > ? and parent_id "+(self.parent_id ? "=" : "IS")+" ?",self.position,self.parent_id]).each do |portlet| - portlet.position = portlet.position - 1 - portlet.skip_before_update = true - portlet.save! - end - - end - - - - - - -end diff --git a/app/models/cel_table.rb b/app/models/cel_table.rb deleted file mode 100644 index 0e48d87..0000000 --- a/app/models/cel_table.rb +++ /dev/null @@ -1,90 +0,0 @@ -# -*- encoding : utf-8 -*- -class CelTable < ActiveRecord::Base - belongs_to :table_row - #belongs_to :table_content possible - - has_one :block, :as => :blockable, :dependent => :destroy - - attr_accessor :skip_before_update - - - - - before_create do - if !position - self.position = 1 - end - if position - CelTable.where(["position >= ? and table_row_id = ?",self.position,self.table_row_id]).each do |cel_table| - cel_table.position = cel_table.position + 1 - cel_table.skip_before_update = true - cel_table.save! - end - end - - - - end - - after_create do - block = Block.create() - - self.block = block - end - - before_update do - if !skip_before_update - if self.position_changed? - #si la position est plus grande que l'ancienne - if self.changes['position'][1] > self.changes['position'][0] - CelTable.where(["position > ? and position <= ? and table_row_id = ?",self.changes['position'][0],self.changes['position'][1],self.table_row_id]).each do |cel_table| - cel_table.position = cel_table.position - 1 - cel_table.skip_before_update = true - cel_table.save! - end - end - #si la position est plus petite que l'ancienne. - if self.changes['position'][1] < self.changes['position'][0] - CelTable.where(["position >= ? and position < ? and table_row_id = ?",self.changes['position'][1],self.changes['position'][0],self.table_row_id]).each do |cel_table| - cel_table.position = cel_table.position + 1 - cel_table.skip_before_update = true - cel_table.save! - end - end - end - end - end - - before_destroy do - CelTable.where(["position > ? and table_row_id = ?",self.position,self.table_row_id]).each do |cel_table| - cel_table.position = cel_table.position - 1 - cel_table.skip_before_update = true - cel_table.save! - end - - end - - def dup - @new = CelTable.new(self.attributes) - @new.id = nil - @new.table_row_id = nil - @new.save - - @new.block.destroy - - - new_b = self.block.dup - - - - new_b.save - @new.block = new_b - @new.save - - @new - - end - - - -end diff --git a/app/models/cible_alias.rb b/app/models/cible_alias.rb deleted file mode 100644 index 1f03364..0000000 --- a/app/models/cible_alias.rb +++ /dev/null @@ -1,26 +0,0 @@ -# -*- encoding : utf-8 -*- -class CibleAlias < ActiveRecord::Base - include Rails.application.routes.url_helpers - belongs_to :menu_item - - - validates :menu_item_id, :presence => true - #has_one :link_content, :as => :cible - has_one :cibleable, :as => :cible - - def cible_name - "A changer" - end - - def cible_url - "A changer" - end - - def url - if self.menu_item - menu_item_path(:url => self.menu_item.permalink) - end - - end - -end diff --git a/app/models/cible_url.rb b/app/models/cible_url.rb deleted file mode 100644 index 84841ce..0000000 --- a/app/models/cible_url.rb +++ /dev/null @@ -1,11 +0,0 @@ -# -*- encoding : utf-8 -*- -class CibleUrl < ActiveRecord::Base - validates :url, :presence => true - def cible_name - "A changer" - end - - def cible_url - "A changer" - end -end diff --git a/app/models/comment.rb b/app/models/comment.rb deleted file mode 100644 index c6c8ad3..0000000 --- a/app/models/comment.rb +++ /dev/null @@ -1,16 +0,0 @@ -# -*- encoding : utf-8 -*- -class Comment < ActiveRecord::Base - - include ActsAsCommentable::Comment - - belongs_to :commentable, :polymorphic => true - - validates :pseudo, :presence => true - validates :comment, :presence => true - - scope :recents, where("enabled = ?",true ).order("created_at ASC") - - - - -end diff --git a/app/models/data_file.rb b/app/models/data_file.rb deleted file mode 100644 index 7f0f39f..0000000 --- a/app/models/data_file.rb +++ /dev/null @@ -1,44 +0,0 @@ -# -*- encoding : utf-8 -*- -class DataFile < ActiveRecord::Base - belongs_to :file_folder - - - mount_uploader :file, FileUploader - - before_save do - if !self.name? - self.name = File.basename(self.file.filename, File.extname(self.file.filename)).to_s if self.file? - end - - end - - before_create { generate_token() } - - - - def file_type - - - mime = `file --mime -br "#{self.file.path}"`.strip.split(';')[0] - mime - - end - - def abstract_file_name - self.name - end - - def abstract_file_name_slug - self.name.to_slug - end - - - - def generate_token() - begin - self[:token] = SecureRandom.urlsafe_base64 - end while DataFile.exists?(:token => self[:token]) - end - - -end diff --git a/app/models/download_content.rb b/app/models/download_content.rb deleted file mode 100644 index 6e09194..0000000 --- a/app/models/download_content.rb +++ /dev/null @@ -1,12 +0,0 @@ -# -*- encoding : utf-8 -*- -class DownloadContent < ActiveRecord::Base - belongs_to :data_file - - has_one :portlet, :as => :content, :dependent => :destroy - - STYLES = []#[["Medium","1"], ["Small","2"], ["Square","3"], ["Thumb","4"]] - - def self.picto - "cloud-download" - end -end diff --git a/app/models/dynamic_content.rb b/app/models/dynamic_content.rb deleted file mode 100644 index 1af6aa1..0000000 --- a/app/models/dynamic_content.rb +++ /dev/null @@ -1,13 +0,0 @@ -# -*- encoding : utf-8 -*- -class DynamicContent < ActiveRecord::Base - has_one :portlet, :as => :content, :dependent => :destroy - - belongs_to :item - - NAMES = {} - - def self.picto - "cog" - end - -end diff --git a/app/models/event.rb b/app/models/event.rb deleted file mode 100644 index 8969229..0000000 --- a/app/models/event.rb +++ /dev/null @@ -1,54 +0,0 @@ -class Event < ActiveRecord::Base - 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 - - 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 ) - } - scope :before, lambda { |date| - where("(start_at <= ?)", date ) - } - - - - - - -end diff --git a/app/models/external_link.rb b/app/models/external_link.rb deleted file mode 100644 index 833711c..0000000 --- a/app/models/external_link.rb +++ /dev/null @@ -1,16 +0,0 @@ -class ExternalLink < ActiveRecord::Base - validates :url, :presence => true - - - def cible_name - "Lien externe : #{self.url}" - end - - def cible_url - - self.url - - - end - -end diff --git a/app/models/file_folder.rb b/app/models/file_folder.rb deleted file mode 100644 index 9e9b11b..0000000 --- a/app/models/file_folder.rb +++ /dev/null @@ -1,3 +0,0 @@ -# -*- encoding : utf-8 -*- -class FileFolder < ActiveRecord::Base -end diff --git a/app/models/gallery_content.rb b/app/models/gallery_content.rb deleted file mode 100644 index 7825f54..0000000 --- a/app/models/gallery_content.rb +++ /dev/null @@ -1,49 +0,0 @@ -# -*- encoding : utf-8 -*- -class GalleryContent < ActiveRecord::Base - has_many :gallery_images, -> {order :position} - - has_one :portlet, :as => :content, :dependent => :destroy - - STYLES = [["Petites miniatures",1], ["Diaporama",2], ["Petits carrés",3], ["Réalisations",4]] - - def dup - @new = GalleryContent.new(self.attributes) - @new.id = nil - @new.save - - - self.gallery_images.each do |gallery_image| - - new_g = gallery_image.dup - new_g.gallery_content = @new - new_g.save - - end - - @new - - end - - def tags - to_r = [] - - self.gallery_images.each do |gallery_image| - gallery_image.tags.to_s.split(",").each do |tag| - to_r << tag.strip - end - - - - end - - to_r = to_r.sort.uniq - - return to_r - - end - - def self.picto - "" - end - -end diff --git a/app/models/gallery_image.rb b/app/models/gallery_image.rb deleted file mode 100644 index 72c5b02..0000000 --- a/app/models/gallery_image.rb +++ /dev/null @@ -1,17 +0,0 @@ -# -*- encoding : utf-8 -*- -class GalleryImage < ActiveRecord::Base - belongs_to :image_file - belongs_to :gallery - belongs_to :gallery_content - - validates :title, :presence => true - - - def tags_class - to_r = [] - self.tags.to_s.split(",").each do |tag| - to_r << tag.to_slug - end - to_r = to_r.join(" ") - end -end diff --git a/app/models/html_content.rb b/app/models/html_content.rb deleted file mode 100644 index 22ed6e7..0000000 --- a/app/models/html_content.rb +++ /dev/null @@ -1,11 +0,0 @@ -# -*- encoding : utf-8 -*- -class HtmlContent < ActiveRecord::Base - has_one :portlet, :as => :content, :dependent => :destroy - - STYLES = []#[["Style 1",1], ["Style 2",2]] - CONTENT_TYPES = ["haml","html"] - - def self.picto - "code" - end -end diff --git a/app/models/image_content.rb b/app/models/image_content.rb deleted file mode 100644 index e38df16..0000000 --- a/app/models/image_content.rb +++ /dev/null @@ -1,35 +0,0 @@ -# -*- encoding : utf-8 -*- -class ImageContent < ActiveRecord::Base - belongs_to :image_file - - has_one :portlet, :as => :content, :dependent => :destroy - STYLES = [["Grande","5"],["Taille moyenne","1"], ["Petite taille","2"], ["Petit carré","3"], ["Miniature","4"],["Orginale","6"]] - ALIGNS = [["centré","center"], ["gauche","left"],["droite","right"],["Aucun","none"]] - - belongs_to :cible, :polymorphic => true - accepts_nested_attributes_for :cible - - before_validation do - if !self.with_cible - - self.cible_type = nil - self.cible_id = nil - end - end - - - - def url - - if self.cible - cible.url - else - "" - end - - end - - def self.picto - "picture-o" - end -end diff --git a/app/models/image_file.rb b/app/models/image_file.rb deleted file mode 100644 index 6b816ca..0000000 --- a/app/models/image_file.rb +++ /dev/null @@ -1,43 +0,0 @@ -# -*- encoding : utf-8 -*- -class ImageFile < ActiveRecord::Base - mount_uploader :file, ImageUploader - - before_save do - if !self.name? - self.name = File.basename(self.file.filename, File.extname(self.file.filename)).to_s if self.file? - end - - end - - before_validation do - if self.tags? - self.tags = self.tags.gsub(/ +?,/, ',') - self.tags = self.tags.gsub(/, +?/, ',') - self.tags = self.tags.gsub(/,/, ', ') - end - - end - - after_save do - tags_to_save = self.tags.to_s.split(',') - tags_to_save.each do |t| - name = t.to_s.strip - - Tag.find_or_create_by_name(t.to_s.strip) if name.size > 0 - end - end - - - - def rotate(degrees=90) - versions = [self.file.path, self.file.large.path, self.file.large.medium.path, self.file.large.medium.small.path, self.file.large.medium.small.thumb.path, self.file.square.path] - - versions.each do |v| - image = Magick::ImageList.new(v) - image = image.rotate(degrees) - image.write(v) - end - self.updated_at = Time.now - self.save - end -end diff --git a/app/models/img_link_content.rb b/app/models/img_link_content.rb deleted file mode 100644 index f03f214..0000000 --- a/app/models/img_link_content.rb +++ /dev/null @@ -1,39 +0,0 @@ -# -*- encoding : utf-8 -*- -class ImgLinkContent < ActiveRecord::Base - belongs_to :image_file - - belongs_to :item - - belongs_to :cible, :polymorphic => true - - has_one :portlet, :as => :content, :dependent => :destroy - - validates :title, :presence => true - - accepts_nested_attributes_for :cible, :reject_if => lambda { |a| 1 == 1 } - - before_validation do - if !self.with_cible - - self.cible_type = nil - self.cible_id = nil - end - end - - - def url - - if self.cible - cible.url - else - "" - end - - end - - STYLES = [["Style 1",1], ["Style 2",2]] - - def self.picto - "cloud-download" - end -end diff --git a/app/models/link_content.rb b/app/models/link_content.rb deleted file mode 100644 index 6e5f7d4..0000000 --- a/app/models/link_content.rb +++ /dev/null @@ -1,45 +0,0 @@ -# -*- encoding : utf-8 -*- -class LinkContent < ActiveRecord::Base - belongs_to :item - - belongs_to :cible, :polymorphic => true - accepts_nested_attributes_for :cible - - CIBLE_TYPES = [ - {:slug => "MenuItems", :name => "Alias"}, - {:slug => "ExternalLink", :name => "Lien externe"}, - - ] - - def url - - if self.cible - cible.url - else - "" - end - - end - - has_one :portlet, :as => :content, :dependent => :destroy - - validates :name, :presence => true - - - - def url - - if self.cible - cible.url - else - "" - end - - end - - STYLES = [["Style 1",1], ["Style 2",2]] - - def self.picto - "chain" - end -end diff --git a/app/models/map_content.rb b/app/models/map_content.rb deleted file mode 100644 index 64e87cc..0000000 --- a/app/models/map_content.rb +++ /dev/null @@ -1,16 +0,0 @@ -# -*- encoding : utf-8 -*- -class MapContent < ActiveRecord::Base - - has_one :portlet, :as => :content, :dependent => :destroy - - validates :address, :presence => true - - VIEWS = [["Plan",1], ["Mixte",2], ["Satelite",3]] - - ZOOMS = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21] - - - def self.picto - "map-marker" - end -end diff --git a/app/models/menu.rb b/app/models/menu.rb deleted file mode 100644 index cc91171..0000000 --- a/app/models/menu.rb +++ /dev/null @@ -1,12 +0,0 @@ -# -*- encoding : utf-8 -*- -class Menu < ActiveRecord::Base - - has_many :menu_items - - - validates_presence_of :name, :max_levels - validates_uniqueness_of :name - - - -end diff --git a/app/models/menu_alias.rb b/app/models/menu_alias.rb deleted file mode 100644 index 2faa493..0000000 --- a/app/models/menu_alias.rb +++ /dev/null @@ -1,13 +0,0 @@ -# -*- encoding : utf-8 -*- -class MenuAlias < ActiveRecord::Base - belongs_to :menu_item_alias, :foreign_key => :menu_item_id, :class_name => "MenuItem" - - has_one :menu_item, :as => :menu_content - - validates :menu_item_id, :presence => true - - HUMAN_NAME = "Alias" - - - -end diff --git a/app/models/menu_folder.rb b/app/models/menu_folder.rb deleted file mode 100644 index 7a35f9d..0000000 --- a/app/models/menu_folder.rb +++ /dev/null @@ -1,8 +0,0 @@ -# -*- encoding : utf-8 -*- -class MenuFolder < ActiveRecord::Base - belongs_to :folder - - HUMAN_NAME = "Dossier" - - -end diff --git a/app/models/menu_item.rb b/app/models/menu_item.rb deleted file mode 100644 index 117efb4..0000000 --- a/app/models/menu_item.rb +++ /dev/null @@ -1,165 +0,0 @@ -# -*- encoding : utf-8 -*- -class MenuItem < ActiveRecord::Base - - ContentTypes =[ - {:slug => "Page", :name => "page"}, - {:slug => "MenuAlias", :name => "Alias"}, - {:slug => "MenuUrl", :name => "Lien externe"}, - {:slug => "Article", :name => "Lien vers un article"}, - ] - - - include Rails.application.routes.url_helpers - - belongs_to :menu_content, :polymorphic => true - belongs_to :menu - validates :name, :presence => true - validates :slug, :presence => true - - - attr_accessor :skip_before_update, :skip_permalink - - - accepts_nested_attributes_for :menu_content - - acts_as_tree - - def url - if menu_content - self.permalink - - else - "/404.html" - end - end - - def cible_url - menu_item_path(:url => self.permalink) - end - - before_validation do - self.slug = self.slug.to_slug - #self.validate_permalink - end - - before_save do - - end - - def generate_permalink - r = "" - - node, ancestors = self, [] - ancestors << node = MenuItem.find(node.parent_id) while node.parent_id? - - - - ancestors.reverse.each do |ancestor| - r += ancestor.slug.to_s - r+= "/" - end - r+= self.slug.to_s - end - - def set_permalink - - - if !skip_permalink - - self.permalink = self.generate_permalink - self.skip_permalink = true - self.skip_before_update = true - - - - self.save - - - # self.children.each do |child| - # child.save - # end - end - - end - - - - def validate_permalink - self.parent_id = nil if self.parent_id == 0 - errors.add(:parent_id, 'doit être différent de la page actuelle') if parent_id == id and id != nil - - if self.id - errors.add(:parent_id, 'attention la page parente à pour page parente celle-ci = boucle') if self.parent_id and self.id == MenuItem.find(self.parent_id).parent_id - end - - conditions = ["menu_id = ? and parent_id "+(self.parent_id ? "=" : "IS")+" ? and slug = ? "+("and id != ?" if self.id).to_s, self.menu_id,self.parent_id ,self.slug] - conditions << self.id if self.id - if MenuItem.where(conditions).first - errors.add(:slug, 'est déjà utilisé') - - end - - - end - - - def cible_name - "Elément de menu : #{self.name}" - end - - - - before_create do - if !position - top = MenuItem.where(:parent_id => self.parent_id, :menu_id => self.menu_id).order("position DESC").first - if top - self.position = top.position.to_i + 1 - else - self.position = 1 - end - end - - end - - before_update do - - if self.parent_id_changed? - - MenuItem.where(["menu_id = ? and position > ? and parent_id "+(self.changes['parent_id'][0] ? "=" : "IS")+" ?",self.menu_id,self.position,self.changes['parent_id'][0]]).each do |portlet| - portlet.position = portlet.position - 1 - portlet.save! - end - - self.position = 1 - - MenuItem.where(["menu_id = ? and parent_id "+(self.parent_id ? "=" : "IS")+" ?",self.menu_id,self.parent_id]).each do |portlet| - portlet.position = portlet.position + 1 - - portlet.save! - end - - - - - - end - end - - before_destroy do - MenuItem.where(["menu_id = ? and position > ? and parent_id "+(self.parent_id ? "=" : "IS")+" ?",self.menu_id,self.position,self.parent_id]).each do |portlet| - portlet.position = portlet.position - 1 - portlet.skip_before_update = true - portlet.save! - end - - end - - scope :archived, -> {where("archived = ?",true )} - scope :unarchived, -> {where(:archived => nil )} - - - - - - -end diff --git a/app/models/menu_url.rb b/app/models/menu_url.rb deleted file mode 100644 index b99b8e8..0000000 --- a/app/models/menu_url.rb +++ /dev/null @@ -1,9 +0,0 @@ -# -*- encoding : utf-8 -*- -class MenuUrl < ActiveRecord::Base - has_one :menu_item, :as => :menu_content - - validates :url, :presence => true - - HUMAN_NAME = "Lien externe" - -end diff --git a/app/models/page.rb b/app/models/page.rb deleted file mode 100644 index cea0a05..0000000 --- a/app/models/page.rb +++ /dev/null @@ -1,43 +0,0 @@ -# -*- encoding : utf-8 -*- -class Page < ActiveRecord::Base - - - has_one :menu_item, :as => :menu_content - - has_many :blocks, :as => :blockable, :dependent => :destroy - - - validates :title, :presence => true - - HUMAN_NAME = "Page" - - after_create :after_creation - - def after_creation - @block = Block.new(:block_name => "general") - @block.blockable = self - @block.save - - - end - - def dup - @new = Page.new(self.attributes) - @new.id = nil - @new.save - @new.blocks.destroy_all - - self.blocks.each do |block| - - new_b = block.dup - new_b.blockable = @new - new_b.save - - - end - - @new - - end - -end diff --git a/app/models/portlet.rb b/app/models/portlet.rb deleted file mode 100644 index 2b4b5a3..0000000 --- a/app/models/portlet.rb +++ /dev/null @@ -1,39 +0,0 @@ -# -*- encoding : utf-8 -*- -class Portlet < ActiveRecord::Base - belongs_to :block - belongs_to :content, :polymorphic => true - accepts_nested_attributes_for :content - - attr_accessor :skip_before_update - - - - - def dup - @portlet = Portlet.new(self.attributes) - @portlet.id = nil - @portlet.content = self.content.dup - - - @portlet.save - @portlet - end - - - - - before_create do - - end - - before_update do - - end - - before_destroy do - - - end - - -end diff --git a/app/models/table_content.rb b/app/models/table_content.rb deleted file mode 100644 index d6fbf46..0000000 --- a/app/models/table_content.rb +++ /dev/null @@ -1,51 +0,0 @@ -# -*- encoding : utf-8 -*- -class TableContent < ActiveRecord::Base - has_one :portlet, :as => :content, :dependent => :destroy - has_many :table_rows,->{ order :position} - has_many :cel_tables, :through => :table_rows - - STYLES = [["avec bordures",1],["sans bordures",2]] - - - after_create do - - self.nbr_rows.to_i.times do - table_row = TableRow.create(:position => 1, :table_content_id => self.id) - - self.nbr_cols.to_i.times do - cel_table = CelTable.new - table_row.cel_tables << cel_table - end - - - - end - - - end - - - - def dup - @new = TableContent.new(self.attributes) - @new.id = nil - @new.save - - @new.table_rows.destroy_all - self.table_rows.each do |table_row| - - new_tr = table_row.dup - new_tr.table_content = @new - new_tr.save - - end - - @new - - end - - def self.picto - "table" - end - -end diff --git a/app/models/table_row.rb b/app/models/table_row.rb deleted file mode 100644 index 00e65d5..0000000 --- a/app/models/table_row.rb +++ /dev/null @@ -1,82 +0,0 @@ -# -*- encoding : utf-8 -*- -class TableRow < ActiveRecord::Base - has_many :cel_tables, -> {order :position} - belongs_to :table_content - - attr_accessor :skip_before_update - - - - - before_create do - if !position - self.position = 1 - end - if position - TableRow.where(["position >= ? and table_content_id = ?",self.position,self.table_content_id]).each do |table_row| - table_row.position = table_row.position + 1 - table_row.skip_before_update = true - table_row.save! - end - end - end - - before_update do - if !skip_before_update - if self.position_changed? - #si la position est plus grande que l'ancienne - if self.changes['position'][1] > self.changes['position'][0] - TableRow.where(["position > ? and position <= ? and table_content_id = ?",self.changes['position'][0],self.changes['position'][1],self.table_content_id]).each do |table_row| - table_row.position = table_row.position - 1 - table_row.skip_before_update = true - table_row.save! - end - end - #si la position est plus petite que l'ancienne. - if self.changes['position'][1] < self.changes['position'][0] - TableRow.where(["position >= ? and position < ? and table_content_id = ?",self.changes['position'][1],self.changes['position'][0],self.table_content_id]).each do |table_row| - table_row.position = table_row.position + 1 - table_row.skip_before_update = true - table_row.save! - end - end - end - end - end - - before_destroy do - TableRow.where(["position > ? and table_content_id = ?",self.position,self.table_content_id]).each do |table_row| - table_row.position = table_row.position - 1 - table_row.skip_before_update = true - table_row.save! - end - - table = self.table_content - table_past_count = table.nbr_rows - table.nbr_rows = table_past_count - 1 - table.save - - end - - - def dup - @new = TableRow.new(self.attributes) - @new.id = nil - @new.table_content_id = nil - @new.save - - @new.cel_tables.destroy_all - self.cel_tables.each do |cel_table| - - new_td = cel_table.dup - new_td.table_row = @new - new_td.save - - end - - @new - - end - - -end diff --git a/app/models/tag.rb b/app/models/tag.rb deleted file mode 100644 index 27e90ba..0000000 --- a/app/models/tag.rb +++ /dev/null @@ -1,30 +0,0 @@ -class Tag < ActiveRecord::Base - - - before_validation do - self.slug = self.name.to_s.to_slug - - end - - - - has_many :tag_taggables - has_many :taggable, :through => :tag_taggables - - def recents_articles - articles_id = self.tag_taggables.where(:taggable_type => "Article").map {|t| t.taggable_id} - - Article.recents.where(:id => articles_id) - end - -validates :slug, :presence => true, :uniqueness => true - - def self.tag_list - r = [] - Tag.all.each do |tag| - r << tag.name - end - r - - end -end diff --git a/app/models/tag_taggable.rb b/app/models/tag_taggable.rb deleted file mode 100644 index 7faf178..0000000 --- a/app/models/tag_taggable.rb +++ /dev/null @@ -1,16 +0,0 @@ -class TagTaggable < ActiveRecord::Base - -belongs_to :tag -belongs_to :taggable, :polymorphic => true - - - - -before_destroy do - puts self.tag - if self.tag - Tag.find(self.tag_id).destroy if self.tag.tag_taggables.size == 1 - end -end - -end diff --git a/app/models/text_content.rb b/app/models/text_content.rb deleted file mode 100644 index 5c35d33..0000000 --- a/app/models/text_content.rb +++ /dev/null @@ -1,10 +0,0 @@ -# -*- encoding : utf-8 -*- -class TextContent < ActiveRecord::Base - has_one :portlet, :as => :content, :dependent => :destroy - - STYLES = []#[["Style 1",1], ["Style 2",2]] - - def self.picto - "align-justify" - end -end diff --git a/app/models/title_content.rb b/app/models/title_content.rb deleted file mode 100644 index b0e9149..0000000 --- a/app/models/title_content.rb +++ /dev/null @@ -1,11 +0,0 @@ -# -*- encoding : utf-8 -*- -class TitleContent < ActiveRecord::Base - has_one :portlet, :as => :content, :dependent => :destroy - validates :content, :presence => true - LEVELS = [1,2,3,4,5,6] - STYLES = []#[["Style 1",1], ["Style 2",2]] - - def self.picto - "header" - end -end