This repository was archived by the owner on Feb 8, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathscript.js
More file actions
103 lines (99 loc) · 2.58 KB
/
script.js
File metadata and controls
103 lines (99 loc) · 2.58 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
const app = new Vue({
el: '#app',
data: {
images: []
},
methods: {
upvote: function (img) {
request('POST', 'vote', {
imageId: img.imageId,
type: 'up',
userId: localStorage.getItem('userId'),
authToken: localStorage.getItem('authToken')
}, res => {
console.log('up', res);
if (res !== false) img.upvotes = res;
});
},
downvote: function (img) {
request('POST', 'vote', {
imageId: img.imageId,
type: 'down',
userId: localStorage.getItem('userId'),
authToken: localStorage.getItem('authToken')
}, res => {
console.log('down', res);
if (res !== false) img.downvotes = res;
});
},
comment: function (img, input) {
request('POST', 'comment', {
imageId: img.imageId,
text: input.value,
userId: localStorage.getItem('userId'),
authToken: localStorage.getItem('authToken')
}, res => {
console.log('comment', res);
if (res) {
img.commentsArray.push({
userId: localStorage.getItem('userId'),
text: input.value,
username: ''
});
img.commentBox = false;
input.value = '';
this.username(img.commentsArray[img.commentsArray.length - 1]);
img.comments++;
}
});
},
getComments: function (img, amount) {
request('GET', 'get-comments', {
imageId: img.imageId,
amount: amount
}, res => {
img.commentsArray = res.map(val => {
return {
userId: val.userId,
text: val.text,
username: ''
};
});
for (comment of img.commentsArray) {
this.username(comment);
}
});
},
username: function (comment) {
if (sessionStorage.getItem(comment.userId)) {
comment.username = sessionStorage.getItem(comment.userId);
} else {
request('GET', 'get-user', {
userId: comment.userId
}, res => {
sessionStorage.setItem(comment.userId, res.username);
comment.username = res.username;
});
}
}
}
});
if (location.search.length > 0) {
request('GET', 'search', {
name: location.search.substring(1)
}, res => {
app.images = res.map(val => {
val.commentsArray = [];
val.commentBox = false;
return val;
});;
});
} else {
request('GET', 'all-images', {}, res => {
app.images = res.map(val => {
val.commentsArray = [];
val.commentBox = false;
return val;
});
});
}