habitica-self-host/views/options/social/challenges.jade

169 lines
8.1 KiB
Text
Raw Normal View History

script(type='text/ng-template', id='partials/options.social.challenges.detail.close.html')
a.btn.btn-sm.btn-danger(ng-click="delete(closingChal)")=env.t('delete')
h5= '- ' + env.t('or') + ' -'
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
2014-01-22 21:16:54 +00:00
a(ng-click='cancelClosing(closingChal)')=env.t('cancel')
script(type='text/ng-template', id='partials/options.social.challenges.detail.member.html')
2014-02-05 18:39:26 +00:00
.modal.bs-modal-lg(style='display: block')
.modal-dialog.modal-lg
.modal-content
.modal-header
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.btn-default(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')
2014-02-05 18:39:26 +00:00
div(ng-hide='challenge._locked==false')
button.btn.btn-sm.btn-default(ng-click='challenge._locked = false')=env.t('edit')
button.btn.btn-sm.btn-warning(ng-click='close(challenge, $event)', tooltip=env.t('deleteOrSelect'))=env.t('endChallenge')
2014-02-05 18:39:26 +00:00
form(ng-show='challenge._locked==false')
.form-group(ng-show='challenge._locked==false')
button.btn.btn-sm.btn-primary(ng-click='save(challenge)')=env.t('save')
button.btn.btn-sm.btn-default(ng-click='challenge._locked=true')=env.t('cancel')
2014-02-05 18:39:26 +00:00
.form-group
input.form-control(type='text', ng-model='challenge.name')
.form-group
input.form-control(type='text', minlength="3", maxlength="16", ng-model='challenge.shortName', placeholder=env.t('challengeTag'), required)
.form-group
textarea.form-control(cols='3', placeholder=env.t('challengeDescr'), ng-model='challenge.description')
hr
.well(bindonce='challenge', ng-if='challenge.description')
markdown(ng-model='challenge.description')
.modal-body=env.t('challengeDiscription')
habitrpg-tasks(obj='challenge', main=false)
// Member List
div(bindonce='challenge', ng-if='challenge.members.length > 0')
a.btn.btn-primary.btn-sm.pull-right(ng-href='/api/v2/challenges/{{challenge._id}}/csv')
=env.t('exportChallengeCSV')
2014-01-22 21:16:54 +00:00
h3=env.t('hows')
menu
button.customize-option(ng-repeat='member in challenge.members track by member._id', 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')
2014-01-22 21:16:54 +00:00
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}}
.accordion-body(ng-class='{collapse: $stateParams.uid != member._id}')
.accordion-inner(ng-if='$stateParams.uid == member._id')
div(ui-view)
script(type='text/ng-template', id='partials/options.social.challenges.html')
2014-02-05 18:39:26 +00:00
.container-fluid
.row
.col-md-2.well#challenges-filters
h3=env.t('filter') + ':'
h4=env.t('groups')
ul.list-unstyled
a.btn.btn-xs.btn-default.pull-left(ng-click='selectAll()')=env.t('all')
a.btn.btn-xs.btn-default(ng-click='selectNone()')=env.t('none')
2014-02-05 18:39:26 +00:00
br
.checkbox(ng-repeat='group in groupsFilter')
label
input(type='checkbox', ng-model='search.group[group._id]')
| {{group.name}}
h4=env.t('membership')
.radio
label
input(type='radio', name='search-participation-radio', ng-click='search._isMember = true')
=env.t('participating')
.radio
label
input(type='radio', name='search-participation-radio', ng-click='search._isMember = false')
=env.t('notParticipating')
.radio
label
input(type='radio', name='search-participation-radio', ng-click='search._isMember = undefined', checked='checked')
=env.t('either')
.col-md-10
// Creation form
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=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
.form-group
input.form-control(type='text', ng-model='newChallenge.name', placeholder=env.t('challengeTitle'), required='required')
2014-02-05 18:39:26 +00:00
.form-group
input.form-control(type='text', minlength="3", maxlength="16", ng-model='newChallenge.shortName', placeholder=env.t('challengeTag'), required)
| 
a.hint.vertical-20(target='_blank', href='http://habitrpg.wikia.com/wiki/Tags', popover=env.t('challengeTagPop'), popover-trigger='mouseenter', popover-placement='right')
2014-04-07 16:40:51 +00:00
=env.t('moreInfo')
2014-02-05 18:39:26 +00:00
.form-group
textarea.form-control(cols='3', placeholder=env.t('challengeDescr'), ng-model='newChallenge.description')
2014-02-05 18:39:26 +00:00
//- what's going on here?
br
br
2014-02-05 18:39:26 +00:00
.form-group
input.form-control(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
| 
span.hint.vertical-20(popover=env.t('prizePop'), popover-trigger='mouseenter', popover-placement='right')
2014-04-07 16:40:51 +00:00
=env.t('moreInfo')
2014-02-05 18:39:26 +00:00
span(ng-show='newChallenge.group=="habitrpg"')
!=env.t('publicChallenges')
2014-02-05 18:39:26 +00:00
.form-group(ng-if='user.contributor.admin')
.checkbox
label
input(type='checkbox', ng-model='newChallenge.official')
=env.t('officialChallenge')
2014-02-05 18:39:26 +00:00
habitrpg-tasks(main=false, obj='newChallenge')
2014-02-05 18:39:26 +00:00
// Challenges list
.panel-group
.panel.panel-default(ng-repeat='challenge in challenges|filter:filterChallenges track by challenge._id ')
2014-02-05 18:39:26 +00:00
.panel-heading
ul.pull-right.challenge-accordion-header-specs
li.transparent(ng-if='challenge.official')
2014-02-05 18:39:26 +00:00
span.label.label-success=env.t('officialChallenge')
li {{challenge.group.name}}
li
=env.t('by') + ' '
2014-02-05 18:39:26 +00:00
strong {{challenge.leader.profile.name}}
li
| {{challenge.memberCount}}
2014-02-05 18:39:26 +00:00
= ' ' + env.t('participants')
li(ng-show='challenge.prize')
2014-02-09 15:16:43 +00:00
p
// prize
| {{challenge.prize}} 
span.inline-block.Pet_Currency_Gem1x
|  
=env.t('prize')
li.transparent
2014-02-05 18:39:26 +00:00
// leave / join
a.btn.btn-sm.btn-danger(ng-show='challenge._isMember', ng-click='clickLeave(challenge, $event)')
2014-02-05 18:39:26 +00:00
span.glyphicon.glyphicon-ban-circle
=env.t('leave')
a.btn.btn-sm.btn-success(ng-hide='challenge._isMember', ng-click='join(challenge)')
2014-02-05 18:39:26 +00:00
span.glyphicon.glyphicon-ok
=env.t('join')
a.accordion-toggle(ng-click='toggle(challenge._id)') {{challenge.name}}
.panel-body(ng-class='{collapse: !$stateParams.cid == challenge._id}')
.accordion-inner(ng-if='$stateParams.cid == challenge._id')
div(ui-view)