WordPress.org

Plugin Directory

Changeset 204562


Ignore:
Timestamp:
02/12/10 13:29:06 (4 years ago)
Author:
KopiPejst
Message:

sidebar widget

Location:
google-buzz-er/trunk
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • google-buzz-er/trunk/README.txt

    r204178 r204562  
    18181. Upload `google-buzz-er` to the `/wp-content/plugins/` directory 
    19192. Activate the plugin through the 'Plugins' menu in WordPress 
    20 3. Put <?php include (ABSPATH . '/wp-content/plugins/google-buzz-er/google-buzz-er.php'); ?> in header 
    21 4. Add <?php GoogleBuzzEr(); ?> on place where you want your Google Buzz posts to be shown. 
     203. Set Google username (without '@gmail.com') on Settings page 
     214. Drag widget on your sidebar - or - 
     225. Add <?php GoogleBuzzEr(); ?> on place where you want your Google Buzz posts to be shown.  
    2223 
    2324== Screenshots == 
     
    3132 
    3233* Sorting posts by publishing time 
     34 
     35= 1.2 = 
     36 
     37* Added sidebar widget feature 
     38* Removed include for header section 
     39 
     40 
  • google-buzz-er/trunk/google-buzz-er-content.php

    r204178 r204562  
    44Plugin URI: http://workshop.rs/2010/02/google-buzz-er-google-buzz-for-wordpress/ 
    55Description: Displaying posts from Google Buzz. 
    6 Version: 1.1 
     6Version: 1.2 
    77Author: Ivan Lazarevic 
    88Author URI: http://www.workshop.rs 
     
    4545} 
    4646 
     47 
     48 
     49function GoogleBuzzEr(){ 
     50    new GoogleBuzzEr_Start; 
     51} 
     52 
     53class GoogleBuzzEr_Start { 
     54 
     55    private $T_URL    = "http://buzz.googleapis.com/feeds/"; 
     56 
     57    function __construct(){ 
     58         
     59        $this->gb_getData(); 
     60         
     61    } 
     62     
     63     
     64    function gb_getData(){ 
     65         
     66        $user = get_option('gber_username'); 
     67         
     68        $xml = @simplexml_load_file($this->T_URL.$user."/public/posted"); 
     69        if(!$xml) { 
     70            echo "Error loading Google Buzz data!"; 
     71            return false; 
     72        } 
     73         
     74        foreach($xml->entry as $data){ 
     75 
     76            if($data->content){ 
     77 
     78                $tmp['content']     = (string)$data->content; 
     79                $tmp['name']        = $data->author->name; 
     80                $tmp['uri']         = $data->author->uri;                
     81                $tmp['updated']     = $data->updated; 
     82                $tmp['href']        = $data->link['href']; 
     83                $tmp['timestamp']   = strtotime($data->updated); 
     84                $sts[] = $tmp;               
     85            } 
     86        } 
     87 
     88        /* sort statuses array by timestamp */ 
     89            $tmp = $sts; 
     90            foreach ($tmp as $key=>$row) { 
     91                $text[$key] = $row['timestamp']; 
     92            } 
     93         
     94            array_multisort($text,SORT_DESC,$tmp); 
     95         
     96            $sts = $tmp; 
     97        /* end sorting */    
     98         
     99        $this->gb_printData($sts); 
     100         
     101    } 
     102     
     103    function gb_printData($data){ 
     104     
     105        $no_of_posts = is_numeric(get_option('gber_number')) ? get_option('gber_number') : 15; 
     106         
     107         
     108        $out = " 
     109        <div id='gber_wrapper'> 
     110            <div id='gber_title'> 
     111                <a href='{$data[0]['uri']}'>{$data[0]['name']}</a> 
     112            </div>"; 
     113         
     114        $i = 0; 
     115        foreach($data as $k=>$v){ 
     116            $out .= " 
     117            <div class='gber_post'> 
     118                {$v['content']} 
     119                <span class='gber_time'>{$this->gb_showTime(strtotime($v['updated']))}, </span> 
     120                <span class='gber_comment'><a href='{$v['href']}'>comment</a></span> 
     121            </div>"; 
     122            $i++; 
     123            if($i == $no_of_posts) break; 
     124                 
     125        } 
     126         
     127        $out .= " 
     128            <a href='http://www.google.com/buzz' id='gber_small'>&nbsp;</a> 
     129        </div>"; 
     130         
     131        echo $out; 
     132     
     133    } 
     134     
     135 
     136     
     137    /** 
     138     * Create 'human readable' date format from timestamp 
     139     *  
     140     * @param $ts - timestamp 
     141     *  
     142     * TODO fix for 1st, 2nd, 3rd  
     143     *  
     144     */ 
     145    private function gb_showTime($ts){ 
     146        $c = time() - $ts; 
     147        $nd = date('g:i A M d\, Y',$ts); 
     148         
     149        if ($c < 60) return $c.' seconds ago'; 
     150        elseif ($c < 3600) return (int)($c/60).' minutes ago'; 
     151        elseif ($c < 3600*24) return (int)($c/3600).' hours ago'; 
     152        else return $nd; 
     153    } 
     154 
     155} 
     156 
     157class GoogleBuzzEr{ 
     158  function control(){ 
     159    echo 'Configure this widget on <a href="'.get_option('siteurl') . '/wp-admin/admin.php?page=google-buzz-er/options.php'.'">options page</a>'; 
     160  } 
     161  function widget($args){ 
     162    echo $args['before_widget']; 
     163    new GoogleBuzzEr_Start(); 
     164    echo $args['after_widget']; 
     165  } 
     166  function register(){ 
     167    register_sidebar_widget('Google Buzz Er', array('GoogleBuzzEr', 'widget')); 
     168    register_widget_control('Google Buzz Er', array('GoogleBuzzEr', 'control')); 
     169  } 
     170} 
     171 
     172 
     173 
    47174add_action('wp_head','gber_head'); 
    48175add_action('admin_menu','gber_options_page'); 
    49  
     176add_action("widgets_init", array('GoogleBuzzEr', 'register')); 
    50177?> 
  • google-buzz-er/trunk/google-buzz-er.php

    r204178 r204562  
    1 <?php 
    2  
    3 function GoogleBuzzEr(){ 
    4     new GoogleBuzzEr; 
    5 } 
    6  
    7 class GoogleBuzzEr { 
    8  
    9     private $T_URL    = "http://buzz.googleapis.com/feeds/"; 
    10  
    11     function __construct(){ 
    12          
    13         $this->gb_getData(); 
    14          
    15     } 
    16      
    17      
    18     function gb_getData(){ 
    19          
    20         $user = get_option('gber_username'); 
    21          
    22         $xml = @simplexml_load_file($this->T_URL.$user."/public/posted"); 
    23         if(!$xml) { 
    24             echo "Error loading Google Buzz data!"; 
    25             return false; 
    26         } 
    27          
    28         foreach($xml->entry as $data){ 
    29  
    30             if($data->content){ 
    31  
    32                 $tmp['content']     = (string)$data->content; 
    33                 $tmp['name']        = $data->author->name; 
    34                 $tmp['uri']         = $data->author->uri;                
    35                 $tmp['updated']     = $data->updated; 
    36                 $tmp['href']        = $data->link['href']; 
    37                 $tmp['timestamp']   = strtotime($data->updated); 
    38                 $sts[] = $tmp;               
    39             } 
    40         } 
    41  
    42         /* sort statuses array by timestamp */ 
    43             $tmp = $sts; 
    44             foreach ($tmp as $key=>$row) { 
    45                 $text[$key] = $row['timestamp']; 
    46             } 
    47          
    48             array_multisort($text,SORT_DESC,$tmp); 
    49          
    50             $sts = $tmp; 
    51         /* end sorting */    
    52          
    53         $this->gb_printData($sts); 
    54          
    55     } 
    56      
    57     function gb_printData($data){ 
    58      
    59         $no_of_posts = is_numeric(get_option('gber_number')) ? get_option('gber_number') : 15; 
    60          
    61          
    62         $out = " 
    63         <div id='gber_wrapper'> 
    64             <div id='gber_title'> 
    65                 <a href='{$data[0]['uri']}'>{$data[0]['name']}</a> 
    66             </div>"; 
    67          
    68         $i = 0; 
    69         foreach($data as $k=>$v){ 
    70             $out .= " 
    71             <div class='gber_post'> 
    72                 {$v['content']} 
    73                 <span class='gber_time'>{$this->gb_showTime(strtotime($v['updated']))}, </span> 
    74                 <span class='gber_comment'><a href='{$v['href']}'>comment</a></span> 
    75             </div>"; 
    76             $i++; 
    77             if($i == $no_of_posts) break; 
    78                  
    79         } 
    80          
    81         $out .= " 
    82             <a href='http://www.google.com/buzz' id='gber_small'>&nbsp;</a> 
    83         </div>"; 
    84          
    85         echo $out; 
    86      
    87     } 
    88      
    89  
    90      
    91     /** 
    92      * Create 'human readable' date format from timestamp 
    93      *  
    94      * @param $ts - timestamp 
    95      *  
    96      * TODO fix for 1st, 2nd, 3rd  
    97      *  
    98      */ 
    99     private function gb_showTime($ts){ 
    100         $c = time() - $ts; 
    101         $nd = date('g:i A M d\, Y',$ts); 
    102          
    103         if ($c < 60) return $c.' seconds ago'; 
    104         elseif ($c < 3600) return (int)($c/60).' minutes ago'; 
    105         elseif ($c < 3600*24) return (int)($c/3600).' hours ago'; 
    106         else return $nd; 
    107     } 
    108  
    109 } 
    110 ?> 
    111  
    112  
    113  
    114  
    115  
  • google-buzz-er/trunk/options.php

    r204231 r204562  
    1010 
    1111    <div id="gber_install"> 
    12         <p>In header of your site add following line of code:</p> 
    13         <code> 
    14             &lt;?php include (ABSPATH . '/wp-content/plugins/google-buzz-er/google-buzz-er.php'); ?&gt; 
    15         </code> 
     12        <p>Go on Appearance &gt; Widgets and drag Google Buzz Er widget to sidebar</p> 
     13 
    1614     
    1715    <br /> 
    18         <p>On place where you want Google Buzz ER to be shown put:</p> 
     16        <p>Or on place where you want Google Buzz ER to be shown put:</p> 
    1917     
    2018        <code> 
Note: See TracChangeset for help on using the changeset viewer.