X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=mod%2Foexchange.php;h=31306a608e9e378c7e4465b7ddb8f98e95fb6269;hb=720a43461d67ab229de0aecfc5008f22cc4c1c54;hp=1a990c64f17350f8b9f7e8e9b5d90efaaabdbf59;hpb=19ccd658ebcf13a7cc208a3e460e44d152dda32f;p=friendica.git diff --git a/mod/oexchange.php b/mod/oexchange.php index 1a990c64f1..31306a608e 100644 --- a/mod/oexchange.php +++ b/mod/oexchange.php @@ -1,53 +1,69 @@ argc > 1) && ($a->argv[1] === 'xrd')) { - $tpl = get_markup_template('oexchange_xrd.tpl'); - - $o = replace_macros($tpl, array('$base' => $a->get_baseurl())); +/** + * @copyright Copyright (C) 2010-2022, the Friendica project + * + * @license GNU AGPL version 3 or any later version + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + */ + +use Friendica\App; +use Friendica\Core\Renderer; +use Friendica\DI; +use Friendica\Module\Security\Login; + +function oexchange_init(App $a) { + + if ((DI::args()->getArgc() > 1) && (DI::args()->getArgv()[1] === 'xrd')) { + $tpl = Renderer::getMarkupTemplate('oexchange_xrd.tpl'); + + $o = Renderer::replaceMacros($tpl, ['$base' => DI::baseUrl()]); echo $o; - killme(); + exit(); } - - - - } -function oexchange_content(&$a) { +function oexchange_content(App $a) { - if(! local_user()) { - $o = login(false); + if (!local_user()) { + $o = Login::form(); return $o; } - if(($a->argc > 1) && $a->argv[1] === 'done') { - info( t('Post successful.') . EOL); + if ((DI::args()->getArgc() > 1) && DI::args()->getArgv()[1] === 'done') { return; } - $url = (((x($_GET,'url')) && strlen($_GET['url'])) ? notags(trim($_GET['url'])) : ''); + $url = !empty($_REQUEST['url']) ? trim($_REQUEST['url']) : ''; + $title = !empty($_REQUEST['title']) ? trim($_REQUEST['title']) : ''; + $description = !empty($_REQUEST['description']) ? trim($_REQUEST['description']) : ''; + $tags = !empty($_REQUEST['tags']) ? trim($_REQUEST['tags']) : ''; - $s = fetch_url($a->get_baseurl() . '/parse_url&url=' . $url); + $s = \Friendica\Content\Text\BBCode::embedURL($url, true, $title, $description, $tags); - if(! strlen($s)) + if (!strlen($s)) { return; + } - require_once('include/html2bbcode.php'); - - $post = array(); + $post = []; $post['profile_uid'] = local_user(); - $post['return'] = '/oexchange/done' ; - $post['body'] = html2bbcode($s); - $post['type'] = 'wall'; + $post['return'] = '/oexchange/done'; + $post['body'] = Friendica\Content\Text\HTML::toBBCode($s); - $_POST = $post; + $_REQUEST = $post; require_once('mod/item.php'); item_post($a); - } - -