/** * ログ件数 */ function log_count($kind, $page) { global $log; if (!log_exist($kind, $page)) { return 0; } $filename = log::set_filename($kind, $page); if (!($fd = fopen($filename, 'r'))) { return 0; } $ctr = 0; while ($data = @fgets($fd, 4096)) { $x = trim($data); if (log::is_table($x)) { $ctr++; } } fclose($fd); return $ctr; }
function plugin_navibar2_keyword($name) { global $_LINK; global $do_backup, $trackback, $referer; global $function_freeze; global $vars; if ($_LINK['reload'] == '') { return array(); } $_page = isset($vars['page']) ? $vars['page'] : ''; $is_read = arg_check('read') && is_page($_page); $is_freeze = is_freeze($_page); switch ($name) { case 'freeze': if ($is_read && $function_freeze) { if (!$is_freeze) { $name = 'freeze'; return _navigator2($name); } } break; case 'unfreeze': if ($is_read && $function_freeze) { if ($is_freeze) { $name = 'unfreeze'; return _navigator2($name); } } break; case 'upload': if ($is_read && (bool) ini_get('file_uploads')) { return _navigator2($name); } break; case 'filelist': if (arg_check('list')) { return _navigator2($name); } break; case 'backup': if ($do_backup) { return _navigator2($name); } break; case 'brokenlink': case 'template': case 'source': if (!empty($_page)) { return _navigator2($name); } break; case 'trackback': if ($trackback) { $tbcount = tb_count($_page); if ($tbcount > 0) { return _navigator2($name, 'Trackback(' . $tbcount . ')'); } else { if ($is_read) { return array('text' => 'no Trackback'); } else { if ($vars['cmd'] == 'list') { return _navigator2($name, 'Trackback list'); } } } } break; case 'refer': case 'skeylist': case 'linklist': if ($referer) { if (!isset($refcount)) { $refcount = ref_count($vars['page']); } if ($refcount > 0) { return _navigator2($name); } } break; case 'log_login': if (log_exist('login', $vars['page'])) { return _navigator2($name); } break; case 'log_check': if (log_exist('check', $vars['page'])) { return _navigator2($name); } break; case 'log_browse': if (log_exist('browse', $vars['page'])) { return _navigator2($name); } break; case 'log_update': if (log_exist('update', $vars['page'])) { return _navigator2($name); } break; case 'log_down': if (log_exist('download', $vars['page'])) { return _navigator2($name); } break; // case 'new': // case 'new': case 'newsub': case 'edit': case 'guiedit': case 'diff': if (!$is_read) { break; } default: return _navigator2($name); } return array(); }
function plugin_toolbar_convert() { global $_LINK; global $do_backup, $trackback, $referer; global $function_freeze; global $vars; global $whatsnew, $whatsdeleted; // if ($_LINK['reload'] == '') { // return '#navibar: plugin called from wikipage. skipped.'; // } $_page = isset($vars['page']) ? $vars['page'] : ''; $is_read = arg_check('read') && is_page($_page); $is_freeze = is_freeze($_page); $num = func_num_args(); $args = $num ? func_get_args() : array(); $ret[] = '<ul role="toolbar">'; while (!empty($args)) { $name = array_shift($args); switch ($name) { case 'freeze': case 'unfreeze': if ($is_read && $function_freeze) { if ($is_freeze) { $name = 'unfreeze'; } else { $name = 'freeze'; } $ret[] = _toolbar($name); } break; case 'upload': if ($is_read && (bool) ini_get('file_uploads') && !$is_freeze && !($_page == $whatsnew || $_page == $whatsdeleted)) { $ret[] = _toolbar($name); } break; case 'list': if ($vars['cmd'] !== 'list') { $ret[] = _toolbar($name); } else { $ret[] = _toolbar('filelist'); } break; case 'backup': if ($do_backup) { $ret[] = _toolbar($name); } break; case 'brokenlink': case 'template': case 'source': if (!empty($_page)) { $ret[] = _toolbar($name); } break; case 'trackback': if ($trackback) { if (!empty($_page) && !($_page == $whatsnew || $_page == $whatsdeleted)) { $ret[] = _toolbar($name, 'Trackback(' . tb_count($_page) . ')'); } else { // $ret[] = _toolbar($name, 'Trackback list'); } } break; case 'referer': case 'skeylist': case 'linklist': if ($referer && !empty($_page)) { $ret[] = _toolbar($name); } break; case 'log_login': if (!empty($_page) && log_exist('login', $vars['page'])) { $ret[] = _toolbar($name); } break; case 'log_check': if (!empty($_page) && log_exist('check', $vars['page'])) { $ret[] = _toolbar($name); } break; case 'log': case 'log_browse': if (!empty($_page)) { $ret[] = _toolbar($name); } // if (log_exist('browse',$vars['page'])) { // return _toolbar($name); // } break; case 'log_update': if (!empty($_page) && log_exist('update', $vars['page'])) { $ret[] = _toolbar($name); } break; case 'log_down': if (!empty($_page) && log_exist('download', $vars['page'])) { $ret[] = _toolbar($name); } break; case '|': if (end($ret) !== '<ul>') { $ret[] = '</ul>'; $ret[] = "\n"; $ret[] = '<ul role="toolbar">'; } break; // case 'new': // case 'new': case 'newsub': case 'edit': case 'guiedit': if (!empty($_page) && $is_read && $function_freeze && !$is_freeze && !($_page == $whatsnew || $_page == $whatsdeleted)) { $ret[] = _toolbar($name); } break; case 'diff': case 'reload': case 'copy': if (!$is_read || empty($_page)) { break; } default: $ret[] = _toolbar($name); break; } } if (end($ret) === '<ul>') { array_pop($ret); array_pop($ret); } else { $ret[] = '</ul>'; } $body = "\n" . join('', $ret) . "\n"; return '<nav class="toolbar">' . $body . '</nav>' . "\n"; }
function plugin_navibar_convert() { global $_LINK; global $do_backup, $trackback, $referer; global $function_freeze; global $vars; if ($_LINK['reload'] == '') { return '#navibar: plugin called from wikipage. skipped.'; } $_page = isset($vars['page']) ? $vars['page'] : ''; $is_read = arg_check('read') && is_page($_page); $is_freeze = is_freeze($_page); $num = func_num_args(); $args = $num ? func_get_args() : array(); $body = ''; $line = ''; while (!empty($args)) { $name = array_shift($args); switch ($name) { case 'freeze': if ($is_read && $function_freeze) { if (!$is_freeze) { $name = 'freeze'; if ($body != '' && $oldname != '|') { $body .= ' | '; } $body .= _navigator($name); } } break; case 'unfreeze': if ($is_read && $function_freeze) { if ($is_freeze) { $name = 'unfreeze'; if ($body != '' && $oldname != '|') { $body .= ' | '; } $body .= _navigator($name); } } break; case 'upload': if ($is_read && (bool) ini_get('file_uploads')) { if ($body != '' && $oldname != '|') { $body .= ' | '; } $body .= _navigator($name); } break; case 'filelist': if (arg_check('list')) { if ($body != '' && $oldname != '|') { $body .= ' | '; } $body .= _navigator($name); } break; case 'backup': if ($do_backup) { if ($body != '' && $oldname != '|') { $body .= ' | '; } $body .= _navigator($name); } break; case 'brokenlink': case 'template': case 'source': if (!empty($_page)) { if ($body != '' && $oldname != '|') { $body .= ' | '; } $body .= _navigator($name); } break; case 'trackback': if ($trackback) { if ($body != '' && $oldname != '|') { $body .= ' | '; } $tbcount = tb_count($_page); if ($tbcount > 0) { $body .= _navigator($name, 'Trackback(' . $tbcount . ')'); } else { if ($is_read) { $body .= 'no Trackback'; } else { if (isset($vars['cmd']) && $vars['cmd'] == 'list') { $body .= _navigator($name, 'Trackback list'); } } } } break; case 'refer': case 'skeylist': case 'linklist': if ($referer) { if ($body != '' && $oldname != '|') { $body .= ' | '; } $body .= _navigator($name); } break; case 'log_login': if (log_exist('login', $vars['page'])) { if ($body != '' && $oldname != '|') { $body .= ' | '; } $body .= _navigator($name); } break; case 'log_check': if (log_exist('check', $vars['page'])) { if ($body != '' && $oldname != '|') { $body .= ' | '; } $body .= _navigator($name); } break; case 'log_browse': if ($body != '' && $oldname != '|') { $body .= ' | '; } $body .= _navigator($name); // if (log_exist('browse',$vars['page'])) { // return _navigator($name); // } break; case 'log_update': if (log_exist('update', $vars['page'])) { if ($body != '' && $oldname != '|') { $body .= ' | '; } $body .= _navigator($name); } break; case 'log_down': if (log_exist('download', $vars['page'])) { if ($body != '' && $oldname != '|') { $body .= ' | '; } $body .= _navigator($name); } break; case '|': if (trim($body) != '') { $line .= '[ ' . $body . ' ]' . "\n\n"; $body = ''; } break; // case 'new': // case 'new': case 'newsub': case 'edit': case 'guiedit': case 'diff': if (!$is_read) { break; } default: if ($body != '' && $oldname != '|') { $body .= ' | '; } $body .= _navigator($name); break; } $oldname = $name; $body .= ' '; } if (trim($body) != '') { $line .= '[ ' . $body . ' ]' . "\n\n"; $body = ''; } return '<div id="navigator">' . $line . '</div>'; }
function plugin_cmd_link($name, $page) { $is_readonly = Auth::check_role('readonly'); $is_safemode = Auth::check_role('safemode'); $is_createpage = Auth::is_check_role(PKWK_CREATE_PAGE); if (isset($page)) { $page = isset($vars['page']) ? $vars['page'] : ''; } // $is_read = (arg_check('read') && is_page($_page)); $is_read = is_page($page); $is_editable = is_editable($page); switch ($name) { case 'freeze': case 'unfreeze': if ($is_read && $function_freeze) { if ($is_freeze) { $name = 'unfreeze'; } else { $name = 'freeze'; } return plugin_cmd_getlink($name); } break; case 'upload': if ($is_read && (bool) ini_get('file_uploads') && !$is_freeze && !($_page == $whatsnew || $_page == $whatsdeleted)) { return plugin_cmd_getlink($name); } break; case 'list': if ($vars['cmd'] !== 'list') { return plugin_cmd_getlink($name); } else { if ((bool) ini_get('file_uploads')) { return plugin_cmd_getlink('filelist'); } } break; case 'backup': if ($do_backup) { return plugin_cmd_getlink($name); } break; case 'brokenlink': case 'template': case 'source': if (!empty($_page)) { return plugin_cmd_getlink($name); } break; case 'trackback': if ($trackback && !($_page == $whatsnew || $_page == $whatsdeleted)) { $tbcount = tb_count($_page); if (isset($vars['cmd']) && $vars['cmd'] == 'list') { return plugin_cmd_getlink($name, 'Trackback list'); } else { return plugin_cmd_getlink($name, 'Trackback(' . $tbcount . ')'); } } break; case 'referer': case 'skeylist': case 'linklist': if ($referer) { return plugin_cmd_getlink($name); } break; case 'log_login': if (log_exist('login', $vars['page'])) { return plugin_cmd_getlink($name); } break; case 'log_check': if (log_exist('check', $vars['page'])) { return plugin_cmd_getlink($name); } break; case 'log_browse': return plugin_cmd_getlink($name); // if (log_exist('browse',$vars['page'])) { // return plugin_cmd_getlink($name); // } break; case 'log_update': if (log_exist('update', $vars['page'])) { return plugin_cmd_getlink($name); } break; case 'log_down': if (log_exist('download', $vars['page'])) { return plugin_cmd_getlink($name); } break; case '|': return '</ul>' . "\n" . '<ul>'; break; // case 'new': // case 'new': case 'newsub': case 'edit': case 'guiedit': if ($is_read && $function_freeze && !$is_freeze && !($_page == $whatsnew || $_page == $whatsdeleted)) { return plugin_cmd_getlink($name); } break; case 'full': case 'print': case 'diff': case 'reload': case 'copy': if (!$is_read) { break; } default: return plugin_cmd_getlink($name); break; } }