Changeset 1470
- Timestamp:
- 12/17/07 02:48:21 (8 months ago)
- Files:
-
- devel/mod/elggadmin/lib.php (modified) (3 diffs)
- devel/mod/elggadmin/lib/elggadmin.inc.php (modified) (5 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
devel/mod/elggadmin/lib.php
r1430 r1470 17 17 18 18 elggadmin_add_rule('mod/elggadmin/?$', 'elggadmin_page'); 19 elggadmin_add_rule('mod/elggadmin/(theme|frontpage )$', 'elggadmin_page');20 elggadmin_add_rule('mod/elggadmin/index.php/?(theme|frontpage )?$', 'elggadmin_page');19 elggadmin_add_rule('mod/elggadmin/(theme|frontpage|logs)$', 'elggadmin_page'); 20 elggadmin_add_rule('mod/elggadmin/index.php/?(theme|frontpage|logs)?$', 'elggadmin_page'); 21 21 22 22 elggadmin_add_function('elggadmin_page_before', 'elggadmin_actions'); … … 53 53 // submenu options 54 54 pages_submenu_add('elggadmin', __gettext('Configuration manager'), get_url(null, 'elggadmin::')); 55 pages_submenu_add('elggadmin', __gettext('Default theme editor'), get_url(null, 'elggadmin::theme')); 56 pages_submenu_add('elggadmin', __gettext('Frontpage template editor'), get_url(null, 'elggadmin::frontpage')); 55 pages_submenu_add('elggadmin:theme', __gettext('Default theme editor'), get_url(null, 'elggadmin::theme')); 56 pages_submenu_add('elggadmin:frontpage', __gettext('Frontpage template editor'), get_url(null, 'elggadmin::frontpage')); 57 pages_submenu_add('elggadmin:logs', __gettext('Error log'), get_url(null, 'elggadmin::logs')); 57 58 58 59 sidebar_add(50, 'sidebar-'.elggadmin_currentpage(), elggadmin_sidebar()); … … 84 85 $url = get_url(null, 'elggadmin::') . '/frontpage'; 85 86 break; 87 case 'elggadmin::logs': 88 $url = get_url(null, 'elggadmin::') . '/logs'; 89 break; 90 86 91 } 87 92 devel/mod/elggadmin/lib/elggadmin.inc.php
r1447 r1470 30 30 $page = elggadmin_page_frontpage(); 31 31 elggadmin_currentpage('frontpage'); 32 } elseif ($page_name == 'logs') { 33 $page = elggadmin_page_logs(); 34 elggadmin_currentpage('logs'); 32 35 } else { 33 36 $page = elggadmin_page_config(); … … 212 215 } 213 216 217 function elggadmin_page_logs() { 218 global $CFG; 219 220 $action = optional_param('action'); 221 if ($action == 'elggadmin:logs:clear') { 222 elggadmin_writefile($CFG->dataroot.'errors.log',""); 223 header_redirect(get_url(null,'elggadmin::logs'), __gettext('Error log cleared')); 224 } 225 226 $logs = elggadmin_tailfile($CFG->dataroot.'errors.log', 50); 227 228 $clear = '» ' . pages_html_a(get_url_query(1, 'elggadmin::logs', 'action=elggadmin:logs:clear'), __gettext('Clear error log')); 229 230 $page = new StdClass; 231 $page->title = __gettext('Error log'); 232 $page->body = pages_html_wrap('p', $clear); 233 $page->body .= pages_html_wrap('textarea', $logs, array('wrap'=>'off', 'readonly'=>'readonly')); 234 235 return $page; 236 } 237 214 238 function elggadmin_page_theme() { 215 239 $page = new StdClass; … … 436 460 } 437 461 438 function elggadmin_tpltextarea($tplname, $title=null ) {462 function elggadmin_tpltextarea($tplname, $title=null, $attrs=null) { 439 463 $output = ''; 464 $_attrs = array('name' => $tplname, 'style' => 'width:95%;height:300px;margin:0px 10px 20px 10px;'); 465 440 466 if (is_string($title)) { 441 467 $output .= pages_html_wrap('h2', $title); … … 446 472 } 447 473 448 $output .= pages_html_wrap('textarea', empty($tpl) ? ' ' : $tpl, array('name' => $tplname, 'style' => 'width:95%;height:300px;margin:0px 10px 20px 10px;')); 474 if ($is_array($attrs)) { 475 $_attrs = array_merge($attrs, $_attrs); 476 } 477 478 $output .= pages_html_wrap('textarea', empty($tpl) ? ' ' : $tpl, $_attrs); 449 479 450 480 return $output; … … 498 528 } 499 529 530 function elggadmin_tailfile($file, $lines=20) { 531 if ($fp = @fopen($file, 'r')) { 532 $pos = -1; 533 $t = ' '; 534 $content = ''; 535 536 if ($lines < 0) { 537 $lines = 20; 538 } 539 540 while ($lines > 0) { 541 if (!fseek($fp, $pos, SEEK_END)) { 542 $t = fgetc($fp); 543 $pos--; 544 if ($t == "\n") { 545 $lines--; 546 } 547 $content = $t . $content; 548 } else { 549 rewind($fp); 550 $lines--; 551 } 552 } 553 554 @fclose($fp); 555 return $content; 556 } else { 557 return null; 558 } 559 } 560 500 561 ?>
