2013-10-31 21:37:04 +00:00
script(type='text/ng-template', id='partials/options.social.challenges.detail.close.html')
2013-10-31 20:26:18 +00:00
a.btn.btn-small.btn-danger(ng-click="delete(closingChal)") Delete
h5 - Or -
2014-01-23 07:20:59 +00:00
select(ui-select2, ng-required=true, ng-model='closingChal.winner', data-placeholder='Select winner, close challenge', ng-change='selectWinner(closingChal)', )
option(value='')
option(ng-repeat='u in closingChal.members', value='{{u._id}}') {{u.profile.name}}
2013-10-31 20:26:18 +00:00
small.pull-right
a(ng-click='cancelClosing(closingChal)') cancel
2013-11-02 06:11:28 +00:00
script(type='text/ng-template', id='partials/options.social.challenges.detail.member.html')
2013-11-02 23:07:12 +00:00
.modal.wide-modal
.modal-header
2013-11-11 07:41:42 +00:00
button.close(type='button', ng-click='$state.go("^")', aria-hidden='true') ×
h3 {{obj.profile.name}}
.modal-body
habitrpg-tasks(main=false)
.modal-footer
a.btn(ng-click='$state.go("^")') Close
2013-11-02 06:11:28 +00:00
2013-10-31 21:37:04 +00:00
script(type='text/ng-template', id='partials/options.social.challenges.detail.html')
2013-10-30 00:49:49 +00:00
// Edit button
2013-11-23 06:44:02 +00:00
div(bindonce='challenge', ng-if='challenge.leader==user._id')
2013-10-31 22:22:37 +00:00
ul.unstyled
li(ng-hide='challenge._locked==false')
button.btn.btn-small.btn-default(ng-click='challenge._locked = false') Edit
2013-11-09 17:37:31 +00:00
button.btn.btn-small.btn-warning(ng-click='close(challenge, $event)', tooltip='Delete or select winner') End Challenge
2013-10-31 22:22:37 +00:00
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
2013-10-30 00:49:49 +00:00
2013-10-31 22:22:37 +00:00
div(ng-show='challenge._locked==false')
.-options
input.option-content(type='text', ng-model='challenge.name')
2013-11-01 01:18:34 +00:00
.option-medium
input.option-content(type='text', minlength="3", maxlength="16", ng-model='challenge.shortName', placeholder='Tag Name', required)
2013-10-31 22:22:37 +00:00
textarea.option-content(cols='3', placeholder='Description', ng-model='challenge.description')
hr
2013-10-30 00:49:49 +00:00
2014-01-16 19:28:28 +00:00
.well(bindonce='challenge', ng-if='challenge.description')
markdown(ng-model='challenge.description')
2013-11-01 18:09:49 +00:00
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')
2013-10-30 00:49:49 +00:00
habitrpg-tasks(obj='challenge', main=false)
2013-11-02 06:11:28 +00:00
// Member List
2013-11-23 06:44:02 +00:00
div(bindonce='challenge', ng-if='challenge.members.length > 0')
2014-01-23 07:19:34 +00:00
a.btn.btn-primary.btn-small.pull-right(href='/api/v2/challenges/{{challenge._id}}/csv') Export to CSV
2013-11-02 23:07:12 +00:00
h3 How's Everyone Doing?
menu
button.customize-option(ng-repeat='member in challenge.members', ng-click='toggleMember(challenge._id, member._id)') {{member.profile.name}}
div(ui-view)
2013-11-02 06:11:28 +00:00
2013-11-02 23:07:12 +00:00
// Accordion version if we choose that instead
//- div(ng-if='challenge.members')
2013-11-02 06:11:28 +00:00
h4 How's Everyone Doing?
2013-11-22 23:16:24 +00:00
.accordion-group(bindonce='challenge.members', ng-repeat='member in challenge.members')
2013-10-31 21:26:48 +00:00
.accordion-heading
2013-11-02 06:11:28 +00:00
a.accordion-toggle(ng-click='toggleMember(challenge._id, member._id)') {{member.profile.name}}
.accordion-body(ng-class='{collapse: $stateParams.uid != member._id}')
2013-11-23 06:44:02 +00:00
.accordion-inner(ng-if='$stateParams.uid == member._id')
2013-11-02 23:07:12 +00:00
div(ui-view)
2013-10-30 00:49:49 +00:00
2013-10-31 21:37:04 +00:00
script(type='text/ng-template', id='partials/options.social.challenges.html')
2013-10-28 05:27:07 +00:00
.row-fluid
2013-11-01 17:33:50 +00:00
.span2.well#challenges-filters
h3 Filter:
2013-10-30 08:21:44 +00:00
h4 Groups
2013-11-12 03:00:43 +00:00
ul.unstyled
a.btn.btn-mini.pull-left(ng-click='selectAll()') All
a.btn.btn-mini(ng-click='selectNone()') None
br
2013-11-16 01:36:36 +00:00
label.checkbox(ng-repeat='group in groupsFilter')
2013-10-30 08:21:44 +00:00
input(type='checkbox', ng-model='search.group[group._id]')
| {{group.name}}
h4 Membership
label.radio
input(type='radio', name='search-participation-radio', ng-click='search._isMember = true')
| Participating
label.radio
input(type='radio', name='search-participation-radio', ng-click='search._isMember = false')
| Not Participating
label.radio
input(type='radio', name='search-participation-radio', ng-click='search._isMember = undefined', checked='checked')
| Either
2013-10-28 05:27:07 +00:00
.span10
// Creation form
2013-11-01 17:33:50 +00:00
button.btn.btn-success#create-challenge-btn(ng-click='create()', ng-hide='newChallenge') Create Challenge
2013-10-31 18:44:50 +00:00
.create-challenge-from.well(ng-if='newChallenge')
2013-10-28 05:27:07 +00:00
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')
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')
2013-11-01 01:18:34 +00:00
.option-medium
input.option-content(type='text', minlength="3", maxlength="16", ng-model='newChallenge.shortName', placeholder='Tag Name', required)
2013-11-20 21:08:05 +00:00
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')
2013-11-01 01:18:34 +00:00
2013-10-31 17:46:25 +00:00
textarea.option-content(cols='3', placeholder='Description', ng-model='newChallenge.description')
2013-10-27 00:24:45 +00:00
2013-11-01 01:18:34 +00:00
//- what's going on here?
br
br
.option-medium
2013-11-01 02:30:07 +00:00
input.option-content(type='number', min="{{newChallenge.group=='habitrpg' ? 1 : 0}}", max="{{maxPrize}}", ng-model='newChallenge.prize', placeholder='Prize')
2013-10-31 18:44:50 +00:00
span.input-suffix.Pet_Currency_Gem1x.inline-gems
2013-10-31 21:16:01 +00:00
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')
2013-11-01 02:30:07 +00:00
span(ng-show='newChallenge.group=="habitrpg"').
Minimum 1 Gem for <strong>public challenges</strong> (helps prevent spam, it really does).
2013-10-31 18:44:50 +00:00
2014-01-03 20:36:13 +00:00
.option-medium(ng-if='user.contributor.admin')
label.checkbox
input(type='checkbox', ng-model='newChallenge.official')
| Official HabitRPG Challenge
2013-10-28 05:27:07 +00:00
habitrpg-tasks(main=false, obj='newChallenge')
2013-10-27 00:24:45 +00:00
2013-10-28 05:27:07 +00:00
// Challenges list
2013-10-31 17:14:46 +00:00
.accordion-group(ng-repeat='challenge in challenges|filter:filterChallenges')
2013-10-28 05:27:07 +00:00
.accordion-heading
ul.pull-right.challenge-accordion-header-specs
2014-01-03 20:36:13 +00:00
li(ng-if='challenge.official')
span.label.label-success Official HabitRPG Challenge
2013-11-16 05:32:25 +00:00
li {{challenge.group.name}}
li
| by
strong {{challenge.leader.profile.name}}
2013-10-30 03:37:22 +00:00
li {{challenge.memberCount}} Participants
2013-10-28 05:27:07 +00:00
li(ng-show='challenge.prize')
// prize
table(ng-show='challenge.prize')
tr
td {{challenge.prize}}
td
2013-12-18 02:39:11 +00:00
.Pet_Currency_Gem1x(style='margin-left:0px')
2013-10-28 05:27:07 +00:00
td Prize
li
2013-10-30 03:37:22 +00:00
// leave / join
a.btn.btn-small.btn-danger(ng-show='challenge._isMember', ng-click='clickLeave(challenge, $event)')
2013-10-28 05:27:07 +00:00
i.icon-ban-circle
2013-10-30 03:37:22 +00:00
| Leave
a.btn.btn-small.btn-success(ng-hide='challenge._isMember', ng-click='join(challenge)')
2013-10-28 05:27:07 +00:00
i.icon-ok
2013-10-30 03:37:22 +00:00
| Join
2013-11-01 17:33:50 +00:00
a.accordion-toggle(ng-click='toggle(challenge._id)') {{challenge.name}}
2013-10-30 00:49:49 +00:00
.accordion-body(ng-class='{collapse: !$stateParams.cid == challenge._id}')
.accordion-inner(ng-if='$stateParams.cid == challenge._id')
div(ui-view)