WIP(party-page): Active party page

This commit is contained in:
Sabe Jones
2015-08-06 12:13:50 -05:00
parent c275db6b4b
commit f1704a6a92
6 changed files with 26 additions and 15 deletions

View File

@@ -45,7 +45,7 @@
"groupDescr": "Description shown in public Guilds list (Markdown OK)", "groupDescr": "Description shown in public Guilds list (Markdown OK)",
"logoUrl": "Logo URL", "logoUrl": "Logo URL",
"assignLeader": "Assign Group Leader", "assignLeader": "Assign Group Leader",
"members": "Member(s)", "members": "Members",
"partyList": "Order for party members in header (reload browser after changing order)", "partyList": "Order for party members in header (reload browser after changing order)",
"banTip": "Boot Member", "banTip": "Boot Member",
"moreMembers": "more members", "moreMembers": "more members",
@@ -134,5 +134,7 @@
"partyExplanation3": "Invite friends now to earn a Quest Scroll!", "partyExplanation3": "Invite friends now to earn a Quest Scroll!",
"wantToStartParty": "Do you want to start a party?", "wantToStartParty": "Do you want to start a party?",
"exclusiveQuestScroll": "Inviting a friend to your party will grant you an exclusive Quest Scroll to battle the Basi-List together!", "exclusiveQuestScroll": "Inviting a friend to your party will grant you an exclusive Quest Scroll to battle the Basi-List together!",
"nameYourParty": "Name your new party!" "nameYourParty": "Name your new party!",
"partyEmpty": "You're the only one in your party. Invite your friends!",
"possessiveParty": "<%= name %>'s Party"
} }

View File

@@ -59,5 +59,6 @@
"doubleSureAbort": "Are you double sure? Make sure they won't hate you forever!", "doubleSureAbort": "Are you double sure? Make sure they won't hate you forever!",
"questWarning": "If new players join the party before the quest starts, they will also receive an invitation. However once the quest has started, no new party members can join the quest.", "questWarning": "If new players join the party before the quest starts, they will also receive an invitation. However once the quest has started, no new party members can join the quest.",
"bossRageTitle": "Rage", "bossRageTitle": "Rage",
"bossRageDescription": "When this bar fills, the boss will unleash a special attack!" "bossRageDescription": "When this bar fills, the boss will unleash a special attack!",
"startQuest": "START A QUEST"
} }

View File

@@ -70,3 +70,6 @@ ul
.width-50 .width-50
width: 50% width: 50%
.width-100
width: 100%

View File

@@ -477,6 +477,7 @@ habitrpg.controller("GroupsCtrl", ['$scope', '$rootScope', 'Shared', 'Groups', '
Chat.seenMessage($scope.group._id); Chat.seenMessage($scope.group._id);
$scope.create = function(group){ $scope.create = function(group){
if (!group.name) group.name = env.t('possessiveParty', {name: User.user.profile.name});
group.$save(function(){ group.$save(function(){
Analytics.track({'hitType':'event','eventCategory':'behavior','eventAction':'join group','owner':true,'groupType':'party','privacy':'private'}); Analytics.track({'hitType':'event','eventCategory':'behavior','eventAction':'join group','owner':true,'groupType':'party','privacy':'private'});
Analytics.updateUser({'partyID':group.id,'partySize':1}); Analytics.updateUser({'partyID':group.id,'partySize':1});

View File

@@ -16,7 +16,7 @@ a.pull-right.gem-wallet(ng-if='group.type!="party"', popover-trigger='mouseenter
.panel.panel-default .panel.panel-default
.panel-heading(bindonce='group') .panel-heading(bindonce='group')
h3.panel-title h3.panel-title
| {{group.name}} span {{group.name}}
span.group-leave-join(ng-if='group') span.group-leave-join(ng-if='group')
a.btn.btn-sm.btn-danger.pull-right(ng-if=":: isMemberOfGroup(User.user._id, group)", ng-click='clickLeave(group, $event)') a.btn.btn-sm.btn-danger.pull-right(ng-if=":: isMemberOfGroup(User.user._id, group)", ng-click='clickLeave(group, $event)')
span.glyphicon.glyphicon-ban-circle span.glyphicon.glyphicon-ban-circle
@@ -50,16 +50,11 @@ a.pull-right.gem-wallet(ng-if='group.type!="party"', popover-trigger='mouseenter
div(ng-show='!group._editing') div(ng-show='!group._editing')
img.pull-right(ng-show='group.logo', ng-src='{{group.logo}}') img.pull-right(ng-show='group.logo', ng-src='{{group.logo}}')
markdown(text='group.description') markdown(text='group.description')
hr br
p=env.t('groupLeader') p=env.t('groupLeader')
|: |:
a(class='badge badge-info', ng-click='clickMember(group.leader._id, true)') a(class='badge badge-info', ng-click='clickMember(group.leader._id, true)')
| {{group.leader.profile.name}} | {{group.leader.profile.name}}
.slight-vertical-padding
small.muted=env.t('groupID')
|: {{group._id}}
include ./challenge-box
// ------ Members ------- // ------ Members -------
.panel.panel-default .panel.panel-default
@@ -68,7 +63,7 @@ a.pull-right.gem-wallet(ng-if='group.type!="party"', popover-trigger='mouseenter
=env.t('members') =env.t('members')
button.pull-right.btn.btn-primary(ng-click="openInviteModal(group)")=env.t("inviteFriends") button.pull-right.btn.btn-primary(ng-click="openInviteModal(group)")=env.t("inviteFriends")
.panel-body.modal-fixed-height .panel-body.modal-fixed-height
div.form-group(ng-if='::group.type=="party"') div.form-group(ng-if='::group.type=="party" && group.memberCount > 1')
p=env.t('partyList') p=env.t('partyList')
select.form-control#partyOrder( select.form-control#partyOrder(
ng-model='user.party.order', ng-model='user.party.order',
@@ -83,7 +78,8 @@ a.pull-right.gem-wallet(ng-if='group.type!="party"', popover-trigger='mouseenter
ng-options='k as v for (k , v) in partyOrderAscendingChoices', ng-options='k as v for (k , v) in partyOrderAscendingChoices',
ng-change='set({"party.orderAscending": user.party.orderAscending})' ng-change='set({"party.orderAscending": user.party.orderAscending})'
) )
table.table.table-striped(bindonce='group') h4(ng-show='group.memberCount === 1 && group.type === "party"')=env.t('partyEmpty')
table.table.table-striped(ng-show='group.memberCount > 1 || group.type !== "party"' bindonce='group')
tr(ng-repeat='member in group.members track by member._id') tr(ng-repeat='member in group.members track by member._id')
td.media td.media
// allow leaders to ban members // allow leaders to ban members
@@ -111,10 +107,18 @@ a.pull-right.gem-wallet(ng-if='group.type!="party"', popover-trigger='mouseenter
span(ng-click='clickMember(invite._id, true)') span(ng-click='clickMember(invite._id, true)')
| {{invite.profile.name}} | {{invite.profile.name}}
div.text-center(ng-if='group.type === "party"')
button.btn.btn-success.margin-auto.width-100=env.t('startQuest')
include ./challenge-box
div(ng-if="group") div(ng-if="group")
a.btn.btn-danger(ng-if=':: isMemberOfGroup(User.user._id, group)', data-id='{{group.id}}', ng-click='clickLeave(group, $event)')=env.t('leave')
a.btn.btn-success(ng-if=':: !isMemberOfGroup(User.user._id, group)', ng-click='join(group)')=env.t('join') a.btn.btn-success(ng-if=':: !isMemberOfGroup(User.user._id, group)', ng-click='join(group)')=env.t('join')
.slight-vertical-padding
small.muted=env.t('groupID')
| : {{group._id}}
.col-md-8 .col-md-8
div() div()
textarea.form-control(ng-show='group._editing', rows=6, placeholder=env.t('leaderMsg'), ng-model='group.leaderMessage') textarea.form-control(ng-show='group._editing', rows=6, placeholder=env.t('leaderMsg'), ng-model='group.leaderMessage')

View File

@@ -26,5 +26,5 @@ script(type='text/ng-template', id='partials/options.social.party.html')
.row.margin-auto.text-center .row.margin-auto.text-center
h4=env.t('wantToStartParty') h4=env.t('wantToStartParty')
.row.margin-auto.text-center .row.margin-auto.text-center
span.btn.btn-primary(ng-click="inviteOrStartParty(group)")=env.t('inviteFriendsNow') span.btn.btn-primary(ng-click='inviteOrStartParty(group)')=env.t('inviteFriendsNow')
span.btn.btn-default=env.t('inviteFriendsLater') span.btn.btn-default(ng-click='create(newGroup)')=env.t('inviteFriendsLater')