html.php
247 lines
| 6.6 KiB
| text/x-php
|
HtmlPhpLexer
/ include / html.php
| r1 | <?php | |||
| // Capture error and info messages in these variables, rendered in adminmenu() as a box below the menu bar. | ||||
| $error=''; | ||||
| $info=''; | ||||
| // write from doctype, html, head, body | ||||
| function adminhead($title = '') { | ||||
| ?> | ||||
| <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> | ||||
| <html xmlns="http://www.w3.org/1999/xhtml" lang="en-US" xml:lang="en-US"> | ||||
| <head> | ||||
| <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> | ||||
| <title>Megatokyo Administrative Dashboard<?php if( $title ) echo " — $title"; ?></title> | ||||
| r31 | <link rel="stylesheet" href="<?php echo ADMIN_PATH; ?>/styles/wp-admin.css" type="text/css" /> | |||
| r1 | <link type="application/rss+xml" rel="alternate" title="Admin Log" href="<?php printf('%s%s/%s/adminlog.xml', SITE_HOST, SITE_PATH, SITE_ADMIN) ?>" /> | |||
| <link type="application/rss+xml" rel="alternate" title="Scratchpad" href="<?php printf('%s%s/%s/scratchpad.xml', SITE_HOST, SITE_PATH, SITE_ADMIN) ?>" /> | ||||
| </head> | ||||
| <body> | ||||
| <?php | ||||
| } | ||||
| // structure of the top level menubar | ||||
| //'manage-statusbox.php' => 'Update Statusbox', | ||||
| $menus = array( | ||||
| 'index.php' => 'Dashboard', | ||||
| 'post-comic.php?next=yes' => 'Post Next Comic', | ||||
| 'post-comic.php' => 'Post Comic', | ||||
| 'post-rant.php' => 'Write Rant', | ||||
| 'post-twitter.php' => 'Update Feeds', | ||||
| 'post-page.php' => 'Add page', | ||||
| 'manage-comics.php' => 'Manage', | ||||
| 'users.php' => 'Users' | ||||
| ); | ||||
| // structure of the second level menubar | ||||
| $submenu['manage-comics.php'] = array( | ||||
| 'manage-comics.php' => 'Comics', | ||||
| 'manage-rants.php' => 'Rants' , | ||||
| 'manage-pages.php' => 'Pages', | ||||
| 'manage-types.php' => 'Types', | ||||
| r8 | 'manage-twitter-users.php' => 'Twitter Users', | |||
| r1 | 'manage-metatypes.php' => 'Metatypes', | |||
| 'swap-comics.php' => 'Swap Comics', | ||||
| 'character-twitter.php' => 'Character Twitters', | ||||
| 'view-adminlog.php' => 'View Admin Log' | ||||
| ); | ||||
| function adminmenu($current='') { | ||||
| global $menus, $submenu, $error, $info; | ||||
| if( $current ) { | ||||
| $curS = $curT = $current; | ||||
| } else { | ||||
| $curS = $curT = basename( $_SERVER["PHP_SELF"] ); | ||||
| } | ||||
| r5 | ||||
| r1 | foreach( $submenu as $l=>$L ) { | |||
| foreach( $L as $k=>$v ) { | ||||
| if( $k == $curS ) { | ||||
| $curT = $l; | ||||
| } | ||||
| } | ||||
| } | ||||
| $current_sub_menu = false; | ||||
| r5 | ?> | |||
| r1 | <div id="wphead"> | |||
| <h1>Megatokyo Site Administration <span>(<a href="<?php echo SITE_HOST . SITE_PATH; ?>">View site »</a>)</span></h1> | ||||
| </div> | ||||
| r5 | <div id="user_info"><p>Howdy, <strong><?php getCurrentUser(); ?></strong>. [<a href="<?php echo ADMIN_PATH; | |||
| r1 | ?>/login.php?action=logout" title="Log out of this account">Sign Out</a>] </p></div> | |||
| <ul id="adminmenu"> | ||||
| <?php | ||||
| foreach ( $menus as $url=>$desc ) { | ||||
| printf ( " <li><a href=\"%s/%s\"%s>%s</a></li>\n", ADMIN_PATH, $url, ( $curT == $url ? ' class="current"' : '' ), htmlentities($desc) ); | ||||
| if( $curT == $url && isset($submenu[$url]) ) { | ||||
| $current_sub_menu = $submenu[$url]; | ||||
| } | ||||
| } | ||||
| ?></ul><?php | ||||
| if( $current_sub_menu ) { | ||||
| ?><ul id="submenu"><?php | ||||
| foreach( $current_sub_menu as $url => $desc ) { | ||||
| printf ( " <li><a href=\"%s/%s\"%s>%s</a></li>\n", ADMIN_PATH, $url, ( $curS == $url ? ' class="current"' : '' ), htmlentities($desc) ); | ||||
| } | ||||
| ?></ul><?php | ||||
| } else { | ||||
| ?><div id="minisub"></div><?php | ||||
| } | ||||
| ?> | ||||
| r5 | <div class="clear"></div> | |||
| r1 | ||||
| <?php | ||||
| if( $_GET['deleted'] && $_GET['deleted'] == 'success' ) $info.='<p>Deleted successfully.</p>'; | ||||
| if( $_GET['saved'] && $_GET['saved'] == 'success' ) $info.='<p>Changes saved successfully.</p>'; | ||||
| if( $error ) echo "<div class=\"error fade\">$error</div>"; | ||||
| if( $info ) echo "<div class=\"updated fade\">$info</div>"; | ||||
| ?> | ||||
| <div class="wrap"> | ||||
| r5 | <?php | |||
| r1 | } | |||
| function adminfooter($copy = true) { | ||||
| ?> | ||||
| </div> | ||||
| <?php if( $copy ) { ?> | ||||
| <div id="footer"> | ||||
| <p class="logo">Style based on <a href="http://wordpress.org/">Wordpress</a>. Powered by Taiyaki.</p> | ||||
| </div> | ||||
| <?php } ?> | ||||
| </body> | ||||
| </html> | ||||
| <?php | ||||
| } | ||||
| function pagination( $page, $total ) { | ||||
| ?><p class="pagenav"><?php | ||||
| if( 1 < $page ) { | ||||
| ?><a class="prev" href="?page=<?php echo $page-1; ?>">« Previous Page</a> <?php | ||||
| } | ||||
| for( $page_num = 1; $page_num <= $total; $page_num++ ) { | ||||
| if ( $page == $page_num ) { | ||||
| echo "<span>$page_num</span>"; | ||||
| } else { | ||||
| if ( $page_num < 4 || ( $page_num >= $page - 3 && $page_num <= $page + 3 ) || $page_num > $total - 3 ) { | ||||
| ?><a class="page-numbers" href="?page=<?php echo $page_num; ?>"><?php echo $page_num; ?></a><?php | ||||
| $in=true; | ||||
| } elseif( $in==true ) { | ||||
| echo ' ... '; | ||||
| $in=false; | ||||
| } | ||||
| } | ||||
| } | ||||
| if( $page < $total ) { | ||||
| ?> <a class="next" href="?page=<?php echo $page+1; ?>">Next Page »</a><?php | ||||
| } | ||||
| ?></p><?php | ||||
| } | ||||
| set_error_handler('handle_error'); | ||||
| function handle_error($errno, $errstr, $errfile, $errline, $errcontext) { | ||||
| switch ($errno) { | ||||
| case E_USER_WARNING: | ||||
| case E_USER_NOTICE: | ||||
| case E_WARNING: | ||||
| case E_NOTICE: | ||||
| case E_CORE_WARNING: | ||||
| case E_COMPILE_WARNING: | ||||
| break; | ||||
| r26 | ||||
| r1 | case E_USER_ERROR: | |||
| case E_ERROR: | ||||
| case E_PARSE: | ||||
| case E_CORE_ERROR: | ||||
| case E_COMPILE_ERROR: | ||||
| header('Content-Type: text/html; charset=utf-8'); | ||||
| if (eregi('^(sql)$', $errstr)) { | ||||
| r26 | // $errstr = "SQL Error " . mysqli_errno() . ': ' . mysqli_error(); | |||
| r1 | } | |||
| $message = "Error#$errno: $errstr"; | ||||
| //logthis( $message, "in $errfile at line $errline" ); | ||||
| mtdie( $message, 'Critical Site Error' ); | ||||
| } | ||||
| } | ||||
| function logthis($str,$extra='') { | ||||
| error_log( $str, 0 ); | ||||
| if( $extra ) error_log( "Megatokyo Site Error\r\n$str\r\n$extra", 1, SITE_CONTACT ); | ||||
| } | ||||
| function mtdie($message,$title='') { | ||||
| header('Content-Type: text/html; charset=utf-8'); | ||||
| ?> | ||||
| <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> | ||||
| <html xmlns="http://www.w3.org/1999/xhtml"> | ||||
| <head> | ||||
| <title><?php echo $title?$title:'Megatokyo Administration Editor'; ?></title> | ||||
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> | ||||
| <style media="screen" type="text/css"> | ||||
| html { | ||||
| background: #eee; | ||||
| } | ||||
| body { | ||||
| background: #fff; | ||||
| color: #000; | ||||
| font-family: Georgia, "Times New Roman", Times, serif; | ||||
| margin-left: 25%; | ||||
| margin-right: 25%; | ||||
| padding: .2em 2em; | ||||
| } | ||||
| h1 { | ||||
| color: #006; | ||||
| font-dize: 18px; | ||||
| font-weight: lighter; | ||||
| } | ||||
| r26 | h2 { | |||
| r1 | font-size: 16px; | |||
| } | ||||
| p, li, dt { | ||||
| line-height: 140%; | ||||
| padding-bottom: 2px; | ||||
| } | ||||
| ul, ol { | ||||
| padding: 5px 5px 5px 20px; | ||||
| } | ||||
| #logo { | ||||
| margin-bottom: 2em; | ||||
| } | ||||
| --> | ||||
| </style> | ||||
| </head> | ||||
| <body> | ||||
| <h1 id="Logo">Megatokyo Admin</h1> | ||||
| r26 | <?php if($title) echo "<h2>$title</h2>\n"; ?> | |||
| r1 | <p><?php echo $message; ?></p> | |||
| </body> | ||||
| </html> | ||||
| <?php | ||||
| die(); | ||||
| } | ||||
| function numeric_entities($string){ | ||||
| $mapping = array(); | ||||
| foreach (get_html_translation_table(HTML_ENTITIES, ENT_QUOTES) as $char => $entity){ | ||||
| $mapping[$entity] = '&#' . ord($char) . ';'; | ||||
| } | ||||
| return str_replace(array_keys($mapping), $mapping, $string); | ||||
| } | ||||
| function utfentities($string) | ||||
| { | ||||
| return htmlentities($string, ENT_COMPAT, 'UTF-8'); | ||||
| } | ||||
| ?> | ||||
