forked from github/wulkanowy-mirror
Compare commits
46 Commits
Author | SHA1 | Date | |
---|---|---|---|
ce620cd751 | |||
f5aadb9cc8 | |||
6ac30c5a03 | |||
3e106d5af0 | |||
fc549309d8 | |||
1c485d6578 | |||
77155a74d3 | |||
d0ad5028d8 | |||
7f6a2435d0 | |||
3a07ec7755 | |||
3f9e1fd08d | |||
386ae58817 | |||
246d01ca26 | |||
09aea4c484 | |||
947bd6ba85 | |||
f2232558a3 | |||
dd3d62c10d | |||
2ae451ac4f | |||
85d3a6e8a7 | |||
47041c5fcb | |||
eed0a3b6f1 | |||
c6eea8b84d | |||
b02865e963 | |||
20be52a60a | |||
0ffc661b4f | |||
2a0e8497db | |||
e8643bc8ba | |||
b3b4603e89 | |||
05c6c8bc96 | |||
1f0b400e5a | |||
718bbea329 | |||
8390ccad20 | |||
bf9f048116 | |||
56bfabdf11 | |||
6e2bcfbe02 | |||
440cc7ae89 | |||
51dd343299 | |||
5ee7fee09d | |||
ff56348586 | |||
a69361708e | |||
3cbe98d7b8 | |||
503a97bc4c | |||
ae6a35121b | |||
558addd097 | |||
e8f9c57c34 | |||
4d67de8e5f |
@ -1,7 +1,7 @@
|
||||
[*]
|
||||
charset=utf-8
|
||||
end_of_line=lf
|
||||
insert_final_newline=Advanced
|
||||
insert_final_newline=true
|
||||
indent_style=space
|
||||
indent_size=4
|
||||
|
||||
|
@ -1,18 +0,0 @@
|
||||
changelog:
|
||||
exclude:
|
||||
labels:
|
||||
- "release ignore"
|
||||
categories:
|
||||
- title: breaking changes
|
||||
labels:
|
||||
- major
|
||||
- title: new features
|
||||
labels:
|
||||
- minor
|
||||
- fr:approved
|
||||
- title: translation updates
|
||||
labels:
|
||||
- translation
|
||||
- title: features
|
||||
labels:
|
||||
- "*"
|
@ -1,84 +0,0 @@
|
||||
name: Generate APK
|
||||
|
||||
env:
|
||||
main_project_module: app
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
types:
|
||||
- closed
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
env:
|
||||
RUNNER_TOOL_CACHE: /toolcache
|
||||
|
||||
steps:
|
||||
- name: Checkout the repository
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- name: Set current date as env variable
|
||||
run: echo "date_today=$(date +'%Y-%m-%d')" >> $GITHUB_ENV
|
||||
|
||||
- name: Set repository name as env variable
|
||||
run: echo "repository_name=$(echo '${{ gitea.repository }}' | awk -F '/' '{print $2}')" >> $GITHUB_ENV
|
||||
|
||||
- name: Set up JDK
|
||||
uses: actions/setup-java@v3
|
||||
with:
|
||||
distribution: 'zulu'
|
||||
java-version: '17'
|
||||
cache: 'gradle'
|
||||
|
||||
- name: Set up Go environment
|
||||
uses: actions/setup-go@v3
|
||||
with:
|
||||
go-version: '1.22'
|
||||
|
||||
- name: Get hash of Gradle files
|
||||
uses: https://gitea.com/actions/go-hashfiles@v0.0.1
|
||||
id: get-hash
|
||||
with:
|
||||
patterns: |-
|
||||
**/*.gradle*
|
||||
|
||||
- name: Cache Gradle
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
path: |
|
||||
~/.gradle/caches
|
||||
~/.gradle/wrapper
|
||||
key: gradle-${{ runner.os }}-${{ steps.get-hash.outputs.hash }}
|
||||
|
||||
- name: Get app version
|
||||
id: get_version
|
||||
run: echo "VERSION_NAME=$(grep -m1 "versionName" app/build.gradle | awk '{print $2}' | tr -d \'\'\"\')" >> $GITHUB_ENV
|
||||
|
||||
- name: Change wrapper permissions
|
||||
run: chmod +x ./gradlew
|
||||
|
||||
- name: Setup Android SDK
|
||||
uses: android-actions/setup-android@v3
|
||||
|
||||
- name: Build debug APK
|
||||
run: ./gradlew assembleDebug
|
||||
|
||||
- name: Upload artifacts
|
||||
uses: actions/upload-artifact@v3 # not v4 because of GHES
|
||||
with:
|
||||
name: wulkanowy_mod_debug_builds
|
||||
path: |
|
||||
app/build/outputs/**/*-debug.apk
|
||||
|
||||
- name: Create release
|
||||
uses: akkuman/gitea-release-action@v1
|
||||
env:
|
||||
NODE_OPTIONS: '--experimental-fetch'
|
||||
with:
|
||||
files: |
|
||||
app/build/outputs/**/*-debug.apk
|
||||
|
||||
name: Release ${{ env.VERSION_NAME }} (${{ env.date_today }})
|
||||
tag_name: v${{ env.VERSION_NAME }}
|
79
.github/workflows/deploy-store.yml
vendored
Normal file
79
.github/workflows/deploy-store.yml
vendored
Normal file
@ -0,0 +1,79 @@
|
||||
name: Deploy release
|
||||
|
||||
on:
|
||||
release:
|
||||
types: [ created ]
|
||||
|
||||
jobs:
|
||||
|
||||
deploy-google-play:
|
||||
name: Google Play
|
||||
runs-on: ubuntu-latest
|
||||
timeout-minutes: 10
|
||||
environment: google-play
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/setup-java@v3
|
||||
with:
|
||||
distribution: 'zulu'
|
||||
java-version: 17
|
||||
- uses: actions/cache@v3
|
||||
with:
|
||||
path: |
|
||||
~/.gradle/caches
|
||||
~/.gradle/wrapper
|
||||
key: gradle-${{ runner.os }}-${{ hashFiles('**/*.gradle*') }}
|
||||
- name: Decrypt keys
|
||||
env:
|
||||
ENCRYPT_KEY: ${{ secrets.ENCRYPT_KEY }}
|
||||
SERVICES_ENCRYPT_KEY: ${{ secrets.SERVICES_ENCRYPT_KEY }}
|
||||
run: |
|
||||
gpg --yes --batch --passphrase=$SERVICES_ENCRYPT_KEY ./app/src/release/google-services.json.gpg
|
||||
gpg --yes --batch --passphrase=$ENCRYPT_KEY ./app/upload-key.jks.gpg
|
||||
- name: Upload apk to google play
|
||||
env:
|
||||
PLAY_STORE_PASSWORD: ${{ secrets.PLAY_STORE_PASSWORD }}
|
||||
PLAY_KEY_ALIAS: ${{ secrets.PLAY_KEY_ALIAS }}
|
||||
PLAY_KEY_PASSWORD: ${{ secrets.PLAY_KEY_PASSWORD }}
|
||||
ANDROID_PUBLISHER_CREDENTIALS: ${{ secrets.ANDROID_PUBLISHER_CREDENTIALS }}
|
||||
ADMOB_PROJECT_ID: ${{ secrets.ADMOB_PROJECT_ID }}
|
||||
SINGLE_SUPPORT_AD_ID: ${{ secrets.SINGLE_SUPPORT_AD_ID }}
|
||||
DASHBOARD_TILE_AD_ID: ${{ secrets.DASHBOARD_TILE_AD_ID }}
|
||||
SET_BUILD_TIMESTAMP: ${{ secrets.SET_BUILD_TIMESTAMP }}
|
||||
run: ./gradlew publishPlayReleaseApps --stacktrace;
|
||||
|
||||
deploy-app-gallery:
|
||||
name: AppGallery
|
||||
runs-on: ubuntu-latest
|
||||
timeout-minutes: 10
|
||||
environment: app-gallery
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/setup-java@v3
|
||||
with:
|
||||
distribution: 'zulu'
|
||||
java-version: 17
|
||||
- uses: actions/cache@v3
|
||||
with:
|
||||
path: |
|
||||
~/.gradle/caches
|
||||
~/.gradle/wrapper
|
||||
key: gradle-${{ runner.os }}-${{ hashFiles('**/*.gradle*') }}
|
||||
- name: Decrypt keys
|
||||
env:
|
||||
ENCRYPT_KEY: ${{ secrets.ENCRYPT_KEY }}
|
||||
SERVICES_ENCRYPT_KEY: ${{ secrets.SERVICES_ENCRYPT_KEY }}
|
||||
run: |
|
||||
gpg --yes --batch --passphrase=$SERVICES_ENCRYPT_KEY ./app/src/release/agconnect-services.json.gpg
|
||||
gpg --yes --batch --passphrase=$ENCRYPT_KEY ./app/upload-key.jks.gpg
|
||||
- name: Prepare credentials
|
||||
env:
|
||||
AGC_CREDENTIALS: ${{ secrets.AGC_CREDENTIALS }}
|
||||
run: echo $AGC_CREDENTIALS > ./app/src/release/agconnect-credentials.json
|
||||
- name: Build and publish HMS version
|
||||
env:
|
||||
PLAY_STORE_PASSWORD: ${{ secrets.PLAY_STORE_PASSWORD }}
|
||||
PLAY_KEY_ALIAS: ${{ secrets.PLAY_KEY_ALIAS }}
|
||||
PLAY_KEY_PASSWORD: ${{ secrets.PLAY_KEY_PASSWORD }}
|
||||
SET_BUILD_TIMESTAMP: ${{ secrets.SET_BUILD_TIMESTAMP }}
|
||||
run: ./gradlew bundleHmsRelease --stacktrace && ./gradlew publishHuaweiAppGalleryHmsRelease --stacktrace
|
145
.github/workflows/deploy-test.yml
vendored
Normal file
145
.github/workflows/deploy-test.yml
vendored
Normal file
@ -0,0 +1,145 @@
|
||||
name: Deploy DEV
|
||||
|
||||
on:
|
||||
push:
|
||||
# branches: [ develop ]
|
||||
branches: [ '!*' ]
|
||||
pull_request_target:
|
||||
# branches: [ develop ]
|
||||
branches: [ '!*' ]
|
||||
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
|
||||
deploy-appcenter:
|
||||
name: App Center
|
||||
runs-on: ubuntu-latest
|
||||
timeout-minutes: 10
|
||||
environment: app-center
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/setup-java@v3
|
||||
with:
|
||||
distribution: 'zulu'
|
||||
java-version: 17
|
||||
- uses: actions/cache@v3
|
||||
with:
|
||||
path: |
|
||||
~/.gradle/caches
|
||||
~/.gradle/wrapper
|
||||
key: gradle-${{ runner.os }}-${{ hashFiles('**/*.gradle*') }}
|
||||
- name: Set run number with offset
|
||||
env:
|
||||
BUILD_NUMBER_OFFSET: ${{ secrets.BUILD_NUMBER_OFFSET }}
|
||||
run: echo "RUN_NUMBER=$((GITHUB_RUN_NUMBER+BUILD_NUMBER_OFFSET))" >> $GITHUB_ENV
|
||||
- name: Prepare build configuration
|
||||
run: |
|
||||
sed -i -e "s#applicationIdSuffix \".dev\"#applicationIdSuffix \".${GITHUB_HEAD_REF//[-.\/]/_}\"#" app/build.gradle
|
||||
sed -i -e "s#.dev\"#.${GITHUB_HEAD_REF//[-.\/]/_}\"#" app/google-services.json
|
||||
sed -i -e '/versionNameSuffix/d' app/build.gradle
|
||||
- name: Add signing config
|
||||
run: |
|
||||
cat >> app/build.gradle <<EOF
|
||||
android.signingConfigs.debug {
|
||||
storeFile file("bitrise.jks")
|
||||
storePassword System.getenv("BITRISE_KEYSTORE_PASSWORD")
|
||||
keyAlias System.getenv("BITRISE_KEY_ALIAS")
|
||||
keyPassword System.getenv("BITRISE_KEY_PASSWORD")
|
||||
}
|
||||
EOF
|
||||
- name: Decrypt keys
|
||||
env:
|
||||
BITRISE_ENCRYPT_KEY: ${{ secrets.BITRISE_ENCRYPT_KEY }}
|
||||
run: |
|
||||
gpg --yes --batch --passphrase=$BITRISE_ENCRYPT_KEY ./app/bitrise.jks.gpg
|
||||
- name: Bump version
|
||||
uses: chkfung/android-version-actions@v1.1
|
||||
with:
|
||||
gradlePath: app/build.gradle
|
||||
versionCode: ${{ env.RUN_NUMBER }}
|
||||
versionName: ${{ env.RUN_NUMBER }}-${{ github.head_ref }}
|
||||
- name: Build apk
|
||||
env:
|
||||
BITRISE_KEYSTORE_PASSWORD: ${{ secrets.BITRISE_KEYSTORE_PASSWORD }}
|
||||
BITRISE_KEY_ALIAS: ${{ secrets.BITRISE_KEY_ALIAS }}
|
||||
BITRISE_KEY_PASSWORD: ${{ secrets.BITRISE_KEY_PASSWORD }}
|
||||
run: ./gradlew assembleFdroidDebug --stacktrace
|
||||
- name: Upload apk to github artifacts
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: wulkanowyDEV-${{ env.RUN_NUMBER }}.apk
|
||||
path: app/build/outputs/apk/fdroid/debug/app-fdroid-debug.apk
|
||||
- name: Deploy to app center
|
||||
uses: wzieba/AppCenter-Github-Action@v1
|
||||
with:
|
||||
appName: wulkanowy/wulkanowy
|
||||
token: ${{ secrets.APP_CENTER_TOKEN }}
|
||||
group: Testers
|
||||
file: app/build/outputs/apk/fdroid/debug/app-fdroid-debug.apk
|
||||
notifyTesters: true
|
||||
debug: true
|
||||
|
||||
deploy-app-distribution:
|
||||
name: App Distribution
|
||||
runs-on: ubuntu-latest
|
||||
timeout-minutes: 10
|
||||
environment: app-distribution
|
||||
if: github.event_name != 'pull_request_target'
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/setup-java@v3
|
||||
with:
|
||||
distribution: 'zulu'
|
||||
java-version: 17
|
||||
- uses: actions/cache@v3
|
||||
with:
|
||||
path: |
|
||||
~/.gradle/caches
|
||||
~/.gradle/wrapper
|
||||
key: gradle-${{ runner.os }}-${{ hashFiles('**/*.gradle*') }}
|
||||
- name: Set run number with offset
|
||||
env:
|
||||
BUILD_NUMBER_OFFSET: ${{ secrets.BUILD_NUMBER_OFFSET }}
|
||||
run: echo "RUN_NUMBER=$((GITHUB_RUN_NUMBER+BUILD_NUMBER_OFFSET))" >> $GITHUB_ENV
|
||||
- name: Add signing config
|
||||
run: |
|
||||
cat >> app/build.gradle <<EOF
|
||||
android.signingConfigs.debug {
|
||||
storeFile file("bitrise.jks")
|
||||
storePassword System.getenv("BITRISE_KEYSTORE_PASSWORD")
|
||||
keyAlias System.getenv("BITRISE_KEY_ALIAS")
|
||||
keyPassword System.getenv("BITRISE_KEY_PASSWORD")
|
||||
}
|
||||
EOF
|
||||
- name: Decrypt keys
|
||||
env:
|
||||
BITRISE_ENCRYPT_KEY: ${{ secrets.BITRISE_ENCRYPT_KEY }}
|
||||
BITRISE_SERVICES_ENCRYPT_KEY: ${{ secrets.BITRISE_SERVICES_ENCRYPT_KEY }}
|
||||
run: |
|
||||
gpg --yes --batch --passphrase=$BITRISE_SERVICES_ENCRYPT_KEY ./app/src/debug/google-services.json.gpg
|
||||
gpg --yes --batch --passphrase=$BITRISE_ENCRYPT_KEY ./app/bitrise.jks.gpg
|
||||
- name: Bump version
|
||||
uses: chkfung/android-version-actions@v1.1
|
||||
with:
|
||||
gradlePath: app/build.gradle
|
||||
versionCode: ${{ env.RUN_NUMBER }}
|
||||
versionName: ${{ env.RUN_NUMBER }}
|
||||
- name: Build apk
|
||||
env:
|
||||
BITRISE_KEYSTORE_PASSWORD: ${{ secrets.BITRISE_KEYSTORE_PASSWORD }}
|
||||
BITRISE_KEY_ALIAS: ${{ secrets.BITRISE_KEY_ALIAS }}
|
||||
BITRISE_KEY_PASSWORD: ${{ secrets.BITRISE_KEY_PASSWORD }}
|
||||
run: ./gradlew assemblePlayDebug --stacktrace
|
||||
- name: Upload apk to github artifacts
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: wulkanowyDEV-${{ env.RUN_NUMBER }}-dev.apk
|
||||
path: app/build/outputs/apk/play/debug/app-play-debug.apk
|
||||
- name: Deploy to app distribution
|
||||
uses: wzieba/Firebase-Distribution-Github-Action@v1
|
||||
with:
|
||||
appId: ${{ secrets.FIREBASE_APP_ID }}
|
||||
token: ${{ secrets.FIREBASE_TOKEN }}
|
||||
groups: discord
|
||||
file: app/build/outputs/apk/play/debug/app-play-debug.apk
|
90
.github/workflows/test.yml
vendored
Normal file
90
.github/workflows/test.yml
vendored
Normal file
@ -0,0 +1,90 @@
|
||||
name: Tests
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
- develop
|
||||
- 'hotfix/**'
|
||||
tags: [ '*' ]
|
||||
pull_request:
|
||||
|
||||
jobs:
|
||||
|
||||
tests-fdroid:
|
||||
name: F-Droid
|
||||
runs-on: ubuntu-latest
|
||||
timeout-minutes: 10
|
||||
steps:
|
||||
- uses: fkirc/skip-duplicate-actions@master
|
||||
- uses: actions/checkout@v3
|
||||
- uses: gradle/wrapper-validation-action@v1
|
||||
- uses: actions/setup-java@v3
|
||||
with:
|
||||
distribution: 'zulu'
|
||||
java-version: 17
|
||||
- uses: actions/cache@v3
|
||||
with:
|
||||
path: |
|
||||
~/.gradle/caches
|
||||
~/.gradle/wrapper
|
||||
key: gradle-${{ runner.os }}-${{ hashFiles('**/*.gradle*') }}
|
||||
- name: Unit tests
|
||||
run: |
|
||||
./gradlew testFdroidDebugUnitTest --stacktrace
|
||||
./gradlew jacocoTestReport --stacktrace
|
||||
- uses: codecov/codecov-action@v3
|
||||
with:
|
||||
flags: unit
|
||||
|
||||
tests-play:
|
||||
name: Play
|
||||
runs-on: ubuntu-latest
|
||||
timeout-minutes: 10
|
||||
steps:
|
||||
- uses: fkirc/skip-duplicate-actions@master
|
||||
- uses: actions/checkout@v3
|
||||
- uses: gradle/wrapper-validation-action@v1
|
||||
- uses: actions/setup-java@v3
|
||||
with:
|
||||
distribution: 'zulu'
|
||||
java-version: 17
|
||||
- uses: actions/cache@v3
|
||||
with:
|
||||
path: |
|
||||
~/.gradle/caches
|
||||
~/.gradle/wrapper
|
||||
key: gradle-${{ runner.os }}-${{ hashFiles('**/*.gradle*') }}
|
||||
- name: Unit tests
|
||||
run: |
|
||||
./gradlew testPlayDebugUnitTest --stacktrace
|
||||
./gradlew jacocoTestReport --stacktrace
|
||||
- uses: codecov/codecov-action@v3
|
||||
with:
|
||||
flags: unit
|
||||
|
||||
tests-hms:
|
||||
name: HMS
|
||||
runs-on: ubuntu-latest
|
||||
timeout-minutes: 10
|
||||
steps:
|
||||
- uses: fkirc/skip-duplicate-actions@master
|
||||
- uses: actions/checkout@v3
|
||||
- uses: gradle/wrapper-validation-action@v1
|
||||
- uses: actions/setup-java@v3
|
||||
with:
|
||||
distribution: 'zulu'
|
||||
java-version: 17
|
||||
- uses: actions/cache@v3
|
||||
with:
|
||||
path: |
|
||||
~/.gradle/caches
|
||||
~/.gradle/wrapper
|
||||
key: gradle-${{ runner.os }}-${{ hashFiles('**/*.gradle*') }}
|
||||
- name: Unit tests
|
||||
run: |
|
||||
./gradlew testHmsDebugUnitTest --stacktrace
|
||||
./gradlew jacocoTestReport --stacktrace
|
||||
- uses: codecov/codecov-action@v3
|
||||
with:
|
||||
flags: unit
|
1
.gitignore
vendored
1
.gitignore
vendored
@ -71,6 +71,7 @@ captures/
|
||||
.idea/deploymentTargetDropDown.xml
|
||||
.idea/deploymentTargetSelector.xml
|
||||
.idea/kotlinc.xml
|
||||
.idea/studiobot.xml
|
||||
|
||||
# Keystore files
|
||||
*.jks
|
||||
|
90
README.cs.md
90
README.cs.md
@ -1,33 +1,73 @@
|
||||
Česká verze / [Deutsche Version](README.de.md) / [English version](README.en.md) / [Polska wersja](README.md) / [Slovenská verzia](README.sk.md)
|
||||
|
||||
# Wulkanowy MOD
|
||||
# Wulkanowy
|
||||
|
||||
## Funkce:
|
||||
* skrýt známky
|
||||
* Skrýt jednotlivé záznamy o docházce.
|
||||
* Skrýt komentáře.
|
||||
* falešná docházka %
|
||||
[](https://github.com/wulkanowy/wulkanowy/actions)
|
||||
[](https://codecov.io/gh/wulkanowy/wulkanowy)
|
||||
[](https://discord.gg/vccAQBr)
|
||||
[](https://f-droid.org/packages/io.github.wulkanowy/)
|
||||
[](https://github.com/wulkanowy/wulkanowy/releases)
|
||||
[](https://translate.wulkanowy.net.pl)
|
||||
|
||||
Chcete-li se dostat na skrytý panel:
|
||||
1. Přejděte na kartu „Další“.
|
||||
2. Přejděte na panel „Nastavení“.
|
||||
3. Přejděte na panel „O aplikaci“.
|
||||
4. Klikněte 5x na logo aplikace
|
||||
5. Přejděte na domovskou obrazovku
|
||||
6. Přejděte do nastavení
|
||||
7. Zadejte „tajná nastavení“
|
||||
|
||||
# Instalace
|
||||
Neoficiální klient deníku VULCAN UONET+ pro žáka a rodiče
|
||||
|
||||
| Název souboru | Přizpůsobeno |
|
||||
| ---------------- | ----------------- |
|
||||
| `*-fdroid-*.apk` | F-Droid |
|
||||
| `*-hms-*.apk` | Huawei AppGallery |
|
||||
| `*-play-*.apk` | Play Store |
|
||||
## Funkce
|
||||
|
||||
Stáhněte si vybranou verzi z [releases](https://git.sador.me/sadorowo/wulkanowy-mod/releases).
|
||||
Doporučujeme stáhnout nejnovější dostupnou verzi.
|
||||
* přihlášení pomocí emailu a hesla
|
||||
* funkce z webové stránky deníku:
|
||||
* známky
|
||||
* statistiky známek
|
||||
* frekvence
|
||||
* procento frekvence
|
||||
* zkoušky
|
||||
* plán lekce
|
||||
* dokončené lekce
|
||||
* zprávy
|
||||
* domácí úkoly
|
||||
* poznámky
|
||||
* šťastné číslo
|
||||
* další lekce
|
||||
* školní setkání
|
||||
* informace o žáku a škole
|
||||
* výpočet průměru nezávisle na preferencích školy
|
||||
* upozornění, např. o nových známkách
|
||||
* podpora více účtů s možností přejmenování žáků
|
||||
* tmavý a černý (AMOLED) motiv
|
||||
* offline režim
|
||||
* volitelné reklamy na podporu projektu
|
||||
|
||||
# O projektu Wulkanowy
|
||||
## Stáhnout
|
||||
|
||||
Chcete si přečíst více o projektu Wulkanowy? [Klikněte sem](https://github.com/wulkanowy/wulkanowy)
|
||||
Aktuální verzi si můžete stáhnout z Google Play, F-Droid nebo Huawei AppGallery
|
||||
|
||||
[<img src="https://play.google.com/intl/cs-CZ/badges/images/generic/cs_badge_web_generic.png"
|
||||
alt="Nyní na Google Play"
|
||||
height="80">](https://play.google.com/store/apps/details?id=io.github.wulkanowy)
|
||||
[<img src="https://fdroid.gitlab.io/artwork/badge/get-it-on.png"
|
||||
alt="Stáhnout s F-Droid"
|
||||
height="80">](https://f-droid.org/packages/io.github.wulkanowy/)
|
||||
[<img src="https://i.imgur.com/baTGiDP.png"
|
||||
alt="Objevuj v AppGallery"
|
||||
height="80">](https://appgallery.cloud.huawei.com/ag/n/app/C101440411?channelId=Badge&id=1b3f7fbb700849a9be0dba6b520b2282&s=EB1D3BF9ED9D1564D869B7B94B18016D3CABFCA5AEFB8E29F675FA04E0DC131D&detailType=0&v=)
|
||||
|
||||
Můžete si také stáhnout [vývojovou verzi](https://wulkanowy.github.io/#download), která zahrnuje nové funkce připravované pro příští vydání
|
||||
|
||||
## Postaveno s pomocí
|
||||
|
||||
|
||||
* [Wulkanowy SDK](https://github.com/wulkanowy/sdk)
|
||||
* [Kotlin Coroutines](https://kotlinlang.org/docs/reference/coroutines-overview.html)
|
||||
* [Hilt](https://dagger.dev/hilt/)
|
||||
* [Room](https://developer.android.com/topic/libraries/architecture/room)
|
||||
* [WorkManager](https://developer.android.com/topic/libraries/architecture/workmanager)
|
||||
|
||||
## Spolupráce
|
||||
|
||||
Přispějte do projektu vytvořením PR nebo odesláním issue na GitHub.
|
||||
|
||||
Pro zájemce o překlad aplikace do různých jazyků poskytujeme Crowdin:
|
||||
https://crowdin.com/project/wulkanowy2
|
||||
|
||||
## Licence
|
||||
|
||||
Tento projekt je licencován pod licencí Apache License 2.0 - podrobnosti v souboru [LICENSE](LICENSE)
|
||||
|
90
README.de.md
90
README.de.md
@ -1,33 +1,73 @@
|
||||
[Česká verze](README.cs.md) / Deutsche Version / [English version](README.en.md) / [Polska wersja](README.md) / [Slovenská verzia](README.sk.md)
|
||||
|
||||
# Wulkanowy MOD
|
||||
# Wulkanowy
|
||||
|
||||
## Funktionen:
|
||||
* Noten ausblenden
|
||||
* Individuelle Anwesenheitslisten ausblenden.
|
||||
* Kommentare ausblenden.
|
||||
* Anwesenheit fälschen %
|
||||
[](https://github.com/wulkanowy/wulkanowy/actions)
|
||||
[](https://codecov.io/gh/wulkanowy/wulkanowy)
|
||||
[](https://discord.gg/vccAQBr)
|
||||
[](https://f-droid.org/packages/io.github.wulkanowy/)
|
||||
[](https://github.com/wulkanowy/wulkanowy/releases)
|
||||
[](https://translate.wulkanowy.net.pl)
|
||||
|
||||
So gelangen Sie zum ausgeblendeten Bereich:
|
||||
1. Gehen Sie zur Registerkarte „Mehr“.
|
||||
2. Gehen Sie zum Bereich „Einstellungen“.
|
||||
3. Gehen Sie zum Bereich „Über die Anwendung“.
|
||||
4. Klicken Sie fünfmal auf das Anwendungslogo
|
||||
5. Gehen Sie zum Startbildschirm
|
||||
6. Gehen Sie zu den Einstellungen
|
||||
7. Geben Sie „Geheime Einstellungen“ ein
|
||||
|
||||
# Installation
|
||||
Inoffizieller Android VULCAN UONET+ Registrierungsclient für Schüler und ihre Eltern
|
||||
|
||||
| Dateiname | Angepasst an |
|
||||
| ---------------- | ----------------- |
|
||||
| `*-fdroid-*.apk` | F-Droid |
|
||||
| `*-hms-*.apk` | Huawei AppGallery |
|
||||
| `*-play-*.apk` | Play Store |
|
||||
## Merkmale
|
||||
|
||||
Laden Sie die ausgewählte Version von [hier](https://git.sador.me/sadorowo/wulkanowy-mod/releases) herunter.
|
||||
Wir empfehlen, die neueste verfügbare Version herunterzuladen.
|
||||
* Einloggen mit E-Mail und Passwort
|
||||
* Funktionen von der Registerwebsite:
|
||||
* Noten
|
||||
* Notenstatistik
|
||||
* Anwesenheit
|
||||
* Prozentsatz der Anwesenheit
|
||||
* Prüfungen
|
||||
* Stundenplan
|
||||
* abgeschlossene Unterrichtsstunden
|
||||
* Nachrichten
|
||||
* Hausaufgaben
|
||||
* Anmerkungen
|
||||
* Glückszahl
|
||||
* Zusätzliche Lektionen
|
||||
* Schulkonferenzen
|
||||
* Schüler- und Schulinformationen
|
||||
* Berechnung des Durchschnitts unabhängig von den Präferenzen der Schule
|
||||
* Benachrichtigungen, z. B. über eine neue Note
|
||||
* Unterstützung für mehrere Konten mit der Möglichkeit, den Namen des Schülers zu ändern
|
||||
* dunkles und schwarzes (AMOLED) Thema
|
||||
* Offline-Modus
|
||||
* optionale Werbungen, die es uns ermöglichen das Projekt zu unterstützen
|
||||
|
||||
# Über das Wulkanowy-Projekt
|
||||
## Herunterladen
|
||||
|
||||
Möchten Sie mehr über das Wulkanowy-Projekt lesen? [Hier klicken](https://github.com/wulkanowy/wulkanowy)
|
||||
Die aktuelle Version können Sie von der Google Play, F-Droid oder Huawei AppGallery store herunterladen
|
||||
|
||||
[<img src="https://play.google.com/intl/en_us/badges/images/generic/en_badge_web_generic.png"
|
||||
alt="Get it on Google Play"
|
||||
height="80">](https://play.google.com/store/apps/details?id=io.github.wulkanowy)
|
||||
[<img src="https://fdroid.gitlab.io/artwork/badge/get-it-on.png"
|
||||
alt="Get it on F-Droid"
|
||||
height="80">](https://f-droid.org/packages/io.github.wulkanowy/)
|
||||
[<img src="appgallery_badge.png"
|
||||
alt="Explore it on AppGallery"
|
||||
height="80">](https://appgallery.cloud.huawei.com/ag/n/app/C101440411?channelId=Badge&id=1b3f7fbb700849a9be0dba6b520b2282&s=EB1D3BF9ED9D1564D869B7B94B18016D3CABFCA5AEFB8E29F675FA04E0DC131D&detailType=0&v=)
|
||||
|
||||
Sie können auch eine [Entwicklungsversion herunterladen](https://wulkanowy.github.io/#download) die beinhaltet neue Funktionen, die für die nächste Version vorbereitet werden
|
||||
|
||||
## Gebaut mit
|
||||
|
||||
|
||||
* [Wulkanowy SDK](https://github.com/wulkanowy/sdk)
|
||||
* [Kotlin Coroutines](https://kotlinlang.org/docs/reference/coroutines-overview.html)
|
||||
* [Hilt](https://dagger.dev/hilt/)
|
||||
* [Room](https://developer.android.com/topic/libraries/architecture/room)
|
||||
* [WorkManager](https://developer.android.com/topic/libraries/architecture/workmanager)
|
||||
|
||||
## Beitragen
|
||||
|
||||
Bitte tragen Sie zum Projekt bei, indem Sie entweder eine PR erstellen oder ein Issue auf GitHub einreichen.
|
||||
|
||||
Für Personen, die daran interessiert sind, die Anwendung in verschiedene Sprachen zu übersetzen, bieten wir Crowdin
|
||||
https://crowdin.com/project/wulkanowy2
|
||||
|
||||
## Lizenz
|
||||
|
||||
Dieses Projekt ist unter der Apache License 2.0 lizenziert - siehe die [LIZENZ](LICENSE) Datei für Details
|
||||
|
90
README.en.md
90
README.en.md
@ -1,33 +1,73 @@
|
||||
[Česká verze](README.cs.md) / [Deutsche Version](README.de.md) / English version / [Polska wersja](README.md) / [Slovenská verzia](README.sk.md)
|
||||
|
||||
# Wulkanowy MOD
|
||||
# Wulkanowy
|
||||
|
||||
## Functions:
|
||||
* hide grades
|
||||
* hide individual attendance entries
|
||||
* hide comments
|
||||
* fake attendance %.
|
||||
[](https://github.com/wulkanowy/wulkanowy/actions)
|
||||
[](https://codecov.io/gh/wulkanowy/wulkanowy)
|
||||
[](https://discord.gg/vccAQBr)
|
||||
[](https://f-droid.org/packages/io.github.wulkanowy/)
|
||||
[](https://github.com/wulkanowy/wulkanowy/releases)
|
||||
[](https://translate.wulkanowy.net.pl)
|
||||
|
||||
To get to the hidden panel:
|
||||
1. Go to the "More" tab
|
||||
2. Go to the "Settings" panel
|
||||
3. Go to the "About application" panel
|
||||
4. Click on the application logo 5 times
|
||||
5. Go to the home screen
|
||||
6. Go to settings
|
||||
7. Enter "secret settings"
|
||||
|
||||
# Installation
|
||||
Unofficial android VULCAN UONET+ register client for both students and their parents
|
||||
|
||||
| File name | Adapted to |
|
||||
| ---------------- | ----------------- |
|
||||
| `*-fdroid-*.apk` | F-Droid |
|
||||
| `*-hms-*.apk` | Huawei AppGallery |
|
||||
| `*-play-*.apk` | Play Store |
|
||||
## Features
|
||||
|
||||
Download application from [releases](https://git.sador.me/sadorowo/wulkanowy-mod/releases).
|
||||
We recommend downloading the latest available version.
|
||||
* logging in using the email and password
|
||||
* functions from the register website:
|
||||
* grades
|
||||
* grade statistics
|
||||
* attendance
|
||||
* percentage of attendance
|
||||
* exams
|
||||
* timetable
|
||||
* completed lessons
|
||||
* messages
|
||||
* homework
|
||||
* notes
|
||||
* lucky number
|
||||
* additional lessons
|
||||
* school conferences
|
||||
* student and school information
|
||||
* calculation of the average independently of school's preferences
|
||||
* notifications, e.g. about a new grade
|
||||
* support for multiple accounts with the ability to rename students
|
||||
* dark and black (AMOLED) theme
|
||||
* offline mode
|
||||
* optional ads which allow to support the project
|
||||
|
||||
# About the Wulkanowy project
|
||||
## Download
|
||||
|
||||
Want to read more about the Wulkanowy project? [Click here](https://github.com/wulkanowy/wulkanowy)
|
||||
You can download the current version from the Google Play, F-Droid or Huawei AppGallery store
|
||||
|
||||
[<img src="https://play.google.com/intl/en_us/badges/images/generic/en_badge_web_generic.png"
|
||||
alt="Get it on Google Play"
|
||||
height="80">](https://play.google.com/store/apps/details?id=io.github.wulkanowy)
|
||||
[<img src="https://fdroid.gitlab.io/artwork/badge/get-it-on.png"
|
||||
alt="Get it on F-Droid"
|
||||
height="80">](https://f-droid.org/packages/io.github.wulkanowy/)
|
||||
[<img src="appgallery_badge.png"
|
||||
alt="Explore it on AppGallery"
|
||||
height="80">](https://appgallery.cloud.huawei.com/ag/n/app/C101440411?channelId=Badge&id=1b3f7fbb700849a9be0dba6b520b2282&s=EB1D3BF9ED9D1564D869B7B94B18016D3CABFCA5AEFB8E29F675FA04E0DC131D&detailType=0&v=)
|
||||
|
||||
You can also download a [development version](https://wulkanowy.github.io/#download) that includes new features being prepared for the next release
|
||||
|
||||
## Built With
|
||||
|
||||
|
||||
* [Wulkanowy SDK](https://github.com/wulkanowy/sdk)
|
||||
* [Kotlin Coroutines](https://kotlinlang.org/docs/reference/coroutines-overview.html)
|
||||
* [Hilt](https://dagger.dev/hilt/)
|
||||
* [Room](https://developer.android.com/topic/libraries/architecture/room)
|
||||
* [WorkManager](https://developer.android.com/topic/libraries/architecture/workmanager)
|
||||
|
||||
## Contributing
|
||||
|
||||
Please contribute to the project either by creating a PR or submitting an issue on GitHub.
|
||||
|
||||
For people interested in translating the application into different languages, we provide Crowdin
|
||||
https://crowdin.com/project/wulkanowy2
|
||||
|
||||
## License
|
||||
|
||||
This project is licensed under the Apache License 2.0 - see the [LICENSE](LICENSE) file for details
|
||||
|
91
README.md
91
README.md
@ -1,33 +1,74 @@
|
||||
[Česká verze](README.cs.md) / [Deutsche Version](README.de.md) / [English version](README.en.md) / Polska wersja / [Slovenská verzia](README.sk.md)
|
||||
|
||||
# Wulkanowy MOD
|
||||
# Wulkanowy
|
||||
|
||||
## Funkcje:
|
||||
* ukryj oceny
|
||||
* ukryj poszczególne wpisy frekwencji
|
||||
* ukryj uwagi
|
||||
* sfałszuj % frekwencji
|
||||
[](https://github.com/wulkanowy/wulkanowy/actions)
|
||||
[](https://codecov.io/gh/wulkanowy/wulkanowy)
|
||||
[](https://discord.gg/vccAQBr)
|
||||
[](https://f-droid.org/packages/io.github.wulkanowy/)
|
||||
[](https://github.com/wulkanowy/wulkanowy/releases)
|
||||
[](https://translate.wulkanowy.net.pl)
|
||||
|
||||
Aby dostać się do ukrytego panelu:
|
||||
1. Przejdź do karty "Więcej"
|
||||
2. Przejdź do panelu "Ustawienia"
|
||||
3. Przejdź do panelu "O aplikacji"
|
||||
4. Kliknij 5 razy w logo aplikacji
|
||||
5. Przejdź na ekran główny
|
||||
6. Wejdź w ustawienia
|
||||
7. Wejdź w "sekretne ustawienia"
|
||||
|
||||
# Instalacja
|
||||
Nieoficjalny klient dziennika VULCAN UONET+ dla ucznia i rodzica
|
||||
|
||||
| Nazwa pliku | Przystosowana do |
|
||||
| ---------------- | ----------------- |
|
||||
| `*-fdroid-*.apk` | F-Droid |
|
||||
| `*-hms-*.apk` | Huawei AppGallery |
|
||||
| `*-play-*.apk` | Sklep Play |
|
||||
## Funkcje
|
||||
|
||||
Pobierz wybraną wersję z [wydań](https://git.sador.me/sadorowo/wulkanowy-mod/releases).
|
||||
Zalecamy pobranie najnowszej dostępnej wersji.
|
||||
* logowanie za pomocą e-maila i hasła
|
||||
* funkcje ze strony internetowej dziennika:
|
||||
* oceny
|
||||
* statystyki ocen
|
||||
* frekwencja
|
||||
* procent frekwencji
|
||||
* sprawdziany
|
||||
* plan lekcji
|
||||
* lekcje zrealizowane
|
||||
* wiadomości
|
||||
* zadania domowe
|
||||
* uwagi
|
||||
* szczęśliwy numerek
|
||||
* dodatkowe lekcje
|
||||
* zebrania w szkole
|
||||
* informacje o uczniu i szkole
|
||||
* obliczanie średniej niezależnie od preferencji szkoły
|
||||
* powiadomienia np. o nowej ocenie
|
||||
* obsługa wielu kont wraz z możliwością zmiany nazwy ucznia
|
||||
* ciemny i czarny (AMOLED) motyw
|
||||
* tryb offline
|
||||
* opcjonalne reklamy umożliwiające wsparcie projektu
|
||||
|
||||
# O projekcie Wulkanowy
|
||||
## Pobierz
|
||||
|
||||
Chcesz poczytać więcej o projekcie Wulkanowy? [Kliknij tutaj](https://github.com/wulkanowy/wulkanowy)
|
||||
Aktualną wersję możesz pobrać ze sklepu Google Play, F-Droid lub Huawei AppGallery
|
||||
|
||||
[<img src="https://play.google.com/intl/en_us/badges/images/generic/en_badge_web_generic.png"
|
||||
alt="Pobierz z Google Play"
|
||||
height="80">](https://play.google.com/store/apps/details?id=io.github.wulkanowy)
|
||||
[<img src="https://fdroid.gitlab.io/artwork/badge/get-it-on.png"
|
||||
alt="Pobierz z F-Droid"
|
||||
height="80">](https://f-droid.org/packages/io.github.wulkanowy/)
|
||||
[<img src="appgallery_badge.png"
|
||||
alt="Odkrywaj w AppGallery"
|
||||
height="80">](https://appgallery.cloud.huawei.com/ag/n/app/C101440411?channelId=Badge&id=1b3f7fbb700849a9be0dba6b520b2282&s=EB1D3BF9ED9D1564D869B7B94B18016D3CABFCA5AEFB8E29F675FA04E0DC131D&detailType=0&v=)
|
||||
|
||||
|
||||
Możesz także pobrać [wersję rozwojową](https://wulkanowy.github.io/#download), która zawiera nowe funkcje przygotowywane do następnego wydania
|
||||
|
||||
|
||||
## Zbudowana za pomocą
|
||||
|
||||
* [Wulkanowy SDK](https://github.com/wulkanowy/sdk)
|
||||
* [Kotlin Coroutines](https://kotlinlang.org/docs/reference/coroutines-overview.html)
|
||||
* [Hilt](https://dagger.dev/hilt/)
|
||||
* [Room](https://developer.android.com/topic/libraries/architecture/room)
|
||||
* [WorkManager](https://developer.android.com/topic/libraries/architecture/workmanager)
|
||||
|
||||
## Współpraca
|
||||
|
||||
Wnieś swój wkład w projekt, tworząc PR lub wysyłając issue na GitHub.
|
||||
|
||||
Dla osób zainteresowanych tłumaczeniem aplikacji na różne języki udostępniamy Crowdina
|
||||
https://crowdin.com/project/wulkanowy2
|
||||
|
||||
## Licencja
|
||||
|
||||
Ten projekt udostępniany jest na licencji Apache License 2.0 - szczegóły w pliku [LICENSE](LICENSE)
|
||||
|
90
README.sk.md
90
README.sk.md
@ -1,33 +1,73 @@
|
||||
[Česká verze](README.cs.md) / [Deutsche Version](README.de.md) / [English version](README.en.md) / [Polska wersja](README.md) / Slovenská verzia
|
||||
|
||||
# Wulkanowy MOD
|
||||
# Wulkanowy
|
||||
|
||||
## Funkcie:
|
||||
* skryť známky
|
||||
* Skryť individuálne záznamy o dochádzke.
|
||||
* Skryť komentáre.
|
||||
* falošná dochádzka %
|
||||
[](https://github.com/wulkanowy/wulkanowy/actions)
|
||||
[](https://codecov.io/gh/wulkanowy/wulkanowy)
|
||||
[](https://discord.gg/vccAQBr)
|
||||
[](https://f-droid.org/packages/io.github.wulkanowy/)
|
||||
[](https://github.com/wulkanowy/wulkanowy/releases)
|
||||
[](https://translate.wulkanowy.net.pl)
|
||||
|
||||
Ak chcete prejsť na skrytý panel:
|
||||
1. Prejdite na kartu „Viac“.
|
||||
2. Prejdite na panel „Nastavenia“.
|
||||
3. Prejdite na panel „O aplikácii“.
|
||||
4. Kliknite 5-krát na logo aplikácie
|
||||
5. Prejdite na domovskú obrazovku
|
||||
6. Prejdite do nastavení
|
||||
7. Zadajte „tajné nastavenia“
|
||||
|
||||
# Inštalácia
|
||||
Neoficiálny klient denníka VULCAN UONET+ pre žiaka a rodičov
|
||||
|
||||
| Názov súboru | Prispôsobené |
|
||||
| ---------------- | ----------------- |
|
||||
| `*-fdroid-*.apk` | F-Droid |
|
||||
| `*-hms-*.apk` | Huawei AppGallery |
|
||||
| `*-play-*.apk` | Play Store |
|
||||
## Funkcie
|
||||
|
||||
Stiahnite si vybranú verziu z [releases](https://git.sador.me/sadorowo/wulkanowy-mod/releases).
|
||||
Odporúčame stiahnuť najnovšiu dostupnú verziu.
|
||||
* prihlásenie pomocou emailu a hesla
|
||||
* funkcie z webovej stránky denníka:
|
||||
* známky
|
||||
* štatistiky známok
|
||||
* frekvencia
|
||||
* percento frekvencie
|
||||
* skúšky
|
||||
* plán lekcie
|
||||
* dokončené lekcie
|
||||
* správy
|
||||
* domáce úlohy
|
||||
* poznámky
|
||||
* šťastné číslo
|
||||
* ďalšie lekcie
|
||||
* školské stretnutie
|
||||
* informácie o žiakovi a škole
|
||||
* výpočet priemeru nezávisle od preferencií školy
|
||||
* upozornenia, napr. o nových známkach
|
||||
* podpora viacerých účtov s možnosťou premenovania žiakov
|
||||
* tmavý a čierny (AMOLED) motív
|
||||
* offline režim
|
||||
* voliteľné reklamy na podporu projektu
|
||||
|
||||
# O projekte Wulkanowy
|
||||
## Stiahnuť
|
||||
|
||||
Chcete si prečítať viac o projekte Wulkanowy? [Kliknite sem](https://github.com/wulkanowy/wulkanowy)
|
||||
Aktuálnu verziu si môžete stiahnuť z Google Play, F-Droid alebo Huawei AppGallery
|
||||
|
||||
[<img src="https://play.google.com/intl/sk/badges/images/generic/sk_badge_web_generic.png"
|
||||
alt="Nyní na Google Play"
|
||||
height="80">](https://play.google.com/store/apps/details?id=io.github.wulkanowy)
|
||||
[<img src="https://fdroid.gitlab.io/artwork/badge/get-it-on.png"
|
||||
alt="Stiahnuť s F-Droid"
|
||||
height="80">](https://f-droid.org/packages/io.github.wulkanowy/)
|
||||
[<img src="https://i.imgur.com/sX8UyAw.png"
|
||||
alt="Objavíte v AppGallery"
|
||||
height="80">](https://appgallery.cloud.huawei.com/ag/n/app/C101440411?channelId=Badge&id=1b3f7fbb700849a9be0dba6b520b2282&s=EB1D3BF9ED9D1564D869B7B94B18016D3CABFCA5AEFB8E29F675FA04E0DC131D&detailType=0&v=)
|
||||
|
||||
Môžete si tiež stiahnuť [vývojovú verziu](https://wulkanowy.github.io/#download), ktorá zahrňuje nové funkcie pripravované pre budúce vydanie
|
||||
|
||||
## Postavené s pomocou
|
||||
|
||||
|
||||
* [Wulkanowy SDK](https://github.com/wulkanowy/sdk)
|
||||
* [Kotlin Coroutines](https://kotlinlang.org/docs/reference/coroutines-overview.html)
|
||||
* [Hilt](https://dagger.dev/hilt/)
|
||||
* [Room](https://developer.android.com/topic/libraries/architecture/room)
|
||||
* [WorkManager](https://developer.android.com/topic/libraries/architecture/workmanager)
|
||||
|
||||
## Spolupráca
|
||||
|
||||
Prispejte do projektu vytvorením PR alebo odoslaním issue na GitHub.
|
||||
|
||||
Pre záujemcov o preklad aplikácie do rôznych jazykov poskytujeme Crowdin:
|
||||
https://crowdin.com/project/wulkanowy2
|
||||
|
||||
## Licencia
|
||||
|
||||
Tento projekt je licencovaný pod licenciou Apache License 2.0 - podrobnosti v súbore [LICENSE](LICENSE)
|
||||
|
@ -27,8 +27,8 @@ android {
|
||||
testApplicationId "io.github.tests.wulkanowy"
|
||||
minSdkVersion 21
|
||||
targetSdkVersion 34
|
||||
versionCode 173
|
||||
versionName "2.6.13"
|
||||
versionCode 177
|
||||
versionName "2.7.0"
|
||||
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
||||
|
||||
resValue "string", "app_name", "Wulkanowy"
|
||||
@ -62,8 +62,8 @@ android {
|
||||
release {
|
||||
minifyEnabled true
|
||||
shrinkResources true
|
||||
// proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
|
||||
// signingConfig signingConfigs.release
|
||||
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
|
||||
signingConfig signingConfigs.release
|
||||
buildConfigField "String", "MESSAGES_BASE_URL", "\"https://messages.wulkanowy.net.pl\""
|
||||
buildConfigField "String", "SCHOOLS_BASE_URL", '"https://schools.wulkanowy.net.pl"'
|
||||
}
|
||||
@ -160,7 +160,7 @@ play {
|
||||
defaultToAppBundles = false
|
||||
track = 'production'
|
||||
releaseStatus = ReleaseStatus.IN_PROGRESS
|
||||
userFraction = 0.1d
|
||||
userFraction = 0.99d
|
||||
updatePriority = 2
|
||||
enabled.set(false)
|
||||
}
|
||||
@ -186,12 +186,12 @@ ext {
|
||||
android_hilt = "1.2.0"
|
||||
room = "2.6.1"
|
||||
chucker = "4.0.0"
|
||||
mockk = "1.13.10"
|
||||
mockk = "1.13.11"
|
||||
coroutines = "1.8.1"
|
||||
}
|
||||
|
||||
dependencies {
|
||||
implementation 'io.github.wulkanowy:sdk:2.6.11'
|
||||
implementation 'io.github.wulkanowy:sdk:2.7.0'
|
||||
|
||||
coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:2.0.4'
|
||||
|
||||
@ -203,13 +203,13 @@ dependencies {
|
||||
implementation 'androidx.core:core-splashscreen:1.0.1'
|
||||
implementation "androidx.activity:activity-ktx:1.9.0"
|
||||
implementation "androidx.appcompat:appcompat:1.6.1"
|
||||
implementation "androidx.fragment:fragment-ktx:1.7.0"
|
||||
implementation "androidx.annotation:annotation:1.7.1"
|
||||
implementation "androidx.fragment:fragment-ktx:1.7.1"
|
||||
implementation "androidx.annotation:annotation:1.8.0"
|
||||
implementation "androidx.javascriptengine:javascriptengine:1.0.0-beta01"
|
||||
|
||||
implementation "androidx.preference:preference-ktx:1.2.1"
|
||||
implementation "androidx.recyclerview:recyclerview:1.3.2"
|
||||
implementation "androidx.viewpager2:viewpager2:1.1.0-rc01"
|
||||
implementation "androidx.viewpager2:viewpager2:1.1.0"
|
||||
implementation "androidx.swiperefreshlayout:swiperefreshlayout:1.1.0"
|
||||
implementation "androidx.constraintlayout:constraintlayout:2.1.4"
|
||||
implementation "androidx.coordinatorlayout:coordinatorlayout:1.2.0"
|
||||
@ -221,7 +221,7 @@ dependencies {
|
||||
implementation "androidx.work:work-runtime:$work_manager"
|
||||
playImplementation "androidx.work:work-gcm:$work_manager"
|
||||
|
||||
implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.7.0"
|
||||
implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.8.0"
|
||||
|
||||
implementation "androidx.room:room-runtime:$room"
|
||||
implementation "androidx.room:room-ktx:$room"
|
||||
@ -276,7 +276,7 @@ dependencies {
|
||||
testImplementation "org.jetbrains.kotlinx:kotlinx-coroutines-test:$coroutines"
|
||||
testImplementation "org.jetbrains.kotlin:kotlin-test:$kotlin_version"
|
||||
|
||||
testImplementation 'org.robolectric:robolectric:4.12.1'
|
||||
testImplementation 'org.robolectric:robolectric:4.12.2'
|
||||
testImplementation "androidx.test:runner:1.5.2"
|
||||
testImplementation "androidx.test.ext:junit:1.1.5"
|
||||
testImplementation "androidx.test:core:1.5.0"
|
||||
|
@ -1,5 +1,6 @@
|
||||
package io.github.wulkanowy.data
|
||||
|
||||
import io.github.wulkanowy.data.repositories.isEndDateReached
|
||||
import kotlinx.coroutines.ExperimentalCoroutinesApi
|
||||
import kotlinx.coroutines.FlowPreview
|
||||
import kotlinx.coroutines.flow.Flow
|
||||
@ -267,7 +268,8 @@ inline fun <DatabaseType, ApiType, OutputType> networkBoundResource(
|
||||
emit(Resource.Loading())
|
||||
|
||||
val data = query().first()
|
||||
if (shouldFetch(data)) {
|
||||
val updatedShouldFetch = if (isEndDateReached) false else shouldFetch(data)
|
||||
if (updatedShouldFetch) {
|
||||
emit(Resource.Intermediate(data))
|
||||
|
||||
try {
|
||||
|
@ -36,7 +36,9 @@ class WulkanowySdkFactory @Inject constructor(
|
||||
private val migrationFailedStudentIds = mutableSetOf<Long>()
|
||||
private val sandbox: ListenableFuture<JavaScriptSandbox>? =
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O && JavaScriptSandbox.isSupported())
|
||||
JavaScriptSandbox.createConnectedInstanceAsync(context)
|
||||
runCatching { JavaScriptSandbox.createConnectedInstanceAsync(context) }
|
||||
.onFailure { Timber.e(it) }
|
||||
.getOrNull()
|
||||
else null
|
||||
|
||||
private val sdk = Sdk().apply {
|
||||
@ -60,6 +62,7 @@ class WulkanowySdkFactory @Inject constructor(
|
||||
endpointsMapping = mapping.endpoints
|
||||
vTokenMapping = mapping.vTokens
|
||||
vHeaders = mapping.vHeaders
|
||||
responseMapping = mapping.responseMap
|
||||
vParamsEvaluation = createIsolate()
|
||||
}
|
||||
}
|
||||
|
@ -17,4 +17,7 @@ data class Mapping(
|
||||
|
||||
@SerialName("vHeaders")
|
||||
val vHeaders: Map<String, Map<String, Map<String, String>>> = emptyMap(),
|
||||
|
||||
@SerialName("responseMap")
|
||||
val responseMap: Map<String, Map<String, Map<String, Map<String, String>>>> = emptyMap(),
|
||||
)
|
||||
|
@ -11,6 +11,6 @@ interface WulkanowyService {
|
||||
@GET("/v1.json")
|
||||
suspend fun getAdminMessages(): List<AdminMessage>
|
||||
|
||||
@GET("/mapping2.json")
|
||||
@GET("/mapping4.json")
|
||||
suspend fun getMapping(): Mapping
|
||||
}
|
||||
|
@ -3,7 +3,6 @@ package io.github.wulkanowy.data.db.dao
|
||||
import androidx.room.Dao
|
||||
import androidx.room.Query
|
||||
import io.github.wulkanowy.data.db.entities.Attendance
|
||||
import io.github.wulkanowy.ui.modules.dashboard.DashboardItem
|
||||
import kotlinx.coroutines.flow.Flow
|
||||
import java.time.LocalDate
|
||||
import javax.inject.Singleton
|
||||
|
@ -12,8 +12,4 @@ interface GradeDao : BaseDao<Grade> {
|
||||
|
||||
@Query("SELECT * FROM Grades WHERE semester_id = :semesterId AND student_id = :studentId")
|
||||
fun loadAll(semesterId: Int, studentId: Int): Flow<List<Grade>>
|
||||
|
||||
@Query("SELECT * FROM Grades WHERE semester_id = :semesterId AND student_id = :studentId " +
|
||||
"AND entry NOT IN(:censoredEntries)")
|
||||
fun loadAllCensored(semesterId: Int, studentId: Int, censoredEntries: Array<String>): Flow<List<Grade>>
|
||||
}
|
||||
|
@ -9,6 +9,7 @@ import javax.inject.Singleton
|
||||
@Singleton
|
||||
@Dao
|
||||
interface NoteDao : BaseDao<Note> {
|
||||
|
||||
@Query("SELECT * FROM Notes WHERE student_id = :studentId")
|
||||
fun loadAll(studentId: Int): Flow<List<Note>>
|
||||
}
|
||||
|
@ -7,6 +7,6 @@ enum class AppTheme(val value: String) {
|
||||
BLACK("black");
|
||||
|
||||
companion object {
|
||||
fun getByValue(value: String) = entries.find { it.value == value } ?: LIGHT
|
||||
fun getByValue(value: String) = values().find { it.value == value } ?: LIGHT
|
||||
}
|
||||
}
|
||||
}
|
@ -8,6 +8,6 @@ enum class GradeColorTheme(val value: String) : Serializable {
|
||||
GRADE_COLOR("grade_color");
|
||||
|
||||
companion object {
|
||||
fun getByValue(value: String) = entries.find { it.value == value } ?: VULCAN
|
||||
fun getByValue(value: String) = values().find { it.value == value } ?: VULCAN
|
||||
}
|
||||
}
|
||||
}
|
@ -6,6 +6,6 @@ enum class GradeExpandMode(val value: String) {
|
||||
ALWAYS_EXPANDED("always");
|
||||
|
||||
companion object {
|
||||
fun getByValue(value: String) = entries.find { it.value == value } ?: ONE
|
||||
fun getByValue(value: String) = values().find { it.value == value } ?: ONE
|
||||
}
|
||||
}
|
||||
}
|
@ -6,6 +6,6 @@ enum class GradeSortingMode(val value: String) {
|
||||
AVERAGE("average");
|
||||
|
||||
companion object {
|
||||
fun getByValue(value: String) = entries.find { it.value == value } ?: ALPHABETIC
|
||||
fun getByValue(value: String) = values().find { it.value == value } ?: ALPHABETIC
|
||||
}
|
||||
}
|
||||
|
@ -6,6 +6,6 @@ enum class TimetableMode(val value: String) {
|
||||
SMALL_OTHER_GROUP("small");
|
||||
|
||||
companion object {
|
||||
fun getByValue(value: String) = entries.find { it.value == value } ?: ONLY_CURRENT_GROUP
|
||||
fun getByValue(value: String) = values().find { it.value == value } ?: ONLY_CURRENT_GROUP
|
||||
}
|
||||
}
|
||||
}
|
@ -9,15 +9,12 @@ import io.github.wulkanowy.data.db.entities.Student
|
||||
import io.github.wulkanowy.data.mappers.mapToEntities
|
||||
import io.github.wulkanowy.data.networkBoundResource
|
||||
import io.github.wulkanowy.sdk.pojo.Absent
|
||||
import io.github.wulkanowy.sdk.pojo.Attendance as SdkAttendance
|
||||
import io.github.wulkanowy.ui.modules.dashboard.DashboardItem
|
||||
import io.github.wulkanowy.utils.AutoRefreshHelper
|
||||
import io.github.wulkanowy.utils.getRefreshKey
|
||||
import io.github.wulkanowy.utils.monday
|
||||
import io.github.wulkanowy.utils.sunday
|
||||
import io.github.wulkanowy.utils.uniqueSubtract
|
||||
import kotlinx.coroutines.flow.Flow
|
||||
import kotlinx.coroutines.flow.map
|
||||
import kotlinx.coroutines.sync.Mutex
|
||||
import java.time.LocalDate
|
||||
import java.time.LocalDateTime
|
||||
@ -31,71 +28,12 @@ class AttendanceRepository @Inject constructor(
|
||||
private val timetableDb: TimetableDao,
|
||||
private val wulkanowySdkFactory: WulkanowySdkFactory,
|
||||
private val refreshHelper: AutoRefreshHelper,
|
||||
private val preferencesRepository: PreferencesRepository
|
||||
) {
|
||||
|
||||
private val saveFetchResultMutex = Mutex()
|
||||
|
||||
private val cacheKey = "attendance"
|
||||
|
||||
private fun filterAttendance(
|
||||
hiddenAttendanceTiles: List<DashboardItem.HiddenAttendanceTile>,
|
||||
attendanceItem: Attendance
|
||||
): Boolean {
|
||||
return when {
|
||||
attendanceItem.absence && attendanceItem.excused && hiddenAttendanceTiles.contains(
|
||||
DashboardItem.HiddenAttendanceTile.EXCUSED_ABSENCE
|
||||
) -> false
|
||||
|
||||
attendanceItem.absence && !attendanceItem.excused && hiddenAttendanceTiles.contains(
|
||||
DashboardItem.HiddenAttendanceTile.UNEXCUSED_ABSENCE
|
||||
) -> false
|
||||
|
||||
attendanceItem.lateness && attendanceItem.excused && hiddenAttendanceTiles.contains(
|
||||
DashboardItem.HiddenAttendanceTile.EXCUSED_LATENESS
|
||||
) -> false
|
||||
|
||||
attendanceItem.lateness && !attendanceItem.excused && hiddenAttendanceTiles.contains(
|
||||
DashboardItem.HiddenAttendanceTile.UNEXCUSED_LATENESS
|
||||
) -> false
|
||||
|
||||
attendanceItem.exemption && hiddenAttendanceTiles.contains(DashboardItem.HiddenAttendanceTile.EXEMPTION) -> false
|
||||
attendanceItem.deleted && hiddenAttendanceTiles.contains(DashboardItem.HiddenAttendanceTile.DELETED) -> false
|
||||
attendanceItem.presence && hiddenAttendanceTiles.contains(DashboardItem.HiddenAttendanceTile.PRESENT) -> false
|
||||
|
||||
else -> !hiddenAttendanceTiles.contains(DashboardItem.HiddenAttendanceTile.UNKNOWN)
|
||||
}
|
||||
}
|
||||
|
||||
private fun filterAttendance(
|
||||
hiddenAttendanceTiles: List<DashboardItem.HiddenAttendanceTile>,
|
||||
attendanceItem: SdkAttendance
|
||||
): Boolean {
|
||||
return when {
|
||||
attendanceItem.absence && attendanceItem.excused && hiddenAttendanceTiles.contains(
|
||||
DashboardItem.HiddenAttendanceTile.EXCUSED_ABSENCE
|
||||
) -> false
|
||||
|
||||
attendanceItem.absence && !attendanceItem.excused && hiddenAttendanceTiles.contains(
|
||||
DashboardItem.HiddenAttendanceTile.UNEXCUSED_ABSENCE
|
||||
) -> false
|
||||
|
||||
attendanceItem.lateness && attendanceItem.excused && hiddenAttendanceTiles.contains(
|
||||
DashboardItem.HiddenAttendanceTile.EXCUSED_LATENESS
|
||||
) -> false
|
||||
|
||||
attendanceItem.lateness && !attendanceItem.excused && hiddenAttendanceTiles.contains(
|
||||
DashboardItem.HiddenAttendanceTile.UNEXCUSED_LATENESS
|
||||
) -> false
|
||||
|
||||
attendanceItem.exemption && hiddenAttendanceTiles.contains(DashboardItem.HiddenAttendanceTile.EXEMPTION) -> false
|
||||
attendanceItem.deleted && hiddenAttendanceTiles.contains(DashboardItem.HiddenAttendanceTile.DELETED) -> false
|
||||
attendanceItem.presence && hiddenAttendanceTiles.contains(DashboardItem.HiddenAttendanceTile.PRESENT) -> false
|
||||
|
||||
else -> !hiddenAttendanceTiles.contains(DashboardItem.HiddenAttendanceTile.UNKNOWN)
|
||||
}
|
||||
}
|
||||
|
||||
fun getAttendance(
|
||||
student: Student,
|
||||
semester: Semester,
|
||||
@ -113,24 +51,14 @@ class AttendanceRepository @Inject constructor(
|
||||
it.isEmpty() || forceRefresh || isExpired
|
||||
},
|
||||
query = {
|
||||
val hiddenAttendanceItems = preferencesRepository.hiddenAttendanceItems
|
||||
|
||||
attendanceDb
|
||||
.loadAll(semester.diaryId, semester.studentId, start.monday, end.sunday)
|
||||
.map {
|
||||
it.filter { item -> filterAttendance(hiddenAttendanceItems, item) }
|
||||
}
|
||||
attendanceDb.loadAll(semester.diaryId, semester.studentId, start.monday, end.sunday)
|
||||
},
|
||||
fetch = {
|
||||
val hiddenAttendanceItems = preferencesRepository.hiddenAttendanceItems
|
||||
|
||||
val lessons = timetableDb.load(
|
||||
semester.diaryId, semester.studentId, start.monday, end.sunday
|
||||
)
|
||||
|
||||
wulkanowySdkFactory.create(student, semester)
|
||||
.getAttendance(start.monday, end.sunday)
|
||||
.filter { item -> filterAttendance(hiddenAttendanceItems, item) }
|
||||
.mapToEntities(semester, lessons)
|
||||
},
|
||||
saveFetchResult = { old, new ->
|
||||
@ -151,13 +79,7 @@ class AttendanceRepository @Inject constructor(
|
||||
start: LocalDate,
|
||||
end: LocalDate
|
||||
): Flow<List<Attendance>> {
|
||||
val hiddenAttendanceItems = preferencesRepository.hiddenAttendanceItems
|
||||
|
||||
return attendanceDb
|
||||
.loadAll(semester.diaryId, semester.studentId, start.monday, end.sunday)
|
||||
.map {
|
||||
it.filter { item -> filterAttendance(hiddenAttendanceItems, item) }
|
||||
}
|
||||
return attendanceDb.loadAll(semester.diaryId, semester.studentId, start, end)
|
||||
}
|
||||
|
||||
suspend fun updateTimetable(timetable: List<Attendance>) {
|
||||
|
@ -19,7 +19,6 @@ import kotlinx.coroutines.flow.Flow
|
||||
import kotlinx.coroutines.flow.combine
|
||||
import kotlinx.coroutines.flow.map
|
||||
import kotlinx.coroutines.sync.Mutex
|
||||
import timber.log.Timber
|
||||
import java.time.Instant
|
||||
import javax.inject.Inject
|
||||
import javax.inject.Singleton
|
||||
@ -31,18 +30,10 @@ class GradeRepository @Inject constructor(
|
||||
private val gradeDescriptiveDb: GradeDescriptiveDao,
|
||||
private val wulkanowySdkFactory: WulkanowySdkFactory,
|
||||
private val refreshHelper: AutoRefreshHelper,
|
||||
private val preferencesRepository: PreferencesRepository
|
||||
) {
|
||||
|
||||
private val saveFetchResultMutex = Mutex()
|
||||
|
||||
private fun loadGrades(semesterId: Int, studentId: Int): Flow<List<Grade>> {
|
||||
val hiddenGrades = preferencesRepository.hiddenGrades
|
||||
|
||||
Timber.i("Load grades for semester $semesterId student $studentId")
|
||||
return gradeDb.loadAllCensored(semesterId, studentId, hiddenGrades.toTypedArray())
|
||||
}
|
||||
|
||||
fun getGrades(
|
||||
student: Student,
|
||||
semester: Semester,
|
||||
@ -70,15 +61,11 @@ class GradeRepository @Inject constructor(
|
||||
}
|
||||
},
|
||||
fetch = {
|
||||
val hiddenGrades = preferencesRepository.hiddenGrades
|
||||
|
||||
val (details, summary, descriptive) = wulkanowySdkFactory.create(student, semester)
|
||||
.getGrades(semester.semesterId)
|
||||
|
||||
val censoredDetails = details.filterNot { it.entry in hiddenGrades }
|
||||
|
||||
Triple(
|
||||
censoredDetails.mapToEntities(semester),
|
||||
details.mapToEntities(semester),
|
||||
summary.mapToEntities(semester),
|
||||
descriptive.mapToEntities(semester)
|
||||
)
|
||||
@ -170,13 +157,13 @@ class GradeRepository @Inject constructor(
|
||||
}
|
||||
|
||||
fun getUnreadGrades(semester: Semester): Flow<List<Grade>> {
|
||||
return loadGrades(semester.semesterId, semester.studentId).map {
|
||||
return gradeDb.loadAll(semester.semesterId, semester.studentId).map {
|
||||
it.filter { grade -> !grade.isRead }
|
||||
}
|
||||
}
|
||||
|
||||
fun getGradesFromDatabase(semester: Semester): Flow<List<Grade>> {
|
||||
return loadGrades(semester.semesterId, semester.studentId)
|
||||
return gradeDb.loadAll(semester.semesterId, semester.studentId)
|
||||
}
|
||||
|
||||
fun getGradesPredictedFromDatabase(semester: Semester): Flow<List<GradeSummary>> {
|
||||
|
@ -21,7 +21,6 @@ class NoteRepository @Inject constructor(
|
||||
private val noteDb: NoteDao,
|
||||
private val wulkanowySdkFactory: WulkanowySdkFactory,
|
||||
private val refreshHelper: AutoRefreshHelper,
|
||||
private val preferencesRepository: PreferencesRepository
|
||||
) {
|
||||
|
||||
private val saveFetchResultMutex = Mutex()
|
||||
@ -40,16 +39,12 @@ class NoteRepository @Inject constructor(
|
||||
val isExpired = refreshHelper.shouldBeRefreshed(
|
||||
getRefreshKey(cacheKey, semester)
|
||||
)
|
||||
|
||||
it.isEmpty() || forceRefresh || isExpired
|
||||
},
|
||||
query = { noteDb.loadAll(student.studentId) },
|
||||
fetch = {
|
||||
val showNotes = preferencesRepository.showNotes
|
||||
|
||||
wulkanowySdkFactory.create(student, semester)
|
||||
.getNotes()
|
||||
.filter { showNotes }
|
||||
.mapToEntities(semester)
|
||||
},
|
||||
saveFetchResult = { old, new ->
|
||||
|
@ -7,7 +7,6 @@ import androidx.core.content.edit
|
||||
import com.fredporciuncula.flow.preferences.FlowSharedPreferences
|
||||
import com.fredporciuncula.flow.preferences.Preference
|
||||
import com.fredporciuncula.flow.preferences.Serializer
|
||||
import com.fredporciuncula.flow.preferences.map
|
||||
import dagger.hilt.android.qualifiers.ApplicationContext
|
||||
import io.github.wulkanowy.R
|
||||
import io.github.wulkanowy.data.api.models.Mapping
|
||||
@ -26,7 +25,6 @@ import kotlinx.coroutines.flow.Flow
|
||||
import kotlinx.coroutines.flow.map
|
||||
import kotlinx.serialization.encodeToString
|
||||
import kotlinx.serialization.json.Json
|
||||
import timber.log.Timber
|
||||
import java.time.Instant
|
||||
import java.util.UUID
|
||||
import javax.inject.Inject
|
||||
@ -39,7 +37,6 @@ class PreferencesRepository @Inject constructor(
|
||||
private val flowSharedPref: FlowSharedPreferences,
|
||||
private val json: Json,
|
||||
) {
|
||||
private val NO_ATTENDANCE_VALUE = -1.0
|
||||
|
||||
val isShowPresent: Boolean
|
||||
get() = getBoolean(
|
||||
@ -305,60 +302,6 @@ class PreferencesRepository @Inject constructor(
|
||||
selectedDashboardTilesPreference.set(filteredValue)
|
||||
}
|
||||
|
||||
var attendancePercentage: Double?
|
||||
get() = attendancePercentagePreference.get().takeIf { it != NO_ATTENDANCE_VALUE }
|
||||
set(value) = attendancePercentagePreference.set(value ?: NO_ATTENDANCE_VALUE)
|
||||
|
||||
var hiddenAttendanceItems: List<DashboardItem.HiddenAttendanceTile>
|
||||
get() = hiddenAttendanceItemsPreference.get().toList()
|
||||
set(value) = hiddenAttendanceItemsPreference.set(value.toSet())
|
||||
|
||||
var hiddenGrades: List<String>
|
||||
get() = hiddenGradesPreference.get().toList()
|
||||
set(value) = hiddenGradesPreference.set(value.toSet())
|
||||
|
||||
var showNotes: Boolean
|
||||
get() = showNotesPreference.get()
|
||||
set(value) = showNotesPreference.set(value)
|
||||
|
||||
var developerMode: Boolean
|
||||
get() = developerModePreference.get()
|
||||
set(value) = developerModePreference.set(value)
|
||||
|
||||
private val developerModePreference: Preference<Boolean>
|
||||
get() = flowSharedPref.getBoolean(
|
||||
context.getString(R.string.pref_key_developer_mode),
|
||||
context.resources.getBoolean(R.bool.pref_default_developer_mode)
|
||||
)
|
||||
|
||||
private val hiddenGradesPreference: Preference<Set<String>>
|
||||
get() {
|
||||
val defaultSet = context.resources.getStringArray(R.array.pref_default_hidden_grades).toSet()
|
||||
val prefKey = "hidden_grades"
|
||||
|
||||
return flowSharedPref.getStringSet(prefKey, defaultSet)
|
||||
}
|
||||
|
||||
private val showNotesPreference: Preference<Boolean>
|
||||
get() = flowSharedPref.getBoolean(
|
||||
context.getString(R.string.pref_key_show_notes),
|
||||
context.resources.getBoolean(R.bool.pref_default_show_notes)
|
||||
)
|
||||
|
||||
private val hiddenAttendanceItemsPreference: Preference<Set<DashboardItem.HiddenAttendanceTile>>
|
||||
get() {
|
||||
val defaultSet =
|
||||
context.resources.getStringArray(R.array.pref_default_hidden_attendance_items).toSet()
|
||||
val prefKey = "attendance_items"
|
||||
|
||||
return flowSharedPref
|
||||
.getStringSet(prefKey, defaultSet)
|
||||
.map(
|
||||
mapper = { it -> it.map { DashboardItem.HiddenAttendanceTile.valueOf(it) }.toSet() },
|
||||
reverse = { it -> it.map { it.name }.toSet() }
|
||||
)
|
||||
}
|
||||
|
||||
private val selectedDashboardTilesPreference: Preference<Set<String>>
|
||||
get() {
|
||||
val defaultSet =
|
||||
@ -368,19 +311,6 @@ class PreferencesRepository @Inject constructor(
|
||||
return flowSharedPref.getStringSet(prefKey, defaultSet)
|
||||
}
|
||||
|
||||
private val attendancePercentagePreference: Preference<Double>
|
||||
get() {
|
||||
val prefKey = context.getString(R.string.pref_key_attendance_percentage)
|
||||
val defaultValue = context.resources.getString(R.string.pref_default_attendance_percentage)
|
||||
|
||||
return flowSharedPref
|
||||
.getString(prefKey, defaultValue)
|
||||
.map(
|
||||
mapper = { it.toDoubleOrNull() ?: NO_ATTENDANCE_VALUE },
|
||||
reverse = { it.toString() }
|
||||
)
|
||||
}
|
||||
|
||||
var dismissedAdminMessageIds: List<Int>
|
||||
get() = sharedPref.getStringSet(PREF_KEY_ADMIN_DISMISSED_MESSAGE_IDS, emptySet())
|
||||
.orEmpty()
|
||||
|
@ -12,9 +12,13 @@ import kotlinx.coroutines.flow.Flow
|
||||
import kotlinx.coroutines.flow.filterNot
|
||||
import kotlinx.coroutines.sync.Mutex
|
||||
import timber.log.Timber
|
||||
import java.time.LocalDate
|
||||
import javax.inject.Inject
|
||||
import javax.inject.Singleton
|
||||
|
||||
private val endDate = LocalDate.of(2024, 6, 25)
|
||||
val isEndDateReached = LocalDate.now() >= endDate
|
||||
|
||||
@Singleton
|
||||
class WulkanowyRepository @Inject constructor(
|
||||
private val wulkanowyService: WulkanowyService,
|
||||
@ -24,7 +28,6 @@ class WulkanowyRepository @Inject constructor(
|
||||
) {
|
||||
|
||||
private val saveFetchResultMutex = Mutex()
|
||||
|
||||
private val cacheKey = "mapping_refresh_key"
|
||||
|
||||
fun getAdminMessages(): Flow<Resource<List<AdminMessage>>> =
|
||||
|
@ -4,19 +4,27 @@ import android.os.Build.VERSION.SDK_INT
|
||||
import android.os.Build.VERSION_CODES.O
|
||||
import androidx.core.app.NotificationManagerCompat
|
||||
import androidx.lifecycle.asFlow
|
||||
import androidx.work.*
|
||||
import androidx.work.BackoffPolicy.EXPONENTIAL
|
||||
import androidx.work.Constraints
|
||||
import androidx.work.Data
|
||||
import androidx.work.ExistingPeriodicWorkPolicy.KEEP
|
||||
import androidx.work.ExistingPeriodicWorkPolicy.UPDATE
|
||||
import androidx.work.ExistingWorkPolicy
|
||||
import androidx.work.NetworkType.CONNECTED
|
||||
import androidx.work.NetworkType.UNMETERED
|
||||
import androidx.work.OneTimeWorkRequestBuilder
|
||||
import androidx.work.PeriodicWorkRequestBuilder
|
||||
import androidx.work.WorkInfo
|
||||
import androidx.work.WorkManager
|
||||
import io.github.wulkanowy.data.db.SharedPrefProvider
|
||||
import io.github.wulkanowy.data.db.SharedPrefProvider.Companion.APP_VERSION_CODE_KEY
|
||||
import io.github.wulkanowy.data.repositories.PreferencesRepository
|
||||
import io.github.wulkanowy.data.repositories.isEndDateReached
|
||||
import io.github.wulkanowy.services.sync.channels.Channel
|
||||
import io.github.wulkanowy.utils.AppInfo
|
||||
import io.github.wulkanowy.utils.isHolidays
|
||||
import kotlinx.coroutines.flow.Flow
|
||||
import kotlinx.coroutines.flow.flowOf
|
||||
import timber.log.Timber
|
||||
import java.time.LocalDate.now
|
||||
import java.util.concurrent.TimeUnit.MINUTES
|
||||
@ -34,7 +42,9 @@ class SyncManager @Inject constructor(
|
||||
) {
|
||||
|
||||
init {
|
||||
if (now().isHolidays) stopSyncWorker()
|
||||
if (now().isHolidays || isEndDateReached) {
|
||||
stopSyncWorker()
|
||||
}
|
||||
|
||||
if (SDK_INT >= O) {
|
||||
channels.forEach { it.create() }
|
||||
@ -50,7 +60,7 @@ class SyncManager @Inject constructor(
|
||||
}
|
||||
|
||||
fun startPeriodicSyncWorker(restart: Boolean = false) {
|
||||
if (preferencesRepository.isServiceEnabled && !now().isHolidays) {
|
||||
if (preferencesRepository.isServiceEnabled && !now().isHolidays && isEndDateReached) {
|
||||
val serviceInterval = preferencesRepository.servicesInterval
|
||||
|
||||
workManager.enqueueUniquePeriodicWork(
|
||||
@ -70,6 +80,10 @@ class SyncManager @Inject constructor(
|
||||
|
||||
// if quiet, no notifications will be sent
|
||||
fun startOneTimeSyncWorker(quiet: Boolean = false): Flow<WorkInfo?> {
|
||||
if (isEndDateReached) {
|
||||
return flowOf(null)
|
||||
}
|
||||
|
||||
val work = OneTimeWorkRequestBuilder<SyncWorker>()
|
||||
.setInputData(
|
||||
Data.Builder()
|
||||
|
@ -15,6 +15,7 @@ import io.github.wulkanowy.R
|
||||
import io.github.wulkanowy.data.repositories.PreferencesRepository
|
||||
import io.github.wulkanowy.data.repositories.SemesterRepository
|
||||
import io.github.wulkanowy.data.repositories.StudentRepository
|
||||
import io.github.wulkanowy.data.repositories.isEndDateReached
|
||||
import io.github.wulkanowy.sdk.exception.FeatureNotAvailableException
|
||||
import io.github.wulkanowy.sdk.scrapper.exception.FeatureDisabledException
|
||||
import io.github.wulkanowy.sdk.scrapper.exception.FeatureUnavailableException
|
||||
@ -42,7 +43,9 @@ class SyncWorker @AssistedInject constructor(
|
||||
override suspend fun doWork(): Result = withContext(dispatchersProvider.io) {
|
||||
Timber.i("SyncWorker is starting")
|
||||
|
||||
if (!studentRepository.isCurrentStudentSet()) return@withContext Result.failure()
|
||||
if (!studentRepository.isCurrentStudentSet() || isEndDateReached) {
|
||||
return@withContext Result.failure()
|
||||
}
|
||||
|
||||
val (student, semester) = try {
|
||||
val student = studentRepository.getCurrentStudent()
|
||||
@ -91,6 +94,7 @@ class SyncWorker @AssistedInject constructor(
|
||||
.build()
|
||||
)
|
||||
}
|
||||
|
||||
errors.isNotEmpty() -> Result.retry()
|
||||
else -> {
|
||||
preferencesRepository.lasSyncDate = Instant.now()
|
||||
|
@ -19,18 +19,16 @@ class NewGradeNotification @Inject constructor(
|
||||
) {
|
||||
|
||||
suspend fun notifyDetails(items: List<Grade>, student: Student) {
|
||||
val notificationDataList = items
|
||||
.filter { !it.isNotified }
|
||||
.map {
|
||||
NotificationData(
|
||||
title = context.getPlural(R.plurals.grade_new_items, 1),
|
||||
content = buildString {
|
||||
append("${it.subject}: ${it.entry}")
|
||||
if (it.comment.isNotBlank()) append(" (${it.comment})")
|
||||
},
|
||||
destination = Destination.Grade,
|
||||
)
|
||||
}
|
||||
val notificationDataList = items.map {
|
||||
NotificationData(
|
||||
title = context.getPlural(R.plurals.grade_new_items, 1),
|
||||
content = buildString {
|
||||
append("${it.subject}: ${it.entry}")
|
||||
if (it.comment.isNotBlank()) append(" (${it.comment})")
|
||||
},
|
||||
destination = Destination.Grade,
|
||||
)
|
||||
}
|
||||
|
||||
val groupNotificationData = GroupNotificationData(
|
||||
notificationDataList = notificationDataList,
|
||||
|
@ -3,19 +3,14 @@ package io.github.wulkanowy.ui.modules.about
|
||||
import android.graphics.drawable.Drawable
|
||||
import android.view.LayoutInflater
|
||||
import android.view.ViewGroup
|
||||
import android.widget.Toast
|
||||
import androidx.core.content.res.ResourcesCompat
|
||||
import androidx.recyclerview.widget.RecyclerView
|
||||
import io.github.wulkanowy.data.repositories.PreferencesRepository
|
||||
import io.github.wulkanowy.databinding.ItemAboutBinding
|
||||
import io.github.wulkanowy.databinding.ScrollableHeaderAboutBinding
|
||||
import javax.inject.Inject
|
||||
|
||||
class AboutAdapter @Inject constructor(
|
||||
private val preferencesRepository: PreferencesRepository
|
||||
) : RecyclerView.Adapter<RecyclerView.ViewHolder>() {
|
||||
class AboutAdapter @Inject constructor() : RecyclerView.Adapter<RecyclerView.ViewHolder>() {
|
||||
|
||||
private var developerModeClicks = 0
|
||||
private enum class ViewType(val id: Int) {
|
||||
ITEM_HEADER(1),
|
||||
ITEM_ELEMENT(2)
|
||||
@ -51,19 +46,6 @@ class AboutAdapter @Inject constructor(
|
||||
|
||||
private fun bindHeaderViewHolder(binding: ScrollableHeaderAboutBinding) {
|
||||
with(binding.aboutScrollableHeaderIcon) {
|
||||
setOnClickListener {
|
||||
if (++developerModeClicks == 5 && !preferencesRepository.developerMode) {
|
||||
preferencesRepository.developerMode = true
|
||||
developerModeClicks = 0
|
||||
|
||||
Toast.makeText(
|
||||
context,
|
||||
"done!",
|
||||
Toast.LENGTH_SHORT
|
||||
).show()
|
||||
}
|
||||
}
|
||||
|
||||
setImageDrawable(ResourcesCompat.getDrawableForDensity(
|
||||
context.resources, context.applicationInfo.icon, 640, null)
|
||||
)
|
||||
|
@ -5,7 +5,6 @@ import android.view.ViewGroup
|
||||
import androidx.recyclerview.widget.RecyclerView
|
||||
import io.github.wulkanowy.R
|
||||
import io.github.wulkanowy.data.db.entities.AttendanceSummary
|
||||
import io.github.wulkanowy.data.repositories.PreferencesRepository
|
||||
import io.github.wulkanowy.databinding.ItemAttendanceSummaryBinding
|
||||
import io.github.wulkanowy.databinding.ScrollableHeaderAttendanceSummaryBinding
|
||||
import io.github.wulkanowy.utils.calculatePercentage
|
||||
@ -14,13 +13,9 @@ import java.time.Month
|
||||
import java.util.Locale
|
||||
import javax.inject.Inject
|
||||
|
||||
class AttendanceSummaryAdapter @Inject constructor(
|
||||
private val preferencesRepository: PreferencesRepository
|
||||
) :
|
||||
class AttendanceSummaryAdapter @Inject constructor() :
|
||||
RecyclerView.Adapter<RecyclerView.ViewHolder>() {
|
||||
|
||||
private val attendancePercentage = preferencesRepository.attendancePercentage
|
||||
|
||||
private enum class ViewType(val id: Int) {
|
||||
HEADER(1),
|
||||
ITEM(2)
|
||||
@ -53,10 +48,7 @@ class AttendanceSummaryAdapter @Inject constructor(
|
||||
}
|
||||
|
||||
private fun bindHeaderViewHolder(binding: ScrollableHeaderAttendanceSummaryBinding) {
|
||||
binding.attendanceSummaryScrollableHeaderPercentage.text = formatPercentage(
|
||||
attendancePercentage ?:
|
||||
items.calculatePercentage()
|
||||
)
|
||||
binding.attendanceSummaryScrollableHeaderPercentage.text = formatPercentage(items.calculatePercentage())
|
||||
}
|
||||
|
||||
private fun bindItemViewHolder(binding: ItemAttendanceSummaryBinding, position: Int) {
|
||||
@ -68,8 +60,8 @@ class AttendanceSummaryAdapter @Inject constructor(
|
||||
else -> item.month.getFormattedName()
|
||||
}
|
||||
attendanceSummaryPercentage.text = when (position) {
|
||||
-1 -> formatPercentage(attendancePercentage ?: item.calculatePercentage())
|
||||
else -> formatPercentage(attendancePercentage ?: item.calculatePercentage())
|
||||
-1 -> formatPercentage(items.calculatePercentage())
|
||||
else -> formatPercentage(item.calculatePercentage())
|
||||
}
|
||||
|
||||
attendanceSummaryPresent.text = item.presence.toString()
|
||||
|
@ -147,17 +147,6 @@ sealed class DashboardItem(val type: Type) {
|
||||
EXAMS,
|
||||
CONFERENCES,
|
||||
}
|
||||
|
||||
enum class HiddenAttendanceTile {
|
||||
UNEXCUSED_ABSENCE,
|
||||
EXEMPTION,
|
||||
EXCUSED_LATENESS,
|
||||
UNEXCUSED_LATENESS,
|
||||
PRESENT,
|
||||
DELETED,
|
||||
EXCUSED_ABSENCE,
|
||||
UNKNOWN,
|
||||
}
|
||||
}
|
||||
|
||||
fun DashboardItem.Tile.toDashboardItemType() = when (this) {
|
||||
|
@ -303,8 +303,6 @@ class DashboardPresenter @Inject constructor(
|
||||
|
||||
private fun loadHorizontalGroup(student: Student, forceRefresh: Boolean) {
|
||||
flow {
|
||||
val attendancePercentage = preferencesRepository.attendancePercentage
|
||||
|
||||
val selectedTiles = selectedDashboardTiles
|
||||
val flowSuccess = flowOf(Resource.Success(null))
|
||||
|
||||
@ -357,7 +355,7 @@ class DashboardPresenter @Inject constructor(
|
||||
} else null
|
||||
},
|
||||
attendancePercentage = DashboardItem.HorizontalGroup.Cell(
|
||||
data = attendancePercentage ?: attendanceResource.dataOrNull?.calculatePercentage(),
|
||||
data = attendanceResource.dataOrNull?.calculatePercentage(),
|
||||
error = attendanceResource.errorOrNull != null,
|
||||
isLoading = attendanceResource is Resource.Loading,
|
||||
),
|
||||
|
@ -0,0 +1,31 @@
|
||||
package io.github.wulkanowy.ui.modules.end
|
||||
|
||||
import android.os.Bundle
|
||||
import android.text.method.LinkMovementMethod
|
||||
import android.view.View
|
||||
import androidx.activity.addCallback
|
||||
import androidx.core.text.HtmlCompat
|
||||
import dagger.hilt.android.AndroidEntryPoint
|
||||
import io.github.wulkanowy.R
|
||||
import io.github.wulkanowy.databinding.FragmentEndBinding
|
||||
import io.github.wulkanowy.ui.base.BaseFragment
|
||||
|
||||
@AndroidEntryPoint
|
||||
class EndFragment : BaseFragment<FragmentEndBinding>(R.layout.fragment_end), EndView {
|
||||
|
||||
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
|
||||
super.onViewCreated(view, savedInstanceState)
|
||||
binding = FragmentEndBinding.bind(view)
|
||||
|
||||
requireActivity().onBackPressedDispatcher.addCallback {
|
||||
requireActivity().finishAffinity()
|
||||
}
|
||||
|
||||
binding.endClose.setOnClickListener { requireActivity().finishAffinity() }
|
||||
|
||||
val message = getString(R.string.end_message)
|
||||
binding.endDescription.movementMethod = LinkMovementMethod.getInstance()
|
||||
binding.endDescription.text =
|
||||
HtmlCompat.fromHtml(message, HtmlCompat.FROM_HTML_MODE_COMPACT)
|
||||
}
|
||||
}
|
@ -0,0 +1,5 @@
|
||||
package io.github.wulkanowy.ui.modules.end
|
||||
|
||||
import io.github.wulkanowy.ui.base.BaseView
|
||||
|
||||
interface EndView : BaseView
|
@ -6,6 +6,6 @@ enum class GradeAverageMode(val value: String) {
|
||||
BOTH_SEMESTERS("both_semesters");
|
||||
|
||||
companion object {
|
||||
fun getByValue(value: String) = entries.firstOrNull { it.value == value } ?: ONE_SEMESTER
|
||||
fun getByValue(value: String) = values().firstOrNull { it.value == value } ?: ONE_SEMESTER
|
||||
}
|
||||
}
|
||||
|
@ -15,6 +15,7 @@ import io.github.wulkanowy.R
|
||||
import io.github.wulkanowy.data.pojos.RegisterUser
|
||||
import io.github.wulkanowy.databinding.ActivityLoginBinding
|
||||
import io.github.wulkanowy.ui.base.BaseActivity
|
||||
import io.github.wulkanowy.ui.modules.end.EndFragment
|
||||
import io.github.wulkanowy.ui.modules.login.advanced.LoginAdvancedFragment
|
||||
import io.github.wulkanowy.ui.modules.login.form.LoginFormFragment
|
||||
import io.github.wulkanowy.ui.modules.login.recover.LoginRecoverFragment
|
||||
@ -115,9 +116,14 @@ class LoginActivity : BaseActivity<LoginPresenter, ActivityLoginBinding>(), Logi
|
||||
}
|
||||
}
|
||||
|
||||
override fun navigateToEnd() {
|
||||
openFragment(EndFragment(), clearBackStack = true)
|
||||
}
|
||||
|
||||
override fun onResume() {
|
||||
super.onResume()
|
||||
inAppUpdateHelper.onResume()
|
||||
presenter.updateSdkMappings()
|
||||
presenter.checkIfEnd()
|
||||
}
|
||||
}
|
||||
|
@ -2,6 +2,8 @@ package io.github.wulkanowy.ui.modules.login
|
||||
|
||||
import io.github.wulkanowy.data.repositories.StudentRepository
|
||||
import io.github.wulkanowy.data.repositories.WulkanowyRepository
|
||||
import io.github.wulkanowy.data.repositories.isEndDateReached
|
||||
import io.github.wulkanowy.services.sync.SyncManager
|
||||
import io.github.wulkanowy.ui.base.BasePresenter
|
||||
import io.github.wulkanowy.ui.base.ErrorHandler
|
||||
import kotlinx.coroutines.launch
|
||||
@ -11,7 +13,8 @@ import javax.inject.Inject
|
||||
class LoginPresenter @Inject constructor(
|
||||
private val wulkanowyRepository: WulkanowyRepository,
|
||||
errorHandler: ErrorHandler,
|
||||
studentRepository: StudentRepository
|
||||
studentRepository: StudentRepository,
|
||||
private val syncManager: SyncManager
|
||||
) : BasePresenter<LoginView>(errorHandler, studentRepository) {
|
||||
|
||||
override fun onAttachView(view: LoginView) {
|
||||
@ -26,4 +29,11 @@ class LoginPresenter @Inject constructor(
|
||||
.onFailure { Timber.e(it) }
|
||||
}
|
||||
}
|
||||
|
||||
fun checkIfEnd() {
|
||||
if (isEndDateReached) {
|
||||
syncManager.stopSyncWorker()
|
||||
view?.navigateToEnd()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -5,4 +5,6 @@ import io.github.wulkanowy.ui.base.BaseView
|
||||
interface LoginView : BaseView {
|
||||
|
||||
fun initView()
|
||||
|
||||
fun navigateToEnd()
|
||||
}
|
||||
|
@ -14,7 +14,9 @@ import io.github.wulkanowy.R
|
||||
import io.github.wulkanowy.data.dataOrThrow
|
||||
import io.github.wulkanowy.data.db.SharedPrefProvider
|
||||
import io.github.wulkanowy.data.repositories.LuckyNumberRepository
|
||||
import io.github.wulkanowy.data.repositories.PreferencesRepository
|
||||
import io.github.wulkanowy.data.repositories.StudentRepository
|
||||
import io.github.wulkanowy.data.repositories.isEndDateReached
|
||||
import io.github.wulkanowy.data.toFirstResult
|
||||
import io.github.wulkanowy.ui.modules.Destination
|
||||
import io.github.wulkanowy.ui.modules.splash.SplashActivity
|
||||
@ -35,6 +37,9 @@ class LuckyNumberWidgetProvider : AppWidgetProvider() {
|
||||
@Inject
|
||||
lateinit var sharedPref: SharedPrefProvider
|
||||
|
||||
@Inject
|
||||
lateinit var preferencesRepository: PreferencesRepository
|
||||
|
||||
companion object {
|
||||
private const val LUCKY_NUMBER_WIDGET_MAX_SIZE = 196
|
||||
|
||||
@ -130,6 +135,10 @@ class LuckyNumberWidgetProvider : AppWidgetProvider() {
|
||||
}
|
||||
|
||||
private fun getLuckyNumber(studentId: Long, appWidgetId: Int) = runBlocking {
|
||||
if (isEndDateReached) {
|
||||
return@runBlocking null
|
||||
}
|
||||
|
||||
try {
|
||||
val students = studentRepository.getSavedStudents()
|
||||
val student = students.singleOrNull { it.student.id == studentId }?.student
|
||||
|
@ -33,6 +33,7 @@ import io.github.wulkanowy.ui.modules.Destination
|
||||
import io.github.wulkanowy.ui.modules.account.accountquick.AccountQuickDialog
|
||||
import io.github.wulkanowy.ui.modules.auth.AuthDialog
|
||||
import io.github.wulkanowy.ui.modules.captcha.CaptchaDialog
|
||||
import io.github.wulkanowy.ui.modules.end.EndFragment
|
||||
import io.github.wulkanowy.ui.modules.settings.appearance.menuorder.AppMenuItem
|
||||
import io.github.wulkanowy.utils.AnalyticsHelper
|
||||
import io.github.wulkanowy.utils.AppInfo
|
||||
@ -139,6 +140,7 @@ class MainActivity : BaseActivity<MainPresenter, ActivityMainBinding>(), MainVie
|
||||
super.onResume()
|
||||
inAppUpdateHelper.onResume()
|
||||
presenter.updateSdkMappings()
|
||||
presenter.checkIfEnd()
|
||||
}
|
||||
|
||||
override fun onCreateOptionsMenu(menu: Menu): Boolean {
|
||||
@ -362,4 +364,10 @@ class MainActivity : BaseActivity<MainPresenter, ActivityMainBinding>(), MainVie
|
||||
super.onSaveInstanceState(outState)
|
||||
navController.onSaveInstanceState(outState)
|
||||
}
|
||||
|
||||
override fun navigateToEnd() {
|
||||
binding.mainToolbar.isVisible = false
|
||||
pushView(EndFragment())
|
||||
onBackCallback?.isEnabled = false
|
||||
}
|
||||
}
|
||||
|
@ -7,6 +7,7 @@ import io.github.wulkanowy.data.onResourceSuccess
|
||||
import io.github.wulkanowy.data.repositories.PreferencesRepository
|
||||
import io.github.wulkanowy.data.repositories.StudentRepository
|
||||
import io.github.wulkanowy.data.repositories.WulkanowyRepository
|
||||
import io.github.wulkanowy.data.repositories.isEndDateReached
|
||||
import io.github.wulkanowy.data.resourceFlow
|
||||
import io.github.wulkanowy.services.sync.SyncManager
|
||||
import io.github.wulkanowy.ui.base.BasePresenter
|
||||
@ -15,6 +16,7 @@ import io.github.wulkanowy.ui.base.ErrorHandler
|
||||
import io.github.wulkanowy.ui.modules.Destination
|
||||
import io.github.wulkanowy.ui.modules.account.AccountView
|
||||
import io.github.wulkanowy.ui.modules.account.accountdetails.AccountDetailsView
|
||||
import io.github.wulkanowy.ui.modules.end.EndView
|
||||
import io.github.wulkanowy.ui.modules.studentinfo.StudentInfoView
|
||||
import io.github.wulkanowy.utils.AdsHelper
|
||||
import io.github.wulkanowy.utils.AnalyticsHelper
|
||||
@ -110,6 +112,7 @@ class MainPresenter @Inject constructor(
|
||||
}
|
||||
|
||||
private fun shouldShowBottomNavigation(destination: BaseView) = when (destination) {
|
||||
is EndView,
|
||||
is AccountView,
|
||||
is StudentInfoView,
|
||||
is AccountDetailsView -> false
|
||||
@ -208,4 +211,11 @@ class MainPresenter @Inject constructor(
|
||||
.onFailure { Timber.e(it) }
|
||||
}
|
||||
}
|
||||
|
||||
fun checkIfEnd() {
|
||||
if (isEndDateReached) {
|
||||
syncManager.stopSyncWorker()
|
||||
view?.navigateToEnd()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -48,6 +48,8 @@ interface MainView : BaseView {
|
||||
|
||||
fun openMoreDestination(destination: Destination)
|
||||
|
||||
fun navigateToEnd()
|
||||
|
||||
interface MainChildView {
|
||||
|
||||
fun onFragmentReselected()
|
||||
|
@ -12,8 +12,6 @@ class MoreAdapter @Inject constructor() : RecyclerView.Adapter<MoreAdapter.ItemV
|
||||
|
||||
var onClickListener: (moreItem: MoreItem) -> Unit = {}
|
||||
|
||||
var onLongClickListener: (moreItem: MoreItem) -> Unit = {}
|
||||
|
||||
override fun getItemCount() = items.size
|
||||
|
||||
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int) = ItemViewHolder(
|
||||
@ -29,10 +27,6 @@ class MoreAdapter @Inject constructor() : RecyclerView.Adapter<MoreAdapter.ItemV
|
||||
moreItemImage.setImageResource(item.icon)
|
||||
|
||||
root.setOnClickListener { onClickListener(item) }
|
||||
root.setOnLongClickListener {
|
||||
onLongClickListener(item)
|
||||
true
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -5,7 +5,6 @@ import android.view.View
|
||||
import androidx.recyclerview.widget.LinearLayoutManager
|
||||
import dagger.hilt.android.AndroidEntryPoint
|
||||
import io.github.wulkanowy.R
|
||||
import io.github.wulkanowy.data.repositories.PreferencesRepository
|
||||
import io.github.wulkanowy.databinding.FragmentMoreBinding
|
||||
import io.github.wulkanowy.ui.base.BaseFragment
|
||||
import io.github.wulkanowy.ui.modules.Destination
|
||||
@ -24,9 +23,6 @@ class MoreFragment : BaseFragment<FragmentMoreBinding>(R.layout.fragment_more),
|
||||
@Inject
|
||||
lateinit var moreAdapter: MoreAdapter
|
||||
|
||||
@Inject
|
||||
lateinit var preferencesRepository: PreferencesRepository
|
||||
|
||||
companion object {
|
||||
fun newInstance() = MoreFragment()
|
||||
}
|
||||
@ -77,9 +73,4 @@ class MoreFragment : BaseFragment<FragmentMoreBinding>(R.layout.fragment_more),
|
||||
presenter.onDetachView()
|
||||
super.onDestroyView()
|
||||
}
|
||||
|
||||
override fun restartApp() {
|
||||
startActivity(MainActivity.getStartIntent(requireContext()))
|
||||
requireActivity().finishAffinity()
|
||||
}
|
||||
}
|
||||
|
@ -12,6 +12,4 @@ interface MoreView : BaseView {
|
||||
fun popView(depth: Int)
|
||||
|
||||
fun openView(destination: Destination)
|
||||
|
||||
fun restartApp()
|
||||
}
|
||||
|
@ -3,7 +3,6 @@ package io.github.wulkanowy.ui.modules.note
|
||||
import io.github.wulkanowy.data.*
|
||||
import io.github.wulkanowy.data.db.entities.Note
|
||||
import io.github.wulkanowy.data.repositories.NoteRepository
|
||||
import io.github.wulkanowy.data.repositories.PreferencesRepository
|
||||
import io.github.wulkanowy.data.repositories.SemesterRepository
|
||||
import io.github.wulkanowy.data.repositories.StudentRepository
|
||||
import io.github.wulkanowy.ui.base.BasePresenter
|
||||
@ -18,7 +17,6 @@ class NotePresenter @Inject constructor(
|
||||
studentRepository: StudentRepository,
|
||||
private val noteRepository: NoteRepository,
|
||||
private val semesterRepository: SemesterRepository,
|
||||
private val preferencesRepository: PreferencesRepository,
|
||||
private val analytics: AnalyticsHelper
|
||||
) : BasePresenter<NoteView>(errorHandler, studentRepository) {
|
||||
|
||||
@ -50,19 +48,6 @@ class NotePresenter @Inject constructor(
|
||||
}
|
||||
|
||||
private fun loadData(forceRefresh: Boolean = false) {
|
||||
if (!preferencesRepository.showNotes) {
|
||||
view?.run {
|
||||
enableSwipe(false)
|
||||
showEmpty(false)
|
||||
showContent(false)
|
||||
showErrorView(false)
|
||||
showProgress(false)
|
||||
showEmpty(true)
|
||||
}
|
||||
|
||||
return
|
||||
}
|
||||
|
||||
flatResourceFlow {
|
||||
val student = studentRepository.getCurrentStudent()
|
||||
val semester = semesterRepository.getCurrentSemester(student)
|
||||
|
@ -1,22 +1,13 @@
|
||||
package io.github.wulkanowy.ui.modules.settings
|
||||
|
||||
import android.content.SharedPreferences
|
||||
import android.os.Bundle
|
||||
import android.view.View
|
||||
import androidx.preference.Preference
|
||||
import androidx.preference.PreferenceFragmentCompat
|
||||
import androidx.preference.PreferenceScreen
|
||||
import dagger.hilt.android.AndroidEntryPoint
|
||||
import io.github.wulkanowy.R
|
||||
import io.github.wulkanowy.data.repositories.PreferencesRepository
|
||||
import io.github.wulkanowy.ui.base.BaseActivity
|
||||
import io.github.wulkanowy.ui.modules.main.MainView
|
||||
import timber.log.Timber
|
||||
import javax.inject.Inject
|
||||
|
||||
@AndroidEntryPoint
|
||||
class SettingsFragment : PreferenceFragmentCompat(),
|
||||
SharedPreferences.OnSharedPreferenceChangeListener,
|
||||
MainView.TitledView, SettingsView {
|
||||
class SettingsFragment : PreferenceFragmentCompat(), MainView.TitledView, SettingsView {
|
||||
|
||||
companion object {
|
||||
|
||||
@ -25,26 +16,11 @@ class SettingsFragment : PreferenceFragmentCompat(),
|
||||
|
||||
override val titleStringId get() = R.string.settings_title
|
||||
|
||||
@Inject
|
||||
lateinit var preferencesRepository: PreferencesRepository
|
||||
|
||||
override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) {
|
||||
setPreferencesFromResource(R.xml.scheme_preferences, rootKey)
|
||||
|
||||
val prefScreen: PreferenceScreen? = findPreference("settings_preferences")
|
||||
val prefDeveloper: Preference? = findPreference("mod_settings")
|
||||
|
||||
if (!preferencesRepository.developerMode && prefScreen != null && prefDeveloper != null) {
|
||||
prefScreen.removePreference(prefDeveloper)
|
||||
}
|
||||
|
||||
Timber.i("Settings view was initialized")
|
||||
}
|
||||
|
||||
override fun onSharedPreferenceChanged(sharedPreferences: SharedPreferences?, rootKey: String?) {
|
||||
setPreferencesFromResource(R.xml.scheme_preferences, rootKey)
|
||||
}
|
||||
|
||||
override fun showError(text: String, error: Throwable) {}
|
||||
|
||||
override fun showMessage(text: String) {}
|
||||
|
@ -1,147 +0,0 @@
|
||||
package io.github.wulkanowy.ui.modules.settings.mod_settings
|
||||
|
||||
import android.content.SharedPreferences
|
||||
import android.os.Bundle
|
||||
import android.view.View
|
||||
import androidx.appcompat.app.AlertDialog
|
||||
import androidx.preference.EditTextPreference
|
||||
import androidx.preference.MultiSelectListPreference
|
||||
import androidx.preference.PreferenceFragmentCompat
|
||||
import com.google.android.material.dialog.MaterialAlertDialogBuilder
|
||||
import dagger.hilt.android.AndroidEntryPoint
|
||||
import io.github.wulkanowy.R
|
||||
import io.github.wulkanowy.data.repositories.PreferencesRepository
|
||||
import io.github.wulkanowy.ui.base.BaseActivity
|
||||
import io.github.wulkanowy.ui.base.ErrorDialog
|
||||
import io.github.wulkanowy.ui.modules.dashboard.DashboardItem
|
||||
import io.github.wulkanowy.ui.modules.main.MainActivity
|
||||
import io.github.wulkanowy.ui.modules.main.MainView
|
||||
import io.github.wulkanowy.utils.AppInfo
|
||||
import timber.log.Timber
|
||||
import javax.inject.Inject
|
||||
|
||||
@AndroidEntryPoint
|
||||
class ModSettingsFragment : PreferenceFragmentCompat(),
|
||||
SharedPreferences.OnSharedPreferenceChangeListener,
|
||||
MainView.TitledView, ModSettingsView {
|
||||
|
||||
@Inject
|
||||
lateinit var presenter: ModSettingsPresenter
|
||||
|
||||
@Inject
|
||||
lateinit var appInfo: AppInfo
|
||||
|
||||
@Inject
|
||||
lateinit var preferencesRepository: PreferencesRepository
|
||||
|
||||
override val titleStringId get() = R.string.pref_mod_settings_title
|
||||
|
||||
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
|
||||
super.onViewCreated(view, savedInstanceState)
|
||||
presenter.onAttachView(this)
|
||||
}
|
||||
|
||||
override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) {
|
||||
setPreferencesFromResource(R.xml.scheme_preferences_mod_settings, rootKey)
|
||||
|
||||
val attendancePercentagePreference: EditTextPreference? = findPreference("attendance_percentage")
|
||||
attendancePercentagePreference?.setOnBindEditTextListener { editText ->
|
||||
editText.inputType = android.text.InputType.TYPE_CLASS_NUMBER or android.text.InputType.TYPE_NUMBER_FLAG_DECIMAL
|
||||
editText.filters = arrayOf(
|
||||
android.text.InputFilter { source, _, _, dest, _, _ ->
|
||||
if (source == "." && dest.isEmpty()) {
|
||||
return@InputFilter "0."
|
||||
}
|
||||
|
||||
val input = dest.toString() + source.toString()
|
||||
if (input == "100.00") {
|
||||
return@InputFilter null
|
||||
}
|
||||
|
||||
val inputVal = input.toFloatOrNull()
|
||||
if (inputVal != null && inputVal >= 0 && inputVal <= 100) {
|
||||
null
|
||||
} else {
|
||||
""
|
||||
}
|
||||
}
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
override fun onSharedPreferenceChanged(sharedPreferences: SharedPreferences?, key: String?) {
|
||||
presenter.onSharedPreferenceChanged(key)
|
||||
}
|
||||
|
||||
override fun showError(text: String, error: Throwable) {
|
||||
(activity as? BaseActivity<*, *>)?.showError(text, error)
|
||||
}
|
||||
|
||||
override fun showMessage(text: String) {
|
||||
(activity as? BaseActivity<*, *>)?.showMessage(text)
|
||||
}
|
||||
|
||||
override fun showExpiredCredentialsDialog() {
|
||||
(activity as? BaseActivity<*, *>)?.showExpiredCredentialsDialog()
|
||||
}
|
||||
|
||||
override fun onCaptchaVerificationRequired(url: String?) {
|
||||
(activity as? BaseActivity<*, *>)?.onCaptchaVerificationRequired(url)
|
||||
}
|
||||
|
||||
override fun showDecryptionFailedDialog() {
|
||||
(activity as? BaseActivity<*, *>)?.showDecryptionFailedDialog()
|
||||
}
|
||||
|
||||
override fun showChangePasswordSnackbar(redirectUrl: String) {
|
||||
(activity as? BaseActivity<*, *>)?.showChangePasswordSnackbar(redirectUrl)
|
||||
}
|
||||
|
||||
override fun openClearLoginView() {
|
||||
(activity as? BaseActivity<*, *>)?.openClearLoginView()
|
||||
}
|
||||
|
||||
override fun showErrorDetailsDialog(error: Throwable) {
|
||||
ErrorDialog.newInstance(error).show(childFragmentManager, error.toString())
|
||||
}
|
||||
|
||||
override fun showAuthDialog() {
|
||||
(activity as? BaseActivity<*, *>)?.showAuthDialog()
|
||||
}
|
||||
|
||||
override fun onResume() {
|
||||
super.onResume()
|
||||
preferenceScreen.sharedPreferences?.registerOnSharedPreferenceChangeListener(this)
|
||||
}
|
||||
|
||||
override fun onPause() {
|
||||
super.onPause()
|
||||
preferenceScreen.sharedPreferences?.unregisterOnSharedPreferenceChangeListener(this)
|
||||
}
|
||||
|
||||
override fun showAttendanceSettings(items: List<DashboardItem.HiddenAttendanceTile>) {
|
||||
val entries = requireContext().resources.getStringArray(R.array.mod_settings_attendance_entries)
|
||||
val values = requireContext().resources.getStringArray(R.array.mod_settings_attendance_values)
|
||||
val selectedItemsState = values.map { value -> items.any { it.name == value } }
|
||||
|
||||
MaterialAlertDialogBuilder(requireContext())
|
||||
.setTitle(R.string.attendance_title)
|
||||
.setMultiChoiceItems(entries, selectedItemsState.toBooleanArray()) { _, _, _ -> }
|
||||
.setPositiveButton(android.R.string.ok) { dialog, _ ->
|
||||
val selectedState = (dialog as AlertDialog).listView.checkedItemPositions
|
||||
val selectedValues = values
|
||||
.filterIndexed { index, _ -> selectedState[index] }
|
||||
.map { DashboardItem.HiddenAttendanceTile.valueOf(it) }
|
||||
|
||||
Timber.i("Selected attendance to hide: $selectedValues")
|
||||
presenter.onAttendanceSettingsSelected(selectedValues)
|
||||
}
|
||||
.setNegativeButton(android.R.string.cancel) { _, _ -> }
|
||||
.show()
|
||||
}
|
||||
|
||||
override fun restartApp() {
|
||||
startActivity(MainActivity.getStartIntent(requireContext()))
|
||||
requireActivity().finishAffinity()
|
||||
}
|
||||
}
|
@ -1,40 +0,0 @@
|
||||
package io.github.wulkanowy.ui.modules.settings.mod_settings
|
||||
|
||||
import io.github.wulkanowy.data.repositories.PreferencesRepository
|
||||
import io.github.wulkanowy.data.repositories.StudentRepository
|
||||
import io.github.wulkanowy.ui.base.BasePresenter
|
||||
import io.github.wulkanowy.ui.base.ErrorHandler
|
||||
import io.github.wulkanowy.ui.modules.dashboard.DashboardItem
|
||||
import io.github.wulkanowy.utils.AnalyticsHelper
|
||||
import timber.log.Timber
|
||||
import javax.inject.Inject
|
||||
|
||||
class ModSettingsPresenter @Inject constructor(
|
||||
errorHandler: ErrorHandler,
|
||||
studentRepository: StudentRepository,
|
||||
private val analytics: AnalyticsHelper,
|
||||
private val preferencesRepository: PreferencesRepository
|
||||
) : BasePresenter<ModSettingsView>(errorHandler, studentRepository) {
|
||||
|
||||
override fun onAttachView(view: ModSettingsView) {
|
||||
super.onAttachView(view)
|
||||
|
||||
Timber.i("Mod settings view was initialized")
|
||||
}
|
||||
|
||||
fun onSharedPreferenceChanged(key: String?) {
|
||||
key ?: return
|
||||
Timber.i("Change mod settings $key")
|
||||
analytics.logEvent("setting_changed", "name" to key)
|
||||
}
|
||||
|
||||
fun onHiddenGradesSelected(selectedItems: List<String>) {
|
||||
preferencesRepository.hiddenGrades = selectedItems
|
||||
view?.restartApp()
|
||||
}
|
||||
|
||||
fun onAttendanceSettingsSelected(selectedValues: List<DashboardItem.HiddenAttendanceTile>) {
|
||||
preferencesRepository.hiddenAttendanceItems = selectedValues
|
||||
view?.restartApp()
|
||||
}
|
||||
}
|
@ -1,9 +0,0 @@
|
||||
package io.github.wulkanowy.ui.modules.settings.mod_settings
|
||||
|
||||
import io.github.wulkanowy.ui.base.BaseView
|
||||
import io.github.wulkanowy.ui.modules.dashboard.DashboardItem
|
||||
|
||||
interface ModSettingsView : BaseView {
|
||||
fun restartApp()
|
||||
fun showAttendanceSettings(items: List<DashboardItem.HiddenAttendanceTile>)
|
||||
}
|
@ -22,6 +22,7 @@ import io.github.wulkanowy.data.repositories.PreferencesRepository
|
||||
import io.github.wulkanowy.data.repositories.SemesterRepository
|
||||
import io.github.wulkanowy.data.repositories.StudentRepository
|
||||
import io.github.wulkanowy.data.repositories.TimetableRepository
|
||||
import io.github.wulkanowy.data.repositories.isEndDateReached
|
||||
import io.github.wulkanowy.data.toFirstResult
|
||||
import io.github.wulkanowy.ui.modules.timetablewidget.TimetableWidgetProvider.Companion.getDateWidgetKey
|
||||
import io.github.wulkanowy.ui.modules.timetablewidget.TimetableWidgetProvider.Companion.getStudentWidgetKey
|
||||
@ -71,6 +72,8 @@ class TimetableWidgetFactory(
|
||||
|
||||
items = emptyList()
|
||||
|
||||
if (isEndDateReached) return
|
||||
|
||||
runBlocking {
|
||||
runCatching {
|
||||
val student = getStudent(studentId) ?: return@runBlocking
|
||||
|
@ -1,14 +1,32 @@
|
||||
package io.github.wulkanowy.utils
|
||||
|
||||
import java.text.SimpleDateFormat
|
||||
import java.time.*
|
||||
import java.time.DayOfWeek.*
|
||||
import java.time.DayOfWeek.FRIDAY
|
||||
import java.time.DayOfWeek.MONDAY
|
||||
import java.time.DayOfWeek.SATURDAY
|
||||
import java.time.DayOfWeek.SUNDAY
|
||||
import java.time.Instant
|
||||
import java.time.LocalDate
|
||||
import java.time.LocalDateTime
|
||||
import java.time.Month
|
||||
import java.time.ZoneId
|
||||
import java.time.ZoneOffset
|
||||
import java.time.format.DateTimeFormatter
|
||||
import java.time.temporal.TemporalAdjusters.*
|
||||
import java.util.*
|
||||
import java.time.temporal.TemporalAdjusters.firstInMonth
|
||||
import java.time.temporal.TemporalAdjusters.next
|
||||
import java.time.temporal.TemporalAdjusters.previous
|
||||
import java.util.Locale
|
||||
|
||||
private const val DEFAULT_DATE_PATTERN = "dd.MM.yyyy"
|
||||
|
||||
fun getDefaultLocaleWithFallback(): Locale {
|
||||
val locale = Locale.getDefault()
|
||||
if (locale.language == "csb") {
|
||||
return Locale.forLanguageTag("pl")
|
||||
}
|
||||
return locale
|
||||
}
|
||||
|
||||
fun LocalDate.toTimestamp(): Long = atStartOfDay()
|
||||
.toInstant(ZoneOffset.UTC)
|
||||
.toEpochMilli()
|
||||
@ -23,7 +41,7 @@ fun String.toLocalDate(format: String = DEFAULT_DATE_PATTERN): LocalDate =
|
||||
LocalDate.parse(this, DateTimeFormatter.ofPattern(format))
|
||||
|
||||
fun LocalDate.toFormattedString(pattern: String = DEFAULT_DATE_PATTERN): String =
|
||||
format(DateTimeFormatter.ofPattern(pattern))
|
||||
format(DateTimeFormatter.ofPattern(pattern, getDefaultLocaleWithFallback()))
|
||||
|
||||
fun Instant.toFormattedString(
|
||||
pattern: String = DEFAULT_DATE_PATTERN,
|
||||
@ -31,7 +49,7 @@ fun Instant.toFormattedString(
|
||||
): String = atZone(tz).format(DateTimeFormatter.ofPattern(pattern))
|
||||
|
||||
fun Month.getFormattedName(): String {
|
||||
val formatter = SimpleDateFormat("LLLL", Locale.getDefault())
|
||||
val formatter = SimpleDateFormat("LLLL", getDefaultLocaleWithFallback())
|
||||
|
||||
val date = LocalDateTime.now().withMonth(value)
|
||||
return formatter.format(date.toInstant(ZoneOffset.UTC).toEpochMilli()).capitalise()
|
||||
@ -76,7 +94,7 @@ inline val LocalDate.previousOrSameSchoolDay: LocalDate
|
||||
}
|
||||
|
||||
inline val LocalDate.weekDayName: String
|
||||
get() = format(DateTimeFormatter.ofPattern("EEEE", Locale.getDefault()))
|
||||
get() = format(DateTimeFormatter.ofPattern("EEEE", getDefaultLocaleWithFallback()))
|
||||
|
||||
inline val LocalDate.monday: LocalDate get() = with(MONDAY)
|
||||
|
||||
|
@ -1,6 +1,7 @@
|
||||
Wersja 2.6.13
|
||||
Wersja 2.7.0
|
||||
|
||||
— dodaliśmy tryb awaryjny (no w sensie taka przeglądarka z dziennikiem w apce, ale nie trzeba się ręcznie logować)
|
||||
— naprawiliśmy ładowania ucznia na tle klasy i lekcji zrealizowanych
|
||||
— naprawiliśmy ustawienia wyglądu po zmianie na język kaszubski
|
||||
— dodaliśmy ekran końca
|
||||
- naprawiliśmy ładowanie ocen z modułu Uczeń Plus
|
||||
|
||||
Pełna lista zmian: https://github.com/wulkanowy/wulkanowy/releases
|
||||
|
63
app/src/main/res/layout/fragment_end.xml
Normal file
63
app/src/main/res/layout/fragment_end.xml
Normal file
@ -0,0 +1,63 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:fillViewport="true">
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content">
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/endIcon"
|
||||
android:layout_width="72dp"
|
||||
android:layout_height="72dp"
|
||||
android:layout_marginTop="32dp"
|
||||
android:src="@mipmap/ic_launcher"
|
||||
app:layout_constraintBottom_toTopOf="@id/endText"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:layout_constraintVertical_chainStyle="packed" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/endText"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginHorizontal="32dp"
|
||||
android:layout_marginTop="16dp"
|
||||
android:fontFamily="sans-serif-medium"
|
||||
android:gravity="center"
|
||||
android:text="@string/end_title"
|
||||
android:textSize="28sp"
|
||||
app:layout_constraintBottom_toTopOf="@id/endDescription"
|
||||
app:layout_constraintTop_toBottomOf="@id/endIcon" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/endDescription"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginHorizontal="32dp"
|
||||
android:layout_marginTop="16dp"
|
||||
android:gravity="center"
|
||||
android:textSize="16sp"
|
||||
app:layout_constraintBottom_toTopOf="@id/endClose"
|
||||
app:layout_constraintTop_toBottomOf="@id/endText"
|
||||
tools:maxLines="15"
|
||||
tools:text="@string/end_message" />
|
||||
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/endClose"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginHorizontal="32dp"
|
||||
android:layout_marginTop="48dp"
|
||||
android:layout_marginBottom="32dp"
|
||||
android:text="ZAMKNIJ APLIKACJĘ"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/endDescription"
|
||||
app:layout_constraintVertical_bias="0" />
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
</ScrollView>
|
@ -1,21 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="pref_mod_settings_title">Skrytá nastavení</string>
|
||||
<string name="pref_hidden_settings_attendance_percentage">Procento docházky</string>
|
||||
<string name="pref_hidden_settings_hidden_grades">Skrýt známky</string>
|
||||
<string name="pref_mod_settings_hidden_attendance_items">Skryté položky docházky</string>
|
||||
<string name="pref_mod_settings_show_notes">Poznámky k pořadu</string>
|
||||
|
||||
<string-array name="mod_settings_attendance_entries">
|
||||
<item>Neomluvená absence</item>
|
||||
<item>Výjimka</item>
|
||||
<item>Ospravedlněné zpoždění</item>
|
||||
<item>Neomluvené zpoždění</item>
|
||||
<item>Přítomnost</item>
|
||||
<item>Smazáno</item>
|
||||
<item>Ospravedlněná absence</item>
|
||||
<item>Neznámá</item>
|
||||
</string-array>
|
||||
<string name="pref_mod_settings_developer_mode">Režim pro vývojáře (přístup na tuto stránku)</string>
|
||||
<string name="pref_mod_settings_developer_mode_summary">Po deaktivaci tohoto nastavení již nebudete mít přístup na tuto stránku, ale nastavení se bude nadále používat.</string>
|
||||
</resources>
|
@ -1,2 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources></resources>
|
@ -19,6 +19,7 @@
|
||||
<item>Deutsch</item>
|
||||
<item>Čeština</item>
|
||||
<item>Slovenčina</item>
|
||||
<item>Kaszëbsczi</item>
|
||||
</string-array>
|
||||
<string-array name="services_interval_entries">
|
||||
<item>15 minut</item>
|
||||
|
@ -29,7 +29,7 @@
|
||||
<string name="notifications_center_title">Centrum oznámení</string>
|
||||
<string name="menu_order_title">Konfigurace menu</string>
|
||||
<!--Subtitles-->
|
||||
<string name="grade_subtitle">Semestr %1$d, %2$d/%3$d</string>
|
||||
<string name="grade_subtitle">Pololetí %1$d, %2$d/%3$d</string>
|
||||
<!--Login-->
|
||||
<string name="login_header_default">Přihlaste se pomocí žákovského nebo rodičovského účtu</string>
|
||||
<string name="login_header_symbol">Zadejte symbol ze stránky deníku: <b>%1$s</b></string>
|
||||
@ -105,8 +105,8 @@
|
||||
<string name="main_support_positive">Zapnout reklamy</string>
|
||||
<!--Grade-->
|
||||
<string name="grade_header">Známka</string>
|
||||
<string name="grade_semester">Semestr %d</string>
|
||||
<string name="grade_switch_semester">Změnit semestr</string>
|
||||
<string name="grade_semester">Pololetí %d</string>
|
||||
<string name="grade_switch_semester">Změnit pololetí</string>
|
||||
<string name="grade_no_items">Žádné známky</string>
|
||||
<string name="grade_weight">Váha</string>
|
||||
<string name="grade_weight_value">Váha: %s</string>
|
||||
@ -125,16 +125,16 @@
|
||||
<string name="grade_summary_calculated_average">Vypočítaný pololetní průměr</string>
|
||||
<string name="grade_summary_calculated_average_annual">Vypočítaný roční průměr</string>
|
||||
<string name="grade_summary_calculated_average_help_dialog_title">Jak funguje vypočítaný průměr?</string>
|
||||
<string name="grade_summary_calculated_average_help_dialog_message">Vypočítaný průměr je aritmetický průměr vypočítaný z průměrů předmětů. Umožňuje vám to znát přibližný konečný průměr. Vypočítává se způsobem zvoleným uživatelem v nastavení aplikaci. Doporučuje se vybrat příslušnou možnost. Důvodem je rozdílný výpočet školních průměrů. Pokud vaše škola navíc uvádí průměr předmětů na stránce deníku Vulcan, aplikace si je stáhne a tyto průměry nepočítá. To lze změnit vynucením výpočtu průměru v nastavení aplikaci.\n\n<b>Průměr známek pouze z vybraného semestru</b>:\n1. Výpočet váženého průměru pro každý předmět v daném semestru\n2. Sčítání vypočítaných průměrů\n3. Výpočet aritmetického průměru součtených průměrů\n\n<b>Průměr průměrů z obou semestrů</b>:\n1. Výpočet váženého průměru pro každý předmět v semestru 1 a 2\n2. Výpočet aritmetického průměru vypočítaných průměrů za semestry 1 a 2 pro každý předmět.\n3. Sčítání vypočítaných průměrů\n4. Výpočet aritmetického průměru sečtených průměrů\n\n<b>Průměr známek z celého roku:</b>\n1. Výpočet váženého průměru za rok pro každý předmět. Konečný průměr v 1. semestru je nepodstatný.\n2. Sčítání vypočítaných průměrů\n3. Výpočet aritmetického průměru součtených průměrů</string>
|
||||
<string name="grade_summary_calculated_average_help_dialog_message">Vypočítaný průměr je aritmetický průměr vypočítaný z průměrů předmětů. Umožňuje vám to znát přibližný konečný průměr. Vypočítává se způsobem zvoleným uživatelem v nastavení aplikaci. Doporučuje se vybrat příslušnou možnost. Důvodem je rozdílný výpočet školních průměrů. Pokud vaše škola navíc uvádí průměr předmětů na stránce deníku Vulcan, aplikace si je stáhne a tyto průměry nepočítá. To lze změnit vynucením výpočtu průměru v nastavení aplikaci.\n\n<b>Průměr známek pouze z vybraného pololetí</b>:\n1. Výpočet váženého průměru pro každý předmět v daném pololetí\n2. Sčítání vypočítaných průměrů\n3. Výpočet aritmetického průměru součtených průměrů\n\n<b>Průměr průměrů z obou pololetí</b>:\n1. Výpočet váženého průměru pro každý předmět v pololetí 1 a 2\n2. Výpočet aritmetického průměru vypočítaných průměrů za pololetí 1 a 2 pro každý předmět.\n3. Sčítání vypočítaných průměrů\n4. Výpočet aritmetického průměru sečtených průměrů\n\n<b>Průměr známek z celého roku:</b>\n1. Výpočet váženého průměru za rok pro každý předmět. Konečný průměr v 1. pololetí je nepodstatný.\n2. Sčítání vypočítaných průměrů\n3. Výpočet aritmetického průměru součtených průměrů</string>
|
||||
<string name="grade_summary_final_average_help_dialog_title">Jak funguje konečný průměr?</string>
|
||||
<string name="grade_summary_final_average_help_dialog_message">Konečný průměr je aritmetický průměr vypočítaný ze všech aktuálně dostupných konečných známek v daném semestru.\n\nSchéma výpočtu se skládá z následujících kroků:\n1. Sčítání konečných známek zadaných učiteli\n2. Děleno počtem předmětů, pro které už byly uděleny známky</string>
|
||||
<string name="grade_summary_final_average_help_dialog_message">Konečný průměr je aritmetický průměr vypočítaný ze všech aktuálně dostupných konečných známek v daném pololetí.\n\nSchéma výpočtu se skládá z následujících kroků:\n1. Sčítání konečných známek zadaných učiteli\n2. Děleno počtem předmětů, pro které už byly uděleny známky</string>
|
||||
<string name="grade_summary_final_average">Konečný průměr</string>
|
||||
<string name="grade_summary_from_subjects">z %1$d z %2$d předmětů</string>
|
||||
<string name="grade_menu_summary">Shrnutí</string>
|
||||
<string name="grade_menu_statistics">Třída</string>
|
||||
<string name="grade_menu_read">Označit jako přečtené</string>
|
||||
<string name="grade_statistics_partial">Částečně</string>
|
||||
<string name="grade_statistics_semester">Semestr</string>
|
||||
<string name="grade_statistics_semester">Pololetí</string>
|
||||
<string name="grade_statistics_points">Body</string>
|
||||
<string name="grade_statistics_legend">Vysvětlivky</string>
|
||||
<string name="grade_statistics_class_average">Průměr třídy: %1$s</string>
|
||||
@ -499,7 +499,7 @@
|
||||
<string name="mobile_devices_title">Mobilní přístup</string>
|
||||
<string name="mobile_devices_no_items">Žádná zařízení</string>
|
||||
<string name="mobile_devices_unregister">Zrušit registraci</string>
|
||||
<string name="mobile_device_removed">Zařízení odstranění</string>
|
||||
<string name="mobile_device_removed">Zařízení odstraněno</string>
|
||||
<string name="mobile_device_qr">QR kód</string>
|
||||
<string name="mobile_device_token">Token</string>
|
||||
<string name="mobile_device_symbol">Symbol</string>
|
||||
@ -872,6 +872,8 @@
|
||||
<string name="captcha_dialog_title">Webová stránka deníku VULCAN vyžaduje ověření</string>
|
||||
<string name="captcha_dialog_description"><b>Proč se mi to zobrazuje?</b>\nWebová stránka deníku, ze které Wulkanowy stahuje data, zobrazuje stejnou obrazovku jako výše, takže Wulkanowy ji musí také zobrazit, aby bylo možné získávat data z této stránky. Nedá se to obejít</string>
|
||||
<string name="captcha_verified_message">Úspěšně ověřeno</string>
|
||||
<!--Panic mode-->
|
||||
<string name="panic_mode_title">Nouzový přístup</string>
|
||||
<!--Errors-->
|
||||
<string name="error_no_internet">Žádné internetové připojení</string>
|
||||
<string name="error_invalid_device_datetime">Vyskytla se chyba. Zkontrolujte hodiny svého zařízení</string>
|
||||
@ -893,5 +895,7 @@
|
||||
<string name="message_unmute">Zrušit ztlumení</string>
|
||||
<string name="message_mute_success">Ztlumili jste tohoto uživatele</string>
|
||||
<string name="message_unmute_success">Zrušili jste ztlumení tohoto uživatele</string>
|
||||
<string name="pref_mod_settings_other_title">Jiné</string>
|
||||
<!--End-->
|
||||
<string name="end_title">Koniec Wulkanowego</string>
|
||||
<string name="end_message">Jak zapewne niektórzy z Was się domyślali zbliża się ten moment, aby zakończyć pewien etap. Wraz z końcem tego roku szkolnego zamykamy projekt Wulkanowy. Stworzenie apki było ekscytującym wyzwaniem, ale skala projektu jest tak duża, że nie jesteśmy w stanie odpowiedzialnie utrzymywać aplikacji. Wulkanowy był fajną przygodą, ale sytuacja wymknęła się nam spod kontroli – zarówno pod względem technicznym, jak i społecznym. Nie akceptujemy pojawiającego się hejtu wobec nas ani wobec innych, także Vulcana. Nie chcemy brać udziału w tych działaniach i być z nimi utożsamiani. Prosimy Was o powściągliwość i rozwagę w publikowanych komentarzach i nieprzekraczanie dopuszczalnych granic.<br /><br />Prosimy Was też o uszanowanie naszej decyzji, jest ona przemyślana i ostateczna. Wszystkim dotychczasowym użytkownikom Wulkanowego rekomendujemy użycie oficjalnej aplikacji <a href=\"https://play.google.com/store/apps/details?id=pl.edu.vulcan.hebe&hl=pl\">Dzienniczek VULCAN</a>. Jeszcze raz dziękujemy wszystkim użytkownikom za lata wsparcia, pomoc i miłe słowa!</string>
|
||||
</resources>
|
||||
|
@ -0,0 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources xmlns:tools="http://schemas.android.com/tools">
|
||||
<string-array name="app_theme_entries" tools:ignore="InconsistentArrays">
|
||||
<item>Motiw systemu</item>
|
||||
<item>Jôsny</item>
|
||||
<item>Cemny</item>
|
||||
<item>Cemny (AMOLED)</item>
|
||||
</string-array>
|
||||
</resources>
|
76
app/src/main/res/values-csb-rPL/preferences_values.xml
Normal file
76
app/src/main/res/values-csb-rPL/preferences_values.xml
Normal file
@ -0,0 +1,76 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources xmlns:tools="http://schemas.android.com/tools">
|
||||
<string name="sort_alphabetically">Alfabéticzno</string>
|
||||
<string name="sort_by_date">Pòdług datë</string>
|
||||
<string name="sort_by_average">Pòdług strzédny</string>
|
||||
<string name="sort_by_attendance_percentage">Pòdług procentu bëtnoscë</string>
|
||||
<string name="sort_by_subject_attendance_balance">Pòdług salda frekwencje na przibiorze</string>
|
||||
<string-array name="app_theme_entries" tools:ignore="InconsistentArrays">
|
||||
<item>Jôsny</item>
|
||||
<item>Cemny</item>
|
||||
<item>Cemny (AMOLED)</item>
|
||||
</string-array>
|
||||
<string-array name="app_language_entries">
|
||||
<item>Systemòwi jãzëk</item>
|
||||
<item>Polski</item>
|
||||
<item>English</item>
|
||||
<item>Pусский</item>
|
||||
<item>Українська</item>
|
||||
<item>Deutsch</item>
|
||||
<item>Čeština</item>
|
||||
<item>Slovenčina</item>
|
||||
<item>Kaszëbsczi</item>
|
||||
</string-array>
|
||||
<string-array name="services_interval_entries">
|
||||
<item>15 minutów</item>
|
||||
<item>30 minutów</item>
|
||||
<item>1 gòdzëna</item>
|
||||
<item>2 gòdzënë</item>
|
||||
<item>6 gòdzyn</item>
|
||||
<item>12 gòdzyn</item>
|
||||
<item>24 gòdzyn</item>
|
||||
</string-array>
|
||||
<string-array name="grade_modifier_entries">
|
||||
<item>0,00</item>
|
||||
<item>0,25</item>
|
||||
<item>0,33</item>
|
||||
<item>0,5</item>
|
||||
<item>0,75</item>
|
||||
</string-array>
|
||||
<string-array name="grade_color_scheme_entries">
|
||||
<item>Dzienniczek+</item>
|
||||
<item>Wulkanowy</item>
|
||||
<item>Farwa taksów w dzénnikù</item>
|
||||
</string-array>
|
||||
<string-array name="default_expand_grade_entries">
|
||||
<item>Do 1 na rôz</item>
|
||||
<item>Wiedno rozwiniãti</item>
|
||||
<item>Rozwijanié bez grańców</item>
|
||||
</string-array>
|
||||
<string-array name="grade_average_mode_entries">
|
||||
<item>Strzédnô taksów leno z wëbrónégò semestru</item>
|
||||
<item>Strzédnô z strzédnëch z òbùch semestrów</item>
|
||||
<item>Strzédnô wszëtczich taksów z całégò rokù</item>
|
||||
</string-array>
|
||||
<string-array name="timetable_show_gaps_entries">
|
||||
<item>Nié pòkazuj</item>
|
||||
<item>Leno midzë ùczbama</item>
|
||||
<item>Przed a midzë ùczbama</item>
|
||||
</string-array>
|
||||
<string-array name="timetable_show_additional_lessons_entries">
|
||||
<item>Nié pòkazuj</item>
|
||||
<item>Pòkażë razã</item>
|
||||
<item>Pòkôżë niżi zwëczajné ùczbë</item>
|
||||
</string-array>
|
||||
<string-array name="dashboard_tile_entries">
|
||||
<item>Szczestlëwi numerk</item>
|
||||
<item>Nieprzeczëtóné wiadë</item>
|
||||
<item>Frekwencjô</item>
|
||||
<item>Ùczbë</item>
|
||||
<item>Taksë</item>
|
||||
<item>Zadanié dodóm</item>
|
||||
<item>Szkòlowi ògłos</item>
|
||||
<item>Testë</item>
|
||||
<item>Zéńdzenia</item>
|
||||
</string-array>
|
||||
</resources>
|
854
app/src/main/res/values-csb-rPL/strings.xml
Normal file
854
app/src/main/res/values-csb-rPL/strings.xml
Normal file
@ -0,0 +1,854 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<!--Activity/Fragment title-->
|
||||
<string name="login_title">Logòwanié</string>
|
||||
<string name="main_title">Wulkanowy</string>
|
||||
<string name="grade_title">Taksë</string>
|
||||
<string name="attendance_title">Frekwencjô</string>
|
||||
<string name="exam_title">Testë</string>
|
||||
<string name="timetable_title">Plan zajmów</string>
|
||||
<string name="settings_title">Nastôwë</string>
|
||||
<string name="more_title">Wicy</string>
|
||||
<string name="about_title">Ò aplikacëje</string>
|
||||
<string name="logviewer_title">Pòkazéwôcz logów</string>
|
||||
<string name="debug_title">Debùgòwanié</string>
|
||||
<string name="notification_debug_title">Debùgòwanié wiadłów</string>
|
||||
<string name="debug_cookies_clear">Rëmni kùszczi webview</string>
|
||||
<string name="contributors_title">Wkłôdôrze</string>
|
||||
<string name="license_title">Licencëje</string>
|
||||
<string name="message_title">Wiadë</string>
|
||||
<string name="send_message_title">Nowô wiada</string>
|
||||
<string name="add_homework_title">Nowé zadanié dodóm</string>
|
||||
<string name="note_title">Ùwôdżi i pòstãpë</string>
|
||||
<string name="homework_title">Zadanié dodóm</string>
|
||||
<string name="account_title">Czerownik kòntów</string>
|
||||
<string name="account_quick_title">Wëbierzë kònto</string>
|
||||
<string name="account_details_title">Drobnotë kònta</string>
|
||||
<string name="student_info_title">Jinfòrmacëje ò ùczniu</string>
|
||||
<string name="dashboard_title">Doma</string>
|
||||
<string name="notifications_center_title">Centrum wiadłów</string>
|
||||
<string name="menu_order_title">Kònfigùracëjô menu</string>
|
||||
<!--Subtitles-->
|
||||
<string name="grade_subtitle">Semestr %1$d, %2$d/%3$d</string>
|
||||
<!--Login-->
|
||||
<string name="login_header_default">Zalogùj sã brëkùjącë kònta ùcznia abò rodzëca</string>
|
||||
<string name="login_header_symbol">Pòdôj symbòl z starnë dzénnika dlô kònta: <b>%1$s</b></string>
|
||||
<string name="login_nickname_hint">Pòzwa brëkòwnika</string>
|
||||
<string name="login_email_hint">Adresa E-mail</string>
|
||||
<string name="login_login_pesel_email_hint">Login, PESEL abò adresa e-mail</string>
|
||||
<string name="login_password_hint">Parola</string>
|
||||
<string name="login_host_hint">Wariant dzénnika UONET+</string>
|
||||
<string name="login_domain_suffix_hint">Niesztandardowi sufiks domenë</string>
|
||||
<string name="login_type_api">Mòbilné API</string>
|
||||
<string name="login_type_scrapper">Scraper</string>
|
||||
<string name="login_type_hybrid">Hibdridowé</string>
|
||||
<string name="login_token_hint">Token</string>
|
||||
<string name="login_pin_hint">PIN</string>
|
||||
<string name="login_symbol_hint">Symbol</string>
|
||||
<string name="login_symbol_placeholder">Np. \"lodz\" czë \"powiatjaroslawski\"</string>
|
||||
<string name="login_sign_in">Zalogùj</string>
|
||||
<string name="login_invalid_password">Parola je za krótkô</string>
|
||||
<string name="login_incorrect_password_default">Dane logòwaniô są niépasowné</string>
|
||||
<string name="login_incorrect_password">%1$s. Ùgwësni sã, że wëbrôno pòprawną òdmianã dzénnika UONET+ niżi</string>
|
||||
<string name="login_invalid_pin">Niepasowny PIN</string>
|
||||
<string name="login_invalid_token">Niepasowny token</string>
|
||||
<string name="login_expired_token">Token wëgôsł</string>
|
||||
<string name="login_invalid_email">Niepasowny adresa e-mail</string>
|
||||
<string name="login_invalid_login">Ùżij loginu miast adresu e-mail</string>
|
||||
<string name="login_invalid_custom_email">Ùżij loginu abò adresu e-mail w @%1$s</string>
|
||||
<string name="login_invalid_domain_suffix">Niepasowny sufiks domenë</string>
|
||||
<string name="login_invalid_symbol">Niepasowny symbòl. Żelë nié mòżesz gò nalézc, proszã skòntaktowac sã z szkòłą</string>
|
||||
<string name="login_invalid_symbol_definitely">Nie szkaluj! żelë nié mòżesz nalézc symbòlu, skòntaktuj sã z szkòłą</string>
|
||||
<string name="login_incorrect_symbol">Ùczeń nie nalazłi. Sprôwdzë pòprawnosc symbòlu i wëbróny òdmianë dzénnika UONET+</string>
|
||||
<string name="login_duplicate_student">Wëbróny ùczeń je ju zalogòwóny</string>
|
||||
<string name="login_symbol_helper">Symbòl mòżna nalézc na starnie dzénnika w <b>Ùczeń</b>→ <b>Dostãp mòbilny</b> → <b>Wëgeneruj kòd dostãpù </b>.\n\nÙgwësni sã, że ùstôwił jes pasowną òdmianã dzénnika w pòlu <b>Òdmiana dzénnika UONET+</b> na pierszim ekranie logòwania</string>
|
||||
<string name="login_select_student">Wëbierzë ùczniów do zalogòwaniô w aplikacëje</string>
|
||||
<string name="login_advanced">Jiné òpcëje</string>
|
||||
<string name="login_advanced_warning_mobile_api">W tim tribie nie dzejô szczestlëwi numerk, ùczeń na tle klasë, pòdrëchòwanié frekwencëje, ùsprôwiedliwianié niebëtnoscë, zajmë zrealizowóné, jimfòrmacëje ò szkòle i pòzdrzatk listë zarejestrowónëch ùrządzeniów</string>
|
||||
<string name="login_advanced_warning_scraper">Nen trib wëswietlô ne samé dane, chtërne są widoczné na jinternetowi starnie dzénnika</string>
|
||||
<string name="login_advanced_warning_hybrid">Sparłãczënié nôlepszich znanków dwùch òstatnich tribów. Dzejô chùdzy jak scraper i ùgwësniô Fùnkcëje niédostãpné w tribie Mòbilné API, Je to w eksperimentalnym stadium</string>
|
||||
<string name="login_privacy_policy">Pòlitëka priwatnoscë</string>
|
||||
<string name="login_contact_header">Tôkel z logòwanim? Napiszë do naju!</string>
|
||||
<string name="login_contact_email">E-mail</string>
|
||||
<string name="login_contact_discord">Discord</string>
|
||||
<string name="login_email_intent_title">Wëslë e-mail</string>
|
||||
<string name="login_recover_warning">Ùgwësni sã, że òsta wëbrónô òdpòwiedniô òdmiana dzénnika UONET+!</string>
|
||||
<string name="login_recover_button">Resetuj parolã</string>
|
||||
<string name="login_recover_title">Przëwarcë swòje kònto</string>
|
||||
<string name="login_recover">Przëwarcë</string>
|
||||
<string name="login_signed_in">Ùczeń je ju zalogòwóny</string>
|
||||
<string name="login_host_standard">Sztandardowô</string>
|
||||
<string name="login_other_search_locations">Jinô lokalizacëjô wësznëkrowaniô</string>
|
||||
<string name="login_no_active_student">Nie nalazło aktiwnëch ùczniów</string>
|
||||
<string name="login_symbol_enter">Wprowadzë jiny symbòl</string>
|
||||
<string name="login_support_title">Zëskôj pòmòc</string>
|
||||
<string name="login_support_school_hint">Fùl pòzwa szkòłë z gardã (Wëmôgô)</string>
|
||||
<string name="login_support_school_placeholder">Np. ZSTiO Jarosław abò SP nr 99 w Łodzi</string>
|
||||
<string name="login_support_school_invalid">Wprowadzë pòprawną pòzwã szkòłë</string>
|
||||
<string name="login_support_additional_hint">Dodôtkòwé jinfòrmacëje pò Pòlskù (Òpcjonalno)</string>
|
||||
<string name="login_support_additional_placeholder">Np. \"Òstatnio zmienił jem szkòłã i…\" abò \"Jô jem rodzëcã i nié widzã drëdżégò dzecka…\"</string>
|
||||
<string name="login_support_submit">Wëslë</string>
|
||||
<!--Notifications-->
|
||||
<string name="notifications_header_title">Włączë wiadła</string>
|
||||
<string name="notifications_header_description">Włączë wiadła, abë nie zabôczëc wiadów òd szkólnëch abò nowi taksë</string>
|
||||
<string name="notifications_skip">Pòmiń</string>
|
||||
<string name="notifications_enable">Włączë</string>
|
||||
<!--Main-->
|
||||
<string name="main_account_picker">Czerownik kòntów</string>
|
||||
<string name="main_log_in">Zalogùj sã</string>
|
||||
<string name="main_session_expired">Sesjô zgasłô</string>
|
||||
<string name="main_session_relogin">Sesja zgasłô, zalogùj sã znôwa</string>
|
||||
<string name="main_expired_credentials_title">Parola zgasłô abò òsta zmieniona</string>
|
||||
<string name="main_expired_credentials_description">Parola do twòjégò kònta zgasłô abò òsta zmieniona. Mùszisz zalogòwac sã znôwa do Wùlkanowégò</string>
|
||||
<string name="main_support_title">Wspiarcé aplikacëje</string>
|
||||
<string name="main_support_description">Widzy cë sã ta aplikacëjô? Wësprzë ji rozwój pòprzez włączenié nieszkòdzącëch reklamów, chtërne mòżesz wëłączëc w kôżdim mòmence</string>
|
||||
<string name="main_support_positive">Włączë reklamë</string>
|
||||
<!--Grade-->
|
||||
<string name="grade_header">Taksa</string>
|
||||
<string name="grade_semester">Semestr %d</string>
|
||||
<string name="grade_switch_semester">Zmieni semestr</string>
|
||||
<string name="grade_no_items">Felënk taksów</string>
|
||||
<string name="grade_weight">Wôga</string>
|
||||
<string name="grade_weight_value">Wôga: %s</string>
|
||||
<string name="grade_comment">Kòmentôrz</string>
|
||||
<string name="grade_number_new_items">Jilosc nowich taksów: %1$d</string>
|
||||
<string name="grade_average">Strzédnô: %1$.2f</string>
|
||||
<string name="grade_average_year">Rocznô: %1$.2f</string>
|
||||
<string name="grade_points_sum">Pónktë: %s</string>
|
||||
<string name="grade_no_average">Felënk strzédny</string>
|
||||
<string name="grade_summary_average_semester">Strzédnô semestru</string>
|
||||
<string name="grade_summary_average_year">Strzédnô rocznô</string>
|
||||
<string name="grade_summary_points">Jilosc pónktów</string>
|
||||
<string name="grade_summary_final_grade">Kùńcowô taksa</string>
|
||||
<string name="grade_summary_predicted_grade">Spòdzónô taksa</string>
|
||||
<string name="grade_summary_descriptive">Òpisowô taksa</string>
|
||||
<string name="grade_summary_calculated_average">Òbliczonô strzédnô semestru</string>
|
||||
<string name="grade_summary_calculated_average_annual">Òbliczonô rocznô strzédna</string>
|
||||
<string name="grade_summary_calculated_average_help_dialog_title">Jak dzejô òbliczonô strzédnô?</string>
|
||||
<string name="grade_summary_calculated_average_help_dialog_message">Òbrechòwiwónô strzédnô to je aritmeticznô strzédnô jakô je òbrechòwiwónô ze strzédnëch z apartnëch przibiorów. Pòzwôlô na doznanié sã przëblëżony kùńcowi strzédny. Òna je òbrechòwiwónô na ôrt wëbróny przez brëkòwnika w nastawach aplikacje. Bédëjemë wëbrac pasowną òpcją, kò òbrechòwiwanié szkòłowëch strzédnëch mòże sã jinaczëc. Żelë wasza szkòła pòdôwô strzédné z przibiorów na starnie Vulcan, aplikacjô je scygô a sama nick nie òbrechòwiwô. To mòże to zmienic przez wëmùszenié òbrechòwiwaniégò w nastawach aplikacje.\n\n<b>Strzédnô taksów leno z wëbrónégò semestru</b>:\n1. Òbrechòwiwanié wôżony strzédny dlô kòżdégò przibioru w dónym semestrze\n2.Dodôwanié òbrechòwónëch strzédnëch\n3. Òbrëchòwiwanié aritmeticzny strzédny ze strzédnëch zesadzonëch razã\n\n<b>Strzédnô ze strzédnëch z òbùch semestrów</b>:\n1.Òbrechòwiwanié wôżony strzédny dlô kòżdégò przibioru w 1. i 2. semestrze\n2. Òbrechòwiwanié aritmeticzny strzédny ze strzédnëch òbrechòwónëch dlô kòżdégò przëbioru na semester 1. i 2.\n3. Dodôwanié òbrechòwónëch strzédnëch\n4. Òbrëchòwiwanié aritmeticzny strzédny ze strzédnëch zesadzonëch razã\n\n<b>Strzédnô taksów z całégò rokù:</b>\n1. Òbrechòwiwanié wôżony strzédny w rocznym pòzdrzatkù dlô kòżdégò przibioru. Kùńcowô strzédnô w 1. semestrze sã nie rechùje. \n2. Dodôwanié òbrechòwónëch strzédnëch\n3. Òbrëchòwiwanié aritmeticzny strzédny ze strzédnëch zesadzonëch razã</string>
|
||||
<string name="grade_summary_final_average_help_dialog_title">Jak fónksnéruje kùńcowô strzédna?</string>
|
||||
<string name="grade_summary_final_average_help_dialog_message">Kùńcową strzédną je strzédnô aritmetëcznô òbliczonô na spòdlim wszëtczich òbecno dostãpnëch taksów kùńcowëch w danym semestrze.\n\nSchemat òbliczeniów skłôdô sã z nôstãpùjącëch kroków:\n1. Sumòwanié kùńcowëch taksów wpisanëch przez szkólnëch\n2. Dzélenié przez lëczbã zajmów, z chtërnëch taksë òstałë ju wstôwioné</string>
|
||||
<string name="grade_summary_final_average">Kùńcowô strzédna</string>
|
||||
<string name="grade_summary_from_subjects">z %1$d na %2$d zajmów</string>
|
||||
<string name="grade_menu_summary">Pòdrëchòwanié</string>
|
||||
<string name="grade_menu_statistics">Klasa</string>
|
||||
<string name="grade_menu_read">Zamérkô jakò przeczëtóné</string>
|
||||
<string name="grade_statistics_partial">Cawné</string>
|
||||
<string name="grade_statistics_semester">Semestr</string>
|
||||
<string name="grade_statistics_points">Pónktë</string>
|
||||
<string name="grade_statistics_legend">Legenda</string>
|
||||
<string name="grade_statistics_class_average">Strzédna klasë: %1$s</string>
|
||||
<string name="grade_statistics_student_average">Twòja strzédnô: %1$s</string>
|
||||
<string name="grade_statistics_student_grade">Twòja taksa: %1$s</string>
|
||||
<string name="grade_statistics_average_class">Klasa</string>
|
||||
<string name="grade_statistics_average_student">Ùczeń</string>
|
||||
<plurals name="grade_number_item">
|
||||
<item quantity="one">%d taksa</item>
|
||||
<item quantity="few">%d taksë</item>
|
||||
<item quantity="other">%d taksów</item>
|
||||
</plurals>
|
||||
<plurals name="grade_new_items">
|
||||
<item quantity="one">Nowô taksa</item>
|
||||
<item quantity="few">Nowé taksë</item>
|
||||
<item quantity="other">Nowé taksë</item>
|
||||
</plurals>
|
||||
<plurals name="grade_new_items_predicted">
|
||||
<item quantity="one">Nowô spòdzónô taksa</item>
|
||||
<item quantity="few">Nowé spòdzóné taksë</item>
|
||||
<item quantity="other">Nowé spòdzóné taksë</item>
|
||||
</plurals>
|
||||
<plurals name="grade_new_items_final">
|
||||
<item quantity="one">Nowô kùńcowô taksa</item>
|
||||
<item quantity="few">Nowé kùńcowé taksë</item>
|
||||
<item quantity="other">Nowé kùńcowé taksë</item>
|
||||
</plurals>
|
||||
<plurals name="grade_new_items_descriptive">
|
||||
<item quantity="one">Nowô òpisowô taksa</item>
|
||||
<item quantity="few">Nowé òpisowé taksë</item>
|
||||
<item quantity="other">Nowé òpisowé taksë</item>
|
||||
</plurals>
|
||||
<plurals name="grade_notify_new_items">
|
||||
<item quantity="one">Môsz %1$d nową taksã</item>
|
||||
<item quantity="few">Môsz %1$d nowé taksë</item>
|
||||
<item quantity="other">Môsz %1$d nowëch taksów</item>
|
||||
</plurals>
|
||||
<plurals name="grade_notify_new_items_predicted">
|
||||
<item quantity="one">Môsz %1$d nową spodzóną taksã</item>
|
||||
<item quantity="few">Môsz %1$d nowé spodzón taksë</item>
|
||||
<item quantity="other">Môsz %1$d nowëch spodzónëch taksów</item>
|
||||
</plurals>
|
||||
<plurals name="grade_notify_new_items_final">
|
||||
<item quantity="one">Môsz %1$d nową kùńcową taksã</item>
|
||||
<item quantity="few">Môsz %1$d nowé kùńcowé taksë</item>
|
||||
<item quantity="other">Môsz %1$d nowëch kùńcowëch taksów</item>
|
||||
</plurals>
|
||||
<plurals name="grade_notify_new_items_descriptive">
|
||||
<item quantity="one">Môsz %1$d nową òpisową taksã</item>
|
||||
<item quantity="few">Môsz %1$d nowé òpisowé taksë</item>
|
||||
<item quantity="other">Môsz %1$d nowëch òpisowëch taksów</item>
|
||||
</plurals>
|
||||
<!--Timetable-->
|
||||
<string name="timetable_lesson">Ùczba</string>
|
||||
<string name="timetable_additional_lesson">Dodôtkòwô ùczba</string>
|
||||
<string name="timetable_room">Zala</string>
|
||||
<string name="timetable_group">Karno</string>
|
||||
<string name="timetable_time">Gòdzënë</string>
|
||||
<string name="timetable_changes">Zmianë</string>
|
||||
<string name="timetable_no_items">Felënk ùczbów dzysô</string>
|
||||
<string name="timetable_minutes">%s min</string>
|
||||
<string name="timetable_seconds">%s sek</string>
|
||||
<string name="timetable_time_left">jesz %1$s</string>
|
||||
<string name="timetable_time_until">za %1$s</string>
|
||||
<string name="timetable_finished">Fardëch</string>
|
||||
<string name="timetable_now">Terô: %s</string>
|
||||
<string name="timetable_next">Pòstãpné: %s</string>
|
||||
<string name="timetable_later">Pózdni: %s</string>
|
||||
<string name="timetable_notify_lesson">%1$s ùczba %2$d - %3$s</string>
|
||||
<string name="timetable_notify_change_room">Pòzmiana zalë z %1$s na %2$s</string>
|
||||
<string name="timetable_notify_change_teacher">Pòzmiana szkólnégò z %1$s na %2$s</string>
|
||||
<string name="timetable_notify_change_subject">Pòzmiana zajmë z %1$s na %2$s</string>
|
||||
<plurals name="timetable_no_lesson">
|
||||
<item quantity="one">Ni ma ùczbë</item>
|
||||
<item quantity="few">Ni ma ùczbów</item>
|
||||
<item quantity="other">Ni ma ùczbów</item>
|
||||
</plurals>
|
||||
<plurals name="timetable_notify_new_items_title">
|
||||
<item quantity="one">Pòzmiana planu zajmów</item>
|
||||
<item quantity="few">Pòzmianë planu zajmów</item>
|
||||
<item quantity="other">Pòzmianë planu zajmów</item>
|
||||
</plurals>
|
||||
<plurals name="timetable_notify_new_items">
|
||||
<item quantity="one">%1$s - %2$d Pòzmiana planu zajmów</item>
|
||||
<item quantity="few">%1$s - %2$d Pòzmianë planu zajmów</item>
|
||||
<item quantity="other">%1$s - %2$d Pòzmianów planu ùczbów</item>
|
||||
</plurals>
|
||||
<plurals name="timetable_notify_new_items_group">
|
||||
<item quantity="one">%1$d Pòzmiana planu zajmów</item>
|
||||
<item quantity="few">%1$d Pòzmianë planu zajmów</item>
|
||||
<item quantity="other">%1$d Pòzmianë planu zajmów</item>
|
||||
</plurals>
|
||||
<plurals name="timetable_number_item">
|
||||
<item quantity="one">%d Pòzmiana</item>
|
||||
<item quantity="few">%d Pòzmianë</item>
|
||||
<item quantity="other">%d Pòzmianë</item>
|
||||
</plurals>
|
||||
<!--Completed lessons-->
|
||||
<string name="completed_lessons_title">Ùczbë są skùńczoné</string>
|
||||
<string name="completed_lessons_button">Pòkôżë skùńczoné ùczbë</string>
|
||||
<string name="completed_lessons_no_items">Felënk jinfòrmacëjów ò ùkòńczonëch ùczbach</string>
|
||||
<string name="completed_lessons_topic">Témat</string>
|
||||
<string name="completed_lessons_absence">Niebëtnosc</string>
|
||||
<string name="completed_lessons_resources">Zôsóbczi</string>
|
||||
<!--Additional lessons-->
|
||||
<string name="additional_lessons_title">Dodatkòwé ùczbë</string>
|
||||
<string name="additional_lessons_button">Pòkôżë dodatkòwé ùczbë</string>
|
||||
<string name="additional_lessons_no_items">Felënk jinfòrmacëjów ò dodôtkòwëch ùczbach</string>
|
||||
<string name="additional_lessons_add">Nowô ùczba</string>
|
||||
<string name="additional_lessons_add_title">Nowô dodatkòwô ùczba</string>
|
||||
<string name="additional_lessons_add_success">Dodatkòwa ùczba òsta dodónô z sukcesã</string>
|
||||
<string name="additional_lessons_delete_success">Dodôtkòwô ùczba òsta rëmniãtô z sukcesã</string>
|
||||
<string name="additional_lessons_repeat">Pòwtórzë co tidzéń</string>
|
||||
<string name="additional_lessons_delete_title">Rëmni dodôtkòwą ùczbã</string>
|
||||
<string name="additional_lessons_delete_one">Leno ta ùczba</string>
|
||||
<string name="additional_lessons_delete_series">Wszëtczé w serie</string>
|
||||
<string name="additional_lessons_start">Gòdzëna zôczãcô</string>
|
||||
<string name="additional_lessons_end">Gòdzëna skùńczeniô</string>
|
||||
<string name="additional_lessons_end_time_error">Gòdzëna skùńczeniô mùszi bëc pózdniszô jak gòdzëzna zôczãcô</string>
|
||||
<!--Attendance-->
|
||||
<string name="attendance_summary_button">Pòdrëchòwanié bëtnoscë</string>
|
||||
<string name="attendance_calculator_button">Kalkulator bëtnoscë</string>
|
||||
<string name="attendance_calculator_summary_balance_positive"><b>%1$d</b> Wëżi célu</string>
|
||||
<string name="attendance_calculator_summary_balance_neutral">dokładno kù célu</string>
|
||||
<string name="attendance_calculator_summary_balance_negative"><b>%1$d</b> niżi célu</string>
|
||||
<string name="attendance_calculator_summary_values">%1$d/%2$d bëtnoscë</string>
|
||||
<string name="attendance_calculator_summary_values_empty">Nié zaùwôżono niżôdny frekwencëje</string>
|
||||
<string name="attendance_absence_school">Niebëtnosc z szkòlnëch przëczënów</string>
|
||||
<string name="attendance_absence_excused">Ùsprawiedlëwiono niéòbecnosc</string>
|
||||
<string name="attendance_absence_unexcused">Nieùsprawiedlëwiono niéòbecnosc</string>
|
||||
<string name="attendance_exemption">Zwòlnienié</string>
|
||||
<string name="attendance_excused_lateness">Spózdnienié ùsprawiedlëwioné</string>
|
||||
<string name="attendance_unexcused_lateness">Spózdnienié Nieùsprawiedlëwioné</string>
|
||||
<string name="attendance_present">Bëtnosc</string>
|
||||
<string name="attendance_deleted">Rëmniãto</string>
|
||||
<string name="attendance_unknown">Niéznóny</string>
|
||||
<string name="attendance_number">Lëczba ùczbów</string>
|
||||
<string name="attendance_no_items">Ni ma wpisów</string>
|
||||
<string name="attendance_excuse_dialog_reason">Pòwód niebëtnoscë (òpcjonalny)</string>
|
||||
<string name="attendance_excuse_dialog_submit">Wëslë</string>
|
||||
<string name="attendance_excuse_success">Proszba ò ùsprawiedlëwienié òsta wësłónô z sukcesã!</string>
|
||||
<string name="attendance_excuse_no_selection">Mùszisz wëbrac bënômni jedną nieòbecnosc!</string>
|
||||
<string name="attendance_excuse_title">Ùsprawiedliwi</string>
|
||||
<plurals name="attendance_notify_new_items_title">
|
||||
<item quantity="one">Nowô frekwencjô</item>
|
||||
<item quantity="few">Nowé frekwencëje</item>
|
||||
<item quantity="other">Nowé frekwencëje</item>
|
||||
</plurals>
|
||||
<plurals name="attendance_notify_new_items">
|
||||
<item quantity="one">%1$d nowô frekwencjô</item>
|
||||
<item quantity="few">%1$d nowé frekwencëje</item>
|
||||
<item quantity="other">%1$d nowëch frekwencjów</item>
|
||||
</plurals>
|
||||
<plurals name="attendance_number_item">
|
||||
<item quantity="one">%d frekwencjô</item>
|
||||
<item quantity="few">%d frekwencëje</item>
|
||||
<item quantity="other">%d frekwencjów</item>
|
||||
</plurals>
|
||||
<!--Attendance summary-->
|
||||
<string name="attendance_summary_total">Razã</string>
|
||||
<!--Exam-->
|
||||
<string name="exam_no_items">Ni ma testów w tim tidzéniu</string>
|
||||
<string name="exam_type">Ôrt</string>
|
||||
<string name="exam_entry_date">Data wpisënkù</string>
|
||||
<plurals name="exam_notify_new_item_title">
|
||||
<item quantity="one">Nowi test</item>
|
||||
<item quantity="few">Nowé testë</item>
|
||||
<item quantity="other">Nowé testë</item>
|
||||
</plurals>
|
||||
<plurals name="exam_notify_new_item_content">
|
||||
<item quantity="one">%d nowi test</item>
|
||||
<item quantity="few">%d nowé testë</item>
|
||||
<item quantity="other">%d nowëch testów</item>
|
||||
</plurals>
|
||||
<plurals name="exam_number_item">
|
||||
<item quantity="one">%d test</item>
|
||||
<item quantity="few">%d testë</item>
|
||||
<item quantity="other">%d testów</item>
|
||||
</plurals>
|
||||
<!--Message-->
|
||||
<string name="message_inbox">Òdebróné</string>
|
||||
<string name="message_sent">Wësłóno</string>
|
||||
<string name="message_trash">Wãbórk</string>
|
||||
<string name="message_no_subject">(Niżôdny témat)</string>
|
||||
<string name="message_no_items">Ni ma wiadów</string>
|
||||
<string name="message_from">Òd:</string>
|
||||
<string name="message_to">Do:</string>
|
||||
<string name="message_date">Data: %1$s</string>
|
||||
<string name="message_reply">Òdrzekni</string>
|
||||
<string name="message_forward">Wëslë dali</string>
|
||||
<string name="message_select_all">Zamérkô wszëtkò</string>
|
||||
<string name="message_unselect_all">Òdmérkô wszëtkò</string>
|
||||
<string name="message_restore_from_trash">Przëwrócë z wãbórka</string>
|
||||
<string name="message_move_to_trash">Przeniesë do wãbórka</string>
|
||||
<string name="message_delete_forever">Rëmni na wiedno</string>
|
||||
<string name="message_restore_success">Wiada òsta przëwróconô z sukcesã</string>
|
||||
<string name="message_delete_success">Wiada òsta rëmniãtô z sukcesã</string>
|
||||
<string name="message_mailbox_type_student">ùczeń</string>
|
||||
<string name="message_mailbox_type_parent">rodzëc</string>
|
||||
<string name="message_mailbox_type_guardian">òpiekùn</string>
|
||||
<string name="message_mailbox_type_employee">robòtnik</string>
|
||||
<string name="message_share">Ùdostãpni</string>
|
||||
<string name="message_print">Drukùj</string>
|
||||
<string name="message_subject">Témat</string>
|
||||
<string name="message_content">Tresc</string>
|
||||
<string name="message_send_successful">Wiada òsta wësłónô z sukcesã</string>
|
||||
<string name="message_not_exists">Wiada nie jistnieje</string>
|
||||
<string name="message_required_recipients">Mùszisz wëbrac bënômni 1 adresata</string>
|
||||
<string name="message_content_min_length">Tresc wiadë mùszi zawierac bënômni 3 znanczi</string>
|
||||
<string name="message_chip_all_mailboxes">Wszëtczé skrzënie</string>
|
||||
<string name="message_chip_only_unread">Leno nieprzeczëtóné</string>
|
||||
<string name="message_chip_only_with_attachments">Leno z lopkama</string>
|
||||
<string name="message_read">Przeczëtónô: %s</string>
|
||||
<string name="message_read_by">Przeczëtónô bez: %1$d z %2$d osób</string>
|
||||
<plurals name="message_number_item">
|
||||
<item quantity="one">%1$d wiada</item>
|
||||
<item quantity="few">%1$d wiadë</item>
|
||||
<item quantity="other">%1$d wiadë</item>
|
||||
</plurals>
|
||||
<plurals name="message_new_items">
|
||||
<item quantity="one">Nowô wiada</item>
|
||||
<item quantity="few">Nowé wiadë</item>
|
||||
<item quantity="other">Nowé wiadë</item>
|
||||
</plurals>
|
||||
<string name="message_restore_dialog">Chcemë le przëwrócyc robòczą wersëją wiadów?</string>
|
||||
<string name="message_restore_dialog_with_recipients">Chcemë le przëwrócyc robòczą wersëją wiadów z adresatama? %s?</string>
|
||||
<plurals name="message_notify_new_items">
|
||||
<item quantity="one">Môsz %1$d nową wiadã</item>
|
||||
<item quantity="few">Môsz %1$d nowé wiadë</item>
|
||||
<item quantity="other">Môsz %1$d nowëch wiadów</item>
|
||||
</plurals>
|
||||
<plurals name="message_selected_messages_count">
|
||||
<item quantity="one">%1$d wëbrónô</item>
|
||||
<item quantity="few">%1$d wëbróné</item>
|
||||
<item quantity="other">%1$d wëbrónëch</item>
|
||||
</plurals>
|
||||
<string name="message_messages_deleted">Wiadë òstałë rëmniãté</string>
|
||||
<string name="message_messages_restored">Przewrócono wiadë</string>
|
||||
<string name="message_mailbox_chooser_title">Wëbierzë skrzënią</string>
|
||||
<string name="message_incognito_mode_on">Trib incognito je włączony</string>
|
||||
<string name="message_incognito_description">Dzãka tribòwi incognito nadôwca nié òbôczi, że przeczëtôł jes ną wiadã</string>
|
||||
<!--Note-->
|
||||
<string name="note_no_items">Ni ma jinfòrmacëjów ò ùwôgach</string>
|
||||
<string name="note_points">Pónktë</string>
|
||||
<plurals name="note_number_item">
|
||||
<item quantity="one">%d ùwôga</item>
|
||||
<item quantity="few">%d ùwôdżi</item>
|
||||
<item quantity="other">%d ùwôgów</item>
|
||||
</plurals>
|
||||
<plurals name="note_new_items">
|
||||
<item quantity="one">Nowô ùwôga</item>
|
||||
<item quantity="few">Nowé ùwôdżi</item>
|
||||
<item quantity="other">Nowé ùwôdżi</item>
|
||||
</plurals>
|
||||
<plurals name="note_notify_new_items">
|
||||
<item quantity="one">Môsz %1$d nową ùwôgã</item>
|
||||
<item quantity="few">Môsz %1$d nowé ùwôdżi</item>
|
||||
<item quantity="other">Môsz %1$d nowëch ùwôgów</item>
|
||||
</plurals>
|
||||
<!--Praise-->
|
||||
<plurals name="praise_number_item">
|
||||
<item quantity="one">%d chwôła</item>
|
||||
<item quantity="few">%d chwałë</item>
|
||||
<item quantity="other">%d chwôłów</item>
|
||||
</plurals>
|
||||
<plurals name="praise_new_items">
|
||||
<item quantity="one">Nowô chwôła</item>
|
||||
<item quantity="few">Nowé chwôłë</item>
|
||||
<item quantity="other">Nowé chwôłë</item>
|
||||
</plurals>
|
||||
<plurals name="praise_notify_new_items">
|
||||
<item quantity="one">Môsz %1$d nową chwôłã</item>
|
||||
<item quantity="few">Môsz %1$d nowé chwôłë</item>
|
||||
<item quantity="other">Môsz %1$d nowëch chwôłów</item>
|
||||
</plurals>
|
||||
<!--Neutral notes-->
|
||||
<plurals name="neutral_note_number_item">
|
||||
<item quantity="one">%d neùtralnô ùwôga</item>
|
||||
<item quantity="few">%d neùtralné ùwôdżi</item>
|
||||
<item quantity="other">%d neùtralnëch ùwôgów</item>
|
||||
</plurals>
|
||||
<plurals name="neutral_note_new_items">
|
||||
<item quantity="one">Nowô neùtralnô ùwôga</item>
|
||||
<item quantity="few">Nowé neùtralné ùwôdżi</item>
|
||||
<item quantity="other">Nowé neùtralné ùwôdżi</item>
|
||||
</plurals>
|
||||
<plurals name="neutral_note_notify_new_items">
|
||||
<item quantity="one">Môsz %1$d nową neùtralną ùwôgã</item>
|
||||
<item quantity="few">Môsz %1$d nowé neùtralné ùwôdżi</item>
|
||||
<item quantity="other">Môsz %1$d nowëch neùtralnëch ùwôgów</item>
|
||||
</plurals>
|
||||
<!--Homework-->
|
||||
<string name="homework_no_items">Ni ma zadaniów dodóm</string>
|
||||
<string name="homework_mark_as_done">Fardëch</string>
|
||||
<string name="homework_mark_as_undone">Nié je fardëch</string>
|
||||
<string name="homework_add">Dodôj Zadanié dodóm</string>
|
||||
<string name="homework_add_success">Zadanié dodóm dodóné z sukcesã</string>
|
||||
<string name="homework_delete_success">Zadanié dodóm rëmniãté z sukcesã</string>
|
||||
<string name="homework_attachments">Lópk</string>
|
||||
<plurals name="homework_notify_new_item_title">
|
||||
<item quantity="one">Nowé zadanié dodóm</item>
|
||||
<item quantity="few">Nowé zadania dodóm</item>
|
||||
<item quantity="other">Nowé zadania dodóm</item>
|
||||
</plurals>
|
||||
<plurals name="homework_notify_new_item_content">
|
||||
<item quantity="one">Môsz %d nowé zadania dodóm</item>
|
||||
<item quantity="few">Môsz %d nowé zadania dodóm</item>
|
||||
<item quantity="other">Môsz %d nowëch zadaniów dodóm</item>
|
||||
</plurals>
|
||||
<plurals name="homework_number_item">
|
||||
<item quantity="one">%d zadanié dodóm</item>
|
||||
<item quantity="few">%d zadania dodóm</item>
|
||||
<item quantity="other">%d zadaniów dodóm</item>
|
||||
</plurals>
|
||||
<!--Lucky number-->
|
||||
<string name="lucky_number_title">Szczestlëwi numerk</string>
|
||||
<string name="lucky_number_header">Dzysészim szczestlëwim numerkã je</string>
|
||||
<string name="lucky_number_empty">Ni ma jinfòrmacëjów ò szczestlëwim numerkù</string>
|
||||
<string name="lucky_number_notify_new_item_title">Szczestlëwi numerk na dzysô</string>
|
||||
<string name="lucky_number_notify_new_item">Dzysészim szczestlëwim numerkã je: %s</string>
|
||||
<string name="lucky_number_history_button">Pòkôżë historëją</string>
|
||||
<!--Lucky number history-->
|
||||
<string name="lucky_number_history_title">Historijô numerków</string>
|
||||
<string name="lucky_number_history_empty">Ni ma jinfòrmacëjów ò szczestlëwich numerkach</string>
|
||||
<!--Mobile devices-->
|
||||
<string name="mobile_devices_title">Przëstãp mòbilny</string>
|
||||
<string name="mobile_devices_no_items">Ni ma ùrządzeniów</string>
|
||||
<string name="mobile_devices_unregister">Wërejestruj</string>
|
||||
<string name="mobile_device_removed">Ùrządzenié òstało rëmniãté</string>
|
||||
<string name="mobile_device_qr">Kòd QR</string>
|
||||
<string name="mobile_device_token">Token</string>
|
||||
<string name="mobile_device_symbol">Symbol</string>
|
||||
<string name="mobile_device_pin">PIN</string>
|
||||
<!--School and teachers-->
|
||||
<string name="schoolandteachers_title">Szkòła i szkólny</string>
|
||||
<!--School-->
|
||||
<string name="school_title">Szkòła</string>
|
||||
<string name="school_no_info">Ni ma jinfòrmacëjów ò szkòle</string>
|
||||
<string name="school_name">Pòzwa szkòłë</string>
|
||||
<string name="school_address">Adresa szkòłë</string>
|
||||
<string name="school_telephone">Telefòn</string>
|
||||
<string name="school_headmaster">Miono i nôzwëskò direktóra</string>
|
||||
<string name="school_pedagogue">Miono i nôzwëskò pedagóga</string>
|
||||
<string name="school_address_button">Pòkôżë na kôrce</string>
|
||||
<string name="school_telephone_button">Zazwòni</string>
|
||||
<!--Teacher-->
|
||||
<string name="teachers_title">Szkólny</string>
|
||||
<string name="teacher_no_items">Ni ma jinfòrmacëjów ò szkólnëch</string>
|
||||
<string name="teacher_no_subject">Ni ma zajmë</string>
|
||||
<!--Conference-->
|
||||
<string name="conferences_title">Zéńdzenia</string>
|
||||
<string name="conference_no_items">Ni ma jinfòrmacëjów ò zéńdzeniach</string>
|
||||
<plurals name="conference_number_item">
|
||||
<item quantity="one">%d zéńdzenié</item>
|
||||
<item quantity="few">%d zéńdzenia</item>
|
||||
<item quantity="other">%d zéńdzeniów</item>
|
||||
</plurals>
|
||||
<plurals name="conference_notify_new_item_title">
|
||||
<item quantity="one">Nowé zéńdzenie</item>
|
||||
<item quantity="few">Nowé zéńdzenia</item>
|
||||
<item quantity="other">Nowé zéńdzenia</item>
|
||||
</plurals>
|
||||
<plurals name="conference_notify_new_items">
|
||||
<item quantity="one">Môsz %1$d nowé zéńdzenié</item>
|
||||
<item quantity="few">Môsz %1$d nowé zéńdzenia</item>
|
||||
<item quantity="other">Môsz %1$d nowëch zéńdzeniów</item>
|
||||
</plurals>
|
||||
<string name="conferences_present">Òbecnosc na zéńdzenim</string>
|
||||
<string name="conference_agenda">Agenda</string>
|
||||
<string name="conference_place">Plac</string>
|
||||
<string name="conference_topic">Témat</string>
|
||||
<!--Director information-->
|
||||
<string name="school_announcement_title">Szkòlowi ògłos</string>
|
||||
<string name="school_announcement_no_items">Ni ma szkòlowich ògłosów</string>
|
||||
<plurals name="school_announcement_number_item">
|
||||
<item quantity="one">%d szkòlowi ògłos</item>
|
||||
<item quantity="few">%d szkòlowé ògłosë</item>
|
||||
<item quantity="other">%d szkòlowich ògłosów</item>
|
||||
</plurals>
|
||||
<plurals name="school_announcement_notify_new_item_title">
|
||||
<item quantity="one">%d Nowi szkòlowi ògłos</item>
|
||||
<item quantity="few">%d Nowé szkòlowé ògłosë</item>
|
||||
<item quantity="other">%d Nowé szkòlowé ògłosë</item>
|
||||
</plurals>
|
||||
<plurals name="school_announcement_notify_new_items">
|
||||
<item quantity="one">Môsz %1$d nowi szkòlowi ògłos</item>
|
||||
<item quantity="few">Môsz %1$d nowé szkòlowé ògłosë</item>
|
||||
<item quantity="other">Môsz %1$d nowëch szkòlowich ògłosów</item>
|
||||
</plurals>
|
||||
<!--Account-->
|
||||
<string name="account_add_new">Dodôj kònto</string>
|
||||
<string name="account_logout">Wëlogùj sã</string>
|
||||
<string name="account_confirm">Chcemë le wëlogòwac tegò ùcznia?</string>
|
||||
<string name="account_logout_student">Wëlogòwanié ùcznia</string>
|
||||
<string name="account_type_student">Kònto ùcznia</string>
|
||||
<string name="account_type_parent">Rodzëcelsczé kònto</string>
|
||||
<string name="account_details_edit">Edituj dane</string>
|
||||
<string name="account_quick_manager">Czerownik kòntów</string>
|
||||
<string name="account_select_student">Wëbierzë ùcznia</string>
|
||||
<string name="account_family">Rodzëzna</string>
|
||||
<string name="account_contact">Kòntakt</string>
|
||||
<string name="account_address">Adresowé dane</string>
|
||||
<string name="account_personal_data">Òsobòwé dane</string>
|
||||
<!--About-->
|
||||
<string name="about_version">Wersëjô aplikacëje</string>
|
||||
<string name="about_contributor">Wkłôdôrze</string>
|
||||
<string name="about_contributor_summary">Lësta programistów Wùlkanowégò</string>
|
||||
<string name="about_feedback">Zgłosë błãd</string>
|
||||
<string name="about_feedback_summary">Wëslë zgłoszenié ò błãdze bez e-mail</string>
|
||||
<string name="about_faq">FAQ</string>
|
||||
<string name="about_faq_summary">Òbôczë nôczãscy zadawóné pëtania</string>
|
||||
<string name="about_discord">Serwer Discord</string>
|
||||
<string name="about_discord_summary">Dołączë do spòlëznë Wùlkanowégò</string>
|
||||
<string name="about_facebook">Fanpage na Facebookù</string>
|
||||
<string name="about_twitter">Starna na Twitterze</string>
|
||||
<string name="about_twitter_summary">Szlachùj nas na Twitterze</string>
|
||||
<string name="about_facebook_summary">Pòlub najégò fanpage na Facebookù</string>
|
||||
<string name="about_privacy">Pòlitëka priwatnoscë</string>
|
||||
<string name="about_privacy_summary">Regle zbieraniégò òsobòwëch danëch</string>
|
||||
<string name="about_system">Systemòwé nastôwë</string>
|
||||
<string name="about_system_summary">Òdemkni systemòwé nastôwë</string>
|
||||
<string name="about_homepage">Domôcô starna</string>
|
||||
<string name="about_homepage_summary">Òdwiedzë starnã i pòmòżë rozwijac aplikacëją</string>
|
||||
<string name="about_licenses">Licencëje</string>
|
||||
<string name="about_licenses_summary">Licencëje ùżitëch biblijotéków w aplikacëje</string>
|
||||
<!--Licenses-->
|
||||
<string name="license_dialog_title">Licencëjô</string>
|
||||
<!--Contributor-->
|
||||
<string name="contributor_avatar_description">Awatar</string>
|
||||
<string name="contributor_see_more">Òbôczë wicy na GitHub</string>
|
||||
<!--Student info-->
|
||||
<string name="student_info_empty">Ni ma jinfòrmacëjów ò ùczniu abò rodzëznie ùcznia</string>
|
||||
<string name="student_info_first_name">Miono</string>
|
||||
<string name="student_info_second_name">Drëdżé miono</string>
|
||||
<string name="student_info_gender">Płoc</string>
|
||||
<string name="student_info_polish_citizenship">Pòlsczé òbëwatelstwò</string>
|
||||
<string name="student_info_family_name">Rodné nazwëskò</string>
|
||||
<string name="student_info_parents_name">Miono òjca i mùterczi</string>
|
||||
<string name="student_info_phone">Telefòn</string>
|
||||
<string name="student_info_cellphone">Mòbilk</string>
|
||||
<string name="student_info_email">Adresa e-mail</string>
|
||||
<string name="student_info_address">Adresa zamieszkaniô</string>
|
||||
<string name="student_info_registered_address">Adresa zameldowaniô</string>
|
||||
<string name="student_info_correspondence_address">Adresa kòrespòndencëjnë</string>
|
||||
<string name="student_info_full_name">Nôzwëskò ë miono</string>
|
||||
<string name="student_info_kinship">Stopień pòkrëwieństwa</string>
|
||||
<string name="student_info_guardian_address">Adresa</string>
|
||||
<string name="student_info_phones">Telefònë</string>
|
||||
<string name="student_info_male">Chłop</string>
|
||||
<string name="student_info_female">Białka</string>
|
||||
<string name="student_info_last_name">Nôzwëskò</string>
|
||||
<string name="student_info_guardian">Òpiekùn</string>
|
||||
<!--Account edit-->
|
||||
<string name="account_edit_nick_hint">Pòzwa</string>
|
||||
<string name="account_edit_header">Dodôj Pòzwã</string>
|
||||
<string name="account_edit_avatar_title">Wëbierzë farwã profilowégò</string>
|
||||
<!--Log viewer-->
|
||||
<string name="logviewer_share">Ùdostãpni logi</string>
|
||||
<string name="logviewer_refresh">Òdswieżë</string>
|
||||
<!--Dashboard-->
|
||||
<string name="dashboard_timetable_title">Ùczbë</string>
|
||||
<string name="dashboard_timetable_title_tomorrow">(Witro)</string>
|
||||
<string name="dashboard_timetable_title_today_and_tomorrow">(Dzysô i witro)</string>
|
||||
<string name="dashboard_timetable_first_lesson_title_moment">Za chwilã:</string>
|
||||
<string name="dashboard_timetable_first_lesson_title_soon">Wnetka:</string>
|
||||
<string name="dashboard_timetable_first_lesson_title_first">Pierszi:</string>
|
||||
<string name="dashboard_timetable_first_lesson_title_now">Terô:</string>
|
||||
<string name="dashboard_timetable_second_lesson_value_end">Kùńc ùczbë</string>
|
||||
<string name="dashboard_timetable_second_lessons_title">Pòstãpno:</string>
|
||||
<string name="dashboard_timetable_third_title">Pòzdze:</string>
|
||||
<plurals name="dashboard_timetable_third_value">
|
||||
<item quantity="one">Jesz %1$d ùczba</item>
|
||||
<item quantity="few">Jesz %1$d ùczbë</item>
|
||||
<item quantity="other">Jesz %1$d ùczbów</item>
|
||||
</plurals>
|
||||
<string name="dashboard_timetable_third_time">do %1$s</string>
|
||||
<string name="dashboard_timetable_no_lessons">Felënk przińdłich ùczbów</string>
|
||||
<string name="dashboard_timetable_error">Wëstąpił błãd òbczas ładowaniô ùczbë</string>
|
||||
<string name="dashboard_homework_title">Zadanié dodóm</string>
|
||||
<string name="dashboard_homework_no_homework">Ni ma zadaniów dodóm do przërëchtowaniô</string>
|
||||
<string name="dashboard_homework_error">Wëstąpił błãd òbczas ładowaniô zadaniégò dodóm</string>
|
||||
<plurals name="dashboard_homework_more">
|
||||
<item quantity="one">Jesz %1$d zadanié dodóm</item>
|
||||
<item quantity="few">Jesz %1$d zadaniów dodóm</item>
|
||||
<item quantity="other">Jesz %1$d zadaniów dodóm</item>
|
||||
</plurals>
|
||||
<string name="dashboard_homework_time">do %1$s</string>
|
||||
<string name="dashboard_grade_title">Slédné taksë</string>
|
||||
<string name="dashboard_grade_no_grade">Ni ma nowëch taksów</string>
|
||||
<string name="dashboard_grade_error">Wëstąpił błãd òbczas ładowaniô taksów</string>
|
||||
<string name="dashboard_announcements_title">Szkòlowé ògłosë</string>
|
||||
<string name="dashboard_announcements_no_announcements">Ni ma aktualnëch ògłosów</string>
|
||||
<string name="dashboard_announcements_error">Wëstąpił błãd òbczas ładowaniô ògłosów</string>
|
||||
<plurals name="dashboard_announcements_more">
|
||||
<item quantity="one">Jesz %1$d ògłos</item>
|
||||
<item quantity="few">Jesz %1$d ògłosë</item>
|
||||
<item quantity="other">Jesz %1$d ògłosów</item>
|
||||
</plurals>
|
||||
<string name="dashboard_exams_title">Testë</string>
|
||||
<string name="dashboard_exams_no_exams">Felënk przińdłich testów</string>
|
||||
<string name="dashboard_exams_error">Wëstąpił błãd òbczas ładowaniô testów</string>
|
||||
<plurals name="dashboard_exams_more">
|
||||
<item quantity="one">Jesz %1$d test</item>
|
||||
<item quantity="few">Jesz %1$d testë</item>
|
||||
<item quantity="other">Jesz %1$d testów</item>
|
||||
</plurals>
|
||||
<string name="dashboard_conferences_title">Zéńdzenia</string>
|
||||
<string name="dashboard_conferences_no_conferences">Ni ma przińdłich zéńdzeniów</string>
|
||||
<string name="dashboard_conferences_error">Wëstąpił błãd òbczas ładowaniô zéńdzeniów</string>
|
||||
<plurals name="dashboard_conference_more">
|
||||
<item quantity="one">Jesz %1$d dodôtkòwé zéńdzenié</item>
|
||||
<item quantity="few">Jesz %1$d dodôtkòwé zéńdzenia</item>
|
||||
<item quantity="other">Jesz %1$d zéńdzeniów</item>
|
||||
</plurals>
|
||||
<string name="dashboard_horizontal_group_error">Wëstąpił błãd òbczas ładowaniô danëch</string>
|
||||
<string name="dashboard_horizontal_group_no_data">Niżôdny</string>
|
||||
<!--Error dialog-->
|
||||
<string name="dialog_error_check_update">Sprôwdzë dostãpnosc aktualizacëjów</string>
|
||||
<string name="dialog_error_check_update_message">Przed zgłoszenim błãdu sprôwdzë wczesny czë dostãpnô je ju aktualizacëjô z pòprôwką błãdu</string>
|
||||
<!--Generic-->
|
||||
<string name="all_content">Tresc</string>
|
||||
<string name="all_retry">Pònowi</string>
|
||||
<string name="all_description">Òpisënk</string>
|
||||
<string name="all_no_description">Felënk òpisënkù</string>
|
||||
<string name="all_teacher">Szkólny</string>
|
||||
<string name="all_date">Data</string>
|
||||
<string name="all_entry_date">Data wpisënkù</string>
|
||||
<string name="all_color">Farwa</string>
|
||||
<string name="all_details">Detale</string>
|
||||
<string name="all_category">Kategòrijô</string>
|
||||
<string name="all_close">Zamkni</string>
|
||||
<string name="all_no_data">Ni ma danëch</string>
|
||||
<string name="all_subject">Témat</string>
|
||||
<string name="all_prev">Slédny</string>
|
||||
<string name="all_next">Pòstãpny</string>
|
||||
<string name="all_search">Szëkôj</string>
|
||||
<string name="all_search_hint">Szëkôj…</string>
|
||||
<string name="all_yes">Jo</string>
|
||||
<string name="all_no">Nié</string>
|
||||
<string name="all_save">Zapiszë</string>
|
||||
<string name="all_title">Titel</string>
|
||||
<string name="all_add">Dodôj</string>
|
||||
<string name="all_copied">Òstało skòpiérowóné</string>
|
||||
<string name="all_undo">Cofni</string>
|
||||
<string name="all_change">Zmieni</string>
|
||||
<string name="all_add_to_calendar">Dodôj do kaléndarzu</string>
|
||||
<string name="all_cancel">Anuluj</string>
|
||||
<!--Timetable Widget-->
|
||||
<string name="widget_timetable_no_items">Ni ma ùczbów</string>
|
||||
<string name="widget_timetable_last_synchronization">Zsynchronizowóno %1$s ò %2$s</string>
|
||||
<string name="widget_timetable_theme_title">Wëbierzë témã</string>
|
||||
<string name="widget_timetable_theme_light">Jôsny</string>
|
||||
<string name="widget_timetable_theme_dark">Cemny</string>
|
||||
<string name="widget_timetable_theme_system">Systemòwô téma</string>
|
||||
<!--Preferences-->
|
||||
<string name="pref_view_header">Aplikacëjô</string>
|
||||
<string name="pref_view_list">Domëslny pòzdrzatk</string>
|
||||
<string name="pref_view_grade_average_mode">Nastôwë òbliczony strzédny</string>
|
||||
<string name="pref_view_grade_average_force_calc">Wëmùszë òbliczenié strzédny bez aplikacëją</string>
|
||||
<string name="pref_view_present">Pòkôżë bëtnosc</string>
|
||||
<string name="pref_attendance_target">Docélowô bëtnosc</string>
|
||||
<string name="pref_attendance_calculator_show_empty_subjects">Pòkôżë témë bez frekwencji</string>
|
||||
<string name="pref_view_attendance_calculator_sorting_mode">Zortowanié kalkulatora bëtnoscë</string>
|
||||
<string name="pref_view_app_theme">Téma</string>
|
||||
<string name="pref_view_expand_grade">Rozwijanié taksów</string>
|
||||
<string name="pref_view_timetable_show_groups">Pòkazuj karno kòl zajmë</string>
|
||||
<string name="pref_view_timetable_show_additional_lessons">Pòkôżë dodatkòwé ùczbë</string>
|
||||
<string name="pref_view_timetable_show_gaps">Pòkôzuj pùsté kachle gdze ni ma ùczbów</string>
|
||||
<string name="pref_view_grade_statistics_list">Pòkôżë lëstã nacéchùnków w klasowich taksach</string>
|
||||
<string name="pref_view_subjects_without_grades">Pòkôżë zajmë bez taksów</string>
|
||||
<string name="pref_view_grade_color_scheme">Schemat farwów taksów</string>
|
||||
<string name="pref_view_grade_sorting_mode">Zortowanié zajmów</string>
|
||||
<string name="pref_view_app_language">Jãzëk</string>
|
||||
<string name="pref_view_menu_order_title">Kònfigùracëjô menu</string>
|
||||
<string name="pref_view_menu_order_summary">Ùstôw kòlejnosc fónkcëje w menu</string>
|
||||
<string name="pref_notify_header">Wiadła</string>
|
||||
<string name="pref_notify_header_other">Jiné</string>
|
||||
<string name="pref_notify_switch">Pòkôżë wiadła</string>
|
||||
<string name="pref_notify_upcoming_lessons_switch">Pòkôżë wiadła ò przińdłich ùczbach</string>
|
||||
<string name="pref_notify_upcoming_lessons_persistent_switch">Ùstawi wiadło ò przińdłi ùczbie jakò trwałé</string>
|
||||
<string name="pref_notify_upcoming_lessons_persistent_summary">Wëłączë ga wiadła nie pòkazëją sã na twòjim zégarkù/òpasce</string>
|
||||
<string name="pref_notify_open_system_settings">Òdemkô systemòwé nastôwë wiadłów</string>
|
||||
<string name="pref_notify_fix_sync_issues">Naprawi tôkle z synchronizacëją i wiadłama</string>
|
||||
<string name="pref_notify_fix_sync_issues_message">Na twòjim ùrządzeniu mògą sã pòkôzywac tôkle z synchronizacëją danëch i wiadłama.\n\nBë je naprawic, dodôj Wùlkanowégò do aùtostartu i wëłączë òptimalizacëją/òszczãdzanié baterije w nastôwach systemòwëch mòbilkù.</string>
|
||||
<string name="pref_notify_debug_switch">Pòkôżë debùgòwanié wiadła</string>
|
||||
<string name="pref_notify_disabled_summary">Synchronizacja je wëłączonô</string>
|
||||
<string name="pref_notify_notifications_piggyback_header">Wiadła òficjalny aplikacëje</string>
|
||||
<string name="pref_notify_notifications_piggyback">Przechwatiwanié wiadłów òficjalny aplikacëje</string>
|
||||
<string name="pref_notify_notifications_piggyback_cancel_original">Rëmni wiadła òficjalny aplikacëje pò przechwôceniu</string>
|
||||
<string name="pref_notification_piggyback_popup_title">Przechwatiwanié wiadłów</string>
|
||||
<string name="pref_notification_piggyback_popup_description">Dzãka ti òpcje mòżesz zwëskac erzac pòwiadomieniów push tak jak w òficjalny aplikacje. Do tegò brëkùjesz ùdzelëc pòzwòleniégò na dostôwanié wszëtczich pòwiadomieniów w systémòwëch nastawach.\n\nJak to dzejô?\nCzedë Dziennik VULCAN wësle do cebie pòwiadomienié, Wulkanowy je òdbierze (do te brëkòwné są te dodôwkòwé pòzwòlenia), a tak ùrëszni synchronizacją, dzãka chtërny bãdze mógł wësłac swòje gwôsné pòwiadomienié.\n\nLENO DLÔ ZAAWANSOWÓNËCH BRËKÒWNIKÓW</string>
|
||||
<string name="pref_notification_exact_alarm_popup_title">Wiadła ò przińdłich ùczbach</string>
|
||||
<string name="pref_notification_exact_alarm_popup_descriptions">Mùszisz zezwòlëc Wùlkanowémù na twòrzenié alarmów i przëpòmnieniów w nastôwach Twòjégò systemù, abë ùżic ti fónkcje.</string>
|
||||
<string name="pref_notification_go_to_settings">Jidzë do nastôwów</string>
|
||||
<string name="pref_services_header">Synchronizacja</string>
|
||||
<string name="pref_services_switch">Automaticznô aktulizacëja</string>
|
||||
<string name="pref_services_suspended">Wstrzëmónô òbczas wakacjów</string>
|
||||
<string name="pref_services_interval">Jinterwôł aktualizacëjów</string>
|
||||
<string name="pref_services_wifi">Leno Wi-Fi</string>
|
||||
<string name="pref_services_force_sync">Synchronizuj terô</string>
|
||||
<string name="pref_services_message_sync_success">Zsynchronizowóno!</string>
|
||||
<string name="pref_services_message_sync_failed">Synchronizacëjô sã nié ùda</string>
|
||||
<string name="pref_services_sync_in_progress">Synchronizacëjô w tokù</string>
|
||||
<string name="pref_services_last_full_sync_date">Òstatniô fùl synchronizacëjô: %s</string>
|
||||
<string name="pref_other_grade_modifier_plus">Wôrtnosc plusa</string>
|
||||
<string name="pref_other_grade_modifier_minus">Wôrtnosc minusa</string>
|
||||
<string name="pref_other_fill_message_content">Òdpòwiadôj z historëją wiadów</string>
|
||||
<string name="pref_other_optional_arithmetic_average">Licz strzédną aritmeticzną, ga niżôdnô taksa ni ma wôdżi</string>
|
||||
<string name="pref_other_incognito_mode">Trib incognito</string>
|
||||
<string name="pref_other_incognito_mode_summary">Nie jinfòrmùj ò przeczëtaniu wiadë</string>
|
||||
<string name="pref_ads_support_category_name">Wspiarcé</string>
|
||||
<string name="pref_ads_privacy_policy">Pòlitëka priwatnoscë</string>
|
||||
<string name="pref_ads_agreements">Zgòdë</string>
|
||||
<string name="pref_ads_consent">Pòkôżë zgòdã na òbrabianié danëch</string>
|
||||
<string name="pref_ads_show_in_app">Pòkôżë reklamë w aplikacëje</string>
|
||||
<string name="pref_ads_support">Òbezdrzë jedurną reklamã, bë wesprzec projekt</string>
|
||||
<string name="pref_ads_privacy_title">Zgòdã na przerôbianié danëch</string>
|
||||
<string name="pref_ads_privacy_description">Abë òbézdrzëc reklamã, mùszisz sã zgòdzyc na warënczi przerôbianiégò danëch zawôrtë w naszi Pòlitëce Priwatnoscë</string>
|
||||
<string name="pref_ads_privacy_agree">Zgôdzóm sã</string>
|
||||
<string name="pref_ads_privacy_link">Pòlitëka priwatnoscë</string>
|
||||
<string name="pref_ads_loading">Reklama sã ładuje</string>
|
||||
<string name="pref_ads_once_per_visit">Dzãkùjemë za wspiarcé, wrócë pózdni pò wicy reklamów</string>
|
||||
<string name="pref_settings_advanced_title">Zaawansowóné</string>
|
||||
<string name="pref_settings_appearance_title">Wëzdrzatk i zachòwanié</string>
|
||||
<string name="pref_settings_notifications_title">Wiadła</string>
|
||||
<string name="pref_settings_sync_title">Synchronizacëjô</string>
|
||||
<string name="pref_settings_ads_title">Reklamë</string>
|
||||
<string name="pref_grades_appearance_header">Taksë</string>
|
||||
<string name="pref_dashboard_appearance_header">Doma</string>
|
||||
<string name="pref_dashboard_appearance_tiles_title">Widocznosc kachlów</string>
|
||||
<string name="pref_attendance_appearance_view">Frekwencjô</string>
|
||||
<string name="pref_attendance_calculator_appearance_view">Kalkùlator frekwencëje</string>
|
||||
<string name="pref_attendance_calculator_appearance_settings_title">Nastôwë</string>
|
||||
<string name="pref_timetable_appearance_view">Plan zajmów</string>
|
||||
<string name="pref_grades_advanced_header">Taksë</string>
|
||||
<string name="pref_counted_average_advanced_header">Òbliczonô strzédna</string>
|
||||
<string name="pref_messages_advanced_header">Wiadë</string>
|
||||
<string name="pref_appearance_category">Wëzdrzatk i zachòwanié</string>
|
||||
<string name="pref_appearance_category_summary">Jãzëczi, témë, zortowanié témów</string>
|
||||
<string name="pref_notifications_category_summary">Wiadła aplikacëje, naprawianié tôklów</string>
|
||||
<string name="pref_notifications_category">Wiadła</string>
|
||||
<string name="pref_sync_category">Synchronizacëjô</string>
|
||||
<string name="pref_sync_category_summary">Aùtomaticznô aktualizacëjô, jinterwôł synchronizacëje</string>
|
||||
<string name="pref_advanced_category_summary">Wôrtnoscë plusa i minusa, òbliczanié strzédny</string>
|
||||
<string name="pref_advanced_category">Zaawansowóné</string>
|
||||
<string name="pref_about_category_summary">Wersëjô aplikacëje, twórcë, spòlëznowé media</string>
|
||||
<string name="pref_ads_category_summary">Wëswietlanié reklamów, wspiarcé projektu</string>
|
||||
<!--Notification Channels-->
|
||||
<string name="channel_new_grades">Nowé taksë</string>
|
||||
<string name="channel_new_homework">Nowé zadanié dodóm</string>
|
||||
<string name="channel_new_conference">Nowé zéńdzenia</string>
|
||||
<string name="channel_new_exam">Nowé testë</string>
|
||||
<string name="channel_lucky_number">Szczestlëwi numerk</string>
|
||||
<string name="channel_new_message">Nowé wiadë</string>
|
||||
<string name="channel_new_notes">Nowé ùwôdżi</string>
|
||||
<string name="channel_new_school_announcement">Nowé szkòlowé ògłosë</string>
|
||||
<string name="channel_push">Wiadła push</string>
|
||||
<string name="channel_upcoming_lessons">Przińdłé ùczbë</string>
|
||||
<string name="channel_debug">Debùgòwanié</string>
|
||||
<string name="channel_change_timetable">Pòzmianë planu zajmów</string>
|
||||
<string name="channel_new_attendance">Nowô frekwencjô</string>
|
||||
<!--Colors-->
|
||||
<string name="all_black">Czôrny</string>
|
||||
<string name="all_red">Czerwiony</string>
|
||||
<string name="all_blue">Mòdri</string>
|
||||
<string name="all_green">Zelony</string>
|
||||
<string name="all_purple">Lilewi</string>
|
||||
<string name="all_empty_color">Felënk farwë</string>
|
||||
<!--Update helper-->
|
||||
<string name="update_download_started">Ładowanié aktualizacëje òstało zôczãté…</string>
|
||||
<string name="update_download_success">Aktualizacëjô prawie òsta załadowónô.</string>
|
||||
<string name="update_download_success_button">Restartuj</string>
|
||||
<string name="update_failed">Aktualizacëjô sã nié pòwiodła! Wùlkanowi mòże nie dzejac richtic. Rozważë aktualizacëjã</string>
|
||||
<!--Menu order-->
|
||||
<string name="menu_order_confirm_title">Restartuj aplikacëjã</string>
|
||||
<string name="menu_order_confirm_content">Żebë zmianë sã zapisałë, aplikacëjô mùszi sã zrestartowac</string>
|
||||
<string name="menu_order_confirm_restart">Restartuj</string>
|
||||
<!--Auth-->
|
||||
<string name="auth_api_error">Autorizacëjô òsta òdrzëconô. Dane chtërne bëłë dóné są niezgòdné z danyma w sekretariace.</string>
|
||||
<string name="auth_invalid_error">Złi PESEL</string>
|
||||
<string name="auth_pesel">PESEL</string>
|
||||
<string name="auth_button">Pòcwierdzë</string>
|
||||
<string name="auth_success">Autorizacëjô skùńczonô z sukcesã</string>
|
||||
<string name="auth_title">Autorizacëjô</string>
|
||||
<string name="auth_description">Drodżi Rodzëcu,<br /><br />Żebë pòcwierdzëc a zagwësnic bezpiek dónëch, prosëmë ò wpisanié niżi numru PESEL ùczni <b>%1$s</b>. Taczé detale są brëkòwné dlô pòprawnégò przedzéleniô przistãpù a téż òbarnë personowëch dónëch zgódno z òbrzesziwającyma reglama.<br /><br />Pò wprowadzenim dónëch, òstóną òne sprôwdzoné, żebë ùgwësnic sã czë przistãp do systémù VULCAN je przëznôwóny leno ùprôwnionym òsobóm. W przëtrôfkù jaczich le wątplëwòtów a tôklów, w célu wëwidnieniô stojiznë skòntaktuj sã ze administracją w szkòle.<br /><br />Ùtrzimiwómë nôwëższé sztandardë òbarnë personowëch dónëch, a garantérëjemë że wszëtczé pòdôwóné jinfòrmacje są w bezpiekù. Aplikacjô Wulkanowy nie przetrzimiwô ani nie przerôbiô numru PESEL.<br /><br />Przëbôcziwómë, że pòdanié fùlnëch a prôwdzëwëch dónëch je òbrzészkòwé a brëkòwné żebë ùżëwac systémù VULCAN.</string>
|
||||
<string name="auth_button_skip">Timczasã pòmiń</string>
|
||||
<!--Captcha-->
|
||||
<string name="captcha_dialog_title">Starna dzénnika VULCAN wëmôga werëfikacëji</string>
|
||||
<string name="captcha_dialog_description"><b>Dlôcze to widzã?</b>\n Jinternetowô starna dzénnika, z chtërny Wùlkanowy ładuje dabe, wëswietlô ną samą ekranã jak wëżi, tej Wùlkanowy téż mùszi ją pòkôzac, zebë móc załadowac dane z ny starnë. Niémòżnô tegò òbéńc</string>
|
||||
<string name="captcha_verified_message">Zwerëfikòwóno z sukcesã</string>
|
||||
<!--Panic mode-->
|
||||
<string name="panic_mode_title">Awarëjné dostãp</string>
|
||||
<!--Errors-->
|
||||
<string name="error_no_internet">Felënk sparłãczëniô z jinternetã</string>
|
||||
<string name="error_invalid_device_datetime">Wëstąpił błãd. Sprôwdzë twòji ùrządzenia</string>
|
||||
<string name="error_account_inactive">Kònto je niéaktywné. Spróbùj zalogòwac sã pònowno</string>
|
||||
<string name="error_timeout">Nie ùdało sã sparłãczëc z dzénnika. Serwerë mògą bëc przecyżoné. Spróbùj pònowno pózdni</string>
|
||||
<string name="error_login_failed">Ładowanié pòdôwków skùńczoné niezdarã. Proszã spróbòwac znowù pòzdze</string>
|
||||
<string name="error_password_invalid">Twòjô parola zgôsłô abò òsta zmienionô. Zalogùj sã pònowno</string>
|
||||
<string name="error_password_change_required">Wëmôgô zmienic parolã do dzénnika</string>
|
||||
<string name="error_service_unavailable">Trwô technicznô przerwa dzénnika UONET+. Spróbùj pònowno pózdni</string>
|
||||
<string name="error_unknown_uonet">Nieznóné błãd dzénnika UONET+. Spróbùj znowù pòzdze</string>
|
||||
<string name="error_unknown_app">Nieznóné błãd aplikacëji. Proszã spróbòwac znowù pòzdze</string>
|
||||
<string name="error_cloudflare_captcha">Brekòwóna werëfikacëja captcha</string>
|
||||
<string name="error_unknown">Wëstąpił nieżdónié błãd</string>
|
||||
<string name="error_feature_disabled">Funkcëjô je wëłączona przez twòją szkòłã</string>
|
||||
<string name="error_feature_not_available">Funkcëjô nie je dostąpnô. Zalogùj sã w jinszim tribie nigle Móbilné API</string>
|
||||
<string name="error_field_required">To pòle je brekòwané</string>
|
||||
<!-- Mute system -->
|
||||
<string name="message_mute">Wëcëszenié</string>
|
||||
<string name="message_unmute">Wëłączë wëcëszenié</string>
|
||||
<string name="message_mute_success">Wëcësził jes tegò brëkòwnika</string>
|
||||
<string name="message_unmute_success">Wëłącził jes wëcëszenié tegò brëkòwnika</string>
|
||||
<!--End-->
|
||||
<string name="end_title">Koniec Wulkanowego</string>
|
||||
<string name="end_message">Jak zapewne niektórzy z Was się domyślali zbliża się ten moment, aby zakończyć pewien etap. Wraz z końcem tego roku szkolnego zamykamy projekt Wulkanowy. Stworzenie apki było ekscytującym wyzwaniem, ale skala projektu jest tak duża, że nie jesteśmy w stanie odpowiedzialnie utrzymywać aplikacji. Wulkanowy był fajną przygodą, ale sytuacja wymknęła się nam spod kontroli – zarówno pod względem technicznym, jak i społecznym. Nie akceptujemy pojawiającego się hejtu wobec nas ani wobec innych, także Vulcana. Nie chcemy brać udziału w tych działaniach i być z nimi utożsamiani. Prosimy Was o powściągliwość i rozwagę w publikowanych komentarzach i nieprzekraczanie dopuszczalnych granic.<br /><br />Prosimy Was też o uszanowanie naszej decyzji, jest ona przemyślana i ostateczna. Wszystkim dotychczasowym użytkownikom Wulkanowego rekomendujemy użycie oficjalnej aplikacji <a href=\"https://play.google.com/store/apps/details?id=pl.edu.vulcan.hebe&hl=pl\">Dzienniczek VULCAN</a>. Jeszcze raz dziękujemy wszystkim użytkownikom za lata wsparcia, pomoc i miłe słowa!</string>
|
||||
</resources>
|
@ -1,21 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="pref_mod_settings_title">Hidden settings</string>
|
||||
<string name="pref_hidden_settings_attendance_percentage">Attendance percentage</string>
|
||||
<string name="pref_hidden_settings_hidden_grades">Hide grades</string>
|
||||
<string name="pref_mod_settings_hidden_attendance_items">Hidden attendance items</string>
|
||||
<string name="pref_mod_settings_show_notes">Show notes</string>
|
||||
|
||||
<string-array name="mod_settings_attendance_entries">
|
||||
<item>Unexcused absence</item>
|
||||
<item>Exemption</item>
|
||||
<item>Excused lateness</item>
|
||||
<item>Unexcused lateness</item>
|
||||
<item>Present</item>
|
||||
<item>Deleted</item>
|
||||
<item>Excused absence</item>
|
||||
<item>Unknown</item>
|
||||
</string-array>
|
||||
<string name="pref_mod_settings_developer_mode">Developer mode (access to this page)</string>
|
||||
<string name="pref_mod_settings_developer_mode_summary">After disabling this setting, you will not be able to access this page anymore, but the settings will still be applied.</string>
|
||||
</resources>
|
@ -1,758 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<!--Activity/Fragment title-->
|
||||
<string name="login_title">Login</string>
|
||||
<string name="main_title">Wulkanowy</string>
|
||||
<string name="grade_title">Grades</string>
|
||||
<string name="attendance_title">Attendance</string>
|
||||
<string name="exam_title">Exams</string>
|
||||
<string name="timetable_title">Timetable</string>
|
||||
<string name="settings_title">Settings</string>
|
||||
<string name="more_title">More</string>
|
||||
<string name="about_title">About</string>
|
||||
<string name="logviewer_title">Log viewer</string>
|
||||
<string name="debug_title">Debug</string>
|
||||
<string name="notification_debug_title">Notification debug</string>
|
||||
<string name="contributors_title">Contributors</string>
|
||||
<string name="license_title">Licenses</string>
|
||||
<string name="message_title">Messages</string>
|
||||
<string name="send_message_title">New message</string>
|
||||
<string name="add_homework_title">New homework</string>
|
||||
<string name="note_title">Notes and achievements</string>
|
||||
<string name="homework_title">Homework</string>
|
||||
<string name="account_title">Accounts manager</string>
|
||||
<string name="account_quick_title">Select account</string>
|
||||
<string name="account_details_title">Account details</string>
|
||||
<string name="student_info_title">Student info</string>
|
||||
<string name="dashboard_title">Dashboard</string>
|
||||
<string name="notifications_center_title">Notifications center</string>
|
||||
<string name="menu_order_title">Menu configuartion</string>
|
||||
<!--Subtitles-->
|
||||
<string name="grade_subtitle">Semester %1$d, %2$d/%3$d</string>
|
||||
<!--Login-->
|
||||
<string name="login_header_default">Sign in with the student or parent account</string>
|
||||
<string name="login_header_symbol">Enter the symbol from the register page for account: <b>%1$s</b></string>
|
||||
<string name="login_nickname_hint">Username</string>
|
||||
<string name="login_email_hint">Email</string>
|
||||
<string name="login_login_pesel_email_hint">Login, PESEL or e-mail</string>
|
||||
<string name="login_password_hint">Password</string>
|
||||
<string name="login_host_hint">UONET+ register variant</string>
|
||||
<string name="login_domain_suffix_hint">Custom domain suffix</string>
|
||||
<string name="login_type_api">Mobile API</string>
|
||||
<string name="login_type_scrapper">Scraper</string>
|
||||
<string name="login_type_hybrid">Hybrid</string>
|
||||
<string name="login_token_hint">Token</string>
|
||||
<string name="login_pin_hint">PIN</string>
|
||||
<string name="login_symbol_hint">Symbol</string>
|
||||
<string name="login_symbol_placeholder">E.g. \"lodz\" or \"powiatjaroslawski\"</string>
|
||||
<string name="login_sign_in">Sign in</string>
|
||||
<string name="login_invalid_password">Password too short</string>
|
||||
<string name="login_incorrect_password_default">Login details are incorrect</string>
|
||||
<string name="login_incorrect_password">%1$s. Make sure the correct UONET+ register variation is selected below</string>
|
||||
<string name="login_invalid_pin">Invalid PIN</string>
|
||||
<string name="login_invalid_token">Invalid token</string>
|
||||
<string name="login_expired_token">Token expired</string>
|
||||
<string name="login_invalid_email">Invalid email</string>
|
||||
<string name="login_invalid_login">Use the assigned login instead of email</string>
|
||||
<string name="login_invalid_custom_email">Use the assigned login or email in @%1$s</string>
|
||||
<string name="login_invalid_symbol">Invalid symbol. If you cannot find it, please contact the school</string>
|
||||
<string name="login_invalid_symbol_definitely">Don\'t make this up! If you cannot find it, please contact the school</string>
|
||||
<string name="login_incorrect_symbol">Student not found. Validate the symbol and the chosen variation of the UONET+ register</string>
|
||||
<string name="login_duplicate_student">Selected student is already logged in</string>
|
||||
<string name="login_symbol_helper">The symbol can be found on the register page in <b>Uczeń</b> → <b>Dostęp Mobilny</b> → <b>Wygeneruj kod dostępu</b>.\n\nMake sure that you have set the appropriate register variant in the <b>UONET+ register variant</b> field on the first login screen</string>
|
||||
<string name="login_select_student">Select students to log in to the application</string>
|
||||
<string name="login_advanced">Other options</string>
|
||||
<string name="login_advanced_warning_mobile_api">In this mode, a lucky number does not work, a class grade stats, summary of attendance, excuse for absence, completed lessons, school information and preview of the list of registered devices</string>
|
||||
<string name="login_advanced_warning_scraper">This mode displays the same data as it appears on the register website</string>
|
||||
<string name="login_advanced_warning_hybrid">The combination of the best features of the other two modes. It works faster than scraper and provides features not available in the Mobile API mode. It is in the experimental phase</string>
|
||||
<string name="login_privacy_policy">Privacy policy</string>
|
||||
<string name="login_contact_header">Trouble signing in? Contact us!</string>
|
||||
<string name="login_contact_email">Email</string>
|
||||
<string name="login_contact_discord">Discord</string>
|
||||
<string name="login_email_intent_title">Send email</string>
|
||||
<string name="login_recover_warning">Make sure you select the correct UONET+ register variation!</string>
|
||||
<string name="login_recover_button">Reset password</string>
|
||||
<string name="login_recover_title">Recover your account</string>
|
||||
<string name="login_recover">Recover</string>
|
||||
<string name="login_signed_in">Student is already signed in</string>
|
||||
<string name="login_host_standard">Standard</string>
|
||||
<string name="login_other_search_locations">Other search locations</string>
|
||||
<string name="login_no_active_student">No active students found</string>
|
||||
<string name="login_symbol_enter">Enter a different symbol</string>
|
||||
<string name="login_support_title">Get help</string>
|
||||
<string name="login_support_school_hint">Full school name with the town (required)</string>
|
||||
<string name="login_support_school_placeholder">Np. ZSTiO Jarosław lub SP nr 99 w Łodzi</string>
|
||||
<string name="login_support_school_invalid">Enter correct name of the school</string>
|
||||
<string name="login_support_additional_hint">Additional information in Polish (optional)</string>
|
||||
<string name="login_support_additional_placeholder">Np. \"Ostatnio zmieniłem szkołę i…\" albo \"Jestem rodzicem i nie widzę drugiego dziecka…\"</string>
|
||||
<string name="login_support_submit">Submit</string>
|
||||
<!--Notifications-->
|
||||
<string name="notifications_header_title">Enable notifications</string>
|
||||
<string name="notifications_header_description">Enable notifications so you don\'t miss message from teacher or new grade</string>
|
||||
<string name="notifications_skip">Skip</string>
|
||||
<string name="notifications_enable">Enable</string>
|
||||
<!--Main-->
|
||||
<string name="main_account_picker">Account manager</string>
|
||||
<string name="main_log_in">Log in</string>
|
||||
<string name="main_session_expired">Session expired</string>
|
||||
<string name="main_session_relogin">Session expired, log in again</string>
|
||||
<string name="main_support_title">Application support</string>
|
||||
<string name="main_support_description">Do you like this app? Support its development by enabling non-invasive ads that you can disable at any time</string>
|
||||
<string name="main_support_positive">Enable ads</string>
|
||||
<!--Grade-->
|
||||
<string name="grade_header">Grade</string>
|
||||
<string name="grade_semester">Semester %d</string>
|
||||
<string name="grade_switch_semester">Change semester</string>
|
||||
<string name="grade_no_items">No grades</string>
|
||||
<string name="grade_weight">Weight</string>
|
||||
<string name="grade_weight_value">Weight: %s</string>
|
||||
<string name="grade_comment">Comment</string>
|
||||
<string name="grade_number_new_items">Number of new ratings: %1$d</string>
|
||||
<string name="grade_average">Average: %1$.2f</string>
|
||||
<string name="grade_points_sum">Points: %s</string>
|
||||
<string name="grade_no_average">No average</string>
|
||||
<string name="grade_summary_points">Total points</string>
|
||||
<string name="grade_summary_final_grade">Final grade</string>
|
||||
<string name="grade_summary_predicted_grade">Predicted grade</string>
|
||||
<string name="grade_summary_calculated_average">Calculated average</string>
|
||||
<string name="grade_summary_calculated_average_help_dialog_title">How does Calculated Average work?</string>
|
||||
<string name="grade_summary_calculated_average_help_dialog_message">The Calculated Average is the arithmetic average calculated from the subjects averages. It allows you to know the approximate final average. It is calculated in a way selected by the user in the application settings. It is recommended that you choose the appropriate option. This is because the calculation of school averages differs. Additionally, if your school reports the average of the subjects on the Vulcan page, the application downloads them and does not calculate these averages. This can be changed by forcing the calculation of the average in the application settings.\n\n<b>Average of grades only from selected semester</b>:\n1. Calculating the weighted average for each subject in a given semester\n2.Adding calculated averages\n3. Calculation of the arithmetic average of the summed averages\n\n<b>Average of averages from both semesters</b>:\n1.Calculating the weighted average for each subject in semester 1 and 2\n2. Calculating the arithmetic average of the calculated averages for semesters 1 and 2 for each subject.\n3. Adding calculated averages\n4. Calculation of the arithmetic average of the summed averages\n\n<b>Average of grades from the whole year:</b>\n1. Calculating weighted average over the year for each subject. The final average in the 1st semester is irrelevant.\n2. Adding calculated averages\n3. Calculating the arithmetic average of summed averages</string>
|
||||
<string name="grade_summary_final_average_help_dialog_title">How does the Final Average work?</string>
|
||||
<string name="grade_summary_final_average_help_dialog_message">The Final Average is the arithmetic average calculated from all currently available final grades in the given semester.\n\nThe calculation scheme consists of the following steps:\n1. Summing up the final grades given by teachers\n2. Divide by the number of subjects that have already been graded</string>
|
||||
<string name="grade_summary_final_average">Final average</string>
|
||||
<string name="grade_summary_from_subjects">from %1$d of %2$d subjects</string>
|
||||
<string name="grade_menu_summary">Summary</string>
|
||||
<string name="grade_menu_statistics">Class</string>
|
||||
<string name="grade_menu_read">Mark as read</string>
|
||||
<string name="grade_statistics_partial">Partial</string>
|
||||
<string name="grade_statistics_semester">Semester</string>
|
||||
<string name="grade_statistics_points">Points</string>
|
||||
<string name="grade_statistics_legend">Legend</string>
|
||||
<string name="grade_statistics_class_average">Class average: %1$s</string>
|
||||
<string name="grade_statistics_student_average">Your average: %1$s</string>
|
||||
<string name="grade_statistics_student_grade">Your grade: %1$s</string>
|
||||
<string name="grade_statistics_average_class">Class</string>
|
||||
<string name="grade_statistics_average_student">Student</string>
|
||||
<plurals name="grade_number_item">
|
||||
<item quantity="one">%d grade</item>
|
||||
<item quantity="other">%d grades</item>
|
||||
</plurals>
|
||||
<plurals name="grade_new_items">
|
||||
<item quantity="one">New grade</item>
|
||||
<item quantity="other">New grades</item>
|
||||
</plurals>
|
||||
<plurals name="grade_new_items_predicted">
|
||||
<item quantity="one">New predicted grade</item>
|
||||
<item quantity="other">New predicted grades</item>
|
||||
</plurals>
|
||||
<plurals name="grade_new_items_final">
|
||||
<item quantity="one">New final grade</item>
|
||||
<item quantity="other">New final grades</item>
|
||||
</plurals>
|
||||
<plurals name="grade_notify_new_items">
|
||||
<item quantity="one">You received %1$d grade</item>
|
||||
<item quantity="other">You received %1$d grades</item>
|
||||
</plurals>
|
||||
<plurals name="grade_notify_new_items_predicted">
|
||||
<item quantity="one">You received %1$d predicted grade</item>
|
||||
<item quantity="other">You received %1$d predicted grades</item>
|
||||
</plurals>
|
||||
<plurals name="grade_notify_new_items_final">
|
||||
<item quantity="one">You received %1$d final grade</item>
|
||||
<item quantity="other">You received %1$d final grades</item>
|
||||
</plurals>
|
||||
<!--Timetable-->
|
||||
<string name="timetable_lesson">Lesson</string>
|
||||
<string name="timetable_room">Room</string>
|
||||
<string name="timetable_group">Group</string>
|
||||
<string name="timetable_time">Hours</string>
|
||||
<string name="timetable_changes">Changes</string>
|
||||
<string name="timetable_no_items">No lessons this day</string>
|
||||
<string name="timetable_minutes">%s min</string>
|
||||
<string name="timetable_seconds">%s sec</string>
|
||||
<string name="timetable_time_left">%1$s left</string>
|
||||
<string name="timetable_time_until">in %1$s</string>
|
||||
<string name="timetable_finished">Finished</string>
|
||||
<string name="timetable_now">Now: %s</string>
|
||||
<string name="timetable_next">Next: %s</string>
|
||||
<string name="timetable_later">Later: %s</string>
|
||||
<string name="timetable_notify_lesson">%1$s lesson %2$d - %3$s</string>
|
||||
<string name="timetable_notify_change_room">Change of room from %1$s to %2$s</string>
|
||||
<string name="timetable_notify_change_teacher">Change of teacher from %1$s to %2$s</string>
|
||||
<string name="timetable_notify_change_subject">Change of subject from %1$s to %2$s</string>
|
||||
<plurals name="timetable_no_lesson">
|
||||
<item quantity="one">No lesson</item>
|
||||
<item quantity="other">No lessons</item>
|
||||
</plurals>
|
||||
<plurals name="timetable_notify_new_items_title">
|
||||
<item quantity="one">Timetable change</item>
|
||||
<item quantity="other">Timetable changes</item>
|
||||
</plurals>
|
||||
<plurals name="timetable_notify_new_items">
|
||||
<item quantity="one">%1$s - %2$d change in timetable</item>
|
||||
<item quantity="other">%1$s - %2$d changes in timetable</item>
|
||||
</plurals>
|
||||
<plurals name="timetable_notify_new_items_group">
|
||||
<item quantity="one">%1$d change in timetable</item>
|
||||
<item quantity="other">%1$d changes in timetable</item>
|
||||
</plurals>
|
||||
<plurals name="timetable_number_item">
|
||||
<item quantity="one">%d change</item>
|
||||
<item quantity="other">%d changes</item>
|
||||
</plurals>
|
||||
<!--Completed lessons-->
|
||||
<string name="completed_lessons_title">Completed lessons</string>
|
||||
<string name="completed_lessons_button">Show completed lessons</string>
|
||||
<string name="completed_lessons_no_items">No info about completed lessons</string>
|
||||
<string name="completed_lessons_topic">Topic</string>
|
||||
<string name="completed_lessons_absence">Absence</string>
|
||||
<string name="completed_lessons_resources">Resources</string>
|
||||
<!--Additional lessons-->
|
||||
<string name="additional_lessons_title">Additional lessons</string>
|
||||
<string name="additional_lessons_button">Show additional lessons</string>
|
||||
<string name="additional_lessons_no_items">No info about additional lessons</string>
|
||||
<string name="additional_lessons_add">New lesson</string>
|
||||
<string name="additional_lessons_add_title">New additional lesson</string>
|
||||
<string name="additional_lessons_add_success">Additional lesson added successfully</string>
|
||||
<string name="additional_lessons_delete_success">Additional lesson deleted successfully</string>
|
||||
<string name="additional_lessons_repeat">Repeat weekly</string>
|
||||
<string name="additional_lessons_delete_title">Delete additional lesson</string>
|
||||
<string name="additional_lessons_delete_one">Just this lesson</string>
|
||||
<string name="additional_lessons_delete_series">All in the series</string>
|
||||
<string name="additional_lessons_start">Start time</string>
|
||||
<string name="additional_lessons_end">End time</string>
|
||||
<string name="additional_lessons_end_time_error">End time must be greater than start time</string>
|
||||
<!--Attendance-->
|
||||
<string name="attendance_summary_button">Attendance summary</string>
|
||||
<string name="attendance_absence_school">Absent for school reasons</string>
|
||||
<string name="attendance_absence_excused">Excused absence</string>
|
||||
<string name="attendance_absence_unexcused">Unexcused absence</string>
|
||||
<string name="attendance_exemption">Exemption</string>
|
||||
<string name="attendance_excused_lateness">Excused lateness</string>
|
||||
<string name="attendance_unexcused_lateness">Unexcused lateness</string>
|
||||
<string name="attendance_present">Present</string>
|
||||
<string name="attendance_deleted">Deleted</string>
|
||||
<string name="attendance_unknown">Unknown</string>
|
||||
<string name="attendance_number">Number of lesson</string>
|
||||
<string name="attendance_no_items">No entries</string>
|
||||
<string name="attendance_excuse_dialog_reason">Absence reason (optional)</string>
|
||||
<string name="attendance_excuse_dialog_submit">Send</string>
|
||||
<string name="attendance_excuse_success">Absence excuse request sent successfully!</string>
|
||||
<string name="attendance_excuse_no_selection">You must select at least one absence!</string>
|
||||
<string name="attendance_excuse_title">Excuse</string>
|
||||
<plurals name="attendance_notify_new_items_title">
|
||||
<item quantity="one">New attendance</item>
|
||||
<item quantity="other">New attendance</item>
|
||||
</plurals>
|
||||
<plurals name="attendance_notify_new_items">
|
||||
<item quantity="one">%1$d new attendance</item>
|
||||
<item quantity="other">%1$d attendance</item>
|
||||
</plurals>
|
||||
<plurals name="attendance_number_item">
|
||||
<item quantity="one">%d attendance</item>
|
||||
<item quantity="other">%d attendance</item>
|
||||
</plurals>
|
||||
<!--Attendance summary-->
|
||||
<string name="attendance_summary_total">Total</string>
|
||||
<!--Exam-->
|
||||
<string name="exam_no_items">No exams this week</string>
|
||||
<string name="exam_type">Type</string>
|
||||
<string name="exam_entry_date">Entry date</string>
|
||||
<plurals name="exam_notify_new_item_title">
|
||||
<item quantity="one">New exam</item>
|
||||
<item quantity="other">New exams</item>
|
||||
</plurals>
|
||||
<plurals name="exam_notify_new_item_content">
|
||||
<item quantity="one">%d new exam</item>
|
||||
<item quantity="other">%d new exams</item>
|
||||
</plurals>
|
||||
<plurals name="exam_number_item">
|
||||
<item quantity="one">%d exam</item>
|
||||
<item quantity="other">%d exams</item>
|
||||
</plurals>
|
||||
<!--Message-->
|
||||
<string name="message_inbox">Inbox</string>
|
||||
<string name="message_sent">Sent</string>
|
||||
<string name="message_trash">Trash</string>
|
||||
<string name="message_no_subject">(no subject)</string>
|
||||
<string name="message_no_items">No messages</string>
|
||||
<string name="message_from">From:</string>
|
||||
<string name="message_to">To:</string>
|
||||
<string name="message_date">Date: %1$s</string>
|
||||
<string name="message_reply">Reply</string>
|
||||
<string name="message_forward">Forward</string>
|
||||
<string name="message_select_all">Select all</string>
|
||||
<string name="message_unselect_all">Unselect all</string>
|
||||
<string name="message_move_to_trash">Move to trash</string>
|
||||
<string name="message_delete_forever">Delete permanently</string>
|
||||
<string name="message_delete_success">Message deleted successfully</string>
|
||||
<string name="message_mailbox_type_student">student</string>
|
||||
<string name="message_mailbox_type_parent">parent</string>
|
||||
<string name="message_mailbox_type_guardian">guardian</string>
|
||||
<string name="message_mailbox_type_employee">employee</string>
|
||||
<string name="message_share">Share</string>
|
||||
<string name="message_print">Print</string>
|
||||
<string name="message_subject">Subject</string>
|
||||
<string name="message_content">Content</string>
|
||||
<string name="message_send_successful">Message sent successfully</string>
|
||||
<string name="message_not_exists">Message does not exist</string>
|
||||
<string name="message_required_recipients">You need to choose at least 1 recipient</string>
|
||||
<string name="message_content_min_length">The message content must be at least 3 characters</string>
|
||||
<string name="message_chip_all_mailboxes">All mailboxes</string>
|
||||
<string name="message_chip_only_unread">Only unread</string>
|
||||
<string name="message_chip_only_with_attachments">Only with attachments</string>
|
||||
<string name="message_read">Read: %s</string>
|
||||
<string name="message_read_by">Read by: %1$d of %2$d people</string>
|
||||
<plurals name="message_number_item">
|
||||
<item quantity="one">%1$d message</item>
|
||||
<item quantity="other">%1$d messages</item>
|
||||
</plurals>
|
||||
<plurals name="message_new_items">
|
||||
<item quantity="one">New message</item>
|
||||
<item quantity="other">New messages</item>
|
||||
</plurals>
|
||||
<string name="message_restore_dialog">Do you want to restore draft message?</string>
|
||||
<string name="message_restore_dialog_with_recipients">Do you want to restore draft message with recipients: %s?</string>
|
||||
<plurals name="message_notify_new_items">
|
||||
<item quantity="one">You received %1$d message</item>
|
||||
<item quantity="other">You received %1$d messages</item>
|
||||
</plurals>
|
||||
<plurals name="message_selected_messages_count">
|
||||
<item quantity="one">%1$d selected</item>
|
||||
<item quantity="other">%1$d selected</item>
|
||||
</plurals>
|
||||
<string name="message_messages_deleted">Messages deleted</string>
|
||||
<string name="message_mailbox_chooser_title">Choose mailbox</string>
|
||||
<string name="message_incognito_mode_on">Incognito mode is on</string>
|
||||
<string name="message_incognito_description">Thanks to incognito mode sender is not notified when you read the message</string>
|
||||
<!--Note-->
|
||||
<string name="note_no_items">No info about notes</string>
|
||||
<string name="note_points">Points</string>
|
||||
<plurals name="note_number_item">
|
||||
<item quantity="one">%d note</item>
|
||||
<item quantity="other">%d notes</item>
|
||||
</plurals>
|
||||
<plurals name="note_new_items">
|
||||
<item quantity="one">New note</item>
|
||||
<item quantity="other">New notes</item>
|
||||
</plurals>
|
||||
<plurals name="note_notify_new_items">
|
||||
<item quantity="one">You received %1$d note</item>
|
||||
<item quantity="other">You received %1$d notes</item>
|
||||
</plurals>
|
||||
<!--Praise-->
|
||||
<plurals name="praise_number_item">
|
||||
<item quantity="one">%d praise</item>
|
||||
<item quantity="other">%d praises</item>
|
||||
</plurals>
|
||||
<plurals name="praise_new_items">
|
||||
<item quantity="one">New praise</item>
|
||||
<item quantity="other">New praises</item>
|
||||
</plurals>
|
||||
<plurals name="praise_notify_new_items">
|
||||
<item quantity="one">You received %1$d praise</item>
|
||||
<item quantity="other">You received %1$d praises</item>
|
||||
</plurals>
|
||||
<!--Neutral notes-->
|
||||
<plurals name="neutral_note_number_item">
|
||||
<item quantity="one">%d neutral note</item>
|
||||
<item quantity="other">%d neutral notes</item>
|
||||
</plurals>
|
||||
<plurals name="neutral_note_new_items">
|
||||
<item quantity="one">New neutral note</item>
|
||||
<item quantity="other">New neutral notes</item>
|
||||
</plurals>
|
||||
<plurals name="neutral_note_notify_new_items">
|
||||
<item quantity="one">You received %1$d neutral note</item>
|
||||
<item quantity="other">You received %1$d neutral notes</item>
|
||||
</plurals>
|
||||
<!--Homework-->
|
||||
<string name="homework_no_items">No info about homework</string>
|
||||
<string name="homework_mark_as_done">Mark as done</string>
|
||||
<string name="homework_mark_as_undone">Mark as undone</string>
|
||||
<string name="homework_add">Add homework</string>
|
||||
<string name="homework_add_success">Homework added successfully</string>
|
||||
<string name="homework_delete_success">Homework deleted successfully</string>
|
||||
<string name="homework_attachments">Attachments</string>
|
||||
<plurals name="homework_notify_new_item_title">
|
||||
<item quantity="one">New homework</item>
|
||||
<item quantity="other">New homework</item>
|
||||
</plurals>
|
||||
<plurals name="homework_notify_new_item_content">
|
||||
<item quantity="one">You received %d new homework</item>
|
||||
<item quantity="other">You received %d new homework</item>
|
||||
</plurals>
|
||||
<plurals name="homework_number_item">
|
||||
<item quantity="one">%d homework</item>
|
||||
<item quantity="other">%d homework</item>
|
||||
</plurals>
|
||||
<!--Lucky number-->
|
||||
<string name="lucky_number_title">Lucky number</string>
|
||||
<string name="lucky_number_header">Today\'s lucky number is</string>
|
||||
<string name="lucky_number_empty">No info about the lucky number</string>
|
||||
<string name="lucky_number_notify_new_item_title">Lucky number for today</string>
|
||||
<string name="lucky_number_notify_new_item">Today\'s lucky number is: %s</string>
|
||||
<string name="lucky_number_history_button">Show history</string>
|
||||
<!--Lucky number history-->
|
||||
<string name="lucky_number_history_title">Lucky number history</string>
|
||||
<string name="lucky_number_history_empty">No info about lucky numbers</string>
|
||||
<!--Mobile devices-->
|
||||
<string name="mobile_devices_title">Mobile devices</string>
|
||||
<string name="mobile_devices_no_items">No devices</string>
|
||||
<string name="mobile_devices_unregister">Deregister</string>
|
||||
<string name="mobile_device_removed">Device removed</string>
|
||||
<string name="mobile_device_qr">QR code</string>
|
||||
<string name="mobile_device_token">Token</string>
|
||||
<string name="mobile_device_symbol">Symbol</string>
|
||||
<string name="mobile_device_pin">PIN</string>
|
||||
<!--School and teachers-->
|
||||
<string name="schoolandteachers_title">School and teachers</string>
|
||||
<!--School-->
|
||||
<string name="school_title">School</string>
|
||||
<string name="school_no_info">No info about school</string>
|
||||
<string name="school_name">School name</string>
|
||||
<string name="school_address">School address</string>
|
||||
<string name="school_telephone">Telephone</string>
|
||||
<string name="school_headmaster">Name of headmaster</string>
|
||||
<string name="school_pedagogue">Name of pedagogue</string>
|
||||
<string name="school_address_button">Show on map</string>
|
||||
<string name="school_telephone_button">Call</string>
|
||||
<!--Teacher-->
|
||||
<string name="teachers_title">Teachers</string>
|
||||
<string name="teacher_no_items">No info about teachers</string>
|
||||
<string name="teacher_no_subject">No subject</string>
|
||||
<!--Conference-->
|
||||
<string name="conferences_title">Conferences</string>
|
||||
<string name="conference_no_items">No info about conferences</string>
|
||||
<plurals name="conference_number_item">
|
||||
<item quantity="one">%d conference</item>
|
||||
<item quantity="other">%d conferences</item>
|
||||
</plurals>
|
||||
<plurals name="conference_notify_new_item_title">
|
||||
<item quantity="one">New conference</item>
|
||||
<item quantity="other">New conferences</item>
|
||||
</plurals>
|
||||
<plurals name="conference_notify_new_items">
|
||||
<item quantity="one">You have %1$d new conference</item>
|
||||
<item quantity="other">You have %1$d new conferences</item>
|
||||
</plurals>
|
||||
<string name="conferences_present">Present at conference</string>
|
||||
<string name="conference_agenda">Agenda</string>
|
||||
<string name="conference_place">Place</string>
|
||||
<string name="conference_topic">Topic</string>
|
||||
<!--Director information-->
|
||||
<string name="school_announcement_title">School announcements</string>
|
||||
<string name="school_announcement_no_items">No school announcements</string>
|
||||
<plurals name="school_announcement_number_item">
|
||||
<item quantity="one">%d school announcement</item>
|
||||
<item quantity="other">%d school announcements</item>
|
||||
</plurals>
|
||||
<plurals name="school_announcement_notify_new_item_title">
|
||||
<item quantity="one">New school announcement</item>
|
||||
<item quantity="other">New school announcements</item>
|
||||
</plurals>
|
||||
<plurals name="school_announcement_notify_new_items">
|
||||
<item quantity="one">You have %1$d new school announcement</item>
|
||||
<item quantity="other">You have %1$d new school announcements</item>
|
||||
</plurals>
|
||||
<!--Account-->
|
||||
<string name="account_add_new">Add account</string>
|
||||
<string name="account_logout">Logout</string>
|
||||
<string name="account_confirm">Do you want to log out this student?</string>
|
||||
<string name="account_logout_student">Student logout</string>
|
||||
<string name="account_type_student">Student account</string>
|
||||
<string name="account_type_parent">Parent account</string>
|
||||
<string name="account_details_edit">Edit data</string>
|
||||
<string name="account_quick_manager">Accounts manager</string>
|
||||
<string name="account_select_student">Select student</string>
|
||||
<string name="account_family">Family</string>
|
||||
<string name="account_contact">Contact</string>
|
||||
<string name="account_address">Residence details</string>
|
||||
<string name="account_personal_data">Personal information</string>
|
||||
<!--About-->
|
||||
<string name="about_version">App version</string>
|
||||
<string name="about_contributor">Contributors</string>
|
||||
<string name="about_contributor_summary">List of Wulkanowy developers</string>
|
||||
<string name="about_feedback">Report a bug</string>
|
||||
<string name="about_feedback_summary">Send a bug report via e-mail</string>
|
||||
<string name="about_faq">FAQ</string>
|
||||
<string name="about_faq_summary">Read Frequently Asked Questions</string>
|
||||
<string name="about_discord">Discord server</string>
|
||||
<string name="about_discord_summary">Join the Wulkanowy community</string>
|
||||
<string name="about_facebook">Facebook fanpage</string>
|
||||
<string name="about_twitter">Twitter page</string>
|
||||
<string name="about_twitter_summary">Follow us on twitter</string>
|
||||
<string name="about_facebook_summary">Like our facebook fanpage</string>
|
||||
<string name="about_privacy">Privacy policy</string>
|
||||
<string name="about_privacy_summary">Rules for collecting personal data</string>
|
||||
<string name="about_system">System settings</string>
|
||||
<string name="about_system_summary">Open system settings</string>
|
||||
<string name="about_homepage">Homepage</string>
|
||||
<string name="about_homepage_summary">Visit the website and help develop the application</string>
|
||||
<string name="about_licenses">Licenses</string>
|
||||
<string name="about_licenses_summary">Licenses of libraries used in the application</string>
|
||||
<!--Licenses-->
|
||||
<string name="license_dialog_title">License</string>
|
||||
<!--Contributor-->
|
||||
<string name="contributor_avatar_description">Avatar</string>
|
||||
<string name="contributor_see_more">See more on GitHub</string>
|
||||
<!--Student info-->
|
||||
<string name="student_info_empty">No info about student or student family</string>
|
||||
<string name="student_info_first_name">Name</string>
|
||||
<string name="student_info_second_name">Second name</string>
|
||||
<string name="student_info_gender">Gender</string>
|
||||
<string name="student_info_polish_citizenship">Polish citizenship</string>
|
||||
<string name="student_info_family_name">Family name</string>
|
||||
<string name="student_info_parents_name">Mother\'s and father\'s names</string>
|
||||
<string name="student_info_phone">Phone</string>
|
||||
<string name="student_info_cellphone">Cellphone</string>
|
||||
<string name="student_info_email">E-mail</string>
|
||||
<string name="student_info_address">Address of residence</string>
|
||||
<string name="student_info_registered_address">Address of registration</string>
|
||||
<string name="student_info_correspondence_address">Correspondence address</string>
|
||||
<string name="student_info_full_name">Surname and first name</string>
|
||||
<string name="student_info_kinship">Degree of kinship</string>
|
||||
<string name="student_info_guardian_address">Address</string>
|
||||
<string name="student_info_phones">Phones</string>
|
||||
<string name="student_info_male">Male</string>
|
||||
<string name="student_info_female">Female</string>
|
||||
<string name="student_info_last_name">Last name</string>
|
||||
<string name="student_info_guardian">Guardian</string>
|
||||
<!--Account edit-->
|
||||
<string name="account_edit_nick_hint">Nick</string>
|
||||
<string name="account_edit_header">Add nick</string>
|
||||
<string name="account_edit_avatar_title">Choose avatar color</string>
|
||||
<!--Log viewer-->
|
||||
<string name="logviewer_share">Share logs</string>
|
||||
<string name="logviewer_refresh">Refresh</string>
|
||||
<!--Dashboard-->
|
||||
<string name="dashboard_timetable_title">Lessons</string>
|
||||
<string name="dashboard_timetable_title_tomorrow">(Tomorrow)</string>
|
||||
<string name="dashboard_timetable_title_today_and_tomorrow">(Today and tomorrow)</string>
|
||||
<string name="dashboard_timetable_first_lesson_title_moment">In a moment:</string>
|
||||
<string name="dashboard_timetable_first_lesson_title_soon">Soon:</string>
|
||||
<string name="dashboard_timetable_first_lesson_title_first">First:</string>
|
||||
<string name="dashboard_timetable_first_lesson_title_now">Now:</string>
|
||||
<string name="dashboard_timetable_second_lesson_value_end">End of lessons</string>
|
||||
<string name="dashboard_timetable_second_lessons_title">Next:</string>
|
||||
<string name="dashboard_timetable_third_title">Later:</string>
|
||||
<plurals name="dashboard_timetable_third_value">
|
||||
<item quantity="one">%1$d more lesson</item>
|
||||
<item quantity="other">%1$d more lessons</item>
|
||||
</plurals>
|
||||
<string name="dashboard_timetable_third_time">until %1$s</string>
|
||||
<string name="dashboard_timetable_no_lessons">No upcoming lessons</string>
|
||||
<string name="dashboard_timetable_error">An error occurred while loading the lessons</string>
|
||||
<string name="dashboard_homework_title">Homework</string>
|
||||
<string name="dashboard_homework_no_homework">No homework to do</string>
|
||||
<string name="dashboard_homework_error">An error occurred while loading the homework</string>
|
||||
<plurals name="dashboard_homework_more">
|
||||
<item quantity="one">%1$d more homework</item>
|
||||
<item quantity="other">%1$d more homework</item>
|
||||
</plurals>
|
||||
<string name="dashboard_homework_time">due %1$s</string>
|
||||
<string name="dashboard_grade_title">Last grades</string>
|
||||
<string name="dashboard_grade_no_grade">No new grades</string>
|
||||
<string name="dashboard_grade_error">An error occurred while loading the grades</string>
|
||||
<string name="dashboard_announcements_title">School announcements</string>
|
||||
<string name="dashboard_announcements_no_announcements">No current announcements</string>
|
||||
<string name="dashboard_announcements_error">An error occurred while loading the announcements</string>
|
||||
<plurals name="dashboard_announcements_more">
|
||||
<item quantity="one">%1$d more announcement</item>
|
||||
<item quantity="other">%1$d more announcements</item>
|
||||
</plurals>
|
||||
<string name="dashboard_exams_title">Exams</string>
|
||||
<string name="dashboard_exams_no_exams">No upcoming exams</string>
|
||||
<string name="dashboard_exams_error">An error occurred while loading the exams</string>
|
||||
<plurals name="dashboard_exams_more">
|
||||
<item quantity="one">%1$d more exam</item>
|
||||
<item quantity="other">%1$d more exams</item>
|
||||
</plurals>
|
||||
<string name="dashboard_conferences_title">Conferences</string>
|
||||
<string name="dashboard_conferences_no_conferences">No upcoming conferences</string>
|
||||
<string name="dashboard_conferences_error">An error occurred while loading the conferences</string>
|
||||
<plurals name="dashboard_conference_more">
|
||||
<item quantity="one">%1$d more conference</item>
|
||||
<item quantity="other">%1$d more conferences</item>
|
||||
</plurals>
|
||||
<string name="dashboard_horizontal_group_error">An error occurred while loading data</string>
|
||||
<string name="dashboard_horizontal_group_no_data">None</string>
|
||||
<!--Error dialog-->
|
||||
<string name="dialog_error_check_update">Check for updates</string>
|
||||
<string name="dialog_error_check_update_message">Before reporting a bug, check first if an update with the bug fix is available</string>
|
||||
<!--Generic-->
|
||||
<string name="all_content">Content</string>
|
||||
<string name="all_retry">Retry</string>
|
||||
<string name="all_description">Description</string>
|
||||
<string name="all_no_description">No description</string>
|
||||
<string name="all_teacher">Teacher</string>
|
||||
<string name="all_date">Date</string>
|
||||
<string name="all_entry_date">Entry date</string>
|
||||
<string name="all_color">Color</string>
|
||||
<string name="all_details">Details</string>
|
||||
<string name="all_category">Category</string>
|
||||
<string name="all_close">Close</string>
|
||||
<string name="all_no_data">No data</string>
|
||||
<string name="all_subject">Subject</string>
|
||||
<string name="all_prev">Prev</string>
|
||||
<string name="all_next">Next</string>
|
||||
<string name="all_search">Search</string>
|
||||
<string name="all_search_hint">Search…</string>
|
||||
<string name="all_yes">Yes</string>
|
||||
<string name="all_no">No</string>
|
||||
<string name="all_save">Save</string>
|
||||
<string name="all_title">Title</string>
|
||||
<string name="all_add">Add</string>
|
||||
<string name="all_copied">Copied</string>
|
||||
<string name="all_undo">Undo</string>
|
||||
<string name="all_change">Change</string>
|
||||
<string name="all_add_to_calendar">Add to calendar</string>
|
||||
<string name="all_cancel">Cancel</string>
|
||||
<!--Timetable Widget-->
|
||||
<string name="widget_timetable_no_items">No lessons</string>
|
||||
<string name="widget_timetable_last_synchronization">Synchronized on %1$s at %2$s</string>
|
||||
<string name="widget_timetable_theme_title">Choose theme</string>
|
||||
<string name="widget_timetable_theme_light">Light</string>
|
||||
<string name="widget_timetable_theme_dark">Dark</string>
|
||||
<string name="widget_timetable_theme_system">System Theme</string>
|
||||
<!--Preferences-->
|
||||
<string name="pref_view_header">App</string>
|
||||
<string name="pref_view_list">Default view</string>
|
||||
<string name="pref_view_grade_average_mode">Calculated average options</string>
|
||||
<string name="pref_view_grade_average_force_calc">Force average calculation by app</string>
|
||||
<string name="pref_view_present">Show presence</string>
|
||||
<string name="pref_view_app_theme">Theme</string>
|
||||
<string name="pref_view_expand_grade">Grades expanding</string>
|
||||
<string name="pref_view_timetable_show_groups">Show groups next to subjects</string>
|
||||
<string name="pref_view_timetable_show_gaps">Show empty tiles where there\'s no lesson</string>
|
||||
<string name="pref_view_grade_statistics_list">Show chart list in class grades</string>
|
||||
<string name="pref_view_subjects_without_grades">Show subjects without grades</string>
|
||||
<string name="pref_view_grade_color_scheme">Grades color scheme</string>
|
||||
<string name="pref_view_grade_sorting_mode">Subjects sorting</string>
|
||||
<string name="pref_view_app_language">Language</string>
|
||||
<string name="pref_view_menu_order_title">Menu configuration</string>
|
||||
<string name="pref_view_menu_order_summary">Set the order of functions in the menu</string>
|
||||
<string name="pref_notify_header">Notifications</string>
|
||||
<string name="pref_notify_header_other">Other</string>
|
||||
<string name="pref_notify_switch">Show notifications</string>
|
||||
<string name="pref_notify_upcoming_lessons_switch">Show upcoming lesson notifications</string>
|
||||
<string name="pref_notify_upcoming_lessons_persistent_switch">Make upcoming lesson notification persistent</string>
|
||||
<string name="pref_notify_upcoming_lessons_persistent_summary">Turn off when notification is not showing in your watch/band</string>
|
||||
<string name="pref_notify_open_system_settings">Open system notification settings</string>
|
||||
<string name="pref_notify_fix_sync_issues">Fix synchronization & notifications issues</string>
|
||||
<string name="pref_notify_fix_sync_issues_message">Your device may have data synchronization issues and with notifications.\n\nTo fix them, you need to add Wulkanowy to the autostart and turn off battery optimization/saving in the phone settings.</string>
|
||||
<string name="pref_notify_debug_switch">Show debug notifications</string>
|
||||
<string name="pref_notify_disabled_summary">Synchronization is disabled</string>
|
||||
<string name="pref_notify_notifications_piggyback_header">Official app notifications</string>
|
||||
<string name="pref_notify_notifications_piggyback">Capture official app notifications</string>
|
||||
<string name="pref_notify_notifications_piggyback_cancel_original">Remove official app notifications after capture</string>
|
||||
<string name="pref_notification_piggyback_popup_title">Capture notifications</string>
|
||||
<string name="pref_notification_piggyback_popup_description">With this feature you can gain a substitute of push notifications like in the official app. All you need to do is allow Wulkanowy to receive all notifications in your system settings.\n\nHow it works?\nWhen you get a notification in Dziennik VULCAN, Wulkanowy will be notified (that\'s what these extra permissions are for) and will trigger a sync so that can send its own notification.\n\nFOR ADVANCED USERS ONLY</string>
|
||||
<string name="pref_notification_exact_alarm_popup_title">Upcoming lesson notifications</string>
|
||||
<string name="pref_notification_exact_alarm_popup_descriptions">You must allow the Wulkanowy app to set alarms and reminders in your system settings to use this feature.</string>
|
||||
<string name="pref_notification_go_to_settings">Go to settings</string>
|
||||
<string name="pref_services_header">Synchronization</string>
|
||||
<string name="pref_services_switch">Automatic update</string>
|
||||
<string name="pref_services_suspended">Suspended on holidays</string>
|
||||
<string name="pref_services_interval">Updates interval</string>
|
||||
<string name="pref_services_wifi">Wi-Fi only</string>
|
||||
<string name="pref_services_force_sync">Sync now</string>
|
||||
<string name="pref_services_message_sync_success">Synced!</string>
|
||||
<string name="pref_services_message_sync_failed">Sync failed</string>
|
||||
<string name="pref_services_sync_in_progress">Sync in progress</string>
|
||||
<string name="pref_services_last_full_sync_date">Last full sync: %s</string>
|
||||
<string name="pref_other_grade_modifier_plus">Value of the plus</string>
|
||||
<string name="pref_other_grade_modifier_minus">Value of the minus</string>
|
||||
<string name="pref_other_fill_message_content">Reply with message history</string>
|
||||
<string name="pref_other_optional_arithmetic_average">Show arithmetic average when no weights provided</string>
|
||||
<string name="pref_other_incognito_mode">Incognito mode</string>
|
||||
<string name="pref_other_incognito_mode_summary">Do not inform about reading the message</string>
|
||||
<string name="pref_ads_support_category_name">Support</string>
|
||||
<string name="pref_ads_privacy_policy">Privacy Policy</string>
|
||||
<string name="pref_ads_agreements">Agreements</string>
|
||||
<string name="pref_ads_consent">Show consent to data processing</string>
|
||||
<string name="pref_ads_show_in_app">Show ads in app</string>
|
||||
<string name="pref_ads_support">Watch single ad to support project</string>
|
||||
<string name="pref_ads_privacy_title">Consent to data processing</string>
|
||||
<string name="pref_ads_privacy_description">To view an advertisement you must agree to the data processing terms of our Privacy Policy</string>
|
||||
<string name="pref_ads_privacy_agree">Agree</string>
|
||||
<string name="pref_ads_privacy_link">Privacy policy</string>
|
||||
<string name="pref_ads_loading">Ad is loading</string>
|
||||
<string name="pref_ads_once_per_visit">Thank you for your support, come back later for more ads</string>
|
||||
<string name="pref_settings_advanced_title">Advanced</string>
|
||||
<string name="pref_settings_appearance_title">Appearance & Behavior</string>
|
||||
<string name="pref_settings_notifications_title">Notifications</string>
|
||||
<string name="pref_settings_sync_title">Synchronization</string>
|
||||
<string name="pref_settings_ads_title">Advertisements</string>
|
||||
<string name="pref_grades_appearance_header">Grades</string>
|
||||
<string name="pref_dashboard_appearance_header">Dashboard</string>
|
||||
<string name="pref_dashboard_appearance_tiles_title">Tiles visibility</string>
|
||||
<string name="pref_attendance_appearance_view">Attendance</string>
|
||||
<string name="pref_timetable_appearance_view">Timetable</string>
|
||||
<string name="pref_grades_advanced_header">Grades</string>
|
||||
<string name="pref_counted_average_advanced_header">Calculated average</string>
|
||||
<string name="pref_messages_advanced_header">Messages</string>
|
||||
<string name="pref_appearance_category">Appearance & Behavior</string>
|
||||
<string name="pref_appearance_category_summary">Languages, themes, subjects sorting</string>
|
||||
<string name="pref_notifications_category_summary">App notifications, fix problems</string>
|
||||
<string name="pref_notifications_category">Notifications</string>
|
||||
<string name="pref_sync_category">Synchronization</string>
|
||||
<string name="pref_sync_category_summary">Automatic update, synchronization interval</string>
|
||||
<string name="pref_advanced_category_summary">Plus and minus values, average calculation</string>
|
||||
<string name="pref_advanced_category">Advanced</string>
|
||||
<string name="pref_about_category_summary">App version, contributors, social portals</string>
|
||||
<string name="pref_ads_category_summary">Displaying advertisements, project support</string>
|
||||
<!--Notification Channels-->
|
||||
<string name="channel_new_grades">New grades</string>
|
||||
<string name="channel_new_homework">New homework</string>
|
||||
<string name="channel_new_conference">New conferences</string>
|
||||
<string name="channel_new_exam">New exams</string>
|
||||
<string name="channel_lucky_number">Lucky number</string>
|
||||
<string name="channel_new_message">New messages</string>
|
||||
<string name="channel_new_notes">New notes</string>
|
||||
<string name="channel_new_school_announcement">New school announcements</string>
|
||||
<string name="channel_push">Push notifications</string>
|
||||
<string name="channel_upcoming_lessons">Upcoming lessons</string>
|
||||
<string name="channel_debug">Debug</string>
|
||||
<string name="channel_change_timetable">Timetable change</string>
|
||||
<string name="channel_new_attendance">New attendance</string>
|
||||
<!--Colors-->
|
||||
<string name="all_black">Black</string>
|
||||
<string name="all_red">Red</string>
|
||||
<string name="all_blue">Blue</string>
|
||||
<string name="all_green">Green</string>
|
||||
<string name="all_purple">Purple</string>
|
||||
<string name="all_empty_color">No color</string>
|
||||
<!--Update helper-->
|
||||
<string name="update_download_started">Download of updates has started…</string>
|
||||
<string name="update_download_success">An update has just been downloaded.</string>
|
||||
<string name="update_download_success_button">Restart</string>
|
||||
<string name="update_failed">Update failed! Wulkanowy may not function properly. Consider updating</string>
|
||||
<!--Menu order-->
|
||||
<string name="menu_order_confirm_title">Application restart</string>
|
||||
<string name="menu_order_confirm_content">The application must restart for the changes to be saved</string>
|
||||
<string name="menu_order_confirm_restart">Restart</string>
|
||||
<!--Auth-->
|
||||
<string name="auth_api_error">Authorization has been rejected. The data provided does not match the records in the secretary\'s office.</string>
|
||||
<string name="auth_invalid_error">Invalid PESEL</string>
|
||||
<string name="auth_pesel">PESEL</string>
|
||||
<string name="auth_button">Authorize</string>
|
||||
<string name="auth_success">Authorization completed successfully</string>
|
||||
<string name="auth_title">Authorization</string>
|
||||
<string name="auth_description">To operate the application, we need to confirm your identity. Please enter the student\'s PESEL <b>%1$s</b> in the field below</string>
|
||||
<string name="auth_button_skip">Skip for now</string>
|
||||
<!--Errors-->
|
||||
<string name="error_no_internet">No internet connection</string>
|
||||
<string name="error_invalid_device_datetime">An error occurred. Check your device clock</string>
|
||||
<string name="error_timeout">Connection to register failed. Servers can be overloaded. Please try again later</string>
|
||||
<string name="error_login_failed">Loading data failed. Please try again later</string>
|
||||
<string name="error_password_change_required">Register password change required</string>
|
||||
<string name="error_service_unavailable">Maintenance underway UONET + register. Try again later</string>
|
||||
<string name="error_unknown_uonet">Unknown UONET + register error. Try again later</string>
|
||||
<string name="error_unknown_app">Unknown application error. Please try again later</string>
|
||||
<string name="error_unknown">An unexpected error occurred</string>
|
||||
<string name="error_feature_disabled">Feature disabled by your school</string>
|
||||
<string name="error_feature_not_available">Feature not available. Login in a mode other than Mobile API</string>
|
||||
<string name="error_field_required">This field is required</string>
|
||||
<string name="pref_mod_settings_other_title">Other</string>
|
||||
</resources>
|
@ -1,21 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="pref_mod_settings_title">Geheime Einstellungen</string>
|
||||
<string name="pref_hidden_settings_attendance_percentage">Prozentuale Erwartung</string>
|
||||
<string name="pref_hidden_settings_hidden_grades">Hide Grades</string>
|
||||
<string name="pref_mod_settings_hidden_attendance_items">Versteckte Anwesenheitsposten</string>
|
||||
<string name="pref_mod_settings_show_notes">Notizen anzeigen</string>
|
||||
|
||||
<string-array name="mod_settings_attendance_entries">
|
||||
<item>Unentschuldigtes Fehlen</item>
|
||||
<item>Befreiung</item>
|
||||
<item>Entschuldigtes Zuspätkommen</item>
|
||||
<item>Unentschuldigtes Zuspätkommen</item>
|
||||
<item>Anwesend</item>
|
||||
<item>Löschen</item>
|
||||
<item>Unentschuldigtes Fehlen</item>
|
||||
<item>Unbekannt</item>
|
||||
</string-array>
|
||||
<string name="pref_mod_settings_developer_mode">Entwicklermodus (Zugang zu dieser Seite)</string>
|
||||
<string name="pref_mod_settings_developer_mode_summary">Wenn Sie diese Einstellung deaktivieren, können Sie nicht mehr auf diese Seite zugreifen, aber die Einstellungen werden weiterhin angewendet.</string>
|
||||
</resources>
|
@ -19,6 +19,7 @@
|
||||
<item>Deutsch</item>
|
||||
<item>Čeština</item>
|
||||
<item>Slovenčina</item>
|
||||
<item>Kaszëbsczi</item>
|
||||
</string-array>
|
||||
<string-array name="services_interval_entries">
|
||||
<item>15 Minuten</item>
|
||||
|
@ -778,6 +778,8 @@
|
||||
<string name="captcha_dialog_title">VULCAN\'s Website erfordert Überprüfung</string>
|
||||
<string name="captcha_dialog_description"><b>Warum sehe ich das?</b>\nDie Website des Registers, von der Wulkanowy Daten herunterlädt, zeigt denselben Bildschirm wie oben an, so dass Wulkanowy ihn ebenfalls anzeigen muss, um Daten von dieser Website herunterladen zu können. Es gibt keinen Ausweg</string>
|
||||
<string name="captcha_verified_message">Erfolgreich verifiziert</string>
|
||||
<!--Panic mode-->
|
||||
<string name="panic_mode_title">Notfallzugriff</string>
|
||||
<!--Errors-->
|
||||
<string name="error_no_internet">Keine Internetverbindung</string>
|
||||
<string name="error_invalid_device_datetime">Es ist ein Fehler aufgetreten. Überprüfen Sie Ihre Geräteuhr</string>
|
||||
@ -799,4 +801,7 @@
|
||||
<string name="message_unmute">Stummschaltung aufheben</string>
|
||||
<string name="message_mute_success">Sie haben diesen Benutzer stummgeschaltet</string>
|
||||
<string name="message_unmute_success">Sie haben die Stummschaltung dieses Benutzers aufgehoben</string>
|
||||
<!--End-->
|
||||
<string name="end_title">Koniec Wulkanowego</string>
|
||||
<string name="end_message">Jak zapewne niektórzy z Was się domyślali zbliża się ten moment, aby zakończyć pewien etap. Wraz z końcem tego roku szkolnego zamykamy projekt Wulkanowy. Stworzenie apki było ekscytującym wyzwaniem, ale skala projektu jest tak duża, że nie jesteśmy w stanie odpowiedzialnie utrzymywać aplikacji. Wulkanowy był fajną przygodą, ale sytuacja wymknęła się nam spod kontroli – zarówno pod względem technicznym, jak i społecznym. Nie akceptujemy pojawiającego się hejtu wobec nas ani wobec innych, także Vulcana. Nie chcemy brać udziału w tych działaniach i być z nimi utożsamiani. Prosimy Was o powściągliwość i rozwagę w publikowanych komentarzach i nieprzekraczanie dopuszczalnych granic.<br /><br />Prosimy Was też o uszanowanie naszej decyzji, jest ona przemyślana i ostateczna. Wszystkim dotychczasowym użytkownikom Wulkanowego rekomendujemy użycie oficjalnej aplikacji <a href=\"https://play.google.com/store/apps/details?id=pl.edu.vulcan.hebe&hl=pl\">Dzienniczek VULCAN</a>. Jeszcze raz dziękujemy wszystkim użytkownikom za lata wsparcia, pomoc i miłe słowa!</string>
|
||||
</resources>
|
||||
|
@ -1,21 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="pref_mod_settings_title">Hidden settings</string>
|
||||
<string name="pref_hidden_settings_attendance_percentage">Attendance percentage</string>
|
||||
<string name="pref_hidden_settings_hidden_grades">Hide grades</string>
|
||||
<string name="pref_mod_settings_hidden_attendance_items">Hidden attendance items</string>
|
||||
<string name="pref_mod_settings_show_notes">Show notes</string>
|
||||
|
||||
<string-array name="mod_settings_attendance_entries">
|
||||
<item>Unexcused absence</item>
|
||||
<item>Exemption</item>
|
||||
<item>Excused lateness</item>
|
||||
<item>Unexcused lateness</item>
|
||||
<item>Present</item>
|
||||
<item>Deleted</item>
|
||||
<item>Excused absence</item>
|
||||
<item>Unknown</item>
|
||||
</string-array>
|
||||
<string name="pref_mod_settings_developer_mode">Developer mode (access to this page)</string>
|
||||
<string name="pref_mod_settings_developer_mode_summary">After disabling this setting, you will not be able to access this page anymore, but the settings will still be applied.</string>
|
||||
</resources>
|
@ -1,758 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<!--Activity/Fragment title-->
|
||||
<string name="login_title">Login</string>
|
||||
<string name="main_title">Wulkanowy</string>
|
||||
<string name="grade_title">Grades</string>
|
||||
<string name="attendance_title">Attendance</string>
|
||||
<string name="exam_title">Exams</string>
|
||||
<string name="timetable_title">Timetable</string>
|
||||
<string name="settings_title">Settings</string>
|
||||
<string name="more_title">More</string>
|
||||
<string name="about_title">About</string>
|
||||
<string name="logviewer_title">Log viewer</string>
|
||||
<string name="debug_title">Debug</string>
|
||||
<string name="notification_debug_title">Notification debug</string>
|
||||
<string name="contributors_title">Contributors</string>
|
||||
<string name="license_title">Licenses</string>
|
||||
<string name="message_title">Messages</string>
|
||||
<string name="send_message_title">New message</string>
|
||||
<string name="add_homework_title">New homework</string>
|
||||
<string name="note_title">Notes and achievements</string>
|
||||
<string name="homework_title">Homework</string>
|
||||
<string name="account_title">Accounts manager</string>
|
||||
<string name="account_quick_title">Select account</string>
|
||||
<string name="account_details_title">Account details</string>
|
||||
<string name="student_info_title">Student info</string>
|
||||
<string name="dashboard_title">Dashboard</string>
|
||||
<string name="notifications_center_title">Notifications center</string>
|
||||
<string name="menu_order_title">Menu configuartion</string>
|
||||
<!--Subtitles-->
|
||||
<string name="grade_subtitle">Semester %1$d, %2$d/%3$d</string>
|
||||
<!--Login-->
|
||||
<string name="login_header_default">Sign in with the student or parent account</string>
|
||||
<string name="login_header_symbol">Enter the symbol from the register page for account: <b>%1$s</b></string>
|
||||
<string name="login_nickname_hint">Username</string>
|
||||
<string name="login_email_hint">Email</string>
|
||||
<string name="login_login_pesel_email_hint">Login, PESEL or e-mail</string>
|
||||
<string name="login_password_hint">Password</string>
|
||||
<string name="login_host_hint">UONET+ register variant</string>
|
||||
<string name="login_domain_suffix_hint">Custom domain suffix</string>
|
||||
<string name="login_type_api">Mobile API</string>
|
||||
<string name="login_type_scrapper">Scraper</string>
|
||||
<string name="login_type_hybrid">Hybrid</string>
|
||||
<string name="login_token_hint">Token</string>
|
||||
<string name="login_pin_hint">PIN</string>
|
||||
<string name="login_symbol_hint">Symbol</string>
|
||||
<string name="login_symbol_placeholder">E.g. \"lodz\" or \"powiatjaroslawski\"</string>
|
||||
<string name="login_sign_in">Sign in</string>
|
||||
<string name="login_invalid_password">Password too short</string>
|
||||
<string name="login_incorrect_password_default">Login details are incorrect</string>
|
||||
<string name="login_incorrect_password">%1$s. Make sure the correct UONET+ register variation is selected below</string>
|
||||
<string name="login_invalid_pin">Invalid PIN</string>
|
||||
<string name="login_invalid_token">Invalid token</string>
|
||||
<string name="login_expired_token">Token expired</string>
|
||||
<string name="login_invalid_email">Invalid email</string>
|
||||
<string name="login_invalid_login">Use the assigned login instead of email</string>
|
||||
<string name="login_invalid_custom_email">Use the assigned login or email in @%1$s</string>
|
||||
<string name="login_invalid_symbol">Invalid symbol. If you cannot find it, please contact the school</string>
|
||||
<string name="login_invalid_symbol_definitely">Don\'t make this up! If you cannot find it, please contact the school</string>
|
||||
<string name="login_incorrect_symbol">Student not found. Validate the symbol and the chosen variation of the UONET+ register</string>
|
||||
<string name="login_duplicate_student">Selected student is already logged in</string>
|
||||
<string name="login_symbol_helper">The symbol can be found on the register page in <b>Uczeń</b> → <b>Dostęp Mobilny</b> → <b>Wygeneruj kod dostępu</b>.\n\nMake sure that you have set the appropriate register variant in the <b>UONET+ register variant</b> field on the first login screen</string>
|
||||
<string name="login_select_student">Select students to log in to the application</string>
|
||||
<string name="login_advanced">Other options</string>
|
||||
<string name="login_advanced_warning_mobile_api">In this mode, a lucky number does not work, a class grade stats, summary of attendance, excuse for absence, completed lessons, school information and preview of the list of registered devices</string>
|
||||
<string name="login_advanced_warning_scraper">This mode displays the same data as it appears on the register website</string>
|
||||
<string name="login_advanced_warning_hybrid">The combination of the best features of the other two modes. It works faster than scraper and provides features not available in the Mobile API mode. It is in the experimental phase</string>
|
||||
<string name="login_privacy_policy">Privacy policy</string>
|
||||
<string name="login_contact_header">Trouble signing in? Contact us!</string>
|
||||
<string name="login_contact_email">Email</string>
|
||||
<string name="login_contact_discord">Discord</string>
|
||||
<string name="login_email_intent_title">Send email</string>
|
||||
<string name="login_recover_warning">Make sure you select the correct UONET+ register variation!</string>
|
||||
<string name="login_recover_button">Reset password</string>
|
||||
<string name="login_recover_title">Recover your account</string>
|
||||
<string name="login_recover">Recover</string>
|
||||
<string name="login_signed_in">Student is already signed in</string>
|
||||
<string name="login_host_standard">Standard</string>
|
||||
<string name="login_other_search_locations">Other search locations</string>
|
||||
<string name="login_no_active_student">No active students found</string>
|
||||
<string name="login_symbol_enter">Enter a different symbol</string>
|
||||
<string name="login_support_title">Get help</string>
|
||||
<string name="login_support_school_hint">Full school name with the town (required)</string>
|
||||
<string name="login_support_school_placeholder">Np. ZSTiO Jarosław lub SP nr 99 w Łodzi</string>
|
||||
<string name="login_support_school_invalid">Enter correct name of the school</string>
|
||||
<string name="login_support_additional_hint">Additional information in Polish (optional)</string>
|
||||
<string name="login_support_additional_placeholder">Np. \"Ostatnio zmieniłem szkołę i…\" albo \"Jestem rodzicem i nie widzę drugiego dziecka…\"</string>
|
||||
<string name="login_support_submit">Submit</string>
|
||||
<!--Notifications-->
|
||||
<string name="notifications_header_title">Enable notifications</string>
|
||||
<string name="notifications_header_description">Enable notifications so you don\'t miss message from teacher or new grade</string>
|
||||
<string name="notifications_skip">Skip</string>
|
||||
<string name="notifications_enable">Enable</string>
|
||||
<!--Main-->
|
||||
<string name="main_account_picker">Account manager</string>
|
||||
<string name="main_log_in">Log in</string>
|
||||
<string name="main_session_expired">Session expired</string>
|
||||
<string name="main_session_relogin">Session expired, log in again</string>
|
||||
<string name="main_support_title">Application support</string>
|
||||
<string name="main_support_description">Do you like this app? Support its development by enabling non-invasive ads that you can disable at any time</string>
|
||||
<string name="main_support_positive">Enable ads</string>
|
||||
<!--Grade-->
|
||||
<string name="grade_header">Grade</string>
|
||||
<string name="grade_semester">Semester %d</string>
|
||||
<string name="grade_switch_semester">Change semester</string>
|
||||
<string name="grade_no_items">No grades</string>
|
||||
<string name="grade_weight">Weight</string>
|
||||
<string name="grade_weight_value">Weight: %s</string>
|
||||
<string name="grade_comment">Comment</string>
|
||||
<string name="grade_number_new_items">Number of new ratings: %1$d</string>
|
||||
<string name="grade_average">Average: %1$.2f</string>
|
||||
<string name="grade_points_sum">Points: %s</string>
|
||||
<string name="grade_no_average">No average</string>
|
||||
<string name="grade_summary_points">Total points</string>
|
||||
<string name="grade_summary_final_grade">Final grade</string>
|
||||
<string name="grade_summary_predicted_grade">Predicted grade</string>
|
||||
<string name="grade_summary_calculated_average">Calculated average</string>
|
||||
<string name="grade_summary_calculated_average_help_dialog_title">How does Calculated Average work?</string>
|
||||
<string name="grade_summary_calculated_average_help_dialog_message">The Calculated Average is the arithmetic average calculated from the subjects averages. It allows you to know the approximate final average. It is calculated in a way selected by the user in the application settings. It is recommended that you choose the appropriate option. This is because the calculation of school averages differs. Additionally, if your school reports the average of the subjects on the Vulcan page, the application downloads them and does not calculate these averages. This can be changed by forcing the calculation of the average in the application settings.\n\n<b>Average of grades only from selected semester</b>:\n1. Calculating the weighted average for each subject in a given semester\n2.Adding calculated averages\n3. Calculation of the arithmetic average of the summed averages\n\n<b>Average of averages from both semesters</b>:\n1.Calculating the weighted average for each subject in semester 1 and 2\n2. Calculating the arithmetic average of the calculated averages for semesters 1 and 2 for each subject.\n3. Adding calculated averages\n4. Calculation of the arithmetic average of the summed averages\n\n<b>Average of grades from the whole year:</b>\n1. Calculating weighted average over the year for each subject. The final average in the 1st semester is irrelevant.\n2. Adding calculated averages\n3. Calculating the arithmetic average of summed averages</string>
|
||||
<string name="grade_summary_final_average_help_dialog_title">How does the Final Average work?</string>
|
||||
<string name="grade_summary_final_average_help_dialog_message">The Final Average is the arithmetic average calculated from all currently available final grades in the given semester.\n\nThe calculation scheme consists of the following steps:\n1. Summing up the final grades given by teachers\n2. Divide by the number of subjects that have already been graded</string>
|
||||
<string name="grade_summary_final_average">Final average</string>
|
||||
<string name="grade_summary_from_subjects">from %1$d of %2$d subjects</string>
|
||||
<string name="grade_menu_summary">Summary</string>
|
||||
<string name="grade_menu_statistics">Class</string>
|
||||
<string name="grade_menu_read">Mark as read</string>
|
||||
<string name="grade_statistics_partial">Partial</string>
|
||||
<string name="grade_statistics_semester">Semester</string>
|
||||
<string name="grade_statistics_points">Points</string>
|
||||
<string name="grade_statistics_legend">Legend</string>
|
||||
<string name="grade_statistics_class_average">Class average: %1$s</string>
|
||||
<string name="grade_statistics_student_average">Your average: %1$s</string>
|
||||
<string name="grade_statistics_student_grade">Your grade: %1$s</string>
|
||||
<string name="grade_statistics_average_class">Class</string>
|
||||
<string name="grade_statistics_average_student">Student</string>
|
||||
<plurals name="grade_number_item">
|
||||
<item quantity="one">%d grade</item>
|
||||
<item quantity="other">%d grades</item>
|
||||
</plurals>
|
||||
<plurals name="grade_new_items">
|
||||
<item quantity="one">New grade</item>
|
||||
<item quantity="other">New grades</item>
|
||||
</plurals>
|
||||
<plurals name="grade_new_items_predicted">
|
||||
<item quantity="one">New predicted grade</item>
|
||||
<item quantity="other">New predicted grades</item>
|
||||
</plurals>
|
||||
<plurals name="grade_new_items_final">
|
||||
<item quantity="one">New final grade</item>
|
||||
<item quantity="other">New final grades</item>
|
||||
</plurals>
|
||||
<plurals name="grade_notify_new_items">
|
||||
<item quantity="one">You received %1$d grade</item>
|
||||
<item quantity="other">You received %1$d grades</item>
|
||||
</plurals>
|
||||
<plurals name="grade_notify_new_items_predicted">
|
||||
<item quantity="one">You received %1$d predicted grade</item>
|
||||
<item quantity="other">You received %1$d predicted grades</item>
|
||||
</plurals>
|
||||
<plurals name="grade_notify_new_items_final">
|
||||
<item quantity="one">You received %1$d final grade</item>
|
||||
<item quantity="other">You received %1$d final grades</item>
|
||||
</plurals>
|
||||
<!--Timetable-->
|
||||
<string name="timetable_lesson">Lesson</string>
|
||||
<string name="timetable_room">Room</string>
|
||||
<string name="timetable_group">Group</string>
|
||||
<string name="timetable_time">Hours</string>
|
||||
<string name="timetable_changes">Changes</string>
|
||||
<string name="timetable_no_items">No lessons this day</string>
|
||||
<string name="timetable_minutes">%s min</string>
|
||||
<string name="timetable_seconds">%s sec</string>
|
||||
<string name="timetable_time_left">%1$s left</string>
|
||||
<string name="timetable_time_until">in %1$s</string>
|
||||
<string name="timetable_finished">Finished</string>
|
||||
<string name="timetable_now">Now: %s</string>
|
||||
<string name="timetable_next">Next: %s</string>
|
||||
<string name="timetable_later">Later: %s</string>
|
||||
<string name="timetable_notify_lesson">%1$s lesson %2$d - %3$s</string>
|
||||
<string name="timetable_notify_change_room">Change of room from %1$s to %2$s</string>
|
||||
<string name="timetable_notify_change_teacher">Change of teacher from %1$s to %2$s</string>
|
||||
<string name="timetable_notify_change_subject">Change of subject from %1$s to %2$s</string>
|
||||
<plurals name="timetable_no_lesson">
|
||||
<item quantity="one">No lesson</item>
|
||||
<item quantity="other">No lessons</item>
|
||||
</plurals>
|
||||
<plurals name="timetable_notify_new_items_title">
|
||||
<item quantity="one">Timetable change</item>
|
||||
<item quantity="other">Timetable changes</item>
|
||||
</plurals>
|
||||
<plurals name="timetable_notify_new_items">
|
||||
<item quantity="one">%1$s - %2$d change in timetable</item>
|
||||
<item quantity="other">%1$s - %2$d changes in timetable</item>
|
||||
</plurals>
|
||||
<plurals name="timetable_notify_new_items_group">
|
||||
<item quantity="one">%1$d change in timetable</item>
|
||||
<item quantity="other">%1$d changes in timetable</item>
|
||||
</plurals>
|
||||
<plurals name="timetable_number_item">
|
||||
<item quantity="one">%d change</item>
|
||||
<item quantity="other">%d changes</item>
|
||||
</plurals>
|
||||
<!--Completed lessons-->
|
||||
<string name="completed_lessons_title">Completed lessons</string>
|
||||
<string name="completed_lessons_button">Show completed lessons</string>
|
||||
<string name="completed_lessons_no_items">No info about completed lessons</string>
|
||||
<string name="completed_lessons_topic">Topic</string>
|
||||
<string name="completed_lessons_absence">Absence</string>
|
||||
<string name="completed_lessons_resources">Resources</string>
|
||||
<!--Additional lessons-->
|
||||
<string name="additional_lessons_title">Additional lessons</string>
|
||||
<string name="additional_lessons_button">Show additional lessons</string>
|
||||
<string name="additional_lessons_no_items">No info about additional lessons</string>
|
||||
<string name="additional_lessons_add">New lesson</string>
|
||||
<string name="additional_lessons_add_title">New additional lesson</string>
|
||||
<string name="additional_lessons_add_success">Additional lesson added successfully</string>
|
||||
<string name="additional_lessons_delete_success">Additional lesson deleted successfully</string>
|
||||
<string name="additional_lessons_repeat">Repeat weekly</string>
|
||||
<string name="additional_lessons_delete_title">Delete additional lesson</string>
|
||||
<string name="additional_lessons_delete_one">Just this lesson</string>
|
||||
<string name="additional_lessons_delete_series">All in the series</string>
|
||||
<string name="additional_lessons_start">Start time</string>
|
||||
<string name="additional_lessons_end">End time</string>
|
||||
<string name="additional_lessons_end_time_error">End time must be greater than start time</string>
|
||||
<!--Attendance-->
|
||||
<string name="attendance_summary_button">Attendance summary</string>
|
||||
<string name="attendance_absence_school">Absent for school reasons</string>
|
||||
<string name="attendance_absence_excused">Excused absence</string>
|
||||
<string name="attendance_absence_unexcused">Unexcused absence</string>
|
||||
<string name="attendance_exemption">Exemption</string>
|
||||
<string name="attendance_excused_lateness">Excused lateness</string>
|
||||
<string name="attendance_unexcused_lateness">Unexcused lateness</string>
|
||||
<string name="attendance_present">Present</string>
|
||||
<string name="attendance_deleted">Deleted</string>
|
||||
<string name="attendance_unknown">Unknown</string>
|
||||
<string name="attendance_number">Number of lesson</string>
|
||||
<string name="attendance_no_items">No entries</string>
|
||||
<string name="attendance_excuse_dialog_reason">Absence reason (optional)</string>
|
||||
<string name="attendance_excuse_dialog_submit">Send</string>
|
||||
<string name="attendance_excuse_success">Absence excuse request sent successfully!</string>
|
||||
<string name="attendance_excuse_no_selection">You must select at least one absence!</string>
|
||||
<string name="attendance_excuse_title">Excuse</string>
|
||||
<plurals name="attendance_notify_new_items_title">
|
||||
<item quantity="one">New attendance</item>
|
||||
<item quantity="other">New attendance</item>
|
||||
</plurals>
|
||||
<plurals name="attendance_notify_new_items">
|
||||
<item quantity="one">%1$d new attendance</item>
|
||||
<item quantity="other">%1$d attendance</item>
|
||||
</plurals>
|
||||
<plurals name="attendance_number_item">
|
||||
<item quantity="one">%d attendance</item>
|
||||
<item quantity="other">%d attendance</item>
|
||||
</plurals>
|
||||
<!--Attendance summary-->
|
||||
<string name="attendance_summary_total">Total</string>
|
||||
<!--Exam-->
|
||||
<string name="exam_no_items">No exams this week</string>
|
||||
<string name="exam_type">Type</string>
|
||||
<string name="exam_entry_date">Entry date</string>
|
||||
<plurals name="exam_notify_new_item_title">
|
||||
<item quantity="one">New exam</item>
|
||||
<item quantity="other">New exams</item>
|
||||
</plurals>
|
||||
<plurals name="exam_notify_new_item_content">
|
||||
<item quantity="one">%d new exam</item>
|
||||
<item quantity="other">%d new exams</item>
|
||||
</plurals>
|
||||
<plurals name="exam_number_item">
|
||||
<item quantity="one">%d exam</item>
|
||||
<item quantity="other">%d exams</item>
|
||||
</plurals>
|
||||
<!--Message-->
|
||||
<string name="message_inbox">Inbox</string>
|
||||
<string name="message_sent">Sent</string>
|
||||
<string name="message_trash">Trash</string>
|
||||
<string name="message_no_subject">(no subject)</string>
|
||||
<string name="message_no_items">No messages</string>
|
||||
<string name="message_from">From:</string>
|
||||
<string name="message_to">To:</string>
|
||||
<string name="message_date">Date: %1$s</string>
|
||||
<string name="message_reply">Reply</string>
|
||||
<string name="message_forward">Forward</string>
|
||||
<string name="message_select_all">Select all</string>
|
||||
<string name="message_unselect_all">Unselect all</string>
|
||||
<string name="message_move_to_trash">Move to trash</string>
|
||||
<string name="message_delete_forever">Delete permanently</string>
|
||||
<string name="message_delete_success">Message deleted successfully</string>
|
||||
<string name="message_mailbox_type_student">student</string>
|
||||
<string name="message_mailbox_type_parent">parent</string>
|
||||
<string name="message_mailbox_type_guardian">guardian</string>
|
||||
<string name="message_mailbox_type_employee">employee</string>
|
||||
<string name="message_share">Share</string>
|
||||
<string name="message_print">Print</string>
|
||||
<string name="message_subject">Subject</string>
|
||||
<string name="message_content">Content</string>
|
||||
<string name="message_send_successful">Message sent successfully</string>
|
||||
<string name="message_not_exists">Message does not exist</string>
|
||||
<string name="message_required_recipients">You need to choose at least 1 recipient</string>
|
||||
<string name="message_content_min_length">The message content must be at least 3 characters</string>
|
||||
<string name="message_chip_all_mailboxes">All mailboxes</string>
|
||||
<string name="message_chip_only_unread">Only unread</string>
|
||||
<string name="message_chip_only_with_attachments">Only with attachments</string>
|
||||
<string name="message_read">Read: %s</string>
|
||||
<string name="message_read_by">Read by: %1$d of %2$d people</string>
|
||||
<plurals name="message_number_item">
|
||||
<item quantity="one">%1$d message</item>
|
||||
<item quantity="other">%1$d messages</item>
|
||||
</plurals>
|
||||
<plurals name="message_new_items">
|
||||
<item quantity="one">New message</item>
|
||||
<item quantity="other">New messages</item>
|
||||
</plurals>
|
||||
<string name="message_restore_dialog">Do you want to restore draft message?</string>
|
||||
<string name="message_restore_dialog_with_recipients">Do you want to restore draft message with recipients: %s?</string>
|
||||
<plurals name="message_notify_new_items">
|
||||
<item quantity="one">You received %1$d message</item>
|
||||
<item quantity="other">You received %1$d messages</item>
|
||||
</plurals>
|
||||
<plurals name="message_selected_messages_count">
|
||||
<item quantity="one">%1$d selected</item>
|
||||
<item quantity="other">%1$d selected</item>
|
||||
</plurals>
|
||||
<string name="message_messages_deleted">Messages deleted</string>
|
||||
<string name="message_mailbox_chooser_title">Choose mailbox</string>
|
||||
<string name="message_incognito_mode_on">Incognito mode is on</string>
|
||||
<string name="message_incognito_description">Thanks to incognito mode sender is not notified when you read the message</string>
|
||||
<!--Note-->
|
||||
<string name="note_no_items">No info about notes</string>
|
||||
<string name="note_points">Points</string>
|
||||
<plurals name="note_number_item">
|
||||
<item quantity="one">%d note</item>
|
||||
<item quantity="other">%d notes</item>
|
||||
</plurals>
|
||||
<plurals name="note_new_items">
|
||||
<item quantity="one">New note</item>
|
||||
<item quantity="other">New notes</item>
|
||||
</plurals>
|
||||
<plurals name="note_notify_new_items">
|
||||
<item quantity="one">You received %1$d note</item>
|
||||
<item quantity="other">You received %1$d notes</item>
|
||||
</plurals>
|
||||
<!--Praise-->
|
||||
<plurals name="praise_number_item">
|
||||
<item quantity="one">%d praise</item>
|
||||
<item quantity="other">%d praises</item>
|
||||
</plurals>
|
||||
<plurals name="praise_new_items">
|
||||
<item quantity="one">New praise</item>
|
||||
<item quantity="other">New praises</item>
|
||||
</plurals>
|
||||
<plurals name="praise_notify_new_items">
|
||||
<item quantity="one">You received %1$d praise</item>
|
||||
<item quantity="other">You received %1$d praises</item>
|
||||
</plurals>
|
||||
<!--Neutral notes-->
|
||||
<plurals name="neutral_note_number_item">
|
||||
<item quantity="one">%d neutral note</item>
|
||||
<item quantity="other">%d neutral notes</item>
|
||||
</plurals>
|
||||
<plurals name="neutral_note_new_items">
|
||||
<item quantity="one">New neutral note</item>
|
||||
<item quantity="other">New neutral notes</item>
|
||||
</plurals>
|
||||
<plurals name="neutral_note_notify_new_items">
|
||||
<item quantity="one">You received %1$d neutral note</item>
|
||||
<item quantity="other">You received %1$d neutral notes</item>
|
||||
</plurals>
|
||||
<!--Homework-->
|
||||
<string name="homework_no_items">No info about homework</string>
|
||||
<string name="homework_mark_as_done">Mark as done</string>
|
||||
<string name="homework_mark_as_undone">Mark as undone</string>
|
||||
<string name="homework_add">Add homework</string>
|
||||
<string name="homework_add_success">Homework added successfully</string>
|
||||
<string name="homework_delete_success">Homework deleted successfully</string>
|
||||
<string name="homework_attachments">Attachments</string>
|
||||
<plurals name="homework_notify_new_item_title">
|
||||
<item quantity="one">New homework</item>
|
||||
<item quantity="other">New homework</item>
|
||||
</plurals>
|
||||
<plurals name="homework_notify_new_item_content">
|
||||
<item quantity="one">You received %d new homework</item>
|
||||
<item quantity="other">You received %d new homework</item>
|
||||
</plurals>
|
||||
<plurals name="homework_number_item">
|
||||
<item quantity="one">%d homework</item>
|
||||
<item quantity="other">%d homework</item>
|
||||
</plurals>
|
||||
<!--Lucky number-->
|
||||
<string name="lucky_number_title">Lucky number</string>
|
||||
<string name="lucky_number_header">Today\'s lucky number is</string>
|
||||
<string name="lucky_number_empty">No info about the lucky number</string>
|
||||
<string name="lucky_number_notify_new_item_title">Lucky number for today</string>
|
||||
<string name="lucky_number_notify_new_item">Today\'s lucky number is: %s</string>
|
||||
<string name="lucky_number_history_button">Show history</string>
|
||||
<!--Lucky number history-->
|
||||
<string name="lucky_number_history_title">Lucky number history</string>
|
||||
<string name="lucky_number_history_empty">No info about lucky numbers</string>
|
||||
<!--Mobile devices-->
|
||||
<string name="mobile_devices_title">Mobile devices</string>
|
||||
<string name="mobile_devices_no_items">No devices</string>
|
||||
<string name="mobile_devices_unregister">Deregister</string>
|
||||
<string name="mobile_device_removed">Device removed</string>
|
||||
<string name="mobile_device_qr">QR code</string>
|
||||
<string name="mobile_device_token">Token</string>
|
||||
<string name="mobile_device_symbol">Symbol</string>
|
||||
<string name="mobile_device_pin">PIN</string>
|
||||
<!--School and teachers-->
|
||||
<string name="schoolandteachers_title">School and teachers</string>
|
||||
<!--School-->
|
||||
<string name="school_title">School</string>
|
||||
<string name="school_no_info">No info about school</string>
|
||||
<string name="school_name">School name</string>
|
||||
<string name="school_address">School address</string>
|
||||
<string name="school_telephone">Telephone</string>
|
||||
<string name="school_headmaster">Name of headmaster</string>
|
||||
<string name="school_pedagogue">Name of pedagogue</string>
|
||||
<string name="school_address_button">Show on map</string>
|
||||
<string name="school_telephone_button">Call</string>
|
||||
<!--Teacher-->
|
||||
<string name="teachers_title">Teachers</string>
|
||||
<string name="teacher_no_items">No info about teachers</string>
|
||||
<string name="teacher_no_subject">No subject</string>
|
||||
<!--Conference-->
|
||||
<string name="conferences_title">Conferences</string>
|
||||
<string name="conference_no_items">No info about conferences</string>
|
||||
<plurals name="conference_number_item">
|
||||
<item quantity="one">%d conference</item>
|
||||
<item quantity="other">%d conferences</item>
|
||||
</plurals>
|
||||
<plurals name="conference_notify_new_item_title">
|
||||
<item quantity="one">New conference</item>
|
||||
<item quantity="other">New conferences</item>
|
||||
</plurals>
|
||||
<plurals name="conference_notify_new_items">
|
||||
<item quantity="one">You have %1$d new conference</item>
|
||||
<item quantity="other">You have %1$d new conferences</item>
|
||||
</plurals>
|
||||
<string name="conferences_present">Present at conference</string>
|
||||
<string name="conference_agenda">Agenda</string>
|
||||
<string name="conference_place">Place</string>
|
||||
<string name="conference_topic">Topic</string>
|
||||
<!--Director information-->
|
||||
<string name="school_announcement_title">School announcements</string>
|
||||
<string name="school_announcement_no_items">No school announcements</string>
|
||||
<plurals name="school_announcement_number_item">
|
||||
<item quantity="one">%d school announcement</item>
|
||||
<item quantity="other">%d school announcements</item>
|
||||
</plurals>
|
||||
<plurals name="school_announcement_notify_new_item_title">
|
||||
<item quantity="one">New school announcement</item>
|
||||
<item quantity="other">New school announcements</item>
|
||||
</plurals>
|
||||
<plurals name="school_announcement_notify_new_items">
|
||||
<item quantity="one">You have %1$d new school announcement</item>
|
||||
<item quantity="other">You have %1$d new school announcements</item>
|
||||
</plurals>
|
||||
<!--Account-->
|
||||
<string name="account_add_new">Add account</string>
|
||||
<string name="account_logout">Logout</string>
|
||||
<string name="account_confirm">Do you want to log out this student?</string>
|
||||
<string name="account_logout_student">Student logout</string>
|
||||
<string name="account_type_student">Student account</string>
|
||||
<string name="account_type_parent">Parent account</string>
|
||||
<string name="account_details_edit">Edit data</string>
|
||||
<string name="account_quick_manager">Accounts manager</string>
|
||||
<string name="account_select_student">Select student</string>
|
||||
<string name="account_family">Family</string>
|
||||
<string name="account_contact">Contact</string>
|
||||
<string name="account_address">Residence details</string>
|
||||
<string name="account_personal_data">Personal information</string>
|
||||
<!--About-->
|
||||
<string name="about_version">App version</string>
|
||||
<string name="about_contributor">Contributors</string>
|
||||
<string name="about_contributor_summary">List of Wulkanowy developers</string>
|
||||
<string name="about_feedback">Report a bug</string>
|
||||
<string name="about_feedback_summary">Send a bug report via e-mail</string>
|
||||
<string name="about_faq">FAQ</string>
|
||||
<string name="about_faq_summary">Read Frequently Asked Questions</string>
|
||||
<string name="about_discord">Discord server</string>
|
||||
<string name="about_discord_summary">Join the Wulkanowy community</string>
|
||||
<string name="about_facebook">Facebook fanpage</string>
|
||||
<string name="about_twitter">Twitter page</string>
|
||||
<string name="about_twitter_summary">Follow us on twitter</string>
|
||||
<string name="about_facebook_summary">Like our facebook fanpage</string>
|
||||
<string name="about_privacy">Privacy policy</string>
|
||||
<string name="about_privacy_summary">Rules for collecting personal data</string>
|
||||
<string name="about_system">System settings</string>
|
||||
<string name="about_system_summary">Open system settings</string>
|
||||
<string name="about_homepage">Homepage</string>
|
||||
<string name="about_homepage_summary">Visit the website and help develop the application</string>
|
||||
<string name="about_licenses">Licenses</string>
|
||||
<string name="about_licenses_summary">Licenses of libraries used in the application</string>
|
||||
<!--Licenses-->
|
||||
<string name="license_dialog_title">License</string>
|
||||
<!--Contributor-->
|
||||
<string name="contributor_avatar_description">Avatar</string>
|
||||
<string name="contributor_see_more">See more on GitHub</string>
|
||||
<!--Student info-->
|
||||
<string name="student_info_empty">No info about student or student family</string>
|
||||
<string name="student_info_first_name">Name</string>
|
||||
<string name="student_info_second_name">Second name</string>
|
||||
<string name="student_info_gender">Gender</string>
|
||||
<string name="student_info_polish_citizenship">Polish citizenship</string>
|
||||
<string name="student_info_family_name">Family name</string>
|
||||
<string name="student_info_parents_name">Mother\'s and father\'s names</string>
|
||||
<string name="student_info_phone">Phone</string>
|
||||
<string name="student_info_cellphone">Cellphone</string>
|
||||
<string name="student_info_email">E-mail</string>
|
||||
<string name="student_info_address">Address of residence</string>
|
||||
<string name="student_info_registered_address">Address of registration</string>
|
||||
<string name="student_info_correspondence_address">Correspondence address</string>
|
||||
<string name="student_info_full_name">Surname and first name</string>
|
||||
<string name="student_info_kinship">Degree of kinship</string>
|
||||
<string name="student_info_guardian_address">Address</string>
|
||||
<string name="student_info_phones">Phones</string>
|
||||
<string name="student_info_male">Male</string>
|
||||
<string name="student_info_female">Female</string>
|
||||
<string name="student_info_last_name">Last name</string>
|
||||
<string name="student_info_guardian">Guardian</string>
|
||||
<!--Account edit-->
|
||||
<string name="account_edit_nick_hint">Nick</string>
|
||||
<string name="account_edit_header">Add nick</string>
|
||||
<string name="account_edit_avatar_title">Choose avatar color</string>
|
||||
<!--Log viewer-->
|
||||
<string name="logviewer_share">Share logs</string>
|
||||
<string name="logviewer_refresh">Refresh</string>
|
||||
<!--Dashboard-->
|
||||
<string name="dashboard_timetable_title">Lessons</string>
|
||||
<string name="dashboard_timetable_title_tomorrow">(Tomorrow)</string>
|
||||
<string name="dashboard_timetable_title_today_and_tomorrow">(Today and tomorrow)</string>
|
||||
<string name="dashboard_timetable_first_lesson_title_moment">In a moment:</string>
|
||||
<string name="dashboard_timetable_first_lesson_title_soon">Soon:</string>
|
||||
<string name="dashboard_timetable_first_lesson_title_first">First:</string>
|
||||
<string name="dashboard_timetable_first_lesson_title_now">Now:</string>
|
||||
<string name="dashboard_timetable_second_lesson_value_end">End of lessons</string>
|
||||
<string name="dashboard_timetable_second_lessons_title">Next:</string>
|
||||
<string name="dashboard_timetable_third_title">Later:</string>
|
||||
<plurals name="dashboard_timetable_third_value">
|
||||
<item quantity="one">%1$d more lesson</item>
|
||||
<item quantity="other">%1$d more lessons</item>
|
||||
</plurals>
|
||||
<string name="dashboard_timetable_third_time">until %1$s</string>
|
||||
<string name="dashboard_timetable_no_lessons">No upcoming lessons</string>
|
||||
<string name="dashboard_timetable_error">An error occurred while loading the lessons</string>
|
||||
<string name="dashboard_homework_title">Homework</string>
|
||||
<string name="dashboard_homework_no_homework">No homework to do</string>
|
||||
<string name="dashboard_homework_error">An error occurred while loading the homework</string>
|
||||
<plurals name="dashboard_homework_more">
|
||||
<item quantity="one">%1$d more homework</item>
|
||||
<item quantity="other">%1$d more homework</item>
|
||||
</plurals>
|
||||
<string name="dashboard_homework_time">due %1$s</string>
|
||||
<string name="dashboard_grade_title">Last grades</string>
|
||||
<string name="dashboard_grade_no_grade">No new grades</string>
|
||||
<string name="dashboard_grade_error">An error occurred while loading the grades</string>
|
||||
<string name="dashboard_announcements_title">School announcements</string>
|
||||
<string name="dashboard_announcements_no_announcements">No current announcements</string>
|
||||
<string name="dashboard_announcements_error">An error occurred while loading the announcements</string>
|
||||
<plurals name="dashboard_announcements_more">
|
||||
<item quantity="one">%1$d more announcement</item>
|
||||
<item quantity="other">%1$d more announcements</item>
|
||||
</plurals>
|
||||
<string name="dashboard_exams_title">Exams</string>
|
||||
<string name="dashboard_exams_no_exams">No upcoming exams</string>
|
||||
<string name="dashboard_exams_error">An error occurred while loading the exams</string>
|
||||
<plurals name="dashboard_exams_more">
|
||||
<item quantity="one">%1$d more exam</item>
|
||||
<item quantity="other">%1$d more exams</item>
|
||||
</plurals>
|
||||
<string name="dashboard_conferences_title">Conferences</string>
|
||||
<string name="dashboard_conferences_no_conferences">No upcoming conferences</string>
|
||||
<string name="dashboard_conferences_error">An error occurred while loading the conferences</string>
|
||||
<plurals name="dashboard_conference_more">
|
||||
<item quantity="one">%1$d more conference</item>
|
||||
<item quantity="other">%1$d more conferences</item>
|
||||
</plurals>
|
||||
<string name="dashboard_horizontal_group_error">An error occurred while loading data</string>
|
||||
<string name="dashboard_horizontal_group_no_data">None</string>
|
||||
<!--Error dialog-->
|
||||
<string name="dialog_error_check_update">Check for updates</string>
|
||||
<string name="dialog_error_check_update_message">Before reporting a bug, check first if an update with the bug fix is available</string>
|
||||
<!--Generic-->
|
||||
<string name="all_content">Content</string>
|
||||
<string name="all_retry">Retry</string>
|
||||
<string name="all_description">Description</string>
|
||||
<string name="all_no_description">No description</string>
|
||||
<string name="all_teacher">Teacher</string>
|
||||
<string name="all_date">Date</string>
|
||||
<string name="all_entry_date">Entry date</string>
|
||||
<string name="all_color">Color</string>
|
||||
<string name="all_details">Details</string>
|
||||
<string name="all_category">Category</string>
|
||||
<string name="all_close">Close</string>
|
||||
<string name="all_no_data">No data</string>
|
||||
<string name="all_subject">Subject</string>
|
||||
<string name="all_prev">Prev</string>
|
||||
<string name="all_next">Next</string>
|
||||
<string name="all_search">Search</string>
|
||||
<string name="all_search_hint">Search…</string>
|
||||
<string name="all_yes">Yes</string>
|
||||
<string name="all_no">No</string>
|
||||
<string name="all_save">Save</string>
|
||||
<string name="all_title">Title</string>
|
||||
<string name="all_add">Add</string>
|
||||
<string name="all_copied">Copied</string>
|
||||
<string name="all_undo">Undo</string>
|
||||
<string name="all_change">Change</string>
|
||||
<string name="all_add_to_calendar">Add to calendar</string>
|
||||
<string name="all_cancel">Cancel</string>
|
||||
<!--Timetable Widget-->
|
||||
<string name="widget_timetable_no_items">No lessons</string>
|
||||
<string name="widget_timetable_last_synchronization">Synchronized on %1$s at %2$s</string>
|
||||
<string name="widget_timetable_theme_title">Choose theme</string>
|
||||
<string name="widget_timetable_theme_light">Light</string>
|
||||
<string name="widget_timetable_theme_dark">Dark</string>
|
||||
<string name="widget_timetable_theme_system">System Theme</string>
|
||||
<!--Preferences-->
|
||||
<string name="pref_view_header">App</string>
|
||||
<string name="pref_view_list">Default view</string>
|
||||
<string name="pref_view_grade_average_mode">Calculated average options</string>
|
||||
<string name="pref_view_grade_average_force_calc">Force average calculation by app</string>
|
||||
<string name="pref_view_present">Show presence</string>
|
||||
<string name="pref_view_app_theme">Theme</string>
|
||||
<string name="pref_view_expand_grade">Grades expanding</string>
|
||||
<string name="pref_view_timetable_show_groups">Show groups next to subjects</string>
|
||||
<string name="pref_view_timetable_show_gaps">Show empty tiles where there\'s no lesson</string>
|
||||
<string name="pref_view_grade_statistics_list">Show chart list in class grades</string>
|
||||
<string name="pref_view_subjects_without_grades">Show subjects without grades</string>
|
||||
<string name="pref_view_grade_color_scheme">Grades color scheme</string>
|
||||
<string name="pref_view_grade_sorting_mode">Subjects sorting</string>
|
||||
<string name="pref_view_app_language">Language</string>
|
||||
<string name="pref_view_menu_order_title">Menu configuration</string>
|
||||
<string name="pref_view_menu_order_summary">Set the order of functions in the menu</string>
|
||||
<string name="pref_notify_header">Notifications</string>
|
||||
<string name="pref_notify_header_other">Other</string>
|
||||
<string name="pref_notify_switch">Show notifications</string>
|
||||
<string name="pref_notify_upcoming_lessons_switch">Show upcoming lesson notifications</string>
|
||||
<string name="pref_notify_upcoming_lessons_persistent_switch">Make upcoming lesson notification persistent</string>
|
||||
<string name="pref_notify_upcoming_lessons_persistent_summary">Turn off when notification is not showing in your watch/band</string>
|
||||
<string name="pref_notify_open_system_settings">Open system notification settings</string>
|
||||
<string name="pref_notify_fix_sync_issues">Fix synchronization & notifications issues</string>
|
||||
<string name="pref_notify_fix_sync_issues_message">Your device may have data synchronization issues and with notifications.\n\nTo fix them, you need to add Wulkanowy to the autostart and turn off battery optimization/saving in the phone settings.</string>
|
||||
<string name="pref_notify_debug_switch">Show debug notifications</string>
|
||||
<string name="pref_notify_disabled_summary">Synchronization is disabled</string>
|
||||
<string name="pref_notify_notifications_piggyback_header">Official app notifications</string>
|
||||
<string name="pref_notify_notifications_piggyback">Capture official app notifications</string>
|
||||
<string name="pref_notify_notifications_piggyback_cancel_original">Remove official app notifications after capture</string>
|
||||
<string name="pref_notification_piggyback_popup_title">Capture notifications</string>
|
||||
<string name="pref_notification_piggyback_popup_description">With this feature you can gain a substitute of push notifications like in the official app. All you need to do is allow Wulkanowy to receive all notifications in your system settings.\n\nHow it works?\nWhen you get a notification in Dziennik VULCAN, Wulkanowy will be notified (that\'s what these extra permissions are for) and will trigger a sync so that can send its own notification.\n\nFOR ADVANCED USERS ONLY</string>
|
||||
<string name="pref_notification_exact_alarm_popup_title">Upcoming lesson notifications</string>
|
||||
<string name="pref_notification_exact_alarm_popup_descriptions">You must allow the Wulkanowy app to set alarms and reminders in your system settings to use this feature.</string>
|
||||
<string name="pref_notification_go_to_settings">Go to settings</string>
|
||||
<string name="pref_services_header">Synchronization</string>
|
||||
<string name="pref_services_switch">Automatic update</string>
|
||||
<string name="pref_services_suspended">Suspended on holidays</string>
|
||||
<string name="pref_services_interval">Updates interval</string>
|
||||
<string name="pref_services_wifi">Wi-Fi only</string>
|
||||
<string name="pref_services_force_sync">Sync now</string>
|
||||
<string name="pref_services_message_sync_success">Synced!</string>
|
||||
<string name="pref_services_message_sync_failed">Sync failed</string>
|
||||
<string name="pref_services_sync_in_progress">Sync in progress</string>
|
||||
<string name="pref_services_last_full_sync_date">Last full sync: %s</string>
|
||||
<string name="pref_other_grade_modifier_plus">Value of the plus</string>
|
||||
<string name="pref_other_grade_modifier_minus">Value of the minus</string>
|
||||
<string name="pref_other_fill_message_content">Reply with message history</string>
|
||||
<string name="pref_other_optional_arithmetic_average">Show arithmetic average when no weights provided</string>
|
||||
<string name="pref_other_incognito_mode">Incognito mode</string>
|
||||
<string name="pref_other_incognito_mode_summary">Do not inform about reading the message</string>
|
||||
<string name="pref_ads_support_category_name">Support</string>
|
||||
<string name="pref_ads_privacy_policy">Privacy Policy</string>
|
||||
<string name="pref_ads_agreements">Agreements</string>
|
||||
<string name="pref_ads_consent">Show consent to data processing</string>
|
||||
<string name="pref_ads_show_in_app">Show ads in app</string>
|
||||
<string name="pref_ads_support">Watch single ad to support project</string>
|
||||
<string name="pref_ads_privacy_title">Consent to data processing</string>
|
||||
<string name="pref_ads_privacy_description">To view an advertisement you must agree to the data processing terms of our Privacy Policy</string>
|
||||
<string name="pref_ads_privacy_agree">Agree</string>
|
||||
<string name="pref_ads_privacy_link">Privacy policy</string>
|
||||
<string name="pref_ads_loading">Ad is loading</string>
|
||||
<string name="pref_ads_once_per_visit">Thank you for your support, come back later for more ads</string>
|
||||
<string name="pref_settings_advanced_title">Advanced</string>
|
||||
<string name="pref_settings_appearance_title">Appearance & Behavior</string>
|
||||
<string name="pref_settings_notifications_title">Notifications</string>
|
||||
<string name="pref_settings_sync_title">Synchronization</string>
|
||||
<string name="pref_settings_ads_title">Advertisements</string>
|
||||
<string name="pref_grades_appearance_header">Grades</string>
|
||||
<string name="pref_dashboard_appearance_header">Dashboard</string>
|
||||
<string name="pref_dashboard_appearance_tiles_title">Tiles visibility</string>
|
||||
<string name="pref_attendance_appearance_view">Attendance</string>
|
||||
<string name="pref_timetable_appearance_view">Timetable</string>
|
||||
<string name="pref_grades_advanced_header">Grades</string>
|
||||
<string name="pref_counted_average_advanced_header">Calculated average</string>
|
||||
<string name="pref_messages_advanced_header">Messages</string>
|
||||
<string name="pref_appearance_category">Appearance & Behavior</string>
|
||||
<string name="pref_appearance_category_summary">Languages, themes, subjects sorting</string>
|
||||
<string name="pref_notifications_category_summary">App notifications, fix problems</string>
|
||||
<string name="pref_notifications_category">Notifications</string>
|
||||
<string name="pref_sync_category">Synchronization</string>
|
||||
<string name="pref_sync_category_summary">Automatic update, synchronization interval</string>
|
||||
<string name="pref_advanced_category_summary">Plus and minus values, average calculation</string>
|
||||
<string name="pref_advanced_category">Advanced</string>
|
||||
<string name="pref_about_category_summary">App version, contributors, social portals</string>
|
||||
<string name="pref_ads_category_summary">Displaying advertisements, project support</string>
|
||||
<!--Notification Channels-->
|
||||
<string name="channel_new_grades">New grades</string>
|
||||
<string name="channel_new_homework">New homework</string>
|
||||
<string name="channel_new_conference">New conferences</string>
|
||||
<string name="channel_new_exam">New exams</string>
|
||||
<string name="channel_lucky_number">Lucky number</string>
|
||||
<string name="channel_new_message">New messages</string>
|
||||
<string name="channel_new_notes">New notes</string>
|
||||
<string name="channel_new_school_announcement">New school announcements</string>
|
||||
<string name="channel_push">Push notifications</string>
|
||||
<string name="channel_upcoming_lessons">Upcoming lessons</string>
|
||||
<string name="channel_debug">Debug</string>
|
||||
<string name="channel_change_timetable">Timetable change</string>
|
||||
<string name="channel_new_attendance">New attendance</string>
|
||||
<!--Colors-->
|
||||
<string name="all_black">Black</string>
|
||||
<string name="all_red">Red</string>
|
||||
<string name="all_blue">Blue</string>
|
||||
<string name="all_green">Green</string>
|
||||
<string name="all_purple">Purple</string>
|
||||
<string name="all_empty_color">No color</string>
|
||||
<!--Update helper-->
|
||||
<string name="update_download_started">Download of updates has started…</string>
|
||||
<string name="update_download_success">An update has just been downloaded.</string>
|
||||
<string name="update_download_success_button">Restart</string>
|
||||
<string name="update_failed">Update failed! Wulkanowy may not function properly. Consider updating</string>
|
||||
<!--Menu order-->
|
||||
<string name="menu_order_confirm_title">Application restart</string>
|
||||
<string name="menu_order_confirm_content">The application must restart for the changes to be saved</string>
|
||||
<string name="menu_order_confirm_restart">Restart</string>
|
||||
<!--Auth-->
|
||||
<string name="auth_api_error">Authorization has been rejected. The data provided does not match the records in the secretary\'s office.</string>
|
||||
<string name="auth_invalid_error">Invalid PESEL</string>
|
||||
<string name="auth_pesel">PESEL</string>
|
||||
<string name="auth_button">Authorize</string>
|
||||
<string name="auth_success">Authorization completed successfully</string>
|
||||
<string name="auth_title">Authorization</string>
|
||||
<string name="auth_description">To operate the application, we need to confirm your identity. Please enter the student\'s PESEL <b>%1$s</b> in the field below</string>
|
||||
<string name="auth_button_skip">Skip for now</string>
|
||||
<!--Errors-->
|
||||
<string name="error_no_internet">No internet connection</string>
|
||||
<string name="error_invalid_device_datetime">An error occurred. Check your device clock</string>
|
||||
<string name="error_timeout">Connection to register failed. Servers can be overloaded. Please try again later</string>
|
||||
<string name="error_login_failed">Loading data failed. Please try again later</string>
|
||||
<string name="error_password_change_required">Register password change required</string>
|
||||
<string name="error_service_unavailable">Maintenance underway UONET + register. Try again later</string>
|
||||
<string name="error_unknown_uonet">Unknown UONET + register error. Try again later</string>
|
||||
<string name="error_unknown_app">Unknown application error. Please try again later</string>
|
||||
<string name="error_unknown">An unexpected error occurred</string>
|
||||
<string name="error_feature_disabled">Feature disabled by your school</string>
|
||||
<string name="error_feature_not_available">Feature not available. Login in a mode other than Mobile API</string>
|
||||
<string name="error_field_required">This field is required</string>
|
||||
<string name="pref_mod_settings_other_title">Other</string>
|
||||
</resources>
|
@ -1,21 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="pref_mod_settings_title">Hidden settings</string>
|
||||
<string name="pref_hidden_settings_attendance_percentage">Attendance percentage</string>
|
||||
<string name="pref_hidden_settings_hidden_grades">Hide grades</string>
|
||||
<string name="pref_mod_settings_hidden_attendance_items">Hidden attendance items</string>
|
||||
<string name="pref_mod_settings_show_notes">Note sullo spettacolo</string>
|
||||
|
||||
<string-array name="mod_settings_attendance_entries">
|
||||
<item>Unexcused absence</item>
|
||||
<item>Exemption</item>
|
||||
<item>Excused lateness</item>
|
||||
<item>Unexcused lateness</item>
|
||||
<item>Present</item>
|
||||
<item>Deleted</item>
|
||||
<item>Excused absence</item>
|
||||
<item>Unknown</item>
|
||||
</string-array>
|
||||
<string name="pref_mod_settings_developer_mode">Developer mode (access to this page)</string>
|
||||
<string name="pref_mod_settings_developer_mode_summary">After disabling this setting, you will not be able to access this page anymore, but the settings will still be applied.</string>
|
||||
</resources>
|
@ -1,758 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<!--Activity/Fragment title-->
|
||||
<string name="login_title">Login</string>
|
||||
<string name="main_title">Wulkanowy</string>
|
||||
<string name="grade_title">Grades</string>
|
||||
<string name="attendance_title">Attendance</string>
|
||||
<string name="exam_title">Exams</string>
|
||||
<string name="timetable_title">Timetable</string>
|
||||
<string name="settings_title">Settings</string>
|
||||
<string name="more_title">More</string>
|
||||
<string name="about_title">About</string>
|
||||
<string name="logviewer_title">Log viewer</string>
|
||||
<string name="debug_title">Debug</string>
|
||||
<string name="notification_debug_title">Notification debug</string>
|
||||
<string name="contributors_title">Contributors</string>
|
||||
<string name="license_title">Licenses</string>
|
||||
<string name="message_title">Messages</string>
|
||||
<string name="send_message_title">New message</string>
|
||||
<string name="add_homework_title">New homework</string>
|
||||
<string name="note_title">Notes and achievements</string>
|
||||
<string name="homework_title">Homework</string>
|
||||
<string name="account_title">Accounts manager</string>
|
||||
<string name="account_quick_title">Select account</string>
|
||||
<string name="account_details_title">Account details</string>
|
||||
<string name="student_info_title">Student info</string>
|
||||
<string name="dashboard_title">Dashboard</string>
|
||||
<string name="notifications_center_title">Notifications center</string>
|
||||
<string name="menu_order_title">Menu configuartion</string>
|
||||
<!--Subtitles-->
|
||||
<string name="grade_subtitle">Semester %1$d, %2$d/%3$d</string>
|
||||
<!--Login-->
|
||||
<string name="login_header_default">Sign in with the student or parent account</string>
|
||||
<string name="login_header_symbol">Enter the symbol from the register page for account: <b>%1$s</b></string>
|
||||
<string name="login_nickname_hint">Username</string>
|
||||
<string name="login_email_hint">Email</string>
|
||||
<string name="login_login_pesel_email_hint">Login, PESEL or e-mail</string>
|
||||
<string name="login_password_hint">Password</string>
|
||||
<string name="login_host_hint">UONET+ register variant</string>
|
||||
<string name="login_domain_suffix_hint">Custom domain suffix</string>
|
||||
<string name="login_type_api">Mobile API</string>
|
||||
<string name="login_type_scrapper">Scraper</string>
|
||||
<string name="login_type_hybrid">Hybrid</string>
|
||||
<string name="login_token_hint">Token</string>
|
||||
<string name="login_pin_hint">PIN</string>
|
||||
<string name="login_symbol_hint">Symbol</string>
|
||||
<string name="login_symbol_placeholder">E.g. \"lodz\" or \"powiatjaroslawski\"</string>
|
||||
<string name="login_sign_in">Sign in</string>
|
||||
<string name="login_invalid_password">Password too short</string>
|
||||
<string name="login_incorrect_password_default">Login details are incorrect</string>
|
||||
<string name="login_incorrect_password">%1$s. Make sure the correct UONET+ register variation is selected below</string>
|
||||
<string name="login_invalid_pin">Invalid PIN</string>
|
||||
<string name="login_invalid_token">Invalid token</string>
|
||||
<string name="login_expired_token">Token expired</string>
|
||||
<string name="login_invalid_email">Invalid email</string>
|
||||
<string name="login_invalid_login">Use the assigned login instead of email</string>
|
||||
<string name="login_invalid_custom_email">Use the assigned login or email in @%1$s</string>
|
||||
<string name="login_invalid_symbol">Invalid symbol. If you cannot find it, please contact the school</string>
|
||||
<string name="login_invalid_symbol_definitely">Don\'t make this up! If you cannot find it, please contact the school</string>
|
||||
<string name="login_incorrect_symbol">Student not found. Validate the symbol and the chosen variation of the UONET+ register</string>
|
||||
<string name="login_duplicate_student">Selected student is already logged in</string>
|
||||
<string name="login_symbol_helper">The symbol can be found on the register page in <b>Uczeń</b> → <b>Dostęp Mobilny</b> → <b>Wygeneruj kod dostępu</b>.\n\nMake sure that you have set the appropriate register variant in the <b>UONET+ register variant</b> field on the first login screen</string>
|
||||
<string name="login_select_student">Select students to log in to the application</string>
|
||||
<string name="login_advanced">Other options</string>
|
||||
<string name="login_advanced_warning_mobile_api">In this mode, a lucky number does not work, a class grade stats, summary of attendance, excuse for absence, completed lessons, school information and preview of the list of registered devices</string>
|
||||
<string name="login_advanced_warning_scraper">This mode displays the same data as it appears on the register website</string>
|
||||
<string name="login_advanced_warning_hybrid">The combination of the best features of the other two modes. It works faster than scraper and provides features not available in the Mobile API mode. It is in the experimental phase</string>
|
||||
<string name="login_privacy_policy">Privacy policy</string>
|
||||
<string name="login_contact_header">Trouble signing in? Contact us!</string>
|
||||
<string name="login_contact_email">Email</string>
|
||||
<string name="login_contact_discord">Discord</string>
|
||||
<string name="login_email_intent_title">Send email</string>
|
||||
<string name="login_recover_warning">Make sure you select the correct UONET+ register variation!</string>
|
||||
<string name="login_recover_button">Reset password</string>
|
||||
<string name="login_recover_title">Recover your account</string>
|
||||
<string name="login_recover">Recover</string>
|
||||
<string name="login_signed_in">Student is already signed in</string>
|
||||
<string name="login_host_standard">Standard</string>
|
||||
<string name="login_other_search_locations">Other search locations</string>
|
||||
<string name="login_no_active_student">No active students found</string>
|
||||
<string name="login_symbol_enter">Enter a different symbol</string>
|
||||
<string name="login_support_title">Get help</string>
|
||||
<string name="login_support_school_hint">Full school name with the town (required)</string>
|
||||
<string name="login_support_school_placeholder">Np. ZSTiO Jarosław lub SP nr 99 w Łodzi</string>
|
||||
<string name="login_support_school_invalid">Enter correct name of the school</string>
|
||||
<string name="login_support_additional_hint">Additional information in Polish (optional)</string>
|
||||
<string name="login_support_additional_placeholder">Np. \"Ostatnio zmieniłem szkołę i…\" albo \"Jestem rodzicem i nie widzę drugiego dziecka…\"</string>
|
||||
<string name="login_support_submit">Submit</string>
|
||||
<!--Notifications-->
|
||||
<string name="notifications_header_title">Enable notifications</string>
|
||||
<string name="notifications_header_description">Enable notifications so you don\'t miss message from teacher or new grade</string>
|
||||
<string name="notifications_skip">Skip</string>
|
||||
<string name="notifications_enable">Enable</string>
|
||||
<!--Main-->
|
||||
<string name="main_account_picker">Account manager</string>
|
||||
<string name="main_log_in">Log in</string>
|
||||
<string name="main_session_expired">Session expired</string>
|
||||
<string name="main_session_relogin">Session expired, log in again</string>
|
||||
<string name="main_support_title">Application support</string>
|
||||
<string name="main_support_description">Do you like this app? Support its development by enabling non-invasive ads that you can disable at any time</string>
|
||||
<string name="main_support_positive">Enable ads</string>
|
||||
<!--Grade-->
|
||||
<string name="grade_header">Grade</string>
|
||||
<string name="grade_semester">Semester %d</string>
|
||||
<string name="grade_switch_semester">Change semester</string>
|
||||
<string name="grade_no_items">No grades</string>
|
||||
<string name="grade_weight">Weight</string>
|
||||
<string name="grade_weight_value">Weight: %s</string>
|
||||
<string name="grade_comment">Comment</string>
|
||||
<string name="grade_number_new_items">Number of new ratings: %1$d</string>
|
||||
<string name="grade_average">Average: %1$.2f</string>
|
||||
<string name="grade_points_sum">Points: %s</string>
|
||||
<string name="grade_no_average">No average</string>
|
||||
<string name="grade_summary_points">Total points</string>
|
||||
<string name="grade_summary_final_grade">Final grade</string>
|
||||
<string name="grade_summary_predicted_grade">Predicted grade</string>
|
||||
<string name="grade_summary_calculated_average">Calculated average</string>
|
||||
<string name="grade_summary_calculated_average_help_dialog_title">How does Calculated Average work?</string>
|
||||
<string name="grade_summary_calculated_average_help_dialog_message">The Calculated Average is the arithmetic average calculated from the subjects averages. It allows you to know the approximate final average. It is calculated in a way selected by the user in the application settings. It is recommended that you choose the appropriate option. This is because the calculation of school averages differs. Additionally, if your school reports the average of the subjects on the Vulcan page, the application downloads them and does not calculate these averages. This can be changed by forcing the calculation of the average in the application settings.\n\n<b>Average of grades only from selected semester</b>:\n1. Calculating the weighted average for each subject in a given semester\n2.Adding calculated averages\n3. Calculation of the arithmetic average of the summed averages\n\n<b>Average of averages from both semesters</b>:\n1.Calculating the weighted average for each subject in semester 1 and 2\n2. Calculating the arithmetic average of the calculated averages for semesters 1 and 2 for each subject.\n3. Adding calculated averages\n4. Calculation of the arithmetic average of the summed averages\n\n<b>Average of grades from the whole year:</b>\n1. Calculating weighted average over the year for each subject. The final average in the 1st semester is irrelevant.\n2. Adding calculated averages\n3. Calculating the arithmetic average of summed averages</string>
|
||||
<string name="grade_summary_final_average_help_dialog_title">How does the Final Average work?</string>
|
||||
<string name="grade_summary_final_average_help_dialog_message">The Final Average is the arithmetic average calculated from all currently available final grades in the given semester.\n\nThe calculation scheme consists of the following steps:\n1. Summing up the final grades given by teachers\n2. Divide by the number of subjects that have already been graded</string>
|
||||
<string name="grade_summary_final_average">Final average</string>
|
||||
<string name="grade_summary_from_subjects">from %1$d of %2$d subjects</string>
|
||||
<string name="grade_menu_summary">Summary</string>
|
||||
<string name="grade_menu_statistics">Class</string>
|
||||
<string name="grade_menu_read">Mark as read</string>
|
||||
<string name="grade_statistics_partial">Partial</string>
|
||||
<string name="grade_statistics_semester">Semester</string>
|
||||
<string name="grade_statistics_points">Points</string>
|
||||
<string name="grade_statistics_legend">Legend</string>
|
||||
<string name="grade_statistics_class_average">Class average: %1$s</string>
|
||||
<string name="grade_statistics_student_average">Your average: %1$s</string>
|
||||
<string name="grade_statistics_student_grade">Your grade: %1$s</string>
|
||||
<string name="grade_statistics_average_class">Class</string>
|
||||
<string name="grade_statistics_average_student">Student</string>
|
||||
<plurals name="grade_number_item">
|
||||
<item quantity="one">%d grade</item>
|
||||
<item quantity="other">%d grades</item>
|
||||
</plurals>
|
||||
<plurals name="grade_new_items">
|
||||
<item quantity="one">New grade</item>
|
||||
<item quantity="other">New grades</item>
|
||||
</plurals>
|
||||
<plurals name="grade_new_items_predicted">
|
||||
<item quantity="one">New predicted grade</item>
|
||||
<item quantity="other">New predicted grades</item>
|
||||
</plurals>
|
||||
<plurals name="grade_new_items_final">
|
||||
<item quantity="one">New final grade</item>
|
||||
<item quantity="other">New final grades</item>
|
||||
</plurals>
|
||||
<plurals name="grade_notify_new_items">
|
||||
<item quantity="one">You received %1$d grade</item>
|
||||
<item quantity="other">You received %1$d grades</item>
|
||||
</plurals>
|
||||
<plurals name="grade_notify_new_items_predicted">
|
||||
<item quantity="one">You received %1$d predicted grade</item>
|
||||
<item quantity="other">You received %1$d predicted grades</item>
|
||||
</plurals>
|
||||
<plurals name="grade_notify_new_items_final">
|
||||
<item quantity="one">You received %1$d final grade</item>
|
||||
<item quantity="other">You received %1$d final grades</item>
|
||||
</plurals>
|
||||
<!--Timetable-->
|
||||
<string name="timetable_lesson">Lesson</string>
|
||||
<string name="timetable_room">Room</string>
|
||||
<string name="timetable_group">Group</string>
|
||||
<string name="timetable_time">Hours</string>
|
||||
<string name="timetable_changes">Changes</string>
|
||||
<string name="timetable_no_items">No lessons this day</string>
|
||||
<string name="timetable_minutes">%s min</string>
|
||||
<string name="timetable_seconds">%s sec</string>
|
||||
<string name="timetable_time_left">%1$s left</string>
|
||||
<string name="timetable_time_until">in %1$s</string>
|
||||
<string name="timetable_finished">Finished</string>
|
||||
<string name="timetable_now">Now: %s</string>
|
||||
<string name="timetable_next">Next: %s</string>
|
||||
<string name="timetable_later">Later: %s</string>
|
||||
<string name="timetable_notify_lesson">%1$s lesson %2$d - %3$s</string>
|
||||
<string name="timetable_notify_change_room">Change of room from %1$s to %2$s</string>
|
||||
<string name="timetable_notify_change_teacher">Change of teacher from %1$s to %2$s</string>
|
||||
<string name="timetable_notify_change_subject">Change of subject from %1$s to %2$s</string>
|
||||
<plurals name="timetable_no_lesson">
|
||||
<item quantity="one">No lesson</item>
|
||||
<item quantity="other">No lessons</item>
|
||||
</plurals>
|
||||
<plurals name="timetable_notify_new_items_title">
|
||||
<item quantity="one">Timetable change</item>
|
||||
<item quantity="other">Timetable changes</item>
|
||||
</plurals>
|
||||
<plurals name="timetable_notify_new_items">
|
||||
<item quantity="one">%1$s - %2$d change in timetable</item>
|
||||
<item quantity="other">%1$s - %2$d changes in timetable</item>
|
||||
</plurals>
|
||||
<plurals name="timetable_notify_new_items_group">
|
||||
<item quantity="one">%1$d change in timetable</item>
|
||||
<item quantity="other">%1$d changes in timetable</item>
|
||||
</plurals>
|
||||
<plurals name="timetable_number_item">
|
||||
<item quantity="one">%d change</item>
|
||||
<item quantity="other">%d changes</item>
|
||||
</plurals>
|
||||
<!--Completed lessons-->
|
||||
<string name="completed_lessons_title">Completed lessons</string>
|
||||
<string name="completed_lessons_button">Show completed lessons</string>
|
||||
<string name="completed_lessons_no_items">No info about completed lessons</string>
|
||||
<string name="completed_lessons_topic">Topic</string>
|
||||
<string name="completed_lessons_absence">Absence</string>
|
||||
<string name="completed_lessons_resources">Resources</string>
|
||||
<!--Additional lessons-->
|
||||
<string name="additional_lessons_title">Additional lessons</string>
|
||||
<string name="additional_lessons_button">Show additional lessons</string>
|
||||
<string name="additional_lessons_no_items">No info about additional lessons</string>
|
||||
<string name="additional_lessons_add">New lesson</string>
|
||||
<string name="additional_lessons_add_title">New additional lesson</string>
|
||||
<string name="additional_lessons_add_success">Additional lesson added successfully</string>
|
||||
<string name="additional_lessons_delete_success">Additional lesson deleted successfully</string>
|
||||
<string name="additional_lessons_repeat">Repeat weekly</string>
|
||||
<string name="additional_lessons_delete_title">Delete additional lesson</string>
|
||||
<string name="additional_lessons_delete_one">Just this lesson</string>
|
||||
<string name="additional_lessons_delete_series">All in the series</string>
|
||||
<string name="additional_lessons_start">Start time</string>
|
||||
<string name="additional_lessons_end">End time</string>
|
||||
<string name="additional_lessons_end_time_error">End time must be greater than start time</string>
|
||||
<!--Attendance-->
|
||||
<string name="attendance_summary_button">Attendance summary</string>
|
||||
<string name="attendance_absence_school">Absent for school reasons</string>
|
||||
<string name="attendance_absence_excused">Excused absence</string>
|
||||
<string name="attendance_absence_unexcused">Unexcused absence</string>
|
||||
<string name="attendance_exemption">Exemption</string>
|
||||
<string name="attendance_excused_lateness">Excused lateness</string>
|
||||
<string name="attendance_unexcused_lateness">Unexcused lateness</string>
|
||||
<string name="attendance_present">Present</string>
|
||||
<string name="attendance_deleted">Deleted</string>
|
||||
<string name="attendance_unknown">Unknown</string>
|
||||
<string name="attendance_number">Number of lesson</string>
|
||||
<string name="attendance_no_items">No entries</string>
|
||||
<string name="attendance_excuse_dialog_reason">Absence reason (optional)</string>
|
||||
<string name="attendance_excuse_dialog_submit">Send</string>
|
||||
<string name="attendance_excuse_success">Absence excuse request sent successfully!</string>
|
||||
<string name="attendance_excuse_no_selection">You must select at least one absence!</string>
|
||||
<string name="attendance_excuse_title">Excuse</string>
|
||||
<plurals name="attendance_notify_new_items_title">
|
||||
<item quantity="one">New attendance</item>
|
||||
<item quantity="other">New attendance</item>
|
||||
</plurals>
|
||||
<plurals name="attendance_notify_new_items">
|
||||
<item quantity="one">%1$d new attendance</item>
|
||||
<item quantity="other">%1$d attendance</item>
|
||||
</plurals>
|
||||
<plurals name="attendance_number_item">
|
||||
<item quantity="one">%d attendance</item>
|
||||
<item quantity="other">%d attendance</item>
|
||||
</plurals>
|
||||
<!--Attendance summary-->
|
||||
<string name="attendance_summary_total">Total</string>
|
||||
<!--Exam-->
|
||||
<string name="exam_no_items">No exams this week</string>
|
||||
<string name="exam_type">Type</string>
|
||||
<string name="exam_entry_date">Entry date</string>
|
||||
<plurals name="exam_notify_new_item_title">
|
||||
<item quantity="one">New exam</item>
|
||||
<item quantity="other">New exams</item>
|
||||
</plurals>
|
||||
<plurals name="exam_notify_new_item_content">
|
||||
<item quantity="one">%d new exam</item>
|
||||
<item quantity="other">%d new exams</item>
|
||||
</plurals>
|
||||
<plurals name="exam_number_item">
|
||||
<item quantity="one">%d exam</item>
|
||||
<item quantity="other">%d exams</item>
|
||||
</plurals>
|
||||
<!--Message-->
|
||||
<string name="message_inbox">Inbox</string>
|
||||
<string name="message_sent">Sent</string>
|
||||
<string name="message_trash">Trash</string>
|
||||
<string name="message_no_subject">(no subject)</string>
|
||||
<string name="message_no_items">No messages</string>
|
||||
<string name="message_from">From:</string>
|
||||
<string name="message_to">To:</string>
|
||||
<string name="message_date">Date: %1$s</string>
|
||||
<string name="message_reply">Reply</string>
|
||||
<string name="message_forward">Forward</string>
|
||||
<string name="message_select_all">Select all</string>
|
||||
<string name="message_unselect_all">Unselect all</string>
|
||||
<string name="message_move_to_trash">Move to trash</string>
|
||||
<string name="message_delete_forever">Delete permanently</string>
|
||||
<string name="message_delete_success">Message deleted successfully</string>
|
||||
<string name="message_mailbox_type_student">student</string>
|
||||
<string name="message_mailbox_type_parent">parent</string>
|
||||
<string name="message_mailbox_type_guardian">guardian</string>
|
||||
<string name="message_mailbox_type_employee">employee</string>
|
||||
<string name="message_share">Share</string>
|
||||
<string name="message_print">Print</string>
|
||||
<string name="message_subject">Subject</string>
|
||||
<string name="message_content">Content</string>
|
||||
<string name="message_send_successful">Message sent successfully</string>
|
||||
<string name="message_not_exists">Message does not exist</string>
|
||||
<string name="message_required_recipients">You need to choose at least 1 recipient</string>
|
||||
<string name="message_content_min_length">The message content must be at least 3 characters</string>
|
||||
<string name="message_chip_all_mailboxes">All mailboxes</string>
|
||||
<string name="message_chip_only_unread">Only unread</string>
|
||||
<string name="message_chip_only_with_attachments">Only with attachments</string>
|
||||
<string name="message_read">Read: %s</string>
|
||||
<string name="message_read_by">Read by: %1$d of %2$d people</string>
|
||||
<plurals name="message_number_item">
|
||||
<item quantity="one">%1$d message</item>
|
||||
<item quantity="other">%1$d messages</item>
|
||||
</plurals>
|
||||
<plurals name="message_new_items">
|
||||
<item quantity="one">New message</item>
|
||||
<item quantity="other">New messages</item>
|
||||
</plurals>
|
||||
<string name="message_restore_dialog">Do you want to restore draft message?</string>
|
||||
<string name="message_restore_dialog_with_recipients">Do you want to restore draft message with recipients: %s?</string>
|
||||
<plurals name="message_notify_new_items">
|
||||
<item quantity="one">You received %1$d message</item>
|
||||
<item quantity="other">You received %1$d messages</item>
|
||||
</plurals>
|
||||
<plurals name="message_selected_messages_count">
|
||||
<item quantity="one">%1$d selected</item>
|
||||
<item quantity="other">%1$d selected</item>
|
||||
</plurals>
|
||||
<string name="message_messages_deleted">Messages deleted</string>
|
||||
<string name="message_mailbox_chooser_title">Choose mailbox</string>
|
||||
<string name="message_incognito_mode_on">Incognito mode is on</string>
|
||||
<string name="message_incognito_description">Thanks to incognito mode sender is not notified when you read the message</string>
|
||||
<!--Note-->
|
||||
<string name="note_no_items">No info about notes</string>
|
||||
<string name="note_points">Points</string>
|
||||
<plurals name="note_number_item">
|
||||
<item quantity="one">%d note</item>
|
||||
<item quantity="other">%d notes</item>
|
||||
</plurals>
|
||||
<plurals name="note_new_items">
|
||||
<item quantity="one">New note</item>
|
||||
<item quantity="other">New notes</item>
|
||||
</plurals>
|
||||
<plurals name="note_notify_new_items">
|
||||
<item quantity="one">You received %1$d note</item>
|
||||
<item quantity="other">You received %1$d notes</item>
|
||||
</plurals>
|
||||
<!--Praise-->
|
||||
<plurals name="praise_number_item">
|
||||
<item quantity="one">%d praise</item>
|
||||
<item quantity="other">%d praises</item>
|
||||
</plurals>
|
||||
<plurals name="praise_new_items">
|
||||
<item quantity="one">New praise</item>
|
||||
<item quantity="other">New praises</item>
|
||||
</plurals>
|
||||
<plurals name="praise_notify_new_items">
|
||||
<item quantity="one">You received %1$d praise</item>
|
||||
<item quantity="other">You received %1$d praises</item>
|
||||
</plurals>
|
||||
<!--Neutral notes-->
|
||||
<plurals name="neutral_note_number_item">
|
||||
<item quantity="one">%d neutral note</item>
|
||||
<item quantity="other">%d neutral notes</item>
|
||||
</plurals>
|
||||
<plurals name="neutral_note_new_items">
|
||||
<item quantity="one">New neutral note</item>
|
||||
<item quantity="other">New neutral notes</item>
|
||||
</plurals>
|
||||
<plurals name="neutral_note_notify_new_items">
|
||||
<item quantity="one">You received %1$d neutral note</item>
|
||||
<item quantity="other">You received %1$d neutral notes</item>
|
||||
</plurals>
|
||||
<!--Homework-->
|
||||
<string name="homework_no_items">No info about homework</string>
|
||||
<string name="homework_mark_as_done">Mark as done</string>
|
||||
<string name="homework_mark_as_undone">Mark as undone</string>
|
||||
<string name="homework_add">Add homework</string>
|
||||
<string name="homework_add_success">Homework added successfully</string>
|
||||
<string name="homework_delete_success">Homework deleted successfully</string>
|
||||
<string name="homework_attachments">Attachments</string>
|
||||
<plurals name="homework_notify_new_item_title">
|
||||
<item quantity="one">New homework</item>
|
||||
<item quantity="other">New homework</item>
|
||||
</plurals>
|
||||
<plurals name="homework_notify_new_item_content">
|
||||
<item quantity="one">You received %d new homework</item>
|
||||
<item quantity="other">You received %d new homework</item>
|
||||
</plurals>
|
||||
<plurals name="homework_number_item">
|
||||
<item quantity="one">%d homework</item>
|
||||
<item quantity="other">%d homework</item>
|
||||
</plurals>
|
||||
<!--Lucky number-->
|
||||
<string name="lucky_number_title">Lucky number</string>
|
||||
<string name="lucky_number_header">Today\'s lucky number is</string>
|
||||
<string name="lucky_number_empty">No info about the lucky number</string>
|
||||
<string name="lucky_number_notify_new_item_title">Lucky number for today</string>
|
||||
<string name="lucky_number_notify_new_item">Today\'s lucky number is: %s</string>
|
||||
<string name="lucky_number_history_button">Show history</string>
|
||||
<!--Lucky number history-->
|
||||
<string name="lucky_number_history_title">Lucky number history</string>
|
||||
<string name="lucky_number_history_empty">No info about lucky numbers</string>
|
||||
<!--Mobile devices-->
|
||||
<string name="mobile_devices_title">Mobile devices</string>
|
||||
<string name="mobile_devices_no_items">No devices</string>
|
||||
<string name="mobile_devices_unregister">Deregister</string>
|
||||
<string name="mobile_device_removed">Device removed</string>
|
||||
<string name="mobile_device_qr">QR code</string>
|
||||
<string name="mobile_device_token">Token</string>
|
||||
<string name="mobile_device_symbol">Symbol</string>
|
||||
<string name="mobile_device_pin">PIN</string>
|
||||
<!--School and teachers-->
|
||||
<string name="schoolandteachers_title">School and teachers</string>
|
||||
<!--School-->
|
||||
<string name="school_title">School</string>
|
||||
<string name="school_no_info">No info about school</string>
|
||||
<string name="school_name">School name</string>
|
||||
<string name="school_address">School address</string>
|
||||
<string name="school_telephone">Telephone</string>
|
||||
<string name="school_headmaster">Name of headmaster</string>
|
||||
<string name="school_pedagogue">Name of pedagogue</string>
|
||||
<string name="school_address_button">Show on map</string>
|
||||
<string name="school_telephone_button">Call</string>
|
||||
<!--Teacher-->
|
||||
<string name="teachers_title">Teachers</string>
|
||||
<string name="teacher_no_items">No info about teachers</string>
|
||||
<string name="teacher_no_subject">No subject</string>
|
||||
<!--Conference-->
|
||||
<string name="conferences_title">Conferences</string>
|
||||
<string name="conference_no_items">No info about conferences</string>
|
||||
<plurals name="conference_number_item">
|
||||
<item quantity="one">%d conference</item>
|
||||
<item quantity="other">%d conferences</item>
|
||||
</plurals>
|
||||
<plurals name="conference_notify_new_item_title">
|
||||
<item quantity="one">New conference</item>
|
||||
<item quantity="other">New conferences</item>
|
||||
</plurals>
|
||||
<plurals name="conference_notify_new_items">
|
||||
<item quantity="one">You have %1$d new conference</item>
|
||||
<item quantity="other">You have %1$d new conferences</item>
|
||||
</plurals>
|
||||
<string name="conferences_present">Present at conference</string>
|
||||
<string name="conference_agenda">Agenda</string>
|
||||
<string name="conference_place">Place</string>
|
||||
<string name="conference_topic">Topic</string>
|
||||
<!--Director information-->
|
||||
<string name="school_announcement_title">School announcements</string>
|
||||
<string name="school_announcement_no_items">No school announcements</string>
|
||||
<plurals name="school_announcement_number_item">
|
||||
<item quantity="one">%d school announcement</item>
|
||||
<item quantity="other">%d school announcements</item>
|
||||
</plurals>
|
||||
<plurals name="school_announcement_notify_new_item_title">
|
||||
<item quantity="one">New school announcement</item>
|
||||
<item quantity="other">New school announcements</item>
|
||||
</plurals>
|
||||
<plurals name="school_announcement_notify_new_items">
|
||||
<item quantity="one">You have %1$d new school announcement</item>
|
||||
<item quantity="other">You have %1$d new school announcements</item>
|
||||
</plurals>
|
||||
<!--Account-->
|
||||
<string name="account_add_new">Add account</string>
|
||||
<string name="account_logout">Logout</string>
|
||||
<string name="account_confirm">Do you want to log out this student?</string>
|
||||
<string name="account_logout_student">Student logout</string>
|
||||
<string name="account_type_student">Student account</string>
|
||||
<string name="account_type_parent">Parent account</string>
|
||||
<string name="account_details_edit">Edit data</string>
|
||||
<string name="account_quick_manager">Accounts manager</string>
|
||||
<string name="account_select_student">Select student</string>
|
||||
<string name="account_family">Family</string>
|
||||
<string name="account_contact">Contact</string>
|
||||
<string name="account_address">Residence details</string>
|
||||
<string name="account_personal_data">Personal information</string>
|
||||
<!--About-->
|
||||
<string name="about_version">App version</string>
|
||||
<string name="about_contributor">Contributors</string>
|
||||
<string name="about_contributor_summary">List of Wulkanowy developers</string>
|
||||
<string name="about_feedback">Report a bug</string>
|
||||
<string name="about_feedback_summary">Send a bug report via e-mail</string>
|
||||
<string name="about_faq">FAQ</string>
|
||||
<string name="about_faq_summary">Read Frequently Asked Questions</string>
|
||||
<string name="about_discord">Discord server</string>
|
||||
<string name="about_discord_summary">Join the Wulkanowy community</string>
|
||||
<string name="about_facebook">Facebook fanpage</string>
|
||||
<string name="about_twitter">Twitter page</string>
|
||||
<string name="about_twitter_summary">Follow us on twitter</string>
|
||||
<string name="about_facebook_summary">Like our facebook fanpage</string>
|
||||
<string name="about_privacy">Privacy policy</string>
|
||||
<string name="about_privacy_summary">Rules for collecting personal data</string>
|
||||
<string name="about_system">System settings</string>
|
||||
<string name="about_system_summary">Open system settings</string>
|
||||
<string name="about_homepage">Homepage</string>
|
||||
<string name="about_homepage_summary">Visit the website and help develop the application</string>
|
||||
<string name="about_licenses">Licenses</string>
|
||||
<string name="about_licenses_summary">Licenses of libraries used in the application</string>
|
||||
<!--Licenses-->
|
||||
<string name="license_dialog_title">License</string>
|
||||
<!--Contributor-->
|
||||
<string name="contributor_avatar_description">Avatar</string>
|
||||
<string name="contributor_see_more">See more on GitHub</string>
|
||||
<!--Student info-->
|
||||
<string name="student_info_empty">No info about student or student family</string>
|
||||
<string name="student_info_first_name">Name</string>
|
||||
<string name="student_info_second_name">Second name</string>
|
||||
<string name="student_info_gender">Gender</string>
|
||||
<string name="student_info_polish_citizenship">Polish citizenship</string>
|
||||
<string name="student_info_family_name">Family name</string>
|
||||
<string name="student_info_parents_name">Mother\'s and father\'s names</string>
|
||||
<string name="student_info_phone">Phone</string>
|
||||
<string name="student_info_cellphone">Cellphone</string>
|
||||
<string name="student_info_email">E-mail</string>
|
||||
<string name="student_info_address">Address of residence</string>
|
||||
<string name="student_info_registered_address">Address of registration</string>
|
||||
<string name="student_info_correspondence_address">Correspondence address</string>
|
||||
<string name="student_info_full_name">Surname and first name</string>
|
||||
<string name="student_info_kinship">Degree of kinship</string>
|
||||
<string name="student_info_guardian_address">Address</string>
|
||||
<string name="student_info_phones">Phones</string>
|
||||
<string name="student_info_male">Male</string>
|
||||
<string name="student_info_female">Female</string>
|
||||
<string name="student_info_last_name">Last name</string>
|
||||
<string name="student_info_guardian">Guardian</string>
|
||||
<!--Account edit-->
|
||||
<string name="account_edit_nick_hint">Nick</string>
|
||||
<string name="account_edit_header">Add nick</string>
|
||||
<string name="account_edit_avatar_title">Choose avatar color</string>
|
||||
<!--Log viewer-->
|
||||
<string name="logviewer_share">Share logs</string>
|
||||
<string name="logviewer_refresh">Refresh</string>
|
||||
<!--Dashboard-->
|
||||
<string name="dashboard_timetable_title">Lessons</string>
|
||||
<string name="dashboard_timetable_title_tomorrow">(Tomorrow)</string>
|
||||
<string name="dashboard_timetable_title_today_and_tomorrow">(Today and tomorrow)</string>
|
||||
<string name="dashboard_timetable_first_lesson_title_moment">In a moment:</string>
|
||||
<string name="dashboard_timetable_first_lesson_title_soon">Soon:</string>
|
||||
<string name="dashboard_timetable_first_lesson_title_first">First:</string>
|
||||
<string name="dashboard_timetable_first_lesson_title_now">Now:</string>
|
||||
<string name="dashboard_timetable_second_lesson_value_end">End of lessons</string>
|
||||
<string name="dashboard_timetable_second_lessons_title">Next:</string>
|
||||
<string name="dashboard_timetable_third_title">Later:</string>
|
||||
<plurals name="dashboard_timetable_third_value">
|
||||
<item quantity="one">%1$d more lesson</item>
|
||||
<item quantity="other">%1$d more lessons</item>
|
||||
</plurals>
|
||||
<string name="dashboard_timetable_third_time">until %1$s</string>
|
||||
<string name="dashboard_timetable_no_lessons">No upcoming lessons</string>
|
||||
<string name="dashboard_timetable_error">An error occurred while loading the lessons</string>
|
||||
<string name="dashboard_homework_title">Homework</string>
|
||||
<string name="dashboard_homework_no_homework">No homework to do</string>
|
||||
<string name="dashboard_homework_error">An error occurred while loading the homework</string>
|
||||
<plurals name="dashboard_homework_more">
|
||||
<item quantity="one">%1$d more homework</item>
|
||||
<item quantity="other">%1$d more homework</item>
|
||||
</plurals>
|
||||
<string name="dashboard_homework_time">due %1$s</string>
|
||||
<string name="dashboard_grade_title">Last grades</string>
|
||||
<string name="dashboard_grade_no_grade">No new grades</string>
|
||||
<string name="dashboard_grade_error">An error occurred while loading the grades</string>
|
||||
<string name="dashboard_announcements_title">School announcements</string>
|
||||
<string name="dashboard_announcements_no_announcements">No current announcements</string>
|
||||
<string name="dashboard_announcements_error">An error occurred while loading the announcements</string>
|
||||
<plurals name="dashboard_announcements_more">
|
||||
<item quantity="one">%1$d more announcement</item>
|
||||
<item quantity="other">%1$d more announcements</item>
|
||||
</plurals>
|
||||
<string name="dashboard_exams_title">Exams</string>
|
||||
<string name="dashboard_exams_no_exams">No upcoming exams</string>
|
||||
<string name="dashboard_exams_error">An error occurred while loading the exams</string>
|
||||
<plurals name="dashboard_exams_more">
|
||||
<item quantity="one">%1$d more exam</item>
|
||||
<item quantity="other">%1$d more exams</item>
|
||||
</plurals>
|
||||
<string name="dashboard_conferences_title">Conferences</string>
|
||||
<string name="dashboard_conferences_no_conferences">No upcoming conferences</string>
|
||||
<string name="dashboard_conferences_error">An error occurred while loading the conferences</string>
|
||||
<plurals name="dashboard_conference_more">
|
||||
<item quantity="one">%1$d more conference</item>
|
||||
<item quantity="other">%1$d more conferences</item>
|
||||
</plurals>
|
||||
<string name="dashboard_horizontal_group_error">An error occurred while loading data</string>
|
||||
<string name="dashboard_horizontal_group_no_data">None</string>
|
||||
<!--Error dialog-->
|
||||
<string name="dialog_error_check_update">Check for updates</string>
|
||||
<string name="dialog_error_check_update_message">Before reporting a bug, check first if an update with the bug fix is available</string>
|
||||
<!--Generic-->
|
||||
<string name="all_content">Content</string>
|
||||
<string name="all_retry">Retry</string>
|
||||
<string name="all_description">Description</string>
|
||||
<string name="all_no_description">No description</string>
|
||||
<string name="all_teacher">Teacher</string>
|
||||
<string name="all_date">Date</string>
|
||||
<string name="all_entry_date">Entry date</string>
|
||||
<string name="all_color">Color</string>
|
||||
<string name="all_details">Details</string>
|
||||
<string name="all_category">Category</string>
|
||||
<string name="all_close">Close</string>
|
||||
<string name="all_no_data">No data</string>
|
||||
<string name="all_subject">Subject</string>
|
||||
<string name="all_prev">Prev</string>
|
||||
<string name="all_next">Next</string>
|
||||
<string name="all_search">Search</string>
|
||||
<string name="all_search_hint">Search…</string>
|
||||
<string name="all_yes">Yes</string>
|
||||
<string name="all_no">No</string>
|
||||
<string name="all_save">Save</string>
|
||||
<string name="all_title">Title</string>
|
||||
<string name="all_add">Add</string>
|
||||
<string name="all_copied">Copied</string>
|
||||
<string name="all_undo">Undo</string>
|
||||
<string name="all_change">Change</string>
|
||||
<string name="all_add_to_calendar">Add to calendar</string>
|
||||
<string name="all_cancel">Cancel</string>
|
||||
<!--Timetable Widget-->
|
||||
<string name="widget_timetable_no_items">No lessons</string>
|
||||
<string name="widget_timetable_last_synchronization">Synchronized on %1$s at %2$s</string>
|
||||
<string name="widget_timetable_theme_title">Choose theme</string>
|
||||
<string name="widget_timetable_theme_light">Light</string>
|
||||
<string name="widget_timetable_theme_dark">Dark</string>
|
||||
<string name="widget_timetable_theme_system">System Theme</string>
|
||||
<!--Preferences-->
|
||||
<string name="pref_view_header">App</string>
|
||||
<string name="pref_view_list">Default view</string>
|
||||
<string name="pref_view_grade_average_mode">Calculated average options</string>
|
||||
<string name="pref_view_grade_average_force_calc">Force average calculation by app</string>
|
||||
<string name="pref_view_present">Show presence</string>
|
||||
<string name="pref_view_app_theme">Theme</string>
|
||||
<string name="pref_view_expand_grade">Grades expanding</string>
|
||||
<string name="pref_view_timetable_show_groups">Show groups next to subjects</string>
|
||||
<string name="pref_view_timetable_show_gaps">Show empty tiles where there\'s no lesson</string>
|
||||
<string name="pref_view_grade_statistics_list">Show chart list in class grades</string>
|
||||
<string name="pref_view_subjects_without_grades">Show subjects without grades</string>
|
||||
<string name="pref_view_grade_color_scheme">Grades color scheme</string>
|
||||
<string name="pref_view_grade_sorting_mode">Subjects sorting</string>
|
||||
<string name="pref_view_app_language">Language</string>
|
||||
<string name="pref_view_menu_order_title">Menu configuration</string>
|
||||
<string name="pref_view_menu_order_summary">Set the order of functions in the menu</string>
|
||||
<string name="pref_notify_header">Notifications</string>
|
||||
<string name="pref_notify_header_other">Other</string>
|
||||
<string name="pref_notify_switch">Show notifications</string>
|
||||
<string name="pref_notify_upcoming_lessons_switch">Show upcoming lesson notifications</string>
|
||||
<string name="pref_notify_upcoming_lessons_persistent_switch">Make upcoming lesson notification persistent</string>
|
||||
<string name="pref_notify_upcoming_lessons_persistent_summary">Turn off when notification is not showing in your watch/band</string>
|
||||
<string name="pref_notify_open_system_settings">Open system notification settings</string>
|
||||
<string name="pref_notify_fix_sync_issues">Fix synchronization & notifications issues</string>
|
||||
<string name="pref_notify_fix_sync_issues_message">Your device may have data synchronization issues and with notifications.\n\nTo fix them, you need to add Wulkanowy to the autostart and turn off battery optimization/saving in the phone settings.</string>
|
||||
<string name="pref_notify_debug_switch">Show debug notifications</string>
|
||||
<string name="pref_notify_disabled_summary">Synchronization is disabled</string>
|
||||
<string name="pref_notify_notifications_piggyback_header">Official app notifications</string>
|
||||
<string name="pref_notify_notifications_piggyback">Capture official app notifications</string>
|
||||
<string name="pref_notify_notifications_piggyback_cancel_original">Remove official app notifications after capture</string>
|
||||
<string name="pref_notification_piggyback_popup_title">Capture notifications</string>
|
||||
<string name="pref_notification_piggyback_popup_description">With this feature you can gain a substitute of push notifications like in the official app. All you need to do is allow Wulkanowy to receive all notifications in your system settings.\n\nHow it works?\nWhen you get a notification in Dziennik VULCAN, Wulkanowy will be notified (that\'s what these extra permissions are for) and will trigger a sync so that can send its own notification.\n\nFOR ADVANCED USERS ONLY</string>
|
||||
<string name="pref_notification_exact_alarm_popup_title">Upcoming lesson notifications</string>
|
||||
<string name="pref_notification_exact_alarm_popup_descriptions">You must allow the Wulkanowy app to set alarms and reminders in your system settings to use this feature.</string>
|
||||
<string name="pref_notification_go_to_settings">Go to settings</string>
|
||||
<string name="pref_services_header">Synchronization</string>
|
||||
<string name="pref_services_switch">Automatic update</string>
|
||||
<string name="pref_services_suspended">Suspended on holidays</string>
|
||||
<string name="pref_services_interval">Updates interval</string>
|
||||
<string name="pref_services_wifi">Wi-Fi only</string>
|
||||
<string name="pref_services_force_sync">Sync now</string>
|
||||
<string name="pref_services_message_sync_success">Synced!</string>
|
||||
<string name="pref_services_message_sync_failed">Sync failed</string>
|
||||
<string name="pref_services_sync_in_progress">Sync in progress</string>
|
||||
<string name="pref_services_last_full_sync_date">Last full sync: %s</string>
|
||||
<string name="pref_other_grade_modifier_plus">Value of the plus</string>
|
||||
<string name="pref_other_grade_modifier_minus">Value of the minus</string>
|
||||
<string name="pref_other_fill_message_content">Reply with message history</string>
|
||||
<string name="pref_other_optional_arithmetic_average">Show arithmetic average when no weights provided</string>
|
||||
<string name="pref_other_incognito_mode">Incognito mode</string>
|
||||
<string name="pref_other_incognito_mode_summary">Do not inform about reading the message</string>
|
||||
<string name="pref_ads_support_category_name">Support</string>
|
||||
<string name="pref_ads_privacy_policy">Privacy Policy</string>
|
||||
<string name="pref_ads_agreements">Agreements</string>
|
||||
<string name="pref_ads_consent">Show consent to data processing</string>
|
||||
<string name="pref_ads_show_in_app">Show ads in app</string>
|
||||
<string name="pref_ads_support">Watch single ad to support project</string>
|
||||
<string name="pref_ads_privacy_title">Consent to data processing</string>
|
||||
<string name="pref_ads_privacy_description">To view an advertisement you must agree to the data processing terms of our Privacy Policy</string>
|
||||
<string name="pref_ads_privacy_agree">Agree</string>
|
||||
<string name="pref_ads_privacy_link">Privacy policy</string>
|
||||
<string name="pref_ads_loading">Ad is loading</string>
|
||||
<string name="pref_ads_once_per_visit">Thank you for your support, come back later for more ads</string>
|
||||
<string name="pref_settings_advanced_title">Advanced</string>
|
||||
<string name="pref_settings_appearance_title">Appearance & Behavior</string>
|
||||
<string name="pref_settings_notifications_title">Notifications</string>
|
||||
<string name="pref_settings_sync_title">Synchronization</string>
|
||||
<string name="pref_settings_ads_title">Advertisements</string>
|
||||
<string name="pref_grades_appearance_header">Grades</string>
|
||||
<string name="pref_dashboard_appearance_header">Dashboard</string>
|
||||
<string name="pref_dashboard_appearance_tiles_title">Tiles visibility</string>
|
||||
<string name="pref_attendance_appearance_view">Attendance</string>
|
||||
<string name="pref_timetable_appearance_view">Timetable</string>
|
||||
<string name="pref_grades_advanced_header">Grades</string>
|
||||
<string name="pref_counted_average_advanced_header">Calculated average</string>
|
||||
<string name="pref_messages_advanced_header">Messages</string>
|
||||
<string name="pref_appearance_category">Appearance & Behavior</string>
|
||||
<string name="pref_appearance_category_summary">Languages, themes, subjects sorting</string>
|
||||
<string name="pref_notifications_category_summary">App notifications, fix problems</string>
|
||||
<string name="pref_notifications_category">Notifications</string>
|
||||
<string name="pref_sync_category">Synchronization</string>
|
||||
<string name="pref_sync_category_summary">Automatic update, synchronization interval</string>
|
||||
<string name="pref_advanced_category_summary">Plus and minus values, average calculation</string>
|
||||
<string name="pref_advanced_category">Advanced</string>
|
||||
<string name="pref_about_category_summary">App version, contributors, social portals</string>
|
||||
<string name="pref_ads_category_summary">Displaying advertisements, project support</string>
|
||||
<!--Notification Channels-->
|
||||
<string name="channel_new_grades">New grades</string>
|
||||
<string name="channel_new_homework">New homework</string>
|
||||
<string name="channel_new_conference">New conferences</string>
|
||||
<string name="channel_new_exam">New exams</string>
|
||||
<string name="channel_lucky_number">Lucky number</string>
|
||||
<string name="channel_new_message">New messages</string>
|
||||
<string name="channel_new_notes">New notes</string>
|
||||
<string name="channel_new_school_announcement">New school announcements</string>
|
||||
<string name="channel_push">Push notifications</string>
|
||||
<string name="channel_upcoming_lessons">Upcoming lessons</string>
|
||||
<string name="channel_debug">Debug</string>
|
||||
<string name="channel_change_timetable">Timetable change</string>
|
||||
<string name="channel_new_attendance">New attendance</string>
|
||||
<!--Colors-->
|
||||
<string name="all_black">Black</string>
|
||||
<string name="all_red">Red</string>
|
||||
<string name="all_blue">Blue</string>
|
||||
<string name="all_green">Green</string>
|
||||
<string name="all_purple">Purple</string>
|
||||
<string name="all_empty_color">No color</string>
|
||||
<!--Update helper-->
|
||||
<string name="update_download_started">Download of updates has started…</string>
|
||||
<string name="update_download_success">An update has just been downloaded.</string>
|
||||
<string name="update_download_success_button">Restart</string>
|
||||
<string name="update_failed">Update failed! Wulkanowy may not function properly. Consider updating</string>
|
||||
<!--Menu order-->
|
||||
<string name="menu_order_confirm_title">Application restart</string>
|
||||
<string name="menu_order_confirm_content">The application must restart for the changes to be saved</string>
|
||||
<string name="menu_order_confirm_restart">Restart</string>
|
||||
<!--Auth-->
|
||||
<string name="auth_api_error">Authorization has been rejected. The data provided does not match the records in the secretary\'s office.</string>
|
||||
<string name="auth_invalid_error">Invalid PESEL</string>
|
||||
<string name="auth_pesel">PESEL</string>
|
||||
<string name="auth_button">Authorize</string>
|
||||
<string name="auth_success">Authorization completed successfully</string>
|
||||
<string name="auth_title">Authorization</string>
|
||||
<string name="auth_description">To operate the application, we need to confirm your identity. Please enter the student\'s PESEL <b>%1$s</b> in the field below</string>
|
||||
<string name="auth_button_skip">Skip for now</string>
|
||||
<!--Errors-->
|
||||
<string name="error_no_internet">No internet connection</string>
|
||||
<string name="error_invalid_device_datetime">An error occurred. Check your device clock</string>
|
||||
<string name="error_timeout">Connection to register failed. Servers can be overloaded. Please try again later</string>
|
||||
<string name="error_login_failed">Loading data failed. Please try again later</string>
|
||||
<string name="error_password_change_required">Register password change required</string>
|
||||
<string name="error_service_unavailable">Maintenance underway UONET + register. Try again later</string>
|
||||
<string name="error_unknown_uonet">Unknown UONET + register error. Try again later</string>
|
||||
<string name="error_unknown_app">Unknown application error. Please try again later</string>
|
||||
<string name="error_unknown">An unexpected error occurred</string>
|
||||
<string name="error_feature_disabled">Feature disabled by your school</string>
|
||||
<string name="error_feature_not_available">Feature not available. Login in a mode other than Mobile API</string>
|
||||
<string name="error_field_required">This field is required</string>
|
||||
<string name="pref_mod_settings_other_title">Other</string>
|
||||
</resources>
|
@ -1,21 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="pref_mod_settings_title">Sekretne ustawienia</string>
|
||||
<string name="pref_hidden_settings_attendance_percentage">Procent frekwencji</string>
|
||||
<string name="pref_hidden_settings_hidden_grades">Ukryj oceny</string>
|
||||
<string name="pref_mod_settings_hidden_attendance_items">Ukryte wpisy frekwencji</string>
|
||||
<string name="pref_mod_settings_show_notes">Pokazuj uwagi</string>
|
||||
|
||||
<string-array name="mod_settings_attendance_entries">
|
||||
<item>Nieusprawiedliwiona nieobecność</item>
|
||||
<item>Zwolnienie</item>
|
||||
<item>Usprawiedliwione spóźnienie</item>
|
||||
<item>Nieusprawiedliwione spóźnienie</item>
|
||||
<item>Obecność</item>
|
||||
<item>Usunięte</item>
|
||||
<item>Nieobecność usprawiedliwiona</item>
|
||||
<item>Nieznane</item>
|
||||
</string-array>
|
||||
<string name="pref_mod_settings_developer_mode">Tryb dewelopera (dostęp do tej strony)</string>
|
||||
<string name="pref_mod_settings_developer_mode_summary">Po wyłączeniu tego ustawienia nie będzie już można uzyskać dostępu do tej strony, ale ustawienia będą zachowane.</string>
|
||||
</resources>
|
@ -19,6 +19,7 @@
|
||||
<item>Deutsch</item>
|
||||
<item>Čeština</item>
|
||||
<item>Slovenčina</item>
|
||||
<item>Kaszëbsczi</item>
|
||||
</string-array>
|
||||
<string-array name="services_interval_entries">
|
||||
<item>15 minut</item>
|
||||
|
@ -873,7 +873,7 @@
|
||||
<string name="captcha_dialog_description"><b>Dlaczego to widzę?</b>\nStrona internetowa dziennika, z której Wulkanowy pobiera dane, wyświetla ten sam ekran jak powyżej, więc Wulkanowy musi również ją pokazać, aby móc pobrać dane z tej witryny. Nie da się tego obejść</string>
|
||||
<string name="captcha_verified_message">Pomyślnie zweryfikowano</string>
|
||||
<!--Panic mode-->
|
||||
<string name="panic_mode_title">Awaryjny dostęp</string>
|
||||
<string name="panic_mode_title">Dostęp awaryjny</string>
|
||||
<!--Errors-->
|
||||
<string name="error_no_internet">Brak połączenia z internetem</string>
|
||||
<string name="error_invalid_device_datetime">Wystąpił błąd. Sprawdź poprawność daty w urządzeniu</string>
|
||||
@ -895,5 +895,7 @@
|
||||
<string name="message_unmute">Wyłącz wyciszenie</string>
|
||||
<string name="message_mute_success">Wyciszyleś tego użytkownika</string>
|
||||
<string name="message_unmute_success">Wyłączyłeś wyciszenie tego użytkownika</string>
|
||||
<string name="pref_mod_settings_other_title">Inne</string>
|
||||
<!--End-->
|
||||
<string name="end_title">Koniec Wulkanowego</string>
|
||||
<string name="end_message">Jak zapewne niektórzy z Was się domyślali zbliża się ten moment, aby zakończyć pewien etap. Wraz z końcem tego roku szkolnego zamykamy projekt Wulkanowy. Stworzenie apki było ekscytującym wyzwaniem, ale skala projektu jest tak duża, że nie jesteśmy w stanie odpowiedzialnie utrzymywać aplikacji. Wulkanowy był fajną przygodą, ale sytuacja wymknęła się nam spod kontroli – zarówno pod względem technicznym, jak i społecznym. Nie akceptujemy pojawiającego się hejtu wobec nas ani wobec innych, także Vulcana. Nie chcemy brać udziału w tych działaniach i być z nimi utożsamiani. Prosimy Was o powściągliwość i rozwagę w publikowanych komentarzach i nieprzekraczanie dopuszczalnych granic.<br /><br />Prosimy Was też o uszanowanie naszej decyzji, jest ona przemyślana i ostateczna. Wszystkim dotychczasowym użytkownikom Wulkanowego rekomendujemy użycie oficjalnej aplikacji <a href=\"https://play.google.com/store/apps/details?id=pl.edu.vulcan.hebe&hl=pl\">Dzienniczek VULCAN</a>. Jeszcze raz dziękujemy wszystkim użytkownikom za lata wsparcia, pomoc i miłe słowa!</string>
|
||||
</resources>
|
||||
|
@ -1,21 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="pref_mod_settings_title">Секретные настройки</string>
|
||||
<string name="pref_hidden_settings_attendance_percentage">Процент посещаемости</string>
|
||||
<string name="pref_hidden_settings_hidden_grades">Скрыть оценки</string>
|
||||
<string name="pref_mod_settings_hidden_attendance_items">Скрытые элементы посещаемости</string>
|
||||
<string name="pref_mod_settings_show_notes">Показать заметки</string>
|
||||
|
||||
<string-array name="mod_settings_attendance_entries">
|
||||
<item>Отсутствие без уважительной причины</item>
|
||||
<item>Исключение</item>
|
||||
<item>Опоздание без уважительной причины</item>
|
||||
<item>Не оправданное опоздание</item>
|
||||
<item>Присутствует</item>
|
||||
<item>Удалено</item>
|
||||
<item>Отсутствие без уважительной причины</item>
|
||||
<item>Неизвестный</item>
|
||||
</string-array>
|
||||
<string name="pref_mod_settings_developer_mode">Режим разработчика (доступ к этой странице)</string>
|
||||
<string name="pref_mod_settings_developer_mode_summary">После отключения этой настройки вы больше не сможете зайти на эту страницу, но настройки все равно будут применены.</string>
|
||||
</resources>
|
@ -19,6 +19,7 @@
|
||||
<item>Deutsch</item>
|
||||
<item>Čeština</item>
|
||||
<item>Slovenčina</item>
|
||||
<item>Kaszëbsczi</item>
|
||||
</string-array>
|
||||
<string-array name="services_interval_entries">
|
||||
<item>15 минут</item>
|
||||
|
@ -1,4 +1,4 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<!--Activity/Fragment title-->
|
||||
<string name="login_title">Авторизация</string>
|
||||
@ -58,7 +58,7 @@
|
||||
<string name="login_invalid_custom_email">Используйте назначенный логин или email в @%1$s</string>
|
||||
<string name="login_invalid_domain_suffix">Недопустимый суффикс домена</string>
|
||||
<string name="login_invalid_symbol">Неверный символ. Если вы не можете найти символ, пожалуйста, свяжитесь со школой</string>
|
||||
<string name="login_invalid_symbol_definitely">Don\'t make this up! If you cannot find it, please contact the school</string>
|
||||
<string name="login_invalid_symbol_definitely">Неверный символ. Если вы не можете найти символ, пожалуйста, свяжитесь со школой</string>
|
||||
<string name="login_incorrect_symbol">Ученик не найден. Проверьте symbol и выбранный тип дненика UONET+</string>
|
||||
<string name="login_duplicate_student">Данный ученик уже авторизован</string>
|
||||
<string name="login_symbol_helper">Symbol можно найти на странице регистрации в  <b>Uczeń</b> → <b>Dostęp Mobilny</b> → <b>Wygeneruj kod dostępu</b>.\n\nУбедитесь, что вы выбрали соответствующий тип дневника в поле <b>Тип дневника UONET+</b> на первом экране входа</string>
|
||||
@ -123,7 +123,7 @@
|
||||
<string name="grade_summary_predicted_grade">Ожидаемая оценка</string>
|
||||
<string name="grade_summary_descriptive">Описательная оценка</string>
|
||||
<string name="grade_summary_calculated_average">Рассчитанная средняя семестра</string>
|
||||
<string name="grade_summary_calculated_average_annual">Calculated annual average</string>
|
||||
<string name="grade_summary_calculated_average_annual">Рассчитанная средняя оценка</string>
|
||||
<string name="grade_summary_calculated_average_help_dialog_title">Как работает \"Рассчитанная средняя оценка\"?</string>
|
||||
<string name="grade_summary_calculated_average_help_dialog_message">Рассчитанная средняя оценка - это среднее арифметическое, рассчитанное на основе средних оценок по предметам. Это позволяет узнать приблизительную итоговую среднюю оценку. Она рассчитывается способом, выбранным пользователем в настройках приложения. Рекомендуется выбрать подходящий вариант, так как каждая школа по разному считает среднюю оценку. Кроме того, если ваша школа выставляет средние оценки по предметам на странице Vulcan, приложение просто загрузит их. Это можно изменить, заставив приложение считать среднюю оценку в настройках.\n\n<b>Средняя из оценок выбранного семестра</b>:\n1. Вычисление средневзвешенного значения по каждому предмету за семестр\n2.Суммирование вычисленных значений\n3. Вычисление среднего арифметического суммированных значений\n\n<b>Средняя из средних оценок семестров</b>:\n1.Расчет средневзвешенного значения для каждого предмета в семестрах. \n2. Вычисление среднего арифметического из средневзвешенных значений для каждого предмета в семестрах.\n3. Суммирование средних арифметических\n4. Вычисление среднего арифматического из суммированных значений\n\n<b>Средняя из оценок со всего года:</b>\n1. Расчет средневзвешенного значения по каждому предмету за год. Итоговое среднее значение за 1 семестр не имеет значения.\n2. Суммирование вычисленных средних\n3. Расчет среднего арифметического суммированных чисел</string>
|
||||
<string name="grade_summary_final_average_help_dialog_title">Как работает \"Итоговая средняя оценка\"?</string>
|
||||
@ -271,11 +271,11 @@
|
||||
<!--Attendance-->
|
||||
<string name="attendance_summary_button">Итоговая посещаемость</string>
|
||||
<string name="attendance_calculator_button">Калькулятор посещаемости</string>
|
||||
<string name="attendance_calculator_summary_balance_positive"><b>%1$d</b> over target</string>
|
||||
<string name="attendance_calculator_summary_balance_neutral">right on target</string>
|
||||
<string name="attendance_calculator_summary_balance_negative"><b>%1$d</b> under target</string>
|
||||
<string name="attendance_calculator_summary_values">%1$d/%2$d presences</string>
|
||||
<string name="attendance_calculator_summary_values_empty">No attendances recorded</string>
|
||||
<string name="attendance_calculator_summary_balance_positive"><b>%1$d</b> выше нормы</string>
|
||||
<string name="attendance_calculator_summary_balance_neutral">является нормой</string>
|
||||
<string name="attendance_calculator_summary_balance_negative"><b>%1$d</b> выше нормы</string>
|
||||
<string name="attendance_calculator_summary_values">%1$d/%2$d посещаемостей</string>
|
||||
<string name="attendance_calculator_summary_values_empty">Нет зарегистрированных участников</string>
|
||||
<string name="attendance_absence_school">Отсутствие по школьным причинам</string>
|
||||
<string name="attendance_absence_excused">Отсутствие по уважительной причине</string>
|
||||
<string name="attendance_absence_unexcused">Отсутствие по неуважительной причине</string>
|
||||
@ -742,9 +742,9 @@
|
||||
<string name="pref_view_grade_average_mode">Параметры расчёта средних оценок</string>
|
||||
<string name="pref_view_grade_average_force_calc">Принудительно высчитать среднюю оценку через приложение</string>
|
||||
<string name="pref_view_present">Показывать присутствия</string>
|
||||
<string name="pref_attendance_target">Attendance target</string>
|
||||
<string name="pref_attendance_calculator_show_empty_subjects">Show subjects without any attendances</string>
|
||||
<string name="pref_view_attendance_calculator_sorting_mode">Attendance calculator sorting</string>
|
||||
<string name="pref_attendance_target">Норма посещаемости</string>
|
||||
<string name="pref_attendance_calculator_show_empty_subjects">Показать предметы без посещаемостей</string>
|
||||
<string name="pref_view_attendance_calculator_sorting_mode">Сортировка рассчитанных посещаемостей</string>
|
||||
<string name="pref_view_app_theme">Тема</string>
|
||||
<string name="pref_view_expand_grade">Разворачивание оценок</string>
|
||||
<string name="pref_view_timetable_show_groups">Показать группы рядом с темами</string>
|
||||
@ -870,8 +870,10 @@
|
||||
<string name="auth_button_skip">Пропустить сейчас</string>
|
||||
<!--Captcha-->
|
||||
<string name="captcha_dialog_title">Требуется верификация веб-сайта VULCAN</string>
|
||||
<string name="captcha_dialog_description"><b>Why am I seeing this?</b>\nThe register website from which Wulkanowy downloads data displays the same screen as above, so Wulkanowy must also show it to be able to download data from this website. There\'s no way around it</string>
|
||||
<string name="captcha_dialog_description"><b>Почему я это вижу?</b>\n Веб-сайт регистрации, с которого Wulkanowy загружает данные, отображает тот же экран, что и выше, поэтому Wulkanowy также должен показать его, чтобы иметь возможность загружать данные с этого веб-сайта. Нет никакого способа обойти это</string>
|
||||
<string name="captcha_verified_message">Верификация успешна</string>
|
||||
<!--Panic mode-->
|
||||
<string name="panic_mode_title">Экстренный доступ</string>
|
||||
<!--Errors-->
|
||||
<string name="error_no_internet">Интернет-соединение отсутствует</string>
|
||||
<string name="error_invalid_device_datetime">Произошла ошибка. Проверьте время на вашем устройстве</string>
|
||||
@ -893,5 +895,7 @@
|
||||
<string name="message_unmute">Включить уведомления</string>
|
||||
<string name="message_mute_success">Вы отключили уведомления от этого пользователя</string>
|
||||
<string name="message_unmute_success">Вы включили уведомления от этого пользователя снова</string>
|
||||
>>>>>>> upstream/develop
|
||||
<!--End-->
|
||||
<string name="end_title">Koniec Wulkanowego</string>
|
||||
<string name="end_message">Jak zapewne niektórzy z Was się domyślali zbliża się ten moment, aby zakończyć pewien etap. Wraz z końcem tego roku szkolnego zamykamy projekt Wulkanowy. Stworzenie apki było ekscytującym wyzwaniem, ale skala projektu jest tak duża, że nie jesteśmy w stanie odpowiedzialnie utrzymywać aplikacji. Wulkanowy był fajną przygodą, ale sytuacja wymknęła się nam spod kontroli – zarówno pod względem technicznym, jak i społecznym. Nie akceptujemy pojawiającego się hejtu wobec nas ani wobec innych, także Vulcana. Nie chcemy brać udziału w tych działaniach i być z nimi utożsamiani. Prosimy Was o powściągliwość i rozwagę w publikowanych komentarzach i nieprzekraczanie dopuszczalnych granic.<br /><br />Prosimy Was też o uszanowanie naszej decyzji, jest ona przemyślana i ostateczna. Wszystkim dotychczasowym użytkownikom Wulkanowego rekomendujemy użycie oficjalnej aplikacji <a href=\"https://play.google.com/store/apps/details?id=pl.edu.vulcan.hebe&hl=pl\">Dzienniczek VULCAN</a>. Jeszcze raz dziękujemy wszystkim użytkownikom za lata wsparcia, pomoc i miłe słowa!</string>
|
||||
</resources>
|
||||
|
@ -1,21 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="pref_mod_settings_title">Skryté nastavenia</string>
|
||||
<string name="pref_hidden_settings_attendance_percentage">Percento dochádzky</string>
|
||||
<string name="pref_hidden_settings_hidden_grades">Skryť známky</string>
|
||||
<string name="pref_mod_settings_hidden_attendance_items">Skryté položky dochádzky</string>
|
||||
<string name="pref_mod_settings_show_notes">Zobraziť poznámky</string>
|
||||
|
||||
<string-array name="mod_settings_attendance_entries">
|
||||
<item>Neospravedlnená neprítomnosť</item>
|
||||
<item>Vynechanie</item>
|
||||
<item>Ospravedlnené meškanie</item>
|
||||
<item>Neospravedlnené meškanie</item>
|
||||
<item>Prítomnosť</item>
|
||||
<item>Zrušené</item>
|
||||
<item>Ospravedlnená absencia</item>
|
||||
<item>Neznámy</item>
|
||||
</string-array>
|
||||
<string name="pref_mod_settings_developer_mode">Vývojársky režim (prístup na túto stránku)</string>
|
||||
<string name="pref_mod_settings_developer_mode_summary">Po vypnutí tohto nastavenia už nebudete mať prístup na túto stránku, ale nastavenia sa budú naďalej uplatňovať.</string>
|
||||
</resources>
|
@ -19,6 +19,7 @@
|
||||
<item>Deutsch</item>
|
||||
<item>Čeština</item>
|
||||
<item>Slovenčina</item>
|
||||
<item>Kaszëbsczi</item>
|
||||
</string-array>
|
||||
<string-array name="services_interval_entries">
|
||||
<item>15 minút</item>
|
||||
|
@ -29,7 +29,7 @@
|
||||
<string name="notifications_center_title">Centrum oznámení</string>
|
||||
<string name="menu_order_title">Konfigurácia menu</string>
|
||||
<!--Subtitles-->
|
||||
<string name="grade_subtitle">Semester %1$d, %2$d/%3$d</string>
|
||||
<string name="grade_subtitle">Polrok %1$d, %2$d/%3$d</string>
|
||||
<!--Login-->
|
||||
<string name="login_header_default">Prihláste sa pomocou žiackeho alebo rodičovského účtu</string>
|
||||
<string name="login_header_symbol">Zadajte symbol zo stránky denníka: <b>%1$s</b></string>
|
||||
@ -105,8 +105,8 @@
|
||||
<string name="main_support_positive">Zapnúť reklamy</string>
|
||||
<!--Grade-->
|
||||
<string name="grade_header">Známka</string>
|
||||
<string name="grade_semester">Semester %d</string>
|
||||
<string name="grade_switch_semester">Zmeniť semester</string>
|
||||
<string name="grade_semester">Polrok %d</string>
|
||||
<string name="grade_switch_semester">Zmeniť polrok</string>
|
||||
<string name="grade_no_items">Žiadne známky</string>
|
||||
<string name="grade_weight">Váha</string>
|
||||
<string name="grade_weight_value">Váha: %s</string>
|
||||
@ -125,16 +125,16 @@
|
||||
<string name="grade_summary_calculated_average">Vypočítaný polročný priemer</string>
|
||||
<string name="grade_summary_calculated_average_annual">Vypočítaný ročný priemer</string>
|
||||
<string name="grade_summary_calculated_average_help_dialog_title">Ako funguje vypočítaný priemer?</string>
|
||||
<string name="grade_summary_calculated_average_help_dialog_message">Vypočítaný priemer je aritmetický priemer vypočítaný z priemerov predmetov. Umožňuje vám to poznať približný konečný priemer. Vypočítava sa spôsobom zvoleným užívateľom v nastaveniach aplikácii. Odporúča sa vybrať príslušnú možnosť. Dôvodom je rozdielny výpočet školských priemerov. Ak vaša škola navyše uvádza priemer predmetov na stránke denníka Vulcan, aplikácia si ich stiahne a tieto priemery nepočíta. To možno zmeniť vynútením výpočtu priemeru v nastavení aplikácii.\n\n<b>Priemer známok iba z vybraného semestra</b>:\n1. Výpočet váženého priemeru pre každý predmet v danom semestri\n2. Sčítanie vypočítaných priemerov\n3. Výpočet aritmetického priemeru součtených priemerov\n\n<b>Priemer priemerov z oboch semestrov</b>:\n1. Výpočet váženého priemeru pre každý predmet v semestri 1 a 2\n2. Výpočet aritmetického priemeru vypočítaných priemerov za semestre 1 a 2 pre každý predmet.\n3. Sčítanie vypočítaných priemerov\n4. Výpočet aritmetického priemeru součtených priemerov\n\n<b>Priemer známok z celého roka:</b>\n1. Výpočet váženého priemeru za rok pre každý predmet. Konečný priemer v 1. semestri je nepodstatný.\n2. Sčítanie vypočítaných priemerov\n3. Výpočet aritmetického priemeru součtených priemerov</string>
|
||||
<string name="grade_summary_calculated_average_help_dialog_message">Vypočítaný priemer je aritmetický priemer vypočítaný z priemerov predmetov. Umožňuje vám to poznať približný konečný priemer. Vypočítava sa spôsobom zvoleným užívateľom v nastavení aplikácii. Odporúča sa vybrať príslušnú možnosť. Dôvodom je rozdielny výpočet školských priemerov. Pokiaľ vaša škola navyše uvádza priemer predmetov na stránke denníka Vulcan, aplikácia si ich stiahne a tieto priemery nepočíta. To je možné zmeniť vynútením výpočtu priemeru v nastavení aplikácie.\n\n<b>Priemer známok iba z vybraného polroka</b>:\n1. Výpočet váženého priemeru pre každý predmet v danom polroku\n2. Sčítanie vypočítaných priemerov\n3. Výpočet aritmetického priemeru sčítaných priemerov\n\n<b>Priemer priemerov z oboch polrokov</b>:\n1. Výpočet váženého priemeru pre každý predmet v polroku 1 a 2\n2. Výpočet aritmetického priemeru vypočítaných priemerov za polrok 1 a 2 pre každý predmet.\n3. Sčítanie vypočítaných priemerov\n4. Výpočet aritmetického priemeru sčítaných priemerov\n\n<b>Priemer známok z celého roka:</b>\n1. Výpočet váženého priemeru za rok pre každý predmet. Konečný priemer v 1. polroku je nepodstatný.\n2. Sčítanie vypočítaných priemerov\n3. Výpočet aritmetického priemeru sčítaných priemerov</string>
|
||||
<string name="grade_summary_final_average_help_dialog_title">Ako funguje konečný priemer?</string>
|
||||
<string name="grade_summary_final_average_help_dialog_message">Konečný priemer je aritmetický priemer vypočítaný zo všetkých aktuálne dostupných konečných známok v danom semestri.\n\nSchéma výpočtu sa skladá z nasledujúcich krokov:\n1. Sčítanie konečných známok zadaných učiteľmi\n2. Delené počtom predmetov, pre ktoré už boli vydané známky</string>
|
||||
<string name="grade_summary_final_average_help_dialog_message">Konečný priemer je aritmetický priemer vypočítaný zo všetkých aktuálne dostupných konečných známok v danom polroku.\n\nSchéma výpočtu sa skladá z nasledujúcich krokov:\n1. Sčítanie konečných známok zadaných učiteľmi\n2. Delené počtom predmetov, pre ktoré už boli udelené známky</string>
|
||||
<string name="grade_summary_final_average">Konečný priemer</string>
|
||||
<string name="grade_summary_from_subjects">z %1$d z %2$d predmetov</string>
|
||||
<string name="grade_menu_summary">Zhrnutie</string>
|
||||
<string name="grade_menu_statistics">Trieda</string>
|
||||
<string name="grade_menu_read">Označiť ako prečítané</string>
|
||||
<string name="grade_statistics_partial">Čiastočné</string>
|
||||
<string name="grade_statistics_semester">Semester</string>
|
||||
<string name="grade_statistics_semester">Polrok</string>
|
||||
<string name="grade_statistics_points">Body</string>
|
||||
<string name="grade_statistics_legend">Vysvetlivky</string>
|
||||
<string name="grade_statistics_class_average">Priemer triedy: %1$s</string>
|
||||
@ -499,7 +499,7 @@
|
||||
<string name="mobile_devices_title">Mobilný prístup</string>
|
||||
<string name="mobile_devices_no_items">Žiadne zariadenia</string>
|
||||
<string name="mobile_devices_unregister">Zrušiť registráciu</string>
|
||||
<string name="mobile_device_removed">Zariadenie odstránenie</string>
|
||||
<string name="mobile_device_removed">Zariadenie odstránené</string>
|
||||
<string name="mobile_device_qr">QR kód</string>
|
||||
<string name="mobile_device_token">Token</string>
|
||||
<string name="mobile_device_symbol">Symbol</string>
|
||||
@ -872,6 +872,8 @@
|
||||
<string name="captcha_dialog_title">Webová stránka denníka VULCAN vyžaduje overenie</string>
|
||||
<string name="captcha_dialog_description"><b>Prečo sa mi to zobrazuje?</b>\nWebová stránka denníka, z ktorej Wulkanowy sťahuje dáta, zobrazuje rovnakú obrazovku ako vyššie, takže Wulkanowy ju musí tiež zobraziť, aby bolo možné získavať dáta z tejto stránky. Nedá sa to obísť</string>
|
||||
<string name="captcha_verified_message">Úspešne overené</string>
|
||||
<!--Panic mode-->
|
||||
<string name="panic_mode_title">Núdzový prístup</string>
|
||||
<!--Errors-->
|
||||
<string name="error_no_internet">Žiadne internetové pripojenie</string>
|
||||
<string name="error_invalid_device_datetime">Vyskytla sa chyba. Skontrolujte hodiny svojho zariadenia</string>
|
||||
@ -893,5 +895,7 @@
|
||||
<string name="message_unmute">Zrušiť stlmenie</string>
|
||||
<string name="message_mute_success">Stlmili ste tohto používateľa</string>
|
||||
<string name="message_unmute_success">Zrušili ste stlmenie tohto používateľa</string>
|
||||
<string name="pref_mod_settings_other_title">Iné</string>
|
||||
<!--End-->
|
||||
<string name="end_title">Koniec Wulkanowego</string>
|
||||
<string name="end_message">Jak zapewne niektórzy z Was się domyślali zbliża się ten moment, aby zakończyć pewien etap. Wraz z końcem tego roku szkolnego zamykamy projekt Wulkanowy. Stworzenie apki było ekscytującym wyzwaniem, ale skala projektu jest tak duża, że nie jesteśmy w stanie odpowiedzialnie utrzymywać aplikacji. Wulkanowy był fajną przygodą, ale sytuacja wymknęła się nam spod kontroli – zarówno pod względem technicznym, jak i społecznym. Nie akceptujemy pojawiającego się hejtu wobec nas ani wobec innych, także Vulcana. Nie chcemy brać udziału w tych działaniach i być z nimi utożsamiani. Prosimy Was o powściągliwość i rozwagę w publikowanych komentarzach i nieprzekraczanie dopuszczalnych granic.<br /><br />Prosimy Was też o uszanowanie naszej decyzji, jest ona przemyślana i ostateczna. Wszystkim dotychczasowym użytkownikom Wulkanowego rekomendujemy użycie oficjalnej aplikacji <a href=\"https://play.google.com/store/apps/details?id=pl.edu.vulcan.hebe&hl=pl\">Dzienniczek VULCAN</a>. Jeszcze raz dziękujemy wszystkim użytkownikom za lata wsparcia, pomoc i miłe słowa!</string>
|
||||
</resources>
|
||||
|
@ -1,21 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="pref_mod_settings_title">Секретні налаштування</string>
|
||||
<string name="pref_hidden_settings_attendance_percentage">Відсоток відвідуваності</string>
|
||||
<string name="pref_hidden_settings_hidden_grades">Приховати оцінки</string>
|
||||
<string name="pref_mod_settings_hidden_attendance_items">Приховані елементи відвідування</string>
|
||||
<string name="pref_mod_settings_show_notes">Показати нотатки</string>
|
||||
|
||||
<string-array name="mod_settings_attendance_entries">
|
||||
<item>Прогул без поважних причин</item>
|
||||
<item>Звільнення</item>
|
||||
<item>Поважне запізнення</item>
|
||||
<item>Запізнення без поважних причин</item>
|
||||
<item>Присутній</item>
|
||||
<item>Видалено</item>
|
||||
<item>Поважна відсутність</item>
|
||||
<item>Невідомо</item>
|
||||
</string-array>
|
||||
<string name="pref_mod_settings_developer_mode">Режим розробника (доступ до цієї сторінки)</string>
|
||||
<string name="pref_mod_settings_developer_mode_summary">Після вимкнення цього налаштування ви більше не зможете отримати доступ до цієї сторінки, але налаштування все одно будуть застосовані.</string>
|
||||
</resources>
|
@ -19,6 +19,7 @@
|
||||
<item>Deutsch</item>
|
||||
<item>Čeština</item>
|
||||
<item>Slovenčina</item>
|
||||
<item>Kaszëbsczi</item>
|
||||
</string-array>
|
||||
<string-array name="services_interval_entries">
|
||||
<item>15 хвилин</item>
|
||||
|
@ -872,6 +872,8 @@
|
||||
<string name="captcha_dialog_title">Веб-сайт VULCAN потребує підтвердження</string>
|
||||
<string name="captcha_dialog_description"><b>Чому я це бачу?</b>\nСайт реєстру, з якого Wulkanowy завантажує дані, відображає той самий екран, що й вище, тому Wulkanowy також повинен показувати його, щоб мати змогу завантажувати дані з цього сайту. Це неможливо обійти</string>
|
||||
<string name="captcha_verified_message">Верифікація завершена</string>
|
||||
<!--Panic mode-->
|
||||
<string name="panic_mode_title">Екстрений доступ</string>
|
||||
<!--Errors-->
|
||||
<string name="error_no_internet">Немає з\'єднання з інтернетом</string>
|
||||
<string name="error_invalid_device_datetime">Сталася помилка. Перевірте годинник пристрою</string>
|
||||
@ -893,5 +895,7 @@
|
||||
<string name="message_unmute">Ввімкнути сповіщення</string>
|
||||
<string name="message_mute_success">Ви ігноруєте цього користувача</string>
|
||||
<string name="message_unmute_success">Ви не ігноруєте цього користувача</string>
|
||||
<string name="pref_mod_settings_other_title">Інше</string>
|
||||
<!--End-->
|
||||
<string name="end_title">Koniec Wulkanowego</string>
|
||||
<string name="end_message">Jak zapewne niektórzy z Was się domyślali zbliża się ten moment, aby zakończyć pewien etap. Wraz z końcem tego roku szkolnego zamykamy projekt Wulkanowy. Stworzenie apki było ekscytującym wyzwaniem, ale skala projektu jest tak duża, że nie jesteśmy w stanie odpowiedzialnie utrzymywać aplikacji. Wulkanowy był fajną przygodą, ale sytuacja wymknęła się nam spod kontroli – zarówno pod względem technicznym, jak i społecznym. Nie akceptujemy pojawiającego się hejtu wobec nas ani wobec innych, także Vulcana. Nie chcemy brać udziału w tych działaniach i być z nimi utożsamiani. Prosimy Was o powściągliwość i rozwagę w publikowanych komentarzach i nieprzekraczanie dopuszczalnych granic.<br /><br />Prosimy Was też o uszanowanie naszej decyzji, jest ona przemyślana i ostateczna. Wszystkim dotychczasowym użytkownikom Wulkanowego rekomendujemy użycie oficjalnej aplikacji <a href=\"https://play.google.com/store/apps/details?id=pl.edu.vulcan.hebe&hl=pl\">Dzienniczek VULCAN</a>. Jeszcze raz dziękujemy wszystkim użytkownikom za lata wsparcia, pomoc i miłe słowa!</string>
|
||||
</resources>
|
||||
|
@ -1,75 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="pref_mod_settings_title">Hidden settings</string>
|
||||
<string name="pref_mod_settings_hidden_attendance_items">Hidden attendance items</string>
|
||||
<string name="pref_hidden_settings_attendance_percentage">Attendance percentage</string>
|
||||
<string name="pref_hidden_settings_hidden_grades">Hidden grades</string>
|
||||
|
||||
<string name="pref_key_hidden_grades" translatable="false">hidden_grades</string>
|
||||
<string name="pref_key_attendance_items" translatable="false">attendance_items</string>
|
||||
<string name="pref_key_attendance_percentage" translatable="false">attendance_percentage</string>
|
||||
<string name="pref_key_developer_mode" translatable="false">developer_mode</string>
|
||||
<string name="pref_default_attendance_percentage" translatable="false">-1</string>
|
||||
<string name="pref_key_show_notes" translatable="false">show_notes</string>
|
||||
|
||||
<string name="pref_mod_settings_developer_mode">Developer mode (access to this page)</string>
|
||||
<string name="pref_mod_settings_developer_mode_summary">After disabling this setting, you will not be able to access this page anymore, but the settings will still be applied.</string>
|
||||
<string name="pref_mod_settings_show_notes">Show notes</string>
|
||||
|
||||
<bool name="pref_default_developer_mode">false</bool>
|
||||
<bool name="pref_default_show_notes">true</bool>
|
||||
|
||||
<string-array name="mod_settings_attendance_entries">
|
||||
<item>Unexcused absence</item>
|
||||
<item>Exemption</item>
|
||||
<item>Excused lateness</item>
|
||||
<item>Unexcused lateness</item>
|
||||
<item>Present</item>
|
||||
<item>Deleted</item>
|
||||
<item>Excused absence</item>
|
||||
<item>Unknown</item>
|
||||
</string-array>
|
||||
|
||||
<string-array name="mod_settings_attendance_values" translatable="false">
|
||||
<item>UNEXCUSED_ABSENCE</item>
|
||||
<item>EXEMPTION</item>
|
||||
<item>EXCUSED_LATENESS</item>
|
||||
<item>UNEXCUSED_LATENESS</item>
|
||||
<item>PRESENT</item>
|
||||
<item>DELETED</item>
|
||||
<item>EXCUSED_ABSENCE</item>
|
||||
<item>UNKNOWN</item>
|
||||
</string-array>
|
||||
|
||||
<string-array name="pref_default_hidden_attendance_items">
|
||||
|
||||
</string-array>
|
||||
|
||||
<string-array name="hidden_settings_bad_grades" translatable="false">
|
||||
<item>1</item>
|
||||
<item>1+</item>
|
||||
<item>2-</item>
|
||||
<item>2</item>
|
||||
<item>2+</item>
|
||||
<item>3-</item>
|
||||
<item>3</item>
|
||||
<item>3+</item>
|
||||
<item>4-</item>
|
||||
<item>4</item>
|
||||
<item>4+</item>
|
||||
<item>5-</item>
|
||||
<item>5</item>
|
||||
<item>5+</item>
|
||||
<item>6</item>
|
||||
<item>6-</item>
|
||||
<item>nb</item>
|
||||
<item>0</item>
|
||||
</string-array>
|
||||
<string-array name="pref_default_hidden_grades" translatable="false">
|
||||
<item>1</item>
|
||||
<item>1+</item>
|
||||
<item>2-</item>
|
||||
<item>2</item>
|
||||
<item>2+</item>
|
||||
</string-array>
|
||||
</resources>
|
@ -40,7 +40,6 @@
|
||||
<item>GRADES</item>
|
||||
<item>ANNOUNCEMENTS</item>
|
||||
</string-array>
|
||||
<string-array name="pref_default_hidden_settings_tiles"/>
|
||||
<bool name="pref_default_ads_enabled">false</bool>
|
||||
<bool name="pref_default_ads_consent_data_processing">false</bool>
|
||||
<bool name="pref_default_incognito_mode">false</bool>
|
||||
|
@ -40,6 +40,7 @@
|
||||
<item>Deutsch</item>
|
||||
<item>Čeština</item>
|
||||
<item>Slovenčina</item>
|
||||
<item>Kaszëbsczi</item>
|
||||
</string-array>
|
||||
<string-array name="app_language_values" translatable="false">
|
||||
<item>system</item>
|
||||
@ -50,6 +51,7 @@
|
||||
<item>de</item>
|
||||
<item>cs</item>
|
||||
<item>sk</item>
|
||||
<item>csb</item>
|
||||
</string-array>
|
||||
|
||||
<string-array name="services_interval_entries">
|
||||
|
@ -895,5 +895,8 @@
|
||||
<string name="message_unmute">Unmute</string>
|
||||
<string name="message_mute_success">You have muted this user</string>
|
||||
<string name="message_unmute_success">You have unmuted this user</string>
|
||||
<string name="pref_mod_settings_other_title">Other</string>
|
||||
|
||||
<!--End-->
|
||||
<string name="end_title">Koniec Wulkanowego</string>
|
||||
<string name="end_message">Jak zapewne niektórzy z Was się domyślali zbliża się ten moment, aby zakończyć pewien etap. Wraz z końcem tego roku szkolnego zamykamy projekt Wulkanowy. Stworzenie apki było ekscytującym wyzwaniem, ale skala projektu jest tak duża, że nie jesteśmy w stanie odpowiedzialnie utrzymywać aplikacji. Wulkanowy był fajną przygodą, ale sytuacja wymknęła się nam spod kontroli – zarówno pod względem technicznym, jak i społecznym. Nie akceptujemy pojawiającego się hejtu wobec nas ani wobec innych, także Vulcana. Nie chcemy brać udziału w tych działaniach i być z nimi utożsamiani. Prosimy Was o powściągliwość i rozwagę w publikowanych komentarzach i nieprzekraczanie dopuszczalnych granic.<br /><br />Prosimy Was też o uszanowanie naszej decyzji, jest ona przemyślana i ostateczna. Wszystkim dotychczasowym użytkownikom Wulkanowego rekomendujemy użycie oficjalnej aplikacji <a href="https://play.google.com/store/apps/details?id=pl.edu.vulcan.hebe&hl=pl">Dzienniczek VULCAN</a>. Jeszcze raz dziękujemy wszystkim użytkownikom za lata wsparcia, pomoc i miłe słowa!</string>
|
||||
</resources>
|
||||
|
@ -1,7 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<PreferenceScreen
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
app:key="settings_preferences">
|
||||
<PreferenceScreen xmlns:app="http://schemas.android.com/apk/res-auto">
|
||||
<Preference
|
||||
app:fragment="io.github.wulkanowy.ui.modules.settings.appearance.AppearanceFragment"
|
||||
app:icon="@drawable/ic_settings_appearance"
|
||||
@ -32,9 +30,4 @@
|
||||
app:key="about"
|
||||
app:summary="@string/pref_about_category_summary"
|
||||
app:title="@string/about_title" />
|
||||
<Preference
|
||||
app:fragment="io.github.wulkanowy.ui.modules.settings.mod_settings.ModSettingsFragment"
|
||||
app:icon="@drawable/ic_dashboard_warning"
|
||||
app:key="mod_settings"
|
||||
app:title="@string/pref_mod_settings_title" />
|
||||
</PreferenceScreen>
|
||||
|
@ -1,56 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<PreferenceScreen xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<PreferenceCategory
|
||||
app:iconSpaceReserved="false"
|
||||
app:title="@string/attendance_title">
|
||||
<EditTextPreference
|
||||
android:inputType="numberDecimal"
|
||||
android:digits="0123456789"
|
||||
app:iconSpaceReserved="false"
|
||||
app:key="@string/pref_key_attendance_percentage"
|
||||
app:title="@string/pref_hidden_settings_attendance_percentage"
|
||||
app:useSimpleSummaryProvider="true" />
|
||||
|
||||
<MultiSelectListPreference
|
||||
app:defaultValue="@array/pref_default_hidden_attendance_items"
|
||||
app:entries="@array/mod_settings_attendance_entries"
|
||||
app:entryValues="@array/mod_settings_attendance_values"
|
||||
app:iconSpaceReserved="false"
|
||||
app:key="@string/pref_key_attendance_items"
|
||||
app:title="@string/pref_mod_settings_hidden_attendance_items"
|
||||
app:useSimpleSummaryProvider="true" />
|
||||
</PreferenceCategory>
|
||||
<PreferenceCategory
|
||||
app:iconSpaceReserved="false"
|
||||
app:title="@string/grade_title">
|
||||
<MultiSelectListPreference
|
||||
app:entries="@array/hidden_settings_bad_grades"
|
||||
app:entryValues="@array/hidden_settings_bad_grades"
|
||||
app:iconSpaceReserved="false"
|
||||
app:key="@string/pref_key_hidden_grades"
|
||||
app:title="@string/pref_hidden_settings_hidden_grades"
|
||||
app:useSimpleSummaryProvider="true" />
|
||||
</PreferenceCategory>
|
||||
<PreferenceCategory
|
||||
app:iconSpaceReserved="false"
|
||||
app:title="@string/note_title">
|
||||
<SwitchPreferenceCompat
|
||||
app:defaultValue="@bool/pref_default_show_notes"
|
||||
app:iconSpaceReserved="false"
|
||||
app:key="@string/pref_key_show_notes"
|
||||
app:singleLineTitle="false"
|
||||
app:title="@string/pref_mod_settings_show_notes" />
|
||||
</PreferenceCategory>
|
||||
<PreferenceCategory
|
||||
app:iconSpaceReserved="false"
|
||||
app:title="@string/pref_mod_settings_other_title">
|
||||
<SwitchPreferenceCompat
|
||||
app:defaultValue="@bool/pref_default_developer_mode"
|
||||
app:iconSpaceReserved="false"
|
||||
app:key="@string/pref_key_developer_mode"
|
||||
app:singleLineTitle="false"
|
||||
app:title="@string/pref_mod_settings_developer_mode"
|
||||
app:summary="@string/pref_mod_settings_developer_mode_summary"/>
|
||||
</PreferenceCategory>
|
||||
</PreferenceScreen>
|
@ -1,7 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<PreferenceScreen
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
app:key="settings_preferences">
|
||||
<PreferenceScreen xmlns:app="http://schemas.android.com/apk/res-auto">
|
||||
<Preference
|
||||
app:fragment="io.github.wulkanowy.ui.modules.settings.appearance.AppearanceFragment"
|
||||
app:icon="@drawable/ic_settings_appearance"
|
||||
@ -38,9 +36,4 @@
|
||||
app:key="about"
|
||||
app:summary="@string/pref_about_category_summary"
|
||||
app:title="@string/about_title" />
|
||||
<Preference
|
||||
app:fragment="io.github.wulkanowy.ui.modules.settings.mod_settings.ModSettingsFragment"
|
||||
app:icon="@drawable/ic_dashboard_warning"
|
||||
app:key="mod_settings"
|
||||
app:title="@string/pref_mod_settings_title" />
|
||||
</PreferenceScreen>
|
||||
|
@ -1,6 +1,6 @@
|
||||
buildscript {
|
||||
ext {
|
||||
kotlin_version = '1.9.23'
|
||||
kotlin_version = '1.9.24'
|
||||
about_libraries = '11.1.4'
|
||||
hilt_version = '2.51.1'
|
||||
}
|
||||
@ -13,12 +13,12 @@ buildscript {
|
||||
dependencies {
|
||||
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
|
||||
classpath "org.jetbrains.kotlin:kotlin-serialization:$kotlin_version"
|
||||
classpath "com.google.devtools.ksp:com.google.devtools.ksp.gradle.plugin:$kotlin_version-1.0.19"
|
||||
classpath 'com.android.tools.build:gradle:8.4.0'
|
||||
classpath "com.google.devtools.ksp:com.google.devtools.ksp.gradle.plugin:$kotlin_version-1.0.20"
|
||||
classpath 'com.android.tools.build:gradle:8.4.1'
|
||||
classpath "com.google.dagger:hilt-android-gradle-plugin:$hilt_version"
|
||||
classpath 'com.google.gms:google-services:4.4.1'
|
||||
classpath 'com.huawei.agconnect:agcp:1.9.1.303'
|
||||
classpath 'com.google.firebase:firebase-crashlytics-gradle:2.9.9'
|
||||
classpath 'com.google.firebase:firebase-crashlytics-gradle:3.0.1'
|
||||
classpath "com.github.triplet.gradle:play-publisher:3.8.4"
|
||||
classpath "ru.cian:huawei-publish-gradle-plugin:1.4.2"
|
||||
classpath "org.sonarsource.scanner.gradle:sonarqube-gradle-plugin:5.0.0.4638"
|
||||
|
Reference in New Issue
Block a user