source: spip-zone/_plugins_/snippets/action/snippet_importe.php @ 34590

Last change on this file since 34590 was 34590, checked in by booz@…, 10 years ago

apparement [22720] suffisait pas

File size: 1.3 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 */
11
12include_spip('inc/snippets');
13
14function action_snippet_importe(){
15        global $auteur_session;
16        $arg = _request('arg');
17        $args = explode(":",$arg);
18        $hash = _request('hash');
19        $id_auteur = $auteur_session['id_auteur'];
20        $redirect = _request('redirect');
21        if ($redirect==NULL) $redirect="";
22        include_spip("inc/securiser_action");
23        if (verifier_action_auteur("snippet_importe-$arg",$hash,$id_auteur)==TRUE) {
24                $table = $args[0];
25                $id = $args[1];
26                $contexte = $args[2];
27                $source = isset($args[3])?$args[3]:"";
28                $unlink = false;
29                if (!strlen($source)){
30                        if (($val = $_FILES['snippet_xml']) AND (isset($val['tmp_name']))) {
31                                $source = $val['tmp_name'];
32                                $unlink = true;
33                        }
34                }
35                if (($id==$table OR ($id=intval($id))) AND strlen($source)){
36                        $f = snippets_fonction_importer($table);
37                        if ($f){
38                                include_spip('inc/xml');
39                                $arbre = spip_xml_load($source, false);
40                                $translations = $f($id,$arbre,$contexte);
41                                snippets_translate_raccourcis_modeles($translations);
42                        }
43                }
44                if ($unlink)
45                        @unlink($source);
46        }
47        $redirect = str_replace("ecrire/./","./",$redirect);
48        redirige_par_entete(str_replace("&amp;","&",urldecode($redirect)));
49}
50
51?>
Note: See TracBrowser for help on using the repository browser.