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.

rename.php 2.1KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. <?php
  2. #declare(strict_types=1);
  3. /**
  4. * Input validation
  5. */
  6. authorize();
  7. $group_id = (int) $_POST['groupid'];
  8. Security::checkInt($group_id);
  9. $NewTitle = $_POST['name'];
  10. $NewSubject = $_POST['Title2'];
  11. $NewObject = $_POST['namejp'];
  12. $DB->prepare_query("
  13. SELECT
  14. `ID`
  15. FROM
  16. `torrents`
  17. WHERE
  18. `GroupID` = '$group_id' AND `UserID` = '$LoggedUser[ID]'
  19. ");
  20. $DB->exec_prepared_query();
  21. $Contributed = $DB->has_results();
  22. if (!($Contributed || check_perms('torrents_edit'))) {
  23. error(403);
  24. }
  25. # NewSubject, NewObject optional
  26. if (empty($NewTitle)) {
  27. error('Torrent groups must have a name');
  28. }
  29. $DB->prepare_query("
  30. UPDATE
  31. `torrents_group`
  32. SET
  33. `title` = '$NewTitle',
  34. `subject` = '$NewSubject',
  35. `object` = '$NewObject'
  36. WHERE
  37. `id` = '$group_id'
  38. ");
  39. $DB->exec_prepared_query();
  40. $Cache->delete_value("torrents_details_$group_id");
  41. Torrents::update_hash($group_id);
  42. $DB->query("
  43. SELECT
  44. `title`,
  45. `subject`,
  46. `object`
  47. FROM
  48. `torrents_group`
  49. WHERE
  50. `id` = '$group_id'
  51. ");
  52. list($OldTitle, $OldSubject, $OldObject) = $DB->next_record(MYSQLI_NUM, false);
  53. # Map metadata over generic database fields
  54. # todo: Work into $ENV in classes/config.php
  55. $Title1 = 'Title';
  56. $Title2 = 'Organism';
  57. $Title3 = 'Strain/Variety';
  58. if ($OldTitle !== $NewTitle) {
  59. Misc::write_log("Torrent Group $group_id ($OldTitle)'s $Title1 was changed to '$NewTitle' from '$OldTitle' by ".$LoggedUser['Username']);
  60. Torrents::write_group_log($group_id, 0, $LoggedUser['ID'], "$Title1 changed to '$NewTitle' from '$OldTitle'", 0);
  61. }
  62. if ($OldSubject !== $NewSubject) {
  63. Misc::write_log("Torrent Group $group_id ($OldSubject)'s $Title2 was changed to '$NewSubject' from '$OldSubject' by ".$LoggedUser['Username']);
  64. Torrents::write_group_log($group_id, 0, $LoggedUser['ID'], "$Title2 changed to '$NewSubject' from '$OldSubject'", 0);
  65. }
  66. if ($OldObject !== $NewObject) {
  67. Misc::write_log("Torrent Group $group_id ($OldObject)'s $Title3 was changed to '$NewObject' from '$OldObject' by ".$LoggedUser['Username']);
  68. Torrents::write_group_log($group_id, 0, $LoggedUser['ID'], "$Title3 changed to '$NewObject' from '$OldObject'", 0);
  69. }
  70. header("Location: torrents.php?id=$group_id");