Refactor to use tabset
This commit is contained in:
@@ -6,48 +6,44 @@ mixin boss(tavern, mobile)
|
||||
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' ng-init="questBoxTab = 'invitesTab'")
|
||||
ul.nav.nav-pills
|
||||
li(ng-class="{active:questBoxTab === 'invitesTab'}")
|
||||
a(ng-click="questBoxTab = 'invitesTab'")=env.t('invitations')
|
||||
li(ng-class="{active:questBoxTab === 'detailsTab'}")
|
||||
a(ng-click="questBoxTab = 'detailsTab'")=env.t('questDetails')
|
||||
div(ng-show="questBoxTab === 'invitesTab'")
|
||||
br
|
||||
table.table.table-striped(bindonce='group')
|
||||
tr(ng-repeat='member in group.members track by member._id')
|
||||
td
|
||||
span(ng-if=':: group.quest.leader && group.quest.leader==member._id && isMemberOfGroup(group.quest.leader,group) && isMemberOfPendingQuest(group.quest.leader,group)')
|
||||
|*
|
||||
a
|
||||
span(ng-click='clickMember(member._id, true)')
|
||||
|{{::member.profile.name}}
|
||||
td {{group.quest.members[member._id] === true ? env.t('accepted') : group.quest.members[member._id] === false ? env.t('rejected') : env.t('pending')}}
|
||||
tabset
|
||||
tab(heading=env.t('invitations'))
|
||||
table.table.table-striped(bindonce='group')
|
||||
tr(ng-repeat='member in group.members track by member._id')
|
||||
td
|
||||
span(ng-if=':: group.quest.leader && group.quest.leader==member._id && isMemberOfGroup(group.quest.leader,group) && isMemberOfPendingQuest(group.quest.leader,group)')
|
||||
|*
|
||||
a
|
||||
span(ng-click='clickMember(member._id, true)')
|
||||
|{{::member.profile.name}}
|
||||
td {{group.quest.members[member._id] === true ? env.t('accepted') : group.quest.members[member._id] === false ? env.t('rejected') : env.t('pending')}}
|
||||
|
||||
span(ng-if=':: group.quest.leader && isMemberOfGroup(group.quest.leader,group) && isMemberOfPendingQuest(group.quest.leader,group)')
|
||||
|*
|
||||
=env.t('questOwner')
|
||||
// This is commented-out until we have time to work out why it fails intermittently on the website and always on the mobile app (https://github.com/HabitRPG/habitrpg/issues/4074):
|
||||
// span(ng-if=':: group.quest.leader && isMemberOfGroup(group.quest.leader,group) && ! isMemberOfPendingQuest(group.quest.leader,group)')
|
||||
// =env.t('questOwnerNotInPendingQuest')
|
||||
// span(ng-if=':: ! group.quest.leader || ! isMemberOfGroup(group.quest.leader,group)')
|
||||
// =env.t('questOwnerNotInPendingQuestParty')
|
||||
tab(heading=env.t('questDetails'))
|
||||
div(class="quest_{{::group.quest.key}}")
|
||||
div(ng-if='::Content.quests[group.quest.key].boss')
|
||||
h4 {{::Content.quests[group.quest.key].boss.name()}}
|
||||
p
|
||||
strong=env.t('bossHP') + ': '
|
||||
| {{::Content.quests[group.quest.key].boss.hp}}
|
||||
p
|
||||
strong=env.t('bossStrength') + ': '
|
||||
| {{::Content.quests[group.quest.key].boss.str}}
|
||||
div(ng-if='::Content.quests[group.quest.key].collect')
|
||||
p(ng-repeat='(k,v) in ::Content.quests[group.quest.key].collect')
|
||||
strong=env.t('collect') + ': '
|
||||
| {{::Content.quests[group.quest.key].collect[k].count}} {{::Content.quests[group.quest.key].collect[k].text()}}
|
||||
div(ng-bind-html='::Content.quests[group.quest.key].notes()')
|
||||
|
||||
span(ng-if=':: group.quest.leader && isMemberOfGroup(group.quest.leader,group) && isMemberOfPendingQuest(group.quest.leader,group)')
|
||||
|*
|
||||
=env.t('questOwner')
|
||||
// This is commented-out until we have time to work out why it fails intermittently on the website and always on the mobile app (https://github.com/HabitRPG/habitrpg/issues/4074):
|
||||
// span(ng-if=':: group.quest.leader && isMemberOfGroup(group.quest.leader,group) && ! isMemberOfPendingQuest(group.quest.leader,group)')
|
||||
// =env.t('questOwnerNotInPendingQuest')
|
||||
// span(ng-if=':: ! group.quest.leader || ! isMemberOfGroup(group.quest.leader,group)')
|
||||
// =env.t('questOwnerNotInPendingQuestParty')
|
||||
div(ng-show="questBoxTab === 'detailsTab'")
|
||||
br
|
||||
div(class="quest_{{::group.quest.key}}")
|
||||
div(ng-if='::Content.quests[group.quest.key].boss')
|
||||
h4 {{::Content.quests[group.quest.key].boss.name()}}
|
||||
p
|
||||
strong=env.t('bossHP') + ': '
|
||||
| {{::Content.quests[group.quest.key].boss.hp}}
|
||||
p
|
||||
strong=env.t('bossStrength') + ': '
|
||||
| {{::Content.quests[group.quest.key].boss.str}}
|
||||
div(ng-if='::Content.quests[group.quest.key].collect')
|
||||
p(ng-repeat='(k,v) in ::Content.quests[group.quest.key].collect')
|
||||
strong=env.t('collect') + ': '
|
||||
| {{::Content.quests[group.quest.key].collect[k].count}} {{::Content.quests[group.quest.key].collect[k].text()}}
|
||||
div(ng-bind-html='::Content.quests[group.quest.key].notes()')
|
||||
hr
|
||||
|
||||
.npc_ian.pull-left
|
||||
p=env.t('questStart')
|
||||
|
||||
@@ -61,71 +57,67 @@ mixin boss(tavern, mobile)
|
||||
|
||||
div(ng-if='group.quest.active==true' ng-init="questBoxTab='detailsTab'")
|
||||
unless tavern
|
||||
ul.nav.nav-pills
|
||||
li(ng-class="{active:questBoxTab === 'participantsTab'}")
|
||||
a(ng-click="questBoxTab = 'participantsTab'")=env.t('questParticipants')
|
||||
li(ng-class="{active:questBoxTab === 'detailsTab'}")
|
||||
a(ng-click="questBoxTab = 'detailsTab'")=env.t('questDetails')
|
||||
div(ng-show="questBoxTab === 'participantsTab'")
|
||||
br
|
||||
table.table.table-striped(bindonce='group')
|
||||
tr(ng-repeat='(k,v) in group.members track by v._id', ng-if='::group.quest.members[v._id]')
|
||||
td
|
||||
span(ng-if=':: group.quest.leader && group.quest.leader==v._id && isMemberOfGroup(group.quest.leader,group) && isMemberOfRunningQuest(group.quest.leader,group)')
|
||||
|*
|
||||
a
|
||||
span(ng-click='clickMember(v._id, true)')
|
||||
|{{::v.profile.name}}
|
||||
span(ng-if=':: group.quest.leader && isMemberOfGroup(group.quest.leader,group) && isMemberOfRunningQuest(group.quest.leader,group)')
|
||||
|*
|
||||
=env.t('questOwner')
|
||||
// This is commented-out until we have time to work out why it fails intermittently on the website and always on the mobile app (https://github.com/HabitRPG/habitrpg/issues/4074):
|
||||
// span(ng-if=':: group.quest.leader && isMemberOfGroup(group.quest.leader,group) && ! isMemberOfRunningQuest(group.quest.leader,group)')
|
||||
// =env.t('questOwnerNotInRunningQuest')
|
||||
// span(ng-if=':: ! group.quest.leader || ! isMemberOfGroup(group.quest.leader,group)')
|
||||
// =env.t('questOwnerNotInRunningQuestParty')
|
||||
div(ng-show="questBoxTab === 'detailsTab'")
|
||||
unless tavern
|
||||
br
|
||||
div(ng-if='::Content.quests[group.quest.key].boss',ng-init='boss=Content.quests[group.quest.key].boss;progress=group.quest.progress')
|
||||
if tavern
|
||||
div(class="quest_{{group.quest.key}} quest_{{group.quest.key}}_#{env.worldDmg.recent}")
|
||||
else
|
||||
div(class="quest_{{::group.quest.key}}")
|
||||
//-
|
||||
.progress
|
||||
.bar(style='width: {{Shared.percent(group.quest.hp, Content.quests[group.quest.key].hp)}}%;')
|
||||
span.meter-text
|
||||
span.glyphicon.glyphicon-heart
|
||||
| {{group.quest.hp | number:0}} / {{Content.quests[group.quest.key].hp}}
|
||||
.hero-stats
|
||||
.meter-label(tooltip=env.t('bossHP'))
|
||||
span.glyphicon.glyphicon-heart
|
||||
.meter.health
|
||||
.bar(style='width: {{Shared.percent(progress.hp, boss.hp)}}%;')
|
||||
span.meter-text.value
|
||||
| {{Math.ceil(progress.hp) | roundLargeNumbers}} / {{boss.hp | roundLargeNumbers}}
|
||||
.meter-label(tooltip='Rage', ng-if='boss.rage')
|
||||
span.glyphicon.glyphicon-fire
|
||||
.meter.mana(ng-if='boss.rage',popover="{{::boss.rage.description()}}",popover-title="{{::boss.rage.title()}}",popover-trigger='mouseenter',popover-placement='right')
|
||||
.bar(style='width: {{Shared.percent(progress.rage, boss.rage.value)}}%;')
|
||||
span.meter-text.value
|
||||
| {{Math.ceil(progress.rage) | roundLargeNumbers}} / {{boss.rage.value | roundLargeNumbers}}
|
||||
div(ng-if='::Content.quests[group.quest.key].collect')
|
||||
div(class="quest_{{::group.quest.key}}")
|
||||
h4=env.t('collected') + ':'
|
||||
table.table.table-striped
|
||||
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()}}
|
||||
td
|
||||
|{{v}} / {{Content.quests[group.quest.key].collect[k].count}}
|
||||
tabset
|
||||
tab(heading=env.t('questDetails'))
|
||||
div(ng-if='::Content.quests[group.quest.key].boss',ng-init='boss=Content.quests[group.quest.key].boss;progress=group.quest.progress')
|
||||
if tavern
|
||||
div(class="quest_{{group.quest.key}} quest_{{group.quest.key}}_#{env.worldDmg.recent}")
|
||||
else
|
||||
div(class="quest_{{::group.quest.key}}")
|
||||
//-
|
||||
.progress
|
||||
.bar(style='width: {{Shared.percent(group.quest.hp, Content.quests[group.quest.key].hp)}}%;')
|
||||
span.meter-text
|
||||
span.glyphicon.glyphicon-heart
|
||||
| {{group.quest.hp | number:0}} / {{Content.quests[group.quest.key].hp}}
|
||||
.hero-stats
|
||||
.meter-label(tooltip=env.t('bossHP'))
|
||||
span.glyphicon.glyphicon-heart
|
||||
.meter.health
|
||||
.bar(style='width: {{Shared.percent(progress.hp, boss.hp)}}%;')
|
||||
span.meter-text.value
|
||||
| {{Math.ceil(progress.hp) | roundLargeNumbers}} / {{boss.hp | roundLargeNumbers}}
|
||||
.meter-label(tooltip='Rage', ng-if='boss.rage')
|
||||
span.glyphicon.glyphicon-fire
|
||||
.meter.mana(ng-if='boss.rage',popover="{{::boss.rage.description()}}",popover-title="{{::boss.rage.title()}}",popover-trigger='mouseenter',popover-placement='right')
|
||||
.bar(style='width: {{Shared.percent(progress.rage, boss.rage.value)}}%;')
|
||||
span.meter-text.value
|
||||
| {{Math.ceil(progress.rage) | roundLargeNumbers}} / {{boss.rage.value | roundLargeNumbers}}
|
||||
div(ng-if='::Content.quests[group.quest.key].collect')
|
||||
div(class="quest_{{::group.quest.key}}")
|
||||
h4=env.t('collected') + ':'
|
||||
table.table.table-striped
|
||||
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()}}
|
||||
td
|
||||
|{{v}} / {{Content.quests[group.quest.key].collect[k].count}}
|
||||
|
||||
div(ng-bind-html='::Content.quests[group.quest.key].notes()')
|
||||
unless tavern
|
||||
quest-rewards(key='{{::group.quest.key}}')
|
||||
|
||||
tab(heading=env.t('questParticipants'))
|
||||
table.table.table-striped(bindonce='group')
|
||||
tr(ng-repeat='(k,v) in group.members track by v._id', ng-if='::group.quest.members[v._id]')
|
||||
td
|
||||
span(ng-if=':: group.quest.leader && group.quest.leader==v._id && isMemberOfGroup(group.quest.leader,group) && isMemberOfRunningQuest(group.quest.leader,group)')
|
||||
|*
|
||||
a
|
||||
span(ng-click='clickMember(v._id, true)')
|
||||
|{{::v.profile.name}}
|
||||
span(ng-if=':: group.quest.leader && isMemberOfGroup(group.quest.leader,group) && isMemberOfRunningQuest(group.quest.leader,group)')
|
||||
|*
|
||||
=env.t('questOwner')
|
||||
// This is commented-out until we have time to work out why it fails intermittently on the website and always on the mobile app (https://github.com/HabitRPG/habitrpg/issues/4074):
|
||||
// span(ng-if=':: group.quest.leader && isMemberOfGroup(group.quest.leader,group) && ! isMemberOfRunningQuest(group.quest.leader,group)')
|
||||
// =env.t('questOwnerNotInRunningQuest')
|
||||
// span(ng-if=':: ! group.quest.leader || ! isMemberOfGroup(group.quest.leader,group)')
|
||||
// =env.t('questOwnerNotInRunningQuestParty')
|
||||
|
||||
div(ng-bind-html='::Content.quests[group.quest.key].notes()')
|
||||
unless tavern
|
||||
quest-rewards(key='{{::group.quest.key}}')
|
||||
hr
|
||||
|
||||
div(ng-if='::Content.quests[group.quest.key].boss')
|
||||
.npc_ian.pull-left
|
||||
if tavern
|
||||
|
||||
Reference in New Issue
Block a user