X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=mod%2Fsuggest.php;h=adf41c0c60c6cadd501d0500409ef331a5f52ba6;hb=989ac2fda800b826addbf70eff4feccde1c352ba;hp=aab313366b20d7ae933832d9747270d2b69e6e11;hpb=f2da1c5ab981ad273961eec86a8efdb5e4f01b5c;p=friendica.git diff --git a/mod/suggest.php b/mod/suggest.php index aab313366b..adf41c0c60 100644 --- a/mod/suggest.php +++ b/mod/suggest.php @@ -1,44 +1,37 @@ . + * */ use Friendica\App; -use Friendica\Content\ContactSelector; use Friendica\Content\Widget; -use Friendica\Core\L10n; use Friendica\Core\Renderer; -use Friendica\Core\System; use Friendica\Database\DBA; use Friendica\DI; use Friendica\Model\Contact; -use Friendica\Model\GContact; -use Friendica\Util\Proxy as ProxyUtils; - -function suggest_init(App $a) -{ - if (! local_user()) { - return; - } -} - -function suggest_post(App $a) -{ - if (!empty($_POST['ignore']) && !empty($_POST['confirm'])) { - DBA::insert('gcign', ['uid' => local_user(), 'gcid' => $_POST['ignore']]); - notice(L10n::t('Contact suggestion successfully ignored.')); - } - - DI::baseUrl()->redirect('suggest'); -} +use Friendica\Module\Contact as ModuleContact; +use Friendica\Network\HTTPException; function suggest_content(App $a) { - $o = ''; - - if (! local_user()) { - notice(L10n::t('Permission denied.') . EOL); - return; + if (!local_user()) { + throw new HTTPException\ForbiddenException(DI::l10n()->t('Permission denied.')); } $_SESSION['return_path'] = DI::args()->getCommand(); @@ -46,80 +39,20 @@ function suggest_content(App $a) DI::page()['aside'] .= Widget::findPeople(); DI::page()['aside'] .= Widget::follow(); - - $r = GContact::suggestionQuery(local_user()); - - if (! DBA::isResult($r)) { - $o .= L10n::t('No suggestions available. If this is a new site, please try again in 24 hours.'); - return $o; - } - - - if (!empty($_GET['ignore'])) { - //
can't take arguments in its "action" parameter - // so add any arguments as hidden inputs - $query = explode_querystring(DI::args()->getQueryString()); - $inputs = []; - foreach ($query['args'] as $arg) { - if (strpos($arg, 'confirm=') === false) { - $arg_parts = explode('=', $arg); - $inputs[] = ['name' => $arg_parts[0], 'value' => $arg_parts[1]]; - } - } - - return Renderer::replaceMacros(Renderer::getMarkupTemplate('confirm.tpl'), [ - '$method' => 'post', - '$message' => L10n::t('Do you really want to delete this suggestion?'), - '$extra_inputs' => $inputs, - '$confirm' => L10n::t('Yes'), - '$confirm_url' => $query['base'], - '$confirm_name' => 'confirm', - '$cancel' => L10n::t('Cancel'), - ]); + $contacts = Contact\Relation::getSuggestions(local_user()); + if (!DBA::isResult($contacts)) { + return DI::l10n()->t('No suggestions available. If this is a new site, please try again in 24 hours.'); } - $id = 0; $entries = []; - - foreach ($r as $rr) { - $connlnk = System::baseUrl() . '/follow/?url=' . (($rr['connect']) ? $rr['connect'] : $rr['url']); - $ignlnk = System::baseUrl() . '/suggest?ignore=' . $rr['id']; - $photo_menu = [ - 'profile' => [L10n::t("View Profile"), Contact::magicLink($rr["url"])], - 'follow' => [L10n::t("Connect/Follow"), $connlnk], - 'hide' => [L10n::t('Ignore/Hide'), $ignlnk] - ]; - - $contact_details = Contact::getDetailsByURL($rr["url"], local_user(), $rr); - - $entry = [ - 'url' => Contact::magicLink($rr['url']), - 'itemurl' => (($contact_details['addr'] != "") ? $contact_details['addr'] : $rr['url']), - 'img_hover' => $rr['url'], - 'name' => $contact_details['name'], - 'thumb' => ProxyUtils::proxifyUrl($contact_details['thumb'], false, ProxyUtils::SIZE_THUMB), - 'details' => $contact_details['location'], - 'tags' => $contact_details['keywords'], - 'about' => $contact_details['about'], - 'account_type' => Contact::getAccountType($contact_details), - 'ignlnk' => $ignlnk, - 'ignid' => $rr['id'], - 'conntxt' => L10n::t('Connect'), - 'connlnk' => $connlnk, - 'photo_menu' => $photo_menu, - 'ignore' => L10n::t('Ignore/Hide'), - 'network' => ContactSelector::networkToName($rr['network'], $rr['url']), - 'id' => ++$id, - ]; - $entries[] = $entry; + foreach ($contacts as $contact) { + $entries[] = ModuleContact::getContactTemplateVars($contact); } $tpl = Renderer::getMarkupTemplate('viewcontact_template.tpl'); - $o .= Renderer::replaceMacros($tpl,[ - '$title' => L10n::t('Friend Suggestions'), + return Renderer::replaceMacros($tpl,[ + '$title' => DI::l10n()->t('Friend Suggestions'), '$contacts' => $entries, ]); - - return $o; }