X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=mod%2Fsuggest.php;h=5e8dcc5fb7325ec3cd66f2041752a62b438b2164;hb=6e7c6ab0fa46dc3ab2f35326bc1b2c747377d509;hp=b8ca423c5ae2a0a0a5acbad99351bfce946e6689;hpb=5d6a098ce0bf14e372c297ed09c9f0452fa60ec7;p=friendica.git diff --git a/mod/suggest.php b/mod/suggest.php index b8ca423c5a..5e8dcc5fb7 100644 --- a/mod/suggest.php +++ b/mod/suggest.php @@ -1,68 +1,119 @@ can't take arguments in its "action" parameter + // so add any arguments as hidden inputs + $query = explode_querystring($a->query_string); + $inputs = []; + foreach ($query['args'] as $arg) { + if (strpos($arg, 'confirm=') === false) { + $arg_parts = explode('=', $arg); + $inputs[] = ['name' => $arg_parts[0], 'value' => $arg_parts[1]]; + } + } + + $a->page['content'] = replace_macros(get_markup_template('confirm.tpl'), [ + '$method' => 'get', + '$message' => L10n::t('Do you really want to delete this suggestion?'), + '$extra_inputs' => $inputs, + '$confirm' => L10n::t('Yes'), + '$confirm_url' => $query['base'], + '$confirm_name' => 'confirmed', + '$cancel' => L10n::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', ['uid' => local_user(), 'gcid' => $_GET['ignore']]); + } } } - - - +function suggest_content(App $a) { -function suggest_content(&$a) { + require_once("mod/proxy.php"); $o = ''; - if(! local_user()) { - notice( t('Permission denied.') . EOL); + if (! local_user()) { + notice(L10n::t('Permission denied.') . EOL); return; } - $_SESSION['return_url'] = $a->get_baseurl() . '/' . $a->cmd; + $_SESSION['return_url'] = System::baseUrl() . '/' . $a->cmd; - $a->page['aside'] .= follow_widget(); - $a->page['aside'] .= findpeople_widget(); + $a->page['aside'] .= Widget::findPeople(); + $a->page['aside'] .= Widget::follow(); - $o .= '

' . t('Friend Suggestions') . '

'; + $r = GContact::suggestionQuery(local_user()); - - $r = suggestion_query(local_user()); - - if(! count($r)) { - $o .= t('No suggestions available. If this is a new site, please try again in 24 hours.'); + if (! DBM::is_result($r)) { + $o .= L10n::t('No suggestions available. If this is a new site, please try again in 24 hours.'); return $o; } - $tpl = get_markup_template('suggest_friends.tpl'); - - foreach($r as $rr) { + 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"), Profile::zrl($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' => Profile::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' => 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; + } - $connlnk = $a->get_baseurl() . '/follow/?url=' . (($rr['connect']) ? $rr['connect'] : $rr['url']); + $tpl = get_markup_template('viewcontact_template.tpl'); - $o .= replace_macros($tpl,array( - '$url' => $rr['url'], - '$name' => $rr['name'], - '$photo' => $rr['photo'], - '$ignlnk' => $a->get_baseurl() . '/suggest?ignore=' . $rr['id'], - '$conntxt' => t('Connect'), - '$connlnk' => $connlnk, - '$ignore' => t('Ignore/Hide') - )); - } + $o .= replace_macros($tpl,[ + '$title' => L10n::t('Friend Suggestions'), + '$contacts' => $entries, + ]); - $o .= cleardiv(); -// $o .= paginate($a); return $o; }