Mise en route du suivi.
[aidenligne_francais_universite.git] / ecrire / exec / documenter.php
1 <?php
2
3 /***************************************************************************\
4 * SPIP, Systeme de publication pour l'internet *
5 * *
6 * Copyright (c) 2001-2007 *
7 * Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
8 * *
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 \***************************************************************************/
12
13 if (!defined("_ECRIRE_INC_VERSION")) return;
14
15 include_spip('inc/presentation');
16
17 // http://doc.spip.org/@exec_documenter_dist
18 function exec_documenter_dist()
19 {
20 $type = _request("type");
21 $script = _request("script"); // generalisation a tester
22 $album = !_request("s") ? 'documents' : 'portfolio';
23 $id = intval(_request(($type == 'article') ? 'id_article' : 'id_rubrique'));
24 $id_auteur = $GLOBALS['auteur_session']['id_auteur'];
25 $statut = $GLOBALS['auteur_session']['statut'];
26
27 $droits = auth_rubrique($id_auteur, $statut);
28
29 if ($type == 'rubrique')
30 $editable = is_array($droits) ? $droits[$id] : is_int($droits);
31 elseif (is_int($droits)) // i.e. admin complet
32 $editable = true;
33 else {
34
35 $row = spip_fetch_array(spip_query("SELECT id_rubrique, statut FROM spip_articles WHERE id_article=$id"));
36
37 $editable = (is_array($droits) AND $droits[$row['id_rubrique']]);
38 if (!$editable) {
39 if ($row['statut'] == 'prepa' OR $row['statut'] == 'prop')
40 $editable = spip_num_rows(auteurs_article($id, "id_auteur=$id_auteur"));
41 }
42 }
43 if (!$editable) {
44 include_spip('inc/minipres');
45 echo minipres();
46 exit;
47 }
48
49 $documenter = charger_fonction('documenter', 'inc');
50 if(_request("iframe")=="iframe") {
51 $res = $documenter($id, $type, "portfolio", 'ajax', '', $script).
52 $documenter($id, $type, "documents", 'ajax', '', $script);
53 ajax_retour("<div class='upload_answer upload_document_added'>".$res."</div>",false);
54 } else
55 ajax_retour($documenter($id, $type, $album, 'ajax', '', $script));
56 }
57 ?>