diff --git a/website/client/components/achievements/levelUp.vue b/website/client/components/achievements/levelUp.vue index 5007520055..44c7b3eff3 100644 --- a/website/client/components/achievements/levelUp.vue +++ b/website/client/components/achievements/levelUp.vue @@ -93,6 +93,7 @@ export default { data () { let tweet = this.$t('levelUpShare'); return { + statsAllocationBoxIsOpen: true, maxHealth, tweet, socialLevelLink: `${BASE_URL}/social/level-up`, diff --git a/website/client/components/challenges/challengeDetail.vue b/website/client/components/challenges/challengeDetail.vue index f683705aaf..74bf6b8ea2 100644 --- a/website/client/components/challenges/challengeDetail.vue +++ b/website/client/components/challenges/challengeDetail.vue @@ -26,7 +26,12 @@ | {{challenge.prize}} .details(v-once) {{$t('prize')}} .row - task-column.col-6(v-for="column in columns", :type="column", :key="column") + task-column.col-6( + v-for="column in columns", + :type="column", + :key="column", + :taskListOverride='tasksByType[column]', + v-on:editTask="editTask") .col-4.sidebar.standard-page .acitons div(v-if='!isMember && !isLeader') @@ -34,7 +39,19 @@ div(v-if='isMember') button.btn.btn-danger(v-once, @click='leaveChallenge()') {{$t('leaveChallenge')}} div(v-if='isLeader') - button.btn.btn-success(v-once) {{$t('addTask')}} + b-dropdown(:text="$t('create')") + b-dropdown-item(v-for="type in columns", :key="type", @click="createTask(type)") + | {{$t(type)}} + //- button.btn.btn-success(v-once) {{$t('addTask')}} + task-modal( + :task="workingTask", + :purpose="taskFormPurpose", + @cancel="cancelTaskModal()", + ref="taskModal", + :challengeId="challengeId", + v-on:taskCreated='taskCreated', + v-on:taskEdited='taskEdited', + ) div(v-if='isLeader') button.btn.btn-secondary(v-once, @click='edit()') {{$t('editChallenge')}} div(v-if='isLeader') @@ -122,13 +139,20 @@ \ No newline at end of file + diff --git a/website/client/components/tasks/taskModal.vue b/website/client/components/tasks/taskModal.vue index dcaeb955a3..0f96050b3a 100644 --- a/website/client/components/tasks/taskModal.vue +++ b/website/client/components/tasks/taskModal.vue @@ -42,7 +42,7 @@ form( .svg-icon.negative(v-html="icons.negative") .option-item-label(v-once) {{ $t('negative') }} template(v-if="task.type !== 'reward'") - label(v-once) + label(v-once) span.float-left {{ $t('difficulty') }} .svg-icon.info-icon(v-html="icons.information") .d-flex.justify-content-center @@ -87,18 +87,18 @@ form( span.custom-control-description(v-once) {{ weekdaysMin(dayNumber) }} template(v-if="task.frequency === 'monthly'") label.custom-control.custom-radio - input.custom-control-input(type='radio', v-model="repeatsOn", value="dayOfMonth") + input.custom-control-input(type='radio', v-model="repeatsOn", value="dayOfMonth") span.custom-control-indicator span.custom-control-description {{ $t('dayOfMonth') }} label.custom-control.custom-radio - input.custom-control-input(type='radio', v-model="repeatsOn", value="dayOfWeek") + input.custom-control-input(type='radio', v-model="repeatsOn", value="dayOfWeek") span.custom-control-indicator span.custom-control-description {{ $t('dayOfWeek') }} .option label(v-once) {{ $t('tags') }} .category-wrap(@click="showTagsSelect = !showTagsSelect") - span.category-select(v-if='task.tags.length === 0') {{$t('none')}} + span.category-select(v-if='task.tags && task.tags.length === 0') {{$t('none')}} span.category-select(v-else) {{getTagsFor(task)[0]}} .category-box(v-if="showTagsSelect") .form-check( @@ -123,200 +123,200 @@ form( \ No newline at end of file + diff --git a/website/client/components/tasks/user.vue b/website/client/components/tasks/user.vue index f18643b59e..888b2466b3 100644 --- a/website/client/components/tasks/user.vue +++ b/website/client/components/tasks/user.vue @@ -13,16 +13,16 @@ input.form-control.input-search(type="text", :placeholder="$t('search')", v-model="searchText") .filter-panel(v-if="isFilterPanelOpen") .tags-category.d-flex(v-for="tagsType in tagsByType", v-if="tagsType.tags.length > 0", :key="tagsType.key") - .tags-header(v-once) + .tags-header(v-once) strong {{ $t(tagsType.key) }} - a.d-block(v-if="tagsType.key === 'tags'", v-once) {{ $t('editTags2') }} + a.d-block(v-if="tagsType.key === 'tags'", v-once) {{ $t('editTags2') }} .tags-list.container .row.no-gutters .col-6(v-for="tag in tagsType.tags",) label.custom-control.custom-checkbox input.custom-control-input( - type="checkbox", - :checked="isTagSelected(tag)", + type="checkbox", + :checked="isTagSelected(tag)", @change="toggleTag(tag)", ) span.custom-control-indicator @@ -36,7 +36,7 @@ a.cancel-filters(@click="closeFilterPanel()", v-once) {{ $t('cancel') }} span.input-group-btn button.btn.btn-secondary.filter-button( - type="button", + type="button", @click="toggleFilterPanel()", :class="{'filter-button-open': selectedTags.length > 0}", ) @@ -44,7 +44,7 @@ span(v-once) {{ $t('filter') }} .svg-icon.filter-icon(v-html="icons.filter") .col-1.offset-3 - //button.btn.btn-success(v-once) + //button.btn.btn-success(v-once) .svg-icon.positive(v-html="icons.positive") | {{ $t('create') }} b-dropdown(:text="$t('create')") @@ -53,8 +53,8 @@ .row.tasks-columns task-column.col-3( - v-for="column in columns", - :type="column", :key="column", + v-for="column in columns", + :type="column", :key="column", :isUser="true", :searchText="searchTextThrottled", :selectedTags="selectedTags", @editTask="editTask", @@ -62,115 +62,115 @@