Merge remote-tracking branch 'upstream/master'

This commit is contained in:
Thomas 2012-03-19 22:34:27 +00:00
commit 1c2d3aee9b
4 changed files with 124 additions and 10 deletions

View file

@ -46,6 +46,12 @@
* authenticate to your site to establish identity. We will address this * authenticate to your site to establish identity. We will address this
* in a future release. * in a future release.
*/ */
/** TODO
* - Implement a method for the administrator to delete all configuration data the plugin has created,
* e.g. the app_access_token
* - Implement a configuration option to set the polling interval system-wide
*/
define('FACEBOOK_MAXPOSTLEN', 420); define('FACEBOOK_MAXPOSTLEN', 420);
@ -57,8 +63,6 @@ function facebook_install() {
register_hook('connector_settings', 'addon/facebook/facebook.php', 'facebook_plugin_settings'); register_hook('connector_settings', 'addon/facebook/facebook.php', 'facebook_plugin_settings');
register_hook('cron', 'addon/facebook/facebook.php', 'facebook_cron'); register_hook('cron', 'addon/facebook/facebook.php', 'facebook_cron');
register_hook('queue_predeliver', 'addon/facebook/facebook.php', 'fb_queue_hook'); register_hook('queue_predeliver', 'addon/facebook/facebook.php', 'fb_queue_hook');
if (get_config('facebook', 'realtime_active') == 1) facebook_subscription_add_users(); // Restore settings, if the plugin was installed before
} }
@ -73,8 +77,6 @@ function facebook_uninstall() {
// hook moved // hook moved
unregister_hook('post_local_end', 'addon/facebook/facebook.php', 'facebook_post_hook'); unregister_hook('post_local_end', 'addon/facebook/facebook.php', 'facebook_post_hook');
unregister_hook('plugin_settings', 'addon/facebook/facebook.php', 'facebook_plugin_settings'); unregister_hook('plugin_settings', 'addon/facebook/facebook.php', 'facebook_plugin_settings');
if (get_config('facebook', 'realtime_active') == 1) facebook_subscription_del_users();
} }
@ -150,8 +152,12 @@ function facebook_init(&$a) {
$s = fetch_url('https://graph.facebook.com/me/feed?access_token=' . $access_token); $s = fetch_url('https://graph.facebook.com/me/feed?access_token=' . $access_token);
if($s) { if($s) {
$j = json_decode($s); $j = json_decode($s);
logger('facebook_init: wall: ' . print_r($j,true), LOGGER_DATA); if (isset($j->data)) {
fb_consume_stream($uid,$j,($private_wall) ? false : true); logger('facebook_init: wall: ' . print_r($j,true), LOGGER_DATA);
fb_consume_stream($uid,$j,($private_wall) ? false : true);
} else {
logger('facebook_init: wall: got no data from Facebook: ' . print_r($j,true), LOGGER_NORMAL);
}
} }
} }
@ -1018,15 +1024,23 @@ function fb_consume_all($uid) {
$s = fetch_url('https://graph.facebook.com/me/feed?access_token=' . $access_token); $s = fetch_url('https://graph.facebook.com/me/feed?access_token=' . $access_token);
if($s) { if($s) {
$j = json_decode($s); $j = json_decode($s);
logger('fb_consume_stream: wall: ' . print_r($j,true), LOGGER_DATA); if (isset($j->data)) {
fb_consume_stream($uid,$j,($private_wall) ? false : true); logger('fb_consume_stream: wall: ' . print_r($j,true), LOGGER_DATA);
fb_consume_stream($uid,$j,($private_wall) ? false : true);
} else {
logger('fb_consume_stream: wall: got no data from Facebook: ' . print_r($j,true), LOGGER_NORMAL);
}
} }
} }
$s = fetch_url('https://graph.facebook.com/me/home?access_token=' . $access_token); $s = fetch_url('https://graph.facebook.com/me/home?access_token=' . $access_token);
if($s) { if($s) {
$j = json_decode($s); $j = json_decode($s);
logger('fb_consume_stream: feed: ' . print_r($j,true), LOGGER_DATA); if (isset($j->data)) {
fb_consume_stream($uid,$j,false); logger('fb_consume_stream: feed: ' . print_r($j,true), LOGGER_DATA);
fb_consume_stream($uid,$j,false);
} else {
logger('fb_consume_stream: feed: got no data from Facebook: ' . print_r($j,true), LOGGER_NORMAL);
}
} }
} }

BIN
frown.tgz Normal file

Binary file not shown.

14
frown/frown.css Executable file
View file

@ -0,0 +1,14 @@
#frown-enable-label {
float: left;
width: 200px;
margin-bottom: 25px;
}
#frown-checkbox {
float: left;
}

86
frown/frown.php Executable file
View file

@ -0,0 +1,86 @@
<?php
/**
* Name: Frown
* Description: Disable graphical smilies
* Version: 1.0
* Author: Mike Macgirvin <http://macgirvin.com/profile/mike>
*
*
*/
function frown_install() {
register_hook('plugin_settings', 'addon/frown/frown.php', 'frown_settings');
register_hook('plugin_settings_post', 'addon/frown/frown.php', 'frown_settings_post');
logger("installed frown");
}
function frown_uninstall() {
unregister_hook('plugin_settings', 'addon/frown/frown.php', 'frown_settings');
unregister_hook('plugin_settings_post', 'addon/frown/frown.php', 'frown_settings_post');
logger("removed frown");
}
/**
*
* Callback from the settings post function.
* $post contains the $_POST array.
* We will make sure we've got a valid user account
* and if so set our configuration setting for this person.
*
*/
function frown_settings_post($a,$post) {
if(! local_user() || (! x($_POST,'frown-submit')))
return;
set_pconfig(local_user(),'system','no_smilies',intval($_POST['frown']));
info( t('Frown settings updated.') . EOL);
}
/**
*
* Called from the Plugin Setting form.
* Add our own settings info to the page.
*
*/
function frown_settings(&$a,&$s) {
if(! local_user())
return;
/* Add our stylesheet to the page so we can make our settings look nice */
$a->page['htmlhead'] .= '<link rel="stylesheet" type="text/css" href="' . $a->get_baseurl() . '/addon/frown/frown.css' . '" media="all" />' . "\r\n";
/* Get the current state of our config variable */
$enabled = get_pconfig(local_user(),'system','no_smilies');
$checked = (($enabled) ? ' checked="checked" ' : '');
/* Add some HTML to the existing form */
$s .= '<div class="settings-block">';
$s .= '<h3>' . t('Frown Settings') . '</h3>';
$s .= '<div id="frown-enable-wrapper">';
$s .= '<label id="frown-enable-label" for="frown-checkbox">' . t('Disable graphical smilies') . '</label>';
$s .= '<input id="frown-checkbox" type="checkbox" name="frown" value="1" ' . $checked . '/>';
$s .= '</div><div class="clear"></div>';
/* provide a submit button */
$s .= '<div class="settings-submit-wrapper" ><input type="submit" name="frown-submit" class="settings-submit" value="' . t('Submit') . '" /></div></div>';
}