* Name: Blogger Post Connector
* Description: Post to Blogger (or anything else which uses blogger XMLRPC API)
* Version: 1.0
- *
+ *
*/
use Friendica\Core\PConfig;
function blogger_install() {
- register_hook('post_local', 'addon/blogger/blogger.php', 'blogger_post_local');
- register_hook('notifier_normal', 'addon/blogger/blogger.php', 'blogger_send');
- register_hook('jot_networks', 'addon/blogger/blogger.php', 'blogger_jot_nets');
- register_hook('connector_settings', 'addon/blogger/blogger.php', 'blogger_settings');
- register_hook('connector_settings_post', 'addon/blogger/blogger.php', 'blogger_settings_post');
-
+ register_hook('post_local', 'addon/blogger/blogger.php', 'blogger_post_local');
+ register_hook('notifier_normal', 'addon/blogger/blogger.php', 'blogger_send');
+ register_hook('jot_networks', 'addon/blogger/blogger.php', 'blogger_jot_nets');
+ register_hook('connector_settings', 'addon/blogger/blogger.php', 'blogger_settings');
+ register_hook('connector_settings_post', 'addon/blogger/blogger.php', 'blogger_settings_post');
}
+
function blogger_uninstall() {
- unregister_hook('post_local', 'addon/blogger/blogger.php', 'blogger_post_local');
- unregister_hook('notifier_normal', 'addon/blogger/blogger.php', 'blogger_send');
- unregister_hook('jot_networks', 'addon/blogger/blogger.php', 'blogger_jot_nets');
- unregister_hook('connector_settings', 'addon/blogger/blogger.php', 'blogger_settings');
- unregister_hook('connector_settings_post', 'addon/blogger/blogger.php', 'blogger_settings_post');
+ unregister_hook('post_local', 'addon/blogger/blogger.php', 'blogger_post_local');
+ unregister_hook('notifier_normal', 'addon/blogger/blogger.php', 'blogger_send');
+ unregister_hook('jot_networks', 'addon/blogger/blogger.php', 'blogger_jot_nets');
+ unregister_hook('connector_settings', 'addon/blogger/blogger.php', 'blogger_settings');
+ unregister_hook('connector_settings_post', 'addon/blogger/blogger.php', 'blogger_settings_post');
// obsolete - remove
- unregister_hook('post_local_end', 'addon/blogger/blogger.php', 'blogger_send');
- unregister_hook('plugin_settings', 'addon/blogger/blogger.php', 'blogger_settings');
- unregister_hook('plugin_settings_post', 'addon/blogger/blogger.php', 'blogger_settings_post');
-
+ unregister_hook('post_local_end', 'addon/blogger/blogger.php', 'blogger_send');
+ unregister_hook('plugin_settings', 'addon/blogger/blogger.php', 'blogger_settings');
+ unregister_hook('plugin_settings_post', 'addon/blogger/blogger.php', 'blogger_settings_post');
}
function blogger_jot_nets(&$a,&$b) {
- if(! local_user())
- return;
-
- $bl_post = PConfig::get(local_user(),'blogger','post');
- if(intval($bl_post) == 1) {
- $bl_defpost = PConfig::get(local_user(),'blogger','post_by_default');
- $selected = ((intval($bl_defpost) == 1) ? ' checked="checked" ' : '');
- $b .= '<div class="profile-jot-net"><input type="checkbox" name="blogger_enable" ' . $selected . ' value="1" /> '
- . t('Post to blogger') . '</div>';
- }
+ if (!local_user()) {
+ return;
+ }
+
+ $bl_post = PConfig::get(local_user(),'blogger','post');
+ if (intval($bl_post) == 1) {
+ $bl_defpost = PConfig::get(local_user(),'blogger','post_by_default');
+ $selected = ((intval($bl_defpost) == 1) ? ' checked="checked" ' : '');
+ $b .= '<div class="profile-jot-net"><input type="checkbox" name="blogger_enable" ' . $selected . ' value="1" /> '
+ . t('Post to blogger') . '</div>';
+ }
}
function blogger_settings(&$a,&$s) {
- if(! local_user())
- return;
+ if (! local_user()) {
+ return;
+ }
- /* Add our stylesheet to the page so we can make our settings look nice */
+ /* 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/blogger/blogger.css' . '" media="all" />' . "\r\n";
+ $a->page['htmlhead'] .= '<link rel="stylesheet" type="text/css" href="' . $a->get_baseurl() . '/addon/blogger/blogger.css' . '" media="all" />' . "\r\n";
- /* Get the current state of our config variables */
+ /* Get the current state of our config variables */
- $enabled = PConfig::get(local_user(),'blogger','post');
- $checked = (($enabled) ? ' checked="checked" ' : '');
- $css = (($enabled) ? '' : '-disabled');
+ $enabled = PConfig::get(local_user(),'blogger','post');
+ $checked = (($enabled) ? ' checked="checked" ' : '');
+ $css = (($enabled) ? '' : '-disabled');
- $def_enabled = PConfig::get(local_user(),'blogger','post_by_default');
+ $def_enabled = PConfig::get(local_user(),'blogger','post_by_default');
- $def_checked = (($def_enabled) ? ' checked="checked" ' : '');
+ $def_checked = (($def_enabled) ? ' checked="checked" ' : '');
$bl_username = PConfig::get(local_user(), 'blogger', 'bl_username');
$bl_password = PConfig::get(local_user(), 'blogger', 'bl_password');
$bl_blog = PConfig::get(local_user(), 'blogger', 'bl_blog');
-
- /* Add some HTML to the existing form */
-
- $s .= '<span id="settings_blogger_inflated" class="settings-block fakelink" style="display: block;" onclick="openClose(\'settings_blogger_expanded\'); openClose(\'settings_blogger_inflated\');">';
- $s .= '<img class="connector'.$css.'" src="images/blogger.png" /><h3 class="connector">'. t('Blogger Export').'</h3>';
- $s .= '</span>';
- $s .= '<div id="settings_blogger_expanded" class="settings-block" style="display: none;">';
- $s .= '<span class="fakelink" onclick="openClose(\'settings_blogger_expanded\'); openClose(\'settings_blogger_inflated\');">';
- $s .= '<img class="connector'.$css.'" src="images/blogger.png" /><h3 class="connector">'. t('Blogger Export').'</h3>';
- $s .= '</span>';
-
- $s .= '<div id="blogger-enable-wrapper">';
- $s .= '<label id="blogger-enable-label" for="blogger-checkbox">' . t('Enable Blogger Post Plugin') . '</label>';
- $s .= '<input id="blogger-checkbox" type="checkbox" name="blogger" value="1" ' . $checked . '/>';
- $s .= '</div><div class="clear"></div>';
-
- $s .= '<div id="blogger-username-wrapper">';
- $s .= '<label id="blogger-username-label" for="blogger-username">' . t('Blogger username') . '</label>';
- $s .= '<input id="blogger-username" type="text" name="bl_username" value="' . $bl_username . '" />';
- $s .= '</div><div class="clear"></div>';
-
- $s .= '<div id="blogger-password-wrapper">';
- $s .= '<label id="blogger-password-label" for="blogger-password">' . t('Blogger password') . '</label>';
- $s .= '<input id="blogger-password" type="password" name="bl_password" value="' . $bl_password . '" />';
- $s .= '</div><div class="clear"></div>';
-
- $s .= '<div id="blogger-blog-wrapper">';
- $s .= '<label id="blogger-blog-label" for="blogger-blog">' . t('Blogger API URL') . '</label>';
- $s .= '<input id="blogger-blog" type="text" name="bl_blog" value="' . $bl_blog . '" />';
- $s .= '</div><div class="clear"></div>';
-
- $s .= '<div id="blogger-bydefault-wrapper">';
- $s .= '<label id="blogger-bydefault-label" for="blogger-bydefault">' . t('Post to Blogger by default') . '</label>';
- $s .= '<input id="blogger-bydefault" type="checkbox" name="bl_bydefault" value="1" ' . $def_checked . '/>';
- $s .= '</div><div class="clear"></div>';
-
- /* provide a submit button */
-
- $s .= '<div class="settings-submit-wrapper" ><input type="submit" id="blogger-submit" name="blogger-submit" class="settings-submit" value="' . t('Save Settings') . '" /></div></div>';
-
+ /* Add some HTML to the existing form */
+ $s .= '<span id="settings_blogger_inflated" class="settings-block fakelink" style="display: block;" onclick="openClose(\'settings_blogger_expanded\'); openClose(\'settings_blogger_inflated\');">';
+ $s .= '<img class="connector'.$css.'" src="images/blogger.png" /><h3 class="connector">'. t('Blogger Export').'</h3>';
+ $s .= '</span>';
+ $s .= '<div id="settings_blogger_expanded" class="settings-block" style="display: none;">';
+ $s .= '<span class="fakelink" onclick="openClose(\'settings_blogger_expanded\'); openClose(\'settings_blogger_inflated\');">';
+ $s .= '<img class="connector'.$css.'" src="images/blogger.png" /><h3 class="connector">'. t('Blogger Export').'</h3>';
+ $s .= '</span>';
+
+ $s .= '<div id="blogger-enable-wrapper">';
+ $s .= '<label id="blogger-enable-label" for="blogger-checkbox">' . t('Enable Blogger Post Plugin') . '</label>';
+ $s .= '<input id="blogger-checkbox" type="checkbox" name="blogger" value="1" ' . $checked . '/>';
+ $s .= '</div><div class="clear"></div>';
+
+ $s .= '<div id="blogger-username-wrapper">';
+ $s .= '<label id="blogger-username-label" for="blogger-username">' . t('Blogger username') . '</label>';
+ $s .= '<input id="blogger-username" type="text" name="bl_username" value="' . $bl_username . '" />';
+ $s .= '</div><div class="clear"></div>';
+
+ $s .= '<div id="blogger-password-wrapper">';
+ $s .= '<label id="blogger-password-label" for="blogger-password">' . t('Blogger password') . '</label>';
+ $s .= '<input id="blogger-password" type="password" name="bl_password" value="' . $bl_password . '" />';
+ $s .= '</div><div class="clear"></div>';
+
+ $s .= '<div id="blogger-blog-wrapper">';
+ $s .= '<label id="blogger-blog-label" for="blogger-blog">' . t('Blogger API URL') . '</label>';
+ $s .= '<input id="blogger-blog" type="text" name="bl_blog" value="' . $bl_blog . '" />';
+ $s .= '</div><div class="clear"></div>';
+
+ $s .= '<div id="blogger-bydefault-wrapper">';
+ $s .= '<label id="blogger-bydefault-label" for="blogger-bydefault">' . t('Post to Blogger by default') . '</label>';
+ $s .= '<input id="blogger-bydefault" type="checkbox" name="bl_bydefault" value="1" ' . $def_checked . '/>';
+ $s .= '</div><div class="clear"></div>';
+
+ /* provide a submit button */
+ $s .= '<div class="settings-submit-wrapper" ><input type="submit" id="blogger-submit" name="blogger-submit" class="settings-submit" value="' . t('Save Settings') . '" /></div></div>';
}
function blogger_settings_post(&$a,&$b) {
-
- if(x($_POST,'blogger-submit')) {
-
+ if (x($_POST,'blogger-submit')) {
PConfig::set(local_user(),'blogger','post',intval($_POST['blogger']));
PConfig::set(local_user(),'blogger','post_by_default',intval($_POST['bl_bydefault']));
PConfig::set(local_user(),'blogger','bl_username',trim($_POST['bl_username']));
PConfig::set(local_user(),'blogger','bl_password',trim($_POST['bl_password']));
PConfig::set(local_user(),'blogger','bl_blog',trim($_POST['bl_blog']));
-
}
-
}
function blogger_post_local(&$a,&$b) {
-
// This can probably be changed to allow editing by pointing to a different API endpoint
- if($b['edit'])
+ if ($b['edit']) {
return;
+ }
- if((! local_user()) || (local_user() != $b['uid']))
+ if (!local_user() || (local_user() != $b['uid'])) {
return;
+ }
- if($b['private'] || $b['parent'])
+ if ($b['private'] || $b['parent']) {
return;
+ }
- $bl_post = intval(PConfig::get(local_user(),'blogger','post'));
+ $bl_post = intval(PConfig::get(local_user(),'blogger','post'));
$bl_enable = (($bl_post && x($_REQUEST,'blogger_enable')) ? intval($_REQUEST['blogger_enable']) : 0);
- if($b['api_source'] && intval(PConfig::get(local_user(),'blogger','post_by_default')))
+ if ($b['api_source'] && intval(PConfig::get(local_user(),'blogger','post_by_default'))) {
$bl_enable = 1;
+ }
- if(! $bl_enable)
- return;
+ if (!$bl_enable) {
+ return;
+ }
- if(strlen($b['postopts']))
- $b['postopts'] .= ',';
- $b['postopts'] .= 'blogger';
+ if (strlen($b['postopts'])) {
+ $b['postopts'] .= ',';
+ }
+
+ $b['postopts'] .= 'blogger';
}
function blogger_send(&$a,&$b) {
+ if ($b['deleted'] || $b['private'] || ($b['created'] !== $b['edited'])) {
+ return;
+ }
- if($b['deleted'] || $b['private'] || ($b['created'] !== $b['edited']))
- return;
-
- if(! strstr($b['postopts'],'blogger'))
- return;
-
- if($b['parent'] != $b['id'])
- return;
+ if (! strstr($b['postopts'],'blogger')) {
+ return;
+ }
+ if ($b['parent'] != $b['id']) {
+ return;
+ }
$bl_username = xmlify(PConfig::get($b['uid'],'blogger','bl_username'));
$bl_password = xmlify(PConfig::get($b['uid'],'blogger','bl_password'));
$bl_blog = PConfig::get($b['uid'],'blogger','bl_blog');
- if($bl_username && $bl_password && $bl_blog) {
+ if ($bl_username && $bl_password && $bl_blog) {
require_once('include/bbcode.php');
logger('blogger: data: ' . $xml, LOGGER_DATA);
- if($bl_blog !== 'test')
+ if ($bl_blog !== 'test') {
$x = post_url($bl_blog,$xml);
- logger('posted to blogger: ' . (($x) ? $x : ''), LOGGER_DEBUG);
+ }
+ logger('posted to blogger: ' . (($x) ? $x : ''), LOGGER_DEBUG);
}
-}
-
+}
\ No newline at end of file
* Author: Fabio Comuni <http://kirgroup.com/profile/fabrixxm>
*/
+use Friendica\Core\Config;
require_once('mod/community.php');
-use Friendica\Core\Config;
function communityhome_install() {
register_hook('home_content', 'addon/communityhome/communityhome.php', 'communityhome_home');
logger("removed communityhome");
}
+function communityhome_getopts() {
+ return [
+ 'hidelogin'=>t('Hide login form'),
+ 'showlastusers'=>t('Show last new users'),
+ 'showactiveusers'=>t('Show last active users'),
+ 'showlastphotos'=>t('Show last photos'),
+ 'showlastlike'=>t('Show last liked items'),
+ 'showcommunitystream'=>t('Show community stream')
+ ];
+}
+
+function communityhome_plugin_admin(&$a, &$o) {
+ $tpl = get_markup_template( 'settings.tpl', 'addon/communityhome/' );
+
+ $opts = communityhome_getopts();
+ $ctx = [
+ '$submit' => t("Submit"),
+ '$fields' => [],
+ ];
+ foreach($opts as $k=>$v) {
+ $ctx['fields'][] = ['communityhome_'.$k, $v, Config::get('communityhome', $k)];
+ }
+ $o = replace_macros($tpl, $ctx);
+}
+
+function communityhome_plugin_admin_post(&$a,&$b) {
+ if(x($_POST,'communityhome-submit')) {
+ $opts = communityhome_getopts();
+ foreach($opts as $k=>$v) {
+ Config::set('communityhome', $k, x($_POST,'communityhome_'.$k));
+ }
+ }
+}
+
+
function communityhome_home(&$a, &$o){
// custom css
$a->page['htmlhead'] .= '<link rel="stylesheet" type="text/css" href="'.$a->get_baseurl().'/addon/communityhome/communityhome.css" media="all" />';
// login form
$aside['$login_title'] = t('Login');
$aside['$login_form'] = login(($a->config['register_policy'] == REGISTER_CLOSED) ? false : true);
- } else
+ } else {
$aside = array(
//'$tab_1' => t('Login'),
//'$tab_2' => t('OpenID'),
//'$noOid' => Config::get('system','no_openid'),
);
+ }
// last 12 users
- if (Config::get('communityhome','showlastusers')===true){
+ if (Config::get('communityhome','showlastusers')){
$aside['$lastusers_title'] = t('Latest users');
$aside['$lastusers_items'] = array();
$sql_extra = "";
}
// 12 most active users (by posts and contacts)
// this query don't work on some mysql versions
- if (Config::get('communityhome','showactiveusers')===true){
+ if (Config::get('communityhome','showactiveusers')){
$r = q("SELECT `uni`.`contacts`,`uni`.`items`, `profile`.*, `profile`.`uid` AS `profile_uid`, `user`.`nickname` FROM
(SELECT COUNT(*) as `contacts`, `uid` FROM `contact` WHERE `self`=0 GROUP BY `uid`) AS `con`,
(SELECT COUNT(*) as `items`, `uid` FROM `item` WHERE `item`.`changed` > DATE(NOW() - INTERVAL 1 MONTH) AND `item`.`wall` = 1 GROUP BY `uid`) AS `ite`,
'$id' => $rr['id'],
'$profile_link' => $profile_link,
'$photo' => $rr[$photo],
- '$alt_text' => sprintf("%s (%s posts, %s contacts)",$rr['name'], ($rr['items']?$rr['items']:'0'), ($rr['contacts']?$rr['contacts']:'0'))
+ '$photo_user' => sprintf("%s (%s posts, %s contacts)",$rr['name'], ($rr['items']?$rr['items']:'0'), ($rr['contacts']?$rr['contacts']:'0'))
));
$aside['$activeusers_items'][] = $entry;
}
}
}
// last 12 photos
- if (Config::get('communityhome','showlastphotos')===true){
+ if (Config::get('communityhome','showlastphotos')){
$aside['$photos_title'] = t('Latest photos');
$aside['$photos_items'] = array();
$r = q("SELECT `photo`.`id`, `photo`.`resource-id`, `photo`.`scale`, `photo`.`desc`, `user`.`nickname`, `user`.`username` FROM
'$id' => $rr['id'],
'$profile_link' => $photo_page,
'$photo' => $photo_url,
- '$alt_text' => $rr['username']." : ".$rr['desc'],
+ '$photo_user' => $rr['username'],
+ '$photo_title' => $rr['desc']
));
$aside['$photos_items'][] = $entry;
}
// last 10 liked items
- if (Config::get('communityhome','showlastlike')===true){
+ if (Config::get('communityhome','showlastlike')){
$aside['$like_title'] = t('Latest likes');
$aside['$like_items'] = array();
$r = q("SELECT `T1`.`created`, `T1`.`liker`, `T1`.`liker-link`, `item`.* FROM
if(file_exists('home.html'))
$o = file_get_contents('home.html');
- if (Config::get('communityhome','showcommunitystream')===true){
+ if (Config::get('communityhome','showcommunitystream')){
$oldset = Config::get('system','community_page_style');
if ($oldset == CP_NO_COMMUNITY_PAGE)
Config::set('system','community_page_style', CP_USERS_ON_SERVER);