init
[garradin.git] / www / admin / wiki / historique.php
1 <?php
2 namespace Garradin;
3
4 require_once __DIR__ . '/_inc.php';
5
6 if (!trim(utils::get('id')))
7 {
8 throw new UserException("Page inconnue.");
9 }
10
11 $page = $wiki->getByID(utils::get('id'));
12
13 if (!$page)
14 {
15 throw new UserException("Cette page n'existe pas.");
16 }
17
18 if (!$wiki->canReadPage($page['droit_lecture']))
19 {
20 throw new UserException("Vous n'avez pas le droit de voir cette page.");
21 }
22
23 if (utils::get('diff'))
24 {
25 $revs = explode('.', utils::get('diff'));
26
27 if (count($revs) != 2)
28 {
29 throw new UserException("Erreur de paramètre.");
30 }
31
32 $rev1 = $wiki->getRevision($page['id'], (int)$revs[0]);
33 $rev2 = $wiki->getRevision($page['id'], (int)$revs[1]);
34
35 if ($rev1['chiffrement'])
36 {
37 $rev1['contenu'] = 'Contenu chiffré';
38 }
39
40 if ($rev2['chiffrement'])
41 {
42 $rev2['contenu'] = 'Contenu chiffré';
43 }
44
45 $tpl->assign('rev1', $rev1);
46 $tpl->assign('rev2', $rev2);
47 $tpl->assign('diff', true);
48 }
49 else
50 {
51 $tpl->assign('revisions', $wiki->listRevisions($page['id']));
52 }
53
54 $tpl->assign('can_edit', $wiki->canWritePage($page['droit_ecriture']));
55 $tpl->assign('page', $page);
56
57 $tpl->display('admin/wiki/historique.tpl');
58
59 ?>