From: Hypolite Petovan Date: Thu, 23 Jan 2020 04:14:14 +0000 (-0500) Subject: Move/rename base module classes X-Git-Url: https://git.mxchange.org/?a=commitdiff_plain;h=5670c19d5c9ffe1a067210160daf32fd5c84edb5;p=friendica.git Move/rename base module classes --- diff --git a/src/Module/Admin/Addons/Details.php b/src/Module/Admin/Addons/Details.php index ebf87deda4..94d31b65a6 100644 --- a/src/Module/Admin/Addons/Details.php +++ b/src/Module/Admin/Addons/Details.php @@ -6,10 +6,10 @@ use Friendica\Content\Text\Markdown; use Friendica\Core\Addon; use Friendica\Core\Renderer; use Friendica\DI; -use Friendica\Module\BaseAdminModule; +use Friendica\Module\BaseAdmin; use Friendica\Util\Strings; -class Details extends BaseAdminModule +class Details extends BaseAdmin { public static function post(array $parameters = []) { diff --git a/src/Module/Admin/Addons/Index.php b/src/Module/Admin/Addons/Index.php index 634bd08c70..74bd61b5fd 100644 --- a/src/Module/Admin/Addons/Index.php +++ b/src/Module/Admin/Addons/Index.php @@ -5,9 +5,9 @@ namespace Friendica\Module\Admin\Addons; use Friendica\Core\Addon; use Friendica\Core\Renderer; use Friendica\DI; -use Friendica\Module\BaseAdminModule; +use Friendica\Module\BaseAdmin; -class Index extends BaseAdminModule +class Index extends BaseAdmin { public static function content(array $parameters = []) { diff --git a/src/Module/Admin/Blocklist/Contact.php b/src/Module/Admin/Blocklist/Contact.php index 8eaf418a85..871a7ea747 100644 --- a/src/Module/Admin/Blocklist/Contact.php +++ b/src/Module/Admin/Blocklist/Contact.php @@ -6,10 +6,10 @@ use Friendica\Content\Pager; use Friendica\Core\Renderer; use Friendica\Database\DBA; use Friendica\DI; -use Friendica\Module\BaseAdminModule; +use Friendica\Module\BaseAdmin; use Friendica\Model; -class Contact extends BaseAdminModule +class Contact extends BaseAdmin { public static function post(array $parameters = []) { diff --git a/src/Module/Admin/Blocklist/Server.php b/src/Module/Admin/Blocklist/Server.php index 6c07885993..971b890474 100644 --- a/src/Module/Admin/Blocklist/Server.php +++ b/src/Module/Admin/Blocklist/Server.php @@ -4,10 +4,10 @@ namespace Friendica\Module\Admin\Blocklist; use Friendica\Core\Renderer; use Friendica\DI; -use Friendica\Module\BaseAdminModule; +use Friendica\Module\BaseAdmin; use Friendica\Util\Strings; -class Server extends BaseAdminModule +class Server extends BaseAdmin { public static function post(array $parameters = []) { diff --git a/src/Module/Admin/DBSync.php b/src/Module/Admin/DBSync.php index c342db93b4..eb7c84c9ba 100644 --- a/src/Module/Admin/DBSync.php +++ b/src/Module/Admin/DBSync.php @@ -7,9 +7,9 @@ use Friendica\Core\Update; use Friendica\Database\DBA; use Friendica\Database\DBStructure; use Friendica\DI; -use Friendica\Module\BaseAdminModule; +use Friendica\Module\BaseAdmin; -class DBSync extends BaseAdminModule +class DBSync extends BaseAdmin { public static function content(array $parameters = []) { diff --git a/src/Module/Admin/Features.php b/src/Module/Admin/Features.php index ed5abec95a..5e1c3df20e 100644 --- a/src/Module/Admin/Features.php +++ b/src/Module/Admin/Features.php @@ -5,9 +5,9 @@ namespace Friendica\Module\Admin; use Friendica\Content\Feature; use Friendica\Core\Renderer; use Friendica\DI; -use Friendica\Module\BaseAdminModule; +use Friendica\Module\BaseAdmin; -class Features extends BaseAdminModule +class Features extends BaseAdmin { public static function post(array $parameters = []) { diff --git a/src/Module/Admin/Federation.php b/src/Module/Admin/Federation.php index 0d83cc41a1..f5e38f0d2d 100644 --- a/src/Module/Admin/Federation.php +++ b/src/Module/Admin/Federation.php @@ -5,9 +5,9 @@ namespace Friendica\Module\Admin; use Friendica\Core\Renderer; use Friendica\Database\DBA; use Friendica\DI; -use Friendica\Module\BaseAdminModule; +use Friendica\Module\BaseAdmin; -class Federation extends BaseAdminModule +class Federation extends BaseAdmin { public static function content(array $parameters = []) { diff --git a/src/Module/Admin/Item/Delete.php b/src/Module/Admin/Item/Delete.php index 1d7e459a27..424fef2b52 100644 --- a/src/Module/Admin/Item/Delete.php +++ b/src/Module/Admin/Item/Delete.php @@ -5,10 +5,10 @@ namespace Friendica\Module\Admin\Item; use Friendica\Core\Renderer; use Friendica\DI; use Friendica\Model\Item; -use Friendica\Module\BaseAdminModule; +use Friendica\Module\BaseAdmin; use Friendica\Util\Strings; -class Delete extends BaseAdminModule +class Delete extends BaseAdmin { public static function post(array $parameters = []) { diff --git a/src/Module/Admin/Item/Source.php b/src/Module/Admin/Item/Source.php index d4666b27f8..a3f6dd0c55 100644 --- a/src/Module/Admin/Item/Source.php +++ b/src/Module/Admin/Item/Source.php @@ -5,12 +5,12 @@ namespace Friendica\Module\Admin\Item; use Friendica\Core\Renderer; use Friendica\DI; use Friendica\Model; -use Friendica\Module\BaseAdminModule; +use Friendica\Module\BaseAdmin; /** * @author Hypolite Petovan */ -class Source extends BaseAdminModule +class Source extends BaseAdmin { public static function content(array $parameters = []) diff --git a/src/Module/Admin/Logs/Settings.php b/src/Module/Admin/Logs/Settings.php index 6b3f2027dc..b8e588cd7d 100644 --- a/src/Module/Admin/Logs/Settings.php +++ b/src/Module/Admin/Logs/Settings.php @@ -4,11 +4,11 @@ namespace Friendica\Module\Admin\Logs; use Friendica\Core\Renderer; use Friendica\DI; -use Friendica\Module\BaseAdminModule; +use Friendica\Module\BaseAdmin; use Friendica\Util\Strings; use Psr\Log\LogLevel; -class Settings extends BaseAdminModule +class Settings extends BaseAdmin { public static function post(array $parameters = []) { diff --git a/src/Module/Admin/Logs/View.php b/src/Module/Admin/Logs/View.php index a6607829de..dc2274ce7a 100644 --- a/src/Module/Admin/Logs/View.php +++ b/src/Module/Admin/Logs/View.php @@ -4,10 +4,10 @@ namespace Friendica\Module\Admin\Logs; use Friendica\Core\Renderer; use Friendica\DI; -use Friendica\Module\BaseAdminModule; +use Friendica\Module\BaseAdmin; use Friendica\Util\Strings; -class View extends BaseAdminModule +class View extends BaseAdmin { public static function content(array $parameters = []) { diff --git a/src/Module/Admin/PhpInfo.php b/src/Module/Admin/PhpInfo.php index 3ac7421816..465962eb71 100644 --- a/src/Module/Admin/PhpInfo.php +++ b/src/Module/Admin/PhpInfo.php @@ -2,9 +2,9 @@ namespace Friendica\Module\Admin; -use Friendica\Module\BaseAdminModule; +use Friendica\Module\BaseAdmin; -class PhpInfo extends BaseAdminModule +class PhpInfo extends BaseAdmin { public static function rawContent(array $parameters = []) { diff --git a/src/Module/Admin/Queue.php b/src/Module/Admin/Queue.php index a9295f6f92..59912fc6c9 100644 --- a/src/Module/Admin/Queue.php +++ b/src/Module/Admin/Queue.php @@ -5,7 +5,7 @@ namespace Friendica\Module\Admin; use Friendica\Core\Renderer; use Friendica\Database\DBA; use Friendica\DI; -use Friendica\Module\BaseAdminModule; +use Friendica\Module\BaseAdmin; use Friendica\Util\Arrays; use Friendica\Util\DateTimeFormat; @@ -17,7 +17,7 @@ use Friendica\Util\DateTimeFormat; * * @return string */ -class Queue extends BaseAdminModule +class Queue extends BaseAdmin { public static function content(array $parameters = []) { diff --git a/src/Module/Admin/Site.php b/src/Module/Admin/Site.php index 131ebb88ef..7cb3a9b8f7 100644 --- a/src/Module/Admin/Site.php +++ b/src/Module/Admin/Site.php @@ -9,7 +9,7 @@ use Friendica\Core\Theme; use Friendica\Core\Worker; use Friendica\Database\DBA; use Friendica\DI; -use Friendica\Module\BaseAdminModule; +use Friendica\Module\BaseAdmin; use Friendica\Module\Register; use Friendica\Protocol\PortableContact; use Friendica\Util\BasePath; @@ -18,7 +18,7 @@ use Friendica\Worker\Delivery; require_once __DIR__ . '/../../../boot.php'; -class Site extends BaseAdminModule +class Site extends BaseAdmin { public static function post(array $parameters = []) { diff --git a/src/Module/Admin/Summary.php b/src/Module/Admin/Summary.php index 234a49b410..4c424a059c 100644 --- a/src/Module/Admin/Summary.php +++ b/src/Module/Admin/Summary.php @@ -11,13 +11,13 @@ use Friendica\Database\DBA; use Friendica\Database\DBStructure; use Friendica\DI; use Friendica\Model\Register; -use Friendica\Module\BaseAdminModule; +use Friendica\Module\BaseAdmin; use Friendica\Network\HTTPException\InternalServerErrorException; use Friendica\Util\ConfigFileLoader; use Friendica\Util\DateTimeFormat; use Friendica\Util\Network; -class Summary extends BaseAdminModule +class Summary extends BaseAdmin { public static function content(array $parameters = []) { diff --git a/src/Module/Admin/Themes/Details.php b/src/Module/Admin/Themes/Details.php index f1263e6ca9..a1617954f1 100644 --- a/src/Module/Admin/Themes/Details.php +++ b/src/Module/Admin/Themes/Details.php @@ -6,10 +6,10 @@ use Friendica\Content\Text\Markdown; use Friendica\Core\Renderer; use Friendica\Core\Theme; use Friendica\DI; -use Friendica\Module\BaseAdminModule; +use Friendica\Module\BaseAdmin; use Friendica\Util\Strings; -class Details extends BaseAdminModule +class Details extends BaseAdmin { public static function post(array $parameters = []) { diff --git a/src/Module/Admin/Themes/Embed.php b/src/Module/Admin/Themes/Embed.php index 00d4de6953..50ecff9322 100644 --- a/src/Module/Admin/Themes/Embed.php +++ b/src/Module/Admin/Themes/Embed.php @@ -4,10 +4,10 @@ namespace Friendica\Module\Admin\Themes; use Friendica\Core\Renderer; use Friendica\DI; -use Friendica\Module\BaseAdminModule; +use Friendica\Module\BaseAdmin; use Friendica\Util\Strings; -class Embed extends BaseAdminModule +class Embed extends BaseAdmin { public static function init(array $parameters = []) { diff --git a/src/Module/Admin/Themes/Index.php b/src/Module/Admin/Themes/Index.php index c6c86b0a99..4c73a36de8 100644 --- a/src/Module/Admin/Themes/Index.php +++ b/src/Module/Admin/Themes/Index.php @@ -5,10 +5,10 @@ namespace Friendica\Module\Admin\Themes; use Friendica\Core\Renderer; use Friendica\Core\Theme; use Friendica\DI; -use Friendica\Module\BaseAdminModule; +use Friendica\Module\BaseAdmin; use Friendica\Util\Strings; -class Index extends BaseAdminModule +class Index extends BaseAdmin { public static function content(array $parameters = []) { diff --git a/src/Module/Admin/Tos.php b/src/Module/Admin/Tos.php index 4c4f31b655..b89887dae8 100644 --- a/src/Module/Admin/Tos.php +++ b/src/Module/Admin/Tos.php @@ -4,9 +4,9 @@ namespace Friendica\Module\Admin; use Friendica\Core\Renderer; use Friendica\DI; -use Friendica\Module\BaseAdminModule; +use Friendica\Module\BaseAdmin; -class Tos extends BaseAdminModule +class Tos extends BaseAdmin { public static function post(array $parameters = []) { diff --git a/src/Module/Admin/Users.php b/src/Module/Admin/Users.php index c4a30abd65..0498a80da1 100644 --- a/src/Module/Admin/Users.php +++ b/src/Module/Admin/Users.php @@ -8,11 +8,11 @@ use Friendica\Database\DBA; use Friendica\DI; use Friendica\Model\Register; use Friendica\Model\User; -use Friendica\Module\BaseAdminModule; +use Friendica\Module\BaseAdmin; use Friendica\Util\Strings; use Friendica\Util\Temporal; -class Users extends BaseAdminModule +class Users extends BaseAdmin { public static function post(array $parameters = []) { diff --git a/src/Module/BaseAdmin.php b/src/Module/BaseAdmin.php new file mode 100644 index 0000000000..b776c8b301 --- /dev/null +++ b/src/Module/BaseAdmin.php @@ -0,0 +1,120 @@ +t('Please login to continue.')); + Session::set('return_path', DI::args()->getQueryString()); + DI::baseUrl()->redirect('login'); + } + + if (!empty($_SESSION['submanage'])) { + throw new ForbiddenException(DI::l10n()->t('Submanaged account can\'t access the administation pages. Please log back in as the master account.')); + } + + // Header stuff + DI::page()['htmlhead'] .= Renderer::replaceMacros(Renderer::getMarkupTemplate('admin/settings_head.tpl'), []); + + /* + * Side bar links + */ + + // array(url, name, extra css classes) + // not part of $aside to make the template more adjustable + $aside_sub = [ + 'information' => [DI::l10n()->t('Information'), [ + 'overview' => ['admin' , DI::l10n()->t('Overview') , 'overview'], + 'federation' => ['admin/federation' , DI::l10n()->t('Federation Statistics') , 'federation'] + ]], + 'configuration' => [DI::l10n()->t('Configuration'), [ + 'site' => ['admin/site' , DI::l10n()->t('Site') , 'site'], + 'users' => ['admin/users' , DI::l10n()->t('Users') , 'users'], + 'addons' => ['admin/addons' , DI::l10n()->t('Addons') , 'addons'], + 'themes' => ['admin/themes' , DI::l10n()->t('Themes') , 'themes'], + 'features' => ['admin/features' , DI::l10n()->t('Additional features') , 'features'], + 'tos' => ['admin/tos' , DI::l10n()->t('Terms of Service') , 'tos'], + ]], + 'database' => [DI::l10n()->t('Database'), [ + 'dbsync' => ['admin/dbsync' , DI::l10n()->t('DB updates') , 'dbsync'], + 'deferred' => ['admin/queue/deferred', DI::l10n()->t('Inspect Deferred Workers'), 'deferred'], + 'workerqueue' => ['admin/queue' , DI::l10n()->t('Inspect worker Queue') , 'workerqueue'], + ]], + 'tools' => [DI::l10n()->t('Tools'), [ + 'contactblock' => ['admin/blocklist/contact', DI::l10n()->t('Contact Blocklist') , 'contactblock'], + 'blocklist' => ['admin/blocklist/server' , DI::l10n()->t('Server Blocklist') , 'blocklist'], + 'deleteitem' => ['admin/item/delete' , DI::l10n()->t('Delete Item') , 'deleteitem'], + ]], + 'logs' => [DI::l10n()->t('Logs'), [ + 'logsconfig' => ['admin/logs/', DI::l10n()->t('Logs') , 'logs'], + 'logsview' => ['admin/logs/view' , DI::l10n()->t('View Logs') , 'viewlogs'], + ]], + 'diagnostics' => [DI::l10n()->t('Diagnostics'), [ + 'phpinfo' => ['admin/phpinfo' , DI::l10n()->t('PHP Info') , 'phpinfo'], + 'probe' => ['probe' , DI::l10n()->t('probe address') , 'probe'], + 'webfinger' => ['webfinger' , DI::l10n()->t('check webfinger') , 'webfinger'], + 'itemsource' => ['admin/item/source' , DI::l10n()->t('Item Source') , 'itemsource'], + 'babel' => ['babel' , DI::l10n()->t('Babel') , 'babel'], + ]], + ]; + + $t = Renderer::getMarkupTemplate('admin/aside.tpl'); + DI::page()['aside'] .= Renderer::replaceMacros($t, [ + '$admin' => ['addons_admin' => Addon::getAdminList()], + '$subpages' => $aside_sub, + '$admtxt' => DI::l10n()->t('Admin'), + '$plugadmtxt' => DI::l10n()->t('Addon Features'), + '$h_pending' => DI::l10n()->t('User registrations waiting for confirmation'), + '$admurl' => 'admin/' + ]); + + return ''; + } +} diff --git a/src/Module/BaseAdminModule.php b/src/Module/BaseAdminModule.php deleted file mode 100644 index f0cfb0c11c..0000000000 --- a/src/Module/BaseAdminModule.php +++ /dev/null @@ -1,120 +0,0 @@ -t('Please login to continue.')); - Session::set('return_path', DI::args()->getQueryString()); - DI::baseUrl()->redirect('login'); - } - - if (!empty($_SESSION['submanage'])) { - throw new ForbiddenException(DI::l10n()->t('Submanaged account can\'t access the administation pages. Please log back in as the master account.')); - } - - // Header stuff - DI::page()['htmlhead'] .= Renderer::replaceMacros(Renderer::getMarkupTemplate('admin/settings_head.tpl'), []); - - /* - * Side bar links - */ - - // array(url, name, extra css classes) - // not part of $aside to make the template more adjustable - $aside_sub = [ - 'information' => [DI::l10n()->t('Information'), [ - 'overview' => ['admin' , DI::l10n()->t('Overview') , 'overview'], - 'federation' => ['admin/federation' , DI::l10n()->t('Federation Statistics') , 'federation'] - ]], - 'configuration' => [DI::l10n()->t('Configuration'), [ - 'site' => ['admin/site' , DI::l10n()->t('Site') , 'site'], - 'users' => ['admin/users' , DI::l10n()->t('Users') , 'users'], - 'addons' => ['admin/addons' , DI::l10n()->t('Addons') , 'addons'], - 'themes' => ['admin/themes' , DI::l10n()->t('Themes') , 'themes'], - 'features' => ['admin/features' , DI::l10n()->t('Additional features') , 'features'], - 'tos' => ['admin/tos' , DI::l10n()->t('Terms of Service') , 'tos'], - ]], - 'database' => [DI::l10n()->t('Database'), [ - 'dbsync' => ['admin/dbsync' , DI::l10n()->t('DB updates') , 'dbsync'], - 'deferred' => ['admin/queue/deferred', DI::l10n()->t('Inspect Deferred Workers'), 'deferred'], - 'workerqueue' => ['admin/queue' , DI::l10n()->t('Inspect worker Queue') , 'workerqueue'], - ]], - 'tools' => [DI::l10n()->t('Tools'), [ - 'contactblock' => ['admin/blocklist/contact', DI::l10n()->t('Contact Blocklist') , 'contactblock'], - 'blocklist' => ['admin/blocklist/server' , DI::l10n()->t('Server Blocklist') , 'blocklist'], - 'deleteitem' => ['admin/item/delete' , DI::l10n()->t('Delete Item') , 'deleteitem'], - ]], - 'logs' => [DI::l10n()->t('Logs'), [ - 'logsconfig' => ['admin/logs/', DI::l10n()->t('Logs') , 'logs'], - 'logsview' => ['admin/logs/view' , DI::l10n()->t('View Logs') , 'viewlogs'], - ]], - 'diagnostics' => [DI::l10n()->t('Diagnostics'), [ - 'phpinfo' => ['admin/phpinfo' , DI::l10n()->t('PHP Info') , 'phpinfo'], - 'probe' => ['probe' , DI::l10n()->t('probe address') , 'probe'], - 'webfinger' => ['webfinger' , DI::l10n()->t('check webfinger') , 'webfinger'], - 'itemsource' => ['admin/item/source' , DI::l10n()->t('Item Source') , 'itemsource'], - 'babel' => ['babel' , DI::l10n()->t('Babel') , 'babel'], - ]], - ]; - - $t = Renderer::getMarkupTemplate('admin/aside.tpl'); - DI::page()['aside'] .= Renderer::replaceMacros($t, [ - '$admin' => ['addons_admin' => Addon::getAdminList()], - '$subpages' => $aside_sub, - '$admtxt' => DI::l10n()->t('Admin'), - '$plugadmtxt' => DI::l10n()->t('Addon Features'), - '$h_pending' => DI::l10n()->t('User registrations waiting for confirmation'), - '$admurl' => 'admin/' - ]); - - return ''; - } -} diff --git a/src/Module/BaseSearch.php b/src/Module/BaseSearch.php new file mode 100644 index 0000000000..26b3ea6060 --- /dev/null +++ b/src/Module/BaseSearch.php @@ -0,0 +1,166 @@ +get('system', 'poco_local_search'); + + $search = $prefix . $search; + + if (!$search) { + return ''; + } + + $header = ''; + + if (strpos($search, '@') === 0) { + $search = substr($search, 1); + $type = Search::TYPE_PEOPLE; + $header = DI::l10n()->t('People Search - %s', $search); + + if (strrpos($search, '@') > 0) { + $results = Search::getContactsFromProbe($search); + } + } + + if (strpos($search, '!') === 0) { + $search = substr($search, 1); + $type = Search::TYPE_FORUM; + $header = DI::l10n()->t('Forum Search - %s', $search); + } + + $args = DI::args(); + $pager = new Pager($args->getQueryString()); + + if ($localSearch && empty($results)) { + $pager->setItemsPerPage(80); + $results = Search::getContactsFromLocalDirectory($search, $type, $pager->getStart(), $pager->getItemsPerPage()); + } elseif (strlen($config->get('system', 'directory')) && empty($results)) { + $results = Search::getContactsFromGlobalDirectory($search, $type, $pager->getPage()); + $pager->setItemsPerPage($results->getItemsPage()); + } + + return self::printResult($results, $pager, $header); + } + + /** + * Prints a human readable search result + * + * @param ResultList $results + * @param Pager $pager + * @param string $header + * + * @return string The result + * @throws HTTPException\InternalServerErrorException + * @throws \ImagickException + */ + protected static function printResult(ResultList $results, Pager $pager, $header = '') + { + if ($results->getTotal() == 0) { + info(DI::l10n()->t('No matches')); + return ''; + } + + $id = 0; + $entries = []; + foreach ($results->getResults() as $result) { + + // in case the result is a contact result, add a contact-specific entry + if ($result instanceof ContactResult) { + + $alt_text = ''; + $location = ''; + $about = ''; + $accountType = ''; + $photo_menu = []; + + // If We already know this contact then don't show the "connect" button + if ($result->getCid() > 0 || $result->getPCid() > 0) { + $connLink = ""; + $connTxt = ""; + $contact = Model\Contact::getById( + ($result->getCid() > 0) ? $result->getCid() : $result->getPCid() + ); + + if (!empty($contact)) { + $photo_menu = Model\Contact::photoMenu($contact); + $details = Contact::getContactTemplateVars($contact); + $alt_text = $details['alt_text']; + $location = $contact['location']; + $about = $contact['about']; + $accountType = Model\Contact::getAccountType($contact); + } else { + $photo_menu = []; + } + } else { + $connLink = DI::baseUrl()->get() . '/follow/?url=' . $result->getUrl(); + $connTxt = DI::l10n()->t('Connect'); + + $photo_menu['profile'] = [DI::l10n()->t("View Profile"), Model\Contact::magicLink($result->getUrl())]; + $photo_menu['follow'] = [DI::l10n()->t("Connect/Follow"), $connLink]; + } + + $photo = str_replace("http:///photo/", Search::getGlobalDirectory() . "/photo/", $result->getPhoto()); + + $entry = [ + 'alt_text' => $alt_text, + 'url' => Model\Contact::magicLink($result->getUrl()), + 'itemurl' => $result->getItem(), + 'name' => $result->getName(), + 'thumb' => ProxyUtils::proxifyUrl($photo, false, ProxyUtils::SIZE_THUMB), + 'img_hover' => $result->getTags(), + 'conntxt' => $connTxt, + 'connlnk' => $connLink, + 'photo_menu' => $photo_menu, + 'details' => $location, + 'tags' => $result->getTags(), + 'about' => $about, + 'account_type' => $accountType, + 'network' => ContactSelector::networkToName($result->getNetwork(), $result->getUrl()), + 'id' => ++$id, + ]; + $entries[] = $entry; + } + } + + $tpl = Renderer::getMarkupTemplate('viewcontact_template.tpl'); + return Renderer::replaceMacros($tpl, [ + 'title' => $header, + '$contacts' => $entries, + '$paginate' => $pager->renderFull($results->getTotal()), + ]); + } +} diff --git a/src/Module/BaseSearchModule.php b/src/Module/BaseSearchModule.php deleted file mode 100644 index 42bb943da0..0000000000 --- a/src/Module/BaseSearchModule.php +++ /dev/null @@ -1,166 +0,0 @@ -get('system', 'poco_local_search'); - - $search = $prefix . $search; - - if (!$search) { - return ''; - } - - $header = ''; - - if (strpos($search, '@') === 0) { - $search = substr($search, 1); - $type = Search::TYPE_PEOPLE; - $header = DI::l10n()->t('People Search - %s', $search); - - if (strrpos($search, '@') > 0) { - $results = Search::getContactsFromProbe($search); - } - } - - if (strpos($search, '!') === 0) { - $search = substr($search, 1); - $type = Search::TYPE_FORUM; - $header = DI::l10n()->t('Forum Search - %s', $search); - } - - $args = DI::args(); - $pager = new Pager($args->getQueryString()); - - if ($localSearch && empty($results)) { - $pager->setItemsPerPage(80); - $results = Search::getContactsFromLocalDirectory($search, $type, $pager->getStart(), $pager->getItemsPerPage()); - } elseif (strlen($config->get('system', 'directory')) && empty($results)) { - $results = Search::getContactsFromGlobalDirectory($search, $type, $pager->getPage()); - $pager->setItemsPerPage($results->getItemsPage()); - } - - return self::printResult($results, $pager, $header); - } - - /** - * Prints a human readable search result - * - * @param ResultList $results - * @param Pager $pager - * @param string $header - * - * @return string The result - * @throws HTTPException\InternalServerErrorException - * @throws \ImagickException - */ - protected static function printResult(ResultList $results, Pager $pager, $header = '') - { - if ($results->getTotal() == 0) { - info(DI::l10n()->t('No matches')); - return ''; - } - - $id = 0; - $entries = []; - foreach ($results->getResults() as $result) { - - // in case the result is a contact result, add a contact-specific entry - if ($result instanceof ContactResult) { - - $alt_text = ''; - $location = ''; - $about = ''; - $accountType = ''; - $photo_menu = []; - - // If We already know this contact then don't show the "connect" button - if ($result->getCid() > 0 || $result->getPCid() > 0) { - $connLink = ""; - $connTxt = ""; - $contact = Model\Contact::getById( - ($result->getCid() > 0) ? $result->getCid() : $result->getPCid() - ); - - if (!empty($contact)) { - $photo_menu = Model\Contact::photoMenu($contact); - $details = Contact::getContactTemplateVars($contact); - $alt_text = $details['alt_text']; - $location = $contact['location']; - $about = $contact['about']; - $accountType = Model\Contact::getAccountType($contact); - } else { - $photo_menu = []; - } - } else { - $connLink = DI::baseUrl()->get() . '/follow/?url=' . $result->getUrl(); - $connTxt = DI::l10n()->t('Connect'); - - $photo_menu['profile'] = [DI::l10n()->t("View Profile"), Model\Contact::magicLink($result->getUrl())]; - $photo_menu['follow'] = [DI::l10n()->t("Connect/Follow"), $connLink]; - } - - $photo = str_replace("http:///photo/", Search::getGlobalDirectory() . "/photo/", $result->getPhoto()); - - $entry = [ - 'alt_text' => $alt_text, - 'url' => Model\Contact::magicLink($result->getUrl()), - 'itemurl' => $result->getItem(), - 'name' => $result->getName(), - 'thumb' => ProxyUtils::proxifyUrl($photo, false, ProxyUtils::SIZE_THUMB), - 'img_hover' => $result->getTags(), - 'conntxt' => $connTxt, - 'connlnk' => $connLink, - 'photo_menu' => $photo_menu, - 'details' => $location, - 'tags' => $result->getTags(), - 'about' => $about, - 'account_type' => $accountType, - 'network' => ContactSelector::networkToName($result->getNetwork(), $result->getUrl()), - 'id' => ++$id, - ]; - $entries[] = $entry; - } - } - - $tpl = Renderer::getMarkupTemplate('viewcontact_template.tpl'); - return Renderer::replaceMacros($tpl, [ - 'title' => $header, - '$contacts' => $entries, - '$paginate' => $pager->renderFull($results->getTotal()), - ]); - } -} diff --git a/src/Module/BaseSettings.php b/src/Module/BaseSettings.php new file mode 100644 index 0000000000..d4652cc9f1 --- /dev/null +++ b/src/Module/BaseSettings.php @@ -0,0 +1,110 @@ + DI::l10n()->t('everybody') + ]); + + $tabs = []; + + $tabs[] = [ + 'label' => DI::l10n()->t('Account'), + 'url' => 'settings', + 'selected' => (($a->argc == 1) && ($a->argv[0] === 'settings') ? 'active' : ''), + 'accesskey' => 'o', + ]; + + $tabs[] = [ + 'label' => DI::l10n()->t('Two-factor authentication'), + 'url' => 'settings/2fa', + 'selected' => (($a->argc > 1) && ($a->argv[1] === '2fa') ? 'active' : ''), + 'accesskey' => 'o', + ]; + + $tabs[] = [ + 'label' => DI::l10n()->t('Profile'), + 'url' => 'settings/profile', + 'selected' => (($a->argc > 1) && ($a->argv[1] === 'profile') ? 'active' : ''), + 'accesskey' => 'p', + ]; + + if (Feature::get()) { + $tabs[] = [ + 'label' => DI::l10n()->t('Additional features'), + 'url' => 'settings/features', + 'selected' => (($a->argc > 1) && ($a->argv[1] === 'features') ? 'active' : ''), + 'accesskey' => 't', + ]; + } + + $tabs[] = [ + 'label' => DI::l10n()->t('Display'), + 'url' => 'settings/display', + 'selected' => (($a->argc > 1) && ($a->argv[1] === 'display') ? 'active' : ''), + 'accesskey' => 'i', + ]; + + $tabs[] = [ + 'label' => DI::l10n()->t('Social Networks'), + 'url' => 'settings/connectors', + 'selected' => (($a->argc > 1) && ($a->argv[1] === 'connectors') ? 'active' : ''), + 'accesskey' => 'w', + ]; + + $tabs[] = [ + 'label' => DI::l10n()->t('Addons'), + 'url' => 'settings/addon', + 'selected' => (($a->argc > 1) && ($a->argv[1] === 'addon') ? 'active' : ''), + 'accesskey' => 'l', + ]; + + $tabs[] = [ + 'label' => DI::l10n()->t('Delegations'), + 'url' => 'settings/delegation', + 'selected' => (($a->argc > 1) && ($a->argv[1] === 'delegation') ? 'active' : ''), + 'accesskey' => 'd', + ]; + + $tabs[] = [ + 'label' => DI::l10n()->t('Connected apps'), + 'url' => 'settings/oauth', + 'selected' => (($a->argc > 1) && ($a->argv[1] === 'oauth') ? 'active' : ''), + 'accesskey' => 'b', + ]; + + $tabs[] = [ + 'label' => DI::l10n()->t('Export personal data'), + 'url' => 'settings/userexport', + 'selected' => (($a->argc > 1) && ($a->argv[1] === 'userexport') ? 'active' : ''), + 'accesskey' => 'e', + ]; + + $tabs[] = [ + 'label' => DI::l10n()->t('Remove account'), + 'url' => 'removeme', + 'selected' => (($a->argc == 1) && ($a->argv[0] === 'removeme') ? 'active' : ''), + 'accesskey' => 'r', + ]; + + + $tabtpl = Renderer::getMarkupTemplate("generic_links_widget.tpl"); + DI::page()['aside'] = Renderer::replaceMacros($tabtpl, [ + '$title' => DI::l10n()->t('Settings'), + '$class' => 'settings-widget', + '$items' => $tabs, + ]); + } +} diff --git a/src/Module/BaseSettingsModule.php b/src/Module/BaseSettingsModule.php deleted file mode 100644 index 225f5ed4ae..0000000000 --- a/src/Module/BaseSettingsModule.php +++ /dev/null @@ -1,110 +0,0 @@ - DI::l10n()->t('everybody') - ]); - - $tabs = []; - - $tabs[] = [ - 'label' => DI::l10n()->t('Account'), - 'url' => 'settings', - 'selected' => (($a->argc == 1) && ($a->argv[0] === 'settings') ? 'active' : ''), - 'accesskey' => 'o', - ]; - - $tabs[] = [ - 'label' => DI::l10n()->t('Two-factor authentication'), - 'url' => 'settings/2fa', - 'selected' => (($a->argc > 1) && ($a->argv[1] === '2fa') ? 'active' : ''), - 'accesskey' => 'o', - ]; - - $tabs[] = [ - 'label' => DI::l10n()->t('Profile'), - 'url' => 'settings/profile', - 'selected' => (($a->argc > 1) && ($a->argv[1] === 'profile') ? 'active' : ''), - 'accesskey' => 'p', - ]; - - if (Feature::get()) { - $tabs[] = [ - 'label' => DI::l10n()->t('Additional features'), - 'url' => 'settings/features', - 'selected' => (($a->argc > 1) && ($a->argv[1] === 'features') ? 'active' : ''), - 'accesskey' => 't', - ]; - } - - $tabs[] = [ - 'label' => DI::l10n()->t('Display'), - 'url' => 'settings/display', - 'selected' => (($a->argc > 1) && ($a->argv[1] === 'display') ? 'active' : ''), - 'accesskey' => 'i', - ]; - - $tabs[] = [ - 'label' => DI::l10n()->t('Social Networks'), - 'url' => 'settings/connectors', - 'selected' => (($a->argc > 1) && ($a->argv[1] === 'connectors') ? 'active' : ''), - 'accesskey' => 'w', - ]; - - $tabs[] = [ - 'label' => DI::l10n()->t('Addons'), - 'url' => 'settings/addon', - 'selected' => (($a->argc > 1) && ($a->argv[1] === 'addon') ? 'active' : ''), - 'accesskey' => 'l', - ]; - - $tabs[] = [ - 'label' => DI::l10n()->t('Delegations'), - 'url' => 'settings/delegation', - 'selected' => (($a->argc > 1) && ($a->argv[1] === 'delegation') ? 'active' : ''), - 'accesskey' => 'd', - ]; - - $tabs[] = [ - 'label' => DI::l10n()->t('Connected apps'), - 'url' => 'settings/oauth', - 'selected' => (($a->argc > 1) && ($a->argv[1] === 'oauth') ? 'active' : ''), - 'accesskey' => 'b', - ]; - - $tabs[] = [ - 'label' => DI::l10n()->t('Export personal data'), - 'url' => 'settings/userexport', - 'selected' => (($a->argc > 1) && ($a->argv[1] === 'userexport') ? 'active' : ''), - 'accesskey' => 'e', - ]; - - $tabs[] = [ - 'label' => DI::l10n()->t('Remove account'), - 'url' => 'removeme', - 'selected' => (($a->argc == 1) && ($a->argv[0] === 'removeme') ? 'active' : ''), - 'accesskey' => 'r', - ]; - - - $tabtpl = Renderer::getMarkupTemplate("generic_links_widget.tpl"); - DI::page()['aside'] = Renderer::replaceMacros($tabtpl, [ - '$title' => DI::l10n()->t('Settings'), - '$class' => 'settings-widget', - '$items' => $tabs, - ]); - } -} diff --git a/src/Module/Search/Directory.php b/src/Module/Search/Directory.php index 84dd4c2dda..0540914f59 100644 --- a/src/Module/Search/Directory.php +++ b/src/Module/Search/Directory.php @@ -4,14 +4,14 @@ namespace Friendica\Module\Search; use Friendica\Content\Widget; use Friendica\DI; -use Friendica\Module\BaseSearchModule; +use Friendica\Module\BaseSearch; use Friendica\Module\Security\Login; use Friendica\Util\Strings; /** * Directory search module */ -class Directory extends BaseSearchModule +class Directory extends BaseSearch { public static function content(array $parameters = []) { diff --git a/src/Module/Search/Index.php b/src/Module/Search/Index.php index 69646fd1bd..1f8bfe4bc2 100644 --- a/src/Module/Search/Index.php +++ b/src/Module/Search/Index.php @@ -15,11 +15,11 @@ use Friendica\DI; use Friendica\Model\Contact; use Friendica\Model\Item; use Friendica\Model\Term; -use Friendica\Module\BaseSearchModule; +use Friendica\Module\BaseSearch; use Friendica\Network\HTTPException; use Friendica\Util\Strings; -class Index extends BaseSearchModule +class Index extends BaseSearch { public static function content(array $parameters = []) { diff --git a/src/Module/Settings/Delegation.php b/src/Module/Settings/Delegation.php index d7f49e6a90..c6d587d908 100644 --- a/src/Module/Settings/Delegation.php +++ b/src/Module/Settings/Delegation.php @@ -8,14 +8,14 @@ use Friendica\Core\Session; use Friendica\Database\DBA; use Friendica\DI; use Friendica\Model\User; -use Friendica\Module\BaseSettingsModule; +use Friendica\Module\BaseSettings; use Friendica\Network\HTTPException; use Friendica\Util\Strings; /** * Account delegation settings module */ -class Delegation extends BaseSettingsModule +class Delegation extends BaseSettings { public static function post(array $parameters = []) { diff --git a/src/Module/Settings/Profile/Index.php b/src/Module/Settings/Profile/Index.php index b0eb194edd..ea9b41866a 100644 --- a/src/Module/Settings/Profile/Index.php +++ b/src/Module/Settings/Profile/Index.php @@ -16,14 +16,14 @@ use Friendica\Model\GContact; use Friendica\Model\Profile; use Friendica\Model\ProfileField; use Friendica\Model\User; -use Friendica\Module\BaseSettingsModule; +use Friendica\Module\BaseSettings; use Friendica\Module\Security\Login; use Friendica\Network\HTTPException; use Friendica\Util\DateTimeFormat; use Friendica\Util\Strings; use Friendica\Util\Temporal; -class Index extends BaseSettingsModule +class Index extends BaseSettings { public static function post(array $parameters = []) { diff --git a/src/Module/Settings/Profile/Photo/Crop.php b/src/Module/Settings/Profile/Photo/Crop.php index 738e3fcb2a..1ae828d2a2 100644 --- a/src/Module/Settings/Profile/Photo/Crop.php +++ b/src/Module/Settings/Profile/Photo/Crop.php @@ -9,10 +9,10 @@ use Friendica\Database\DBA; use Friendica\DI; use Friendica\Model\Contact; use Friendica\Model\Photo; -use Friendica\Module\BaseSettingsModule; +use Friendica\Module\BaseSettings; use Friendica\Network\HTTPException; -class Crop extends BaseSettingsModule +class Crop extends BaseSettings { public static function post(array $parameters = []) { diff --git a/src/Module/Settings/Profile/Photo/Index.php b/src/Module/Settings/Profile/Photo/Index.php index 9d2648abd8..97171f7aa9 100644 --- a/src/Module/Settings/Profile/Photo/Index.php +++ b/src/Module/Settings/Profile/Photo/Index.php @@ -8,13 +8,13 @@ use Friendica\Core\Session; use Friendica\DI; use Friendica\Model\Contact; use Friendica\Model\Photo; -use Friendica\Module\BaseSettingsModule; +use Friendica\Module\BaseSettings; use Friendica\Network\HTTPException; use Friendica\Object\Image; use Friendica\Util\Images; use Friendica\Util\Strings; -class Index extends BaseSettingsModule +class Index extends BaseSettings { public static function post(array $parameters = []) { diff --git a/src/Module/Settings/TwoFactor/AppSpecific.php b/src/Module/Settings/TwoFactor/AppSpecific.php index 6a8821e5f7..c2e24e8b48 100644 --- a/src/Module/Settings/TwoFactor/AppSpecific.php +++ b/src/Module/Settings/TwoFactor/AppSpecific.php @@ -5,7 +5,7 @@ namespace Friendica\Module\Settings\TwoFactor; use Friendica\Core\Renderer; use Friendica\DI; use Friendica\Model\TwoFactor\AppSpecificPassword; -use Friendica\Module\BaseSettingsModule; +use Friendica\Module\BaseSettings; use Friendica\Module\Security\Login; /** @@ -13,7 +13,7 @@ use Friendica\Module\Security\Login; * * @package Friendica\Module\TwoFactor */ -class AppSpecific extends BaseSettingsModule +class AppSpecific extends BaseSettings { private static $appSpecificPassword = null; diff --git a/src/Module/Settings/TwoFactor/Index.php b/src/Module/Settings/TwoFactor/Index.php index ab3400801e..0c021d4211 100644 --- a/src/Module/Settings/TwoFactor/Index.php +++ b/src/Module/Settings/TwoFactor/Index.php @@ -8,11 +8,11 @@ use Friendica\DI; use Friendica\Model\TwoFactor\AppSpecificPassword; use Friendica\Model\TwoFactor\RecoveryCode; use Friendica\Model\User; -use Friendica\Module\BaseSettingsModule; +use Friendica\Module\BaseSettings; use Friendica\Module\Security\Login; use PragmaRX\Google2FA\Google2FA; -class Index extends BaseSettingsModule +class Index extends BaseSettings { public static function post(array $parameters = []) { diff --git a/src/Module/Settings/TwoFactor/Recovery.php b/src/Module/Settings/TwoFactor/Recovery.php index 18c372c53c..089283d332 100644 --- a/src/Module/Settings/TwoFactor/Recovery.php +++ b/src/Module/Settings/TwoFactor/Recovery.php @@ -5,7 +5,7 @@ namespace Friendica\Module\Settings\TwoFactor; use Friendica\Core\Renderer; use Friendica\DI; use Friendica\Model\TwoFactor\RecoveryCode; -use Friendica\Module\BaseSettingsModule; +use Friendica\Module\BaseSettings; use Friendica\Module\Security\Login; /** @@ -13,7 +13,7 @@ use Friendica\Module\Security\Login; * * @package Friendica\Module\TwoFactor */ -class Recovery extends BaseSettingsModule +class Recovery extends BaseSettings { public static function init(array $parameters = []) { diff --git a/src/Module/Settings/TwoFactor/Verify.php b/src/Module/Settings/TwoFactor/Verify.php index 2eae0300ae..d832dd622b 100644 --- a/src/Module/Settings/TwoFactor/Verify.php +++ b/src/Module/Settings/TwoFactor/Verify.php @@ -9,7 +9,7 @@ use BaconQrCode\Writer; use Friendica\Core\Renderer; use Friendica\Core\Session; use Friendica\DI; -use Friendica\Module\BaseSettingsModule; +use Friendica\Module\BaseSettings; use Friendica\Module\Security\Login; use PragmaRX\Google2FA\Google2FA; @@ -18,7 +18,7 @@ use PragmaRX\Google2FA\Google2FA; * * @package Friendica\Module\TwoFactor\Settings */ -class Verify extends BaseSettingsModule +class Verify extends BaseSettings { public static function init(array $parameters = []) { diff --git a/src/Module/Settings/UserExport.php b/src/Module/Settings/UserExport.php index 8d04e85360..a1ea50353d 100644 --- a/src/Module/Settings/UserExport.php +++ b/src/Module/Settings/UserExport.php @@ -11,12 +11,12 @@ use Friendica\Core\Renderer; use Friendica\Database\DBA; use Friendica\Database\DBStructure; use Friendica\DI; -use Friendica\Module\BaseSettingsModule; +use Friendica\Module\BaseSettings; /** * Module to export user data **/ -class UserExport extends BaseSettingsModule +class UserExport extends BaseSettings { /** * Handle the request to export data.