Plugin Directory

Changeset 592392


Ignore:
Timestamp:
08/30/2012 01:31:19 PM (14 years ago)
Author:
O-Zone
Message:

fix some facebook issue

Location:
wp-meetup-activity/trunk
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • wp-meetup-activity/trunk/facebook-sdk/class-facebook-wp.php

    r591316 r592392  
    44    require_once( dirname( __FILE__ ) . '/facebook.php' );
    55
    6 function fb_get_user_meta( $user_id, $meta_key, $single = false ) {
    7     $override = apply_filters( 'fb_get_user_meta', false, $user_id, $meta_key, $single );
    8     if ( false !== $override )
    9         return $override;
     6if ( ! class_exists( 'Facebook_WP_Extend' ) ):
    107
    11     return get_user_meta( $user_id, $meta_key, $single );
    12 }
    13 
    14 function fb_update_user_meta( $user_id, $meta_key, $meta_value, $prev_value = '' ) {
    15     $override = apply_filters( 'fb_update_user_meta', false, $user_id, $meta_key, $meta_value, $prev_value );
    16     if ( false !== $override )
    17         return $override;
    18 
    19     return update_user_meta( $user_id, $meta_key, $meta_value, $prev_value );
    20 }
    21 
    22 function fb_delete_user_meta( $user_id, $meta_key, $meta_value = '' ) {
    23     $override = apply_filters( 'fb_delete_user_meta', false, $user_id, $meta_key, $meta_value );
    24     if ( false !== $override )
    25         return $override;
    26 
    27     return delete_user_meta( $user_id, $meta_key, $meta_value );
    28 }
    29 
    30 /**
    31  * Override default Facebook PHP SDK behaviors with WordPress-friendly features
    32  *
    33  * @since 1.0
    34  */
    358class Facebook_WP_Extend extends WP_Facebook {
    369    /**
     
    139112       
    140113        //WP 3.0+
    141         fb_update_user_meta( get_current_user_id(), $key, $value);
     114        wpmeetupactivity_fb_update_user_meta( get_current_user_id(), $key, $value);
    142115    }
    143116
     
    149122    }
    150123   
    151       return $usermeta = fb_get_user_meta( get_current_user_id(), $key, true );
     124      return $usermeta = wpmeetupactivity_fb_get_user_meta( get_current_user_id(), $key, true );
    152125    }
    153126
     
    158131    }
    159132
    160     fb_delete_user_meta( get_current_user_id(), $key);
     133    wpmeetupactivity_fb_delete_user_meta( get_current_user_id(), $key);
    161134  }
    162135
     
    167140  }
    168141}
     142
     143endif;
     144
    169145?>
  • wp-meetup-activity/trunk/readme.txt

    r591316 r592392  
    4747== Changelog ==
    4848
     49= 0.1.3 =
     50* Enable/disable Facebook support
     51* Fixed some Facebook issue with other plugins (like "Facebook for Wordpress")
     52
    4953= 0.1.2 =
    5054* Facebook support for Post-in-Page on new topics / reply
  • wp-meetup-activity/trunk/wp-meetup-activity.php

    r591318 r592392  
    44Plugin URI: http://www.zerozone.it/wordpress-meetup-plugin/
    55Description: Display group activity from Meetup.com in a widget for your wordpress
    6 Version: 0.1.2
     6Version: 0.1.3
    77Author: Michele "O-Zone" Pinassi
    88Author URI: http://www.zerozone.it/
     
    4444global $wpdb;
    4545
    46 define(WP_MEETUP_ACTIVITY,'0.1.2');
     46define(WP_MEETUP_ACTIVITY,'0.1.3');
    4747define(WP_MEETUP_ACTIVITY_TABLE, $wpdb->prefix."meetup_activity");
    4848
     
    407407}
    408408
     409function wpmeetupactivity_fb_get_user_meta( $user_id, $meta_key, $single = false ) {
     410    $override = apply_filters( 'wpmeetupactivity_fb_get_user_meta', false, $user_id, $meta_key, $single );
     411    if ( false !== $override )
     412        return $override;
     413
     414    return get_user_meta( $user_id, $meta_key, $single );
     415}
     416
     417function wpmeetupactivity_fb_update_user_meta( $user_id, $meta_key, $meta_value, $prev_value = '' ) {
     418    $override = apply_filters( 'wpmeetupactivity_fb_update_user_meta', false, $user_id, $meta_key, $meta_value, $prev_value );
     419    if ( false !== $override )
     420        return $override;
     421
     422    return update_user_meta( $user_id, $meta_key, $meta_value, $prev_value );
     423}
     424
     425function wpmeetupactivity_fb_delete_user_meta( $user_id, $meta_key, $meta_value = '' ) {
     426    $override = apply_filters( 'wpmeetupactivity_fb_delete_user_meta', false, $user_id, $meta_key, $meta_value );
     427    if ( false !== $override )
     428        return $override;
     429
     430    return delete_user_meta( $user_id, $meta_key, $meta_value );
     431}
     432
    409433function wpmeetupactivity_fb_js_sdk_setup() {
    410434    $options = get_option( 'fb_options' );
     
    490514    global $facebook;
    491515
    492     $options = get_option('wpmeetupactivity_fb_options');
    493 
    494     // appId and secret are required by BaseFacebook
    495     if((!empty( $options['app_id']) && !empty($options['app_secret']))) {
    496     $facebook = new Facebook_WP_Extend(array(
    497         'appId'  => $options['app_id'],
    498         'secret' => $options['app_secret'],
    499         ));
    500     }
    501 
    502     add_action( 'wp_head', 'wpmeetupactivity_fb_js_sdk_setup' );
    503     add_action( 'admin_head', 'wpmeetupactivity_fb_js_sdk_setup' );
     516    $my_prefs = get_option('wpmeetupactivity_prefs');
     517
     518    if($my_prefs["enableFb"]) {
     519   
     520    $fb_options = get_option('wpmeetupactivity_fb_options');
     521
     522    // appId and secret are required by BaseFacebook
     523    if((!empty( $fb_options['app_id']) && !empty($fb_options['app_secret']))) {
     524        $facebook = new Facebook_WP_Extend(array(
     525        'appId'  => $fb_options['app_id'],
     526        'secret' => $fb_options['app_secret'],
     527            ));
     528    }
     529
     530    add_action( 'wp_head', 'wpmeetupactivity_fb_js_sdk_setup' );
     531    add_action( 'admin_head', 'wpmeetupactivity_fb_js_sdk_setup' );
     532    }
    504533}
    505534
     
    549578        }
    550579
     580        if($_POST["wpmeetupactivity_prefs_fb_enable"] == 'on') {
     581            $my_prefs["enableFb"] = true;
     582        } else {
     583            $my_prefs["enableFb"] = false;
     584        }
     585
    551586    $my_prefs["displayAct"] = intval($_POST["wpmeetupactivity_prefs_displayact"]);
    552587    $my_prefs["orderBy"] = intval($_POST["wpmeetupactivity_prefs_orderby"]);
     
    560595    // FB options
    561596   
    562     $fb_options['app_id'] = $_POST['wpmeetupactivity_fb_appid'];
    563     $fb_options['app_secret'] = $_POST['wpmeetupactivity_fb_appsecret'];
    564 
    565         if($_POST["wpmeetupactivity_fb_post_on_new"] == 'on') {
    566         $fb_options['post_on_new'] = true;
    567     } else {
    568         $fb_options['post_on_new'] = false;
    569     }
    570 
    571         if($_POST["wpmeetupactivity_fb_post_on_reply"] == 'on') {
    572         $fb_options['post_on_reply'] = true;
    573     } else {
    574         $fb_options['post_on_reply'] = false;
    575     }
    576 
    577     $fb_pages = array();
    578 
    579         foreach($_POST["wpmeetupactivity_fb_pages"] as $pageId => $val) {
    580         $fb_pages[] = $pageId;
    581     }
    582 
    583     $fb_options['pages'] = $fb_pages;
    584    
    585     update_option('wpmeetupactivity_fb_options',$fb_options);
     597        if($my_prefs["enableFb"]) {
     598        $fb_options['app_id'] = $_POST['wpmeetupactivity_fb_appid'];
     599        $fb_options['app_secret'] = $_POST['wpmeetupactivity_fb_appsecret'];
     600
     601        if($_POST["wpmeetupactivity_fb_post_on_new"] == 'on') {
     602            $fb_options['post_on_new'] = true;
     603        } else {
     604        $fb_options['post_on_new'] = false;
     605            }
     606
     607        if($_POST["wpmeetupactivity_fb_post_on_reply"] == 'on') {
     608        $fb_options['post_on_reply'] = true;
     609        } else {
     610        $fb_options['post_on_reply'] = false;
     611        }
     612
     613        $fb_pages = array();
     614   
     615        if(isset($_POST["wpmeetupactivity_fb_pages"])) {
     616        foreach($_POST["wpmeetupactivity_fb_pages"] as $pageId => $val) {
     617            $fb_pages[] = $pageId;
     618        }
     619        }   
     620        $fb_options['pages'] = $fb_pages;
     621       
     622        update_option('wpmeetupactivity_fb_options',$fb_options);
     623    }
    586624   
    587625    // Saved !
     
    686724    </p>
    687725   
    688     </fieldset>";
    689    
    690     $fb_options = get_option('wpmeetupactivity_fb_options');
    691 
    692     echo "<fieldset class='wpmeetupactivity-setup-fieldset'><legend> Facebook settings </legend>";
    693 
    694     $fb_user = $facebook->getUser();
    695    
    696     if ((empty($fb_options['app_id']) || empty($fb_options['app_secret'])) && current_user_can( 'manage_options' ) ) {
    697     echo "<div class=\"error\"><p><strong>";
    698     echo __('Need to configure Facebook Setting to use the post to page function !', $wpmeetupactivity_textdomain);
    699     echo "</strong></p></div>";
    700     } else {
    701     $params = array( 'scope' => 'read_stream, manage_pages, publish_stream, offline_access' );
     726    </fieldset><fieldset class='wpmeetupactivity-setup-fieldset'><legend> Facebook settings </legend>
     727    <p>
     728        <input type='checkbox' name='wpmeetupactivity_prefs_fb_enable' ".wpmeetupactivity_is_checked($my_prefs["enableFb"])."> Enable Facebook support
     729    </p>";
     730
     731    if($my_prefs["enableFb"]) {
     732    $fb_options = get_option('wpmeetupactivity_fb_options');
     733   
     734    if ((empty($fb_options['app_id']) || empty($fb_options['app_secret'])) && current_user_can( 'manage_options' ) ) {
     735        echo "<div class=\"error\"><p><strong>";
     736        echo __('Need to configure Facebook Setting to use the post to page function !', $wpmeetupactivity_textdomain);
     737        echo "</strong></p></div>";
     738    } else {
     739            $fb_user = $facebook->getUser();
     740           
     741        $params = array( 'scope' => 'read_stream, manage_pages, publish_stream, offline_access' );
     742        if ($fb_user) {
     743        // Proceed knowing you have a logged in user who's authenticated.
     744        echo "<b>Currently connected as: $fb_user</b> (<a href='".$facebook->getLogoutUrl()."'>Disconnect from Facebook</a>)<br/>";
     745        } else {
     746        echo "Not connected (<a href='".$facebook->getLoginUrl($params)."'>Connect with Facebook App</a>)";
     747        }
     748    }
     749    echo "<p>
     750        App Id: <input type='text' size='64' name='wpmeetupactivity_fb_appid' value='".$fb_options['app_id']."' />
     751    </p><p>
     752        App Secret: <input type='text' size='128' name='wpmeetupactivity_fb_appsecret' value='".$fb_options['app_secret']."' />
     753    </p></fieldset>";
    702754    if ($fb_user) {
    703         // Proceed knowing you have a logged in user who's authenticated.
    704         echo "<b>Currently connected as: $fb_user</b> (<a href='".$facebook->getLogoutUrl()."'>Disconnect from Facebook</a>)<br/>";
    705     } else {
    706         echo "Not connected (<a href='".$facebook->getLoginUrl($params)."'>Connect with Facebook App</a>)";
    707     }
    708     }
    709     echo "<p>
    710     App Id: <input type='text' size='64' name='wpmeetupactivity_fb_appid' value='".$fb_options['app_id']."' />
    711     </p><p>
    712     App Secret: <input type='text' size='128' name='wpmeetupactivity_fb_appsecret' value='".$fb_options['app_secret']."' />
    713     </p></fieldset>";
    714     if ($fb_user) {
    715     echo "<fieldset class='wpmeetupactivity-setup-fieldset'><legend> Facebook Post-on-Page </legend>
    716     <p>
    717         <input type='checkbox' name='wpmeetupactivity_fb_post_on_new' ".wpmeetupactivity_is_checked($fb_options["post_on_new"])."> Post new threads on FB pages
    718     </p><p>
    719         <input type='checkbox' name='wpmeetupactivity_fb_post_on_reply' ".wpmeetupactivity_is_checked($my_prefs["post_on_reply"])."> Post every reply on FB pages (not suggested)
    720     </p><p>";
    721     if(is_array($fb_options['pages'])) {
    722         $fb_pages = $fb_options['pages'];
    723     } else {
    724         $fb_pages = array();
    725     }
    726    
    727     $c=0;
    728    
    729     foreach(wpmeetupactivity_fb_getuserpages() as $fb_page) {
    730         $fb_page_id = $fb_page['id'];
    731         if(is_array($fb_page['perms'])) {
    732         if(in_array('CREATE_CONTENT',$fb_page['perms'])) {
    733             echo "<input type='checkbox' name='wpmeetupactivity_fb_pages[".$fb_page_id."]' ".wpmeetupactivity_is_checked(in_array($fb_page_id,$fb_pages))."> ".$fb_page['name']." (<a href='http://www.facebook.com/$fb_page_id'>link</a>)<br/>";
    734             $c++;
    735         }
    736         }
    737     }
    738     if($c == 0) {
    739         echo "Sorry: you can't write to any page with this Facebook account !";
    740     }
    741     echo "</p></fieldset>";
     755        echo "<fieldset class='wpmeetupactivity-setup-fieldset'><legend> Facebook Post-on-Page </legend>
     756        <p>
     757        <input type='checkbox' name='wpmeetupactivity_fb_post_on_new' ".wpmeetupactivity_is_checked($fb_options["post_on_new"])."> Post new threads on FB pages
     758        </p><p>
     759        <input type='checkbox' name='wpmeetupactivity_fb_post_on_reply' ".wpmeetupactivity_is_checked($my_prefs["post_on_reply"])."> Post every reply on FB pages (not suggested)
     760        </p><p>";
     761        if(is_array($fb_options['pages'])) {
     762        $fb_pages = $fb_options['pages'];
     763        } else {
     764        $fb_pages = array();
     765        }
     766   
     767        $c=0;
     768   
     769        foreach(wpmeetupactivity_fb_getuserpages() as $fb_page) {
     770        $fb_page_id = $fb_page['id'];
     771        if(is_array($fb_page['perms'])) {
     772            if(in_array('CREATE_CONTENT',$fb_page['perms'])) {
     773            echo "<input type='checkbox' name='wpmeetupactivity_fb_pages[".$fb_page_id."]' ".wpmeetupactivity_is_checked(in_array($fb_page_id,$fb_pages))."> ".$fb_page['name']." (<a href='http://www.facebook.com/$fb_page_id'>link</a>)<br/>";
     774            $c++;
     775            }
     776        }
     777        }
     778        if($c == 0) {
     779        echo "Sorry: you can't write to any page with this Facebook account !";
     780        }
     781        echo "</p></fieldset>";
     782    }
    742783    }
    743784    echo "<p class='submit'><input type='submit' name='Submit' value='Save changes' /></p>
Note: See TracChangeset for help on using the changeset viewer.