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.

config.template 10KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285
  1. <?php
  2. if (version_compare(PHP_VERSION, '7.0.0', '<')) {
  3. die("Gazelle requires PHP 7.0.0 or later to function properly");
  4. }
  5. //date_default_timezone_set('EST');
  6. // Main settings
  7. define('SITE_NAME', 'BioTorrents.de'); // The name of your site
  8. define('SITE_DOMAIN', 'biotorrents.de'); // The FQDN of your site
  9. define('IMAGE_DOMAIN', 'pics.biotorrents.de'); // The FQDN of your image host
  10. define('SERVER_ROOT', '/var/www/html/biotorrents.de'); // The root of the server, used for includes
  11. define('TORRENT_STORE', '/var/www/torrents/'); // Where torrent files are stored
  12. // Tracker urls to be added to torrent files ala bittorrent.org/beps/bep_0012.html
  13. define('ANNOUNCE_URLS', [[
  14. 'https://track.biotorrents.de',
  15. #'https://tracker2.'.SITE_DOMAIN.':34001',
  16. ]]);
  17. // Name for bonus points currency
  18. define('BONUS_POINTS', 'Bonus Points');
  19. // Don't hard code API keys for services
  20. define('API_KEYS', ['Entrez' => '000000000000000000000000000000000000']);
  21. // Allows you to run static content off another server. Default is usually what you want.
  22. define('STATIC_SERVER', '/static/');
  23. // The hashing algorithm used for SRI
  24. define('INTEGRITY_ALGO', 'sha256');
  25. // Keys
  26. define('ENCKEY', '000000000000000000000000000000000000000000000000000000000000'); // Random key. The key for encryption
  27. define('IMAGE_PSK', '000000000000000000000000000000000000000000000000000000000000'); // Pre-shared key for generating hmacs for the image proxy
  28. define('SCHEDULE_KEY', '000000000000000000000000000000000000000000000000000000000000'); // Random key. This key must be the argument to schedule.php for the schedule to work.
  29. define('RSS_HASH', '000000000000000000000000000000000000000000000000000000000000'); // Random key. Used for generating unique RSS auth key.
  30. // MySQL details
  31. define('SQLHOST', 'localhost'); // The MySQL host ip/fqdn
  32. define('SQLLOGIN', 'biotorrents'); // The MySQL login
  33. define('SQLPASS', '000000000000000000000000000000000000000000000000000000000000'); // The MySQL password
  34. define('SQLDB', 'gazelle_production'); // The MySQL database to use
  35. define('SQLPORT', 3306); // The MySQL port to connect on
  36. define('SQLSOCK', '/var/run/mysqld/mysqld.sock');
  37. // Memcached details
  38. define(
  39. 'MEMCACHED_SERVERS',
  40. [['host' => 'unix:///var/run/memcached/memcached.sock', 'port' => 0, 'buckets' => 1]]
  41. );
  42. // Sphinx details
  43. define('SPHINX_HOST', 'localhost');
  44. define('SPHINX_PORT', 9312);
  45. define('SPHINXQL_HOST', '127.0.0.1');
  46. define('SPHINXQL_PORT', 9306);
  47. define('SPHINXQL_SOCK', false);
  48. define('SPHINX_MAX_MATCHES', 1000); // Must be <= the server's max_matches variable (default 1000)
  49. define('SPHINX_INDEX', 'torrents');
  50. // Ocelot details
  51. define('TRACKER_HOST', '0.0.0.0');
  52. define('TRACKER_PORT', 34000);
  53. define('TRACKER_SECRET', '00000000000000000000000000000000'); // Must be 32 characters and match site_password in Ocelot's config.cpp
  54. define('TRACKER_REPORTKEY', '00000000000000000000000000000000'); // Must be 32 characters and match report_password in Ocelot's config.cpp
  55. // Site settings
  56. define('DEBUG_MODE', false); // Set to false if you dont want everyone to see debug information, can be overriden with 'site_debug'
  57. define('DEBUG_WARNINGS', true); // Set to true if you want to see PHP warnings in the footer
  58. define('OPEN_REGISTRATION', false); // Set to false to disable open regirstration, true to allow anyone to register
  59. define('USER_LIMIT', 100); // The maximum number of users the site can have, 0 for no limit
  60. define('STARTING_INVITES', 2); // # of invites to give to newly registered users
  61. define('STARTING_UPLOAD', 2147483648); // Amount of upload to give to newly registered users
  62. define('BLOCK_TOR', false); // Set to true to block Tor users
  63. define('BLOCK_OPERA_MINI', false); // Set to true to block Opera Mini proxy
  64. define('DONOR_INVITES', 2);
  65. // Features
  66. define('FEATURE_DONATE', true); // Enable donation page
  67. define('FEATURE_EMAIL_REENABLE', true); // Send re-enable requests to user's email
  68. define('FEATURE_ENFORCE_LOCATIONS', false); // Require users to verify login from unknown locations
  69. define('FEATURE_IRC', false); // Attempt to send messages to IRC
  70. define('FEATURE_SEND_EMAIL', true); // Attempt to send email from the site
  71. define('FEATURE_SET_ENC_KEY_PUBLIC', false); // Allow the site encryption key to be set without an account (Should only be used for initial setup)
  72. // User class IDs needed for automatic promotions. Found in the 'permissions' table
  73. // Name of class Class ID (NOT level)
  74. define('ADMIN', '1');
  75. define('USER', '2'); # Called "Member" in the permissions manager; Hon'ble Membah
  76. define('MEMBER', '0'); # Unused because the permissions are now flat
  77. define('POWER', '0');
  78. define('ELITE', '0');
  79. define('LEGEND', '0');
  80. define('MOD', '11');
  81. define('SYSOP', '15');
  82. define('ARTIST', '0');
  83. define('DONOR', '20'); # Still in use for people who donate
  84. define('VIP', '0');
  85. define('TORRENT_MASTER', '0');
  86. define('POWER_TM', '0');
  87. define('FLS_TEAM', '33');
  88. define('FORUM_MOD', '9001');
  89. // Forums
  90. define('STAFF_FORUM', 0); # @todo
  91. define('DONOR_FORUM', 0); # @todo
  92. define('TRASH_FORUM_ID', 8);
  93. define('ANNOUNCEMENT_FORUM_ID', 1);
  94. // Pagination
  95. define('TORRENT_COMMENTS_PER_PAGE', 10);
  96. define('POSTS_PER_PAGE', 25);
  97. define('TOPICS_PER_PAGE', 50);
  98. define('TORRENTS_PER_PAGE', 50);
  99. define('REQUESTS_PER_PAGE', 25);
  100. define('MESSAGES_PER_PAGE', 25);
  101. define('LOG_ENTRIES_PER_PAGE', 50);
  102. // Cache catalogues
  103. define('THREAD_CATALOGUE', 500); // Limit to THREAD_CATALOGUE posts per cache key.
  104. // IRC settings
  105. define('BOT_NICK', 'bot');
  106. define('BOT_SERVER', 'irc.'.SITE_DOMAIN); // IRC server address. Used for onsite chat tool.
  107. define('BOT_PORT', 6667);
  108. define('BOT_CHAN', '#bot');
  109. define('BOT_ANNOUNCE_CHAN', '#announce');
  110. define('BOT_REQUEST_CHAN', '#requests');
  111. define('BOT_STAFF_CHAN', '#staff');
  112. define('BOT_DISABLED_CHAN', '#disabled'); // Channel to refer disabled users to.
  113. define('BOT_HELP_CHAN', '#help');
  114. define('BOT_DEBUG_CHAN', '#debug');
  115. define('BOT_REPORT_CHAN', '#report');
  116. define('BOT_NICKSERV_PASS', '');
  117. define('BOT_INVITE_CHAN', '#invites'); // Channel for non-members seeking an interview
  118. define('BOT_INTERVIEW_CHAN', '#interview'); // Channel for the interviews
  119. define('BOT_INTERVIEW_NUM', 5);
  120. define('BOT_INTERVIEW_STAFF', '#interview-staff'); // Channel for the interviewers
  121. define('SOCKET_LISTEN_PORT', 51010);
  122. define('SOCKET_LISTEN_ADDRESS', '0.0.0.0');
  123. define('ADMIN_CHAN', '#admin');
  124. define('LAB_CHAN', '#lab');
  125. define('STATUS_CHAN', '#status');
  126. // Miscellaneous values
  127. define('RANK_ONE_COST', 5);
  128. define('RANK_TWO_COST', 10);
  129. define('RANK_THREE_COST', 15);
  130. define('RANK_FOUR_COST', 20);
  131. define('RANK_FIVE_COST', 30);
  132. define('MAX_RANK', 6);
  133. define('MAX_EXTRA_RANK', 8);
  134. define('DONOR_FORUM_RANK', 6);
  135. define('MAX_SPECIAL_RANK', 3);
  136. define('FORUMS_TO_REVEAL_VOTERS', []);
  137. define('FORUMS_TO_ALLOW_DOUBLE_POST', []);
  138. $Categories = [
  139. 'DNA',
  140. 'mRNA',
  141. 'rRNA',
  142. 'tRNA',
  143. 'Protein',
  144. 'Other',
  145. ];
  146. $GroupedCategories = $Categories;
  147. #$CategoryIcons = ['music.png', 'apps.png', 'ebook.png', 'audiobook.png', 'elearning.png', 'comedy.png', 'comics.png'];
  148. $Media = [
  149. 'Sanger',
  150. 'Shotgun',
  151. 'Illumina',
  152. 'PacBio',
  153. 'Nanopore',
  154. 'Other',
  155. ];
  156. #$MediaManga = ['Scan', 'Web'];
  157. #$Platform = ['Windows', 'OS X', 'Linux', 'BSD', 'Flash', 'Java', 'Android', 'iOS', '3DS'];
  158. $Containers = [
  159. 'EMBL',
  160. 'FASTA',
  161. 'GenBank',
  162. 'PIR',
  163. 'SwissProt',
  164. 'Plain',
  165. ];
  166. #$ContainersGames = ['ISO', 'BIN-CUE', 'Installer', 'Loose'];
  167. $Codecs = [
  168. 'CC BY',
  169. 'CC BY-SA',
  170. 'CC BY-ND',
  171. 'CC BY-NC',
  172. 'CC BY-NC-SA',
  173. 'CC BY-NC-ND',
  174. 'GNU GPL',
  175. 'GNU LGPL',
  176. 'GNU AGPL',
  177. 'GNU FDL',
  178. 'OpenMTA',
  179. 'Public Domain',
  180. ];
  181. $Resolutions = [
  182. 'Contig',
  183. 'Scaffold',
  184. 'Chromosome',
  185. 'Whole Genome',
  186. ];
  187. #$AudioFormats = ['MP3', 'OGG', 'OGG 5.1', 'AAC', 'AAC 5.1', 'AC3', 'AC3 5.1', 'DTS 2.0', 'DTS 5.1', 'DTS-ES 6.1', 'FLAC 2.0', 'FLAC 5.1', 'FLAC 6.1', 'PCM 2.0', 'PCM 5.1', 'PCM 6.1', 'WMA', 'Real Audio', 'DTS-HD', 'DTS-HD MA'];
  188. #$Subbing = ['Softsubs', 'Hardsubs', 'RAW'];
  189. #$Languages = ['English', 'Japanese', 'Dual Language', 'None'];
  190. $Archives = [
  191. '7z',
  192. 'bzip2',
  193. 'gzip',
  194. 'RAR',
  195. 'ZIP',
  196. 'None',
  197. ];
  198. #$ArchivesManga = ['cbz', 'cbr', 'cb7'];
  199. #$Formats = ['MP3', 'FLAC', 'Ogg Vorbis', 'AAC', 'AC3', 'DTS'];
  200. #$Bitrates = ['192', 'APS (VBR)', 'V2 (VBR)', 'V1 (VBR)', '256', 'APX (VBR)', 'V0 (VBR)', 'q8.x (VBR)', '320', 'Lossless', '24bit Lossless', 'Other'];
  201. $CollageCats = [
  202. 0 => 'Personal',
  203. 1 => 'Theme',
  204. 2 => 'Staff Picks',
  205. 3 => 'Artists',
  206. ];
  207. #$ReleaseTypes = [1=>'Album', 3=>'Soundtrack', 5=>'EP', 6=>'Anthology', 7=>'Compilation', 9=>'Single', 11=>'Live album', 13=>'Remix', 14=>'Bootleg', 15=>'Interview', 16=>'Mixtape', 21=>'Unknown'];
  208. // Ratio requirements, in descending order
  209. // Columns: Download amount, Req Ratio (0% seeded), Req Ratio (100% seeded)
  210. define('RATIO_REQUIREMENTS', [
  211. [200 * 1024**3, 0.60, 0.60],
  212. [160 * 1024**3, 0.60, 0.50],
  213. [120 * 1024**3, 0.50, 0.40],
  214. [100 * 1024**3, 0.40, 0.30],
  215. [80 * 1024**3, 0.30, 0.20],
  216. [60 * 1024**3, 0.20, 0.10],
  217. [40 * 1024**3, 0.15, 0.00],
  218. [20 * 1024**3, 0.10, 0.00],
  219. [10 * 1024**3, 0.05, 0.00],
  220. ]);
  221. define('TAG_NAMESPACES', ['male', 'female', 'parody', 'character']);
  222. // God I wish I didn't have to do this but I just don't care anymore.
  223. define('AUTOMATED_BADGE_IDS', [
  224. 'DL' => [
  225. '8' => 10,
  226. '16' => 11,
  227. '32' => 12,
  228. '64' => 13,
  229. '128' => 14,
  230. '256' => 15,
  231. '512' => 16,
  232. '1024' => 17,
  233. '2048' => 18
  234. ],
  235. 'UL' => [
  236. '16' => 30,
  237. '32' => 31,
  238. '64' => 32,
  239. '128' => 33,
  240. '256' => 34,
  241. '512' => 35,
  242. '1024' => 36,
  243. '2048' => 37,
  244. '4096' => 38
  245. ],
  246. 'Posts' => [
  247. '25' => 60,
  248. '50' => 61,
  249. '100' => 62,
  250. '250' => 63,
  251. '500' => 64,
  252. '1000' => 65,
  253. '2500' => 66,
  254. '5000' => 67,
  255. '10000' => 68
  256. ]
  257. ]);