PEEL Shopping
Open source ecommerce : PEEL Shopping
haut.php
Go to the documentation of this file.
1 <?php
2 // This file should be in UTF8 without BOM - Accents examples: éèê
3 // +----------------------------------------------------------------------+
4 // | Copyright (c) 2004-2015 Advisto SAS, service PEEL - contact@peel.fr |
5 // +----------------------------------------------------------------------+
6 // | This file is part of PEEL Shopping 8.0.0, which is subject to an |
7 // | opensource GPL license: you are allowed to customize the code |
8 // | for your own needs, but must keep your changes under GPL |
9 // | More information: https://www.peel.fr/lire/licence-gpl-70.html |
10 // +----------------------------------------------------------------------+
11 // | Author: Advisto SAS, RCS 479 205 452, France, https://www.peel.fr/ |
12 // +----------------------------------------------------------------------+
13 // $Id: haut.php 46982 2015-09-21 15:34:38Z sdelaporte $
14 if (!defined('IN_PEEL')) {
15  die();
16 }
17 if (empty($GLOBALS['page_name']) && function_exists('get_current_page')) {
18  $GLOBALS['page_name'] = get_current_page();
19 }
20 if (empty($GLOBALS['page_columns_count'])) {
21  $GLOBALS['page_columns_count'] = vn($GLOBALS['site_parameters']['site_general_columns_count'], 3);
22 }
23 
24 if(!empty($output) && (String::strpos($output, 'vimeo.') !== false || String::strpos($output, 'youtube.') !== false || String::strpos($output, 'youtube-nocookie.') !== false || String::strpos($output, 'kickstarter.') !== false)) {
25  // Gestion responsive des vidéos
26  $GLOBALS['js_files'][] = get_url('/lib/js/jquery.fitvid.js');
27  $GLOBALS['js_ready_content_array'][] = '
28  $("#main_content").fitVids();
29 ';
30 }
31 
32 output_general_http_header(null, (est_identifie()?null:vb($GLOBALS['site_parameters']['page_cache_if_not_loggued_in_seconds'])));
33 
34 $tpl = $GLOBALS['tplEngine']->createTemplate('haut.tpl');
35 $tpl->assign('page_columns_count', $GLOBALS['page_columns_count']);
36 $tpl->assign('disable_header_login', !empty($GLOBALS['site_parameters']['disable_header_login']));
37 // header-html est passé par référence à getHTMLHead pour être rempli
38 $tpl->assign('lang', $_SESSION['session_langue']);
39 $tpl->assign('page_name', vb($GLOBALS['page_name']));
40 if (!defined('IN_PEEL_ADMIN') && vb($GLOBALS['site_parameters']['site_suspended'])) {
41  $tpl->assign('update_msg', $GLOBALS['STR_UPDATE_WEBSITE']);
42 }
43 if (check_if_module_active('facebook_connect')) {
44  if (empty($_SESSION['session_utilisateur']['email']) && empty($_SESSION['disable_facebook_autologin'])) {
45  $tpl->assign('auto_login_with_facebook', auto_login_with_facebook(true));
46  } elseif (!empty($_SESSION['session_utilisateur']['email'])) {
47  $tpl->assign('logout_with_facebook', logout_with_facebook(true));
48  }
49 }
50 
51 if (check_if_module_active('welcome_ad')) {
52  load_welcome_ad();
53  $tpl->assign('welcome_ad_div', get_welcome_ad_div());
54 }
55 if (check_if_module_active('cart_popup') && !empty($_SESSION['session_show_caddie_popup'])) {
56  if (defined('IN_CATALOGUE_PRODUIT') && !empty($_GET['id'])) {
57  $product_added_id = $_GET['id'];
58  }
59  $tpl->assign('cart_popup_div', get_cart_popup_div(vb($product_added_id)));
60 }
61 $tpl->assign('flags', affiche_flags(true, null, false, $GLOBALS['lang_codes'], false, 26));
62 
63 if (check_if_module_active('devises')) {
64  $tpl->assign('module_devise', affiche_module_devise(true));
65 }
66 if (!empty($GLOBALS['site_parameters']['logo_' . $_SESSION['session_langue']]) && $GLOBALS['site_parameters']['on_logo'] == 1) {
67  $this_logo = $GLOBALS['site_parameters']['logo_' . $_SESSION['session_langue']];
68  if(String::strpos($this_logo, '//') === false && String::substr($this_logo, 0, 1) == '/') {
69  // Chemin absolu
70  $this_logo = $GLOBALS['wwwroot'] . $this_logo;
71  }
72  if (!empty($GLOBALS['site_parameters']['main_site_id'])) {
73  // Il y a plusieurs site et un site principal est défini. L'url du logo dans le header doit pointer vers le site principal.
74  $logo_href = get_site_wwwroot($GLOBALS['site_parameters']['main_site_id']);
75  } else {
76  // Lien vers la home défini pour la configuration du site.
77  $logo_href = $GLOBALS['wwwroot'];
78  }
79  $tpl->assign('logo_link',
80  array('href' => $logo_href . '/',
81  'src' => $this_logo,
82  'alt' => $GLOBALS['site']));
83 }
84 
85 $tpl->assign('repertoire_images', $GLOBALS['repertoire_images']);
86 $tpl->assign('MODULES_HEADER', get_modules('header', true, null, vn($_GET['catid'])));
87 if(empty($_COOKIE['page_warning_close']) || $_COOKIE['page_warning_close']!='closed') {
88  $tpl->assign('CONTENT_HEADER', affiche_contenu_html('header', true));
89 } else {
90  $tpl->assign('CONTENT_HEADER', null);
91 }
92 $tpl->assign('CONTENT_SCROLLING', affiche_contenu_html('scrolling', true));
93 
94 if(empty($GLOBALS['site_parameters']['skip_carrousel_categorie']) && check_if_module_active('carrousel')) {
95  $tpl->assign('CARROUSEL_CATEGORIE', Carrousel::display('categorie', true));
96 }
97 if ($GLOBALS['page_columns_count'] > 1) {
98  $modules_left = '';
99  if((defined('IN_CATALOGUE_ANNONCE') || defined('IN_CATALOGUE') || defined('IN_CATALOGUE_ANNONCE_DETAILS')) && check_if_module_active('annonces')) {
100  $modules_left .= get_modules('left_annonce', true, null, vn($_GET['catid']));
101  }
102  $modules_left .= get_modules('above_middle', true, null, vn($_GET['catid']));
103  $tpl->assign('MODULES_LEFT', $modules_left);
104 }
105 if (check_if_module_active('vitrine') && !empty($GLOBALS['vitrine_and_user_infos'])) {
106  if(!empty($GLOBALS['vitrine_and_user_infos']['id_vitrine'])) {
107  $id_vitrine = $GLOBALS['vitrine_and_user_infos']['id_vitrine'];
108  } else {
109  $id_vitrine = $GLOBALS['vitrine_and_user_infos']['id'];
110  }
111  $tpl->assign('user_information_boutique', display_user_information_boutique($id_vitrine));
112 }
113 
114 if (check_if_module_active('ariane_panier') && (defined('IN_CADDIE') || defined('IN_STEP1') || defined('IN_STEP2') || defined('IN_STEP3'))) {
115  $tpl->assign('ariane_panier', ariane_panier());
116 }
117 $tpl->assign('MODULES_TOP_MIDDLE', get_modules('top_middle', true, null, vn($_GET['catid'])));
118 $tpl->assign('output_create_or_update_order', vb($GLOBALS['output_create_or_update_order']));
119 $tpl->assign('notification_output', implode('', $GLOBALS['notification_output_array']));
120 if(!empty($_SERVER['HTTP_USER_AGENT']) && (strstr($_SERVER['HTTP_USER_AGENT'],'iPhone') || strstr($_SERVER['HTTP_USER_AGENT'],'iPod') || strstr($_SERVER['HTTP_USER_AGENT'],'iPad'))) {
121  // Site vu sur ipad, ipod ou iphone alors qu'une application Appstore existe => on met un lien vers elle en début de page
122  if(!empty($GLOBALS['site_parameters']['appstore_link_'.$_SESSION['session_langue']])){
123  $appstore_link = $GLOBALS['site_parameters']['appstore_link_'.$_SESSION['session_langue']];
124  }else {
125  $appstore_link = vb($GLOBALS['site_parameters']['appstore_link']);
126  }
127  if(!empty($appstore_link)) {
128  $tpl->assign('appstore_link', $appstore_link);
129  if(in_array($_SESSION['session_langue'], array('fr', 'en'))){
130  $appstore_image = get_url('/images/download_appstore_'.$_SESSION['session_langue'].'.png');
131  }else {
132  $appstore_image = get_url('/images/download_appstore_en.png');
133  }
134  $tpl->assign('appstore_image', $appstore_image);
135  }
136 }
137 $tpl->assign('est_identifie', est_identifie());
138 $tpl->assign('show_open_account', est_identifie() && !empty($GLOBALS['site_parameters']['show_open_account']));
139 if(!empty($_SESSION['session_utilisateur']['email'])) {
140  $tpl->assign('session_utilisateur_email', String::str_shorten($_SESSION['session_utilisateur']['email'], vb($GLOBALS['site_parameters']['login_in_header_length'], 20)));
141 }
142 if(!empty($_SESSION['session_utilisateur']['logo'])) {
143  $tpl->assign('user_logo_src', $GLOBALS['repertoire_upload'] . '/thumbs/' .thumbs($_SESSION['session_utilisateur']['logo'], 40, 28, 'fit'));
144 }
145 $tpl->assign('account_dropdown', affiche_compte(true, 'popup'));
146 $tpl->assign('STR_LOGIN', $GLOBALS['STR_LOGIN']);
147 $tpl->assign('account_register_url', get_account_register_url(false, false));
148 $tpl->assign('STR_OPEN_ACCOUNT', $GLOBALS['STR_OPEN_ACCOUNT']);
149 
150 if (check_if_module_active('messaging')) {
151  $tpl->assign('unread_messages_info', get_unread_messages_info());
152 }
153 if (!empty($GLOBALS['allow_fineuploader_on_page']) && vb($GLOBALS['site_parameters']['used_uploader']) == 'fineuploader') {
154  // Il faut explicitement autoriser fineuploader sur une page en front-office
156 }
157 
158 // *** LAISSER A LA FIN ***
159 // A exécuter en dernier dans ce fichier car prend tous les javascripts
160 // category_introduction_text est passé par référence à getHTMLHead pour être rempli
161 $tpl->assign('HTML_HEAD', getHTMLHead(vb($GLOBALS['page_name']), $GLOBALS['category_introduction_text']));
162 $tpl->assign('category_introduction_text', $GLOBALS['category_introduction_text']);
163 $tpl->assign('header_custom_html', vb($GLOBALS['site_parameters']['header_custom_html']));
164 $tpl->assign('header_custom_baseline_html', vb($GLOBALS['site_parameters']['header_custom_baseline_html']));
165 
166 if ($GLOBALS['page_columns_count'] == 3) {
167  $GLOBALS['modules_right'] = '';
168  if(check_if_module_active('annonces')) {
169  $GLOBALS['modules_right'] .= get_modules('right_annonce', true, null, vn($_GET['catid']));
170  }
171  $GLOBALS['modules_right'] .= get_modules('right', true, null, vn($_GET['catid']));
172 }
173 
174 echo $tpl->fetch();
175 
static strpos($haystack, $needle, $offset=0)
Returns the numeric position of the first occurrence of needle in the haystack string.
Definition: String.php:54
output_general_http_header($page_encoding=null, $cache_duration_in_seconds=null)
Envoie les headers avant l'envoi du HTML.
Definition: fonctions.php:1528
affiche_module_devise($return_mode=false)
affiche_module_devise()
Definition: fonctions.php:90
if(!defined('IN_PEEL')) thumbs($source_filename, $width, $height, $method= 'fit', $source_folder=null, $thumb_folder=null, $thumb_rename=true, $return_absolute_path=false)
Charge l'image dont le nom est $source_filename dans le répertoire d'upload, et crée une vignette pou...
Definition: fonctions.php:33
get_modules($location, $return_mode=false, $technical_code=null, $id_categorie=null, $this_annonce_number=0, $return_array_with_raw_information=false, $criterias=null)
Récupère le contenu HTML des modules en fonction des contraintes données en paramètre Il est possible...
Definition: fonctions.php:543
if(!defined('IN_PEEL')) est_identifie()
Retourne true si l'utilisateur est identifié
Definition: user.php:23
vb(&$var, $default=null)
Variable blanche if $var n'est pas défini, retourne $default, sinon retourne $var.
Definition: format.php:97
if(strlen($date2)== '10') if($type== 'users-by-age'&&a_priv('admin_users', true)) elseif($type== 'forums-count'&&a_priv('admin_content', true)) elseif($type== 'forums-categories'&&a_priv('admin_content', true)) elseif($type== 'users-count'&&a_priv('admin_users', true)) elseif($type== 'product-categories'&&a_priv('admin_products', true)) elseif($type== 'users-by-sex'&&a_priv('admin_users', true)) elseif($type== 'users-by-country'&&a_priv('admin_users', true)) elseif($type== 'sales'&&a_priv('admin_sales', true))
Definition: chart-data.php:160
if(!defined('IN_PEEL')) ariane_panier()
ariane_panier()
Definition: fonctions.php:23
$tpl
Definition: haut.php:34
$GLOBALS['page_columns_count']
get_site_wwwroot($site_id, $lang=null)
Renvoie l'URL d'un site donné
Definition: fonctions.php:4873
vn(&$var, $default=0)
Variable nulle if $var n'est pas défini, retourne $default, sinon retourne $var.
Definition: format.php:110
static substr($string, $start, $length=null)
Returns the portion of string specified by the start and length parameters.
Definition: String.php:112
check_if_module_active($module_name, $specific_file_name=null)
Renvoie si un module est présent et activé ou non - Peut être appelé avant ou après le chargement d'u...
static str_shorten($string, $length_limit, $middle_separator= '', $ending_if_no_middle_separator= '...', $ideal_length_with_clean_cut_if_possible=null)
Raccourcit une chaine de caractère en insérant au milieu ou à la fin un séparateur.
Definition: String.php:233
init_fineuploader_interface()
Définit les variables javascript nécessaires pour initialiser fineuploader.
Definition: fonctions.php:5388
if(defined('IN_PEEL_ADMIN')||IN_INSTALLATION) $_SESSION['session_langue']

This documentation for Open ecommerce PEEL Shopping and PEEL.fr has been generated by Doxygen on Thu Oct 15 2015 14:41:25 - Peel ecommerce is a product of Agence web Advisto SAS. All rights reserved.