summaryrefslogtreecommitdiff
path: root/.local/share/Anki2/addons21/Anki_connect/util.py
diff options
context:
space:
mode:
authorThanosApollo <[email protected]>2022-09-01 07:41:39 +0300
committerThanosApollo <[email protected]>2022-09-01 07:41:39 +0300
commit0c89df9be987008e55c1b336489c41290653434b (patch)
tree73425d852d363acdd6c9297a97616b23f9311bd4 /.local/share/Anki2/addons21/Anki_connect/util.py
parenta6d1ec012952c5e955676af22732cd177d1f3abf (diff)
Remove anki addons
Diffstat (limited to '.local/share/Anki2/addons21/Anki_connect/util.py')
-rw-r--r--.local/share/Anki2/addons21/Anki_connect/util.py93
1 files changed, 0 insertions, 93 deletions
diff --git a/.local/share/Anki2/addons21/Anki_connect/util.py b/.local/share/Anki2/addons21/Anki_connect/util.py
deleted file mode 100644
index 3ae5eb1..0000000
--- a/.local/share/Anki2/addons21/Anki_connect/util.py
+++ /dev/null
@@ -1,93 +0,0 @@
-# Copyright 2016-2021 Alex Yatskov
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-import os
-import sys
-
-import anki
-import anki.sync
-import aqt
-import enum
-
-#
-# Utilities
-#
-
-class MediaType(enum.Enum):
- Audio = 1
- Video = 2
- Picture = 3
-
-
-def download(url):
- client = anki.sync.AnkiRequestsClient()
- client.timeout = setting('webTimeout') / 1000
-
- resp = client.get(url)
- if resp.status_code != 200:
- raise Exception('{} download failed with return code {}'.format(url, resp.status_code))
-
- return client.streamContent(resp)
-
-
-def api(*versions):
- def decorator(func):
- setattr(func, 'versions', versions)
- setattr(func, 'api', True)
- return func
-
- return decorator
-
-
-def cardQuestion(card):
- if getattr(card, 'question', None) is None:
- return card._getQA()['q']
-
- return card.question()
-
-
-def cardAnswer(card):
- if getattr(card, 'answer', None) is None:
- return card._getQA()['a']
-
- return card.answer()
-
-
-DEFAULT_CONFIG = {
- 'apiKey': None,
- 'apiLogPath': None,
- 'apiPollInterval': 25,
- 'apiVersion': 6,
- 'webBacklog': 5,
- 'webBindAddress': os.getenv('ANKICONNECT_BIND_ADDRESS', '127.0.0.1'),
- 'webBindPort': 8765,
- 'webCorsOrigin': os.getenv('ANKICONNECT_CORS_ORIGIN', None),
- 'webCorsOriginList': ['http://localhost'],
- 'ignoreOriginList': [],
- 'webTimeout': 10000,
-}
-
-def setting(key):
- try:
- return aqt.mw.addonManager.getConfig(__name__).get(key, DEFAULT_CONFIG[key])
- except:
- raise Exception('setting {} not found'.format(key))
-
-
-# see https://github.com/FooSoft/anki-connect/issues/308
-# fixed in https://github.com/ankitects/anki/commit/0b2a226d
-def patch_anki_2_1_50_having_null_stdout_on_windows():
- if sys.stdout is None:
- sys.stdout = open(os.devnull, "w", encoding="utf8")