Unit3Dup 0.13.2__tar.gz → 0.14.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (107) hide show
  1. {unit3dup-0.13.2 → unit3dup-0.14.1}/PKG-INFO +1 -1
  2. {unit3dup-0.13.2 → unit3dup-0.14.1}/Unit3Dup.egg-info/PKG-INFO +1 -1
  3. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/settings.py +12 -3
  4. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/torrent_clients.py +18 -9
  5. {unit3dup-0.13.2 → unit3dup-0.14.1}/pyproject.toml +1 -1
  6. {unit3dup-0.13.2 → unit3dup-0.14.1}/unit3dup/pvtVideo.py +14 -0
  7. {unit3dup-0.13.2 → unit3dup-0.14.1}/LICENSE +0 -0
  8. {unit3dup-0.13.2 → unit3dup-0.14.1}/README.rst +0 -0
  9. {unit3dup-0.13.2 → unit3dup-0.14.1}/Unit3Dup.egg-info/SOURCES.txt +0 -0
  10. {unit3dup-0.13.2 → unit3dup-0.14.1}/Unit3Dup.egg-info/dependency_links.txt +0 -0
  11. {unit3dup-0.13.2 → unit3dup-0.14.1}/Unit3Dup.egg-info/entry_points.txt +0 -0
  12. {unit3dup-0.13.2 → unit3dup-0.14.1}/Unit3Dup.egg-info/requires.txt +0 -0
  13. {unit3dup-0.13.2 → unit3dup-0.14.1}/Unit3Dup.egg-info/top_level.txt +0 -0
  14. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/__init__.py +0 -0
  15. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/bdinfo_string.py +0 -0
  16. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/bittorrent.py +0 -0
  17. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/command.py +0 -0
  18. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/constants.py +0 -0
  19. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/database.py +0 -0
  20. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/__init__.py +0 -0
  21. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/ftpx/__init__.py +0 -0
  22. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/ftpx/client.py +0 -0
  23. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/ftpx/core/__init__.py +0 -0
  24. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/ftpx/core/ftpx_service.py +0 -0
  25. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/ftpx/core/ftpx_session.py +0 -0
  26. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/ftpx/core/menu.py +0 -0
  27. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/ftpx/core/models/__init__.py +0 -0
  28. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/ftpx/core/models/list.py +0 -0
  29. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/igdb/__init__.py +0 -0
  30. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/igdb/client.py +0 -0
  31. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/igdb/core/__init__.py +0 -0
  32. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/igdb/core/api.py +0 -0
  33. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/igdb/core/models/__init__.py +0 -0
  34. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/igdb/core/models/search.py +0 -0
  35. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/igdb/core/platformid.py +0 -0
  36. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/igdb/core/tags.py +0 -0
  37. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/imageHost.py +0 -0
  38. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/mediaresult.py +0 -0
  39. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/sessions/__init__.py +0 -0
  40. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/sessions/agents.py +0 -0
  41. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/sessions/exceptions.py +0 -0
  42. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/sessions/session.py +0 -0
  43. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/theMovieDB/__init__.py +0 -0
  44. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/theMovieDB/core/__init__.py +0 -0
  45. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/theMovieDB/core/api.py +0 -0
  46. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/theMovieDB/core/keywords.py +0 -0
  47. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/theMovieDB/core/models/__init__.py +0 -0
  48. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/theMovieDB/core/models/movie/__init__.py +0 -0
  49. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/theMovieDB/core/models/movie/alternative.py +0 -0
  50. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/theMovieDB/core/models/movie/details.py +0 -0
  51. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/theMovieDB/core/models/movie/movie.py +0 -0
  52. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/theMovieDB/core/models/movie/nowplaying.py +0 -0
  53. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/theMovieDB/core/models/movie/release_info.py +0 -0
  54. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/theMovieDB/core/models/movie/translations.py +0 -0
  55. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/theMovieDB/core/models/tvshow/__init__.py +0 -0
  56. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/theMovieDB/core/models/tvshow/alternative.py +0 -0
  57. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/theMovieDB/core/models/tvshow/details.py +0 -0
  58. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/theMovieDB/core/models/tvshow/on_the_air.py +0 -0
  59. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/theMovieDB/core/models/tvshow/translations.py +0 -0
  60. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/theMovieDB/core/models/tvshow/tvshow.py +0 -0
  61. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/theMovieDB/core/videos.py +0 -0
  62. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/trailers/__init__.py +0 -0
  63. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/trailers/api.py +0 -0
  64. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/trailers/response.py +0 -0
  65. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/external_services/tvdb.py +0 -0
  66. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/extractor.py +0 -0
  67. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/frames.py +0 -0
  68. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/mediainfo.py +0 -0
  69. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/mediainfo_string.py +0 -0
  70. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/tags.py +0 -0
  71. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/title.py +0 -0
  72. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/trackers/__init__.py +0 -0
  73. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/trackers/ast.py +0 -0
  74. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/trackers/ban_list.py +0 -0
  75. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/trackers/data.py +0 -0
  76. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/trackers/itt.py +0 -0
  77. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/trackers/ptt.py +0 -0
  78. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/trackers/signs_list.py +0 -0
  79. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/trackers/sis.py +0 -0
  80. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/trackers/tags_list.py +0 -0
  81. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/trackers/trackers.py +0 -0
  82. {unit3dup-0.13.2 → unit3dup-0.14.1}/common/utility.py +0 -0
  83. {unit3dup-0.13.2 → unit3dup-0.14.1}/requirements.txt +0 -0
  84. {unit3dup-0.13.2 → unit3dup-0.14.1}/setup.cfg +0 -0
  85. {unit3dup-0.13.2 → unit3dup-0.14.1}/unit3dup/__init__.py +0 -0
  86. {unit3dup-0.13.2 → unit3dup-0.14.1}/unit3dup/__main__.py +0 -0
  87. {unit3dup-0.13.2 → unit3dup-0.14.1}/unit3dup/automode.py +0 -0
  88. {unit3dup-0.13.2 → unit3dup-0.14.1}/unit3dup/bot.py +0 -0
  89. {unit3dup-0.13.2 → unit3dup-0.14.1}/unit3dup/duplicate.py +0 -0
  90. {unit3dup-0.13.2 → unit3dup-0.14.1}/unit3dup/exceptions.py +0 -0
  91. {unit3dup-0.13.2 → unit3dup-0.14.1}/unit3dup/media.py +0 -0
  92. {unit3dup-0.13.2 → unit3dup-0.14.1}/unit3dup/media_manager/ContentManager.py +0 -0
  93. {unit3dup-0.13.2 → unit3dup-0.14.1}/unit3dup/media_manager/DocuManager.py +0 -0
  94. {unit3dup-0.13.2 → unit3dup-0.14.1}/unit3dup/media_manager/GameManager.py +0 -0
  95. {unit3dup-0.13.2 → unit3dup-0.14.1}/unit3dup/media_manager/MediaInfoManager.py +0 -0
  96. {unit3dup-0.13.2 → unit3dup-0.14.1}/unit3dup/media_manager/SeedManager.py +0 -0
  97. {unit3dup-0.13.2 → unit3dup-0.14.1}/unit3dup/media_manager/TorrentManager.py +0 -0
  98. {unit3dup-0.13.2 → unit3dup-0.14.1}/unit3dup/media_manager/VideoManager.py +0 -0
  99. {unit3dup-0.13.2 → unit3dup-0.14.1}/unit3dup/media_manager/__init__.py +0 -0
  100. {unit3dup-0.13.2 → unit3dup-0.14.1}/unit3dup/media_manager/common.py +0 -0
  101. {unit3dup-0.13.2 → unit3dup-0.14.1}/unit3dup/pvtDocu.py +0 -0
  102. {unit3dup-0.13.2 → unit3dup-0.14.1}/unit3dup/pvtTorrent.py +0 -0
  103. {unit3dup-0.13.2 → unit3dup-0.14.1}/unit3dup/pvtTracker.py +0 -0
  104. {unit3dup-0.13.2 → unit3dup-0.14.1}/unit3dup/torrent.py +0 -0
  105. {unit3dup-0.13.2 → unit3dup-0.14.1}/unit3dup/upload.py +0 -0
  106. {unit3dup-0.13.2 → unit3dup-0.14.1}/view/__init__.py +0 -0
  107. {unit3dup-0.13.2 → unit3dup-0.14.1}/view/custom_console.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: Unit3Dup
3
- Version: 0.13.2
3
+ Version: 0.14.1
4
4
  Summary: An uploader for the Unit3D torrent tracker
5
5
  Author: Parzival
6
6
  License-Expression: MIT
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: Unit3Dup
3
- Version: 0.13.2
3
+ Version: 0.14.1
4
4
  Summary: An uploader for the Unit3D torrent tracker
5
5
  Author: Parzival
6
6
  License-Expression: MIT
@@ -24,7 +24,7 @@ user_tags_file = "tags_list.json"
24
24
  user_sign_file = "sign_list.json"
25
25
  bane_file = "ban_list.json"
26
26
 
27
- version = "0.13.2"
27
+ version = "0.14.1"
28
28
 
29
29
  if os.name == "nt":
30
30
  WATCHER_DESTINATION_PATH: Path = Path(
@@ -151,7 +151,11 @@ class UserPreferences(BaseModel):
151
151
  CACHE_DBONLINE: bool = False
152
152
  PERSONAL_RELEASE: bool = False
153
153
  FAST_LOAD: int = 0
154
-
154
+ MY_SIGN: str | None = None
155
+ MY_URL: str | None = None
156
+ MY_TEXT_1: str | None = None
157
+ MY_TEXT_2: str | None = None
158
+ MY_TEXT_3: str | None = None
155
159
 
156
160
  class Options(BaseModel):
157
161
  FTPX_USER: str = "user"
@@ -669,7 +673,12 @@ class Load:
669
673
  "CACHE_DBONLINE": "False",
670
674
  "PERSONAL_RELEASE": "False",
671
675
  "FAST_LOAD": "0",
672
- "RELEASER_SIGN": ""
676
+ "RELEASER_SIGN": "",
677
+ "MY_SIGN": "",
678
+ "MY_URL": "",
679
+ "MY_TEXT_1": "",
680
+ "MY_TEXT_2": "",
681
+ "MY_TEXT_3": ""
673
682
  },
674
683
  "options": {
675
684
  "FTPX_USER": "user",
@@ -176,19 +176,28 @@ class QbittorrentClient(TorrClient):
176
176
 
177
177
  self.client.torrents_add_tags(tags=config_settings.torrent_client_config.TAG, torrent_hashes=info_hash)
178
178
 
179
+ @staticmethod
180
+ def _get_category(content: Media) -> str:
181
+ category = content.category.lower()
182
+
183
+ if "tv" in category:
184
+ return config_settings.torrent_client_config.CATEGORY_TV
185
+
186
+ if "movie" in category:
187
+ return config_settings.torrent_client_config.CATEGORY_MOVIE
188
+
189
+ return ""
190
+
179
191
  def send_to_client(self, tracker_data_response: str, torrent: Mytorrent, content: Media, archive_path: str):
180
192
 
193
+ # Get the category from the media
194
+ category = self._get_category(content)
195
+
181
196
  # Check if shared path exists
182
197
  if config_settings.torrent_client_config.SHARED_QBIT_PATH:
183
198
  torr_location = config_settings.torrent_client_config.SHARED_QBIT_PATH
184
-
185
- # append the category Serie to the shared path
186
- if 'tv' in content.category.lower():
187
- torr_location = os.path.join(torr_location, config_settings.torrent_client_config.CATEGORY_TV)
188
-
189
- # append the category Movie to the shared path
190
- if 'movie' in content.category.lower():
191
- torr_location = os.path.join(torr_location, config_settings.torrent_client_config.CATEGORY_MOVIE)
199
+ if category:
200
+ torr_location = os.path.join(torr_location, category)
192
201
  else:
193
202
  # otherwise set torr_location using the cli path
194
203
  torr_location = os.path.dirname(content.torrent_path)
@@ -202,7 +211,7 @@ class QbittorrentClient(TorrClient):
202
211
  info_hash = hashlib.sha1(bencode2.bencode(info)).hexdigest()
203
212
  file_buffer.seek(0)
204
213
  self._add_torrent_and_tag(torrent_bytes=file_buffer.read(), save_path=str(torr_location),
205
- info_hash=info_hash, category=content.category)
214
+ info_hash=info_hash, category=category)
206
215
 
207
216
 
208
217
  class RTorrentClient(TorrClient):
@@ -5,7 +5,7 @@ build-backend = "setuptools.build_meta"
5
5
  [project]
6
6
  dynamic = ["dependencies"]
7
7
  name = "Unit3Dup"
8
- version = "0.13.2"
8
+ version = "0.14.1"
9
9
  description = "An uploader for the Unit3D torrent tracker"
10
10
  readme = "README.rst"
11
11
  requires-python = ">=3.10"
@@ -78,6 +78,20 @@ class Video:
78
78
  build_description = Build(extracted_frames=extracted_frames_webp+extracted_frames, filename= self.display_name)
79
79
  self.description = build_description.description()
80
80
 
81
+ if config_settings.user_preferences.MY_SIGN:
82
+ self.description += f"""
83
+ [center]━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━[/center]
84
+ [center][img=250]{config_settings.user_preferences.MY_SIGN}[/img][/center]
85
+ [center][b]{config_settings.user_preferences.MY_TEXT_1}[/b][/center]
86
+ [center]
87
+ {config_settings.user_preferences.MY_TEXT_2}
88
+ [/center]
89
+ [center]
90
+ {config_settings.user_preferences.MY_TEXT_3}
91
+ [/center]
92
+ [center][url={config_settings.user_preferences.MY_URL}]Tutte le mie release[/url][/center]
93
+ """
94
+
81
95
  if self.trailer_key:
82
96
  self.description += (f"[b][spoiler=Spoiler: PLAY TRAILER][center][youtube]{self.trailer_key}[/youtube]"
83
97
  f"[/center][/spoiler][/b]")
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes