0152be4786fd0f1003b5a2c7e75b58a1dca408a5
[minimedit.git] / edit / nieuws / tag / index.php
1 <?php
2 ob_clean();
3
4 if (!$User or !$User->admin)
5         abort("geen beheersrechten", '401 unauthorised');
6
7 if (!$_POST)
8         abort("niets te doen", '405 post error');
9 if (!$Args)
10         abort("pagina niet opgegeven", '409 input error');
11
12 $pagename = ltrim($Args, '/').'.html';
13 @list ($category, $year, $article) = explode('/', $pagename);
14 if (empty($article) or !file_exists($pagename))
15         abort("artikel onbekend: $pagename", '404 page error');
16
17 if (!isset($_REQUEST['value']))
18         abort("ongeldige tagwaarde {$_REQUEST['value']}", '403 missing value');
19
20 if (!isset($_REQUEST['tag']))
21         abort("geen tag ontvangen", '403 input error');
22
23 $target = "$category/.tags/{$_REQUEST['tag']}";
24 if (!file_exists($target))
25         abort("tag onbekend: $target", '404 tag error');
26
27 $target .= "/$year-$article";
28 if (is_link($target) or file_exists($target)) {
29         if (!unlink($target))
30                 abort("kon bestaande link niet weghalen op $target", '500 unlink error');
31 }
32
33 $pagelink = "../../../$pagename";
34 if ($_REQUEST['value'] and !symlink($pagelink, $target))
35         abort("fout bij link aanmaken op $target", '500 link error');
36
37 abort("Tag {$_REQUEST['tag']} aangepast");
38