Make WordPress Core

Changeset 1976


Ignore:
Timestamp:
12/19/2004 12:10:10 AM (22 years ago)
Author:
saxmatt
Message:

First pass at dashboard. Hat tip: Jesuit.

Location:
trunk
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/wp-admin/index.php

    r1947 r1976  
    11<?php
     2require_once('admin.php');
     3$title = __('Dashboard');
     4require_once('admin-header.php');
    25
    3 require('../wp-config.php');
    4 auth_redirect();
     6$today = current_time('mysql');
     7?>
    58
     9<div class="wrap">
     10<div id="zeitgeist">
     11<h2><?php _e('Latest Activity'); ?></h2>
     12<?php
     13if ( $recentposts = $wpdb->get_results("SELECT ID, post_title FROM $wpdb->posts WHERE post_status = 'publish' AND post_date_gmt < '$today' ORDER BY post_date DESC LIMIT 5") ) :
     14?>
     15<div>
     16<h3><?php _e('Posts'); ?></h3>
     17<ul>
     18<?php
     19foreach ($recentposts as $post) {
     20        if ($post->post_title == '')
     21                $post->post_title = sprintf(__('Post #%s'), $post->ID);
     22        echo "<li><a href='post.php?action=edit&amp;post=$post->ID'>";
     23        the_title();
     24        echo '</a></li>';
     25}
     26?>
     27</ul>
     28</div>
     29<?php endif; ?>
     30
     31<?php
     32if ( $scheduled = $wpdb->get_results("SELECT ID, post_title, post_date FROM $wpdb->posts WHERE post_status = 'publish' AND post_date_gmt > '$today'") ) :
     33?>
     34<div>
     35<h3><?php _e('Scheduled Entries:') ?></h3>
     36<ul>
     37<?php
     38foreach ($scheduled as $post) {
     39        if ($post->post_title == '')
     40                $post->post_title = sprintf(__('Post #%s'), $post->ID);
     41        echo "<li><a href='post.php?action=edit&amp;post=$post->ID' title='" . __('Edit this post') . "'>$post->post_title</a> in " . human_time_diff( time(), strtotime($post->post_date) )  . "</li>";
     42}
     43?>
     44</ul>
     45</div>
     46<?php endif; ?>
     47
     48<?php
     49if ( $comments = $wpdb->get_results("SELECT comment_author, comment_author_url, comment_ID, comment_post_ID FROM $wpdb->comments ORDER BY comment_date_gmt DESC LIMIT 5") ) :
     50?>
     51<div>
     52<h3><?php _e('Comments'); ?></h3>
     53<ul>
     54<?php
     55foreach ($comments as $comment) {
     56        echo '<li>' . sprintf('%s on %s', get_comment_author_link(), '<a href="'. get_permalink($comment->comment_post_ID) . '#comment-' . $comment->comment_ID . '">' . get_the_title($comment->comment_post_ID) . '</a>');
     57        edit_comment_link(__("Edit"), ' <small>(', ')</small>');
     58        echo '</li>';
     59}
     60?>
     61</ul>
     62<?php
     63if ( $numcomments = $wpdb->get_var("SELECT COUNT(*) FROM $tablecomments WHERE comment_approved = '0'") ) :
     64?>
     65<p><a href="moderation.php"><?php echo sprintf(__('There are comments in moderation (%s)'), number_format($numcomments) ); ?> &raquo;</a></p>
     66<?php endif; ?>
     67</div>
     68
     69<?php endif; ?>
     70
     71<div>
     72<h3><?php _e('Blog Stats'); ?></h3>
     73<?php
     74$numposts = $wpdb->get_var("SELECT COUNT(*) FROM $wpdb->posts WHERE post_status = 'publish'");
     75if (0 < $numposts) $numposts = number_format($numposts);
     76
     77$numcomms = $wpdb->get_var("SELECT COUNT(*) FROM $wpdb->comments WHERE comment_approved = '1'");
     78if (0 < $numcomms) $numcomms = number_format($numcomms);
     79
     80$numcats = $wpdb->get_var("SELECT COUNT(*) FROM $wpdb->categories");
     81if (0 < $numcats) $numcats = number_format($numcats);
     82?>
     83<p>There are currently <?php echo $numposts ?> <a href="edit.php" title="posts">posts</a> and <?php echo $numcomms ?> <a href="edit-comments.php" title="Comments">comments</a>, contained within <?php echo $numcats ?> <a href="categories.php" title="categories">categories</a>.</p>
     84</div>
     85
     86</div>
     87
     88<h2><?php _e('Dashboard'); ?></h2>
     89<br clear="all" />
     90</div>
     91<div class="wrap">
     92<p>
     93                <strong>
     94                <?php _e('Your Drafts:') ?>
     95                </strong>
     96<br />
     97                <?php
    698get_currentuserinfo();
    7 
    8 if (0 == $user_level) {
    9         $redirect_to = get_settings('siteurl') . '/wp-admin/profile.php';
    10 } else {
    11         $redirect_to = get_settings('siteurl') . '/wp-admin/post.php';
    12 }
    13 header ("Location: $redirect_to");
     99$drafts = $wpdb->get_results("SELECT ID, post_title FROM $tableposts WHERE post_status = 'draft' AND post_author = $user_ID");
     100if ($drafts) {
     101        ?>
     102    <?php
     103        $i = 0;
     104        foreach ($drafts as $draft) {
     105                if (0 != $i)
     106                        echo ', ';
     107                $draft->post_title = stripslashes($draft->post_title);
     108                if ($draft->post_title == '')
     109                        $draft->post_title = sprintf(__('Post #%s'), $draft->ID);
     110                echo "<a href='post.php?action=edit&post=$draft->ID' title='" . __('Edit this draft') . "'>$draft->post_title</a>";
     111                ++$i;
     112                }
     113                }else{
     114                 echo ('No Entries found.');
     115                 }
     116                ?>
     117        </p>
     118                </div>
     119<?php
     120require('./admin-footer.php');
    14121?>
  • trunk/wp-admin/wp-admin.css

    r1951 r1976  
     1#zeitgeist {
     2        width: 27%;
     3        float: right;
     4        font-size: 90%;
     5        background-color: #eee;
     6        padding: 1em;
     7        border: 1px solid #ccc;
     8}
     9
     10#zeitgeist h2 {
     11        border-bottom: none;
     12}
     13#zeitgeist ul {
     14        margin: 0 0 .3em .6em;
     15        padding: 0 0 0 .6em;
     16}
     17#zeitgeist li, #zeitgeist p {
     18        margin: .2em 0;
     19}
     20#zeitgeist h3 {
     21        border-top: 1px solid #ccc;
     22        font-size: 16px;
     23        margin: .5em 0;
     24}
     25
    126* html #poststuff {
    227        height: 100%; /* kill peekaboo bug in IE */
  • trunk/wp-includes/functions-formatting.php

    r1964 r1976  
    551551}
    552552
     553function human_time_diff( $from, $to = '' ) {     
     554        if ( empty($to) )
     555                $to = time();
     556        $diff = (int) ($to - $from);
     557        if ($diff <= 3600) {
     558                $mins = round($diff / 60);
     559                $since = sprintf( __('%s mins', $mins) );
     560        } else if (($diff <= 86400) && ($diff > 3600)) {
     561                $hours = round($diff / 3600);
     562                if ($hours <= 1)
     563                        $since = __('1 hour');
     564                else
     565                        $since = sprintf( __('%s hours'), $hours );
     566        } elseif ($diff >= 86400) {
     567                $days = round($diff / 86400);
     568                if ($days <= 1)
     569                        $since = __('1 day');
     570                else
     571                        $since = sprintf( __('%s days'), $days );
     572        }
     573        return $since;
     574}
     575
    553576?>
  • trunk/wp-includes/template-functions-post.php

    r1966 r1976  
    4747}
    4848
    49 function get_the_title() {
    50         global $post;
    51         $output = $post->post_title;
    52         if (!empty($post->post_password)) { // if there's a password
    53                 $output = 'Protected: ' . $output;
    54         }
    55         return $output;
     49function get_the_title($id = 0) {
     50        global $post, $wpdb;
     51        $title = $post->post_title;
     52        if ( 0 != $id )
     53                $title = $wpdb->get_var("SELECT post_title FROM $wpdb->posts WHERE ID = $id");
     54
     55        if ( !empty($post->post_password) ) { // if there's a password
     56                $title = 'Protected: ' . $title;
     57        }
     58        return $title;
    5659}
    5760
Note: See TracChangeset for help on using the changeset viewer.