NP_msgbox
2007年6月4日
以前書いた msgbox() 関数の、スキン変数版。
使い方:
『OK』を表示させたいとき
$_GET['foo']を表示させたいとき
$_GETをすべて表示させたいとき
ソースコード:
使い方:
『OK』を表示させたいとき
<%msgbox('OK')%>$_GET['foo']を表示させたいとき
<%msgbox($_GET['foo'])%>
$_GETをすべて表示させたいとき
<%msgbox(var_dump,$_GET)%>
ソースコード:
<?php
class NP_msgbox extends NucleusPlugin {
function getName() { return 'NP_msgbox'; }
function getMinNucleusVersion() { return 220; }
function getAuthor() { return 'Katsumi'; }
function getVersion() { return '0.1'; }
function getURL() {return 'http://www.rad51.net/nucleus/index.php?itemid=324';}
function getDescription() { return $this->getName().' plugin'; }
function supportsFeature($what) { return ($what=='SqlTablePrefix')?1:0; }
function getEventList() { return array(); }
function doSkinVar() {
global $member;
if (!($member->isLoggedIn() && $member->isAdmin())) return;
$args=func_get_args();
$skinType=array_shift($args);
$modes=array('var_dump','print_r');
if (in_array($args[0],$modes)) $mode=array_shift($args);
else $mode='';
$var=implode(',',$args);
switch($mode){
case 'var_dump':
case 'print_r':
ob_start();
eval($mode."($var);");
$text=ob_get_contents();
ob_end_clean();
break;
default:
eval('$text='."$var;");
}
?><script type="text/javascript">
/*<![CDATA[*/
var confirm_canceled;
if (confirm_canceled!="yes") {
if (!confirm(unescape("<?php echo rawurlencode($text); ?>"))) confirm_canceled="yes";
}
/*]]>*/</script>
<!--<?php echo str_replace('-->','-->',$text); ?>-->
<?php
}
}
?>