protected function _view_home() { global $core, $user; $v = $this->__(array('code', 'a' => 0, 'print' => 0, 'offset' => 0)); if (f($v['code'])) { $sql = 'SELECT ticket_id FROM _tickets WHERE ticket_code = ?'; $v['a'] = _field(sql_filter($sql, $v['code']), 'ticket_id'); } $d = $this->init_ticket($v['a']); $d['ticket_owner'] = $d['ticket_contact'] == $user->v('user_id') ? true : false; $d['ticket_access'] = false; if ($user->v('is_founder') || $d['ticket_owner']) { $d['ticket_access'] = true; } else { $sql = 'SELECT g.group_id FROM _groups g, _groups_members m WHERE g.group_id = m.member_group AND m.member_uid = ?'; if ($s_group_id = _rowset(sql_filter($sql, $user->v('user_id')), false, 'group_id')) { $sql = 'SELECT * FROM _groups g, _groups_members m, _tickets t WHERE t.ticket_id = ? AND g.group_id = m.member_group AND g.group_id = t.ticket_group AND t.ticket_group IN (??)'; if (_fieldrow(sql_filter($sql, $d['ticket_id'], _implode(',', $s_group_id)))) { $d['ticket_access'] = true; } } } if (!$d['ticket_access']) { $sql = 'SELECT * FROM _tickets t, _tickets_assign a WHERE t.ticket_id = ? AND t.ticket_id = a.assign_ticket AND a.user_id = ?'; if (_fieldrow(sql_filter($sql, $d['ticket_id'], $user->v('user_id')))) { $d['ticket_access'] = true; } } if (!$d['ticket_access']) { _fatal(); } $d['ticket_control'] = !$d['ticket_owner'] || $user->v('is_founder') ? true : false; $this->navigation('TICKET_VIEW', array('x1' => 'view', 'a' => $v['a'], 'offset' => $v['offset'])); // $sql = 'SELECT cat_name FROM _tickets_cat WHERE cat_id = ?'; $cat_name = _field(sql_filter($sql, $d['ticket_cat']), 'cat_name'); $sql = 'SELECT user_firstname, user_lastname, user_username FROM _members WHERE user_id = ?'; $ticket_author = _fieldrow(sql_filter($sql, $d['ticket_contact'])); // $status_list = $this->init_status_list(); $sql_show_public = $d['ticket_owner'] || $d['ticket_owner'] && $user->v('is_founder') ? true : false; // $sql = 'SELECT a.assign_id, a.assign_status, a.assign_end, m.user_id, m.user_username, m.user_firstname, m.user_lastname FROM _members m, _tickets_assign a WHERE m.user_id = a.user_id AND a.assign_ticket = ? ORDER BY m.user_firstname, m.user_lastname'; $ticket_assign = _rowset(sql_filter($sql, $v['a'])); foreach ($ticket_assign as $i => $row) { if (!$i) { _style('assigned'); } if (!isset($status_list[$row['assign_status']])) { $row['assign_status'] = $d['ticket_status']; } _style('assigned.row', array('V_AID' => $row['assign_id'], 'V_ALIAS' => $row['user_username'], 'V_UID' => $row['user_id'], 'V_FULLNAME' => _fullname($row), 'U_PROFILE' => _link('contacts', array('m' => $row['user_username'])), 'V_STATUS' => $status_list[$row['assign_status']]['status_alias'], 'V_END' => $row['assign_end'] ? _format_date($row['assign_end']) : '')); } $sql = 'SELECT * FROM _groups ORDER BY group_name'; $groups = _rowset($sql, 'group_id', 'group_name'); _rowset_foreach(string_to_array_assoc($groups, w('group_id group_name')), 'groups'); // if (!($category = $core->cache_load('tickets_cat'))) { $sql = 'SELECT * FROM _tickets_cat ORDER BY cat_name'; $category = $core->cache_store(_rowset($sql)); } $ticket_groups = explode(',', $user->auth_groups()); foreach ($category as $i2 => $catrow) { if (!$catrow['cat_group'] || in_array($catrow['cat_group'], $ticket_groups)) { continue; } unset($category[$i2]); } _rowset_foreach($category, 'category'); // Ticket notes $sql = 'SELECT n.*, m.user_id, m.user_username, m.user_firstname, m.user_lastname FROM _tickets_notes n, _members m WHERE n.ticket_id = ? ?? AND n.user_id = m.user_id ORDER BY n.note_time'; $notes = _rowset(sql_filter($sql, $d['ticket_id'], $sql_show_public ? 'AND n.note_cc = 1 ' : '')); foreach ($notes as $i => $row) { if (!$i) { _style('notes'); } $access = $row['note_cc'] ? 'public' : 'private'; _style('notes.row', array('U_NOTE_EDIT' => _link($this->m(), array('x1' => 'note', 'x2' => 'modify', 'note' => $row['note_id'])), 'U_NOTE_REMOVE' => _link($this->m(), array('x1' => 'note', 'x2' => 'remove', 'note' => $row['note_id'])), 'V_NOTE_ID' => $row['note_id'], 'V_USERNAME' => _fullname($row), 'V_USERLINK' => _link('contacts', array('m' => $row['user_username'])), 'V_TIME' => _format_date($row['note_time']), 'V_TEXT' => _message($row['note_text']), 'V_ACCESS' => _lang($access), 'V_ACCESS_CLASS' => $row['note_cc'] ? 'green' : 'red')); } $sql = 'SELECT attach_id, attach_name, attach_extension, attach_size, attach_time FROM _tickets_attach WHERE attach_ticket = ? ORDER BY attach_name'; $attachments = _rowset(sql_filter($sql, $d['ticket_id'])); foreach ($attachments as $i => $row) { if (!$i) { _style('attachments'); } switch ($row['attach_extension']) { case 'jpeg': case 'jpg': case 'gif': case 'png': _style('attachments.image', array('ATTACH_LINK' => _link('space/f/' . $row['attach_name'], false, false), 'ATTACH_NAME' => $row['attach_name'], 'ATTACH_SIZE' => _filesize($row['attach_size']))); break; default: _style('attachments.normal', array('ATTACH_LINK' => _link('space/f/' . $row['attach_name'], false, false), 'ATTACH_NAME' => $row['attach_name'], 'ATTACH_SIZE' => _filesize($row['attach_size']))); break; } } $author_fullname = _fullname($ticket_author); $sql = 'SELECT assign_status FROM _tickets_assign WHERE assign_ticket = ? AND user_id = ?'; if ($assign_status = _field(sql_filter($sql, $d['ticket_id'], $user->v('user_id')), 'assign_status', 0)) { $d['ticket_status'] = $assign_status; } v_style(array('U_STATUS' => _link($this->m(), array('x1' => 'ticket', 'x2' => 'status', 'ticket' => $v['a'])), 'U_GROUP' => _link($this->m(), array('x1' => 'ticket', 'x2' => 'groups', 'a' => $v['a'])), 'U_ADD_NOTE' => _link($this->m(), array('x1' => 'note', 'x2' => 'create', 'ticket' => $v['a'])), 'U_CATEGORY' => _link($this->m(), array('x1' => 'ticket', 'x2' => 'cat', 'ticket' => $v['a'])), 'U_TECH_ADD' => _link($this->m(), array('x1' => 'tech', 'x2' => 'add', 'ticket' => $v['a'])), 'U_TECH_QUERY' => _link($this->m(), array('x1' => 'tech', 'x2' => 'query', 'ticket' => $v['a'])), 'U_TECH_REMOVE' => _link($this->m(), array('x1' => 'tech', 'x2' => 'remove', 'ticket' => $v['a'])), 'U_REMOVE' => _link($this->m(), array('x1' => 'ticket', 'x2' => 'remove', 'ticket' => $v['a'])), 'U_PRINT' => _link($this->m(), array('x1' => 'view', 'a' => $v['a'], 'print' => 1)), 'V_ID' => $v['a'], 'V_DELETED' => $d['ticket_deleted'], 'V_STATUS' => $this->init_status($d['ticket_status']), 'V_STATUS_ID' => $d['ticket_status'], 'V_STATUS_NAME' => $status_list[$d['ticket_status']]['status_name'], 'V_GROUP_NAME' => $groups[$d['ticket_group']], 'V_CATEGORY' => $cat_name, 'V_TITLE' => $d['ticket_title'] != '' ? $d['ticket_title'] : _lang('TICKET_NO_SUBJECT'), 'V_TEXT' => _message($d['ticket_text']), 'V_START' => $d['ticket_start'] ? _format_date($d['ticket_start']) : '', 'V_END' => $d['ticket_end'] ? _format_date($d['ticket_end']) : '', 'V_IP' => $d['ticket_ip'], 'V_AUTHOR_NAME' => $author_fullname ? $author_fullname : _lang('USER_UNKNOWN'), 'V_AUTHOR_URL' => _link('contacts', array('m' => $ticket_author['user_username'])), 'V_SHOW_PUBLIC' => !$sql_show_public)); $this->__home_common($v['offset']); if ($v['print']) { $this->_template('ticket.print'); } return; }
exit; } if (isset($_GET["GetTotalMemMB"])) { GetTotalMemMB(); exit; } if (isset($_GET["process-ttl"])) { process_timeexec(); exit; } if (isset($_GET["myisamchk"])) { myisamchk(); exit; } if (isset($_GET["filesize"])) { _filesize(); exit; } if (isset($_GET["chmod"])) { _chmod(); exit; } if (isset($_GET["readfile"])) { _readfile(); exit; } if (isset($_GET["TCP_NICS_STATUS_ARRAY"])) { TCP_NICS_STATUS_ARRAY(); exit; } if (isset($_GET["LaunchRemoteInstall"])) {
echo '-><a href="index.php?' . $_GET['path'] . '">取消选择</a> <a href="index.php?' . $_SERVER['QUERY_STRING'] . '&all=yes">全部选择</a>'; echo '<form action="system.php?path=' . _encode($f['.']) . '" method="post">'; if (count($f['dir']) >= 1) { echo <<<HTML <div class="big_board"><div class="board_title">目录列表</div></div> HTML; foreach ($f['dir'] as $dir) { echo "<input type=\"checkbox\" name=\"selected[]\" value=\"" . _encode($dir) . "\" {$select}/><a href=\"dirinfo.php?path=" . _encode($dir) . "\">[dir]</a><a href=\"{$_SERVER['PHP_SELF']}?path=" . _encode($dir) . "\">" . path2name($dir) . "</a><br/>"; } } if (count($f['file']) >= 1) { echo <<<HTML <div class="big_board"><div class="board_title">文件列表</div></div> HTML; foreach ($f['file'] as $file) { echo "<input type=\"checkbox\" name=\"selected[]\" value=\"" . _encode($file) . "\" {$select}/><a href=\"fileinfo.php?path=" . _encode($file) . "\">[file]</a>" . path2name($file) . '<br/><a href="download.php?path=' . _encode($file) . '">下载</a>.<a href="editor.php?path=' . _encode($file) . '">编辑</a>.<a href="view.php?path=' . _encode($file) . '">查看</a>.<a href="rename.php?path=' . _encode($file) . '">命名</a><br/>大小:' . _filesize($file) . ' 权限:' . substr(sprintf('%o', fileperms(_decode($file))), -4) . '<br/>'; } } echo <<<HTML <select name="type"> <option value="delete">删除文件(多选)</option> <option value="pkzip">压缩文件(多选)</option> <option value="move">移动文件(多选)</option> <option value="copy">复制文件(多选)</option> <option value="chmod">权限变更(多选)</option> </select> <input type="submit" value="[Go]"/> </form> HTML; } else { echo "Hello,貌似目录是空目录耶!";
.board_title{margin-bottom:1px;border:1px solid #09F;} </style> </head> <body> <div class="big_board"><div class="board_title">爱特文管-路径信息</div></div> HTML; echo '<a href="index.php?path=' . _encode(dirname(_decode($_GET['path']))) . '">' . dirname(_decode($_GET['path'])) . '</a>/' . path2name(_decode($_GET['path'])); echo <<<HTML <div class="big_board"><div class="board_title">爱特文管-文件信息</div></div> HTML; if (is_file(_decode($_GET['path'])) == false) { echo 'Hello,文件信息查询出错!'; } else { echo '文件名称:<br/>' . basename(_decode($_GET['path'])); echo '<div class="big_board"><div class="board_title"></div></div>'; echo '文件大小:<br/>' . _filesize(_decode($_GET['path'])); echo '<div class="big_board"><div class="board_title"></div></div>'; echo '文件类型:<br/>' . _filemime(_decode($_GET['path'])); echo '<div class="big_board"><div class="board_title"></div></div>'; echo '文件权限:<br/>' . substr(sprintf('%o', fileperms(_decode($_GET['path']))), -4); echo '<div class="big_board"><div class="board_title"></div></div>'; echo '最后访问:<br/>' . gmdate("Y-m-d H:i:s", fileatime(_decode($_GET['path'])) + 8 * 3600); echo '<div class="big_board"><div class="board_title"></div></div>'; echo '最后修改:<br/>' . gmdate("Y-m-d H:i:s", filemtime(_decode($_GET['path'])) + 8 * 3600); echo '<div class="big_board"><div class="board_title"></div></div>'; echo '文件校验(MD5):<br/>' . md5_file(_decode($_GET['path'])); echo '<div class="big_board"><div class="board_title"></div></div>'; echo '文件校验(SHA1):<br/>' . sha1_file(_decode($_GET['path'])); echo '<div class="big_board"><div class="board_title"></div></div>'; echo <<<HTML <form action="unpk.php?path={$_GET['path']}" method="post">