diff --git a/views/options/inventory/inventory.jade b/views/options/inventory/inventory.jade
index 38205b3bf2..dda21c55ce 100644
--- a/views/options/inventory/inventory.jade
+++ b/views/options/inventory/inventory.jade
@@ -47,7 +47,7 @@ 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}}'), 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}}", 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
diff --git a/views/options/social/challenge-box.jade b/views/options/social/challenge-box.jade
index 09d545635b..d5534095fe 100644
--- a/views/options/social/challenge-box.jade
+++ b/views/options/social/challenge-box.jade
@@ -1,8 +1,7 @@
// ------ Challenges -------
.modal(style='position: relative;top: auto;left: auto;right: auto;margin: 0 auto 20px;z-index: 1;max-width: 100%;')
.modal-header
- h3
- | Challenges
+ h3=env.t('challenges')
a.pull-right(target='_blank', href='https://trello.com/card/challenges-individual-party-guild-public/50e5d3684fe3a7266b0036d6/58')
i.icon-question-sign
.modal-body(bindonce='group.challenges')
@@ -12,5 +11,5 @@
td
a(ui-sref='options.social.challenges.detail({cid:challenge._id})') {{challenge.name}}
div(ng-if='group.challenges.length == 0')
- p.
- No challenges yet, visit Challenges to create one.
\ No newline at end of file
+ p
+ =env.t('noChallenges') + " " + env.t('challenges') + " " + env.t('toCreate')
diff --git a/views/options/social/challenges.jade b/views/options/social/challenges.jade
index ceb3b2ec18..2378aafbd8 100644
--- a/views/options/social/challenges.jade
+++ b/views/options/social/challenges.jade
@@ -1,12 +1,12 @@
script(type='text/ng-template', id='partials/options.social.challenges.detail.close.html')
- a.btn.btn-small.btn-danger(ng-click="delete(closingChal)") Delete
- h5 - Or -
- select(ui-select2, ng-required=true, ng-model='closingChal.winner', data-placeholder='Select winner, close challenge', ng-change='selectWinner(closingChal)', )
+ a.btn.btn-small.btn-danger(ng-click="delete(closingChal)")=env.t('delete')
+ h5=env.t('minusOr')
+ select(ui-select2, ng-required=true, ng-model='closingChal.winner', data-placeholder=env.t('selectWinner'), ng-change='selectWinner(closingChal)', )
option(value='')
option(ng-repeat='u in closingChal.members', value='{{u._id}}') {{u.profile.name}}
small.pull-right
- a(ng-click='cancelClosing(closingChal)') cancel
+ a(ng-click='cancelClosing(closingChal)')=env.t('cancel')
script(type='text/ng-template', id='partials/options.social.challenges.detail.member.html')
.modal.wide-modal
@@ -16,43 +16,44 @@ script(type='text/ng-template', id='partials/options.social.challenges.detail.me
.modal-body
habitrpg-tasks(main=false)
.modal-footer
- a.btn(ng-click='$state.go("^")') Close
+ a.btn(ng-click='$state.go("^")')=env.t('close')
script(type='text/ng-template', id='partials/options.social.challenges.detail.html')
// Edit button
div(bindonce='challenge', ng-if='challenge.leader==user._id')
ul.unstyled
li(ng-hide='challenge._locked==false')
- button.btn.btn-small.btn-default(ng-click='challenge._locked = false') Edit
- button.btn.btn-small.btn-warning(ng-click='close(challenge, $event)', tooltip='Delete or select winner') End Challenge
+ button.btn.btn-small.btn-default(ng-click='challenge._locked = false')=env.t('edit')
+ button.btn.btn-small.btn-warning(ng-click='close(challenge, $event)', tooltip=env.t('deleteOrSelect'))=env.t('endChallenge')
li(ng-show='challenge._locked==false')
- button.btn.btn-small.btn-primary(ng-click='save(challenge)') Save
- button.btn.btn-small.btn-default(ng-click='challenge._locked=true') Cancel
+ button.btn.btn-small.btn-primary(ng-click='save(challenge)')=env.t('save')
+ button.btn.btn-small.btn-default(ng-click='challenge._locked=true')=env.t('cancel')
div(ng-show='challenge._locked==false')
.-options
input.option-content(type='text', ng-model='challenge.name')
.option-medium
- input.option-content(type='text', minlength="3", maxlength="16", ng-model='challenge.shortName', placeholder='Tag Name', required)
- textarea.option-content(cols='3', placeholder='Description', ng-model='challenge.description')
+ input.option-content(type='text', minlength="3", maxlength="16", ng-model='challenge.shortName', placeholder=env.t('challengeTag'), required)
+ textarea.option-content(cols='3', placeholder=env.t('challengeDescr'), ng-model='challenge.description')
hr
.well(bindonce='challenge', ng-if='challenge.description')
markdown(ng-model='challenge.description')
- i.icon-question-sign(popover="These are the challenge's tasks. As users participate, they will change color and gain graphs to show you the overall progress of the group.", popover-trigger='mouseenter', popover-placement='right')
+ i.icon-question-sign(popover=env.t('challengeDiscription'), popover-trigger='mouseenter', popover-placement='right')
habitrpg-tasks(obj='challenge', main=false)
// Member List
div(bindonce='challenge', ng-if='challenge.members.length > 0')
- a.btn.btn-primary.btn-small.pull-right(href='/api/v2/challenges/{{challenge._id}}/csv') Export to CSV
- h3 How's Everyone Doing?
+ a.btn.btn-primary.btn-small.pull-right(href='/api/v2/challenges/{{challenge._id}}/csv')
+ =env.t('exportChallengeCSV')
+ h3=env.t('hows')
menu
button.customize-option(ng-repeat='member in challenge.members', ng-click='toggleMember(challenge._id, member._id)') {{member.profile.name}}
div(ui-view)
// Accordion version if we choose that instead
//- div(ng-if='challenge.members')
- h4 How's Everyone Doing?
+ h4=env.t('hows')
.accordion-group(bindonce='challenge.members', ng-repeat='member in challenge.members')
.accordion-heading
a.accordion-toggle(ng-click='toggleMember(challenge._id, member._id)') {{member.profile.name}}
@@ -63,59 +64,59 @@ script(type='text/ng-template', id='partials/options.social.challenges.detail.ht
script(type='text/ng-template', id='partials/options.social.challenges.html')
.row-fluid
.span2.well#challenges-filters
- h3 Filter:
- h4 Groups
+ h3=env.t('filter') + ':'
+ h4=env.t('groups')
ul.unstyled
- a.btn.btn-mini.pull-left(ng-click='selectAll()') All
- a.btn.btn-mini(ng-click='selectNone()') None
+ a.btn.btn-mini.pull-left(ng-click='selectAll()')=env.t('all')
+ a.btn.btn-mini(ng-click='selectNone()')=env.t('noNone')
br
label.checkbox(ng-repeat='group in groupsFilter')
input(type='checkbox', ng-model='search.group[group._id]')
| {{group.name}}
- h4 Membership
+ h4=env.t('membership')
label.radio
input(type='radio', name='search-participation-radio', ng-click='search._isMember = true')
- | Participating
+ =env.t('participating')
label.radio
input(type='radio', name='search-participation-radio', ng-click='search._isMember = false')
- | Not Participating
+ =env.t('notParticipating')
label.radio
input(type='radio', name='search-participation-radio', ng-click='search._isMember = undefined', checked='checked')
- | Either
+ =env.t('either')
.span10
// Creation form
- button.btn.btn-success#create-challenge-btn(ng-click='create()', ng-hide='newChallenge') Create Challenge
+ button.btn.btn-success#create-challenge-btn(ng-click='create()', ng-hide='newChallenge')=env.t('createChallenge')
.create-challenge-from.well(ng-if='newChallenge')
form(ng-submit='save(newChallenge)')
div
- input.btn.btn-success(type='submit', value='Save')
- input.btn.btn-danger(type='button', ng-click='discard()', value='Discard')
+ input.btn.btn-success(type='submit', value=env.t('save'))
+ input.btn.btn-danger(type='button', ng-click='discard()', value=env.t('discard'))
select(ng-model='newChallenge.group', ng-required='required', name='Group', ng-options='g._id as g.name for g in groups')
.challenge-options
- input.option-content(type='text', ng-model='newChallenge.name', placeholder='Challenge Title', required='required')
+ input.option-content(type='text', ng-model='newChallenge.name', placeholder=env.t('challengeTitle'), required='required')
.option-medium
- input.option-content(type='text', minlength="3", maxlength="16", ng-model='newChallenge.shortName', placeholder='Tag Name', required)
+ input.option-content(type='text', minlength="3", maxlength="16", ng-model='newChallenge.shortName', placeholder=env.t('challengeTag'), required)
a(target='_blank', href='http://habitrpg.wikia.com/wiki/Tags')
- i.icon-question-sign(popover="Challenges appear on tag-lists & task-tooltips. So while you'll want a descriptive title above, you'll also need a 'short name'. Eg, 'Lose 10 pounds in 3 months' might become '-10lb' (Click the '?' for more info).", popover-trigger='mouseenter', popover-placement='right')
+ i.icon-question-sign(popover=env.t('challengeTagPop'), popover-trigger='mouseenter', popover-placement='right')
- textarea.option-content(cols='3', placeholder='Description', ng-model='newChallenge.description')
+ textarea.option-content(cols='3', placeholder=env.t('challengeDescr'), ng-model='newChallenge.description')
//- what's going on here?
br
br
.option-medium
- input.option-content(type='number', min="{{newChallenge.group=='habitrpg' ? 1 : 0}}", max="{{maxPrize}}", ng-model='newChallenge.prize', placeholder='Prize')
+ input.option-content(type='number', min="{{newChallenge.group=='habitrpg' ? 1 : 0}}", max="{{maxPrize}}", ng-model='newChallenge.prize', placeholder=env.t('prize'))
span.input-suffix.Pet_Currency_Gem1x.inline-gems
- i.icon-question-sign(popover="If someone can 'win' your challenge, you can optionally award that winner a Gem prize. Max = #gems you own (+ guild.gems, if you created this challenge's guild). Note: This prize can't be changed later.", popover-trigger='mouseenter', popover-placement='right')
- span(ng-show='newChallenge.group=="habitrpg"').
- Minimum 1 Gem for public challenges (helps prevent spam, it really does).
+ i.icon-question-sign(popover=env.t('prizePop'), popover-trigger='mouseenter', popover-placement='right')
+ span(ng-show='newChallenge.group=="habitrpg"')
+ =env.t('min1Gem') + ' ' + env.t('publicChallenges') + ' ' + env.t('helpsPrevent')
.option-medium(ng-if='user.contributor.admin')
label.checkbox
input(type='checkbox', ng-model='newChallenge.official')
- | Official HabitRPG Challenge
+ =env.t('officialChallenge')
habitrpg-tasks(main=false, obj='newChallenge')
@@ -124,12 +125,14 @@ script(type='text/ng-template', id='partials/options.social.challenges.html')
.accordion-heading
ul.pull-right.challenge-accordion-header-specs
li(ng-if='challenge.official')
- span.label.label-success Official HabitRPG Challenge
+ span.label.label-success=env.t('officialChallenge')
li {{challenge.group.name}}
li
- | by
+ =env.t('by')
strong {{challenge.leader.profile.name}}
- li {{challenge.memberCount}} Participants
+ li
+ | {{challenge.memberCount}}
+ = ' ' + env.t('participants')
li(ng-show='challenge.prize')
// prize
table(ng-show='challenge.prize')
@@ -137,16 +140,16 @@ script(type='text/ng-template', id='partials/options.social.challenges.html')
td {{challenge.prize}}
td
.Pet_Currency_Gem1x(style='margin-left:0px')
- td Prize
+ td=env.t('prize')
li
// leave / join
a.btn.btn-small.btn-danger(ng-show='challenge._isMember', ng-click='clickLeave(challenge, $event)')
i.icon-ban-circle
- | Leave
+ =env.t('leave')
a.btn.btn-small.btn-success(ng-hide='challenge._isMember', ng-click='join(challenge)')
i.icon-ok
- | Join
+ =env.t('join')
a.accordion-toggle(ng-click='toggle(challenge._id)') {{challenge.name}}
.accordion-body(ng-class='{collapse: !$stateParams.cid == challenge._id}')
.accordion-inner(ng-if='$stateParams.cid == challenge._id')
- div(ui-view)
\ No newline at end of file
+ div(ui-view)
diff --git a/views/options/social/chat-box.jade b/views/options/social/chat-box.jade
index aeaf95c742..e2abc37737 100644
--- a/views/options/social/chat-box.jade
+++ b/views/options/social/chat-box.jade
@@ -10,7 +10,7 @@ form.chat-form(ng-submit='postChat(group,message.content)')
table.pull-right
tr
td
- input.btn.chat-btn(type='submit', value='Send Chat', ng-class='{disabled: _sending == true}')
+ input.btn.chat-btn(type='submit', value=env.t('sendChat'), ng-class='{disabled: _sending == true}')
td
- button.btn(type="button", ng-click='sync(group)', tooltip='Fetch Recent Messages')
- i(class='pull-right icon-refresh')
\ No newline at end of file
+ button.btn(type="button", ng-click='sync(group)', tooltip=env.t('toolTipMsg'))
+ i(class='pull-right icon-refresh')
diff --git a/views/options/social/chat-message.jade b/views/options/social/chat-message.jade
index 8bc40630c3..6aab142028 100644
--- a/views/options/social/chat-message.jade
+++ b/views/options/social/chat-message.jade
@@ -9,6 +9,6 @@ li.chat-message(bindonce='group.chat', ng-repeat='message in group.chat', bo-cla
a.label(ng-show='countExists(message.likes)',ng-class='{"label-success":message.likes[user._id]}',ng-click='likeChatMessage(group,message)') +{{countExists(message.likes)}}
a.chat-plus-one.muted(ng-show='!countExists(message.likes)',ng-click='likeChatMessage(group,message)',style='background-color:#eee;padding:3px 3px 0px 3px') +1
a(bo-show='user.contributor.admin || message.uuid == user.id', ng-click='deleteChatMessage(group, message)',style='padding: 0px 3px')
- i.icon-trash(tooltip='Delete')
+ i.icon-trash(tooltip=env.t('delete'))
a.label.chat-message(bo-show='message.user', class='float-label', bo-class='{"label-npc": message.backer.npc, "label-contributor-{{message.contributor.level}}":message.contributor.level}', ng-click='clickMember(message.uuid, true)')
- span(tooltip='{{contribText(message.contributor, message.backer)}}') {{message.user}}
\ No newline at end of file
+ span(tooltip='{{contribText(message.contributor, message.backer)}}') {{message.user}}
diff --git a/views/options/social/create-group.jade b/views/options/social/create-group.jade
index 1e8d48c96f..d4e954c706 100644
--- a/views/options/social/create-group.jade
+++ b/views/options/social/create-group.jade
@@ -5,22 +5,21 @@ form.form-horizontal(ng-submit='create(newGroup)')
.controls
input#new-group-name.input-medium.option-content(required, type='text', placeholder='{{text}} Name', ng-model='newGroup.name')
.control-group
- label.control-label(for='new-group-description') Description
+ label.control-label(for='new-group-description')=env.t('description')
.controls
- textarea#new-group-description.option-content(cols='3', placeholder='Description', ng-model='newGroup.description')
+ textarea#new-group-description.option-content(cols='3', placeholder=env.t('description'), ng-model='newGroup.description')
.control-group(ng-show='type=="guild"')
.controls
label.radio
input(type='radio', name='new-group-privacy', value='public', ng-model='newGroup.privacy')
- | Public
+ =env.t('public')
label.radio
input(type='radio', name='new-group-privacy', value='private', ng-model='newGroup.privacy')
- | Invite Only
- input.btn(type='submit', ng-disabled='!newGroup.privacy && !newGroup.name', value='Create')
- span.gem-cost 4 Gems
+ =env.t('inviteOnly')
+ input.btn(type='submit', ng-disabled='!newGroup.privacy && !newGroup.name', value=env.t('create'))
+ span.gem-cost= '4 ' + env.t('gems')
p
- small
- | The Gem cost promotes high quality Guilds, and is transferred into your Guild's bank for use as prizes in Guild Challenges!
+ small=env.t('gemCost')
.control-group(ng-show='type=="party"')
.controls
- input.btn(type='submit', value='Create')
+ input.btn(type='submit', value=env.t('create'))
diff --git a/views/options/social/group.jade b/views/options/social/group.jade
index a839e8e09d..16397795cb 100644
--- a/views/options/social/group.jade
+++ b/views/options/social/group.jade
@@ -1,8 +1,9 @@
-a.pull-right.gem-wallet(popover-trigger='mouseenter', popover-title='Guild Bank', popover='Gems which your guild leader can use for challenge prizes.', popover-placement='left', popover-html='true')
+a.pull-right.gem-wallet(popover-trigger='mouseenter', popover-title=env.t('guildBankPop1'), popover=env.t('guildBankPop2'), popover-placement='left', popover-html='true')
// +
span.task-action-btn.tile.flush.neutral
.Pet_Currency_Gem2x.Gems
- | {{group.balance * 4 | number:0 }} Guild Gems
+ | {{group.balance * 4 | number:0 }}
+ =env.t('guildGems')
.row-fluid
.span4
@@ -10,18 +11,18 @@ a.pull-right.gem-wallet(popover-trigger='mouseenter', popover-title='Guild Bank'
// ------ Bosses -------
.modal.inline-modal(bindonce='group', ng-if='group.type==="party" && group.quest.key')
.modal-header
- h3(ng-if='group.quest.active==false') Quest Invitation: {{Content.quests[group.quest.key].text}}
+ h3(ng-if='group.quest.active==false')=env.t('questInv') + '{{Content.quests[group.quest.key].text}}'
h3(ng-if='group.quest.active==true') {{Content.quests[group.quest.key].text}}
.modal-body
div(ng-if='group.quest.active==false')
table.table.table-striped
tr(ng-repeat='member in group.members')
td {{member.profile.name}}
- td {{group.quest.members[member._id] === true ? 'Accepted' : group.quest.members[member._id] === false ? 'Rejected' : 'Pending'}}
+ td {{group.quest.members[member._id] === true ? env.t('accepted') : group.quest.members[member._id] === false ? env.t('rejected') : env.t('pending')}}
hr
.npc_ian.pull-left
- p Once all members have either accepted or rejected, the quest begins. Only those that clicked "accept" will be able to participate in the quest and recieve the drops. If members are pending too long (inactive?), you can start without them by clicking "Begin".
- button.btn.btn-small.btn-warning(ng-if='!group.quest.leader || group.quest.leader==user._id', ng-click='party.$questAccept({"force":true})') Begin
+ p=env.t('questStart')
+ button.btn.btn-small.btn-warning(ng-if='!group.quest.leader || group.quest.leader==user._id', ng-click='party.$questAccept({"force":true})')=env.t('begin')
//-TODO Cancel button
//-TODO Both force-start & cancel should only be available to quest-initiator
@@ -35,14 +36,14 @@ a.pull-right.gem-wallet(popover-trigger='mouseenter', popover-title='Guild Bank'
i.icon-heart
| {{group.quest.hp | number:0}} / {{Content.quests[group.quest.key].hp}}
.hero-stats
- .meter.health(title='Boss Health')
+ .meter.health(title=env.t('bossHP'))
.bar(style='width: {{Shared.percent(group.quest.progress.hp, Content.quests[group.quest.key].boss.hp)}}%;')
span.meter-text
i.icon-heart
| {{group.quest.progress.hp | number:0}} / {{Content.quests[group.quest.key].boss.hp}}
div(ng-if='Content.quests[group.quest.key].collect')
- h4 Collected:
+ h4=env.t('collected') + ':'
table.table.table-striped
tr(ng-repeat='(k,v) in group.quest.progress.collect')
td
@@ -52,7 +53,7 @@ a.pull-right.gem-wallet(popover-trigger='mouseenter', popover-title='Guild Bank'
p {{Content.quests[group.quest.key].notes}}
hr
- h5 Participants
+ h5=env.t('participants')
table.table.table-striped
tr(ng-repeat='(k,v) in group.members', ng-show='group.quest.members[v._id]')
td {{v.profile.name}}
@@ -60,39 +61,39 @@ a.pull-right.gem-wallet(popover-trigger='mouseenter', popover-title='Guild Bank'
div(ng-if='Content.quests[group.quest.key].boss')
.npc_ian.pull-left
- p To hurt a boss, complete your Dailies and To-Dos. Higher task damage means higher boss damage (completing reds, Wizard spells, Warrior attacks, etc). The boss will deal damage to the party for every Daily you've missed (multiplied by the boss's Strength), so help your friends by completing your dailies! All damage to and from a boss is tallied on cron (your day roll-over).
+ p=env.t('bossDmg1') + ' ' + env.t('bossDmg2') + ''
br
- p Only participants will fight the boss and share in the quest loot. If you die during a boss-battle, you get booted from the battle. If everyone dies once, the quest fails.
+ p=env.t('bossDmg3')
div(ng-if='Content.quests[group.quest.key].collect')
.npc_ian.pull-left
- p To collect items, do your positive tasks. Quest items drop just like normal items; however, you won't see the drops until the next day, then everything you've found will be tallied up and contributed to the pile.
+ p=env.t('bossColl1')
br
- p Only participants can collect items and share in the quest loot. If you die during a quest, you get booted from the quest. If everyone dies once, the quest fails.
+ p=env.t('bossColl2')
- button.btn.btn-mini.btn-danger(ng-if='!group.quest.leader || group.quest.leader==user._id', ng-click='questAbort()') Abort
+ button.btn.btn-mini.btn-danger(ng-if='!group.quest.leader || group.quest.leader==user._id', ng-click='questAbort()')=env.t('abort')
// ------ Information -------
.modal.inline-modal
.modal-header(bindonce='group')
span(ng-if='group.leader == user.id')
- button.btn.btn-primary.pull-right(ng-click='save(group)', ng-show='group._editing') Save
- button.btn.btn-default.pull-right(ng-click='group._editing = true', ng-hide='group._editing') Edit Group
+ button.btn.btn-primary.pull-right(ng-click='save(group)', ng-show='group._editing')=env.t('save')
+ button.btn.btn-default.pull-right(ng-click='group._editing = true', ng-hide='group._editing')=env.t('editGroup')
h3 {{group.name}}
.modal-body
div.whatever-options(ng-show='group._editing')
.control-group.option-large
- label.control-label Group Name
- input.option-content(type='text', ng-model='group.name', placeholder='Group Name')
+ label.control-labe=env.t('groupName')
+ input.option-content(type='text', ng-model='group.name', placeholder=env.t('groupName'))
.control-group.option-large
- label.control-label Description
- textarea.option-content(style='height:15em;', placeholder='Description shown in public Guilds list (Markdown OK)', ng-model='group.description')
+ label.control-label=env.t('description')
+ textarea.option-content(style='height:15em;', placeholder=env.t('groupdescr'), ng-model='group.description')
.control-group.option-large
- label.control-label Logo URL
- input.option-content(type='url', placeholder='Logo URL', ng-model='group.logo')
+ label.control-label=env.t('logoUrl')
+ input.option-content(type='url', placeholder=env.t('logoUrl'), ng-model='group.logo')
- h4 Assign Group Leader
+ h4=env.t('assignLeader')
select#group-leader-selection(ng-model='group._newLeader', ng-options='member.profile.name for member in group.members')
div(ng-show='!group._editing')
@@ -106,10 +107,10 @@ a.pull-right.gem-wallet(popover-trigger='mouseenter', popover-title='Guild Bank'
// ------ Members -------
.modal.inline-modal
.modal-header
- h3 Members
+ h3=env.t('members')
.modal-body
span
- | Party Members list ordering
+ =env.t('partyList')
select#partyOrder(
style='width:140px',
ng-model='user.party.order',
@@ -123,22 +124,24 @@ a.pull-right.gem-wallet(popover-trigger='mouseenter', popover-title='Guild Bank'
// allow leaders to ban members
div(ng-show='group.leader == user.id && user.id!=member._id')
a(ng-click='removeMember(group, member, true)')
- i.icon-ban-circle(tooltip='Boot Member')
+ i.icon-ban-circle(tooltip=env.t('banTip'))
a
span(ng-class='{"badge badge-info": group.leader==member._id}', ng-click='clickMember(member._id, true)')
| {{member.profile.name}}
tr(ng-if='group.memberCount > group.members.length')
- td.
- {{group.memberCount - group.members.length}} more members
+ td
+ |{{group.memberCount - group.members.length}}
+ = ' ' + env.t('moremembers')
+ |
- h4(ng-show='group.invites.length > 0') Invited
+ h4(ng-show='group.invites.length > 0')=env.t('invited')
table.table.table-striped
tr(ng-repeat='invite in group.invites')
td
// allow leaders to ban members
div(ng-show='group.leader == user.id')
a(ng-click='removeMember(group, invite, false)')
- i.icon-ban-circle(tooltip='Boot Member')
+ i.icon-ban-circle(tooltip=env.t('banTip'))
a
span(ng-click='clickMember(invite._id, true)')
| {{invite.profile.name}}
@@ -146,16 +149,16 @@ a.pull-right.gem-wallet(popover-trigger='mouseenter', popover-title='Guild Bank'
form.form-inline(ng-submit='invite(group)')
//.alert.alert-danger(ng-show='_groupError') {{_groupError}}
.control-group.option-large
- input.option-content(type='text', placeholder='User Id', ng-model='group.invitee')
- input.btn(type='submit', value='Invite')
+ input.option-content(type='text', placeholder=env.t('userId'), ng-model='group.invitee')
+ input.btn(type='submit', value=env.t('invite'))
- a.btn.btn-danger(data-id='{{group.id}}', ng-click='clickLeave(group, $event)') Leave
+ a.btn.btn-danger(data-id='{{group.id}}', ng-click='clickLeave(group, $event)')=env.t('leave')
.span8
div.blah-options(ng-show='group._editing')
.option-large
- textarea.option-content(style='height:15em;', placeholder='Message from group leader (Markdown OK)', ng-model='group.leaderMessage')
+ textarea.option-content(style='height:15em;', placeholder=env.t('leaderMsg'), ng-model='group.leaderMessage')
table(ng-show='group.leaderMessage')
tr
td
diff --git a/views/options/social/hall.jade b/views/options/social/hall.jade
index 99ccbe5e60..f5b4cc76d4 100644
--- a/views/options/social/hall.jade
+++ b/views/options/social/hall.jade
@@ -2,10 +2,10 @@ script(type='text/ng-template', id='partials/options.social.hall.html')
ul.nav.nav-tabs
li(ng-class="{ active: $state.includes('options.social.hall.heroes') }")
a(ui-sref='options.social.hall.heroes')
- | Hall of Heroes
+ =env.t('hallHeroes')
li(ng-class="{ active: $state.includes('options.social.hall.patrons') }")
a(ui-sref='options.social.hall.patrons')
- | Hall of Patrons
+ =env.t('hallPatrons')
.tab-content
.tab-pane.active
@@ -13,30 +13,30 @@ script(type='text/ng-template', id='partials/options.social.hall.html')
script(type='text/ng-template', id='partials/options.social.hall.heroes.html')
div.well(ng-if='user.contributor.admin')
- h2 Reward User
+ h2=env.t('rewardUser')
form.form-horizontal(ng-submit='loadHero(_heroID)')
.-options
.option-group.option-large
- input.option-content(type='text', ng-model='_heroID', placeholder='UUID')
- button.btn(type='submit') Load User
+ input.option-content(type='text', ng-model='_heroID', placeholder=env.t('UUID'))
+ button.btn(type='submit')=env.t('loadUser')
form.form-horizontal(ng-show='hero', ng-submit='saveHero(hero)')
h3 {{hero.profile.name}}
.-options
.control-group.option-large
- input.option-content(type='text', ng-model='hero.contributor.text', placeholder='Contributor Title (eg, "Blacksmith")')
+ input.option-content(type='text', ng-model='hero.contributor.text', placeholder=env.t('conTitle'))
.control-group.option-medium
input.option-content(type='number', step="any", ng-model='hero.contributor.level')
- span.input-suffix Contrib Level
+ span.input-suffix=env.t('conLevel')
br
- small [1-7] this determines which items, pets, and mounts are available. Also determines name-tag coloring.
- a(target='_blank', href='https://trello.com/c/wkFzONhE/277-contributor-gear') More details.
+ small=env.t('conText')
+ a(target='_blank', href='https://trello.com/c/wkFzONhE/277-contributor-gear')=env.t('moreDetails')
.control-group.option-large
- textarea.option-content(style='height:15em;', placeholder='Contributions', ng-model='hero.contributor.contributions')
+ textarea.option-content(style='height:15em;', placeholder=env.t('contributions'), ng-model='hero.contributor.contributions')
//-include ../../shared/formatting-help
.control-group.option-medium
label.checkbox
input(type='checkbox', ng-model='hero.contributor.admin')
- | Admin
+ =env.t('admin')
hr
@@ -44,30 +44,30 @@ script(type='text/ng-template', id='partials/options.social.hall.heroes.html')
input.option-content(type='number', step="any", ng-model='hero.balance')
span.input-suffix Balance
p
- small `user.balance` is in USD, not in Gems. Aka, if this number is 1, it means 4 gems. Only use this option when manually granting gems to players, don't use it when granting contributor levels. Contrib levels will automatically add 2G/lvl.
+ small= '`user.balance`' + env.t('USD1') + ' ' + env.t('not') + ' ' + env.t('USD2')
.control-group.option-medium
label.checkbox
input(type='checkbox', ng-model='hero.purchased.ads')
- | Hide Ads
+ =env.t('hideAds')
// h4 Backer Status
// Add backer stuff like tier, disable adds, etcs
- button.btn-primary(type='submit') Save
+ button.btn-primary(type='submit')=env.t('save')
table.table.table-striped
tr
thead
tr
- th Name
- th(ng-if='user.contributor.admin') UUID
- th Contrib Level
- th Title
- th Contributions
+ th=env.t('name')
+ th(ng-if='user.contributor.admin')=env.t('UUID')
+ th=env.t('conLevel')
+ th=env.t('title')
+ th=env.t('contributions')
tr(ng-repeat='hero in heroes')
td
- span(ng-if='hero.contributor.admin',popover='Game Master',popover-trigger='mouseenter',popover-placement='right')
+ span(ng-if='hero.contributor.admin',popover=env.t('gamemaster'),popover-trigger='mouseenter',popover-placement='right')
a.label(class='label-contributor-{{hero.contributor.level}}', ng-class='{"label-npc": hero.backer.npc}', ng-click='clickMember(hero._id, true)')
| {{hero.profile.name}}
i.icon-star.icon-white
@@ -84,11 +84,11 @@ script(type='text/ng-template', id='partials/options.social.hall.patrons.html')
tr
thead
tr
- th Name
- th(ng-if='user.contributor.admin') UUID
- th Backer Tier
+ th=env.t('name')
+ th(ng-if='user.contributor.admin')=env.t('UUID')
+ th=env.t('backerTier')
tr(ng-repeat='patron in patrons')
td
a.label(class='label-contributor-{{patron.contributor.level}}', ng-class='{"label-npc": patron.backer.npc}', ng-click='clickMember(patron._id, true)') {{patron.profile.name}}
td(ng-if='user.contributor.admin') {{patron._id}}
- td {{patron.backer.tier}}
\ No newline at end of file
+ td {{patron.backer.tier}}
diff --git a/views/options/social/index.jade b/views/options/social/index.jade
index 4884c8a5fc..ab38723f3b 100644
--- a/views/options/social/index.jade
+++ b/views/options/social/index.jade
@@ -13,38 +13,38 @@ script(type='text/ng-template', id='partials/options.social.party.html')
include ./group
div(ng-hide='group._id')
div(ng-show='user.invitations.party.id')
- h2 You're Invited To {{user.invitations.party.name}}
- a.btn.btn-success(data-type='party', ng-click='join(user.invitations.party)') Accept
- a.btn.btn-danger(ng-click='reject()') Reject
+ h2=env.t('invitedTo') + '{{user.invitations.party.name}}'
+ a.btn.btn-success(data-type='party', ng-click='join(user.invitations.party)')=env.t('accept')
+ a.btn.btn-danger(ng-click='reject()')=env.t('reject')
div(ng-hide='user.invitations.party.id')
- h2 Create A Party
+ h2=env.t('createAParty')
p
- | You are not in a party. You can either create one and invite friends, or if you want to join an existing party, have them enter:
+ =env.t('noPartyText')
pre.prettyprint.
{{user.id}}
include ./create-group
script(type='text/ng-template', id='partials/options.social.guilds.public.html')
div(ng-repeat='invitation in user.invitations.guilds')
- h3 You're Invited To {{invitation.name}}
- a.btn.btn-success(data-type='guild', ng-click='join(invitation)') Accept
- a.btn.btn-danger(ng-click='reject(invitation)') Reject
+ h3=env.t('invitedTo') + '{{invitation.name}}'
+ a.btn.btn-success(data-type='guild', ng-click='join(invitation)')=env.t('accept')
+ a.btn.btn-danger(ng-click='reject(invitation)')=env.t('reject')
// Public Groups
.options-group.option-large.whatever-options
- input.option-content(type='text',ng-model='guildSearch', placeholder='Search')
+ input.option-content(type='text',ng-model='guildSearch', placeholder=env.t('search'))
table.table.table-striped
tr(ng-repeat='group in groups.public | filter:guildSearch')
td
ul.pull-right.challenge-accordion-header-specs
- li {{group.memberCount}} member(s)
+ li='{{group.memberCount}} ' + env.t('members')
li
// join / leave
a.btn.btn-small.btn-danger(ng-show='group._isMember', ng-click='clickLeave(group, $event)')
i.icon-ban-circle
- | Leave
+ =env.t('leave')
a.btn.btn-small.btn-success(ng-hide='group._isMember', ng-click='join(group)')
i.icon-ok
- | Join
+ =env.t('join')
h4 {{group.name}}
p {{group.description}}
@@ -58,13 +58,13 @@ script(type='text/ng-template', id='partials/options.social.guilds.html')
ul.nav.nav-tabs
li(ng-class="{ active: $state.includes('options.social.guilds.public') }")
a(ui-sref='options.social.guilds.public')
- | Public Guilds
+ =env.t('publicGuilds')
li(ng-class="{ active: $stateParams.gid == group._id }", ng-repeat='group in groups.guilds')
a(ui-sref="options.social.guilds.detail({gid:group._id})")
| {{group.name}}
li(ng-class="{ active: $state.includes('options.social.guilds.create') }")
a(ui-sref='options.social.guilds.create')
- | Create Guild
+ =env.t('createGuild')
.tab-content
.tab-pane.active
@@ -75,22 +75,22 @@ script(type='text/ng-template', id='partials/options.social.html')
li(ng-class="{ active: $state.includes('options.social.tavern') }")
a(ui-sref='options.social.tavern')
i.icon-eye-close
- | Tavern
+ =env.t('tavern')
li(ng-class="{ active: $state.includes('options.social.party') }")
a(ui-sref='options.social.party')
- | Party
+ =env.t('party')
li(ng-class="{ active: $state.includes('options.social.guilds') }")
a(ui-sref='options.social.guilds')
- | Guilds
+ =env.t('guilds')
li(ng-class="{ active: $state.includes('options.social.challenges') }")
a(ui-sref='options.social.challenges')
i.icon-bullhorn
- | Challenges
+ =env.t('challenges')
li(ng-class="{ active: $state.includes('options.social.hall') }")
a(ui-sref='options.social.hall')
i.icon-flag
- | Hall
+ =env.t('hall')
.tab-content
.tab-pane.active
- div(ui-view)
\ No newline at end of file
+ div(ui-view)
diff --git a/views/options/social/tavern.jade b/views/options/social/tavern.jade
index 3a184fe441..1574538a99 100644
--- a/views/options/social/tavern.jade
+++ b/views/options/social/tavern.jade
@@ -9,108 +9,114 @@
.popover.static-popover.fade.right.in
.arrow
h3.popover-title
- a(target='_blank', href='http://www.kickstarter.com/profile/2014640723') Daniel
+ a(target='_blank', href='http://www.kickstarter.com/profile/2014640723')=env.t('daniel')
.popover-content
- | Welcome to the Tavern! Stay a while and meet the locals. If you need to rest (going on vacation? sudden illness?), I'll set you up at the inn - Dailies won't hurt you while you're resting.
+ =env.t('danielText')
div
button.btn.btn-large.btn-success(ng-class='{active: user.preferences.sleep}', ng-click='User.user.ops.sleep({})')
- span(ng-show='user.preferences.sleep') Check Out of Inn
- span(ng-hide='user.preferences.sleep') Rest in the Inn
+ span(ng-show='user.preferences.sleep')=env.t('innCheckOut')
+ span(ng-hide='user.preferences.sleep')=env.t('innCheckIn')
.alert.alert-info(ng-show='user.preferences.sleep')
- | Whilst resting, your dailies are saved and aren't affected by day turn-over. Whether you check out tomorrow or in a week's time, you'll continue in the same state as when you checked in. Beware, though: if you are in a Quest, Bosses will still punish you for your fellow party members' mistakes!
+ =env.t('innText')
// Resources
.modal(style='position: relative;top: auto;left: auto;right: auto;margin: 0 auto 20px;z-index: 1;max-width: 100%;')
.modal-header
- h3 Resources
+ h3=env.t('resources')
.modal-body
table.table.table-striped
tr
td
- a(target='_blank', href='http://habitrpg.wikia.com/wiki/Board:Looking_for_a_Group_(LFG)') Looking for Group (Party Wanted) Posts
+ a(target='_blank', href='http://habitrpg.wikia.com/wiki/Board:Looking_for_a_Group_(LFG)')=env.t('lfgPosts')
tr
td
- a(target='_blank', href='https://vimeo.com/57654086') Tutorial
+ a(target='_blank', href='https://vimeo.com/57654086')=env.t('tutorial')
tr
td
- a(target='_blank', href='http://habitrpg.wikia.com/wiki/FAQ') FAQ
+ a(target='_blank', href='http://habitrpg.wikia.com/wiki/FAQ')=env.t('FAQ')
tr
td
- a(target='_blank', href='http://habitrpg.wikia.com/wiki/Glossary') Glossary
+ a(target='_blank', href='http://habitrpg.wikia.com/wiki/Glossary')=env.t('glossary')
tr
td
- a(target='_blank', href='https://github.com/HabitRPG/habitrpg/issues') Report a Problem
+ a(target='_blank', href='https://github.com/HabitRPG/habitrpg/issues')=env.t('reportAP')
tr
td
- a(target='_blank', href='https://trello.com/c/8gzGlle8') Request a Feature
+ a(target='_blank', href='https://trello.com/c/8gzGlle8')=env.t('requestAF')
tr
td
- a(target='_blank', href='http://habitrpg.wikia.com/wiki/Special:Forum') Community Forum
+ a(target='_blank', href='http://habitrpg.wikia.com/wiki/Special:Forum')=env.t('community')
// Player Tiers
- .modal(style='position: relative;top: auto;left: auto;right: auto;margin: 0 auto 20px;z-index: 1;max-width: 100%;', popover="Click tier labels for details.", popover-trigger="mouseenter", popover-placement="right")
+ .modal(style='position: relative;top: auto;left: auto;right: auto;margin: 0 auto 20px;z-index: 1;max-width: 100%;', popover=env.t('tierPop'), popover-trigger="mouseenter", popover-placement="right")
.modal-header
- h3 Player Tiers
+ h3=env.t('playerTiers')
.modal-body
- small.
- Visit the Hall of Heroes (contributors and backers)
- Learn more about contributor rewards
- Learn how to contribute to HabitRPG
+ small
+ |
+ =env.t('visitHeroes')
+ |
+ |
+ =env.t('conLearn')
+ |
+ |
+ =env.t('conLearnHow')
+ |
table.table.table-striped
tr
td
- a.label.label-contributor-1(ng-click='toggleUserTier($event)') Friend (1-2)
+ a.label.label-contributor-1(ng-click='toggleUserTier($event)')=env.t('friendBadge')
div(style='display:none;')
- p.
- When your first submission is deployed, you will receive the HabitRPG Contributor's badge. Your name in Tavern chat will proudly display that you are a contributor. As a bounty for your work, you will also receive 2 Gems.
+ p
+ != ' ' + env.t('friendText') + ' ' + env.t('first') + ' ' + env.t('friend1Text') + ' ' + env.t('2gems') + '.'
hr
- p.
- When your second submission is deployed, the Crystal Armor will be available for purchase in the Rewards shop. As a bounty for your continued work, you will also receive 2 Gems.
+ p
+ != ' ' + env.t('friendText') + ' ' + env.t('second') + ' ' + env.t('friendText2') + ' ' + env.t('crystalArmor') + ' ' + env.t('friendText3') + '' + env.t('2gems') + '.'
tr
td
- a.label.label-contributor-3(ng-click='toggleUserTier($event)') Elite (3-4)
+ a.label.label-contributor-3(ng-click='toggleUserTier($event)')=env.t('eliteBadge')
div(style='display:none;')
- p.
- When your third submission is deployed, the Crystal Helmet will be available for purchase in the Rewards shop. As a bounty for your great work, you will also receive 2 Gems.
+ p
+ != ' ' + env.t('friendText') + ' ' + env.t('third') + ' ' + env.t('friendText2') + ' ' + env.t('crystalHelmet') + ' ' + env.t('friendText3') + ' ' + env.t('2gems') + '.'
hr
- p.
- When your fourth submission is deployed, the Crystal Sword will be available for purchase in the Rewards shop. You will once again receive a bounty of 2 Gems.
+ p
+ != ' ' + env.t('friendText') + ' ' + env.t('fourth') + ' ' + env.t('friendText2') + ' ' + env.t('crystalSword') + ' ' + env.t('friendText3') + ' ' + env.t('2gems') + '.'
tr
td
- a.label.label-contributor-5(ng-click='toggleUserTier($event)') Champion (5-6)
+ a.label.label-contributor-5(ng-click='toggleUserTier($event)')=env.t('championBadge')
div(style='display:none;')
- p.
- When your fifth submission is deployed, the Crystal Shield will be available for purchase in the Rewards shop. You will also receive 2 Gems.
+ p
+ != ' ' + env.t('friendText') + ' ' + env.t('fifth') + ' ' + env.t('friendText2') + ' ' + env.t('crystalShield') + ' ' + env.t('friendText3') + ' ' + env.t('2gems') + '.'
hr
- p.
-