<?php
-
/**
* Name: Dreamwidth Post Connector
* Description: Post to dreamwidth
* Version: 1.0
- * Author: Tony Baldwin <http://tonybaldwin.me/friendica/profile/tony>
+ * Author: Tony Baldwin <https://free-haven.org/profile/tony>
* Author: Michael Johnston
* Author: Cat Gray <https://free-haven.org/profile/catness>
*/
+use Friendica\Content\Text\BBCode;
+use Friendica\Core\Addon;
+use Friendica\Core\L10n;
+use Friendica\Core\PConfig;
+use Friendica\Util\DateTimeFormat;
+use Friendica\Util\Network;
+
function dwpost_install() {
- register_hook('post_local', 'addon/dwpost/dwpost.php', 'dwpost_post_local');
- register_hook('notifier_normal', 'addon/dwpost/dwpost.php', 'dwpost_send');
- register_hook('jot_networks', 'addon/dwpost/dwpost.php', 'dwpost_jot_nets');
- register_hook('connector_settings', 'addon/dwpost/dwpost.php', 'dwpost_settings');
- register_hook('connector_settings_post', 'addon/dwpost/dwpost.php', 'dwpost_settings_post');
+ Addon::registerHook('post_local', 'addon/dwpost/dwpost.php', 'dwpost_post_local');
+ Addon::registerHook('notifier_normal', 'addon/dwpost/dwpost.php', 'dwpost_send');
+ Addon::registerHook('jot_networks', 'addon/dwpost/dwpost.php', 'dwpost_jot_nets');
+ Addon::registerHook('connector_settings', 'addon/dwpost/dwpost.php', 'dwpost_settings');
+ Addon::registerHook('connector_settings_post', 'addon/dwpost/dwpost.php', 'dwpost_settings_post');
}
function dwpost_uninstall() {
- unregister_hook('post_local', 'addon/dwpost/dwpost.php', 'dwpost_post_local');
- unregister_hook('notifier_normal', 'addon/dwpost/dwpost.php', 'dwpost_send');
- unregister_hook('jot_networks', 'addon/dwpost/dwpost.php', 'dwpost_jot_nets');
- unregister_hook('connector_settings', 'addon/dwpost/dwpost.php', 'dwpost_settings');
- unregister_hook('connector_settings_post', 'addon/dwpost/dwpost.php', 'dwpost_settings_post');
+ Addon::unregisterHook('post_local', 'addon/dwpost/dwpost.php', 'dwpost_post_local');
+ Addon::unregisterHook('notifier_normal', 'addon/dwpost/dwpost.php', 'dwpost_send');
+ Addon::unregisterHook('jot_networks', 'addon/dwpost/dwpost.php', 'dwpost_jot_nets');
+ Addon::unregisterHook('connector_settings', 'addon/dwpost/dwpost.php', 'dwpost_settings');
+ Addon::unregisterHook('connector_settings_post', 'addon/dwpost/dwpost.php', 'dwpost_settings_post');
}
$dw_defpost = get_pconfig(local_user(),'dwpost','post_by_default');
$selected = ((intval($dw_defpost) == 1) ? ' checked="checked" ' : '');
$b .= '<div class="profile-jot-net"><input type="checkbox" name="dwpost_enable" ' . $selected . ' value="1" /> '
- . t('Post to Dreamwidth') . '</div>';
+ . L10n::t('Post to Dreamwidth') . '</div>';
}
}
/* Add some HTML to the existing form */
- $s .= '<div class="settings-block">';
- $s .= '<h3>' . t('Dreamwidth Post Settings') . '</h3>';
+ $s .= '<span id="settings_dwpost_inflated" class="settings-block fakelink" style="display: block;" onclick="openClose(\'settings_dwpost_expanded\'); openClose(\'settings_dwpost_inflated\');">';
+ $s .= '<img class="connector" src="images/dreamwidth.png" /><h3 class="connector">'. L10n::t("Dreamwidth Export").'</h3>';
+ $s .= '</span>';
+ $s .= '<div id="settings_dwpost_expanded" class="settings-block" style="display: none;">';
+ $s .= '<span class="fakelink" onclick="openClose(\'settings_dwpost_expanded\'); openClose(\'settings_dwpost_inflated\');">';
+ $s .= '<img class="connector" src="images/dreamwidth.png" /><h3 class="connector">'. L10n::t("Dreamwidth Export").'</h3>';
+ $s .= '</span>';
+
$s .= '<div id="dwpost-enable-wrapper">';
- $s .= '<label id="dwpost-enable-label" for="dwpost-checkbox">' . t('Enable dreamwidth Post Plugin') . '</label>';
+ $s .= '<label id="dwpost-enable-label" for="dwpost-checkbox">' . L10n::t('Enable dreamwidth Post Addon') . '</label>';
$s .= '<input id="dwpost-checkbox" type="checkbox" name="dwpost" value="1" ' . $checked . '/>';
$s .= '</div><div class="clear"></div>';
$s .= '<div id="dwpost-username-wrapper">';
- $s .= '<label id="dwpost-username-label" for="dwpost-username">' . t('dreamwidth username') . '</label>';
+ $s .= '<label id="dwpost-username-label" for="dwpost-username">' . L10n::t('dreamwidth username') . '</label>';
$s .= '<input id="dwpost-username" type="text" name="dw_username" value="' . $dw_username . '" />';
$s .= '</div><div class="clear"></div>';
$s .= '<div id="dwpost-password-wrapper">';
- $s .= '<label id="dwpost-password-label" for="dwpost-password">' . t('dreamwidth password') . '</label>';
+ $s .= '<label id="dwpost-password-label" for="dwpost-password">' . L10n::t('dreamwidth password') . '</label>';
$s .= '<input id="dwpost-password" type="password" name="dw_password" value="' . $dw_password . '" />';
$s .= '</div><div class="clear"></div>';
$s .= '<div id="dwpost-bydefault-wrapper">';
- $s .= '<label id="dwpost-bydefault-label" for="dwpost-bydefault">' . t('Post to dreamwidth by default') . '</label>';
+ $s .= '<label id="dwpost-bydefault-label" for="dwpost-bydefault">' . L10n::t('Post to dreamwidth by default') . '</label>';
$s .= '<input id="dwpost-bydefault" type="checkbox" name="dw_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="dwpost-submit" name="dwpost-submit" class="settings-submit" value="' . t('Submit') . '" /></div></div>';
+ $s .= '<div class="settings-submit-wrapper" ><input type="submit" id="dwpost-submit" name="dwpost-submit" class="settings-submit" value="' . L10n::t('Save Settings') . '" /></div></div>';
}
$dw_blog = 'http://www.dreamwidth.org/interface/xmlrpc';
if($dw_username && $dw_password && $dw_blog) {
-
- require_once('include/bbcode.php');
- require_once('include/datetime.php');
-
$title = $b['title'];
- $post = bbcode($b['body']);
+ $post = BBCode::convert($b['body']);
$post = xmlify($post);
$tags = dwpost_get_tags($b['tag']);
- $date = datetime_convert('UTC',$tz,$b['created'],'Y-m-d H:i:s');
+ $date = DateTimeFormat::convert($b['created'], $tz);
$year = intval(substr($date,0,4));
$mon = intval(substr($date,5,2));
$day = intval(substr($date,8,2));
logger('dwpost: data: ' . $xml, LOGGER_DATA);
- if($dw_blog !== 'test')
- $x = post_url($dw_blog,$xml);
+ if($dw_blog !== 'test') {
+ $x = Network::post($dw_blog, $xml, ["Content-Type: text/xml"]);
+ }
logger('posted to dreamwidth: ' . ($x) ? $x : '', LOGGER_DEBUG);
-
}
}