Commit 4a7593e5e2aa5c6a0a4fc95b40cc98363d71d6a9
1 parent
b093d4f2
Exists in
master
and in
5 other branches
Putting *.html files in folders [Issue: #73]
Showing
9 changed files
with
157 additions
and
157 deletions
Show diff stats
... | ... | @@ -0,0 +1,30 @@ |
1 | +{% load static i18n %} | |
2 | +{% load widget_tweaks %} | |
3 | + | |
4 | +<form method="post" action="" enctype="multipart/form-data"> | |
5 | + {% csrf_token %} | |
6 | + {% for field in form %} | |
7 | + <div class="form-group {% if form.has_error %} has-error {% endif %} is-fileinput"> | |
8 | + <label for="{{ field.auto_id }}">{{ field.label }}</label> | |
9 | + {% render_field field class='form-control' %} | |
10 | + <span class="help-block">{{ field.help_text }}</span> | |
11 | + {% if field.errors %} | |
12 | + <div class="row"> | |
13 | + <br /> | |
14 | + <div class="alert alert-danger alert-dismissible" role="alert"> | |
15 | + <button type="button" class="close" data-dismiss="alert" aria-label="Close"> | |
16 | + <span aria-hidden="true">×</span> | |
17 | + </button> | |
18 | + <ul> | |
19 | + {% for error in field.errors %} | |
20 | + <li>{{ error }}</li> | |
21 | + {% endfor %} | |
22 | + </ul> | |
23 | + </div> | |
24 | + </div> | |
25 | + {% endif %} | |
26 | + </div> | |
27 | + {% endfor %} | |
28 | + | |
29 | + <input type="submit" value="{% trans 'Create' %}" class="btn btn-primary" /> | |
30 | +</form> | |
0 | 31 | \ No newline at end of file | ... | ... |
... | ... | @@ -0,0 +1,36 @@ |
1 | +{% load i18n permission_tags %} | |
2 | + | |
3 | +{% if foruns|length > 0 %} | |
4 | + {% for forum in foruns %} | |
5 | + <a class="forum_collapse" role="button" href="javascript: showPosts('{% url 'forum:posts' %}', '{{ forum.slug }}')" aria-expanded="true"> | |
6 | + <div class="page-header"> | |
7 | + <!-- {% if user|has_role:'system_admin' or user|has_role:'professor' and user == forum.topic.owner %} | |
8 | + <div class="pull-right"> | |
9 | + <div class="btn-group icon-more-horiz"> | |
10 | + <button class="btn btn-default btn-xs dropdown-toggle" type="button" onclick="$('#dropdown{{ forum.slug }}').dropdown('toggle');" data-toggle="dropdown"> | |
11 | + <i class="material-icons">more_horiz</i> | |
12 | + </button> | |
13 | + <ul class="dropdown-menu" id="dropdown{{ forum.slug }}"> | |
14 | + <li><a href="javascript:void(0)"><i class="material-icons">create</i> Edit</a></li> | |
15 | + <li><a href="javascript:void(0)"><i class="material-icons">delete_sweep</i> Remove</a></li> | |
16 | + </ul> | |
17 | + </div> | |
18 | + </div> | |
19 | + {% endif %} --> | |
20 | + <h1 id="timeline"> | |
21 | + {{ forum }} | |
22 | + </h1> | |
23 | + <b>{% trans 'Description' %}: </b>{{ forum.description }}<p> | |
24 | + <b>{% trans 'Created in' %}: </b>{{ forum.create_date }} | |
25 | + </div> | |
26 | + </a> | |
27 | + <div class="collapse" id="collapse{{ forum.slug }}"> | |
28 | + <div class="well"> | |
29 | + </div> | |
30 | + </div> | |
31 | + {% endfor %} | |
32 | +{% else %} | |
33 | + <div class="page-header"> | |
34 | + <p>{% trans 'No forum created yet.' %}</p> | |
35 | + </div> | |
36 | +{% endif %} | ... | ... |
forum/templates/forum_form.html
... | ... | @@ -1,30 +0,0 @@ |
1 | -{% load static i18n %} | |
2 | -{% load widget_tweaks %} | |
3 | - | |
4 | -<form method="post" action="" enctype="multipart/form-data"> | |
5 | - {% csrf_token %} | |
6 | - {% for field in form %} | |
7 | - <div class="form-group {% if form.has_error %} has-error {% endif %} is-fileinput"> | |
8 | - <label for="{{ field.auto_id }}">{{ field.label }}</label> | |
9 | - {% render_field field class='form-control' %} | |
10 | - <span class="help-block">{{ field.help_text }}</span> | |
11 | - {% if field.errors %} | |
12 | - <div class="row"> | |
13 | - <br /> | |
14 | - <div class="alert alert-danger alert-dismissible" role="alert"> | |
15 | - <button type="button" class="close" data-dismiss="alert" aria-label="Close"> | |
16 | - <span aria-hidden="true">×</span> | |
17 | - </button> | |
18 | - <ul> | |
19 | - {% for error in field.errors %} | |
20 | - <li>{{ error }}</li> | |
21 | - {% endfor %} | |
22 | - </ul> | |
23 | - </div> | |
24 | - </div> | |
25 | - {% endif %} | |
26 | - </div> | |
27 | - {% endfor %} | |
28 | - | |
29 | - <input type="submit" value="{% trans 'Create' %}" class="btn btn-primary" /> | |
30 | -</form> | |
31 | 0 | \ No newline at end of file |
forum/templates/forum_list.html
... | ... | @@ -1,36 +0,0 @@ |
1 | -{% load i18n permission_tags %} | |
2 | - | |
3 | -{% if foruns|length > 0 %} | |
4 | - {% for forum in foruns %} | |
5 | - <a class="forum_collapse" role="button" href="javascript: showPosts('{% url 'forum:posts' %}', '{{ forum.slug }}')" aria-expanded="true"> | |
6 | - <div class="page-header"> | |
7 | - <!-- {% if user|has_role:'system_admin' or user|has_role:'professor' and user == forum.topic.owner %} | |
8 | - <div class="pull-right"> | |
9 | - <div class="btn-group icon-more-horiz"> | |
10 | - <button class="btn btn-default btn-xs dropdown-toggle" type="button" onclick="$('#dropdown{{ forum.slug }}').dropdown('toggle');" data-toggle="dropdown"> | |
11 | - <i class="material-icons">more_horiz</i> | |
12 | - </button> | |
13 | - <ul class="dropdown-menu" id="dropdown{{ forum.slug }}"> | |
14 | - <li><a href="javascript:void(0)"><i class="material-icons">create</i> Edit</a></li> | |
15 | - <li><a href="javascript:void(0)"><i class="material-icons">delete_sweep</i> Remove</a></li> | |
16 | - </ul> | |
17 | - </div> | |
18 | - </div> | |
19 | - {% endif %} --> | |
20 | - <h1 id="timeline"> | |
21 | - {{ forum }} | |
22 | - </h1> | |
23 | - <b>{% trans 'Description' %}: </b>{{ forum.description }}<p> | |
24 | - <b>{% trans 'Created in' %}: </b>{{ forum.create_date }} | |
25 | - </div> | |
26 | - </a> | |
27 | - <div class="collapse" id="collapse{{ forum.slug }}"> | |
28 | - <div class="well"> | |
29 | - </div> | |
30 | - </div> | |
31 | - {% endfor %} | |
32 | -{% else %} | |
33 | - <div class="page-header"> | |
34 | - <p>{% trans 'No forum created yet.' %}</p> | |
35 | - </div> | |
36 | -{% endif %} |
... | ... | @@ -0,0 +1,40 @@ |
1 | +{% load i18n permission_tags %} | |
2 | + | |
3 | +{% if posts|length > 0 %} | |
4 | + <ul class="timeline post"> | |
5 | + {% for post in posts %} | |
6 | + <li> | |
7 | + <a class="post_collapse" role="button" href="javascript: showPostsAnswers('{% url 'forum:post_answers' %}', '{{ post.id }}')" aria-expanded="false"> | |
8 | + <div class="timeline-panel"> | |
9 | + <div class="row"> | |
10 | + <div class="col-xs-2 col-sm-2 col-md-2"> | |
11 | + <img class="img-responsive img-rounded" src="{{ post.user.image_url }}" /> | |
12 | + </div> | |
13 | + <div class="col-xs-10 col-sm-10 col-md-10"> | |
14 | + <div class="timeline-heading"> | |
15 | + <h3> {{ post.user }}</h3> | |
16 | + </div> | |
17 | + <div class="timeline-body"> | |
18 | + <p><em>{{ post.message|linebreaks }}</em></p> | |
19 | + </div> | |
20 | + <hr> | |
21 | + <small class="text-muted"> | |
22 | + <span class="pull-right"> | |
23 | + <i class="glyphicon glyphicon-time"></i> {{ post.post_date|timesince }} | |
24 | + {% trans ' ago' %} | |
25 | + </span> | |
26 | + </small> | |
27 | + </div> | |
28 | + </div> | |
29 | + </div> | |
30 | + </a> | |
31 | + <div class="collapse" id="collapse{{ post.id }}" style="margin-top:10px;"> | |
32 | + <div class="well"> | |
33 | + </div> | |
34 | + </div> | |
35 | + </li> | |
36 | + {% endfor %} | |
37 | + </ul> | |
38 | +{% else %} | |
39 | + <p>{% trans 'No posts were made yet.' %}</p> | |
40 | +{% endif %} | |
0 | 41 | \ No newline at end of file | ... | ... |
forum/templates/post_answer_list.html
... | ... | @@ -1,47 +0,0 @@ |
1 | -{% load i18n permission_tags %} | |
2 | - | |
3 | -{% if answers|length > 0 %} | |
4 | - <ul class="timeline post"> | |
5 | - {% for answer in answers %} | |
6 | - <li> | |
7 | - <div class="timeline-panel"> | |
8 | - <div class="row"> | |
9 | - <div class="col-xs-2 col-sm-2 col-md-2"> | |
10 | - <img class="img-responsive img-rounded" src="{{ answer.user.image_url }}" /> | |
11 | - </div> | |
12 | - <div class="col-xs-10 col-sm-10 col-md-10"> | |
13 | - {% if user|has_role:'system_admin' or user|has_role:'professor' and user == forum.topic.owner %} | |
14 | - <div class="pull-right"> | |
15 | - <div class="btn-group icon-more-horiz"> | |
16 | - <a class="btn btn-default btn-xs dropdown-toggle" type="button" id="dropdownMenu1" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> | |
17 | - <i class="material-icons">more_horiz</i> | |
18 | - </a> | |
19 | - <ul class="dropdown-menu" aria-labelledby="dropdownMenu1"> | |
20 | - <li><a href="javascript:void(0)"><i class="material-icons">create</i> Edit</a></li> | |
21 | - <li><a href="javascript:void(0)"><i class="material-icons">delete_sweep</i> Remove</a></li> | |
22 | - </ul> | |
23 | - </div> | |
24 | - </div> | |
25 | - {% endif %} | |
26 | - <div class="timeline-heading"> | |
27 | - <h3> {{ answer.user }}</h3> | |
28 | - </div> | |
29 | - <div class="timeline-body"> | |
30 | - <p><em>{{ answer.message|linebreaks }}</em></p> | |
31 | - </div> | |
32 | - <hr> | |
33 | - <small class="text-muted"> | |
34 | - <span class="pull-right"> | |
35 | - <i class="glyphicon glyphicon-time"></i> {{ answer.answer_date|timesince }} | |
36 | - {% trans ' ago' %} | |
37 | - </span> | |
38 | - </small> | |
39 | - </div> | |
40 | - </div> | |
41 | - </div> | |
42 | - </li> | |
43 | - {% endfor %} | |
44 | - </ul> | |
45 | -{% else %} | |
46 | - <p>{% trans 'Nobody answered this post yet.' %}</p> | |
47 | -{% endif %} | |
48 | 0 | \ No newline at end of file |
... | ... | @@ -0,0 +1,47 @@ |
1 | +{% load i18n permission_tags %} | |
2 | + | |
3 | +{% if answers|length > 0 %} | |
4 | + <ul class="timeline post"> | |
5 | + {% for answer in answers %} | |
6 | + <li> | |
7 | + <div class="timeline-panel"> | |
8 | + <div class="row"> | |
9 | + <div class="col-xs-2 col-sm-2 col-md-2"> | |
10 | + <img class="img-responsive img-rounded" src="{{ answer.user.image_url }}" /> | |
11 | + </div> | |
12 | + <div class="col-xs-10 col-sm-10 col-md-10"> | |
13 | + {% if user|has_role:'system_admin' or user|has_role:'professor' and user == forum.topic.owner %} | |
14 | + <div class="pull-right"> | |
15 | + <div class="btn-group icon-more-horiz"> | |
16 | + <a class="btn btn-default btn-xs dropdown-toggle" type="button" id="dropdownMenu1" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> | |
17 | + <i class="material-icons">more_horiz</i> | |
18 | + </a> | |
19 | + <ul class="dropdown-menu" aria-labelledby="dropdownMenu1"> | |
20 | + <li><a href="javascript:void(0)"><i class="material-icons">create</i> Edit</a></li> | |
21 | + <li><a href="javascript:void(0)"><i class="material-icons">delete_sweep</i> Remove</a></li> | |
22 | + </ul> | |
23 | + </div> | |
24 | + </div> | |
25 | + {% endif %} | |
26 | + <div class="timeline-heading"> | |
27 | + <h3> {{ answer.user }}</h3> | |
28 | + </div> | |
29 | + <div class="timeline-body"> | |
30 | + <p><em>{{ answer.message|linebreaks }}</em></p> | |
31 | + </div> | |
32 | + <hr> | |
33 | + <small class="text-muted"> | |
34 | + <span class="pull-right"> | |
35 | + <i class="glyphicon glyphicon-time"></i> {{ answer.answer_date|timesince }} | |
36 | + {% trans ' ago' %} | |
37 | + </span> | |
38 | + </small> | |
39 | + </div> | |
40 | + </div> | |
41 | + </div> | |
42 | + </li> | |
43 | + {% endfor %} | |
44 | + </ul> | |
45 | +{% else %} | |
46 | + <p>{% trans 'Nobody answered this post yet.' %}</p> | |
47 | +{% endif %} | |
0 | 48 | \ No newline at end of file | ... | ... |
forum/templates/post_list.html
... | ... | @@ -1,40 +0,0 @@ |
1 | -{% load i18n permission_tags %} | |
2 | - | |
3 | -{% if posts|length > 0 %} | |
4 | - <ul class="timeline post"> | |
5 | - {% for post in posts %} | |
6 | - <li> | |
7 | - <a class="post_collapse" role="button" href="javascript: showPostsAnswers('{% url 'forum:post_answers' %}', '{{ post.id }}')" aria-expanded="false"> | |
8 | - <div class="timeline-panel"> | |
9 | - <div class="row"> | |
10 | - <div class="col-xs-2 col-sm-2 col-md-2"> | |
11 | - <img class="img-responsive img-rounded" src="{{ post.user.image_url }}" /> | |
12 | - </div> | |
13 | - <div class="col-xs-10 col-sm-10 col-md-10"> | |
14 | - <div class="timeline-heading"> | |
15 | - <h3> {{ post.user }}</h3> | |
16 | - </div> | |
17 | - <div class="timeline-body"> | |
18 | - <p><em>{{ post.message|linebreaks }}</em></p> | |
19 | - </div> | |
20 | - <hr> | |
21 | - <small class="text-muted"> | |
22 | - <span class="pull-right"> | |
23 | - <i class="glyphicon glyphicon-time"></i> {{ post.post_date|timesince }} | |
24 | - {% trans ' ago' %} | |
25 | - </span> | |
26 | - </small> | |
27 | - </div> | |
28 | - </div> | |
29 | - </div> | |
30 | - </a> | |
31 | - <div class="collapse" id="collapse{{ post.id }}" style="margin-top:10px;"> | |
32 | - <div class="well"> | |
33 | - </div> | |
34 | - </div> | |
35 | - </li> | |
36 | - {% endfor %} | |
37 | - </ul> | |
38 | -{% else %} | |
39 | - <p>{% trans 'No posts were made yet.' %}</p> | |
40 | -{% endif %} | |
41 | 0 | \ No newline at end of file |
forum/views.py
... | ... | @@ -13,7 +13,7 @@ class ForumIndex(LoginRequiredMixin, generic.ListView): |
13 | 13 | login_url = reverse_lazy("core:home") |
14 | 14 | redirect_field_name = 'next' |
15 | 15 | |
16 | - template_name = "forum_list.html" | |
16 | + template_name = "forum/forum_list.html" | |
17 | 17 | context_object_name = 'foruns' |
18 | 18 | |
19 | 19 | def get_queryset(self): |
... | ... | @@ -25,7 +25,7 @@ class ForumIndex(LoginRequiredMixin, generic.ListView): |
25 | 25 | |
26 | 26 | class CreateForumView(LoginRequiredMixin, generic.edit.CreateView): |
27 | 27 | |
28 | - template_name = 'forum_form.html' | |
28 | + template_name = 'forum/forum_form.html' | |
29 | 29 | form_class = ForumForm |
30 | 30 | success_url = reverse_lazy('forum:index') |
31 | 31 | |
... | ... | @@ -33,7 +33,7 @@ class PostIndex(LoginRequiredMixin, generic.ListView): |
33 | 33 | login_url = reverse_lazy("core:home") |
34 | 34 | redirect_field_name = 'next' |
35 | 35 | |
36 | - template_name = "post_list.html" | |
36 | + template_name = "post/post_list.html" | |
37 | 37 | context_object_name = 'posts' |
38 | 38 | |
39 | 39 | def get_queryset(self): |
... | ... | @@ -47,7 +47,7 @@ class PostAnswerIndex(LoginRequiredMixin, generic.ListView): |
47 | 47 | login_url = reverse_lazy("core:home") |
48 | 48 | redirect_field_name = 'next' |
49 | 49 | |
50 | - template_name = "post_answer_list.html" | |
50 | + template_name = "post_answers/post_answer_list.html" | |
51 | 51 | context_object_name = 'answers' |
52 | 52 | |
53 | 53 | def get_queryset(self): | ... | ... |