BioTorrents.de’s version of Gazelle
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

friends.php 3.8KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132
  1. <?php
  2. #declare(strict_types=1);
  3. /************************************************************************
  4. //------------// Main friends page //----------------------------------//
  5. This page lists a user's friends.
  6. There's no real point in caching this page. I doubt users load it that
  7. much.
  8. ************************************************************************/
  9. // Number of users per page
  10. define('FRIENDS_PER_PAGE', '20');
  11. include_once(SERVER_ROOT.'/classes/paranoia.class.php');
  12. View::show_header('Friends');
  13. $UserID = $LoggedUser['ID'];
  14. list($Page, $Limit) = Format::page_limit(FRIENDS_PER_PAGE);
  15. // Main query
  16. $DB->query("
  17. SELECT
  18. SQL_CALC_FOUND_ROWS
  19. f.FriendID,
  20. f.Comment,
  21. m.Username,
  22. m.Uploaded,
  23. m.Downloaded,
  24. m.PermissionID,
  25. m.Paranoia,
  26. m.LastAccess,
  27. i.Avatar
  28. FROM friends AS f
  29. JOIN users_main AS m ON f.FriendID = m.ID
  30. JOIN users_info AS i ON f.FriendID = i.UserID
  31. WHERE f.UserID = '$UserID'
  32. ORDER BY Username
  33. LIMIT $Limit");
  34. $Friends = $DB->to_array(false, MYSQLI_BOTH, array(6, 'Paranoia'));
  35. // Number of results (for pagination)
  36. $DB->query('SELECT FOUND_ROWS()');
  37. list($Results) = $DB->next_record();
  38. // Start printing stuff
  39. ?>
  40. <div>
  41. <div class="header">
  42. <h2>Friends List</h2>
  43. </div>
  44. <div class="linkbox">
  45. <?php
  46. // Pagination
  47. $Pages = Format::get_pages($Page, $Results, FRIENDS_PER_PAGE, 9);
  48. echo $Pages;
  49. ?>
  50. </div>
  51. <div class="box pad">
  52. <?php
  53. if ($Results == 0) {
  54. echo '<p>You have no friends! :(</p>';
  55. }
  56. // Start printing out friends
  57. foreach ($Friends as $Friend) {
  58. list($FriendID, $Comment, $Username, $Uploaded, $Downloaded, $Class, $Paranoia, $LastAccess, $Avatar) = $Friend; ?>
  59. <form class="manage_form" name="friends" action="friends.php" method="post">
  60. <input type="hidden" name="auth"
  61. value="<?=$LoggedUser['AuthKey']?>" />
  62. <table class="friends_table vertical_margin">
  63. <tr class="colhead">
  64. <td colspan="<?=(Users::has_avatars_enabled() ? 3 : 2)?>">
  65. <span class="float_left"><?=Users::format_username($FriendID, true, true, true, true)?>
  66. <?php if (check_paranoia('ratio', $Paranoia, $Class, $FriendID)) { ?>
  67. &nbsp;Ratio: <strong><?=Format::get_ratio_html($Uploaded, $Downloaded)?></strong>
  68. <?php
  69. }
  70. if (check_paranoia('uploaded', $Paranoia, $Class, $FriendID)) {
  71. ?>
  72. &nbsp;Up: <strong><?=Format::get_size($Uploaded)?></strong>
  73. <?php
  74. }
  75. if (check_paranoia('downloaded', $Paranoia, $Class, $FriendID)) {
  76. ?>
  77. &nbsp;Down: <strong><?=Format::get_size($Downloaded)?></strong>
  78. <?php
  79. } ?>
  80. </span>
  81. <?php if (check_paranoia('lastseen', $Paranoia, $Class, $FriendID)) { ?>
  82. <span class="float_right"><?=time_diff($LastAccess)?></span>
  83. <?php } ?>
  84. </td>
  85. </tr>
  86. <tr>
  87. <?php if (Users::has_avatars_enabled()) { ?>
  88. <td class="col_avatar avatar" valign="top">
  89. <?=Users::show_avatar($Avatar, $FriendID, $Username, $HeavyInfo['DisableAvatars'])?>
  90. </td>
  91. <?php } ?>
  92. <td valign="top">
  93. <input type="hidden" name="friendid"
  94. value="<?=$FriendID?>" />
  95. <textarea name="comment" rows="4"
  96. cols="65"><?=$Comment?></textarea>
  97. </td>
  98. <td class="left" valign="top">
  99. <input type="submit" name="action" value="Update" /><br />
  100. <input type="submit" name="action" value="Remove friend" /><br />
  101. <input type="submit" name="action" value="Contact" /><br />
  102. </td>
  103. </tr>
  104. </table>
  105. </form>
  106. <?php
  107. } // while
  108. // close <div class="box pad">
  109. ?>
  110. </div>
  111. <div class="linkbox">
  112. <?= $Pages ?>
  113. </div>
  114. <?php // close <div>?>
  115. </div>
  116. <?php
  117. View::show_footer();