Compare commits

...

33 Commits

Author SHA1 Message Date
Hafiz 52fbb677f9 update group-plans info card styles 2026-02-17 15:12:12 -06:00
Hafiz cfaf317b35 Fix emoji autocomplete overlapping actual text
position dropdown below text
2026-02-17 14:18:34 -06:00
Hafiz ca92208c28 update habitica-markdown package version (v3.0.0 -> v4.0.0) 2026-02-17 14:16:25 -06:00
Hafiz d2f611bd7e trying another github actions fix 2026-02-17 13:56:49 -06:00
Hafiz 016c43d0d1 try upping github-action fix 2026-02-17 13:54:02 -06:00
Hafiz ea93bfdbde emoji autocomplete to chat, messages, tasks, and profile
add :emoji shortcode autocomplete dropdown (reusing existing autocomplete mixin w/new helper)
2026-02-17 13:42:03 -06:00
Hafiz c2e8118852 size emoji in markdown 2026-02-17 13:16:12 -06:00
Hafiz 32c99a498f update habitica-markdown to include v3 emoji dataset (pointed towards test branch) 2026-02-06 14:51:10 -06:00
Hafiz f27a0581d9 fix indented code block detection for markdown-it v14 2026-02-06 14:30:32 -06:00
Hafiz 39d2431b32 Fix line endings in habiticaMarkdown test 2026-02-06 14:15:10 -06:00
Hafiz 235c0da38d Update emoji system to native Unicode rendering 2026-02-06 14:12:04 -06:00
Hafiz 9b0800c74b Merge remote-tracking branch 'origin/develop' into qa/monkey 2026-02-06 12:22:22 -06:00
Kalista Payne 5dd9711413 Update local dev MongoDB versions (#15334)
* chore(mongodb): update local dev MongoDB versions

* fix(github): update mongodb-github-action

* test(api): attempt to gather more detail on failures

* Revert "test(api): attempt to gather more detail on failures"

This reverts commit 215e768e90.

* WIP mongodb-memory-serve

* fix(mongo): start replica set

* run mongo as gh action service

* remove matrix for mongo

* try npm -> docker instead of services

* try "docker compose"

* disable mongo bootstrap from build

* try gh action again

* try newer action version

* working mongo docker compose 🎉

* fix(lint): leave out unused imports

* update lock

* cleanup previous workflow changes

* remove previous code, dont share mongo data folders on runtype (rs and docker)

* mongo docker for testing; align mongodb directory naming

* remove run-rs, add docker:aio script call, use healthcheck to initiate again

* merge docker-compose.yml, fix client port listening

* fix oudated healthcheck param

* chore(mongodb): update local dev MongoDB versions

* fix(github): update mongodb-github-action

* test(api): attempt to gather more detail on failures

* Revert "test(api): attempt to gather more detail on failures"

This reverts commit 215e768e90.

* WIP mongodb-memory-serve

* run mongo as gh action service

* fix(mongo): start replica set

* remove matrix for mongo

* try npm -> docker instead of services

* try "docker compose"

* disable mongo bootstrap from build

* try gh action again

* try newer action version

* working mongo docker compose 🎉

* fix(lint): leave out unused imports

* update lock

* cleanup previous workflow changes

* remove previous code, dont share mongo data folders on runtype (rs and docker)

* mongo docker for testing; align mongodb directory naming

* remove run-rs, add docker:aio script call, use healthcheck to initiate again

* merge docker-compose.yml, fix client port listening

* fix oudated healthcheck param

* fix(config): remove dup keys

* using npx vite during docker aio run

---------

Co-authored-by: negue <eugen.bolz@gmail.com>
2026-01-30 17:19:35 -06:00
Kalista Payne a542277a41 5.44.2 2026-01-26 11:46:03 -06:00
Phillip Thelen cdf8556fd6 Improve performance in production setup (#15594)
* build cached content files for mobile during gulp build

* load already cached content files during startup

* add option for mongoose to define minPoolSize

* cache client index.html for 10 minutes. Improves initial load times

* add option to auth to use lean version of user doc

* add a way to produce a heapdump from the command line

* fix lint
2026-01-26 11:45:44 -06:00
Kalista Payne 3d93390a7a fix(languages): update template characters 2026-01-23 13:09:14 -06:00
Kalista Payne 59f9cfa0f4 5.44.1 2026-01-23 13:03:30 -06:00
Kalista Payne 80d7804f69 fix(strings): use consistent template characters 2026-01-23 12:53:29 -06:00
Hafiz 5e1770246d Clear upgradingGroup state after group plan payment 2026-01-15 12:04:08 -06:00
Hafiz a6a18e56d8 suppress error toasts for group modal, and UI tweaks for group modal
suppress error toast for 404 on party fetch for users without a party (for group modal), Increase check SVG size in selectableCard, and show "Previously upgraded" label for parties that were canceled group plans
2026-01-15 11:08:44 -06:00
Hafiz 7a06263cf4 Show warning for pending party invites when upgrading to paid group plan
Show warning for pending party invites when upgrading to paid group plan. If user upgrades from party to group, remove any pending invites
2026-01-14 19:43:29 -06:00
Hafiz e2e1d1e6be format member count 2026-01-14 09:31:30 -06:00
Hafiz 6d2b896bf5 set initial selected group plan, and fix card rounding 2026-01-14 09:28:44 -06:00
Hafiz 780d67c3de Remove comment 2026-01-13 13:54:26 -06:00
Hafiz aa4d26a5ae replace chaining (?.) w/null check 2026-01-13 13:49:12 -06:00
Hafiz 1a9707445f Fix eslint error in push notification import 2026-01-13 13:43:24 -06:00
Hafiz 3a91fde01d Update group plan eligibility check 2026-01-13 13:39:27 -06:00
Hafiz dcb3b1633b force flag when fetching group plans 2026-01-13 13:21:55 -06:00
Hafiz fa43484a1b Add includeExpiredPlans option to group fetching 2026-01-13 13:05:35 -06:00
Hafiz 9712d78fd3 Update group plan selection to include expired plans 2026-01-13 12:40:20 -06:00
Hafiz f6cc11771f set selection of group plan
Also tiny UI fixes
2026-01-12 12:32:22 -06:00
Hafiz 08c51b0908 crlf -> lf lint 2026-01-12 12:02:37 -06:00
Hafiz b4aa018699 Add group plan selection modal for upgrades
Allow users to select an existing group to upgrade before creating a new one.
2026-01-12 11:54:08 -06:00
157 changed files with 7552 additions and 4202 deletions
+30 -20
View File
@@ -82,7 +82,7 @@ jobs:
CI: true
NODE_ENV: test
- run: npm run test:sanity
common:
runs-on: ubuntu-latest
strategy:
@@ -129,13 +129,12 @@ jobs:
CI: true
NODE_ENV: test
- run: npm run test:content
api-unit:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [21.x]
mongodb-version: [4.2]
steps:
- uses: actions/checkout@v4
with:
@@ -144,11 +143,14 @@ jobs:
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
- name: Start MongoDB ${{ matrix.mongodb-version }} Replica Set
uses: supercharge/mongodb-github-action@1.3.0
with:
mongodb-version: ${{ matrix.mongodb-version }}
mongodb-replica-set: rs
- name: Start MongoDB 7.0 Replica Set
run: |
docker run -d --name mongodb -p 27017:27017 mongo:7.0 --replSet rs
sleep 5
docker exec mongodb mongosh --quiet --eval "rs.initiate({_id: 'rs', members: [{_id: 0, host: 'localhost:27017'}]})"
sleep 3
- run: sudo apt update
- run: sudo apt -y install libkrb5-dev
- run: cp config.json.example config.json
@@ -158,15 +160,16 @@ jobs:
env:
CI: true
NODE_ENV: test
- run: npm run test:api:unit
env:
REQUIRES_SERVER=true: true
api-v3-integration:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [21.x]
mongodb-version: [4.2]
steps:
- uses: actions/checkout@v4
with:
@@ -175,11 +178,13 @@ jobs:
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
- name: Start MongoDB ${{ matrix.mongodb-version }} Replica Set
uses: supercharge/mongodb-github-action@1.3.0
with:
mongodb-version: ${{ matrix.mongodb-version }}
mongodb-replica-set: rs
- name: Start MongoDB 7.0 Replica Set
run: |
docker run -d --name mongodb -p 27017:27017 mongo:7.0 --replSet rs
sleep 5
docker exec mongodb mongosh --quiet --eval "rs.initiate({_id: 'rs', members: [{_id: 0, host: 'localhost:27017'}]})"
sleep 3
- run: sudo apt update
- run: sudo apt -y install libkrb5-dev
- run: cp config.json.example config.json
@@ -189,15 +194,17 @@ jobs:
env:
CI: true
NODE_ENV: test
- run: npm run test:api-v3:integration
env:
REQUIRES_SERVER=true: true
api-v4-integration:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [21.x]
mongodb-version: [4.2]
steps:
- uses: actions/checkout@v4
with:
@@ -206,11 +213,13 @@ jobs:
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
- name: Start MongoDB ${{ matrix.mongodb-version }} Replica Set
uses: supercharge/mongodb-github-action@1.3.0
with:
mongodb-version: ${{ matrix.mongodb-version }}
mongodb-replica-set: rs
- name: Start MongoDB 7.0 Replica Set
run: |
docker run -d --name mongodb -p 27017:27017 mongo:7.0 --replSet rs
sleep 5
docker exec mongodb mongosh --quiet --eval "rs.initiate({_id: 'rs', members: [{_id: 0, host: 'localhost:27017'}]})"
sleep 3
- run: sudo apt update
- run: sudo apt -y install libkrb5-dev
- run: cp config.json.example config.json
@@ -220,6 +229,7 @@ jobs:
env:
CI: true
NODE_ENV: test
- run: npm run test:api-v4:integration
env:
REQUIRES_SERVER=true: true
+1 -1
View File
@@ -47,5 +47,5 @@ webpack.webstorm.config
# mongodb replica set for local dev
mongodb-*.tgz
/mongodb-data*
/mongodb-*
/.nyc_output
+2 -2
View File
@@ -46,7 +46,7 @@
"MAINTENANCE_MODE": "false",
"MONGODB_POOL_SIZE": "10",
"MONGODB_SOCKET_TIMEOUT": "20000",
"NODE_DB_URI": "mongodb://localhost:27017/habitica-dev?replicaSet=rs",
"NODE_DB_URI": "mongodb://localhost:27017/habitica-dev?replicaSet=rs&directConnection=true&readPreference=secondary",
"NODE_ENV": "development",
"PATH": "bin:node_modules/.bin:/usr/local/bin:/usr/bin:/bin",
"PAYPAL_BILLING_PLANS_basic_12mo": "basic_12mo",
@@ -90,7 +90,7 @@
"STRIPE_API_KEY": "aaaabbbbccccddddeeeeffff00001111",
"STRIPE_PUB_KEY": "22223333444455556666777788889999",
"STRIPE_WEBHOOKS_ENDPOINT_SECRET": "111111",
"TEST_DB_URI": "mongodb://localhost:27017/habitica-test?replicaSet=rs",
"TEST_DB_URI": "mongodb://localhost:27017/habitica-test?replicaSet=rs&directConnection=true&readPreference=secondary",
"TIME_TRAVEL_ENABLED": "false",
"TRUSTED_DOMAINS": "localhost,https://habitica.com",
"WEB_CONCURRENCY": 1
-53
View File
@@ -1,53 +0,0 @@
services:
client:
build:
context: .
dockerfile: ./Dockerfile-Dev
command: ["npm", "run", "client:dev"]
depends_on:
- server
environment:
- BASE_URL=http://server:3000
networks:
- habitica
ports:
- "8080:8080"
volumes:
- .:/usr/src/habitica
- /usr/src/habitica/node_modules
- /usr/src/habitica/website/client/node_modules
server:
build:
context: .
dockerfile: ./Dockerfile-Dev
command: ["npm", "start"]
depends_on:
mongo:
condition: service_healthy
environment:
- NODE_DB_URI=mongodb://mongo/habitrpg
networks:
- habitica
ports:
- "3000:3000"
volumes:
- .:/usr/src/habitica
- /usr/src/habitica/node_modules
mongo:
image: mongo:5.0.23
restart: unless-stopped
command: ["--replSet", "rs", "--bind_ip_all", "--port", "27017"]
healthcheck:
test: echo "try { rs.status() } catch (err) { rs.initiate() }" | mongosh --port 27017 --quiet
interval: 10s
timeout: 30s
start_period: 0s
start_interval: 1s
retries: 30
networks:
- habitica
ports:
- "27017:27017"
networks:
habitica:
driver: bridge
+23
View File
@@ -0,0 +1,23 @@
networks:
mongodb-network:
name: "mongodb-network"
driver: bridge
services:
mongodb:
image: "mongo:7.0"
container_name: "habitica-mongodb-only"
networks:
- mongodb-network
hostname: "mongodb"
ports:
- "27017:27017"
restart: "unless-stopped"
volumes:
- "./mongodb-data-docker:/data/db"
entrypoint: [ "/usr/bin/mongod", "--bind_ip_all", "--replSet", "rs" ]
healthcheck:
test: echo "try { rs.status() } catch (err) { rs.initiate() }" | mongosh --port 27017 --quiet
interval: 10s
timeout: 30s
start_period: 0s
retries: 30
+23
View File
@@ -0,0 +1,23 @@
networks:
mongodb-network:
name: "mongodb-network"
driver: bridge
services:
mongodb:
image: "mongo:7.0"
container_name: "habitica-mongodb-test"
networks:
- mongodb-network
hostname: "mongodb"
ports:
- "27017:27017"
restart: "unless-stopped"
volumes:
- "./mongodb-data-docker-testing:/data/db"
entrypoint: [ "/usr/bin/mongod", "--bind_ip_all", "--replSet", "rs" ]
healthcheck:
test: echo "try { rs.status() } catch (err) { rs.initiate() }" | mongosh --port 27017 --quiet
interval: 10s
timeout: 30s
start_period: 0s
retries: 30
+43 -22
View File
@@ -1,35 +1,56 @@
version: "3"
services:
client:
build: .
networks:
- habitica
environment:
- BASE_URL=http://server:3000
ports:
- "8080:8080"
command: ["npm", "run", "client:dev"]
build:
context: .
dockerfile: ./Dockerfile-Dev
command: ["npm", "run", "client:dev:docker"]
depends_on:
- server
server:
build: .
ports:
- "3000:3000"
environment:
- BASE_URL=http://server:3000
networks:
- habitica
ports:
- "5173:5173"
volumes:
- .:/usr/src/habitica
- /usr/src/habitica/node_modules
- /usr/src/habitica/website/client/node_modules
server:
build:
context: .
dockerfile: ./Dockerfile-Dev
command: ["npm", "start"]
depends_on:
mongo:
condition: service_healthy
environment:
- NODE_DB_URI=mongodb://mongo/habitrpg
depends_on:
- mongo
mongo:
image: mongo:3.6
ports:
- "27017:27017"
networks:
- habitica
ports:
- "3000:3000"
volumes:
- .:/usr/src/habitica
- /usr/src/habitica/node_modules
mongo:
image: "mongo:7.0"
container_name: "habitica-mongodb"
networks:
- habitica
hostname: "mongodb"
ports:
- "27017:27017"
restart: "unless-stopped"
volumes:
- "./mongodb-data-docker:/data/db"
entrypoint: [ "/usr/bin/mongod", "--bind_ip_all", "--replSet", "rs" ]
healthcheck:
test: echo "try { rs.status() } catch (err) { rs.initiate() }" | mongosh --port 27017 --quiet
interval: 10s
timeout: 30s
start_period: 0s
retries: 30
networks:
habitica:
+12 -9
View File
@@ -5,7 +5,7 @@ import path from 'path';
import babel from 'gulp-babel';
import os from 'os';
import fs from 'fs';
import spawn from 'cross-spawn'; // eslint-disable-line import/no-extraneous-dependencies
import spawn from 'cross-spawn';
import clean from 'rimraf';
gulp.task('build:babel:server', () => gulp.src('website/server/**/*.js')
@@ -35,7 +35,7 @@ gulp.task('build:prod', gulp.series(
// When used on windows `run-rs` must first be run without the `--keep` option
// in order to be setup correctly, afterwards it can be used.
const MONGO_PATH = path.join(__dirname, '/../mongodb-data/');
const MONGO_PATH = path.join(__dirname, '/../mongodb-data-docker/');
gulp.task('build:prepare-mongo', async () => {
if (fs.existsSync(MONGO_PATH)) {
@@ -51,29 +51,32 @@ gulp.task('build:prepare-mongo', async () => {
console.log('MongoDB data folder is missing, setting up.'); // eslint-disable-line no-console
// use run-rs without --keep, kill it as soon as the replica set starts
const runRsProcess = spawn('run-rs', ['-v', '4.1.1', '-l', 'ubuntu1804', '--dbpath', 'mongodb-data', '--number', '1', '--quiet']);
const dockerMongoProcess = spawn('npm', ['run', 'docker:mongo:dev']);
for await (const chunk of runRsProcess.stdout) {
let manuallyStopped = false;
for await (const chunk of dockerMongoProcess.stdout) {
const stringChunk = chunk.toString();
console.log(stringChunk); // eslint-disable-line no-console
// kills the process after the replica set is setup
if (stringChunk.includes('Started replica set')) {
if (stringChunk.includes('mongod startup complete')) {
console.log('MongoDB setup correctly.'); // eslint-disable-line no-console
runRsProcess.kill();
dockerMongoProcess.kill();
manuallyStopped = true;
}
}
let error = '';
for await (const chunk of runRsProcess.stderr) {
for await (const chunk of dockerMongoProcess.stderr) {
const stringChunk = chunk.toString();
error += stringChunk;
}
const exitCode = await new Promise(resolve => {
runRsProcess.on('close', resolve);
dockerMongoProcess.on('close', resolve);
});
if (exitCode || error.length > 0) {
if (!manuallyStopped && (exitCode || error.length > 0)) {
// remove any leftover files
clean.sync(MONGO_PATH);
+25 -1
View File
@@ -6,9 +6,21 @@ gulp.task('cache:content', done => {
// Requiring at runtime because these files access `common`
// code which in production works only if transpiled so after
// gulp build:babel:common has run
const { CONTENT_CACHE_PATH, getLocalizedContentResponse } = require('../website/server/libs/content'); // eslint-disable-line global-require
const {
CONTENT_CACHE_PATH,
getLocalizedContentResponse,
IOS_FILTER,
ANDROID_FILTER,
buildFilterObject,
hashForFilter,
} = require('../website/server/libs/content'); // eslint-disable-line global-require
const { langCodes } = require('../website/server/libs/i18n'); // eslint-disable-line global-require
const iosHash = hashForFilter(IOS_FILTER);
const iosFilterObj = buildFilterObject(IOS_FILTER);
const androidHash = hashForFilter(ANDROID_FILTER);
const androidFilterObj = buildFilterObject(ANDROID_FILTER);
try {
// create the cache folder (if it doesn't exist)
try {
@@ -26,6 +38,18 @@ gulp.task('cache:content', done => {
getLocalizedContentResponse(langCode),
'utf8',
);
fs.writeFileSync(
`${CONTENT_CACHE_PATH}${langCode}${iosHash}.json`,
getLocalizedContentResponse(langCode, iosFilterObj),
'utf8',
);
fs.writeFileSync(
`${CONTENT_CACHE_PATH}${langCode}${androidHash}.json`,
getLocalizedContentResponse(langCode, androidFilterObj),
'utf8',
);
});
done();
} catch (err) {
+5
View File
@@ -53,6 +53,11 @@ gulp.task('test:prepare:mongo', cb => {
const mongooseOptions = getDefaultConnectionOptions();
const connectionUrl = getDevelopmentConnectionUrl(TEST_DB_URI);
console.info({
mongooseOptions,
connectionUrl,
});
mongoose.connect(connectionUrl, mongooseOptions)
.then(() => mongoose.connection.dropDatabase())
.then(() => mongoose.connection.close()).then(() => {
+551 -684
View File
File diff suppressed because it is too large Load Diff
+10 -6
View File
@@ -1,7 +1,7 @@
{
"name": "habitica",
"description": "A habit tracker app which treats your goals like a Role Playing Game.",
"version": "5.44.0",
"version": "5.44.2",
"main": "./website/server/index.js",
"dependencies": {
"@babel/core": "^7.22.10",
@@ -39,7 +39,8 @@
"gulp-filter": "^7.0.0",
"gulp-imagemin": "^7.1.0",
"gulp.spritesmith": "^6.13.0",
"habitica-markdown": "^3.0.0",
"habitica-markdown": "^4.0.0",
"heapdump": "^0.3.15",
"helmet": "^4.6.0",
"in-app-purchase": "^1.11.3",
"js2xmlparser": "^5.0.0",
@@ -53,6 +54,7 @@
"moment-recur": "git://github.com/HabitRPG/moment-recur.git#d3e8e6da0806f13b74dd2e4d7d9053e6a63db119",
"mongoose": "^8.9.5",
"morgan": "^1.10.1",
"nan": "^2.25.0",
"nconf": "^0.12.1",
"node-gcm": "^1.0.5",
"on-headers": "^1.1.0",
@@ -101,13 +103,16 @@
"coverage": "nyc report --reporter=html --report-dir coverage/results; open coverage/results/index.html",
"sprites": "gulp sprites:compile",
"client:dev": "cd website/client && npm run serve",
"client:dev:docker": "cd website/client && npm run serve:docker",
"client:build": "cd website/client && npm run build",
"client:unit": "cd website/client && npm run test:unit",
"start": "node --watch ./website/server/index.js",
"start:simple": "node ./website/server/index.js",
"debug": "node --watch --inspect ./website/server/index.js",
"mongo:dev": "run-rs -v 7.0.23 -l ubuntu2214 --keep --dbpath mongodb-data --number 1 --quiet",
"mongo:test": "run-rs -v 7.0.23 -l ubuntu2214 --keep --dbpath mongodb-data-testing --number 1 --quiet",
"docker:aio": "docker compose -f docker-compose.yml up",
"docker:mongo:dev": "docker compose -f docker-compose.mongo-only.yml up",
"docker:mongo:dev:down": "docker compose -f docker-compose.mongo-only.yml down",
"docker:mongo:test": "docker compose -f docker-compose.mongo-test-local.yml up",
"mongo:test": "node scripts/start-local-mongo.mjs --test-db",
"postinstall": "git config --global url.\"https://\".insteadOf git:// && gulp build && cd website/client && npm install",
"apidoc": "gulp apidoc",
"heroku-postbuild": ".heroku/report_deploy.sh"
@@ -123,7 +128,6 @@
"monk": "^7.3.4",
"nyc": "^15.1.0",
"require-again": "^2.0.0",
"run-rs": "^0.7.7",
"sinon-chai": "^3.7.0",
"sinon-stub-promise": "^4.0.0"
}
@@ -38,7 +38,7 @@ describe('GET /export/inbox.html', () => {
it('renders the markdown messages as html', async () => {
const res = await user.get('/export/inbox.html');
expect(res).to.include('img class="habitica-emoji"');
expect(res).to.include('😄');
expect(res).to.include('<h1>Hello!</h1>');
expect(res).to.include('<li>list 1</li>');
});
@@ -46,7 +46,7 @@ describe('GET /export/inbox.html', () => {
it('sorts messages from newest to oldest', async () => {
const res = await user.get('/export/inbox.html');
const emojiPosition = res.indexOf('img class="habitica-emoji"');
const emojiPosition = res.indexOf('😄');
const headingPosition = res.indexOf('<h1>Hello!</h1>');
const listPosition = res.indexOf('<li>list 1</li>');
+67
View File
@@ -0,0 +1,67 @@
import md from 'habitica-markdown';
describe('habiticaMarkdown emoji plugin', () => {
it('renders standard emoji as Unicode', () => {
const result = md.render(':smile:');
expect(result).to.include('😄');
expect(result).not.to.include('img');
});
it('renders thumbsup emoji as Unicode', () => {
const result = md.render(':thumbsup:');
expect(result).to.include('👍');
});
it('renders +1 emoji as Unicode', () => {
const result = md.render(':+1:');
expect(result).to.include('👍');
});
it('renders melior as an img tag', () => {
const result = md.render(':melior:');
expect(result).to.include('<img class="habitica-emoji"');
expect(result).to.include('src="https://s3.amazonaws.com/habitica-assets/cdn/emoji/melior.png"');
expect(result).to.include('alt="melior"');
});
it('does NOT convert emoji inside markdown links', () => {
const result = md.render('[:smile: link](http://example.com)');
expect(result).to.include(':smile: link');
expect(result).not.to.include('😄');
});
it('converts emoji outside of links normally', () => {
const result = md.render(':smile: [link](http://example.com)');
expect(result).to.include('😄');
expect(result).to.include('link');
});
it('leaves removed custom emoji (bowtie) as literal text', () => {
const result = md.render(':bowtie:');
expect(result).to.include(':bowtie:');
expect(result).not.to.include('img');
});
it('leaves unknown shortcodes as literal text', () => {
const result = md.render(':nonexistent_emoji_xyz:');
expect(result).to.include(':nonexistent_emoji_xyz:');
});
it('renders new emoji not in the old dataset', () => {
const result = md.render(':yawning_face:');
expect(result).to.include('🥱');
});
it('supports unsafeHTMLRender', () => {
const result = md.unsafeHTMLRender('<b>bold</b> :smile:');
expect(result).to.include('<b>bold</b>');
expect(result).to.include('😄');
});
it('supports renderWithMentions', () => {
const result = md.renderWithMentions(':smile: @testuser', { userName: 'testuser' });
expect(result).to.include('😄');
expect(result).to.include('at-text');
expect(result).to.include('at-highlight');
});
});
+1
View File
@@ -21,6 +21,7 @@ export async function getProperty (collectionName, id, path) {
// Specifically helpful for the GET /groups tests,
// resets the db to an empty state and creates a tavern document
export async function resetHabiticaDB () {
console.info('Resetting Habitica DB');
const groups = mongoose.connection.db.collection('groups');
const users = mongoose.connection.db.collection('users');
return mongoose.connection.dropDatabase()
+4955 -2726
View File
File diff suppressed because it is too large Load Diff
+2 -1
View File
@@ -4,6 +4,7 @@
"private": true,
"scripts": {
"serve": "vite",
"serve:docker": "npx vite --host 0.0.0.0",
"build": "vite build",
"preview": "vite preview",
"test:unit": "vitest run",
@@ -27,7 +28,7 @@
"eslint-config-habitrpg": "6.2.0",
"eslint-plugin-mocha": "5.3.0",
"eslint-plugin-vue": "7.20.0",
"habitica-markdown": "^3.0.0",
"habitica-markdown": "^4.0.0",
"hellojs": "^1.20.0",
"intro.js": "^7.2.0",
"jquery": "^3.7.1",
+5
View File
@@ -229,6 +229,11 @@ export default {
}
return Promise.resolve(error);
}
if (error.response.status === 404
&& error.response.config.method === 'get'
&& error.response.config.url.indexOf('/api/v4/groups/party') !== -1) {
return Promise.reject(error);
}
}
const errorData = error.response.data;
@@ -58,6 +58,11 @@ h3.markdown {
img {
max-width: 100%;
}
.emoji-native {
font-size: 0.85em;
vertical-align: middle;
}
blockquote {
padding: 0 16px;
@@ -0,0 +1,186 @@
<template>
<div
v-if="searchResults.length > 0"
class="autocomplete-selection"
:style="autocompleteStyle"
>
<div
v-for="result in searchResults"
:key="result.shortcode"
class="autocomplete-results d-flex align-items-center"
:class="{'hover-background': result.hover}"
@click="select(result)"
@mouseenter="setHover(result)"
@mouseleave="resetSelection()"
>
<span class="emoji-char">{{ result.emoji }}</span>
<span
class="shortcode ml-2"
:class="{'hover-foreground': result.hover}"
>:{{ result.shortcode }}:</span>
</div>
</div>
</template>
<style lang="scss" scoped>
@import '@/assets/scss/colors.scss';
.autocomplete-results {
padding: .5em;
}
.autocomplete-selection {
box-shadow: 1px 1px 1px #efefef;
}
.hover-background {
background-color: rgba(213, 200, 255, 0.32);
cursor: pointer;
}
.hover-foreground {
color: $purple-300 !important;
}
.emoji-char {
font-size: 20px;
line-height: 1;
}
.shortcode {
color: $gray-200;
font-size: 14px;
}
</style>
<script>
import emojiDefs from 'markdown-it-emoji/lib/data/full.json';
export default {
props: ['text', 'caretPosition', 'coords', 'textbox'],
data () {
return {
colonRegex: /:([a-zA-Z0-9_+]*)$/,
currentSearch: '',
searchActive: false,
searchResults: [],
selected: null,
emojiList: [],
};
},
computed: {
autocompleteStyle () {
const top = this.textbox.offsetTop + this.textbox.offsetHeight + 2;
return {
top: `${top}px`,
left: `${this.textbox.offsetLeft}px`,
position: 'absolute',
minWidth: '150px',
zIndex: 100,
backgroundColor: 'white',
};
},
},
watch: {
text (newText, prevText) {
if (!this.textbox) return;
const delCharsBool = prevText.length > newText.length;
const caretPosition = this.textbox.selectionEnd;
const lastFocusChar = delCharsBool ? prevText[caretPosition] : newText[caretPosition - 1];
if (
newText.length === 0
|| (lastFocusChar === ':' && delCharsBool)
) {
this.cancel();
} else {
if (lastFocusChar === ':') this.searchActive = true;
if (this.searchActive) {
this.searchResults = this.solveSearchResults(newText.substring(0, caretPosition));
}
}
},
},
created () {
const list = [];
const keys = Object.keys(emojiDefs);
keys.sort();
for (const key of keys) {
list.push({ shortcode: key, emoji: emojiDefs[key], hover: false });
}
this.emojiList = list;
},
methods: {
solveSearchResults (textFocus) {
const regexRes = this.colonRegex.exec(textFocus);
if (!regexRes) {
this.cancel();
return [];
}
this.currentSearch = regexRes[1];
if (this.currentSearch.length === 0) return [];
const lowerSearch = this.currentSearch.toLowerCase();
return this.emojiList
.filter(entry => entry.shortcode.startsWith(lowerSearch))
.slice(0, 6)
.map(entry => ({ ...entry, hover: false }));
},
select (result) {
const { text } = this;
const targetName = `${result.shortcode}: `;
const oldCaret = this.caretPosition;
const escapedSearch = this.currentSearch.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
let newText = text.substring(0, this.caretPosition)
.replace(new RegExp(`${escapedSearch}$`), targetName);
const newCaret = newText.length;
newText += text.substring(oldCaret, text.length);
this.$emit('select', newText, newCaret);
this.cancel();
},
setHover (result) {
this.resetSelection();
result.hover = true;
},
clearHover () {
for (const selection of this.searchResults) {
selection.hover = false;
}
},
resetSelection () {
this.clearHover();
this.selected = null;
},
selectNext () {
if (this.searchResults.length > 0) {
this.clearHover();
this.selected = this.selected === null
? 0
: (this.selected + 1) % this.searchResults.length;
this.searchResults[this.selected].hover = true;
}
},
selectPrevious () {
if (this.searchResults.length > 0) {
this.clearHover();
this.selected = this.selected === null
? this.searchResults.length - 1
: (this.selected - 1 + this.searchResults.length) % this.searchResults.length;
this.searchResults[this.selected].hover = true;
}
},
makeSelection () {
if (this.searchResults.length > 0 && this.selected !== null) {
const result = this.searchResults[this.selected];
this.select(result);
}
},
cancel () {
this.searchActive = false;
this.searchResults = [];
this.resetSelection();
},
},
};
</script>
@@ -0,0 +1,577 @@
<template>
<b-modal
id="group-plan-selection"
:hide-footer="true"
:hide-header="true"
size="md"
@show="loadData"
@hide="onHide"
>
<div class="selection-modal">
<div class="modal-header-row">
<h2 class="title">
{{ $t('chooseAnOption') }}
</h2>
<div class="header-actions">
<span
class="cancel-text"
@click="close"
>
{{ $t('cancel') }}
</span>
<button
class="btn btn-primary next-button"
:class="{ disabled: !selectedOption }"
:disabled="!selectedOption"
@click="continueFlow"
>
{{ $t('next') }}
</button>
</div>
</div>
<div
v-if="loading"
class="loading-container"
>
<div class="spinner-border text-secondary"></div>
</div>
<template v-else>
<div
v-if="hasUpgradeableGroups"
class="section-header"
>
{{ $t('upgradeExistingGroup') }}
</div>
<selectable-card
v-for="group in upgradeableGuilds"
:key="group._id"
class="option-card"
:selected="isSelected(group)"
@click="selectOption(group)"
>
<div class="option-content">
<div class="option-info">
<div class="option-name">
{{ group.name }}
</div>
<div class="option-members">
{{ formatMemberCount(group.memberCount) }}
</div>
<div class="option-label previously-upgraded">
<div
class="svg-icon sparkle-icon"
v-html="icons.sparkles"
></div>
{{ $t('previouslyUpgradedGroup') }}
</div>
</div>
<div class="option-price">
${{ calculatePrice(group.memberCount) }}.00/mo
</div>
</div>
</selectable-card>
<selectable-card
v-if="upgradeableParty"
class="option-card"
:class="{ 'has-pending-warning': partyPendingInviteCount > 0 }"
:selected="isSelected(upgradeableParty)"
@click="selectOption(upgradeableParty)"
>
<div class="option-content">
<div class="option-info">
<div class="option-name">
{{ upgradeableParty.name }}
</div>
<div class="option-members">
{{ formatMemberCount(upgradeableParty.memberCount) }}
<span
v-if="partyPendingInviteCount > 0"
class="pending-count"
>
{{ $t('pendingCount', { count: partyPendingInviteCount }) }}
</span>
</div>
<div
v-if="isPartyPreviouslyUpgraded"
class="option-label previously-upgraded"
>
<div
class="svg-icon sparkle-icon"
v-html="icons.sparkles"
></div>
{{ $t('previouslyUpgradedGroup') }}
</div>
<div
v-else
class="option-label your-party"
>
<div
class="svg-icon member-icon"
v-html="icons.member"
></div>
{{ $t('yourParty') }}
</div>
</div>
<div class="option-price">
${{ calculatePrice(upgradeableParty.memberCount) }}.00/mo
</div>
</div>
<div
v-if="partyPendingInviteCount > 0"
class="pending-warning-banner"
>
<div
class="svg-icon alert-icon"
v-html="icons.alert"
></div>
<span class="warning-text">{{ $t('upgradeCancelsPendingInvites') }}</span>
</div>
</selectable-card>
<div
v-if="hasUpgradeableGroups"
class="or-divider"
>
<div class="divider-line"></div>
<span class="or-text">{{ $t('or') }}</span>
<div class="divider-line"></div>
</div>
<selectable-card
class="option-card create-new"
:selected="selectedOption === 'new'"
@click="selectOption('new')"
>
<div class="option-content">
<div class="option-info">
<div class="option-name">
{{ $t('createNewGroup') }}
</div>
<div class="option-description">
{{ $t('inviteOthersForAdditional') }}
<span class="price-highlight">${{ perMemberPrice }}.00</span>
{{ $t('perMember') }}.
</div>
</div>
<div class="option-price">
${{ basePrice }}.00/mo
</div>
</div>
</selectable-card>
<div class="footer-note">
{{ $t('additionalMembersProrated') }}
</div>
</template>
</div>
</b-modal>
</template>
<style lang="scss" scoped>
@import '@/assets/scss/colors.scss';
.selection-modal {
padding: 24px;
}
.modal-header-row {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 24px;
}
.title {
font-family: 'Roboto Condensed', sans-serif;
font-weight: 700;
font-size: 20px;
line-height: 28px;
color: $purple-200;
margin: 0;
}
.header-actions {
display: flex;
align-items: center;
}
.cancel-text {
color: $blue-10;
font-size: 0.875rem;
margin-right: 16px;
cursor: pointer;
}
.next-button {
min-width: 64px;
&.disabled {
background-color: $gray-300;
border-color: $gray-300;
cursor: not-allowed;
}
}
.loading-container {
display: flex;
justify-content: center;
align-items: center;
min-height: 200px;
}
.section-header {
font-family: 'Roboto', sans-serif;
font-weight: 700;
font-size: 14px;
line-height: 24px;
color: $gray-10;
margin-bottom: 12px;
}
.option-card {
margin-bottom: 12px;
::v-deep .option-name {
color: $gray-50;
}
&.selected ::v-deep .option-name {
color: $purple-200;
}
}
.pending-warning-banner {
display: flex;
align-items: center;
justify-content: center;
height: 32px;
background-color: $yellow-50;
border-radius: 0 0 6px 6px;
margin: 16px -16px 0 -16px;
gap: 4px;
.selected & {
margin: 15px -15px 0 -15px;
}
.alert-icon {
width: 16px;
height: 16px;
flex-shrink: 0;
::v-deep path {
fill: $gray-10;
}
}
.warning-text {
font-family: 'Roboto', sans-serif;
font-weight: 400;
font-size: 12px;
line-height: 16px;
color: $gray-10;
}
}
.option-content {
display: flex;
justify-content: space-between;
align-items: flex-start;
padding-left: 32px;
padding-right: 8px;
}
.option-info {
flex: 1;
}
.option-name {
font-family: 'Roboto', sans-serif;
font-size: 14px;
font-weight: 700;
line-height: 24px;
margin-bottom: 4px;
}
.option-members {
font-family: 'Roboto', sans-serif;
font-weight: 400;
font-size: 12px;
line-height: 16px;
color: $gray-100;
margin-bottom: 8px;
.pending-count {
font-weight: 700;
color: $yellow-5;
}
}
.option-label {
display: flex;
align-items: center;
font-family: 'Roboto', sans-serif;
font-size: 12px;
line-height: 16px;
gap: 4px;
&.previously-upgraded {
font-weight: 700;
color: $blue-10;
}
&.your-party {
font-weight: 700;
color: $gray-100;
}
.svg-icon {
width: 14px;
height: 14px;
}
.sparkle-icon {
color: $blue-10;
}
.member-icon {
color: $gray-100;
::v-deep path {
fill: $gray-100;
stroke: $gray-100;
stroke-width: 0.5px;
}
}
}
.option-description {
font-family: 'Roboto', sans-serif;
font-weight: 400;
font-size: 12px;
line-height: 16px;
color: $gray-100;
.price-highlight {
font-weight: 700;
}
}
.option-price {
font-family: 'Roboto', sans-serif;
font-weight: 700;
font-size: 20px;
line-height: 24px;
color: $purple-200;
white-space: nowrap;
}
.or-divider {
display: flex;
align-items: center;
margin: 20px 0;
.divider-line {
flex: 1;
height: 1px;
background-color: $gray-500;
}
.or-text {
padding: 0 16px;
font-family: 'Roboto', sans-serif;
font-weight: 700;
font-size: 12px;
line-height: 16px;
letter-spacing: 0.2em;
text-transform: uppercase;
color: $gray-100;
}
}
.create-new {
.option-name {
margin-bottom: 8px;
}
}
.footer-note {
font-family: 'Roboto', sans-serif;
font-weight: 400;
font-size: 12px;
line-height: 16px;
color: $gray-100;
text-align: center;
margin-top: 16px;
margin-left: 24px;
margin-right: 24px;
}
</style>
<style lang="scss">
#group-plan-selection {
.modal-dialog {
max-width: 504px;
}
.modal-content {
border-radius: 8px;
box-shadow: 0 14px 28px 0 rgba(26, 24, 29, 0.24), 0 10px 10px 0 rgba(26, 24, 29, 0.28);
}
.modal-body {
padding: 0;
}
.option-card.has-pending-warning.selectable-card {
padding-bottom: 0;
}
}
</style>
<script>
import axios from 'axios';
import paymentsMixin from '@/mixins/payments';
import { mapState } from '@/libs/store';
import SelectableCard from '@/components/ui/selectableCard.vue';
import svgSparkles from '@/assets/svg/sparkles.svg?raw';
import svgMember from '@/assets/svg/member-icon.svg?raw';
import svgAlert from '@/assets/svg/for-css/alert.svg?raw';
export default {
components: {
SelectableCard,
},
mixins: [paymentsMixin],
data () {
return {
selectedOption: null,
userGuilds: [],
userParty: null,
activeGroupPlanIds: [],
loading: true,
basePrice: 9,
perMemberPrice: 3,
icons: Object.freeze({
sparkles: svgSparkles,
member: svgMember,
alert: svgAlert,
}),
partyPendingInviteCount: 0,
};
},
computed: {
...mapState({ user: 'user.data' }),
upgradeableGuilds () {
return this.userGuilds.filter(group => {
const leaderId = group.leader?._id || group.leader;
if (leaderId !== this.user._id) return false;
const purchased = group.purchased;
if (!purchased?.wasUpgraded) return false;
if (this.activeGroupPlanIds.includes(group._id)) return false;
if (!purchased.dateTerminated) return false;
return new Date(purchased.dateTerminated) < new Date();
});
},
upgradeableParty () {
if (!this.userParty) return null;
const leaderId = this.userParty.leader?._id || this.userParty.leader;
if (leaderId !== this.user._id) return null;
if (this.activeGroupPlanIds.includes(this.userParty._id)) return null;
return this.userParty;
},
hasUpgradeableGroups () {
return this.upgradeableGuilds.length > 0 || this.upgradeableParty !== null;
},
isPartyPreviouslyUpgraded () {
if (!this.userParty) return false;
const purchased = this.userParty.purchased;
if (!purchased?.wasUpgraded) return false;
if (!purchased.dateTerminated) return false;
return new Date(purchased.dateTerminated) < new Date();
},
},
methods: {
async loadData () {
this.loading = true;
this.selectedOption = null;
this.partyPendingInviteCount = 0;
try {
const [guildsResponse, partyResponse] = await Promise.all([
axios.get('/api/v4/groups', { params: { type: 'guilds', includeExpiredPlans: 'true' } }),
axios.get('/api/v4/groups/party').catch(() => ({ data: { data: null } })),
]);
this.userGuilds = guildsResponse.data.data || [];
this.userParty = partyResponse.data.data;
if (this.userParty) {
try {
const invitesResponse = await axios.get(`/api/v4/groups/${this.userParty._id}/invites`);
this.partyPendingInviteCount = invitesResponse.data.data?.length || 0;
} catch (e) {
this.partyPendingInviteCount = 0;
}
}
await this.$store.dispatch('guilds:getGroupPlans', true);
const groupPlans = this.$store.state.groupPlans?.data || [];
this.activeGroupPlanIds = groupPlans.map(g => g._id);
} catch (e) {
console.error('Error loading group data:', e);
}
this.loading = false;
this.$nextTick(() => {
if (this.upgradeableGuilds.length > 0) {
this.selectedOption = this.upgradeableGuilds[0];
} else if (this.upgradeableParty) {
this.selectedOption = this.upgradeableParty;
} else {
this.selectedOption = 'new';
}
});
},
selectOption (option) {
this.selectedOption = option;
},
isSelected (group) {
if (!this.selectedOption || this.selectedOption === 'new') return false;
return this.selectedOption._id === group._id;
},
calculatePrice (memberCount) {
return this.basePrice + (this.perMemberPrice * (memberCount - 1));
},
formatMemberCount (count) {
return count === 1 ? this.$t('oneMember') : this.$t('membersCount', { count });
},
continueFlow () {
if (!this.selectedOption) return;
const selection = this.selectedOption;
this.close();
if (selection === 'new') {
this.$root.$emit('bv::show::modal', 'create-group');
} else {
this.stripeGroup({ group: selection, upgrade: true });
}
},
close () {
this.$root.$emit('bv::hide::modal', 'group-plan-selection');
},
onHide () {
this.selectedOption = null;
},
},
};
</script>
@@ -41,6 +41,14 @@
:chat="group.chat"
@select="selectedAutocomplete"
/>
<emoji-auto-complete
ref="emojiAutocomplete"
:text="newMessage"
:textbox="textbox"
:coords="mixinData.autoComplete.coords"
:caret-position="mixinData.autoComplete.caretPosition"
@select="selectedAutocomplete"
/>
</div>
<community-guidelines />
<div class="row chat-actions">
@@ -90,6 +98,7 @@ import { MAX_MESSAGE_LENGTH } from '@/../../common/script/constants';
import externalLinks from '../../mixins/externalLinks';
import autocomplete from '../chat/autoComplete';
import emojiAutoComplete from '../chat/emojiAutoComplete';
import communityGuidelines from './communityGuidelines';
import chatMessages from '../chat/chatMessages';
import { mapState } from '@/libs/store';
@@ -102,6 +111,7 @@ export default {
},
components: {
autocomplete,
emojiAutoComplete,
communityGuidelines,
chatMessages,
},
+82 -57
View File
@@ -25,53 +25,61 @@
<div class="col-12 col-md-6">
<div class="row icon-row">
<div
class="item-with-icon"
class="item-with-icon p-2"
tabindex="0"
role="button"
@keyup.enter="showMemberModal()"
@click="showMemberModal()"
>
<div
v-if="group.memberCount > 1000"
class="svg-icon shield"
v-html="icons.goldGuildBadgeIcon"
></div>
<div
v-if="group.memberCount > 100 && group.memberCount < 999"
class="svg-icon shield"
v-html="icons.silverGuildBadgeIcon"
></div>
<div
v-if="group.memberCount < 100"
class="svg-icon shield"
v-html="icons.bronzeGuildBadgeIcon"
></div>
<span class="number">{{ group.memberCount | abbrNum }}</span>
<div
v-once
class="member-list label"
>
{{ $t('memberList') }}
<div class="box-content">
<div class="icon-number-row">
<div
v-if="group.memberCount > 1000"
class="svg-icon shield"
v-html="icons.goldGuildBadgeIcon"
></div>
<div
v-if="group.memberCount > 100 && group.memberCount < 999"
class="svg-icon shield"
v-html="icons.silverGuildBadgeIcon"
></div>
<div
v-if="group.memberCount < 100"
class="svg-icon shield"
v-html="icons.bronzeGuildBadgeIcon"
></div>
<span class="number">{{ group.memberCount | abbrNum }}</span>
</div>
<div
v-once
class="details"
>
{{ $t('memberList') }}
</div>
</div>
</div>
<div v-if="!isParty">
<div
class="item-with-icon"
class="item-with-icon p-2"
tabindex="0"
role="button"
@keyup.enter="showGroupGems()"
@click="showGroupGems()"
>
<div
class="svg-icon gem"
v-html="icons.gem"
></div>
<span class="number">{{ group.balance * 4 }}</span>
<div
v-once
class="label"
>
{{ $t('guildBank') }}
<div class="box-content">
<div class="icon-number-row">
<div
class="svg-icon gem"
v-html="icons.gem"
></div>
<span class="number">{{ group.balance * 4 }}</span>
</div>
<div
v-once
class="details"
>
{{ $t('guildBank') }}
</div>
</div>
</div>
</div>
@@ -128,35 +136,57 @@
}
.item-with-icon {
display: inline-block;
border-radius: 2px;
background-color: #ffffff;
background-color: $white;
box-shadow: 0 2px 2px 0 rgba(26, 24, 29, 0.16), 0 1px 4px 0 rgba(26, 24, 29, 0.12);
padding: 1em;
text-align: center;
min-width: 120px;
margin-left: 1em;
width: 120px;
height: 76px;
margin-right: 1rem;
text-align: center;
font-size: 20px;
vertical-align: bottom;
overflow: hidden;
position: relative;
&:last-of-type {
margin-left: 0.5rem;
.box-content {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
height: 100%;
width: 100%;
}
.svg-icon.shield, .svg-icon.gem {
width: 28px;
height: auto;
margin: 0 auto;
.icon-number-row {
display: flex;
align-items: center;
justify-content: center;
margin-bottom: 0.1em;
.number {
font-size: 18px;
font-weight: normal;
margin-left: 0.2em;
}
}
.svg-icon {
width: 24px;
height: 24px;
display: inline-block;
vertical-align: bottom;
margin-right: 0.5em;
}
.number {
font-size: 22px;
font-weight: bold;
}
.label {
margin-top: .5em;
.details {
font-size: 11px;
color: $gray-200;
width: 100%;
padding: 0 4px;
line-height: 1.1;
word-break: break-word;
max-height: 2.2em;
overflow: visible;
}
}
@@ -215,11 +245,6 @@
.icon-row {
margin-top: 1em;
justify-content: flex-end;
.number {
font-size: 22px;
font-weight: bold;
}
}
.chat-row {
@@ -1,5 +1,6 @@
<template>
<div>
<group-plan-selection-modal />
<group-plan-creation-modal />
<div class="d-flex justify-content-center">
<div
@@ -315,10 +316,12 @@
import { setup as setupPayments } from '@/libs/payments';
import paymentsMixin from '../../mixins/payments';
import GroupPlanCreationModal from '../group-plans/groupPlanCreationModal.vue';
import GroupPlanSelectionModal from '../group-plans/groupPlanSelectionModal.vue';
export default {
components: {
GroupPlanCreationModal,
GroupPlanSelectionModal,
},
mixins: [paymentsMixin],
data () {
@@ -359,7 +362,7 @@ export default {
if (this.upgradingGroup._id) {
return this.stripeGroup({ group: this.upgradingGroup, upgrade: true });
}
return this.$root.$emit('bv::show::modal', 'create-group');
return this.$root.$emit('bv::show::modal', 'group-plan-selection');
},
},
};
@@ -70,6 +70,13 @@
spellcheck="true"
:disabled="challengeAccessRequired"
:placeholder="$t('addATitle')"
@focus="setActiveField('title')"
@keydown="autoCompleteMixinUpdateCarretPosition"
@keydown.tab="autoCompleteMixinHandleTab($event)"
@keydown.up="autoCompleteMixinSelectPreviousAutocomplete($event)"
@keydown.down="autoCompleteMixinSelectNextAutocomplete($event)"
@keypress.enter="titleEnterHandler($event)"
@keydown.esc="autoCompleteMixinHandleEscape($event)"
>
</div>
<div
@@ -92,11 +99,27 @@
</small>
</div>
<textarea
ref="notesTextarea"
v-model="task.notes"
class="form-control input-notes"
:class="cssClass('input')"
:placeholder="$t('addNotes')"
@focus="setActiveField('notes')"
@keydown="autoCompleteMixinUpdateCarretPosition"
@keydown.tab="autoCompleteMixinHandleTab($event)"
@keydown.up="autoCompleteMixinSelectPreviousAutocomplete($event)"
@keydown.down="autoCompleteMixinSelectNextAutocomplete($event)"
@keypress.enter="autoCompleteMixinSelectAutocomplete($event)"
@keydown.esc="autoCompleteMixinHandleEscape($event)"
></textarea>
<emoji-auto-complete
ref="emojiAutocomplete"
:text="activeFieldText"
:textbox="textbox"
:coords="mixinData.autoComplete.coords"
:caret-position="mixinData.autoComplete.caretPosition"
@select="selectedAutocomplete"
/>
</div>
</div>
<div
@@ -712,6 +735,7 @@
}
.task-modal-header {
position: relative;
color: $white;
width: 100%;
border-top-left-radius: 8px;
@@ -1160,6 +1184,8 @@ import lockableLabel from '@/components/tasks/modal-controls/lockableLabel';
import selectList from '@/components/ui/selectList';
import syncTask from '../../mixins/syncTask';
import emojiAutoComplete from '@/components/chat/emojiAutoComplete';
import { autoCompleteHelperMixin } from '@/mixins/autoCompleteHelper';
import positiveIcon from '@/assets/svg/positive.svg?raw';
import negativeIcon from '@/assets/svg/negative.svg?raw';
@@ -1182,15 +1208,18 @@ export default {
toggleCheckbox,
lockableLabel,
selectList,
emojiAutoComplete,
},
directives: {
markdown: markdownDirective,
},
mixins: [syncTask],
mixins: [syncTask, autoCompleteHelperMixin],
// purpose is either create or edit, task is the task created or edited
props: ['task', 'purpose', 'challengeId', 'groupId'],
data () {
return {
textbox: null,
activeField: 'title',
showAssignedSelect: false,
newChecklistItem: null,
icons: Object.freeze({
@@ -1314,6 +1343,10 @@ export default {
selectedTags () {
return this.getTagsFor(this.task);
},
activeFieldText () {
if (!this.task) return '';
return this.activeField === 'title' ? (this.task.text || '') : (this.task.notes || '');
},
showStatAssignment () {
return this.task.type !== 'reward'
&& !this.groupId
@@ -1489,6 +1522,35 @@ export default {
},
focusInput () {
this.$refs.inputToFocus.focus();
this.setActiveField('title');
},
setActiveField (field) {
this.activeField = field;
if (field === 'title') {
this.textbox = this.$refs.inputToFocus;
} else {
this.textbox = this.$refs.notesTextarea;
}
},
titleEnterHandler (e) {
const ac = this._getActiveAutocomplete();
if (ac && ac.selected !== null) {
e.preventDefault();
ac.makeSelection();
} else if (ac) {
ac.cancel();
}
},
selectedAutocomplete (newText, newCaret) {
if (this.activeField === 'title') {
this.task.text = newText;
} else {
this.task.notes = newText;
}
this.$nextTick(() => {
this.textbox.setSelectionRange(newCaret, newCaret);
this.textbox.focus();
});
},
async addTag (name) {
const tagResult = await this.createTag({ name });
@@ -0,0 +1,92 @@
<template>
<div
class="selectable-card"
:class="{ selected }"
@click="$emit('click')"
>
<div
v-if="selected"
class="checkmark-corner"
>
<div
class="svg-icon check-icon"
v-html="icons.check"
></div>
</div>
<slot></slot>
</div>
</template>
<style lang="scss" scoped>
@import '@/assets/scss/colors.scss';
.selectable-card {
position: relative;
background: $white;
border: 1px solid $gray-400;
border-radius: 8px;
padding: 16px;
cursor: pointer;
box-shadow: 0px 1px 2px 0px rgba(26, 24, 29, 0.08);
&:hover {
box-shadow: 0px 3px 6px 0px rgba(26, 24, 29, 0.16), 0px 3px 6px 0px rgba(26, 24, 29, 0.24);
}
&.selected {
border: 2px solid $purple-300;
padding: 15px;
box-shadow: 0px 3px 6px 0px rgba(26, 24, 29, 0.16), 0px 3px 6px 0px rgba(26, 24, 29, 0.24);
}
}
.checkmark-corner {
position: absolute;
top: 0;
left: 0;
width: 48px;
height: 48px;
overflow: hidden;
&::before {
content: '';
position: absolute;
top: 0;
left: 0;
border-style: solid;
border-width: 48px 48px 0 0;
border-color: $purple-300 transparent transparent transparent;
border-radius: 6px 0 0 0;
}
.check-icon {
position: absolute;
top: 8px;
left: 8px;
width: 16px;
height: 16px;
color: $white;
}
}
</style>
<script>
import svgCheck from '@/assets/svg/check.svg?raw';
export default {
props: {
selected: {
type: Boolean,
default: false,
},
},
emits: ['click'],
data () {
return {
icons: Object.freeze({
check: svgCheck,
}),
};
},
};
</script>
@@ -398,14 +398,29 @@
:placeholder="$t('imageUrl')"
>
</div>
<div class="form-group">
<div class="form-group" style="position: relative;">
<label>{{ $t('about') }}</label>
<textarea
ref="blurbTextarea"
v-model="editingProfile.blurb"
class="form-control"
rows="5"
:placeholder="$t('displayBlurbPlaceholder')"
@keydown="autoCompleteMixinUpdateCarretPosition"
@keydown.tab="autoCompleteMixinHandleTab($event)"
@keydown.up="autoCompleteMixinSelectPreviousAutocomplete($event)"
@keydown.down="autoCompleteMixinSelectNextAutocomplete($event)"
@keypress.enter="autoCompleteMixinSelectAutocomplete($event)"
@keydown.esc="autoCompleteMixinHandleEscape($event)"
></textarea>
<emoji-auto-complete
ref="emojiAutocomplete"
:text="editingProfile.blurb"
:textbox="textbox"
:coords="mixinData.autoComplete.coords"
:caret-position="mixinData.autoComplete.caretPosition"
@select="selectedAutocomplete"
/>
<!-- include ../../shared/formatting-help-->
</div>
</div>
@@ -1001,6 +1016,8 @@ import mute from '@/assets/svg/mute.svg?raw';
import shadowMute from '@/assets/svg/shadow-mute.svg?raw';
import externalLinks from '../../mixins/externalLinks';
import { userCustomStateMixin } from '../../mixins/userState';
import emojiAutoComplete from '@/components/chat/emojiAutoComplete';
import { autoCompleteHelperMixin } from '@/mixins/autoCompleteHelper';
// @TODO: EMAILS.COMMUNITY_MANAGER_EMAIL
const COMMUNITY_MANAGER_EMAIL = 'admin@habitica.com';
@@ -1012,8 +1029,9 @@ export default {
MemberDetails,
profileStats,
toggleSwitch,
emojiAutoComplete,
},
mixins: [externalLinks, userCustomStateMixin('userLoggedIn')],
mixins: [externalLinks, userCustomStateMixin('userLoggedIn'), autoCompleteHelperMixin],
props: ['userId', 'startingPage'],
data () {
return {
@@ -1033,6 +1051,7 @@ export default {
mute,
shadowMute,
}),
textbox: null,
userIdToMessage: '',
editing: false,
editingProfile: {
@@ -1121,6 +1140,13 @@ export default {
userLoggedIn () {
this.loadUser();
},
editing (val) {
if (val) {
this.$nextTick(() => {
this.textbox = this.$refs.blurbTextarea;
});
}
},
},
mounted () {
this.loadUser();
@@ -1331,6 +1357,13 @@ export default {
this.$emit('toggled', this.isOpened);
},
selectedAutocomplete (newText, newCaret) {
this.editingProfile.blurb = newText;
this.$nextTick(() => {
this.textbox.setSelectionRange(newCaret, newCaret);
this.textbox.focus();
});
},
reportPlayer () {
this.$root.$emit('habitica::report-profile', {
memberId: this.user._id,
+28 -14
View File
@@ -15,46 +15,60 @@ export const autoCompleteHelperMixin = {
};
},
methods: {
_getActiveAutocomplete () {
if (this.$refs.autocomplete && this.$refs.autocomplete.searchActive) {
return this.$refs.autocomplete;
}
if (this.$refs.emojiAutocomplete && this.$refs.emojiAutocomplete.searchActive) {
return this.$refs.emojiAutocomplete;
}
return null;
},
autoCompleteMixinHandleTab (e) {
if (this.$refs.autocomplete.searchActive) {
const ac = this._getActiveAutocomplete();
if (ac) {
e.preventDefault();
if (e.shiftKey) {
this.$refs.autocomplete.selectPrevious();
ac.selectPrevious();
} else {
this.$refs.autocomplete.selectNext();
ac.selectNext();
}
}
},
autoCompleteMixinHandleEscape (e) {
if (this.$refs.autocomplete.searchActive) {
const ac = this._getActiveAutocomplete();
if (ac) {
e.preventDefault();
this.$refs.autocomplete.cancel();
ac.cancel();
}
},
autoCompleteMixinSelectNextAutocomplete (e) {
if (this.$refs.autocomplete.searchActive) {
const ac = this._getActiveAutocomplete();
if (ac) {
e.preventDefault();
this.$refs.autocomplete.selectNext();
ac.selectNext();
}
},
autoCompleteMixinSelectPreviousAutocomplete (e) {
if (this.$refs.autocomplete.searchActive) {
const ac = this._getActiveAutocomplete();
if (ac) {
e.preventDefault();
this.$refs.autocomplete.selectPrevious();
ac.selectPrevious();
}
},
autoCompleteMixinSelectAutocomplete (e) {
if (this.$refs.autocomplete.searchActive) {
if (this.$refs.autocomplete.selected !== null) {
const ac = this._getActiveAutocomplete();
if (ac) {
if (ac.selected !== null) {
e.preventDefault();
this.$refs.autocomplete.makeSelection();
ac.makeSelection();
} else {
// no autocomplete selected, newline instead
this.$refs.autocomplete.cancel();
ac.cancel();
}
}
},
@@ -153,9 +153,23 @@
:placeholder="$t('needsTextPlaceholder')"
:maxlength="MAX_MESSAGE_LENGTH"
:class="{'has-content': newMessage.trim() !== '', 'disabled': newMessageDisabled}"
@keydown="autoCompleteMixinUpdateCarretPosition"
@keyup.ctrl.enter="sendPrivateMessage()"
@keydown.tab="autoCompleteMixinHandleTab($event)"
@keydown.up="autoCompleteMixinSelectPreviousAutocomplete($event)"
@keydown.down="autoCompleteMixinSelectNextAutocomplete($event)"
@keypress.enter="autoCompleteMixinSelectAutocomplete($event)"
@keydown.esc="autoCompleteMixinHandleEscape($event)"
>
</textarea>
<emoji-auto-complete
ref="emojiAutocomplete"
:text="newMessage"
:textbox="textbox"
:coords="mixinData.autoComplete.coords"
:caret-position="mixinData.autoComplete.caretPosition"
@select="selectedAutocomplete"
/>
</div>
<div
class="sub-new-message-row d-flex"
@@ -540,6 +554,7 @@ h3 {
}
.new-message-row {
position: relative;
width: 100%;
padding-left: 1.5rem;
padding-top: 1.5rem;
@@ -676,6 +691,8 @@ import PmNewMessageStarted from './pm-new-message-started.vue';
import StartNewConversationInputHeader from './start-new-conversation-input-header.vue';
import positiveIcon from '@/assets/svg/positive.svg?raw';
import NotificationMixins from '@/mixins/notifications';
import emojiAutoComplete from '@/components/chat/emojiAutoComplete';
import { autoCompleteHelperMixin } from '@/mixins/autoCompleteHelper';
// extract to a shared path
const CONVERSATIONS_PER_PAGE = 10;
@@ -700,13 +717,14 @@ export default defineComponent({
toggleSwitch,
userLink,
faceAvatar,
emojiAutoComplete,
},
filters: {
timeAgo (value) {
return moment(new Date(value)).fromNow();
},
},
mixins: [styleHelper, NotificationMixins],
mixins: [styleHelper, NotificationMixins, autoCompleteHelperMixin],
beforeRouteEnter (to, from, next) {
next(vm => {
const data = vm.$store.state.privateMessageOptions;
@@ -751,6 +769,7 @@ export default defineComponent({
/** @type {Record<string, PrivateMessages.PrivateMessageEntry[]>} */
messagesByConversation: {}, // cache {uuid: []}
textbox: null,
newMessage: '',
messages: [],
messagesLoading: false,
@@ -963,6 +982,15 @@ export default defineComponent({
}
},
},
watch: {
shouldShowInputPanel (val) {
if (val) {
this.$nextTick(() => {
this.textbox = this.$refs.textarea;
});
}
},
},
async mounted () {
this.$store.dispatch('common:setTitle', {
section: this.$t('messages'),
@@ -1224,6 +1252,13 @@ export default defineComponent({
triggerStartNewConversationState () {
this.showStartNewConversationInput = true;
},
selectedAutocomplete (newText, newCaret) {
this.newMessage = newText;
this.$nextTick(() => {
this.textbox.setSelectionRange(newCaret, newCaret);
this.textbox.focus();
});
},
async startConversationByUsername (targetUserName) {
// check if the target user exists in current conversations, select that conversation
/** @type {PrivateMessages.ConversationSummaryMessageEntry} */
+4
View File
@@ -295,6 +295,10 @@ export default {
appState = JSON.parse(appState);
if (appState.paymentCompleted) {
removeLocalSetting(CONSTANTS.savedAppStateValues.SAVED_APP_STATE);
if (appState.paymentType === 'groupPlan') {
this.$store.state.upgradingGroup = {};
this.$store.dispatch('guilds:getGroupPlans', true);
}
this.$root.$emit('habitica:payment-success', appState);
}
}
+1 -1
View File
@@ -5,7 +5,7 @@
"keepIt": "Запазване",
"removeIt": "Премахване",
"brokenChallenge": "Повредена връзка на предизвикателство: тази задача е била част от предизвикателство, но то (или групата) е било изтрито. Какво бихте искали да направите с останалите задачи?",
"challengeCompleted": "Това предизвикателство е приключило и победителят е <span class=\"badge\"><%- user %></span>! Какво искате да направите с останалите задачи?",
"challengeCompleted": "Това предизвикателство е приключило и победителят е <span class=\"badge\"><%= user %></span>! Какво искате да направите с останалите задачи?",
"unsubChallenge": "Повредена връзка на предизвикателство: тази задача е била част от предизвикателство, но Вие сте се отписали от него. Какво искате да направите с останалите задачи?",
"challenges": "Предизвикателства",
"endDate": "Крайна дата",
+1 -1
View File
@@ -190,7 +190,7 @@
"messages": "Съобщения",
"emptyMessagesLine1": "Нямате съобщения",
"emptyMessagesLine2": "Можете да изпратите ново съобщение на потребител, като посетите профила им и докоснете бутона \"Съобщение\".",
"userSentMessage": "<span class=\"notification-bold\"><%- user %></span> Ви изпрати съобщение",
"userSentMessage": "<span class=\"notification-bold\"><%= user %></span> Ви изпрати съобщение",
"letsgo": "Хойде!",
"selected": "Избрано",
"howManyToBuy": "Колко искате да купите?",
+14 -14
View File
@@ -24,14 +24,14 @@
"userId": "Потребителски идентификатор",
"invite": "Покана",
"leave": "Напускане",
"invitedToParty": "Получихте покана за присъединяване към групата <span class=\"notification-bold\"><%- party %></span>",
"invitedToPrivateGuild": "Получихте покана за присъединяване към частната гилдия <span class=\"notification-bold\"><%- guild %></span>",
"invitedToPublicGuild": "Получихте покана за присъединяване към гилдията <span class=\"notification-bold-blue\"><%- guild %></span>",
"invitedToParty": "Получихте покана за присъединяване към групата <span class=\"notification-bold\"><%= party %></span>",
"invitedToPrivateGuild": "Получихте покана за присъединяване към частната гилдия <span class=\"notification-bold\"><%= guild %></span>",
"invitedToPublicGuild": "Получихте покана за присъединяване към гилдията <span class=\"notification-bold-blue\"><%= guild %></span>",
"invitationAcceptedHeader": "Поканата Ви беше приета",
"invitationAcceptedBody": "<%= username %> прие поканата Ви да се присъедини към <%= groupName %>!",
"systemMessage": "Системно съобщение",
"newMsgGuild": "Има нови публикации в <span class=\"notification-bold-blue\"><%- name %></span>",
"newMsgParty": "Има нови публикации в групата Ви — <span class=\"notification-bold-blue\"><%- name %></span>",
"newMsgGuild": "Има нови публикации в <span class=\"notification-bold-blue\"><%= name %></span>",
"newMsgParty": "Има нови публикации в групата Ви — <span class=\"notification-bold-blue\"><%= name %></span>",
"chat": "Съобщения",
"sendChat": "Изпращане на съобщението",
"group": "Група",
@@ -151,14 +151,14 @@
"onlyGroupLeaderCanEditTasks": "Нямате право да управлявате задачите!",
"onlyGroupTasksCanBeAssigned": "Само групови задачи могат да бъдат зададени",
"assignedTo": "Назначена на",
"assignedToUser": "Назначена на <strong><%- userName %></strong>",
"assignedToUser": "Назначена на <strong><%= userName %></strong>",
"assignedToMembers": "Назначена на <strong><%= userCount %> членове </strong>",
"assignedToYouAndMembers": "Назначена на Вас и още <strong><%= userCount %> членове</strong>",
"youAreAssigned": "Тази задача е назначена на Вас",
"taskIsUnassigned": "Тази задача не е зададена на никого",
"confirmUnClaim": "Наистина ли искате да оставите тази задача?",
"confirmNeedsWork": "Наистина ли искате да отбележите, че тази задача се нуждае от още работа?",
"userRequestsApproval": "<strong><%- userName %></strong> иска одобрение",
"userRequestsApproval": "<strong><%= userName %></strong> иска одобрение",
"userCountRequestsApproval": "<strong><%= userCount %> членове</strong> искат одобрение",
"youAreRequestingApproval": "Вие искате одобрение",
"chatPrivilegesRevoked": "Не можете да направите това, защото привилегиите Ви в чата са Ви били отнети. За детайли или запитване за връшане на привилегии, моля пратете email на нашия Обществен Оправител на admin@habitica.com или попитайте вашия родител или настойник да им прати email. Моля, напишете и потребителското си име в писмото. Ако модератор вече ви е казал че блокирането ви към чата е временно, няма нужда да пращате email.",
@@ -168,9 +168,9 @@
"claim": "Вземане на Задача",
"removeClaim": "Отказване от задачата",
"onlyGroupLeaderCanManageSubscription": "Само водачът на групата може да управлява абонамента ѝ",
"yourTaskHasBeenApproved": "Задачата Ви <span class=\"notification-green notification-bold\"><%- taskText %></span>, беше одобрена.",
"taskNeedsWork": "<span class=\"notification-bold\"><%- managerName %></span> отбеляза, че задачата <span class=\"notification-bold\"><%- taskText %></span> се нуждае от още работа.",
"userHasRequestedTaskApproval": "<span class=\"notification-bold\"><%- user %></span> помоли следната задача да бъде одобрена: <span class=\"notification-bold\"><%- taskName %></span>",
"yourTaskHasBeenApproved": "Задачата Ви <span class=\"notification-green notification-bold\"><%= taskText %></span>, беше одобрена.",
"taskNeedsWork": "<span class=\"notification-bold\"><%= managerName %></span> отбеляза, че задачата <span class=\"notification-bold\"><%= taskText %></span> се нуждае от още работа.",
"userHasRequestedTaskApproval": "<span class=\"notification-bold\"><%= user %></span> помоли следната задача да бъде одобрена: <span class=\"notification-bold\"><%= taskName %></span>",
"approve": "Одобряване",
"approveTask": "Одобряване на задачата",
"needsWork": "Нуждае се от още работа",
@@ -183,8 +183,8 @@
"userIsClamingTask": "`<%= username %> пое:` <%= task %>",
"approvalRequested": "Заявено е одобрение",
"cantDeleteAssignedGroupTasks": "Не можете да изтриете груповите задачи, които са Ви разпределени.",
"groupPlanUpgraded": "<strong><%- groupName %></strong> премина към групов план!",
"groupPlanCreated": "Групата <strong><%- groupName %></strong> беше създадена!",
"groupPlanUpgraded": "<strong><%= groupName %></strong> премина към групов план!",
"groupPlanCreated": "Групата <strong><%= groupName %></strong> беше създадена!",
"onlyGroupLeaderCanInviteToGroupPlan": "Само водачът на групата може да кани хора в група с абонамент.",
"paymentDetails": "Подробности за разплащането",
"aboutToJoinCancelledGroupPlan": "На път сте да се присъедините към група, чийто план е прекратен. НЯМА да получите безплатен абонамент.",
@@ -325,8 +325,8 @@
"PMDisabled": "Деактивиране на лични съобщения",
"groupActivityNotificationTitle": "<%= user %> публикува в <%= group %>",
"suggestedGroup": "Предложено, защото сте нови в Habitica.",
"taskClaimed": "<%- userName %> взеха задачата <span class=\"notification-bold\"><%- taskText %></span>.",
"youHaveBeenAssignedTask": "<%- managerName %> ви присвои задачата <span class=\"notification-bold\"><%- taskText %></span>.",
"taskClaimed": "<%= userName %> взеха задачата <span class=\"notification-bold\"><%= taskText %></span>.",
"youHaveBeenAssignedTask": "<%= managerName %> ви присвои задачата <span class=\"notification-bold\"><%= taskText %></span>.",
"userWithUsernameOrUserIdNotFound": "Потребителското име или Потребителският Идентификатор не бяха намерени.",
"usernameOrUserId": "Потребителско име или Потребителски Идентификатор",
"sendGiftToWhom": "На кой бихте искали да пратите подарък?",
+2 -2
View File
@@ -82,8 +82,8 @@
"paymentMethods": "Купуване чрез",
"paymentSuccessful": "Плащането Ви беше успешно!",
"paymentYouReceived": "Получихте:",
"paymentYouSentGems": "Изпратихте на <strong><%- name %></strong>:",
"paymentYouSentSubscription": "Изпратихте на <strong><%- name %></strong> <%= months %>-месечен абонамент за Хабитика.",
"paymentYouSentGems": "Изпратихте на <strong><%= name %></strong>:",
"paymentYouSentSubscription": "Изпратихте на <strong><%= name %></strong> <%= months %>-месечен абонамент за Хабитика.",
"paymentSubBilling": "Абонаментът Ви ще бъде таксуван с <strong>$<%= amount %></strong> всеки <strong><%= months %> месеца</strong>.",
"success": "Готово!",
"classGear": "Снаряжение за класа",
+1 -1
View File
@@ -5,7 +5,7 @@
"keepIt": "Ponechat",
"removeIt": "Odstranit",
"brokenChallenge": "Nefunkční odkaz na výzvu: tento úkol byl součástí výzvy, ale ta (nebo skupina, která ji vytvořila) byla odstraněna. Co chceš dělat s osiřelými úkoly?",
"challengeCompleted": "Výzva byla ukončena a vítězem se stal <span class=\"badge\"><%- user %></span>! Co chceš dělat s osiřelými úkoly?",
"challengeCompleted": "Výzva byla ukončena a vítězem se stal <span class=\"badge\"><%= user %></span>! Co chceš dělat s osiřelými úkoly?",
"unsubChallenge": "Nefunkční odkaz na výzvu: tento úkol byl součástí výzvy, ze které jsi se odhlásil/a. Co chceš dělat s osiřelými úkoly?",
"challenges": "Výzvy",
"endDate": "Končí",
+1 -1
View File
@@ -190,7 +190,7 @@
"messages": "Zprávy",
"emptyMessagesLine1": "Nemáš žádné zprávy",
"emptyMessagesLine2": "Novou zprávu uživateli/Česku můžeš poslat tak, že navštívíš jeho/její profil a klikneš na tlačítko “Zprávy”.",
"userSentMessage": "<span class=\"notification-bold\"><%- user %></span> ti poslal/a zprávu",
"userSentMessage": "<span class=\"notification-bold\"><%= user %></span> ti poslal/a zprávu",
"letsgo": "Pojďmě!",
"selected": "Vybrané",
"howManyToBuy": "Kolik by jsi chtěl koupit?",
+15 -15
View File
@@ -24,14 +24,14 @@
"userId": "Uživatelské ID",
"invite": "Pozvat",
"leave": "Odejít",
"invitedToParty": "Byl jsi pozván do družiny <span class=\"notification-bold\"><%- party %></span>",
"invitedToPrivateGuild": "Byl jsi pozván do soukromého cechu <span class=\"notification-bold\"><%- guild %></span>",
"invitedToPublicGuild": "Byl jsi pozván do cechu <span class=\"notification-bold-blue\"><%- guild %></span>",
"invitedToParty": "Byl jsi pozván do družiny <span class=\"notification-bold\"><%= party %></span>",
"invitedToPrivateGuild": "Byl jsi pozván do soukromého cechu <span class=\"notification-bold\"><%= guild %></span>",
"invitedToPublicGuild": "Byl jsi pozván do cechu <span class=\"notification-bold-blue\"><%= guild %></span>",
"invitationAcceptedHeader": "Tvá pozvánka byla přijata",
"invitationAcceptedBody": "<%= username %> přijal tvoji pozvánku do <%= groupName %>!",
"systemMessage": "Systémová zpráva",
"newMsgGuild": "<span class=\"notification-bold-blue\"><%- name %></span> má nový příspěvek",
"newMsgParty": "Tvá družina, <span class=\"notification-bold-blue\"><%- name %></span>, má nový příspěvek",
"newMsgGuild": "<span class=\"notification-bold-blue\"><%= name %></span> má nový příspěvek",
"newMsgParty": "Tvá družina, <span class=\"notification-bold-blue\"><%= name %></span>, má nový příspěvek",
"chat": "Chat",
"sendChat": "Poslat zprávu",
"group": "Skupina",
@@ -151,14 +151,14 @@
"onlyGroupLeaderCanEditTasks": "Not authorized to manage tasks!",
"onlyGroupTasksCanBeAssigned": "Only group tasks can be assigned",
"assignedTo": "Přiřadit k",
"assignedToUser": "Přiřazeno <strong><%- userName %></strong>",
"assignedToUser": "Přiřazeno <strong><%= userName %></strong>",
"assignedToMembers": "Přiřazeno <strong><%= userCount %> members</strong>",
"assignedToYouAndMembers": "Přiřazeno vám a <strong><%= userCount %> members</strong>",
"youAreAssigned": "Jsi přiřazen/a k tomuto úkolu",
"taskIsUnassigned": "This task is unassigned",
"confirmUnClaim": "Are you sure you want to unclaim this task?",
"confirmNeedsWork": "Are you sure you want to mark this task as needing work?",
"userRequestsApproval": "<strong><%- userName %></strong> požaduje schválení",
"userRequestsApproval": "<strong><%= userName %></strong> požaduje schválení",
"userCountRequestsApproval": "<strong><%= userCount %> members</strong> požadují schválení",
"youAreRequestingApproval": "You are requesting approval",
"chatPrivilegesRevoked": "Toto nelze provést, protože vaše oprávnění k chatu byla odstraněna. Chcete-li získat další informace nebo se zeptat, zda lze vaše oprávnění vrátit, pošlete e-mail našemu komunitnímu manažerovi na adrese admin@habitica.com nebo požádejte svého rodiče nebo zákonného zástupce o zaslání e-mailu. Do e-mailu uveďte prosím své @uživatelskéjméno. Pokud vám moderátor již řekl, že váš zákaz chatu je dočasný, nemusíte posílat e-maily.",
@@ -168,9 +168,9 @@
"claim": "Nárokovat úkol",
"removeClaim": "Remove Claim",
"onlyGroupLeaderCanManageSubscription": "Only the group leader can manage the group's subscription",
"yourTaskHasBeenApproved": "Váš úkol <span class=\"notification-green notification-bold\"><%- taskText %></span> byl schválený.",
"taskNeedsWork": "<span class=\"notification-bold\"><%- managerName %></span> marked <span class=\"notification-bold\"><%- taskText %></span> as needing additional work.",
"userHasRequestedTaskApproval": "<span class=\"notification-bold\"><%- user %></span> requests approval for <span class=\"notification-bold\"><%- taskName %></span>",
"yourTaskHasBeenApproved": "Váš úkol <span class=\"notification-green notification-bold\"><%= taskText %></span> byl schválený.",
"taskNeedsWork": "<span class=\"notification-bold\"><%= managerName %></span> marked <span class=\"notification-bold\"><%= taskText %></span> as needing additional work.",
"userHasRequestedTaskApproval": "<span class=\"notification-bold\"><%= user %></span> requests approval for <span class=\"notification-bold\"><%= taskName %></span>",
"approve": "Approve",
"approveTask": "Approve Task",
"needsWork": "Needs Work",
@@ -183,8 +183,8 @@
"userIsClamingTask": "`<%= username %> has claimed:` <%= task %>",
"approvalRequested": "Approval Requested",
"cantDeleteAssignedGroupTasks": "Can't delete group tasks that are assigned to you.",
"groupPlanUpgraded": "<strong><%- groupName %></strong> was upgraded to a Group Plan!",
"groupPlanCreated": "<strong><%- groupName %></strong> was created!",
"groupPlanUpgraded": "<strong><%= groupName %></strong> was upgraded to a Group Plan!",
"groupPlanCreated": "<strong><%= groupName %></strong> was created!",
"onlyGroupLeaderCanInviteToGroupPlan": "Only the group leader can invite users to a group with a subscription.",
"paymentDetails": "Payment Details",
"aboutToJoinCancelledGroupPlan": "You are about to join a group with a canceled plan. You will NOT receive a free subscription.",
@@ -321,8 +321,8 @@
"allAssignedCompletion": "All - Completes when all assigned users finish",
"groupActivityNotificationTitle": "<%= user %> publikoval v <%= group %>",
"suggestedGroup": "Navrženo, protože jste v Habitica nový/á.",
"taskClaimed": "<%- userName %> nárokoval úkol <span class=\"notification-bold\"><%- taskText %></span>.",
"youHaveBeenAssignedTask": "<%- managerName %> vám přidělil úkol <span class=\"notification-bold\"><%- taskText %></span>.",
"taskClaimed": "<%= userName %> nárokoval úkol <span class=\"notification-bold\"><%= taskText %></span>.",
"youHaveBeenAssignedTask": "<%= managerName %> vám přidělil úkol <span class=\"notification-bold\"><%= taskText %></span>.",
"pmReported": "Děkujeme za nahlášení této zprávy.",
"newPartyPlaceholder": "Zadej jméno tvé družiny.",
"userWithUsernameOrUserIdNotFound": "Uživatelské jméno nebo uživatelské ID nebylo nalezeno.",
@@ -336,7 +336,7 @@
"PMDisabled": "Zakaž soukromé zprávy",
"unassigned": "Nepřiřazeno",
"claimRewards": "Vyzvedni si odměnu",
"assignedDateAndUser": "Přiřazeno uživatelem/kou <strong>@<%- username %></strong> dne <strong><%= date %></strong>",
"assignedDateAndUser": "Přiřazeno uživatelem/kou <strong>@<%= username %></strong> dne <strong><%= date %></strong>",
"assignedDateOnly": "Přiřazeno k <strong><%= date %></strong>",
"managerNotes": "Poznámky manažera",
"thisTaskApproved": "Tento úkol byl schválen",
+2 -2
View File
@@ -82,8 +82,8 @@
"paymentMethods": "Platební metody",
"paymentSuccessful": "Tvá platba proběhla úspěšně!",
"paymentYouReceived": "Obdržel jsi:",
"paymentYouSentGems": "Poslal/a jsi <strong><%- name %></strong>:",
"paymentYouSentSubscription": "Poslal/a jsi <strong><%- name %></strong> předplatné na <%= months %>-měsíce/ů v Habitica.",
"paymentYouSentGems": "Poslal/a jsi <strong><%= name %></strong>:",
"paymentYouSentSubscription": "Poslal/a jsi <strong><%= name %></strong> předplatné na <%= months %>-měsíce/ů v Habitica.",
"paymentSubBilling": "Tvoje předplatné ve výši <strong>$<%= amount %></strong> bude účtovano každé/ých <strong><%= months %> měsíce/ů </strong>.",
"success": "Úspěch!",
"classGear": "Vybavení pro tvé povolání",
+1 -1
View File
@@ -5,7 +5,7 @@
"keepIt": "Behold den",
"removeIt": "Fjern den",
"brokenChallenge": "Defekt udfordringslink: denne opgave var en del af en udfordring, men udfordringen (eller gruppen) er blevet fjernet. Hvad vil du gøre med de gruppeløse opgaver?",
"challengeCompleted": "Denne udfordring er afsluttet, og vinderen blev <span class=\"badge\"><%- user %></span>! Hvad vil du gøre med de gruppeløse opgaver?",
"challengeCompleted": "Denne udfordring er afsluttet, og vinderen blev <span class=\"badge\"><%= user %></span>! Hvad vil du gøre med de gruppeløse opgaver?",
"unsubChallenge": "Defekt Udfordringslink: denne opgave var en del af en udfordring, som du ikke længere abonnerer på. Hvad vil du gøre med de gruppeløse opgaver?",
"challenges": "Udfordringer",
"endDate": "Afsluttes",
+1 -1
View File
@@ -190,7 +190,7 @@
"messages": "Beskeder",
"emptyMessagesLine1": "Du har ingen beskeder",
"emptyMessagesLine2": "Du kan sende en ny besked til en bruger ved at besøge deres profil og klikke på \"Besked\"-knappen.",
"userSentMessage": "<span class=\"notification-bold\"><%- user %></span> sendte en besked",
"userSentMessage": "<span class=\"notification-bold\"><%= user %></span> sendte en besked",
"letsgo": "Lad os komme i gang!",
"selected": "Valgt",
"howManyToBuy": "Hvor mange vil du købe?",
+13 -13
View File
@@ -24,14 +24,14 @@
"userId": "Bruger-ID",
"invite": "Invitér",
"leave": "Forlad",
"invitedToParty": "Du blev inviteret til at være med på Holdet <span class=\"notification-bold\"><%- party %></span>",
"invitedToPrivateGuild": "Du blev inviteret til den private Klan <span class=\"notification-bold\"><%- guild %></span>",
"invitedToPublicGuild": "Du blev inviteret til Klanen <span class=\"notification-bold-blue\"><%- guild %></span>",
"invitedToParty": "Du blev inviteret til at være med på Holdet <span class=\"notification-bold\"><%= party %></span>",
"invitedToPrivateGuild": "Du blev inviteret til den private Klan <span class=\"notification-bold\"><%= guild %></span>",
"invitedToPublicGuild": "Du blev inviteret til Klanen <span class=\"notification-bold-blue\"><%= guild %></span>",
"invitationAcceptedHeader": "Din invitation blev accepteret",
"invitationAcceptedBody": "<%= username %> har accepteret din invitation til <%= groupName %>!",
"systemMessage": "Systembesked",
"newMsgGuild": "<span class=\"notification-bold-blue\"><%- name %></span> har nye indlæg",
"newMsgParty": "Dit Hold, <span class=\"notification-bold-blue\"><%- name %></span>, har nye indlæg",
"newMsgGuild": "<span class=\"notification-bold-blue\"><%= name %></span> har nye indlæg",
"newMsgParty": "Dit Hold, <span class=\"notification-bold-blue\"><%= name %></span>, har nye indlæg",
"chat": "Chat",
"sendChat": "Send besked",
"group": "Gruppe",
@@ -151,14 +151,14 @@
"onlyGroupLeaderCanEditTasks": "Du har ikke rettigheder til at administrere opgaver!",
"onlyGroupTasksCanBeAssigned": "Kun gruppeopgaver kan blive tildelt",
"assignedTo": "Tildelt",
"assignedToUser": "Tildelt <%- userName %>",
"assignedToUser": "Tildelt <%= userName %>",
"assignedToMembers": "Tildelt <%= userCount %> medlemmer",
"assignedToYouAndMembers": "Tildelt dig og <%= userCount %> medlemmer",
"youAreAssigned": "Du er blevet bedt om at udføre denne opgave",
"taskIsUnassigned": "Denne opgave er ikke tildelt nogen",
"confirmUnClaim": "Er du sikker på, du vil give afkald på denne opgave?",
"confirmNeedsWork": "Er du sikker på, du vil markere denne opgave som ufuldstændig?",
"userRequestsApproval": "<%- userName %> anmoder om godkendelse",
"userRequestsApproval": "<%= userName %> anmoder om godkendelse",
"userCountRequestsApproval": "<%= userCount %> medlemmer anmoder om godkendelse",
"youAreRequestingApproval": "Du har anmodet om godkendelse",
"chatPrivilegesRevoked": "Dine chatprivilegier er blevet inddraget, så du kan ikke udføre denne handling.",
@@ -168,9 +168,9 @@
"claim": "Gør krav på",
"removeClaim": "Giv afkald på",
"onlyGroupLeaderCanManageSubscription": "Kun gruppelederen kan styre gruppens abonnement",
"yourTaskHasBeenApproved": "Din opgave, <span class=\"notification-green\"><%- taskText %></span>, er blevet godkendt.",
"taskNeedsWork": "<span class=\"notification-bold\"><%- managerName %></span> markerede <span class=\"notification-bold\"><%- taskText %></span> som ufuldstændig.",
"userHasRequestedTaskApproval": "<span class=\"notification-bold\"><%- user %></span> anmoder om godkendelse for <span class=\"notification-bold\"><%- taskName %></span>",
"yourTaskHasBeenApproved": "Din opgave, <span class=\"notification-green\"><%= taskText %></span>, er blevet godkendt.",
"taskNeedsWork": "<span class=\"notification-bold\"><%= managerName %></span> markerede <span class=\"notification-bold\"><%= taskText %></span> som ufuldstændig.",
"userHasRequestedTaskApproval": "<span class=\"notification-bold\"><%= user %></span> anmoder om godkendelse for <span class=\"notification-bold\"><%= taskName %></span>",
"approve": "Godkend",
"approveTask": "Godkend opgave",
"needsWork": "Ufuldstændig",
@@ -183,8 +183,8 @@
"userIsClamingTask": "`<%= username %> har gjort krav på:` <%= task %>",
"approvalRequested": "Godkendelse efterspurgt",
"cantDeleteAssignedGroupTasks": "Du kan ikke slette gruppeopgaver, der er blevet tildelt dig.",
"groupPlanUpgraded": "<strong><%- groupName %></strong> blev opgraderet til en Gruppeplan!",
"groupPlanCreated": "<strong><%- groupName %></strong> blev oprettet!",
"groupPlanUpgraded": "<strong><%= groupName %></strong> blev opgraderet til en Gruppeplan!",
"groupPlanCreated": "<strong><%= groupName %></strong> blev oprettet!",
"onlyGroupLeaderCanInviteToGroupPlan": "Kun gruppelederen kan invitere brugere til en gruppe med et abonnement.",
"paymentDetails": "Betalingsdetaljer",
"aboutToJoinCancelledGroupPlan": "Du er ved at slutte dig til en gruppe med en opsagt gruppeplan. Du vil IKKE få et gratis abonnement.",
@@ -321,7 +321,7 @@
"allAssignedCompletion": "All - Completes when all assigned users finish",
"pmReported": "Tak, fordi du rapporterede denne besked.",
"features": "Funktioner",
"invitedToPartyBy": "<a href=\"/profile/<%- userId %>\" target=\"_blank\">@<%- userName %></a> har inviteret dig til holdet <span class=\"notification-bold\"><%- party %></span>",
"invitedToPartyBy": "<a href=\"/profile/<%= userId %>\" target=\"_blank\">@<%= userName %></a> har inviteret dig til holdet <span class=\"notification-bold\"><%= party %></span>",
"PMUserDoesNotReceiveMessages": "Denne bruger modtager ikke længere private beskeder",
"blockedToSendToThisUser": "Du kan ikke sende til denne spiller da du har blokeret denne spiller.",
"blockYourself": "Du kan ikke blokere dig selv",
+2 -2
View File
@@ -82,8 +82,8 @@
"paymentMethods": "Køb med",
"paymentSuccessful": "Din betaling gik igennem!",
"paymentYouReceived": "Du modtog:",
"paymentYouSentGems": "Du sendte <strong><%- name %></strong>:",
"paymentYouSentSubscription": "Du sendte <strong><%- name %></strong> et <%= months %>-måneders Habitica-abonnement.",
"paymentYouSentGems": "Du sendte <strong><%= name %></strong>:",
"paymentYouSentSubscription": "Du sendte <strong><%= name %></strong> et <%= months %>-måneders Habitica-abonnement.",
"paymentSubBilling": "Betalingen for dit abonnement vil blive trukket <strong>$<%= amount %></strong> hver <strong><%= months %> måneder</strong>.",
"success": "Succes!",
"classGear": "Klasseudstyr",
+1 -1
View File
@@ -111,6 +111,6 @@
"deleteChallengeRefundDescription": "Wenn du diese Herausforderung löschst, bekommst du den Preis in Edelsteinen erstattet und die Aufgaben der Herausforderung verbleiben auf der Aufgabentafel der Teilnehmer.",
"brokenTaskDescription": "Diese Aufgabe war Teil einer Herausforderung, wurde jedoch daraus entfernt. Was möchtest Du tun?",
"brokenChallengeDescription": "Diese Aufgabe war Teil einer Herausforderung, aber die Herausforderung (oder Gruppe) wurde gelöscht. Was soll mit den verwaisten Aufgaben geschehen?",
"challengeCompletedDescription": "Gewonnen hat <%- user %>! Was soll mit den verwaisten Aufgaben geschehen?",
"challengeCompletedDescription": "Gewonnen hat <%= user %>! Was soll mit den verwaisten Aufgaben geschehen?",
"brokenTask": "Defekter Link zur Herausforderung"
}
+1 -1
View File
@@ -190,7 +190,7 @@
"messages": "Nachrichten",
"emptyMessagesLine1": "Du hast im Moment keine Nachrichten",
"emptyMessagesLine2": "Sende eine Nachricht, um eine Konversation mit Mitgliedern deiner Gruppe oder anderen Habitica Spielern zu beginnen",
"userSentMessage": "<span class=\"notification-bold\"><%- user %></span> hat Dir eine Nachricht gesendet",
"userSentMessage": "<span class=\"notification-bold\"><%= user %></span> hat Dir eine Nachricht gesendet",
"letsgo": "Auf geht's!",
"selected": "Ausgewählt",
"howManyToBuy": "Wie viele möchtest Du kaufen?",
+16 -16
View File
@@ -24,14 +24,14 @@
"userId": "Benutzer-ID",
"invite": "Einladen",
"leave": "Verlassen",
"invitedToParty": "Du wurdest in die Party <span class=\"notification-bold\"><%- party %></span> eingeladen",
"invitedToPrivateGuild": "Du wurdest eingeladen, der privaten Gruppe<span class=\"notification-bold\"><%- guild %></span> beizutreten",
"invitedToPublicGuild": "Du wurdest eingeladen, der Gruppe<span class=\"notification-bold-blue\"><%- guild %></span> beizutreten",
"invitedToParty": "Du wurdest in die Party <span class=\"notification-bold\"><%= party %></span> eingeladen",
"invitedToPrivateGuild": "Du wurdest eingeladen, der privaten Gruppe<span class=\"notification-bold\"><%= guild %></span> beizutreten",
"invitedToPublicGuild": "Du wurdest eingeladen, der Gruppe<span class=\"notification-bold-blue\"><%= guild %></span> beizutreten",
"invitationAcceptedHeader": "Deine Einladung wurde angenommen",
"invitationAcceptedBody": "<%= username %> hat Deine Einladung zu <%= groupName %> angenommen!",
"systemMessage": "Systemmeldung",
"newMsgGuild": "<span class=\"notification-bold-blue\"><%- name %></span> hat neue Beiträge",
"newMsgParty": "Deine Party, <span class=\"notification-bold-blue\"><%- name %></span>, hat neue Beiträge",
"newMsgGuild": "<span class=\"notification-bold-blue\"><%= name %></span> hat neue Beiträge",
"newMsgParty": "Deine Party, <span class=\"notification-bold-blue\"><%= name %></span>, hat neue Beiträge",
"chat": "Chat",
"sendChat": "Nachricht senden",
"group": "Gruppe",
@@ -151,14 +151,14 @@
"onlyGroupLeaderCanEditTasks": "Nicht berechtigt, Aufgaben zu bearbeiten!",
"onlyGroupTasksCanBeAssigned": "Nur Team-Aufgaben können verteilt werden",
"assignedTo": "Zugewiesen an",
"assignedToUser": "Zugewiesen: <strong>@<%- userName %></strong>",
"assignedToUser": "Zugewiesen: <strong>@<%= userName %></strong>",
"assignedToMembers": "<%= userCount %> Mitgliedern",
"assignedToYouAndMembers": "<strong>Dir</strong>, <%= userCount %> Mitgliedern",
"youAreAssigned": "Zugewiesen: <strong>Dir</strong>",
"taskIsUnassigned": "Diese Aufgabe ist niemandem zugewiesen",
"confirmUnClaim": "Bist Du sicher, dass Du diese Aufgabe abgeben möchtest?",
"confirmNeedsWork": "Bist Du sicher, dass Du diese Aufgabe auf \"Benötigt Arbeit\" setzen möchtest?",
"userRequestsApproval": "<strong><%- userName %></strong> beantragt eine Bestätigung",
"userRequestsApproval": "<strong><%= userName %></strong> beantragt eine Bestätigung",
"userCountRequestsApproval": "<strong><%= userCount %> Mitglieder</strong> beantragen eine Bestätigung",
"youAreRequestingApproval": "Du beantragst eine Bestätigung",
"chatPrivilegesRevoked": "Du kannst dies nicht tun, da Dir Deine Chat-Privilegien entzogen wurden. Für genauere Angaben oder um zu fragen, ob Dir Deine Chat-Privilegien zurückgegeben werden können, schreibe bitte eine E-Mail an den Community-Manager unter admin@habitica.com oder bitte Deine Eltern diese E-Mail zu schreiben. Bitte gib Deinen @Usernamen in der E-Mail an. Falls ein Moderator Dir bereits mitgeteilt hat, dass diese Sperre zeitlich begrenzt ist, brauchst Du keine E-Mail zu schreiben.",
@@ -168,9 +168,9 @@
"claim": "Aufgabe übernehmen",
"removeClaim": "Aufgabe abtreten",
"onlyGroupLeaderCanManageSubscription": "Nur der Gruppenleiter kann Gruppen-Registrierungen verwalten",
"yourTaskHasBeenApproved": "Deiner Aufgabe <span class=\"notification-green notification-bold\"><%- taskText %></span> wurde Zustimmung erteilt.",
"taskNeedsWork": "<span class=\"notification-bold\"><%- managerName %></span> hat <span class=\"notification-bold\"><%- taskText %></span> als unfertig markiert.",
"userHasRequestedTaskApproval": "<span class=\"notification-bold\"><%- user %></span> bittet um Zustimmung für <span class=\"notification-bold\"><%- taskName %></span>",
"yourTaskHasBeenApproved": "Deiner Aufgabe <span class=\"notification-green notification-bold\"><%= taskText %></span> wurde Zustimmung erteilt.",
"taskNeedsWork": "<span class=\"notification-bold\"><%= managerName %></span> hat <span class=\"notification-bold\"><%= taskText %></span> als unfertig markiert.",
"userHasRequestedTaskApproval": "<span class=\"notification-bold\"><%= user %></span> bittet um Zustimmung für <span class=\"notification-bold\"><%= taskName %></span>",
"approve": "Zustimmen",
"approveTask": "Aufgabe zustimmen",
"needsWork": "Benötigt Arbeit",
@@ -183,8 +183,8 @@
"userIsClamingTask": "`<%= username %> beansprucht:` <%= task %>",
"approvalRequested": "Zustimmung erbeten",
"cantDeleteAssignedGroupTasks": "Du kannst Gruppen-Aufgaben, die Dir zugewiesen wurden, nicht löschen.",
"groupPlanUpgraded": "<strong><%- groupName %></strong> wurde erfolgreich auf einen Gruppenplan hochgestuft!",
"groupPlanCreated": "<strong><%- groupName %></strong> wurde erstellt!",
"groupPlanUpgraded": "<strong><%= groupName %></strong> wurde erfolgreich auf einen Gruppenplan hochgestuft!",
"groupPlanCreated": "<strong><%= groupName %></strong> wurde erstellt!",
"onlyGroupLeaderCanInviteToGroupPlan": "Nur der Gruppenleiter kann Nutzer zu einer Gruppe mit einem Abonnement hinzufügen.",
"paymentDetails": "Zahlungsinformationen",
"aboutToJoinCancelledGroupPlan": "Du bist dabei einer Gruppe mit gekündigtem Plan beizutreten. Du erhältst KEIN freies Abonnement.",
@@ -321,8 +321,8 @@
"allAssignedCompletion": "Alle Ist erledigt, sobald alle zugeteilten Benutzer abschliessen",
"pmReported": "Danke dass Du diese Nachricht gemeldet hast.",
"suggestedGroup": "Vorgeschlagen weil Du bei Habitica neu bist.",
"taskClaimed": "<%- userName %> hat die Aufgabe <span class=\"notification-bold\"><%- taskText %></span> übernommen.",
"youHaveBeenAssignedTask": "<%- managerName %> hat Dir die Aufgabe <span class=\"notification-bold\"><%- taskText %></span> zugeteilt.",
"taskClaimed": "<%= userName %> hat die Aufgabe <span class=\"notification-bold\"><%= taskText %></span> übernommen.",
"youHaveBeenAssignedTask": "<%= managerName %> hat Dir die Aufgabe <span class=\"notification-bold\"><%= taskText %></span> zugeteilt.",
"groupActivityNotificationTitle": "<%= user %> hat in <%= group %> gepostet",
"blockedToSendToThisUser": "Du kannst dieser Person nicht schreiben, weil Du diese Person blockiert hast.",
"PMDisabled": "Private Nachrichten deaktivieren",
@@ -337,7 +337,7 @@
"chooseTeamMember": "Wähle ein Teammitglied",
"unassigned": "Nicht zugewiesen",
"claimRewards": "Belohnung einfordern",
"assignedDateAndUser": "Zugewiesen am <strong><%= date %></strong> von <strong>@<%- username %></strong>",
"assignedDateAndUser": "Zugewiesen am <strong><%= date %></strong> von <strong>@<%= username %></strong>",
"assignedDateOnly": "Zugewiesen am <strong><%= date %></strong>",
"managerNotes": "Manager-Notizen",
"thisTaskApproved": "Dieser Aufgabe wurde zugestimmt",
@@ -399,7 +399,7 @@
"bannedUser": "<strong>Dieser Spieler wurde gebannt.</strong>",
"questWithOthers": "Übernimm Missionen mit anderen",
"sendTotal": "Gesamt:",
"invitedToPartyBy": "<a href=\"/profile/<%- userId %>\" target=\"_blank\">@<%- userName %></a> hat dich eingeladen, der Party beizutreten <span class=\"notification-bold\"><%- party %></span>",
"invitedToPartyBy": "<a href=\"/profile/<%= userId %>\" target=\"_blank\">@<%= userName %></a> hat dich eingeladen, der Party beizutreten <span class=\"notification-bold\"><%= party %></span>",
"partyExceedsInvitesLimit": "Eine Party kann nur bis zu <%= maxInvites %> ausstehende Einladungen haben.",
"lookForParty": "Suche eine Party",
"currentlyLookingForParty": "Du suchst nach einer Party!",
+3 -3
View File
@@ -82,8 +82,8 @@
"paymentMethods": "Kauf mit",
"paymentSuccessful": "Die Zahlung war erfolgreich!",
"paymentYouReceived": "Du hast erhalten:",
"paymentYouSentGems": "Du hast <strong><%- name %></strong> geschickt:",
"paymentYouSentSubscription": "Du hast <strong><%- name %></strong><br> ein <%= months %>-Monate-Abo für Habitica geschickt.",
"paymentYouSentGems": "Du hast <strong><%= name %></strong> geschickt:",
"paymentYouSentSubscription": "Du hast <strong><%= name %></strong><br> ein <%= months %>-Monate-Abo für Habitica geschickt.",
"paymentSubBilling": "Dein Abonnement wird mit <strong>$<%= amount %></strong> alle <strong><%= months %> Monate</strong> verrechnet.",
"success": "Erfolg!",
"classGear": "Klassenausrüstung",
@@ -129,5 +129,5 @@
"sellItems": "Items verkaufen",
"customizationsShopText": "Willst du deinen Style ändern? Hier bist du richtig! Wir haben die frischesten Looks, passend zur Saison, auf Lager.",
"notAvailable": "Dieser Gegenstand ist nicht verfügbar.",
"paymentYouSentSubscriptionG1G1": "Du hast <strong><%- name %></strong><br> ein <%= months %>-Monat(e)-Abo für Habitica geschickt und dasselbe Abo wurde deinem Account im Zuge der \"Schenk' Eins, Bekomm' Eins\"-Aktion gutgeschrieben!"
"paymentYouSentSubscriptionG1G1": "Du hast <strong><%= name %></strong><br> ein <%= months %>-Monat(e)-Abo für Habitica geschickt und dasselbe Abo wurde deinem Account im Zuge der \"Schenk' Eins, Bekomm' Eins\"-Aktion gutgeschrieben!"
}
+1 -1
View File
@@ -10,7 +10,7 @@
"brokenChallenge": "Broken Challenge Link",
"brokenChallengeDescription": "This task was part of a challenge, but the challenge (or group) has been deleted. What to do with the orphan tasks?",
"challengeCompleted": "Challenge Completed!",
"challengeCompletedDescription": "The winner was <%- user %>! What to do with the orphan tasks?",
"challengeCompletedDescription": "The winner was <%= user %>! What to do with the orphan tasks?",
"unsubChallenge": "Broken Challenge Link: this task was part of a challenge, but you have unsubscribed from the challenge. What to do with the orphan tasks?",
"challenges": "Challenges",
"endDate": "Ends",
+1 -1
View File
@@ -210,7 +210,7 @@
"emptyMessagesLine1": "You don't have any messages",
"emptyMessagesLine2": "Send a message to start a conversation with your Party members or another Habitica player",
"newMessage": "New Message",
"userSentMessage": "<span class=\"notification-bold\"><%- user %></span> sent you a message",
"userSentMessage": "<span class=\"notification-bold\"><%= user %></span> sent you a message",
"letsgo": "Let's Go!",
"selected": "Selected",
"howManyToBuy": "How many would you like to purchase?",
+29 -17
View File
@@ -27,15 +27,15 @@
"userId": "User ID",
"invite": "Invite",
"leave": "Leave",
"invitedToParty": "You were invited to join the Party <span class=\"notification-bold\"><%- party %></span>",
"invitedToPartyBy": "<a href=\"/profile/<%- userId %>\" target=\"_blank\">@<%- userName %></a> has invited you to join the Party <span class=\"notification-bold\"><%- party %></span>",
"invitedToPrivateGuild": "You were invited to join the private Group <span class=\"notification-bold\"><%- guild %></span>",
"invitedToPublicGuild": "You were invited to join the Group <span class=\"notification-bold-blue\"><%- guild %></span>",
"invitedToParty": "You were invited to join the Party <span class=\"notification-bold\"><%= party %></span>",
"invitedToPartyBy": "<a href=\"/profile/<%= userId %>\" target=\"_blank\">@<%= userName %></a> has invited you to join the Party <span class=\"notification-bold\"><%= party %></span>",
"invitedToPrivateGuild": "You were invited to join the private Group <span class=\"notification-bold\"><%= guild %></span>",
"invitedToPublicGuild": "You were invited to join the Group <span class=\"notification-bold-blue\"><%= guild %></span>",
"invitationAcceptedHeader": "Your Invitation has been Accepted",
"invitationAcceptedBody": "<%= username %> accepted your invitation to <%= groupName %>!",
"systemMessage": "System Message",
"newMsgGuild": "<span class=\"notification-bold-blue\"><%- name %></span> has new posts",
"newMsgParty": "Your Party, <span class=\"notification-bold-blue\"><%- name %></span>, has new posts",
"newMsgGuild": "<span class=\"notification-bold-blue\"><%= name %></span> has new posts",
"newMsgParty": "Your Party, <span class=\"notification-bold-blue\"><%= name %></span>, has new posts",
"chat": "Chat",
"sendChat": "Send Chat",
"group": "Group",
@@ -184,7 +184,7 @@
"onlyGroupTasksCanBeAssigned": "Only group tasks can be assigned",
"assignTo": "Assign To",
"assignedTo": "Assigned to",
"assignedToUser": "Assigned: <strong>@<%- userName %></strong>",
"assignedToUser": "Assigned: <strong>@<%= userName %></strong>",
"assignedToMembers": "<%= userCount %> users",
"assignedToYouAndMembers": "<strong>You</strong>, <%= userCount %> users",
"youAreAssigned": "Assigned: <strong>you</strong>",
@@ -193,7 +193,7 @@
"chooseTeamMember": "Search for a team member",
"confirmUnClaim": "Are you sure you want to unclaim this task?",
"confirmNeedsWork": "Are you sure you want to mark this task as needing work?",
"userRequestsApproval": "<strong><%- userName %></strong> requests approval",
"userRequestsApproval": "<strong><%= userName %></strong> requests approval",
"userCountRequestsApproval": "<strong><%= userCount %> members</strong> request approval",
"youAreRequestingApproval": "You are requesting approval",
"chatPrivilegesRevoked": "You cannot do this because your chat privileges have been removed. For details or to ask if your privileges can be returned, please email our Community Manager at admin@habitica.com or ask your parent or guardian to email them. Please include your @Username in the email. If a moderator has already told you that your chat ban is temporary, you do not need to send an email.",
@@ -204,12 +204,12 @@
"removeClaim": "Remove Claim",
"onlyGroupLeaderCanManageSubscription": "Only the group leader can manage the group's subscription",
"onlyPrivateGuildsCanUpgrade": "Only private guilds can be upgraded to a group plan.",
"youHaveBeenAssignedTask": "<%- managerName %> has assigned you the task <span class=\"notification-bold\"><%- taskText %></span>.",
"yourTaskHasBeenApproved": "Your task <span class=\"notification-green notification-bold\"><%- taskText %></span> has been approved.",
"youHaveBeenAssignedTask": "<%= managerName %> has assigned you the task <span class=\"notification-bold\"><%= taskText %></span>.",
"yourTaskHasBeenApproved": "Your task <span class=\"notification-green notification-bold\"><%= taskText %></span> has been approved.",
"thisTaskApproved": "This task was approved",
"taskClaimed": "<%- userName %> has claimed the task <span class=\"notification-bold\"><%- taskText %></span>.",
"taskNeedsWork": "<span class=\"notification-bold\"><%- taskText %></span> was unchecked by <span class=\"notification-bold\">@<%- managerName %></span>. Your rewards for completing the task were reverted.",
"userHasRequestedTaskApproval": "<span class=\"notification-bold\"><%- user %></span> requests approval for <span class=\"notification-bold\"><%- taskName %></span>",
"taskClaimed": "<%= userName %> has claimed the task <span class=\"notification-bold\"><%= taskText %></span>.",
"taskNeedsWork": "<span class=\"notification-bold\"><%= taskText %></span> was unchecked by <span class=\"notification-bold\">@<%= managerName %></span>. Your rewards for completing the task were reverted.",
"userHasRequestedTaskApproval": "<span class=\"notification-bold\"><%= user %></span> requests approval for <span class=\"notification-bold\"><%= taskName %></span>",
"approve": "Approve",
"approveTask": "Approve Task",
"needsWork": "Needs Work",
@@ -222,8 +222,8 @@
"userIsClamingTask": "`<%= username %> has claimed:` <%= task %>",
"approvalRequested": "Approval Requested",
"cantDeleteAssignedGroupTasks": "Can't delete group tasks that are assigned to you.",
"groupPlanUpgraded": "<strong><%- groupName %></strong> was successfully upgraded to a Group Plan!",
"groupPlanCreated": "<strong><%- groupName %></strong> was created!",
"groupPlanUpgraded": "<strong><%= groupName %></strong> was successfully upgraded to a Group Plan!",
"groupPlanCreated": "<strong><%= groupName %></strong> was created!",
"onlyGroupLeaderCanInviteToGroupPlan": "Only the group leader can invite users to a group with a subscription.",
"paymentDetails": "Payment Details",
"aboutToJoinCancelledGroupPlan": "You are about to join a group with a canceled plan. You will NOT receive a free subscription.",
@@ -389,7 +389,7 @@
"groupActivityNotificationTitle": "<%= user %> posted in <%= group %>",
"managerNotes": "Manager's Notes",
"assignedDateOnly": "Assigned on <strong><%= date %></strong>",
"assignedDateAndUser": "Assigned by @<%- username %> on <%= date %>",
"assignedDateAndUser": "Assigned by @<%= username %> on <%= date %>",
"claimRewards": "Claim Rewards",
"dayStart": "<strong>Day start</strong>: <%= startTime %>",
"viewStatus": "Status",
@@ -428,5 +428,17 @@
"interestedLearningMore": "Interested in Learning More?",
"checkGroupPlanFAQ": "Check out the <a href='/static/faq#what-is-group-plan'>Group Plans FAQ</a> to learn how to get the most out of your shared task experience.",
"groupPlanBillingFYI": "Group Plan subscriptions automatically renew unless you cancel at least 24 hours before the end of your current period. You can cancel from the Group Billing tab of your Group Plan. You will be charged within 24 hours before your subscription renews, based on the number of members in your Group Plan at that time. If you add members between payment periods, you'll see an additional prorated charge for their benefits at your next billing cycle.",
"groupPlanBillingFYIShort": "Group Plan subscriptions automatically renew unless you cancel at least 24 hours before the end of your current period. You will be charged within 24 hours before your subscription renews, based on the number of members in your Group Plan at that time. If you add members between payment periods, you'll see an additional prorated charge for their benefits at your next billing cycle."
"groupPlanBillingFYIShort": "Group Plan subscriptions automatically renew unless you cancel at least 24 hours before the end of your current period. You will be charged within 24 hours before your subscription renews, based on the number of members in your Group Plan at that time. If you add members between payment periods, you'll see an additional prorated charge for their benefits at your next billing cycle.",
"chooseAnOption": "Choose an Option",
"upgradeExistingGroup": "Upgrade an Existing Group",
"createNewGroup": "Create a New Group",
"yourParty": "Your Party",
"previouslyUpgradedGroup": "Previously upgraded Group",
"inviteOthersForAdditional": "Invite others to your Group for an additional",
"perMember": "per member",
"additionalMembersProrated": "Additional members invited during the month will be added to the next billing cycle's total as a pro-rated charge.",
"oneMember": "1 member",
"membersCount": "<%= count %> members",
"pendingCount": "(<%= count %> pending)",
"upgradeCancelsPendingInvites": "Upgrading your Party will cancel all pending invites"
}
+3 -3
View File
@@ -92,9 +92,9 @@
"paymentMethods": "Purchase using",
"paymentSuccessful": "Your payment was successful!",
"paymentYouReceived": "You received:",
"paymentYouSentGems": "You sent <strong><%- name %></strong>:",
"paymentYouSentSubscription": "You sent <strong><%- name %></strong><br> a <%= months %> month(s) Habitica subscription.",
"paymentYouSentSubscriptionG1G1": "You sent <strong><%- name %></strong><br> a <%= months %> month(s) Habitica subscription, and the same subscription was applied to your account for our Gift One Get One promotion!",
"paymentYouSentGems": "You sent <strong><%= name %></strong>:",
"paymentYouSentSubscription": "You sent <strong><%= name %></strong><br> a <%= months %> month(s) Habitica subscription.",
"paymentYouSentSubscriptionG1G1": "You sent <strong><%= name %></strong><br> a <%= months %> month(s) Habitica subscription, and the same subscription was applied to your account for our Gift One Get One promotion!",
"paymentSubBilling": "Your subscription will be billed <strong>$<%= amount %></strong> every <strong><%= months %> months</strong>.",
"groupsPaymentSubBilling": "Your next billing date is <strong><%= renewalDate %></strong>.",
"paymentSubBillingWithMethod": "Your subscription will be billed<br><strong>$<%= amount %>.00 USD</strong> every <strong><%= months %> months</strong> via <strong><%= paymentMethod %></strong>",
+1 -1
View File
@@ -5,7 +5,7 @@
"keepIt": "Keep It",
"removeIt": "Remove It",
"brokenChallenge": "Broken Challenge Link: this task was part of a challenge, but the challenge (or group) has been deleted. What to do with the orphan tasks?",
"challengeCompleted": "This challenge has been completed, and the winner was <span class=\"badge\"><%- user %></span>! What to do with the orphan tasks?",
"challengeCompleted": "This challenge has been completed, and the winner was <span class=\"badge\"><%= user %></span>! What to do with the orphan tasks?",
"unsubChallenge": "Broken Challenge Link: this task was part of a challenge, but you have unsubscribed from the challenge. What to do with the orphan tasks?",
"challenges": "Challenges",
"endDate": "Ends",
+1 -1
View File
@@ -190,7 +190,7 @@
"messages": "Messages",
"emptyMessagesLine1": "You don't have any messages",
"emptyMessagesLine2": "Send a message to start a conversation with your Party members or another Habitica player! You can send a new message to a user by visiting their profile and clicking the \"Message\" button.",
"userSentMessage": "<span class=\"notification-bold\"><%- user %></span> sent you a message",
"userSentMessage": "<span class=\"notification-bold\"><%= user %></span> sent you a message",
"letsgo": "Let's Go!",
"selected": "Selected",
"howManyToBuy": "How many would you like to purchase?",
+16 -16
View File
@@ -24,14 +24,14 @@
"userId": "User ID",
"invite": "Invite",
"leave": "Leave",
"invitedToParty": "You were invited to join the Party <span class=\"notification-bold\"><%- party %></span>",
"invitedToPrivateGuild": "You were invited to join the private Group <span class=\"notification-bold\"><%- guild %></span>",
"invitedToPublicGuild": "You were invited to join the Group <span class=\"notification-bold-blue\"><%- guild %></span>",
"invitedToParty": "You were invited to join the Party <span class=\"notification-bold\"><%= party %></span>",
"invitedToPrivateGuild": "You were invited to join the private Group <span class=\"notification-bold\"><%= guild %></span>",
"invitedToPublicGuild": "You were invited to join the Group <span class=\"notification-bold-blue\"><%= guild %></span>",
"invitationAcceptedHeader": "Your Invitation has been Accepted",
"invitationAcceptedBody": "<%= username %> accepted your invitation to <%= groupName %>!",
"systemMessage": "System Message",
"newMsgGuild": "<span class=\"notification-bold-blue\"><%- name %></span> has new posts",
"newMsgParty": "Your Party, <span class=\"notification-bold-blue\"><%- name %></span>, has new posts",
"newMsgGuild": "<span class=\"notification-bold-blue\"><%= name %></span> has new posts",
"newMsgParty": "Your Party, <span class=\"notification-bold-blue\"><%= name %></span>, has new posts",
"chat": "Chat",
"sendChat": "Send Chat",
"group": "Group",
@@ -151,14 +151,14 @@
"onlyGroupLeaderCanEditTasks": "Not authorised to manage tasks!",
"onlyGroupTasksCanBeAssigned": "Only group tasks can be assigned",
"assignedTo": "Assigned to",
"assignedToUser": "Assigned: <strong>@<%- userName %></strong>",
"assignedToUser": "Assigned: <strong>@<%= userName %></strong>",
"assignedToMembers": "<%= userCount %> users",
"assignedToYouAndMembers": "<strong>You</strong>, <%= userCount %> users",
"youAreAssigned": "Assigned: <strong>you</strong>",
"taskIsUnassigned": "This task is unassigned",
"confirmUnClaim": "Are you sure you want to unclaim this task?",
"confirmNeedsWork": "Are you sure you want to mark this task as needing work?",
"userRequestsApproval": "<strong><%- userName %></strong> requests approval",
"userRequestsApproval": "<strong><%= userName %></strong> requests approval",
"userCountRequestsApproval": "<strong><%= userCount %> members</strong> request approval",
"youAreRequestingApproval": "You are requesting approval",
"chatPrivilegesRevoked": "You cannot do this because your chat privileges have been removed. For details or to ask if your privileges can be returned, please email our Community Manager at admin@habitica.com or ask your parent or guardian to email them. Please include your @Username in the email. If a moderator has already told you that your chat ban is temporary, you do not need to send an email.",
@@ -168,9 +168,9 @@
"claim": "Claim Task",
"removeClaim": "Remove Claim",
"onlyGroupLeaderCanManageSubscription": "Only the group leader can manage the group's subscription",
"yourTaskHasBeenApproved": "Your task <span class=\"notification-green notification-bold\"><%- taskText %></span> has been approved.",
"taskNeedsWork": "<span class=\"notification-bold\"><%- taskText %></span> was unchecked by <span class=\"notification-bold\">@<%- managerName %></span>. Your rewards for completing the task were reverted.",
"userHasRequestedTaskApproval": "<span class=\"notification-bold\"><%- user %></span> requests approval for <span class=\"notification-bold\"><%- taskName %></span>",
"yourTaskHasBeenApproved": "Your task <span class=\"notification-green notification-bold\"><%= taskText %></span> has been approved.",
"taskNeedsWork": "<span class=\"notification-bold\"><%= taskText %></span> was unchecked by <span class=\"notification-bold\">@<%= managerName %></span>. Your rewards for completing the task were reverted.",
"userHasRequestedTaskApproval": "<span class=\"notification-bold\"><%= user %></span> requests approval for <span class=\"notification-bold\"><%= taskName %></span>",
"approve": "Approve",
"approveTask": "Approve Task",
"needsWork": "Needs Work",
@@ -183,8 +183,8 @@
"userIsClamingTask": "`<%= username %> has claimed:` <%= task %>",
"approvalRequested": "Approval Requested",
"cantDeleteAssignedGroupTasks": "Can't delete group tasks that are assigned to you.",
"groupPlanUpgraded": "<strong><%- groupName %></strong> was successfully upgraded to a Group Plan!",
"groupPlanCreated": "<strong><%- groupName %></strong> was created!",
"groupPlanUpgraded": "<strong><%= groupName %></strong> was successfully upgraded to a Group Plan!",
"groupPlanCreated": "<strong><%= groupName %></strong> was created!",
"onlyGroupLeaderCanInviteToGroupPlan": "Only the group leader can invite users to a group with a subscription.",
"paymentDetails": "Payment Details",
"aboutToJoinCancelledGroupPlan": "You are about to join a group with a cancelled plan. You will NOT receive a free subscription.",
@@ -322,8 +322,8 @@
"pmReported": "Thank you for reporting this message.",
"groupActivityNotificationTitle": "<%= user %> posted in <%= group %>",
"suggestedGroup": "Suggested because youre new to Habitica.",
"taskClaimed": "<%- userName %> has claimed the task <span class=\"notification-bold\"><%- taskText %></span>.",
"youHaveBeenAssignedTask": "<%- managerName %> has assigned you the task <span class=\"notification-bold\"><%- taskText %></span>.",
"taskClaimed": "<%= userName %> has claimed the task <span class=\"notification-bold\"><%= taskText %></span>.",
"youHaveBeenAssignedTask": "<%= managerName %> has assigned you the task <span class=\"notification-bold\"><%= taskText %></span>.",
"blockedToSendToThisUser": "You can't send to this player because you have blocked this player.",
"PMDisabled": "Disable Private Messages",
"userWithUsernameOrUserIdNotFound": "Username or User ID not found.",
@@ -335,7 +335,7 @@
"PMCanNotReply": "You can not reply to this conversation",
"newPartyPlaceholder": "Enter your Party's name.",
"claimRewards": "Claim Rewards",
"assignedDateAndUser": "Assigned by @<%- username %> on <%= date %>",
"assignedDateAndUser": "Assigned by @<%= username %> on <%= date %>",
"assignedDateOnly": "Assigned on <strong><%= date %></strong>",
"managerNotes": "Manager's Notes",
"thisTaskApproved": "This task was approved",
@@ -350,7 +350,7 @@
"giftMessageTooLong": "The maximum length for gift messages is <%= maxGiftMessageLength %>.",
"selectSubscription": "Select Subscription",
"blockYourself": "You cannot block yourself",
"invitedToPartyBy": "<a href=\"/profile/<%- userId %>\" target=\"_blank\">@<%- userName %></a> has invited you to join the Party <span class=\"notification-bold\"><%- party %></span>",
"invitedToPartyBy": "<a href=\"/profile/<%= userId %>\" target=\"_blank\">@<%= userName %></a> has invited you to join the Party <span class=\"notification-bold\"><%= party %></span>",
"challengeBannedSlurs": "Your Challenge contains a slur which violates Habiticas community guidelines and your chat and Challenge creation privileges have been revoked. Contact admin@habitica.com for more information.",
"challengeBannedWords": "Your Challenge contains one or more swear words or references to an adult topic. Please edit your Challenge so you can save it. You must remove the word, not just censor it.",
"challengeBannedSlursPrivate": "Your Challenge contains a slur which violates Habitica's community guidelines. Please remove it in order to save your Challenge.",
+3 -3
View File
@@ -82,8 +82,8 @@
"paymentMethods": "Purchase using",
"paymentSuccessful": "Your payment was successful!",
"paymentYouReceived": "You received:",
"paymentYouSentGems": "You sent <strong><%- name %></strong>:",
"paymentYouSentSubscription": "You sent <strong><%- name %></strong><br> a <%= months %> month(s) Habitica subscription.",
"paymentYouSentGems": "You sent <strong><%= name %></strong>:",
"paymentYouSentSubscription": "You sent <strong><%= name %></strong><br> a <%= months %> month(s) Habitica subscription.",
"paymentSubBilling": "Your subscription will be billed <strong>$<%= amount %></strong> every <strong><%= months %> months</strong>.",
"success": "Success!",
"classGear": "Class Gear",
@@ -129,5 +129,5 @@
"sellItems": "Sell Items",
"customizationsShopText": "Want to change up your style? You came to the right place! We stock the freshest looks to fit the season.",
"notAvailable": "This item isn't available.",
"paymentYouSentSubscriptionG1G1": "You sent <strong><%- name %></strong><br> a <%= months %> month Habitica subscription, and the same subscription was applied to your account for our Gift One Get One promotion!"
"paymentYouSentSubscriptionG1G1": "You sent <strong><%= name %></strong><br> a <%= months %> month Habitica subscription, and the same subscription was applied to your account for our Gift One Get One promotion!"
}
+1 -1
View File
@@ -5,7 +5,7 @@
"keepIt": "Conservarla",
"removeIt": "Eliminarla",
"brokenChallenge": "Enlace al desafío interrumpido: esta tarea formaba parte de un desafío, pero el desafío (o el grupo) se ha eliminado. ¿Qué hacemos con las tareas del desafío?",
"challengeCompleted": "Este desafío ha finalizado y el ganador es ¡<span class=\"badge\"><%- user %></span>! ¿Qué hacemos con las tareas del desafío?",
"challengeCompleted": "Este desafío ha finalizado y el ganador es ¡<span class=\"badge\"><%= user %></span>! ¿Qué hacemos con las tareas del desafío?",
"unsubChallenge": "Enlace al desafío interrumpido: esta tarea formaba parte de un desafío, pero ya no participas en él. ¿Qué hacemos con las tareas del desafío?",
"challenges": "Desafíos",
"endDate": "Concluye",
+1 -1
View File
@@ -190,7 +190,7 @@
"messages": "Mensajes",
"emptyMessagesLine1": "No tienes ningún mensaje",
"emptyMessagesLine2": "Envía un mensaje para empezar una conversación con un miembro de tu Equipo o otro jugador de Habitica",
"userSentMessage": "<span class=\"notification-bold\"><%- user %></span> te ha enviado un mensaje",
"userSentMessage": "<span class=\"notification-bold\"><%= user %></span> te ha enviado un mensaje",
"letsgo": "¡Vamos!",
"selected": "Seleccionado",
"howManyToBuy": "¿Cuántos te gustaría comprar?",
+16 -16
View File
@@ -24,14 +24,14 @@
"userId": "Número de Usuario",
"invite": "Invitar",
"leave": "Salir",
"invitedToParty": "Has sido invitado a unirte al Equipo <span class=\"notification-bold\"><%- party %></span>",
"invitedToPrivateGuild": "Has sido invitado a unirte al Grupo privado <span class=\"notification-bold\"><%- guild %></span>",
"invitedToPublicGuild": "Has sido invitado a unirte al Grupo <span class=\"notification-bold-blue\"><%- guild %></span>",
"invitedToParty": "Has sido invitado a unirte al Equipo <span class=\"notification-bold\"><%= party %></span>",
"invitedToPrivateGuild": "Has sido invitado a unirte al Grupo privado <span class=\"notification-bold\"><%= guild %></span>",
"invitedToPublicGuild": "Has sido invitado a unirte al Grupo <span class=\"notification-bold-blue\"><%= guild %></span>",
"invitationAcceptedHeader": "Tu Invitación ha sido Aceptada",
"invitationAcceptedBody": "¡<%= username %> ha aceptado tu invitación a <%= groupName %>!",
"systemMessage": "Mensaje del sistema",
"newMsgGuild": "<span class=\"notification-bold-blue\"><%- name %></span> tiene nuevos mensajes",
"newMsgParty": "Tu Equipo, <span class=\"notification-bold-blue\"><%- name %></span>, tiene nuevos mensajes",
"newMsgGuild": "<span class=\"notification-bold-blue\"><%= name %></span> tiene nuevos mensajes",
"newMsgParty": "Tu Equipo, <span class=\"notification-bold-blue\"><%= name %></span>, tiene nuevos mensajes",
"chat": "Chat",
"sendChat": "Enviar Chat",
"group": "Grupo",
@@ -151,14 +151,14 @@
"onlyGroupLeaderCanEditTasks": "¡No estás autorizado para manejar las tareas!",
"onlyGroupTasksCanBeAssigned": "Sólo pueden ser asignadas tareas del grupo",
"assignedTo": "Asignado a",
"assignedToUser": "Asignado: <strong>@<%- userName %></strong>",
"assignedToUser": "Asignado: <strong>@<%= userName %></strong>",
"assignedToMembers": "<%= userCount %> usuarios",
"assignedToYouAndMembers": "<strong>Tú</strong>, <%= userCount %> usuarios",
"youAreAssigned": "Asignado: <strong>tú</strong>",
"taskIsUnassigned": "Esta tarea está sin asignar",
"confirmUnClaim": "¿Estás seguro de querer cancelar esta tarea?",
"confirmNeedsWork": "¿Estás seguro de querer marcar esta tarea como trabajo necesario?",
"userRequestsApproval": "<strong><%- userName %></strong> requieren aprobación",
"userRequestsApproval": "<strong><%= userName %></strong> requieren aprobación",
"userCountRequestsApproval": "<strong><%= userCount %> members</strong> miembros requieren aprobación",
"youAreRequestingApproval": "Estás solicitando aprobación",
"chatPrivilegesRevoked": "No puedes hacer esto porque tus privilegios de chat han sido removidos. Para obtener detalles o preguntar si tus privilegios pueden ser devueltos, por favor envía un correo a nuestro Community Manager vía admin@habitica.com o pide a tus padres o tutor que lo hagan. Por favor incluye tu @NombreDeUsuario en el correo. Si un moderador ya te ha dicho que tu exclusión del chat es temporal, no necesitas mandar un correo.",
@@ -168,9 +168,9 @@
"claim": "Reclamar Tarea",
"removeClaim": "Eliminar Reclamación",
"onlyGroupLeaderCanManageSubscription": "Solo el lider de grupo puede manejar las subscripciones de grupo",
"yourTaskHasBeenApproved": "Tu tarea <span class=\"notification-green notification-bold\"><%- taskText %></span> ha sido aprobada.",
"taskNeedsWork": "<span class=\"notification-bold\"><%- taskText %></span> ha sido desmarcada por <span class=\"notification-bold\">@<%- managerName %></span>. Las recompensas por completar la tarea se han revertido.",
"userHasRequestedTaskApproval": "<span class=\"notification-bold\"><%- user %></span> pide aprobación para <span class=\"notification-bold\"><%- taskName %></span>",
"yourTaskHasBeenApproved": "Tu tarea <span class=\"notification-green notification-bold\"><%= taskText %></span> ha sido aprobada.",
"taskNeedsWork": "<span class=\"notification-bold\"><%= taskText %></span> ha sido desmarcada por <span class=\"notification-bold\">@<%= managerName %></span>. Las recompensas por completar la tarea se han revertido.",
"userHasRequestedTaskApproval": "<span class=\"notification-bold\"><%= user %></span> pide aprobación para <span class=\"notification-bold\"><%= taskName %></span>",
"approve": "Aprobar",
"approveTask": "Aprobar Tarea",
"needsWork": "Necesita Trabajo",
@@ -183,8 +183,8 @@
"userIsClamingTask": "\"<%= username %> ha reclamado:\" <%= task %>",
"approvalRequested": "Aprobación Solicitada",
"cantDeleteAssignedGroupTasks": "No puedes borrar tareas de grupo que tienes asignadas.",
"groupPlanUpgraded": "¡A <strong><%- groupName %></strong>se le mejoró a un Plan de Grupo!",
"groupPlanCreated": "¡El grupo <strong><%- groupName %></strong> fue creado!",
"groupPlanUpgraded": "¡A <strong><%= groupName %></strong>se le mejoró a un Plan de Grupo!",
"groupPlanCreated": "¡El grupo <strong><%= groupName %></strong> fue creado!",
"onlyGroupLeaderCanInviteToGroupPlan": "Sólo el líder del grupo puede invitar usuarios a un grupo con una suscripción activa.",
"paymentDetails": "Detalles de pago",
"aboutToJoinCancelledGroupPlan": "Estás a punto de unirte a un grupo con un plan cancelado. NO recibirás una subscripción gratuita.",
@@ -322,8 +322,8 @@
"pmReported": "Gracias por reportar este mensaje.",
"groupActivityNotificationTitle": "<%= user %> publicó en <%= group %>",
"suggestedGroup": "Sugerido porque eres nuevo en Habitica.",
"taskClaimed": "<%- userName %> ha reclamado la tarea <span class=\"notification-bold\"><%- taskText %></span>.",
"youHaveBeenAssignedTask": "<%- managerName %> te ha asignado la tarea <span class=\"notification-bold\"><%- taskText %></span>.",
"taskClaimed": "<%= userName %> ha reclamado la tarea <span class=\"notification-bold\"><%= taskText %></span>.",
"youHaveBeenAssignedTask": "<%= managerName %> te ha asignado la tarea <span class=\"notification-bold\"><%= taskText %></span>.",
"blockedToSendToThisUser": "No puedes enviárselo a este jugador porque lo has bloqueado.",
"PMDisabled": "Desactivar mensajes privados",
"newPartyPlaceholder": "Ingresa el nombre de tu Equipo.",
@@ -336,7 +336,7 @@
"PMCanNotReply": "No puedes responder a esta conversación",
"unassigned": "Sin asignar",
"claimRewards": "Reclama recompensas",
"assignedDateAndUser": "Asignada por @<%- username %> en <%= date %>",
"assignedDateAndUser": "Asignada por @<%= username %> en <%= date %>",
"assignedDateOnly": "Asignada el <strong><%= date %></strong>",
"managerNotes": "Notas del administrador",
"bannedWordsAllowedDetail": "Con esta opción seleccionada, se permitirá el uso de palabras vetadas en este Grupo.",
@@ -364,7 +364,7 @@
"youEmphasized": "<strong>Tú</strong>",
"newGroupsWhatsNew": "Comprueba qué hay de nuevo:",
"newGroupsBullet02": "Cualquiera puede completar una tarea sin asignar",
"invitedToPartyBy": "<a href=\"/profile/<%- userId %>\" target=\"_blank\">@<%- userName %></a>te ha invitado a su Equipo<span class=\"notification-bold\"><%- party %></span>",
"invitedToPartyBy": "<a href=\"/profile/<%= userId %>\" target=\"_blank\">@<%= userName %></a>te ha invitado a su Equipo<span class=\"notification-bold\"><%= party %></span>",
"newGroupsBullet03": "Para facilitar la colaboración, las tareas compartidas se reinician al mismo tiempo para todos los participantes",
"tavernDiscontinuedDetail": "Debido a una serie de factores, incluidos los cambios en la forma en que nuestra base de jugadores interactúa con Habitica, los recursos necesarios para mantener estos espacios se volvieron desproporcionados en relación con el número de personas que participan en ellos e insostenibles a largo plazo.",
"newGroupsBullet09": "Una tarea compartida puede desmarcarse para indicar que aún necesita trabajo",
+3 -3
View File
@@ -82,8 +82,8 @@
"paymentMethods": "Comprar con",
"paymentSuccessful": "¡El pago se llevó a cabo con éxito!",
"paymentYouReceived": "Has recibido:",
"paymentYouSentGems": "Has enviado a <strong><%- name %></strong>:",
"paymentYouSentSubscription": "Has mandado a <strong><%- name %></strong><br> una suscripción de Habitica de <%= months %> mes/es.",
"paymentYouSentGems": "Has enviado a <strong><%= name %></strong>:",
"paymentYouSentSubscription": "Has mandado a <strong><%= name %></strong><br> una suscripción de Habitica de <%= months %> mes/es.",
"paymentSubBilling": "Por tu suscripción, abonarás <strong><%= amount %> $</strong> cada <strong><%= months %> meses</strong>.",
"success": "¡Éxito!",
"classGear": "Equipo de clase",
@@ -129,5 +129,5 @@
"sellItems": "Vender objetos",
"notAvailable": "Este artículo no está disponible.",
"customizationsShopText": "¿Necesitas un cambio de estilo? ¡Has llegado al lugar adecuado! Tenemos los complementos más actuales para que encajes en la temporada.",
"paymentYouSentSubscriptionG1G1": "Enviaste a <strong><%- name %></strong><br> una suscripción a Habitica de <%= months %> mes(es), ¡y la misma suscripción se aplicó a tu cuenta para nuestra promoción Regala uno y llévate otro!"
"paymentYouSentSubscriptionG1G1": "Enviaste a <strong><%= name %></strong><br> una suscripción a Habitica de <%= months %> mes(es), ¡y la misma suscripción se aplicó a tu cuenta para nuestra promoción Regala uno y llévate otro!"
}
+1 -1
View File
@@ -5,7 +5,7 @@
"keepIt": "Conservarla",
"removeIt": "Eliminarla",
"brokenChallenge": "Enlace al Desafío roto: esta tarea era parte de un desafío pero el desafío (o grupo) ha sido eliminado. ¿Qué hacemos con las tareas huérfanas?",
"challengeCompleted": "Este desafío ha sido completado ¡y el ganador es <span class=\"badge\"><%- user %></span>! ¿Qué hacemos con las tareas huérfanas?",
"challengeCompleted": "Este desafío ha sido completado ¡y el ganador es <span class=\"badge\"><%= user %></span>! ¿Qué hacemos con las tareas huérfanas?",
"unsubChallenge": "Enlace al Desafío roto: esta tarea era parte de un Desafío, pero te has dado de baja del mismo. ¿Qué hacemos con las tareas huérfanas?",
"challenges": "Desafíos",
"endDate": "Termina",
+1 -1
View File
@@ -190,7 +190,7 @@
"messages": "Mensajes",
"emptyMessagesLine1": "No tienes ningún mensaje",
"emptyMessagesLine2": "Puedes enviar un mensaje nuevo a un usuario, visitando su perfil y dando click en el botón \"Mensaje\".",
"userSentMessage": "<span class=\"notification-bold\"><%- user %></span> te envió un mensaje",
"userSentMessage": "<span class=\"notification-bold\"><%= user %></span> te envió un mensaje",
"letsgo": "¡Vamos!",
"selected": "Seleccionado",
"howManyToBuy": "¿Cuántos quieres comprar?",
+15 -15
View File
@@ -24,14 +24,14 @@
"userId": "ID de Usuario",
"invite": "Invitar",
"leave": "Salir",
"invitedToParty": "Has sido invitado a unirte al Equipo <span class=\"notification-bold\"><%- party %></span>",
"invitedToPrivateGuild": "Has sido invitado a unirte al Gremio privado <span class=\"notification-bold\"><%- guild %></span>",
"invitedToPublicGuild": "Has sido invitado a unirte al Gremio <span class=\"notification-bold-blue\"><%- guild %></span>",
"invitedToParty": "Has sido invitado a unirte al Equipo <span class=\"notification-bold\"><%= party %></span>",
"invitedToPrivateGuild": "Has sido invitado a unirte al Gremio privado <span class=\"notification-bold\"><%= guild %></span>",
"invitedToPublicGuild": "Has sido invitado a unirte al Gremio <span class=\"notification-bold-blue\"><%= guild %></span>",
"invitationAcceptedHeader": "Tu invitación ha sido Aceptada",
"invitationAcceptedBody": "¡<%= username %> aceptó tu invitación a <%= groupName %>!",
"systemMessage": "Mensaje de Sistema",
"newMsgGuild": "<span class=\"notification-bold-blue\"><%- name %></span> tiene nuevos anuncios",
"newMsgParty": "Tu Equipo, <span class=\"notification-bold-blue\"><%- name %></span>, tiene nuevos anuncios",
"newMsgGuild": "<span class=\"notification-bold-blue\"><%= name %></span> tiene nuevos anuncios",
"newMsgParty": "Tu Equipo, <span class=\"notification-bold-blue\"><%= name %></span>, tiene nuevos anuncios",
"chat": "Chat",
"sendChat": "Enviar Chat",
"group": "Grupo",
@@ -151,14 +151,14 @@
"onlyGroupLeaderCanEditTasks": "¡No autorizado para administrar tareas!",
"onlyGroupTasksCanBeAssigned": "Solo las tareas grupales pueden ser asignadas",
"assignedTo": "Asignar a",
"assignedToUser": "Asignado a <strong><%- userName %></strong>",
"assignedToUser": "Asignado a <strong><%= userName %></strong>",
"assignedToMembers": "Asignado a <strong><%= userCount %> miembros</strong>",
"assignedToYouAndMembers": "Asignado a ti y a <strong><%= userCount %> miembros</strong>",
"youAreAssigned": "Asignado: <strong>tú</strong>",
"taskIsUnassigned": "Esta tarea está sin asignar",
"confirmUnClaim": "¿Estás seguro que no quieres reclamar esta tarea?",
"confirmNeedsWork": "¿Está seguro de que desea marcar esta tarea como necesaria?",
"userRequestsApproval": "<strong><%- userName %></strong> solicita aprobación",
"userRequestsApproval": "<strong><%= userName %></strong> solicita aprobación",
"userCountRequestsApproval": "<strong><%= userCount %> miembros</strong> solicitan aprobación",
"youAreRequestingApproval": "Estás solicitando aprobación",
"chatPrivilegesRevoked": "No puedes hacer esto porque tus privilegios de chat han sido retirados. Para más detalles o para preguntar si tus privilegios pueden ser devueltos, por favor envía un correo a nuestro Administrador de la Comunidad en admin@habitica.com o pide a tus padres o tutores que lo hagan. Por favor incluye tu @Nombredeusuario en el correo. Si un moderador ya te dijo que tu exclusión del chat es temporal, no necesitas enviar un correo.",
@@ -168,9 +168,9 @@
"claim": "Reclamar tarea",
"removeClaim": "Eliminar Reclamo",
"onlyGroupLeaderCanManageSubscription": "Solo el líder del grupo puede administrar la suscripción grupal",
"yourTaskHasBeenApproved": "Tu Tarea <span class=\"notification-green\"><%- taskText %></span>ha sido aprobada.",
"taskNeedsWork": "<span class=\"notification-bold\"><%- managerName %></span> marcado <span class=\"notification-bold\"><%- taskText %></span> como necesitando trabajo adicional.",
"userHasRequestedTaskApproval": "<span class=\"notification-bold\"><%- user %></span> solicita aprovación para <span class=\"notification-bold\"><%- taskName %></span>",
"yourTaskHasBeenApproved": "Tu Tarea <span class=\"notification-green\"><%= taskText %></span>ha sido aprobada.",
"taskNeedsWork": "<span class=\"notification-bold\"><%= managerName %></span> marcado <span class=\"notification-bold\"><%= taskText %></span> como necesitando trabajo adicional.",
"userHasRequestedTaskApproval": "<span class=\"notification-bold\"><%= user %></span> solicita aprovación para <span class=\"notification-bold\"><%= taskName %></span>",
"approve": "Aprobar",
"approveTask": "Aprovar Tarea",
"needsWork": "Requiere Trabajo",
@@ -183,8 +183,8 @@
"userIsClamingTask": "`<%= username %> ha reclamado:` <%= task %>",
"approvalRequested": "Aprobación Solicitada",
"cantDeleteAssignedGroupTasks": "No puedes eliminar tareas grupales que te han sido asignadas.",
"groupPlanUpgraded": "¡<strong><%- groupName %></strong> fue elevado a un Plan Grupal!",
"groupPlanCreated": "¡El grupo <strong><%- groupName %></strong> fue creado!",
"groupPlanUpgraded": "¡<strong><%= groupName %></strong> fue elevado a un Plan Grupal!",
"groupPlanCreated": "¡El grupo <strong><%= groupName %></strong> fue creado!",
"onlyGroupLeaderCanInviteToGroupPlan": "Solo el líder del grupo puede invitar a usuarios a un grupo con una suscripción.",
"paymentDetails": "Detalles de pago",
"aboutToJoinCancelledGroupPlan": "Estás a punto de unirte a un grupo con un plan cancelado. NO recibirás una suscripción gratuita.",
@@ -329,7 +329,7 @@
"PMUserDoesNotReceiveMessages": "Este usuario ya no recibe mensajes privados",
"PMCanNotReply": "No puedes contestar a esta conversación",
"PMDisabled": "Desactivar Mensajes Privados",
"taskClaimed": "<%- userName %> ha reclamado la tarea <span class=\"notification-bold\"><%- taskText %></span>.",
"taskClaimed": "<%= userName %> ha reclamado la tarea <span class=\"notification-bold\"><%= taskText %></span>.",
"thisTaskApproved": "Esta tarea fue aprovada",
"chooseTeamMember": "Escoge un miembro del equipo",
"unassigned": "Sin asignar",
@@ -337,9 +337,9 @@
"managerNotes": "Notas de Administrador",
"groupActivityNotificationTitle": "<%= user %> publicó en <%= group %>",
"suggestedGroup": "Sugerido porque eres nuev@ en Habitica.",
"youHaveBeenAssignedTask": "<%- managerName %> te ha asignado la tarea <span class=\"notification-bold\"><%- taskText %></span>.",
"youHaveBeenAssignedTask": "<%= managerName %> te ha asignado la tarea <span class=\"notification-bold\"><%= taskText %></span>.",
"onlyPrivateGuildsCanUpgrade": "Solo los gremios privados pueden actualizarse a un plan grupal.",
"assignedDateAndUser": "Asignado por <strong>@<%- username %></strong> en <strong><%= date %></strong>",
"assignedDateAndUser": "Asignado por <strong>@<%= username %></strong> en <strong><%= date %></strong>",
"assignedDateOnly": "Asignado en <strong><%= date %></strong>",
"bannedWordsAllowedDetail": "Con esta opción seleccionada, se permitirá el uso de palabras prohibidas en este Gremio.",
"bannedWordsAllowed": "Permitir palabras prohibidas",
+2 -2
View File
@@ -82,8 +82,8 @@
"paymentMethods": "Comprar usando",
"paymentSuccessful": "¡Tu pago fue exitoso!",
"paymentYouReceived": "Recibiste:",
"paymentYouSentGems": "Enviaste <strong><%- name %></strong>:",
"paymentYouSentSubscription": "Enviaste una suscripción a Habitica de <%= months %> mes(es) para <strong><%- name %></strong>.",
"paymentYouSentGems": "Enviaste <strong><%= name %></strong>:",
"paymentYouSentSubscription": "Enviaste una suscripción a Habitica de <%= months %> mes(es) para <strong><%= name %></strong>.",
"paymentSubBilling": "Tu suscripción será cobrada <strong>$<%= amount %></strong> cada <strong><%= months %> mes(es)</strong>.",
"success": "¡Éxito!",
"classGear": "Equipamiento de Clase",
+1 -1
View File
@@ -109,7 +109,7 @@
"cannotMakeChallenge": "Vous ne pouvez pas créer de Défis publics car votre compte n'a pour le moment pas les accès aux discussions. Merci de contacter admin@habitica.com pour plus d'informations.",
"messageChallengeFlagOfficial": "Les Défis Officiels ne peuvent pas être signalés.",
"deleteChallengeRefundDescription": "Si vous supprimez ce Défi, les Gemmes investies vous seront restituées et les Tâches du Défis ne disparaîtront pas des Tâches des participant·e·s.",
"challengeCompletedDescription": "<%- user %> a remporté le Défi ! Que souhaitez-vous faire des tâches restantes ?",
"challengeCompletedDescription": "<%= user %> a remporté le Défi ! Que souhaitez-vous faire des tâches restantes ?",
"brokenTaskDescription": "Cette tâche faisait partie d'un défi mais en a été supprimé. Que souhaitez-vous faire ?",
"brokenChallengeDescription": "Cette tâche faisait partie d'un défi mais celui-ci (ou le groupe) a été supprimé. Que souhaitez-vous faire des tâches restantes ?",
"brokenTask": "Lien Inexistant vers Défi"
+1 -1
View File
@@ -190,7 +190,7 @@
"messages": "Messages",
"emptyMessagesLine1": "Vous n'avez aucun message",
"emptyMessagesLine2": "Envoyez un message pour démarrer une conversation avec les membres de votre Équipe ou un·e autre joueu·r·se d'Habitica",
"userSentMessage": "<span class=\"notification-bold\"><%- user %></span> vous a envoyé un message",
"userSentMessage": "<span class=\"notification-bold\"><%= user %></span> vous a envoyé un message",
"letsgo": "Allons-y !",
"selected": "Selectionné",
"howManyToBuy": "Combien voulez-vous en acquérir ?",
+16 -16
View File
@@ -24,14 +24,14 @@
"userId": "ID d'utilisateur",
"invite": "Inviter",
"leave": "Quitter",
"invitedToParty": "Vous avez reçu une invitation à rejoindre l'équipe <span class=\"notification-bold\"><%- party %></span>",
"invitedToPrivateGuild": "Vous avez reçu une invitation à rejoindre le Groupe <span class=\"notification-bold\"><%- guild %></span>",
"invitedToPublicGuild": "Vous avez reçu une invitation à rejoindre le Groupe <span class=\"notification-bold-blue\"><%- guild %></span>",
"invitedToParty": "Vous avez reçu une invitation à rejoindre l'équipe <span class=\"notification-bold\"><%= party %></span>",
"invitedToPrivateGuild": "Vous avez reçu une invitation à rejoindre le Groupe <span class=\"notification-bold\"><%= guild %></span>",
"invitedToPublicGuild": "Vous avez reçu une invitation à rejoindre le Groupe <span class=\"notification-bold-blue\"><%= guild %></span>",
"invitationAcceptedHeader": "Votre invitation a été acceptée",
"invitationAcceptedBody": "<%= username %> a accepté votre invitation pour <%= groupName %> !",
"systemMessage": "Message du système",
"newMsgGuild": "<span class=\"notification-bold-blue\"><%- name %></span> a de nouveaux messages",
"newMsgParty": "Votre équipe, <span class=\"notification-bold-blue\"><%- name %></span>, a de nouveaux messages",
"newMsgGuild": "<span class=\"notification-bold-blue\"><%= name %></span> a de nouveaux messages",
"newMsgParty": "Votre équipe, <span class=\"notification-bold-blue\"><%= name %></span>, a de nouveaux messages",
"chat": "Discussion",
"sendChat": "Envoyer un Message",
"group": "Groupe",
@@ -151,14 +151,14 @@
"onlyGroupLeaderCanEditTasks": "Pas d'autorisation pour gérer les tâches !",
"onlyGroupTasksCanBeAssigned": "Seules les tâches de groupe peuvent être assignées",
"assignedTo": "Attribué à",
"assignedToUser": "Attribué : <strong><%- userName %></strong>",
"assignedToUser": "Attribué : <strong><%= userName %></strong>",
"assignedToMembers": "<%= userCount %> membres",
"assignedToYouAndMembers": "<strong>Vous</strong>, <%= userCount %> membres",
"youAreAssigned": "Assigné : <strong>vous</strong>",
"taskIsUnassigned": "Cette tâche n'est pas attribuée",
"confirmUnClaim": "Voulez-vous ne plus réclamer cette tâche ?",
"confirmNeedsWork": "Voulez-vous vraiment marquer cette tâche comme nécessitant du travail supplémentaire ?",
"userRequestsApproval": "<strong><%- userName %></strong> demande une approbation",
"userRequestsApproval": "<strong><%= userName %></strong> demande une approbation",
"userCountRequestsApproval": "<strong><%= userCount %> membres</strong> demandent une approbation",
"youAreRequestingApproval": "Vous demandez une approbation",
"chatPrivilegesRevoked": "Vous ne pouvez faire cela car vos privilèges de discussion ont été supprimés. Pour des détails ou pour demander si vos privilèges peuvent être rétablis, veuillez envoyer un message à notre responsable de la communauté à admin@habitica.com ou demandez à vos parents ou tuteur de leur écrire. Veuillez inclure votre @pseudo dans l'email. Si l'équipe de modération vous a déjà prévenu que votre révocation est temporaire, vous n'avez pas besoin d'envoyer d'email.",
@@ -168,9 +168,9 @@
"claim": "Revendiquer une tâche",
"removeClaim": "Enlever la demande",
"onlyGroupLeaderCanManageSubscription": "Seul le responsable du groupe peut gérer l'abonnement du groupe",
"yourTaskHasBeenApproved": "Votre tâche <span class=\"notification-green notification-bold\"><%- taskText %></span> a été approuvée.",
"taskNeedsWork": "<span class=\"notification-bold\"><%- taskText %></span> a été décoché par <span class=\"notification-bold\">@<%- managerName %></span>. Votre récompense pour avoir réalisé cette tâche a été enlevée.",
"userHasRequestedTaskApproval": "<span class=\"notification-bold\"><%- user %></span> a demandé une approbation pour <span class=\"notification-bold\"><%- taskName %></span>",
"yourTaskHasBeenApproved": "Votre tâche <span class=\"notification-green notification-bold\"><%= taskText %></span> a été approuvée.",
"taskNeedsWork": "<span class=\"notification-bold\"><%= taskText %></span> a été décoché par <span class=\"notification-bold\">@<%= managerName %></span>. Votre récompense pour avoir réalisé cette tâche a été enlevée.",
"userHasRequestedTaskApproval": "<span class=\"notification-bold\"><%= user %></span> a demandé une approbation pour <span class=\"notification-bold\"><%= taskName %></span>",
"approve": "Approuver",
"approveTask": "Approuver la tâche",
"needsWork": "Nécessite du travail supplémentaire",
@@ -183,8 +183,8 @@
"userIsClamingTask": "`<%= username %> a revendiqué : `<%= task %>",
"approvalRequested": "Approbation demandée",
"cantDeleteAssignedGroupTasks": "Vous ne pouvez pas supprimer les tâches de groupe qui vous ont été attribuées.",
"groupPlanUpgraded": "<strong><%- groupName %></strong> a été correctement amélioré en plan de groupe !",
"groupPlanCreated": "<strong><%- groupName %></strong> a été créé !",
"groupPlanUpgraded": "<strong><%= groupName %></strong> a été correctement amélioré en plan de groupe !",
"groupPlanCreated": "<strong><%= groupName %></strong> a été créé !",
"onlyGroupLeaderCanInviteToGroupPlan": "Seul le chef de groupe peut inviter des utilisateurs dans un groupe avec abonnement.",
"paymentDetails": "Détails du paiement",
"aboutToJoinCancelledGroupPlan": "Vous êtes sur le point de rejoindre un groupe dont l'abonnement a été annulé. Vous ne recevrez PAS d'abonnement gratuit.",
@@ -321,8 +321,8 @@
"allAssignedCompletion": "Toutes - Terminée lorsque toutes les personnes avec cette tâche la terminent",
"pmReported": "Merci d'avoir signalé ce message.",
"suggestedGroup": "Suggérer parce que vous venez d'arriver sur Habitica.",
"taskClaimed": "<%- userName %> a revendiqué la tâche <span class=\"notification-bold\"><%- taskText %></span>.",
"youHaveBeenAssignedTask": "<%- managerName %> vous a assigné la tâche <span class=\"notification-bold\"><%- taskText %></span>.",
"taskClaimed": "<%= userName %> a revendiqué la tâche <span class=\"notification-bold\"><%= taskText %></span>.",
"youHaveBeenAssignedTask": "<%= managerName %> vous a assigné la tâche <span class=\"notification-bold\"><%= taskText %></span>.",
"groupActivityNotificationTitle": "<%= user %> a écrit dans <%= group %>",
"blockedToSendToThisUser": "Vous ne pouvez pas envoyer de message à ce membre, car vous l'avez bloqué.",
"PMDisabled": "Désactiver les messages privés",
@@ -335,7 +335,7 @@
"PMCanNotReply": "Vous ne pouvez pas répondre à cette conversation",
"newPartyPlaceholder": "Indiquez le nom de votre Équipe.",
"claimRewards": "Demander les récompenses",
"assignedDateAndUser": "Assigné par @<%- username %> le <%= date %>",
"assignedDateAndUser": "Assigné par @<%= username %> le <%= date %>",
"assignedDateOnly": "Assigné le <strong><%= date %></strong>",
"managerNotes": "Notes de la personne responsable",
"thisTaskApproved": "Cette tâche a été approuvée",
@@ -391,7 +391,7 @@
"nameStar": "Nom*",
"nameStarText": "Ajouter un titre",
"descriptionOptional": "Description",
"invitedToPartyBy": "<a href=\"/profile/<%- userId %>\" target=\"_blank\">@<%- userName %></a> vous a invité à rejoindre l'équipe <span class=\"notification-bold\"><%- party %></span>",
"invitedToPartyBy": "<a href=\"/profile/<%= userId %>\" target=\"_blank\">@<%= userName %></a> vous a invité à rejoindre l'équipe <span class=\"notification-bold\"><%= party %></span>",
"findMorePartyMembers": "Trouver plus de Membres",
"invitedToYourParty": "<strong>a été invité·e dans votre Équipe !</strong>&nbsp;&nbsp;Clique pour annuler",
"partyExceedsInvitesLimit": "Une Équipe ne peut avoir que <%= maxInvites %> invitations en attente.",
+3 -3
View File
@@ -82,8 +82,8 @@
"paymentMethods": "Moyens de paiement",
"paymentSuccessful": "Le paiement a été réalisé !",
"paymentYouReceived": "Vous avez reçu :",
"paymentYouSentGems": "Vous avez envoyé à <strong><%- name %></strong> :",
"paymentYouSentSubscription": "Vous avez envoyé à <strong><%- name %></strong><br> un abonnement de <%= months %> mois sur Habitica.",
"paymentYouSentGems": "Vous avez envoyé à <strong><%= name %></strong> :",
"paymentYouSentSubscription": "Vous avez envoyé à <strong><%= name %></strong><br> un abonnement de <%= months %> mois sur Habitica.",
"paymentSubBilling": "Votre abonnement sera débité de <strong><%= amount %>$</strong> chaque <strong><%= months %> mois</strong>.",
"success": "Victoire !",
"classGear": "Équipement de classe",
@@ -129,5 +129,5 @@
"sellItems": "Vendre des objets",
"notAvailable": "Cet objet n'est pas disponible.",
"customizationsShopText": "Vous voulez changer de style ? Vous êtes au bon endroit ! Nous fournissons des tenues de saison branchées.",
"paymentYouSentSubscriptionG1G1": "Vous avez offert une abonnement Habitica de <%= months %> mois à <strong><%- name %></strong><br>, et vous profiterez du même abonnement sur votre compte grâce à l'offre Offrez-en Un Recevez-en Un !"
"paymentYouSentSubscriptionG1G1": "Vous avez offert une abonnement Habitica de <%= months %> mois à <strong><%= name %></strong><br>, et vous profiterez du même abonnement sur votre compte grâce à l'offre Offrez-en Un Recevez-en Un !"
}
+1 -1
View File
@@ -5,7 +5,7 @@
"keepIt": "להשאיר אותה",
"removeIt": "להסיר אותה",
"brokenChallenge": "קישור אתגר שבור: משימה זו לביצוע הייתה חלק מאתגר, אך האתגר (או הקבוצה) נמחק. מה ברצונך לעשות עם המשימות שנותרו?",
"challengeCompleted": "אתגר זה הושלם, והניצחון בידי <span class=\"badge\"><%- user %></span>! מה לעשות עם המשימות שנותרו?",
"challengeCompleted": "אתגר זה הושלם, והניצחון בידי <span class=\"badge\"><%= user %></span>! מה לעשות עם המשימות שנותרו?",
"unsubChallenge": "קישור אתגר שבור: משימה זו לביצוע הייתה חלק מאתגר, אבל פרשת ממנו. מה ברצונך לעשות עם המשימות שנותרו?",
"challenges": "אתגרים",
"endDate": "סופים",
+1 -1
View File
@@ -190,7 +190,7 @@
"messages": "Messages",
"emptyMessagesLine1": "You don't have any messages",
"emptyMessagesLine2": "Send a message to start a conversation!",
"userSentMessage": "<span class=\"notification-bold\"><%- user %></span> sent you a message",
"userSentMessage": "<span class=\"notification-bold\"><%= user %></span> sent you a message",
"letsgo": "קדימה!",
"selected": "נבחרו",
"howManyToBuy": "כמה ברצונך לרכוש?",
+15 -15
View File
@@ -24,14 +24,14 @@
"userId": "מזהה משתמש",
"invite": "הזמנה",
"leave": "עזיבה",
"invitedToParty": "קיבלת זימון להצטרף לחבורה <span class=\"notification-bold\"><%- party %></span>",
"invitedToPrivateGuild": "הוזמנת להצטרף לגילדה הפרטית <span class=\"notification-bold\"><%- guild %></span>",
"invitedToPublicGuild": "הוזמת להצטרף לגילדה <span class=\"notification-bold-blue\"><%- guild %></span>",
"invitedToParty": "קיבלת זימון להצטרף לחבורה <span class=\"notification-bold\"><%= party %></span>",
"invitedToPrivateGuild": "הוזמנת להצטרף לגילדה הפרטית <span class=\"notification-bold\"><%= guild %></span>",
"invitedToPublicGuild": "הוזמת להצטרף לגילדה <span class=\"notification-bold-blue\"><%= guild %></span>",
"invitationAcceptedHeader": "ההזמה שלך התקבלה",
"invitationAcceptedBody": "<%= username %> אישר את ההזמנה שלך ל<%= groupName %>!",
"systemMessage": "הודעת מערכת",
"newMsgGuild": "יש פוסטים חדשים בגילדה <span class=\"notification-bold-blue\"><%- name %></span>",
"newMsgParty": "יש בחבורה שלך, <span class=\"notification-bold-blue\"><%- name %></span>, הודעות חדשות",
"newMsgGuild": "יש פוסטים חדשים בגילדה <span class=\"notification-bold-blue\"><%= name %></span>",
"newMsgParty": "יש בחבורה שלך, <span class=\"notification-bold-blue\"><%= name %></span>, הודעות חדשות",
"chat": "שיחה",
"sendChat": "שילחו הודעה",
"group": "קבוצה",
@@ -151,14 +151,14 @@
"onlyGroupLeaderCanEditTasks": "אין הרשאה לנהל משימות!",
"onlyGroupTasksCanBeAssigned": "ניתן לשייך רק משימות של הקבוצה",
"assignedTo": "שיוך אל",
"assignedToUser": "Assigned to <%- userName %>",
"assignedToUser": "Assigned to <%= userName %>",
"assignedToMembers": "Assigned to <%= userCount %> members",
"assignedToYouAndMembers": "Assigned to you and <%= userCount %> members",
"youAreAssigned": "שויך לך",
"taskIsUnassigned": "המשימה הזאת לא שויכה",
"confirmUnClaim": "אתם בטוחים שתרצו להתנער מהמשימה הזאת?",
"confirmNeedsWork": "אתם בטוחים שאתם רוצים לציין את המשימה הזאת כדורשת עבודה?",
"userRequestsApproval": "<%- userName %> requests approval",
"userRequestsApproval": "<%= userName %> requests approval",
"userCountRequestsApproval": "<%= userCount %> members request approval",
"youAreRequestingApproval": "אתם מבקשים אישור",
"chatPrivilegesRevoked": "You cannot do that because your chat privileges have been revoked.",
@@ -168,9 +168,9 @@
"claim": "Claim",
"removeClaim": "להסיר את הבעלות על המשימה",
"onlyGroupLeaderCanManageSubscription": "רק מנהיג הקבוצה יכול לנהל את ההרשמה לקבוצה",
"yourTaskHasBeenApproved": "Your task <span class=\"notification-green\"><%- taskText %></span> has been approved.",
"taskNeedsWork": "<span class=\"notification-bold\"><%- taskText %></span> סומן כלא גמור על ידי <span class=\"notification-bold\">@<%- managerName %></span>. הפרסים על השלמת המשימה התבטלו.",
"userHasRequestedTaskApproval": "<span class=\"notification-bold\"><%- user %></span> מבקש אישור על <span class=\"notification-bold\"><%- taskName %></span>",
"yourTaskHasBeenApproved": "Your task <span class=\"notification-green\"><%= taskText %></span> has been approved.",
"taskNeedsWork": "<span class=\"notification-bold\"><%= taskText %></span> סומן כלא גמור על ידי <span class=\"notification-bold\">@<%= managerName %></span>. הפרסים על השלמת המשימה התבטלו.",
"userHasRequestedTaskApproval": "<span class=\"notification-bold\"><%= user %></span> מבקש אישור על <span class=\"notification-bold\"><%= taskName %></span>",
"approve": "לאשר",
"approveTask": "לאשר משימה",
"needsWork": "דרושה עוד עבודה",
@@ -183,8 +183,8 @@
"userIsClamingTask": "`<%= username %> שייך לעצמו את:` <%= task %>",
"approvalRequested": "בקשה לאישור נשלחה",
"cantDeleteAssignedGroupTasks": "לא ניתן למחוק משימות של חבורה המשויכות אליכם.",
"groupPlanUpgraded": "<strong><%- groupName %></strong> שודרגה בהצלחה לתוכנית קבוצות!",
"groupPlanCreated": "<strong><%- groupName %></strong> נוצרה!",
"groupPlanUpgraded": "<strong><%= groupName %></strong> שודרגה בהצלחה לתוכנית קבוצות!",
"groupPlanCreated": "<strong><%= groupName %></strong> נוצרה!",
"onlyGroupLeaderCanInviteToGroupPlan": "רק מנהיג הקבוצה יכול להזמין משתמשים לקבוצה עם מנוי.",
"paymentDetails": "פרטי תשלום",
"aboutToJoinCancelledGroupPlan": "אתם עומדים להצטרף לקבוצה עם מנוי מבוטל. אתם לא הולכים לקבל מנוי בחינם.",
@@ -339,7 +339,7 @@
"userWithUsernameOrUserIdNotFound": "לא נמצא שם משתמש או מזהה משתמש.",
"selectSubscription": "בחירת מינוי",
"usernameOrUserId": "נא לציין @שם_משתמש או מזהה משתמש",
"invitedToPartyBy": "<a href=\"/profile/<%- userId %>\" target=\"_blank\">@<%- userName %></a> הזמין אותך להצטרף לחבורה <span class=\"notification-bold\"><%- party %></span>",
"invitedToPartyBy": "<a href=\"/profile/<%= userId %>\" target=\"_blank\">@<%= userName %></a> הזמין אותך להצטרף לחבורה <span class=\"notification-bold\"><%= party %></span>",
"PMUnblockUserToSendMessages": "הסירו את החסימה של המשתמש כדי להמשיך לשלוח או לקבל הודעות.",
"PMUserDoesNotReceiveMessages": "המשתמש כבר לא מקבל הודעות פרטיות",
"sendTotal": "סך הכל:",
@@ -351,9 +351,9 @@
"sendGiftLabel": "תרצו לשלוח הודעת מתנה?",
"onlyPrivateGuildsCanUpgrade": "ניתן לשדרג רק גילדות פרטיות לתוכנית הקבוצות.",
"assignTo": "לשייך",
"taskClaimed": "<%- userName %> לקח בעלות על המשימה <span class=\"notification-bold\"><%- taskText %></span>.",
"taskClaimed": "<%= userName %> לקח בעלות על המשימה <span class=\"notification-bold\"><%= taskText %></span>.",
"partyExceedsInvitesLimit": "חבורה יכולה להיות עם <%= maxInvites %> מוזמנים לכל היותר.",
"chooseTeamMember": "חיפוש חבר צוות",
"youHaveBeenAssignedTask": "<%- managerName %> שייך אותך למשימה<span class=\"notification-bold\"><%- taskText %></span>.",
"youHaveBeenAssignedTask": "<%= managerName %> שייך אותך למשימה<span class=\"notification-bold\"><%= taskText %></span>.",
"challengeBannedSlurs": "האתגר שלך כולל מילה שמפרה את הנחיות הקהילה של הביטיקה, לכן פריבילגיות הצ'ט והאתגרים שלך נשללו. צרו קשר בכתובת המייל admin@habitica.com למידע נוסף."
}
+1 -1
View File
@@ -82,7 +82,7 @@
"paymentMethods": "רכשו באמצעות",
"paymentSuccessful": "התשלום נעשה בהצלחה!",
"paymentYouReceived": "קיבלת:",
"paymentYouSentGems": "שלחת <strong><%- name %></strong>:",
"paymentYouSentGems": "שלחת <strong><%= name %></strong>:",
"paymentYouSentSubscription": "",
"paymentSubBilling": "",
"success": "הצלחה!",
+1 -1
View File
@@ -5,7 +5,7 @@
"keepIt": "Zadrži",
"removeIt": "Ukloni",
"brokenChallenge": "Neispravna poveznica Izazova: ovaj je zadatak bio dio izazova, ali je izazov (ili grupa) izbrisan/a. Što učiniti s tim osamljenim zadacima?",
"challengeCompleted": "Ovaj je izazov završen, a pobjednik je bio <span class=\"badge\"><%- user %></span>! Što učiniti s tim osamljenim zadacima?",
"challengeCompleted": "Ovaj je izazov završen, a pobjednik je bio <span class=\"badge\"><%= user %></span>! Što učiniti s tim osamljenim zadacima?",
"unsubChallenge": "Neispravna poveznica Izazova: ovaj je zadatak bio dio izazova, ali ste se odjavili s izazova. Što učiniti s tim osamljenim zadacima?",
"challenges": "Izazovi",
"endDate": "Završava",
+1 -1
View File
@@ -190,7 +190,7 @@
"messages": "Poruke",
"emptyMessagesLine1": "Nemate novih poruka",
"emptyMessagesLine2": "Pošaljite poruku da započnete razgovor sa članovima vaše Grupe ili drugim Habitica igračem",
"userSentMessage": "<span class=\"notification-bold\"><%- user %></span> su vam poslali poruku",
"userSentMessage": "<span class=\"notification-bold\"><%= user %></span> su vam poslali poruku",
"letsgo": "Idemo!",
"selected": "Odabrano",
"howManyToBuy": "Koliko biste željeli kupiti?",
+12 -12
View File
@@ -24,14 +24,14 @@
"userId": "Korisnički ID",
"invite": "Pozovi",
"leave": "Napusti",
"invitedToParty": "Bio/la si pozvan/a priključiti se Družini <span class=\"notification-bold\"><%- party %></span>",
"invitedToPrivateGuild": "Bio/la si pozvan/a priključiti se privatnom Cehu <span class=\"notification-bold\"><%- guild %></span>",
"invitedToPublicGuild": "Bio/la si pozvan/a priključiti se Cehu <span class=\"notification-bold-blue\"><%- guild %></span>",
"invitedToParty": "Bio/la si pozvan/a priključiti se Družini <span class=\"notification-bold\"><%= party %></span>",
"invitedToPrivateGuild": "Bio/la si pozvan/a priključiti se privatnom Cehu <span class=\"notification-bold\"><%= guild %></span>",
"invitedToPublicGuild": "Bio/la si pozvan/a priključiti se Cehu <span class=\"notification-bold-blue\"><%= guild %></span>",
"invitationAcceptedHeader": "Tvoj poziv je prihvaćen",
"invitationAcceptedBody": "<%= username %> je prihvatio/la tvoj poziv u <%= groupName %>!",
"systemMessage": "Poruka sustava",
"newMsgGuild": "Nove objave u: <span class=\"notification-bold-blue\"><%- name %></span>",
"newMsgParty": "Imaš novih objava u tvojoj Družini, <span class=\"notification-bold-blue\"><%- name %></span>",
"newMsgGuild": "Nove objave u: <span class=\"notification-bold-blue\"><%= name %></span>",
"newMsgParty": "Imaš novih objava u tvojoj Družini, <span class=\"notification-bold-blue\"><%= name %></span>",
"chat": "Chat",
"sendChat": "Pošalji chat",
"group": "Grupa",
@@ -151,14 +151,14 @@
"onlyGroupLeaderCanEditTasks": "Nemaš autorizaciju za upravljanje zadacima!",
"onlyGroupTasksCanBeAssigned": "Samo se grupni zadaci mogu dodijeliti",
"assignedTo": "Dodijeljeno",
"assignedToUser": "Dodijeljeno <%- userName %>",
"assignedToUser": "Dodijeljeno <%= userName %>",
"assignedToMembers": "Dodijeljeno <%= userCount %> članova",
"assignedToYouAndMembers": "Dodijeljeno je tebi i još <%= userCount %> članova",
"youAreAssigned": "Ovaj zadatak je dodijeljen tebi",
"taskIsUnassigned": "Ovaj zadatak nije nikome dodijeljen",
"confirmUnClaim": "Jesi li siguran/na da se želiš odreći ovog zadatka?",
"confirmNeedsWork": "Jesi li siguran/na da želiš označiti ovaj zadatak kao jedan kojemu je potrebna dorada?",
"userRequestsApproval": "<%- userName %> traži odobrenje",
"userRequestsApproval": "<%= userName %> traži odobrenje",
"userCountRequestsApproval": "<%= userCount %> korisnika traži odobrenje",
"youAreRequestingApproval": "Tražiš odobrenje",
"chatPrivilegesRevoked": "To ne možeš napraviti jer su ti oduzete povlastice chata.",
@@ -168,9 +168,9 @@
"claim": "Prisvoji",
"removeClaim": "Ukloni zahtjev",
"onlyGroupLeaderCanManageSubscription": "Samo vođa grupe može upravljati pretplatom grupe",
"yourTaskHasBeenApproved": "Tvoj zadatak <span class=\"notification-green\"><%- taskText %></span> je odobren.",
"taskNeedsWork": "<span class=\"notification-bold\"><%- managerName %></span> je označio/la <span class=\"notification-bold\"><%- taskText %></span> kao zadatak kojem je potrebna dorada.",
"userHasRequestedTaskApproval": "<span class=\"notification-bold\"><%- user %></span> traži odobrenje za zadatak <span class=\"notification-bold\"><%- taskName %></span>",
"yourTaskHasBeenApproved": "Tvoj zadatak <span class=\"notification-green\"><%= taskText %></span> je odobren.",
"taskNeedsWork": "<span class=\"notification-bold\"><%= managerName %></span> je označio/la <span class=\"notification-bold\"><%= taskText %></span> kao zadatak kojem je potrebna dorada.",
"userHasRequestedTaskApproval": "<span class=\"notification-bold\"><%= user %></span> traži odobrenje za zadatak <span class=\"notification-bold\"><%= taskName %></span>",
"approve": "Odobri",
"approveTask": "Odobri Zadatak",
"needsWork": "Potrebna dorada",
@@ -183,8 +183,8 @@
"userIsClamingTask": "`<%= username %> je preuzeo/la:` <%= task %>",
"approvalRequested": "Zatraženo je odobrenje",
"cantDeleteAssignedGroupTasks": "Ne možeš brisati grupne zadatke koji su dodijeljeni tebi.",
"groupPlanUpgraded": "<strong><%- groupName %></strong> je nadograđen/a na grupni plan!",
"groupPlanCreated": "<strong><%- groupName %></strong> je stvoren/a!",
"groupPlanUpgraded": "<strong><%= groupName %></strong> je nadograđen/a na grupni plan!",
"groupPlanCreated": "<strong><%= groupName %></strong> je stvoren/a!",
"onlyGroupLeaderCanInviteToGroupPlan": "Samo vođa grupe može pozivati korisnike u grupu s pretplatom.",
"paymentDetails": "Detalji plaćanja",
"aboutToJoinCancelledGroupPlan": "Upravo ćeš se pridružiti grupi s otkazanim planom. NEĆEŠ dobiti besplatnu pretplatu.",
+3 -3
View File
@@ -82,8 +82,8 @@
"paymentMethods": "Kupite koristeći",
"paymentSuccessful": "Vaše plaćanje je bilo uspješno!",
"paymentYouReceived": "Dobili ste:",
"paymentYouSentGems": "Poslali ste <strong><%- name %></strong>:",
"paymentYouSentSubscription": "Poslali ste <%- name %> pretplatu na Habiticu u trajanju od <%= months %> mjesec(i).",
"paymentYouSentGems": "Poslali ste <strong><%= name %></strong>:",
"paymentYouSentSubscription": "Poslali ste <%= name %> pretplatu na Habiticu u trajanju od <%= months %> mjesec(i).",
"paymentSubBilling": "Vaša pretplata će biti naplaćena $<%= amount %> svakih <%= months %> mjeseci.",
"success": "Uspjeh!",
"classGear": "Oprema Klase",
@@ -123,7 +123,7 @@
"groupsPaymentSubBilling": "Vaš sljedeći datum naplate je <%= renewalDate %>.",
"paymentCanceledDisputes": "Poslali smo potvrdu otkazivanja na vaš email. Ako ne vidite poruku, molimo kontaktirajte nas kako biste spriječili buduće sporove oko naplate.",
"helpSupportHabitica": "Pomozite Podržati Habiticu",
"paymentYouSentSubscriptionG1G1": "Poslali ste <%- name %> pretplatu na Habiticu u trajanju od <%= months %> mjesec(a), a ista pretplata je primijenjena i na vaš račun u sklopu naše promocije \"Pokloni Jednu i Dobij Jednu\"!",
"paymentYouSentSubscriptionG1G1": "Poslali ste <%= name %> pretplatu na Habiticu u trajanju od <%= months %> mjesec(a), a ista pretplata je primijenjena i na vaš račun u sklopu naše promocije \"Pokloni Jednu i Dobij Jednu\"!",
"paymentSubBillingWithMethod": "Vaša pretplata će biti naplaćena $<%= amount %>.00 USD svakih <%= months %> mjeseci putem <%= paymentMethod %>",
"groupsPaymentAutoRenew": "Ova pretplata će se automatski obnavljati dok se ne otkaže. Ako trebate otkazati, možete to učiniti u kartici Naplata Grupe.",
"paymentAutoRenew": "Ova pretplata će se automatski obnavljati dok se ne otkaže. Ako trebate otkazati pretplatu, možete to učiniti u svojim postavkama.",
+1 -1
View File
@@ -5,7 +5,7 @@
"keepIt": "Megtartom",
"removeIt": "Eltávolítom",
"brokenChallenge": "Érvénytelen kihívás link: ez a feladat egy kihívás része volt, de a kihívást (vagy a csoportot) törölték. Mit tegyünk a megmaradó feladatokkal?",
"challengeCompleted": "Ez a kihívás befejeződött és a győztes <span class=\"badge\"><%- user %></span> lett! Mit tegyünk a megmaradó feladatokkal?",
"challengeCompleted": "Ez a kihívás befejeződött és a győztes <span class=\"badge\"><%= user %></span> lett! Mit tegyünk a megmaradó feladatokkal?",
"unsubChallenge": "Érvénytelen kihívás link: ez a feladat egy kihívás része volt, de leiratkoztál róla. Mit tegyünk a megmaradó feladatokkal?",
"challenges": "Kihívások",
"endDate": "Vége",
+1 -1
View File
@@ -190,7 +190,7 @@
"messages": "Üzenetek",
"emptyMessagesLine1": "Nincsenek üzeneteid",
"emptyMessagesLine2": "Küldj üzenetet, hogy beszélgetést kezdeményezz a csapattársaiddal vagy egy másik Habitica játékossal",
"userSentMessage": "<span class=\"notification-bold\"><%- user %></span> üzenetet küldött neked",
"userSentMessage": "<span class=\"notification-bold\"><%= user %></span> üzenetet küldött neked",
"letsgo": "Gyerünk!",
"selected": "Kiválasztva",
"howManyToBuy": "Hány darabot szeretnél vásárolni?",
+16 -16
View File
@@ -24,14 +24,14 @@
"userId": "Felhasználói azonosító",
"invite": "Meghívás",
"leave": "Kilépés",
"invitedToParty": "Meghívtak a(z) <span class=\"notification-bold\"><%- party %></span> csapatba",
"invitedToPrivateGuild": "Meghívtak a(z) <span class=\"notification-bold\"><%- guild %></span> privát csoportba",
"invitedToPublicGuild": "Meghívtak a(z) <span class=\"notification-bold-blue\"><%- guild %></span> csoportba",
"invitedToParty": "Meghívtak a(z) <span class=\"notification-bold\"><%= party %></span> csapatba",
"invitedToPrivateGuild": "Meghívtak a(z) <span class=\"notification-bold\"><%= guild %></span> privát csoportba",
"invitedToPublicGuild": "Meghívtak a(z) <span class=\"notification-bold-blue\"><%= guild %></span> csoportba",
"invitationAcceptedHeader": "A meghívásodat elfogadták",
"invitationAcceptedBody": "<%= username %> elfogadta a meghívásodat a(z) <%= groupName %> csoportba!",
"systemMessage": "Rendszerüzenet",
"newMsgGuild": "<span class=\"notification-bold-blue\"><%- name %></span> új bejegyzéseket tartalmaz",
"newMsgParty": "A csapatod, <span class=\"notification-bold-blue\"><%- name %></span>, új bejegyzéseket tartalmaz",
"newMsgGuild": "<span class=\"notification-bold-blue\"><%= name %></span> új bejegyzéseket tartalmaz",
"newMsgParty": "A csapatod, <span class=\"notification-bold-blue\"><%= name %></span>, új bejegyzéseket tartalmaz",
"chat": "Csevegés",
"sendChat": "Üzenet küldése",
"group": "Csoport",
@@ -151,14 +151,14 @@
"onlyGroupLeaderCanEditTasks": "Nincs jogosultságod a feladatok kezelésére!",
"onlyGroupTasksCanBeAssigned": "Csak csoportos feladatok oszthatók ki",
"assignedTo": "Kiosztva",
"assignedToUser": "Kiosztva: <strong>@<%- userName %></strong>",
"assignedToUser": "Kiosztva: <strong>@<%= userName %></strong>",
"assignedToMembers": "<%= userCount %> felhasználó",
"assignedToYouAndMembers": "<strong>Te</strong> és <%= userCount %> felhasználó",
"youAreAssigned": "Kiosztva: <strong>te</strong>",
"taskIsUnassigned": "Ennek a feladatnak nincs kijelölt felelőse",
"confirmUnClaim": "Biztosan visszavonod ezt a feladatot?",
"confirmNeedsWork": "Biztosan megjelölöd ezt a feladatot további munkát igénylőként?",
"userRequestsApproval": "<strong><%- userName %></strong> jóváhagyást kér",
"userRequestsApproval": "<strong><%= userName %></strong> jóváhagyást kér",
"userCountRequestsApproval": "<strong><%= userCount %> tag</strong> jóváhagyást kér",
"youAreRequestingApproval": "Jóváhagyást kértél",
"chatPrivilegesRevoked": "Ezt nem teheted meg, mert a csevegési jogosultságaid el lettek távolítva. Ha részletekre van szükséged vagy szeretnéd visszakérni a jogosultságaidat, írj e-mailt a közösségi menedzserünknek az admin@habitica.com címre vagy kérd meg a szülődet vagy gondviselődet, hogy írjon helyetted. Az e-mailben tüntesd fel a @felhasználónevedet. Ha egy moderátor már tájékoztatott arról, hogy a csevegési tiltásod ideiglenes, nem szükséges e-mailt küldened.",
@@ -168,9 +168,9 @@
"claim": "Feladat igénylése",
"removeClaim": "Feladat visszavonása",
"onlyGroupLeaderCanManageSubscription": "Csak a csoportvezető kezelheti a csoport előfizetését",
"yourTaskHasBeenApproved": "A feladatod <span class=\"notification-green notification-bold\"><%- taskText %></span> jóvá lett hagyva.",
"taskNeedsWork": "A(z) <span class=\"notification-bold\"><%- taskText %></span> feladatot <span class=\"notification-bold\">@<%- managerName %></span> visszavonta. A feladat teljesítéséért kapott jutalmaid visszavonásra kerültek.",
"userHasRequestedTaskApproval": "<span class=\"notification-bold\"><%- user %></span> jóváhagyást kért a(z) <span class=\"notification-bold\"><%- taskName %></span> feladathoz",
"yourTaskHasBeenApproved": "A feladatod <span class=\"notification-green notification-bold\"><%= taskText %></span> jóvá lett hagyva.",
"taskNeedsWork": "A(z) <span class=\"notification-bold\"><%= taskText %></span> feladatot <span class=\"notification-bold\">@<%= managerName %></span> visszavonta. A feladat teljesítéséért kapott jutalmaid visszavonásra kerültek.",
"userHasRequestedTaskApproval": "<span class=\"notification-bold\"><%= user %></span> jóváhagyást kért a(z) <span class=\"notification-bold\"><%= taskName %></span> feladathoz",
"approve": "Jóváhagyás",
"approveTask": "Feladat jóváhagyása",
"needsWork": "További munkát igényel",
@@ -183,8 +183,8 @@
"userIsClamingTask": "`<%= username %> igényelte:` <%= task %>",
"approvalRequested": "Jóváhagyás kérése",
"cantDeleteAssignedGroupTasks": "A hozzád rendelt csoportfeladatokat nem törölheted.",
"groupPlanUpgraded": "A(z) <strong><%- groupName %></strong> sikeresen frissült egy csoportos előfizetésre!",
"groupPlanCreated": "A(z) <strong><%- groupName %></strong> létrejött!",
"groupPlanUpgraded": "A(z) <strong><%= groupName %></strong> sikeresen frissült egy csoportos előfizetésre!",
"groupPlanCreated": "A(z) <strong><%= groupName %></strong> létrejött!",
"onlyGroupLeaderCanInviteToGroupPlan": "Csak a csoportvezető hívhat meg felhasználókat egy előfizetéssel rendelkező csoportba.",
"paymentDetails": "Fizetési adatok",
"aboutToJoinCancelledGroupPlan": "Egy olyan csoporthoz készülsz csatlakozni, amelynek az előfizetése már le lett mondva. NEM kapsz ingyenes előfizetést.",
@@ -322,7 +322,7 @@
"challengeBannedSlurs": "A kihívásod egy sértő kifejezést tartalmaz, amely megsérti Habitica közösségi irányelveit, ezért a csevegési és kihíváslétrehozási jogosultságaidat visszavontuk. További információért lépj kapcsolatba velünk az admin@habitica.com címen.",
"challengeBannedWords": "A kihívásod egy vagy több tiltott szót vagy felnőtt témára való utalást tartalmaz. Kérlek, szerkeszd a kihívást, hogy el tudd menteni. A tiltott szót teljesen el kell távolítanod, nem elég csak cenzúrázni.",
"challengeBannedSlursPrivate": "A kihívásod egy sértő kifejezést tartalmaz, amely megsérti Habitica közösségi irányelveit. Kérlek, távolítsd el, hogy el tudd menteni a kihívást.",
"invitedToPartyBy": "<a href=\"/profile/<%- userId %>\" target=\"_blank\">@<%- userName %></a> meghívott a(z) <span class=\"notification-bold\"><%- party %></span> csapatba",
"invitedToPartyBy": "<a href=\"/profile/<%= userId %>\" target=\"_blank\">@<%= userName %></a> meghívott a(z) <span class=\"notification-bold\"><%= party %></span> csapatba",
"PMDisabled": "Privát üzenetek tiltása",
"editGuild": "Csoport szerkesztése",
"joinParty": "Csatlakozás",
@@ -391,7 +391,7 @@
"nextPaymentMethod": "Következő: Fizetés",
"groupActivityNotificationTitle": "<%= user %> posztolt itt: <%= group %>",
"assignedDateOnly": "Kiosztva ekkor: <strong><%= date %></strong>",
"assignedDateAndUser": "Kiosztotta: @<%- username %> ekkor: <%= date %>",
"assignedDateAndUser": "Kiosztotta: @<%= username %> ekkor: <%= date %>",
"viewStatus": "Állapot",
"lastCompleted": "Utoljára teljesítve",
"newGroupsWelcome": "Üdvözlünk az új Megosztott feladat panelen!",
@@ -413,8 +413,8 @@
"managerNotes": "Menedzseri jegyzetek",
"sendGiftLabel": "Szeretnél üzenetet küldeni az ajándékkal?",
"unassigned": "Nincs hozzárendelve",
"youHaveBeenAssignedTask": "<%- managerName %> hozzád rendelte a következő feladatot: <span class=\"notification-bold\"><%- taskText %></span>.",
"taskClaimed": "<%- userName %> igényelte a következő feladatot: <span class=\"notification-bold\"><%- taskText %></span>.",
"youHaveBeenAssignedTask": "<%= managerName %> hozzád rendelte a következő feladatot: <span class=\"notification-bold\"><%= taskText %></span>.",
"taskClaimed": "<%= userName %> igényelte a következő feladatot: <span class=\"notification-bold\"><%= taskText %></span>.",
"chatTemporarilyUnavailable": "A csevegés átmenetileg nem érhető el. Kérlek, próbáld meg később.",
"blockedUser": "<strong>Letiltottad ezt a játékost.</strong>&nbsp;Nem tud neked privát üzenetet küldeni, de továbbra is látni fogod a bejegyzéseit.",
"bannedUser": "<strong>Ez a játékos ki lett tiltva.</strong>",
+3 -3
View File
@@ -82,8 +82,8 @@
"paymentMethods": "Fizetés ezzel:",
"paymentSuccessful": "A fizetés sikeres volt!",
"paymentYouReceived": "A következőhöz jutottál hozzá:",
"paymentYouSentGems": "<strong><%- name %></strong> felhasználónak küldtél:",
"paymentYouSentSubscription": "Elküldtél <strong><%- name %></strong> felhasználónak<br> egy <%= months %> hónapos Habitica előfizetést.",
"paymentYouSentGems": "<strong><%= name %></strong> felhasználónak küldtél:",
"paymentYouSentSubscription": "Elküldtél <strong><%= name %></strong> felhasználónak<br> egy <%= months %> hónapos Habitica előfizetést.",
"paymentSubBilling": "Az előfizetésed díja <strong>$<%= amount %></strong> lesz minden <strong><%= months %> hónapban</strong>.",
"success": "Sikeres!",
"classGear": "Kaszt felszerelés",
@@ -129,5 +129,5 @@
"limitedAvailabilityDays": "Elérhető még: <%= days %> nap <%= hours %> ó <%= minutes %> p",
"limitedAvailabilityHours": "Elérhető még: <%= hours %> ó <%= minutes %> p",
"limitedAvailabilityMinutes": "Elérhető még: <%= minutes %>p <%= seconds %>mp",
"paymentYouSentSubscriptionG1G1": "Elküldtél <strong><%- name %></strong> felhasználónak<br> egy <%= months %> hónapos Habitica előfizetést, és ugyanez az előfizetés a fiókodhoz is hozzá lett adva az „Vegyél egyet, ajándékozz egyet” akció keretében!"
"paymentYouSentSubscriptionG1G1": "Elküldtél <strong><%= name %></strong> felhasználónak<br> egy <%= months %> hónapos Habitica előfizetést, és ugyanez az előfizetés a fiókodhoz is hozzá lett adva az „Vegyél egyet, ajándékozz egyet” akció keretében!"
}
+1 -1
View File
@@ -109,7 +109,7 @@
"whyReportingChallenge": "Mengapa kamu melapor Tantangan ini?",
"cannotClose": "Tantangan ini tidak dapat ditutup karena satu atau lebih pemain telah melaporkannya sebagai tidak pantas. Anggota staf akan segera menghubungimu dengan instruksi lebih lanjut. Jika lebih dari 48 jam telah berlalu dan kamu belum menerima kabar dari mereka, silakan kirim email ke admin@habitica.com untuk mendapatkan bantuan.",
"resetFlags": "Atur ulang Tanda",
"challengeCompletedDescription": "Pemenangnya <%- user %>! Apa yang harus dilakukan dengan tugas yang tidak lagi terhubung?",
"challengeCompletedDescription": "Pemenangnya <%= user %>! Apa yang harus dilakukan dengan tugas yang tidak lagi terhubung?",
"brokenTaskDescription": "Tugas ini bagian dari sebuah Tantangan, tetapi telah dihapus. Apa yang ingin kamu lakukan?",
"brokenChallengeDescription": "Tugas ini bagian dari sebuah tantangan, tetapi tantangan (atau grup) telah dihapus. Apa yang harus dilakukan dengan tugas yang tidak lagi terhubung?",
"brokenTask": "Tautan Tantangan Rusak"
+1 -1
View File
@@ -190,7 +190,7 @@
"messages": "Pesan",
"emptyMessagesLine1": "Kamu tidak memiliki pesan apapun",
"emptyMessagesLine2": "Kamu dapat memulai sebuah percakapan dengan anggota Kelompokmu atau pengguna lain",
"userSentMessage": "<span class=\"notification-bold\"><%- user %></span> mengirim-mu sebuah pesan",
"userSentMessage": "<span class=\"notification-bold\"><%= user %></span> mengirim-mu sebuah pesan",
"letsgo": "Ayo Pergi!",
"selected": "Dipilih",
"howManyToBuy": "Berapa banyak yang ingin kamu beli?",
+16 -16
View File
@@ -24,14 +24,14 @@
"userId": "ID Pengguna",
"invite": "Undang",
"leave": "Tinggalkan",
"invitedToParty": "Kamu diundang masuk ke Party <span class=\"notification-bold\"><%- party %></span>",
"invitedToPrivateGuild": "Kamu diundang masuk ke Guild pribadi <span class =\"notification-bold\"><%- guild %></span>",
"invitedToPublicGuild": "Kamu diundang masuk ke Guild <span class=\"notification-bold-blue\"><%- guild %></span>",
"invitedToParty": "Kamu diundang masuk ke Party <span class=\"notification-bold\"><%= party %></span>",
"invitedToPrivateGuild": "Kamu diundang masuk ke Guild pribadi <span class =\"notification-bold\"><%= guild %></span>",
"invitedToPublicGuild": "Kamu diundang masuk ke Guild <span class=\"notification-bold-blue\"><%= guild %></span>",
"invitationAcceptedHeader": "Undanganmu telah Diterima",
"invitationAcceptedBody": "<%= username %> menerima undangan kamu ke <%= groupName %>!",
"systemMessage": "Pesan Sistem",
"newMsgGuild": "<span class=\"notification-bold-blue\"><%- name %></span> ada pesan baru",
"newMsgParty": "Party-mu, <span class=\"notification-bold-blue\"><%- name %></span>, ada pesan baru",
"newMsgGuild": "<span class=\"notification-bold-blue\"><%= name %></span> ada pesan baru",
"newMsgParty": "Party-mu, <span class=\"notification-bold-blue\"><%= name %></span>, ada pesan baru",
"chat": "Percakapan",
"sendChat": "Kirim Obrolan",
"group": "Grup",
@@ -151,14 +151,14 @@
"onlyGroupLeaderCanEditTasks": "Tidak berhak untuk mengatur tugas!",
"onlyGroupTasksCanBeAssigned": "Hanya tugas grup yang bisa ditentukan",
"assignedTo": "Ditugaskan kepada",
"assignedToUser": "Ditugaskan kepada <%- userName %>",
"assignedToUser": "Ditugaskan kepada <%= userName %>",
"assignedToMembers": "<%= userCount %> pengguna",
"assignedToYouAndMembers": "Ditugaskan kepadamu dan <%= userCount %> anggota",
"youAreAssigned": "Yang ditugaskan: <strong>kamu</strong>",
"taskIsUnassigned": "Tugas ini belum ditugaskan kepada siapa pun",
"confirmUnClaim": "Apakah anda yakin untuk batal mengambil tugas ini?",
"confirmNeedsWork": "Apakah kamu yakin ingin menandakan tugas ini sebagai membutuhkan kerjaan tambahan?",
"userRequestsApproval": "<%- userName %> meminta izin",
"userRequestsApproval": "<%= userName %> meminta izin",
"userCountRequestsApproval": "<%= userCount %> members request approval",
"youAreRequestingApproval": "Kamu sedang meminta izin",
"chatPrivilegesRevoked": "You cannot do that because your chat privileges have been revoked.",
@@ -168,9 +168,9 @@
"claim": "Klaim",
"removeClaim": "Hapus Klaim",
"onlyGroupLeaderCanManageSubscription": "Hanya ketua grup yang bisa mengatur berlangganan grup",
"yourTaskHasBeenApproved": "Tugasmu <span class=\"notification-green\"><%- taskText %></span> telah disetujui.",
"taskNeedsWork": "<span class=\"notification-bold\"><%- managerName %></span> menandakan <span class=\"notification-bold\"><%- taskText %></span> sebagain memerlukan pekerjaan tambahan.",
"userHasRequestedTaskApproval": "<span class=\"notification-bold\"><%- user %></span> meminta persetujuan untuk tugas <span class=\"notification-bold\"><%- taskName %></span>",
"yourTaskHasBeenApproved": "Tugasmu <span class=\"notification-green\"><%= taskText %></span> telah disetujui.",
"taskNeedsWork": "<span class=\"notification-bold\"><%= managerName %></span> menandakan <span class=\"notification-bold\"><%= taskText %></span> sebagain memerlukan pekerjaan tambahan.",
"userHasRequestedTaskApproval": "<span class=\"notification-bold\"><%= user %></span> meminta persetujuan untuk tugas <span class=\"notification-bold\"><%= taskName %></span>",
"approve": "Terima",
"approveTask": "Setujui Tugas",
"needsWork": "Memerlukan Kerjaan Tambahan",
@@ -183,8 +183,8 @@
"userIsClamingTask": "`<%= username %> mengklaim:` <%= task %>",
"approvalRequested": "Meminta Persetujuan",
"cantDeleteAssignedGroupTasks": "Tidak bisa menghapus tugas grup yang diberikan ke kamu.",
"groupPlanUpgraded": "<strong><%- groupName %></strong> was upgraded to a Group Plan!",
"groupPlanCreated": "<strong><%- groupName %></strong> telah dibuat!",
"groupPlanUpgraded": "<strong><%= groupName %></strong> was upgraded to a Group Plan!",
"groupPlanCreated": "<strong><%= groupName %></strong> telah dibuat!",
"onlyGroupLeaderCanInviteToGroupPlan": "Hanya ketua grup yang bisa mengundang pengguna ke dalam grup yang berlangganan.",
"paymentDetails": "Detail Pembayaran",
"aboutToJoinCancelledGroupPlan": "Kamu akan bergabung ke grup dengan rencana yang dibatalkan. Kamu TIDAK akan menerima gratis berlangganan.",
@@ -321,7 +321,7 @@
"allAssignedCompletion": "Semua - Selesai ketika semua pengguna yang ditetapkan selesai",
"leaveGuild": "Tinggalkan Guild",
"editParty": "Ubah Party",
"invitedToPartyBy": "<a href=\"/profile/<%- userId %>\" target=\"_blank\">@<%- userName %></a> mengundang kamu untuk bergabung dengan Party <span class=\"notification-bold\"><%- party %></span>",
"invitedToPartyBy": "<a href=\"/profile/<%= userId %>\" target=\"_blank\">@<%= userName %></a> mengundang kamu untuk bergabung dengan Party <span class=\"notification-bold\"><%= party %></span>",
"editGuild": "Ubah Guild",
"features": "Fitur",
"PMDisabled": "Nonaktifkan Pesan Pribadi",
@@ -343,7 +343,7 @@
"sendGiftLabel": "Apakah kamu ingin mengirim pesan hadiah?",
"cannotRemoveQuestOwner": "Kamu tidak dapat mengeluarkan pemilik misi yang sedang aktif. Batalkan misi terlebih dahulu.",
"usernameOrUserId": "Masukkan @namapengguna atau ID Pengguna",
"youHaveBeenAssignedTask": "<%- managerName %> telah memberimu tugas <span class=\"notification-bold\"><%- taskText %></span>.",
"youHaveBeenAssignedTask": "<%= managerName %> telah memberimu tugas <span class=\"notification-bold\"><%= taskText %></span>.",
"startPartyDetail": "Mulai party-mu sendiri atau bergabunglah dengan yang sudah ada <br/>untuk melakukan Misi dan meningkatkan motivasimu!",
"giftMessageTooLong": "Panjang maksimum untuk pesan hadiah adalah <%= maxGiftMessageLength %>.",
"questWithOthers": "Lakukan Misi dengan Orang Lain",
@@ -352,7 +352,7 @@
"thisTaskApproved": "Tugas ini disetujui",
"newPartyPlaceholder": "Masukkan nama party-mu.",
"messagePartyLeader": "Kirim Pesan ke Pemimpin Party",
"taskClaimed": "<%- userName %> telah mengklaim tugas <span class=\"notification-bold\"><%- taskText %></span>.",
"taskClaimed": "<%= userName %> telah mengklaim tugas <span class=\"notification-bold\"><%= taskText %></span>.",
"languageSettings": "Pengaturan Bahasa",
"upgradeToGroup": "Tingkatkan ke Grup",
"viewDetails": "Lihat Detail",
@@ -375,7 +375,7 @@
"suggestedGroup": "Disarankan karena kamu baru di Habitica.",
"groupActivityNotificationTitle": "<%= user %> mengirimkan pesan di <%= group %>",
"assignedDateOnly": "Ditetapkan pada tanggal <strong><%= date %></strong>",
"assignedDateAndUser": "Ditetapkan oleh @<%- username %> pada tanggal <%= date %>",
"assignedDateAndUser": "Ditetapkan oleh @<%= username %> pada tanggal <%= date %>",
"newGroupsBullet10c": "<strong>Tetapkan tugas ke beberapa anggota</strong> jika mereka semua harus menyelesaikannya",
"newGroupsVisitFAQ": "Kunjungi <a href='/static/faq#group-plans' target='_blank'>FAQ</a> dari menu dropdown Bantuan untuk panduan selengkapnya.",
"youEmphasized": "<strong>Kamu</strong>",
+3 -3
View File
@@ -82,8 +82,8 @@
"paymentMethods": "Bayar menggunakan",
"paymentSuccessful": "Pembayaranmu berhasil!",
"paymentYouReceived": "Kamu menerima:",
"paymentYouSentGems": "Kamu mengirimkan <strong><%- name %></strong>:",
"paymentYouSentSubscription": "Kamu mengirimkan <strong><%- name %></strong> langganan Habitica selama <%= months %> bulan.",
"paymentYouSentGems": "Kamu mengirimkan <strong><%= name %></strong>:",
"paymentYouSentSubscription": "Kamu mengirimkan <strong><%= name %></strong> langganan Habitica selama <%= months %> bulan.",
"paymentSubBilling": "Berlanggananmu akan ditagih<strong>$<%= amount %></strong> tiap <strong><%= months %> bulan</strong>.",
"success": "Berhasil!",
"classGear": "Perlengkapan Pekerjaan",
@@ -129,5 +129,5 @@
"paymentAutoRenew": "Langganan ini akan diperpanjang secara otomatis hingga dibatalkan. Jika kamu perlu membatalkan langganan ini, kamu dapat melakukannya dari pengaturan.",
"notAvailable": "Barang ini tidak tersedia.",
"customizationsShopText": "Mau ganti gaya? Anda datang ke tempat yang tepat! Kami menawarkan tampilan terkini sesuai musim.",
"paymentYouSentSubscriptionG1G1": "Kamu mengirimkan <strong><%- name %></strong><br> a <%= months %> bulan langganan Habitica, dan langganan yang sama telah dipakai pada akunmu menggunakan promisi kami, Beli Satu Gratis Satu!"
"paymentYouSentSubscriptionG1G1": "Kamu mengirimkan <strong><%= name %></strong><br> a <%= months %> bulan langganan Habitica, dan langganan yang sama telah dipakai pada akunmu menggunakan promisi kami, Beli Satu Gratis Satu!"
}
+1 -1
View File
@@ -5,7 +5,7 @@
"keepIt": "Tienila",
"removeIt": "Rimuovila",
"brokenChallenge": "Collegamento ad una sfida mancante: questa attività era parte di una sfida, ma la sfida (o il gruppo) è stata cancellata. Cosa fare con le attività rimaste?",
"challengeCompleted": "Questa sfida è stata completata, il vincitore è <span class=\"badge\"><%- user %></span>! Cosa fare con le attività rimaste?",
"challengeCompleted": "Questa sfida è stata completata, il vincitore è <span class=\"badge\"><%= user %></span>! Cosa fare con le attività rimaste?",
"unsubChallenge": "Collegamento ad una sfida mancante: questa attività era parte di una sfida, ma ti sei ritirato. Cosa fare con le attività rimaste?",
"challenges": "Sfide",
"endDate": "Fini",
+1 -1
View File
@@ -190,7 +190,7 @@
"messages": "Messaggi",
"emptyMessagesLine1": "Non hai alcun messaggio",
"emptyMessagesLine2": "Invia un messaggio per iniziare una conversazione con i membri della tua Squadra o con un altro giocatore di Habitica",
"userSentMessage": "<span class=\"notification-bold\"><%- user %></span> ti ha scritto un messaggio",
"userSentMessage": "<span class=\"notification-bold\"><%= user %></span> ti ha scritto un messaggio",
"letsgo": "Andiamo!",
"selected": "Selezionato",
"howManyToBuy": "Quanti vorresti comprarne?",
+16 -16
View File
@@ -24,14 +24,14 @@
"userId": "ID Utente",
"invite": "Invita",
"leave": "Abbandona",
"invitedToParty": "Hai ricevuto un invito per unirti alla Squadra <span class=\"notification-bold\"><%- party %></span>",
"invitedToPrivateGuild": "Hai ricevuto un invito per unirti al Gruppo privato <span class=\"notification-bold\"><%- guild %></span>",
"invitedToPublicGuild": "Hai ricevuto un invito per unirti al Gruppo <span class=\"notification-bold-blue\"><%- guild %></span>",
"invitedToParty": "Hai ricevuto un invito per unirti alla Squadra <span class=\"notification-bold\"><%= party %></span>",
"invitedToPrivateGuild": "Hai ricevuto un invito per unirti al Gruppo privato <span class=\"notification-bold\"><%= guild %></span>",
"invitedToPublicGuild": "Hai ricevuto un invito per unirti al Gruppo <span class=\"notification-bold-blue\"><%= guild %></span>",
"invitationAcceptedHeader": "Il tuo invito è stato accettato",
"invitationAcceptedBody": "<%= username %> Ha accettato il tuo invito per <%= groupName %>!",
"systemMessage": "Messaggio di sistema",
"newMsgGuild": "<span class=\"notification-bold-blue\"><%- name %></span> ha nuovi messaggi",
"newMsgParty": "La tua squadra, <span class=\"notification-bold-blue\"><%- name %></span>, ha nuovi messaggi",
"newMsgGuild": "<span class=\"notification-bold-blue\"><%= name %></span> ha nuovi messaggi",
"newMsgParty": "La tua squadra, <span class=\"notification-bold-blue\"><%= name %></span>, ha nuovi messaggi",
"chat": "Chat",
"sendChat": "Invia messaggio",
"group": "Gruppo",
@@ -151,14 +151,14 @@
"onlyGroupLeaderCanEditTasks": "Non autorizzato a modificare i compiti!",
"onlyGroupTasksCanBeAssigned": "Solo le attività del gruppo possono essere assegnate",
"assignedTo": "Assegnato a",
"assignedToUser": "Assegnata: <strong>@<%- userName %></strong>",
"assignedToUser": "Assegnata: <strong>@<%= userName %></strong>",
"assignedToMembers": "<%= userCount %> membri",
"assignedToYouAndMembers": "<strong>Tu</strong>, <%= userCount %> membri",
"youAreAssigned": "Assegnato: <strong>tu</strong>",
"taskIsUnassigned": "Questa attività non è assegnata a nessuno",
"confirmUnClaim": "Vuoi davvero rinunciare a questa attività?",
"confirmNeedsWork": "Vuoi davvero segnare che questa attività richiede altro lavoro?",
"userRequestsApproval": "<strong><%- userName %></strong> richiede approvazone",
"userRequestsApproval": "<strong><%= userName %></strong> richiede approvazone",
"userCountRequestsApproval": "<strong><%= userCount %> membri</strong> hanno richiesto approvazione",
"youAreRequestingApproval": "Stai richiedendo approvazione",
"chatPrivilegesRevoked": "Non puoi farlo poiché i tuoi privilegi di chat sono stati rimossi. Per informazioni o per richiedere la restituzione dei tuoi privilegi, invia un'email al nostro Direttore della Comunità all'indirizzo admin@habitica.com o chiedi ad un tuo genitore o tutore di inviarli via email. Includi il tuo @Nome_utente nell'email. Se un moderatore ti ha già detto che la tua sospensione è temporanea non è necessario inviare una e-mail.",
@@ -168,9 +168,9 @@
"claim": "Reclama Attività",
"removeClaim": "Rimuovi reclamo",
"onlyGroupLeaderCanManageSubscription": "Solo il leader del gruppo può gestire l'iscrizione del gruppo",
"yourTaskHasBeenApproved": "La tua attività <span class=\"notification-green notification-bold\"><%- taskText %></span> è stata approvata.",
"taskNeedsWork": "<span class=\"notification-bold\"><%- taskText %></span> è stato rimosso da <span class=\"notification-bold\">@<%- managerName %></span>. Le ricompense per aver completato il lavoro sono state annullate.",
"userHasRequestedTaskApproval": "<span class=\"notification-bold\"><%- user %></span> richiede approvazione per <span class=\"notification-bold\"><%- taskName %></span>",
"yourTaskHasBeenApproved": "La tua attività <span class=\"notification-green notification-bold\"><%= taskText %></span> è stata approvata.",
"taskNeedsWork": "<span class=\"notification-bold\"><%= taskText %></span> è stato rimosso da <span class=\"notification-bold\">@<%= managerName %></span>. Le ricompense per aver completato il lavoro sono state annullate.",
"userHasRequestedTaskApproval": "<span class=\"notification-bold\"><%= user %></span> richiede approvazione per <span class=\"notification-bold\"><%= taskName %></span>",
"approve": "Approva",
"approveTask": "Approva attività",
"needsWork": "Ha bisogno di lavoro",
@@ -183,8 +183,8 @@
"userIsClamingTask": "`<%= username %> ha reclamato:` <%= task %>",
"approvalRequested": "Approvazione richiesta",
"cantDeleteAssignedGroupTasks": "Non puoi eliminare le attività di gruppo assegnate a te.",
"groupPlanUpgraded": "<strong><%- groupName %></strong> è stato aggiornato con successo a Piano di Gruppo!",
"groupPlanCreated": "<strong><%- groupName %></strong> è stato creato!",
"groupPlanUpgraded": "<strong><%= groupName %></strong> è stato aggiornato con successo a Piano di Gruppo!",
"groupPlanCreated": "<strong><%= groupName %></strong> è stato creato!",
"onlyGroupLeaderCanInviteToGroupPlan": "Solo il leader del gruppo può inviatare utenti in un gruppo con un abbonamento.",
"paymentDetails": "Dettagli di pagamento",
"aboutToJoinCancelledGroupPlan": "Stai per unirti ad un gruppo con un piano per gruppi disdetto. NON riceverai un abbonamento gratuito.",
@@ -322,8 +322,8 @@
"groupActivityNotificationTitle": "<%= user %> ha pubblicato in <%= group %>",
"suggestedGroup": "Consigliato perché sei nuovo di Habitica.",
"newPartyPlaceholder": "Inserisci il nome della tua squadra.",
"youHaveBeenAssignedTask": "<%- managerName %> ti ha assegnato l'attività <span class=\"notification-bold\"><%- taskText %></span>.",
"taskClaimed": "<%- userName %> ha rivendicato l'attività <span class=\"notification-bold\"><%- taskText %></span>.",
"youHaveBeenAssignedTask": "<%= managerName %> ti ha assegnato l'attività <span class=\"notification-bold\"><%= taskText %></span>.",
"taskClaimed": "<%= userName %> ha rivendicato l'attività <span class=\"notification-bold\"><%= taskText %></span>.",
"userWithUsernameOrUserIdNotFound": "Nome utente o ID Utente non trovati.",
"usernameOrUserId": "@username o ID Utente",
"sendGiftToWhom": "A chi vorresti inviare un regalo?",
@@ -335,7 +335,7 @@
"PMCanNotReply": "Non puoi rispondere a questa conversazione",
"PMDisabled": "Disabilita i messaggi privati",
"claimRewards": "Richiedi Ricompense",
"assignedDateAndUser": "Assegnato da @<%- username %>il<%= date %>",
"assignedDateAndUser": "Assegnato da @<%= username %>il<%= date %>",
"assignedDateOnly": "Assegnato il <strong><%= date %></strong>",
"managerNotes": "Note del manager",
"thisTaskApproved": "Questa attività è stata approvata",
@@ -391,7 +391,7 @@
"createGroup": "Crea un Gruppo",
"groupUse": "Quale tra questi descrive meglio l'utilizzo del tuo Gruppo?*",
"sendGiftLabel": "Vuoi inviare un messaggio col tuo regalo?",
"invitedToPartyBy": "<a href=\"/profile/<%- userId %>\" target=\"_blank\">@<%- userName %></a> ti ha invitato ad unirti alla Squadra <span class=\"notification-bold\"><%- party %></span>",
"invitedToPartyBy": "<a href=\"/profile/<%= userId %>\" target=\"_blank\">@<%= userName %></a> ti ha invitato ad unirti alla Squadra <span class=\"notification-bold\"><%= party %></span>",
"challengeBannedWords": "La tua Sfida contiene una o più parolacce o riferimenti a tematiche adulte. Modifica la tua Sfida in modo da poterla salvare. Devi rimuovere la parola, non solo censurarla.",
"challengeBannedSlurs": "La tua Sfida contiene una parolaccia che viola le linee guida della community di Habitica e i tuoi privilegi di creazione delle chat e delle Sfide sono stati revocati. Contatta admin@habitica.com per maggiori informazioni.",
"challengeBannedSlursPrivate": "La tua Sfida contiene un insulto che viola le linee guida della community di Habitica. Rimuovilo in modo da poter salvare la tua Sfida."
+3 -3
View File
@@ -82,8 +82,8 @@
"paymentMethods": "Paga utilizzando",
"paymentSuccessful": "Il tuo pagamento ha avuto successo!",
"paymentYouReceived": "Hai ricevuto:",
"paymentYouSentGems": "Hai inviato a <strong><%- name %></strong>:",
"paymentYouSentSubscription": "Hai inviato a <strong><%- name %></strong> uno o più abbonamenti ad Habitica di <%= months %> mesi.",
"paymentYouSentGems": "Hai inviato a <strong><%= name %></strong>:",
"paymentYouSentSubscription": "Hai inviato a <strong><%= name %></strong> uno o più abbonamenti ad Habitica di <%= months %> mesi.",
"paymentSubBilling": "Pagherai per il tuo abbonamento <strong>$<%= amount %></strong> ogni <strong><%= months %> mesi</strong>.",
"success": "Successo!",
"classGear": "Equipaggiamento per Classi",
@@ -128,6 +128,6 @@
"groupsPaymentSubBilling": "La tua prossima data di fatturazione è <strong><%= renewalDate %></strong>.",
"customizationsShopText": "Vuoi cambiare il tuo stile? Sei nel posto giusto! Abbiamo in magazzino i look più freschi adatti alla stagione.",
"notAvailable": "Questo Oggetto non è disponibile.",
"paymentYouSentSubscriptionG1G1": "Hai inviato a <strong><%- name %></strong><br> un abbonamento Habitica di <%= months %> mese(i) e lo stesso abbonamento è stato applicato al tuo account grazie alla nostra promozione \"Regala uno, ricevi uno\"!",
"paymentYouSentSubscriptionG1G1": "Hai inviato a <strong><%= name %></strong><br> un abbonamento Habitica di <%= months %> mese(i) e lo stesso abbonamento è stato applicato al tuo account grazie alla nostra promozione \"Regala uno, ricevi uno\"!",
"sellItems": "Vendi Oggetti"
}
+1 -1
View File
@@ -5,7 +5,7 @@
"keepIt": "このまま残す",
"removeIt": "消す",
"brokenChallenge": "チャレンジのリンク切れ:このタスクはもともとチャレンジの一部でしたが、チャレンジ(もしくはグループ)が削除されました。残されたタスクはどうしますか?",
"challengeCompleted": "チャレンジ終了です!<span class=\"badge\"><%- user %></span>が優勝しました!残ったタスクはどうしますか?",
"challengeCompleted": "チャレンジ終了です!<span class=\"badge\"><%= user %></span>が優勝しました!残ったタスクはどうしますか?",
"unsubChallenge": "チャレンジのリンク切れ:このタスクはもともとチャレンジの一部でしたが、あなたがチャレンジ登録を取り消しました。残されたタスクはどうしますか?",
"challenges": "チャレンジ",
"endDate": "終了日",
+1 -1
View File
@@ -190,7 +190,7 @@
"messages": "メッセージ",
"emptyMessagesLine1": "メッセージはありません",
"emptyMessagesLine2": "Habiticaのプレイヤーやパーティーメンバーにメッセージを送って会話を始めよう!ユーザーのプロフィールの「メッセージ」ボタンを押すと、新しいメッセージを送ることができます。",
"userSentMessage": "<span class=\"notification-bold\"><%- user %></span>からのメッセージが届きました",
"userSentMessage": "<span class=\"notification-bold\"><%= user %></span>からのメッセージが届きました",
"letsgo": "レッツゴー!",
"selected": "選択中",
"howManyToBuy": "いくつ買いますか?",
+16 -16
View File
@@ -24,14 +24,14 @@
"userId": "ユーザー ID",
"invite": "招待する",
"leave": "脱退する",
"invitedToParty": "パーティー「<span class=\"notification-bold\"><%- party %></span>」に招待されました",
"invitedToPrivateGuild": "<span class=\"notification-bold\"><%- guild %></span> プライベートグループに招待されました",
"invitedToPublicGuild": "<span class=\"notification-bold-blue\"><%- guild %></span> グループに招待されました",
"invitedToParty": "パーティー「<span class=\"notification-bold\"><%= party %></span>」に招待されました",
"invitedToPrivateGuild": "<span class=\"notification-bold\"><%= guild %></span> プライベートグループに招待されました",
"invitedToPublicGuild": "<span class=\"notification-bold-blue\"><%= guild %></span> グループに招待されました",
"invitationAcceptedHeader": "あなたの招待が承認されました",
"invitationAcceptedBody": "<%= username %> は、あなたからの <%= groupName %> への招待にこたえました!",
"systemMessage": "システム メッセージ",
"newMsgGuild": "<span class=\"notification-bold-blue\"><%- name %></span> に新しい投稿があります",
"newMsgParty": "あなたのパーティー、<span class=\"notification-bold-blue\"><%- name %></span> に新しい投稿があります",
"newMsgGuild": "<span class=\"notification-bold-blue\"><%= name %></span> に新しい投稿があります",
"newMsgParty": "あなたのパーティー、<span class=\"notification-bold-blue\"><%= name %></span> に新しい投稿があります",
"chat": "チャット",
"sendChat": "チャット送信",
"group": "グループ",
@@ -151,14 +151,14 @@
"onlyGroupLeaderCanEditTasks": "タスクを管理する権限がありません!",
"onlyGroupTasksCanBeAssigned": "グループのタスクのみ、割り当てできます",
"assignedTo": "割り当て対象:",
"assignedToUser": "<strong>@<%- userName %></strong> に割り当て",
"assignedToUser": "<strong>@<%= userName %></strong> に割り当て",
"assignedToMembers": "<%= userCount %> ユーザー",
"assignedToYouAndMembers": "あなたと <%= userCount %> ユーザー",
"youAreAssigned": "<strong>あなた</strong> に割り当てられています",
"taskIsUnassigned": "このタスクは誰にも割り当てられていません",
"confirmUnClaim": "本当にこのタスクの担当を解除しますか?",
"confirmNeedsWork": "このタスクをもっと取り組みが必要なものとしてマークしますか?",
"userRequestsApproval": "<strong><%- userName %></strong>が承認を求めています",
"userRequestsApproval": "<strong><%= userName %></strong>が承認を求めています",
"userCountRequestsApproval": "<strong><%= userCount %>人のメンバー</strong>が承認を求めています",
"youAreRequestingApproval": "タスク承認を依頼中です",
"chatPrivilegesRevoked": "あなたのチャットの権利は取り消されているため、これはできません。詳細や権利を取り戻せるかどうかについて尋ねたい場合は、admin@habitica.comへコミュニティ管理者宛てにメールを送ってください。もしくは、親や保護者の方にadmin@habitica.comへメールしていただくよう頼んでください。メールにはあなたの@ユーザー名を記入してください。もしモデレーターからすでに「あなたのチャット禁止は一時的なものです」と告げられているなら、メールを送る必要はありません。",
@@ -168,9 +168,9 @@
"claim": "担当するタスク",
"removeClaim": "担当を解除",
"onlyGroupLeaderCanManageSubscription": "グループの登録管理は、グループリーダーだけが行います",
"yourTaskHasBeenApproved": "あなたのタスク<span class=\"notification-green\"><%- taskText %></span>は承認されました。",
"taskNeedsWork": "<span class=\"notification-bold\">@<%- managerName %></span> が <span class=\"notification-bold\"><%- taskText %></span> を未完了にしました。タスクのごほうびは元に戻されました。",
"userHasRequestedTaskApproval": "<span class=\"notification-bold\"><%- user %></span>が<span class=\"notification-bold\"><%- taskName %></span>の承認を求めています",
"yourTaskHasBeenApproved": "あなたのタスク<span class=\"notification-green\"><%= taskText %></span>は承認されました。",
"taskNeedsWork": "<span class=\"notification-bold\">@<%= managerName %></span> が <span class=\"notification-bold\"><%= taskText %></span> を未完了にしました。タスクのごほうびは元に戻されました。",
"userHasRequestedTaskApproval": "<span class=\"notification-bold\"><%= user %></span>が<span class=\"notification-bold\"><%= taskName %></span>の承認を求めています",
"approve": "承認",
"approveTask": "タスクの承認",
"needsWork": "作業が必要",
@@ -183,8 +183,8 @@
"userIsClamingTask": "`<%= username %>が担当しています:`<%= task %>",
"approvalRequested": "承認が申請されました",
"cantDeleteAssignedGroupTasks": "あなたへと割り当てられたタスクを削除することはできません。",
"groupPlanUpgraded": "<strong><%- groupName %></strong> は正常にグループプランへアップグレードされました!",
"groupPlanCreated": "<strong><%- groupName %></strong> が作成されました!",
"groupPlanUpgraded": "<strong><%= groupName %></strong> は正常にグループプランへアップグレードされました!",
"groupPlanCreated": "<strong><%= groupName %></strong> が作成されました!",
"onlyGroupLeaderCanInviteToGroupPlan": "有料プランが有効化されているグループには、グループのリーダーだけがユーザーを招待できます。",
"paymentDetails": "支払いについての詳細",
"aboutToJoinCancelledGroupPlan": "有料プランを解約したグループに参加しようとしています。参加しても有料プランの特典を無料で受けることはできません。",
@@ -321,8 +321,8 @@
"allAssignedCompletion": "全員 - アサインされたユーザーの全員が終えると完了します",
"pmReported": "このメッセージについてご報告ありがとうございます。",
"suggestedGroup": "あなたはHabiticaを始めたばかりのため、提案しました。",
"youHaveBeenAssignedTask": "<%- managerName %>は、あなたにタスク<span class=\"notification-bold\"><%- taskText %></span>を割り当てました。",
"taskClaimed": "<%- userName %> は、タスク<span class=\"notification-bold\"><%- taskText %></span>を担当しています。",
"youHaveBeenAssignedTask": "<%= managerName %>は、あなたにタスク<span class=\"notification-bold\"><%= taskText %></span>を割り当てました。",
"taskClaimed": "<%= userName %> は、タスク<span class=\"notification-bold\"><%= taskText %></span>を担当しています。",
"groupActivityNotificationTitle": "<%= user %>が<%= group %>に投稿しました",
"blockedToSendToThisUser": "このユーザーにブロックされているため、メッセージは送れません。",
"PMDisabled": "メッセージを無効にする",
@@ -334,7 +334,7 @@
"PMUserDoesNotReceiveMessages": "このユーザーはもはやプライベートメッセージを受信していません",
"PMCanNotReply": "この会話に返信することはできません",
"newPartyPlaceholder": "パーティーの名前を入力してください。",
"assignedDateAndUser": "<%= date %> に @<%- username %> へ割り当てられました",
"assignedDateAndUser": "<%= date %> に @<%= username %> へ割り当てられました",
"assignedDateOnly": "<strong><%= date %></strong>に割り当てられました",
"managerNotes": "管理者からのお知らせ",
"thisTaskApproved": "このタスクは承認されています",
@@ -391,7 +391,7 @@
"nextPaymentMethod": "次のステップ:お支払い",
"createGroup": "グループを作る",
"sendGiftLabel": "ギフトメッセージを送信しますか?",
"invitedToPartyBy": "<a href=\"/profile/<%- userId %>\" target=\"_blank\">@<%- userName %></a> があなたをパーティー「<span class=\"notification-bold\"><%- party %></span>」に招待しました",
"invitedToPartyBy": "<a href=\"/profile/<%= userId %>\" target=\"_blank\">@<%= userName %></a> があなたをパーティー「<span class=\"notification-bold\"><%= party %></span>」に招待しました",
"questWithOthers": "仲間たちとクエストに挑戦しましょう",
"currentlyLookingForParty": "パーティーを探している最中です!",
"checkinsLabel": "チェックイン回数:",
+3 -3
View File
@@ -82,8 +82,8 @@
"paymentMethods": "お支払い方法",
"paymentSuccessful": "支払いは成功しました!",
"paymentYouReceived": "受け取りました:",
"paymentYouSentGems": "<strong><%- name %></strong> に送りました:",
"paymentYouSentSubscription": "<strong><%- name %></strong><br> に <%= months %>ヶ月分のHabitica有料プランを送りました。",
"paymentYouSentGems": "<strong><%= name %></strong> に送りました:",
"paymentYouSentSubscription": "<strong><%= name %></strong><br> に <%= months %>ヶ月分のHabitica有料プランを送りました。",
"paymentSubBilling": "あなたの有料プランは、<strong><%= months %>ヶ月</strong>ごとに <strong>$<%= amount %></strong> 請求されます。",
"success": "成功しました!",
"classGear": "クラス アイテム",
@@ -129,5 +129,5 @@
"sellItems": "アイテムを売る",
"customizationsShopText": "スタイルを変えたいですか?そんなあなたにぴったりの場所です!季節に合った新しい外見を取り揃えています。",
"notAvailable": "このアイテムはご利用いただけません。",
"paymentYouSentSubscriptionG1G1": "あなたは<strong><%- name %></strong><br>さんに<%= months %>か月間のHabitica 有料プランを送信しました。そして、Gift One Get One プロモーションのため、同じ有料プランがあなたのアカウントに適用されました。"
"paymentYouSentSubscriptionG1G1": "あなたは<strong><%= name %></strong><br>さんに<%= months %>か月間のHabitica 有料プランを送信しました。そして、Gift One Get One プロモーションのため、同じ有料プランがあなたのアカウントに適用されました。"
}
+1 -1
View File
@@ -5,7 +5,7 @@
"keepIt": "유지",
"removeIt": "삭제",
"brokenChallenge": "삭제된 도전 링크: 이 과제는 도전의 일부였으나 그 도전 (또는 그룹)이 삭제되었습니다. 따로 남겨진 이 과제를 어떻게 하시겠습니까?",
"challengeCompleted": "도전이 끝났습니다. 도전 우승자는 <span class=\"badge\"><%- user %></span> 입니다! 남아있는 과제를 어떻게 하시겠습니까?",
"challengeCompleted": "도전이 끝났습니다. 도전 우승자는 <span class=\"badge\"><%= user %></span> 입니다! 남아있는 과제를 어떻게 하시겠습니까?",
"unsubChallenge": "삭제된 도전 링크: 이 과제는 도전의 일부였으나 도전이 중지되었습니다. 따로 남겨진 이 과제를 어떻게 하시겠습니까?",
"challenges": "도전",
"endDate": "끝",
+1 -1
View File
@@ -190,7 +190,7 @@
"messages": "Messages",
"emptyMessagesLine1": "메시지가 없습니다",
"emptyMessagesLine2": "유저의 프로필에 들어가 \"메시지\" 버튼을 눌러서 유저에게 새로운 메시지를 보낼 수 있습니다.",
"userSentMessage": "<span class=\"notification-bold\"><%- user %></span> sent you a message",
"userSentMessage": "<span class=\"notification-bold\"><%= user %></span> sent you a message",
"letsgo": "Let's Go!",
"selected": "Selected",
"howManyToBuy": "얼마나 사시겠습니까?",
+15 -15
View File
@@ -24,14 +24,14 @@
"userId": "사용자 ID",
"invite": "초대",
"leave": "떠남",
"invitedToParty": "You were invited to join the Party <span class=\"notification-bold\"><%- party %></span>",
"invitedToPrivateGuild": "You were invited to join the private Guild <span class=\"notification-bold\"><%- guild %></span>",
"invitedToPublicGuild": "You were invited to join the Guild <span class=\"notification-bold-blue\"><%- guild %></span>",
"invitedToParty": "You were invited to join the Party <span class=\"notification-bold\"><%= party %></span>",
"invitedToPrivateGuild": "You were invited to join the private Guild <span class=\"notification-bold\"><%= guild %></span>",
"invitedToPublicGuild": "You were invited to join the Guild <span class=\"notification-bold-blue\"><%= guild %></span>",
"invitationAcceptedHeader": "당신의 초대장이 수락되었습니다.",
"invitationAcceptedBody": "<%= username %>님이 <%= groupName %>로의 초대를 수락했습니다!",
"systemMessage": "시스템 메시지",
"newMsgGuild": "<span class=\"notification-bold-blue\"><%- name %></span> has new posts",
"newMsgParty": "Your Party, <span class=\"notification-bold-blue\"><%- name %></span>, has new posts",
"newMsgGuild": "<span class=\"notification-bold-blue\"><%= name %></span> has new posts",
"newMsgParty": "Your Party, <span class=\"notification-bold-blue\"><%= name %></span>, has new posts",
"chat": "채팅",
"sendChat": "채팅을 보냅니다",
"group": "Group",
@@ -151,14 +151,14 @@
"onlyGroupLeaderCanEditTasks": "Not authorized to manage tasks!",
"onlyGroupTasksCanBeAssigned": "그룹 과제만 할당될 수 있습니다",
"assignedTo": "할당됨",
"assignedToUser": "<strong><%- userName %></strong>에게 할당됨",
"assignedToUser": "<strong><%= userName %></strong>에게 할당됨",
"assignedToMembers": "<%= userCount %>명의 유저",
"assignedToYouAndMembers": "<strong>당신</strong> 외 <%= userCount %>명의 유저",
"youAreAssigned": "You are assigned to this task",
"taskIsUnassigned": "This task is unassigned",
"confirmUnClaim": "Are you sure you want to unclaim this task?",
"confirmNeedsWork": "Are you sure you want to mark this task as needing work?",
"userRequestsApproval": "<%- userName %> requests approval",
"userRequestsApproval": "<%= userName %> requests approval",
"userCountRequestsApproval": "<%= userCount %> members request approval",
"youAreRequestingApproval": "You are requesting approval",
"chatPrivilegesRevoked": "You cannot do that because your chat privileges have been revoked.",
@@ -168,9 +168,9 @@
"claim": "Claim",
"removeClaim": "Remove Claim",
"onlyGroupLeaderCanManageSubscription": "Only the group leader can manage the group's subscription",
"yourTaskHasBeenApproved": "Your task <span class=\"notification-green\"><%- taskText %></span> has been approved.",
"taskNeedsWork": "<span class=\"notification-bold\"><%- managerName %></span> marked <span class=\"notification-bold\"><%- taskText %></span> as needing additional work.",
"userHasRequestedTaskApproval": "<span class=\"notification-bold\"><%- user %></span> requests approval for <span class=\"notification-bold\"><%- taskName %></span>",
"yourTaskHasBeenApproved": "Your task <span class=\"notification-green\"><%= taskText %></span> has been approved.",
"taskNeedsWork": "<span class=\"notification-bold\"><%= managerName %></span> marked <span class=\"notification-bold\"><%= taskText %></span> as needing additional work.",
"userHasRequestedTaskApproval": "<span class=\"notification-bold\"><%= user %></span> requests approval for <span class=\"notification-bold\"><%= taskName %></span>",
"approve": "Approve",
"approveTask": "승인된 과제",
"needsWork": "작업이 필요함",
@@ -183,8 +183,8 @@
"userIsClamingTask": "`<%= username %> has claimed:` <%= task %>",
"approvalRequested": "Approval Requested",
"cantDeleteAssignedGroupTasks": "당신에게 할당된 그룹 과제는 삭제할 수 없습니다.",
"groupPlanUpgraded": "<strong><%- groupName %></strong> was upgraded to a Group Plan!",
"groupPlanCreated": "<strong><%- groupName %></strong> was created!",
"groupPlanUpgraded": "<strong><%= groupName %></strong> was upgraded to a Group Plan!",
"groupPlanCreated": "<strong><%= groupName %></strong> was created!",
"onlyGroupLeaderCanInviteToGroupPlan": "Only the group leader can invite users to a group with a subscription.",
"paymentDetails": "Payment Details",
"aboutToJoinCancelledGroupPlan": "You are about to join a group with a canceled plan. You will NOT receive a free subscription.",
@@ -339,7 +339,7 @@
"usernameOrUserId": "@아이디 혹은 User ID를 입력하세요",
"selectGift": "선물 선택하기",
"giftMessageTooLong": "선물 메세지의 최대 길이는 <%= maxGiftMessageLength %>입니다.",
"invitedToPartyBy": "<a href=\"/profile/<%- userId %>\" target=\"_blank\">@<%- userName %></a>님이 당신을 <span class=\"notification-bold\"><%- party %></span> 파티에 초대했습니다",
"invitedToPartyBy": "<a href=\"/profile/<%= userId %>\" target=\"_blank\">@<%= userName %></a>님이 당신을 <span class=\"notification-bold\"><%= party %></span> 파티에 초대했습니다",
"challengeBannedSlurs": "귀하의 도전 과제에 커뮤니티 가이드라인을 위반하는 비방 표현이 포함되어 있어 채팅 및 도전 과제 생성 권한이 박탈되었습니다. 자세한 내용은 admin@habitica.com으로 문의하십시오.",
"challengeBannedWords": "귀하의 도전 과제에 욕설이나 성인 주제에 대한 언급이 하나 이상 포함되어 있습니다. 저장하려면 도전 과제를 수정해 주세요. 단순히 검열만 해서는 안 되고 단어 자체를 삭제해야 합니다.",
"challengeBannedSlursPrivate": "귀하의 도전 과제에 Habitica 커뮤니티 가이드라인을 위반하는 비하적 표현이 포함되어 있습니다. 도전 과제를 저장하려면 해당 표현을 삭제해 주십시오.",
@@ -353,7 +353,7 @@
"sendGiftLabel": "선물 메시지를 보내시겠습니까?",
"sendTotal": "총:",
"chooseTeamMember": "팀 멤버를 찾아보세요",
"youHaveBeenAssignedTask": "<%- managerName %>가 과제 <span class=\"notification-bold\"><%- taskText %></span>를 할당했습니다.",
"youHaveBeenAssignedTask": "<%= managerName %>가 과제 <span class=\"notification-bold\"><%= taskText %></span>를 할당했습니다.",
"unassigned": "할당되지 않음",
"onlyPrivateGuildsCanUpgrade": "프라이빗 길드만 그룹 플랜으로 업그레이드 할 수 있습니다.",
"thisTaskApproved": "이 과제는 승인되었습니다",
@@ -368,7 +368,7 @@
"invitedToYourParty": "<strong>당신을 파티에 초대했습니다!</strong>&nbsp;&nbsp;취소하려면 클릭해주세요",
"languageLabel": "언어 :",
"classLabel": "직업 :",
"taskClaimed": "<%- userName %>은 과제 <span class=\"notification-bold\"><%- taskText %></span>을 담당하고 있습니다.",
"taskClaimed": "<%= userName %>은 과제 <span class=\"notification-bold\"><%= taskText %></span>을 담당하고 있습니다.",
"messagePartyLeader": "파티장에게 메세지",
"bannedWordsAllowed": "부적절한 언어 사용 허가"
}
+3 -3
View File
@@ -82,8 +82,8 @@
"paymentMethods": "를(을) 사용하여 구매",
"paymentSuccessful": "결제가 성공적으로 완료되었습니다!",
"paymentYouReceived": "수신했습니다:",
"paymentYouSentGems": "<strong><%- name %></strong>에게 보냈습니다:",
"paymentYouSentSubscription": "<strong><%- name %></strong><br> 님에게 <%= months %>개월의 Habitica 구독 플랜을 보냈습니다.",
"paymentYouSentGems": "<strong><%= name %></strong>에게 보냈습니다:",
"paymentYouSentSubscription": "<strong><%= name %></strong><br> 님에게 <%= months %>개월의 Habitica 구독 플랜을 보냈습니다.",
"paymentSubBilling": "구독료는 <strong><%= months %>개월</strong>마다 <strong>$<%= amount %></strong> 청구됩니다.",
"success": "Success!",
"classGear": "직업 장비",
@@ -129,5 +129,5 @@
"limitedAvailabilityDays": "구매 가능 기간이 <%= days %>일<%= hours %><%= hours %>시간<%= minutes %>분 남았습니다",
"paymentAutoRenew": "이 구독은 취소하지 않는 한 자동 갱신됩니다. 이 구독을 취소해야 하는 경우 설정에서 취소할 수 있습니다.",
"paymentCanceledDisputes": "취소 승인 메일을 보내드렸습니다. 만약 해당 메일을 찾을 수 없는 경우, 향후 청구에 대한 분쟁을 방지하기 위해 저희에게 연락을 주시기 바랍니다.",
"paymentYouSentSubscriptionG1G1": "<strong><%- name %></strong><br>에게 <%= months %> 개월의 Habitica 구독 플랜을 보냈으며, 1+1 프로모션에 따라 이 계정에도 동일한 구독 플랜이 적용되었습니다!"
"paymentYouSentSubscriptionG1G1": "<strong><%= name %></strong><br>에게 <%= months %> 개월의 Habitica 구독 플랜을 보냈으며, 1+1 프로모션에 따라 이 계정에도 동일한 구독 플랜이 적용되었습니다!"
}
+1 -1
View File
@@ -5,7 +5,7 @@
"keepIt": "Behouden",
"removeIt": "Verwijderen",
"brokenChallenge": "Gebroken Uitdagingslink: deze taak was onderdeel van een uitdaging, maar de uitdaging (of groep) is verwijderd. Wat wil je doen met de bijbehorende taken?",
"challengeCompleted": "Deze uitdaging is voltooid en de winnaar was <span class='badge'><%- user %></span>! Wat wil je doen met de bijbehorende taken?",
"challengeCompleted": "Deze uitdaging is voltooid en de winnaar was <span class='badge'><%= user %></span>! Wat wil je doen met de bijbehorende taken?",
"unsubChallenge": "Gebroken Uitdagingslink: deze taak was onderdeel van een uitdaging, maar jij hebt je teruggetrokken uit de uitdaging. Wat wil je doen met de bijbehorende taken?",
"challenges": "Uitdagingen",
"endDate": "Eindigt",
+1 -1
View File
@@ -190,7 +190,7 @@
"messages": "Berichten",
"emptyMessagesLine1": "Je hebt geen berichten",
"emptyMessagesLine2": "Stuur een bericht om een gesprek te beginnen met Groepsleden of andere Habitica-spelers",
"userSentMessage": "<span class=\"notification-bold\"><%- user %></span> heeft je een bericht gestuurd",
"userSentMessage": "<span class=\"notification-bold\"><%= user %></span> heeft je een bericht gestuurd",
"letsgo": "Laten we gaan!",
"selected": "Geselecteerd",
"howManyToBuy": "Hoeveel wil je er kopen?",
+16 -16
View File
@@ -24,14 +24,14 @@
"userId": "Gebruikers-ID",
"invite": "Uitnodigen",
"leave": "Verlaten",
"invitedToParty": "Je werd uitgenodigd om je aan te sluiten bij de Groep <span class=\"notification-bold\"><%- party %></span>",
"invitedToPrivateGuild": "Je bent uitgenodigd om lid te worden van de besloten Groep <span class=\"notification-bold\"><%- guild %></span>",
"invitedToPublicGuild": "Je bent uitgenodigd om lid te worden van de Gilde <span class=\"notification-bold-blue\"><%- guild %></span>",
"invitedToParty": "Je werd uitgenodigd om je aan te sluiten bij de Groep <span class=\"notification-bold\"><%= party %></span>",
"invitedToPrivateGuild": "Je bent uitgenodigd om lid te worden van de besloten Groep <span class=\"notification-bold\"><%= guild %></span>",
"invitedToPublicGuild": "Je bent uitgenodigd om lid te worden van de Gilde <span class=\"notification-bold-blue\"><%= guild %></span>",
"invitationAcceptedHeader": "Je uitnodiging is geaccepteerd",
"invitationAcceptedBody": "<%= username %> heeft je uitnodiging voor <%= groupName %> geaccepteerd!",
"systemMessage": "Systeembericht",
"newMsgGuild": "<span class=\"notification-bold-blue\"><%- name %></span> heeft nieuwe berichten",
"newMsgParty": "Je Gezelschap, <span class=\"notification-bold-blue\"><%- name %></span>, heeft nieuwe berichten",
"newMsgGuild": "<span class=\"notification-bold-blue\"><%= name %></span> heeft nieuwe berichten",
"newMsgParty": "Je Gezelschap, <span class=\"notification-bold-blue\"><%= name %></span>, heeft nieuwe berichten",
"chat": "Chat",
"sendChat": "Chat verzenden",
"group": "Groep",
@@ -151,14 +151,14 @@
"onlyGroupLeaderCanEditTasks": "Niet gemachtigd om taken te beheren!",
"onlyGroupTasksCanBeAssigned": "Je kunt alleen groepstaken toewijzen",
"assignedTo": "Toegewezen aan",
"assignedToUser": "Toegewezen aan <strong><%- userName %></strong>",
"assignedToUser": "Toegewezen aan <strong><%= userName %></strong>",
"assignedToMembers": "<%= userCount %> leden",
"assignedToYouAndMembers": "Jou en <strong><%= userCount %> andere leden</strong>",
"youAreAssigned": "Aan jou toegewezen",
"taskIsUnassigned": "Deze taak is niet toegewezen",
"confirmUnClaim": "Weet je zeker dat je deze taak wilt opgeven?",
"confirmNeedsWork": "Weet je zeker dat je deze taak op 'werk nodig' wil zetten?",
"userRequestsApproval": "<strong><%- userName %></strong> vraagt om goedkeuring",
"userRequestsApproval": "<strong><%= userName %></strong> vraagt om goedkeuring",
"userCountRequestsApproval": "<strong><%= userCount %> leden</strong> vragen om goedkeuring",
"youAreRequestingApproval": "Je vraagt om goedkeuring",
"chatPrivilegesRevoked": "Je mag dit niet doen omdat je chatrechten zijn ingetrokken. Voor meer informatie of om te vragen of je weer rechten mag krijgen, kun jij of je ouder of verzorger een email sturen naar onze gemeenschapsleider op admin@habitica.com. Zet je @Gebruikersnaam in de email. Je hoeft geen email te sturen als een moderator al verteld heeft dat je chatban tijdelijk is.",
@@ -168,9 +168,9 @@
"claim": "Taak Opeisen",
"removeClaim": "Verwijder eis",
"onlyGroupLeaderCanManageSubscription": "Alleen de groepsleider kan het groepsabonnement beheren",
"yourTaskHasBeenApproved": "Je taak <span class=\"notification-green\"><%- taskText %></span> is goedgekeurd.",
"taskNeedsWork": "<span class=\"notification-bold\"><%- managerName %></span> heeft <span class=\"notification-bold\"><%- taskText %></span> op 'werk nodig' gezet.",
"userHasRequestedTaskApproval": "<span class=\"notification-bold\"><%- user %></span> vraagt om toestemming voor <span class=\"notification-bold\"><%- taskName %></span>",
"yourTaskHasBeenApproved": "Je taak <span class=\"notification-green\"><%= taskText %></span> is goedgekeurd.",
"taskNeedsWork": "<span class=\"notification-bold\"><%= managerName %></span> heeft <span class=\"notification-bold\"><%= taskText %></span> op 'werk nodig' gezet.",
"userHasRequestedTaskApproval": "<span class=\"notification-bold\"><%= user %></span> vraagt om toestemming voor <span class=\"notification-bold\"><%= taskName %></span>",
"approve": "Goedkeuren",
"approveTask": "Taak goed keuren",
"needsWork": "Heeft nog werk nodig",
@@ -183,8 +183,8 @@
"userIsClamingTask": "`<%= username %> heeft ` <%= task %> geclaimd",
"approvalRequested": "Goedkeuring aangevraagd",
"cantDeleteAssignedGroupTasks": "Je kunt geen groepstaken verwijderen die aan jou toegewezen zijn.",
"groupPlanUpgraded": "<strong><%- groupName %></strong> is geüpgraded tot een groepslidmaatschap!",
"groupPlanCreated": "<strong><%- groupName %></strong> is aangemaakt!",
"groupPlanUpgraded": "<strong><%= groupName %></strong> is geüpgraded tot een groepslidmaatschap!",
"groupPlanCreated": "<strong><%= groupName %></strong> is aangemaakt!",
"onlyGroupLeaderCanInviteToGroupPlan": "Alleen de groepsleider kan gebruikers uitnodigen voor een groep met een abonnement.",
"paymentDetails": "Betalingsdetails",
"aboutToJoinCancelledGroupPlan": "Je staat op het punt lid te worden van een groep met een geannuleerd plan. Je zult GEEN gratis abonnement ontvangen.",
@@ -320,10 +320,10 @@
"singleCompletion": "Eentje - wordt afgevinkt als een van de deelnemers klaar is",
"allAssignedCompletion": "Alles - wordt afgevinkt als alle toegewezen deelnemers klaar zijn",
"pmReported": "Bedankt voor het melden van het bericht.",
"youHaveBeenAssignedTask": "<%- managerName %> heeft de volgende taak aan jou toegewezen: <span class=\"notification-bold\"><%- taskText %></span>.",
"youHaveBeenAssignedTask": "<%= managerName %> heeft de volgende taak aan jou toegewezen: <span class=\"notification-bold\"><%= taskText %></span>.",
"suggestedGroup": "Voorstel omdat je nieuw bent in Habitica.",
"groupActivityNotificationTitle": "<%= user %> heeft een bericht geplaatst in <%= group %>",
"taskClaimed": "<%- userName %> heeft de taak <span class=\"notification-bold\"><%- taskText %></span> opgeëist.",
"taskClaimed": "<%= userName %> heeft de taak <span class=\"notification-bold\"><%= taskText %></span> opgeëist.",
"userWithUsernameOrUserIdNotFound": "Gebruikersnaam of GebruikersID niet gevonden.",
"usernameOrUserId": "Voer @gebruikersnaam of GebruikersID in",
"sendGiftToWhom": "Naar wie wil je een geschenk sturen?",
@@ -334,7 +334,7 @@
"PMUserDoesNotReceiveMessages": "Deze gebruiker ontvangt niet langer privéberichten",
"PMCanNotReply": "U kan niet antwoorden op deze conversatie",
"claimRewards": "Eis je Beloning op",
"assignedDateAndUser": "Toegewezen door <strong>@<%- username %></strong> op <strong><%= date %></strong>",
"assignedDateAndUser": "Toegewezen door <strong>@<%= username %></strong> op <strong><%= date %></strong>",
"assignedDateOnly": "Toegewezen op <strong><%= date %></strong>",
"managerNotes": "Notities van de Manager",
"bannedWordsAllowedDetail": "Wanneer deze optie geselecteerd is, zal het gebruik van verboden woorden in dit Gilde worden toegestaan.",
@@ -362,7 +362,7 @@
"findPartyMembers": "Vind Party deelnemers",
"nextPaymentMethod": "Volgende: betaling",
"findMorePartyMembers": "Vind meer deelnemers",
"invitedToPartyBy": "<a href=\"/profile/<%- userId %>\" target=\"_blank\">@<%- userName %></a> heeft je uitgenodigd om lid te worden van de Groep <span class=\"notification-bold\"><%- party %></span>",
"invitedToPartyBy": "<a href=\"/profile/<%= userId %>\" target=\"_blank\">@<%= userName %></a> heeft je uitgenodigd om lid te worden van de Groep <span class=\"notification-bold\"><%= party %></span>",
"challengeBannedSlursPrivate": "Je Uitdaging bevat een belediging die in strijd is met de Gemeenschapsrichtlijnen van Habitica. Verwijder deze om je Uitdaging op te slaan.",
"sendTotal": "Totaal:",
"messageCopiedToClipboard": "Bericht gekopieerd naar klembord.",
+2 -2
View File
@@ -82,8 +82,8 @@
"paymentMethods": "Koop met",
"paymentSuccessful": "Je betaling van succesvol!",
"paymentYouReceived": "Je ontving:",
"paymentYouSentGems": "Je verzond <strong><%- name %></strong>:",
"paymentYouSentSubscription": "Je verzond <strong><%- name %></strong> een <%= months %> maanden durend Habitica-abonnement.",
"paymentYouSentGems": "Je verzond <strong><%= name %></strong>:",
"paymentYouSentSubscription": "Je verzond <strong><%= name %></strong> een <%= months %> maanden durend Habitica-abonnement.",
"paymentSubBilling": "Your subscription will be billed <strong>$<%= amount %></strong> every <strong><%= months %> months</strong>.",
"success": "Success!",
"classGear": "Klassespecifieke Uitrusting",
+1 -1
View File
@@ -110,7 +110,7 @@
"abuseFlagModalBodyChallenge": "Powinieneś zgłaszać wyłącznie Wyzwanie, które narusza <%= firstLinkStart %>Regulamin Społeczności<%= linkEnd %> i/lub <%= secondLinkStart %>Warunki korzystania z Usług<%= linkEnd %>. Złożenie mylnego zgłoszenia narusza Regulamin Społeczności Habitica.",
"deleteChallengeRefundDescription": "Jeżeli usuniesz to Wyzwanie, Klejnoty z nagrody zostaną zwrócone, a zadania przypisane do Wyzwania pozostaną na tablicach zadań uczestników.",
"brokenChallengeDescription": "To zadanie było częścią wyzwania, ale wyzwanie(lub grupa) zostało usunięte. Co chcesz zrobić z porzuconym zadaniem?",
"challengeCompletedDescription": "Zycięzcą został <%- user %>! Co chcesz zrobić z porzuconymi zadaniami?",
"challengeCompletedDescription": "Zycięzcą został <%= user %>! Co chcesz zrobić z porzuconymi zadaniami?",
"brokenTaskDescription": "To zadanie było częścią wyzwania, ale zostało z niego usunięte. Co chcesz zrobić?",
"brokenTask": "Nieprawidlowy link do wyzwania"
}
+1 -1
View File
@@ -190,7 +190,7 @@
"messages": "Wiadomości",
"emptyMessagesLine1": "Nie masz żadnych wiadomości",
"emptyMessagesLine2": "Wyślij wiadomość, aby zacząć rozmowę z członkami Twojej Drużyny lub innymi graczami Habitica",
"userSentMessage": "<span class=\"notification-bold\"><%- user %></span> wysłał ci wiadomość",
"userSentMessage": "<span class=\"notification-bold\"><%= user %></span> wysłał ci wiadomość",
"letsgo": "Jazda!",
"selected": "Wybrane",
"howManyToBuy": "Ile chcesz zakupić?",

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