diff --git a/public/js/controllers/inventoryCtrl.js b/public/js/controllers/inventoryCtrl.js index 7f8b51da1e..ca3740f872 100644 --- a/public/js/controllers/inventoryCtrl.js +++ b/public/js/controllers/inventoryCtrl.js @@ -104,7 +104,7 @@ habitrpg.controller("InventoryCtrl", ['$rootScope', '$scope', '$window', 'User', var food = $scope.selectedFood if (food.key == 'Saddle') { if (!$window.confirm(window.env.t('useSaddle', {pet: pet}))) return; - } else if (!$window.confirm(window.env.t('feedPet', {name: petDisplayName, article: food.article, text: food.text}))) { + } else if (!$window.confirm(window.env.t('feedPet', {name: petDisplayName, article: food.article, text: food.text()}))) { return; } User.user.ops.feed({params:{pet: pet, food: food.key}}); @@ -124,7 +124,7 @@ habitrpg.controller("InventoryCtrl", ['$rootScope', '$scope', '$window', 'User', var item = Content.quests[quest]; var completedPrevious = !item.previous || (User.user.achievements.quests && User.user.achievements.quests[item.previous]); if (!completedPrevious) - return alert(window.env.t('mustComplete', {quest: $rootScope.Content.quests[item.previous].text})); + return alert(window.env.t('mustComplete', {quest: $rootScope.Content.quests[item.previous].text()})); if (item.lvl && item.lvl > user.stats.lvl) return alert(window.env.t('mustLevel', {level: item.lvl})); $rootScope.selectedQuest = item; diff --git a/public/js/controllers/rootCtrl.js b/public/js/controllers/rootCtrl.js index 924d0afe5a..5ecce87aa2 100644 --- a/public/js/controllers/rootCtrl.js +++ b/public/js/controllers/rootCtrl.js @@ -204,11 +204,11 @@ habitrpg.controller("RootCtrl", ['$scope', '$rootScope', '$location', 'User', '$ $http.post('/api/v2/user/class/cast/'+spell.key+'?targetType='+type+'&targetId='+targetId) .success(function(){ - var msg = window.env.t('youCast', {spell: spell.text}); + var msg = window.env.t('youCast', {spell: spell.text()}); switch (type) { - case 'task': msg = window.env.t('youCastTarget', {spell: spell.text, target: target.text});break; - case 'user': msg = window.env.t('youCastTarget', {spell: spell.text, target: target.profile.name});break; - case 'party': msg = window.env.t('youCastParty', {spell: spell.text});break; + case 'task': msg = window.env.t('youCastTarget', {spell: spell.text(), target: target.text});break; + case 'user': msg = window.env.t('youCastTarget', {spell: spell.text(), target: target.profile.name});break; + case 'party': msg = window.env.t('youCastParty', {spell: spell.text()});break; } Notification.text(msg); }); diff --git a/src/controllers/user.js b/src/controllers/user.js index e1d15f213a..c4c8cb3cf9 100644 --- a/src/controllers/user.js +++ b/src/controllers/user.js @@ -336,7 +336,7 @@ api.cast = function(req, res, next) { if (group) { series.push(function(cb2){ - var message = '`'+user.profile.name+' casts '+spell.text + (targetType=='user' ? ' on '+found.profile.name : ' for the party')+'.`'; + var message = '`'+user.profile.name+' casts '+spell.text() + (targetType=='user' ? ' on '+found.profile.name : ' for the party')+'.`'; group.sendChat(message); group.save(cb2); }) diff --git a/src/models/user.js b/src/models/user.js index 4e019af4aa..c72989b21b 100644 --- a/src/models/user.js +++ b/src/models/user.js @@ -305,14 +305,14 @@ var UserSchema = new Schema({ id: { type: String, 'default': shared.uuid }, name: String, challenge: String - }], 'default': shared.content.userDefaults.tags}, + }]}, challenges: [{type: 'String', ref:'Challenge'}], - habits: {type:[TaskSchemas.HabitSchema], 'default': shared.content.userDefaults.habits}, - dailys: {type:[TaskSchemas.DailySchema], 'default': shared.content.userDefaults.dailys}, - todos: {type:[TaskSchemas.TodoSchema], 'default': shared.content.userDefaults.todos}, - rewards: {type:[TaskSchemas.RewardSchema], 'default': shared.content.userDefaults.rewards}, + habits: {type:[TaskSchemas.HabitSchema]}, + dailys: {type:[TaskSchemas.DailySchema]}, + todos: {type:[TaskSchemas.TodoSchema]}, + rewards: {type:[TaskSchemas.RewardSchema]}, extra: Schema.Types.Mixed @@ -348,6 +348,27 @@ UserSchema.post('init', function(doc){ UserSchema.pre('save', function(next) { + // Populate new users with default content + if (this.isNew){ + //TODO for some reason this doesn't work here: `_.merge(this, shared.content.userDefaults);` + var self = this; + + _.each('habits', 'dailys', 'todos', 'rewards', 'tags', function(taskType){ + self.taskType = _.map(shared.content.userDefaults[taskType], function(task){ + var newTask = task; + + // Render task's text and notes in user's language + newTask.text = task.text(); + newTask.notes = task.notes(); + + return newTask; + }); + }); + + // tasks automatically get id=helpers.uuid() from TaskSchema id.default, but tags are Schema.Types.Mixed - so we need to manually invoke here + _.each(this.tags, function(tag){tag.id = shared.uuid();}) + } + //this.markModified('tasks'); if (_.isNaN(this.preferences.dayStart) || this.preferences.dayStart < 0 || this.preferences.dayStart > 23) { this.preferences.dayStart = 0; diff --git a/views/options/inventory/inventory.jade b/views/options/inventory/inventory.jade index b59ef452c4..b44f3a4a39 100644 --- a/views/options/inventory/inventory.jade +++ b/views/options/inventory/inventory.jade @@ -32,15 +32,15 @@ script(type='text/ng-template', id='partials/options.inventory.drops.html') p.muted(ng-show='eggCount < 1')=env.t('noEggs') div(ng-repeat='(egg,points) in ownedItems(user.items.eggs)') //TODO move positioning this styling to css - button.customize-option(popover='{{Content.eggs[egg].notes}}', popover-title='{{Content.eggs[egg].text}} Egg', popover-trigger='mouseenter', popover-placement='right', ng-click='chooseEgg(egg)', class='Pet_Egg_{{egg}}', ng-class='{selectableInventory: selectedPotion && !(user.items.pets[egg+"-"+selectedPotion.key]>0)}') + button.customize-option(popover='{{Content.eggs[egg].notes()}}', popover-title='{{Content.eggs[egg].text()}} Egg', popover-trigger='mouseenter', popover-placement='right', ng-click='chooseEgg(egg)', class='Pet_Egg_{{egg}}', ng-class='{selectableInventory: selectedPotion && !(user.items.pets[egg+"-"+selectedPotion.key]>0)}') .badge.badge-info.stack-count {{points}} - //-p {{Content.eggs[egg].text}} + //-p {{Content.eggs[egg].text()}} li.customize-menu menu.hatchingPotion-menu(label=(env.t('hatchingPotions') + ' ({{potCount}})')) p.muted(ng-show='potCount < 1')=env.t('noHatchingPotions') div(ng-repeat='(pot,points) in ownedItems(user.items.hatchingPotions)') - button.customize-option(popover='{{Content.hatchingPotions[pot].notes}}', popover-title='{{Content.hatchingPotions[pot].text}} Potion', popover-trigger='mouseenter', popover-placement='right', ng-click='choosePotion(pot)', class='Pet_HatchingPotion_{{pot}}', ng-class='{selectableInventory: selectedEgg && !(user.items.pets[selectedEgg.key+"-"+pot]>0)}') + button.customize-option(popover='{{Content.hatchingPotions[pot].notes()}}', popover-title='{{Content.hatchingPotions[pot].text()}} Potion', popover-trigger='mouseenter', popover-placement='right', ng-click='choosePotion(pot)', class='Pet_HatchingPotion_{{pot}}', ng-class='{selectableInventory: selectedEgg && !(user.items.pets[selectedEgg.key+"-"+pot]>0)}') .badge.badge-info.stack-count {{points}} li.customize-menu @@ -48,20 +48,20 @@ script(type='text/ng-template', id='partials/options.inventory.drops.html') p.muted(ng-show='questCount < 1')=env.t('noScrolls') p.muted!=env.t('scrollsText1') + ' ' + env.t('scrollsText2') + '' div(ng-repeat='(quest_key,points) in ownedItems(user.items.quests)', ng-init='quest = Content.quests[quest_key]') - button.customize-option(popover="{{quest.previous && !user.achievements.quests[quest.previous] ? env.t('scrollsPre') : quest.notes | htmlDecode}}", popover-title='{{quest.text}}', popover-trigger='mouseenter', popover-placement='right', ng-click='showQuest(quest_key)', class='inventory_quest_scroll', ng-class='{locked: quest.previous && !user.achievements.quests[quest.previous]}') + button.customize-option(popover="{{quest.previous && !user.achievements.quests[quest.previous] ? env.t('scrollsPre') : quest.notes() | htmlDecode}}", popover-title='{{quest.text()}}', popover-trigger='mouseenter', popover-placement='right', ng-click='showQuest(quest_key)', class='inventory_quest_scroll', ng-class='{locked: quest.previous && !user.achievements.quests[quest.previous]}') .badge.badge-info.stack-count {{points}} li.customize-menu menu.pets-menu(label=env.t('food') + ' ({{foodCount}})') p(ng-show='foodCount < 1')=env.t('noFood') div(ng-repeat='(food,points) in ownedItems(user.items.food)') - button.customize-option(popover='{{Content.food[food].notes}}', popover-title='{{Content.food[food].text}}', popover-trigger='mouseenter', popover-placement='right', ng-click='chooseFood(food)', class='Pet_Food_{{food}}') + button.customize-option(popover='{{Content.food[food].notes()}}', popover-title='{{Content.food[food].text()}}', popover-trigger='mouseenter', popover-placement='right', ng-click='chooseFood(food)', class='Pet_Food_{{food}}') .badge.badge-info.stack-count {{points}} li.customize-menu(ng-if='user.items.special.snowball') menu.pets-menu(label=env.t('special')) div - button.customize-option(popover='{{Content.special.snowball.notes}}', popover-title='{{Content.special.snowball.text}}', popover-trigger='mouseenter', popover-placement='right', ng-click='castStart(Content.special.snowball)', class='inventory_special_snowball') + button.customize-option(popover='{{Content.special.snowball.notes()}}', popover-title='{{Content.special.snowball.text()}}', popover-trigger='mouseenter', popover-placement='right', ng-click='castStart(Content.special.snowball)', class='inventory_special_snowball') .badge.badge-info.stack-count {{user.items.special.snowball}} li.customize-menu(ng-if='user.items.special.valentineReceived[0]') @@ -91,14 +91,14 @@ script(type='text/ng-template', id='partials/options.inventory.drops.html') .popover-content p=env.t('welcomeMarket') p - button.btn.btn-primary(ng-show='selectedEgg', ng-click='sellInventory()')=env.t('sellForGold', {item: "{{selectedEgg.text}}", gold: "{{selectedEgg.value}}"}) - button.btn.btn-primary(ng-show='selectedPotion', ng-click='sellInventory()')=env.t('sellForGold', {item: "{{selectedPotion.text}}", gold: "{{selectedPotion.value}}"}) - button.btn.btn-primary(ng-show='selectedFood', ng-click='sellInventory()')=env.t('sellForGold', {item: "{{selectedFood.text}}", gold: "{{selectedFood.value}}"}) + button.btn.btn-primary(ng-show='selectedEgg', ng-click='sellInventory()')=env.t('sellForGold', {item: "{{selectedEgg.text()}}", gold: "{{selectedEgg.value}}"}) + button.btn.btn-primary(ng-show='selectedPotion', ng-click='sellInventory()')=env.t('sellForGold', {item: "{{selectedPotion.text()}}", gold: "{{selectedPotion.value}}"}) + button.btn.btn-primary(ng-show='selectedFood', ng-click='sellInventory()')=env.t('sellForGold', {item: "{{selectedFood.text()}}", gold: "{{selectedFood.value}}"}) menu.inventory-list(type='list') li.customize-menu menu.pets-menu(label=env.t('eggs')) div(ng-repeat='egg in Content.eggs', ng-if='egg.canBuy') - button.customize-option(popover='{{egg.notes}}', popover-title='{{egg.text}} Egg', popover-trigger='mouseenter', popover-placement='left', ng-click='purchase("eggs", egg)', class='Pet_Egg_{{egg.key}}') + button.customize-option(popover='{{egg.notes()}}', popover-title='{{egg.text()}} Egg', popover-trigger='mouseenter', popover-placement='left', ng-click='purchase("eggs", egg)', class='Pet_Egg_{{egg.key}}') p | {{egg.value}} span.Pet_Currency_Gem1x.inline-gems @@ -121,7 +121,7 @@ script(type='text/ng-template', id='partials/options.inventory.drops.html') li.customize-menu menu.pets-menu(label=env.t('hatchingPotions')) div(ng-repeat='pot in Content.hatchingPotions') - button.customize-option(popover='{{pot.notes}}', popover-title='{{pot.text}} Potion', popover-trigger='mouseenter', popover-placement='left', ng-click='purchase("hatchingPotions", pot)', class='Pet_HatchingPotion_{{pot.key}}') + button.customize-option(popover='{{pot.notes()}}', popover-title='{{pot.text()}} Potion', popover-trigger='mouseenter', popover-placement='left', ng-click='purchase("hatchingPotions", pot)', class='Pet_HatchingPotion_{{pot.key}}') p | {{pot.value}} span.Pet_Currency_Gem1x.inline-gems @@ -129,7 +129,7 @@ script(type='text/ng-template', id='partials/options.inventory.drops.html') li.customize-menu menu.pets-menu(label=env.t('food')) div(ng-repeat='food in Content.food', ng-if='food.canBuy') - button.customize-option(popover='{{food.notes}}', popover-title='{{food.text}}', popover-trigger='mouseenter', popover-placement='left', ng-click='purchase("food", food)', class='Pet_Food_{{food.key}}') + button.customize-option(popover='{{food.notes()}}', popover-title='{{food.text()}}', popover-trigger='mouseenter', popover-placement='left', ng-click='purchase("food", food)', class='Pet_Food_{{food.key}}') p | {{food.value}} span.Pet_Currency_Gem1x.inline-gems @@ -138,7 +138,7 @@ script(type='text/ng-template', id='partials/options.inventory.drops.html') menu.pets-menu(label=env.t('quests')) p.muted!=env.t('scrollsText1') + ' ' + env.t('scrollsText2') + '' div(ng-repeat='quest in Content.quests', ng-if='quest.canBuy') - button.customize-option(popover="{{quest.previous && !user.achievements.quests[quest.previous] ? env.t('scrollsPre') : quest.notes | htmlDecode}}", popover-title='{{quest.text}}', popover-trigger='mouseenter', popover-placement='left', ng-click='buyQuest(quest.key)', class='inventory_quest_scroll', ng-class='{locked: quest.previous && !user.achievements.quests[quest.previous]}') + button.customize-option(popover="{{quest.previous && !user.achievements.quests[quest.previous] ? env.t('scrollsPre') : quest.notes() | htmlDecode}}", popover-title='{{quest.text()}}', popover-trigger='mouseenter', popover-placement='left', ng-click='buyQuest(quest.key)', class='inventory_quest_scroll', ng-class='{locked: quest.previous && !user.achievements.quests[quest.previous]}') p | {{quest.value}} span.Pet_Currency_Gem1x.inline-gems @@ -151,7 +151,7 @@ script(type='text/ng-template', id='partials/options.inventory.drops.html') | 4 span.Pet_Currency_Gem1x.inline-gems //-div - button.customize-option(popover='{{Content.spells.special.snowball.notes}}', popover-title='{{Content.spells.special.snowball.text}}', popover-trigger='mouseenter', popover-placement='left', ng-click='purchase("special", Content.spells.special.snowball)', class='inventory_special_snowball') + button.customize-option(popover='{{Content.spells.special.snowball.notes()}}', popover-title='{{Content.spells.special.snowball.text()}}', popover-trigger='mouseenter', popover-placement='left', ng-click='purchase("special", Content.spells.special.snowball)', class='inventory_special_snowball') p | {{Content.spells.special.snowball.value}} span.Pet_Currency_Gem1x.inline-gems diff --git a/views/options/inventory/stable.jade b/views/options/inventory/stable.jade index 32247a0b1b..d3583012ea 100644 --- a/views/options/inventory/stable.jade +++ b/views/options/inventory/stable.jade @@ -15,7 +15,7 @@ script(type='text/ng-template', id='partials/options.inventory.mounts.html') menu.pets(type='list') li.customize-menu(ng-repeat='egg in Content.eggs') menu - div(ng-repeat='potion in Content.hatchingPotions', popover-trigger='mouseenter', popover='{{potion.text}} {{egg.mountText}}', popover-placement='bottom', ng-init='mount = egg.key+"-"+potion.key') + div(ng-repeat='potion in Content.hatchingPotions', popover-trigger='mouseenter', popover='{{potion.text()}} {{egg.mountText()}}', popover-placement='bottom', ng-init='mount = egg.key+"-"+potion.key') button(class="pet-button Mount_Head_{{mount}}", ng-show='user.items.mounts[mount]', ng-class='{active: user.items.currentMount == mount}', ng-click='chooseMount(egg.key, potion.key)') //div(class='Mount_Head_{{mount}}') button(class="pet-button pet-not-owned", ng-hide='user.items.mounts[mount]') @@ -33,7 +33,7 @@ mixin petList(source) menu.pets(type='list') li.customize-menu(ng-repeat='egg in #{source}') menu - div(ng-repeat='potion in Content.hatchingPotions', popover-trigger='mouseenter', popover='{{potion.text}} {{egg.text}}', popover-placement='bottom', ng-init='pet = egg.key+"-"+potion.key') + div(ng-repeat='potion in Content.hatchingPotions', popover-trigger='mouseenter', popover='{{potion.text()}} {{egg.text()}}', popover-placement='bottom', ng-init='pet = egg.key+"-"+potion.key') button(class="pet-button Pet-{{pet}}", ng-if='user.items.pets[pet]>0', ng-class='{active: user.items.currentPet == pet, selectableInventory: selectedFood}', ng-click='choosePet(egg.key, potion.key)') .progress(ng-show='!user.items.mounts[pet] && egg.key!="Egg"') .progress-bar.progress-bar-success(style="width:{{user.items.pets[pet]/.5}}%") @@ -85,7 +85,7 @@ script(type='text/ng-template', id='partials/options.inventory.pets.html') li.customize-menu menu.pets-menu(label=env.t('food')) div(ng-repeat='(food,points) in ownedItems(user.items.food)') - button.customize-option(popover-append-to-body='true', popover='{{Content.food[food].notes}}', popover-title='{{Content.food[food].text}}', popover-trigger='mouseenter', popover-placement='left', ng-click='chooseFood(food)', class='Pet_Food_{{food}}') + button.customize-option(popover-append-to-body='true', popover='{{Content.food[food].notes()}}', popover-title='{{Content.food[food].text()}}', popover-trigger='mouseenter', popover-placement='left', ng-click='chooseFood(food)', class='Pet_Food_{{food}}') .badge.badge-info.stack-count {{points}} // Remove this once we have images in - p {{Content.food[food].text}} + p {{Content.food[food].text()}} diff --git a/views/options/social/group.jade b/views/options/social/group.jade index 6bc92d1ac6..96ed43d961 100644 --- a/views/options/social/group.jade +++ b/views/options/social/group.jade @@ -12,8 +12,8 @@ a.pull-right.gem-wallet(popover-trigger='mouseenter', popover-title=env.t('guild // ------ Bosses ------- .panel.panel-default(bindonce='group', ng-if='group.type==="party" && group.quest.key') .panel-heading - h3.panel-title(ng-if='group.quest.active==false')=env.t('questInvitation') + ' {{Content.quests[group.quest.key].text}}' - h3.panel-title(ng-if='group.quest.active==true') {{Content.quests[group.quest.key].text}} + h3.panel-title(ng-if='group.quest.active==false')=env.t('questInvitation') + ' {{Content.quests[group.quest.key].text()}}' + h3.panel-title(ng-if='group.quest.active==true') {{Content.quests[group.quest.key].text()}} .panel-body.modal-fixed-height div(ng-if='group.quest.active==false') table.table.table-striped @@ -50,11 +50,11 @@ a.pull-right.gem-wallet(popover-trigger='mouseenter', popover-title=env.t('guild tr(ng-repeat='(k,v) in group.quest.progress.collect', class='quest_collected_{{v >= Content.quests[group.quest.key].collect[k].count}}') td div.pull-left(class='quest_{{group.quest.key}}_{{k}}') - | {{Content.quests[group.quest.key].collect[k].text}} + | {{Content.quests[group.quest.key].collect[k].text()}} td {{v}} / {{Content.quests[group.quest.key].collect[k].count}} - div(ng-bind-html='Content.quests[group.quest.key].notes') + div(ng-bind-html='Content.quests[group.quest.key].notes()') hr h5=env.t('participants') table.table.table-striped diff --git a/views/shared/modals/buy-gems.jade b/views/shared/modals/buy-gems.jade index 155a90d863..60f36bddf9 100644 --- a/views/shared/modals/buy-gems.jade +++ b/views/shared/modals/buy-gems.jade @@ -1,4 +1,3 @@ -//Why is shown? Because of script here at line 24!!!!!!!!! script(id='modals/buyGems.html', type='text/ng-template') .modal-body .buy-gems diff --git a/views/shared/modals/drops.jade b/views/shared/modals/drops.jade index fcb91e808a..7c12e4212b 100644 --- a/views/shared/modals/drops.jade +++ b/views/shared/modals/drops.jade @@ -5,7 +5,7 @@ script(type='text/ng-template', id='modals/dropsEnabled.html') p figure .item-drop-icon(class='Pet_Egg_Wolf') - span!=env.t('firstDrop', {eggText: "{{Content.eggs.Wolf.text}}", eggNotes: "{{Content.eggs.Wolf.notes}}"}) + span!=env.t('firstDrop', {eggText: "{{Content.eggs.Wolf.text()}}", eggNotes: "{{Content.eggs.Wolf.notes()}}"}) br p figure diff --git a/views/shared/modals/quests.jade b/views/shared/modals/quests.jade index 4d3a471efd..a34c96c5d7 100644 --- a/views/shared/modals/quests.jade +++ b/views/shared/modals/quests.jade @@ -3,7 +3,7 @@ script(id='partials/options.social.party.quest-rewards.html', type='text/ng-temp h5 {{header}} table.table.table-striped tr(ng-repeat='drop in quest.drop.items') - td {{drop.text}} + td {{drop.text()}} tr td {{quest.drop.exp}} =env.t('experience') @@ -13,20 +13,20 @@ script(id='partials/options.social.party.quest-rewards.html', type='text/ng-temp script(type='text/ng-template', id='modals/questCompleted.html') .modal-header - h4 "{{Content.quests[user.party.quest.completed].text}}" + h4 "{{Content.quests[user.party.quest.completed].text()}}" =env.t('completed') .modal-body - p {{Content.quests[user.party.quest.completed].completion}} + p {{Content.quests[user.party.quest.completed].completion()}} quest-rewards(key='{{user.party.quest.completed}}', header=env.t('youReceived')) .modal-footer button.btn.btn-primary(ng-click='set({"party.quest.completed":""}); $close()')=env.t('accept') script(type='text/ng-template', id='modals/showQuest.html') .modal-header - h4 {{selectedQuest.text}} + h4 {{selectedQuest.text()}} .modal-body .pull-right(class='quest_{{selectedQuest.key}}') - div(ng-bind-html='selectedQuest.notes') + div(ng-bind-html='selectedQuest.notes()') quest-rewards(key='{{selectedQuest.key}}') hr .npc_ian.pull-left @@ -38,10 +38,10 @@ script(type='text/ng-template', id='modals/showQuest.html') script(type='text/ng-template', id='modals/buyQuest.html') .modal-header - h4 {{selectedQuest.text}} + h4 {{selectedQuest.text()}} .modal-body .pull-right(class='quest_{{selectedQuest.key}}') - div(ng-bind-html='selectedQuest.notes') + div(ng-bind-html='selectedQuest.notes()') quest-rewards(key='{{selectedQuest.key}}') .modal-footer button.btn.btn-default(ng-click='closeQuest(); $close()')=env.t('neverMind') @@ -50,9 +50,9 @@ script(type='text/ng-template', id='modals/buyQuest.html') script(type='text/ng-template', id='modals/questInvitation.html') .modal-header h4=env.t('questInvitation') - | {{Content.quests[party.quest.key].text}} + | {{Content.quests[party.quest.key].text()}} .modal-body - div(ng-bind-html='Content.quests[party.quest.key].notes') + div(ng-bind-html='Content.quests[party.quest.key].notes()') quest-rewards(key='{{party.quest.key}}') .modal-footer button.btn.btn-default(ng-click='questHold = true; $close()')=env.t('askLater') diff --git a/views/shared/profiles/stats.jade b/views/shared/profiles/stats.jade index b833f27368..5b568e8002 100644 --- a/views/shared/profiles/stats.jade +++ b/views/shared/profiles/stats.jade @@ -22,7 +22,7 @@ table.table.table-striped(ng-show='user.flags.itemsEnabled') // FIXME this isn't refreshing properly. On first party modal, correct. Second party modal click gives the previous gear. It's always one behind. tr(ng-repeat='(k,v) in profile.items.gear.equipped', ng-init='piece=Content.gear.flat[v]', ng-show='piece') td - strong {{piece.text}}:  + strong {{piece.text()}}:  span(ng-repeat='stat in ["str","con","per","int"]', ng-show='piece[stat]') {{piece[stat]}} {{stat.toUpperCase()}}  h4=env.t('attributes') diff --git a/views/shared/tasks/lists.jade b/views/shared/tasks/lists.jade index d980f73a51..9eb9f01b75 100644 --- a/views/shared/tasks/lists.jade +++ b/views/shared/tasks/lists.jade @@ -52,7 +52,7 @@ script(id='templates/habitrpg-tasks.html', type="text/ng-template") // Events ul.items.rewards(ng-if='main && list.type=="reward" && (user.items.special.snowball>0 || user.stats.buffs.snowball)') - li.task.reward-item(ng-if='user.items.special.snowball>0',popover-trigger='mouseenter', popover-placement='top', popover='{{Content.spells.special.snowball.notes}}') + li.task.reward-item(ng-if='user.items.special.snowball>0',popover-trigger='mouseenter', popover-placement='top', popover='{{Content.spells.special.snowball.notes()}}') .task-meta-controls span.task-notes span.glyphicon.glyphicon-comment @@ -62,9 +62,9 @@ script(id='templates/habitrpg-tasks.html', type="text/ng-template") span.reward-cost {{user.items.special.snowball}} span.shop_snowball(style='display:inline-block;vertical-align:top;') // main content - p.task-text {{Content.spells.special.snowball.text}} + p.task-text {{Content.spells.special.snowball.text()}} - li.task.reward-item(ng-if='user.stats.buffs.snowball',popover-trigger='mouseenter', popover-placement='top', popover='{{Content.spells.special.salt.notes}}') + li.task.reward-item(ng-if='user.stats.buffs.snowball',popover-trigger='mouseenter', popover-placement='top', popover='{{Content.spells.special.salt.notes()}}') .task-meta-controls span.task-notes span.glyphicon.glyphicon-comment @@ -75,11 +75,11 @@ script(id='templates/habitrpg-tasks.html', type="text/ng-template") span.shop_gold // main content span.shop_salt.shop-sprite.item-img - p.task-text {{Content.spells.special.salt.text}} + p.task-text {{Content.spells.special.salt.text()}} // Spells ul.items(ng-if='main && list.type=="reward" && user.stats.class && !user.preferences.disableClasses') - li.task.reward-item(ng-repeat='(k,spell) in Content.spells[user.stats.class]', ng-if='user.stats.lvl >= spell.lvl',popover-trigger='mouseenter', popover-placement='top', popover='{{spell.notes}}') + li.task.reward-item(ng-repeat='(k,spell) in Content.spells[user.stats.class]', ng-if='user.stats.lvl >= spell.lvl',popover-trigger='mouseenter', popover-placement='top', popover='{{spell.notes()}}') .task-meta-controls span.task-notes span.glyphicon.glyphicon-comment @@ -91,7 +91,7 @@ script(id='templates/habitrpg-tasks.html', type="text/ng-template") =env.t('mp') // main content span(ng-class='{"shop_{{spell.key}} shop-sprite item-img": true}') - p.task-text {{spell.text}} + p.task-text {{spell.text()}} br