X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=mod%2Fsuggest.php;h=c18de1bd3dc46ea26db8c113ca225afd25629946;hb=eb035771f118e1f289f2ebbbb8a474aa2765c81e;hp=716f7962485c9d2775963e745cecd873c87e4233;hpb=18d93cddf60d46e1334d6dd7454a76f1d6549052;p=friendica.git diff --git a/mod/suggest.php b/mod/suggest.php index 716f796248..c18de1bd3d 100644 --- a/mod/suggest.php +++ b/mod/suggest.php @@ -1,123 +1,58 @@ . + * */ + use Friendica\App; -use Friendica\Core\System; -use Friendica\Database\DBM; +use Friendica\Content\Widget; +use Friendica\Core\Renderer; +use Friendica\Database\DBA; +use Friendica\DI; use Friendica\Model\Contact; -use Friendica\Model\GlobalContact; - -require_once 'include/contact_widgets.php'; - -function suggest_init(App $a) { - if (! local_user()) { - return; - } - - if (x($_GET,'ignore') && intval($_GET['ignore'])) { - // Check if we should do HTML-based delete confirmation - if ($_REQUEST['confirm']) { - //
can't take arguments in its "action" parameter - // so add any arguments as hidden inputs - $query = explode_querystring($a->query_string); - $inputs = array(); - foreach ($query['args'] as $arg) { - if (strpos($arg, 'confirm=') === false) { - $arg_parts = explode('=', $arg); - $inputs[] = array('name' => $arg_parts[0], 'value' => $arg_parts[1]); - } - } - - $a->page['content'] = replace_macros(get_markup_template('confirm.tpl'), array( - '$method' => 'get', - '$message' => t('Do you really want to delete this suggestion?'), - '$extra_inputs' => $inputs, - '$confirm' => t('Yes'), - '$confirm_url' => $query['base'], - '$confirm_name' => 'confirmed', - '$cancel' => t('Cancel'), - )); - $a->error = 1; // Set $a->error so the other module functions don't execute - return; - } - // Now check how the user responded to the confirmation query - if (!$_REQUEST['canceled']) { - dba::insert('gcign', array('uid' => local_user(), 'gcid' => $_GET['ignore'])); - } - } - -} - - +use Friendica\Module\Contact as ModuleContact; +use Friendica\Network\HTTPException; - - -function suggest_content(App $a) { - - require_once("mod/proxy.php"); - - $o = ''; - if (! local_user()) { - notice( t('Permission denied.') . EOL); - return; +function suggest_content(App $a) +{ + if (!local_user()) { + throw new HTTPException\ForbiddenException(DI::l10n()->t('Permission denied.')); } - $_SESSION['return_url'] = System::baseUrl() . '/' . $a->cmd; - - $a->page['aside'] .= findpeople_widget(); - $a->page['aside'] .= follow_widget(); - + $_SESSION['return_path'] = DI::args()->getCommand(); - $r = GlobalContact::suggestionQuery(local_user()); + DI::page()['aside'] .= Widget::findPeople(); + DI::page()['aside'] .= Widget::follow(); - if (! DBM::is_result($r)) { - $o .= t('No suggestions available. If this is a new site, please try again in 24 hours.'); - return $o; + $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.'); } - require_once 'include/contact_selectors.php'; - - foreach ($r as $rr) { - - $connlnk = System::baseUrl() . '/follow/?url=' . (($rr['connect']) ? $rr['connect'] : $rr['url']); - $ignlnk = System::baseUrl() . '/suggest?ignore=' . $rr['id']; - $photo_menu = array( - 'profile' => array(t("View Profile"), zrl($rr["url"])), - 'follow' => array(t("Connect/Follow"), $connlnk), - 'hide' => array(t('Ignore/Hide'), $ignlnk) - ); - - $contact_details = Contact::getDetailsByURL($rr["url"], local_user(), $rr); - - $entry = array( - 'url' => zrl($rr['url']), - 'itemurl' => (($contact_details['addr'] != "") ? $contact_details['addr'] : $rr['url']), - 'img_hover' => $rr['url'], - 'name' => $contact_details['name'], - 'thumb' => proxy_url($contact_details['thumb'], false, PROXY_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' => t('Connect'), - 'connlnk' => $connlnk, - 'photo_menu' => $photo_menu, - 'ignore' => t('Ignore/Hide'), - 'network' => network_to_name($rr['network'], $rr['url']), - 'id' => ++$id, - ); - $entries[] = $entry; + $entries = []; + foreach ($contacts as $contact) { + $entries[] = ModuleContact::getContactTemplateVars($contact); } - $tpl = get_markup_template('viewcontact_template.tpl'); + $tpl = Renderer::getMarkupTemplate('viewcontact_template.tpl'); - $o .= replace_macros($tpl,array( - '$title' => t('Friend Suggestions'), + return Renderer::replaceMacros($tpl,[ + '$title' => DI::l10n()->t('Friend Suggestions'), '$contacts' => $entries, - )); - - return $o; + ]); }