source: spip-zone/_plugins_/snippets/action/snippet_exporte.php @ 53451

Last change on this file since 53451 was 53451, checked in by yffic@…, 8 years ago

if (!defined("_ECRIRE_INC_VERSION")) return; sur tout fichier PHP pour sécurité future principalement

File size: 1.4 KB
Line 
1<?php
2/*
3 * snippets
4 * Gestion d'import/export XML de contenu
5 *
6 * Auteurs :
7 * Cedric Morin
8 * © 2006 - Distribue sous licence GNU/GPL
9 *
10 */
11if (!defined("_ECRIRE_INC_VERSION")) return;
12
13include_spip('inc/snippets');
14
15function action_snippet_exporte(){
16        global $auteur_session;
17        $arg = _request('arg');
18        $args = explode(":",$arg);
19        $hash = _request('hash');
20        $id_auteur = $auteur_session['id_auteur'];
21        $redirect = _request('redirect');
22        if ($redirect==NULL) $redirect="";
23        include_spip("inc/securiser_action");
24        if (verifier_action_auteur("snippet_exporte-$arg",$hash,$id_auteur)==TRUE) {
25                $table = $args[0];
26                $id = $args[1];
27               
28                $f = snippets_fond_exporter($table, false);
29                       
30                if ($f) {
31                        include_spip('public/assembler');
32                        $out = recuperer_fond($f,array('id'=>intval($id)));
33                        //$out = preg_replace(",\n\n[\s]*(?=\n),","",$out);
34                       
35                        $filename=str_replace(":","_",$arg);
36                        if (preg_match(",<titre>(.*)</titre>,Uims",$out,$regs))
37                                $filename = preg_replace(',[^-_\w]+,', '_', trim(translitteration(textebrut(typo($regs[1])))));
38                        $extension = "xml";
39                       
40                        Header("Content-Type: text/xml; charset=".$GLOBALS['meta']['charset']);
41                        Header("Content-Disposition: attachment; filename=$filename.$extension");
42                        Header("Content-Length: ".strlen($out));
43                        echo $out;
44                        exit();
45                }
46        }       
47        redirige_par_entete(str_replace("&amp;","&",urldecode($redirect)));
48}
49
50?>
Note: See TracBrowser for help on using the repository browser.