add contents
This commit is contained in:
124
lib/plugins/ckgedit/admin.php
Normal file
124
lib/plugins/ckgedit/admin.php
Normal file
@@ -0,0 +1,124 @@
|
||||
<?php
|
||||
|
||||
|
||||
/**
|
||||
* @author Myron Turner <turnermm02@shaw.ca>
|
||||
* @license GPL 2 http://www.gnu.org/licenses/gpl-2.0.html
|
||||
*/
|
||||
|
||||
require_once(DOKU_INC . 'lib/plugins/ckgedit/scripts/css6.php');
|
||||
class admin_plugin_ckgedit extends DokuWiki_Admin_Plugin {
|
||||
|
||||
private $tpl_inc;
|
||||
private $template;
|
||||
private $alt;
|
||||
function __construct() {
|
||||
global $conf;
|
||||
$this->template = $conf['template'];
|
||||
$this->tpl_inc = tpl_incdir();
|
||||
}
|
||||
|
||||
function handle() {
|
||||
|
||||
if (!isset($_REQUEST['cmd'])) return; // first time - nothing to do
|
||||
|
||||
$this->output = 'invalid';
|
||||
|
||||
if (!checkSecurityToken()) return;
|
||||
if (!is_array($_REQUEST['cmd'])) return;
|
||||
|
||||
switch (key($_REQUEST['cmd'])) {
|
||||
case 'stylesheet' : {
|
||||
$this->alt = "";
|
||||
$this->output = 'style_sheet_msg';
|
||||
break;
|
||||
}
|
||||
case 'alt_stylesheet' : {
|
||||
$this->alt = $_REQUEST['templates'];
|
||||
$this->output = 'alt_style_sheet_msg';
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* output appropriate html
|
||||
*/
|
||||
function html() {
|
||||
ptln('<div id = "ckg_styl_sheet" style = "display:none">');
|
||||
echo $this->locale_xhtml('style');
|
||||
ptln('</div>');
|
||||
ptln('<button type = "button" id = "Infobut" onclick="jQuery(\'#ckg_styl_sheet\').toggle(800,ckg_admininfo(this));">');
|
||||
|
||||
echo $this->getLang('stylesheet_oinfo');
|
||||
ptln('</button>');
|
||||
|
||||
ptln('<form action="'.wl($ID).'" method="post">');
|
||||
// output hidden values to ensure dokuwiki will return back to this plugin
|
||||
ptln(' <input type="hidden" name="do" value="admin" />');
|
||||
ptln(' <input type="hidden" name="page" value="'.$this->getPluginName().'" />');
|
||||
formSecurityToken();
|
||||
|
||||
//Current style sheet
|
||||
ptln('<p style = "line-height: 200%;">' . $this->getLang('default_stylesheet') . ': (' .$this->template . ')<br />');
|
||||
ptln('<label for="ckg_save_ss">' .$this->getLang('checkbox').'</label>');
|
||||
ptln('<input type="checkbox" name="ckg_save_ss"> ');
|
||||
ptln('<input type="submit" name="cmd[stylesheet]" value="'.$this->getLang('style_sheet').'" /></p>');
|
||||
|
||||
// Other style sheet
|
||||
$alt_val = isset($this->alt)?$this->alt: "" ;
|
||||
ptln('<p style = "line-height: 200%;">' . $this->getLang('alt_stylesheet') .'<br />');
|
||||
ptln('<select name="templates" style = "line-height:100%">');
|
||||
echo $this->templates( $alt_val );
|
||||
ptln('</select>');
|
||||
ptln('<input type="submit" name="cmd[alt_stylesheet]" value="'.$this->getLang('style_sheet').'" />');
|
||||
ptln('</form></p>');
|
||||
|
||||
if($this->output && $this->output == 'style_sheet_msg') {
|
||||
$path = $this->tpl_inc;
|
||||
ptln(htmlspecialchars($this->getLang($this->output)). " " .$this->template);
|
||||
$retv = css_ckg_out($path);
|
||||
$this->message($path, $retv);
|
||||
|
||||
}
|
||||
else if($this->output && $this->output == 'alt_style_sheet_msg') {
|
||||
ptln(htmlspecialchars($this->getLang($this->output)). " " .$this->alt);
|
||||
$path = str_replace('tpl/'.$this->template, 'tpl/'.$this->alt,$this->tpl_inc);
|
||||
$retv = css_ckg_out($path,$this->alt);
|
||||
$this->message($path, $retv);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
function message($path, $which) {
|
||||
$messages = array(
|
||||
"Stylesheet saved to $path" . 'Styles/_style.css',
|
||||
"Failed to save stylesheet to $path" . 'Styles/_style.css'
|
||||
);
|
||||
$color = $which == 0? '#333': 'blue';
|
||||
ptln('<br /><span style = "color:'.$color. ';">'.htmlspecialchars($messages[$which]).'</span>');
|
||||
|
||||
}
|
||||
|
||||
function templates($selected="") {
|
||||
$dir = dirname($this->tpl_inc);
|
||||
$files = scandir($dir);
|
||||
$dir .= '/';
|
||||
$list = "<option value='' >Select</option>";
|
||||
foreach ($files AS $file) {
|
||||
if($file == '.' || $file == '..' || $file == $this->template) continue;
|
||||
$entry = $dir . $file;
|
||||
if(!is_writable($entry)) continue;
|
||||
if(is_dir ($entry ) ) {
|
||||
if($file == $selected) {
|
||||
$list .= "<option value='$file' selected>$file</option>";
|
||||
}
|
||||
else $list .= "<option value='$file' >$file</option>";
|
||||
}
|
||||
}
|
||||
|
||||
return $list;
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user