# -*- encoding : utf-8 -*-
module MenuItemsHelper
  
  
  def menu_item_link_by_slug(permalink, active = nil, icon = false)
    menu_id = 2

    menu_item_lang = @lang.menu_item_langs.joins(:menu_item).where(:menu_items => {:menu_id => menu_id}).find_by_permalink(permalink)
    menu_item = menu_item_lang.menu_item if menu_item_lang
    menu_item_link_force(menu_item, active, icon) if menu_item
  end
  
  
  def menu_item_link(menu_item, active = nil, icon = false )
  
    menu_item_lang = menu_item.menu_item_langs.find_by_lang_site_id(@lang.id)
    if active == nil
      if @menu_item and (@menu_item == menu_item or @menu_item.ancestors.include?(menu_item))
        active = true 
      else
        active = false
      end
    end
    if icon
      if active
        name = (image_tag(menu_item.icon_b_image_file.file.large.medium.small.thumb.url) if menu_item.icon_b_image_file).to_s
      else
        if menu_item.icon_image_file
        
          name = (image_tag(menu_item.icon_image_file.file.large.medium.small.thumb.url, :onmouseover => '$(this).attr("src", "'+((menu_item.icon_b_image_file.file.large.medium.small.thumb.url) if menu_item.icon_b_image_file).to_s+'");' , :onmouseout => '$(this).attr("src", "'+((menu_item.icon_image_file.file.large.medium.small.thumb.url) if menu_item.icon_image_file).to_s+'");')).to_s
        else
          name = ""
        end
      end
      
    else
      name = menu_item_lang.name
    end
    
    if menu_item_lang.enabled == true and menu_item_lang.visible == true
      link_to name, @one_voice_host.to_s+menu_item_path(:url => menu_item_lang.url, :lang => @lang.slug), :class => ("active" if active)
    end
  end
  
  def menu_item_link_force(menu_item, active = nil, icon = false )
  
    menu_item_lang = menu_item.menu_item_langs.find_by_lang_site_id(@lang.id)
    if active == nil
      if @menu_item and (@menu_item == menu_item or @menu_item.ancestors.include?(menu_item))
        active = true 
      else
        active = false
      end
    end
    if icon
      if active
        name = (image_tag(menu_item.icon_b_image_file.file.large.medium.small.thumb.url) if menu_item.icon_b_image_file).to_s
      else
        name = (image_tag(menu_item.icon_image_file.file.large.medium.small.thumb.url, :onmouseover => '$(this).attr("src", "'+((menu_item.icon_b_image_file.file.large.medium.small.thumb.url) if menu_item.icon_b_image_file).to_s+'");' , :onmouseout => '$(this).attr("src", "'+((menu_item.icon_image_file.file.large.medium.small.thumb.url) if menu_item.icon_image_file).to_s+'");') if menu_item.icon_image_file).to_s
      end
      
    else
      name = menu_item_lang.name
    end
    if menu_item_lang.enabled == true
      link_to raw(name), menu_item_path(:url => menu_item_lang.url, :lang => @lang.slug), :class => ("active" if active)
    end
  end
  
  
  def menu_item_url(menu_item, sym = false)
  
    menu_item_lang = menu_item.menu_item_langs.find_by_lang_site_id(@lang.id)
    
    @menu_item and (@menu_item == menu_item or @menu_item.ancestors.include?(menu_item)) ? active = true : active = false
    
    name = menu_item_lang.name+("" if sym and @menu_item and @menu_item == menu_item ).to_s
    if menu_item_lang.enabled == true and menu_item_lang.visible == true
      menu_item_path(:url => menu_item_lang.url, :lang => @lang.slug)
    end
  end
  
  def menu_item_valid_to_show(menu_item, lang, time=Time.now)
    if menu_item.menu_item_langs.find_by_lang_site_id(@lang.id).visible and menu_item.menu_item_langs.find_by_lang_site_id(@lang.id).enabled
      
      true
      
    else
      false
    end
    
  end


  def article_valid_to_show(article, lang, time=Time.now)
    if article.lang_articles.find_by_lang_site_id(@lang.id).enabled and ( !article.published_at?  or article.published_at <= time )
      
       
      true
      
    else
      false
    end
    
  end

end