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 @@ | @@ -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 | \ No newline at end of file | 31 | \ No newline at end of file |
@@ -0,0 +1,36 @@ | @@ -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,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 | \ No newline at end of file | 0 | \ No newline at end of file |
forum/templates/forum_list.html
@@ -1,36 +0,0 @@ | @@ -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 @@ | @@ -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 | \ No newline at end of file | 41 | \ No newline at end of file |
forum/templates/post_answer_list.html
@@ -1,47 +0,0 @@ | @@ -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 | \ No newline at end of file | 0 | \ No newline at end of file |
@@ -0,0 +1,47 @@ | @@ -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 | \ No newline at end of file | 48 | \ No newline at end of file |
forum/templates/post_list.html
@@ -1,40 +0,0 @@ | @@ -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 | \ No newline at end of file | 0 | \ No newline at end of file |
forum/views.py
@@ -13,7 +13,7 @@ class ForumIndex(LoginRequiredMixin, generic.ListView): | @@ -13,7 +13,7 @@ class ForumIndex(LoginRequiredMixin, generic.ListView): | ||
13 | login_url = reverse_lazy("core:home") | 13 | login_url = reverse_lazy("core:home") |
14 | redirect_field_name = 'next' | 14 | redirect_field_name = 'next' |
15 | 15 | ||
16 | - template_name = "forum_list.html" | 16 | + template_name = "forum/forum_list.html" |
17 | context_object_name = 'foruns' | 17 | context_object_name = 'foruns' |
18 | 18 | ||
19 | def get_queryset(self): | 19 | def get_queryset(self): |
@@ -25,7 +25,7 @@ class ForumIndex(LoginRequiredMixin, generic.ListView): | @@ -25,7 +25,7 @@ class ForumIndex(LoginRequiredMixin, generic.ListView): | ||
25 | 25 | ||
26 | class CreateForumView(LoginRequiredMixin, generic.edit.CreateView): | 26 | class CreateForumView(LoginRequiredMixin, generic.edit.CreateView): |
27 | 27 | ||
28 | - template_name = 'forum_form.html' | 28 | + template_name = 'forum/forum_form.html' |
29 | form_class = ForumForm | 29 | form_class = ForumForm |
30 | success_url = reverse_lazy('forum:index') | 30 | success_url = reverse_lazy('forum:index') |
31 | 31 | ||
@@ -33,7 +33,7 @@ class PostIndex(LoginRequiredMixin, generic.ListView): | @@ -33,7 +33,7 @@ class PostIndex(LoginRequiredMixin, generic.ListView): | ||
33 | login_url = reverse_lazy("core:home") | 33 | login_url = reverse_lazy("core:home") |
34 | redirect_field_name = 'next' | 34 | redirect_field_name = 'next' |
35 | 35 | ||
36 | - template_name = "post_list.html" | 36 | + template_name = "post/post_list.html" |
37 | context_object_name = 'posts' | 37 | context_object_name = 'posts' |
38 | 38 | ||
39 | def get_queryset(self): | 39 | def get_queryset(self): |
@@ -47,7 +47,7 @@ class PostAnswerIndex(LoginRequiredMixin, generic.ListView): | @@ -47,7 +47,7 @@ class PostAnswerIndex(LoginRequiredMixin, generic.ListView): | ||
47 | login_url = reverse_lazy("core:home") | 47 | login_url = reverse_lazy("core:home") |
48 | redirect_field_name = 'next' | 48 | redirect_field_name = 'next' |
49 | 49 | ||
50 | - template_name = "post_answer_list.html" | 50 | + template_name = "post_answers/post_answer_list.html" |
51 | context_object_name = 'answers' | 51 | context_object_name = 'answers' |
52 | 52 | ||
53 | def get_queryset(self): | 53 | def get_queryset(self): |