Guest User

Untitled

a guest
Jun 23rd, 2018
88
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.53 KB | None | 0 0
  1. 1124 /*-- update_hash function ------------------------------------------------*/
  2. 1125 /*------------------------------------------------------------------------*/
  3. 1126 /* This function is to update a specific torrent group hash in the */
  4. 1127 /* torrent_hash table to keep the browse page a little more up to date */
  5. 1128 /*-- TODO ----------------------------------------------------------------*/
  6. 1129 /* Add in tag sorting based on positive negative votes algo */
  7. 1130 /**************************************************************************/
  8. 1131
  9. 1132 function update_hash($GroupID)
  10. 1133 {
  11. 1134 global $DB,$SpecialChars;
  12. 1135
  13. 1136 $DB->query("UPDATE torrents_group SET TagList=(SELECT CONCAT('|',GROUP_CONCAT(tags.Name SEPARATOR '|'),'|')
  14. 1137 FROM torrents_tags AS t
  15. 1138 INNER JOIN tags ON tags.ID=t.TagID
  16. 1139 WHERE t.GroupID='".db_string($GroupID)."'
  17. 1140 GROUP BY t.GroupID)
  18. 1141 WHERE ID='".db_string($GroupID)."'");
  19. 1142
  20. 1143 $DB->query( "INSERT INTO torrent_hash ( GroupID, GroupYear, GroupCategoryID, GroupTime, MaxTorrentSize, TotalSnatches, TotalSeeders, TotalLeeche rs, ArtistID, TorrentIDList, TagList, YearList, RemasterList, RemasterTitleList, FileCountList, SizeList, LeechersList, SeedersList, SnatchedList, FreeT orrentList, DirectorList, TimeList, NativeTitleList, RuntimeList, RatingList, DiskNumberList, SourceMediaList, SourceResolutionList, ScreenFormatList, L anguageList, AudioFormatList, AudioChannelList, SubtitleList )
  21. 1144 SELECT
  22. 1145 g.ID,
  23. 1146 g.Year,
  24. 1147 g.CategoryID,
  25. 1148 g.Time,
  26. 1149 MAX(t.Size),
  27. 1150 SUM(t.Snatched),
  28. 1151 SUM(t.Seeders),
  29. 1152 SUM(t.Leechers),
  30. 1153 g.ArtistID,
  31. 1154 GROUP_CONCAT(t.ID ORDER BY t.Format DESC, t.Encoding SEPARATOR '|'),
  32. 1155 g.TagList,
  33. 1156 GROUP_CONCAT(t.Year ORDER BY t.Format DESC, t.Encoding SEPARATOR '|'),
  34. 1157 GROUP_CONCAT(t.Remastered ORDER BY t.Format DESC, t.Encoding SEPARATOR '|'),
  35. 1158 CONCAT('|',GROUP_CONCAT(t.RemasterTitle ORDER BY t.Format DESC, t.Encoding SEPARATOR '|'),'|'),
  36. 1159 GROUP_CONCAT(t.FileCount ORDER BY t.Format DESC, t.Encoding SEPARATOR '|'),
  37. 1160 GROUP_CONCAT(t.Size ORDER BY t.Format DESC, t.Encoding SEPARATOR '|'),
  38. 1161 GROUP_CONCAT(t.Leechers ORDER BY t.Format DESC, t.Encoding SEPARATOR '|'),
  39. 1162 GROUP_CONCAT(t.Seeders ORDER BY t.Format DESC, t.Encoding SEPARATOR '|'),
  40. 1163 GROUP_CONCAT(t.Snatched ORDER BY t.Format DESC, t.Encoding SEPARATOR '|'),
  41. 1164 CONCAT('|',GROUP_CONCAT(t.FreeTorrent ORDER BY t.Format DESC, t.Encoding SEPARATOR '|'),'|'),
  42. 1165 g.Directors,
  43. 1166 GROUP_CONCAT(t.Time ORDER BY t.Format DESC, t.Encoding SEPARATOR '|')
  44. 1167
  45. 1168 FROM torrents AS t
  46. 1169 LEFT JOIN torrents_group AS g ON g.ID=t.GroupID
  47. 1170 WHERE t.GroupID='".db_string($GroupID)."'
  48. 1171 GROUP BY t.GroupID
  49. 1172 ON DUPLICATE KEY UPDATE
  50. 1173 GroupID=VALUES(GroupID),
  51. 1174 GroupYear=VALUES(GroupYear),
  52. 1175 GroupCategoryID=VALUES(GroupCategoryID),
  53. 1176 GroupTime=VALUES(GroupTime),
  54. 1177 MaxTorrentSize=VALUES(MaxTorrentSize),
  55. 1178 TotalSnatches=VALUES(TotalSnatches),
  56. 1179 TotalSeeders=VALUES(TotalSeeders),
  57. 1180 TotalLeechers=VALUES(TotalLeechers),
  58. 1181 ArtistID=VALUES(ArtistID),
  59. 1182 TorrentIDList=VALUES(TorrentIDList),
  60. 1183 TagList=VALUES(TagList),
  61. 1184 YearList=VALUES(YearList),
  62. 1185 RemasterList=VALUES(RemasterList),
  63. 1186 RemasterTitleList=VALUES(RemasterTitleList),
  64. 1187 FileCountList=VALUES(FileCountList),
  65. 1188 SizeList=VALUES(SizeList),
  66. 1189 LeechersList=VALUES(LeechersList),
  67. 1190 SeedersList=VALUES(SeedersList),
  68. 1191 SnatchedList=VALUES(SnatchedList),
  69. 1192 FreeTorrentList=VALUES(FreeTorrentList),
  70. 1193 DirectorList=VALUES(DirectorList),
  71. 1194 TimeList=VALUES(TimeList)");
  72. 1195
  73. 1196 $DB->query("
  74. 1197 INSERT INTO torrent_hash (GroupID, GroupName, ArtistID, ArtistName)
  75. 1198 SELECT g.ID, g.Name, g.ArtistID, g.Directors
  76. 1199 FROM torrents_group AS g
  77. 1200 LEFT JOIN artists AS a ON a.ID=g.ArtistID
  78. 1201 WHERE g.ID='".db_string($GroupID)."'
  79. 1202 ON DUPLICATE KEY UPDATE
  80. 1203 GroupName=VALUES(GroupName),
  81. 1204 ArtistName=VALUES(ArtistName)");
  82. 1205
  83. 1206 $DB->query("UPDATE torrent_hash SET SearchText=CONCAT_WS(' ',ArtistName, GroupName, GroupYear) WHERE GroupID='".db_string($GroupID)."'");
  84. 1207
  85. 1208 $Query = 'SearchText';
  86. 1209
  87. 1210 while (list($K, list($Search, $Replace)) = each($SpecialChars))
  88. 1211 {
  89. 1212 $Query = 'REPLACE('.$Query.", '$Search', '$Replace')";
  90. 1213 }
  91. 1214
  92. 1215 $Query = 'UPDATE torrent_hash SET SearchText='.$Query;
  93. 1216 $DB->query($Query);
  94. 1217
  95. 1218 $DB->query("UPDATE torrents_group AS g, torrent_hash AS h SET g.SearchText=h.SearchText WHERE g.ID=h.GroupID AND h.GroupID='".db_string($GroupID )."'");
  96. 1219 }
Add Comment
Please, Sign In to add comment