Beispiel #1
0
function evaluer_fond ($fond, $contexte=array(), $connect=null) {

	$page = inclure_page($fond, $contexte, $connect);

	if (!$page) return $page;

	if ($page['process_ins'] != 'html') {
		// restaurer l'etat des notes
		if (isset($page['notes']) AND $page['notes']){
			$notes = charger_fonction("notes","inc");
			$notes($page['notes'],'restaurer_etat');
		}

		ob_start();
		xml_hack($page, true);
		eval('?' . '>' . $page['texte']);
		$page['texte'] = ob_get_contents();
		xml_hack($page);
		$page['process_ins'] = 'html';
		ob_end_clean();
	}
	page_base_href($page['texte']);

	// Lever un drapeau (global) si le fond utilise #SESSION
	// a destination de public/parametrer
	// pour remonter vers les inclusions appelantes
	// il faut bien lever ce drapeau apres avoir evalue le fond
	// pour ne pas faire descendre le flag vers les inclusions appelees
	if (isset($page['invalideurs'])
	AND isset($page['invalideurs']['session']))
		$GLOBALS['cache_utilise_session'] = $page['invalideurs']['session'];

	return $page;
}
Beispiel #2
0
	// Attention cette partie eval() doit imperativement
	// etre declenchee dans l'espace des globales (donc pas
	// dans une fonction).
	// inclure_balise_dynamique nous enverra peut-etre
	// quelques en-tetes de plus (voire qq envoyes directement)

		// restaurer l'etat des notes
		if (isset($page['notes']) AND $page['notes']){
			$notes = charger_fonction("notes","inc");
			$notes($page['notes'],'restaurer_etat');
		}
		ob_start(); 
		xml_hack($page, true);
		$page['process_ins'] = eval('?' . '>' . $page['texte']);
		$page['texte'] = ob_get_contents(); 
		xml_hack($page);
		ob_end_clean();
	}

	if ($var_preview
	AND $var_preview = charger_fonction('previsualisation', 'public', true)) {
		$page = $var_preview($page);
		// Cette variable a ete calculee trop tot
		// on laisse son calcul ci-dessus pour compatibilite
		// bien que l'enlever a l'air sans incidence
		$html = preg_match(',^\s*text/html,',$page['entetes']['Content-Type']);
	}
	envoyer_entetes($page['entetes']);

	// en cas d'erreur lors du eval,
	// la memoriser dans le tableau des erreurs