$friend_value = 'AND friend_value > 0'; } else { $friend_value = ''; } $prefered_total = $db->get_var("SELECT count(*) FROM friends WHERE friend_type='manual' AND friend_from={$prefered_id} {$friend_value}"); $dbusers = $db->get_results("SELECT friend_to as who FROM friends, users WHERE friend_type='manual' AND friend_from={$prefered_id} and user_id = friend_to {$friend_value} order by user_login asc LIMIT {$prefered_offset},{$prefered_page_size}"); break; case 'to': $prefered_total = $db->get_var("SELECT count(*) FROM friends WHERE friend_type='manual' AND friend_to={$prefered_id} AND friend_from != 0 and friend_value > 0"); $dbusers = $db->get_results("SELECT friend_from as who FROM friends, users WHERE friend_type='manual' AND friend_to={$prefered_id} and user_id = friend_from and friend_value > 0 order by user_login asc LIMIT {$prefered_offset},{$prefered_page_size}"); break; } if ($dbusers) { $friend = new User(); echo '<div class="bars-list">'; foreach ($dbusers as $dbuser) { $friend->id = $dbuser->who; $friend->read(); echo '<div class="item-wider">'; echo '<a href="' . get_user_uri($friend->username) . '" title="' . $friend->username . '">'; echo '<img src="' . get_avatar_url($friend->id, $friend->avatar, 20) . '" width="20" height="20" alt="' . $friend->username . '"/>'; echo $friend->username . '</a>'; if ($current_user->user_id > 0 && $current_user->user_id != $friend->id) { echo '<a id="friend-' . $prefered_type . '-' . $current_user->user_id . '-' . $friend->id . '" href="javascript:get_votes(\'get_friend.php\',\'' . $current_user->user_id . '\',\'friend-' . $prefered_type . '-' . $current_user->user_id . '-' . $friend->id . '\',0,\'' . $friend->id . '\')">' . friend_teaser($current_user->user_id, $friend->id) . '</a>'; } echo '</div>'; echo "\n"; } echo '</div>'; do_contained_pages($prefered_id, $prefered_total, $prefered_page, $prefered_page_size, 'get_friends_bars.php', $prefered_type, $prefered_type . '-container'); }
include_once mnminclude . 'geo.php'; if (empty($_GET['id'])) { die; } $id = intval($_GET['id']); $user = new User(); $user->id = $id; if (!$user->read()) { die; } if ($user->avatar) { echo '<div style="float: left;"><img hspace="4" src="' . get_avatar_url($user->id, $user->avatar, 80) . '" width="80" height="80" alt="' . $user->username . '"/></div>'; } echo '<strong>' . _('usuario') . ':</strong> ' . $user->username; if ($current_user->user_id > 0 && $current_user->user_id != $user->id) { echo ' ' . friend_teaser($current_user->user_id, $user->id); } echo '<br/>'; echo '<strong>' . _('nombre') . ':</strong> ' . $user->names . '<br/>'; echo '<strong>' . _('web') . ':</strong> ' . $user->url . '<br/>'; echo '<strong>' . _('karma') . ':</strong> ' . $user->karma . '<br/>'; echo '<strong>' . _('desde') . ':</strong> ' . get_date($user->date) . '<br/>'; if ($current_user->user_id > 0 && $current_user->user_id != $user->id && ($her_latlng = geo_latlng('user', $user->id)) && ($my_latlng = geo_latlng('user', $current_user->user_id))) { $distance = (int) geo_distance($my_latlng, $her_latlng); echo '<strong>' . _('distancia') . ':</strong> ' . $distance . ' kms<br/>'; } $post = new Post(); if ($post->read_last($user->id)) { echo '<br clear="left"><strong>' . _('última nota') . '</strong>: '; $post->print_text(); }
function do_profile() { global $user, $current_user, $login, $db, $globals; if (!empty($user->url)) { if ($user->karma < 10) { $nofollow = 'rel="nofollow"'; } if (!preg_match('/^http/', $user->url)) { $url = 'http://' . $user->url; } else { $url = $user->url; } } $post = new Post(); if ($post->read_last($user->id)) { echo '<ol class="comments-list" id="last_post">'; $post->print_summary(); echo "</ol>\n"; } echo '<fieldset><legend>'; echo _('información personal'); if ($login === $current_user->user_login) { echo ' (<a href="' . $globals['base_url'] . 'profile.php">' . _('modificar') . '</a>)'; } elseif ($current_user->user_level == 'god') { echo ' (<a href="' . $globals['base_url'] . 'profile.php?login='******'">' . _('modificar') . '</a>)'; } echo '</legend>'; // Avatar echo '<img class="thumbnail" src="' . get_avatar_url($user->id, $user->avatar, 80) . '" width="80" height="80" alt="' . $user->username . '" title="avatar" />'; // Geo div echo '<div style="width:140px; float:left;">'; if ($globals['do_geo']) { echo '<div id="map" class="thumbnail" style="width:130px; height:130px; overflow:hidden; float:left"></div>'; if ($current_user->user_id > 0 && $current_user->user_id != $user->id && $globals['latlng'] && ($my_latlng = geo_latlng('user', $current_user->user_id))) { $distance = (int) geo_distance($my_latlng, $globals['latlng']); echo '<p style="color: #FF9400; font-size: 90%">' . _('estás a') . " <strong>{$distance} kms</strong> " . _('de') . ' ' . $user->username . '</p>'; } } echo ' </div>'; echo '<div style="float:left;min-width:65%">'; echo '<dl>'; if (!empty($user->username)) { echo '<dt>' . _('usuario') . ':</dt><dd>'; if (!empty($url)) { echo '<a href="' . $url . '" ' . $nofollow . '>' . $user->username . '</a>'; } else { echo $user->username; } // Print friend icon if ($current_user->user_id > 0 && $current_user->user_id != $user->id) { echo ' <a id="friend-' . $current_user->user_id . '-' . $user->id . '" href="javascript:get_votes(\'get_friend.php\',\'' . $current_user->user_id . '\',\'friend-' . $current_user->user_id . '-' . $user->id . '\',0,\'' . $user->id . '\')">' . friend_teaser($current_user->user_id, $user->id) . '</a>'; } // Print user detailed info if ($login === $current_user->user_login || $current_user->user_level == 'god') { echo " (" . _('id') . ": <em>{$user->id}</em>)"; echo " (<em>{$user->level}</em>)"; } if ($current_user->user_level == 'god') { echo " (<em>{$user->username_register}</em>)"; } echo '</dd>'; } if (!empty($user->names)) { echo '<dt>' . _('nombre') . ':</dt><dd>' . $user->names . '</dd>'; } // Show public info is it's a friend or god if ($current_user->user_id > 0 && !empty($user->public_info) && ($current_user->user_id == $user->id || $current_user->user_level == 'god')) { //friends cannot see the IM address (it was public before) echo '<dt>' . _('IM/email') . ':</dt><dd> ' . $user->public_info . '</dd>'; } if (!empty($url)) { echo '<dt>' . _('sitio web') . ':</dt><dd><a href="' . $url . '" ' . $nofollow . '>' . $url . '</a></dd>'; } echo '<dt>' . _('desde') . ':</dt><dd>' . get_date_time($user->date) . '</dd>'; if ($current_user->user_level == 'god') { echo '<dt>' . _('email') . ':</dt><dd>' . $user->email . " (<em>{$user->email_register}</em>)</dd>"; } if ($user->id == $current_user->user_id || $current_user->user_level == 'god') { echo '<dt>' . _('clave API') . ':</dt><dd id="api-key"><a href="javascript:get_votes(\'get_user_api_key.php\',\'\',\'api-key\',0,\'' . $user->id . '\')">' . _('leer clave API') . '</a> (' . _('no la divulgues') . ')</dd>'; if (!empty($user->adcode)) { echo '<dt>' . _('Código AdSense') . ':</dt><dd>' . $user->adcode . ' </dd>'; echo '<dt>' . _('Canal AdSense') . ':</dt><dd>' . $user->adchannel . ' </dd>'; } } echo '<dt>' . _('karma') . ':</dt><dd>' . $user->karma; // Karma details if ($user->id == $current_user->user_id || $current_user->user_level == 'god') { echo ' (<a href="javascript:modal_from_ajax(\'' . $globals['base_url'] . 'backend/get_karma_numbers.php?id=' . $user->id . '\', \'' . _('cálculo del karma') . '\')" title="' . _('detalles') . '">' . _('detalle cálculo') . '</a>)'; } echo '</dd>'; $user->all_stats(); echo '<dt>' . _('noticias enviadas') . ':</dt><dd>' . $user->total_links . '</dd>'; if ($user->total_links > 0 && $user->published_links > 0) { $percent = intval($user->published_links / $user->total_links * 100); } else { $percent = 0; } if ($user->total_links > 1) { $entropy = intval(($user->blogs() - 1) / ($user->total_links - 1) * 100); echo '<dt><em>' . _('entropía') . '</em>:</dt><dd>' . $entropy . '%</dd>'; } echo '<dt>' . _('noticias publicadas') . ':</dt><dd>' . $user->published_links . ' (' . $percent . '%)</dd>'; echo '<dt>' . _('comentarios') . ':</dt><dd>' . $user->total_comments . '</dd>'; echo '<dt>' . _('notas') . ':</dt><dd>' . $user->total_posts . '</dd>'; echo '<dt>' . _('número de votos') . ':</dt><dd>' . $user->total_votes . '</dd>'; echo '</dl>'; echo '</div>'; echo '</fieldset>'; // Print GEO form if ($globals['do_geo'] && $current_user->user_id == $user->id) { echo '<div class="geoform">'; geo_coder_print_form('user', $current_user->user_id, $globals['latlng'], _('ubícate en el mapa (si te apetece)'), 'user'); echo '</div>'; } // Show first numbers of the address if the user has god privileges if ($current_user->user_level == 'god' && $user->level != 'god' && $user->level != 'admin') { // tops and admins know each other for sure, keep privacy $addresses = $db->get_results("select INET_NTOA(vote_ip_int) as ip from votes where vote_type='links' and vote_user_id = {$user->id} order by vote_date desc limit 30"); // Try with comments if (!$addresses) { $addresses = $db->get_results("select comment_ip as ip from comments where comment_user_id = {$user->id} and comment_date > date_sub(now(), interval 30 day) order by comment_date desc limit 30"); } // Not addresses to show if (!$addresses) { return; } $clone_counter = 0; echo '<fieldset><legend>' . _('últimas direcciones IP') . '</legend>'; echo '<ol>'; $prev_address = ''; foreach ($addresses as $dbaddress) { $ip_pattern = preg_replace('/\\.[0-9]+$/', '', $dbaddress->ip); if ($ip_pattern != $prev_address) { echo '<li>' . $ip_pattern . ': <span id="clone-container-' . $clone_counter . '"><!--<a href="javascript:get_votes(\'ip_clones.php\',\'' . $ip_pattern . '\',\'clone-container-' . $clone_counter . '\',0,' . $user->id . ')" title="' . _('clones') . '">»»</a>--></span></li>'; $clone_counter++; $prev_address = $ip_pattern; if ($clone_counter >= 30) { break; } } } echo '</ol>'; echo '</fieldset>'; } }