Esempio n. 1
0
function aff_notice($id, $nocart = 0, $gen_header = 1, $use_cache = 0, $mode_aff_notice = "", $depliable = "", $nodocnum = 0, $enrichment = 1, $recherche_ajax_mode = 0, $show_map = 1)
{
    global $liens_opac;
    global $opac_notices_format;
    global $opac_notices_depliable;
    global $opac_cart_allow;
    global $opac_cart_only_for_subscriber;
    global $opac_notice_affichage_class;
    global $opac_notice_enrichment;
    global $opac_recherche_ajax_mode;
    global $opac_notices_format_onglets;
    global $lvl, $search_type_asked;
    global $record_css_already_included;
    // Pour pas inclure la css 10 fois
    global $recordmodes;
    if ($opac_cart_allow && !$opac_cart_only_for_subscriber || $opac_cart_allow && $_SESSION["user_code"]) {
        $cart = 1;
    } else {
        $cart = 0;
    }
    if ($nocart) {
        $cart = 0;
    }
    $id += 0;
    //Recherche des fonctions d'affichage
    $entete = '';
    if ($recordmodes && $id == -1) {
        $entete .= $recordmodes->show_mode_selector();
    }
    $f = get_aff_function();
    if ($f) {
        return $entete . $f($id, $cart, $gen_header, $use_cache, $mode_aff_notice, $depliable, $nodocnum, $enrichment, $recherche_ajax_mode, $show_map, $recordmodes);
    }
    if ($id > 0) {
        if ($mode_aff_notice !== "") {
            $type_aff = $mode_aff_notice;
        } else {
            $type_aff = $opac_notices_format;
        }
        if ($depliable === "") {
            $depliable = $opac_notices_depliable;
        }
        if ($type_aff != AFF_ETA_NOTICES_TEMPLATE_DJANGO) {
            $header_only = 0;
            if ($recherche_ajax_mode && $opac_recherche_ajax_mode) {
                //Si ajax, on ne charge pas tout
                $header_only = 1;
            }
            $current = new $opac_notice_affichage_class($id, $liens_opac, $cart, 0, $header_only, !$gen_header, $show_map);
            if ($nodocnum) {
                $current->docnum_allowed = 0;
            }
            if ($gen_header) {
                $current->do_header();
            }
            if (!$current->visu_notice) {
                return "";
            }
        }
        if ($opac_recherche_ajax_mode && $recherche_ajax_mode && $depliable && $type_aff != AFF_ETA_NOTICES_REDUIT && $type_aff != AFF_ETA_NOTICES_TEMPLATE_DJANGO) {
            $current->genere_ajax($type_aff, 0);
            $retour_aff .= $current->result;
        } else {
            switch ($type_aff) {
                case AFF_ETA_NOTICES_REDUIT:
                    $retour_aff .= $current->notice_header_with_link . "<br />";
                    break;
                case AFF_ETA_NOTICES_ISBD:
                    $current->do_isbd();
                    $current->genere_simple($depliable, 'ISBD');
                    $retour_aff .= $current->result;
                    break;
                case AFF_ETA_NOTICES_PUBLIC:
                    $current->do_public();
                    $current->genere_simple($depliable, 'PUBLIC');
                    $retour_aff .= $current->result;
                    break;
                case AFF_ETA_NOTICES_BOTH:
                    $current->do_isbd();
                    $current->do_public();
                    $current->genere_double($depliable, 'PUBLIC');
                    $retour_aff .= $current->result;
                    break;
                case AFF_ETA_NOTICES_BOTH_ISBD_FIRST:
                    $current->do_isbd();
                    $current->do_public();
                    $current->genere_double($depliable, 'ISBD');
                    $retour_aff .= $current->result;
                    break;
                case AFF_ETA_NOTICES_TEMPLATE_DJANGO:
                    global $include_path;
                    global $opac_notices_format_django_directory;
                    if (!$opac_notices_format_django_directory) {
                        $opac_notices_format_django_directory = "common";
                    }
                    if (!$record_css_already_included) {
                        if (file_exists($include_path . "/templates/record/" . $opac_notices_format_django_directory . "/styles/style.css")) {
                            $retour_aff .= "<link type='text/css' href='./includes/templates/record/" . $opac_notices_format_django_directory . "/styles/style.css' rel='stylesheet'></link>";
                        }
                        $record_css_already_included = true;
                    }
                    switch ($lvl) {
                        case 'notice_display':
                        case 'bulletin_display':
                        case 'resa':
                            $retour_aff .= record_display::get_display_extended($id);
                            break;
                        case 'more_result':
                        default:
                            if ($search_type_asked == 'perio_a2z') {
                                $retour_aff .= record_display::get_display_extended($id);
                            } else {
                                $retour_aff .= record_display::get_display_in_result($id);
                            }
                            break;
                    }
                    break;
                default:
                    $current->do_isbd();
                    $current->do_public();
                    $current->genere_double($depliable, 'autre');
                    $retour_aff .= $current->result;
                    $flag_no_onglet_perso = 1;
                    break;
            }
            /*			
            			$onglets_title="";
            			$onglets_content="";
            			if($opac_notices_format_onglets){
            				$onglets=explode(",", $opac_notices_format_onglets);
            				foreach($onglets as $id_tpl){
            					$notice_onglet=new notice_onglet($id_tpl);
            					$onglets_title.="
            					<li id='onglet_tpl_".$id_tpl."_".$id."'  class='isbd_public_inactive'>
            						<a href='#' title=\"".$notice_onglet->get_onglet_header()."\" onclick=\"show_what('tpl_".$id_tpl."_', '$id'); return false;\">".$notice_onglet->get_onglet_header()."</a>
            					</li>";
            		
            					$onglets_content.="
            					<div id='div_tpl_".$id_tpl."_".$id."' class='onglet_tpl' style='display:none;'>
            					".$notice_onglet->get_onglet_content($id)."
            					</div>";
            				}
            			}	
            			$retour_aff=str_replace('<!-- onglets_perso_list -->', $onglets_title, $retour_aff);
            			$retour_aff=str_replace('<!-- onglets_perso_content -->', $onglets_content, $retour_aff);
            */
            if (!$flag_no_onglet_perso) {
                $onglet_perso = new notice_onglets();
                $retour_aff = $onglet_perso->insert_onglets($id, $retour_aff);
            }
            if (!$depliable && $opac_notice_enrichment && $enrichment == 1) {
                $retour_aff .= "<script type='text/javascript'>getEnrichment('{$id}');</script>";
            }
        }
    }
    return $entete . $retour_aff;
}
Esempio n. 2
0
function aff_notice($id, $nocart = 0, $gen_header = 1, $use_cache = 0, $mode_aff_notice = "", $depliable = "", $nodocnum = 0, $enrichment = 1, $recherche_ajax_mode = 0)
{
    global $liens_opac;
    global $opac_notices_format;
    global $opac_notices_depliable;
    global $opac_cart_allow;
    global $opac_cart_only_for_subscriber;
    global $opac_notice_affichage_class;
    global $opac_notice_enrichment;
    global $opac_recherche_ajax_mode;
    global $opac_notices_format_onglets;
    if ($opac_cart_allow && !$opac_cart_only_for_subscriber || $opac_cart_allow && $_SESSION["user_code"]) {
        $cart = 1;
    } else {
        $cart = 0;
    }
    if ($nocart) {
        $cart = 0;
    }
    $id += 0;
    //Recherche des fonctions d'affichage
    $f = get_aff_function();
    if ($f) {
        return $f($id, $cart);
    }
    if ($id > 0) {
        $header_only = 0;
        if ($recherche_ajax_mode && $opac_recherche_ajax_mode) {
            //Si ajax, on ne charge pas tout
            $header_only = 1;
        }
        $current = new $opac_notice_affichage_class($id, $liens_opac, $cart, 0, $header_only, !$gen_header);
        if ($nodocnum) {
            $current->docnum_allowed = 0;
        }
        if ($depliable === "") {
            $depliable = $opac_notices_depliable;
        }
        if ($gen_header) {
            $current->do_header();
        }
        if ($mode_aff_notice !== "") {
            $type_aff = $mode_aff_notice;
        } else {
            $type_aff = $opac_notices_format;
        }
        if (!$current->visu_notice) {
            return "";
        }
        if ($opac_recherche_ajax_mode && $recherche_ajax_mode && $depliable && $type_aff != AFF_ETA_NOTICES_REDUIT) {
            $current->genere_ajax($type_aff, 0);
            $retour_aff .= $current->result;
        } else {
            switch ($type_aff) {
                case AFF_ETA_NOTICES_REDUIT:
                    $retour_aff .= $current->notice_header_with_link . "<br />";
                    break;
                case AFF_ETA_NOTICES_ISBD:
                    $current->do_isbd();
                    $current->genere_simple($depliable, 'ISBD');
                    $retour_aff .= $current->result;
                    break;
                case AFF_ETA_NOTICES_PUBLIC:
                    $current->do_public();
                    $current->genere_simple($depliable, 'PUBLIC');
                    $retour_aff .= $current->result;
                    break;
                case AFF_ETA_NOTICES_BOTH:
                    $current->do_isbd();
                    $current->do_public();
                    $current->genere_double($depliable, 'PUBLIC');
                    $retour_aff .= $current->result;
                    break;
                case AFF_ETA_NOTICES_BOTH_ISBD_FIRST:
                    $current->do_isbd();
                    $current->do_public();
                    $current->genere_double($depliable, 'ISBD');
                    $retour_aff .= $current->result;
                    break;
                default:
                    $current->do_isbd();
                    $current->do_public();
                    $current->genere_double($depliable, 'autre');
                    $retour_aff .= $current->result;
                    $flag_no_onglet_perso = 1;
                    break;
            }
            /*			
            			$onglets_title="";
            			$onglets_content="";
            			if($opac_notices_format_onglets){
            				$onglets=explode(",", $opac_notices_format_onglets);
            				foreach($onglets as $id_tpl){
            					$notice_onglet=new notice_onglet($id_tpl);
            					$onglets_title.="
            					<li id='onglet_tpl_".$id_tpl."_".$id."'  class='isbd_public_inactive'>
            						<a href='#' title=\"".$notice_onglet->get_onglet_header()."\" onclick=\"show_what('tpl_".$id_tpl."_', '$id'); return false;\">".$notice_onglet->get_onglet_header()."</a>
            					</li>";
            		
            					$onglets_content.="
            					<div id='div_tpl_".$id_tpl."_".$id."' class='onglet_tpl' style='display:none;'>
            					".$notice_onglet->get_onglet_content($id)."
            					</div>";
            				}
            			}	
            			$retour_aff=str_replace('<!-- onglets_perso_list -->', $onglets_title, $retour_aff);
            			$retour_aff=str_replace('<!-- onglets_perso_content -->', $onglets_content, $retour_aff);
            */
            if (!$flag_no_onglet_perso) {
                $onglet_perso = new notice_onglets();
                $retour_aff = $onglet_perso->insert_onglets($id, $retour_aff);
            }
            if (!$depliable && $opac_notice_enrichment && $enrichment == 1) {
                $retour_aff .= "<script type='text/javascript'>getEnrichment('{$id}');</script>";
            }
        }
    }
    return $retour_aff;
}