📄 tools.inc.php
字号:
$parameter['newwindow'] = isset($parameter['newwindow']) ? intval($parameter['newwindow']) : 1;
$tradionewwindow[$parameter['newwindow']] = 'checked';
if($jssubmit && $function == 'images') {
$jsurl = $jssetting ? $jssetting : "function=$function".
($parameter['images_forums'] && !in_array('all', $parameter['images_forums'])? '&fids='.jsfids($parameter['images_forums']) : '').
"&maxwidth=$parameter[maxwidth]".
"&maxheight=$parameter[maxheight]".
"&startrow=$parameter[startrow]".
"&items=$parameter[items]".
"&digest=".bindec(intval($parameter['digest'][1]).intval($parameter['digest'][2]).intval($parameter['digest'][3]).intval($parameter['digest'][4])).
"&newwindow=$parameter[newwindow]".
($parameter['cachelife'] != '' ? "&cachelife=$parameter[cachelife]" : '').
(!empty($parameter['jstemplate']) ? '&jstemplate='.rawurlencode($parameter['jstemplate']) : '');
$jsurlview = "$jsurl&nocache=yes";
$jsurlview = "{$boardurl}api/javascript.php?$jsurlview&verify=".md5($authkey.$jsurlview);
if(!$preview) {
jssavesetting(4);
}
$jsurl = "{$boardurl}api/javascript.php?$jsurl&verify=".md5($authkey.$jsurl);
$jspreview = "<textarea rows=\"3\" style=\"width: 100%; word-break: break-all\" onMouseOver=\"this.focus()\" onFocus=\"this.select()\">".
dhtmlspecialchars("<script language=\"JavaScript\" src=\"{$boardurl}api/javascript.php?key=".rawurlencode($jskey)."\"></script>").
"</textarea><br><div class=\"jswizard\"><script language=\"JavaScript\" src=\"$jsurlview\"></script></div><br>";
}
if($jspreview) {
showtype('preview', 'top');
echo '<tr><td class="altbg1">'.$jspreview;
showtype('', 'bottom');
echo '<br>';
}
echo '<form method="post" action="admincp.php?action=jswizard&function=images#'.$lang['jswizard_images'].'">';
showtype('jswizard_jstemplate', 'top');
echo '<tr><td class="altbg1" colspan="2">'.$lang['jswizard_images_jstemplate_comment'].'<br>';
echo '<img src="images/admincp/zoomin.gif" onmouseover="this.style.cursor=\'pointer\'" onclick="zoomtextarea(\'jstemplate\', 1)"> <img src="images/admincp/zoomout.gif" onmouseover="this.style.cursor=\'pointer\'" onclick="zoomtextarea(\'jstemplate\', 0)"><br>';
jsinsertunit();
echo '<textarea cols="100" rows="5" id="jstemplate" name="parameter[jstemplate]" style="width: 95%;">'.($parameter['jstemplate'] != '' ? stripslashes($parameter['jstemplate']) : '{image}').'</textarea></td></tr>';
showtype('', 'bottom');
echo '<br>';
showtype('jswizard_images', 'top');
showsetting('jswizard_jskey', 'jskey', $jskey, 'text');
showsetting('jswizard_cachelife', 'parameter[cachelife]', $parameter['cachelife'] != '' ? intval($parameter['cachelife']) : '', 'text');
showsetting('jswizard_images_fids', '', '', jsforumselect('images'));
showsetting('jswizard_images_startrow', 'parameter[startrow]', intval($parameter['startrow']), 'text');
showsetting('jswizard_images_items', 'parameter[items]', isset($parameter['items']) ? $parameter['items'] : 5, 'text');
showsetting('jswizard_images_maxwidth', 'parameter[maxwidth]', isset($parameter['maxwidth']) ? $parameter['maxwidth'] : 200, 'text');
showsetting('jswizard_images_maxheight', 'parameter[maxheight]', isset($parameter['maxheight']) ? $parameter['maxheight'] : 200, 'text');
showsetting('jswizard_images_digest', '', '', '<input class="checkbox" type="checkbox" name="parameter[digest][1]" value="1" '.$icheckdigest[1].'> '.$lang['jswizard_digest_1'].'<br><input class="checkbox" type="checkbox" name="parameter[digest][2]" value="1" '.$icheckdigest[2].'> '.$lang['jswizard_digest_2'].'<br><input class="checkbox" type="checkbox" name="parameter[digest][3]" value="1" '.$icheckdigest[3].'> '.$lang['jswizard_digest_3'].'<br><input class="checkbox" type="checkbox" name="parameter[digest][4]" value="1" '.$icheckdigest[4].'> '.$lang['jswizard_digest_0']);
showsetting('jswizard_images_newwindow', 'parameter[newwindow]', '', '<input class="radio" type="radio" name="parameter[newwindow]" value="0" '.$tradionewwindow[0].'> '.$lang['jswizard_newwindow_self'].'<br><input class="radio" type="radio" name="parameter[newwindow]" value="1" '.$tradionewwindow[1].'> '.$lang['jswizard_newwindow_blank'].'<br><input class="radio" type="radio" name="parameter[newwindow]" value="2" '.$tradionewwindow[2].'> '.$lang['jswizard_newwindow_main']);
showtype('', 'bottom');
echo $editext.'<br><center><input class="button" type="submit" name="jssubmit" value="'.$lang['jswizard_preview'].'"> <input class="button" type="button" onclick="this.form.preview.value=0;this.form.jssubmit.click()" value="'.$lang['submit'].'"><input name="preview" type="hidden" value="1"></center></form><br>';
/* Images == End == */
} elseif($type == 'custom') {
/* Custom == Start == */
if($jssubmit && $function == 'custom') {
$jsurl = $jssetting ? $jssetting : "function=$function".
($parameter['cachelife'] != '' ? "&cachelife=$parameter[cachelife]" : '').
(!empty($parameter['jstemplate']) ? '&jstemplate='.rawurlencode($parameter['jstemplate']) : '');
$jsurlview = "$jsurl&nocache=yes";
$jsurlview = "{$boardurl}api/javascript.php?$jsurlview&verify=".md5($authkey.$jsurlview);
if(!$preview) {
jssavesetting(-1);
}
$jsurl = "{$boardurl}api/javascript.php?$jsurl&verify=".md5($authkey.$jsurl);
$jspreview = "<textarea rows=\"3\" style=\"width: 100%; word-break: break-all\" onMouseOver=\"this.focus()\" onFocus=\"this.select()\">".
dhtmlspecialchars("<script language=\"JavaScript\" src=\"{$boardurl}api/javascript.php?key=".rawurlencode($jskey)."\"></script>").
"</textarea><br><div class=\"jswizard\"><script language=\"JavaScript\" src=\"$jsurlview\"></script></div><br>";
}
if($jspreview) {
showtype('preview', 'top');
echo '<tr><td class="altbg1">'.$jspreview;
showtype('', 'bottom');
echo '<br>';
}
echo '<form method="post" action="admincp.php?action=jswizard&function=custom#'.$lang['jswizard_custom'].'">';
showtype('jswizard_jstemplate', 'top');
echo '<tr><td class="altbg1" colspan="2">'.$lang['jswizard_custom_jstemplate_comment'].'<br>';
echo '<img src="images/admincp/zoomin.gif" onmouseover="this.style.cursor=\'pointer\'" onclick="zoomtextarea(\'jstemplate\', 1)"> <img src="images/admincp/zoomout.gif" onmouseover="this.style.cursor=\'pointer\'" onclick="zoomtextarea(\'jstemplate\', 0)"><br>';
jsinsertunit();
echo '<textarea cols="100" rows="5" id="jstemplate" name="parameter[jstemplate]" style="width: 95%;">'.($parameter['jstemplate'] != '' ? stripslashes($parameter['jstemplate']) : '').'</textarea></td></tr>';
showtype('', 'bottom');
echo '<br>';
showtype('jswizard_custom', 'top');
showsetting('jswizard_jskey', 'jskey', $jskey, 'text');
showsetting('jswizard_cachelife', 'parameter[cachelife]', $parameter['cachelife'] != '' ? intval($parameter['cachelife']) : '', 'text');
showtype('', 'bottom');
echo $editext.'<br><center><input class="button" type="submit" name="jssubmit" value="'.$lang['jswizard_preview'].'"> <input class="button" type="button" onclick="this.form.preview.value=0;this.form.jssubmit.click()" value="'.$lang['submit'].'"><input name="preview" type="hidden" value="1"></center></form><br>';
/* Custom == End == */
}
} elseif($action == 'fileperms') {
shownav('menu_tools_fileperms');
showtips('fileperms_tips');
?>
<table width="100%" border="0" cellpadding="0" cellspacing="0" class="tableborder">
<tr class="header"><td><?=$lang['fileperms_check']?></td></tr>
<tr><td class="altbg1"><br><ul>
<?
$entryarray = array (
'attachments',
'forumdata',
'customavatars',
'forumdata/viewcount.log',
'forumdata/dberror.log',
'forumdata/errorlog.php',
'forumdata/ratelog.php',
'forumdata/cplog.php',
'forumdata/modslog.php',
'forumdata/illegallog.php'
);
foreach(array('templates', 'forumdata/cache', 'forumdata/templates') as $directory) {
getdirentry($directory);
}
$fault = 0;
foreach($entryarray as $entry) {
$fullentry = DISCUZ_ROOT.'./'.$entry;
if(!is_dir($fullentry) && !file_exists($fullentry)) {
continue;
} else {
if(!is_writeable($fullentry)) {
echo '<li style="color: #FF0000">'.(is_dir($fullentry) ? $lang['fileperms_dir'] : $lang['fileperms_file'])." ./$entry $lang[fileperms_unwritable]";
$fault = 1;
}
}
}
echo ($fault ? '' : '<li>'.$lang['fileperms_check_ok']).'</ul><br></td></tr></table>';
}
function jsforumselect($function) {
global $parameter, $lang, $db, $tablepre;
if(empty($function) || in_array($function, array('forums', 'threads', 'images'))) {
$forumselect = '<select name="parameter['.$function.'_forums][]" size="5" multiple="multiple">'.
'<option value="all" '.(is_array($parameter[$function.'_forums']) && in_array('all', $parameter[$function.'_forums']) ? 'selected="selected"' : '').'> '.$lang['jswizard_all_forums'].'</option>'.
'<option value=""> </option>';
if($function == 'forums') {
$query = $db->query("SELECT fid, name FROM {$tablepre}forums WHERE type='group' AND status>0 ORDER BY displayorder");
while($category = $db->fetch_array($query)) {
$forumselect .= '<option value="'.$category['fid'].'">'.strip_tags($category['name']).'</option>';
}
} else {
require_once DISCUZ_ROOT.'./include/forum.func.php';
$forumselect .= forumselect();
}
$forumselect .= '</select>';
if(is_array($parameter[$function.'_forums'])) {
foreach($parameter[$function.'_forums'] as $key => $value) {
if(!$value) {
unset($parameter[$function.'_forums'][$key]);
}
}
if(!in_array('all', $parameter[$function.'_forums'])) {
$forumselect = preg_replace("/(\<option value=\"(".implode('|', $parameter[$function.'_forums']).")\")(\>)/", "\\1 selected=\"selected\"\\3", $forumselect);
}
}
return $forumselect;
}
}
function jsfids($fidarray) {
foreach($fidarray as $key => $val) {
if(empty($val)) {
unset($fidarray[$key]);
}
}
return implode('_', $fidarray);
}
function jssavesetting($type) {
global $db, $tablepre, $jswizard, $jsurl, $parameter, $jskey, $edit;
$editadd = $edit ? "AND variable!='jswizard_$edit'" : '';
if($db->result($db->query("SELECT variable FROM {$tablepre}settings WHERE variable='jswizard_$jskey' $editadd"), 0)) {
cpmsg('jswizard_jskey_exists');
}
$jskey = str_replace('&', '', $jskey);
$jswizard = addslashes(serialize(array('type' => $type, 'url' => $jsurl, 'parameter' => $parameter)));
if(strlen($jswizard) > 65535) {
cpmsg('jswizard_overflow');
}
$db->query("REPLACE INTO {$tablepre}settings (variable, value) VALUES ('jswizard_$jskey', '$jswizard')");
updatecache('jswizard');
@unlink(DISCUZ_ROOT.'./forumdata/cache/javascript_'.$jskey.'.php');
cpmsg('jswizard_succeed', 'admincp.php?action=jswizard');
}
function jsinsertunit() {
?>
<script>
function isUndefined(variable) {
return typeof variable == 'undefined' ? true : false;
}
function insertunit(text) {
$('jstemplate').focus();
if(!isUndefined($('jstemplate').selectionStart)) {
var opn = $('jstemplate').selectionStart + 0;
$('jstemplate').value = $('jstemplate').value.substr(0, $('jstemplate').selectionStart) + text + $('jstemplate').value.substr($('jstemplate').selectionEnd);
} else if(document.selection && document.selection.createRange) {
var sel = document.selection.createRange();
sel.text = text.replace(/\r?\n/g, '\r\n');
sel.moveStart('character', -strlen(text));
} else {
$('jstemplate').value += text;
}
}
</script>
<?
}
function getdirentry($directory) {
global $entryarray;
$dir = dir(DISCUZ_ROOT.'./'.$directory);
while($entry = $dir->read()) {
if($entry != '.' && $entry != '..') {
if(is_dir(DISCUZ_ROOT.'./'.$directory.'/'.$entry)) {
$entryarray[] = $directory.'/'.$entry;
getdirentry($directory."/".$entry);
} else {
$entryarray[] = $directory.'/'.$entry;
}
}
}
$dir->close();
}
?>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -