diff --git a/amadeus/roles.py b/amadeus/roles.py
index 8441e6e..82e52b8 100644
--- a/amadeus/roles.py
+++ b/amadeus/roles.py
@@ -24,4 +24,4 @@ class Professor(AbstractUserRole):
}
class SystemAdmin(AbstractUserRole):
- pass
\ No newline at end of file
+ pass
diff --git a/amadeus/staticfiles/js/modal_poll.js b/amadeus/staticfiles/js/modal_poll.js
new file mode 100644
index 0000000..d40eb82
--- /dev/null
+++ b/amadeus/staticfiles/js/modal_poll.js
@@ -0,0 +1,43 @@
+//controles do modal
+$(window).ready(function() { // utilizado para abrir o modal quando tiver tido algum erro no preenchimento do formulario
+ if($('.not_submited').length){
+ $('#poll').modal('show');
+ }
+});
+var Answer = {
+ init: function(url) { // utilizado para adicionar um novo campo de resposta
+ $.get(url, function(data){
+ $("#form").append(data);
+ var cont = 1;
+ $("#form div div div input").each(function(){
+ $(this).attr('name',cont++);
+ });
+ });
+ }
+};
+
+var Submite = {
+ post: function(url,dados){
+ $('#poll').modal('hide');
+ $.post(url,dados, function(data){
+ }).fail(function(data){
+ $("div.modal-backdrop.fade.in").remove();
+ $("#modal_poll").empty();
+ $("#modal_poll").append(data.responseText);
+ });
+ },
+ remove: function(url,dados, id_li_link){
+ $('#poll').modal('hide');
+ $.post(url,dados, function(data){
+ $(id_li_link).remove();
+ $("#modal_poll").empty();
+ $("div.modal-backdrop.fade.in").remove();
+ }).fail(function(){
+ $("#modal_poll").empty();
+ $("#modal_poll").append(data);
+ $('#poll').modal('show');
+ });
+ }
+}
+
+alert("essfd");
diff --git a/amadeus/staticfiles/js/modals_requisitions.js b/amadeus/staticfiles/js/modals_requisitions.js
new file mode 100644
index 0000000..0040d57
--- /dev/null
+++ b/amadeus/staticfiles/js/modals_requisitions.js
@@ -0,0 +1,14 @@
+var Modal = {
+ get: function (url, id_modal, id_div_modal){
+ $.get(url, function(data){
+ if($(id_modal).length){
+ $(id_div_modal).empty();
+ $(id_div_modal).append(data);
+ } else {
+ $(id_div_modal).append(data);
+ }
+ $(id_modal).modal('show');
+ });
+ }
+};
+alert("req");
diff --git a/amadeus/staticfiles/js/sortable_poll.js b/amadeus/staticfiles/js/sortable_poll.js
new file mode 100644
index 0000000..dc325c6
--- /dev/null
+++ b/amadeus/staticfiles/js/sortable_poll.js
@@ -0,0 +1,12 @@
+//deve ser importado apenas depois do html
+$( "#form" ).sortable({ // utilizado para fazer a re-organização das respostas
+ delay: 100,
+ distance: 5,
+ update: function( event, ui ) {
+ var cont = 1;
+ $("#form div div div input").each(function(){
+ $(this).attr('name',cont++);
+ });
+ },
+});
+alert("sort");
diff --git a/app/templates/app/base.html b/app/templates/app/base.html
deleted file mode 100644
index f24427d..0000000
--- a/app/templates/app/base.html
+++ /dev/null
@@ -1,22 +0,0 @@
-{% extends 'base.html' %}
-
-{% load static i18n %}
-
-{% block menu_top %}
-
-{% endblock %}
\ No newline at end of file
diff --git a/app/templates/app/index.html b/app/templates/app/index.html
deleted file mode 100644
index 5291646..0000000
--- a/app/templates/app/index.html
+++ /dev/null
@@ -1,181 +0,0 @@
-{% extends 'app/base.html' %}
-
-{% load static i18n permission_tags %}
-
-{% block sidebar %}
- {% trans 'You have:' %}
-
-
-
-
- {% trans 'You can:' %}
-
-
-
-
- {% if user|has_role:'student' %}
- {% trans 'Your course(s):' %}
- {% trans 'No courses subscribed yet' %}
- {% endif %}
-{% endblock %}
-
-{% block content %}
-
-
-
-
-
-
-
{% trans 'Most popular keywords:' %}
-
-
-
-{% endblock %}
diff --git a/courses/templates/category/create.html b/courses/templates/category/create.html
index 87f454e..efd4208 100644
--- a/courses/templates/category/create.html
+++ b/courses/templates/category/create.html
@@ -23,7 +23,7 @@
-{% if user|has_role:'professor, system_admin' %}
+{% if user|has_role:'professor' or user|has_role:'system_admin' %}
diff --git a/courses/templates/category/delete.html b/courses/templates/category/delete.html
index 70cad80..3080090 100644
--- a/courses/templates/category/delete.html
+++ b/courses/templates/category/delete.html
@@ -23,7 +23,7 @@
-{% if user|has_role:'professor, system_admin' %}
+{% if user|has_role:'professor' or user|has_role:'system_admin' %}
diff --git a/courses/templates/category/index.html b/courses/templates/category/index.html
index 6cd69bd..3c6ac24 100644
--- a/courses/templates/category/index.html
+++ b/courses/templates/category/index.html
@@ -23,8 +23,8 @@
-
- {% if user|has_role:'professor, system_admin' %}
+
+ {% if user|has_role:'professor' or user|has_role:'system_admin' %}
diff --git a/courses/templates/category/update.html b/courses/templates/category/update.html
index dac2256..55c6031 100644
--- a/courses/templates/category/update.html
+++ b/courses/templates/category/update.html
@@ -24,7 +24,7 @@
-{% if user|has_role:'professor, system_admin' %}
+{% if user|has_role:'professor' or user|has_role:'system_admin' %}
diff --git a/courses/templates/category/view.html b/courses/templates/category/view.html
index 60c065b..37a74c4 100644
--- a/courses/templates/category/view.html
+++ b/courses/templates/category/view.html
@@ -24,7 +24,7 @@
- {% if user|has_role:'professor, system_admin' %}
+ {% if user|has_role:'professor' or user|has_role:'system_admin' %}
diff --git a/courses/templates/course/index.html b/courses/templates/course/index.html
index 51d6c60..0d8f4d2 100644
--- a/courses/templates/course/index.html
+++ b/courses/templates/course/index.html
@@ -24,7 +24,7 @@
-{% if user|has_role:'professor, system_admin' %}
+{% if user|has_role:'professor' or user|has_role:'system_admin' %}
@@ -76,7 +76,7 @@
search
-
+
@@ -103,7 +103,7 @@
{{course.name}}
- {% if user|has_role:'professor, system_admin' %}
+ {% if user|has_role:'professor' or user|has_role:'system_admin' %}
@@ -150,7 +150,7 @@
{{course.name}}
- {% if user|has_role:'professor, system_admin' %}
+ {% if user|has_role:'professor' or user|has_role:'system_admin' %}
diff --git a/courses/templates/course/view.html b/courses/templates/course/view.html
index 19ee62f..a36211c 100644
--- a/courses/templates/course/view.html
+++ b/courses/templates/course/view.html
@@ -28,7 +28,7 @@
-{% if user|has_role:'professor, system_admin' %}
+{% if user|has_role:'professor' or user|has_role:'system_admin' %}
@@ -284,7 +284,7 @@
{% endif %}
{% if user|has_role:'professor' or user|has_role:'system_admin' %}
-
+
@@ -316,4 +316,3 @@
{% endblock %}
-
diff --git a/courses/templates/subject/form_view_teacher.html b/courses/templates/subject/form_view_teacher.html
index c0ffc0b..4749a12 100644
--- a/courses/templates/subject/form_view_teacher.html
+++ b/courses/templates/subject/form_view_teacher.html
@@ -1,4 +1,4 @@
- {% load static i18n list_topic_foruns permission_tags widget_tweaks %}
+ {% load static i18n list_topic_foruns permission_tags widget_tweaks professor_access%}
{% block javascript %}
@@ -24,7 +24,8 @@
- {% if user|has_role:'system_admin' or topic.owner == user %}
+ {% professor_subject topic.subject user as dropdown_topic %}
+ {% if dropdown_topic %}
@@ -129,6 +130,7 @@
@@ -190,8 +192,8 @@
-
-{% if user|has_role:'system_admin' or topic.owner == user%}
+{% professor_subject topic.subject user as professor_topic %}
+{% if professor_topic %}
{% include "files/create_file.html" %}
{% endif %}
@@ -240,12 +242,9 @@
-
- {% if user|has_role:'system_admin' or topic.owner == user%}
+ {% professor_subject topic.subject user as professor_links %}
+ {% if professor_links%}
{% include "links/create_link.html" %}
- {% endif %}
-
- {% if user|has_role:'system_admin' or topic.owner == user%}
{% include "links/delete_link.html" %}
{% endif %}
@@ -365,7 +364,8 @@
- {% if user|has_role:'system_admin' or topic.owner == user%}
+ {% professor_subject topic.subject user as links_update %}
+ {% if links_update%}
{% include "links/update_link.html" %}
{% endif %}
diff --git a/courses/templates/subject/index.html b/courses/templates/subject/index.html
index af01d9a..cc9b2f8 100644
--- a/courses/templates/subject/index.html
+++ b/courses/templates/subject/index.html
@@ -1,6 +1,6 @@
{% extends 'base.html' %}
-{% load static i18n permission_tags %}
+{% load static i18n permission_tags professor_access%}
{% block breadcrumbs %}
@@ -12,7 +12,7 @@
{% else %}
{{ subject.name }}
{% endif %}
-
+
{% endblock %}
@@ -28,7 +28,7 @@
-
+
{% endblock %}
@@ -39,7 +39,8 @@
{{subject}}
- {% if user|has_role:'system_admin' or user in subject.professors %}
+ {% professor_subject subject user as subject_professor%}
+ {% if subject_professor %}
-
+
{% for topic in topics %}
- {% if user|has_role:'system_admin' or topic.owner == user%}
+ {% professor_subject topic.subject user as topic_professor%}
+ {% if topic_professor %}
{% include "subject/form_view_teacher.html" %}
{% else %}
{% include "subject/form_view_student.html" %}
{% endif %}
{% endfor %}
-
- {% if user|has_role:'system_admin' or topic.owner == user%}
+ {% professor_subject subject user as professor_sub %}
+ {% if professor_sub %}
- {% endif %}
+ {% endif %}
{% endblock %}
diff --git a/courses/templates/subject/poll_item_actions.html b/courses/templates/subject/poll_item_actions.html
index 7815e6d..5aa87b8 100644
--- a/courses/templates/subject/poll_item_actions.html
+++ b/courses/templates/subject/poll_item_actions.html
@@ -1,18 +1,17 @@
-{% load static i18n permission_tags%}
+{% load static i18n permission_tags professor_access %}
-{% if request.user|has_role:'professor, system_admin'%}
{% for poll in polls %}
- poll {{ poll.name }}
-{% endfor %}
-{% trans '+ Create Poll' %}
-{% else %}
-{% for poll in polls %}
- poll {{ poll.name }}
-{% endfor %}
-{% endif %}
+ {% professor_subject poll.topic.subject request.user as permission%}
+ {% if permission %}
+ poll {{ poll.name }}
+ {% else %}
+ poll {{ poll.name }}
+ {% endif %}
+ {% endfor %}
+{# {% trans '+ Create Poll' %} #}
diff --git a/courses/templates/subject_category/index.html b/courses/templates/subject_category/index.html
index bb72f19..091f223 100644
--- a/courses/templates/subject_category/index.html
+++ b/courses/templates/subject_category/index.html
@@ -1,13 +1,13 @@
{% extends 'base.html' %}
-{% load static i18n permission_tags %}
+{% load static i18n permission_tags professor_access%}
{% block breadcrumbs %}
{% trans 'Home' %}
-
-
+
+
{% endblock %}
@@ -43,12 +43,14 @@
{{subject}}
- {% if user|has_role:'system_admin' or user in subject.professors %}
+ {% professor_subject subject user as professor_sub%}
+ {% if professor_sub %}
{% trans "edit" %}
{% endif %}
- {% if user|has_role:'system_admin' or user in subject.professors %}
+ {% professor_subject subject user as delete_sub%}
+ {% if delete_sub %}
{% trans "delete" %}
{% endif %}
@@ -60,6 +62,6 @@
-
+
{% endblock %}
diff --git a/courses/templates/topic/index.html b/courses/templates/topic/index.html
index 293412c..d81ba53 100644
--- a/courses/templates/topic/index.html
+++ b/courses/templates/topic/index.html
@@ -1,13 +1,14 @@
{% extends 'base.html' %}
-{% load static i18n permission_tags %}
+{% load static i18n permission_tags professor_access %}
{% block breadcrumbs %}
{% trans 'Home' %}
{{ subject }}
- {% if user|has_role:'professor' or user|has_role:'system_admin' %}
+ {% professor_subject subject user as maneger_topic%}
+ {% if maneger_topic %}
{% trans 'Manage Topic' %}
{% else %}
{{ topic.name }}
@@ -54,7 +55,8 @@
{{subject}}
- {% if user|has_role:'system_admin' or user in subject.professors %}
+ {% professor_subject subject user as permissions%}
+ {% if permissions %}
@@ -105,7 +107,8 @@
Atividade.doc
- {% if user|has_role:'professor, system_admin' %}
+ {% professor_subject subject user as permi_test%}
+ {% if permi_test %}
Nota:
diff --git a/poll/static/js/modal_poll.js b/poll/static/js/modal_poll.js
index e435f80..21d953f 100644
--- a/poll/static/js/modal_poll.js
+++ b/poll/static/js/modal_poll.js
@@ -25,8 +25,7 @@ var Submite = {
$("#modal_poll").empty();
$("#modal_poll").append(data.responseText);
});
- }
- ,
+ },
remove: function(url,dados, id_li_link){
$('#poll').modal('hide');
$.post(url,dados, function(data){
diff --git a/poll/static/js/modals_requisitions.js b/poll/static/js/modals_requisitions.js
index 143f426..e6c6764 100644
--- a/poll/static/js/modals_requisitions.js
+++ b/poll/static/js/modals_requisitions.js
@@ -1,20 +1,13 @@
-function get(url, id_modal, id_div_modal){
- $.get(url, function(data){
- if($(id_modal).length){
- $(id_div_modal).empty();
- $(id_div_modal).append(data);
- } else {
- $(id_div_modal).append(data);
- }
- $(id_modal).modal('show');
- });
-}
-
-// function remove(url, id_li_link){
-// $.post(url, function(data){
-// $(id_li_link).remove();
-// }).fail(function(data){
-// alert("Error ao excluir a enquete");
-// alert(data);
-// });
-// }
+var modal = {
+ get: function (url, id_modal, id_div_modal){
+ $.get(url, function(data){
+ if($(id_modal).length){
+ $(id_div_modal).empty();
+ $(id_div_modal).append(data);
+ } else {
+ $(id_div_modal).append(data);
+ }
+ $(id_modal).modal('show');
+ });
+ }
+};
diff --git a/poll/static/sample.txt b/poll/static/sample.txt
deleted file mode 100644
index 2aab7b9..0000000
--- a/poll/static/sample.txt
+++ /dev/null
@@ -1 +0,0 @@
-THIS FILE WAS CREATED TO TEST PURPOSES ON HEROKU.
\ No newline at end of file
diff --git a/poll/templates/poll/view.html b/poll/templates/poll/view.html
index 72d4c5c..bc00279 100644
--- a/poll/templates/poll/view.html
+++ b/poll/templates/poll/view.html
@@ -30,6 +30,6 @@
{% block button_save %}
{% if not status %}
-{% trans "Answer" %}
+{% trans "Answer" %}
{% endif %}
{% endblock button_save %}
diff --git a/poll/templatetags/professor_access.py b/poll/templatetags/professor_access.py
new file mode 100644
index 0000000..ab556bc
--- /dev/null
+++ b/poll/templatetags/professor_access.py
@@ -0,0 +1,14 @@
+from django import template
+from rolepermissions.verifications import has_role
+
+register = template.Library()
+
+@register.simple_tag
+def professor_subject(subject, user):
+ if (has_role(user,'system_admin')):
+ return True
+
+ if (user in subject.professors.all()):
+ return True
+
+ return False
diff --git a/poll/tests/poll.py b/poll/tests/poll.py
index d6f8bf2..6fd3f89 100644
--- a/poll/tests/poll.py
+++ b/poll/tests/poll.py
@@ -80,21 +80,23 @@ class PollTestCase(TestCase):
self.poll.save()
def test_poll_create(self):
- self.client.login(username='professor', password='testing')
- poll = self.topic.activities.all().count()
url = reverse('course:poll:create_poll',kwargs={'slug':self.topic.slug})
data = {
"name": 'create poll test',
"limit_date":'2016-10-06',
"all_students":True,
}
- response = self.client.post(url, data)
- self.assertEqual(poll + 1, self.topic.activities.all().count()) # create a new poll
+
self.client.login(username='student', password='testing')
poll = self.topic.activities.all().count()
response = self.client.post(url, data)
self.assertEqual(poll, self.topic.activities.all().count()) # don't create a new poll
+ self.client.login(username='professor', password='testing')
+ poll = self.topic.activities.all().count()
+ response = self.client.post(url, data)
+ self.assertEqual(poll + 1, self.topic.activities.all().count()) # create a new poll
+
def test_poll_update(self):
self.client.login(username='professor', password='testing')
url = reverse('course:poll:update_poll',kwargs={'slug':self.poll.slug})
diff --git a/poll/views.py b/poll/views.py
index cd3c574..6006c6d 100644
--- a/poll/views.py
+++ b/poll/views.py
@@ -145,6 +145,8 @@ class UpdatePoll(LoginRequiredMixin,HasRoleMixin,generic.UpdateView):
context['subject'] = poll.topic.subject
context['subjects'] = poll.topic.subject.course.subjects.all()
+ print (self.request.user)
+
answers = {}
for answer in poll.answers.all():
# print (key.answer)
diff --git a/users/admin.py b/users/admin.py
index ef1173f..803b76c 100644
--- a/users/admin.py
+++ b/users/admin.py
@@ -5,6 +5,5 @@ from .forms import AdminUserForm
class UserAdmin(admin.ModelAdmin):
list_display = ['username', 'name', 'email', 'is_staff', 'is_active']
search_fields = ['username', 'name', 'email']
- form = AdminUserForm
-admin.site.register(User, UserAdmin)
\ No newline at end of file
+admin.site.register(User, UserAdmin)
--
libgit2 0.21.2