11 import sys |
11 import sys |
12 import zipfile |
12 import zipfile |
13 import types |
13 import types |
14 import importlib |
14 import importlib |
15 import contextlib |
15 import contextlib |
|
16 import datetime |
|
17 import pathlib |
16 |
18 |
17 from PyQt6.QtCore import ( |
19 from PyQt6.QtCore import pyqtSignal, QObject, QFile, QUrl, QIODevice |
18 pyqtSignal, QObject, QDate, QFile, QFileInfo, QUrl, QIODevice |
|
19 ) |
|
20 from PyQt6.QtGui import QPixmap |
20 from PyQt6.QtGui import QPixmap |
21 from PyQt6.QtNetwork import ( |
21 from PyQt6.QtNetwork import ( |
22 QNetworkAccessManager, QNetworkRequest, QNetworkReply |
22 QNetworkAccessManager, QNetworkRequest, QNetworkReply |
23 ) |
23 ) |
24 |
24 |
1245 (self.__ui is not None and not self.__ui.isOnline()) |
1245 (self.__ui is not None and not self.__ui.isOnline()) |
1246 ): |
1246 ): |
1247 return |
1247 return |
1248 |
1248 |
1249 elif period in [1, 2, 3]: |
1249 elif period in [1, 2, 3]: |
1250 lastModified = QFileInfo(self.pluginRepositoryFile).lastModified() |
1250 lastModified = datetime.datetime.fromtimestamp( |
1251 if lastModified.isValid() and lastModified.date().isValid(): |
1251 pathlib.Path(self.pluginRepositoryFile).stat().st_mtime |
1252 lastModifiedDate = lastModified.date() |
1252 ) |
1253 now = QDate.currentDate() |
1253 now = datetime.datetime.now() |
1254 if ( |
1254 delta = now - lastModified |
1255 (period == 1 and lastModifiedDate.day() == now.day()) or |
1255 if ( |
1256 (period == 2 and lastModifiedDate.daysTo(now) < 7) or |
1256 (period == 1 and lastModified.date().day == now.date().day) or |
1257 (period == 3 and (lastModifiedDate.daysTo(now) < |
1257 (period == 2 and delta.days < 7) or |
1258 lastModifiedDate.daysInMonth())) |
1258 (period == 3 and delta.days < 30) |
1259 ): |
1259 ): |
1260 # daily, weekly, monthly |
1260 # daily, weekly, monthly |
1261 return |
1261 return |
1262 |
1262 |
1263 self.downLoadRepositoryFile() |
1263 self.downLoadRepositoryFile() |
1264 |
1264 |
1265 def downLoadRepositoryFile(self, url=None): |
1265 def downLoadRepositoryFile(self, url=None): |
1266 """ |
1266 """ |