Skip to content

Commit 40e879a

Browse files
committed
show only 1 like button if any clicked
1 parent 0b5274b commit 40e879a

File tree

2 files changed

+27
-4
lines changed

2 files changed

+27
-4
lines changed

frontend/src/components/app/users/LikeButton.vue

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
<div class="w-full">
44
<div @mouseover="hover = true"
55
@mouseleave="hover = false"
6-
@click="clicked = !clicked"
6+
@click="toggle()"
77
class="w-full flex justify-center items-center bg-purple-matcha py-4 rounded-lg cursor-pointer">
88
<img v-bind:src="getImage" class="h-8">
99
<h1 class="text-white-matcha text-2xl ml-2 font-bold">{{getText}}</h1>
@@ -21,6 +21,16 @@ export default {
2121
hover: false,
2222
clicked: false,
2323
}),
24+
methods: {
25+
toggle() {
26+
this.clicked = !this.clicked;
27+
if (this.clicked) {
28+
this.$emit('clicked');
29+
} else {
30+
this.$emit('revert');
31+
}
32+
},
33+
},
2434
computed: {
2535
getImage() {
2636
if (this.clicked) {

frontend/src/components/app/users/UserProfile.vue

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -34,19 +34,25 @@
3434
</div>
3535
<div class="text-center flex flex-col mx-auto p-8 border-b">
3636
<LikeButton
37+
v-if="!likeButtons.superLikeClicked"
3738
v-bind:startImage="likeImage"
3839
v-bind:hoverImage="likeImageHover"
3940
v-bind:clickedImage="likeImageClicked"
4041
v-bind:text="'Like'"
41-
v-bind:textRevert="'Unlike'"></LikeButton>
42+
v-bind:textRevert="'Unlike'"
43+
v-on:clicked="likeButtons.likeClicked = true"
44+
v-on:revert="likeButtons.likeClicked = false"></LikeButton>
4245
<LikeButton
43-
class="mt-8"
46+
v-if="!likeButtons.likeClicked && superLikesLeft()"
47+
v-bind:class="{'mt-8': !likeButtons.superLikeClicked}"
4448
v-bind:startImage="superLikeImage"
4549
v-bind:hoverImage="superLikeImageHover"
4650
v-bind:clickedImage="superLikeImageClicked"
4751
v-bind:text="'Super Like'"
4852
v-bind:textRevert="'Unlike'"
49-
v-bind:description="`Worth 10 likes, and ${user.first_name} sees your extra interest`"></LikeButton>
53+
v-bind:description="`Worth 10 likes, and ${user.first_name} sees your extra interest`"
54+
v-on:clicked="likeButtons.superLikeClicked = true"
55+
v-on:revert="likeButtons.superLikeClicked = false"></LikeButton>
5056
</div>
5157
<div class="text-center p-8 border-b relative">
5258
<DropdownDisplayChoice
@@ -88,6 +94,10 @@ export default {
8894
superLikeImage,
8995
superLikeImageHover,
9096
superLikeImageClicked,
97+
likeButtons: {
98+
likeClicked: false,
99+
superLikeClicked: false,
100+
},
91101
}),
92102
methods: {
93103
preferences() {
@@ -111,6 +121,9 @@ export default {
111121
}
112122
return 'any gender';
113123
},
124+
superLikesLeft() {
125+
return true;
126+
},
114127
saveSingleChoice(...args) {
115128
const [key, value] = args;
116129
console.log(key);

0 commit comments

Comments
 (0)