<?php

if(!class_exists('avia_breadcrumb'))
{
  class avia_breadcrumb
  {
    var $options;
    
  function avia_breadcrumb(){
    
    $this->options = array(   //change this array if you want another output scheme
    'before' => '<span class="arrow"> ',
    'after' => ' </span>',
    'delimiter' => '&raquo;'
    );
    
    $markup = $this->options['before'].$this->options['delimiter'].$this->options['after'];
    
    global $post;
    echo '<p class="breadcrumb"><span class="breadcrumb_info">'.__('You are here:','avia_framework').'</span> <a href="'.get_bloginfo('url').'">';
      bloginfo('name');
      echo "</a>";
      if(!is_front_page()){echo $markup;}
          
      $output = $this->simple_breadcrumb_case($post);
      
      echo "<span class='current_crumb'>";
      if ( is_page() || is_single()) {
      the_title();
      }else{
      echo $output;
      }
      echo " </span></p>";
    }
    
    function simple_breadcrumb_case($der_post)
    {
      global $post; 
      
      $markup = $this->options['before'].$this->options['delimiter'].$this->options['after'];
      if (is_page()){
         if($der_post->post_parent) {
           $my_query = get_post($der_post->post_parent);       
           $this->simple_breadcrumb_case($my_query);
           $link = '<a href="';
           $link .= get_permalink($my_query->ID);
           $link .= '">';
           $link .= ''. get_the_title($my_query->ID) . '</a>'. $markup;
           echo $link;
          }  
      return;         
      } 
        
    if(is_single())
    {
      $category = get_the_category();
      if (is_attachment()){
      
        $my_query = get_post($der_post->post_parent);       
        $category = get_the_category($my_query->ID);
        
        if(isset($category[0]))
        {
          $ID = $category[0]->cat_ID;
          $parents = get_category_parents($ID, TRUE, $markup, FALSE );
          if(!is_object($parents)) echo $parents;
          previous_post_link("%link $markup");
        }
        
      }else{
        
        $postType = get_post_type();
                
        if($postType == 'post')
        {
          $ID = $category[0]->cat_ID;
          echo get_category_parents($ID, TRUE, $markup, FALSE );
        }
        else if($postType == 'portfolio')
        {
          $terms = get_the_term_list( $post->ID, 'portfolio_entries', '', '$$$', '' );
          $terms = explode('$$$',$terms);
          echo $terms[0].$markup;
  
        }
      }
    return;
    }
    
    if(is_tax()){
        $term = get_term_by( 'slug', get_query_var( 'term' ), get_query_var( 'taxonomy' ) );
        return $term->name;
  
    }
    
    
    if(is_category()){
      $category = get_the_category(); 
      $i = $category[0]->cat_ID;
      $parent = $category[0]-> category_parent;
      
      if($parent > 0 && $category[0]->cat_name == single_cat_title("", false)){
        echo get_category_parents($parent, TRUE, $markup, FALSE);
      }
    return single_cat_title('',FALSE);
    }
    
    
    if(is_author()){
      $curauth = get_userdatabylogin(get_query_var('author_name'));
      return "Author: ".$curauth->nickname;
    }
    if(is_tag()){ return "Tag: ".single_tag_title('',FALSE); }
    
    if(is_404()){ return _e("404 - Page not Found",'avia_framework'); }
    
    if(is_search()){ return _e("Search",'avia_framework');}  
    
    if(is_year()){ return get_the_time('Y'); }
    
    if(is_month()){
    $k_year = get_the_time('Y');
    echo "<a href='".get_year_link($k_year)."'>".$k_year."</a>".$markup;
    return get_the_time('F'); }
    
    if(is_day() || is_time()){ 
    $k_year = get_the_time('Y');
    $k_month = get_the_time('m');
    $k_month_display = get_the_time('F');
    echo "<a href='".get_year_link($k_year)."'>".$k_year."</a>".$markup;
    echo "<a href='".get_month_link($k_year, $k_month)."'>".$k_month_display."</a>".$markup;
  
    return get_the_time('jS (l)'); }
    
    }
  
  }
}

?>