web version of util/pconfig
This commit is contained in:
parent
54301a9ff5
commit
f6fae2ebd9
105
mod/pconfig.php
Executable file
105
mod/pconfig.php
Executable file
@ -0,0 +1,105 @@
|
||||
<?php
|
||||
|
||||
|
||||
function disallowed_pconfig() {
|
||||
return array(
|
||||
'permissions_role'
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
function pconfig_post(&$a) {
|
||||
|
||||
if(! local_channel())
|
||||
return;
|
||||
|
||||
|
||||
if($_SESSION['delegate'])
|
||||
return;
|
||||
|
||||
check_form_security_token_redirectOnErr('/pconfig', 'pconfig');
|
||||
|
||||
$cat = trim(escape_tags($_POST['cat']));
|
||||
$k = trim(escape_tags($_POST['k']));
|
||||
$v = trim($_POST['v']);
|
||||
|
||||
if(in_array(argv(2),disallowed_pconfig())) {
|
||||
notice( t('This setting requires special processing and has been blocked.') . EOL);
|
||||
return;
|
||||
}
|
||||
|
||||
if(strpos($k,'password') !== false) {
|
||||
$v = z_obscure($v);
|
||||
}
|
||||
|
||||
set_pconfig(local_channel(),$cat,$k,$v);
|
||||
|
||||
goaway(z_root() . '/pconfig/' . $cat . '/' . $k);
|
||||
|
||||
}
|
||||
|
||||
|
||||
function pconfig_content(&$a) {
|
||||
|
||||
if(! local_channel()) {
|
||||
return login();
|
||||
}
|
||||
|
||||
|
||||
|
||||
if(argc() == 3) {
|
||||
$content = '<a href="pconfig">pconfig[' . local_channel() . ']</a>' . EOL;
|
||||
$content .= '<a href="pconfig/' . escape_tags(argv(1)) . '">pconfig[' . local_channel() . '][' . escape_tags(argv(1)) . ']</a>' . EOL . EOL;
|
||||
$content .= '<a href="pconfig/' . escape_tags(argv(1)) . '/' . escape_tags(argv(2)) . '" >pconfig[' . local_channel() . '][' . escape_tags(argv(1)) . '][' . escape_tags(argv(2)) . ']</a> = ' . get_pconfig(local_channel(),escape_tags(argv(1)),escape_tags(argv(2))) . EOL;
|
||||
$content .= pconfig_form(escape_tags(argv(1)),escape_tags(argv(2)));
|
||||
}
|
||||
|
||||
|
||||
if(argc() == 2) {
|
||||
$content = '<a href="pconfig">pconfig[' . local_channel() . ']</a>' . EOL;
|
||||
load_pconfig(local_channel(),escape_tags(argv(1)));
|
||||
foreach($a->config[local_channel()][escape_tags(argv(1))] as $k => $x) {
|
||||
$content .= '<a href="pconfig/' . escape_tags(argv(1)) . '/' . $k . '" >pconfig[' . local_channel() . '][' . escape_tags(argv(1)) . '][' . $k . ']</a> = ' . escape_tags($x) . EOL;
|
||||
}
|
||||
}
|
||||
|
||||
if(argc() == 1) {
|
||||
|
||||
$content = '';
|
||||
|
||||
$r = q("select * from pconfig where uid = " . local_channel());
|
||||
if($r) {
|
||||
foreach($r as $rr) {
|
||||
$content .= '<a href="' . 'pconfig/' . escape_tags($rr['cat']) . '/' . escape_tags($rr['k']) . '" >pconfig[' . local_channel() . '][' . escape_tags($rr['cat']) . '][' . escape_tags($rr['k']) . ']</a> = ' . escape_tags($rr['v']) . EOL;
|
||||
}
|
||||
}
|
||||
}
|
||||
return $content;
|
||||
|
||||
}
|
||||
|
||||
|
||||
function pconfig_form($cat,$k) {
|
||||
|
||||
$o = '<form action="pconfig" method="post" >';
|
||||
$o .= '<input type="hidden" name="form_security_token" value="' . get_form_security_token('pconfig') . '" />';
|
||||
|
||||
$v = get_pconfig(local_channel(),$cat,$k);
|
||||
if(strpos($k,'password') !== false)
|
||||
$v = z_unobscure($v);
|
||||
|
||||
$o .= '<input type="hidden" name="cat" value="' . $cat . '" />';
|
||||
$o .= '<input type="hidden" name="k" value="' . $k . '" />';
|
||||
|
||||
if(strpos($v,"\n"))
|
||||
$o .= '<textarea name="v" >' . escape_tags($v) . '</textarea>';
|
||||
else
|
||||
$o .= '<input type="text" name="v" value="' . escape_tags($v) . '" />';
|
||||
|
||||
$o .= EOL . EOL;
|
||||
$o .= '<input type="submit" name="submit" value="' . t('Submit') . '" />';
|
||||
$o .= '</form>';
|
||||
|
||||
return $o;
|
||||
|
||||
}
|
@ -1 +1 @@
|
||||
2015-07-01.1080
|
||||
2015-07-02.1081
|
||||
|
Reference in New Issue
Block a user