Dotclear

source: plugins/filesAlias/index.php @ 1850

Revision 1850, 4.3 KB checked in by Osku, 14 years ago (diff)

filesAlias : initial commit

Line 
1<?php
2# -- BEGIN LICENSE BLOCK ----------------------------------
3#
4# This file is part of filesAlias, a plugin for Dotclear 2.
5#
6# Copyright (c) 2009 Osku and contributors
7#
8# Licensed under the GPL version 2.0 license.
9# A copy of this license is available in LICENSE file or at
10# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
11#
12# -- END LICENSE BLOCK ------------------------------------
13
14// Setting default parameters if missing configuration
15if (is_null($core->blog->settings->filesalias_prefix)) {
16     try {
17               $core->blog->settings->setNameSpace('filesalias');
18
19               $core->blog->settings->put('filesalias_prefix','pub','string','Medias alias URL prefix');
20               $core->blog->triggerBlog();
21               http::redirect(http::getSelfURI());
22          }
23     catch (Exception $e) {
24          $core->error->add($e->getMessage());
25     }
26}
27
28$o = new FilesAliases($core);
29$aliases = $o->getAliases();
30
31# Update aliases
32if (isset($_POST['a']) && is_array($_POST['a']))
33{
34     try {
35          $o->updateAliases($_POST['a']);
36          http::redirect($p_url.'&up=1');
37     } catch (Exception $e) {
38          $core->error->add($e->getMessage());
39     }
40}
41
42# New alias
43if (isset($_POST['filesalias_url']))
44{
45     try {
46          $o->createAlias($_POST['filesalias_url'],$_POST['filesalias_destination'],count($aliases)+1);
47          http::redirect($p_url.'&created=1');
48     } catch (Exception $e) {
49          $core->error->add($e->getMessage());
50     }
51}
52
53# New prefix
54if (isset($_POST['filesalias_prefix']))
55{
56     try {
57          if (empty($_POST['filesalias_prefix'])) {
58               throw new Exception(__('No prefix for your files aliases.'));
59          }
60          $core->blog->settings->setNameSpace('filesalias');
61          $core->blog->settings->put('filesalias_prefix',$_POST['filesalias_prefix'],'string','Medias alias URL prefix');
62          $core->blog->triggerBlog();
63          http::redirect($p_url.'&modified=1');
64     } catch (Exception $e) {
65          $core->error->add($e->getMessage());
66     }
67}
68?>
69<html>
70<head>
71     <title><?php echo __('Aliases for files'); ?></title>
72</head>
73
74<body>
75<?php
76if (!empty($_GET['up'])) {
77     echo '<p class="message">'.__('Aliases successfully updated.').'</p>';
78}
79
80if (!empty($_GET['created'])) {
81     echo '<p class="message">'.__('Alias for this media created.').'</p>';
82}
83
84if (!empty($_GET['modified'])) {
85     echo '<p class="message">'.__('Configuration successfully updated.').'</p>';
86}
87?>
88<?php
89echo
90'<h2>'.html::escapeHTML($core->blog->name).' &rsaquo; '.__('Aliases for files').'</h2>';
91
92if (empty($aliases))
93{
94     echo '<p>'.__('No alias').'</p>';
95}
96else
97{
98     echo
99     '<form action="'.$p_url.'" method="post">'.
100     '<fieldset>'.
101     '<legend>'.__('Aliases list').'</legend>'.
102     '<table><tr>'.
103     '<th>'.__('alias').'</th>'.
104     '<th>'.__('destination').'</th>'.
105     //'<td>'.__('Alias position').'</td>'.
106     '</tr>';
107     
108     foreach ($aliases as $k => $v)
109     {
110          echo
111          '<tr>'.
112          '<td class="nowrap minimal">'.$core->blog->url.'<strong>'.$core->url->getBase('filesalias').'</strong>'.'/'.form::field(array('a['.$k.'][filesalias_url]'),20,255,html::escapeHTML($v['filesalias_url'])).'&nbsp;<a href="'.$core->blog->url.$core->url->getBase('filesalias').'/'.html::escapeHTML($v['filesalias_url']).'">'.__('Link').'</a></td>'.
113          '<td>'.form::field(array('a['.$k.'][filesalias_destination]'),70,255,html::escapeHTML($v['filesalias_destination'])).'</td>'.
114          //'<td>'.form::field(array('a['.$k.'][filesalias_position]'),3,5,html::escapeHTML($v['filesalias_position'])).'</td>'.
115          '</tr>';
116     }
117     
118     echo '</table>'.
119     '<p class="form-note">'.__('To remove a link, empty its alias or destination.').'</p>'.
120     '<p>'.$core->formNonce().
121     '<input type="submit" value="'.__('Update').'" /></p>'.
122          '</fieldset>'.
123     '</form>';
124}
125
126echo
127'<form action="'.$p_url.'" method="post">'.
128'<fieldset>'.
129'<legend>'.__('New alias').'</legend>'.
130'<p class="field"><label>'.__('Media URL:').' '.form::field('filesalias_url',50,255).'</label></p>'.
131'<p class="field"><label>'.__('Media destination:').' '.form::field('filesalias_destination',50,255).'</label></p>'.
132'<p>'.$core->formNonce().'<input type="submit" value="'.__('Save').'" /></p>'.
133'</fieldset>'.
134'</form>';
135
136echo
137'<form action="'.$p_url.'" method="post">'.
138'<fieldset>'.
139'<legend>'.__('Prefix of Aliases URLs').'</legend>'.
140'<p><label class="required">'
141.__('Media prefix URL:').' '.form::field('filesalias_prefix',20,255,$core->blog->settings->filesalias_prefix).'</label></p>'.
142'<p>'.$core->formNonce().'<input type="submit" value="'.__('Save').'" /></p>'.
143'</fieldset>'.
144'</form>';
145
146dcPage::helpBlock('filesAlias');
147?>
148</body>
149</html>
Note: See TracBrowser for help on using the repository browser.

Sites map