Compare commits

...

142 Commits

Author SHA1 Message Date
Joel Falknau
42ee06470c Version Bump 4.3.1 2024-09-13 20:22:31 +10:00
Joel Falknau
69aaa9652f compilemessages 2024-09-13 20:09:46 +10:00
Ariel Rin
1ccfff50e5 Merge branch 'translations_7f31a07ccd4e4a66b1dd7b6bc2dbddb5' into 'master'
Updates for project Alliance Auth

See merge request allianceauth/allianceauth!1649
2024-09-13 10:09:10 +00:00
Ariel Rin
57a39557fd Updates for project Alliance Auth 2024-09-13 10:09:09 +00:00
Joel Falknau
c36dea08e3 compilemessages 2024-09-13 20:01:33 +10:00
Joel Falknau
d3acd821b7 remove excess translations 2024-09-13 20:01:20 +10:00
Joel Falknau
0a17427169 update language codes 2024-09-13 19:59:40 +10:00
Ariel Rin
ce8935e621 Merge branch 'translations_7f31a07ccd4e4a66b1dd7b6bc2dbddb5' into 'master'
Updates for project Alliance Auth

See merge request allianceauth/allianceauth!1647
2024-09-13 08:55:07 +00:00
Ariel Rin
efff946a56 Updates for project Alliance Auth 2024-09-13 08:55:07 +00:00
Joel Falknau
bd17b95cac Version Bump 4.3.0 2024-09-09 14:05:58 +10:00
Joel Falknau
4ed1c5b7c4 bring test celery in line with project 2024-09-09 13:59:43 +10:00
Ariel Rin
271fd8e8c4 Merge branch 'docs-user-creation-fix' into 'master'
[Docs] Add shell option to adduser command for Ubuntu install docs

See merge request allianceauth/allianceauth!1622
2024-09-09 03:58:47 +00:00
colcrunch
9b4321281a [Docs] Add shell option to adduser command for Ubuntu install docs 2024-09-09 03:58:47 +00:00
Ariel Rin
052c35c8e5 Merge branch 'metenox' into 'master'
Timerboard Improvements

Closes #1384

See merge request allianceauth/allianceauth!1645
2024-09-09 03:57:21 +00:00
Ariel Rin
0fcb517b0b Timerboard Improvements 2024-09-09 03:57:21 +00:00
Ariel Rin
dcfddf0add Merge branch 'docs2' into 'master'
Documentation

See merge request allianceauth/allianceauth!1646
2024-09-09 03:43:30 +00:00
Joel Falknau
4a4258d0e6 use docker command inside docker 2024-09-09 13:32:18 +10:00
Joel Falknau
dd15a221aa split repo from install 2024-09-09 13:32:06 +10:00
Joel Falknau
737e02293a expand mumble service install docs 2024-09-09 12:59:49 +10:00
Joel Falknau
c34efebacf define charsets for db backed apps 2024-09-03 12:27:50 +10:00
Joel Falknau
4602097399 remove DB step from mumble install, sqlite has been reccommended for a while 2024-09-03 12:27:02 +10:00
Joel Falknau
7051e06564 update features from readme 2024-09-03 12:26:43 +10:00
Joel Falknau
9767ce79d8 cleanup some local.py references 2024-09-03 12:26:31 +10:00
Joel Falknau
0c090f1486 Ubuntu 2004 should not be reccommended for new isntalls 2024-09-03 12:25:01 +10:00
Joel Falknau
618ee81f9b remove unneeded analytics docs for removed features 2024-09-03 12:24:37 +10:00
Joel Falknau
98efb9f887 split maintenance tasks into bare metal / docker 2024-09-03 12:24:17 +10:00
Ariel Rin
cbe6c821cc Merge branch 'custom-css' into 'master'
[ADD] Custom CSS Module

See merge request allianceauth/allianceauth!1643
2024-08-21 05:01:38 +00:00
Ariel Rin
de9d2b39a6 Merge branch 'theme-html-tags' into 'master'
[ADD] Theme html tags

See merge request allianceauth/allianceauth!1642
2024-08-21 04:59:18 +00:00
Peter Pfeufer
0d5f22288b Merge branch 'switch-to-django-solo' into custom-css 2024-08-20 14:41:52 +02:00
Peter Pfeufer
e0d76dc268 [CHANGE] Switch to Django Solo 2024-08-20 14:41:43 +02:00
Peter Pfeufer
ecc9e68330 [CHANGE] Consolidate migrations 2024-08-14 13:25:49 +02:00
Peter Pfeufer
710149ec21 [FIX] Check if the CustomCSS object exists 2024-08-14 13:22:23 +02:00
Peter Pfeufer
3c2c137dad [CHANGE] improve try block in template tag 2024-08-14 13:05:32 +02:00
Peter Pfeufer
a8271c4189 [CHANGE] Remove custom CSS file when it will be empty 2024-08-14 12:58:01 +02:00
Peter Pfeufer
3315ae7778 [ADD] Module to base settings file 2024-08-14 12:47:38 +02:00
Peter Pfeufer
d2f048f8fe [ADD Example template for admin overrides
For when we might want to add syntax highlight ti it, which is a completely different can of worms though.
2024-08-14 12:45:57 +02:00
Peter Pfeufer
0fe2855faa [ADD] Custom CSS to base file
Check if the CSS file exists and add it to the HTML output
2024-08-14 12:44:51 +02:00
Peter Pfeufer
79a1fa3d7c [ADD] CSS compression on save 2024-08-14 12:42:52 +02:00
Peter Pfeufer
96fe88d5c7 [REMOVE] highlight.js and leave it as an example in the widget code 2024-08-14 11:53:02 +02:00
Peter Pfeufer
59391ad3c5 [ADD] Custom CSS module (First steps) 2024-08-11 22:34:16 +02:00
Peter Pfeufer
94e9c08422 [ADD] Theme html tags 2024-08-08 10:22:14 +02:00
Joel Falknau
acff3695bc Version Bump 4.2.2 2024-08-06 12:43:06 +10:00
Ariel Rin
43ec8514aa Merge branch 'improve-redis-installation-on-ubuntu' into 'master'
[MISC] Improve Redis installation instructions for Ubuntu

See merge request allianceauth/allianceauth!1641
2024-08-05 01:26:07 +00:00
Peter Pfeufer
4c629b193f [CHANGE] Redis hint link 2024-08-05 03:21:14 +02:00
Peter Pfeufer
c651da4011 [MISC] Improve Redis installation instructions for Ubuntu 2024-08-05 03:12:24 +02:00
Ariel Rin
da382cffd1 Merge branch 'fix-mumble-url' into 'master'
[FIX] Mumble URL in service card

See merge request allianceauth/allianceauth!1637
2024-08-05 01:04:24 +00:00
Ariel Rin
4ecfc3afd8 Merge branch 'docs-docker-headlines' into 'master'
[CHANGE] Clarify that these instructions are for Docker

See merge request allianceauth/allianceauth!1638
2024-08-05 01:02:57 +00:00
Ariel Rin
4eb7dbbe62 Merge branch 'add-margin' into 'master'
[ADD] A bit margin to the notifications

See merge request allianceauth/allianceauth!1639
2024-08-05 01:02:52 +00:00
Ariel Rin
c96ba65296 Merge branch 'avoid-KeyError-in-checks' into 'master'
[FIX] Avoid `KeyError` in `celery_settings` checks

See merge request allianceauth/allianceauth!1640
2024-08-05 01:02:40 +00:00
Peter Pfeufer
ff2f60f7f3 [FIX] Avoid KeyError in celery_settings checks 2024-08-04 18:29:43 +02:00
Peter Pfeufer
3000545c98 [ADD] A bit margin to the notifications 2024-07-26 23:09:15 +02:00
Peter Pfeufer
f3ad092ef2 [CHANGNE] Clarify that these instructions are for Docker
This should also fix the menu item title, hopefully …
2024-07-19 19:13:48 +02:00
Peter Pfeufer
a012e7df2f [FIX] Mumble URL in service card 2024-07-19 17:33:32 +02:00
Ariel Rin
1fa77412c0 Merge branch 'fix/missing-celery-setting' into 'master'
fix missing setting in celery

See merge request allianceauth/allianceauth!1636
2024-07-15 13:39:28 +00:00
Matteo Ghia
e56caeb22b fix missing setting in celery 2024-07-15 14:53:45 +02:00
Joel Falknau
ceb07ebc67 Version Bump 4.2.1 2024-07-15 22:20:32 +10:00
Ariel Rin
237075d45c Merge branch 'checklib' into 'master'
More Detail on the SQL charset check

See merge request allianceauth/allianceauth!1635
2024-07-15 12:18:47 +00:00
Ariel Rin
7099b1946d More Detail on the SQL charset check 2024-07-15 12:18:47 +00:00
Joel Falknau
e416ab8ff2 Version Bump 4.2.0 2024-07-15 21:25:00 +10:00
Joel Falknau
2802ed03a5 Add Celery to classifiers 2024-07-15 21:22:58 +10:00
Ariel Rin
4af73c76fe Merge branch 'analytics' into 'master'
Analytics

See merge request allianceauth/allianceauth!1632
2024-07-15 11:00:27 +00:00
Ariel Rin
b6149979aa Analytics 2024-07-15 11:00:26 +00:00
Ariel Rin
cb20288427 Merge branch 'checklib' into 'master'
More Checks for System Packages and Configs

See merge request allianceauth/allianceauth!1633
2024-07-15 11:00:06 +00:00
Ariel Rin
db6f4c91dc More Checks for System Packages and Configs 2024-07-15 11:00:06 +00:00
Ariel Rin
57ac7a5277 Merge branch 'center-error-messages' into 'master'
[CHANGE] Center HTTPError messages

See merge request allianceauth/allianceauth!1634
2024-07-15 03:32:34 +00:00
Peter Pfeufer
136438f9c2 [CHANGE] Center HTTPError messages 2024-07-13 00:31:44 +02:00
Ariel Rin
e2be8b3440 Merge branch 'composelint' into 'master'
Optimize Dockerfile

See merge request allianceauth/allianceauth!1630
2024-06-17 08:42:39 +00:00
Ariel Rin
04f3473ef3 Optimize Dockerfile 2024-06-17 08:42:39 +00:00
Ariel Rin
255cb0da8d Merge branch 'bootstrap-class-fixes' into 'master'
[CHANGE] Remove unnecessary bootstrap classes from the dashboard

See merge request allianceauth/allianceauth!1631
2024-06-17 08:42:34 +00:00
Peter Pfeufer
069352fb0f [FIX] Switch to bottom margin instead of top/bottom padding
This is the much more commonly used approach.
2024-06-01 12:01:44 +02:00
Peter Pfeufer
66e8ddb684 [CHANGE] Remove unnecessary bootstrap classes from the dashboard 2024-05-31 21:59:24 +02:00
Ariel Rin
179c26975c Version Bump 4.1.0 2024-05-27 14:31:41 +10:00
Ariel Rin
e17f6e799b correct capitalization 2024-05-27 14:31:21 +10:00
Ariel Rin
7cd8294104 Merge branch 'widget-title-to-framework' into 'master'
[ADD] Widget title partial to AA framework

See merge request allianceauth/allianceauth!1629
2024-05-27 04:25:56 +00:00
Peter Pfeufer
ede5540335 [ADD] Widget title partial to AA framework 2024-05-26 16:52:15 +02:00
Ariel Rin
747279b773 Merge branch 'yet-another-padding-fix' into 'master'
Some more widget fixes

See merge request allianceauth/allianceauth!1628
2024-05-26 09:08:00 +00:00
Peter Pfeufer
44f8b1c477 [FIX] Don't try to underline these links
Fixing this while I'm at it …
2024-05-26 10:06:07 +02:00
Peter Pfeufer
7c6ebd9bf6 [FIX] Yet another padding in the dashboard widgets 2024-05-26 09:52:03 +02:00
Ariel Rin
430469b708 Merge branch 'widget-padding-fix' into 'master'
[FIX] Dashboard widget padding

See merge request allianceauth/allianceauth!1627
2024-05-26 06:51:20 +00:00
Peter Pfeufer
efbb3cee31 [FIX] Dashboard widget padding 2024-05-26 08:23:57 +02:00
Ariel Rin
21094ed4dd lint 2024-05-26 13:30:21 +10:00
Ariel Rin
5f326efc7e Merge branch 'v4docs' into 'master'
Expand Tuning Doccs

See merge request allianceauth/allianceauth!1624
2024-05-26 03:22:08 +00:00
Ariel Rin
b6e34ace35 Expand Tuning Doccs 2024-05-26 03:22:08 +00:00
Ariel Rin
fe4a8965e3 Merge branch 'master' into 'master'
Improve Error Troubleshooting with Log Documentation

See merge request allianceauth/allianceauth!1619
2024-05-26 02:58:23 +00:00
Ariel Rin
23371c233d Merge branch 'bmtuk-master-patch-12042' into 'master'
Timerboard - Fix Timer deletion

See merge request allianceauth/allianceauth!1625
2024-05-26 02:56:35 +00:00
Ariel Rin
7a3bbf0d7f Merge branch 'staff-menu-item' into 'master'
Allow staff access to admin button in user menu

See merge request allianceauth/allianceauth!1626
2024-05-26 02:56:05 +00:00
Aaron Kable
89a1bec9c1 Allow staff access to admin button in user menu 2024-05-26 02:56:04 +00:00
Ben Thomas
1c1e70619a Fix ability to delete timers 2024-05-21 23:42:19 +00:00
Ariel Rin
0ff4374efa Version Bump 4.0.2 2024-05-12 19:51:02 +10:00
Ariel Rin
18d0e58a48 Merge branch 'master' of gitlab.com:allianceauth/allianceauth 2024-05-12 19:50:10 +10:00
Ariel Rin
84f44338dc Merge branch 'mute-subtitle' into 'master'
[CHANGE] Mute subtitle text

See merge request allianceauth/allianceauth!1623
2024-05-12 09:48:47 +00:00
Ariel Rin
2ba0412890 Add Polish to language selections 2024-05-12 19:44:30 +10:00
Peter Pfeufer
2326522b29 [CHANGE] Docs updated with the missing subtitle attribute 2024-05-12 11:40:47 +02:00
Peter Pfeufer
a7cb6ee434 [CHANGE] Mute subtitle text 2024-05-12 11:35:42 +02:00
Ariel Rin
2aeef63565 Merge branch 'translations_7f31a07ccd4e4a66b1dd7b6bc2dbddb5' into 'master'
Updates for project Alliance Auth

See merge request allianceauth/allianceauth!1609
2024-05-12 09:23:26 +00:00
Ariel Rin
3c9e7335ef Updates for project Alliance Auth 2024-05-12 09:23:26 +00:00
Ariel Rin
49067de325 apply precommit here 2024-05-12 19:21:58 +10:00
Ariel Rin
471e7e29ae Update Source EN 2024-05-12 19:15:56 +10:00
Ariel Rin
3ec5775406 remove unneeded legacy transifex config 2024-05-12 19:15:29 +10:00
Ariel Rin
e804d2b60d update (and sort) precommit 2024-05-12 19:15:14 +10:00
Ariel Rin
742438a95d Merge branch 'timerboard-bg-fix' into 'master'
Make table bg a little less oppressive in timerboard

See merge request allianceauth/allianceauth!1617
2024-04-27 05:09:37 +00:00
Ariel Rin
5c60086baa Merge branch 'add-missing-padding' into 'master'
[ADD] missing padding

See merge request allianceauth/allianceauth!1620
2024-04-27 05:05:22 +00:00
Ariel Rin
e49041bb14 Merge branch 'Haffi-master-patch-21354' into 'master'
updates package registry reference

Closes #1403

See merge request allianceauth/allianceauth!1621
2024-04-25 09:48:10 +00:00
Haffi
f3cbe91883 updates package registry reference 2024-04-25 08:42:18 +00:00
Peter Pfeufer
ea439a2176 [FIX] Indentation 2024-04-15 17:16:01 +02:00
Peter Pfeufer
56e1e76f11 [ADD] Missing theme padding on public pages 2024-04-15 17:15:35 +02:00
entropylaw
634e7357be Update troubleshooting.md. Fixed Typo. 2024-04-13 21:21:13 -05:00
entropylaw
08dc88da1a Update troubleshooting.md 2024-04-13 20:59:19 -05:00
entropylaw
3d206e445c Update troubleshooting.md 2024-04-13 20:55:10 -05:00
entropylaw
64686cdad1 Update troubleshooting.md 2024-04-13 20:49:46 -05:00
AnomicDev
d7fe09bdf1 Update troubleshooting.md 2024-04-14 01:19:51 +00:00
AnomicDev
6da50da92f Update troubleshooting.md 2024-04-14 01:10:38 +00:00
AnomicDev
51e4dd986f Update troubleshooting.md 2024-04-14 01:09:56 +00:00
AnomicDev
bee6522182 Update troubleshooting.md 2024-04-14 01:07:08 +00:00
AnomicDev
1711a9dd33 Update troubleshooting.md 2024-04-14 01:05:25 +00:00
AnomicDev
3914626379 Update troubleshooting.md 2024-04-14 01:04:59 +00:00
AnomicDev
df276cb32d Update troubleshooting.md 2024-04-14 00:59:19 +00:00
AnomicDev
daad7d8b10 Update troubleshooting.md 2024-04-14 00:58:44 +00:00
AnomicDev
3bf5bc0fe3 Update troubleshooting.md 2024-04-14 00:58:09 +00:00
AnomicDev
96abae553a Update troubleshooting.md 2024-04-14 00:57:12 +00:00
AnomicDev
f9cbfb1562 Update troubleshooting.md 2024-04-14 00:55:59 +00:00
AnomicDev
8eaa94e179 Update troubleshooting.md 2024-04-14 00:55:24 +00:00
AnomicDev
4f876b648b Update troubleshooting.md 2024-04-14 00:53:16 +00:00
AnomicDev
cd738137c0 Update troubleshooting.md 2024-04-14 00:52:07 +00:00
Aaron Kable
5605eb129d Make table bg a little less opressive in timerboard 2024-04-10 16:27:09 +08:00
Ariel Rin
87ef0f21a3 Merge branch 'add-missing-colon' into 'master'
[ADD] Missing colon

See merge request allianceauth/allianceauth!1616
2024-04-10 01:12:30 +00:00
Ariel Rin
a1c7ce827e Merge branch 'topnav-revival' into 'master'
V4 Theme - Re-add the Top Nav for unauthenticated users

See merge request allianceauth/allianceauth!1615
2024-04-10 01:09:03 +00:00
Aaron Kable
97466bcdfb V4 Theme - Re-add the Top Nav for unauthenticated users 2024-04-10 01:09:02 +00:00
Peter Pfeufer
ff3096b106 [ADD] Missing colon 2024-04-07 15:58:35 +02:00
Ariel Rin
98f0d77f3f Merge branch 'pre-commit-updates' into 'master'
[MISC] pre-commit config updates

See merge request allianceauth/allianceauth!1614
2024-03-29 02:24:49 +00:00
Peter Pfeufer
92548ba402 [ADD] pyproject.toml validation 2024-03-28 20:40:45 +01:00
Peter Pfeufer
c46741d311 [MISC] Update repo versions 2024-03-28 20:34:31 +01:00
Peter Pfeufer
7c7c1abf7c [CHANGE] Project file linter
We don't use setup.cfg anymore, so we should lint the pyproject.toml file now.
2024-03-28 20:33:16 +01:00
Ariel Rin
fc303b1b0a Merge branch 'fix-phpbb3-mysql-user' into 'master'
[FIX] DB user for phpBB

See merge request allianceauth/allianceauth!1613
2024-03-26 10:19:07 +00:00
Peter Pfeufer
4e220a9679 [FIX] DB user for phpBB 2024-03-24 17:08:34 +01:00
Ariel Rin
b17b1f7504 Version Bump 4.0.1 2024-03-21 19:34:02 +10:00
Ariel Rin
7081fc0e76 Merge branch 'docs' into 'master'
Documentation

See merge request allianceauth/allianceauth!1610
2024-03-21 09:17:43 +00:00
Ariel Rin
68e4574f19 Merge branch 'analytics' into 'master'
Pass Version to analytics user properties

See merge request allianceauth/allianceauth!1612
2024-03-21 09:12:53 +00:00
Ariel Rin
e6e0a70012 Pass Version to analytics user properties 2024-03-21 09:12:53 +00:00
Ariel Rin
13e38da942 Merge branch 'timers-row-background' into 'master'
[CHANGE] Restore the "old" color coding in table rows

See merge request allianceauth/allianceauth!1611
2024-03-21 09:12:25 +00:00
Peter Pfeufer
468c1de26b [CHANGE] restore the "old" color coding in table rows 2024-03-20 19:22:03 +01:00
Ariel Rin
22ef5ac0e5 raw file contents incase someone wgets 2024-03-16 15:44:39 +10:00
121 changed files with 13839 additions and 2900 deletions

View File

@@ -25,7 +25,7 @@ before_script:
pre-commit-check: pre-commit-check:
<<: *only-default <<: *only-default
stage: pre-commit stage: pre-commit
image: python:3.11-bullseye image: python:3.11-bookworm
# variables: # variables:
# PRE_COMMIT_HOME: ${CI_PROJECT_DIR}/.cache/pre-commit # PRE_COMMIT_HOME: ${CI_PROJECT_DIR}/.cache/pre-commit
# cache: # cache:
@@ -53,7 +53,7 @@ secret_detection:
test-3.8-core: test-3.8-core:
<<: *only-default <<: *only-default
image: python:3.8-bullseye image: python:3.8-bookworm
script: script:
- tox -e py38-core - tox -e py38-core
artifacts: artifacts:
@@ -65,7 +65,7 @@ test-3.8-core:
test-3.9-core: test-3.9-core:
<<: *only-default <<: *only-default
image: python:3.9-bullseye image: python:3.9-bookworm
script: script:
- tox -e py39-core - tox -e py39-core
artifacts: artifacts:
@@ -77,7 +77,7 @@ test-3.9-core:
test-3.10-core: test-3.10-core:
<<: *only-default <<: *only-default
image: python:3.10-bullseye image: python:3.10-bookworm
script: script:
- tox -e py310-core - tox -e py310-core
artifacts: artifacts:
@@ -89,7 +89,7 @@ test-3.10-core:
test-3.11-core: test-3.11-core:
<<: *only-default <<: *only-default
image: python:3.11-bullseye image: python:3.11-bookworm
script: script:
- tox -e py311-core - tox -e py311-core
artifacts: artifacts:
@@ -101,7 +101,7 @@ test-3.11-core:
test-3.12-core: test-3.12-core:
<<: *only-default <<: *only-default
image: python:3.12-rc-bullseye image: python:3.12-bookworm
script: script:
- tox -e py312-core - tox -e py312-core
artifacts: artifacts:
@@ -113,7 +113,7 @@ test-3.12-core:
test-3.8-all: test-3.8-all:
<<: *only-default <<: *only-default
image: python:3.8-bullseye image: python:3.8-bookworm
script: script:
- tox -e py38-all - tox -e py38-all
artifacts: artifacts:
@@ -125,7 +125,7 @@ test-3.8-all:
test-3.9-all: test-3.9-all:
<<: *only-default <<: *only-default
image: python:3.9-bullseye image: python:3.9-bookworm
script: script:
- tox -e py39-all - tox -e py39-all
artifacts: artifacts:
@@ -137,7 +137,7 @@ test-3.9-all:
test-3.10-all: test-3.10-all:
<<: *only-default <<: *only-default
image: python:3.10-bullseye image: python:3.10-bookworm
script: script:
- tox -e py310-all - tox -e py310-all
artifacts: artifacts:
@@ -149,7 +149,7 @@ test-3.10-all:
test-3.11-all: test-3.11-all:
<<: *only-default <<: *only-default
image: python:3.11-bullseye image: python:3.11-bookworm
script: script:
- tox -e py311-all - tox -e py311-all
artifacts: artifacts:
@@ -162,7 +162,7 @@ test-3.11-all:
test-3.12-all: test-3.12-all:
<<: *only-default <<: *only-default
image: python:3.12-rc-bullseye image: python:3.12-bookworm
script: script:
- tox -e py312-all - tox -e py312-all
artifacts: artifacts:
@@ -174,7 +174,7 @@ test-3.12-all:
build-test: build-test:
stage: test stage: test
image: python:3.11-bullseye image: python:3.11-bookworm
before_script: before_script:
- python -m pip install --upgrade pip - python -m pip install --upgrade pip
@@ -193,13 +193,13 @@ build-test:
test-docs: test-docs:
<<: *only-default <<: *only-default
image: python:3.11-bullseye image: python:3.11-bookworm
script: script:
- tox -e docs - tox -e docs
deploy_production: deploy_production:
stage: deploy stage: deploy
image: python:3.11-bullseye image: python:3.11-bookworm
before_script: before_script:
- python -m pip install --upgrade pip - python -m pip install --upgrade pip

View File

@@ -4,8 +4,21 @@
# pre-commit autoupdate # pre-commit autoupdate
repos: repos:
# Code Upgrades
- repo: https://github.com/asottile/pyupgrade
rev: v3.15.2
hooks:
- id: pyupgrade
args: [--py38-plus]
- repo: https://github.com/adamchainz/django-upgrade
rev: 1.17.0
hooks:
- id: django-upgrade
args: [--target-version=4.2]
# Formatting
- repo: https://github.com/pre-commit/pre-commit-hooks - repo: https://github.com/pre-commit/pre-commit-hooks
rev: v4.5.0 rev: v4.6.0
hooks: hooks:
# Identify invalid files # Identify invalid files
- id: check-ast - id: check-ast
@@ -13,27 +26,24 @@ repos:
- id: check-json - id: check-json
- id: check-toml - id: check-toml
- id: check-xml - id: check-xml
# git checks # git checks
- id: check-merge-conflict - id: check-merge-conflict
- id: check-added-large-files - id: check-added-large-files
args: [ --maxkb=1000 ] args: [--maxkb=1000]
- id: detect-private-key - id: detect-private-key
- id: check-case-conflict - id: check-case-conflict
# Python checks # Python checks
# - id: check-docstring-first # - id: check-docstring-first
- id: debug-statements - id: debug-statements
# - id: requirements-txt-fixer # - id: requirements-txt-fixer
- id: fix-encoding-pragma - id: fix-encoding-pragma
args: [ --remove ] args: [--remove]
- id: fix-byte-order-marker - id: fix-byte-order-marker
# General quality checks # General quality checks
- id: mixed-line-ending - id: mixed-line-ending
args: [ --fix=lf ] args: [--fix=lf]
- id: trailing-whitespace - id: trailing-whitespace
args: [ --markdown-linebreak-ext=md ] args: [--markdown-linebreak-ext=md]
exclude: | exclude: |
(?x)( (?x)(
\.min\.css| \.min\.css|
@@ -52,7 +62,6 @@ repos:
\.mo| \.mo|
swagger\.json swagger\.json
) )
- repo: https://github.com/editorconfig-checker/editorconfig-checker.python - repo: https://github.com/editorconfig-checker/editorconfig-checker.python
rev: 2.7.3 rev: 2.7.3
hooks: hooks:
@@ -65,21 +74,26 @@ repos:
\.mo| \.mo|
swagger\.json swagger\.json
) )
- repo: https://github.com/igorshubovych/markdownlint-cli
- repo: https://github.com/asottile/pyupgrade rev: v0.41.0
rev: v3.15.1
hooks: hooks:
- id: pyupgrade - id: markdownlint
args: [ --py38-plus ] args:
- --disable=MD013
- repo: https://github.com/adamchainz/django-upgrade # Infrastructure
rev: 1.16.0 - repo: https://github.com/tox-dev/pyproject-fmt
rev: 2.1.3
hooks: hooks:
- id: django-upgrade - id: pyproject-fmt
args: [--target-version=4.2] name: pyproject.toml formatter
description: "Format the pyproject.toml file."
- repo: https://github.com/asottile/setup-cfg-fmt args:
rev: v2.5.0 - --indent=4
additional_dependencies:
- tox==4.15.0 # https://github.com/tox-dev/tox/releases/latest
- repo: https://github.com/abravalheri/validate-pyproject
rev: v0.18
hooks: hooks:
- id: setup-cfg-fmt - id: validate-pyproject
args: [ --include-version-classifiers ] name: Validate pyproject.toml
description: "Validate the pyproject.toml file."

View File

@@ -1,10 +0,0 @@
[main]
host = https://app.transifex.com
lang_map = zh-Hans: zh_Hans
[o:alliance-auth:p:alliance-auth:r:django-po]
file_filter = allianceauth/locale/<lang>/LC_MESSAGES/django.po
source_file = allianceauth/locale/en/LC_MESSAGES/django.po
source_lang = en
type = PO
minimum_perc = 0

View File

@@ -5,7 +5,7 @@ manage online service access.
# This will make sure the app is always imported when # This will make sure the app is always imported when
# Django starts so that shared_task will use this app. # Django starts so that shared_task will use this app.
__version__ = '4.0.0' __version__ = '4.3.1'
__title__ = 'Alliance Auth' __title__ = 'Alliance Auth'
__url__ = 'https://gitlab.com/allianceauth/allianceauth' __url__ = 'https://gitlab.com/allianceauth/allianceauth'
NAME = f'{__title__} v{__version__}' NAME = f'{__title__} v{__version__}'

View File

@@ -9,6 +9,8 @@ from .utils import (
install_stat_tokens, install_stat_tokens,
install_stat_users) install_stat_users)
from allianceauth import __version__
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
BASE_URL = "https://www.google-analytics.com" BASE_URL = "https://www.google-analytics.com"
@@ -99,11 +101,38 @@ def analytics_daily_stats():
event_type='Stats') event_type='Stats')
for appconfig in apps.get_app_configs(): for appconfig in apps.get_app_configs():
analytics_event(namespace='allianceauth.analytics', if appconfig.label in [
task='send_extension_stats', "django_celery_beat",
label=appconfig.label, "bootstrapform",
value=1, "messages",
event_type='Stats') "sessions",
"auth",
"staticfiles",
"users",
"addons",
"admin",
"humanize",
"contenttypes",
"sortedm2m",
"django_bootstrap5",
"tokens",
"authentication",
"services",
"framework",
"notifications"
"eveonline",
"navhelper",
"analytics",
"menu",
"theme"
]:
pass
else:
analytics_event(namespace='allianceauth.analytics',
task='send_extension_stats',
label=appconfig.label,
value=1,
event_type='Stats')
@shared_task() @shared_task()
@@ -139,7 +168,7 @@ def send_ga_tracking_celery_event(
'client_id': AnalyticsIdentifier.objects.get(id=1).identifier.hex, 'client_id': AnalyticsIdentifier.objects.get(id=1).identifier.hex,
"user_properties": { "user_properties": {
"allianceauth_version": { "allianceauth_version": {
"value": "allianceauth_version" "value": __version__
} }
}, },
'non_personalized_ads': True, 'non_personalized_ads': True,

View File

@@ -5,26 +5,5 @@ from django.core.checks import Warning, Error, register
class AllianceAuthConfig(AppConfig): class AllianceAuthConfig(AppConfig):
name = 'allianceauth' name = 'allianceauth'
def ready(self) -> None:
@register() import allianceauth.checks # noqa
def check_settings(app_configs, **kwargs):
from django.conf import settings
errors = []
if hasattr(settings, "SITE_URL"):
if settings.SITE_URL[-1] == "/":
errors.append(Warning(
"'SITE_URL' Has a trailing slash. This may lead to incorrect links being generated by Auth."))
else:
errors.append(Error(
"No 'SITE_URL' found is settings. This may lead to incorrect links being generated by Auth or Errors in 3rd party modules."))
if hasattr(settings, "CSRF_TRUSTED_ORIGINS"):
if hasattr(settings, "SITE_URL"):
if settings.SITE_URL not in settings.CSRF_TRUSTED_ORIGINS:
errors.append(Warning(
"'SITE_URL' not found in 'CSRF_TRUSTED_ORIGINS'. Auth may not load pages correctly until this is rectified."))
else:
errors.append(Error(
"No 'CSRF_TRUSTED_ORIGINS' found is settings, Auth may not load pages correctly until this is rectified"))
return errors

View File

@@ -0,0 +1,18 @@
# Generated by Django 4.2.13 on 2024-05-12 09:44
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('authentication', '0022_userprofile_theme'),
]
operations = [
migrations.AlterField(
model_name='userprofile',
name='language',
field=models.CharField(blank=True, choices=[('en', 'English'), ('de', 'German'), ('es', 'Spanish'), ('zh-hans', 'Chinese Simplified'), ('ru', 'Russian'), ('ko', 'Korean'), ('fr', 'French'), ('ja', 'Japanese'), ('it', 'Italian'), ('uk', 'Ukrainian'), ('pl', 'Polish')], default='', max_length=10, verbose_name='Language'),
),
]

View File

@@ -0,0 +1,18 @@
# Generated by Django 4.2 on 2024-09-13 09:46
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('authentication', '0023_alter_userprofile_language'),
]
operations = [
migrations.AlterField(
model_name='userprofile',
name='language',
field=models.CharField(blank=True, choices=[('en', 'English'), ('cs-cz', 'Czech'), ('de', 'German'), ('es', 'Spanish'), ('it-it', 'Italian'), ('ja', 'Japanese'), ('ko-kr', 'Korean'), ('fr-fr', 'French'), ('ru', 'Russian'), ('nl-nl', 'Dutch'), ('pl-pl', 'Polish'), ('uk', 'Ukrainian'), ('zh-hans', 'Simplified Chinese')], default='', max_length=10, verbose_name='Language'),
),
]

View File

@@ -67,17 +67,20 @@ class UserProfile(models.Model):
""" """
Choices for UserProfile.language Choices for UserProfile.language
""" """
# Sorted by Language Code alphabetical order + English at top
ENGLISH = 'en', _('English') ENGLISH = 'en', _('English')
CZECH = 'cs-cz', _("Czech") # Not yet at 50% translated
GERMAN = 'de', _('German') GERMAN = 'de', _('German')
SPANISH = 'es', _('Spanish') SPANISH = 'es', _('Spanish')
CHINESE = 'zh-hans', _('Chinese Simplified') ITALIAN = 'it-it', _('Italian')
RUSSIAN = 'ru', _('Russian')
KOREAN = 'ko', _('Korean')
FRENCH = 'fr', _('French')
JAPANESE = 'ja', _('Japanese') JAPANESE = 'ja', _('Japanese')
ITALIAN = 'it', _('Italian') KOREAN = 'ko-kr', _('Korean')
FRENCH = 'fr-fr', _('French')
RUSSIAN = 'ru', _('Russian')
DUTCH = 'nl-nl', _("Dutch")
POLISH = 'pl-pl', _("Polish")
UKRAINIAN = 'uk', _('Ukrainian') UKRAINIAN = 'uk', _('Ukrainian')
CHINESE = 'zh-hans', _('Simplified Chinese')
user = models.OneToOneField( user = models.OneToOneField(
User, User,

View File

@@ -7,7 +7,7 @@
{% translate "Dashboard" %} {% translate "Dashboard" %}
{% endblock %} {% endblock %}
{% block content %} {% block content %}
<div class="d-flex justify-content-around align-self-center flex-wrap"> <div class="row">
{% for dash in views %} {% for dash in views %}
{{ dash | safe }} {{ dash | safe }}
{% endfor %} {% endfor %}

View File

@@ -1,13 +1,11 @@
{% load i18n %} {% load i18n %}
<div id="aa-dashboard-panel-characters" class="col-12 col-xl-8 align-self-stretch p-2 ps-0 pe-0 ps-xl-0 pe-xl-2"> <div id="aa-dashboard-panel-characters" class="col-12 col-xl-8 mb-3">
<div class="card"> <div class="card h-100">
<div class="card-body"> <div class="card-body">
<div class="d-flex align-items-center"> {% translate "Characters" as widget_title %}
<h4 class="ms-auto me-auto"> {% include "framework/dashboard/widget-title.html" with title=widget_title %}
{% translate "Characters" %}
</h4> <div>
</div>
<div class="card-body">
<div style="height: 300px; overflow-y:auto;"> <div style="height: 300px; overflow-y:auto;">
<div class="d-flex"> <div class="d-flex">
<a href="{% url 'authentication:add_character' %}" class="btn btn-primary flex-fill m-1" title="{% translate 'Add Character' %}"> <a href="{% url 'authentication:add_character' %}" class="btn btn-primary flex-fill m-1" title="{% translate 'Add Character' %}">

View File

@@ -1,9 +1,11 @@
{% load i18n %} {% load i18n %}
<div id="aa-dashboard-panel-membership" class="col-12 col-xl-4 align-self-stretch py-2 ps-xl-2"> <div id="aa-dashboard-panel-membership" class="col-12 col-xl-4 mb-3">
<div class="card h-100"> <div class="card h-100">
<div class="card-body"> <div class="card-body">
<h4 class="card-title text-center">{% translate "Membership" %}</h4> {% translate "Membership" as widget_title %}
<div class="card-body"> {% include "framework/dashboard/widget-title.html" with title=widget_title %}
<div>
<div style="height: 300px; overflow-y:auto;"> <div style="height: 300px; overflow-y:auto;">
<h5 class="text-center">{% translate "State:" %} {{ request.user.profile.state }}</h5> <h5 class="text-center">{% translate "State:" %} {{ request.user.profile.state }}</h5>
<table class="table"> <table class="table">

187
allianceauth/checks.py Normal file
View File

@@ -0,0 +1,187 @@
from typing import List
from django import db
from django.core.checks import CheckMessage, Error, register, Warning
from allianceauth.utils.cache import get_redis_client
from django.utils import timezone
from packaging.version import InvalidVersion, Version as Pep440Version
from celery import current_app
from django.conf import settings
from sqlite3.dbapi2 import sqlite_version_info
"""
A = System Packages
B = Configuration
"""
@register()
def django_settings(app_configs, **kwargs) -> List[CheckMessage]:
errors: List[CheckMessage] = []
if hasattr(settings, "SITE_URL"):
if settings.SITE_URL[-1] == "/":
errors.append(Warning("'SITE_URL' Has a trailing slash. This may lead to incorrect links being generated by Auth.", hint="", id="allianceauth.checks.B005"))
else:
errors.append(Error("No 'SITE_URL' found is settings. This may lead to incorrect links being generated by Auth or Errors in 3rd party modules.", hint="", id="allianceauth.checks.B006"))
if hasattr(settings, "CSRF_TRUSTED_ORIGINS") and hasattr(settings, "SITE_URL"):
if settings.SITE_URL not in settings.CSRF_TRUSTED_ORIGINS:
errors.append(Warning("'SITE_URL' not found in 'CSRF_TRUSTED_ORIGINS'. Auth may not load pages correctly until this is rectified.", hint="", id="allianceauth.checks.B007"))
else:
errors.append(Error("No 'CSRF_TRUSTED_ORIGINS' found is settings, Auth may not load pages correctly until this is rectified", hint="", id="allianceauth.checks.B008"))
return errors
@register()
def system_package_redis(app_configs, **kwargs) -> List[CheckMessage]:
errors: List[CheckMessage] = []
try:
redis_version = Pep440Version(get_redis_client().info()['redis_version'])
except InvalidVersion:
errors.append(Warning("Unable to confirm Redis Version"))
return errors
if redis_version.major == 7 and redis_version.minor == 2 and timezone.now() > timezone.datetime(year=2025, month=8, day=31, tzinfo=timezone.utc):
errors.append(Error(f"Redis {redis_version.public} in Security Support only, Updating Suggested", hint="https://allianceauth.readthedocs.io/en/latest/installation/allianceauth.html#redis-and-other-tools", id="allianceauth.checks.A001"))
elif redis_version.major == 7 and redis_version.minor == 0:
errors.append(Warning(f"Redis {redis_version.public} in Security Support only, Updating Suggested", hint="https://allianceauth.readthedocs.io/en/latest/installation/allianceauth.html#redis-and-other-tools", id="allianceauth.checks.A002"))
elif redis_version.major == 6 and redis_version.minor == 2:
errors.append(Warning(f"Redis {redis_version.public} in Security Support only, Updating Suggested", hint="https://allianceauth.readthedocs.io/en/latest/installation/allianceauth.html#redis-and-other-tools", id="allianceauth.checks.A018"))
elif redis_version.major in [6, 5]:
errors.append(Error(f"Redis {redis_version.public} EOL", hint="https://allianceauth.readthedocs.io/en/latest/installation/allianceauth.html#redis-and-other-tools", id="allianceauth.checks.A003"))
return errors
@register()
def system_package_mysql(app_configs, **kwargs) -> List[CheckMessage]:
errors: List[CheckMessage] = []
for connection in db.connections.all():
if connection.vendor == "mysql":
try:
mysql_version = Pep440Version(".".join(str(i) for i in connection.mysql_version))
except InvalidVersion:
errors.append(Warning("Unable to confirm MySQL Version"))
return errors
# MySQL 8
if mysql_version.major == 8 and mysql_version.minor == 4 and timezone.now() > timezone.datetime(year=2032, month=4, day=30, tzinfo=timezone.utc):
errors.append(Error(f"MySQL {mysql_version.public} EOL", hint="https://dev.mysql.com/doc/mysql-apt-repo-quick-guide/en/", id="allianceauth.checks.A004"))
elif mysql_version.major == 8 and mysql_version.minor == 3:
errors.append(Warning(f"MySQL {mysql_version.public} Non LTS", hint="https://dev.mysql.com/doc/mysql-apt-repo-quick-guide/en/", id="allianceauth.checks.A005"))
elif mysql_version.major == 8 and mysql_version.minor == 2:
errors.append(Warning(f"MySQL {mysql_version.public} Non LTS", hint="https://dev.mysql.com/doc/mysql-apt-repo-quick-guide/en/", id="allianceauth.checks.A006"))
elif mysql_version.major == 8 and mysql_version.minor == 1:
errors.append(Error(f"MySQL {mysql_version.public} EOL", hint="https://dev.mysql.com/doc/mysql-apt-repo-quick-guide/en/", id="allianceauth.checks.A007"))
elif mysql_version.major == 8 and mysql_version.minor == 0 and timezone.now() > timezone.datetime(year=2026, month=4, day=30, tzinfo=timezone.utc):
errors.append(Error(f"MySQL {mysql_version.public} EOL", hint="https://dev.mysql.com/doc/mysql-apt-repo-quick-guide/en/", id="allianceauth.checks.A008"))
elif mysql_version.major < 8: # This will also catch Mariadb 5.x
errors.append(Error(f"MySQL or MariaDB {mysql_version.public} EOL", hint="https://dev.mysql.com/doc/mysql-apt-repo-quick-guide/en/", id="allianceauth.checks.A009"))
return errors
@register()
def system_package_mariadb(app_configs, **kwargs) -> List[CheckMessage]:
errors: List[CheckMessage] = []
for connection in db.connections.all():
if connection.vendor == "mysql": # Still to find a way to determine MySQL vs MariaDB
try:
mariadb_version = Pep440Version(".".join(str(i) for i in connection.mysql_version))
except InvalidVersion:
errors.append(Warning("Unable to confirm MariaDB Version"))
return errors
# MariaDB 11
if mariadb_version.major == 11 and mariadb_version.minor == 4 and timezone.now() > timezone.datetime(year=2029, month=5, day=19, tzinfo=timezone.utc):
errors.append(Error(f"MariaDB {mariadb_version.public} EOL", hint="https://mariadb.org/download/?t=repo-config", id="allianceauth.checks.A010"))
elif mariadb_version.major == 11 and mariadb_version.minor == 2:
errors.append(Warning(f"MariaDB {mariadb_version.public} Non LTS", hint="https://mariadb.org/download/?t=repo-config", id="allianceauth.checks.A018"))
if timezone.now() > timezone.datetime(year=2024, month=11, day=21, tzinfo=timezone.utc):
errors.append(Error(f"MariaDB {mariadb_version.public} EOL", hint="https://mariadb.org/download/?t=repo-config", id="allianceauth.checks.A011"))
elif mariadb_version.major == 11 and mariadb_version.minor == 1:
errors.append(Warning(f"MariaDB {mariadb_version.public} Non LTS", hint="https://mariadb.org/download/?t=repo-config", id="allianceauth.checks.A019"))
if timezone.now() > timezone.datetime(year=2024, month=8, day=21, tzinfo=timezone.utc):
errors.append(Error(f"MariaDB {mariadb_version.public} EOL", hint="https://mariadb.org/download/?t=repo-config", id="allianceauth.checks.A012"))
elif mariadb_version.major == 11 and mariadb_version.minor in [0, 3]: # Demote versions down here once EOL
errors.append(Error(f"MariaDB {mariadb_version.public} EOL", hint="https://mariadb.org/download/?t=repo-config.", id="allianceauth.checks.A013"))
# MariaDB 10
elif mariadb_version.major == 10 and mariadb_version.minor == 11 and timezone.now() > timezone.datetime(year=2028, month=2, day=10, tzinfo=timezone.utc):
errors.append(Error(f"MariaDB {mariadb_version.public} EOL", hint="https://mariadb.org/download/?t=repo-config.", id="allianceauth.checks.A014"))
elif mariadb_version.major == 10 and mariadb_version.minor == 6 and timezone.now() > timezone.datetime(year=2026, month=7, day=6, tzinfo=timezone.utc):
errors.append(Error(f"MariaDB {mariadb_version.public} EOL", hint="https://mariadb.org/download/?t=repo-config", id="allianceauth.checks.A0015"))
elif mariadb_version.major == 10 and mariadb_version.minor == 5 and timezone.now() > timezone.datetime(year=2025, month=6, day=24, tzinfo=timezone.utc):
errors.append(Error(f"MariaDB {mariadb_version.public} EOL", hint="https://mariadb.org/download/?t=repo-config", id="allianceauth.checks.A016"))
elif mariadb_version.major == 10 and mariadb_version.minor in [0, 1, 2, 3, 4, 7, 9, 10]: # Demote versions down here once EOL
errors.append(Error(f"MariaDB {mariadb_version.public} EOL", hint="https://mariadb.org/download/?t=repo-config", id="allianceauth.checks.A017"))
return errors
@register()
def system_package_sqlite(app_configs, **kwargs) -> List[CheckMessage]:
errors: List[CheckMessage] = []
for connection in db.connections.all():
if connection.vendor == "sqlite":
try:
sqlite_version = Pep440Version(".".join(str(i) for i in sqlite_version_info))
except InvalidVersion:
errors.append(Warning("Unable to confirm SQLite Version"))
return errors
if sqlite_version.major == 3 and sqlite_version.minor < 27:
errors.append(Error(f"SQLite {sqlite_version.public} Unsupported by Django", hint="https://pkgs.org/download/sqlite3", id="allianceauth.checks.A020"))
return errors
@register()
def sql_settings(app_configs, **kwargs) -> List[CheckMessage]:
errors: List[CheckMessage] = []
for connection in db.connections.all():
if connection.vendor == "mysql":
try:
if connection.settings_dict["OPTIONS"]["charset"] != "utf8mb4":
errors.append(Error(f"SQL Charset is not set to utf8mb4 DB:{connection.alias}", hint="https://gitlab.com/allianceauth/allianceauth/-/commit/89be2456fb2d741b86417e889da9b6129525bec8", id="allianceauth.checks.B001"))
except KeyError:
errors.append(Error(f"SQL Charset is not set to utf8mb4 DB:{connection.alias}", hint="https://gitlab.com/allianceauth/allianceauth/-/commit/89be2456fb2d741b86417e889da9b6129525bec8", id="allianceauth.checks.B001"))
# This hasn't actually been set on AA yet
# try:
# if connection.settings_dict["OPTIONS"]["collation"] != "utf8mb4_unicode_ci":
# errors.append(Error(f"SQL Collation is not set to utf8mb4_unicode_ci DB:{connection.alias}", hint="https://gitlab.com/allianceauth/allianceauth/-/commit/89be2456fb2d741b86417e889da9b6129525bec8", id="allianceauth.checks.B001"))
# except KeyError:
# errors.append(Error(f"SQL Collation is not set to utf8mb4_unicode_ci DB:{connection.alias}", hint="https://gitlab.com/allianceauth/allianceauth/-/commit/89be2456fb2d741b86417e889da9b6129525bec8", id="allianceauth.checks.B001"))
# if connection.vendor == "sqlite":
return errors
@register()
def celery_settings(app_configs, **kwargs) -> List[CheckMessage]:
errors: List[CheckMessage] = []
try:
if current_app.conf.broker_transport_options != {'priority_steps': [0, 1, 2, 3, 4, 5, 6, 7, 8, 9], 'queue_order_strategy': 'priority'}:
errors.append(Error("Celery Priorities are not set correctly", hint="https://gitlab.com/allianceauth/allianceauth/-/commit/8861ec0a61790eca0261f1adc1cc04ca5f243cbc", id="allianceauth.checks.B003"))
except KeyError:
errors.append(Error("Celery Priorities are not set", hint="https://gitlab.com/allianceauth/allianceauth/-/commit/8861ec0a61790eca0261f1adc1cc04ca5f243cbc", id="allianceauth.checks.B003"))
try:
if current_app.conf.broker_connection_retry_on_startup != True:
errors.append(Error("Celery broker_connection_retry_on_startup not set correctly", hint="https://gitlab.com/allianceauth/allianceauth/-/commit/380c41400b535447839e5552df2410af35a75280", id="allianceauth.checks.B004"))
except KeyError:
errors.append(Error("Celery broker_connection_retry_on_startup not set", hint="https://gitlab.com/allianceauth/allianceauth/-/commit/380c41400b535447839e5552df2410af35a75280", id="allianceauth.checks.B004"))
return errors
# IDEAS
# Any other celery things weve manually changed over the years
# I'd be happy to add Community App checks, old versions the owners dont want to support etc.
# Check Default Collation on DB
# Check Charset Collation on all tables

View File

@@ -0,0 +1,3 @@
"""
Initializes the custom_css module.
"""

View File

@@ -0,0 +1,25 @@
"""
Admin classes for custom_css app
"""
# Django
from django.contrib import admin
# Django Solos
from solo.admin import SingletonModelAdmin
# Alliance Auth Custom CSS
from allianceauth.custom_css.models import CustomCSS
from allianceauth.custom_css.forms import CustomCSSAdminForm
@admin.register(CustomCSS)
class CustomCSSAdmin(SingletonModelAdmin):
"""
Custom CSS Admin
"""
form = CustomCSSAdminForm
# Leave this here for when we decide to add syntax highlighting to the CSS editor
# change_form_template = 'custom_css/admin/change_form.html'

View File

@@ -0,0 +1,13 @@
"""
Django app configuration for custom_css
"""
# Django
from django.apps import AppConfig
from django.utils.translation import gettext_lazy as _
class CustomCSSConfig(AppConfig):
name = "allianceauth.custom_css"
label = "custom_css"
verbose_name = _("Custom CSS")

View File

@@ -0,0 +1,29 @@
"""
Forms for custom_css app
"""
# Alliance Auth Custom CSS
from allianceauth.custom_css.models import CustomCSS
from allianceauth.custom_css.widgets import CssEditorWidget
# Django
from django import forms
class CustomCSSAdminForm(forms.ModelForm):
"""
Form for editing custom CSS
"""
class Meta:
model = CustomCSS
fields = ("css",)
widgets = {
"css": CssEditorWidget(
attrs={
"style": "width: 90%; height: 100%;",
"data-editor": "code-highlight",
"data-language": "css",
}
)
}

View File

@@ -0,0 +1,42 @@
# Generated by Django 4.2.15 on 2024-08-14 11:25
from django.db import migrations, models
class Migration(migrations.Migration):
initial = True
dependencies = []
operations = [
migrations.CreateModel(
name="CustomCSS",
fields=[
(
"id",
models.AutoField(
auto_created=True,
primary_key=True,
serialize=False,
verbose_name="ID",
),
),
(
"css",
models.TextField(
blank=True,
help_text="This CSS will be added to the site after the default CSS.",
null=True,
verbose_name="Your custom CSS",
),
),
("timestamp", models.DateTimeField(auto_now=True)),
],
options={
"verbose_name": "Custom CSS",
"verbose_name_plural": "Custom CSS",
"default_permissions": (),
},
),
]

View File

@@ -0,0 +1,143 @@
"""
Models for the custom_css app
"""
import os
import re
# Django Solo
from solo.models import SingletonModel
# Django
from django.conf import settings
from django.db import models
from django.utils.translation import gettext_lazy as _
class CustomCSS(SingletonModel):
"""
Model for storing custom CSS for the site
"""
css = models.TextField(
blank=True,
null=True,
verbose_name=_("Your custom CSS"),
help_text=_("This CSS will be added to the site after the default CSS."),
)
timestamp = models.DateTimeField(auto_now=True)
class Meta:
"""
Meta for CustomCSS
"""
default_permissions = ()
verbose_name = _("Custom CSS")
verbose_name_plural = _("Custom CSS")
def __str__(self) -> str:
"""
String representation of CustomCSS
:return:
:rtype:
"""
return str(_("Custom CSS"))
def save(self, *args, **kwargs):
"""
Save method for CustomCSS
:param args:
:type args:
:param kwargs:
:type kwargs:
:return:
:rtype:
"""
self.pk = 1
if self.css and len(self.css.replace(" ", "")) > 0:
# Write the custom CSS to a file
custom_css_file = open(
f"{settings.STATIC_ROOT}allianceauth/custom-styles.css", "w+"
)
custom_css_file.write(self.compress_css())
custom_css_file.close()
else:
# Remove the custom CSS file
try:
os.remove(f"{settings.STATIC_ROOT}allianceauth/custom-styles.css")
except FileNotFoundError:
pass
super().save(*args, **kwargs)
def compress_css(self) -> str:
"""
Compress CSS
:return:
:rtype:
"""
css = self.css
new_css = ""
# Remove comments
css = re.sub(pattern=r"\s*/\*\s*\*/", repl="$$HACK1$$", string=css)
css = re.sub(pattern=r"/\*[\s\S]*?\*/", repl="", string=css)
css = css.replace("$$HACK1$$", "/**/")
# url() doesn't need quotes
css = re.sub(pattern=r'url\((["\'])([^)]*)\1\)', repl=r"url(\2)", string=css)
# Spaces may be safely collapsed as generated content will collapse them anyway.
css = re.sub(pattern=r"\s+", repl=" ", string=css)
# Shorten collapsable colors: #aabbcc to #abc
css = re.sub(
pattern=r"#([0-9a-f])\1([0-9a-f])\2([0-9a-f])\3(\s|;)",
repl=r"#\1\2\3\4",
string=css,
)
# Fragment values can loose zeros
css = re.sub(
pattern=r":\s*0(\.\d+([cm]m|e[mx]|in|p[ctx]))\s*;", repl=r":\1;", string=css
)
for rule in re.findall(pattern=r"([^{]+){([^}]*)}", string=css):
# We don't need spaces around operators
selectors = [
re.sub(
pattern=r"(?<=[\[\(>+=])\s+|\s+(?=[=~^$*|>+\]\)])",
repl=r"",
string=selector.strip(),
)
for selector in rule[0].split(",")
]
# Order is important, but we still want to discard repetitions
properties = {}
porder = []
for prop in re.findall(pattern="(.*?):(.*?)(;|$)", string=rule[1]):
key = prop[0].strip().lower()
if key not in porder:
porder.append(key)
properties[key] = prop[1].strip()
# output rule if it contains any declarations
if properties:
new_css += "{}{{{}}}".format(
",".join(selectors),
"".join([f"{key}:{properties[key]};" for key in porder])[:-1],
)
return new_css

View File

@@ -0,0 +1,48 @@
{% extends "admin/change_form.html" %}
{% block field_sets %}
{% for fieldset in adminform %}
<fieldset class="module aligned {{ fieldset.classes }}">
{% if fieldset.name %}<h2>{{ fieldset.name }}</h2>{% endif %}
{% if fieldset.description %}
<div class="description">{{ fieldset.description|safe }}</div>
{% endif %}
{% for line in fieldset %}
<div class="form-row{% if line.fields|length == 1 and line.errors %} errors{% endif %}{% if not line.has_visible_field %} hidden{% endif %}{% for field in line %}{% if field.field.name %} field-{{ field.field.name }}{% endif %}{% endfor %}">
{% if line.fields|length == 1 %}{{ line.errors }}{% else %}<div class="flex-container form-multiline">{% endif %}
{% for field in line %}
<div>
{% if not line.fields|length == 1 and not field.is_readonly %}{{ field.errors }}{% endif %}
<div class="flex-container{% if not line.fields|length == 1 %} fieldBox{% if field.field.name %} field-{{ field.field.name }}{% endif %}{% if not field.is_readonly and field.errors %} errors{% endif %}{% if field.field.is_hidden %} hidden{% endif %}{% elif field.is_checkbox %} checkbox-row{% endif %}">
{% if field.is_checkbox %}
{{ field.field }}{{ field.label_tag }}
{% else %}
{{ field.label_tag }}
{% if field.is_readonly %}
<div class="readonly">{{ field.contents }}</div>
{% else %}
{{ field.field }}
{% endif %}
{% endif %}
</div>
{% if field.field.help_text %}
<div class="help"{% if field.field.id_for_label %} id="{{ field.field.id_for_label }}_helptext"{% endif %}>
<div>{{ field.field.help_text|safe }}</div>
</div>
{% endif %}
</div>
{% endfor %}
{% if not line.fields|length == 1 %}</div>{% endif %}
</div>
{% endfor %}
</fieldset>
{% endfor %}
{% endblock %}
{% block after_field_sets %}{% endblock %}

View File

@@ -0,0 +1,3 @@
{% load custom_css %}
{% custom_css_static 'allianceauth/custom-styles.css' %}

View File

@@ -0,0 +1,3 @@
"""
Init file for custom_css templatetags
"""

View File

@@ -0,0 +1,48 @@
"""
Custom template tags for custom_css app
"""
# Alliance Auth Custom CSS
from allianceauth.custom_css.models import CustomCSS
# Django
from django.conf import settings
from django.template.defaulttags import register
from django.templatetags.static import static
from django.utils.safestring import mark_safe
from pathlib import Path
@register.simple_tag
def custom_css_static(path: str) -> str:
"""
Versioned static URL
This is to make sure to break the browser cache on CSS updates.
Example: /static/allianceauth/custom-styles.css?v=1234567890
:param path:
:type path:
:return:
:rtype:
"""
try:
Path(f"{settings.STATIC_ROOT}{path}").resolve(strict=True)
except FileNotFoundError:
return ""
else:
try:
custom_css = CustomCSS.objects.get(pk=1)
except CustomCSS.DoesNotExist:
return ""
else:
custom_css_changed = custom_css.timestamp.timestamp()
custom_css_version = (
str(custom_css_changed).replace(" ", "").replace(":", "").replace("-", "")
) # remove spaces, colons, and dashes
static_url = static(path)
versioned_url = static_url + "?v=" + custom_css_version
return mark_safe(f'<link rel="stylesheet" href="{versioned_url}">')

View File

@@ -0,0 +1,38 @@
"""
Form widgets for custom_css app
"""
# Django
from django import forms
# Alliance Auth
from allianceauth.custom_css.models import CustomCSS
class CssEditorWidget(forms.Textarea):
"""
Widget for editing CSS
"""
def __init__(self, attrs=None):
default_attrs = {"class": "custom-css-editor"}
if attrs:
default_attrs.update(attrs)
super().__init__(default_attrs)
# For when we want to add some sort of syntax highlight to it, which is not that
# easy to do on a textarea field though.
# `highlight.js` is just used as an example here, and doesn't work on a textarea field.
# class Media:
# css = {
# "all": (
# "/static/custom_css/libs/highlight.js/11.10.0/styles/github.min.css",
# )
# }
# js = (
# "/static/custom_css/libs/highlight.js/11.10.0/highlight.min.js",
# "/static/custom_css/libs/highlight.js/11.10.0/languages/css.min.js",
# "/static/custom_css/javascript/custom-css.min.js",
# )

View File

@@ -0,0 +1,8 @@
{#Usage:#}
{# {% include "framework/dashboard/widget-title.html" with title="Foobar" %}#}
<div class="text-center">
<h4 class="ms-auto me-auto mb-3">
{{ title }}
</h4>
</div>

View File

@@ -7,7 +7,7 @@
{% if subtitle %} {% if subtitle %}
<br> <br>
<small>{{ subtitle }}</small> <small class="text-muted">{{ subtitle }}</small>
{% endif %} {% endif %}
</h1> </h1>
{% endif %} {% endif %}

Binary file not shown.

File diff suppressed because it is too large Load Diff

View File

@@ -13,7 +13,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-03-13 19:10+1000\n" "POT-Creation-Date: 2024-09-13 19:57+1000\n"
"PO-Revision-Date: 2023-11-08 13:50+0000\n" "PO-Revision-Date: 2023-11-08 13:50+0000\n"
"Last-Translator: Peter Pfeufer, 2024\n" "Last-Translator: Peter Pfeufer, 2024\n"
"Language-Team: German (https://app.transifex.com/alliance-auth/teams/107430/de/)\n" "Language-Team: German (https://app.transifex.com/alliance-auth/teams/107430/de/)\n"
@@ -62,66 +62,90 @@ msgstr ""
"Du kannst diese eingeschränkten Gruppen nicht hinzufügen oder entfernen: %s" "Du kannst diese eingeschränkten Gruppen nicht hinzufügen oder entfernen: %s"
#: allianceauth/authentication/models.py:71 #: allianceauth/authentication/models.py:71
#: allianceauth/project_template/project_name/settings/base.py:99
msgid "English" msgid "English"
msgstr "Englisch" msgstr "Englisch"
#: allianceauth/authentication/models.py:72 #: allianceauth/authentication/models.py:72
msgid "Czech"
msgstr ""
#: allianceauth/authentication/models.py:73
#: allianceauth/project_template/project_name/settings/base.py:101
msgid "German" msgid "German"
msgstr "Deutsch" msgstr "Deutsch"
#: allianceauth/authentication/models.py:73 #: allianceauth/authentication/models.py:74
#: allianceauth/project_template/project_name/settings/base.py:102
msgid "Spanish" msgid "Spanish"
msgstr "Spanisch" msgstr "Spanisch"
#: allianceauth/authentication/models.py:74
msgid "Chinese Simplified"
msgstr "Chinesisch vereinfacht"
#: allianceauth/authentication/models.py:75 #: allianceauth/authentication/models.py:75
msgid "Russian" #: allianceauth/project_template/project_name/settings/base.py:103
msgstr "Russisch"
#: allianceauth/authentication/models.py:76
msgid "Korean"
msgstr "Koreanisch"
#: allianceauth/authentication/models.py:77
msgid "French"
msgstr "Französisch"
#: allianceauth/authentication/models.py:78
msgid "Japanese"
msgstr "Japanisch"
#: allianceauth/authentication/models.py:79
msgid "Italian" msgid "Italian"
msgstr "Italienisch" msgstr "Italienisch"
#: allianceauth/authentication/models.py:76
#: allianceauth/project_template/project_name/settings/base.py:104
msgid "Japanese"
msgstr "Japanisch"
#: allianceauth/authentication/models.py:77
#: allianceauth/project_template/project_name/settings/base.py:105
msgid "Korean"
msgstr "Koreanisch"
#: allianceauth/authentication/models.py:78
#: allianceauth/project_template/project_name/settings/base.py:106
msgid "French"
msgstr "Französisch"
#: allianceauth/authentication/models.py:79
#: allianceauth/project_template/project_name/settings/base.py:109
msgid "Russian"
msgstr "Russisch"
#: allianceauth/authentication/models.py:80 #: allianceauth/authentication/models.py:80
#: allianceauth/project_template/project_name/settings/base.py:107
msgid "Dutch"
msgstr ""
#: allianceauth/authentication/models.py:81
#: allianceauth/project_template/project_name/settings/base.py:108
msgid "Polish"
msgstr "Polnisch"
#: allianceauth/authentication/models.py:82
#: allianceauth/project_template/project_name/settings/base.py:110
msgid "Ukrainian" msgid "Ukrainian"
msgstr "Ukrainisch" msgstr "Ukrainisch"
#: allianceauth/authentication/models.py:96 #: allianceauth/authentication/models.py:83
#: allianceauth/project_template/project_name/settings/base.py:111
msgid "Simplified Chinese"
msgstr ""
#: allianceauth/authentication/models.py:99
#: allianceauth/menu/templates/menu/menu-user.html:42 #: allianceauth/menu/templates/menu/menu-user.html:42
msgid "Language" msgid "Language"
msgstr "Sprache" msgstr "Sprache"
#: allianceauth/authentication/models.py:101 #: allianceauth/authentication/models.py:104
#: allianceauth/templates/allianceauth/night-toggle.html:6 #: allianceauth/templates/allianceauth/night-toggle.html:6
msgid "Night Mode" msgid "Night Mode"
msgstr "Nachtmodus" msgstr "Nachtmodus"
#: allianceauth/authentication/models.py:105 #: allianceauth/authentication/models.py:108
#: allianceauth/menu/templates/menu/menu-user.html:46 #: allianceauth/menu/templates/menu/menu-user.html:46
msgid "Theme" msgid "Theme"
msgstr "Theme" msgstr "Theme"
#: allianceauth/authentication/models.py:122 #: allianceauth/authentication/models.py:125
#, python-format #, python-format
msgid "State changed to: %s" msgid "State changed to: %s"
msgstr "Status geändert zu %s" msgstr "Status geändert zu %s"
#: allianceauth/authentication/models.py:123 #: allianceauth/authentication/models.py:126
#, python-format #, python-format
msgid "Your user's state is now: %(state)s" msgid "Your user's state is now: %(state)s"
msgstr "Dein Nutzerstatus ist nun %(state)s" msgstr "Dein Nutzerstatus ist nun %(state)s"
@@ -133,27 +157,27 @@ msgstr "Dein Nutzerstatus ist nun %(state)s"
msgid "Dashboard" msgid "Dashboard"
msgstr "Dashboard" msgstr "Dashboard"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:7 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:5
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticscorpview.html:33 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticscorpview.html:33
#: allianceauth/hrapplications/templates/hrapplications/view.html:54 #: allianceauth/hrapplications/templates/hrapplications/view.html:54
msgid "Characters" msgid "Characters"
msgstr "Charaktere" msgstr "Charaktere"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:13 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:11
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:14 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:12
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:4 #: allianceauth/templates/allianceauth/top-menu-rh-default.html:4
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:6 #: allianceauth/templates/allianceauth/top-menu-rh-default.html:6
msgid "Add Character" msgid "Add Character"
msgstr "Charakter hinzufügen" msgstr "Charakter hinzufügen"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:16 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:14
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:17 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:15
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:10 #: allianceauth/templates/allianceauth/top-menu-rh-default.html:10
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:12 #: allianceauth/templates/allianceauth/top-menu-rh-default.html:12
msgid "Change Main" msgid "Change Main"
msgstr "Hauptcharakter ändern" msgstr "Hauptcharakter ändern"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:24 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:22
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:89 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:89
#: allianceauth/groupmanagement/templates/groupmanagement/groupmembership.html:23 #: allianceauth/groupmanagement/templates/groupmanagement/groupmembership.html:23
#: allianceauth/groupmanagement/templates/groupmanagement/groups.html:31 #: allianceauth/groupmanagement/templates/groupmanagement/groups.html:31
@@ -162,12 +186,12 @@ msgstr "Hauptcharakter ändern"
msgid "Name" msgid "Name"
msgstr "Name" msgstr "Name"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:25 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:23
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticsview.html:33 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticsview.html:33
msgid "Corp" msgid "Corp"
msgstr "Corp" msgstr "Corp"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:26 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:24
#: allianceauth/corputils/templates/corputils/corpstats.html:125 #: allianceauth/corputils/templates/corputils/corpstats.html:125
#: allianceauth/hrapplications/templates/hrapplications/view.html:63 #: allianceauth/hrapplications/templates/hrapplications/view.html:63
msgid "Alliance" msgid "Alliance"
@@ -177,7 +201,7 @@ msgstr "Allianz"
msgid "Membership" msgid "Membership"
msgstr "Mitgliedschaft" msgstr "Mitgliedschaft"
#: allianceauth/authentication/templates/authentication/dashboard_groups.html:8 #: allianceauth/authentication/templates/authentication/dashboard_groups.html:10
msgid "State:" msgid "State:"
msgstr "Status:" msgstr "Status:"
@@ -423,6 +447,19 @@ msgstr "Ausgewählte Corp hat bereits ein Statistik Modul."
msgid "Failed to gather corporation statistics with selected token." msgid "Failed to gather corporation statistics with selected token."
msgstr "Fehler beim Sammeln von Corpstatistiken mit ausgewählten Token." msgstr "Fehler beim Sammeln von Corpstatistiken mit ausgewählten Token."
#: allianceauth/custom_css/apps.py:13 allianceauth/custom_css/models.py:36
#: allianceauth/custom_css/models.py:37 allianceauth/custom_css/models.py:47
msgid "Custom CSS"
msgstr "Eigenes CSS"
#: allianceauth/custom_css/models.py:25
msgid "Your custom CSS"
msgstr "Dein eigenes CSS"
#: allianceauth/custom_css/models.py:26
msgid "This CSS will be added to the site after the default CSS."
msgstr "Dieses CSS wird der Site nach dem Standard-CSS hinzugefügt."
#: allianceauth/fleetactivitytracking/auth_hooks.py:10 #: allianceauth/fleetactivitytracking/auth_hooks.py:10
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/characternotexisting.html:10 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/characternotexisting.html:10
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkcreate.html:11 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkcreate.html:11
@@ -515,8 +552,8 @@ msgstr "Benutzername"
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkmodify.html:37 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkmodify.html:37
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:42 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:42
#: allianceauth/optimer/form.py:13 allianceauth/timerboard/form.py:59 #: allianceauth/optimer/form.py:13 allianceauth/timerboard/form.py:37
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:16 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:17
#: allianceauth/timerboard/templates/timerboard/timertable.html:9 #: allianceauth/timerboard/templates/timerboard/timertable.html:9
msgid "System" msgid "System"
msgstr "System" msgstr "System"
@@ -863,7 +900,7 @@ msgstr "Antragsteller"
#: allianceauth/groupmanagement/templates/groupmanagement/audit.html:31 #: allianceauth/groupmanagement/templates/groupmanagement/audit.html:31
#: allianceauth/optimer/templates/optimer/dashboard.ops.html:15 #: allianceauth/optimer/templates/optimer/dashboard.ops.html:15
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:15 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:16
msgid "Type" msgid "Type"
msgstr "Typ" msgstr "Typ"
@@ -955,7 +992,7 @@ msgid "Hidden"
msgstr "Verborgen" msgstr "Verborgen"
#: allianceauth/groupmanagement/templates/groupmanagement/groupmembership.html:45 #: allianceauth/groupmanagement/templates/groupmanagement/groupmembership.html:45
#: allianceauth/templates/allianceauth/admin-status/overview.html:19 #: allianceauth/templates/allianceauth/admin-status/overview.html:16
msgid "Open" msgid "Open"
msgstr "Öffnen" msgstr "Öffnen"
@@ -1439,16 +1476,18 @@ msgstr "Benachrichtigungen"
msgid "Super User" msgid "Super User"
msgstr "Super User" msgstr "Super User"
#: allianceauth/menu/templates/menu/menu-user.html:68 #: allianceauth/menu/templates/menu/menu-user.html:70
#: allianceauth/templates/allianceauth/top-menu-admin.html:9 #: allianceauth/templates/allianceauth/top-menu-admin.html:9
msgid "Admin" msgid "Admin"
msgstr "Admin" msgstr "Admin"
#: allianceauth/menu/templates/menu/menu-user.html:80 #: allianceauth/menu/templates/menu/menu-user.html:82
msgid "Sign Out" msgid "Sign Out"
msgstr "Ausloggen" msgstr "Ausloggen"
#: allianceauth/menu/templates/menu/menu-user.html:84 #: allianceauth/menu/templates/menu/menu-user.html:86
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:17
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:18
msgid "Sign In" msgid "Sign In"
msgstr "Einloggen" msgstr "Einloggen"
@@ -1596,7 +1635,7 @@ msgid "Form Up System"
msgstr "Startsystem" msgstr "Startsystem"
#: allianceauth/optimer/templates/optimer/dashboard.ops.html:17 #: allianceauth/optimer/templates/optimer/dashboard.ops.html:17
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:17 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:18
msgid "EVE Time" msgid "EVE Time"
msgstr "EVE Zeit" msgstr "EVE Zeit"
@@ -1793,17 +1832,17 @@ msgstr ""
" dies war ein Fehler, kontaktiere bitte einen Administrator." " dies war ein Fehler, kontaktiere bitte einen Administrator."
#: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:26 #: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:26
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:20 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:22
msgid "Activate" msgid "Activate"
msgstr "Aktivieren" msgstr "Aktivieren"
#: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:32 #: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:32
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:32 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:34
msgid "Reset Password" msgid "Reset Password"
msgstr "Passwort zurücksetzen" msgstr "Passwort zurücksetzen"
#: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:38 #: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:38
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:38 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:40
msgid "Deactivate" msgid "Deactivate"
msgstr "Deaktivieren" msgstr "Deaktivieren"
@@ -1891,12 +1930,12 @@ msgstr "Setze IPSuite4 Passwort."
msgid "Deactivated IPSuite4 account." msgid "Deactivated IPSuite4 account."
msgstr "IP4Suite Konto deaktiviert." msgstr "IP4Suite Konto deaktiviert."
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:26 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:28
#: allianceauth/services/templates/services/service_password.html:26 #: allianceauth/services/templates/services/service_password.html:26
msgid "Set Password" msgid "Set Password"
msgstr "Setze Passwort" msgstr "Setze Passwort"
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:44 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:46
msgid "Connect" msgid "Connect"
msgstr "Verbinden" msgstr "Verbinden"
@@ -2471,56 +2510,56 @@ msgstr "Änderungen der SRP Flotte %(fleetname)s gespeichert"
msgid "Your Server received an ESI error response code of " msgid "Your Server received an ESI error response code of "
msgstr "Der Server hat einen ESI-Fehlerantwortcode erhalten" msgstr "Der Server hat einen ESI-Fehlerantwortcode erhalten"
#: allianceauth/templates/allianceauth/admin-status/overview.html:11 #: allianceauth/templates/allianceauth/admin-status/overview.html:8
msgid "Alliance Auth Notifications" msgid "Alliance Auth Notifications"
msgstr "Alliance Auth Benachrichtigungen" msgstr "Alliance Auth Benachrichtigungen"
#: allianceauth/templates/allianceauth/admin-status/overview.html:21 #: allianceauth/templates/allianceauth/admin-status/overview.html:18
msgid "Closed" msgid "Closed"
msgstr "Geschlossen" msgstr "Geschlossen"
#: allianceauth/templates/allianceauth/admin-status/overview.html:27 #: allianceauth/templates/allianceauth/admin-status/overview.html:24
msgid "No notifications at this time" msgid "No notifications at this time"
msgstr "Derzeit liegen keine Benachrichtigungen vor" msgstr "Derzeit liegen keine Benachrichtigungen vor"
#: allianceauth/templates/allianceauth/admin-status/overview.html:36 #: allianceauth/templates/allianceauth/admin-status/overview.html:33
msgid "Powered by GitLab" msgid "Powered by GitLab"
msgstr "Unterstützt durch GitLab" msgstr "Unterstützt durch GitLab"
#: allianceauth/templates/allianceauth/admin-status/overview.html:42 #: allianceauth/templates/allianceauth/admin-status/overview.html:39
msgid "Support Discord" msgid "Support Discord"
msgstr "Support Discord" msgstr "Support Discord"
#: allianceauth/templates/allianceauth/admin-status/overview.html:59 #: allianceauth/templates/allianceauth/admin-status/overview.html:53
#: allianceauth/templates/allianceauth/admin-status/overview.html:63 #: allianceauth/templates/allianceauth/admin-status/overview.html:57
msgid "Software Version" msgid "Software Version"
msgstr "Software Version" msgstr "Software Version"
#: allianceauth/templates/allianceauth/admin-status/overview.html:66 #: allianceauth/templates/allianceauth/admin-status/overview.html:60
msgid "Current" msgid "Current"
msgstr "Aktuell" msgstr "Aktuell"
#: allianceauth/templates/allianceauth/admin-status/overview.html:73 #: allianceauth/templates/allianceauth/admin-status/overview.html:67
msgid "Latest Stable" msgid "Latest Stable"
msgstr "Aktuellste stabile Version" msgstr "Aktuellste stabile Version"
#: allianceauth/templates/allianceauth/admin-status/overview.html:78 #: allianceauth/templates/allianceauth/admin-status/overview.html:72
msgid "Update available" msgid "Update available"
msgstr "Update verfügbar" msgstr "Update verfügbar"
#: allianceauth/templates/allianceauth/admin-status/overview.html:86 #: allianceauth/templates/allianceauth/admin-status/overview.html:80
msgid "Latest Pre-Release" msgid "Latest Pre-Release"
msgstr "Aktuellste Testversion" msgstr "Aktuellste Testversion"
#: allianceauth/templates/allianceauth/admin-status/overview.html:91 #: allianceauth/templates/allianceauth/admin-status/overview.html:85
msgid "Pre-Release available" msgid "Pre-Release available"
msgstr "Testversion verfügbar" msgstr "Testversion verfügbar"
#: allianceauth/templates/allianceauth/admin-status/overview.html:102 #: allianceauth/templates/allianceauth/admin-status/overview.html:95
msgid "Task Queue" msgid "Task Queue"
msgstr "Task-Warteschlange" msgstr "Task-Warteschlange"
#: allianceauth/templates/allianceauth/admin-status/overview.html:107 #: allianceauth/templates/allianceauth/admin-status/overview.html:100
#, python-format #, python-format
msgid "" msgid ""
"\n" "\n"
@@ -2530,11 +2569,11 @@ msgstr ""
"\n" "\n"
"Status von %(total)s verarbeiten Aufgaben • in den letzten %(latest)s" "Status von %(total)s verarbeiten Aufgaben • in den letzten %(latest)s"
#: allianceauth/templates/allianceauth/admin-status/overview.html:123 #: allianceauth/templates/allianceauth/admin-status/overview.html:116
msgid "running" msgid "running"
msgstr "laufend" msgstr "laufend"
#: allianceauth/templates/allianceauth/admin-status/overview.html:124 #: allianceauth/templates/allianceauth/admin-status/overview.html:117
msgid "queued" msgid "queued"
msgstr "eingereiht" msgstr "eingereiht"
@@ -2563,114 +2602,216 @@ msgstr "Navigation umschalten"
msgid "Select Theme" msgid "Select Theme"
msgstr "Theme auswählen" msgstr "Theme auswählen"
#: allianceauth/timerboard/form.py:53 #: allianceauth/timerboard/form.py:36
#: allianceauth/timerboard/templates/timerboard/timertable.html:172 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:14
msgid "Other"
msgstr "Anderes"
#: allianceauth/timerboard/form.py:54
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:38
#: allianceauth/timerboard/templates/timerboard/timertable.html:44
msgid "Friendly"
msgstr "Freundlich"
#: allianceauth/timerboard/form.py:55
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:33
#: allianceauth/timerboard/templates/timerboard/timertable.html:38
msgid "Hostile"
msgstr "Feindlich"
#: allianceauth/timerboard/form.py:56
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:43
#: allianceauth/timerboard/templates/timerboard/timertable.html:50
msgid "Neutral"
msgstr "Neutral"
#: allianceauth/timerboard/form.py:58
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:13
#: allianceauth/timerboard/templates/timerboard/timertable.html:7 #: allianceauth/timerboard/templates/timerboard/timertable.html:7
msgid "Details" msgid "Details"
msgstr "Details" msgstr "Details"
#: allianceauth/timerboard/form.py:60 #: allianceauth/timerboard/form.py:38
msgid "Planet/Moon" msgid "Planet/Moon"
msgstr "Planet/Mond" msgstr "Planet/Mond"
#: allianceauth/timerboard/form.py:61 #: allianceauth/timerboard/form.py:39
msgid "Structure Type" msgid "Structure Type"
msgstr "Strukturen Typ" msgstr "Strukturen Typ"
#: allianceauth/timerboard/form.py:62 #: allianceauth/timerboard/form.py:40
msgid "Timer Type" msgid "Timer Type"
msgstr "Timer Typ" msgstr "Timer Typ"
#: allianceauth/timerboard/form.py:63 #: allianceauth/timerboard/form.py:41
#: allianceauth/timerboard/templates/timerboard/timertable.html:8 #: allianceauth/timerboard/templates/timerboard/timertable.html:8
msgid "Objective" msgid "Objective"
msgstr "Ziel" msgstr "Ziel"
#: allianceauth/timerboard/form.py:64 #: allianceauth/timerboard/form.py:42
msgid "Absolute Timer" msgid "Absolute Timer"
msgstr "Absoluter Timer" msgstr "Absoluter Timer"
#: allianceauth/timerboard/form.py:65 #: allianceauth/timerboard/form.py:43
msgid "Date and Time" msgid "Date and Time"
msgstr "Datum und Uhrzeit" msgstr "Datum und Uhrzeit"
#: allianceauth/timerboard/form.py:66 #: allianceauth/timerboard/form.py:44
msgid "Days Remaining" msgid "Days Remaining"
msgstr "Tage verbleibend" msgstr "Tage verbleibend"
#: allianceauth/timerboard/form.py:67 #: allianceauth/timerboard/form.py:45
msgid "Hours Remaining" msgid "Hours Remaining"
msgstr "Stunden verbleibend" msgstr "Stunden verbleibend"
#: allianceauth/timerboard/form.py:69 #: allianceauth/timerboard/form.py:47
msgid "Minutes Remaining" msgid "Minutes Remaining"
msgstr "Minuten verbleibend" msgstr "Minuten verbleibend"
#: allianceauth/timerboard/form.py:71 #: allianceauth/timerboard/form.py:48
msgid "Important" msgid "Important"
msgstr "Wichtig" msgstr "Wichtig"
#: allianceauth/timerboard/form.py:72 #: allianceauth/timerboard/form.py:49
msgid "Corp-Restricted" msgid "Corp-Restricted"
msgstr "Auf Corp beschränkt" msgstr "Auf Corp beschränkt"
#: allianceauth/timerboard/models.py:14 #: allianceauth/timerboard/models.py:15
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:39
#: allianceauth/timerboard/templates/timerboard/timertable.html:36
msgid "Friendly"
msgstr "Freundlich"
#: allianceauth/timerboard/models.py:16
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:34
#: allianceauth/timerboard/templates/timerboard/timertable.html:34
msgid "Hostile"
msgstr "Feindlich"
#: allianceauth/timerboard/models.py:17
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:44
#: allianceauth/timerboard/templates/timerboard/timertable.html:38
msgid "Neutral"
msgstr "Neutral"
#: allianceauth/timerboard/models.py:24
#: allianceauth/timerboard/templates/timerboard/timertable.html:48
msgid "POCO"
msgstr "POCO"
#: allianceauth/timerboard/models.py:25
#: allianceauth/timerboard/templates/timerboard/timertable.html:50
msgid "Orbital Skyhook"
msgstr "Orbital Skyhook"
#: allianceauth/timerboard/models.py:26
#: allianceauth/timerboard/templates/timerboard/timertable.html:52
msgid "I-HUB"
msgstr "I-HUB"
#: allianceauth/timerboard/models.py:27
#: allianceauth/timerboard/templates/timerboard/timertable.html:55
msgid "TCU"
msgstr "TCU"
#: allianceauth/timerboard/models.py:28
#: allianceauth/timerboard/templates/timerboard/timertable.html:57
msgid "POS [S]"
msgstr "POS [S]"
#: allianceauth/timerboard/models.py:29
#: allianceauth/timerboard/templates/timerboard/timertable.html:59
msgid "POS [M]"
msgstr "POS [M]"
#: allianceauth/timerboard/models.py:30
#: allianceauth/timerboard/templates/timerboard/timertable.html:61
msgid "POS [L]"
msgstr "POS [L]"
#: allianceauth/timerboard/models.py:31
#: allianceauth/timerboard/templates/timerboard/timertable.html:63
msgid "Astrahus"
msgstr "Astrahus"
#: allianceauth/timerboard/models.py:32
#: allianceauth/timerboard/templates/timerboard/timertable.html:65
msgid "Fortizar"
msgstr "Fortizar"
#: allianceauth/timerboard/models.py:33
#: allianceauth/timerboard/templates/timerboard/timertable.html:67
msgid "Keepstar"
msgstr "Keepstar"
#: allianceauth/timerboard/models.py:34
#: allianceauth/timerboard/templates/timerboard/timertable.html:69
msgid "Raitaru"
msgstr "Raitaru"
#: allianceauth/timerboard/models.py:35
#: allianceauth/timerboard/templates/timerboard/timertable.html:71
msgid "Azbel"
msgstr "Azbel"
#: allianceauth/timerboard/models.py:36
#: allianceauth/timerboard/templates/timerboard/timertable.html:73
msgid "Sotiyo"
msgstr "Sotiyo"
#: allianceauth/timerboard/models.py:37
#: allianceauth/timerboard/templates/timerboard/timertable.html:75
msgid "Athanor"
msgstr "Athanor"
#: allianceauth/timerboard/models.py:38
#: allianceauth/timerboard/templates/timerboard/timertable.html:77
msgid "Tatara"
msgstr "Tatara"
#: allianceauth/timerboard/models.py:39
msgid "Pharolux Cyno Beacon"
msgstr "Pharolux Cyno Beacon"
#: allianceauth/timerboard/models.py:40
msgid "Tenebrex Cyno Jammer"
msgstr "Tenebrex Cyno Jammer"
#: allianceauth/timerboard/models.py:41
#: allianceauth/timerboard/templates/timerboard/timertable.html:83
msgid "Ansiblex Jump Gate"
msgstr "Ansiblex Jump Gate"
#: allianceauth/timerboard/models.py:42
#: allianceauth/timerboard/templates/timerboard/timertable.html:85
msgid "Moon Mining Cycle"
msgstr "Moon Mining Cycle"
#: allianceauth/timerboard/models.py:43
#: allianceauth/timerboard/templates/timerboard/timertable.html:87
msgid "Metenox Moon Drill"
msgstr "Metenox Moon Drill"
#: allianceauth/timerboard/models.py:44
#: allianceauth/timerboard/templates/timerboard/timertable.html:89
msgid "Other"
msgstr "Anderes"
#: allianceauth/timerboard/models.py:51
msgid "Not Specified" msgid "Not Specified"
msgstr "Keine Angabe" msgstr "Keine Angabe"
#: allianceauth/timerboard/models.py:15 #: allianceauth/timerboard/models.py:52
msgid "Shield" msgid "Shield"
msgstr "Schild" msgstr "Schild"
#: allianceauth/timerboard/models.py:16 #: allianceauth/timerboard/models.py:53
msgid "Armor" msgid "Armor"
msgstr "Panzerung" msgstr "Panzerung"
#: allianceauth/timerboard/models.py:17 #: allianceauth/timerboard/models.py:54
msgid "Hull" msgid "Hull"
msgstr "Hülle" msgstr "Hülle"
#: allianceauth/timerboard/models.py:18 #: allianceauth/timerboard/models.py:55
msgid "Final" msgid "Final"
msgstr "Final" msgstr "Final"
#: allianceauth/timerboard/models.py:19 #: allianceauth/timerboard/models.py:56
msgid "Anchoring" msgid "Anchoring"
msgstr "Ankernd" msgstr "Ankernd"
#: allianceauth/timerboard/models.py:20 #: allianceauth/timerboard/models.py:57
msgid "Unanchoring" msgid "Unanchoring"
msgstr "Entankernd" msgstr "Entankernd"
#: allianceauth/timerboard/models.py:58
msgid "Abandoned"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:7 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:7
#: allianceauth/timerboard/templates/timerboard/view.html:53 #: allianceauth/timerboard/templates/timerboard/view.html:53
msgid "Upcoming Timers" msgid "Upcoming Timers"
msgstr "Bevorstehende Timefr" msgstr "Bevorstehende Timefr"
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:14 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:15
msgid "Timer" msgid "Timer"
msgstr "Timer" msgstr "Timer"
@@ -2714,78 +2855,14 @@ msgstr "Strukturen Timer aktualisieren"
msgid "Structure" msgid "Structure"
msgstr "Struktur" msgstr "Struktur"
#: allianceauth/timerboard/templates/timerboard/timertable.html:64 #: allianceauth/timerboard/templates/timerboard/timertable.html:79
msgid "POCO"
msgstr "POCO"
#: allianceauth/timerboard/templates/timerboard/timertable.html:70
msgid "I-HUB"
msgstr "I-HUB"
#: allianceauth/timerboard/templates/timerboard/timertable.html:76
msgid "TCU"
msgstr "TCU"
#: allianceauth/timerboard/templates/timerboard/timertable.html:82
msgid "POS [S]"
msgstr "POS [S]"
#: allianceauth/timerboard/templates/timerboard/timertable.html:88
msgid "POS [M]"
msgstr "POS [M]"
#: allianceauth/timerboard/templates/timerboard/timertable.html:94
msgid "POS [L]"
msgstr "POS [L]"
#: allianceauth/timerboard/templates/timerboard/timertable.html:100
msgid "Astrahus"
msgstr "Astrahus"
#: allianceauth/timerboard/templates/timerboard/timertable.html:106
msgid "Fortizar"
msgstr "Fortizar"
#: allianceauth/timerboard/templates/timerboard/timertable.html:112
msgid "Keepstar"
msgstr "Keepstar"
#: allianceauth/timerboard/templates/timerboard/timertable.html:118
msgid "Raitaru"
msgstr "Raitaru"
#: allianceauth/timerboard/templates/timerboard/timertable.html:124
msgid "Azbel"
msgstr "Azbel"
#: allianceauth/timerboard/templates/timerboard/timertable.html:130
msgid "Sotiyo"
msgstr "Sotiyo"
#: allianceauth/timerboard/templates/timerboard/timertable.html:136
msgid "Athanor"
msgstr "Athanor"
#: allianceauth/timerboard/templates/timerboard/timertable.html:142
msgid "Tatara"
msgstr "Tatara"
#: allianceauth/timerboard/templates/timerboard/timertable.html:148
msgid "Cyno Beacon" msgid "Cyno Beacon"
msgstr "Cyno Beacon" msgstr "Cyno Beacon"
#: allianceauth/timerboard/templates/timerboard/timertable.html:154 #: allianceauth/timerboard/templates/timerboard/timertable.html:81
msgid "Cyno Jammer" msgid "Cyno Jammer"
msgstr "Cyno Jammer" msgstr "Cyno Jammer"
#: allianceauth/timerboard/templates/timerboard/timertable.html:160
msgid "Ansiblex Jump Gate"
msgstr "Ansiblex Jump Gate"
#: allianceauth/timerboard/templates/timerboard/timertable.html:166
msgid "Moon Mining Cycle"
msgstr "Moon Mining Cycle"
#: allianceauth/timerboard/templates/timerboard/view.html:9 #: allianceauth/timerboard/templates/timerboard/view.html:9
msgid "Structure Timer Management" msgid "Structure Timer Management"
msgstr "Strukturen Timer Verwaltung" msgstr "Strukturen Timer Verwaltung"

View File

@@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-03-13 19:10+1000\n" "POT-Creation-Date: 2024-09-13 19:57+1000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -49,66 +49,90 @@ msgid "You are not allowed to add or remove these restricted groups: %s"
msgstr "" msgstr ""
#: allianceauth/authentication/models.py:71 #: allianceauth/authentication/models.py:71
#: allianceauth/project_template/project_name/settings/base.py:99
msgid "English" msgid "English"
msgstr "" msgstr ""
#: allianceauth/authentication/models.py:72 #: allianceauth/authentication/models.py:72
msgid "German" msgid "Czech"
msgstr "" msgstr ""
#: allianceauth/authentication/models.py:73 #: allianceauth/authentication/models.py:73
msgid "Spanish" #: allianceauth/project_template/project_name/settings/base.py:101
msgid "German"
msgstr "" msgstr ""
#: allianceauth/authentication/models.py:74 #: allianceauth/authentication/models.py:74
msgid "Chinese Simplified" #: allianceauth/project_template/project_name/settings/base.py:102
msgid "Spanish"
msgstr "" msgstr ""
#: allianceauth/authentication/models.py:75 #: allianceauth/authentication/models.py:75
msgid "Russian" #: allianceauth/project_template/project_name/settings/base.py:103
msgstr ""
#: allianceauth/authentication/models.py:76
msgid "Korean"
msgstr ""
#: allianceauth/authentication/models.py:77
msgid "French"
msgstr ""
#: allianceauth/authentication/models.py:78
msgid "Japanese"
msgstr ""
#: allianceauth/authentication/models.py:79
msgid "Italian" msgid "Italian"
msgstr "" msgstr ""
#: allianceauth/authentication/models.py:76
#: allianceauth/project_template/project_name/settings/base.py:104
msgid "Japanese"
msgstr ""
#: allianceauth/authentication/models.py:77
#: allianceauth/project_template/project_name/settings/base.py:105
msgid "Korean"
msgstr ""
#: allianceauth/authentication/models.py:78
#: allianceauth/project_template/project_name/settings/base.py:106
msgid "French"
msgstr ""
#: allianceauth/authentication/models.py:79
#: allianceauth/project_template/project_name/settings/base.py:109
msgid "Russian"
msgstr ""
#: allianceauth/authentication/models.py:80 #: allianceauth/authentication/models.py:80
#: allianceauth/project_template/project_name/settings/base.py:107
msgid "Dutch"
msgstr ""
#: allianceauth/authentication/models.py:81
#: allianceauth/project_template/project_name/settings/base.py:108
msgid "Polish"
msgstr ""
#: allianceauth/authentication/models.py:82
#: allianceauth/project_template/project_name/settings/base.py:110
msgid "Ukrainian" msgid "Ukrainian"
msgstr "" msgstr ""
#: allianceauth/authentication/models.py:96 #: allianceauth/authentication/models.py:83
#: allianceauth/project_template/project_name/settings/base.py:111
msgid "Simplified Chinese"
msgstr ""
#: allianceauth/authentication/models.py:99
#: allianceauth/menu/templates/menu/menu-user.html:42 #: allianceauth/menu/templates/menu/menu-user.html:42
msgid "Language" msgid "Language"
msgstr "" msgstr ""
#: allianceauth/authentication/models.py:101 #: allianceauth/authentication/models.py:104
#: allianceauth/templates/allianceauth/night-toggle.html:6 #: allianceauth/templates/allianceauth/night-toggle.html:6
msgid "Night Mode" msgid "Night Mode"
msgstr "" msgstr ""
#: allianceauth/authentication/models.py:105 #: allianceauth/authentication/models.py:108
#: allianceauth/menu/templates/menu/menu-user.html:46 #: allianceauth/menu/templates/menu/menu-user.html:46
msgid "Theme" msgid "Theme"
msgstr "" msgstr ""
#: allianceauth/authentication/models.py:122 #: allianceauth/authentication/models.py:125
#, python-format #, python-format
msgid "State changed to: %s" msgid "State changed to: %s"
msgstr "" msgstr ""
#: allianceauth/authentication/models.py:123 #: allianceauth/authentication/models.py:126
#, python-format #, python-format
msgid "Your user's state is now: %(state)s" msgid "Your user's state is now: %(state)s"
msgstr "" msgstr ""
@@ -120,27 +144,27 @@ msgstr ""
msgid "Dashboard" msgid "Dashboard"
msgstr "" msgstr ""
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:7 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:5
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticscorpview.html:33 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticscorpview.html:33
#: allianceauth/hrapplications/templates/hrapplications/view.html:54 #: allianceauth/hrapplications/templates/hrapplications/view.html:54
msgid "Characters" msgid "Characters"
msgstr "" msgstr ""
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:13 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:11
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:14 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:12
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:4 #: allianceauth/templates/allianceauth/top-menu-rh-default.html:4
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:6 #: allianceauth/templates/allianceauth/top-menu-rh-default.html:6
msgid "Add Character" msgid "Add Character"
msgstr "" msgstr ""
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:16 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:14
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:17 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:15
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:10 #: allianceauth/templates/allianceauth/top-menu-rh-default.html:10
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:12 #: allianceauth/templates/allianceauth/top-menu-rh-default.html:12
msgid "Change Main" msgid "Change Main"
msgstr "" msgstr ""
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:24 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:22
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:89 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:89
#: allianceauth/groupmanagement/templates/groupmanagement/groupmembership.html:23 #: allianceauth/groupmanagement/templates/groupmanagement/groupmembership.html:23
#: allianceauth/groupmanagement/templates/groupmanagement/groups.html:31 #: allianceauth/groupmanagement/templates/groupmanagement/groups.html:31
@@ -149,12 +173,12 @@ msgstr ""
msgid "Name" msgid "Name"
msgstr "" msgstr ""
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:25 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:23
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticsview.html:33 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticsview.html:33
msgid "Corp" msgid "Corp"
msgstr "" msgstr ""
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:26 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:24
#: allianceauth/corputils/templates/corputils/corpstats.html:125 #: allianceauth/corputils/templates/corputils/corpstats.html:125
#: allianceauth/hrapplications/templates/hrapplications/view.html:63 #: allianceauth/hrapplications/templates/hrapplications/view.html:63
msgid "Alliance" msgid "Alliance"
@@ -164,7 +188,7 @@ msgstr ""
msgid "Membership" msgid "Membership"
msgstr "" msgstr ""
#: allianceauth/authentication/templates/authentication/dashboard_groups.html:8 #: allianceauth/authentication/templates/authentication/dashboard_groups.html:10
msgid "State:" msgid "State:"
msgstr "" msgstr ""
@@ -395,6 +419,19 @@ msgstr ""
msgid "Failed to gather corporation statistics with selected token." msgid "Failed to gather corporation statistics with selected token."
msgstr "" msgstr ""
#: allianceauth/custom_css/apps.py:13 allianceauth/custom_css/models.py:36
#: allianceauth/custom_css/models.py:37 allianceauth/custom_css/models.py:47
msgid "Custom CSS"
msgstr ""
#: allianceauth/custom_css/models.py:25
msgid "Your custom CSS"
msgstr ""
#: allianceauth/custom_css/models.py:26
msgid "This CSS will be added to the site after the default CSS."
msgstr ""
#: allianceauth/fleetactivitytracking/auth_hooks.py:10 #: allianceauth/fleetactivitytracking/auth_hooks.py:10
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/characternotexisting.html:10 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/characternotexisting.html:10
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkcreate.html:11 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkcreate.html:11
@@ -487,8 +524,8 @@ msgstr ""
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkmodify.html:37 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkmodify.html:37
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:42 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:42
#: allianceauth/optimer/form.py:13 allianceauth/timerboard/form.py:59 #: allianceauth/optimer/form.py:13 allianceauth/timerboard/form.py:37
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:16 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:17
#: allianceauth/timerboard/templates/timerboard/timertable.html:9 #: allianceauth/timerboard/templates/timerboard/timertable.html:9
msgid "System" msgid "System"
msgstr "" msgstr ""
@@ -807,7 +844,7 @@ msgstr ""
#: allianceauth/groupmanagement/templates/groupmanagement/audit.html:31 #: allianceauth/groupmanagement/templates/groupmanagement/audit.html:31
#: allianceauth/optimer/templates/optimer/dashboard.ops.html:15 #: allianceauth/optimer/templates/optimer/dashboard.ops.html:15
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:15 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:16
msgid "Type" msgid "Type"
msgstr "" msgstr ""
@@ -899,7 +936,7 @@ msgid "Hidden"
msgstr "" msgstr ""
#: allianceauth/groupmanagement/templates/groupmanagement/groupmembership.html:45 #: allianceauth/groupmanagement/templates/groupmanagement/groupmembership.html:45
#: allianceauth/templates/allianceauth/admin-status/overview.html:19 #: allianceauth/templates/allianceauth/admin-status/overview.html:16
msgid "Open" msgid "Open"
msgstr "" msgstr ""
@@ -1375,16 +1412,18 @@ msgstr ""
msgid "Super User" msgid "Super User"
msgstr "" msgstr ""
#: allianceauth/menu/templates/menu/menu-user.html:68 #: allianceauth/menu/templates/menu/menu-user.html:70
#: allianceauth/templates/allianceauth/top-menu-admin.html:9 #: allianceauth/templates/allianceauth/top-menu-admin.html:9
msgid "Admin" msgid "Admin"
msgstr "" msgstr ""
#: allianceauth/menu/templates/menu/menu-user.html:80 #: allianceauth/menu/templates/menu/menu-user.html:82
msgid "Sign Out" msgid "Sign Out"
msgstr "" msgstr ""
#: allianceauth/menu/templates/menu/menu-user.html:84 #: allianceauth/menu/templates/menu/menu-user.html:86
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:17
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:18
msgid "Sign In" msgid "Sign In"
msgstr "" msgstr ""
@@ -1532,7 +1571,7 @@ msgid "Form Up System"
msgstr "" msgstr ""
#: allianceauth/optimer/templates/optimer/dashboard.ops.html:17 #: allianceauth/optimer/templates/optimer/dashboard.ops.html:17
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:17 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:18
msgid "EVE Time" msgid "EVE Time"
msgstr "" msgstr ""
@@ -1727,17 +1766,17 @@ msgid ""
msgstr "" msgstr ""
#: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:26 #: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:26
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:20 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:22
msgid "Activate" msgid "Activate"
msgstr "" msgstr ""
#: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:32 #: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:32
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:32 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:34
msgid "Reset Password" msgid "Reset Password"
msgstr "" msgstr ""
#: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:38 #: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:38
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:38 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:40
msgid "Deactivate" msgid "Deactivate"
msgstr "" msgstr ""
@@ -1817,12 +1856,12 @@ msgstr ""
msgid "Deactivated IPSuite4 account." msgid "Deactivated IPSuite4 account."
msgstr "" msgstr ""
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:26 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:28
#: allianceauth/services/templates/services/service_password.html:26 #: allianceauth/services/templates/services/service_password.html:26
msgid "Set Password" msgid "Set Password"
msgstr "" msgstr ""
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:44 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:46
msgid "Connect" msgid "Connect"
msgstr "" msgstr ""
@@ -2384,56 +2423,56 @@ msgstr ""
msgid "Your Server received an ESI error response code of " msgid "Your Server received an ESI error response code of "
msgstr "" msgstr ""
#: allianceauth/templates/allianceauth/admin-status/overview.html:11 #: allianceauth/templates/allianceauth/admin-status/overview.html:8
msgid "Alliance Auth Notifications" msgid "Alliance Auth Notifications"
msgstr "" msgstr ""
#: allianceauth/templates/allianceauth/admin-status/overview.html:21 #: allianceauth/templates/allianceauth/admin-status/overview.html:18
msgid "Closed" msgid "Closed"
msgstr "" msgstr ""
#: allianceauth/templates/allianceauth/admin-status/overview.html:27 #: allianceauth/templates/allianceauth/admin-status/overview.html:24
msgid "No notifications at this time" msgid "No notifications at this time"
msgstr "" msgstr ""
#: allianceauth/templates/allianceauth/admin-status/overview.html:36 #: allianceauth/templates/allianceauth/admin-status/overview.html:33
msgid "Powered by GitLab" msgid "Powered by GitLab"
msgstr "" msgstr ""
#: allianceauth/templates/allianceauth/admin-status/overview.html:42 #: allianceauth/templates/allianceauth/admin-status/overview.html:39
msgid "Support Discord" msgid "Support Discord"
msgstr "" msgstr ""
#: allianceauth/templates/allianceauth/admin-status/overview.html:59 #: allianceauth/templates/allianceauth/admin-status/overview.html:53
#: allianceauth/templates/allianceauth/admin-status/overview.html:63 #: allianceauth/templates/allianceauth/admin-status/overview.html:57
msgid "Software Version" msgid "Software Version"
msgstr "" msgstr ""
#: allianceauth/templates/allianceauth/admin-status/overview.html:66 #: allianceauth/templates/allianceauth/admin-status/overview.html:60
msgid "Current" msgid "Current"
msgstr "" msgstr ""
#: allianceauth/templates/allianceauth/admin-status/overview.html:73 #: allianceauth/templates/allianceauth/admin-status/overview.html:67
msgid "Latest Stable" msgid "Latest Stable"
msgstr "" msgstr ""
#: allianceauth/templates/allianceauth/admin-status/overview.html:78 #: allianceauth/templates/allianceauth/admin-status/overview.html:72
msgid "Update available" msgid "Update available"
msgstr "" msgstr ""
#: allianceauth/templates/allianceauth/admin-status/overview.html:86 #: allianceauth/templates/allianceauth/admin-status/overview.html:80
msgid "Latest Pre-Release" msgid "Latest Pre-Release"
msgstr "" msgstr ""
#: allianceauth/templates/allianceauth/admin-status/overview.html:91 #: allianceauth/templates/allianceauth/admin-status/overview.html:85
msgid "Pre-Release available" msgid "Pre-Release available"
msgstr "" msgstr ""
#: allianceauth/templates/allianceauth/admin-status/overview.html:102 #: allianceauth/templates/allianceauth/admin-status/overview.html:95
msgid "Task Queue" msgid "Task Queue"
msgstr "" msgstr ""
#: allianceauth/templates/allianceauth/admin-status/overview.html:107 #: allianceauth/templates/allianceauth/admin-status/overview.html:100
#, python-format #, python-format
msgid "" msgid ""
"\n" "\n"
@@ -2442,11 +2481,11 @@ msgid ""
" " " "
msgstr "" msgstr ""
#: allianceauth/templates/allianceauth/admin-status/overview.html:123 #: allianceauth/templates/allianceauth/admin-status/overview.html:116
msgid "running" msgid "running"
msgstr "" msgstr ""
#: allianceauth/templates/allianceauth/admin-status/overview.html:124 #: allianceauth/templates/allianceauth/admin-status/overview.html:117
msgid "queued" msgid "queued"
msgstr "" msgstr ""
@@ -2475,114 +2514,216 @@ msgstr ""
msgid "Select Theme" msgid "Select Theme"
msgstr "" msgstr ""
#: allianceauth/timerboard/form.py:53 #: allianceauth/timerboard/form.py:36
#: allianceauth/timerboard/templates/timerboard/timertable.html:172 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:14
msgid "Other"
msgstr ""
#: allianceauth/timerboard/form.py:54
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:38
#: allianceauth/timerboard/templates/timerboard/timertable.html:44
msgid "Friendly"
msgstr ""
#: allianceauth/timerboard/form.py:55
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:33
#: allianceauth/timerboard/templates/timerboard/timertable.html:38
msgid "Hostile"
msgstr ""
#: allianceauth/timerboard/form.py:56
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:43
#: allianceauth/timerboard/templates/timerboard/timertable.html:50
msgid "Neutral"
msgstr ""
#: allianceauth/timerboard/form.py:58
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:13
#: allianceauth/timerboard/templates/timerboard/timertable.html:7 #: allianceauth/timerboard/templates/timerboard/timertable.html:7
msgid "Details" msgid "Details"
msgstr "" msgstr ""
#: allianceauth/timerboard/form.py:60 #: allianceauth/timerboard/form.py:38
msgid "Planet/Moon" msgid "Planet/Moon"
msgstr "" msgstr ""
#: allianceauth/timerboard/form.py:61 #: allianceauth/timerboard/form.py:39
msgid "Structure Type" msgid "Structure Type"
msgstr "" msgstr ""
#: allianceauth/timerboard/form.py:62 #: allianceauth/timerboard/form.py:40
msgid "Timer Type" msgid "Timer Type"
msgstr "" msgstr ""
#: allianceauth/timerboard/form.py:63 #: allianceauth/timerboard/form.py:41
#: allianceauth/timerboard/templates/timerboard/timertable.html:8 #: allianceauth/timerboard/templates/timerboard/timertable.html:8
msgid "Objective" msgid "Objective"
msgstr "" msgstr ""
#: allianceauth/timerboard/form.py:64 #: allianceauth/timerboard/form.py:42
msgid "Absolute Timer" msgid "Absolute Timer"
msgstr "" msgstr ""
#: allianceauth/timerboard/form.py:65 #: allianceauth/timerboard/form.py:43
msgid "Date and Time" msgid "Date and Time"
msgstr "" msgstr ""
#: allianceauth/timerboard/form.py:66 #: allianceauth/timerboard/form.py:44
msgid "Days Remaining" msgid "Days Remaining"
msgstr "" msgstr ""
#: allianceauth/timerboard/form.py:67 #: allianceauth/timerboard/form.py:45
msgid "Hours Remaining" msgid "Hours Remaining"
msgstr "" msgstr ""
#: allianceauth/timerboard/form.py:69 #: allianceauth/timerboard/form.py:47
msgid "Minutes Remaining" msgid "Minutes Remaining"
msgstr "" msgstr ""
#: allianceauth/timerboard/form.py:71 #: allianceauth/timerboard/form.py:48
msgid "Important" msgid "Important"
msgstr "" msgstr ""
#: allianceauth/timerboard/form.py:72 #: allianceauth/timerboard/form.py:49
msgid "Corp-Restricted" msgid "Corp-Restricted"
msgstr "" msgstr ""
#: allianceauth/timerboard/models.py:14
msgid "Not Specified"
msgstr ""
#: allianceauth/timerboard/models.py:15 #: allianceauth/timerboard/models.py:15
msgid "Shield" #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:39
#: allianceauth/timerboard/templates/timerboard/timertable.html:36
msgid "Friendly"
msgstr "" msgstr ""
#: allianceauth/timerboard/models.py:16 #: allianceauth/timerboard/models.py:16
msgid "Armor" #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:34
#: allianceauth/timerboard/templates/timerboard/timertable.html:34
msgid "Hostile"
msgstr "" msgstr ""
#: allianceauth/timerboard/models.py:17 #: allianceauth/timerboard/models.py:17
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:44
#: allianceauth/timerboard/templates/timerboard/timertable.html:38
msgid "Neutral"
msgstr ""
#: allianceauth/timerboard/models.py:24
#: allianceauth/timerboard/templates/timerboard/timertable.html:48
msgid "POCO"
msgstr ""
#: allianceauth/timerboard/models.py:25
#: allianceauth/timerboard/templates/timerboard/timertable.html:50
msgid "Orbital Skyhook"
msgstr ""
#: allianceauth/timerboard/models.py:26
#: allianceauth/timerboard/templates/timerboard/timertable.html:52
msgid "I-HUB"
msgstr ""
#: allianceauth/timerboard/models.py:27
#: allianceauth/timerboard/templates/timerboard/timertable.html:55
msgid "TCU"
msgstr ""
#: allianceauth/timerboard/models.py:28
#: allianceauth/timerboard/templates/timerboard/timertable.html:57
msgid "POS [S]"
msgstr ""
#: allianceauth/timerboard/models.py:29
#: allianceauth/timerboard/templates/timerboard/timertable.html:59
msgid "POS [M]"
msgstr ""
#: allianceauth/timerboard/models.py:30
#: allianceauth/timerboard/templates/timerboard/timertable.html:61
msgid "POS [L]"
msgstr ""
#: allianceauth/timerboard/models.py:31
#: allianceauth/timerboard/templates/timerboard/timertable.html:63
msgid "Astrahus"
msgstr ""
#: allianceauth/timerboard/models.py:32
#: allianceauth/timerboard/templates/timerboard/timertable.html:65
msgid "Fortizar"
msgstr ""
#: allianceauth/timerboard/models.py:33
#: allianceauth/timerboard/templates/timerboard/timertable.html:67
msgid "Keepstar"
msgstr ""
#: allianceauth/timerboard/models.py:34
#: allianceauth/timerboard/templates/timerboard/timertable.html:69
msgid "Raitaru"
msgstr ""
#: allianceauth/timerboard/models.py:35
#: allianceauth/timerboard/templates/timerboard/timertable.html:71
msgid "Azbel"
msgstr ""
#: allianceauth/timerboard/models.py:36
#: allianceauth/timerboard/templates/timerboard/timertable.html:73
msgid "Sotiyo"
msgstr ""
#: allianceauth/timerboard/models.py:37
#: allianceauth/timerboard/templates/timerboard/timertable.html:75
msgid "Athanor"
msgstr ""
#: allianceauth/timerboard/models.py:38
#: allianceauth/timerboard/templates/timerboard/timertable.html:77
msgid "Tatara"
msgstr ""
#: allianceauth/timerboard/models.py:39
msgid "Pharolux Cyno Beacon"
msgstr ""
#: allianceauth/timerboard/models.py:40
msgid "Tenebrex Cyno Jammer"
msgstr ""
#: allianceauth/timerboard/models.py:41
#: allianceauth/timerboard/templates/timerboard/timertable.html:83
msgid "Ansiblex Jump Gate"
msgstr ""
#: allianceauth/timerboard/models.py:42
#: allianceauth/timerboard/templates/timerboard/timertable.html:85
msgid "Moon Mining Cycle"
msgstr ""
#: allianceauth/timerboard/models.py:43
#: allianceauth/timerboard/templates/timerboard/timertable.html:87
msgid "Metenox Moon Drill"
msgstr ""
#: allianceauth/timerboard/models.py:44
#: allianceauth/timerboard/templates/timerboard/timertable.html:89
msgid "Other"
msgstr ""
#: allianceauth/timerboard/models.py:51
msgid "Not Specified"
msgstr ""
#: allianceauth/timerboard/models.py:52
msgid "Shield"
msgstr ""
#: allianceauth/timerboard/models.py:53
msgid "Armor"
msgstr ""
#: allianceauth/timerboard/models.py:54
msgid "Hull" msgid "Hull"
msgstr "" msgstr ""
#: allianceauth/timerboard/models.py:18 #: allianceauth/timerboard/models.py:55
msgid "Final" msgid "Final"
msgstr "" msgstr ""
#: allianceauth/timerboard/models.py:19 #: allianceauth/timerboard/models.py:56
msgid "Anchoring" msgid "Anchoring"
msgstr "" msgstr ""
#: allianceauth/timerboard/models.py:20 #: allianceauth/timerboard/models.py:57
msgid "Unanchoring" msgid "Unanchoring"
msgstr "" msgstr ""
#: allianceauth/timerboard/models.py:58
msgid "Abandoned"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:7 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:7
#: allianceauth/timerboard/templates/timerboard/view.html:53 #: allianceauth/timerboard/templates/timerboard/view.html:53
msgid "Upcoming Timers" msgid "Upcoming Timers"
msgstr "" msgstr ""
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:14 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:15
msgid "Timer" msgid "Timer"
msgstr "" msgstr ""
@@ -2626,78 +2767,14 @@ msgstr ""
msgid "Structure" msgid "Structure"
msgstr "" msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:64 #: allianceauth/timerboard/templates/timerboard/timertable.html:79
msgid "POCO"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:70
msgid "I-HUB"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:76
msgid "TCU"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:82
msgid "POS [S]"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:88
msgid "POS [M]"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:94
msgid "POS [L]"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:100
msgid "Astrahus"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:106
msgid "Fortizar"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:112
msgid "Keepstar"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:118
msgid "Raitaru"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:124
msgid "Azbel"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:130
msgid "Sotiyo"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:136
msgid "Athanor"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:142
msgid "Tatara"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:148
msgid "Cyno Beacon" msgid "Cyno Beacon"
msgstr "" msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:154 #: allianceauth/timerboard/templates/timerboard/timertable.html:81
msgid "Cyno Jammer" msgid "Cyno Jammer"
msgstr "" msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:160
msgid "Ansiblex Jump Gate"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:166
msgid "Moon Mining Cycle"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/view.html:9 #: allianceauth/timerboard/templates/timerboard/view.html:9
msgid "Structure Timer Management" msgid "Structure Timer Management"
msgstr "" msgstr ""

View File

@@ -15,7 +15,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-03-13 19:10+1000\n" "POT-Creation-Date: 2024-09-13 19:57+1000\n"
"PO-Revision-Date: 2023-11-08 13:50+0000\n" "PO-Revision-Date: 2023-11-08 13:50+0000\n"
"Last-Translator: trenus, 2023\n" "Last-Translator: trenus, 2023\n"
"Language-Team: Spanish (https://app.transifex.com/alliance-auth/teams/107430/es/)\n" "Language-Team: Spanish (https://app.transifex.com/alliance-auth/teams/107430/es/)\n"
@@ -58,66 +58,90 @@ msgid "You are not allowed to add or remove these restricted groups: %s"
msgstr "No puedes añadir o eliminar estos grupos restringidos: %s" msgstr "No puedes añadir o eliminar estos grupos restringidos: %s"
#: allianceauth/authentication/models.py:71 #: allianceauth/authentication/models.py:71
#: allianceauth/project_template/project_name/settings/base.py:99
msgid "English" msgid "English"
msgstr "Inglés" msgstr "Inglés"
#: allianceauth/authentication/models.py:72 #: allianceauth/authentication/models.py:72
msgid "Czech"
msgstr ""
#: allianceauth/authentication/models.py:73
#: allianceauth/project_template/project_name/settings/base.py:101
msgid "German" msgid "German"
msgstr "Alemán" msgstr "Alemán"
#: allianceauth/authentication/models.py:73 #: allianceauth/authentication/models.py:74
#: allianceauth/project_template/project_name/settings/base.py:102
msgid "Spanish" msgid "Spanish"
msgstr "Español" msgstr "Español"
#: allianceauth/authentication/models.py:74
msgid "Chinese Simplified"
msgstr "Chino Simplificado"
#: allianceauth/authentication/models.py:75 #: allianceauth/authentication/models.py:75
msgid "Russian" #: allianceauth/project_template/project_name/settings/base.py:103
msgstr "Ruso"
#: allianceauth/authentication/models.py:76
msgid "Korean"
msgstr "Coreano"
#: allianceauth/authentication/models.py:77
msgid "French"
msgstr "Francés"
#: allianceauth/authentication/models.py:78
msgid "Japanese"
msgstr "Japonés"
#: allianceauth/authentication/models.py:79
msgid "Italian" msgid "Italian"
msgstr "Italiano" msgstr "Italiano"
#: allianceauth/authentication/models.py:76
#: allianceauth/project_template/project_name/settings/base.py:104
msgid "Japanese"
msgstr "Japonés"
#: allianceauth/authentication/models.py:77
#: allianceauth/project_template/project_name/settings/base.py:105
msgid "Korean"
msgstr "Coreano"
#: allianceauth/authentication/models.py:78
#: allianceauth/project_template/project_name/settings/base.py:106
msgid "French"
msgstr "Francés"
#: allianceauth/authentication/models.py:79
#: allianceauth/project_template/project_name/settings/base.py:109
msgid "Russian"
msgstr "Ruso"
#: allianceauth/authentication/models.py:80 #: allianceauth/authentication/models.py:80
#: allianceauth/project_template/project_name/settings/base.py:107
msgid "Dutch"
msgstr ""
#: allianceauth/authentication/models.py:81
#: allianceauth/project_template/project_name/settings/base.py:108
msgid "Polish"
msgstr ""
#: allianceauth/authentication/models.py:82
#: allianceauth/project_template/project_name/settings/base.py:110
msgid "Ukrainian" msgid "Ukrainian"
msgstr "" msgstr ""
#: allianceauth/authentication/models.py:96 #: allianceauth/authentication/models.py:83
#: allianceauth/project_template/project_name/settings/base.py:111
msgid "Simplified Chinese"
msgstr ""
#: allianceauth/authentication/models.py:99
#: allianceauth/menu/templates/menu/menu-user.html:42 #: allianceauth/menu/templates/menu/menu-user.html:42
msgid "Language" msgid "Language"
msgstr "Idioma" msgstr "Idioma"
#: allianceauth/authentication/models.py:101 #: allianceauth/authentication/models.py:104
#: allianceauth/templates/allianceauth/night-toggle.html:6 #: allianceauth/templates/allianceauth/night-toggle.html:6
msgid "Night Mode" msgid "Night Mode"
msgstr "Modo Nocturno" msgstr "Modo Nocturno"
#: allianceauth/authentication/models.py:105 #: allianceauth/authentication/models.py:108
#: allianceauth/menu/templates/menu/menu-user.html:46 #: allianceauth/menu/templates/menu/menu-user.html:46
msgid "Theme" msgid "Theme"
msgstr "" msgstr ""
#: allianceauth/authentication/models.py:122 #: allianceauth/authentication/models.py:125
#, python-format #, python-format
msgid "State changed to: %s" msgid "State changed to: %s"
msgstr "Estado cambiado a: %s" msgstr "Estado cambiado a: %s"
#: allianceauth/authentication/models.py:123 #: allianceauth/authentication/models.py:126
#, python-format #, python-format
msgid "Your user's state is now: %(state)s" msgid "Your user's state is now: %(state)s"
msgstr "El estado de su usuario es ahora: %(state)s" msgstr "El estado de su usuario es ahora: %(state)s"
@@ -129,27 +153,27 @@ msgstr "El estado de su usuario es ahora: %(state)s"
msgid "Dashboard" msgid "Dashboard"
msgstr "Página principal" msgstr "Página principal"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:7 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:5
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticscorpview.html:33 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticscorpview.html:33
#: allianceauth/hrapplications/templates/hrapplications/view.html:54 #: allianceauth/hrapplications/templates/hrapplications/view.html:54
msgid "Characters" msgid "Characters"
msgstr "Personajes" msgstr "Personajes"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:13 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:11
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:14 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:12
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:4 #: allianceauth/templates/allianceauth/top-menu-rh-default.html:4
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:6 #: allianceauth/templates/allianceauth/top-menu-rh-default.html:6
msgid "Add Character" msgid "Add Character"
msgstr "Agregar Personaje" msgstr "Agregar Personaje"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:16 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:14
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:17 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:15
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:10 #: allianceauth/templates/allianceauth/top-menu-rh-default.html:10
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:12 #: allianceauth/templates/allianceauth/top-menu-rh-default.html:12
msgid "Change Main" msgid "Change Main"
msgstr "Cambiar Personaje Principal" msgstr "Cambiar Personaje Principal"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:24 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:22
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:89 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:89
#: allianceauth/groupmanagement/templates/groupmanagement/groupmembership.html:23 #: allianceauth/groupmanagement/templates/groupmanagement/groupmembership.html:23
#: allianceauth/groupmanagement/templates/groupmanagement/groups.html:31 #: allianceauth/groupmanagement/templates/groupmanagement/groups.html:31
@@ -158,12 +182,12 @@ msgstr "Cambiar Personaje Principal"
msgid "Name" msgid "Name"
msgstr "Nombre" msgstr "Nombre"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:25 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:23
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticsview.html:33 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticsview.html:33
msgid "Corp" msgid "Corp"
msgstr "Corporación" msgstr "Corporación"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:26 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:24
#: allianceauth/corputils/templates/corputils/corpstats.html:125 #: allianceauth/corputils/templates/corputils/corpstats.html:125
#: allianceauth/hrapplications/templates/hrapplications/view.html:63 #: allianceauth/hrapplications/templates/hrapplications/view.html:63
msgid "Alliance" msgid "Alliance"
@@ -173,7 +197,7 @@ msgstr "Allianza"
msgid "Membership" msgid "Membership"
msgstr "" msgstr ""
#: allianceauth/authentication/templates/authentication/dashboard_groups.html:8 #: allianceauth/authentication/templates/authentication/dashboard_groups.html:10
msgid "State:" msgid "State:"
msgstr "" msgstr ""
@@ -415,6 +439,19 @@ msgid "Failed to gather corporation statistics with selected token."
msgstr "" msgstr ""
"Se fallo en obtener las estadisticas corporativas con el token seleccionado" "Se fallo en obtener las estadisticas corporativas con el token seleccionado"
#: allianceauth/custom_css/apps.py:13 allianceauth/custom_css/models.py:36
#: allianceauth/custom_css/models.py:37 allianceauth/custom_css/models.py:47
msgid "Custom CSS"
msgstr ""
#: allianceauth/custom_css/models.py:25
msgid "Your custom CSS"
msgstr ""
#: allianceauth/custom_css/models.py:26
msgid "This CSS will be added to the site after the default CSS."
msgstr ""
#: allianceauth/fleetactivitytracking/auth_hooks.py:10 #: allianceauth/fleetactivitytracking/auth_hooks.py:10
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/characternotexisting.html:10 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/characternotexisting.html:10
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkcreate.html:11 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkcreate.html:11
@@ -507,8 +544,8 @@ msgstr "Usuario"
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkmodify.html:37 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkmodify.html:37
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:42 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:42
#: allianceauth/optimer/form.py:13 allianceauth/timerboard/form.py:59 #: allianceauth/optimer/form.py:13 allianceauth/timerboard/form.py:37
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:16 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:17
#: allianceauth/timerboard/templates/timerboard/timertable.html:9 #: allianceauth/timerboard/templates/timerboard/timertable.html:9
msgid "System" msgid "System"
msgstr "Sistema" msgstr "Sistema"
@@ -856,7 +893,7 @@ msgstr "Solicitante"
#: allianceauth/groupmanagement/templates/groupmanagement/audit.html:31 #: allianceauth/groupmanagement/templates/groupmanagement/audit.html:31
#: allianceauth/optimer/templates/optimer/dashboard.ops.html:15 #: allianceauth/optimer/templates/optimer/dashboard.ops.html:15
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:15 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:16
msgid "Type" msgid "Type"
msgstr "Tipo" msgstr "Tipo"
@@ -948,7 +985,7 @@ msgid "Hidden"
msgstr "Escondido" msgstr "Escondido"
#: allianceauth/groupmanagement/templates/groupmanagement/groupmembership.html:45 #: allianceauth/groupmanagement/templates/groupmanagement/groupmembership.html:45
#: allianceauth/templates/allianceauth/admin-status/overview.html:19 #: allianceauth/templates/allianceauth/admin-status/overview.html:16
msgid "Open" msgid "Open"
msgstr "Abierto" msgstr "Abierto"
@@ -1429,16 +1466,18 @@ msgstr "Notificaciones"
msgid "Super User" msgid "Super User"
msgstr "" msgstr ""
#: allianceauth/menu/templates/menu/menu-user.html:68 #: allianceauth/menu/templates/menu/menu-user.html:70
#: allianceauth/templates/allianceauth/top-menu-admin.html:9 #: allianceauth/templates/allianceauth/top-menu-admin.html:9
msgid "Admin" msgid "Admin"
msgstr "Administrador" msgstr "Administrador"
#: allianceauth/menu/templates/menu/menu-user.html:80 #: allianceauth/menu/templates/menu/menu-user.html:82
msgid "Sign Out" msgid "Sign Out"
msgstr "" msgstr ""
#: allianceauth/menu/templates/menu/menu-user.html:84 #: allianceauth/menu/templates/menu/menu-user.html:86
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:17
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:18
msgid "Sign In" msgid "Sign In"
msgstr "" msgstr ""
@@ -1586,7 +1625,7 @@ msgid "Form Up System"
msgstr "Sistema de encuentro" msgstr "Sistema de encuentro"
#: allianceauth/optimer/templates/optimer/dashboard.ops.html:17 #: allianceauth/optimer/templates/optimer/dashboard.ops.html:17
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:17 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:18
msgid "EVE Time" msgid "EVE Time"
msgstr "" msgstr ""
@@ -1783,17 +1822,17 @@ msgstr ""
"que se trata de un error, ponte en contacto con un administrador." "que se trata de un error, ponte en contacto con un administrador."
#: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:26 #: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:26
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:20 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:22
msgid "Activate" msgid "Activate"
msgstr "" msgstr ""
#: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:32 #: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:32
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:32 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:34
msgid "Reset Password" msgid "Reset Password"
msgstr "" msgstr ""
#: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:38 #: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:38
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:38 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:40
msgid "Deactivate" msgid "Deactivate"
msgstr "" msgstr ""
@@ -1880,12 +1919,12 @@ msgstr "Establecer contraseña de IPSuite4."
msgid "Deactivated IPSuite4 account." msgid "Deactivated IPSuite4 account."
msgstr "Cuenta IPSuite4 desactivada." msgstr "Cuenta IPSuite4 desactivada."
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:26 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:28
#: allianceauth/services/templates/services/service_password.html:26 #: allianceauth/services/templates/services/service_password.html:26
msgid "Set Password" msgid "Set Password"
msgstr "Cambiar Contraseña" msgstr "Cambiar Contraseña"
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:44 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:46
msgid "Connect" msgid "Connect"
msgstr "" msgstr ""
@@ -2454,56 +2493,56 @@ msgstr "Se guardaron los cambios en el SRP de la flota %(fleetname)s"
msgid "Your Server received an ESI error response code of " msgid "Your Server received an ESI error response code of "
msgstr "" msgstr ""
#: allianceauth/templates/allianceauth/admin-status/overview.html:11 #: allianceauth/templates/allianceauth/admin-status/overview.html:8
msgid "Alliance Auth Notifications" msgid "Alliance Auth Notifications"
msgstr "Notificaciones de Alliance Auth" msgstr "Notificaciones de Alliance Auth"
#: allianceauth/templates/allianceauth/admin-status/overview.html:21 #: allianceauth/templates/allianceauth/admin-status/overview.html:18
msgid "Closed" msgid "Closed"
msgstr "Cerrado" msgstr "Cerrado"
#: allianceauth/templates/allianceauth/admin-status/overview.html:27 #: allianceauth/templates/allianceauth/admin-status/overview.html:24
msgid "No notifications at this time" msgid "No notifications at this time"
msgstr "" msgstr ""
#: allianceauth/templates/allianceauth/admin-status/overview.html:36 #: allianceauth/templates/allianceauth/admin-status/overview.html:33
msgid "Powered by GitLab" msgid "Powered by GitLab"
msgstr "Desarrollado por GitLab" msgstr "Desarrollado por GitLab"
#: allianceauth/templates/allianceauth/admin-status/overview.html:42 #: allianceauth/templates/allianceauth/admin-status/overview.html:39
msgid "Support Discord" msgid "Support Discord"
msgstr "Soporte Discord" msgstr "Soporte Discord"
#: allianceauth/templates/allianceauth/admin-status/overview.html:59 #: allianceauth/templates/allianceauth/admin-status/overview.html:53
#: allianceauth/templates/allianceauth/admin-status/overview.html:63 #: allianceauth/templates/allianceauth/admin-status/overview.html:57
msgid "Software Version" msgid "Software Version"
msgstr "Versión del Software" msgstr "Versión del Software"
#: allianceauth/templates/allianceauth/admin-status/overview.html:66 #: allianceauth/templates/allianceauth/admin-status/overview.html:60
msgid "Current" msgid "Current"
msgstr "Actual" msgstr "Actual"
#: allianceauth/templates/allianceauth/admin-status/overview.html:73 #: allianceauth/templates/allianceauth/admin-status/overview.html:67
msgid "Latest Stable" msgid "Latest Stable"
msgstr "Último Estable" msgstr "Último Estable"
#: allianceauth/templates/allianceauth/admin-status/overview.html:78 #: allianceauth/templates/allianceauth/admin-status/overview.html:72
msgid "Update available" msgid "Update available"
msgstr "Actualizacion Disponible" msgstr "Actualizacion Disponible"
#: allianceauth/templates/allianceauth/admin-status/overview.html:86 #: allianceauth/templates/allianceauth/admin-status/overview.html:80
msgid "Latest Pre-Release" msgid "Latest Pre-Release"
msgstr "Último Pre-Lanzamiento" msgstr "Último Pre-Lanzamiento"
#: allianceauth/templates/allianceauth/admin-status/overview.html:91 #: allianceauth/templates/allianceauth/admin-status/overview.html:85
msgid "Pre-Release available" msgid "Pre-Release available"
msgstr "Pre-Lanzamiento disponible" msgstr "Pre-Lanzamiento disponible"
#: allianceauth/templates/allianceauth/admin-status/overview.html:102 #: allianceauth/templates/allianceauth/admin-status/overview.html:95
msgid "Task Queue" msgid "Task Queue"
msgstr "Cola de Tareas" msgstr "Cola de Tareas"
#: allianceauth/templates/allianceauth/admin-status/overview.html:107 #: allianceauth/templates/allianceauth/admin-status/overview.html:100
#, python-format #, python-format
msgid "" msgid ""
"\n" "\n"
@@ -2511,11 +2550,11 @@ msgid ""
" " " "
msgstr "" msgstr ""
#: allianceauth/templates/allianceauth/admin-status/overview.html:123 #: allianceauth/templates/allianceauth/admin-status/overview.html:116
msgid "running" msgid "running"
msgstr "" msgstr ""
#: allianceauth/templates/allianceauth/admin-status/overview.html:124 #: allianceauth/templates/allianceauth/admin-status/overview.html:117
msgid "queued" msgid "queued"
msgstr "" msgstr ""
@@ -2544,114 +2583,216 @@ msgstr "Navegacion"
msgid "Select Theme" msgid "Select Theme"
msgstr "" msgstr ""
#: allianceauth/timerboard/form.py:53 #: allianceauth/timerboard/form.py:36
#: allianceauth/timerboard/templates/timerboard/timertable.html:172 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:14
msgid "Other"
msgstr "Otro"
#: allianceauth/timerboard/form.py:54
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:38
#: allianceauth/timerboard/templates/timerboard/timertable.html:44
msgid "Friendly"
msgstr "Amigable"
#: allianceauth/timerboard/form.py:55
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:33
#: allianceauth/timerboard/templates/timerboard/timertable.html:38
msgid "Hostile"
msgstr "Hostil"
#: allianceauth/timerboard/form.py:56
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:43
#: allianceauth/timerboard/templates/timerboard/timertable.html:50
msgid "Neutral"
msgstr "Neutral"
#: allianceauth/timerboard/form.py:58
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:13
#: allianceauth/timerboard/templates/timerboard/timertable.html:7 #: allianceauth/timerboard/templates/timerboard/timertable.html:7
msgid "Details" msgid "Details"
msgstr "Detalles" msgstr "Detalles"
#: allianceauth/timerboard/form.py:60 #: allianceauth/timerboard/form.py:38
msgid "Planet/Moon" msgid "Planet/Moon"
msgstr "Planeta/Luna" msgstr "Planeta/Luna"
#: allianceauth/timerboard/form.py:61 #: allianceauth/timerboard/form.py:39
msgid "Structure Type" msgid "Structure Type"
msgstr "Tipo de Estructura" msgstr "Tipo de Estructura"
#: allianceauth/timerboard/form.py:62 #: allianceauth/timerboard/form.py:40
msgid "Timer Type" msgid "Timer Type"
msgstr "Tipo de temporizador" msgstr "Tipo de temporizador"
#: allianceauth/timerboard/form.py:63 #: allianceauth/timerboard/form.py:41
#: allianceauth/timerboard/templates/timerboard/timertable.html:8 #: allianceauth/timerboard/templates/timerboard/timertable.html:8
msgid "Objective" msgid "Objective"
msgstr "Objetivo" msgstr "Objetivo"
#: allianceauth/timerboard/form.py:64 #: allianceauth/timerboard/form.py:42
msgid "Absolute Timer" msgid "Absolute Timer"
msgstr "" msgstr ""
#: allianceauth/timerboard/form.py:65 #: allianceauth/timerboard/form.py:43
msgid "Date and Time" msgid "Date and Time"
msgstr "" msgstr ""
#: allianceauth/timerboard/form.py:66 #: allianceauth/timerboard/form.py:44
msgid "Days Remaining" msgid "Days Remaining"
msgstr "Dias restantes" msgstr "Dias restantes"
#: allianceauth/timerboard/form.py:67 #: allianceauth/timerboard/form.py:45
msgid "Hours Remaining" msgid "Hours Remaining"
msgstr "Horas Restantes" msgstr "Horas Restantes"
#: allianceauth/timerboard/form.py:69 #: allianceauth/timerboard/form.py:47
msgid "Minutes Remaining" msgid "Minutes Remaining"
msgstr "Minutos Restantes" msgstr "Minutos Restantes"
#: allianceauth/timerboard/form.py:71 #: allianceauth/timerboard/form.py:48
msgid "Important" msgid "Important"
msgstr "Importante" msgstr "Importante"
#: allianceauth/timerboard/form.py:72 #: allianceauth/timerboard/form.py:49
msgid "Corp-Restricted" msgid "Corp-Restricted"
msgstr "Restringido a Corp" msgstr "Restringido a Corp"
#: allianceauth/timerboard/models.py:14 #: allianceauth/timerboard/models.py:15
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:39
#: allianceauth/timerboard/templates/timerboard/timertable.html:36
msgid "Friendly"
msgstr "Amigable"
#: allianceauth/timerboard/models.py:16
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:34
#: allianceauth/timerboard/templates/timerboard/timertable.html:34
msgid "Hostile"
msgstr "Hostil"
#: allianceauth/timerboard/models.py:17
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:44
#: allianceauth/timerboard/templates/timerboard/timertable.html:38
msgid "Neutral"
msgstr "Neutral"
#: allianceauth/timerboard/models.py:24
#: allianceauth/timerboard/templates/timerboard/timertable.html:48
msgid "POCO"
msgstr ""
#: allianceauth/timerboard/models.py:25
#: allianceauth/timerboard/templates/timerboard/timertable.html:50
msgid "Orbital Skyhook"
msgstr ""
#: allianceauth/timerboard/models.py:26
#: allianceauth/timerboard/templates/timerboard/timertable.html:52
msgid "I-HUB"
msgstr ""
#: allianceauth/timerboard/models.py:27
#: allianceauth/timerboard/templates/timerboard/timertable.html:55
msgid "TCU"
msgstr ""
#: allianceauth/timerboard/models.py:28
#: allianceauth/timerboard/templates/timerboard/timertable.html:57
msgid "POS [S]"
msgstr ""
#: allianceauth/timerboard/models.py:29
#: allianceauth/timerboard/templates/timerboard/timertable.html:59
msgid "POS [M]"
msgstr ""
#: allianceauth/timerboard/models.py:30
#: allianceauth/timerboard/templates/timerboard/timertable.html:61
msgid "POS [L]"
msgstr ""
#: allianceauth/timerboard/models.py:31
#: allianceauth/timerboard/templates/timerboard/timertable.html:63
msgid "Astrahus"
msgstr ""
#: allianceauth/timerboard/models.py:32
#: allianceauth/timerboard/templates/timerboard/timertable.html:65
msgid "Fortizar"
msgstr ""
#: allianceauth/timerboard/models.py:33
#: allianceauth/timerboard/templates/timerboard/timertable.html:67
msgid "Keepstar"
msgstr ""
#: allianceauth/timerboard/models.py:34
#: allianceauth/timerboard/templates/timerboard/timertable.html:69
msgid "Raitaru"
msgstr ""
#: allianceauth/timerboard/models.py:35
#: allianceauth/timerboard/templates/timerboard/timertable.html:71
msgid "Azbel"
msgstr ""
#: allianceauth/timerboard/models.py:36
#: allianceauth/timerboard/templates/timerboard/timertable.html:73
msgid "Sotiyo"
msgstr ""
#: allianceauth/timerboard/models.py:37
#: allianceauth/timerboard/templates/timerboard/timertable.html:75
msgid "Athanor"
msgstr ""
#: allianceauth/timerboard/models.py:38
#: allianceauth/timerboard/templates/timerboard/timertable.html:77
msgid "Tatara"
msgstr ""
#: allianceauth/timerboard/models.py:39
msgid "Pharolux Cyno Beacon"
msgstr ""
#: allianceauth/timerboard/models.py:40
msgid "Tenebrex Cyno Jammer"
msgstr ""
#: allianceauth/timerboard/models.py:41
#: allianceauth/timerboard/templates/timerboard/timertable.html:83
msgid "Ansiblex Jump Gate"
msgstr ""
#: allianceauth/timerboard/models.py:42
#: allianceauth/timerboard/templates/timerboard/timertable.html:85
msgid "Moon Mining Cycle"
msgstr ""
#: allianceauth/timerboard/models.py:43
#: allianceauth/timerboard/templates/timerboard/timertable.html:87
msgid "Metenox Moon Drill"
msgstr ""
#: allianceauth/timerboard/models.py:44
#: allianceauth/timerboard/templates/timerboard/timertable.html:89
msgid "Other"
msgstr "Otro"
#: allianceauth/timerboard/models.py:51
msgid "Not Specified" msgid "Not Specified"
msgstr "Sin especificación" msgstr "Sin especificación"
#: allianceauth/timerboard/models.py:15 #: allianceauth/timerboard/models.py:52
msgid "Shield" msgid "Shield"
msgstr "Escudo" msgstr "Escudo"
#: allianceauth/timerboard/models.py:16 #: allianceauth/timerboard/models.py:53
msgid "Armor" msgid "Armor"
msgstr "Armadura" msgstr "Armadura"
#: allianceauth/timerboard/models.py:17 #: allianceauth/timerboard/models.py:54
msgid "Hull" msgid "Hull"
msgstr "Tipo" msgstr "Tipo"
#: allianceauth/timerboard/models.py:18 #: allianceauth/timerboard/models.py:55
msgid "Final" msgid "Final"
msgstr "Final" msgstr "Final"
#: allianceauth/timerboard/models.py:19 #: allianceauth/timerboard/models.py:56
msgid "Anchoring" msgid "Anchoring"
msgstr "Anclando" msgstr "Anclando"
#: allianceauth/timerboard/models.py:20 #: allianceauth/timerboard/models.py:57
msgid "Unanchoring" msgid "Unanchoring"
msgstr "Desanclando" msgstr "Desanclando"
#: allianceauth/timerboard/models.py:58
msgid "Abandoned"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:7 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:7
#: allianceauth/timerboard/templates/timerboard/view.html:53 #: allianceauth/timerboard/templates/timerboard/view.html:53
msgid "Upcoming Timers" msgid "Upcoming Timers"
msgstr "" msgstr ""
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:14 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:15
msgid "Timer" msgid "Timer"
msgstr "" msgstr ""
@@ -2695,78 +2836,14 @@ msgstr "Actualizar Timer de Estructura"
msgid "Structure" msgid "Structure"
msgstr "Estructura" msgstr "Estructura"
#: allianceauth/timerboard/templates/timerboard/timertable.html:64 #: allianceauth/timerboard/templates/timerboard/timertable.html:79
msgid "POCO"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:70
msgid "I-HUB"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:76
msgid "TCU"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:82
msgid "POS [S]"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:88
msgid "POS [M]"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:94
msgid "POS [L]"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:100
msgid "Astrahus"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:106
msgid "Fortizar"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:112
msgid "Keepstar"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:118
msgid "Raitaru"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:124
msgid "Azbel"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:130
msgid "Sotiyo"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:136
msgid "Athanor"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:142
msgid "Tatara"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:148
msgid "Cyno Beacon" msgid "Cyno Beacon"
msgstr "" msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:154 #: allianceauth/timerboard/templates/timerboard/timertable.html:81
msgid "Cyno Jammer" msgid "Cyno Jammer"
msgstr "" msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:160
msgid "Ansiblex Jump Gate"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:166
msgid "Moon Mining Cycle"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/view.html:9 #: allianceauth/timerboard/templates/timerboard/view.html:9
msgid "Structure Timer Management" msgid "Structure Timer Management"
msgstr "Manejo de Timers Estructurales" msgstr "Manejo de Timers Estructurales"

View File

@@ -2,7 +2,7 @@
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package. # This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
# #
# Translators: # Translators:
# Mickael Gr4vity, 2023 # Mickael Gr4vity, 2023
# rockclodbuster, 2023 # rockclodbuster, 2023
@@ -12,15 +12,17 @@
# draktanar KarazGrong <umbre@fallenstarscreations.com>, 2023 # draktanar KarazGrong <umbre@fallenstarscreations.com>, 2023
# Geoffrey Fabbro, 2023 # Geoffrey Fabbro, 2023
# Idea, 2024 # Idea, 2024
# # Joel Falknau <ozirascal@gmail.com>, 2024
# T'rahk Rokym, 2024
#
#, fuzzy #, fuzzy
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-03-13 19:10+1000\n" "POT-Creation-Date: 2024-09-13 19:57+1000\n"
"PO-Revision-Date: 2023-11-08 13:50+0000\n" "PO-Revision-Date: 2023-11-08 13:50+0000\n"
"Last-Translator: Idea, 2024\n" "Last-Translator: T'rahk Rokym, 2024\n"
"Language-Team: French (France) (https://app.transifex.com/alliance-auth/teams/107430/fr_FR/)\n" "Language-Team: French (France) (https://app.transifex.com/alliance-auth/teams/107430/fr_FR/)\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
@@ -69,66 +71,90 @@ msgstr ""
"restreints: %s" "restreints: %s"
#: allianceauth/authentication/models.py:71 #: allianceauth/authentication/models.py:71
#: allianceauth/project_template/project_name/settings/base.py:99
msgid "English" msgid "English"
msgstr "Anglais" msgstr "Anglais"
#: allianceauth/authentication/models.py:72 #: allianceauth/authentication/models.py:72
msgid "Czech"
msgstr ""
#: allianceauth/authentication/models.py:73
#: allianceauth/project_template/project_name/settings/base.py:101
msgid "German" msgid "German"
msgstr "Allemand" msgstr "Allemand"
#: allianceauth/authentication/models.py:73 #: allianceauth/authentication/models.py:74
#: allianceauth/project_template/project_name/settings/base.py:102
msgid "Spanish" msgid "Spanish"
msgstr "Espagnol" msgstr "Espagnol"
#: allianceauth/authentication/models.py:74
msgid "Chinese Simplified"
msgstr "Chinois simplifié"
#: allianceauth/authentication/models.py:75 #: allianceauth/authentication/models.py:75
msgid "Russian" #: allianceauth/project_template/project_name/settings/base.py:103
msgstr "Russe"
#: allianceauth/authentication/models.py:76
msgid "Korean"
msgstr "Coréen"
#: allianceauth/authentication/models.py:77
msgid "French"
msgstr "Français"
#: allianceauth/authentication/models.py:78
msgid "Japanese"
msgstr "Japonais"
#: allianceauth/authentication/models.py:79
msgid "Italian" msgid "Italian"
msgstr "Italien" msgstr "Italien"
#: allianceauth/authentication/models.py:76
#: allianceauth/project_template/project_name/settings/base.py:104
msgid "Japanese"
msgstr "Japonais"
#: allianceauth/authentication/models.py:77
#: allianceauth/project_template/project_name/settings/base.py:105
msgid "Korean"
msgstr "Coréen"
#: allianceauth/authentication/models.py:78
#: allianceauth/project_template/project_name/settings/base.py:106
msgid "French"
msgstr "Français"
#: allianceauth/authentication/models.py:79
#: allianceauth/project_template/project_name/settings/base.py:109
msgid "Russian"
msgstr "Russe"
#: allianceauth/authentication/models.py:80 #: allianceauth/authentication/models.py:80
#: allianceauth/project_template/project_name/settings/base.py:107
msgid "Dutch"
msgstr ""
#: allianceauth/authentication/models.py:81
#: allianceauth/project_template/project_name/settings/base.py:108
msgid "Polish"
msgstr "Polonais"
#: allianceauth/authentication/models.py:82
#: allianceauth/project_template/project_name/settings/base.py:110
msgid "Ukrainian" msgid "Ukrainian"
msgstr "Ukrainien" msgstr "Ukrainien"
#: allianceauth/authentication/models.py:96 #: allianceauth/authentication/models.py:83
#: allianceauth/project_template/project_name/settings/base.py:111
msgid "Simplified Chinese"
msgstr ""
#: allianceauth/authentication/models.py:99
#: allianceauth/menu/templates/menu/menu-user.html:42 #: allianceauth/menu/templates/menu/menu-user.html:42
msgid "Language" msgid "Language"
msgstr "Langue" msgstr "Langue"
#: allianceauth/authentication/models.py:101 #: allianceauth/authentication/models.py:104
#: allianceauth/templates/allianceauth/night-toggle.html:6 #: allianceauth/templates/allianceauth/night-toggle.html:6
msgid "Night Mode" msgid "Night Mode"
msgstr "Mode Nuit" msgstr "Mode Nuit"
#: allianceauth/authentication/models.py:105 #: allianceauth/authentication/models.py:108
#: allianceauth/menu/templates/menu/menu-user.html:46 #: allianceauth/menu/templates/menu/menu-user.html:46
msgid "Theme" msgid "Theme"
msgstr "Thème" msgstr "Thème"
#: allianceauth/authentication/models.py:122 #: allianceauth/authentication/models.py:125
#, python-format #, python-format
msgid "State changed to: %s" msgid "State changed to: %s"
msgstr "État changé à: %s" msgstr "État changé à: %s"
#: allianceauth/authentication/models.py:123 #: allianceauth/authentication/models.py:126
#, python-format #, python-format
msgid "Your user's state is now: %(state)s" msgid "Your user's state is now: %(state)s"
msgstr "L'état de votre personnage est maintenant: %(state)s" msgstr "L'état de votre personnage est maintenant: %(state)s"
@@ -140,27 +166,27 @@ msgstr "L'état de votre personnage est maintenant: %(state)s"
msgid "Dashboard" msgid "Dashboard"
msgstr "Écran de bord" msgstr "Écran de bord"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:7 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:5
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticscorpview.html:33 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticscorpview.html:33
#: allianceauth/hrapplications/templates/hrapplications/view.html:54 #: allianceauth/hrapplications/templates/hrapplications/view.html:54
msgid "Characters" msgid "Characters"
msgstr "Personnages" msgstr "Personnages"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:13 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:11
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:14 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:12
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:4 #: allianceauth/templates/allianceauth/top-menu-rh-default.html:4
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:6 #: allianceauth/templates/allianceauth/top-menu-rh-default.html:6
msgid "Add Character" msgid "Add Character"
msgstr "Ajouter un Personnage" msgstr "Ajouter un Personnage"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:16 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:14
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:17 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:15
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:10 #: allianceauth/templates/allianceauth/top-menu-rh-default.html:10
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:12 #: allianceauth/templates/allianceauth/top-menu-rh-default.html:12
msgid "Change Main" msgid "Change Main"
msgstr "Changer de Personnage Principal" msgstr "Changer de Personnage Principal"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:24 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:22
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:89 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:89
#: allianceauth/groupmanagement/templates/groupmanagement/groupmembership.html:23 #: allianceauth/groupmanagement/templates/groupmanagement/groupmembership.html:23
#: allianceauth/groupmanagement/templates/groupmanagement/groups.html:31 #: allianceauth/groupmanagement/templates/groupmanagement/groups.html:31
@@ -169,12 +195,12 @@ msgstr "Changer de Personnage Principal"
msgid "Name" msgid "Name"
msgstr "Nom" msgstr "Nom"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:25 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:23
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticsview.html:33 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticsview.html:33
msgid "Corp" msgid "Corp"
msgstr "Corpo" msgstr "Corpo"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:26 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:24
#: allianceauth/corputils/templates/corputils/corpstats.html:125 #: allianceauth/corputils/templates/corputils/corpstats.html:125
#: allianceauth/hrapplications/templates/hrapplications/view.html:63 #: allianceauth/hrapplications/templates/hrapplications/view.html:63
msgid "Alliance" msgid "Alliance"
@@ -184,7 +210,7 @@ msgstr "Alliance"
msgid "Membership" msgid "Membership"
msgstr "Appartenance" msgstr "Appartenance"
#: allianceauth/authentication/templates/authentication/dashboard_groups.html:8 #: allianceauth/authentication/templates/authentication/dashboard_groups.html:10
msgid "State:" msgid "State:"
msgstr "État:" msgstr "État:"
@@ -430,6 +456,19 @@ msgid "Failed to gather corporation statistics with selected token."
msgstr "" msgstr ""
"Impossible d'obtenir les statistiques de la corpo avec le code choisi." "Impossible d'obtenir les statistiques de la corpo avec le code choisi."
#: allianceauth/custom_css/apps.py:13 allianceauth/custom_css/models.py:36
#: allianceauth/custom_css/models.py:37 allianceauth/custom_css/models.py:47
msgid "Custom CSS"
msgstr "CSS personnalisé"
#: allianceauth/custom_css/models.py:25
msgid "Your custom CSS"
msgstr "Votre CSS personnalisé"
#: allianceauth/custom_css/models.py:26
msgid "This CSS will be added to the site after the default CSS."
msgstr "Ce CSS être ajouté sur le site après le CSS par défaut"
#: allianceauth/fleetactivitytracking/auth_hooks.py:10 #: allianceauth/fleetactivitytracking/auth_hooks.py:10
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/characternotexisting.html:10 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/characternotexisting.html:10
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkcreate.html:11 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkcreate.html:11
@@ -522,8 +561,8 @@ msgstr "Utilisateur"
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkmodify.html:37 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkmodify.html:37
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:42 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:42
#: allianceauth/optimer/form.py:13 allianceauth/timerboard/form.py:59 #: allianceauth/optimer/form.py:13 allianceauth/timerboard/form.py:37
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:16 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:17
#: allianceauth/timerboard/templates/timerboard/timertable.html:9 #: allianceauth/timerboard/templates/timerboard/timertable.html:9
msgid "System" msgid "System"
msgstr "Système" msgstr "Système"
@@ -872,7 +911,7 @@ msgstr "Demandeur"
#: allianceauth/groupmanagement/templates/groupmanagement/audit.html:31 #: allianceauth/groupmanagement/templates/groupmanagement/audit.html:31
#: allianceauth/optimer/templates/optimer/dashboard.ops.html:15 #: allianceauth/optimer/templates/optimer/dashboard.ops.html:15
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:15 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:16
msgid "Type" msgid "Type"
msgstr "Type" msgstr "Type"
@@ -964,7 +1003,7 @@ msgid "Hidden"
msgstr "Caché" msgstr "Caché"
#: allianceauth/groupmanagement/templates/groupmanagement/groupmembership.html:45 #: allianceauth/groupmanagement/templates/groupmanagement/groupmembership.html:45
#: allianceauth/templates/allianceauth/admin-status/overview.html:19 #: allianceauth/templates/allianceauth/admin-status/overview.html:16
msgid "Open" msgid "Open"
msgstr "Ouvert" msgstr "Ouvert"
@@ -1448,16 +1487,18 @@ msgstr "Alertes"
msgid "Super User" msgid "Super User"
msgstr "Super Utilisateur" msgstr "Super Utilisateur"
#: allianceauth/menu/templates/menu/menu-user.html:68 #: allianceauth/menu/templates/menu/menu-user.html:70
#: allianceauth/templates/allianceauth/top-menu-admin.html:9 #: allianceauth/templates/allianceauth/top-menu-admin.html:9
msgid "Admin" msgid "Admin"
msgstr "Administrateur" msgstr "Administrateur"
#: allianceauth/menu/templates/menu/menu-user.html:80 #: allianceauth/menu/templates/menu/menu-user.html:82
msgid "Sign Out" msgid "Sign Out"
msgstr "Se Déconnecter" msgstr "Se Déconnecter"
#: allianceauth/menu/templates/menu/menu-user.html:84 #: allianceauth/menu/templates/menu/menu-user.html:86
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:17
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:18
msgid "Sign In" msgid "Sign In"
msgstr "Se Connecter" msgstr "Se Connecter"
@@ -1605,7 +1646,7 @@ msgid "Form Up System"
msgstr "Système de départ" msgstr "Système de départ"
#: allianceauth/optimer/templates/optimer/dashboard.ops.html:17 #: allianceauth/optimer/templates/optimer/dashboard.ops.html:17
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:17 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:18
msgid "EVE Time" msgid "EVE Time"
msgstr "Temps EVE" msgstr "Temps EVE"
@@ -1802,17 +1843,17 @@ msgstr ""
"pensez que c'est une erreur, veuillez contacter un administrateur." "pensez que c'est une erreur, veuillez contacter un administrateur."
#: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:26 #: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:26
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:20 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:22
msgid "Activate" msgid "Activate"
msgstr "Activer" msgstr "Activer"
#: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:32 #: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:32
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:32 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:34
msgid "Reset Password" msgid "Reset Password"
msgstr "Réinitialiser le mot de passe" msgstr "Réinitialiser le mot de passe"
#: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:38 #: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:38
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:38 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:40
msgid "Deactivate" msgid "Deactivate"
msgstr "Désactiver" msgstr "Désactiver"
@@ -1899,12 +1940,12 @@ msgstr "Définir le mot de passe IPSuite4."
msgid "Deactivated IPSuite4 account." msgid "Deactivated IPSuite4 account."
msgstr "Compte IPSuite4 désactivé." msgstr "Compte IPSuite4 désactivé."
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:26 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:28
#: allianceauth/services/templates/services/service_password.html:26 #: allianceauth/services/templates/services/service_password.html:26
msgid "Set Password" msgid "Set Password"
msgstr "Définir le mot de passe" msgstr "Définir le mot de passe"
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:44 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:46
msgid "Connect" msgid "Connect"
msgstr "Connecter" msgstr "Connecter"
@@ -2477,56 +2518,56 @@ msgstr "Modifications enregistrées de la flotte SRP%(fleetname)s"
msgid "Your Server received an ESI error response code of " msgid "Your Server received an ESI error response code of "
msgstr "Votre serveur a reçu une erreur ESI avec pour code" msgstr "Votre serveur a reçu une erreur ESI avec pour code"
#: allianceauth/templates/allianceauth/admin-status/overview.html:11 #: allianceauth/templates/allianceauth/admin-status/overview.html:8
msgid "Alliance Auth Notifications" msgid "Alliance Auth Notifications"
msgstr "Alertes Alliance Auth" msgstr "Alertes Alliance Auth"
#: allianceauth/templates/allianceauth/admin-status/overview.html:21 #: allianceauth/templates/allianceauth/admin-status/overview.html:18
msgid "Closed" msgid "Closed"
msgstr "Fermé" msgstr "Fermé"
#: allianceauth/templates/allianceauth/admin-status/overview.html:27 #: allianceauth/templates/allianceauth/admin-status/overview.html:24
msgid "No notifications at this time" msgid "No notifications at this time"
msgstr "Aucune notification pour le moment" msgstr "Aucune notification pour le moment"
#: allianceauth/templates/allianceauth/admin-status/overview.html:36 #: allianceauth/templates/allianceauth/admin-status/overview.html:33
msgid "Powered by GitLab" msgid "Powered by GitLab"
msgstr "Propulsé par Gitlab" msgstr "Propulsé par Gitlab"
#: allianceauth/templates/allianceauth/admin-status/overview.html:42 #: allianceauth/templates/allianceauth/admin-status/overview.html:39
msgid "Support Discord" msgid "Support Discord"
msgstr "Support Discord" msgstr "Support Discord"
#: allianceauth/templates/allianceauth/admin-status/overview.html:59 #: allianceauth/templates/allianceauth/admin-status/overview.html:53
#: allianceauth/templates/allianceauth/admin-status/overview.html:63 #: allianceauth/templates/allianceauth/admin-status/overview.html:57
msgid "Software Version" msgid "Software Version"
msgstr "Version du logiciel" msgstr "Version du logiciel"
#: allianceauth/templates/allianceauth/admin-status/overview.html:66 #: allianceauth/templates/allianceauth/admin-status/overview.html:60
msgid "Current" msgid "Current"
msgstr "Actuelle" msgstr "Actuelle"
#: allianceauth/templates/allianceauth/admin-status/overview.html:73 #: allianceauth/templates/allianceauth/admin-status/overview.html:67
msgid "Latest Stable" msgid "Latest Stable"
msgstr "Dernière version stable" msgstr "Dernière version stable"
#: allianceauth/templates/allianceauth/admin-status/overview.html:78 #: allianceauth/templates/allianceauth/admin-status/overview.html:72
msgid "Update available" msgid "Update available"
msgstr "Mise à jour disponible" msgstr "Mise à jour disponible"
#: allianceauth/templates/allianceauth/admin-status/overview.html:86 #: allianceauth/templates/allianceauth/admin-status/overview.html:80
msgid "Latest Pre-Release" msgid "Latest Pre-Release"
msgstr "Dernière Pre-Release" msgstr "Dernière Pre-Release"
#: allianceauth/templates/allianceauth/admin-status/overview.html:91 #: allianceauth/templates/allianceauth/admin-status/overview.html:85
msgid "Pre-Release available" msgid "Pre-Release available"
msgstr "Pre-Release disponible" msgstr "Pre-Release disponible"
#: allianceauth/templates/allianceauth/admin-status/overview.html:102 #: allianceauth/templates/allianceauth/admin-status/overview.html:95
msgid "Task Queue" msgid "Task Queue"
msgstr "File d'attente des tâches" msgstr "File d'attente des tâches"
#: allianceauth/templates/allianceauth/admin-status/overview.html:107 #: allianceauth/templates/allianceauth/admin-status/overview.html:100
#, python-format #, python-format
msgid "" msgid ""
"\n" "\n"
@@ -2536,11 +2577,11 @@ msgstr ""
"\n" "\n"
" Status de %(total)s tâches traitées • %(latest)s restantes" " Status de %(total)s tâches traitées • %(latest)s restantes"
#: allianceauth/templates/allianceauth/admin-status/overview.html:123 #: allianceauth/templates/allianceauth/admin-status/overview.html:116
msgid "running" msgid "running"
msgstr "en cours d'exécution" msgstr "en cours d'exécution"
#: allianceauth/templates/allianceauth/admin-status/overview.html:124 #: allianceauth/templates/allianceauth/admin-status/overview.html:117
msgid "queued" msgid "queued"
msgstr "en attente" msgstr "en attente"
@@ -2569,114 +2610,216 @@ msgstr "Activer navigation"
msgid "Select Theme" msgid "Select Theme"
msgstr "Sélectionner un thème" msgstr "Sélectionner un thème"
#: allianceauth/timerboard/form.py:53 #: allianceauth/timerboard/form.py:36
#: allianceauth/timerboard/templates/timerboard/timertable.html:172 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:14
msgid "Other"
msgstr "Autre"
#: allianceauth/timerboard/form.py:54
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:38
#: allianceauth/timerboard/templates/timerboard/timertable.html:44
msgid "Friendly"
msgstr "Amical"
#: allianceauth/timerboard/form.py:55
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:33
#: allianceauth/timerboard/templates/timerboard/timertable.html:38
msgid "Hostile"
msgstr "Hostile"
#: allianceauth/timerboard/form.py:56
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:43
#: allianceauth/timerboard/templates/timerboard/timertable.html:50
msgid "Neutral"
msgstr "Neutre"
#: allianceauth/timerboard/form.py:58
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:13
#: allianceauth/timerboard/templates/timerboard/timertable.html:7 #: allianceauth/timerboard/templates/timerboard/timertable.html:7
msgid "Details" msgid "Details"
msgstr "Details" msgstr "Details"
#: allianceauth/timerboard/form.py:60 #: allianceauth/timerboard/form.py:38
msgid "Planet/Moon" msgid "Planet/Moon"
msgstr "Planète/Lune" msgstr "Planète/Lune"
#: allianceauth/timerboard/form.py:61 #: allianceauth/timerboard/form.py:39
msgid "Structure Type" msgid "Structure Type"
msgstr "Type de structure" msgstr "Type de structure"
#: allianceauth/timerboard/form.py:62 #: allianceauth/timerboard/form.py:40
msgid "Timer Type" msgid "Timer Type"
msgstr "Type de timer" msgstr "Type de timer"
#: allianceauth/timerboard/form.py:63 #: allianceauth/timerboard/form.py:41
#: allianceauth/timerboard/templates/timerboard/timertable.html:8 #: allianceauth/timerboard/templates/timerboard/timertable.html:8
msgid "Objective" msgid "Objective"
msgstr "Objectif" msgstr "Objectif"
#: allianceauth/timerboard/form.py:64 #: allianceauth/timerboard/form.py:42
msgid "Absolute Timer" msgid "Absolute Timer"
msgstr "Minuterie absolue" msgstr "Minuterie absolue"
#: allianceauth/timerboard/form.py:65 #: allianceauth/timerboard/form.py:43
msgid "Date and Time" msgid "Date and Time"
msgstr "Date et heure" msgstr "Date et heure"
#: allianceauth/timerboard/form.py:66 #: allianceauth/timerboard/form.py:44
msgid "Days Remaining" msgid "Days Remaining"
msgstr "Jour restants" msgstr "Jour restants"
#: allianceauth/timerboard/form.py:67 #: allianceauth/timerboard/form.py:45
msgid "Hours Remaining" msgid "Hours Remaining"
msgstr "Heures restantes" msgstr "Heures restantes"
#: allianceauth/timerboard/form.py:69 #: allianceauth/timerboard/form.py:47
msgid "Minutes Remaining" msgid "Minutes Remaining"
msgstr "Minutes restantes" msgstr "Minutes restantes"
#: allianceauth/timerboard/form.py:71 #: allianceauth/timerboard/form.py:48
msgid "Important" msgid "Important"
msgstr "Important" msgstr "Important"
#: allianceauth/timerboard/form.py:72 #: allianceauth/timerboard/form.py:49
msgid "Corp-Restricted" msgid "Corp-Restricted"
msgstr "Limité à la Corporation" msgstr "Limité à la Corporation"
#: allianceauth/timerboard/models.py:14 #: allianceauth/timerboard/models.py:15
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:39
#: allianceauth/timerboard/templates/timerboard/timertable.html:36
msgid "Friendly"
msgstr "Amical"
#: allianceauth/timerboard/models.py:16
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:34
#: allianceauth/timerboard/templates/timerboard/timertable.html:34
msgid "Hostile"
msgstr "Hostile"
#: allianceauth/timerboard/models.py:17
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:44
#: allianceauth/timerboard/templates/timerboard/timertable.html:38
msgid "Neutral"
msgstr "Neutre"
#: allianceauth/timerboard/models.py:24
#: allianceauth/timerboard/templates/timerboard/timertable.html:48
msgid "POCO"
msgstr "POCO"
#: allianceauth/timerboard/models.py:25
#: allianceauth/timerboard/templates/timerboard/timertable.html:50
msgid "Orbital Skyhook"
msgstr ""
#: allianceauth/timerboard/models.py:26
#: allianceauth/timerboard/templates/timerboard/timertable.html:52
msgid "I-HUB"
msgstr "I-HUB"
#: allianceauth/timerboard/models.py:27
#: allianceauth/timerboard/templates/timerboard/timertable.html:55
msgid "TCU"
msgstr "TCU"
#: allianceauth/timerboard/models.py:28
#: allianceauth/timerboard/templates/timerboard/timertable.html:57
msgid "POS [S]"
msgstr "POS [S]"
#: allianceauth/timerboard/models.py:29
#: allianceauth/timerboard/templates/timerboard/timertable.html:59
msgid "POS [M]"
msgstr "POS [M]"
#: allianceauth/timerboard/models.py:30
#: allianceauth/timerboard/templates/timerboard/timertable.html:61
msgid "POS [L]"
msgstr "POS [L]"
#: allianceauth/timerboard/models.py:31
#: allianceauth/timerboard/templates/timerboard/timertable.html:63
msgid "Astrahus"
msgstr "Astrahus"
#: allianceauth/timerboard/models.py:32
#: allianceauth/timerboard/templates/timerboard/timertable.html:65
msgid "Fortizar"
msgstr "Fortizar"
#: allianceauth/timerboard/models.py:33
#: allianceauth/timerboard/templates/timerboard/timertable.html:67
msgid "Keepstar"
msgstr "Keepstar"
#: allianceauth/timerboard/models.py:34
#: allianceauth/timerboard/templates/timerboard/timertable.html:69
msgid "Raitaru"
msgstr "Raitaru"
#: allianceauth/timerboard/models.py:35
#: allianceauth/timerboard/templates/timerboard/timertable.html:71
msgid "Azbel"
msgstr "Azbel"
#: allianceauth/timerboard/models.py:36
#: allianceauth/timerboard/templates/timerboard/timertable.html:73
msgid "Sotiyo"
msgstr "Sotiyo"
#: allianceauth/timerboard/models.py:37
#: allianceauth/timerboard/templates/timerboard/timertable.html:75
msgid "Athanor"
msgstr "Athanor"
#: allianceauth/timerboard/models.py:38
#: allianceauth/timerboard/templates/timerboard/timertable.html:77
msgid "Tatara"
msgstr "Tatara"
#: allianceauth/timerboard/models.py:39
msgid "Pharolux Cyno Beacon"
msgstr ""
#: allianceauth/timerboard/models.py:40
msgid "Tenebrex Cyno Jammer"
msgstr ""
#: allianceauth/timerboard/models.py:41
#: allianceauth/timerboard/templates/timerboard/timertable.html:83
msgid "Ansiblex Jump Gate"
msgstr "Porte de saut Ansiblex"
#: allianceauth/timerboard/models.py:42
#: allianceauth/timerboard/templates/timerboard/timertable.html:85
msgid "Moon Mining Cycle"
msgstr "Cycle dextraction de lune"
#: allianceauth/timerboard/models.py:43
#: allianceauth/timerboard/templates/timerboard/timertable.html:87
msgid "Metenox Moon Drill"
msgstr ""
#: allianceauth/timerboard/models.py:44
#: allianceauth/timerboard/templates/timerboard/timertable.html:89
msgid "Other"
msgstr "Autre"
#: allianceauth/timerboard/models.py:51
msgid "Not Specified" msgid "Not Specified"
msgstr "Non Spécifié" msgstr "Non Spécifié"
#: allianceauth/timerboard/models.py:15 #: allianceauth/timerboard/models.py:52
msgid "Shield" msgid "Shield"
msgstr "Bouclier" msgstr "Bouclier"
#: allianceauth/timerboard/models.py:16 #: allianceauth/timerboard/models.py:53
msgid "Armor" msgid "Armor"
msgstr "Armure" msgstr "Armure"
#: allianceauth/timerboard/models.py:17 #: allianceauth/timerboard/models.py:54
msgid "Hull" msgid "Hull"
msgstr "Coque" msgstr "Coque"
#: allianceauth/timerboard/models.py:18 #: allianceauth/timerboard/models.py:55
msgid "Final" msgid "Final"
msgstr "Final" msgstr "Final"
#: allianceauth/timerboard/models.py:19 #: allianceauth/timerboard/models.py:56
msgid "Anchoring" msgid "Anchoring"
msgstr "Ancrage" msgstr "Ancrage"
#: allianceauth/timerboard/models.py:20 #: allianceauth/timerboard/models.py:57
msgid "Unanchoring" msgid "Unanchoring"
msgstr "Désancrage" msgstr "Désancrage"
#: allianceauth/timerboard/models.py:58
msgid "Abandoned"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:7 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:7
#: allianceauth/timerboard/templates/timerboard/view.html:53 #: allianceauth/timerboard/templates/timerboard/view.html:53
msgid "Upcoming Timers" msgid "Upcoming Timers"
msgstr "Prochaines Échéances" msgstr "Prochaines Échéances"
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:14 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:15
msgid "Timer" msgid "Timer"
msgstr "Échéances" msgstr "Échéances"
@@ -2720,78 +2863,14 @@ msgstr "Mettre à jour le minuteur de structure"
msgid "Structure" msgid "Structure"
msgstr "Structure" msgstr "Structure"
#: allianceauth/timerboard/templates/timerboard/timertable.html:64 #: allianceauth/timerboard/templates/timerboard/timertable.html:79
msgid "POCO"
msgstr "POCO"
#: allianceauth/timerboard/templates/timerboard/timertable.html:70
msgid "I-HUB"
msgstr "I-HUB"
#: allianceauth/timerboard/templates/timerboard/timertable.html:76
msgid "TCU"
msgstr "TCU"
#: allianceauth/timerboard/templates/timerboard/timertable.html:82
msgid "POS [S]"
msgstr "POS [S]"
#: allianceauth/timerboard/templates/timerboard/timertable.html:88
msgid "POS [M]"
msgstr "POS [M]"
#: allianceauth/timerboard/templates/timerboard/timertable.html:94
msgid "POS [L]"
msgstr "POS [L]"
#: allianceauth/timerboard/templates/timerboard/timertable.html:100
msgid "Astrahus"
msgstr "Astrahus"
#: allianceauth/timerboard/templates/timerboard/timertable.html:106
msgid "Fortizar"
msgstr "Fortizar"
#: allianceauth/timerboard/templates/timerboard/timertable.html:112
msgid "Keepstar"
msgstr "Keepstar"
#: allianceauth/timerboard/templates/timerboard/timertable.html:118
msgid "Raitaru"
msgstr "Raitaru"
#: allianceauth/timerboard/templates/timerboard/timertable.html:124
msgid "Azbel"
msgstr "Azbel"
#: allianceauth/timerboard/templates/timerboard/timertable.html:130
msgid "Sotiyo"
msgstr "Sotiyo"
#: allianceauth/timerboard/templates/timerboard/timertable.html:136
msgid "Athanor"
msgstr "Athanor"
#: allianceauth/timerboard/templates/timerboard/timertable.html:142
msgid "Tatara"
msgstr "Tatara"
#: allianceauth/timerboard/templates/timerboard/timertable.html:148
msgid "Cyno Beacon" msgid "Cyno Beacon"
msgstr "Balise Cyno" msgstr "Balise Cyno"
#: allianceauth/timerboard/templates/timerboard/timertable.html:154 #: allianceauth/timerboard/templates/timerboard/timertable.html:81
msgid "Cyno Jammer" msgid "Cyno Jammer"
msgstr "Brouilleur de Cyno" msgstr "Brouilleur de Cyno"
#: allianceauth/timerboard/templates/timerboard/timertable.html:160
msgid "Ansiblex Jump Gate"
msgstr "Porte de saut Ansiblex"
#: allianceauth/timerboard/templates/timerboard/timertable.html:166
msgid "Moon Mining Cycle"
msgstr "Cycle dextraction de lune"
#: allianceauth/timerboard/templates/timerboard/view.html:9 #: allianceauth/timerboard/templates/timerboard/view.html:9
msgid "Structure Timer Management" msgid "Structure Timer Management"
msgstr "Gestion des minuteurs de structure" msgstr "Gestion des minuteurs de structure"

View File

@@ -6,16 +6,16 @@
# Translators: # Translators:
# Alessandro Cresti, 2023 # Alessandro Cresti, 2023
# Linus Hope, 2023 # Linus Hope, 2023
# Thomas Turini, 2024 # Tuz, 2024
# #
#, fuzzy #, fuzzy
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-03-13 19:10+1000\n" "POT-Creation-Date: 2024-09-13 19:57+1000\n"
"PO-Revision-Date: 2023-11-08 13:50+0000\n" "PO-Revision-Date: 2023-11-08 13:50+0000\n"
"Last-Translator: Thomas Turini, 2024\n" "Last-Translator: Tuz, 2024\n"
"Language-Team: Italian (Italy) (https://app.transifex.com/alliance-auth/teams/107430/it_IT/)\n" "Language-Team: Italian (Italy) (https://app.transifex.com/alliance-auth/teams/107430/it_IT/)\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
@@ -62,66 +62,90 @@ msgid "You are not allowed to add or remove these restricted groups: %s"
msgstr "Non ti è consentito aggiungere o rimuovere questi gruppi ristretti:%s" msgstr "Non ti è consentito aggiungere o rimuovere questi gruppi ristretti:%s"
#: allianceauth/authentication/models.py:71 #: allianceauth/authentication/models.py:71
#: allianceauth/project_template/project_name/settings/base.py:99
msgid "English" msgid "English"
msgstr "Inglese" msgstr "Inglese"
#: allianceauth/authentication/models.py:72 #: allianceauth/authentication/models.py:72
msgid "Czech"
msgstr ""
#: allianceauth/authentication/models.py:73
#: allianceauth/project_template/project_name/settings/base.py:101
msgid "German" msgid "German"
msgstr "Tedesco" msgstr "Tedesco"
#: allianceauth/authentication/models.py:73 #: allianceauth/authentication/models.py:74
#: allianceauth/project_template/project_name/settings/base.py:102
msgid "Spanish" msgid "Spanish"
msgstr "Spagnolo" msgstr "Spagnolo"
#: allianceauth/authentication/models.py:74
msgid "Chinese Simplified"
msgstr "Cinese semplificato"
#: allianceauth/authentication/models.py:75 #: allianceauth/authentication/models.py:75
msgid "Russian" #: allianceauth/project_template/project_name/settings/base.py:103
msgstr "Russo"
#: allianceauth/authentication/models.py:76
msgid "Korean"
msgstr "Coreano"
#: allianceauth/authentication/models.py:77
msgid "French"
msgstr "Francese"
#: allianceauth/authentication/models.py:78
msgid "Japanese"
msgstr "Giapponese"
#: allianceauth/authentication/models.py:79
msgid "Italian" msgid "Italian"
msgstr "Italiano" msgstr "Italiano"
#: allianceauth/authentication/models.py:76
#: allianceauth/project_template/project_name/settings/base.py:104
msgid "Japanese"
msgstr "Giapponese"
#: allianceauth/authentication/models.py:77
#: allianceauth/project_template/project_name/settings/base.py:105
msgid "Korean"
msgstr "Coreano"
#: allianceauth/authentication/models.py:78
#: allianceauth/project_template/project_name/settings/base.py:106
msgid "French"
msgstr "Francese"
#: allianceauth/authentication/models.py:79
#: allianceauth/project_template/project_name/settings/base.py:109
msgid "Russian"
msgstr "Russo"
#: allianceauth/authentication/models.py:80 #: allianceauth/authentication/models.py:80
#: allianceauth/project_template/project_name/settings/base.py:107
msgid "Dutch"
msgstr ""
#: allianceauth/authentication/models.py:81
#: allianceauth/project_template/project_name/settings/base.py:108
msgid "Polish"
msgstr ""
#: allianceauth/authentication/models.py:82
#: allianceauth/project_template/project_name/settings/base.py:110
msgid "Ukrainian" msgid "Ukrainian"
msgstr "Ucraino" msgstr "Ucraino"
#: allianceauth/authentication/models.py:96 #: allianceauth/authentication/models.py:83
#: allianceauth/project_template/project_name/settings/base.py:111
msgid "Simplified Chinese"
msgstr ""
#: allianceauth/authentication/models.py:99
#: allianceauth/menu/templates/menu/menu-user.html:42 #: allianceauth/menu/templates/menu/menu-user.html:42
msgid "Language" msgid "Language"
msgstr "Lingua" msgstr "Lingua"
#: allianceauth/authentication/models.py:101 #: allianceauth/authentication/models.py:104
#: allianceauth/templates/allianceauth/night-toggle.html:6 #: allianceauth/templates/allianceauth/night-toggle.html:6
msgid "Night Mode" msgid "Night Mode"
msgstr "Modalità scura" msgstr "Modalità scura"
#: allianceauth/authentication/models.py:105 #: allianceauth/authentication/models.py:108
#: allianceauth/menu/templates/menu/menu-user.html:46 #: allianceauth/menu/templates/menu/menu-user.html:46
msgid "Theme" msgid "Theme"
msgstr "Tema" msgstr "Tema"
#: allianceauth/authentication/models.py:122 #: allianceauth/authentication/models.py:125
#, python-format #, python-format
msgid "State changed to: %s" msgid "State changed to: %s"
msgstr "Stato modificato a: %s" msgstr "Stato modificato a: %s"
#: allianceauth/authentication/models.py:123 #: allianceauth/authentication/models.py:126
#, python-format #, python-format
msgid "Your user's state is now: %(state)s" msgid "Your user's state is now: %(state)s"
msgstr "Il tuo stato utente è ora: %(state)s" msgstr "Il tuo stato utente è ora: %(state)s"
@@ -133,27 +157,27 @@ msgstr "Il tuo stato utente è ora: %(state)s"
msgid "Dashboard" msgid "Dashboard"
msgstr "Pannello di controllo" msgstr "Pannello di controllo"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:7 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:5
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticscorpview.html:33 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticscorpview.html:33
#: allianceauth/hrapplications/templates/hrapplications/view.html:54 #: allianceauth/hrapplications/templates/hrapplications/view.html:54
msgid "Characters" msgid "Characters"
msgstr "Personaggi" msgstr "Personaggi"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:13 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:11
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:14 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:12
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:4 #: allianceauth/templates/allianceauth/top-menu-rh-default.html:4
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:6 #: allianceauth/templates/allianceauth/top-menu-rh-default.html:6
msgid "Add Character" msgid "Add Character"
msgstr "Aggiungi personaggio" msgstr "Aggiungi personaggio"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:16 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:14
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:17 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:15
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:10 #: allianceauth/templates/allianceauth/top-menu-rh-default.html:10
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:12 #: allianceauth/templates/allianceauth/top-menu-rh-default.html:12
msgid "Change Main" msgid "Change Main"
msgstr "Cambia personaggio principale" msgstr "Cambia personaggio principale"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:24 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:22
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:89 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:89
#: allianceauth/groupmanagement/templates/groupmanagement/groupmembership.html:23 #: allianceauth/groupmanagement/templates/groupmanagement/groupmembership.html:23
#: allianceauth/groupmanagement/templates/groupmanagement/groups.html:31 #: allianceauth/groupmanagement/templates/groupmanagement/groups.html:31
@@ -162,12 +186,12 @@ msgstr "Cambia personaggio principale"
msgid "Name" msgid "Name"
msgstr "Nome" msgstr "Nome"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:25 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:23
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticsview.html:33 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticsview.html:33
msgid "Corp" msgid "Corp"
msgstr "Corp" msgstr "Corp"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:26 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:24
#: allianceauth/corputils/templates/corputils/corpstats.html:125 #: allianceauth/corputils/templates/corputils/corpstats.html:125
#: allianceauth/hrapplications/templates/hrapplications/view.html:63 #: allianceauth/hrapplications/templates/hrapplications/view.html:63
msgid "Alliance" msgid "Alliance"
@@ -177,7 +201,7 @@ msgstr "Alleanza"
msgid "Membership" msgid "Membership"
msgstr "Appartenenza" msgstr "Appartenenza"
#: allianceauth/authentication/templates/authentication/dashboard_groups.html:8 #: allianceauth/authentication/templates/authentication/dashboard_groups.html:10
msgid "State:" msgid "State:"
msgstr "Stato:" msgstr "Stato:"
@@ -424,6 +448,19 @@ msgstr ""
"Impossibile raccogliere le statistiche sulla corporazione con il token " "Impossibile raccogliere le statistiche sulla corporazione con il token "
"selezionato." "selezionato."
#: allianceauth/custom_css/apps.py:13 allianceauth/custom_css/models.py:36
#: allianceauth/custom_css/models.py:37 allianceauth/custom_css/models.py:47
msgid "Custom CSS"
msgstr ""
#: allianceauth/custom_css/models.py:25
msgid "Your custom CSS"
msgstr ""
#: allianceauth/custom_css/models.py:26
msgid "This CSS will be added to the site after the default CSS."
msgstr ""
#: allianceauth/fleetactivitytracking/auth_hooks.py:10 #: allianceauth/fleetactivitytracking/auth_hooks.py:10
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/characternotexisting.html:10 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/characternotexisting.html:10
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkcreate.html:11 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkcreate.html:11
@@ -517,8 +554,8 @@ msgstr "Utente"
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkmodify.html:37 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkmodify.html:37
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:42 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:42
#: allianceauth/optimer/form.py:13 allianceauth/timerboard/form.py:59 #: allianceauth/optimer/form.py:13 allianceauth/timerboard/form.py:37
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:16 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:17
#: allianceauth/timerboard/templates/timerboard/timertable.html:9 #: allianceauth/timerboard/templates/timerboard/timertable.html:9
msgid "System" msgid "System"
msgstr "Sistema" msgstr "Sistema"
@@ -867,7 +904,7 @@ msgstr "Richiedente"
#: allianceauth/groupmanagement/templates/groupmanagement/audit.html:31 #: allianceauth/groupmanagement/templates/groupmanagement/audit.html:31
#: allianceauth/optimer/templates/optimer/dashboard.ops.html:15 #: allianceauth/optimer/templates/optimer/dashboard.ops.html:15
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:15 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:16
msgid "Type" msgid "Type"
msgstr "Tipo" msgstr "Tipo"
@@ -959,7 +996,7 @@ msgid "Hidden"
msgstr "Nascosto" msgstr "Nascosto"
#: allianceauth/groupmanagement/templates/groupmanagement/groupmembership.html:45 #: allianceauth/groupmanagement/templates/groupmanagement/groupmembership.html:45
#: allianceauth/templates/allianceauth/admin-status/overview.html:19 #: allianceauth/templates/allianceauth/admin-status/overview.html:16
msgid "Open" msgid "Open"
msgstr "Aperto" msgstr "Aperto"
@@ -1446,16 +1483,18 @@ msgstr "Notifiche"
msgid "Super User" msgid "Super User"
msgstr "Super User" msgstr "Super User"
#: allianceauth/menu/templates/menu/menu-user.html:68 #: allianceauth/menu/templates/menu/menu-user.html:70
#: allianceauth/templates/allianceauth/top-menu-admin.html:9 #: allianceauth/templates/allianceauth/top-menu-admin.html:9
msgid "Admin" msgid "Admin"
msgstr "Amministratore" msgstr "Amministratore"
#: allianceauth/menu/templates/menu/menu-user.html:80 #: allianceauth/menu/templates/menu/menu-user.html:82
msgid "Sign Out" msgid "Sign Out"
msgstr "Sign Out" msgstr "Sign Out"
#: allianceauth/menu/templates/menu/menu-user.html:84 #: allianceauth/menu/templates/menu/menu-user.html:86
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:17
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:18
msgid "Sign In" msgid "Sign In"
msgstr "Sign In" msgstr "Sign In"
@@ -1603,7 +1642,7 @@ msgid "Form Up System"
msgstr "Sistema di partenza" msgstr "Sistema di partenza"
#: allianceauth/optimer/templates/optimer/dashboard.ops.html:17 #: allianceauth/optimer/templates/optimer/dashboard.ops.html:17
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:17 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:18
msgid "EVE Time" msgid "EVE Time"
msgstr "" msgstr ""
@@ -1800,17 +1839,17 @@ msgstr ""
"pensi questo sia un errore per favore contatta un ammistratore." "pensi questo sia un errore per favore contatta un ammistratore."
#: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:26 #: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:26
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:20 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:22
msgid "Activate" msgid "Activate"
msgstr "Attivare" msgstr "Attivare"
#: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:32 #: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:32
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:32 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:34
msgid "Reset Password" msgid "Reset Password"
msgstr "Reset Password" msgstr "Reset Password"
#: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:38 #: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:38
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:38 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:40
msgid "Deactivate" msgid "Deactivate"
msgstr "Deattivare" msgstr "Deattivare"
@@ -1897,12 +1936,12 @@ msgstr "Imposta password IPSuite4."
msgid "Deactivated IPSuite4 account." msgid "Deactivated IPSuite4 account."
msgstr "Disattiva account IPSuite4." msgstr "Disattiva account IPSuite4."
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:26 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:28
#: allianceauth/services/templates/services/service_password.html:26 #: allianceauth/services/templates/services/service_password.html:26
msgid "Set Password" msgid "Set Password"
msgstr "Imposta password" msgstr "Imposta password"
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:44 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:46
msgid "Connect" msgid "Connect"
msgstr "Connect" msgstr "Connect"
@@ -2478,56 +2517,56 @@ msgstr "Salvati i cambiamenti al SRP della flotta %(fleetname)s"
msgid "Your Server received an ESI error response code of " msgid "Your Server received an ESI error response code of "
msgstr "Il server ha ricevuto un codice di risposta di errore ESI pari a " msgstr "Il server ha ricevuto un codice di risposta di errore ESI pari a "
#: allianceauth/templates/allianceauth/admin-status/overview.html:11 #: allianceauth/templates/allianceauth/admin-status/overview.html:8
msgid "Alliance Auth Notifications" msgid "Alliance Auth Notifications"
msgstr "Notifiche Auth Alleanza" msgstr "Notifiche Auth Alleanza"
#: allianceauth/templates/allianceauth/admin-status/overview.html:21 #: allianceauth/templates/allianceauth/admin-status/overview.html:18
msgid "Closed" msgid "Closed"
msgstr "Chiuso" msgstr "Chiuso"
#: allianceauth/templates/allianceauth/admin-status/overview.html:27 #: allianceauth/templates/allianceauth/admin-status/overview.html:24
msgid "No notifications at this time" msgid "No notifications at this time"
msgstr "Nessuna notifica al momento" msgstr "Nessuna notifica al momento"
#: allianceauth/templates/allianceauth/admin-status/overview.html:36 #: allianceauth/templates/allianceauth/admin-status/overview.html:33
msgid "Powered by GitLab" msgid "Powered by GitLab"
msgstr "Powered by GitLab" msgstr "Powered by GitLab"
#: allianceauth/templates/allianceauth/admin-status/overview.html:42 #: allianceauth/templates/allianceauth/admin-status/overview.html:39
msgid "Support Discord" msgid "Support Discord"
msgstr "Discord di supporto" msgstr "Discord di supporto"
#: allianceauth/templates/allianceauth/admin-status/overview.html:59 #: allianceauth/templates/allianceauth/admin-status/overview.html:53
#: allianceauth/templates/allianceauth/admin-status/overview.html:63 #: allianceauth/templates/allianceauth/admin-status/overview.html:57
msgid "Software Version" msgid "Software Version"
msgstr "Versione del software" msgstr "Versione del software"
#: allianceauth/templates/allianceauth/admin-status/overview.html:66 #: allianceauth/templates/allianceauth/admin-status/overview.html:60
msgid "Current" msgid "Current"
msgstr "Attuale" msgstr "Attuale"
#: allianceauth/templates/allianceauth/admin-status/overview.html:73 #: allianceauth/templates/allianceauth/admin-status/overview.html:67
msgid "Latest Stable" msgid "Latest Stable"
msgstr "Ultima versione stabile" msgstr "Ultima versione stabile"
#: allianceauth/templates/allianceauth/admin-status/overview.html:78 #: allianceauth/templates/allianceauth/admin-status/overview.html:72
msgid "Update available" msgid "Update available"
msgstr "Aggiornamento disponibile" msgstr "Aggiornamento disponibile"
#: allianceauth/templates/allianceauth/admin-status/overview.html:86 #: allianceauth/templates/allianceauth/admin-status/overview.html:80
msgid "Latest Pre-Release" msgid "Latest Pre-Release"
msgstr "Ultima versione preliminare" msgstr "Ultima versione preliminare"
#: allianceauth/templates/allianceauth/admin-status/overview.html:91 #: allianceauth/templates/allianceauth/admin-status/overview.html:85
msgid "Pre-Release available" msgid "Pre-Release available"
msgstr "Versione preliminare disponibile" msgstr "Versione preliminare disponibile"
#: allianceauth/templates/allianceauth/admin-status/overview.html:102 #: allianceauth/templates/allianceauth/admin-status/overview.html:95
msgid "Task Queue" msgid "Task Queue"
msgstr "Coda delle attività" msgstr "Coda delle attività"
#: allianceauth/templates/allianceauth/admin-status/overview.html:107 #: allianceauth/templates/allianceauth/admin-status/overview.html:100
#, python-format #, python-format
msgid "" msgid ""
"\n" "\n"
@@ -2535,11 +2574,11 @@ msgid ""
" " " "
msgstr "" msgstr ""
#: allianceauth/templates/allianceauth/admin-status/overview.html:123 #: allianceauth/templates/allianceauth/admin-status/overview.html:116
msgid "running" msgid "running"
msgstr "in esecuzione" msgstr "in esecuzione"
#: allianceauth/templates/allianceauth/admin-status/overview.html:124 #: allianceauth/templates/allianceauth/admin-status/overview.html:117
msgid "queued" msgid "queued"
msgstr "in coda" msgstr "in coda"
@@ -2568,114 +2607,216 @@ msgstr "Attiva/disattiva navigazione"
msgid "Select Theme" msgid "Select Theme"
msgstr "Seleziona Tema" msgstr "Seleziona Tema"
#: allianceauth/timerboard/form.py:53 #: allianceauth/timerboard/form.py:36
#: allianceauth/timerboard/templates/timerboard/timertable.html:172 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:14
msgid "Other"
msgstr "Altro"
#: allianceauth/timerboard/form.py:54
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:38
#: allianceauth/timerboard/templates/timerboard/timertable.html:44
msgid "Friendly"
msgstr "Amichevole"
#: allianceauth/timerboard/form.py:55
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:33
#: allianceauth/timerboard/templates/timerboard/timertable.html:38
msgid "Hostile"
msgstr "Ostile"
#: allianceauth/timerboard/form.py:56
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:43
#: allianceauth/timerboard/templates/timerboard/timertable.html:50
msgid "Neutral"
msgstr "Neutrale"
#: allianceauth/timerboard/form.py:58
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:13
#: allianceauth/timerboard/templates/timerboard/timertable.html:7 #: allianceauth/timerboard/templates/timerboard/timertable.html:7
msgid "Details" msgid "Details"
msgstr "Dettagli" msgstr "Dettagli"
#: allianceauth/timerboard/form.py:60 #: allianceauth/timerboard/form.py:38
msgid "Planet/Moon" msgid "Planet/Moon"
msgstr "Pianeta/Luna" msgstr "Pianeta/Luna"
#: allianceauth/timerboard/form.py:61 #: allianceauth/timerboard/form.py:39
msgid "Structure Type" msgid "Structure Type"
msgstr "Tipologia di struttura" msgstr "Tipologia di struttura"
#: allianceauth/timerboard/form.py:62 #: allianceauth/timerboard/form.py:40
msgid "Timer Type" msgid "Timer Type"
msgstr "Tipologia di timer" msgstr "Tipologia di timer"
#: allianceauth/timerboard/form.py:63 #: allianceauth/timerboard/form.py:41
#: allianceauth/timerboard/templates/timerboard/timertable.html:8 #: allianceauth/timerboard/templates/timerboard/timertable.html:8
msgid "Objective" msgid "Objective"
msgstr "Obiettivo" msgstr "Obiettivo"
#: allianceauth/timerboard/form.py:64 #: allianceauth/timerboard/form.py:42
msgid "Absolute Timer" msgid "Absolute Timer"
msgstr "Timer Assoluto" msgstr "Timer Assoluto"
#: allianceauth/timerboard/form.py:65 #: allianceauth/timerboard/form.py:43
msgid "Date and Time" msgid "Date and Time"
msgstr "Data e Ora" msgstr "Data e Ora"
#: allianceauth/timerboard/form.py:66 #: allianceauth/timerboard/form.py:44
msgid "Days Remaining" msgid "Days Remaining"
msgstr "Giorni rimanenti" msgstr "Giorni rimanenti"
#: allianceauth/timerboard/form.py:67 #: allianceauth/timerboard/form.py:45
msgid "Hours Remaining" msgid "Hours Remaining"
msgstr "Ore rimanenti" msgstr "Ore rimanenti"
#: allianceauth/timerboard/form.py:69 #: allianceauth/timerboard/form.py:47
msgid "Minutes Remaining" msgid "Minutes Remaining"
msgstr "Minuti rimanenti " msgstr "Minuti rimanenti "
#: allianceauth/timerboard/form.py:71 #: allianceauth/timerboard/form.py:48
msgid "Important" msgid "Important"
msgstr "Importante" msgstr "Importante"
#: allianceauth/timerboard/form.py:72 #: allianceauth/timerboard/form.py:49
msgid "Corp-Restricted" msgid "Corp-Restricted"
msgstr "Limitato alla corporazione" msgstr "Limitato alla corporazione"
#: allianceauth/timerboard/models.py:14 #: allianceauth/timerboard/models.py:15
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:39
#: allianceauth/timerboard/templates/timerboard/timertable.html:36
msgid "Friendly"
msgstr "Amichevole"
#: allianceauth/timerboard/models.py:16
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:34
#: allianceauth/timerboard/templates/timerboard/timertable.html:34
msgid "Hostile"
msgstr "Ostile"
#: allianceauth/timerboard/models.py:17
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:44
#: allianceauth/timerboard/templates/timerboard/timertable.html:38
msgid "Neutral"
msgstr "Neutrale"
#: allianceauth/timerboard/models.py:24
#: allianceauth/timerboard/templates/timerboard/timertable.html:48
msgid "POCO"
msgstr "POCO"
#: allianceauth/timerboard/models.py:25
#: allianceauth/timerboard/templates/timerboard/timertable.html:50
msgid "Orbital Skyhook"
msgstr ""
#: allianceauth/timerboard/models.py:26
#: allianceauth/timerboard/templates/timerboard/timertable.html:52
msgid "I-HUB"
msgstr "I-HUB"
#: allianceauth/timerboard/models.py:27
#: allianceauth/timerboard/templates/timerboard/timertable.html:55
msgid "TCU"
msgstr "TCU"
#: allianceauth/timerboard/models.py:28
#: allianceauth/timerboard/templates/timerboard/timertable.html:57
msgid "POS [S]"
msgstr "POS [S]"
#: allianceauth/timerboard/models.py:29
#: allianceauth/timerboard/templates/timerboard/timertable.html:59
msgid "POS [M]"
msgstr "POS [M]"
#: allianceauth/timerboard/models.py:30
#: allianceauth/timerboard/templates/timerboard/timertable.html:61
msgid "POS [L]"
msgstr "POS [L]"
#: allianceauth/timerboard/models.py:31
#: allianceauth/timerboard/templates/timerboard/timertable.html:63
msgid "Astrahus"
msgstr "Astrahus"
#: allianceauth/timerboard/models.py:32
#: allianceauth/timerboard/templates/timerboard/timertable.html:65
msgid "Fortizar"
msgstr "Fortizar"
#: allianceauth/timerboard/models.py:33
#: allianceauth/timerboard/templates/timerboard/timertable.html:67
msgid "Keepstar"
msgstr "Keepstar"
#: allianceauth/timerboard/models.py:34
#: allianceauth/timerboard/templates/timerboard/timertable.html:69
msgid "Raitaru"
msgstr "Raitaru"
#: allianceauth/timerboard/models.py:35
#: allianceauth/timerboard/templates/timerboard/timertable.html:71
msgid "Azbel"
msgstr "Azbel"
#: allianceauth/timerboard/models.py:36
#: allianceauth/timerboard/templates/timerboard/timertable.html:73
msgid "Sotiyo"
msgstr "Sotiyo"
#: allianceauth/timerboard/models.py:37
#: allianceauth/timerboard/templates/timerboard/timertable.html:75
msgid "Athanor"
msgstr "Athanor"
#: allianceauth/timerboard/models.py:38
#: allianceauth/timerboard/templates/timerboard/timertable.html:77
msgid "Tatara"
msgstr "Tatara"
#: allianceauth/timerboard/models.py:39
msgid "Pharolux Cyno Beacon"
msgstr ""
#: allianceauth/timerboard/models.py:40
msgid "Tenebrex Cyno Jammer"
msgstr ""
#: allianceauth/timerboard/models.py:41
#: allianceauth/timerboard/templates/timerboard/timertable.html:83
msgid "Ansiblex Jump Gate"
msgstr "Ansiblex Jump Gate"
#: allianceauth/timerboard/models.py:42
#: allianceauth/timerboard/templates/timerboard/timertable.html:85
msgid "Moon Mining Cycle"
msgstr "Moon Mining Cycle"
#: allianceauth/timerboard/models.py:43
#: allianceauth/timerboard/templates/timerboard/timertable.html:87
msgid "Metenox Moon Drill"
msgstr ""
#: allianceauth/timerboard/models.py:44
#: allianceauth/timerboard/templates/timerboard/timertable.html:89
msgid "Other"
msgstr "Altro"
#: allianceauth/timerboard/models.py:51
msgid "Not Specified" msgid "Not Specified"
msgstr "Non specificato" msgstr "Non specificato"
#: allianceauth/timerboard/models.py:15 #: allianceauth/timerboard/models.py:52
msgid "Shield" msgid "Shield"
msgstr "Scudo" msgstr "Scudo"
#: allianceauth/timerboard/models.py:16 #: allianceauth/timerboard/models.py:53
msgid "Armor" msgid "Armor"
msgstr "Armatura" msgstr "Armatura"
#: allianceauth/timerboard/models.py:17 #: allianceauth/timerboard/models.py:54
msgid "Hull" msgid "Hull"
msgstr "Struttura" msgstr "Struttura"
#: allianceauth/timerboard/models.py:18 #: allianceauth/timerboard/models.py:55
msgid "Final" msgid "Final"
msgstr "Ultimo" msgstr "Ultimo"
#: allianceauth/timerboard/models.py:19 #: allianceauth/timerboard/models.py:56
msgid "Anchoring" msgid "Anchoring"
msgstr "In ancoraggio" msgstr "In ancoraggio"
#: allianceauth/timerboard/models.py:20 #: allianceauth/timerboard/models.py:57
msgid "Unanchoring" msgid "Unanchoring"
msgstr "In disancoraggio" msgstr "In disancoraggio"
#: allianceauth/timerboard/models.py:58
msgid "Abandoned"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:7 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:7
#: allianceauth/timerboard/templates/timerboard/view.html:53 #: allianceauth/timerboard/templates/timerboard/view.html:53
msgid "Upcoming Timers" msgid "Upcoming Timers"
msgstr "Prossimi Timer" msgstr "Prossimi Timer"
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:14 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:15
msgid "Timer" msgid "Timer"
msgstr "Timer" msgstr "Timer"
@@ -2719,78 +2860,14 @@ msgstr "Aggiorna timer struttura"
msgid "Structure" msgid "Structure"
msgstr "Struttura" msgstr "Struttura"
#: allianceauth/timerboard/templates/timerboard/timertable.html:64 #: allianceauth/timerboard/templates/timerboard/timertable.html:79
msgid "POCO"
msgstr "POCO"
#: allianceauth/timerboard/templates/timerboard/timertable.html:70
msgid "I-HUB"
msgstr "I-HUB"
#: allianceauth/timerboard/templates/timerboard/timertable.html:76
msgid "TCU"
msgstr "TCU"
#: allianceauth/timerboard/templates/timerboard/timertable.html:82
msgid "POS [S]"
msgstr "POS [S]"
#: allianceauth/timerboard/templates/timerboard/timertable.html:88
msgid "POS [M]"
msgstr "POS [M]"
#: allianceauth/timerboard/templates/timerboard/timertable.html:94
msgid "POS [L]"
msgstr "POS [L]"
#: allianceauth/timerboard/templates/timerboard/timertable.html:100
msgid "Astrahus"
msgstr "Astrahus"
#: allianceauth/timerboard/templates/timerboard/timertable.html:106
msgid "Fortizar"
msgstr "Fortizar"
#: allianceauth/timerboard/templates/timerboard/timertable.html:112
msgid "Keepstar"
msgstr "Keepstar"
#: allianceauth/timerboard/templates/timerboard/timertable.html:118
msgid "Raitaru"
msgstr "Raitaru"
#: allianceauth/timerboard/templates/timerboard/timertable.html:124
msgid "Azbel"
msgstr "Azbel"
#: allianceauth/timerboard/templates/timerboard/timertable.html:130
msgid "Sotiyo"
msgstr "Sotiyo"
#: allianceauth/timerboard/templates/timerboard/timertable.html:136
msgid "Athanor"
msgstr "Athanor"
#: allianceauth/timerboard/templates/timerboard/timertable.html:142
msgid "Tatara"
msgstr "Tatara"
#: allianceauth/timerboard/templates/timerboard/timertable.html:148
msgid "Cyno Beacon" msgid "Cyno Beacon"
msgstr "Cyno Beacon" msgstr "Cyno Beacon"
#: allianceauth/timerboard/templates/timerboard/timertable.html:154 #: allianceauth/timerboard/templates/timerboard/timertable.html:81
msgid "Cyno Jammer" msgid "Cyno Jammer"
msgstr "Cyno Jammer" msgstr "Cyno Jammer"
#: allianceauth/timerboard/templates/timerboard/timertable.html:160
msgid "Ansiblex Jump Gate"
msgstr "Ansiblex Jump Gate"
#: allianceauth/timerboard/templates/timerboard/timertable.html:166
msgid "Moon Mining Cycle"
msgstr "Moon Mining Cycle"
#: allianceauth/timerboard/templates/timerboard/view.html:9 #: allianceauth/timerboard/templates/timerboard/view.html:9
msgid "Structure Timer Management" msgid "Structure Timer Management"
msgstr "Gestione timer strutture" msgstr "Gestione timer strutture"

View File

@@ -13,7 +13,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-03-13 19:10+1000\n" "POT-Creation-Date: 2024-09-13 19:57+1000\n"
"PO-Revision-Date: 2023-11-08 13:50+0000\n" "PO-Revision-Date: 2023-11-08 13:50+0000\n"
"Last-Translator: kotaneko, 2024\n" "Last-Translator: kotaneko, 2024\n"
"Language-Team: Japanese (https://app.transifex.com/alliance-auth/teams/107430/ja/)\n" "Language-Team: Japanese (https://app.transifex.com/alliance-auth/teams/107430/ja/)\n"
@@ -57,66 +57,90 @@ msgid "You are not allowed to add or remove these restricted groups: %s"
msgstr "これらの制限付きグループを追加または削除することはできません。%s" msgstr "これらの制限付きグループを追加または削除することはできません。%s"
#: allianceauth/authentication/models.py:71 #: allianceauth/authentication/models.py:71
#: allianceauth/project_template/project_name/settings/base.py:99
msgid "English" msgid "English"
msgstr "英語" msgstr "英語"
#: allianceauth/authentication/models.py:72 #: allianceauth/authentication/models.py:72
msgid "Czech"
msgstr ""
#: allianceauth/authentication/models.py:73
#: allianceauth/project_template/project_name/settings/base.py:101
msgid "German" msgid "German"
msgstr "ドイツ語" msgstr "ドイツ語"
#: allianceauth/authentication/models.py:73 #: allianceauth/authentication/models.py:74
#: allianceauth/project_template/project_name/settings/base.py:102
msgid "Spanish" msgid "Spanish"
msgstr "スペイン語" msgstr "スペイン語"
#: allianceauth/authentication/models.py:74
msgid "Chinese Simplified"
msgstr "中国語 簡体字"
#: allianceauth/authentication/models.py:75 #: allianceauth/authentication/models.py:75
msgid "Russian" #: allianceauth/project_template/project_name/settings/base.py:103
msgstr "ロシア語"
#: allianceauth/authentication/models.py:76
msgid "Korean"
msgstr "韓国語"
#: allianceauth/authentication/models.py:77
msgid "French"
msgstr "フランス語"
#: allianceauth/authentication/models.py:78
msgid "Japanese"
msgstr "日本語"
#: allianceauth/authentication/models.py:79
msgid "Italian" msgid "Italian"
msgstr "イタリア語" msgstr "イタリア語"
#: allianceauth/authentication/models.py:76
#: allianceauth/project_template/project_name/settings/base.py:104
msgid "Japanese"
msgstr "日本語"
#: allianceauth/authentication/models.py:77
#: allianceauth/project_template/project_name/settings/base.py:105
msgid "Korean"
msgstr "韓国語"
#: allianceauth/authentication/models.py:78
#: allianceauth/project_template/project_name/settings/base.py:106
msgid "French"
msgstr "フランス語"
#: allianceauth/authentication/models.py:79
#: allianceauth/project_template/project_name/settings/base.py:109
msgid "Russian"
msgstr "ロシア語"
#: allianceauth/authentication/models.py:80 #: allianceauth/authentication/models.py:80
#: allianceauth/project_template/project_name/settings/base.py:107
msgid "Dutch"
msgstr ""
#: allianceauth/authentication/models.py:81
#: allianceauth/project_template/project_name/settings/base.py:108
msgid "Polish"
msgstr ""
#: allianceauth/authentication/models.py:82
#: allianceauth/project_template/project_name/settings/base.py:110
msgid "Ukrainian" msgid "Ukrainian"
msgstr "ウクライナ語" msgstr "ウクライナ語"
#: allianceauth/authentication/models.py:96 #: allianceauth/authentication/models.py:83
#: allianceauth/project_template/project_name/settings/base.py:111
msgid "Simplified Chinese"
msgstr ""
#: allianceauth/authentication/models.py:99
#: allianceauth/menu/templates/menu/menu-user.html:42 #: allianceauth/menu/templates/menu/menu-user.html:42
msgid "Language" msgid "Language"
msgstr "言語" msgstr "言語"
#: allianceauth/authentication/models.py:101 #: allianceauth/authentication/models.py:104
#: allianceauth/templates/allianceauth/night-toggle.html:6 #: allianceauth/templates/allianceauth/night-toggle.html:6
msgid "Night Mode" msgid "Night Mode"
msgstr "ナイトモード" msgstr "ナイトモード"
#: allianceauth/authentication/models.py:105 #: allianceauth/authentication/models.py:108
#: allianceauth/menu/templates/menu/menu-user.html:46 #: allianceauth/menu/templates/menu/menu-user.html:46
msgid "Theme" msgid "Theme"
msgstr "テーマ" msgstr "テーマ"
#: allianceauth/authentication/models.py:122 #: allianceauth/authentication/models.py:125
#, python-format #, python-format
msgid "State changed to: %s" msgid "State changed to: %s"
msgstr "分類が%sに変更されました。" msgstr "分類が%sに変更されました。"
#: allianceauth/authentication/models.py:123 #: allianceauth/authentication/models.py:126
#, python-format #, python-format
msgid "Your user's state is now: %(state)s" msgid "Your user's state is now: %(state)s"
msgstr "あなたの分類は%(state)sになりました。" msgstr "あなたの分類は%(state)sになりました。"
@@ -128,27 +152,27 @@ msgstr "あなたの分類は%(state)sになりました。"
msgid "Dashboard" msgid "Dashboard"
msgstr "ダッシュボード" msgstr "ダッシュボード"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:7 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:5
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticscorpview.html:33 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticscorpview.html:33
#: allianceauth/hrapplications/templates/hrapplications/view.html:54 #: allianceauth/hrapplications/templates/hrapplications/view.html:54
msgid "Characters" msgid "Characters"
msgstr "キャラクター" msgstr "キャラクター"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:13 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:11
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:14 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:12
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:4 #: allianceauth/templates/allianceauth/top-menu-rh-default.html:4
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:6 #: allianceauth/templates/allianceauth/top-menu-rh-default.html:6
msgid "Add Character" msgid "Add Character"
msgstr "キャラクターを追加" msgstr "キャラクターを追加"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:16 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:14
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:17 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:15
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:10 #: allianceauth/templates/allianceauth/top-menu-rh-default.html:10
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:12 #: allianceauth/templates/allianceauth/top-menu-rh-default.html:12
msgid "Change Main" msgid "Change Main"
msgstr "メンキャラクターを変更" msgstr "メンキャラクターを変更"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:24 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:22
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:89 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:89
#: allianceauth/groupmanagement/templates/groupmanagement/groupmembership.html:23 #: allianceauth/groupmanagement/templates/groupmanagement/groupmembership.html:23
#: allianceauth/groupmanagement/templates/groupmanagement/groups.html:31 #: allianceauth/groupmanagement/templates/groupmanagement/groups.html:31
@@ -157,12 +181,12 @@ msgstr "メンキャラクターを変更"
msgid "Name" msgid "Name"
msgstr "名前" msgstr "名前"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:25 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:23
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticsview.html:33 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticsview.html:33
msgid "Corp" msgid "Corp"
msgstr "コーポ" msgstr "コーポ"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:26 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:24
#: allianceauth/corputils/templates/corputils/corpstats.html:125 #: allianceauth/corputils/templates/corputils/corpstats.html:125
#: allianceauth/hrapplications/templates/hrapplications/view.html:63 #: allianceauth/hrapplications/templates/hrapplications/view.html:63
msgid "Alliance" msgid "Alliance"
@@ -172,7 +196,7 @@ msgstr "アライアンス"
msgid "Membership" msgid "Membership"
msgstr "メンバーシップ" msgstr "メンバーシップ"
#: allianceauth/authentication/templates/authentication/dashboard_groups.html:8 #: allianceauth/authentication/templates/authentication/dashboard_groups.html:10
msgid "State:" msgid "State:"
msgstr "状態:" msgstr "状態:"
@@ -407,6 +431,19 @@ msgstr "選択されたCorpはすでにStatistics Moduleを導入済みです。
msgid "Failed to gather corporation statistics with selected token." msgid "Failed to gather corporation statistics with selected token."
msgstr "選択されたTokenではCorporation Statisticsを取得できませんでした。" msgstr "選択されたTokenではCorporation Statisticsを取得できませんでした。"
#: allianceauth/custom_css/apps.py:13 allianceauth/custom_css/models.py:36
#: allianceauth/custom_css/models.py:37 allianceauth/custom_css/models.py:47
msgid "Custom CSS"
msgstr ""
#: allianceauth/custom_css/models.py:25
msgid "Your custom CSS"
msgstr ""
#: allianceauth/custom_css/models.py:26
msgid "This CSS will be added to the site after the default CSS."
msgstr ""
#: allianceauth/fleetactivitytracking/auth_hooks.py:10 #: allianceauth/fleetactivitytracking/auth_hooks.py:10
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/characternotexisting.html:10 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/characternotexisting.html:10
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkcreate.html:11 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkcreate.html:11
@@ -499,8 +536,8 @@ msgstr "ユーザ"
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkmodify.html:37 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkmodify.html:37
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:42 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:42
#: allianceauth/optimer/form.py:13 allianceauth/timerboard/form.py:59 #: allianceauth/optimer/form.py:13 allianceauth/timerboard/form.py:37
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:16 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:17
#: allianceauth/timerboard/templates/timerboard/timertable.html:9 #: allianceauth/timerboard/templates/timerboard/timertable.html:9
msgid "System" msgid "System"
msgstr "星系" msgstr "星系"
@@ -827,7 +864,7 @@ msgstr "依頼者"
#: allianceauth/groupmanagement/templates/groupmanagement/audit.html:31 #: allianceauth/groupmanagement/templates/groupmanagement/audit.html:31
#: allianceauth/optimer/templates/optimer/dashboard.ops.html:15 #: allianceauth/optimer/templates/optimer/dashboard.ops.html:15
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:15 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:16
msgid "Type" msgid "Type"
msgstr "タイプ" msgstr "タイプ"
@@ -919,7 +956,7 @@ msgid "Hidden"
msgstr "閉じる" msgstr "閉じる"
#: allianceauth/groupmanagement/templates/groupmanagement/groupmembership.html:45 #: allianceauth/groupmanagement/templates/groupmanagement/groupmembership.html:45
#: allianceauth/templates/allianceauth/admin-status/overview.html:19 #: allianceauth/templates/allianceauth/admin-status/overview.html:16
msgid "Open" msgid "Open"
msgstr "開く" msgstr "開く"
@@ -1395,16 +1432,18 @@ msgstr "通知"
msgid "Super User" msgid "Super User"
msgstr "スーパーユーザ" msgstr "スーパーユーザ"
#: allianceauth/menu/templates/menu/menu-user.html:68 #: allianceauth/menu/templates/menu/menu-user.html:70
#: allianceauth/templates/allianceauth/top-menu-admin.html:9 #: allianceauth/templates/allianceauth/top-menu-admin.html:9
msgid "Admin" msgid "Admin"
msgstr "管理者" msgstr "管理者"
#: allianceauth/menu/templates/menu/menu-user.html:80 #: allianceauth/menu/templates/menu/menu-user.html:82
msgid "Sign Out" msgid "Sign Out"
msgstr "サインアウト" msgstr "サインアウト"
#: allianceauth/menu/templates/menu/menu-user.html:84 #: allianceauth/menu/templates/menu/menu-user.html:86
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:17
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:18
msgid "Sign In" msgid "Sign In"
msgstr "サインイン" msgstr "サインイン"
@@ -1552,7 +1591,7 @@ msgid "Form Up System"
msgstr "フォームアップ星系" msgstr "フォームアップ星系"
#: allianceauth/optimer/templates/optimer/dashboard.ops.html:17 #: allianceauth/optimer/templates/optimer/dashboard.ops.html:17
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:17 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:18
msgid "EVE Time" msgid "EVE Time"
msgstr "EVE内時間" msgstr "EVE内時間"
@@ -1748,17 +1787,17 @@ msgstr ""
"DiscordアカウントはAuthによって自動的に無効化されました。これが何らかの間違いによるものだと思われる場合は、管理者に連絡してください。" "DiscordアカウントはAuthによって自動的に無効化されました。これが何らかの間違いによるものだと思われる場合は、管理者に連絡してください。"
#: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:26 #: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:26
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:20 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:22
msgid "Activate" msgid "Activate"
msgstr "有効化" msgstr "有効化"
#: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:32 #: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:32
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:32 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:34
msgid "Reset Password" msgid "Reset Password"
msgstr "パスワードをリセット" msgstr "パスワードをリセット"
#: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:38 #: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:38
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:38 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:40
msgid "Deactivate" msgid "Deactivate"
msgstr "非アクティブ化" msgstr "非アクティブ化"
@@ -1839,12 +1878,12 @@ msgstr "IPSuite4 のパスワードを設定します。"
msgid "Deactivated IPSuite4 account." msgid "Deactivated IPSuite4 account."
msgstr "IPSuite4 アカウントを非アクティブ化しました。" msgstr "IPSuite4 アカウントを非アクティブ化しました。"
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:26 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:28
#: allianceauth/services/templates/services/service_password.html:26 #: allianceauth/services/templates/services/service_password.html:26
msgid "Set Password" msgid "Set Password"
msgstr "パスワード設定" msgstr "パスワード設定"
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:44 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:46
msgid "Connect" msgid "Connect"
msgstr "接続" msgstr "接続"
@@ -2411,56 +2450,56 @@ msgstr "SRP フリートへの変更を保存 %(fleetname)s"
msgid "Your Server received an ESI error response code of " msgid "Your Server received an ESI error response code of "
msgstr "サーバーが ESI エラー応答コードを受信しました " msgstr "サーバーが ESI エラー応答コードを受信しました "
#: allianceauth/templates/allianceauth/admin-status/overview.html:11 #: allianceauth/templates/allianceauth/admin-status/overview.html:8
msgid "Alliance Auth Notifications" msgid "Alliance Auth Notifications"
msgstr "アライアンスAuth 通知" msgstr "アライアンスAuth 通知"
#: allianceauth/templates/allianceauth/admin-status/overview.html:21 #: allianceauth/templates/allianceauth/admin-status/overview.html:18
msgid "Closed" msgid "Closed"
msgstr "クローズド" msgstr "クローズド"
#: allianceauth/templates/allianceauth/admin-status/overview.html:27 #: allianceauth/templates/allianceauth/admin-status/overview.html:24
msgid "No notifications at this time" msgid "No notifications at this time"
msgstr "現時点では通知はありません" msgstr "現時点では通知はありません"
#: allianceauth/templates/allianceauth/admin-status/overview.html:36 #: allianceauth/templates/allianceauth/admin-status/overview.html:33
msgid "Powered by GitLab" msgid "Powered by GitLab"
msgstr "Powered by GitLab" msgstr "Powered by GitLab"
#: allianceauth/templates/allianceauth/admin-status/overview.html:42 #: allianceauth/templates/allianceauth/admin-status/overview.html:39
msgid "Support Discord" msgid "Support Discord"
msgstr "サポートディスコード" msgstr "サポートディスコード"
#: allianceauth/templates/allianceauth/admin-status/overview.html:59 #: allianceauth/templates/allianceauth/admin-status/overview.html:53
#: allianceauth/templates/allianceauth/admin-status/overview.html:63 #: allianceauth/templates/allianceauth/admin-status/overview.html:57
msgid "Software Version" msgid "Software Version"
msgstr "ソフトウェアバージョン" msgstr "ソフトウェアバージョン"
#: allianceauth/templates/allianceauth/admin-status/overview.html:66 #: allianceauth/templates/allianceauth/admin-status/overview.html:60
msgid "Current" msgid "Current"
msgstr "現在" msgstr "現在"
#: allianceauth/templates/allianceauth/admin-status/overview.html:73 #: allianceauth/templates/allianceauth/admin-status/overview.html:67
msgid "Latest Stable" msgid "Latest Stable"
msgstr "最新安定版" msgstr "最新安定版"
#: allianceauth/templates/allianceauth/admin-status/overview.html:78 #: allianceauth/templates/allianceauth/admin-status/overview.html:72
msgid "Update available" msgid "Update available"
msgstr "アップデート可能" msgstr "アップデート可能"
#: allianceauth/templates/allianceauth/admin-status/overview.html:86 #: allianceauth/templates/allianceauth/admin-status/overview.html:80
msgid "Latest Pre-Release" msgid "Latest Pre-Release"
msgstr "最新のプレリリース" msgstr "最新のプレリリース"
#: allianceauth/templates/allianceauth/admin-status/overview.html:91 #: allianceauth/templates/allianceauth/admin-status/overview.html:85
msgid "Pre-Release available" msgid "Pre-Release available"
msgstr "プレリリース利用可能" msgstr "プレリリース利用可能"
#: allianceauth/templates/allianceauth/admin-status/overview.html:102 #: allianceauth/templates/allianceauth/admin-status/overview.html:95
msgid "Task Queue" msgid "Task Queue"
msgstr "タスク待ち" msgstr "タスク待ち"
#: allianceauth/templates/allianceauth/admin-status/overview.html:107 #: allianceauth/templates/allianceauth/admin-status/overview.html:100
#, python-format #, python-format
msgid "" msgid ""
"\n" "\n"
@@ -2471,11 +2510,11 @@ msgstr ""
" ステータス %(total)s 処理済みタスク • 残り %(latest)s\n" " ステータス %(total)s 処理済みタスク • 残り %(latest)s\n"
" " " "
#: allianceauth/templates/allianceauth/admin-status/overview.html:123 #: allianceauth/templates/allianceauth/admin-status/overview.html:116
msgid "running" msgid "running"
msgstr "実行中" msgstr "実行中"
#: allianceauth/templates/allianceauth/admin-status/overview.html:124 #: allianceauth/templates/allianceauth/admin-status/overview.html:117
msgid "queued" msgid "queued"
msgstr "実行待ち" msgstr "実行待ち"
@@ -2504,114 +2543,216 @@ msgstr "ナビゲーションを切り替え"
msgid "Select Theme" msgid "Select Theme"
msgstr "テーマを選択" msgstr "テーマを選択"
#: allianceauth/timerboard/form.py:53 #: allianceauth/timerboard/form.py:36
#: allianceauth/timerboard/templates/timerboard/timertable.html:172 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:14
msgid "Other"
msgstr "その他"
#: allianceauth/timerboard/form.py:54
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:38
#: allianceauth/timerboard/templates/timerboard/timertable.html:44
msgid "Friendly"
msgstr "味方"
#: allianceauth/timerboard/form.py:55
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:33
#: allianceauth/timerboard/templates/timerboard/timertable.html:38
msgid "Hostile"
msgstr "敵性"
#: allianceauth/timerboard/form.py:56
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:43
#: allianceauth/timerboard/templates/timerboard/timertable.html:50
msgid "Neutral"
msgstr "中立"
#: allianceauth/timerboard/form.py:58
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:13
#: allianceauth/timerboard/templates/timerboard/timertable.html:7 #: allianceauth/timerboard/templates/timerboard/timertable.html:7
msgid "Details" msgid "Details"
msgstr "詳細" msgstr "詳細"
#: allianceauth/timerboard/form.py:60 #: allianceauth/timerboard/form.py:38
msgid "Planet/Moon" msgid "Planet/Moon"
msgstr "惑星/月" msgstr "惑星/月"
#: allianceauth/timerboard/form.py:61 #: allianceauth/timerboard/form.py:39
msgid "Structure Type" msgid "Structure Type"
msgstr "ストラクチャタイプ" msgstr "ストラクチャタイプ"
#: allianceauth/timerboard/form.py:62 #: allianceauth/timerboard/form.py:40
msgid "Timer Type" msgid "Timer Type"
msgstr "タイマータイプ" msgstr "タイマータイプ"
#: allianceauth/timerboard/form.py:63 #: allianceauth/timerboard/form.py:41
#: allianceauth/timerboard/templates/timerboard/timertable.html:8 #: allianceauth/timerboard/templates/timerboard/timertable.html:8
msgid "Objective" msgid "Objective"
msgstr "目標" msgstr "目標"
#: allianceauth/timerboard/form.py:64 #: allianceauth/timerboard/form.py:42
msgid "Absolute Timer" msgid "Absolute Timer"
msgstr "アブソルートタイマー" msgstr "アブソルートタイマー"
#: allianceauth/timerboard/form.py:65 #: allianceauth/timerboard/form.py:43
msgid "Date and Time" msgid "Date and Time"
msgstr "日付と時刻" msgstr "日付と時刻"
#: allianceauth/timerboard/form.py:66 #: allianceauth/timerboard/form.py:44
msgid "Days Remaining" msgid "Days Remaining"
msgstr "残り日数" msgstr "残り日数"
#: allianceauth/timerboard/form.py:67 #: allianceauth/timerboard/form.py:45
msgid "Hours Remaining" msgid "Hours Remaining"
msgstr "残り時間" msgstr "残り時間"
#: allianceauth/timerboard/form.py:69 #: allianceauth/timerboard/form.py:47
msgid "Minutes Remaining" msgid "Minutes Remaining"
msgstr "残り分数" msgstr "残り分数"
#: allianceauth/timerboard/form.py:71 #: allianceauth/timerboard/form.py:48
msgid "Important" msgid "Important"
msgstr "重要" msgstr "重要"
#: allianceauth/timerboard/form.py:72 #: allianceauth/timerboard/form.py:49
msgid "Corp-Restricted" msgid "Corp-Restricted"
msgstr "コーポレーション制限付き" msgstr "コーポレーション制限付き"
#: allianceauth/timerboard/models.py:14 #: allianceauth/timerboard/models.py:15
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:39
#: allianceauth/timerboard/templates/timerboard/timertable.html:36
msgid "Friendly"
msgstr "味方"
#: allianceauth/timerboard/models.py:16
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:34
#: allianceauth/timerboard/templates/timerboard/timertable.html:34
msgid "Hostile"
msgstr "敵性"
#: allianceauth/timerboard/models.py:17
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:44
#: allianceauth/timerboard/templates/timerboard/timertable.html:38
msgid "Neutral"
msgstr "中立"
#: allianceauth/timerboard/models.py:24
#: allianceauth/timerboard/templates/timerboard/timertable.html:48
msgid "POCO"
msgstr "POCO"
#: allianceauth/timerboard/models.py:25
#: allianceauth/timerboard/templates/timerboard/timertable.html:50
msgid "Orbital Skyhook"
msgstr ""
#: allianceauth/timerboard/models.py:26
#: allianceauth/timerboard/templates/timerboard/timertable.html:52
msgid "I-HUB"
msgstr "I-HUB"
#: allianceauth/timerboard/models.py:27
#: allianceauth/timerboard/templates/timerboard/timertable.html:55
msgid "TCU"
msgstr "TCU"
#: allianceauth/timerboard/models.py:28
#: allianceauth/timerboard/templates/timerboard/timertable.html:57
msgid "POS [S]"
msgstr "POS [S]"
#: allianceauth/timerboard/models.py:29
#: allianceauth/timerboard/templates/timerboard/timertable.html:59
msgid "POS [M]"
msgstr "POS [M]"
#: allianceauth/timerboard/models.py:30
#: allianceauth/timerboard/templates/timerboard/timertable.html:61
msgid "POS [L]"
msgstr "POS [L]"
#: allianceauth/timerboard/models.py:31
#: allianceauth/timerboard/templates/timerboard/timertable.html:63
msgid "Astrahus"
msgstr "Astrahus"
#: allianceauth/timerboard/models.py:32
#: allianceauth/timerboard/templates/timerboard/timertable.html:65
msgid "Fortizar"
msgstr "Fortizar"
#: allianceauth/timerboard/models.py:33
#: allianceauth/timerboard/templates/timerboard/timertable.html:67
msgid "Keepstar"
msgstr "Keepstar"
#: allianceauth/timerboard/models.py:34
#: allianceauth/timerboard/templates/timerboard/timertable.html:69
msgid "Raitaru"
msgstr "Raitaru"
#: allianceauth/timerboard/models.py:35
#: allianceauth/timerboard/templates/timerboard/timertable.html:71
msgid "Azbel"
msgstr "Azbel"
#: allianceauth/timerboard/models.py:36
#: allianceauth/timerboard/templates/timerboard/timertable.html:73
msgid "Sotiyo"
msgstr "Sotiyo"
#: allianceauth/timerboard/models.py:37
#: allianceauth/timerboard/templates/timerboard/timertable.html:75
msgid "Athanor"
msgstr "Athanor"
#: allianceauth/timerboard/models.py:38
#: allianceauth/timerboard/templates/timerboard/timertable.html:77
msgid "Tatara"
msgstr "Tatara"
#: allianceauth/timerboard/models.py:39
msgid "Pharolux Cyno Beacon"
msgstr ""
#: allianceauth/timerboard/models.py:40
msgid "Tenebrex Cyno Jammer"
msgstr ""
#: allianceauth/timerboard/models.py:41
#: allianceauth/timerboard/templates/timerboard/timertable.html:83
msgid "Ansiblex Jump Gate"
msgstr "Ansiblex Jump Gate"
#: allianceauth/timerboard/models.py:42
#: allianceauth/timerboard/templates/timerboard/timertable.html:85
msgid "Moon Mining Cycle"
msgstr "Moon Mining Cycle"
#: allianceauth/timerboard/models.py:43
#: allianceauth/timerboard/templates/timerboard/timertable.html:87
msgid "Metenox Moon Drill"
msgstr ""
#: allianceauth/timerboard/models.py:44
#: allianceauth/timerboard/templates/timerboard/timertable.html:89
msgid "Other"
msgstr "その他"
#: allianceauth/timerboard/models.py:51
msgid "Not Specified" msgid "Not Specified"
msgstr "指定なし" msgstr "指定なし"
#: allianceauth/timerboard/models.py:15 #: allianceauth/timerboard/models.py:52
msgid "Shield" msgid "Shield"
msgstr "シールド" msgstr "シールド"
#: allianceauth/timerboard/models.py:16 #: allianceauth/timerboard/models.py:53
msgid "Armor" msgid "Armor"
msgstr "アーマー" msgstr "アーマー"
#: allianceauth/timerboard/models.py:17 #: allianceauth/timerboard/models.py:54
msgid "Hull" msgid "Hull"
msgstr "ハル" msgstr "ハル"
#: allianceauth/timerboard/models.py:18 #: allianceauth/timerboard/models.py:55
msgid "Final" msgid "Final"
msgstr "最終" msgstr "最終"
#: allianceauth/timerboard/models.py:19 #: allianceauth/timerboard/models.py:56
msgid "Anchoring" msgid "Anchoring"
msgstr "Anchoring" msgstr "Anchoring"
#: allianceauth/timerboard/models.py:20 #: allianceauth/timerboard/models.py:57
msgid "Unanchoring" msgid "Unanchoring"
msgstr "Unanchoring" msgstr "Unanchoring"
#: allianceauth/timerboard/models.py:58
msgid "Abandoned"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:7 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:7
#: allianceauth/timerboard/templates/timerboard/view.html:53 #: allianceauth/timerboard/templates/timerboard/view.html:53
msgid "Upcoming Timers" msgid "Upcoming Timers"
msgstr "今後予定されているタイマー" msgstr "今後予定されているタイマー"
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:14 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:15
msgid "Timer" msgid "Timer"
msgstr "タイマー" msgstr "タイマー"
@@ -2655,78 +2796,14 @@ msgstr "ストラクチャタイマーを更新"
msgid "Structure" msgid "Structure"
msgstr "ストラクチャ" msgstr "ストラクチャ"
#: allianceauth/timerboard/templates/timerboard/timertable.html:64 #: allianceauth/timerboard/templates/timerboard/timertable.html:79
msgid "POCO"
msgstr "POCO"
#: allianceauth/timerboard/templates/timerboard/timertable.html:70
msgid "I-HUB"
msgstr "I-HUB"
#: allianceauth/timerboard/templates/timerboard/timertable.html:76
msgid "TCU"
msgstr "TCU"
#: allianceauth/timerboard/templates/timerboard/timertable.html:82
msgid "POS [S]"
msgstr "POS [S]"
#: allianceauth/timerboard/templates/timerboard/timertable.html:88
msgid "POS [M]"
msgstr "POS [M]"
#: allianceauth/timerboard/templates/timerboard/timertable.html:94
msgid "POS [L]"
msgstr "POS [L]"
#: allianceauth/timerboard/templates/timerboard/timertable.html:100
msgid "Astrahus"
msgstr "Astrahus"
#: allianceauth/timerboard/templates/timerboard/timertable.html:106
msgid "Fortizar"
msgstr "Fortizar"
#: allianceauth/timerboard/templates/timerboard/timertable.html:112
msgid "Keepstar"
msgstr "Keepstar"
#: allianceauth/timerboard/templates/timerboard/timertable.html:118
msgid "Raitaru"
msgstr "Raitaru"
#: allianceauth/timerboard/templates/timerboard/timertable.html:124
msgid "Azbel"
msgstr "Azbel"
#: allianceauth/timerboard/templates/timerboard/timertable.html:130
msgid "Sotiyo"
msgstr "Sotiyo"
#: allianceauth/timerboard/templates/timerboard/timertable.html:136
msgid "Athanor"
msgstr "Athanor"
#: allianceauth/timerboard/templates/timerboard/timertable.html:142
msgid "Tatara"
msgstr "Tatara"
#: allianceauth/timerboard/templates/timerboard/timertable.html:148
msgid "Cyno Beacon" msgid "Cyno Beacon"
msgstr "Cyno Beacon" msgstr "Cyno Beacon"
#: allianceauth/timerboard/templates/timerboard/timertable.html:154 #: allianceauth/timerboard/templates/timerboard/timertable.html:81
msgid "Cyno Jammer" msgid "Cyno Jammer"
msgstr "Cyno Jammer" msgstr "Cyno Jammer"
#: allianceauth/timerboard/templates/timerboard/timertable.html:160
msgid "Ansiblex Jump Gate"
msgstr "Ansiblex Jump Gate"
#: allianceauth/timerboard/templates/timerboard/timertable.html:166
msgid "Moon Mining Cycle"
msgstr "Moon Mining Cycle"
#: allianceauth/timerboard/templates/timerboard/view.html:9 #: allianceauth/timerboard/templates/timerboard/view.html:9
msgid "Structure Timer Management" msgid "Structure Timer Management"
msgstr "ストラクチャタイマー管理" msgstr "ストラクチャタイマー管理"

View File

@@ -5,7 +5,7 @@
# #
# Translators: # Translators:
# Joel Falknau <ozirascal@gmail.com>, 2023 # Joel Falknau <ozirascal@gmail.com>, 2023
# None None <khd1226543@gmail.com>, 2023 # Nox <khd1226543@gmail.com>, 2023
# ThatRagingKid, 2023 # ThatRagingKid, 2023
# Lahty <js03js70@gmail.com>, 2023 # Lahty <js03js70@gmail.com>, 2023
# Olgeda Choi <undead.choi@gmail.com>, 2023 # Olgeda Choi <undead.choi@gmail.com>, 2023
@@ -18,7 +18,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-03-13 19:10+1000\n" "POT-Creation-Date: 2024-09-13 19:57+1000\n"
"PO-Revision-Date: 2023-11-08 13:50+0000\n" "PO-Revision-Date: 2023-11-08 13:50+0000\n"
"Last-Translator: Woojin Kang, 2024\n" "Last-Translator: Woojin Kang, 2024\n"
"Language-Team: Korean (Korea) (https://app.transifex.com/alliance-auth/teams/107430/ko_KR/)\n" "Language-Team: Korean (Korea) (https://app.transifex.com/alliance-auth/teams/107430/ko_KR/)\n"
@@ -63,66 +63,90 @@ msgid "You are not allowed to add or remove these restricted groups: %s"
msgstr "해당 제한된 그룹을 추가하거나 제거할 수 있는 권한이 존재하지 않습니다: %s" msgstr "해당 제한된 그룹을 추가하거나 제거할 수 있는 권한이 존재하지 않습니다: %s"
#: allianceauth/authentication/models.py:71 #: allianceauth/authentication/models.py:71
#: allianceauth/project_template/project_name/settings/base.py:99
msgid "English" msgid "English"
msgstr "영어" msgstr "영어"
#: allianceauth/authentication/models.py:72 #: allianceauth/authentication/models.py:72
msgid "Czech"
msgstr ""
#: allianceauth/authentication/models.py:73
#: allianceauth/project_template/project_name/settings/base.py:101
msgid "German" msgid "German"
msgstr "독일어" msgstr "독일어"
#: allianceauth/authentication/models.py:73 #: allianceauth/authentication/models.py:74
#: allianceauth/project_template/project_name/settings/base.py:102
msgid "Spanish" msgid "Spanish"
msgstr "스페인어" msgstr "스페인어"
#: allianceauth/authentication/models.py:74
msgid "Chinese Simplified"
msgstr "간체자"
#: allianceauth/authentication/models.py:75 #: allianceauth/authentication/models.py:75
msgid "Russian" #: allianceauth/project_template/project_name/settings/base.py:103
msgstr "러시아어"
#: allianceauth/authentication/models.py:76
msgid "Korean"
msgstr "한국어"
#: allianceauth/authentication/models.py:77
msgid "French"
msgstr "프랑스어"
#: allianceauth/authentication/models.py:78
msgid "Japanese"
msgstr "일본어"
#: allianceauth/authentication/models.py:79
msgid "Italian" msgid "Italian"
msgstr "이탈리아어" msgstr "이탈리아어"
#: allianceauth/authentication/models.py:76
#: allianceauth/project_template/project_name/settings/base.py:104
msgid "Japanese"
msgstr "일본어"
#: allianceauth/authentication/models.py:77
#: allianceauth/project_template/project_name/settings/base.py:105
msgid "Korean"
msgstr "한국어"
#: allianceauth/authentication/models.py:78
#: allianceauth/project_template/project_name/settings/base.py:106
msgid "French"
msgstr "프랑스어"
#: allianceauth/authentication/models.py:79
#: allianceauth/project_template/project_name/settings/base.py:109
msgid "Russian"
msgstr "러시아어"
#: allianceauth/authentication/models.py:80 #: allianceauth/authentication/models.py:80
#: allianceauth/project_template/project_name/settings/base.py:107
msgid "Dutch"
msgstr ""
#: allianceauth/authentication/models.py:81
#: allianceauth/project_template/project_name/settings/base.py:108
msgid "Polish"
msgstr ""
#: allianceauth/authentication/models.py:82
#: allianceauth/project_template/project_name/settings/base.py:110
msgid "Ukrainian" msgid "Ukrainian"
msgstr "우크라이나어" msgstr "우크라이나어"
#: allianceauth/authentication/models.py:96 #: allianceauth/authentication/models.py:83
#: allianceauth/project_template/project_name/settings/base.py:111
msgid "Simplified Chinese"
msgstr ""
#: allianceauth/authentication/models.py:99
#: allianceauth/menu/templates/menu/menu-user.html:42 #: allianceauth/menu/templates/menu/menu-user.html:42
msgid "Language" msgid "Language"
msgstr "언어" msgstr "언어"
#: allianceauth/authentication/models.py:101 #: allianceauth/authentication/models.py:104
#: allianceauth/templates/allianceauth/night-toggle.html:6 #: allianceauth/templates/allianceauth/night-toggle.html:6
msgid "Night Mode" msgid "Night Mode"
msgstr "야간 모드" msgstr "야간 모드"
#: allianceauth/authentication/models.py:105 #: allianceauth/authentication/models.py:108
#: allianceauth/menu/templates/menu/menu-user.html:46 #: allianceauth/menu/templates/menu/menu-user.html:46
msgid "Theme" msgid "Theme"
msgstr "테마" msgstr "테마"
#: allianceauth/authentication/models.py:122 #: allianceauth/authentication/models.py:125
#, python-format #, python-format
msgid "State changed to: %s" msgid "State changed to: %s"
msgstr "상태가 %s로 변경됐습니다." msgstr "상태가 %s로 변경됐습니다."
#: allianceauth/authentication/models.py:123 #: allianceauth/authentication/models.py:126
#, python-format #, python-format
msgid "Your user's state is now: %(state)s" msgid "Your user's state is now: %(state)s"
msgstr "사용자의 상태는 %(state)s입니다." msgstr "사용자의 상태는 %(state)s입니다."
@@ -134,27 +158,27 @@ msgstr "사용자의 상태는 %(state)s입니다."
msgid "Dashboard" msgid "Dashboard"
msgstr "대시보드" msgstr "대시보드"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:7 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:5
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticscorpview.html:33 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticscorpview.html:33
#: allianceauth/hrapplications/templates/hrapplications/view.html:54 #: allianceauth/hrapplications/templates/hrapplications/view.html:54
msgid "Characters" msgid "Characters"
msgstr "캐릭터" msgstr "캐릭터"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:13 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:11
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:14 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:12
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:4 #: allianceauth/templates/allianceauth/top-menu-rh-default.html:4
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:6 #: allianceauth/templates/allianceauth/top-menu-rh-default.html:6
msgid "Add Character" msgid "Add Character"
msgstr "캐릭터 추가" msgstr "캐릭터 추가"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:16 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:14
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:17 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:15
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:10 #: allianceauth/templates/allianceauth/top-menu-rh-default.html:10
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:12 #: allianceauth/templates/allianceauth/top-menu-rh-default.html:12
msgid "Change Main" msgid "Change Main"
msgstr "주 캐릭터 변경" msgstr "주 캐릭터 변경"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:24 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:22
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:89 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:89
#: allianceauth/groupmanagement/templates/groupmanagement/groupmembership.html:23 #: allianceauth/groupmanagement/templates/groupmanagement/groupmembership.html:23
#: allianceauth/groupmanagement/templates/groupmanagement/groups.html:31 #: allianceauth/groupmanagement/templates/groupmanagement/groups.html:31
@@ -163,12 +187,12 @@ msgstr "주 캐릭터 변경"
msgid "Name" msgid "Name"
msgstr "이름" msgstr "이름"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:25 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:23
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticsview.html:33 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticsview.html:33
msgid "Corp" msgid "Corp"
msgstr "코퍼레이션" msgstr "코퍼레이션"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:26 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:24
#: allianceauth/corputils/templates/corputils/corpstats.html:125 #: allianceauth/corputils/templates/corputils/corpstats.html:125
#: allianceauth/hrapplications/templates/hrapplications/view.html:63 #: allianceauth/hrapplications/templates/hrapplications/view.html:63
msgid "Alliance" msgid "Alliance"
@@ -178,7 +202,7 @@ msgstr "얼라이언스"
msgid "Membership" msgid "Membership"
msgstr "멤버쉽" msgstr "멤버쉽"
#: allianceauth/authentication/templates/authentication/dashboard_groups.html:8 #: allianceauth/authentication/templates/authentication/dashboard_groups.html:10
msgid "State:" msgid "State:"
msgstr "상태:" msgstr "상태:"
@@ -413,6 +437,19 @@ msgstr "선택한 코퍼레이션은 이미 통계 모듈을 갖고 있습니다
msgid "Failed to gather corporation statistics with selected token." msgid "Failed to gather corporation statistics with selected token."
msgstr "선택한 토큰으로 코퍼레이션 통계 수집에 실패했습니다." msgstr "선택한 토큰으로 코퍼레이션 통계 수집에 실패했습니다."
#: allianceauth/custom_css/apps.py:13 allianceauth/custom_css/models.py:36
#: allianceauth/custom_css/models.py:37 allianceauth/custom_css/models.py:47
msgid "Custom CSS"
msgstr ""
#: allianceauth/custom_css/models.py:25
msgid "Your custom CSS"
msgstr ""
#: allianceauth/custom_css/models.py:26
msgid "This CSS will be added to the site after the default CSS."
msgstr ""
#: allianceauth/fleetactivitytracking/auth_hooks.py:10 #: allianceauth/fleetactivitytracking/auth_hooks.py:10
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/characternotexisting.html:10 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/characternotexisting.html:10
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkcreate.html:11 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkcreate.html:11
@@ -505,8 +542,8 @@ msgstr "사용자"
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkmodify.html:37 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkmodify.html:37
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:42 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:42
#: allianceauth/optimer/form.py:13 allianceauth/timerboard/form.py:59 #: allianceauth/optimer/form.py:13 allianceauth/timerboard/form.py:37
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:16 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:17
#: allianceauth/timerboard/templates/timerboard/timertable.html:9 #: allianceauth/timerboard/templates/timerboard/timertable.html:9
msgid "System" msgid "System"
msgstr "시스템" msgstr "시스템"
@@ -836,7 +873,7 @@ msgstr "요청인"
#: allianceauth/groupmanagement/templates/groupmanagement/audit.html:31 #: allianceauth/groupmanagement/templates/groupmanagement/audit.html:31
#: allianceauth/optimer/templates/optimer/dashboard.ops.html:15 #: allianceauth/optimer/templates/optimer/dashboard.ops.html:15
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:15 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:16
msgid "Type" msgid "Type"
msgstr "타입" msgstr "타입"
@@ -928,7 +965,7 @@ msgid "Hidden"
msgstr "숨김" msgstr "숨김"
#: allianceauth/groupmanagement/templates/groupmanagement/groupmembership.html:45 #: allianceauth/groupmanagement/templates/groupmanagement/groupmembership.html:45
#: allianceauth/templates/allianceauth/admin-status/overview.html:19 #: allianceauth/templates/allianceauth/admin-status/overview.html:16
msgid "Open" msgid "Open"
msgstr "열기" msgstr "열기"
@@ -1404,16 +1441,18 @@ msgstr "알림"
msgid "Super User" msgid "Super User"
msgstr "Super User" msgstr "Super User"
#: allianceauth/menu/templates/menu/menu-user.html:68 #: allianceauth/menu/templates/menu/menu-user.html:70
#: allianceauth/templates/allianceauth/top-menu-admin.html:9 #: allianceauth/templates/allianceauth/top-menu-admin.html:9
msgid "Admin" msgid "Admin"
msgstr "어드민" msgstr "어드민"
#: allianceauth/menu/templates/menu/menu-user.html:80 #: allianceauth/menu/templates/menu/menu-user.html:82
msgid "Sign Out" msgid "Sign Out"
msgstr "탈퇴" msgstr "탈퇴"
#: allianceauth/menu/templates/menu/menu-user.html:84 #: allianceauth/menu/templates/menu/menu-user.html:86
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:17
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:18
msgid "Sign In" msgid "Sign In"
msgstr "가입" msgstr "가입"
@@ -1561,7 +1600,7 @@ msgid "Form Up System"
msgstr "폼업 성계" msgstr "폼업 성계"
#: allianceauth/optimer/templates/optimer/dashboard.ops.html:17 #: allianceauth/optimer/templates/optimer/dashboard.ops.html:17
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:17 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:18
msgid "EVE Time" msgid "EVE Time"
msgstr "인게임 시간" msgstr "인게임 시간"
@@ -1756,17 +1795,17 @@ msgid ""
msgstr "Auth에 의해 자동으로 Discord 계정이 비활성화됐습니다. 원치 않는 사항일 경우, 관리자에게 문의해 주세요." msgstr "Auth에 의해 자동으로 Discord 계정이 비활성화됐습니다. 원치 않는 사항일 경우, 관리자에게 문의해 주세요."
#: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:26 #: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:26
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:20 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:22
msgid "Activate" msgid "Activate"
msgstr "활성화" msgstr "활성화"
#: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:32 #: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:32
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:32 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:34
msgid "Reset Password" msgid "Reset Password"
msgstr "비밀번호 초기화" msgstr "비밀번호 초기화"
#: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:38 #: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:38
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:38 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:40
msgid "Deactivate" msgid "Deactivate"
msgstr "비활성화" msgstr "비활성화"
@@ -1847,12 +1886,12 @@ msgstr "IPSuite4 비밀번호 설정"
msgid "Deactivated IPSuite4 account." msgid "Deactivated IPSuite4 account."
msgstr "IPSuite4 계정 비활성화 완료" msgstr "IPSuite4 계정 비활성화 완료"
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:26 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:28
#: allianceauth/services/templates/services/service_password.html:26 #: allianceauth/services/templates/services/service_password.html:26
msgid "Set Password" msgid "Set Password"
msgstr "비밀번호 설정" msgstr "비밀번호 설정"
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:44 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:46
msgid "Connect" msgid "Connect"
msgstr "연결" msgstr "연결"
@@ -2416,56 +2455,56 @@ msgstr "SRP 보상 요청 함대 %(fleetname)s의 변경 사항이 저장되었
msgid "Your Server received an ESI error response code of " msgid "Your Server received an ESI error response code of "
msgstr "당신의 서버에 ESI 에러가 발생하였습니다. 응답코드 :" msgstr "당신의 서버에 ESI 에러가 발생하였습니다. 응답코드 :"
#: allianceauth/templates/allianceauth/admin-status/overview.html:11 #: allianceauth/templates/allianceauth/admin-status/overview.html:8
msgid "Alliance Auth Notifications" msgid "Alliance Auth Notifications"
msgstr "얼라이언스 Auth 알림" msgstr "얼라이언스 Auth 알림"
#: allianceauth/templates/allianceauth/admin-status/overview.html:21 #: allianceauth/templates/allianceauth/admin-status/overview.html:18
msgid "Closed" msgid "Closed"
msgstr "닫혔음" msgstr "닫혔음"
#: allianceauth/templates/allianceauth/admin-status/overview.html:27 #: allianceauth/templates/allianceauth/admin-status/overview.html:24
msgid "No notifications at this time" msgid "No notifications at this time"
msgstr "이번에는 알림을 울리지 않기" msgstr "이번에는 알림을 울리지 않기"
#: allianceauth/templates/allianceauth/admin-status/overview.html:36 #: allianceauth/templates/allianceauth/admin-status/overview.html:33
msgid "Powered by GitLab" msgid "Powered by GitLab"
msgstr "GitLab 제공" msgstr "GitLab 제공"
#: allianceauth/templates/allianceauth/admin-status/overview.html:42 #: allianceauth/templates/allianceauth/admin-status/overview.html:39
msgid "Support Discord" msgid "Support Discord"
msgstr "Support Discord" msgstr "Support Discord"
#: allianceauth/templates/allianceauth/admin-status/overview.html:59 #: allianceauth/templates/allianceauth/admin-status/overview.html:53
#: allianceauth/templates/allianceauth/admin-status/overview.html:63 #: allianceauth/templates/allianceauth/admin-status/overview.html:57
msgid "Software Version" msgid "Software Version"
msgstr "소프트웨어 버전" msgstr "소프트웨어 버전"
#: allianceauth/templates/allianceauth/admin-status/overview.html:66 #: allianceauth/templates/allianceauth/admin-status/overview.html:60
msgid "Current" msgid "Current"
msgstr "현재" msgstr "현재"
#: allianceauth/templates/allianceauth/admin-status/overview.html:73 #: allianceauth/templates/allianceauth/admin-status/overview.html:67
msgid "Latest Stable" msgid "Latest Stable"
msgstr "최신 안정화 버전" msgstr "최신 안정화 버전"
#: allianceauth/templates/allianceauth/admin-status/overview.html:78 #: allianceauth/templates/allianceauth/admin-status/overview.html:72
msgid "Update available" msgid "Update available"
msgstr "업데이트 가능" msgstr "업데이트 가능"
#: allianceauth/templates/allianceauth/admin-status/overview.html:86 #: allianceauth/templates/allianceauth/admin-status/overview.html:80
msgid "Latest Pre-Release" msgid "Latest Pre-Release"
msgstr "최신 사전 출시 버전" msgstr "최신 사전 출시 버전"
#: allianceauth/templates/allianceauth/admin-status/overview.html:91 #: allianceauth/templates/allianceauth/admin-status/overview.html:85
msgid "Pre-Release available" msgid "Pre-Release available"
msgstr "사전 출시 사용 가능" msgstr "사전 출시 사용 가능"
#: allianceauth/templates/allianceauth/admin-status/overview.html:102 #: allianceauth/templates/allianceauth/admin-status/overview.html:95
msgid "Task Queue" msgid "Task Queue"
msgstr "작업 대기열" msgstr "작업 대기열"
#: allianceauth/templates/allianceauth/admin-status/overview.html:107 #: allianceauth/templates/allianceauth/admin-status/overview.html:100
#, python-format #, python-format
msgid "" msgid ""
"\n" "\n"
@@ -2475,11 +2514,11 @@ msgstr ""
"\n" "\n"
" %(total)s 의 진행된 작업 상태 • 잔여 %(latest)s" " %(total)s 의 진행된 작업 상태 • 잔여 %(latest)s"
#: allianceauth/templates/allianceauth/admin-status/overview.html:123 #: allianceauth/templates/allianceauth/admin-status/overview.html:116
msgid "running" msgid "running"
msgstr "진행중" msgstr "진행중"
#: allianceauth/templates/allianceauth/admin-status/overview.html:124 #: allianceauth/templates/allianceauth/admin-status/overview.html:117
msgid "queued" msgid "queued"
msgstr "대기중" msgstr "대기중"
@@ -2508,114 +2547,216 @@ msgstr "네비게이션 전환"
msgid "Select Theme" msgid "Select Theme"
msgstr "테마 선택" msgstr "테마 선택"
#: allianceauth/timerboard/form.py:53 #: allianceauth/timerboard/form.py:36
#: allianceauth/timerboard/templates/timerboard/timertable.html:172 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:14
msgid "Other"
msgstr "기타"
#: allianceauth/timerboard/form.py:54
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:38
#: allianceauth/timerboard/templates/timerboard/timertable.html:44
msgid "Friendly"
msgstr "우호"
#: allianceauth/timerboard/form.py:55
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:33
#: allianceauth/timerboard/templates/timerboard/timertable.html:38
msgid "Hostile"
msgstr "적대"
#: allianceauth/timerboard/form.py:56
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:43
#: allianceauth/timerboard/templates/timerboard/timertable.html:50
msgid "Neutral"
msgstr "중립"
#: allianceauth/timerboard/form.py:58
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:13
#: allianceauth/timerboard/templates/timerboard/timertable.html:7 #: allianceauth/timerboard/templates/timerboard/timertable.html:7
msgid "Details" msgid "Details"
msgstr "설명" msgstr "설명"
#: allianceauth/timerboard/form.py:60 #: allianceauth/timerboard/form.py:38
msgid "Planet/Moon" msgid "Planet/Moon"
msgstr "행성/달" msgstr "행성/달"
#: allianceauth/timerboard/form.py:61 #: allianceauth/timerboard/form.py:39
msgid "Structure Type" msgid "Structure Type"
msgstr "스트럭처 종류" msgstr "스트럭처 종류"
#: allianceauth/timerboard/form.py:62 #: allianceauth/timerboard/form.py:40
msgid "Timer Type" msgid "Timer Type"
msgstr "타이머 종류" msgstr "타이머 종류"
#: allianceauth/timerboard/form.py:63 #: allianceauth/timerboard/form.py:41
#: allianceauth/timerboard/templates/timerboard/timertable.html:8 #: allianceauth/timerboard/templates/timerboard/timertable.html:8
msgid "Objective" msgid "Objective"
msgstr "목표 대상" msgstr "목표 대상"
#: allianceauth/timerboard/form.py:64 #: allianceauth/timerboard/form.py:42
msgid "Absolute Timer" msgid "Absolute Timer"
msgstr "절대 타이머" msgstr "절대 타이머"
#: allianceauth/timerboard/form.py:65 #: allianceauth/timerboard/form.py:43
msgid "Date and Time" msgid "Date and Time"
msgstr "날짜와 시간" msgstr "날짜와 시간"
#: allianceauth/timerboard/form.py:66 #: allianceauth/timerboard/form.py:44
msgid "Days Remaining" msgid "Days Remaining"
msgstr "남은 일수" msgstr "남은 일수"
#: allianceauth/timerboard/form.py:67 #: allianceauth/timerboard/form.py:45
msgid "Hours Remaining" msgid "Hours Remaining"
msgstr "남은 시간" msgstr "남은 시간"
#: allianceauth/timerboard/form.py:69 #: allianceauth/timerboard/form.py:47
msgid "Minutes Remaining" msgid "Minutes Remaining"
msgstr "남은 분" msgstr "남은 분"
#: allianceauth/timerboard/form.py:71 #: allianceauth/timerboard/form.py:48
msgid "Important" msgid "Important"
msgstr "중요" msgstr "중요"
#: allianceauth/timerboard/form.py:72 #: allianceauth/timerboard/form.py:49
msgid "Corp-Restricted" msgid "Corp-Restricted"
msgstr "코퍼레이션 제한" msgstr "코퍼레이션 제한"
#: allianceauth/timerboard/models.py:14 #: allianceauth/timerboard/models.py:15
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:39
#: allianceauth/timerboard/templates/timerboard/timertable.html:36
msgid "Friendly"
msgstr "우호"
#: allianceauth/timerboard/models.py:16
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:34
#: allianceauth/timerboard/templates/timerboard/timertable.html:34
msgid "Hostile"
msgstr "적대"
#: allianceauth/timerboard/models.py:17
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:44
#: allianceauth/timerboard/templates/timerboard/timertable.html:38
msgid "Neutral"
msgstr "중립"
#: allianceauth/timerboard/models.py:24
#: allianceauth/timerboard/templates/timerboard/timertable.html:48
msgid "POCO"
msgstr "포코(POCO)"
#: allianceauth/timerboard/models.py:25
#: allianceauth/timerboard/templates/timerboard/timertable.html:50
msgid "Orbital Skyhook"
msgstr ""
#: allianceauth/timerboard/models.py:26
#: allianceauth/timerboard/templates/timerboard/timertable.html:52
msgid "I-HUB"
msgstr "I-HUB"
#: allianceauth/timerboard/models.py:27
#: allianceauth/timerboard/templates/timerboard/timertable.html:55
msgid "TCU"
msgstr "TCU"
#: allianceauth/timerboard/models.py:28
#: allianceauth/timerboard/templates/timerboard/timertable.html:57
msgid "POS [S]"
msgstr "POS [S]"
#: allianceauth/timerboard/models.py:29
#: allianceauth/timerboard/templates/timerboard/timertable.html:59
msgid "POS [M]"
msgstr "POS [M]"
#: allianceauth/timerboard/models.py:30
#: allianceauth/timerboard/templates/timerboard/timertable.html:61
msgid "POS [L]"
msgstr "POS [L]"
#: allianceauth/timerboard/models.py:31
#: allianceauth/timerboard/templates/timerboard/timertable.html:63
msgid "Astrahus"
msgstr "아스트라허스(Astrahus)"
#: allianceauth/timerboard/models.py:32
#: allianceauth/timerboard/templates/timerboard/timertable.html:65
msgid "Fortizar"
msgstr "포르티자(Fortizar)"
#: allianceauth/timerboard/models.py:33
#: allianceauth/timerboard/templates/timerboard/timertable.html:67
msgid "Keepstar"
msgstr "킵스타(Keepstar)"
#: allianceauth/timerboard/models.py:34
#: allianceauth/timerboard/templates/timerboard/timertable.html:69
msgid "Raitaru"
msgstr "라이타루(Raitaru)"
#: allianceauth/timerboard/models.py:35
#: allianceauth/timerboard/templates/timerboard/timertable.html:71
msgid "Azbel"
msgstr "아즈벨(Azbel)"
#: allianceauth/timerboard/models.py:36
#: allianceauth/timerboard/templates/timerboard/timertable.html:73
msgid "Sotiyo"
msgstr "소티요(Sotiyo)"
#: allianceauth/timerboard/models.py:37
#: allianceauth/timerboard/templates/timerboard/timertable.html:75
msgid "Athanor"
msgstr "아타노르(Athanor)"
#: allianceauth/timerboard/models.py:38
#: allianceauth/timerboard/templates/timerboard/timertable.html:77
msgid "Tatara"
msgstr "타타라(Tatara)"
#: allianceauth/timerboard/models.py:39
msgid "Pharolux Cyno Beacon"
msgstr ""
#: allianceauth/timerboard/models.py:40
msgid "Tenebrex Cyno Jammer"
msgstr ""
#: allianceauth/timerboard/models.py:41
#: allianceauth/timerboard/templates/timerboard/timertable.html:83
msgid "Ansiblex Jump Gate"
msgstr "엔서블렉스 점프 게이트(Ansiblex Jump Gate)"
#: allianceauth/timerboard/models.py:42
#: allianceauth/timerboard/templates/timerboard/timertable.html:85
msgid "Moon Mining Cycle"
msgstr "문 마이닝 주기"
#: allianceauth/timerboard/models.py:43
#: allianceauth/timerboard/templates/timerboard/timertable.html:87
msgid "Metenox Moon Drill"
msgstr ""
#: allianceauth/timerboard/models.py:44
#: allianceauth/timerboard/templates/timerboard/timertable.html:89
msgid "Other"
msgstr "기타"
#: allianceauth/timerboard/models.py:51
msgid "Not Specified" msgid "Not Specified"
msgstr "명시되지 않음" msgstr "명시되지 않음"
#: allianceauth/timerboard/models.py:15 #: allianceauth/timerboard/models.py:52
msgid "Shield" msgid "Shield"
msgstr "실드" msgstr "실드"
#: allianceauth/timerboard/models.py:16 #: allianceauth/timerboard/models.py:53
msgid "Armor" msgid "Armor"
msgstr "장갑" msgstr "장갑"
#: allianceauth/timerboard/models.py:17 #: allianceauth/timerboard/models.py:54
msgid "Hull" msgid "Hull"
msgstr "선체" msgstr "선체"
#: allianceauth/timerboard/models.py:18 #: allianceauth/timerboard/models.py:55
msgid "Final" msgid "Final"
msgstr "최종" msgstr "최종"
#: allianceauth/timerboard/models.py:19 #: allianceauth/timerboard/models.py:56
msgid "Anchoring" msgid "Anchoring"
msgstr "고정" msgstr "고정"
#: allianceauth/timerboard/models.py:20 #: allianceauth/timerboard/models.py:57
msgid "Unanchoring" msgid "Unanchoring"
msgstr "미고정" msgstr "미고정"
#: allianceauth/timerboard/models.py:58
msgid "Abandoned"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:7 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:7
#: allianceauth/timerboard/templates/timerboard/view.html:53 #: allianceauth/timerboard/templates/timerboard/view.html:53
msgid "Upcoming Timers" msgid "Upcoming Timers"
msgstr "예정 타이머" msgstr "예정 타이머"
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:14 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:15
msgid "Timer" msgid "Timer"
msgstr "타이머" msgstr "타이머"
@@ -2659,78 +2800,14 @@ msgstr "구조물 타이머 수정"
msgid "Structure" msgid "Structure"
msgstr "구조물" msgstr "구조물"
#: allianceauth/timerboard/templates/timerboard/timertable.html:64 #: allianceauth/timerboard/templates/timerboard/timertable.html:79
msgid "POCO"
msgstr "포코(POCO)"
#: allianceauth/timerboard/templates/timerboard/timertable.html:70
msgid "I-HUB"
msgstr "I-HUB"
#: allianceauth/timerboard/templates/timerboard/timertable.html:76
msgid "TCU"
msgstr "TCU"
#: allianceauth/timerboard/templates/timerboard/timertable.html:82
msgid "POS [S]"
msgstr "POS [S]"
#: allianceauth/timerboard/templates/timerboard/timertable.html:88
msgid "POS [M]"
msgstr "POS [M]"
#: allianceauth/timerboard/templates/timerboard/timertable.html:94
msgid "POS [L]"
msgstr "POS [L]"
#: allianceauth/timerboard/templates/timerboard/timertable.html:100
msgid "Astrahus"
msgstr "아스트라허스(Astrahus)"
#: allianceauth/timerboard/templates/timerboard/timertable.html:106
msgid "Fortizar"
msgstr "포르티자(Fortizar)"
#: allianceauth/timerboard/templates/timerboard/timertable.html:112
msgid "Keepstar"
msgstr "킵스타(Keepstar)"
#: allianceauth/timerboard/templates/timerboard/timertable.html:118
msgid "Raitaru"
msgstr "라이타루(Raitaru)"
#: allianceauth/timerboard/templates/timerboard/timertable.html:124
msgid "Azbel"
msgstr "아즈벨(Azbel)"
#: allianceauth/timerboard/templates/timerboard/timertable.html:130
msgid "Sotiyo"
msgstr "소티요(Sotiyo)"
#: allianceauth/timerboard/templates/timerboard/timertable.html:136
msgid "Athanor"
msgstr "아타노르(Athanor)"
#: allianceauth/timerboard/templates/timerboard/timertable.html:142
msgid "Tatara"
msgstr "타타라(Tatara)"
#: allianceauth/timerboard/templates/timerboard/timertable.html:148
msgid "Cyno Beacon" msgid "Cyno Beacon"
msgstr "사이노 비컨(Cyno Beacon)" msgstr "사이노 비컨(Cyno Beacon)"
#: allianceauth/timerboard/templates/timerboard/timertable.html:154 #: allianceauth/timerboard/templates/timerboard/timertable.html:81
msgid "Cyno Jammer" msgid "Cyno Jammer"
msgstr "사이노 재머(Cyno Jammer)" msgstr "사이노 재머(Cyno Jammer)"
#: allianceauth/timerboard/templates/timerboard/timertable.html:160
msgid "Ansiblex Jump Gate"
msgstr "엔서블렉스 점프 게이트(Ansiblex Jump Gate)"
#: allianceauth/timerboard/templates/timerboard/timertable.html:166
msgid "Moon Mining Cycle"
msgstr "문 마이닝 주기"
#: allianceauth/timerboard/templates/timerboard/view.html:9 #: allianceauth/timerboard/templates/timerboard/view.html:9
msgid "Structure Timer Management" msgid "Structure Timer Management"
msgstr "구조물 타이머 관리" msgstr "구조물 타이머 관리"

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

File diff suppressed because it is too large Load Diff

View File

@@ -2,22 +2,23 @@
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package. # This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
# #
# Translators: # Translators:
# Андрей Зубков <and.vareba81@gmail.com>, 2023 # Андрей Зубков <and.vareba81@gmail.com>, 2023
# Yuriy K <thedjcooltv@gmail.com>, 2023 # Yuriy K <thedjcooltv@gmail.com>, 2023
# Alexander Gess <de.alex.gess@gmail.com>, 2023 # Alexander Gess <de.alex.gess@gmail.com>, 2023
# Filipp Chertiev <f@fzfx.ru>, 2023 # Filipp Chertiev <f@fzfx.ru>, 2023
# Ruslan Virchich, 2024 # Ruslan Virchich, 2024
# # Joel Falknau <ozirascal@gmail.com>, 2024
#
#, fuzzy #, fuzzy
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-03-13 19:10+1000\n" "POT-Creation-Date: 2024-09-13 19:57+1000\n"
"PO-Revision-Date: 2023-11-08 13:50+0000\n" "PO-Revision-Date: 2023-11-08 13:50+0000\n"
"Last-Translator: Ruslan Virchich, 2024\n" "Last-Translator: Joel Falknau <ozirascal@gmail.com>, 2024\n"
"Language-Team: Russian (https://app.transifex.com/alliance-auth/teams/107430/ru/)\n" "Language-Team: Russian (https://app.transifex.com/alliance-auth/teams/107430/ru/)\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
@@ -57,66 +58,90 @@ msgid "You are not allowed to add or remove these restricted groups: %s"
msgstr "Вам не разрешено добавлять или удалять эти ограниченные группы: %s" msgstr "Вам не разрешено добавлять или удалять эти ограниченные группы: %s"
#: allianceauth/authentication/models.py:71 #: allianceauth/authentication/models.py:71
#: allianceauth/project_template/project_name/settings/base.py:99
msgid "English" msgid "English"
msgstr "Английский" msgstr "Английский"
#: allianceauth/authentication/models.py:72 #: allianceauth/authentication/models.py:72
msgid "Czech"
msgstr ""
#: allianceauth/authentication/models.py:73
#: allianceauth/project_template/project_name/settings/base.py:101
msgid "German" msgid "German"
msgstr "Немецкий" msgstr "Немецкий"
#: allianceauth/authentication/models.py:73 #: allianceauth/authentication/models.py:74
#: allianceauth/project_template/project_name/settings/base.py:102
msgid "Spanish" msgid "Spanish"
msgstr "Испанский" msgstr "Испанский"
#: allianceauth/authentication/models.py:74
msgid "Chinese Simplified"
msgstr "Китайский упрощённый"
#: allianceauth/authentication/models.py:75 #: allianceauth/authentication/models.py:75
msgid "Russian" #: allianceauth/project_template/project_name/settings/base.py:103
msgstr "Русский"
#: allianceauth/authentication/models.py:76
msgid "Korean"
msgstr "Корейский"
#: allianceauth/authentication/models.py:77
msgid "French"
msgstr "Французский"
#: allianceauth/authentication/models.py:78
msgid "Japanese"
msgstr "Японский"
#: allianceauth/authentication/models.py:79
msgid "Italian" msgid "Italian"
msgstr "Итальянский" msgstr "Итальянский"
#: allianceauth/authentication/models.py:76
#: allianceauth/project_template/project_name/settings/base.py:104
msgid "Japanese"
msgstr "Японский"
#: allianceauth/authentication/models.py:77
#: allianceauth/project_template/project_name/settings/base.py:105
msgid "Korean"
msgstr "Корейский"
#: allianceauth/authentication/models.py:78
#: allianceauth/project_template/project_name/settings/base.py:106
msgid "French"
msgstr "Французский"
#: allianceauth/authentication/models.py:79
#: allianceauth/project_template/project_name/settings/base.py:109
msgid "Russian"
msgstr "Русский"
#: allianceauth/authentication/models.py:80 #: allianceauth/authentication/models.py:80
#: allianceauth/project_template/project_name/settings/base.py:107
msgid "Dutch"
msgstr ""
#: allianceauth/authentication/models.py:81
#: allianceauth/project_template/project_name/settings/base.py:108
msgid "Polish"
msgstr ""
#: allianceauth/authentication/models.py:82
#: allianceauth/project_template/project_name/settings/base.py:110
msgid "Ukrainian" msgid "Ukrainian"
msgstr "Украинский" msgstr "Украинский"
#: allianceauth/authentication/models.py:96 #: allianceauth/authentication/models.py:83
#: allianceauth/project_template/project_name/settings/base.py:111
msgid "Simplified Chinese"
msgstr ""
#: allianceauth/authentication/models.py:99
#: allianceauth/menu/templates/menu/menu-user.html:42 #: allianceauth/menu/templates/menu/menu-user.html:42
msgid "Language" msgid "Language"
msgstr "Язык" msgstr "Язык"
#: allianceauth/authentication/models.py:101 #: allianceauth/authentication/models.py:104
#: allianceauth/templates/allianceauth/night-toggle.html:6 #: allianceauth/templates/allianceauth/night-toggle.html:6
msgid "Night Mode" msgid "Night Mode"
msgstr "Ночной режим" msgstr "Ночной режим"
#: allianceauth/authentication/models.py:105 #: allianceauth/authentication/models.py:108
#: allianceauth/menu/templates/menu/menu-user.html:46 #: allianceauth/menu/templates/menu/menu-user.html:46
msgid "Theme" msgid "Theme"
msgstr "" msgstr ""
#: allianceauth/authentication/models.py:122 #: allianceauth/authentication/models.py:125
#, python-format #, python-format
msgid "State changed to: %s" msgid "State changed to: %s"
msgstr "Статус изменен: %s" msgstr "Статус изменен: %s"
#: allianceauth/authentication/models.py:123 #: allianceauth/authentication/models.py:126
#, python-format #, python-format
msgid "Your user's state is now: %(state)s" msgid "Your user's state is now: %(state)s"
msgstr "Статус пилота: %(state)s" msgstr "Статус пилота: %(state)s"
@@ -128,27 +153,27 @@ msgstr "Статус пилота: %(state)s"
msgid "Dashboard" msgid "Dashboard"
msgstr "Панель показателей" msgstr "Панель показателей"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:7 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:5
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticscorpview.html:33 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticscorpview.html:33
#: allianceauth/hrapplications/templates/hrapplications/view.html:54 #: allianceauth/hrapplications/templates/hrapplications/view.html:54
msgid "Characters" msgid "Characters"
msgstr "Персонажи" msgstr "Персонажи"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:13 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:11
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:14 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:12
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:4 #: allianceauth/templates/allianceauth/top-menu-rh-default.html:4
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:6 #: allianceauth/templates/allianceauth/top-menu-rh-default.html:6
msgid "Add Character" msgid "Add Character"
msgstr "Добавить Персонажа" msgstr "Добавить Персонажа"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:16 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:14
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:17 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:15
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:10 #: allianceauth/templates/allianceauth/top-menu-rh-default.html:10
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:12 #: allianceauth/templates/allianceauth/top-menu-rh-default.html:12
msgid "Change Main" msgid "Change Main"
msgstr "Сменить основного персонажа" msgstr "Сменить основного персонажа"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:24 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:22
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:89 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:89
#: allianceauth/groupmanagement/templates/groupmanagement/groupmembership.html:23 #: allianceauth/groupmanagement/templates/groupmanagement/groupmembership.html:23
#: allianceauth/groupmanagement/templates/groupmanagement/groups.html:31 #: allianceauth/groupmanagement/templates/groupmanagement/groups.html:31
@@ -157,12 +182,12 @@ msgstr "Сменить основного персонажа"
msgid "Name" msgid "Name"
msgstr "Имя" msgstr "Имя"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:25 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:23
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticsview.html:33 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticsview.html:33
msgid "Corp" msgid "Corp"
msgstr "Корпорация" msgstr "Корпорация"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:26 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:24
#: allianceauth/corputils/templates/corputils/corpstats.html:125 #: allianceauth/corputils/templates/corputils/corpstats.html:125
#: allianceauth/hrapplications/templates/hrapplications/view.html:63 #: allianceauth/hrapplications/templates/hrapplications/view.html:63
msgid "Alliance" msgid "Alliance"
@@ -172,7 +197,7 @@ msgstr "Альянс"
msgid "Membership" msgid "Membership"
msgstr "" msgstr ""
#: allianceauth/authentication/templates/authentication/dashboard_groups.html:8 #: allianceauth/authentication/templates/authentication/dashboard_groups.html:10
msgid "State:" msgid "State:"
msgstr "" msgstr ""
@@ -408,6 +433,19 @@ msgstr "Выбранная корпорация уже в модуле стат
msgid "Failed to gather corporation statistics with selected token." msgid "Failed to gather corporation statistics with selected token."
msgstr "Невозможно получить статистику корпорации по данному токену." msgstr "Невозможно получить статистику корпорации по данному токену."
#: allianceauth/custom_css/apps.py:13 allianceauth/custom_css/models.py:36
#: allianceauth/custom_css/models.py:37 allianceauth/custom_css/models.py:47
msgid "Custom CSS"
msgstr ""
#: allianceauth/custom_css/models.py:25
msgid "Your custom CSS"
msgstr ""
#: allianceauth/custom_css/models.py:26
msgid "This CSS will be added to the site after the default CSS."
msgstr ""
#: allianceauth/fleetactivitytracking/auth_hooks.py:10 #: allianceauth/fleetactivitytracking/auth_hooks.py:10
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/characternotexisting.html:10 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/characternotexisting.html:10
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkcreate.html:11 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkcreate.html:11
@@ -500,8 +538,8 @@ msgstr "Пользователь"
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkmodify.html:37 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkmodify.html:37
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:42 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:42
#: allianceauth/optimer/form.py:13 allianceauth/timerboard/form.py:59 #: allianceauth/optimer/form.py:13 allianceauth/timerboard/form.py:37
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:16 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:17
#: allianceauth/timerboard/templates/timerboard/timertable.html:9 #: allianceauth/timerboard/templates/timerboard/timertable.html:9
msgid "System" msgid "System"
msgstr "Система" msgstr "Система"
@@ -853,7 +891,7 @@ msgstr "Запрос от"
#: allianceauth/groupmanagement/templates/groupmanagement/audit.html:31 #: allianceauth/groupmanagement/templates/groupmanagement/audit.html:31
#: allianceauth/optimer/templates/optimer/dashboard.ops.html:15 #: allianceauth/optimer/templates/optimer/dashboard.ops.html:15
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:15 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:16
msgid "Type" msgid "Type"
msgstr "Тип" msgstr "Тип"
@@ -945,7 +983,7 @@ msgid "Hidden"
msgstr "Скрытые" msgstr "Скрытые"
#: allianceauth/groupmanagement/templates/groupmanagement/groupmembership.html:45 #: allianceauth/groupmanagement/templates/groupmanagement/groupmembership.html:45
#: allianceauth/templates/allianceauth/admin-status/overview.html:19 #: allianceauth/templates/allianceauth/admin-status/overview.html:16
msgid "Open" msgid "Open"
msgstr "Открыть" msgstr "Открыть"
@@ -1425,16 +1463,18 @@ msgstr "Уведомления"
msgid "Super User" msgid "Super User"
msgstr "" msgstr ""
#: allianceauth/menu/templates/menu/menu-user.html:68 #: allianceauth/menu/templates/menu/menu-user.html:70
#: allianceauth/templates/allianceauth/top-menu-admin.html:9 #: allianceauth/templates/allianceauth/top-menu-admin.html:9
msgid "Admin" msgid "Admin"
msgstr "Администратор" msgstr "Администратор"
#: allianceauth/menu/templates/menu/menu-user.html:80 #: allianceauth/menu/templates/menu/menu-user.html:82
msgid "Sign Out" msgid "Sign Out"
msgstr "" msgstr ""
#: allianceauth/menu/templates/menu/menu-user.html:84 #: allianceauth/menu/templates/menu/menu-user.html:86
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:17
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:18
msgid "Sign In" msgid "Sign In"
msgstr "" msgstr ""
@@ -1582,7 +1622,7 @@ msgid "Form Up System"
msgstr "Система сбора" msgstr "Система сбора"
#: allianceauth/optimer/templates/optimer/dashboard.ops.html:17 #: allianceauth/optimer/templates/optimer/dashboard.ops.html:17
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:17 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:18
msgid "EVE Time" msgid "EVE Time"
msgstr "EVE Время" msgstr "EVE Время"
@@ -1779,17 +1819,17 @@ msgstr ""
"произошло по ошибке, пожалуйста свяжитесь с админом." "произошло по ошибке, пожалуйста свяжитесь с админом."
#: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:26 #: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:26
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:20 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:22
msgid "Activate" msgid "Activate"
msgstr "Активировать" msgstr "Активировать"
#: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:32 #: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:32
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:32 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:34
msgid "Reset Password" msgid "Reset Password"
msgstr "Сброс пароля" msgstr "Сброс пароля"
#: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:38 #: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:38
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:38 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:40
msgid "Deactivate" msgid "Deactivate"
msgstr "Дизактивировать" msgstr "Дизактивировать"
@@ -1880,12 +1920,12 @@ msgstr "Установить пароль IPSuite4."
msgid "Deactivated IPSuite4 account." msgid "Deactivated IPSuite4 account."
msgstr "Деактивированный аккаунт IPSuite4." msgstr "Деактивированный аккаунт IPSuite4."
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:26 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:28
#: allianceauth/services/templates/services/service_password.html:26 #: allianceauth/services/templates/services/service_password.html:26
msgid "Set Password" msgid "Set Password"
msgstr "Установить Пароль" msgstr "Установить Пароль"
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:44 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:46
msgid "Connect" msgid "Connect"
msgstr "Подключить" msgstr "Подключить"
@@ -2453,56 +2493,56 @@ msgstr "Сохранены изменения в SRP флот %(fleetname)s"
msgid "Your Server received an ESI error response code of " msgid "Your Server received an ESI error response code of "
msgstr "" msgstr ""
#: allianceauth/templates/allianceauth/admin-status/overview.html:11 #: allianceauth/templates/allianceauth/admin-status/overview.html:8
msgid "Alliance Auth Notifications" msgid "Alliance Auth Notifications"
msgstr "Уведомления об Альянсовых авторизациях" msgstr "Уведомления об Альянсовых авторизациях"
#: allianceauth/templates/allianceauth/admin-status/overview.html:21 #: allianceauth/templates/allianceauth/admin-status/overview.html:18
msgid "Closed" msgid "Closed"
msgstr "Закрыт" msgstr "Закрыт"
#: allianceauth/templates/allianceauth/admin-status/overview.html:27 #: allianceauth/templates/allianceauth/admin-status/overview.html:24
msgid "No notifications at this time" msgid "No notifications at this time"
msgstr "" msgstr ""
#: allianceauth/templates/allianceauth/admin-status/overview.html:36 #: allianceauth/templates/allianceauth/admin-status/overview.html:33
msgid "Powered by GitLab" msgid "Powered by GitLab"
msgstr "При поддержке GitLab" msgstr "При поддержке GitLab"
#: allianceauth/templates/allianceauth/admin-status/overview.html:42 #: allianceauth/templates/allianceauth/admin-status/overview.html:39
msgid "Support Discord" msgid "Support Discord"
msgstr "Поддержка Discord" msgstr "Поддержка Discord"
#: allianceauth/templates/allianceauth/admin-status/overview.html:59 #: allianceauth/templates/allianceauth/admin-status/overview.html:53
#: allianceauth/templates/allianceauth/admin-status/overview.html:63 #: allianceauth/templates/allianceauth/admin-status/overview.html:57
msgid "Software Version" msgid "Software Version"
msgstr "Версия приложения" msgstr "Версия приложения"
#: allianceauth/templates/allianceauth/admin-status/overview.html:66 #: allianceauth/templates/allianceauth/admin-status/overview.html:60
msgid "Current" msgid "Current"
msgstr "Текущий" msgstr "Текущий"
#: allianceauth/templates/allianceauth/admin-status/overview.html:73 #: allianceauth/templates/allianceauth/admin-status/overview.html:67
msgid "Latest Stable" msgid "Latest Stable"
msgstr "Стабильная Версия" msgstr "Стабильная Версия"
#: allianceauth/templates/allianceauth/admin-status/overview.html:78 #: allianceauth/templates/allianceauth/admin-status/overview.html:72
msgid "Update available" msgid "Update available"
msgstr "Доступно обновление" msgstr "Доступно обновление"
#: allianceauth/templates/allianceauth/admin-status/overview.html:86 #: allianceauth/templates/allianceauth/admin-status/overview.html:80
msgid "Latest Pre-Release" msgid "Latest Pre-Release"
msgstr "Предрелизная Версия" msgstr "Предрелизная Версия"
#: allianceauth/templates/allianceauth/admin-status/overview.html:91 #: allianceauth/templates/allianceauth/admin-status/overview.html:85
msgid "Pre-Release available" msgid "Pre-Release available"
msgstr "Предрелизная Версия" msgstr "Предрелизная Версия"
#: allianceauth/templates/allianceauth/admin-status/overview.html:102 #: allianceauth/templates/allianceauth/admin-status/overview.html:95
msgid "Task Queue" msgid "Task Queue"
msgstr "Список задач" msgstr "Список задач"
#: allianceauth/templates/allianceauth/admin-status/overview.html:107 #: allianceauth/templates/allianceauth/admin-status/overview.html:100
#, python-format #, python-format
msgid "" msgid ""
"\n" "\n"
@@ -2510,11 +2550,11 @@ msgid ""
" " " "
msgstr "" msgstr ""
#: allianceauth/templates/allianceauth/admin-status/overview.html:123 #: allianceauth/templates/allianceauth/admin-status/overview.html:116
msgid "running" msgid "running"
msgstr "" msgstr ""
#: allianceauth/templates/allianceauth/admin-status/overview.html:124 #: allianceauth/templates/allianceauth/admin-status/overview.html:117
msgid "queued" msgid "queued"
msgstr "" msgstr ""
@@ -2543,114 +2583,216 @@ msgstr "Проложить маршрут"
msgid "Select Theme" msgid "Select Theme"
msgstr "" msgstr ""
#: allianceauth/timerboard/form.py:53 #: allianceauth/timerboard/form.py:36
#: allianceauth/timerboard/templates/timerboard/timertable.html:172 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:14
msgid "Other"
msgstr "Прочие"
#: allianceauth/timerboard/form.py:54
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:38
#: allianceauth/timerboard/templates/timerboard/timertable.html:44
msgid "Friendly"
msgstr "Дружественный"
#: allianceauth/timerboard/form.py:55
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:33
#: allianceauth/timerboard/templates/timerboard/timertable.html:38
msgid "Hostile"
msgstr "Вражеский"
#: allianceauth/timerboard/form.py:56
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:43
#: allianceauth/timerboard/templates/timerboard/timertable.html:50
msgid "Neutral"
msgstr "Нейтрал"
#: allianceauth/timerboard/form.py:58
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:13
#: allianceauth/timerboard/templates/timerboard/timertable.html:7 #: allianceauth/timerboard/templates/timerboard/timertable.html:7
msgid "Details" msgid "Details"
msgstr "Детали" msgstr "Детали"
#: allianceauth/timerboard/form.py:60 #: allianceauth/timerboard/form.py:38
msgid "Planet/Moon" msgid "Planet/Moon"
msgstr "Планета / Луна" msgstr "Планета / Луна"
#: allianceauth/timerboard/form.py:61 #: allianceauth/timerboard/form.py:39
msgid "Structure Type" msgid "Structure Type"
msgstr "Тип структуры" msgstr "Тип структуры"
#: allianceauth/timerboard/form.py:62 #: allianceauth/timerboard/form.py:40
msgid "Timer Type" msgid "Timer Type"
msgstr "Тип таймера" msgstr "Тип таймера"
#: allianceauth/timerboard/form.py:63 #: allianceauth/timerboard/form.py:41
#: allianceauth/timerboard/templates/timerboard/timertable.html:8 #: allianceauth/timerboard/templates/timerboard/timertable.html:8
msgid "Objective" msgid "Objective"
msgstr "Задача" msgstr "Задача"
#: allianceauth/timerboard/form.py:64 #: allianceauth/timerboard/form.py:42
msgid "Absolute Timer" msgid "Absolute Timer"
msgstr "" msgstr ""
#: allianceauth/timerboard/form.py:65 #: allianceauth/timerboard/form.py:43
msgid "Date and Time" msgid "Date and Time"
msgstr "" msgstr ""
#: allianceauth/timerboard/form.py:66 #: allianceauth/timerboard/form.py:44
msgid "Days Remaining" msgid "Days Remaining"
msgstr "Дней осталось" msgstr "Дней осталось"
#: allianceauth/timerboard/form.py:67 #: allianceauth/timerboard/form.py:45
msgid "Hours Remaining" msgid "Hours Remaining"
msgstr "Часов осталось" msgstr "Часов осталось"
#: allianceauth/timerboard/form.py:69 #: allianceauth/timerboard/form.py:47
msgid "Minutes Remaining" msgid "Minutes Remaining"
msgstr "Минут осталось" msgstr "Минут осталось"
#: allianceauth/timerboard/form.py:71 #: allianceauth/timerboard/form.py:48
msgid "Important" msgid "Important"
msgstr "Важно" msgstr "Важно"
#: allianceauth/timerboard/form.py:72 #: allianceauth/timerboard/form.py:49
msgid "Corp-Restricted" msgid "Corp-Restricted"
msgstr "Корпорация зарегистрированна" msgstr "Корпорация зарегистрированна"
#: allianceauth/timerboard/models.py:14 #: allianceauth/timerboard/models.py:15
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:39
#: allianceauth/timerboard/templates/timerboard/timertable.html:36
msgid "Friendly"
msgstr "Дружественный"
#: allianceauth/timerboard/models.py:16
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:34
#: allianceauth/timerboard/templates/timerboard/timertable.html:34
msgid "Hostile"
msgstr "Вражеский"
#: allianceauth/timerboard/models.py:17
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:44
#: allianceauth/timerboard/templates/timerboard/timertable.html:38
msgid "Neutral"
msgstr "Нейтрал"
#: allianceauth/timerboard/models.py:24
#: allianceauth/timerboard/templates/timerboard/timertable.html:48
msgid "POCO"
msgstr ""
#: allianceauth/timerboard/models.py:25
#: allianceauth/timerboard/templates/timerboard/timertable.html:50
msgid "Orbital Skyhook"
msgstr ""
#: allianceauth/timerboard/models.py:26
#: allianceauth/timerboard/templates/timerboard/timertable.html:52
msgid "I-HUB"
msgstr ""
#: allianceauth/timerboard/models.py:27
#: allianceauth/timerboard/templates/timerboard/timertable.html:55
msgid "TCU"
msgstr ""
#: allianceauth/timerboard/models.py:28
#: allianceauth/timerboard/templates/timerboard/timertable.html:57
msgid "POS [S]"
msgstr ""
#: allianceauth/timerboard/models.py:29
#: allianceauth/timerboard/templates/timerboard/timertable.html:59
msgid "POS [M]"
msgstr ""
#: allianceauth/timerboard/models.py:30
#: allianceauth/timerboard/templates/timerboard/timertable.html:61
msgid "POS [L]"
msgstr ""
#: allianceauth/timerboard/models.py:31
#: allianceauth/timerboard/templates/timerboard/timertable.html:63
msgid "Astrahus"
msgstr ""
#: allianceauth/timerboard/models.py:32
#: allianceauth/timerboard/templates/timerboard/timertable.html:65
msgid "Fortizar"
msgstr ""
#: allianceauth/timerboard/models.py:33
#: allianceauth/timerboard/templates/timerboard/timertable.html:67
msgid "Keepstar"
msgstr ""
#: allianceauth/timerboard/models.py:34
#: allianceauth/timerboard/templates/timerboard/timertable.html:69
msgid "Raitaru"
msgstr ""
#: allianceauth/timerboard/models.py:35
#: allianceauth/timerboard/templates/timerboard/timertable.html:71
msgid "Azbel"
msgstr ""
#: allianceauth/timerboard/models.py:36
#: allianceauth/timerboard/templates/timerboard/timertable.html:73
msgid "Sotiyo"
msgstr ""
#: allianceauth/timerboard/models.py:37
#: allianceauth/timerboard/templates/timerboard/timertable.html:75
msgid "Athanor"
msgstr ""
#: allianceauth/timerboard/models.py:38
#: allianceauth/timerboard/templates/timerboard/timertable.html:77
msgid "Tatara"
msgstr ""
#: allianceauth/timerboard/models.py:39
msgid "Pharolux Cyno Beacon"
msgstr ""
#: allianceauth/timerboard/models.py:40
msgid "Tenebrex Cyno Jammer"
msgstr ""
#: allianceauth/timerboard/models.py:41
#: allianceauth/timerboard/templates/timerboard/timertable.html:83
msgid "Ansiblex Jump Gate"
msgstr ""
#: allianceauth/timerboard/models.py:42
#: allianceauth/timerboard/templates/timerboard/timertable.html:85
msgid "Moon Mining Cycle"
msgstr ""
#: allianceauth/timerboard/models.py:43
#: allianceauth/timerboard/templates/timerboard/timertable.html:87
msgid "Metenox Moon Drill"
msgstr ""
#: allianceauth/timerboard/models.py:44
#: allianceauth/timerboard/templates/timerboard/timertable.html:89
msgid "Other"
msgstr "Прочие"
#: allianceauth/timerboard/models.py:51
msgid "Not Specified" msgid "Not Specified"
msgstr "Не указано" msgstr "Не указано"
#: allianceauth/timerboard/models.py:15 #: allianceauth/timerboard/models.py:52
msgid "Shield" msgid "Shield"
msgstr "Щит" msgstr "Щит"
#: allianceauth/timerboard/models.py:16 #: allianceauth/timerboard/models.py:53
msgid "Armor" msgid "Armor"
msgstr "Броня" msgstr "Броня"
#: allianceauth/timerboard/models.py:17 #: allianceauth/timerboard/models.py:54
msgid "Hull" msgid "Hull"
msgstr "Структура" msgstr "Структура"
#: allianceauth/timerboard/models.py:18 #: allianceauth/timerboard/models.py:55
msgid "Final" msgid "Final"
msgstr "Финальный" msgstr "Финальный"
#: allianceauth/timerboard/models.py:19 #: allianceauth/timerboard/models.py:56
msgid "Anchoring" msgid "Anchoring"
msgstr "Постановка на якорь" msgstr "Постановка на якорь"
#: allianceauth/timerboard/models.py:20 #: allianceauth/timerboard/models.py:57
msgid "Unanchoring" msgid "Unanchoring"
msgstr "Снятие с якоря" msgstr "Снятие с якоря"
#: allianceauth/timerboard/models.py:58
msgid "Abandoned"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:7 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:7
#: allianceauth/timerboard/templates/timerboard/view.html:53 #: allianceauth/timerboard/templates/timerboard/view.html:53
msgid "Upcoming Timers" msgid "Upcoming Timers"
msgstr "" msgstr ""
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:14 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:15
msgid "Timer" msgid "Timer"
msgstr "" msgstr ""
@@ -2694,78 +2836,14 @@ msgstr "Обновить Структурный Таймер"
msgid "Structure" msgid "Structure"
msgstr "Структура" msgstr "Структура"
#: allianceauth/timerboard/templates/timerboard/timertable.html:64 #: allianceauth/timerboard/templates/timerboard/timertable.html:79
msgid "POCO"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:70
msgid "I-HUB"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:76
msgid "TCU"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:82
msgid "POS [S]"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:88
msgid "POS [M]"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:94
msgid "POS [L]"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:100
msgid "Astrahus"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:106
msgid "Fortizar"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:112
msgid "Keepstar"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:118
msgid "Raitaru"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:124
msgid "Azbel"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:130
msgid "Sotiyo"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:136
msgid "Athanor"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:142
msgid "Tatara"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:148
msgid "Cyno Beacon" msgid "Cyno Beacon"
msgstr "" msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:154 #: allianceauth/timerboard/templates/timerboard/timertable.html:81
msgid "Cyno Jammer" msgid "Cyno Jammer"
msgstr "" msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:160
msgid "Ansiblex Jump Gate"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:166
msgid "Moon Mining Cycle"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/view.html:9 #: allianceauth/timerboard/templates/timerboard/view.html:9
msgid "Structure Timer Management" msgid "Structure Timer Management"
msgstr "Управление Структурными Таймерами" msgstr "Управление Структурными Таймерами"

View File

@@ -13,7 +13,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-03-13 19:10+1000\n" "POT-Creation-Date: 2024-09-13 19:57+1000\n"
"PO-Revision-Date: 2023-11-08 13:50+0000\n" "PO-Revision-Date: 2023-11-08 13:50+0000\n"
"Last-Translator: Andrii Yukhymchak, 2024\n" "Last-Translator: Andrii Yukhymchak, 2024\n"
"Language-Team: Ukrainian (https://app.transifex.com/alliance-auth/teams/107430/uk/)\n" "Language-Team: Ukrainian (https://app.transifex.com/alliance-auth/teams/107430/uk/)\n"
@@ -61,66 +61,90 @@ msgid "You are not allowed to add or remove these restricted groups: %s"
msgstr "Вам заборонено додавати або видаляти ці обмежені групи: %s" msgstr "Вам заборонено додавати або видаляти ці обмежені групи: %s"
#: allianceauth/authentication/models.py:71 #: allianceauth/authentication/models.py:71
#: allianceauth/project_template/project_name/settings/base.py:99
msgid "English" msgid "English"
msgstr "Англійська" msgstr "Англійська"
#: allianceauth/authentication/models.py:72 #: allianceauth/authentication/models.py:72
msgid "Czech"
msgstr ""
#: allianceauth/authentication/models.py:73
#: allianceauth/project_template/project_name/settings/base.py:101
msgid "German" msgid "German"
msgstr "Німецька" msgstr "Німецька"
#: allianceauth/authentication/models.py:73 #: allianceauth/authentication/models.py:74
#: allianceauth/project_template/project_name/settings/base.py:102
msgid "Spanish" msgid "Spanish"
msgstr "Іспанська" msgstr "Іспанська"
#: allianceauth/authentication/models.py:74
msgid "Chinese Simplified"
msgstr "Китайська спрощена"
#: allianceauth/authentication/models.py:75 #: allianceauth/authentication/models.py:75
msgid "Russian" #: allianceauth/project_template/project_name/settings/base.py:103
msgstr "Російська"
#: allianceauth/authentication/models.py:76
msgid "Korean"
msgstr "Корейська"
#: allianceauth/authentication/models.py:77
msgid "French"
msgstr "Французька"
#: allianceauth/authentication/models.py:78
msgid "Japanese"
msgstr "Японська"
#: allianceauth/authentication/models.py:79
msgid "Italian" msgid "Italian"
msgstr "Італійська" msgstr "Італійська"
#: allianceauth/authentication/models.py:76
#: allianceauth/project_template/project_name/settings/base.py:104
msgid "Japanese"
msgstr "Японська"
#: allianceauth/authentication/models.py:77
#: allianceauth/project_template/project_name/settings/base.py:105
msgid "Korean"
msgstr "Корейська"
#: allianceauth/authentication/models.py:78
#: allianceauth/project_template/project_name/settings/base.py:106
msgid "French"
msgstr "Французька"
#: allianceauth/authentication/models.py:79
#: allianceauth/project_template/project_name/settings/base.py:109
msgid "Russian"
msgstr "Російська"
#: allianceauth/authentication/models.py:80 #: allianceauth/authentication/models.py:80
#: allianceauth/project_template/project_name/settings/base.py:107
msgid "Dutch"
msgstr ""
#: allianceauth/authentication/models.py:81
#: allianceauth/project_template/project_name/settings/base.py:108
msgid "Polish"
msgstr ""
#: allianceauth/authentication/models.py:82
#: allianceauth/project_template/project_name/settings/base.py:110
msgid "Ukrainian" msgid "Ukrainian"
msgstr "Українська" msgstr "Українська"
#: allianceauth/authentication/models.py:96 #: allianceauth/authentication/models.py:83
#: allianceauth/project_template/project_name/settings/base.py:111
msgid "Simplified Chinese"
msgstr ""
#: allianceauth/authentication/models.py:99
#: allianceauth/menu/templates/menu/menu-user.html:42 #: allianceauth/menu/templates/menu/menu-user.html:42
msgid "Language" msgid "Language"
msgstr "Мова" msgstr "Мова"
#: allianceauth/authentication/models.py:101 #: allianceauth/authentication/models.py:104
#: allianceauth/templates/allianceauth/night-toggle.html:6 #: allianceauth/templates/allianceauth/night-toggle.html:6
msgid "Night Mode" msgid "Night Mode"
msgstr "Нічний режим" msgstr "Нічний режим"
#: allianceauth/authentication/models.py:105 #: allianceauth/authentication/models.py:108
#: allianceauth/menu/templates/menu/menu-user.html:46 #: allianceauth/menu/templates/menu/menu-user.html:46
msgid "Theme" msgid "Theme"
msgstr "Тема" msgstr "Тема"
#: allianceauth/authentication/models.py:122 #: allianceauth/authentication/models.py:125
#, python-format #, python-format
msgid "State changed to: %s" msgid "State changed to: %s"
msgstr "Стан змінено на: %s" msgstr "Стан змінено на: %s"
#: allianceauth/authentication/models.py:123 #: allianceauth/authentication/models.py:126
#, python-format #, python-format
msgid "Your user's state is now: %(state)s" msgid "Your user's state is now: %(state)s"
msgstr "Стан вашого користувача зараз: %(state)s" msgstr "Стан вашого користувача зараз: %(state)s"
@@ -132,27 +156,27 @@ msgstr "Стан вашого користувача зараз: %(state)s"
msgid "Dashboard" msgid "Dashboard"
msgstr "Панель приладів" msgstr "Панель приладів"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:7 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:5
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticscorpview.html:33 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticscorpview.html:33
#: allianceauth/hrapplications/templates/hrapplications/view.html:54 #: allianceauth/hrapplications/templates/hrapplications/view.html:54
msgid "Characters" msgid "Characters"
msgstr "Персонажі" msgstr "Персонажі"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:13 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:11
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:14 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:12
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:4 #: allianceauth/templates/allianceauth/top-menu-rh-default.html:4
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:6 #: allianceauth/templates/allianceauth/top-menu-rh-default.html:6
msgid "Add Character" msgid "Add Character"
msgstr "Додати персонажа" msgstr "Додати персонажа"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:16 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:14
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:17 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:15
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:10 #: allianceauth/templates/allianceauth/top-menu-rh-default.html:10
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:12 #: allianceauth/templates/allianceauth/top-menu-rh-default.html:12
msgid "Change Main" msgid "Change Main"
msgstr "Змінити основного персонажа" msgstr "Змінити основного персонажа"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:24 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:22
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:89 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:89
#: allianceauth/groupmanagement/templates/groupmanagement/groupmembership.html:23 #: allianceauth/groupmanagement/templates/groupmanagement/groupmembership.html:23
#: allianceauth/groupmanagement/templates/groupmanagement/groups.html:31 #: allianceauth/groupmanagement/templates/groupmanagement/groups.html:31
@@ -161,12 +185,12 @@ msgstr "Змінити основного персонажа"
msgid "Name" msgid "Name"
msgstr "Ім'я" msgstr "Ім'я"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:25 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:23
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticsview.html:33 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticsview.html:33
msgid "Corp" msgid "Corp"
msgstr "Корпорація" msgstr "Корпорація"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:26 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:24
#: allianceauth/corputils/templates/corputils/corpstats.html:125 #: allianceauth/corputils/templates/corputils/corpstats.html:125
#: allianceauth/hrapplications/templates/hrapplications/view.html:63 #: allianceauth/hrapplications/templates/hrapplications/view.html:63
msgid "Alliance" msgid "Alliance"
@@ -176,7 +200,7 @@ msgstr "Альянс"
msgid "Membership" msgid "Membership"
msgstr "Членство" msgstr "Членство"
#: allianceauth/authentication/templates/authentication/dashboard_groups.html:8 #: allianceauth/authentication/templates/authentication/dashboard_groups.html:10
msgid "State:" msgid "State:"
msgstr "Стан:" msgstr "Стан:"
@@ -425,6 +449,19 @@ msgstr "Вибрана корпорація вже має модуль стат
msgid "Failed to gather corporation statistics with selected token." msgid "Failed to gather corporation statistics with selected token."
msgstr "Не вдалося зібрати статистику корпорації з обраним токеном." msgstr "Не вдалося зібрати статистику корпорації з обраним токеном."
#: allianceauth/custom_css/apps.py:13 allianceauth/custom_css/models.py:36
#: allianceauth/custom_css/models.py:37 allianceauth/custom_css/models.py:47
msgid "Custom CSS"
msgstr ""
#: allianceauth/custom_css/models.py:25
msgid "Your custom CSS"
msgstr ""
#: allianceauth/custom_css/models.py:26
msgid "This CSS will be added to the site after the default CSS."
msgstr ""
#: allianceauth/fleetactivitytracking/auth_hooks.py:10 #: allianceauth/fleetactivitytracking/auth_hooks.py:10
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/characternotexisting.html:10 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/characternotexisting.html:10
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkcreate.html:11 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkcreate.html:11
@@ -517,8 +554,8 @@ msgstr "Користувач"
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkmodify.html:37 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkmodify.html:37
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:42 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:42
#: allianceauth/optimer/form.py:13 allianceauth/timerboard/form.py:59 #: allianceauth/optimer/form.py:13 allianceauth/timerboard/form.py:37
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:16 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:17
#: allianceauth/timerboard/templates/timerboard/timertable.html:9 #: allianceauth/timerboard/templates/timerboard/timertable.html:9
msgid "System" msgid "System"
msgstr "Система" msgstr "Система"
@@ -868,7 +905,7 @@ msgstr "Запитувач"
#: allianceauth/groupmanagement/templates/groupmanagement/audit.html:31 #: allianceauth/groupmanagement/templates/groupmanagement/audit.html:31
#: allianceauth/optimer/templates/optimer/dashboard.ops.html:15 #: allianceauth/optimer/templates/optimer/dashboard.ops.html:15
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:15 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:16
msgid "Type" msgid "Type"
msgstr "Тип" msgstr "Тип"
@@ -960,7 +997,7 @@ msgid "Hidden"
msgstr "Прихована" msgstr "Прихована"
#: allianceauth/groupmanagement/templates/groupmanagement/groupmembership.html:45 #: allianceauth/groupmanagement/templates/groupmanagement/groupmembership.html:45
#: allianceauth/templates/allianceauth/admin-status/overview.html:19 #: allianceauth/templates/allianceauth/admin-status/overview.html:16
msgid "Open" msgid "Open"
msgstr "Відкрита" msgstr "Відкрита"
@@ -1444,16 +1481,18 @@ msgstr "Повідомлення"
msgid "Super User" msgid "Super User"
msgstr "Супер користувач" msgstr "Супер користувач"
#: allianceauth/menu/templates/menu/menu-user.html:68 #: allianceauth/menu/templates/menu/menu-user.html:70
#: allianceauth/templates/allianceauth/top-menu-admin.html:9 #: allianceauth/templates/allianceauth/top-menu-admin.html:9
msgid "Admin" msgid "Admin"
msgstr "Адміністратор" msgstr "Адміністратор"
#: allianceauth/menu/templates/menu/menu-user.html:80 #: allianceauth/menu/templates/menu/menu-user.html:82
msgid "Sign Out" msgid "Sign Out"
msgstr "Вийти" msgstr "Вийти"
#: allianceauth/menu/templates/menu/menu-user.html:84 #: allianceauth/menu/templates/menu/menu-user.html:86
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:17
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:18
msgid "Sign In" msgid "Sign In"
msgstr "Увійти" msgstr "Увійти"
@@ -1601,7 +1640,7 @@ msgid "Form Up System"
msgstr "Система збору флоту" msgstr "Система збору флоту"
#: allianceauth/optimer/templates/optimer/dashboard.ops.html:17 #: allianceauth/optimer/templates/optimer/dashboard.ops.html:17
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:17 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:18
msgid "EVE Time" msgid "EVE Time"
msgstr "Час за EVE" msgstr "Час за EVE"
@@ -1798,17 +1837,17 @@ msgstr ""
"думаєте, що це помилка, будь ласка, зверніться до адміністратора." "думаєте, що це помилка, будь ласка, зверніться до адміністратора."
#: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:26 #: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:26
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:20 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:22
msgid "Activate" msgid "Activate"
msgstr "Активувати" msgstr "Активувати"
#: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:32 #: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:32
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:32 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:34
msgid "Reset Password" msgid "Reset Password"
msgstr "Скинути пароль" msgstr "Скинути пароль"
#: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:38 #: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:38
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:38 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:40
msgid "Deactivate" msgid "Deactivate"
msgstr "Деактивувати" msgstr "Деактивувати"
@@ -1895,12 +1934,12 @@ msgstr "Встановити пароль IPSuite4."
msgid "Deactivated IPSuite4 account." msgid "Deactivated IPSuite4 account."
msgstr "Деактивовано обліковий запис IPSuite4." msgstr "Деактивовано обліковий запис IPSuite4."
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:26 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:28
#: allianceauth/services/templates/services/service_password.html:26 #: allianceauth/services/templates/services/service_password.html:26
msgid "Set Password" msgid "Set Password"
msgstr "Встановити пароль" msgstr "Встановити пароль"
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:44 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:46
msgid "Connect" msgid "Connect"
msgstr "Підєднатись" msgstr "Підєднатись"
@@ -2475,56 +2514,56 @@ msgstr "Збережено зміни до флоту SRP %(fleetname)s"
msgid "Your Server received an ESI error response code of " msgid "Your Server received an ESI error response code of "
msgstr "Ваш сервер отримав код відповіді на помилку ESI " msgstr "Ваш сервер отримав код відповіді на помилку ESI "
#: allianceauth/templates/allianceauth/admin-status/overview.html:11 #: allianceauth/templates/allianceauth/admin-status/overview.html:8
msgid "Alliance Auth Notifications" msgid "Alliance Auth Notifications"
msgstr "Сповіщення Alliance Auth" msgstr "Сповіщення Alliance Auth"
#: allianceauth/templates/allianceauth/admin-status/overview.html:21 #: allianceauth/templates/allianceauth/admin-status/overview.html:18
msgid "Closed" msgid "Closed"
msgstr "Закрито" msgstr "Закрито"
#: allianceauth/templates/allianceauth/admin-status/overview.html:27 #: allianceauth/templates/allianceauth/admin-status/overview.html:24
msgid "No notifications at this time" msgid "No notifications at this time"
msgstr "На даний момент сповіщень немає" msgstr "На даний момент сповіщень немає"
#: allianceauth/templates/allianceauth/admin-status/overview.html:36 #: allianceauth/templates/allianceauth/admin-status/overview.html:33
msgid "Powered by GitLab" msgid "Powered by GitLab"
msgstr "Powered by GitLab" msgstr "Powered by GitLab"
#: allianceauth/templates/allianceauth/admin-status/overview.html:42 #: allianceauth/templates/allianceauth/admin-status/overview.html:39
msgid "Support Discord" msgid "Support Discord"
msgstr "Discord підтримки" msgstr "Discord підтримки"
#: allianceauth/templates/allianceauth/admin-status/overview.html:59 #: allianceauth/templates/allianceauth/admin-status/overview.html:53
#: allianceauth/templates/allianceauth/admin-status/overview.html:63 #: allianceauth/templates/allianceauth/admin-status/overview.html:57
msgid "Software Version" msgid "Software Version"
msgstr "Версія програмного забезпечення" msgstr "Версія програмного забезпечення"
#: allianceauth/templates/allianceauth/admin-status/overview.html:66 #: allianceauth/templates/allianceauth/admin-status/overview.html:60
msgid "Current" msgid "Current"
msgstr "Поточна" msgstr "Поточна"
#: allianceauth/templates/allianceauth/admin-status/overview.html:73 #: allianceauth/templates/allianceauth/admin-status/overview.html:67
msgid "Latest Stable" msgid "Latest Stable"
msgstr "Остання стабільна" msgstr "Остання стабільна"
#: allianceauth/templates/allianceauth/admin-status/overview.html:78 #: allianceauth/templates/allianceauth/admin-status/overview.html:72
msgid "Update available" msgid "Update available"
msgstr "Є доступне оновлення" msgstr "Є доступне оновлення"
#: allianceauth/templates/allianceauth/admin-status/overview.html:86 #: allianceauth/templates/allianceauth/admin-status/overview.html:80
msgid "Latest Pre-Release" msgid "Latest Pre-Release"
msgstr "Останній передрелізний випуск" msgstr "Останній передрелізний випуск"
#: allianceauth/templates/allianceauth/admin-status/overview.html:91 #: allianceauth/templates/allianceauth/admin-status/overview.html:85
msgid "Pre-Release available" msgid "Pre-Release available"
msgstr "Доступний Попередній Реліз" msgstr "Доступний Попередній Реліз"
#: allianceauth/templates/allianceauth/admin-status/overview.html:102 #: allianceauth/templates/allianceauth/admin-status/overview.html:95
msgid "Task Queue" msgid "Task Queue"
msgstr "Черга Завдань" msgstr "Черга Завдань"
#: allianceauth/templates/allianceauth/admin-status/overview.html:107 #: allianceauth/templates/allianceauth/admin-status/overview.html:100
#, python-format #, python-format
msgid "" msgid ""
"\n" "\n"
@@ -2535,11 +2574,11 @@ msgstr ""
" Статус %(total)s оброблених завдань • останні %(latest)s\n" " Статус %(total)s оброблених завдань • останні %(latest)s\n"
" " " "
#: allianceauth/templates/allianceauth/admin-status/overview.html:123 #: allianceauth/templates/allianceauth/admin-status/overview.html:116
msgid "running" msgid "running"
msgstr "в праці" msgstr "в праці"
#: allianceauth/templates/allianceauth/admin-status/overview.html:124 #: allianceauth/templates/allianceauth/admin-status/overview.html:117
msgid "queued" msgid "queued"
msgstr "у черзі" msgstr "у черзі"
@@ -2568,114 +2607,216 @@ msgstr "Перемикання навігації"
msgid "Select Theme" msgid "Select Theme"
msgstr "Виберіть тему" msgstr "Виберіть тему"
#: allianceauth/timerboard/form.py:53 #: allianceauth/timerboard/form.py:36
#: allianceauth/timerboard/templates/timerboard/timertable.html:172 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:14
msgid "Other"
msgstr "Інше"
#: allianceauth/timerboard/form.py:54
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:38
#: allianceauth/timerboard/templates/timerboard/timertable.html:44
msgid "Friendly"
msgstr "Дружній"
#: allianceauth/timerboard/form.py:55
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:33
#: allianceauth/timerboard/templates/timerboard/timertable.html:38
msgid "Hostile"
msgstr "Ворожий"
#: allianceauth/timerboard/form.py:56
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:43
#: allianceauth/timerboard/templates/timerboard/timertable.html:50
msgid "Neutral"
msgstr "Нейтральний"
#: allianceauth/timerboard/form.py:58
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:13
#: allianceauth/timerboard/templates/timerboard/timertable.html:7 #: allianceauth/timerboard/templates/timerboard/timertable.html:7
msgid "Details" msgid "Details"
msgstr "Деталі" msgstr "Деталі"
#: allianceauth/timerboard/form.py:60 #: allianceauth/timerboard/form.py:38
msgid "Planet/Moon" msgid "Planet/Moon"
msgstr "Планета/місяць" msgstr "Планета/місяць"
#: allianceauth/timerboard/form.py:61 #: allianceauth/timerboard/form.py:39
msgid "Structure Type" msgid "Structure Type"
msgstr "Тип структури" msgstr "Тип структури"
#: allianceauth/timerboard/form.py:62 #: allianceauth/timerboard/form.py:40
msgid "Timer Type" msgid "Timer Type"
msgstr "Тип таймера" msgstr "Тип таймера"
#: allianceauth/timerboard/form.py:63 #: allianceauth/timerboard/form.py:41
#: allianceauth/timerboard/templates/timerboard/timertable.html:8 #: allianceauth/timerboard/templates/timerboard/timertable.html:8
msgid "Objective" msgid "Objective"
msgstr "Мета" msgstr "Мета"
#: allianceauth/timerboard/form.py:64 #: allianceauth/timerboard/form.py:42
msgid "Absolute Timer" msgid "Absolute Timer"
msgstr "Абсолютний таймер" msgstr "Абсолютний таймер"
#: allianceauth/timerboard/form.py:65 #: allianceauth/timerboard/form.py:43
msgid "Date and Time" msgid "Date and Time"
msgstr "Дата/Час" msgstr "Дата/Час"
#: allianceauth/timerboard/form.py:66 #: allianceauth/timerboard/form.py:44
msgid "Days Remaining" msgid "Days Remaining"
msgstr "Залишилося днів" msgstr "Залишилося днів"
#: allianceauth/timerboard/form.py:67 #: allianceauth/timerboard/form.py:45
msgid "Hours Remaining" msgid "Hours Remaining"
msgstr "Залишилося годин" msgstr "Залишилося годин"
#: allianceauth/timerboard/form.py:69 #: allianceauth/timerboard/form.py:47
msgid "Minutes Remaining" msgid "Minutes Remaining"
msgstr "Залишилося хвилин" msgstr "Залишилося хвилин"
#: allianceauth/timerboard/form.py:71 #: allianceauth/timerboard/form.py:48
msgid "Important" msgid "Important"
msgstr "Важливо" msgstr "Важливо"
#: allianceauth/timerboard/form.py:72 #: allianceauth/timerboard/form.py:49
msgid "Corp-Restricted" msgid "Corp-Restricted"
msgstr "Обмежено для корпорації" msgstr "Обмежено для корпорації"
#: allianceauth/timerboard/models.py:14 #: allianceauth/timerboard/models.py:15
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:39
#: allianceauth/timerboard/templates/timerboard/timertable.html:36
msgid "Friendly"
msgstr "Дружній"
#: allianceauth/timerboard/models.py:16
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:34
#: allianceauth/timerboard/templates/timerboard/timertable.html:34
msgid "Hostile"
msgstr "Ворожий"
#: allianceauth/timerboard/models.py:17
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:44
#: allianceauth/timerboard/templates/timerboard/timertable.html:38
msgid "Neutral"
msgstr "Нейтральний"
#: allianceauth/timerboard/models.py:24
#: allianceauth/timerboard/templates/timerboard/timertable.html:48
msgid "POCO"
msgstr "POCO"
#: allianceauth/timerboard/models.py:25
#: allianceauth/timerboard/templates/timerboard/timertable.html:50
msgid "Orbital Skyhook"
msgstr ""
#: allianceauth/timerboard/models.py:26
#: allianceauth/timerboard/templates/timerboard/timertable.html:52
msgid "I-HUB"
msgstr "I-HUB"
#: allianceauth/timerboard/models.py:27
#: allianceauth/timerboard/templates/timerboard/timertable.html:55
msgid "TCU"
msgstr "TCU"
#: allianceauth/timerboard/models.py:28
#: allianceauth/timerboard/templates/timerboard/timertable.html:57
msgid "POS [S]"
msgstr "POS [S]"
#: allianceauth/timerboard/models.py:29
#: allianceauth/timerboard/templates/timerboard/timertable.html:59
msgid "POS [M]"
msgstr "POS [M]"
#: allianceauth/timerboard/models.py:30
#: allianceauth/timerboard/templates/timerboard/timertable.html:61
msgid "POS [L]"
msgstr "POS [L]"
#: allianceauth/timerboard/models.py:31
#: allianceauth/timerboard/templates/timerboard/timertable.html:63
msgid "Astrahus"
msgstr "Астрахус"
#: allianceauth/timerboard/models.py:32
#: allianceauth/timerboard/templates/timerboard/timertable.html:65
msgid "Fortizar"
msgstr "Фортізар"
#: allianceauth/timerboard/models.py:33
#: allianceauth/timerboard/templates/timerboard/timertable.html:67
msgid "Keepstar"
msgstr "Кіпстар"
#: allianceauth/timerboard/models.py:34
#: allianceauth/timerboard/templates/timerboard/timertable.html:69
msgid "Raitaru"
msgstr "Райтару"
#: allianceauth/timerboard/models.py:35
#: allianceauth/timerboard/templates/timerboard/timertable.html:71
msgid "Azbel"
msgstr "Азбел"
#: allianceauth/timerboard/models.py:36
#: allianceauth/timerboard/templates/timerboard/timertable.html:73
msgid "Sotiyo"
msgstr "Сотійо"
#: allianceauth/timerboard/models.py:37
#: allianceauth/timerboard/templates/timerboard/timertable.html:75
msgid "Athanor"
msgstr "Атанор"
#: allianceauth/timerboard/models.py:38
#: allianceauth/timerboard/templates/timerboard/timertable.html:77
msgid "Tatara"
msgstr "Татара"
#: allianceauth/timerboard/models.py:39
msgid "Pharolux Cyno Beacon"
msgstr ""
#: allianceauth/timerboard/models.py:40
msgid "Tenebrex Cyno Jammer"
msgstr ""
#: allianceauth/timerboard/models.py:41
#: allianceauth/timerboard/templates/timerboard/timertable.html:83
msgid "Ansiblex Jump Gate"
msgstr "Мост Ансіблекс"
#: allianceauth/timerboard/models.py:42
#: allianceauth/timerboard/templates/timerboard/timertable.html:85
msgid "Moon Mining Cycle"
msgstr "Цикл видобутку супутника"
#: allianceauth/timerboard/models.py:43
#: allianceauth/timerboard/templates/timerboard/timertable.html:87
msgid "Metenox Moon Drill"
msgstr ""
#: allianceauth/timerboard/models.py:44
#: allianceauth/timerboard/templates/timerboard/timertable.html:89
msgid "Other"
msgstr "Інше"
#: allianceauth/timerboard/models.py:51
msgid "Not Specified" msgid "Not Specified"
msgstr "Не визначено" msgstr "Не визначено"
#: allianceauth/timerboard/models.py:15 #: allianceauth/timerboard/models.py:52
msgid "Shield" msgid "Shield"
msgstr "Щит" msgstr "Щит"
#: allianceauth/timerboard/models.py:16 #: allianceauth/timerboard/models.py:53
msgid "Armor" msgid "Armor"
msgstr "Броня" msgstr "Броня"
#: allianceauth/timerboard/models.py:17 #: allianceauth/timerboard/models.py:54
msgid "Hull" msgid "Hull"
msgstr "Корпус" msgstr "Корпус"
#: allianceauth/timerboard/models.py:18 #: allianceauth/timerboard/models.py:55
msgid "Final" msgid "Final"
msgstr "Фінальна" msgstr "Фінальна"
#: allianceauth/timerboard/models.py:19 #: allianceauth/timerboard/models.py:56
msgid "Anchoring" msgid "Anchoring"
msgstr "Постановка на якір" msgstr "Постановка на якір"
#: allianceauth/timerboard/models.py:20 #: allianceauth/timerboard/models.py:57
msgid "Unanchoring" msgid "Unanchoring"
msgstr "Зняття з якорю" msgstr "Зняття з якорю"
#: allianceauth/timerboard/models.py:58
msgid "Abandoned"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:7 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:7
#: allianceauth/timerboard/templates/timerboard/view.html:53 #: allianceauth/timerboard/templates/timerboard/view.html:53
msgid "Upcoming Timers" msgid "Upcoming Timers"
msgstr "Майбутні таймери" msgstr "Майбутні таймери"
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:14 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:15
msgid "Timer" msgid "Timer"
msgstr "Таймер" msgstr "Таймер"
@@ -2719,78 +2860,14 @@ msgstr "Оновити таймер структури"
msgid "Structure" msgid "Structure"
msgstr "Структура" msgstr "Структура"
#: allianceauth/timerboard/templates/timerboard/timertable.html:64 #: allianceauth/timerboard/templates/timerboard/timertable.html:79
msgid "POCO"
msgstr "POCO"
#: allianceauth/timerboard/templates/timerboard/timertable.html:70
msgid "I-HUB"
msgstr "I-HUB"
#: allianceauth/timerboard/templates/timerboard/timertable.html:76
msgid "TCU"
msgstr "TCU"
#: allianceauth/timerboard/templates/timerboard/timertable.html:82
msgid "POS [S]"
msgstr "POS [S]"
#: allianceauth/timerboard/templates/timerboard/timertable.html:88
msgid "POS [M]"
msgstr "POS [M]"
#: allianceauth/timerboard/templates/timerboard/timertable.html:94
msgid "POS [L]"
msgstr "POS [L]"
#: allianceauth/timerboard/templates/timerboard/timertable.html:100
msgid "Astrahus"
msgstr "Астрахус"
#: allianceauth/timerboard/templates/timerboard/timertable.html:106
msgid "Fortizar"
msgstr "Фортізар"
#: allianceauth/timerboard/templates/timerboard/timertable.html:112
msgid "Keepstar"
msgstr "Кіпстар"
#: allianceauth/timerboard/templates/timerboard/timertable.html:118
msgid "Raitaru"
msgstr "Райтару"
#: allianceauth/timerboard/templates/timerboard/timertable.html:124
msgid "Azbel"
msgstr "Азбел"
#: allianceauth/timerboard/templates/timerboard/timertable.html:130
msgid "Sotiyo"
msgstr "Сотійо"
#: allianceauth/timerboard/templates/timerboard/timertable.html:136
msgid "Athanor"
msgstr "Атанор"
#: allianceauth/timerboard/templates/timerboard/timertable.html:142
msgid "Tatara"
msgstr "Татара"
#: allianceauth/timerboard/templates/timerboard/timertable.html:148
msgid "Cyno Beacon" msgid "Cyno Beacon"
msgstr "Циномаяк" msgstr "Циномаяк"
#: allianceauth/timerboard/templates/timerboard/timertable.html:154 #: allianceauth/timerboard/templates/timerboard/timertable.html:81
msgid "Cyno Jammer" msgid "Cyno Jammer"
msgstr "Циноглушник" msgstr "Циноглушник"
#: allianceauth/timerboard/templates/timerboard/timertable.html:160
msgid "Ansiblex Jump Gate"
msgstr "Мост Ансіблекс"
#: allianceauth/timerboard/templates/timerboard/timertable.html:166
msgid "Moon Mining Cycle"
msgstr "Цикл видобутку супутника"
#: allianceauth/timerboard/templates/timerboard/view.html:9 #: allianceauth/timerboard/templates/timerboard/view.html:9
msgid "Structure Timer Management" msgid "Structure Timer Management"
msgstr "Керування таймерами структур" msgstr "Керування таймерами структур"

View File

@@ -5,7 +5,7 @@
# #
# Translators: # Translators:
# Shen Yang, 2023 # Shen Yang, 2023
# Jesse . <sgeine@hotmail.com>, 2023 # 85b931f94c2441449e78b527e0a313ae_baf2e99 <639a60f913241ffb1c9bd90bc93a541f_869335>, 2023
# Aaron BuBu <351793078@qq.com>, 2023 # Aaron BuBu <351793078@qq.com>, 2023
# Joel Falknau <ozirascal@gmail.com>, 2023 # Joel Falknau <ozirascal@gmail.com>, 2023
# #
@@ -14,7 +14,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-03-13 19:10+1000\n" "POT-Creation-Date: 2024-09-13 19:57+1000\n"
"PO-Revision-Date: 2023-11-08 13:50+0000\n" "PO-Revision-Date: 2023-11-08 13:50+0000\n"
"Last-Translator: Joel Falknau <ozirascal@gmail.com>, 2023\n" "Last-Translator: Joel Falknau <ozirascal@gmail.com>, 2023\n"
"Language-Team: Chinese Simplified (https://app.transifex.com/alliance-auth/teams/107430/zh-Hans/)\n" "Language-Team: Chinese Simplified (https://app.transifex.com/alliance-auth/teams/107430/zh-Hans/)\n"
@@ -55,66 +55,90 @@ msgid "You are not allowed to add or remove these restricted groups: %s"
msgstr "" msgstr ""
#: allianceauth/authentication/models.py:71 #: allianceauth/authentication/models.py:71
#: allianceauth/project_template/project_name/settings/base.py:99
msgid "English" msgid "English"
msgstr "英语" msgstr "英语"
#: allianceauth/authentication/models.py:72 #: allianceauth/authentication/models.py:72
msgid "Czech"
msgstr ""
#: allianceauth/authentication/models.py:73
#: allianceauth/project_template/project_name/settings/base.py:101
msgid "German" msgid "German"
msgstr "德语" msgstr "德语"
#: allianceauth/authentication/models.py:73 #: allianceauth/authentication/models.py:74
#: allianceauth/project_template/project_name/settings/base.py:102
msgid "Spanish" msgid "Spanish"
msgstr "西班牙语" msgstr "西班牙语"
#: allianceauth/authentication/models.py:74
msgid "Chinese Simplified"
msgstr "简体中文"
#: allianceauth/authentication/models.py:75 #: allianceauth/authentication/models.py:75
msgid "Russian" #: allianceauth/project_template/project_name/settings/base.py:103
msgstr "俄语"
#: allianceauth/authentication/models.py:76
msgid "Korean"
msgstr "韩语"
#: allianceauth/authentication/models.py:77
msgid "French"
msgstr "法语"
#: allianceauth/authentication/models.py:78
msgid "Japanese"
msgstr "日语"
#: allianceauth/authentication/models.py:79
msgid "Italian" msgid "Italian"
msgstr "意大利语" msgstr "意大利语"
#: allianceauth/authentication/models.py:76
#: allianceauth/project_template/project_name/settings/base.py:104
msgid "Japanese"
msgstr "日语"
#: allianceauth/authentication/models.py:77
#: allianceauth/project_template/project_name/settings/base.py:105
msgid "Korean"
msgstr "韩语"
#: allianceauth/authentication/models.py:78
#: allianceauth/project_template/project_name/settings/base.py:106
msgid "French"
msgstr "法语"
#: allianceauth/authentication/models.py:79
#: allianceauth/project_template/project_name/settings/base.py:109
msgid "Russian"
msgstr "俄语"
#: allianceauth/authentication/models.py:80 #: allianceauth/authentication/models.py:80
#: allianceauth/project_template/project_name/settings/base.py:107
msgid "Dutch"
msgstr ""
#: allianceauth/authentication/models.py:81
#: allianceauth/project_template/project_name/settings/base.py:108
msgid "Polish"
msgstr ""
#: allianceauth/authentication/models.py:82
#: allianceauth/project_template/project_name/settings/base.py:110
msgid "Ukrainian" msgid "Ukrainian"
msgstr "" msgstr ""
#: allianceauth/authentication/models.py:96 #: allianceauth/authentication/models.py:83
#: allianceauth/project_template/project_name/settings/base.py:111
msgid "Simplified Chinese"
msgstr ""
#: allianceauth/authentication/models.py:99
#: allianceauth/menu/templates/menu/menu-user.html:42 #: allianceauth/menu/templates/menu/menu-user.html:42
msgid "Language" msgid "Language"
msgstr "语言" msgstr "语言"
#: allianceauth/authentication/models.py:101 #: allianceauth/authentication/models.py:104
#: allianceauth/templates/allianceauth/night-toggle.html:6 #: allianceauth/templates/allianceauth/night-toggle.html:6
msgid "Night Mode" msgid "Night Mode"
msgstr "夜间模式" msgstr "夜间模式"
#: allianceauth/authentication/models.py:105 #: allianceauth/authentication/models.py:108
#: allianceauth/menu/templates/menu/menu-user.html:46 #: allianceauth/menu/templates/menu/menu-user.html:46
msgid "Theme" msgid "Theme"
msgstr "" msgstr ""
#: allianceauth/authentication/models.py:122 #: allianceauth/authentication/models.py:125
#, python-format #, python-format
msgid "State changed to: %s" msgid "State changed to: %s"
msgstr "" msgstr ""
#: allianceauth/authentication/models.py:123 #: allianceauth/authentication/models.py:126
#, python-format #, python-format
msgid "Your user's state is now: %(state)s" msgid "Your user's state is now: %(state)s"
msgstr "" msgstr ""
@@ -126,27 +150,27 @@ msgstr ""
msgid "Dashboard" msgid "Dashboard"
msgstr "账户总览" msgstr "账户总览"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:7 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:5
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticscorpview.html:33 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticscorpview.html:33
#: allianceauth/hrapplications/templates/hrapplications/view.html:54 #: allianceauth/hrapplications/templates/hrapplications/view.html:54
msgid "Characters" msgid "Characters"
msgstr "角色" msgstr "角色"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:13 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:11
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:14 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:12
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:4 #: allianceauth/templates/allianceauth/top-menu-rh-default.html:4
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:6 #: allianceauth/templates/allianceauth/top-menu-rh-default.html:6
msgid "Add Character" msgid "Add Character"
msgstr "添加角色" msgstr "添加角色"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:16 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:14
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:17 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:15
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:10 #: allianceauth/templates/allianceauth/top-menu-rh-default.html:10
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:12 #: allianceauth/templates/allianceauth/top-menu-rh-default.html:12
msgid "Change Main" msgid "Change Main"
msgstr "修改主要角色" msgstr "修改主要角色"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:24 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:22
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:89 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:89
#: allianceauth/groupmanagement/templates/groupmanagement/groupmembership.html:23 #: allianceauth/groupmanagement/templates/groupmanagement/groupmembership.html:23
#: allianceauth/groupmanagement/templates/groupmanagement/groups.html:31 #: allianceauth/groupmanagement/templates/groupmanagement/groups.html:31
@@ -155,12 +179,12 @@ msgstr "修改主要角色"
msgid "Name" msgid "Name"
msgstr "角色名" msgstr "角色名"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:25 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:23
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticsview.html:33 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkstatisticsview.html:33
msgid "Corp" msgid "Corp"
msgstr "所在公司" msgstr "所在公司"
#: allianceauth/authentication/templates/authentication/dashboard_characters.html:26 #: allianceauth/authentication/templates/authentication/dashboard_characters.html:24
#: allianceauth/corputils/templates/corputils/corpstats.html:125 #: allianceauth/corputils/templates/corputils/corpstats.html:125
#: allianceauth/hrapplications/templates/hrapplications/view.html:63 #: allianceauth/hrapplications/templates/hrapplications/view.html:63
msgid "Alliance" msgid "Alliance"
@@ -170,7 +194,7 @@ msgstr "所在联盟"
msgid "Membership" msgid "Membership"
msgstr "" msgstr ""
#: allianceauth/authentication/templates/authentication/dashboard_groups.html:8 #: allianceauth/authentication/templates/authentication/dashboard_groups.html:10
msgid "State:" msgid "State:"
msgstr "" msgstr ""
@@ -402,6 +426,19 @@ msgstr "选定的军团已经有了一个统计模块"
msgid "Failed to gather corporation statistics with selected token." msgid "Failed to gather corporation statistics with selected token."
msgstr "未能使用指定的令牌收集军团信息" msgstr "未能使用指定的令牌收集军团信息"
#: allianceauth/custom_css/apps.py:13 allianceauth/custom_css/models.py:36
#: allianceauth/custom_css/models.py:37 allianceauth/custom_css/models.py:47
msgid "Custom CSS"
msgstr ""
#: allianceauth/custom_css/models.py:25
msgid "Your custom CSS"
msgstr ""
#: allianceauth/custom_css/models.py:26
msgid "This CSS will be added to the site after the default CSS."
msgstr ""
#: allianceauth/fleetactivitytracking/auth_hooks.py:10 #: allianceauth/fleetactivitytracking/auth_hooks.py:10
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/characternotexisting.html:10 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/characternotexisting.html:10
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkcreate.html:11 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkcreate.html:11
@@ -494,8 +531,8 @@ msgstr "用户"
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkmodify.html:37 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkmodify.html:37
#: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:42 #: allianceauth/fleetactivitytracking/templates/fleetactivitytracking/fatlinkview.html:42
#: allianceauth/optimer/form.py:13 allianceauth/timerboard/form.py:59 #: allianceauth/optimer/form.py:13 allianceauth/timerboard/form.py:37
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:16 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:17
#: allianceauth/timerboard/templates/timerboard/timertable.html:9 #: allianceauth/timerboard/templates/timerboard/timertable.html:9
msgid "System" msgid "System"
msgstr "星系" msgstr "星系"
@@ -813,7 +850,7 @@ msgstr "申请人"
#: allianceauth/groupmanagement/templates/groupmanagement/audit.html:31 #: allianceauth/groupmanagement/templates/groupmanagement/audit.html:31
#: allianceauth/optimer/templates/optimer/dashboard.ops.html:15 #: allianceauth/optimer/templates/optimer/dashboard.ops.html:15
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:15 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:16
msgid "Type" msgid "Type"
msgstr "类型" msgstr "类型"
@@ -905,7 +942,7 @@ msgid "Hidden"
msgstr "已隐藏" msgstr "已隐藏"
#: allianceauth/groupmanagement/templates/groupmanagement/groupmembership.html:45 #: allianceauth/groupmanagement/templates/groupmanagement/groupmembership.html:45
#: allianceauth/templates/allianceauth/admin-status/overview.html:19 #: allianceauth/templates/allianceauth/admin-status/overview.html:16
msgid "Open" msgid "Open"
msgstr "公开" msgstr "公开"
@@ -1381,16 +1418,18 @@ msgstr "通知"
msgid "Super User" msgid "Super User"
msgstr "" msgstr ""
#: allianceauth/menu/templates/menu/menu-user.html:68 #: allianceauth/menu/templates/menu/menu-user.html:70
#: allianceauth/templates/allianceauth/top-menu-admin.html:9 #: allianceauth/templates/allianceauth/top-menu-admin.html:9
msgid "Admin" msgid "Admin"
msgstr "管理员" msgstr "管理员"
#: allianceauth/menu/templates/menu/menu-user.html:80 #: allianceauth/menu/templates/menu/menu-user.html:82
msgid "Sign Out" msgid "Sign Out"
msgstr "" msgstr ""
#: allianceauth/menu/templates/menu/menu-user.html:84 #: allianceauth/menu/templates/menu/menu-user.html:86
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:17
#: allianceauth/templates/allianceauth/top-menu-rh-default.html:18
msgid "Sign In" msgid "Sign In"
msgstr "" msgstr ""
@@ -1538,7 +1577,7 @@ msgid "Form Up System"
msgstr "集结点" msgstr "集结点"
#: allianceauth/optimer/templates/optimer/dashboard.ops.html:17 #: allianceauth/optimer/templates/optimer/dashboard.ops.html:17
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:17 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:18
msgid "EVE Time" msgid "EVE Time"
msgstr "" msgstr ""
@@ -1733,17 +1772,17 @@ msgid ""
msgstr "" msgstr ""
#: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:26 #: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:26
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:20 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:22
msgid "Activate" msgid "Activate"
msgstr "" msgstr ""
#: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:32 #: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:32
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:32 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:34
msgid "Reset Password" msgid "Reset Password"
msgstr "" msgstr ""
#: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:38 #: allianceauth/services/modules/discord/templates/services/discord/discord_service_ctrl.html:38
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:38 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:40
msgid "Deactivate" msgid "Deactivate"
msgstr "" msgstr ""
@@ -1824,12 +1863,12 @@ msgstr "修改IPSuite4密码"
msgid "Deactivated IPSuite4 account." msgid "Deactivated IPSuite4 account."
msgstr "停用IPSuite4账户" msgstr "停用IPSuite4账户"
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:26 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:28
#: allianceauth/services/templates/services/service_password.html:26 #: allianceauth/services/templates/services/service_password.html:26
msgid "Set Password" msgid "Set Password"
msgstr "设置密码" msgstr "设置密码"
#: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:44 #: allianceauth/services/modules/mumble/templates/services/mumble/mumble_service_ctrl.html:46
msgid "Connect" msgid "Connect"
msgstr "" msgstr ""
@@ -2392,56 +2431,56 @@ msgstr "你做的修改已经保存到%(fleetname)s这个补损舰队啦
msgid "Your Server received an ESI error response code of " msgid "Your Server received an ESI error response code of "
msgstr "" msgstr ""
#: allianceauth/templates/allianceauth/admin-status/overview.html:11 #: allianceauth/templates/allianceauth/admin-status/overview.html:8
msgid "Alliance Auth Notifications" msgid "Alliance Auth Notifications"
msgstr "系统通知" msgstr "系统通知"
#: allianceauth/templates/allianceauth/admin-status/overview.html:21 #: allianceauth/templates/allianceauth/admin-status/overview.html:18
msgid "Closed" msgid "Closed"
msgstr "已关闭" msgstr "已关闭"
#: allianceauth/templates/allianceauth/admin-status/overview.html:27 #: allianceauth/templates/allianceauth/admin-status/overview.html:24
msgid "No notifications at this time" msgid "No notifications at this time"
msgstr "" msgstr ""
#: allianceauth/templates/allianceauth/admin-status/overview.html:36 #: allianceauth/templates/allianceauth/admin-status/overview.html:33
msgid "Powered by GitLab" msgid "Powered by GitLab"
msgstr "" msgstr ""
#: allianceauth/templates/allianceauth/admin-status/overview.html:42 #: allianceauth/templates/allianceauth/admin-status/overview.html:39
msgid "Support Discord" msgid "Support Discord"
msgstr "" msgstr ""
#: allianceauth/templates/allianceauth/admin-status/overview.html:59 #: allianceauth/templates/allianceauth/admin-status/overview.html:53
#: allianceauth/templates/allianceauth/admin-status/overview.html:63 #: allianceauth/templates/allianceauth/admin-status/overview.html:57
msgid "Software Version" msgid "Software Version"
msgstr "软件版本" msgstr "软件版本"
#: allianceauth/templates/allianceauth/admin-status/overview.html:66 #: allianceauth/templates/allianceauth/admin-status/overview.html:60
msgid "Current" msgid "Current"
msgstr "当前版本" msgstr "当前版本"
#: allianceauth/templates/allianceauth/admin-status/overview.html:73 #: allianceauth/templates/allianceauth/admin-status/overview.html:67
msgid "Latest Stable" msgid "Latest Stable"
msgstr "" msgstr ""
#: allianceauth/templates/allianceauth/admin-status/overview.html:78 #: allianceauth/templates/allianceauth/admin-status/overview.html:72
msgid "Update available" msgid "Update available"
msgstr "有更新!" msgstr "有更新!"
#: allianceauth/templates/allianceauth/admin-status/overview.html:86 #: allianceauth/templates/allianceauth/admin-status/overview.html:80
msgid "Latest Pre-Release" msgid "Latest Pre-Release"
msgstr "" msgstr ""
#: allianceauth/templates/allianceauth/admin-status/overview.html:91 #: allianceauth/templates/allianceauth/admin-status/overview.html:85
msgid "Pre-Release available" msgid "Pre-Release available"
msgstr "" msgstr ""
#: allianceauth/templates/allianceauth/admin-status/overview.html:102 #: allianceauth/templates/allianceauth/admin-status/overview.html:95
msgid "Task Queue" msgid "Task Queue"
msgstr "任务队列" msgstr "任务队列"
#: allianceauth/templates/allianceauth/admin-status/overview.html:107 #: allianceauth/templates/allianceauth/admin-status/overview.html:100
#, python-format #, python-format
msgid "" msgid ""
"\n" "\n"
@@ -2449,11 +2488,11 @@ msgid ""
" " " "
msgstr "" msgstr ""
#: allianceauth/templates/allianceauth/admin-status/overview.html:123 #: allianceauth/templates/allianceauth/admin-status/overview.html:116
msgid "running" msgid "running"
msgstr "" msgstr ""
#: allianceauth/templates/allianceauth/admin-status/overview.html:124 #: allianceauth/templates/allianceauth/admin-status/overview.html:117
msgid "queued" msgid "queued"
msgstr "" msgstr ""
@@ -2482,114 +2521,216 @@ msgstr "打开导航栏"
msgid "Select Theme" msgid "Select Theme"
msgstr "" msgstr ""
#: allianceauth/timerboard/form.py:53 #: allianceauth/timerboard/form.py:36
#: allianceauth/timerboard/templates/timerboard/timertable.html:172 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:14
msgid "Other"
msgstr "其他"
#: allianceauth/timerboard/form.py:54
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:38
#: allianceauth/timerboard/templates/timerboard/timertable.html:44
msgid "Friendly"
msgstr "蓝加"
#: allianceauth/timerboard/form.py:55
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:33
#: allianceauth/timerboard/templates/timerboard/timertable.html:38
msgid "Hostile"
msgstr "红减"
#: allianceauth/timerboard/form.py:56
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:43
#: allianceauth/timerboard/templates/timerboard/timertable.html:50
msgid "Neutral"
msgstr "白名"
#: allianceauth/timerboard/form.py:58
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:13
#: allianceauth/timerboard/templates/timerboard/timertable.html:7 #: allianceauth/timerboard/templates/timerboard/timertable.html:7
msgid "Details" msgid "Details"
msgstr "详细信息" msgstr "详细信息"
#: allianceauth/timerboard/form.py:60 #: allianceauth/timerboard/form.py:38
msgid "Planet/Moon" msgid "Planet/Moon"
msgstr "行星/卫星" msgstr "行星/卫星"
#: allianceauth/timerboard/form.py:61 #: allianceauth/timerboard/form.py:39
msgid "Structure Type" msgid "Structure Type"
msgstr "建筑类型" msgstr "建筑类型"
#: allianceauth/timerboard/form.py:62 #: allianceauth/timerboard/form.py:40
msgid "Timer Type" msgid "Timer Type"
msgstr "" msgstr ""
#: allianceauth/timerboard/form.py:63 #: allianceauth/timerboard/form.py:41
#: allianceauth/timerboard/templates/timerboard/timertable.html:8 #: allianceauth/timerboard/templates/timerboard/timertable.html:8
msgid "Objective" msgid "Objective"
msgstr "声望" msgstr "声望"
#: allianceauth/timerboard/form.py:64 #: allianceauth/timerboard/form.py:42
msgid "Absolute Timer" msgid "Absolute Timer"
msgstr "" msgstr ""
#: allianceauth/timerboard/form.py:65 #: allianceauth/timerboard/form.py:43
msgid "Date and Time" msgid "Date and Time"
msgstr "" msgstr ""
#: allianceauth/timerboard/form.py:66 #: allianceauth/timerboard/form.py:44
msgid "Days Remaining" msgid "Days Remaining"
msgstr "剩余天数" msgstr "剩余天数"
#: allianceauth/timerboard/form.py:67 #: allianceauth/timerboard/form.py:45
msgid "Hours Remaining" msgid "Hours Remaining"
msgstr "剩余小时数" msgstr "剩余小时数"
#: allianceauth/timerboard/form.py:69 #: allianceauth/timerboard/form.py:47
msgid "Minutes Remaining" msgid "Minutes Remaining"
msgstr "剩余分钟" msgstr "剩余分钟"
#: allianceauth/timerboard/form.py:71 #: allianceauth/timerboard/form.py:48
msgid "Important" msgid "Important"
msgstr "重要信息" msgstr "重要信息"
#: allianceauth/timerboard/form.py:72 #: allianceauth/timerboard/form.py:49
msgid "Corp-Restricted" msgid "Corp-Restricted"
msgstr "受限制的公司" msgstr "受限制的公司"
#: allianceauth/timerboard/models.py:14 #: allianceauth/timerboard/models.py:15
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:39
#: allianceauth/timerboard/templates/timerboard/timertable.html:36
msgid "Friendly"
msgstr "蓝加"
#: allianceauth/timerboard/models.py:16
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:34
#: allianceauth/timerboard/templates/timerboard/timertable.html:34
msgid "Hostile"
msgstr "红减"
#: allianceauth/timerboard/models.py:17
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:44
#: allianceauth/timerboard/templates/timerboard/timertable.html:38
msgid "Neutral"
msgstr "白名"
#: allianceauth/timerboard/models.py:24
#: allianceauth/timerboard/templates/timerboard/timertable.html:48
msgid "POCO"
msgstr ""
#: allianceauth/timerboard/models.py:25
#: allianceauth/timerboard/templates/timerboard/timertable.html:50
msgid "Orbital Skyhook"
msgstr ""
#: allianceauth/timerboard/models.py:26
#: allianceauth/timerboard/templates/timerboard/timertable.html:52
msgid "I-HUB"
msgstr ""
#: allianceauth/timerboard/models.py:27
#: allianceauth/timerboard/templates/timerboard/timertable.html:55
msgid "TCU"
msgstr ""
#: allianceauth/timerboard/models.py:28
#: allianceauth/timerboard/templates/timerboard/timertable.html:57
msgid "POS [S]"
msgstr ""
#: allianceauth/timerboard/models.py:29
#: allianceauth/timerboard/templates/timerboard/timertable.html:59
msgid "POS [M]"
msgstr ""
#: allianceauth/timerboard/models.py:30
#: allianceauth/timerboard/templates/timerboard/timertable.html:61
msgid "POS [L]"
msgstr ""
#: allianceauth/timerboard/models.py:31
#: allianceauth/timerboard/templates/timerboard/timertable.html:63
msgid "Astrahus"
msgstr ""
#: allianceauth/timerboard/models.py:32
#: allianceauth/timerboard/templates/timerboard/timertable.html:65
msgid "Fortizar"
msgstr ""
#: allianceauth/timerboard/models.py:33
#: allianceauth/timerboard/templates/timerboard/timertable.html:67
msgid "Keepstar"
msgstr ""
#: allianceauth/timerboard/models.py:34
#: allianceauth/timerboard/templates/timerboard/timertable.html:69
msgid "Raitaru"
msgstr ""
#: allianceauth/timerboard/models.py:35
#: allianceauth/timerboard/templates/timerboard/timertable.html:71
msgid "Azbel"
msgstr ""
#: allianceauth/timerboard/models.py:36
#: allianceauth/timerboard/templates/timerboard/timertable.html:73
msgid "Sotiyo"
msgstr ""
#: allianceauth/timerboard/models.py:37
#: allianceauth/timerboard/templates/timerboard/timertable.html:75
msgid "Athanor"
msgstr ""
#: allianceauth/timerboard/models.py:38
#: allianceauth/timerboard/templates/timerboard/timertable.html:77
msgid "Tatara"
msgstr ""
#: allianceauth/timerboard/models.py:39
msgid "Pharolux Cyno Beacon"
msgstr ""
#: allianceauth/timerboard/models.py:40
msgid "Tenebrex Cyno Jammer"
msgstr ""
#: allianceauth/timerboard/models.py:41
#: allianceauth/timerboard/templates/timerboard/timertable.html:83
msgid "Ansiblex Jump Gate"
msgstr ""
#: allianceauth/timerboard/models.py:42
#: allianceauth/timerboard/templates/timerboard/timertable.html:85
msgid "Moon Mining Cycle"
msgstr ""
#: allianceauth/timerboard/models.py:43
#: allianceauth/timerboard/templates/timerboard/timertable.html:87
msgid "Metenox Moon Drill"
msgstr ""
#: allianceauth/timerboard/models.py:44
#: allianceauth/timerboard/templates/timerboard/timertable.html:89
msgid "Other"
msgstr "其他"
#: allianceauth/timerboard/models.py:51
msgid "Not Specified" msgid "Not Specified"
msgstr "" msgstr ""
#: allianceauth/timerboard/models.py:15 #: allianceauth/timerboard/models.py:52
msgid "Shield" msgid "Shield"
msgstr "护盾" msgstr "护盾"
#: allianceauth/timerboard/models.py:16 #: allianceauth/timerboard/models.py:53
msgid "Armor" msgid "Armor"
msgstr "装甲" msgstr "装甲"
#: allianceauth/timerboard/models.py:17 #: allianceauth/timerboard/models.py:54
msgid "Hull" msgid "Hull"
msgstr "结构" msgstr "结构"
#: allianceauth/timerboard/models.py:18 #: allianceauth/timerboard/models.py:55
msgid "Final" msgid "Final"
msgstr "" msgstr ""
#: allianceauth/timerboard/models.py:19 #: allianceauth/timerboard/models.py:56
msgid "Anchoring" msgid "Anchoring"
msgstr "铆钉" msgstr "铆钉"
#: allianceauth/timerboard/models.py:20 #: allianceauth/timerboard/models.py:57
msgid "Unanchoring" msgid "Unanchoring"
msgstr "解锚" msgstr "解锚"
#: allianceauth/timerboard/models.py:58
msgid "Abandoned"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:7 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:7
#: allianceauth/timerboard/templates/timerboard/view.html:53 #: allianceauth/timerboard/templates/timerboard/view.html:53
msgid "Upcoming Timers" msgid "Upcoming Timers"
msgstr "" msgstr ""
#: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:14 #: allianceauth/timerboard/templates/timerboard/dashboard.timers.html:15
msgid "Timer" msgid "Timer"
msgstr "" msgstr ""
@@ -2633,78 +2774,14 @@ msgstr "更新建筑时间表"
msgid "Structure" msgid "Structure"
msgstr "建筑" msgstr "建筑"
#: allianceauth/timerboard/templates/timerboard/timertable.html:64 #: allianceauth/timerboard/templates/timerboard/timertable.html:79
msgid "POCO"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:70
msgid "I-HUB"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:76
msgid "TCU"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:82
msgid "POS [S]"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:88
msgid "POS [M]"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:94
msgid "POS [L]"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:100
msgid "Astrahus"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:106
msgid "Fortizar"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:112
msgid "Keepstar"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:118
msgid "Raitaru"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:124
msgid "Azbel"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:130
msgid "Sotiyo"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:136
msgid "Athanor"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:142
msgid "Tatara"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:148
msgid "Cyno Beacon" msgid "Cyno Beacon"
msgstr "" msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:154 #: allianceauth/timerboard/templates/timerboard/timertable.html:81
msgid "Cyno Jammer" msgid "Cyno Jammer"
msgstr "" msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:160
msgid "Ansiblex Jump Gate"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/timertable.html:166
msgid "Moon Mining Cycle"
msgstr ""
#: allianceauth/timerboard/templates/timerboard/view.html:9 #: allianceauth/timerboard/templates/timerboard/view.html:9
msgid "Structure Timer Management" msgid "Structure Timer Management"
msgstr "管理建筑时间表" msgstr "管理建筑时间表"

View File

@@ -60,15 +60,17 @@
<li> <li>
<a class="dropdown-item" href="https://discord.gg/fjnHAmk" title="Alliance Auth Discord"><i class="fa-brands fa-discord fa-fw"></i> Alliance Auth Discord</a> <a class="dropdown-item" href="https://discord.gg/fjnHAmk" title="Alliance Auth Discord"><i class="fa-brands fa-discord fa-fw"></i> Alliance Auth Discord</a>
</li> </li>
<li>
<a class="dropdown-item" href="https://gitlab.com/allianceauth/allianceauth" title="Alliance Auth Git"><i class="fa-brands fa-gitlab fa-fw"></i> Alliance Auth Git</a>
</li>
<li> <li>
<a class="dropdown-item" href="{% url 'admin:index' %}"> <a class="dropdown-item" href="https://gitlab.com/allianceauth/allianceauth" title="Alliance Auth Git"><i class="fa-brands fa-gitlab fa-fw"></i> Alliance Auth Git</a>
<i class="fa-solid fa-gear fa-fw"></i> {% translate "Admin" %}
</a>
</li> </li>
{% endif %} {% endif %}
{% if user.is_staff %}
<li>
<a class="dropdown-item" href="{% url 'admin:index' %}">
<i class="fa-solid fa-gear fa-fw"></i> {% translate "Admin" %}
</a>
</li>
{% endif %}
<li><hr class="dropdown-divider"></li> <li><hr class="dropdown-divider"></li>
{% if user.is_authenticated %} {% if user.is_authenticated %}
<li> <li>

View File

@@ -1,41 +1,40 @@
{% load i18n %} {% load i18n %}
{% load evelinks %} {% load evelinks %}
<div class="col-12 align-self-stretch py-2"> <div class="col-12 mb-3">
<div class="card h-100"> <div class="card h-100">
<div class="card-body"> <div class="card-body">
<h4 class="card-title text-center">{% translate "Upcoming Fleets" %}</h4> {% translate "Upcoming Fleets" as widget_title %}
{% include "framework/dashboard/widget-title.html" with title=widget_title %}
<div class="card-body"> <div>
<div> <table class="table">
<table class="table"> <thead>
<thead> <tr>
<th class="text-center">{% translate "Operation" %}</th>
<th class="text-center">{% translate "Type" %}</th>
<th class="text-center">{% translate "Form Up System" %}</th>
<th class="text-center">{% translate "EVE Time" %}</th>
</tr>
</thead>
<tbody>
{% for ops in timers %}
<tr> <tr>
<th class="text-center">{% translate "Operation" %}</th> <td class="text-center">
<th class="text-center">{% translate "Type" %}</th> {{ ops.operation_name }}
<th class="text-center">{% translate "Form Up System" %}</th> </td>
<th class="text-center">{% translate "EVE Time" %}</th> <td class="text-center">
{{ ops.type }}
</td>
<td class="text-center">
<a href="{{ ops.system|dotlan_solar_system_url }}">{{ ops.system }}</a>
</td>
<td class="text-center" nowrap>{{ ops.start | date:"Y-m-d H:i" }}</td>
</tr> </tr>
</thead> {% endfor %}
</tbody>
<tbody> </table>
{% for ops in timers %}
<tr>
<td class="text-center">
{{ ops.operation_name }}
</td>
<td class="text-center">
{{ ops.type }}
</td>
<td class="text-center">
<a href="{{ ops.system|dotlan_solar_system_url }}">{{ ops.system }}</a>
</td>
<td class="text-center" nowrap>{{ ops.start | date:"Y-m-d H:i" }}</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div> </div>
</div> </div>
</div> </div>

View File

@@ -12,6 +12,8 @@ from celery.schedules import crontab
from django.contrib import messages from django.contrib import messages
from django.utils.translation import gettext_lazy as _
INSTALLED_APPS = [ INSTALLED_APPS = [
'allianceauth', # needs to be on top of this list to support favicons in Django admin (see https://gitlab.com/allianceauth/allianceauth/-/issues/1301) 'allianceauth', # needs to be on top of this list to support favicons in Django admin (see https://gitlab.com/allianceauth/allianceauth/-/issues/1301)
'django.contrib.admin', 'django.contrib.admin',
@@ -22,6 +24,7 @@ INSTALLED_APPS = [
'django.contrib.staticfiles', 'django.contrib.staticfiles',
'django.contrib.humanize', 'django.contrib.humanize',
'django_celery_beat', 'django_celery_beat',
'solo',
'bootstrapform', 'bootstrapform',
'django_bootstrap5', # https://github.com/zostera/django-bootstrap5 'django_bootstrap5', # https://github.com/zostera/django-bootstrap5
'sortedm2m', 'sortedm2m',
@@ -39,6 +42,7 @@ INSTALLED_APPS = [
'allianceauth.theme.darkly', 'allianceauth.theme.darkly',
'allianceauth.theme.flatly', 'allianceauth.theme.flatly',
'allianceauth.theme.materia', 'allianceauth.theme.materia',
"allianceauth.custom_css",
] ]
SECRET_KEY = "wow I'm a really bad default secret key" SECRET_KEY = "wow I'm a really bad default secret key"
@@ -91,17 +95,20 @@ LOCALE_PATHS = (
os.path.join(BASE_DIR, 'locale/'), os.path.join(BASE_DIR, 'locale/'),
) )
LANGUAGES = ( LANGUAGES = ( # Sorted by Language Code alphabetical order + English at top
("en", "English"), ("en", _("English")),
("de", "German"), # ("cs-cz", _("Czech")), #Not yet at 50% translated
("es", "Spanish"), ("de", _("German")),
("zh-hans", "Chinese Simplified"), ("es", _("Spanish")),
("ru", "Russian"), ("it-it", _("Italian")),
("ko", "Korean"), ("ja", _("Japanese")),
("fr", "French"), ("ko-kr", _("Korean")),
("ja", "Japanese"), ("fr-fr", _("French")),
("it", "Italian"), ("nl-nl", _("Dutch")),
("uk", "Ukrainian"), ("pl-pl", _("Polish")),
("ru", _("Russian")),
("uk", _("Ukrainian")),
("zh-hans", _("Simplified Chinese")),
) )
TEMPLATES = [ TEMPLATES = [

View File

@@ -7,7 +7,9 @@
{% endblock %} {% endblock %}
{% block url %} {% block url %}
<a href="{{ service_url }}">{{ service_url }}</a> {% if username != '' %}
<a href="mumble://{{ connect_url }}">{{ service_url }}</a>
{% endif %}
{% endblock %} {% endblock %}
{% block user %} {% block user %}

View File

@@ -1,5 +1,5 @@
{% load i18n %} {% load i18n %}
<div id="esi-alert" class="col-12 align-self-stretch py-2 collapse"> <div id="esi-alert" class="col-12 collapse">
<div class="alert alert-warning"> <div class="alert alert-warning">
<p class="text-center ">{% translate 'Your Server received an ESI error response code of ' %}<b id="esi-code">?</b></p> <p class="text-center ">{% translate 'Your Server received an ESI error response code of ' %}<b id="esi-code">?</b></p>
<hr> <hr>
@@ -23,7 +23,7 @@
console.log("ESI Check: ", JSON.stringify(responseJson, null, 2)); console.log("ESI Check: ", JSON.stringify(responseJson, null, 2));
const status = responseJson.status; const status = responseJson.status;
if (status != 200) { if (status !== 200) {
elemCode.textContent = status elemCode.textContent = status
elemMessage.textContent = responseJson.data.error; elemMessage.textContent = responseJson.data.error;
new bootstrap.Collapse(elemCard, { new bootstrap.Collapse(elemCard, {

View File

@@ -2,48 +2,43 @@
{% load humanize %} {% load humanize %}
{% if notifications %} {% if notifications %}
<div id="aa-dashboard-panel-admin-notifications" class="col-12 align-self-stretch pb-2"> <div id="aa-dashboard-panel-admin-notifications" class="col-12 mb-3">
<div class="card"> <div class="card">
<div class="card-body"> <div class="card-body">
<div class="d-flex align-items-center"> {% translate "Alliance Auth Notifications" as widget_title %}
<div class="w-100 align-self-stretch"> {% include "framework/dashboard/widget-title.html" with title=widget_title %}
<h4 class="ms-auto me-auto text-center">
{% translate "Alliance Auth Notifications" %}
</h4>
<div class="card-body"> <div>
<ul class="list-group"> <ul class="list-group">
{% for notif in notifications %} {% for notif in notifications %}
<li class="list-group-item"> <li class="list-group-item">
{% if notif.state == 'opened' %} {% if notif.state == 'opened' %}
<span class="badge bg-success">{% translate "Open" %}</span> <span class="badge bg-success me-2">{% translate "Open" %}</span>
{% else %} {% else %}
<span class="badge bg-danger">{% translate "Closed" %}</span> <span class="badge bg-danger me-2">{% translate "Closed" %}</span>
{% endif %} {% endif %}
<a href="{{ notif.web_url }}" target="_blank">#{{ notif.iid }} {{ notif.title }}</a> <a href="{{ notif.web_url }}" target="_blank">#{{ notif.iid }} {{ notif.title }}</a>
</li> </li>
{% empty %} {% empty %}
<div class="alert alert-primary" role="alert"> <div class="alert alert-primary" role="alert">
{% translate "No notifications at this time" %} {% translate "No notifications at this time" %}
</div>
{% endfor %}
</ul>
<div class="text-end">
<a href="https://gitlab.com/allianceauth/allianceauth/issues" target="_blank" class="me-1">
<span class="badge" style="background-color: rgb(230 83 40);">
<i class="fab fa-gitlab" aria-hidden="true"></i>
{% translate 'Powered by GitLab' %}
</span>
</a>
<a href="https://discord.com/invite/fjnHAmk" target="_blank">
<span class="badge" style="background-color: rgb(110 133 211);">
<i class="fab fa-discord" aria-hidden="true"></i>
{% translate 'Support Discord' %}
</span>
</a>
</div> </div>
</div> {% endfor %}
</ul>
<div class="text-end pt-3">
<a href="https://gitlab.com/allianceauth/allianceauth/issues" target="_blank" class="me-1 text-decoration-none">
<span class="badge" style="background-color: rgb(230 83 40);">
<i class="fab fa-gitlab" aria-hidden="true"></i>
{% translate 'Powered by GitLab' %}
</span>
</a>
<a href="https://discord.com/invite/fjnHAmk" target="_blank" class="text-decoration-none">
<span class="badge" style="background-color: rgb(110 133 211);">
<i class="fab fa-discord" aria-hidden="true"></i>
{% translate 'Support Discord' %}
</span>
</a>
</div> </div>
</div> </div>
</div> </div>
@@ -51,15 +46,14 @@
</div> </div>
{% endif %} {% endif %}
<div class="col-12 align-self-stretch pb-2"> <div class="col-12 mb-3">
<div class="card"> <div class="card">
<div class="card-body d-flex flex-row flex-wrap"> <div class="card-body row">
<div id="aa-dashboard-panel-software-version" class="col-xl-6 col-lg-12 col-md-12 col-sm-12"> <div id="aa-dashboard-panel-software-version" class="col-xl-6 col-lg-12 col-md-12 col-sm-12">
<h4 class="ms-auto me-auto text-center"> {% translate "Software Version" as widget_title %}
{% translate "Software Version" %} {% include "framework/dashboard/widget-title.html" with title=widget_title %}
</h4>
<div class="card-body"> <div>
<ul class="list-group list-group-horizontal w-100" role="group" aria-label="{% translate 'Software Version' %}"> <ul class="list-group list-group-horizontal w-100" role="group" aria-label="{% translate 'Software Version' %}">
<li class="list-group-item w-100"> <li class="list-group-item w-100">
<div class="btn h-100 w-100 cursor-default"> <div class="btn h-100 w-100 cursor-default">
@@ -98,11 +92,10 @@
</div> </div>
<div id="aa-dashboard-panel-task-queue" class="col-xl-6 col-lg-12 col-md-12 col-sm-12"> <div id="aa-dashboard-panel-task-queue" class="col-xl-6 col-lg-12 col-md-12 col-sm-12">
<h4 class="ms-auto me-auto text-center"> {% translate "Task Queue" as widget_title %}
{% translate "Task Queue" %} {% include "framework/dashboard/widget-title.html" with title=widget_title %}
</h4>
<div class="card-body"> <div>
<p> <p>
{% blocktranslate with total=tasks_total|intcomma latest=earliest_task|timesince|default:"?" %} {% blocktranslate with total=tasks_total|intcomma latest=earliest_task|timesince|default:"?" %}
Status of {{ total }} processed tasks • last {{ latest }} Status of {{ total }} processed tasks • last {{ latest }}

View File

@@ -29,56 +29,55 @@
transform: rotate(180deg); transform: rotate(180deg);
} }
{% if user.is_authenticated %} .nav-padding {
.nav-padding { padding-top: {% header_padding_size %} !important;
padding-top: {% header_padding_size %} !important; }
}
{% endif %}
</style> </style>
{% block extra_css %}{% endblock extra_css %} {% block extra_css %}{% endblock extra_css %}
{% include 'custom_css/bundles/custom-css.html' %}
</head> </head>
<body> <body>
{% if user.is_authenticated %} <!-- Top Menu, Blocks don't work in "include" tagged views -->
<!-- Top Menu, Blocks don't work in "include" tagged views --> <nav class="navbar navbar-expand-lg navbar-dark fixed-top bg-primary">
<nav class="navbar navbar-expand-lg navbar-dark fixed-top bg-primary"> <div class="container-fluid justify-content-start">
<div class="container-fluid justify-content-start"> <a class="navbar-brand" data-bs-toggle="collapse" data-bs-target="#sidebar" role="button">
{% if user.is_authenticated %} <i class="fa-solid fa-bars ms-2 me-2"></i>
<a class="navbar-brand" data-bs-toggle="collapse" data-bs-target="#sidebar" role="button"> </a>
<i class="fa-solid fa-bars ms-2 me-2"></i>
</a>
{% endif %}
<div class="navbar-brand"> <div class="navbar-brand">
{% block header_nav_brand %}{{ SITE_NAME }}{% endblock %} {% block header_nav_brand %}{{ SITE_NAME }}{% endblock %}
</div>
<div class="collapse navbar-collapse ms-2 px-2" id="navbarexpand">
<ul id="nav-left" class="nav navbar-nav me-auto">
{% block header_nav_collapse_left %}
{% endblock %}
</ul>
<ul id="nav-right" class="nav navbar-nav">
{% block header_nav_collapse_right %}
{% endblock %}
</ul>
<ul id="nav-right-character-control" class="nav navbar-nav">
{% block header_nav_user_character_control %} <!-- Default to add char and swap main -->
{% include 'allianceauth/top-menu-rh-default.html' %}
{% endblock %}
{% include 'menu/menu-notification-block.html' %}
</ul>
</div>
<a class="navbar-toggler navbar-brand border-0 collapsed" data-bs-toggle="collapse" data-bs-target="#navbarexpand" aria-controls="navbarColor01" aria-expanded="false" aria-label="Toggle navigation" style="margin-left: auto;">
<i class="fa-solid fa-chevron-up"></i>
</a>
</div> </div>
</nav>
{% endif %} <div class="collapse navbar-collapse ms-2 px-2" id="navbarexpand">
<ul id="nav-left" class="nav navbar-nav me-auto">
{% block header_nav_collapse_left %}
{% endblock %}
</ul>
<ul id="nav-right" class="nav navbar-nav">
{% block header_nav_collapse_right %}
{% endblock %}
</ul>
<ul id="nav-right-character-control" class="nav navbar-nav">
{% block header_nav_user_character_control %} <!-- Default to add char and swap main -->
{% include 'allianceauth/top-menu-rh-default.html' %}
{% endblock %}
{% if user.is_authenticated %}
{% include 'menu/menu-notification-block.html' %}
{% endif %}
</ul>
</div>
<a class="navbar-toggler navbar-brand border-0 collapsed" data-bs-toggle="collapse" data-bs-target="#navbarexpand" aria-controls="navbarColor01" aria-expanded="false" aria-label="Toggle navigation" style="margin-left: auto;">
<i class="fa-solid fa-chevron-up"></i>
</a>
</div>
</nav>
<!-- End Top Menu --> <!-- End Top Menu -->
<!-- Body --> <!-- Body -->

View File

@@ -1,31 +1,37 @@
{% extends "allianceauth/base-bs5.html" %} {% extends "allianceauth/base-bs5.html" %}
{% load theme_tags %}
{% block page_title %} {% block page_title %}
{{ error_title }} {{ error_title }}
{% endblock page_title %} {% endblock page_title %}
{% block content %} {% block content %}
<div> <div class="d-flex flex-column" style="height: calc(100vh - {% header_padding_size %}); margin-top: -1rem; margin-bottom: -1rem;">
{% include "framework/header/page-header.html" with title=error_title %} <div class="d-flex flex-grow-1 justify-content-center align-items-center">
<div>
{% include "framework/header/page-header.html" with title=error_title %}
<div class="text-center"> <div class="text-center">
<svg <svg
xmlns="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg"
width="150" width="150"
height="150" height="150"
fill="currentColor" fill="currentColor"
class="bi bi-exclamation-triangle" class="bi bi-exclamation-triangle"
viewBox="0 0 16 16" viewBox="0 0 16 16"
> >
<path <path
d="M7.938 2.016A.13.13 0 0 1 8.002 2a.13.13 0 0 1 .063.016.146.146 0 0 1 .054.057l6.857 11.667c.036.06.035.124.002.183a.163.163 0 0 1-.054.06.116.116 0 0 1-.066.017H1.146a.115.115 0 0 1-.066-.017.163.163 0 0 1-.054-.06.176.176 0 0 1 .002-.183L7.884 2.073a.147.147 0 0 1 .054-.057zm1.044-.45a1.13 1.13 0 0 0-1.96 0L.165 13.233c-.457.778.091 1.767.98 1.767h13.713c.889 0 1.438-.99.98-1.767L8.982 1.566z" d="M7.938 2.016A.13.13 0 0 1 8.002 2a.13.13 0 0 1 .063.016.146.146 0 0 1 .054.057l6.857 11.667c.036.06.035.124.002.183a.163.163 0 0 1-.054.06.116.116 0 0 1-.066.017H1.146a.115.115 0 0 1-.066-.017.163.163 0 0 1-.054-.06.176.176 0 0 1 .002-.183L7.884 2.073a.147.147 0 0 1 .054-.057zm1.044-.45a1.13 1.13 0 0 0-1.96 0L.165 13.233c-.457.778.091 1.767.98 1.767h13.713c.889 0 1.438-.99.98-1.767L8.982 1.566z"
/> />
<path <path
d="M7.002 12a1 1 0 1 1 2 0 1 1 0 0 1-2 0zM7.1 5.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 5.995z" d="M7.002 12a1 1 0 1 1 2 0 1 1 0 0 1-2 0zM7.1 5.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 5.995z"
/> />
</svg> </svg>
</div>
<p class="text-center">{{ error_message }}</p>
</div>
</div> </div>
<p class="text-center">{{ error_message }}</p>
</div> </div>
{% endblock content %} {% endblock content %}

View File

@@ -1,5 +1,5 @@
{% load i18n %} {% load i18n %}
{% if user.is_authenticated %}
<li class="nav-item"> <li class="nav-item">
<a href="{% url 'authentication:add_character' %}" class="nav-link" title="{% translate 'Add Character' %}"> <a href="{% url 'authentication:add_character' %}" class="nav-link" title="{% translate 'Add Character' %}">
<i class="fa-solid fa-plus"></i> <i class="fa-solid fa-plus"></i>
@@ -12,3 +12,10 @@
<span class="d-lg-none d-md-inline m-2">{% translate "Change Main" %}</span> <span class="d-lg-none d-md-inline m-2">{% translate "Change Main" %}</span>
</a> </a>
</li> </li>
{% else %}
<li class="nav-item">
<a href="{% url 'authentication:login' %}" class="nav-link" title="{% translate 'Sign In' %}">
<i class="fa-solid fa-right-to-bracket fa-fw "></i> {% translate "Sign In" %}
</a>
</li>
{% endif %}

View File

@@ -27,6 +27,7 @@ class BootstrapThemeHook(ThemeHook):
self, self,
"Bootstrap", "Bootstrap",
"Powerful, extensible, and feature-packed frontend toolkit.", "Powerful, extensible, and feature-packed frontend toolkit.",
html_tags={"data-theme": "bootstrap"},
css=CSS_STATICS, css=CSS_STATICS,
js=JS_STATICS, js=JS_STATICS,
header_padding="3.5em" header_padding="3.5em"
@@ -44,9 +45,9 @@ class BootstrapDarkThemeHook(ThemeHook):
self, self,
"Bootstrap Dark", "Bootstrap Dark",
"Powerful, extensible, and feature-packed frontend toolkit.", "Powerful, extensible, and feature-packed frontend toolkit.",
html_tags={"data-theme": "bootstrap-dark"},
css=CSS_STATICS, css=CSS_STATICS,
js=JS_STATICS, js=JS_STATICS,
html_tags="data-bs-theme=dark",
header_padding="3.5em" header_padding="3.5em"
) )

View File

@@ -13,6 +13,7 @@ class DarklyThemeHook(ThemeHook):
self, self,
"Darkly", "Darkly",
"Flatly in night mode!", "Flatly in night mode!",
html_tags={"data-theme": "darkly"},
css=[{ css=[{
"url": "https://cdnjs.cloudflare.com/ajax/libs/bootswatch/5.3.3/darkly/bootstrap.min.css", "url": "https://cdnjs.cloudflare.com/ajax/libs/bootswatch/5.3.3/darkly/bootstrap.min.css",
"integrity": "sha512-HDszXqSUU0om4Yj5dZOUNmtwXGWDa5ppESlX98yzbBS+z+3HQ8a/7kcdI1dv+jKq+1V5b01eYurE7+yFjw6Rdg==" "integrity": "sha512-HDszXqSUU0om4Yj5dZOUNmtwXGWDa5ppESlX98yzbBS+z+3HQ8a/7kcdI1dv+jKq+1V5b01eYurE7+yFjw6Rdg=="

View File

@@ -13,6 +13,7 @@ class FlatlyThemeHook(ThemeHook):
self, self,
"Flatly", "Flatly",
"Flat and modern!", "Flat and modern!",
html_tags={"data-theme": "flatly"},
css=[{ css=[{
"url": "https://cdnjs.cloudflare.com/ajax/libs/bootswatch/5.3.3/flatly/bootstrap.min.css", "url": "https://cdnjs.cloudflare.com/ajax/libs/bootswatch/5.3.3/flatly/bootstrap.min.css",
"integrity": "sha512-qoT4KwnRpAQ9uczPsw7GunsNmhRnYwSlE2KRCUPRQHSkDuLulCtDXuC2P/P6oqr3M5hoGagUG9pgHDPkD2zCDA==" "integrity": "sha512-qoT4KwnRpAQ9uczPsw7GunsNmhRnYwSlE2KRCUPRQHSkDuLulCtDXuC2P/P6oqr3M5hoGagUG9pgHDPkD2zCDA=="

View File

@@ -1,10 +1,10 @@
from typing import List, Optional from typing import List, Optional, Union
class ThemeHook: class ThemeHook:
""" """
Theme hook for injecting a Bootstrap 5 Theme and associated JS into alliance auth. Theme hook for injecting a Bootstrap 5 Theme and associated JS into alliance auth.
these can be local or CDN delivered These can be local or CDN delivered.
""" """
def __init__(self, def __init__(self,
@@ -14,7 +14,7 @@ class ThemeHook:
js: List[dict], js: List[dict],
css_template: Optional[str] = None, css_template: Optional[str] = None,
js_template: Optional[str] = None, js_template: Optional[str] = None,
html_tags: Optional[str] = "", html_tags: Optional[Union[dict, str]] = None,
header_padding: Optional[str] = "4em"): header_padding: Optional[str] = "4em"):
""" """
:param name: Theme python name :param name: Theme python name
@@ -29,6 +29,10 @@ class ThemeHook:
:type css_template: Optional[str], optional :type css_template: Optional[str], optional
:param js_template: _description_, defaults to None :param js_template: _description_, defaults to None
:type js_template: Optional[str], optional :type js_template: Optional[str], optional
:param html_tags: Attributes added to the `<html>` tag, defaults to None
:type html_tags: Optional[dict|str], optional
:param header_padding: Top padding, defaults to "4em"
:type header_padding: Optional[str], optional
""" """
self.name = name self.name = name
self.description = description self.description = description
@@ -41,7 +45,11 @@ class ThemeHook:
self.css_template = css_template self.css_template = css_template
self.js_template = js_template self.js_template = js_template
self.html_tags = html_tags self.html_tags = (
" ".join([f"{key}={value}" for key, value in html_tags.items()])
if isinstance(html_tags, dict)
else html_tags
)
self.header_padding = header_padding self.header_padding = header_padding
def get_name(self): def get_name(self):
return f"{self.__class__.__module__}.{self.__class__.__name__}" return f"{self.__class__.__module__}.{self.__class__.__name__}"

View File

@@ -13,6 +13,7 @@ class MateriaThemeHook(ThemeHook):
self, self,
"Materia", "Materia",
"Material is the metaphor", "Material is the metaphor",
html_tags={"data-theme": "materia"},
css=[{ css=[{
"url": "https://cdnjs.cloudflare.com/ajax/libs/bootswatch/5.3.3/materia/bootstrap.min.css", "url": "https://cdnjs.cloudflare.com/ajax/libs/bootswatch/5.3.3/materia/bootstrap.min.css",
"integrity": "sha512-2S9Do+uTmZmmJpdmAcOKdUrK/YslcvAuRfIF2ws8+BW9AvZXMRZM+o8Wq+PZrfISD6ZlIaeCWWZAdeprXIoYuQ==" "integrity": "sha512-2S9Do+uTmZmmJpdmAcOKdUrK/YslcvAuRfIF2ws8+BW9AvZXMRZM+o8Wq+PZrfISD6ZlIaeCWWZAdeprXIoYuQ=="

View File

@@ -1,11 +1,12 @@
import logging
import datetime import datetime
import logging
from django import forms from django import forms
from django.utils import timezone
from django.core.validators import MaxValueValidator, MinValueValidator from django.core.validators import MaxValueValidator, MinValueValidator
from django.utils import timezone
from django.utils.translation import gettext_lazy as _ from django.utils.translation import gettext_lazy as _
from .models import Timer, TimerType from .models import Timer
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
@@ -32,54 +33,28 @@ class TimerForm(forms.ModelForm):
kwargs.update({'initial': initial}) kwargs.update({'initial': initial})
super().__init__(*args, **kwargs) super().__init__(*args, **kwargs)
structure_choices = [('POCO', 'POCO'),
('I-HUB', 'I-HUB'),
('TCU', 'TCU'),
('POS[S]', 'POS[S]'),
('POS[M]', 'POS[M]'),
('POS[L]', 'POS[L]'),
('Astrahus', 'Astrahus'),
('Fortizar', 'Fortizar'),
('Keepstar', 'Keepstar'),
('Raitaru', 'Raitaru'),
('Azbel', 'Azbel'),
('Sotiyo', 'Sotiyo'),
('Athanor', 'Athanor'),
('Tatara', 'Tatara'),
('Pharolux Cyno Beacon', 'Pharolux Cyno Beacon'),
('Tenebrex Cyno Jammer', 'Tenebrex Cyno Jammer'),
('Ansiblex Jump Gate', 'Ansiblex Jump Gate'),
('Moon Mining Cycle', 'Moon Mining Cycle'),
(_('Other'), _('Other'))]
objective_choices = [('Friendly', _('Friendly')),
('Hostile', _('Hostile')),
('Neutral', _('Neutral'))]
details = forms.CharField(max_length=254, required=True, label=_('Details')) details = forms.CharField(max_length=254, required=True, label=_('Details'))
system = forms.CharField(max_length=254, required=True, label=_("System")) system = forms.CharField(max_length=254, required=True, label=_("System"))
planet_moon = forms.CharField(max_length=254, label=_("Planet/Moon"), required=False, initial="") planet_moon = forms.CharField(max_length=254, label=_("Planet/Moon"), required=False, initial="")
structure = forms.ChoiceField(choices=structure_choices, required=True, label=_("Structure Type")) structure = forms.ChoiceField(choices=Timer.Structure.choices, required=True, label=_("Structure Type"))
timer_type = forms.ChoiceField(choices=TimerType.choices, label=_("Timer Type")) timer_type = forms.ChoiceField(choices=Timer.TimerType.choices, label=_("Timer Type"))
objective = forms.ChoiceField(choices=objective_choices, required=True, label=_("Objective")) objective = forms.ChoiceField(choices=Timer.Objective.choices, required=True, label=_("Objective"))
absolute_checkbox = forms.BooleanField(label=_("Absolute Timer"), required=False, initial=False) absolute_checkbox = forms.BooleanField(label=_("Absolute Timer"), required=False, initial=False)
absolute_time = forms.CharField(required=False,label=_("Date and Time")) absolute_time = forms.CharField(required=False,label=_("Date and Time"))
days_left = forms.IntegerField(required=False, label=_("Days Remaining"), validators=[MinValueValidator(0)]) days_left = forms.IntegerField(required=False, label=_("Days Remaining"), validators=[MinValueValidator(0)])
hours_left = forms.IntegerField(required=False, label=_("Hours Remaining"), hours_left = forms.IntegerField(required=False, label=_("Hours Remaining"),
validators=[MinValueValidator(0), MaxValueValidator(23)]) validators=[MinValueValidator(0), MaxValueValidator(23)])
minutes_left = forms.IntegerField(required=False, label=_("Minutes Remaining"), minutes_left = forms.IntegerField(required=False, label=_("Minutes Remaining"), validators=[MinValueValidator(0), MaxValueValidator(59)])
validators=[MinValueValidator(0), MaxValueValidator(59)])
important = forms.BooleanField(label=_("Important"), required=False) important = forms.BooleanField(label=_("Important"), required=False)
corp_timer = forms.BooleanField(label=_("Corp-Restricted"), required=False) corp_timer = forms.BooleanField(label=_("Corp-Restricted"), required=False)
def save(self, commit=True): def save(self, commit=True):
timer = super().save(commit=False) timer = super().save(commit=False)
# Get character # Get character
character = self.user.profile.main_character character = self.user.profile.main_character
corporation = character.corporation corporation = character.corporation
logger.debug("Determined timer save request on behalf " logger.debug(f"Determined timer save request on behalf of character {character} corporation {corporation}")
"of character {} corporation {}".format(character, corporation))
days_left = self.cleaned_data['days_left'] days_left = self.cleaned_data['days_left']
hours_left = self.cleaned_data['hours_left'] hours_left = self.cleaned_data['hours_left']

View File

@@ -0,0 +1,28 @@
# Generated by Django 4.2 on 2024-09-09 03:45
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('timerboard', '0005_alter_timer_planet_moon'),
]
operations = [
migrations.AlterField(
model_name='timer',
name='objective',
field=models.CharField(choices=[('Friendly', 'Friendly'), ('Hostile', 'Hostile'), ('Neutral', 'Neutral')], default='Neutral', max_length=254),
),
migrations.AlterField(
model_name='timer',
name='structure',
field=models.CharField(choices=[('POCO', 'POCO'), ('Orbital Skyhook', 'Orbital Skyhook'), ('I-HUB', 'I-HUB'), ('TCU', 'TCU'), ('POS[S]', 'POS [S]'), ('POS[M]', 'POS [M]'), ('POS[L]', 'POS [L]'), ('Astrahus', 'Astrahus'), ('Fortizar', 'Fortizar'), ('Keepstar', 'Keepstar'), ('Raitaru', 'Raitaru'), ('Azbel', 'Azbel'), ('Sotiyo', 'Sotiyo'), ('Athanor', 'Athanor'), ('Tatara', 'Tatara'), ('Pharolux Cyno Beacon', 'Pharolux Cyno Beacon'), ('Tenebrex Cyno Jammer', 'Tenebrex Cyno Jammer'), ('Ansiblex Jump Gate', 'Ansiblex Jump Gate'), ('Moon Mining Cycle', 'Moon Mining Cycle'), ('Metenox Moon Drill', 'Metenox Moon Drill'), ('Other', 'Other')], default='Other', max_length=254),
),
migrations.AlterField(
model_name='timer',
name='timer_type',
field=models.CharField(choices=[('UNSPECIFIED', 'Not Specified'), ('SHIELD', 'Shield'), ('ARMOR', 'Armor'), ('HULL', 'Hull'), ('FINAL', 'Final'), ('ANCHORING', 'Anchoring'), ('UNANCHORING', 'Unanchoring'), ('ABANDONED', 'Abandoned')], default='UNSPECIFIED', max_length=254),
),
]

View File

@@ -6,34 +6,63 @@ from allianceauth.eveonline.models import EveCharacter
from allianceauth.eveonline.models import EveCorporationInfo from allianceauth.eveonline.models import EveCorporationInfo
class TimerType(models.TextChoices):
"""
Choices for Timer Type
"""
UNSPECIFIED = "UNSPECIFIED", _("Not Specified")
SHIELD = "SHIELD", _("Shield")
ARMOR = "ARMOR", _("Armor")
HULL = "HULL", _("Hull")
FINAL = "FINAL", _("Final")
ANCHORING = "ANCHORING", _("Anchoring")
UNANCHORING = "UNANCHORING", _("Unanchoring")
class Timer(models.Model): class Timer(models.Model):
class Meta: class Objective(models.TextChoices):
ordering = ['eve_time'] """
Choices for Objective Type
"""
FRIENDLY = "Friendly", _("Friendly")
HOSTILE = "Hostile", _("Hostile")
NEUTRAL = "Neutral", _("Neutral")
class Structure(models.TextChoices):
"""
Choices for Structure Type
"""
POCO = "POCO", _("POCO")
ORBITALSKYHOOK = "Orbital Skyhook", _("Orbital Skyhook")
IHUB = "I-HUB", _("I-HUB")
TCU = "TCU", _("TCU") # Pending Remval
POSS = "POS[S]", _("POS [S]")
POSM = "POS[M]", _("POS [M]")
POSL = "POS[L]", _("POS [L]")
ASTRAHUS = "Astrahus", _("Astrahus")
FORTIZAR = "Fortizar", _("Fortizar")
KEEPSTAR = "Keepstar", _("Keepstar")
RAITARU = "Raitaru", _("Raitaru")
AZBEL = "Azbel", _("Azbel")
SOTIYO = "Sotiyo", _("Sotiyo")
ATHANOR = "Athanor", _("Athanor")
TATARA = "Tatara", _("Tatara")
PHAROLUX = "Pharolux Cyno Beacon", _("Pharolux Cyno Beacon")
TENEBREX = "Tenebrex Cyno Jammer", _("Tenebrex Cyno Jammer")
ANSIBLEX = "Ansiblex Jump Gate", _("Ansiblex Jump Gate")
MOONPOP = "Moon Mining Cycle", _("Moon Mining Cycle")
METENOX = "Metenox Moon Drill", _("Metenox Moon Drill")
OTHER = "Other", _("Other")
class TimerType(models.TextChoices):
"""
Choices for Timer Type
"""
UNSPECIFIED = "UNSPECIFIED", _("Not Specified")
SHIELD = "SHIELD", _("Shield")
ARMOR = "ARMOR", _("Armor")
HULL = "HULL", _("Hull")
FINAL = "FINAL", _("Final")
ANCHORING = "ANCHORING", _("Anchoring")
UNANCHORING = "UNANCHORING", _("Unanchoring")
ABANDONED = "ABANDONED", _("Abandoned")
details = models.CharField(max_length=254, default="") details = models.CharField(max_length=254, default="")
system = models.CharField(max_length=254, default="") system = models.CharField(max_length=254, default="")
planet_moon = models.CharField(max_length=254, blank=True, default="") planet_moon = models.CharField(max_length=254, blank=True, default="")
structure = models.CharField(max_length=254, default="") structure = models.CharField(max_length=254,choices=Structure.choices,default=Structure.OTHER)
timer_type = models.CharField( timer_type = models.CharField(max_length=254,choices=TimerType.choices,default=TimerType.UNSPECIFIED)
max_length=254, objective = models.CharField(max_length=254, choices=Objective.choices, default=Objective.NEUTRAL)
choices=TimerType.choices,
default=TimerType.UNSPECIFIED,
)
objective = models.CharField(max_length=254, default="")
eve_time = models.DateTimeField() eve_time = models.DateTimeField()
important = models.BooleanField(default=False) important = models.BooleanField(default=False)
eve_character = models.ForeignKey(EveCharacter, null=True, on_delete=models.SET_NULL) eve_character = models.ForeignKey(EveCharacter, null=True, on_delete=models.SET_NULL)
@@ -41,5 +70,8 @@ class Timer(models.Model):
corp_timer = models.BooleanField(default=False) corp_timer = models.BooleanField(default=False)
user = models.ForeignKey(User, null=True, on_delete=models.SET_NULL) user = models.ForeignKey(User, null=True, on_delete=models.SET_NULL)
def __str__(self): def __str__(self) -> str:
return str(self.system) + ' ' + str(self.details) return str(self.system) + ' ' + str(self.details)
class Meta:
ordering = ['eve_time']

View File

@@ -1,59 +1,59 @@
{% load i18n %} {% load i18n %}
{% load evelinks %} {% load evelinks %}
<div class="col-12 align-self-stretch py-2"> <div class="col-12 mb-3">
<div class="card h-100"> <div class="card h-100">
<div class="card-body"> <div class="card-body">
<h4 class="card-title text-center">{% translate "Upcoming Timers" %}</h4> {% translate "Upcoming Timers" as widget_title %}
<div class="card-body"> {% include "framework/dashboard/widget-title.html" with title=widget_title %}
<div>
<table class="table">
<thead>
<tr>
<th class="text-center">{% translate "Details" %}</th>
<th class="text-center">{% translate "Timer" %}</th>
<th class="text-center">{% translate "Type" %}</th>
<th class="text-center">{% translate "System" %}</th>
<th class="text-center">{% translate "EVE Time" %}</th>
</tr>
</thead>
<tbody> <div>
{% for timer in timers %} <table class="table">
<tr> <thead>
<td class="text-center"> <tr>
{{ timer.details }} <th class="text-center">{% translate "Details" %}</th>
</td> <th class="text-center">{% translate "Timer" %}</th>
<td class="text-center"> <th class="text-center">{% translate "Type" %}</th>
{{ timer.get_timer_type_display }} <th class="text-center">{% translate "System" %}</th>
</td> <th class="text-center">{% translate "EVE Time" %}</th>
<td class="text-center" nowrap> </tr>
{% if timer.objective == "Hostile" %} </thead>
<div class="badge bg-danger">
{% translate "Hostile" %} <tbody>
</div> {% for timer in timers %}
{% endif %} <tr>
{% if timer.objective == "Friendly" %} <td class="text-center">
<div class="badge bg-primary"> {{ timer.details }}
{% translate "Friendly" %} </td>
</div> <td class="text-center">
{% endif %} {{ timer.get_timer_type_display }}
{% if timer.objective == "Neutral" %} </td>
<div class="badge bg-default"> <td class="text-center" nowrap>
{% translate "Neutral" %} {% if timer.objective == "Hostile" %}
</div> <div class="badge bg-danger">
{% endif %} {% translate "Hostile" %}
</td> </div>
<td class="text-center"><a href="{{ timer.system|dotlan_solar_system_url }}"> {% endif %}
{{ timer.system }} {{ timer.planet_moon }} {% if timer.objective == "Friendly" %}
</a> <div class="badge bg-primary">
</td> {% translate "Friendly" %}
<td class="text-center" nowrap>{{ timer.eve_time | date:"Y-m-d H:i" }}</td> </div>
</tr> {% endif %}
{% endfor %} {% if timer.objective == "Neutral" %}
</tbody> <div class="badge bg-secondary">
</table> {% translate "Neutral" %}
</div> </div>
{% endif %}
</td>
<td class="text-center"><a href="{{ timer.system|dotlan_solar_system_url }}">
{{ timer.system }} {{ timer.planet_moon }}
</a>
</td>
<td class="text-center" nowrap>{{ timer.eve_time | date:"Y-m-d H:i" }}</td>
</tr>
{% endfor %}
</tbody>
</table>
</div> </div>
</div> </div>
</div> </div>

View File

@@ -18,174 +18,85 @@
</tr> </tr>
{% for timer in timers %} {% for timer in timers %}
{% if timer.important == True %} <tr class="{% if timer.important == True %}bg-danger bg-opacity-25{% else %}bg-info bg-opacity-25{% endif %}">
<tr class="danger">
{% else %}
<tr class="info">
{% endif %}
<td style="width: 150px;" class="text-center"> <td style="width: 150px;" class="text-center">
{{ timer.details }} {{ timer.details }}
{% if timer.timer_type != 'UNSPECIFIED' %} {% if timer.timer_type != 'UNSPECIFIED' %}
<br>({{ timer.get_timer_type_display }}) <br />
({{ timer.get_timer_type_display }})
{% endif %} {% endif %}
</td> </td>
<td class="text-center"> <td class="text-center">
{% if timer.objective == "Hostile" %} {% if timer.objective == "Hostile" %}
<div class="badge bg-danger"> <div class="badge bg-danger">{% translate "Hostile" %}</div>
{% translate "Hostile" %} {% elif timer.objective == "Friendly" %}
</div> <div class="badge bg-primary">{% translate "Friendly" %}</div>
{% endif %} {% elif timer.objective == "Neutral" %}
<div class="badge bg-secondary">{% translate "Neutral" %}</div>
{% if timer.objective == "Friendly" %}
<div class="badge bg-primary">
{% translate "Friendly" %}
</div>
{% endif %}
{% if timer.objective == "Neutral" %}
<div class="badge bg-default">
{% translate "Neutral" %}
</div>
{% endif %} {% endif %}
</td> </td>
<td class="text-center"> <td class="text-center">
<a href="{{ timer.system|dotlan_solar_system_url }}"> <a href="{{ timer.system|dotlan_solar_system_url }}">{{ timer.system }} {{ timer.planet_moon }}</a>
{{ timer.system }} {{ timer.planet_moon }}
</a>
</td> </td>
<td class="text-center"> <td class="text-center">
{% if timer.structure == "POCO" %} {% if timer.structure == "POCO" %}
<div class="badge bg-info"> <div class="badge bg-info">{% translate "POCO" %}</div>
{% translate "POCO" %} {% elif timer.structure == "Orbital Skyhook" %}
</div> <div class="badge bg-warning">{% translate "Orbital Skyhook" %}</div>
{% endif %} {% elif timer.structure == "I-HUB" %}
<div class="badge bg-warning">{% translate "I-HUB" %}</div>
{% if timer.structure == "I-HUB" %} {% elif timer.structure == "TCU" %} {% comment %} Pending Removal {% endcomment %}
<div class="badge bg-warning"> <div class="badge bg-secondary">{% translate "TCU" %}</div>
{% translate "I-HUB" %} {% elif timer.structure == "POS[S]" %}
</div> <div class="badge bg-info">{% translate "POS [S]" %}</div>
{% endif %} {% elif timer.structure == "POS[M]" %}
<div class="badge bg-info">{% translate "POS [M]" %}</div>
{% if timer.structure == "TCU" %} {% elif timer.structure == "POS[L]" %}
<div class="badge bg-danger"> <div class="badge bg-info">{% translate "POS [L]" %}</div>
{% translate "TCU" %} {% elif timer.structure == "Citadel[M]" or timer.structure == "Astrahus" %}
</div> <div class="badge bg-danger">{% translate "Astrahus" %}</div>
{% endif %} {% elif timer.structure == "Citadel[L]" or timer.structure == "Fortizar" %}
<div class="badge bg-danger">{% translate "Fortizar" %}</div>
{% if timer.structure == "POS[S]" %} {% elif timer.structure == "Citadel[XL]" or timer.structure == "Keepstar" %}
<div class="badge bg-info"> <div class="badge bg-danger">{% translate "Keepstar" %}</div>
{% translate "POS [S]" %} {% elif timer.structure == "Engineering Complex[M]" or timer.structure == "Raitaru" %}
</div> <div class="badge bg-warning">{% translate "Raitaru" %}</div>
{% endif %} {% elif timer.structure == "Engineering Complex[L]" or timer.structure == "Azbel" %}
<div class="badge bg-warning">{% translate "Azbel" %}</div>
{% if timer.structure == "POS[M]" %} {% elif timer.structure == "Engineering Complex[XL]" or timer.structure == "Sotiyo" %}
<div class="badge bg-info"> <div class="badge bg-danger">{% translate "Sotiyo" %}</div>
{% translate "POS [M]" %} {% elif timer.structure == "Refinery[M]" or timer.structure == "Athanor" %}
</div> <div class="badge bg-warning">{% translate "Athanor" %}</div>
{% endif %} {% elif timer.structure == "Refinery[L]" or timer.structure == "Tatara" %}
<div class="badge bg-warning">{% translate "Tatara" %}</div>
{% if timer.structure == "POS[L]" %} {% elif timer.structure == "Cyno Beacon" or timer.structure == "Pharolux Cyno Beacon" %}
<div class="badge bg-info"> <div class="badge bg-warning">{% translate "Cyno Beacon" %}</div>
{% translate "POS [L]" %} {% elif timer.structure == "Cyno Jammer" or timer.structure == "Tenebrex Cyno Jammer" %}
</div> <div class="badge bg-warning">{% translate "Cyno Jammer" %}</div>
{% endif %} {% elif timer.structure == "Jump Gate" or timer.structure == "Ansiblex Jump Gate" %}
<div class="badge bg-warning">{% translate "Ansiblex Jump Gate" %}</div>
{% if timer.structure == "Citadel[M]" or timer.structure == "Astrahus" %} {% elif timer.structure == "Moon Mining Cycle" %}
<div class="badge bg-danger"> <div class="badge bg-success">{% translate "Moon Mining Cycle" %}</div>
{% translate "Astrahus" %} {% elif timer.structure == "Metenox Moon Drill" %}
</div> <div class="badge bg-warning">{% translate "Metenox Moon Drill" %}</div>
{% endif %} {% elif timer.structure == "Other" %}
<div class="badge bg-secondary">{% translate "Other" %}</div>
{% if timer.structure == "Citadel[L]" or timer.structure == "Fortizar" %}
<div class="badge bg-danger">
{% translate "Fortizar" %}
</div>
{% endif %}
{% if timer.structure == "Citadel[XL]" or timer.structure == "Keepstar" %}
<div class="badge bg-danger">
{% translate "Keepstar" %}
</div>
{% endif %}
{% if timer.structure == "Engineering Complex[M]" or timer.structure == "Raitaru" %}
<div class="badge bg-warning">
{% translate "Raitaru" %}
</div>
{% endif %}
{% if timer.structure == "Engineering Complex[L]" or timer.structure == "Azbel" %}
<div class="badge bg-warning">
{% translate "Azbel" %}
</div>
{% endif %}
{% if timer.structure == "Engineering Complex[XL]" or timer.structure == "Sotiyo" %}
<div class="badge bg-warning">
{% translate "Sotiyo" %}
</div>
{% endif %}
{% if timer.structure == "Refinery[M]" or timer.structure == "Athanor" %}
<div class="badge bg-warning">
{% translate "Athanor" %}
</div>
{% endif %}
{% if timer.structure == "Refinery[L]" or timer.structure == "Tatara"%}
<div class="badge bg-warning">
{% translate "Tatara" %}
</div>
{% endif %}
{% if timer.structure == "Cyno Beacon" or timer.structure == "Pharolux Cyno Beacon" %}
<div class="badge bg-warning">
{% translate "Cyno Beacon" %}
</div>
{% endif %}
{% if timer.structure == "Cyno Jammer" or timer.structure == "Tenebrex Cyno Jammer" %}
<div class="badge bg-warning">
{% translate "Cyno Jammer" %}
</div>
{% endif %}
{% if timer.structure == "Jump Gate" or timer.structure == "Ansiblex Jump Gate" %}
<div class="badge bg-warning">
{% translate "Ansiblex Jump Gate" %}
</div>
{% endif %}
{% if timer.structure == "Moon Mining Cycle" %}
<div class="badge bg-success">
{% translate "Moon Mining Cycle" %}
</div>
{% endif %}
{% if timer.structure == "Other" %}
<div class="badge bg-default">
{% translate "Other" %}
</div>
{% endif %} {% endif %}
</td> </td>
<td class="text-center" nowrap> <td class="text-center" nowrap>{{ timer.eve_time | date:"Y-m-d H:i" }}</td>
{{ timer.eve_time | date:"Y-m-d H:i" }}
</td>
<td class="text-center" nowrap> <td class="text-center" nowrap>
<div id="localtime{{ timer.id }}"></div> <div id="localtime{{ timer.id }}"></div>
<div id="countdown{{ timer.id }}"></div> <div id="countdown{{ timer.id }}"></div>
</td> </td>
<td class="text-center"> <td class="text-center">{{ timer.eve_character.character_name }}</td>
{{ timer.eve_character.character_name }}
</td>
{% if perms.auth.timer_management %} {% if perms.auth.timer_management %}
<td class="text-center"> <td class="text-center">

View File

@@ -167,8 +167,8 @@ class TimerboardViewsTestCase(WebTest):
form['details'] = 'details' form['details'] = 'details'
form['system'] = 'jita' form['system'] = 'jita'
form['planet_moon'] = '4-4' form['planet_moon'] = '4-4'
form['structure'] = TimerForm.structure_choices[0][0] form['structure'] = Timer.Structure.choices[0][0]
form['objective'] = TimerForm.objective_choices[0][0] form['objective'] = Timer.Objective.choices[0][0]
form['days_left'] = 1 form['days_left'] = 1
form['hours_left'] = 2 form['hours_left'] = 2
form['minutes_left'] = 3 form['minutes_left'] = 3
@@ -206,8 +206,8 @@ class TimerboardViewsTestCase(WebTest):
form['details'] = 'detailsUNIQUE' form['details'] = 'detailsUNIQUE'
form['system'] = 'jita' form['system'] = 'jita'
form['planet_moon'] = '4-4' form['planet_moon'] = '4-4'
form['structure'] = TimerForm.structure_choices[0][0] form['structure'] = Timer.Structure.choices[0][0]
form['objective'] = TimerForm.objective_choices[0][0] form['objective'] = Timer.Objective.choices[0][0]
form['days_left'] = 1 form['days_left'] = 1
form['hours_left'] = 2 form['hours_left'] = 2
form['minutes_left'] = 3 form['minutes_left'] = 3

View File

@@ -97,7 +97,7 @@ class EditTimerView(TimerManagementView, AddUpdateMixin, UpdateView):
class RemoveTimerView(TimerManagementView, DeleteView): class RemoveTimerView(TimerManagementView, DeleteView):
form_class = TimerForm pass
def dashboard_timers(request): def dashboard_timers(request):

View File

@@ -1,7 +1,7 @@
PROTOCOL=https:// PROTOCOL=https://
AUTH_SUBDOMAIN=%AUTH_SUBDOMAIN% AUTH_SUBDOMAIN=%AUTH_SUBDOMAIN%
DOMAIN=%DOMAIN% DOMAIN=%DOMAIN%
AA_DOCKER_TAG=registry.gitlab.com/allianceauth/allianceauth/auth:v4.0.0 AA_DOCKER_TAG=registry.gitlab.com/allianceauth/allianceauth/auth:v4.3.1
# Nginx Proxy Manager # Nginx Proxy Manager
PROXY_HTTP_PORT=80 PROXY_HTTP_PORT=80

View File

@@ -1,5 +1,5 @@
FROM python:3.11-slim FROM python:3.11-slim
ARG AUTH_VERSION=v4.0.0 ARG AUTH_VERSION=v4.3.1
ARG AUTH_PACKAGE=allianceauth==${AUTH_VERSION} ARG AUTH_PACKAGE=allianceauth==${AUTH_VERSION}
ENV AUTH_USER=allianceauth ENV AUTH_USER=allianceauth
ENV AUTH_GROUP=allianceauth ENV AUTH_GROUP=allianceauth
@@ -9,21 +9,21 @@ ENV AUTH_HOME=/home/allianceauth
# Setup user and directory permissions # Setup user and directory permissions
SHELL ["/bin/bash", "-c"] SHELL ["/bin/bash", "-c"]
RUN groupadd -g 61000 ${AUTH_GROUP} RUN groupadd -g 61000 ${AUTH_GROUP} && \
RUN useradd -g 61000 -l -M -s /bin/false -u 61000 ${AUTH_USER} useradd -g 61000 -l -m -s /bin/false -u 61000 ${AUTH_USER}
RUN mkdir -p ${STATIC_BASE} \
&& chown ${AUTH_USERGROUP} ${STATIC_BASE} \
&& mkdir -p ${AUTH_HOME} \
&& chown ${AUTH_USERGROUP} ${AUTH_HOME}
# Install build dependencies RUN mkdir -p ${STATIC_BASE}/myauth/static \
RUN apt-get update && apt-get upgrade -y && apt-get install -y \ && chown ${AUTH_USERGROUP} ${STATIC_BASE}/myauth/static
libmariadb-dev gcc git pkg-config
# Install python dependencies # Install Build Dependencies
RUN pip install --upgrade pip RUN apt-get update \
RUN pip install wheel gunicorn && apt-get upgrade -y \
RUN pip install ${AUTH_PACKAGE} && apt-get install -y --no-install-recommends libmariadb-dev gcc git pkg-config \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
# Install AA and Dependencies
RUN pip install --no-cache-dir ${AUTH_PACKAGE} gunicorn
# Switch to non-root user # Switch to non-root user
USER ${AUTH_USER} USER ${AUTH_USER}
@@ -33,7 +33,6 @@ WORKDIR ${AUTH_HOME}
RUN allianceauth start myauth RUN allianceauth start myauth
COPY /allianceauth/project_template/project_name/settings/local.py ${AUTH_HOME}/myauth/myauth/settings/local.py COPY /allianceauth/project_template/project_name/settings/local.py ${AUTH_HOME}/myauth/myauth/settings/local.py
RUN allianceauth update myauth RUN allianceauth update myauth
RUN mkdir -p ${STATIC_BASE}/myauth/static
RUN echo 'alias auth="python $AUTH_HOME/myauth/manage.py"' >> ~/.bashrc && \ RUN echo 'alias auth="python $AUTH_HOME/myauth/manage.py"' >> ~/.bashrc && \
source ~/.bashrc source ~/.bashrc

View File

@@ -9,6 +9,10 @@ from django.conf import settings # noqa
app = Celery('myauth') app = Celery('myauth')
# Automatically try to establish the connection to the AMQP broker on
# Celery startup if it is unavailable.
app.conf.broker_connection_retry_on_startup = True
# Using a string here means the worker don't have to serialize # Using a string here means the worker don't have to serialize
# the configuration object to child processes. # the configuration object to child processes.
app.config_from_object('django.conf:settings') app.config_from_object('django.conf:settings')

View File

@@ -1,20 +1,28 @@
server { events {}
listen 80; http {
location = /favicon.ico { access_log off; log_not_found off; } include mime.types;
location /static { default_type application/octet-stream;
alias /var/www/myauth/static;
autoindex off;
}
location /robots.txt { sendfile on;
alias /var/www/myauth/static/robots.txt;
}
location / { server {
proxy_pass http://allianceauth_gunicorn:8000; listen 80;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; location = /favicon.ico { access_log off; log_not_found off; }
proxy_set_header Host $host; location /static {
proxy_set_header X-Real-IP $remote_addr; alias /var/www/myauth/static;
proxy_redirect off; autoindex off;
}
location /robots.txt {
alias /var/www/myauth/static/robots.txt;
}
location / {
proxy_pass http://allianceauth_gunicorn:8000;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_redirect off;
}
} }
} }

View File

@@ -1,6 +1,8 @@
ARG AA_DOCKER_TAG ARG AA_DOCKER_TAG
FROM $AA_DOCKER_TAG FROM $AA_DOCKER_TAG
RUN cd /home/allianceauth WORKDIR ${AUTH_HOME}
COPY /conf/requirements.txt requirements.txt COPY /conf/requirements.txt requirements.txt
RUN pip install -r requirements.txt RUN --mount=type=cache,target=~/.cache \
pip install -r requirements.txt

View File

@@ -62,10 +62,10 @@ services:
max-file: "5" max-file: "5"
nginx: nginx:
image: nginx:1.25 image: nginx:stable
restart: always restart: always
volumes: volumes:
- ./conf/nginx.conf:/etc/nginx/conf.d/default.conf - ./conf/nginx.conf:/etc/nginx/nginx.conf
- static-volume:/var/www/myauth/static - static-volume:/var/www/myauth/static
depends_on: depends_on:
- allianceauth_gunicorn - allianceauth_gunicorn

View File

@@ -36,7 +36,7 @@ from allianceauth.framework.api.evecharacter import get_user_from_evecharacter
user = get_user_from_evecharacter(character=my_evecharacter) user = get_user_from_evecharacter(character=my_evecharacter)
``` ```
Now, `user` is a `User` object, or the sentinel username (see [get_sentinel_user](#get-sentinel-user)) Now, `user` is a `User` object, or the sentinel username (see [get_sentinel_user](#get_sentinel_user))
if the `EveCharacter` has no user. if the `EveCharacter` has no user.
## User API ## User API
@@ -88,7 +88,7 @@ main_character = get_main_character_name_from_user(user=my_user)
Now, `main_character` is a `string` containing the user's main character name. Now, `main_character` is a `string` containing the user's main character name.
If the user has no main character, the username will be returned. If the user is `None`, If the user has no main character, the username will be returned. If the user is `None`,
the sentinel username (see [get_sentinel_user](#get-sentinel-user)) will be returned. the sentinel username (see [get_sentinel_user](#get_sentinel_user)) will be returned.
### get_sentinel_user ### get_sentinel_user

View File

@@ -8,7 +8,7 @@ have to load specific CSS or JavaScript yourself.
These bundles include DataTables CSS and JS, jQuery Datepicker CSS and JS, jQueryUI CSS and JS, and more. These bundles include DataTables CSS and JS, jQuery Datepicker CSS and JS, jQueryUI CSS and JS, and more.
A full list of bundles we provide can be found here: https://gitlab.com/allianceauth/allianceauth/-/tree/master/allianceauth/templates/bundles A full list of bundles we provide can be found here: <https://gitlab.com/allianceauth/allianceauth/-/tree/master/allianceauth/templates/bundles>
To use a bundle, you can use the following code in your template (Example for jQueryUI): To use a bundle, you can use the following code in your template (Example for jQueryUI):
@@ -28,6 +28,27 @@ To ensure a unified style language throughout Alliance Auth and Community Apps,
we also provide a couple of template partials. This collection is bound to grow over we also provide a couple of template partials. This collection is bound to grow over
time, so best have an eye on this page. time, so best have an eye on this page.
### Dashboard Widget Title
To ensure the dashboard widgets have a unified style, we provide a template partial for the widget title.
To use it, you can use the following code in your dashboard widget template:
```django
<div id="my-app-dashboard-widget" class="col-12 mb-3">
<div class="card">
<div class="card-body">
{% translate "My Widget Title" as widget_title %}
{% include "framework/dashboard/widget-title.html" with title=widget_title %}
<div>
<p>My widget content</p>
</div>
</div>
</div>
</div>
```
### Page Header ### Page Header
On some pages you want to have a page header. To make this easier, we provide a template partial for this. On some pages you want to have a page header. To make this easier, we provide a template partial for this.
@@ -38,7 +59,8 @@ To use it, you can use the following code in your template:
{% block content %} {% block content %}
<div> <div>
{% translate "My Page Header" as page_header %} {% translate "My Page Header" as page_header %}
{% include "framework/header/page-header.html" with title=page_header %} {% translate "My Page Header Subtitle" as optional_subtitle %}
{% include "framework/header/page-header.html" with title=page_header subtitle=optional_subtitle %}
<p>My page content</p> <p>My page content</p>
</div> </div>

View File

@@ -122,10 +122,6 @@ class MyService(ServiceHook):
All of your apps defined urlpatterns will then be included in the `URLconf` when the core application starts. All of your apps defined urlpatterns will then be included in the `URLconf` when the core application starts.
#### self.service_ctrl_template
This is provided as a courtesy and defines the default template to be used with [render_service_ctrl](#render_service_ctrl). You are free to redefine or not use this variable at all.
#### title #### title
This is a property which provides a user-friendly display of your service's name. It will usually do a reasonably good job unless your service name has punctuation or odd capitalization. If this is the case, you should override this method and return a string. This is a property which provides a user-friendly display of your service's name. It will usually do a reasonably good job unless your service name has punctuation or odd capitalization. If this is the case, you should override this method and return a string.
@@ -134,7 +130,7 @@ This is a property which provides a user-friendly display of your service's name
#### self.service_ctrl_template #### self.service_ctrl_template
This is provided as a courtesy and defines the default template to be used with [render_service_ctrl](#render-service-ctrl). You are free to redefine or not use this variable at all. This is provided as a courtesy and defines the default template to be used with [render_service_ctrl](#render_service_ctrl). You are free to redefine or not use this variable at all.
#### delete_user #### delete_user

View File

@@ -18,6 +18,8 @@ The `MenuItemHook` class specifies some parameters/instance variables required f
:undoc-members: :undoc-members:
``` ```
## Parameters
### text ### text
The text shown as menu item, e.g., usually the name of the app. The text shown as menu item, e.g., usually the name of the app.

View File

@@ -12,6 +12,8 @@ def register_urls():
return UrlHook(app_name.urls, 'app_name', r^'app_name/') return UrlHook(app_name.urls, 'app_name', r^'app_name/')
``` ```
### Parameters
#### urls #### urls
The urls module to include. See [the Django docs](https://docs.djangoproject.com/en/dev/topics/http/urls/#example) for designing urlpatterns. The urls module to include. See [the Django docs](https://docs.djangoproject.com/en/dev/topics/http/urls/#example) for designing urlpatterns.

View File

@@ -337,7 +337,7 @@ To deactivate, click on the debug icon to switch to the debug view. Then uncheck
### AA debug config ### AA debug config
In VSC, click on Debug / Add Configuration and choose "Django". Should Django not appear as an option, make sure to first open a Django file (e.g., the local.py settings) to help VSC detect that you are using Django. In VSC, click on Debug / Add Configuration and choose "Django". Should Django not appear as an option, make sure to first open a Django file (e.g., the `local.py` settings) to help VSC detect that you are using Django.
The result should look something like this: The result should look something like this:

View File

@@ -4,9 +4,33 @@ Auto Groups allows you to automatically place users of certain states into corp
## Installation ## Installation
This is an optional app that needs to be installed. - Add `'allianceauth.eveonline.autogroups',` to `INSTALLED_APPS` in your `local.py`
To install this app add `'allianceauth.eveonline.autogroups',` to your `INSTALLED_APPS` list and run migrations. All other settings are controlled via the admin panel under the `Eve_Autogroups` section. Perform Django Maintenance and restart our Web Service and Workers.
::::{tabs}
:::{group-tab} Bare Metal
```shell
python manage.py migrate
python manage.py collectstatic --noinput
supervisorctl restart myauth:
```
:::
:::{group-tab} Containerized
```shell
docker compose --env-file=.env up -d
docker compose exec allianceauth_gunicorn bash
auth migrate
auth collectstatic
```
:::
::::
All other settings are controlled via the admin panel under the `Eve_Autogroups` section.
## Configuring a group ## Configuring a group

View File

@@ -8,7 +8,31 @@ This module is used to check the registration status of Corp members and to dete
Corp Stats requires access to the `esi-corporations.read_corporation_membership.v1` SSO scope. Update your application on the [EVE Developers site](https://developers.eveonline.com) to ensure it is available. Corp Stats requires access to the `esi-corporations.read_corporation_membership.v1` SSO scope. Update your application on the [EVE Developers site](https://developers.eveonline.com) to ensure it is available.
Add `'allianceauth.corputils',` to your `INSTALLED_APPS` list in your auth project's settings file. Run migrations to complete installation. - Add `'allianceauth.corputils',` to `INSTALLED_APPS` in your `local.py`
Perform Django Maintenance and restart our Web Service and Workers.
::::{tabs}
:::{group-tab} Bare Metal
```shell
python manage.py migrate
python manage.py collectstatic --noinput
supervisorctl restart myauth:
```
:::
:::{group-tab} Containerized
```shell
docker compose --env-file=.env up -d
docker compose exec allianceauth_gunicorn bash
auth migrate
auth collectstatic
```
:::
::::
## Creating a Corp Stats ## Creating a Corp Stats

View File

@@ -8,7 +8,31 @@ The Fleet Activity Tracking (FAT) app allows you to track fleet participation.
Fleet Activity Tracking requires access to the `esi-location.read_location.v1`, `esi-location.read_ship_type.v1`, and `esi-universe.read_structures.v1` SSO scopes. Update your application on the [EVE Developers site](https://developers.eveonline.com) to ensure these are available. Fleet Activity Tracking requires access to the `esi-location.read_location.v1`, `esi-location.read_ship_type.v1`, and `esi-universe.read_structures.v1` SSO scopes. Update your application on the [EVE Developers site](https://developers.eveonline.com) to ensure these are available.
Add `'allianceauth.fleetactivitytracking',` to your `INSTALLED_APPS` list in your auth project's settings file. Run migrations to complete installation. Add `'allianceauth.fleetactivitytracking',` to `INSTALLED_APPS` in your `local.py`
Perform Django Maintenance and restart our Web Service and Workers.
::::{tabs}
:::{group-tab} Bare Metal
```shell
python manage.py migrate
python manage.py collectstatic --noinput
supervisorctl restart myauth:
```
:::
:::{group-tab} Containerized
```shell
docker compose --env-file=.env up -d
docker compose exec allianceauth_gunicorn bash
auth migrate
auth collectstatic
```
:::
::::
## Permissions ## Permissions

View File

@@ -10,7 +10,31 @@ This app allows you to manage applications for multiple corporations in your all
## Installation ## Installation
Add `'allianceauth.hrapplications',` to your `INSTALLED_APPS` list in your auth project's settings file. Run migrations to complete installation. - Add `'allianceauth.hrapplications',` to `INSTALLED_APPS` in your `local.py`
Perform Django Maintenance and restart our Web Service and Workers.
::::{tabs}
:::{group-tab} Bare Metal
```shell
python manage.py migrate
python manage.py collectstatic --noinput
supervisorctl restart myauth:
```
:::
:::{group-tab} Containerized
```shell
docker compose --env-file=.env up -d
docker compose exec allianceauth_gunicorn bash
auth migrate
auth collectstatic
```
:::
::::
## Management ## Management

View File

@@ -6,7 +6,31 @@ Fleet Operations is an app for organizing and communicating fleet schedules.
## Installation ## Installation
Add `'allianceauth.optimer',` to your `INSTALLED_APPS` list in your auth project's settings file. Run migrations to complete installation. - Add `'allianceauth.optimer',` to `INSTALLED_APPS` in your `local.py`
Perform Django Maintenance and restart our Web Service and Workers.
::::{tabs}
:::{group-tab} Bare Metal
```shell
python manage.py migrate
python manage.py collectstatic --noinput
supervisorctl restart myauth:
```
:::
:::{group-tab} Containerized
```shell
docker compose --env-file=.env up -d
docker compose exec allianceauth_gunicorn bash
auth migrate
auth collectstatic
```
:::
::::
## Permissions ## Permissions

View File

@@ -2,9 +2,33 @@
Access to most of Alliance Auth's features is controlled by Django's permissions system. To help you secure your services, Alliance Auth provides a permission auditing tool. Access to most of Alliance Auth's features is controlled by Django's permissions system. To help you secure your services, Alliance Auth provides a permission auditing tool.
This is an optional app that needs to be installed. ## Installation
To install it add `'allianceauth.permissions_tool',` to your `INSTALLED_APPS` list in your auth project's settings file. - Add `'allianceauth.permissions_tool',` to `INSTALLED_APPS` in your `local.py`
Perform Django Maintenance and restart our Web Service and Workers.
::::{tabs}
:::{group-tab} Bare Metal
```shell
python manage.py migrate
python manage.py collectstatic --noinput
supervisorctl restart myauth:
```
:::
:::{group-tab} Containerized
```shell
docker compose --env-file=.env up -d
docker compose exec allianceauth_gunicorn bash
auth migrate
auth collectstatic
```
:::
::::
## Usage ## Usage

View File

@@ -6,7 +6,31 @@ Ship Replacement helps you to organize ship replacement programs (SRP) for your
## Installation ## Installation
Add `'allianceauth.srp',` to your `INSTALLED_APPS` list in your auth project's settings file. Run migrations to complete installation. - Add `'allianceauth.srp',` to `INSTALLED_APPS` in your `local.py`
Perform Django Maintenance and restart our Web Service and Workers.
::::{tabs}
:::{group-tab} Bare Metal
```shell
python manage.py migrate
python manage.py collectstatic --noinput
supervisorctl restart myauth:
```
:::
:::{group-tab} Containerized
```shell
docker compose --env-file=.env up -d
docker compose exec allianceauth_gunicorn bash
auth migrate
auth collectstatic
```
:::
::::
## Permissions ## Permissions

View File

@@ -6,7 +6,31 @@ Structure Timers helps you keep track of both offensive and defensive structure
## Installation ## Installation
Add `'allianceauth.timerboard',` to your `INSTALLED_APPS` list in your auth project's settings file. Run migrations to complete installation. - Add `'allianceauth.timerboard',` to `INSTALLED_APPS` in your `local.py`
Perform Django Maintenance and restart our Web Service and Workers.
::::{tabs}
:::{group-tab} Bare Metal
```shell
python manage.py migrate
python manage.py collectstatic --noinput
supervisorctl restart myauth:
```
:::
:::{group-tab} Containerized
```shell
docker compose --env-file=.env up -d
docker compose exec allianceauth_gunicorn bash
auth migrate
auth collectstatic
```
:::
::::
## Permissions ## Permissions

View File

@@ -33,23 +33,6 @@ Our Daily Stats contain the following:
- A task to send a List of Installed Apps - A task to send a List of Installed Apps
- Each Task contains the UUID and Alliance Auth Version - Each Task contains the UUID and Alliance Auth Version
Our Celery Events contain the following:
- Unique Identifier (The UUID)
- Celery Namespace of the task e.g., allianceauth.eveonline
- Celery Task
- Task Success or Exception
- A context number for bulk tasks or sometimes a binary True/False
Our Page Views contain the following:
- Unique Identifier (The UUID)
- Page Path
- Page Title
- The locale of the users browser
- The User-Agent of the user's browser
- The Alliance Auth Version
## Why ## Why
This data allows Alliance Auth development to gather accurate statistics on our installation base, as well as how those installations are used. This data allows Alliance Auth development to gather accurate statistics on our installation base, as well as how those installations are used.

View File

@@ -4,9 +4,9 @@
It has the following key features: It has the following key features:
- Automatically grants or revokes users access to external services (e.g. Discord, Mumble) and web apps (e.g. SRP requests) based on the user's current membership to [in-game organizations](/features/core/states) and [groups](/features/core/groups) - Automatically grants or revokes user access to external services (e.g. Discord, Mumble) and web apps (e.g. SRP requests) based on the user's current membership to [in-game organizations](/features/core/states) and [groups](/features/core/groups)
- Provides a central website where users can directly access web apps (e.g., SRP requests) and manage their access to external services and groups. - Provides a central web site where users can directly access web apps (e.g. SRP requests, Fleet Schedule) and manage their access to external services and groups.
- Includes a set of connectors (called ["services"](/features/services/index)) for integrating access management with many popular external services like Discord, Mumble, Teamspeak 3, SMF and others - Includes a set of connectors (called ["services"](/features/services/index)) for integrating access management with many popular external services like Discord, Mumble, Teamspeak 3, SMF and others
@@ -14,4 +14,4 @@ It has the following key features:
- It can be easily extended with additional services and apps. Many are provided by the [community](/features/community/index). - It can be easily extended with additional services and apps. Many are provided by the [community](/features/community/index).
- Chinese, English, German and Spanish localization - English :flag_gb:, Chinese :flag_cn:, German :flag_de:, Spanish :flag_es:, Korean :flag_kr:, Russian :flag_ru:, Italian :flag_it:, French :flag_fr:, Japanese :flag_jp: and Ukrainian :flag_ua: Localization

View File

@@ -6,13 +6,13 @@ Discord is a web-based instant messaging client with voice. Kind of like TeamSpe
Discord is very popular amongst ad-hoc small groups and larger organizations seeking a modern technology. Alternative voice communications should be investigated for larger than small-medium groups for more advanced features. Discord is very popular amongst ad-hoc small groups and larger organizations seeking a modern technology. Alternative voice communications should be investigated for larger than small-medium groups for more advanced features.
## Setup ## Setup Auth
### Prepare Your Settings File ### Prepare Your Settings File
Make the following changes in your auth project's settings file (`local.py`): Make the following changes in your auth project's settings file (`local.py`):
- Add `'allianceauth.services.modules.discord',` to `INSTALLED_APPS` - Add `'allianceauth.services.modules.discord',` to `INSTALLED_APPS` in your `local.py`
- Append the following to the bottom of the settings file: - Append the following to the bottom of the settings file:
```python ```python
@@ -37,6 +37,34 @@ CELERYBEAT_SCHEDULE['discord.update_all_usernames'] = {
You will have to add most of the values for these settings, e.g., your Discord server ID (aka guild ID), later in the setup process. You will have to add most of the values for these settings, e.g., your Discord server ID (aka guild ID), later in the setup process.
::: :::
### Preparing Auth
Before continuing, it is essential to perform Django Maintenance and restart our Web Service and Workers.
::::{tabs}
:::{group-tab} Bare Metal
```shell
python manage.py migrate
python manage.py collectstatic --noinput
supervisorctl restart myauth:
```
:::
:::{group-tab} Containerized
```shell
docker compose --env-file=.env up -d
docker compose exec allianceauth_gunicorn bash
auth migrate
auth collectstatic
```
:::
::::
## Setup Discord
### Creating a Server ### Creating a Server
Navigate to the [Discord site](https://discord.com/) and register an account, or log in if you have one already. Navigate to the [Discord site](https://discord.com/) and register an account, or log in if you have one already.
@@ -50,6 +78,7 @@ Update your auth project's settings file, inputting the server ID as `DISCORD_GU
:::{note} :::{note}
If you already have a Discord server, skip the creation step, but be sure to retrieve the server ID If you already have a Discord server, skip the creation step, but be sure to retrieve the server ID
::: :::
### Registering an Application ### Registering an Application
Navigate to the [Discord Developers site.](https://discord.com/developers/applications/me) Press the plus sign to create a new application. Navigate to the [Discord Developers site.](https://discord.com/developers/applications/me) Press the plus sign to create a new application.
@@ -66,10 +95,6 @@ Update your auth project's settings file with these pieces of information from t
- From the OAuth2 > General panel, `DISCORD_APP_SECRET` is the Client Secret - From the OAuth2 > General panel, `DISCORD_APP_SECRET` is the Client Secret
- From the Bot panel, `DISCORD_BOT_TOKEN` is the Token - From the Bot panel, `DISCORD_BOT_TOKEN` is the Token
### Preparing Auth
Before continuing, it is essential to run migrations and restart Gunicorn and Celery.
### Adding a Bot to the Server ### Adding a Bot to the Server
Once created, navigate to the "Services" page of your Alliance Auth install as the superuser account. At the top there is a big green button labeled "Link Discord Server". Click it, then from the drop-down select the server you created, and then Authorize. Once created, navigate to the "Services" page of your Alliance Auth install as the superuser account. At the top there is a big green button labeled "Link Discord Server". Click it, then from the drop-down select the server you created, and then Authorize.
@@ -112,6 +137,7 @@ Role names on Discord are case-sensitive, while reserved group names on Auth are
.. seealso:: .. seealso::
For more information see :ref:`ref-reserved-group-names`. For more information see :ref:`ref-reserved-group-names`.
``` ```
## Tasks ## Tasks
The Discord service contains a number of tasks that can be run to manually perform updates to all users. The Discord service contains a number of tasks that can be run to manually perform updates to all users.
@@ -132,6 +158,7 @@ Name Description
`update_all` Update groups, nicknames, usernames of all users `update_all` Update groups, nicknames, usernames of all users
======================== ==================================================== ======================== ====================================================
``` ```
:::{note} :::{note}
Depending on how many users you have, running these tasks can take considerable time to finish. You can calculate roughly 1 sec per user for all tasks, except update_all, which needs roughly 3 secs per user. Depending on how many users you have, running these tasks can take considerable time to finish. You can calculate roughly 1 sec per user for all tasks, except update_all, which needs roughly 3 secs per user.
::: :::
@@ -156,6 +183,7 @@ Name Description
`DISCORD_TASKS_MAX_RETRIES` max retries of tasks after an error occurred `3` `DISCORD_TASKS_MAX_RETRIES` max retries of tasks after an error occurred `3`
=================================== ============================================================================================= ======= =================================== ============================================================================================= =======
``` ```
## Permissions ## Permissions
To use this service, users will require some of the following. To use this service, users will require some of the following.
@@ -167,6 +195,7 @@ To use this service, users will require some of the following.
| discord.access_discord | None | Can Access the Discord Service | | discord.access_discord | None | Can Access the Discord Service |
+---------------------------------------+------------------+--------------------------------------------------------------------------+ +---------------------------------------+------------------+--------------------------------------------------------------------------+
``` ```
## Troubleshooting ## Troubleshooting
### "Unknown Error" on Discord site when activating service ### "Unknown Error" on Discord site when activating service

View File

@@ -1,11 +1,13 @@
# Discourse # Discourse
## Prepare Your Settings ## Setup Auth
### Prepare Your Settings File
In your auth project's settings file, do the following: In your auth project's settings file, do the following:
- Add `'allianceauth.services.modules.discourse',` to your `INSTALLED_APPS` list - Add `'allianceauth.services.modules.discourse',` to `INSTALLED_APPS` in your `local.py`
- Append the following to your local.py settings file: - Append the following to your `local.py` settings file:
```python ```python
# Discourse Configuration # Discourse Configuration
@@ -15,6 +17,32 @@ DISCOURSE_API_KEY = ''
DISCOURSE_SSO_SECRET = '' DISCOURSE_SSO_SECRET = ''
``` ```
### Preparing Auth
Before continuing, it is essential to perform Django Maintenance and restart our Web Service and Workers.
::::{tabs}
:::{group-tab} Bare Metal
```shell
python manage.py migrate
python manage.py collectstatic --noinput
supervisorctl restart myauth:
```
:::
:::{group-tab} Containerized
```shell
docker compose --env-file=.env up -d
docker compose exec allianceauth_gunicorn bash
auth migrate
auth collectstatic
```
:::
::::
## Install Docker ## Install Docker
```shell ```shell

View File

@@ -1,4 +1,4 @@
# Mumble # Mumble (Docker)
An alternate install guide for Mumble using Docker, better suited to an Alliance Auth Docker install An alternate install guide for Mumble using Docker, better suited to an Alliance Auth Docker install
@@ -8,7 +8,7 @@ Mumble is a free voice chat server. While not as flashy as TeamSpeak, it has all
In your auth project's settings file (`aa-docker/conf/local.py`), do the following: In your auth project's settings file (`aa-docker/conf/local.py`), do the following:
- Add `'allianceauth.services.modules.mumble',` to your `INSTALLED_APPS` list - Add `'allianceauth.services.modules.mumble',` to `INSTALLED_APPS` in your `local.py`
- Append the following to your auth project's settings file: - Append the following to your auth project's settings file:
```python ```python
@@ -67,7 +67,7 @@ Add the following to your `docker-compose.yml` under the `services:` section
max-file: "5" max-file: "5"
mumble-authenticator: mumble-authenticator:
build build:
context: . context: .
dockerfile: ./mumble-authenticator/Dockerfile dockerfile: ./mumble-authenticator/Dockerfile
restart: always restart: always

View File

@@ -14,25 +14,38 @@ This guide is currently for Ubuntu only.
### Installing Mumble Server ### Installing Mumble Server
::::{tabs}
:::{group-tab} Ubuntu 2004, 2204
The mumble server package can be retrieved from a repository, which we need to add: The mumble server package can be retrieved from a repository, which we need to add:
::::{tabs}
:::{group-tab} Ubuntu 2004, 2204, 2404
```shell ```shell
sudo apt-add-repository ppa:mumble/release sudo apt-add-repository ppa:mumble/release
``` ```
```shell :::
sudo apt-get update :::{group-tab} CentOS 7, Stream 8, Stream 9
```
sudo yum install epel-release
sudo yum update
:::
::::
Now three packages need to be installed: Now three packages need to be installed:
::::{tabs}
:::{group-tab} Ubuntu 2004, 2204, 2404
```shell ```shell
sudo apt-get install python-software-properties mumble-server libqt5sql5-mysql sudo apt-get install software-properties-common mumble-server libqt5sql5-mysql
``` ```
:::
:::{group-tab} CentOS 7, Stream 8, Stream 9
sudo yum install mumble-server
::: :::
:::: ::::
@@ -58,17 +71,7 @@ pip install -r requirements.txt
## Configuring Mumble Server ## Configuring Mumble Server
The mumble server needs its own database. Open an SQL shell with `mysql -u root -p` and execute the SQL commands to create it: Mumble ships with a configuration file that needs customization. By default, it's located at `/etc/mumble-server.ini`. Open it with your favorite text editor:
```sql
CREATE DATABASE alliance_mumble CHARACTER SET utf8mb4;
```
```sql
GRANT ALL PRIVILEGES ON alliance_mumble . * TO 'allianceserver'@'localhost';
```
Mumble ships with a configuration file that needs customization. By default, its located at `/etc/mumble-server.ini`. Open it with your favorite text editor:
```shell ```shell
sudo nano /etc/mumble-server.ini sudo nano /etc/mumble-server.ini
@@ -79,15 +82,6 @@ We need to enable the ICE authenticator. Edit the following:
- `icesecretwrite=MY_CLEVER_PASSWORD`, obviously choosing a secure password - `icesecretwrite=MY_CLEVER_PASSWORD`, obviously choosing a secure password
- ensure the line containing `Ice="tcp -h 127.0.0.1 -p 6502"` is uncommented - ensure the line containing `Ice="tcp -h 127.0.0.1 -p 6502"` is uncommented
We also want to enable Mumble to use the previously created MySQL / MariaDB database, edit the following:
- uncomment the database line, and change it to `database=alliance_mumble`
- `dbDriver=QMYSQL`
- `dbUsername=allianceserver` or whatever you called the Alliance Auth MySQL user
- `dbPassword=` that users password
- `dbPort=3306`
- `dbPrefix=murmur_`
To name your root channel, uncomment and set `registerName=` to whatever cool name you want To name your root channel, uncomment and set `registerName=` to whatever cool name you want
Save and close the file. Save and close the file.
@@ -98,7 +92,7 @@ To get Mumble superuser account credentials, run the following:
sudo dpkg-reconfigure mumble-server sudo dpkg-reconfigure mumble-server
``` ```
Set the password to something youll remember and write it down. This is your superuser password and later needed to manage ACLs. Set the password to something you'll remember and write it down. This is your superuser password and later needed to manage ACLs.
Now restart the server to see the changes reflected. Now restart the server to see the changes reflected.
@@ -106,7 +100,7 @@ Now restart the server to see the changes reflected.
sudo service mumble-server restart sudo service mumble-server restart
``` ```
Thats it! Your server is ready to be connected to at example.com:64738 That's it! Your server is ready to be connected to at example.com:64738
## Configuring Mumble Authenticator ## Configuring Mumble Authenticator

View File

@@ -29,6 +29,7 @@ Currently, the following services support custom name formats:
| Xenforo | Username | ``{character_name}`` | | Xenforo | Username | ``{character_name}`` |
+-------------+-----------+-------------------------------------+ +-------------+-----------+-------------------------------------+
``` ```
:::{note} :::{note}
It's important to note here, before we get into what you can do with a name formatter, that before the generated name is passed off to the service to create an account it will be sanitized to remove characters (the letters and numbers etc.) that the service cannot support. This means that, despite what you configured, the service may display something different. It is up to you to test your formatter and understand how your format may be disrupted by a certain services sanitization function. It's important to note here, before we get into what you can do with a name formatter, that before the generated name is passed off to the service to create an account it will be sanitized to remove characters (the letters and numbers etc.) that the service cannot support. This means that, despite what you configured, the service may display something different. It is up to you to test your formatter and understand how your format may be disrupted by a certain services sanitization function.
::: :::

Some files were not shown because too many files have changed in this diff Show More