]> git.lizzy.rs Git - cheatdb.git/blob - app/templates/macros/reviews.html
42ae614f089799c4f619828c902c7ad05398a341
[cheatdb.git] / app / templates / macros / reviews.html
1 {% macro render_reviews(reviews, current_user, show_package_link=False) -%}
2 <ul class="comments mt-4 mb-0">
3         {% for review in reviews %}
4                 <li class="row my-2 mx-0">
5                         <div class="col-md-1 p-1">
6                                 <a href="{{ url_for('users.profile', username=review.author.username) }}">
7                                         <img class="img-responsive user-photo img-thumbnail img-thumbnail-1" src="{{ review.author.getProfilePicURL() }}">
8                                 </a>
9                         </div>
10                         <div class="col-md-auto pl-1 pr-3 pt-2 text-center" style=" font-size: 200%;">
11                                 {% if review.recommends %}
12                                         <i class="fas fa-thumbs-up" style="color:#6f6;"></i>
13                                 {% else %}
14                                         <i class="fas fa-thumbs-down" style="color:#f66;"></i>
15                                 {% endif %}
16                         </div>
17                         {% if review.thread %}
18                                 {% set reply = review.thread.replies[0] %}
19                                 <div class="col pr-0">
20                                         <div class="card">
21                                                 <div class="card-header">
22                                                         <a class="author {{ reply.author.rank.name }}"
23                                                                         href="{{ url_for('users.profile', username=reply.author.username) }}">
24                                                                 {{ reply.author.display_name }}
25                                                         </a>
26
27                                                         <a name="reply-{{ reply.id }}" class="text-muted float-right"
28                                                                         href="{{ url_for('threads.view', id=review.thread.id) }}#reply-{{ reply.id }}">
29                                                                 {{ reply.created_at | datetime }}
30                                                         </a>
31                                                 </div>
32
33                                                 <div class="card-body">
34                                                         {% if current_user == review.author %}
35                                                                 <a class="btn btn-primary btn-sm ml-1 float-right"
36                                                                                 href="{{ review.package.getReviewURL() }}">
37                                                                         <i class="fas fa-edit"></i>
38                                                                 </a>
39                                                         {% endif %}
40
41                                                         <p>
42                                                                 <strong>{{ review.thread.title }}</strong>
43                                                         </p>
44
45                                                         {{ reply.comment | markdown }}
46
47                                                         <p class="mt-2 mb-0">
48                                                                 {% if show_package_link %}
49                                                                         <a class="btn btn-primary mr-1" href="{{ review.package.getDetailsURL() }}">
50                                                                                 {{ _("%(title)s by %(author)s",
51                                                                                                 title="<b>" | safe + review.package.title + "</b>" | safe,
52                                                                                                 author=review.package.author.display_name) }}
53                                                                         </a>
54                                                                 {% endif %}
55
56                                                                 <a class="btn {% if review.thread.replies.count() > 1 %} btn-primary {% else %} btn-secondary {% endif %}"
57                                                                                 href="{{ url_for('threads.view', id=review.thread.id) }}">
58                                                                         <i class="fas fa-comments mr-2"></i>
59                                                                         {{ _("%(num)d comments", num=review.thread.replies.count() - 1) }}
60                                                                 </a>
61                                                         </p>
62                                                 </div>
63                                         </div>
64                                 </div>
65                         {% endif %}
66                 </li>
67         {% else %}
68                 <p>
69                         <i>{{ _("No reviews, yet.") }}</i>
70                 </p>
71         {% endfor %}
72 </ul>
73 {% endmacro %}
74
75
76 {% macro render_review_form(package, current_user) -%}
77         <div class="card mt-0 mb-4 ">
78                 <div class="card-header">
79                         {{ _("Review") }}
80                 </div>
81                 <form method="post" action="{{ package.getReviewURL() }}" class="card-body">
82                         <input type="hidden" name="csrf_token" value="{{ csrf_token() }}" />
83                         <p>
84                                 {{ _("Do you recommend this %(type)s?", type=package.type.value | lower) }}
85                         </p>
86
87                         <div class="btn-group btn-group-toggle" data-toggle="buttons">
88                                 <label class="btn btn-primary">
89                                         <i class="fas fa-thumbs-up mr-2"></i>
90                                         <input type="radio" name="recommends" value="yes" autocomplete="off"> {{ _("Yes") }}
91                                 </label>
92                                 <label class="btn btn-primary">
93                                         <i class="fas fa-thumbs-down mr-2"></i>
94                                         <input type="radio" name="recommends" value="no" autocomplete="off"> {{ _("No") }}
95                                 </label>
96                         </div>
97
98                         <p class="mt-4 mb-3">
99                                 {{ _("Why or why not? Try to be constructive") }}
100                         </p>
101
102                         <div class="form-group">
103                                 <label for="title">{{ _("Title") }}</label>
104                                 <input class="form-control" id="title" name="title" required="" type="text">
105                         </div>
106
107                         <textarea class="form-control markdown" required maxlength=500 name="comment"></textarea><br />
108                         <input class="btn btn-primary" type="submit" value="{{ _('Post Review') }}" />
109                 </form>
110         </div>
111 {% endmacro %}
112
113
114 {% macro render_review_preview(package, current_user) -%}
115         <input type="hidden" name="csrf_token" value="{{ csrf_token() }}" />
116         <div class="card mt-0 mb-4 ">
117                 <div class="card-header">
118                         {{ _("Review") }}
119                 </div>
120                 <form method="post" action="{{ package.getReviewURL() }}" class="card-body">
121                         <input type="hidden" name="csrf_token" value="{{ csrf_token() }}" />
122                         <p>
123                                 {{ _("Do you recommend this %(type)s?", type=package.type.value | lower) }}
124                         </p>
125
126                         <div class="btn-group">
127                                 <button class="btn btn-primary" name="recommends" value="yes">
128                                         <i class="fas fa-thumbs-up mr-2"></i>
129                                         {{ _("Yes") }}
130                                 </button>
131                                 <button class="btn btn-primary" name="recommends" value="no">
132                                         <i class="fas fa-thumbs-down mr-2"></i>
133                                         {{ _("No") }}
134                                 </button>
135                         </div>
136                 </form>
137         </div>
138 {% endmacro %}