X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=ljpost%2Fljpost.php;h=f6f2b79aaa87d93a290dc5220882bb84f7705660;hb=410613d7a076de0fa699b66a4db17ae9267d13e7;hp=073a977e8b3e0952144531d912a2e0beba340c48;hpb=707e03635b6e1e3a32510758707dfd7ccd750d74;p=friendica-addons.git diff --git a/ljpost/ljpost.php b/ljpost/ljpost.php index 073a977e..f6f2b79a 100644 --- a/ljpost/ljpost.php +++ b/ljpost/ljpost.php @@ -20,45 +20,44 @@ use Friendica\Model\User; use Friendica\Util\DateTimeFormat; use Friendica\Util\XML; -function ljpost_install() { - Hook::register('post_local', 'addon/ljpost/ljpost.php', 'ljpost_post_local'); - Hook::register('notifier_normal', 'addon/ljpost/ljpost.php', 'ljpost_send'); - Hook::register('jot_networks', 'addon/ljpost/ljpost.php', 'ljpost_jot_nets'); - Hook::register('connector_settings', 'addon/ljpost/ljpost.php', 'ljpost_settings'); - Hook::register('connector_settings_post', 'addon/ljpost/ljpost.php', 'ljpost_settings_post'); - +function ljpost_install() +{ + Hook::register('post_local', 'addon/ljpost/ljpost.php', 'ljpost_post_local'); + Hook::register('notifier_normal', 'addon/ljpost/ljpost.php', 'ljpost_send'); + Hook::register('jot_networks', 'addon/ljpost/ljpost.php', 'ljpost_jot_nets'); + Hook::register('connector_settings', 'addon/ljpost/ljpost.php', 'ljpost_settings'); + Hook::register('connector_settings_post', 'addon/ljpost/ljpost.php', 'ljpost_settings_post'); } -function ljpost_jot_nets(App &$a, array &$jotnets_fields) +function ljpost_jot_nets(array &$jotnets_fields) { - if(! local_user()) { - return; - } - - if (DI::pConfig()->get(local_user(),'ljpost','post')) { - $jotnets_fields[] = [ - 'type' => 'checkbox', - 'field' => [ - 'ljpost_enable', - DI::l10n()->t('Post to LiveJournal'), - DI::pConfig()->get(local_user(),'ljpost','post_by_default') - ] - ]; - } -} + if (!DI::userSession()->getLocalUserId()) { + return; + } + if (DI::pConfig()->get(DI::userSession()->getLocalUserId(),'ljpost','post')) { + $jotnets_fields[] = [ + 'type' => 'checkbox', + 'field' => [ + 'ljpost_enable', + DI::l10n()->t('Post to LiveJournal'), + DI::pConfig()->get(DI::userSession()->getLocalUserId(), 'ljpost', 'post_by_default'), + ], + ]; + } +} -function ljpost_settings(App &$a, array &$data) +function ljpost_settings(array &$data) { - if (!local_user()) { + if (!DI::userSession()->getLocalUserId()) { return; } - $enabled = DI::pConfig()->get(local_user(), 'ljpost', 'post', false); - $ij_username = DI::pConfig()->get(local_user(), 'ljpost', 'ij_username'); - $def_enabled = DI::pConfig()->get(local_user(), 'ljpost', 'post_by_default'); + $enabled = DI::pConfig()->get(DI::userSession()->getLocalUserId(), 'ljpost', 'post', false); + $ij_username = DI::pConfig()->get(DI::userSession()->getLocalUserId(), 'ljpost', 'ij_username'); + $def_enabled = DI::pConfig()->get(DI::userSession()->getLocalUserId(), 'ljpost', 'post_by_default'); - $t = Renderer::getMarkupTemplate('connector_settings.tpl', 'addon/ljpost/'); + $t= Renderer::getMarkupTemplate('connector_settings.tpl', 'addon/ljpost/'); $html = Renderer::replaceMacros($t, [ '$enabled' => ['ljpost', DI::l10n()->t('Enable LiveJournal Post Addon'), $enabled], '$username' => ['ij_username', DI::l10n()->t('LiveJournal username'), $ij_username], @@ -68,70 +67,70 @@ function ljpost_settings(App &$a, array &$data) $data = [ 'connector' => 'ljpost', - 'title' => DI::l10n()->t('LiveJournal Export'), - 'image' => 'addon/ljpost/livejournal.png', + 'title' => DI::l10n()->t('LiveJournal Export'), + 'image' => 'addon/ljpost/livejournal.png', 'enabled' => $enabled, - 'html' => $html, + 'html' => $html, ]; } - -function ljpost_settings_post(&$a,&$b) { - - if(!empty($_POST['ljpost-submit'])) { - - DI::pConfig()->set(local_user(),'ljpost','post',intval($_POST['ljpost'])); - DI::pConfig()->set(local_user(),'ljpost','post_by_default',intval($_POST['lj_bydefault'])); - DI::pConfig()->set(local_user(),'ljpost','lj_username',trim($_POST['lj_username'])); - DI::pConfig()->set(local_user(),'ljpost','lj_password',trim($_POST['lj_password'])); - +function ljpost_settings_post(array &$b) +{ + if (!empty($_POST['ljpost-submit'])) { + DI::pConfig()->set(DI::userSession()->getLocalUserId(), 'ljpost', 'post', intval($_POST['ljpost'])); + DI::pConfig()->set(DI::userSession()->getLocalUserId(), 'ljpost', 'post_by_default', intval($_POST['lj_bydefault'])); + DI::pConfig()->set(DI::userSession()->getLocalUserId(), 'ljpost', 'lj_username', trim($_POST['lj_username'])); + DI::pConfig()->set(DI::userSession()->getLocalUserId(), 'ljpost', 'lj_password', trim($_POST['lj_password'])); } - } -function ljpost_post_local(&$a,&$b) { - +function ljpost_post_local(array &$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 (!DI::userSession()->getLocalUserId() || (DI::userSession()->getLocalUserId() != $b['uid'])) { return; + } - if($b['private'] || $b['parent']) + if ($b['private'] || $b['parent']) { return; + } - $lj_post = intval(DI::pConfig()->get(local_user(),'ljpost','post')); - + $lj_post = intval(DI::pConfig()->get(DI::userSession()->getLocalUserId(),'ljpost','post')); $lj_enable = (($lj_post && !empty($_REQUEST['ljpost_enable'])) ? intval($_REQUEST['ljpost_enable']) : 0); - if($b['api_source'] && intval(DI::pConfig()->get(local_user(),'ljpost','post_by_default'))) + if ($b['api_source'] && intval(DI::pConfig()->get(DI::userSession()->getLocalUserId(), 'ljpost', 'post_by_default'))) { $lj_enable = 1; + } - if(! $lj_enable) - return; + if (!$lj_enable) { + return; + } - if(strlen($b['postopts'])) - $b['postopts'] .= ','; - $b['postopts'] .= 'ljpost'; + if (strlen($b['postopts'])) { + $b['postopts'] .= ','; + } + $b['postopts'] .= 'ljpost'; } +function ljpost_send(array &$b) +{ + if ($b['deleted'] || $b['private'] || ($b['created'] !== $b['edited'])) { + return; + } + if (!strstr($b['postopts'],'ljpost')) { + return; + } + if ($b['parent'] != $b['id']) { + return; + } -function ljpost_send(&$a,&$b) { - - if($b['deleted'] || $b['private'] || ($b['created'] !== $b['edited'])) - return; - - if(! strstr($b['postopts'],'ljpost')) - return; - - if($b['parent'] != $b['id']) - return; - - $b['body'] = Post\Media::addAttachmentsToBody($b['uri-id'], $b['body']); + $b['body'] = Post\Media::addAttachmentsToBody($b['uri-id'], DI::contentItem()->addSharedPost($b)); // LiveJournal post in the LJ user's timezone. // Hopefully the person's Friendica account @@ -147,10 +146,11 @@ function ljpost_send(&$a,&$b) { // $lj_journal = $lj_username; $lj_blog = XML::escape(DI::pConfig()->get($b['uid'],'ljpost','lj_blog')); - if(! strlen($lj_blog)) + if (!strlen($lj_blog)) { $lj_blog = XML::escape('http://www.livejournal.com/interface/xmlrpc'); + } - if($lj_username && $lj_password && $lj_blog) { + if ($lj_username && $lj_password && $lj_blog) { $title = XML::escape($b['title']); $post = BBCode::convertForUriId($b['uri-id'], $b['body'], BBCode::CONNECTORS); $post = XML::escape($post); @@ -166,41 +166,42 @@ function ljpost_send(&$a,&$b) { $xml = <<< EOT - LJ.XMLRPC.postevent - - - - username$lj_username - password$lj_password - event$post - subject$title - lineendingsunix - year$year - mon$mon - day$day - hour$hour - min$min - usejournal$lj_username - - props +LJ.XMLRPC.postevent + + + username$lj_username + password$lj_password + event$post + subject$title + lineendingsunix + year$year + mon$mon + day$day + hour$hour + min$min + usejournal$lj_username - useragent - Friendica - - - taglist - $tags + props + + + + useragent + Friendica + + + taglist + $tags + + + - - - - + + - EOT; Logger::debug('ljpost: data: ' . $xml); @@ -208,6 +209,7 @@ EOT; if ($lj_blog !== 'test') { $x = DI::httpClient()->post($lj_blog, $xml, ['Content-Type' => 'text/xml'])->getBody(); } + Logger::info('posted to livejournal: ' . ($x) ? $x : ''); } }