3 /***************************************************************************\
4 * SPIP, Systeme de publication pour l'internet *
6 * Copyright (c) 2001-2014 *
7 * Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
9 * Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
10 * Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. *
11 \***************************************************************************/
13 if (!defined('_ECRIRE_INC_VERSION')) return;
15 // Un script utile pour recalculer une URL symbolique des son changement
17 function action_redirect_dist()
19 $type = _request('type');
20 $id = intval(_request('id'));
22 if ($m = _request('var_mode')) {
23 $GLOBALS['var_urls'] = true; // forcer la mise a jour de l'url de cet objet !
26 if (preg_match('/^\w+$/', $type)) {
27 $h = generer_url_entite_absolue($id, $type, '', '', true);
29 else if ($page = _request('page')
30 AND preg_match('/^\w+$/', $page)) {
31 $h = generer_url_public($page, '', true);
36 $h = parametre_url($h, 'var_mode', $m);
39 AND defined('_PREVIEW_TOKEN')
41 AND autoriser('previsualiser')
42 AND $aut = $GLOBALS['visiteur_session']['id_auteur'] ) {
43 include_spip('inc/securiser_action');
44 $token = _action_auteur('previsualiser', $aut, null, 'alea_ephemere');
45 $h = parametre_url($h, 'var_previewtoken', "$aut*$token");
49 if (_request('status') AND _request('status')=='301')
53 redirige_par_entete(str_replace('&', '&', $h),'',$status);
55 redirige_par_entete('/','',$status);