WordPress.org

Plugin Directory

Changeset 413686


Ignore:
Timestamp:
07/22/11 12:21:23 (3 years ago)
Author:
ydubois
Message:

Versio 1.1 with bugfixes

Location:
yd-buddypress-feed-syndication/trunk
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • yd-buddypress-feed-syndication/trunk/inc/ydbfs.inc.php

    r413673 r413686  
    33     
    44    const DESCRIPTION_MAX_SIZE = 300; 
     5    const RSS_CACHE_LIFETIME = 10800;       // SimplePie rss feed cache = 60 * 60 * 3 seconds 
    56    private $AVAILABLE_DELAYS = array( 
    67        '3 hours' => 10800, 
     
    1718         
    1819        add_action( 'init', array( &$this, 'setup_tabs' ) ); 
    19         //add_filter( 'wp_feed_cache_transient_lifetime', array( &$this, 'set_transient_lifetime' ) ); 
     20        add_filter( 'wp_feed_cache_transient_lifetime', array( &$this, 'set_transient_lifetime' ) ); 
    2021    } 
    2122 
     
    3940     
    4041    /* thanks to Guillaume Dott @ Selliance.com for pointing me to this */ 
    41     function set_transient_lifetime( $lifetime, $url ) { 
    42         return $lifetime; 
     42    function set_transient_lifetime( $lifetime, $url = '' ) { 
     43         
     44        return self::RSS_CACHE_LIFETIME; 
    4345    } 
    4446     
     
    233235    } 
    234236     
    235     function get_feed_list( $nok = false ) { 
     237    function get_feed_list( $nok = false, $force = false ) { 
    236238        $feeds = array(); 
    237239        $users = self::get_all_feed_users(); 
     240        //if( $force ) echo 'FORCE<br/>';   //debug 
     241        //if( $nok ) echo 'NOK<br/>';   //debug 
    238242        foreach( $users as $user ) { 
    239243            $syndications = get_user_meta( (int)$user, 'yd_syndications', true ); 
     
    246250                    if( isset( $syndications_updated[$key] ) && $syndications_updated[$key] > 0 ) { 
    247251                        $delay = time() - $syndications_updated[$key]; 
    248                         if( $delay < $syndications_refresh[$key] ) 
     252                        if( !$force && $delay < $syndications_refresh[$key] ) 
    249253                            continue; 
    250254                    } 
     
    263267     * get all appropriate feeds, fetch them, parse them, inject items in user's activity feeds 
    264268     */ 
    265     function syndicate( $nok = false ) { 
    266         $feeds = self::get_feed_list( $nok ); 
    267         //var_dump( $feeds ); 
     269    function syndicate( $nok = false, $force = false ) { 
     270        $feeds = self::get_feed_list( $nok, $force ); 
     271        //var_dump( $feeds );   //debug 
    268272         
    269273        foreach ( (array) $feeds as $feed_id => $feed ) { 
     
    278282            //Mark feed as updated 
    279283            self::mark_updated( $feed ); 
     284             
     285            /** debug ** 
     286            if( $force ) { 
     287                $cd = $rss->cache_duration; 
     288                echo "cache duration: $cd for " . $feed['feed_url'] . "<br/>"; 
     289            } 
     290            ** /debug **/ 
    280291             
    281292            $maxitems = $rss->get_item_quantity(); 
     
    308319     
    309320                $items[$key]['author'] = $user_id; 
    310                  
    311                 /** debug **/ 
    312                 $cd = $rss->get_cache_duration(); 
    313                 echo 'cd: $cd<br/>'; 
    314321            } 
    315322             
     
    371378    // ======================================  CRON RELATED  ================================== 
    372379     
    373     function hourly_update( $op ) { 
     380    function hourly_update( $op = false, $params = '', $force = false ) { 
    374381        if( !$op || !is_object( $op ) ) { 
    375382            $op = new YD_OptionPage(); //dummy object 
    376383        } 
    377         self::do_things( &$op ); 
     384        //if( $force ) echo 'HU_FORCE' . $force . '<br/>';  //debug 
     385        //var_dump( $force );   //debug 
     386        self::do_things( &$op, $nok = false, $force ); 
    378387        update_option( 'YD_P_hourly', time() ); 
    379388    } 
    380389     
    381     function daily_update( $op ) { 
     390    function force_update( $op = false ) { 
     391        self::hourly_update( $op, '', $force = true ); 
     392    } 
     393 
     394    function force_check( $op = false ) { 
     395        self::daily_update( $op, $force = true ); 
     396    } 
     397     
     398    function daily_update( $op = false, $force = false ) { 
    382399        if( !$op || !is_object( $op ) ) { 
    383400            $op = new YD_OptionPage(); //dummy object 
    384401        } 
    385         self::do_things( &$op, $nok = true ); 
     402        self::do_things( &$op, $nok = true, $force ); 
    386403        update_option( 'YD_P_daily', time() ); 
    387404    } 
    388405     
    389     function do_things( $op, $nok = false ) { 
     406    function do_things( $op = false, $nok = false, $force = false ) { 
    390407        // do things 
    391         $option_key = 'yd-fbsplugin'; 
    392         $options = get_option( $option_key ); 
    393          
    394         self::syndicate( $nok ); 
     408        //$option_key = 'yd-fbsplugin'; 
     409        //$options = get_option( $option_key ); 
     410         
     411        self::syndicate( $nok, $force ); 
    395412        //$op->error_msg .= 'Great.'; 
    396413        $op->update_msg .= 'Feeds syndication updated.'; 
  • yd-buddypress-feed-syndication/trunk/readme.txt

    r411382 r413686  
    7878== Revisions == 
    7979 
     80* 1.1.0. Production release / bugfix of 2011/07/22 
    8081* 1.0.0. Production release of 2011/07/18 
    8182* 0.1.1. Beta release of 2011/07/15 
     
    8485== Changelog == 
    8586 
     87= 1.1.0 = 
     88* Bugfix : feeds without author (thanks to Guillaume Dott @ Selliance.com ) 
     89* Bugfix : SimplePie default cache lifetime (thanks to Guillaume Dott @ Selliance.com ) 
     90* Features: added buttons to force feed reloads in the option page 
    8691= 1.0.0 = 
    8792* Italian language version provided by Czz (Giancarlo Cuzzolin @ Uajika.tk) 
     
    97102== Upgrade Notice == 
    98103 
     104= 1.1.0 = 
     105* No specifics. Automatic upgrade works fine. 
    99106= 1.0.0 = 
    100107* No specifics. Automatic upgrade works fine. 
  • yd-buddypress-feed-syndication/trunk/yd-buddypress-feed-syndication.php

    r411353 r413686  
    33 * @package YD_BuddyPress-feed-syndication 
    44 * @author Yann Dubois 
    5  * @version 1.0.0 
     5 * @version 1.1.0 
    66 */ 
    77 
     
    1010 Plugin URI: http://www.yann.com/ 
    1111 Description: Syndicate and aggregate any RSS feeds into your BuddyPress activity feed/wall (like with Facebook). 
    12  Version: 1.0.0 
     12 Version: 1.1.0 
    1313 Author: Yann Dubois 
    1414 Author URI: http://www.yann.com/ 
     
    3737 
    3838/** 
     39 Revision 1.1.0: 
     40 - Production release of 2011/07/22 
     41 - Bugfix : feeds without author (thanks to Guillaume Dott @ Selliance.com ) 
     42 - Bugfix : SimplePie default cache lifetime (thanks to Guillaume Dott @ Selliance.com ) 
     43 - Features: added buttons to force feed reloads in the option page 
    3944 Revision 1.0.0: 
    4045 - Production release of 2011/07/18 
     
    7479    array( 
    7580        'name'              => 'YD BuddyPress Feed Syndication', 
    76         'version'           => '1.0.0', 
     81        'version'           => '1.1.0', 
    7782        'has_option_page'   => true, 
    7883        'option_page_title' => 'YD Feed Syndication', 
     
    118123        'form_add_actions'  => array( 
    119124                'Manually run hourly process'   => array( 'ydbfsPlugin', 'hourly_update' ), 
     125                'Manually force feed reload'    => array( 'ydbfsPlugin', 'force_update' ), 
     126                'Manually check broken feeds'   => array( 'ydbfsPlugin', 'force_check' ), 
    120127                'Check latest'                  => array( 'ydbfsPlugin', 'check_update' ) 
    121128        ), 
Note: See TracChangeset for help on using the changeset viewer.