Commit f3a7f5fb38cdbac5e6f3b583231937f49ab930ed

Authored by Matheus Lins
1 parent 2012e6ec

#214

courses/templates/category/delete.html
1 -{% load static i18n permission_tags %}  
2 1
3 -<!-- Modal (remember to change the ids!!!) -->  
4 -<div class="modal fade" id="category" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">  
5 - <div class="modal-dialog" role="document">  
6 - <div class="modal-content">  
7 - <!-- Modal Header -->  
8 - <div class="modal-header"> 2 +{% extends 'course/view.html' %}
9 3
10 - <h4 class="modal-title" id="myModalLabel">{% trans "Delete Category" %}</h4>  
11 - </div>  
12 - <!-- Modal Body -->  
13 - <div class="modal-body">  
14 - <!-- Put ONLY your content here!!! -->  
15 - <form id="delete_form" action="" method="post">  
16 - {% csrf_token %}  
17 - <p>{% trans 'Are you sure you want to delete the subject' %} "{{category.name}}"?</p>  
18 - </form>  
19 - </div>  
20 - <!-- Modal Footer -->  
21 - <div class="modal-footer">  
22 - <!-- Don't remove that!!! -->  
23 - <button type="button" class="btn btn-danger btn-raised" data-dismiss="modal">{% trans "Close" %}</button>  
24 - <button type="submit" id="button" form="delete_form" class="btn btn-primary btn-raised">{% trans "Delete" %}</button>  
25 - <script>  
26 - $("#delete_form").submit(function(event) {  
27 - Submite.remove("{% url 'course:delete_cat' category.slug %}",$(this).serialize(),"#category_{{category.slug}}");  
28 - event.preventDefault();  
29 - });  
30 - </script>  
31 - </div>  
32 - </div> 4 +{% load static i18n %}
  5 +
  6 +{% block breadcrumbs %}
  7 + <ol class="breadcrumb">
  8 + <li><a href="{% url 'app:index' %}">{% trans 'Home' %}</a></li>
  9 + <li><a href="{% url 'course:view' course.slug %}">{{ course }}</a></li>
  10 + </ol>
  11 +{% endblock %}
  12 +
  13 +{% block content %}
  14 +<div class="panel panel-default">
  15 + <div class="panel-body">
  16 + <form action="" method="post">
  17 + {% csrf_token %}
  18 + <h2>{% trans 'Are you sure you want to delete the course' %} "{{course}}"?</h2>
  19 + <input type="submit" class="btn btn-raised btn-success btn-lg" value="{% trans 'Yes' %}" />
  20 + <a href="{% url 'course:view' course.slug%}" class="btn btn-raised btn-danger btn-lg">{% trans 'No' %}</a>
  21 + </form>
33 </div> 22 </div>
34 </div> 23 </div>
35 -<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>  
36 -<script src="{% static 'js/modal_category.js' %}"></script> 24 +{% endblock %}
37 \ No newline at end of file 25 \ No newline at end of file
courses/templates/category/update.html
@@ -32,9 +32,7 @@ @@ -32,9 +32,7 @@
32 </div> 32 </div>
33 <div class="panel-body"> 33 <div class="panel-body">
34 <ul class="nav nav-pills nav-stacked"> 34 <ul class="nav nav-pills nav-stacked">
35 - <li><a href="javascript:void(0)">{% trans 'Replicate Course' %}</a></li>  
36 <li><a href="{% url 'course:create' %}">{% trans 'Create Course' %}</a></li> 35 <li><a href="{% url 'course:create' %}">{% trans 'Create Course' %}</a></li>
37 - <li><a href="{% url 'course:create_cat' %}">{% trans 'Create Category' %}</a></li>  
38 </ul> 36 </ul>
39 </div> 37 </div>
40 </div> 38 </div>
courses/templates/course/course_card.html
1 {% load static i18n permission_tags %} 1 {% load static i18n permission_tags %}
2 {% load django_bootstrap_breadcrumbs %} 2 {% load django_bootstrap_breadcrumbs %}
3 -<div class="group"> 3 +<div class="group course-card ">
4 <div class="panel panel-info"> 4 <div class="panel panel-info">
5 <div class="panel-heading course"> 5 <div class="panel-heading course">
6 <div class="row"> 6 <div class="row">
courses/templates/course/delete.html
1 -{% extends 'course/view.html' %} 1 +{% load static i18n permission_tags %}
2 2
3 -{% load static i18n %} 3 +<!-- Modal (remember to change the ids!!!) -->
  4 +<div class="modal fade" id="course" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
  5 + <div class="modal-dialog" role="document">
  6 + <div class="modal-content">
  7 + <!-- Modal Header -->
  8 + <div class="modal-header">
4 9
5 -{% block breadcrumbs %}  
6 - <ol class="breadcrumb">  
7 - <li><a href="{% url 'app:index' %}">{% trans 'Home' %}</a></li>  
8 - <li><a href="{% url 'course:view' course.slug %}">{{ course }}</a></li>  
9 - </ol>  
10 -{% endblock %}  
11 -  
12 -{% block content %}  
13 -<div class="panel panel-default">  
14 - <div class="panel-body">  
15 - <form action="" method="post">  
16 - {% csrf_token %}  
17 - <h2>{% trans 'Are you sure you want to delete the course' %} "{{course}}"?</h2>  
18 - <input type="submit" class="btn btn-raised btn-success btn-lg" value="{% trans 'Yes' %}" />  
19 - <a href="{% url 'course:view' course.slug%}" class="btn btn-raised btn-danger btn-lg">{% trans 'No' %}</a> 10 + <h4 class="modal-title" id="myModalLabel">{% trans "Delete Course" %}</h4>
  11 + </div>
  12 + <!-- Modal Body -->
  13 + <div class="modal-body">
  14 + <!-- Put ONLY your content here!!! -->
  15 + <form id="delete_form" action="" method="post">
  16 + {% csrf_token %}
  17 + <p>{% trans 'Are you sure you want to delete the course' %} "{{course.name}}"?</p>
20 </form> 18 </form>
21 - </div> 19 + </div>
  20 + <!-- Modal Footer -->
  21 + <div class="modal-footer">
  22 + <!-- Don't remove that!!! -->
  23 + <button type="button" class="btn btn-danger btn-raised" data-dismiss="modal">{% trans "Close" %}</button>
  24 + <button type="submit" id="button" form="delete_form" class="btn btn-primary btn-raised">{% trans "Delete" %}</button>
  25 + <script>
  26 + $("#delete_form").submit(function(event) {
  27 + RemoverCurso.remove("{% url 'course:delete' course.slug %}",$(this).serialize(),"#course_{{course.slug}}");
  28 + event.preventDefault();
  29 + });
  30 + </script>
  31 + </div>
  32 + </div>
  33 + </div>
22 </div> 34 </div>
23 -{% endblock %} 35 +<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
  36 +<script src="{% static 'js/course.js' %}"></script>
courses/templates/course/index.html
@@ -168,6 +168,7 @@ @@ -168,6 +168,7 @@
168 {% endif %} 168 {% endif %}
169 </ul> 169 </ul>
170 </nav> 170 </nav>
  171 + <div class="row" id="modal_course">
171 </div> 172 </div>
172 <script type="text/javascript" src="{% static 'js/course.js' %}"></script> 173 <script type="text/javascript" src="{% static 'js/course.js' %}"></script>
173 {% endblock %} 174 {% endblock %}
courses/templates/course/view.html
@@ -72,20 +72,19 @@ @@ -72,20 +72,19 @@
72 <div class="panel panel-info"> 72 <div class="panel panel-info">
73 <div class="panel-heading course-detail"> 73 <div class="panel-heading course-detail">
74 <div class="row"> 74 <div class="row">
75 - <div class="col-xs-8 col-md-4 .titleTopic-detail"> 75 + <div class="col-xs-8 col-md-11 .titleTopic-detail">
76 <h4>{{course.name}}</h4> 76 <h4>{{course.name}}</h4>
77 </div> 77 </div>
78 - {% if user|has_role:'professor' and user in course.professors or user|has_role:'system_admin' %}  
79 - <div class="col-xs-4 col-md-8" id="divMoreActions"> 78 + {% if user|has_role:'professor' or user|has_role:'system_admin' %}
  79 + <div class="col-xs-4 col-md-1" id="divMoreActions">
80 <div class="btn-group"> 80 <div class="btn-group">
81 <button class="btn btn-default btn-sm dropdown-toggle" type="button" id="moreActions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> 81 <button class="btn btn-default btn-sm dropdown-toggle" type="button" id="moreActions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
82 <i class="fa fa-ellipsis-v fa-2x" aria-hidden="true"></i> 82 <i class="fa fa-ellipsis-v fa-2x" aria-hidden="true"></i>
83 <div class="ripple-container"></div></button> 83 <div class="ripple-container"></div></button>
84 - <ul class="dropdown-menu" aria-labelledby="moreActions">  
85 - <li><a href="javascript:void(0)" data-toggle="modal" data-target="#createSubject"><i class="fa fa-plus-square-o" aria-hidden="true"></i>&nbsp; {% trans "Create Subject" %}</a></li>  
86 - <li><a href="javascript:void(0)" data-toggle="modal" data-target="#myModal4"><i class="fa fa-files-o fa-fw" aria-hidden="true"></i>&nbsp; {% trans "Replicate" %}</a></li> 84 + <ul class="dropdown-menu pull-right" aria-labelledby="moreActions">
  85 + <li><a href="{% url 'course:replicate_course' course.slug %}"><i class="fa fa-files-o fa-fw" aria-hidden="true"></i>&nbsp; {% trans "Replicate" %}</a></li>
87 <li><a href="{% url 'course:update' course.slug %}"><i class="fa fa-pencil fa-fw" aria-hidden="true"></i>&nbsp; {% trans "Edit" %}</a></li> 86 <li><a href="{% url 'course:update' course.slug %}"><i class="fa fa-pencil fa-fw" aria-hidden="true"></i>&nbsp; {% trans "Edit" %}</a></li>
88 - <li><a href="javascript:void(0)" data-toggle="modal" data-target="#myModal2"><i class="fa fa-trash fa-fw" aria-hidden="true"></i>&nbsp; {% trans "Remove" %}</a></li> 87 + <li><a href="javascript:javascript:delete_course('{% url 'course:delete' course.slug %}', '{{ course.slug }}', '{% trans "Are you sure you want to delete this course?" %}', '{% url 'course:manage' %}')" data-toggle="modal" data-target="#myModal2"><i class="fa fa-trash fa-fw" aria-hidden="true"></i>&nbsp; {% trans "Remove" %}</a></li>
89 </ul> 88 </ul>
90 </div> 89 </div>
91 </div> 90 </div>
@@ -159,20 +158,20 @@ @@ -159,20 +158,20 @@
159 <div class="col-md-1 moreAccordion" data-toggle="collapse" data-parent="#accordion-{{subject.slug}}" href=".collapseSubject-{{subject.slug}}" aria-expanded="false" aria-controls="collapseSubject-{{subject.slug}}"> 158 <div class="col-md-1 moreAccordion" data-toggle="collapse" data-parent="#accordion-{{subject.slug}}" href=".collapseSubject-{{subject.slug}}" aria-expanded="false" aria-controls="collapseSubject-{{subject.slug}}">
160 <button class="btn btn-default btn-sm caret-square"><i class="fa fa-caret-square-o-down fa-2x" aria-hidden="true"></i></button> 159 <button class="btn btn-default btn-sm caret-square"><i class="fa fa-caret-square-o-down fa-2x" aria-hidden="true"></i></button>
161 </div> 160 </div>
162 - <div class="col-xs-9 col-md-9 titleTopic"> 161 + <div class="col-xs-9 col-md-10 titleTopic">
163 <a role="button" href="{% url 'course:view_subject' subject.slug %}"> 162 <a role="button" href="{% url 'course:view_subject' subject.slug %}">
164 <h4>{{subject.name}}</h4> 163 <h4>{{subject.name}}</h4>
165 </a> 164 </a>
166 </div> 165 </div>
167 - {% if user|has_role:'professor' and user in subject.professors or user|has_role:'system_admin' %}  
168 - <div class="col-xs-3 col-md-6" id="divMoreActions"> 166 + {% if user|has_role:'professor' or user|has_role:'system_admin' %}
  167 + <div class="col-xs-3 col-md-1" id="divMoreActions">
169 <div class="btn-group"> 168 <div class="btn-group">
170 <button class="btn btn-default btn-sm dropdown-toggle" type="button" id="moreActions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> 169 <button class="btn btn-default btn-sm dropdown-toggle" type="button" id="moreActions" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
171 <i class="fa fa-ellipsis-v fa-2x" aria-hidden="true"></i> 170 <i class="fa fa-ellipsis-v fa-2x" aria-hidden="true"></i>
172 </button> 171 </button>
173 - <ul class="dropdown-menu" aria-labelledby="moreActions"> 172 + <ul class="dropdown-menu pull-right" aria-labelledby="moreActions">
174 <li><a href="javascript:void(0)" data-toggle="modal" data-target="#myModal3"><i class="fa fa-pencil fa-fw" aria-hidden="true"></i>&nbsp; {% trans 'Replicate' %}</a></li> 173 <li><a href="javascript:void(0)" data-toggle="modal" data-target="#myModal3"><i class="fa fa-pencil fa-fw" aria-hidden="true"></i>&nbsp; {% trans 'Replicate' %}</a></li>
175 - <li><a href="javascript:void(0)" data-toggle="modal" data-target="#removeSubject2"><i class="fa fa-trash fa-fw" aria-hidden="true"></i>&nbsp; {% trans 'Remove' %}</a></li> 174 + <li><a href="javascript:subject.get('{% url 'course:delete_subject' subject.slug %}','#subject','#modal_subject');" data-toggle="modal" data-target="#removeSubject"><i class="fa fa-trash fa-fw" aria-hidden="true"></i>&nbsp; {% trans 'Remove' %}</a></li>
176 </ul> 175 </ul>
177 </div> 176 </div>
178 </div> 177 </div>
@@ -219,27 +218,6 @@ @@ -219,27 +218,6 @@
219 </div> 218 </div>
220 {% endif %} 219 {% endif %}
221 220
222 -<!-- MODAL REMOVE -->  
223 - <div class="modal" id="removeSubject2">  
224 - <div class="modal-dialog">  
225 - <div class="modal-content">  
226 - <div class="modal-header">  
227 - <button type="button" class="close" data-dismiss="modal" aria-hidden="true">X</button>  
228 - <h4 class="modal-title"></h4>  
229 - </div>  
230 - <div class="modal-body">  
231 - <p> {% trans "Are you sure you want to remove this subject?" %}</p>  
232 - </div>  
233 - <div class="modal-footer">  
234 -  
235 - <a href="http://127.0.0.1:8080/html/screens/users/teacher/home_course_teacher.html" target="_self"><button type="button" class="btn btn-primary">{% trans "Confirm" %}</button></a>  
236 -  
237 - </div>  
238 - </div>  
239 - </div>  
240 - </div>  
241 -  
242 -  
243 </div> 221 </div>
244 </div> 222 </div>
245 </div> 223 </div>
courses/views.py
@@ -231,7 +231,7 @@ class UpdateCourseView(LoginRequiredMixin, HasRoleMixin, generic.UpdateView): @@ -231,7 +231,7 @@ class UpdateCourseView(LoginRequiredMixin, HasRoleMixin, generic.UpdateView):
231 231
232 class DeleteCourseView(LoginRequiredMixin, HasRoleMixin, generic.DeleteView): 232 class DeleteCourseView(LoginRequiredMixin, HasRoleMixin, generic.DeleteView):
233 233
234 - allowed_roles = ['professor', 'system_admin'] 234 + allowed_roles = ['professor', 'student']
235 login_url = reverse_lazy("core:home") 235 login_url = reverse_lazy("core:home")
236 redirect_field_name = 'next' 236 redirect_field_name = 'next'
237 model = Course 237 model = Course