Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/develop' into negue/ui/combined-…
Browse files Browse the repository at this point in the history
…messages-restyling
  • Loading branch information
negue committed Jan 13, 2025
2 parents 70cf860 + 30f1820 commit 1bb4670
Show file tree
Hide file tree
Showing 27 changed files with 144 additions and 88 deletions.
4 changes: 2 additions & 2 deletions migrations/users/full-gear.js
Original file line number Diff line number Diff line change
Expand Up @@ -27,13 +27,13 @@ async function updateUser (user) {

if (count % progressCount === 0) console.warn(`${count} ${user._id}`);

return User.update({ _id: user._id }, { $set: set }).exec();
return User.updateOne({ _id: user._id }, { $set: set }).exec();
}

export default async function processUsers () {
const query = {
migration: { $ne: MIGRATION_NAME },
'auth.local.lowerCaseUsername': 'olson1',
'auth.local.username': 'ExampleHabitican',
};

const fields = {
Expand Down
2 changes: 1 addition & 1 deletion migrations/users/full-stable.js
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ async function updateUser (user) {
export default async function processUsers () {
const query = {
migration: { $ne: MIGRATION_NAME },
'auth.local.username': 'SabreTest',
'auth.local.username': 'ExampleHabitican',
};

const fields = {
Expand Down
4 changes: 2 additions & 2 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "habitica",
"description": "A habit tracker app which treats your goals like a Role Playing Game.",
"version": "5.32.3",
"version": "5.32.5",
"main": "./website/server/index.js",
"dependencies": {
"@babel/core": "^7.22.10",
Expand Down
26 changes: 24 additions & 2 deletions test/content/schedule.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -272,6 +272,21 @@ describe('Content Schedule', () => {
expect(matcher.match('backgroundkey072024')).to.be.true;
});

it('allows background matching the month for new backgrounds from multiple years', () => {
const date = new Date('2026-07-08');
const matcher = getAllScheduleMatchingGroups(date).backgrounds;
expect(matcher.match('backgroundkey072024')).to.be.true;
expect(matcher.match('backgroundkey072025')).to.be.true;
expect(matcher.match('backgroundkey072026')).to.be.true;
});

it('allows background matching the previous month in the first week for new backgrounds', () => {
const date = new Date('2024-09-02');
const matcher = getAllScheduleMatchingGroups(date).backgrounds;
expect(matcher.match('backgroundkey082024')).to.be.true;
expect(matcher.match('backgroundkey092024')).to.be.false;
});

it('disallows background in the future', () => {
const date = new Date('2024-07-08');
const matcher = getAllScheduleMatchingGroups(date).backgrounds;
Expand All @@ -291,19 +306,26 @@ describe('Content Schedule', () => {
expect(matcher.match('backgroundkey022021')).to.be.true;
});

it('allows background even yeared backgrounds in first half of year', () => {
it('allows even yeared backgrounds in first half of year', () => {
const date = new Date('2025-02-08');
const matcher = getAllScheduleMatchingGroups(date).backgrounds;
expect(matcher.match('backgroundkey022024')).to.be.true;
expect(matcher.match('backgroundkey082022')).to.be.true;
});

it('allows background odd yeared backgrounds in second half of year', () => {
it('allows odd yeared backgrounds in second half of year', () => {
const date = new Date('2024-08-08');
const matcher = getAllScheduleMatchingGroups(date).backgrounds;
expect(matcher.match('backgroundkey022023')).to.be.true;
expect(matcher.match('backgroundkey082021')).to.be.true;
});

it('allows odd yeared backgrounds in beginning of january', () => {
const date = new Date('2025-01-06');
const matcher = getAllScheduleMatchingGroups(date).backgrounds;
expect(matcher.match('backgroundkey122024'), 'backgroundkey122024').to.be.true;
expect(matcher.match('backgroundkey062023'), 'backgroundkey062022').to.be.true;
});
});

describe('timeTravelers matcher', () => {
Expand Down
7 changes: 0 additions & 7 deletions website/client/src/components/appFooter.vue
Original file line number Diff line number Diff line change
Expand Up @@ -131,13 +131,6 @@
>{{ $t('requestFeature') }}
</a>
</li>
<li>
<a
href="https://habitica.fandom.com/"
target="_blank"
>{{ $t('wiki') }}
</a>
</li>
</ul>
</div>
<!-- Developers -->
Expand Down
5 changes: 0 additions & 5 deletions website/client/src/components/header/menu.vue
Original file line number Diff line number Diff line change
Expand Up @@ -334,11 +334,6 @@
href="https://docs.google.com/forms/d/e/1FAIpQLScPhrwq_7P1C6PTrI3lbvTsvqGyTNnGzp1ugi1Ml0PFee_p5g/viewform?usp=sf_link"
target="_blank"
>{{ $t('requestFeature') }}</a>
<a
class="topbar-dropdown-item dropdown-item"
href="https://habitica.fandom.com/wiki/Habitica_Wiki"
target="_blank"
>{{ $t('wiki') }}</a>
</div>
</li>
</b-navbar-nav>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,7 @@
</div>
<div slot="drawer-header">
<div class="drawer-tab-container">
<div class="clearfix">
<div class="clearfix mb-2">
<toggle-switch
class="float-right align-with-tab"
:label="$t(costumeMode ? 'useCostume' : 'autoEquipBattleGear')"
Expand Down
27 changes: 5 additions & 22 deletions website/client/src/components/shared/inventoryDrawer.vue
Original file line number Diff line number Diff line change
Expand Up @@ -27,27 +27,15 @@
@changedPosition="tabSelected($event)"
>
<div slot="right-item">
<div
<a
v-once
id="petLikeToEatMarket"
class="drawer-help-text"
href="/static/faq#pet-foods"
target="_blank"
>
<span>{{ $t('petLikeToEat') + ' ' }}</span>
<span
class="svg-icon inline icon-16"
v-html="icons.information"
></span>
</div>
<b-popover
target="petLikeToEatMarket"
:placement="'top'"
>
<div
v-once
class="popover-content-text"
v-html="$t('petLikeToEatText')"
></div>
</b-popover>
<span>{{ $t('petLikeToEat') }}</span>
</a>
</div>
</drawer-header-tabs>
</div>
Expand Down Expand Up @@ -80,7 +68,6 @@
import _filter from 'lodash/filter';
import { mapState } from '@/libs/store';
import inventoryUtils from '@/mixins/inventoryUtils';
import svgInformation from '@/assets/svg/information.svg';
import Drawer from '@/components/ui/drawer';
import DrawerSlider from '@/components/ui/drawerSlider';
Expand Down Expand Up @@ -127,10 +114,6 @@ export default {
},
],
selectedDrawerTab: this.defaultSelectedTab,
icons: Object.freeze({
information: svgInformation,
}),
};
},
computed: {
Expand Down
2 changes: 1 addition & 1 deletion website/client/src/components/tasks/taskModal.vue
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@
>
<a
target="_blank"
href="https://habitica.fandom.com/wiki/Markdown_Cheat_Sheet"
href="https://github.com/HabitRPG/habitica/wiki/Markdown-in-Habitica"
:class="cssClass('headings')"
>{{ $t('markdownHelpLink') }}</a>
</small>
Expand Down
6 changes: 6 additions & 0 deletions website/client/src/components/ui/drawer.vue
Original file line number Diff line number Diff line change
Expand Up @@ -129,6 +129,12 @@
padding-top: 6px;
padding-left: 24px;
padding-right: 24px;
a {
line-height: 1.33;
color: $gray-500;
font-weight: normal;
}
}
.drawer-tab {
Expand Down
31 changes: 30 additions & 1 deletion website/common/locales/de/gear.json
Original file line number Diff line number Diff line change
Expand Up @@ -3160,5 +3160,34 @@
"shieldArmoireBasketballText": "Basketball",
"backMystery202301Text": "Fünf Schweife der Tapferkeit",
"shieldArmoirePaintersPaletteText": "Malerpalette",
"shieldSpecialSpring2023HealerText": "Lilienmieder"
"shieldSpecialSpring2023HealerText": "Lilienmieder",
"shieldSpecialWinter2023HealerNotes": "Dein Lied von Frost und Schnee besänftigt die Geister aller, die es hören. Erhöht Ausdauer um <%= con %>. Limitierte Ausgabe 2022-2023 Winterausrüstung.",
"shieldMystery202409Notes": "Der leuchtende Rubin auf diesem Stab bezieht seine Kraft aus der Spätsommersonne. Gewährt keinen Attributbonus. September 2024 Abonnentengegenstand.",
"backMystery202410Text": "Kandiszucker-Schweif",
"headAccessoryMystery202410Text": "Kandiszucker-Ohren",
"headAccessoryMystery202410Notes": "Sind das die Geräusche von „Süßes-oder-Saures“-Kindern an deiner Tür? Gewährt keinen Attributbonus. Oktober 2024 Abonnentengegenstand.",
"bodyMystery202411Text": "Stachelige Schulterplatten",
"headArmoireFestiveHelperHatNotes": "Urlaubstipp Nr. 27: Halten Sie einen Helferhut bereit. Dieser ist groß genug, um ein Notfallspielzeug darunter zu verstecken! Erhöht Intelligenz um <%= int %>. Verzauberter Schrank: Festliches Helferset (Gegenstand 1 von 2)",
"shieldMystery202501Notes": "Dekoriere jede Außenumgebung mit einer diamantenen Schicht aus schimmerndem Frost. Gewährt keinen Attributbonus. Jänner 2025 Abonnentengegenstand.",
"shieldSpecialWinter2025WarriorNotes": "Blocke alle unerwünschten Ablenkungen mit diesem Schild, das so stark wie ein Elch ist. Erhöht Ausdauer um <%= con %>. Limitierte Ausgabe Winterausrüstung 2024-2025.",
"backMystery202410Notes": "Dieser Schweif wird bei der Erwähnung von gruseligen Leckereien aktiv. Gewährt keinen Attributbonus. Oktober 2024 Abonnentengegenstand.",
"shieldArmoireSafetyFlashlightNotes": "Warte, hast du das Geräusch gehört? Schnell! Leuchte mit deiner Taschenlampe in den Schatten dort drüben. Hmmm. Sieht aus, als wäre es nur der Wind gewesen. Oder war es...? Erhöht Ausdauer um <%= con %>. Verzauberter Schrank: Gruselnacht-Set (Gegenstand 1 von 2)",
"bodyMystery202411Notes": "Die furchterregenden Stacheln auf diesen Schulterplatten sind perfekt, um deine Aufgabenliste in Angriff zu nehmen. Gewährt keinen Attributbonus. November 2024 Abonnentengegenstand.",
"shieldSpecialSpring2023WarriorNotes": "Sammle die schönsten Blumen des Frühlings in diesem farbenfrohen Blumenstrauß. Erhöht Ausdauer um <%= con %>. Limitierte Ausgabe 2023 Frühlingsausrüstung.",
"shieldSpecialWinter2023HealerText": "Coole Lieder",
"shieldSpecialSpring2023HealerNotes": "Ein Beitrag zu einem Genesungsbesuch oder Teil eines Rituals für einen Frühlingstanz! Erhöht Ausdauer um <%= con %>. Limitierte Ausgabe 2023 Frühlingsausrüstung.",
"shieldSpecialWinter2024WarriorNotes": "Du bist ein tougher Keks, der niemals bröselt! Erhöht Ausdauer um <%= con %>. Limitierte Ausgabe Winter 2023-2024 Ausrüstung.",
"shieldSpecialSummer2023HealerNotes": "Du verbirgst und beschützt es. Es hält neugierige Monster davon ab, zu nahe zu kommen. Erhöht Ausdauer um <%= con %>. Limitierte Ausgabe 2023 Sommerausrüstung.",
"shieldSpecialFall2023RogueNotes": "Mit den stärksten Zaubern verstärkt, um mächtige Tränke zu halten. Erhöht Stärke um <%= str %>. Limitierte Ausgabe 2023 Herbstausrüstung.",
"shieldSpecialFall2023WarriorNotes": "Perfekt, um es dir bequem zu machen, während du einen Horrorfilm genießt... Aber wir verraten es niemand, wenn du es bei den grusligen Szenen in den Arm nehmen musst! Erhöht Ausdauer um <%= con %>. Limitierte Ausgabe 2023 Herbstausrüstung.",
"shieldSpecialSummer2023WarriorNotes": "Beschwöre diesen Goldfischgeist für einen extra Schub Bestärkung und Begleitung während eines Kampfes. Ausdauer um <%= con %>. Limitierte Ausgabe 2023 Sommerausrüstung.",
"shieldSpecialWinter2024HealerNotes": "Wie praktisch, dass du beim Einfrieren eisschmelzende Materialien dabei hattest! Erhöht Ausdauer um <%= con %>. Limitierte Ausgabe Winter 2023-2024 Ausrüstung.",
"shieldSpecialSummer2024WarriorNotes": "Zu denen, die behaupten, du könntest deine Ziele nicht erreichen, sag einfach: Sprich zu meiner Hand, äh, Flosse! Erhöht Ausdauer um <%= con %>. Limitierte Ausgabe Sommer 2024 Ausrüstung.",
"shieldSpecialSummer2024HealerNotes": "Dieses glänzende Schild ist sogar stärker als ein Meeresschneckenstab. Erhöht Ausdauer um <%= con %>. Limitierte Ausgabe Sommer 2024 Ausrüstung.",
"shieldSpecialFall2023HealerNotes": "Mit seinem festen Kern und dem weichen Bezug ist er ideal, um ihn auf Feinde zu schleudern oder um sich darauf zu setzen, wenn man eine Pause von seinen Abenteuern braucht. Erhöht Ausdauer um <%= con %>. Limitierte Ausgabe 2023 Herbstausrüstung.",
"shieldSpecialFall2024HealerNotes": "Neue Aufgaben, die nach deiner Aufmerksamkeit greifen, prallen ab, bis du deine aktuelle Mission erledigt hast. Erhöht Ausdauer um <%= con %>. Limitierte Ausgabe Herbstausrüstung 2024.",
"shieldSpecialFall2024WarriorNotes": "Komplikationen bei Aufgaben werden von deinem Schild absorbiert und machen dich entschlossener. Erhöht Ausdauer um <%= con %>. Limitierte Ausgabe Herbstausrüstung 2024.",
"shieldSpecialFallRogue2024Notes": "Die Aufgaben selbst werden von den Wirbeln und Spiralen dieser hypnotischen Waffe überwältigt. Erhöht Stärke um <%= str %>. Limitierte Ausgabe Herbstausrüstung 2024.",
"headAccessoryMystery202212Notes": "Mit dieser verschnörkelten goldenen Tiara werden deine Herzlichkeit und Freundschaft neue Höhen erreichen. Gewährt keinen Attributbonus. Dezember 2022 Abonnentengegenstand.",
"headAccessoryMystery202212Text": "Eis-Tiara"
}
6 changes: 3 additions & 3 deletions website/common/locales/de/subscriber.json
Original file line number Diff line number Diff line change
Expand Up @@ -240,8 +240,8 @@
"monthlyMysticHourglass": "Monatliche Mystische Sanduhr",
"recurringMonthly": "Monatlich wiederkehrend",
"recurringNMonthly": "Alle <%= length %> Monate wiederkehrend",
"unlockNGems": "Schalte sofort <strong><%= count %> Edelsteine</strong> pro Monat frei",
"maxGemCap": "Maximale <strong>Edelsteinobergrenze</strong>",
"unlockNGems": "Schalte <strong><%= count %> Edelsteine</strong> pro Monat im Markt frei",
"maxGemCap": "Starte automatisch mit der maximalen <strong>Edelsteinobergrenze</strong>",
"monthlyGemsLabel": "Monatliche Edelsteine",
"popular": "Beliebt",
"immediate12Hourglasses": "Erhalte <strong>12 Mystische Sanduhren</strong> unmittelbar nach deinem ersten 12-Monats-Abonnement!",
Expand All @@ -250,7 +250,7 @@
"giftSubscriptionLeadText": "Wähle unten das Abonnement aus, das du verschenken willst! Dieser Kauf erneuert sich nicht automatisch.",
"oneMonthGift": "Für 1 Monat",
"nMonthsGift": "Für <%= months %> Monate",
"unlockNGemsGift": "Sie schalten sofort <strong><%= count %> Edelsteine</strong> pro Monat frei",
"unlockNGemsGift": "Sie schalten <strong><%= count %> Edelsteine</strong> pro Monat im Markt frei",
"earn2GemsGift": "Sie verdienen <strong>+2 Edelsteine</strong> für jeden Monat, in dem sie abonniert haben",
"maxGemCapGift": "Sie werden die maximale <strong>Edelsteinobergrenze</strong> haben",
"mysterySet202412": "Zuckerstangen-Waldkaninchen-Set",
Expand Down
2 changes: 1 addition & 1 deletion website/common/locales/en/generic.json
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
"user": "User",
"market": "Market",
"newSubscriberItem": "You have new <span class=\"notification-bold-blue\">Mystery Items</span>",
"subscriberItemText": "Each month, subscribers will receive a mystery item. It becomes available at the beginning of the month. See the wiki's 'Mystery Item' page for more information.",
"subscriberItemText": "Subscribers receive a new mystery gear set at the beginning of each month!",
"all": "All",
"none": "None",
"more": "<%= count %> more",
Expand Down
2 changes: 1 addition & 1 deletion website/common/locales/en/groups.json
Original file line number Diff line number Diff line change
Expand Up @@ -286,7 +286,7 @@
"guildSummaryPlaceholder": "Write a short explanation of your Group. What is the main purpose of the Group and what will its members do?",
"groupDescription": "Description",
"guildDescriptionPlaceholder": "Use this section to go into more detail about everything that members should know about your Group. Useful tips, helpful links, and encouraging statements all go here!",
"markdownFormattingHelp": "[Markdown formatting help](https://habitica.fandom.com/wiki/Markdown_Cheat_Sheet)",
"markdownFormattingHelp": "[Markdown formatting help](https://github.com/HabitRPG/habitica/wiki/Markdown-in-Habitica)",
"partyDescriptionPlaceholder": "This is our Party's description. It describes what we do in this Party. If you want to learn more about what we do in this Party, read the description. Party on.",
"guildGemCostInfo": "A Gem cost promotes high quality Guilds and is transferred into your Guild's bank.",
"noGuildsTitle": "You aren't a member of any Guilds.",
Expand Down
4 changes: 2 additions & 2 deletions website/common/locales/en/pets.json
Original file line number Diff line number Diff line change
Expand Up @@ -90,8 +90,8 @@
"mountsReleased": "Mounts released",
"welcomeStable": "Welcome to your Pets and Mounts!",
"welcomeStableText": "Welcome to the stable! I’m Matt, the beastmaster. Every time you complete a task, you'll have a random chance at receiving an Egg or a Hatching Potion to hatch Pets. When you hatch a Pet, it will appear here! Click a Pet's image to add it to your Avatar. Feed them with the Pet Food you find and they'll grow into hardy Mounts.",
"petLikeToEat": "What does my pet like to eat?",
"petLikeToEatText": "Pets will grow no matter what you feed them, but they'll grow faster if you feed them the one Pet Food that they like best. Experiment to find out the pattern, or see the answers here: <br/> <a href=\"https://habitica.fandom.com/wiki/Food_Preferences\" target=\"_blank\">https://habitica.fandom.com/wiki/Food_Preferences</a>",
"petLikeToEat": "What does my Pet like to eat?",
"petLikeToEatText": "Pets will grow no matter what you feed them, but they'll grow faster if you feed them the one Pet Food that they like best. Experiment to find out the pattern, or see the answers here: <br/> <a href=\"/static/faq#pet-foods\" target=\"_blank\">https://habitica.com/static/faq#pet-foods</a>",
"filterByStandard": "Standard",
"filterByMagicPotion": "Magic Potion",
"filterByQuest": "Quest",
Expand Down
4 changes: 2 additions & 2 deletions website/common/locales/es/gear.json
Original file line number Diff line number Diff line change
Expand Up @@ -3248,10 +3248,10 @@
"shieldSpecialWinter2025HealerNotes": "El regalo perfecto te está esperando a que lo abras. ¿Que clase de brujería contendrá? Aumenta la Constitución en <%= con %>. Equipamiento de edición limitada Invierno 2024-2025.",
"armorArmoireSnowyFluffTrimmedCoatNotes": "Cuando los primeros copos de nieve caigan a tu alrededor, este abrigo no solo te mantendrá calentito, sino que también te ayudará a mimetizarte perfectamente con el entorno nevado. ¡Deslízate sobre el hielo con estilo! Aumenta la fuerza y la inteligencia en <%= attrs %> cada una. Armario encantado: conjunto de sombrero de trampero nevado (artículo 2 de 2).",
"armorArmoireSnowyFluffTrimmedCoatText": "Chaqueta de plumas con capucha",
"headMystery202501Text": "Sombrero de Aglutinador de escarcha",
"headMystery202501Text": "Sombrero de Vinculaescarcha Pálido",
"headMystery202501Notes": "Este sombrero brillante genera un ambiente festivo y luminoso a tu alrededor en todo momento. No aporta ningún beneficio. Artículo para suscriptores de enero de 2025.",
"headArmoireSnowyTrapperHatText": "Sombrero de trampero nevado",
"headArmoireSnowyTrapperHatNotes": "Las orejas azules y congeladas serán cosa del pasado. ¡Disfruta de una calidez acogedora con estilo! Aumenta la Constitución y la Percepción en <%= attrs %> cada una. Armario encantado: conjunto de sombrero de trampero nevado (objeto 1 de 2).",
"shieldMystery202501Text": "Bastón del Aglutinador de escarcha",
"shieldMystery202501Text": "Bastón de Vinculaescarcha Pálido",
"shieldMystery202501Notes": "Decora cualquier escenario al aire libre con una capa de diamante de escarcha brillante. No aporta ningún beneficio. Artículo para suscriptores de enero de 2025."
}
3 changes: 2 additions & 1 deletion website/common/locales/es/npc.json
Original file line number Diff line number Diff line change
Expand Up @@ -131,5 +131,6 @@
"helpSupportHabitica": "Ayuda a apoyar a Habitica",
"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."
"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!"
}
Loading

0 comments on commit 1bb4670

Please sign in to comment.