Commit 8bee4fbdd7f17ef46b699137f0c80b0f436094bd
1 parent
e6832d6a
Exists in
master
and in
5 other branches
resolve #3
Showing
7 changed files
with
112 additions
and
192 deletions
Show diff stats
amadeus/settings.py
@@ -142,7 +142,7 @@ MEDIA_URL = '/uploads/' | @@ -142,7 +142,7 @@ MEDIA_URL = '/uploads/' | ||
142 | 142 | ||
143 | # Users | 143 | # Users |
144 | LOGIN_REDIRECT_URL = 'app:index' | 144 | LOGIN_REDIRECT_URL = 'app:index' |
145 | -LOGIN_URL = 'home' | 145 | +LOGIN_URL = 'core:home' |
146 | AUTH_USER_MODEL = 'users.User' | 146 | AUTH_USER_MODEL = 'users.User' |
147 | AUTHENTICATION_BACKENDS = [ | 147 | AUTHENTICATION_BACKENDS = [ |
148 | 'django.contrib.auth.backends.ModelBackend', | 148 | 'django.contrib.auth.backends.ModelBackend', |
@@ -150,4 +150,4 @@ AUTHENTICATION_BACKENDS = [ | @@ -150,4 +150,4 @@ AUTHENTICATION_BACKENDS = [ | ||
150 | ROLEPERMISSIONS_MODULE = 'amadeus.roles' | 150 | ROLEPERMISSIONS_MODULE = 'amadeus.roles' |
151 | 151 | ||
152 | 152 | ||
153 | -#https://github.com/squ1b3r/Djaneiro | ||
154 | \ No newline at end of file | 153 | \ No newline at end of file |
154 | +#https://github.com/squ1b3r/Djaneiro |
app/views.py
@@ -9,4 +9,4 @@ def index(request): | @@ -9,4 +9,4 @@ def index(request): | ||
9 | 9 | ||
10 | context['courses'] = Course.objects.filter(user = request.user) | 10 | context['courses'] = Course.objects.filter(user = request.user) |
11 | 11 | ||
12 | - return render(request, "home_app.html", context) | ||
13 | \ No newline at end of file | 12 | \ No newline at end of file |
13 | + return render(request, "home_app.html", context) |
core/templates/index.html
@@ -3,165 +3,85 @@ | @@ -3,165 +3,85 @@ | ||
3 | {% load static i18n %} | 3 | {% load static i18n %} |
4 | {% load widget_tweaks %} | 4 | {% load widget_tweaks %} |
5 | 5 | ||
6 | -{% block sidebar %} | ||
7 | - <form class="form-horizontal" action="" method="post"> | ||
8 | - {% csrf_token %} | ||
9 | - | ||
10 | - {% for error in form.non_field_errors %} | ||
11 | - <div class="alert alert-danger"> | ||
12 | - {{ error }} | ||
13 | - </div> | ||
14 | - {% endfor %} | ||
15 | - | ||
16 | - {% for field in form %} | ||
17 | - <div class="form-group {% if form.has_error %} error {% endif %}"> | ||
18 | - <label for="{{ field.auto_id }}" class="col-sm-2 control-label">{{ field.label }}</label> | ||
19 | - <div class="col-sm-10"> | ||
20 | - {% render_field field class='form-control input-sm' %} | ||
21 | - {% for error in field.errors %} | ||
22 | - <span class="help-block">{{ error }}</span> | ||
23 | - {% endfor %} | ||
24 | - </div> | ||
25 | - </div> | ||
26 | - {% endfor %} | ||
27 | - <div class="form-group"> | ||
28 | - <div class="col-sm-12"> | ||
29 | - <input type="submit" class="btn btn-sm btn-success pull-right" value="{% trans 'Entrar' %}" /> | ||
30 | - </div> | ||
31 | - </div> | ||
32 | - </form> | 6 | +{% block style %} |
7 | + <link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Roboto:300,400,500,700" type="text/css"> | ||
8 | + <link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet"> | ||
9 | + | ||
10 | + <link rel="stylesheet" type="text/css" href="{% static 'bootstrap-3.3.7/css/bootstrap.min.css' %}"> | ||
11 | + <link rel="stylesheet" type="text/css" href="{% static 'material/css/bootstrap-material-design.min.css' %}"> | ||
12 | + <link rel="stylesheet" type="text/css" href="{% static 'material/css/ripples.min.css' %}"> | ||
13 | + | ||
14 | +{% endblock %} | ||
15 | + | ||
16 | + | ||
17 | +{% block javascript %} | ||
18 | +<!-- Jquery --> | ||
19 | + <script src="{% static 'js/jquery-3.1.0.min.js' %}"></script> | ||
20 | + <script src="{% static 'bootstrap-3.3.7/js/bootstrap.min.js' %}"></script> | ||
21 | + <script src="{% static 'material/js/material.min.js' %}"></script> | ||
22 | + <script src="{% static 'material/js/ripples.min.js' %}"></script> | ||
23 | + <script> | ||
24 | + $.material.init(); | ||
25 | + </script> | ||
33 | {% endblock %} | 26 | {% endblock %} |
34 | 27 | ||
28 | + | ||
35 | {% block content %} | 29 | {% block content %} |
36 | - <div class="row"> | ||
37 | - <div class="col-sm-12"> | ||
38 | - <form class="form-horizontal" method="post"> | ||
39 | - <div class="col-sm-10"> | ||
40 | - <div class="form-group"> | ||
41 | - <label for="search_keyword" class="control-label col-sm-3">{% trans 'Search course:' %} </label> | ||
42 | - <div class="col-sm-9"> | ||
43 | - <input type="text" class="form-control input-sm" id="search_keyword" /> | ||
44 | - </div> | ||
45 | - </div> | ||
46 | - </div> | ||
47 | - <button type="submit" class="btn btn-sm btn-success">{% trans 'Search' %}</button> | ||
48 | - </form> | ||
49 | - | ||
50 | - <hr /> | ||
51 | - | ||
52 | - <h5>{% trans 'Most popular keywords:' %}</h5> | ||
53 | - <div class="well"> | ||
54 | - <center> | ||
55 | - <ul class="cloud"> | ||
56 | - <li> | ||
57 | - <a href=""> | ||
58 | - teste amadeus prospb | ||
59 | - </a> | ||
60 | - </li> | ||
61 | - <li> | ||
62 | - <a href=""> | ||
63 | - programação fácil | ||
64 | - </a> | ||
65 | - </li> | ||
66 | - <li> | ||
67 | - <a href=""> | ||
68 | - intermediário | ||
69 | - </a> | ||
70 | - </li> | ||
71 | - <li> | ||
72 | - <a href=""> | ||
73 | - amadeus | ||
74 | - </a> | ||
75 | - </li> | ||
76 | - <li> | ||
77 | - <a href=""> | ||
78 | - palavra02 | ||
79 | - </a> | ||
80 | - </li> | ||
81 | - <li> | ||
82 | - <a href=""> | ||
83 | - programação para iniciantes | ||
84 | - </a> | ||
85 | - </li> | ||
86 | - <li> | ||
87 | - <a href=""> | ||
88 | - django | ||
89 | - </a> | ||
90 | - </li> | ||
91 | - <li> | ||
92 | - <a href=""> | ||
93 | - aluno teste | ||
94 | - </a> | ||
95 | - </li> | ||
96 | - <li> | ||
97 | - <a href=""> | ||
98 | - curso0101 | ||
99 | - </a> | ||
100 | - </li> | ||
101 | - <li> | ||
102 | - <a href=""> | ||
103 | - kjsdnksa | ||
104 | - </a> | ||
105 | - </li> | ||
106 | - <li> | ||
107 | - <a href=""> | ||
108 | - palavra01 | ||
109 | - </a> | ||
110 | - </li> | ||
111 | - <li> | ||
112 | - <a href=""> | ||
113 | - programming | ||
114 | - </a> | ||
115 | - </li> | ||
116 | - <li> | ||
117 | - <a href=""> | ||
118 | - python | ||
119 | - </a> | ||
120 | - </li> | ||
121 | - <li> | ||
122 | - <a href=""> | ||
123 | - curso | ||
124 | - </a> | ||
125 | - </li> | ||
126 | - <li> | ||
127 | - <a href=""> | ||
128 | - mvc | ||
129 | - </a> | ||
130 | - </li> | ||
131 | - <li> | ||
132 | - <a href=""> | ||
133 | - programação web | ||
134 | - </a> | ||
135 | - </li> | ||
136 | - <li> | ||
137 | - <a href=""> | ||
138 | - ionic | ||
139 | - </a> | ||
140 | - </li> | ||
141 | - <li> | ||
142 | - <a href=""> | ||
143 | - framework | ||
144 | - </a> | ||
145 | - </li> | ||
146 | - <li> | ||
147 | - <a href=""> | ||
148 | - web | ||
149 | - </a> | ||
150 | - </li> | ||
151 | - <li> | ||
152 | - <a href=""> | ||
153 | - android | ||
154 | - </a> | ||
155 | - </li> | ||
156 | - <li> | ||
157 | - <a href=""> | ||
158 | - programação | ||
159 | - </a> | ||
160 | - </li> | ||
161 | - </ul> | ||
162 | - </center> | ||
163 | - </div> | ||
164 | - </div> | ||
165 | - </div> | ||
166 | - | ||
167 | -{% endblock %} | ||
168 | \ No newline at end of file | 30 | \ No newline at end of file |
31 | + <div class="row logo-row"> | ||
32 | + <div class="col-lg-offset-4 col-lg-2"> | ||
33 | + <img src="..." class="img-responsive center-block " alt="logo amadeus"> | ||
34 | + </div> | ||
35 | + </div> | ||
36 | + | ||
37 | + <div class="row "> | ||
38 | + <div class="col-lg-8 col-lg-offset-4"> | ||
39 | + <div class="card"> | ||
40 | + <div class="card-content"> | ||
41 | + | ||
42 | + <div class="card-body"> | ||
43 | + <form id="form-login"class="form-group" method="post" action=""> | ||
44 | + {% csrf_token %} | ||
45 | + <label class="col-md-4 control-label"> E-mail</label> | ||
46 | + <div class="col-md-8"> | ||
47 | + <input type="email" class="form-control" id="inputEmail" placeholder="Email"> | ||
48 | + </div> | ||
49 | + | ||
50 | + <div class="form-group is-empty"> | ||
51 | + <label for="inputPassword" class="col-md-4 control-label">Password</label> | ||
52 | + | ||
53 | + <div class="col-md-8"> | ||
54 | + <input type="password" class="form-control" id="inputPassword" placeholder="Password"> | ||
55 | + </div> | ||
56 | + </div> | ||
57 | + <div class="col-md-offset-2 col-md-10"> | ||
58 | + <div class="checkbox"> | ||
59 | + <label> | ||
60 | + <input type="checkbox"><span class="checkbox-material"><span class="check"></span></span> Remember Email | ||
61 | + </label> | ||
62 | + </div> | ||
63 | + </div> | ||
64 | + | ||
65 | + </form> | ||
66 | + </div> | ||
67 | + | ||
68 | + <footer class="card-footer"> | ||
69 | + <div class="col-md-6"> | ||
70 | + <button type="button" class="btn btn-flat" formaction="#">Guest</button> | ||
71 | + </div> | ||
72 | + <div class="col-md-6"> | ||
73 | + <button type="submite" class="btn btn-flat btn-success" form="form-login" >Login</button> | ||
74 | + </div> | ||
75 | + </footer> | ||
76 | + | ||
77 | + </div> | ||
78 | + </div> | ||
79 | + </div> | ||
80 | + </div> | ||
81 | + <div class="row"> | ||
82 | + <div class="col-lg-offset-4 col-lg-8"> | ||
83 | + <button class="btn btn-raised btn-primary btn-lg btn-block" formaction="{% url 'users:create' %}">Sign Up </button> | ||
84 | + | ||
85 | + </div> | ||
86 | + | ||
87 | + </div> | ||
88 | +{% endblock%} |
core/urls.py
@@ -6,5 +6,5 @@ from . import views | @@ -6,5 +6,5 @@ from . import views | ||
6 | urlpatterns = [ | 6 | urlpatterns = [ |
7 | url(r'^$', views.index, name='index'), | 7 | url(r'^$', views.index, name='index'), |
8 | url(r'^login/$', auth_views.login, {'template_name': 'index.html'}, name='home'), | 8 | url(r'^login/$', auth_views.login, {'template_name': 'index.html'}, name='home'), |
9 | - url(r'^logout/$', auth_views.logout, {'next_page': 'home'}, name='logout'), | 9 | + url(r'^logout/$', auth_views.logout, {'next_page': 'core:home'}, name='logout'), |
10 | ] | 10 | ] |
courses/views.py
@@ -35,7 +35,7 @@ class CreateView(LoginRequiredMixin, HasRoleMixin, generic.edit.CreateView): | @@ -35,7 +35,7 @@ class CreateView(LoginRequiredMixin, HasRoleMixin, generic.edit.CreateView): | ||
35 | redirect_field_name = 'next' | 35 | redirect_field_name = 'next' |
36 | template_name = 'course/create.html' | 36 | template_name = 'course/create.html' |
37 | form_class = CourseForm | 37 | form_class = CourseForm |
38 | - success_url = reverse_lazy('app:course:manage') | 38 | + success_url = reverse_lazy('course:manage') |
39 | 39 | ||
40 | def form_valid(self, form): | 40 | def form_valid(self, form): |
41 | self.object = form.save(commit = False) | 41 | self.object = form.save(commit = False) |
@@ -46,7 +46,7 @@ class CreateView(LoginRequiredMixin, HasRoleMixin, generic.edit.CreateView): | @@ -46,7 +46,7 @@ class CreateView(LoginRequiredMixin, HasRoleMixin, generic.edit.CreateView): | ||
46 | 46 | ||
47 | def render_to_response(self, context, **response_kwargs): | 47 | def render_to_response(self, context, **response_kwargs): |
48 | messages.success(self.request, _('Course created successfully!')) | 48 | messages.success(self.request, _('Course created successfully!')) |
49 | - | 49 | + |
50 | return self.response_class(request=self.request, template=self.get_template_names(), context=context, using=self.template_engine) | 50 | return self.response_class(request=self.request, template=self.get_template_names(), context=context, using=self.template_engine) |
51 | 51 | ||
52 | class UpdateView(LoginRequiredMixin, HasRoleMixin, generic.UpdateView): | 52 | class UpdateView(LoginRequiredMixin, HasRoleMixin, generic.UpdateView): |
@@ -57,7 +57,7 @@ class UpdateView(LoginRequiredMixin, HasRoleMixin, generic.UpdateView): | @@ -57,7 +57,7 @@ class UpdateView(LoginRequiredMixin, HasRoleMixin, generic.UpdateView): | ||
57 | template_name = 'course/update.html' | 57 | template_name = 'course/update.html' |
58 | model = Course | 58 | model = Course |
59 | form_class = CourseForm | 59 | form_class = CourseForm |
60 | - success_url = reverse_lazy('app:course:manage') | 60 | + success_url = reverse_lazy('course:manage') |
61 | 61 | ||
62 | def form_valid(self, form): | 62 | def form_valid(self, form): |
63 | self.object = form.save(commit = False) | 63 | self.object = form.save(commit = False) |
@@ -68,7 +68,7 @@ class UpdateView(LoginRequiredMixin, HasRoleMixin, generic.UpdateView): | @@ -68,7 +68,7 @@ class UpdateView(LoginRequiredMixin, HasRoleMixin, generic.UpdateView): | ||
68 | 68 | ||
69 | def render_to_response(self, context, **response_kwargs): | 69 | def render_to_response(self, context, **response_kwargs): |
70 | messages.success(self.request, _('Course edited successfully!')) | 70 | messages.success(self.request, _('Course edited successfully!')) |
71 | - | 71 | + |
72 | return self.response_class(request=self.request, template=self.get_template_names(), context=context, using=self.template_engine) | 72 | return self.response_class(request=self.request, template=self.get_template_names(), context=context, using=self.template_engine) |
73 | 73 | ||
74 | class View(LoginRequiredMixin, generic.DetailView): | 74 | class View(LoginRequiredMixin, generic.DetailView): |
@@ -86,11 +86,11 @@ class DeleteView(LoginRequiredMixin, HasRoleMixin, generic.DeleteView): | @@ -86,11 +86,11 @@ class DeleteView(LoginRequiredMixin, HasRoleMixin, generic.DeleteView): | ||
86 | redirect_field_name = 'next' | 86 | redirect_field_name = 'next' |
87 | model = Course | 87 | model = Course |
88 | template_name = 'course/delete.html' | 88 | template_name = 'course/delete.html' |
89 | - success_url = reverse_lazy('app:course:manage') | 89 | + success_url = reverse_lazy('course:manage') |
90 | 90 | ||
91 | def render_to_response(self, context, **response_kwargs): | 91 | def render_to_response(self, context, **response_kwargs): |
92 | messages.success(self.request, _('Course deleted successfully!')) | 92 | messages.success(self.request, _('Course deleted successfully!')) |
93 | - | 93 | + |
94 | return self.response_class(request=self.request, template=self.get_template_names(), context=context, using=self.template_engine) | 94 | return self.response_class(request=self.request, template=self.get_template_names(), context=context, using=self.template_engine) |
95 | 95 | ||
96 | class FilteredView(LoginRequiredMixin, generic.ListView): | 96 | class FilteredView(LoginRequiredMixin, generic.ListView): |
@@ -129,7 +129,7 @@ class CreateCatView(LoginRequiredMixin, HasRoleMixin, generic.edit.CreateView): | @@ -129,7 +129,7 @@ class CreateCatView(LoginRequiredMixin, HasRoleMixin, generic.edit.CreateView): | ||
129 | redirect_field_name = 'next' | 129 | redirect_field_name = 'next' |
130 | template_name = 'category/create.html' | 130 | template_name = 'category/create.html' |
131 | form_class = CategoryForm | 131 | form_class = CategoryForm |
132 | - success_url = reverse_lazy('app:course:manage_cat') | 132 | + success_url = reverse_lazy('course:manage_cat') |
133 | 133 | ||
134 | def form_valid(self, form): | 134 | def form_valid(self, form): |
135 | self.object = form.save(commit = False) | 135 | self.object = form.save(commit = False) |
@@ -140,7 +140,7 @@ class CreateCatView(LoginRequiredMixin, HasRoleMixin, generic.edit.CreateView): | @@ -140,7 +140,7 @@ class CreateCatView(LoginRequiredMixin, HasRoleMixin, generic.edit.CreateView): | ||
140 | 140 | ||
141 | def render_to_response(self, context, **response_kwargs): | 141 | def render_to_response(self, context, **response_kwargs): |
142 | messages.success(self.request, _('Category created successfully!')) | 142 | messages.success(self.request, _('Category created successfully!')) |
143 | - | 143 | + |
144 | return self.response_class(request=self.request, template=self.get_template_names(), context=context, using=self.template_engine) | 144 | return self.response_class(request=self.request, template=self.get_template_names(), context=context, using=self.template_engine) |
145 | 145 | ||
146 | class UpdateCatView(LoginRequiredMixin, HasRoleMixin, generic.UpdateView): | 146 | class UpdateCatView(LoginRequiredMixin, HasRoleMixin, generic.UpdateView): |
@@ -151,7 +151,7 @@ class UpdateCatView(LoginRequiredMixin, HasRoleMixin, generic.UpdateView): | @@ -151,7 +151,7 @@ class UpdateCatView(LoginRequiredMixin, HasRoleMixin, generic.UpdateView): | ||
151 | template_name = 'category/update.html' | 151 | template_name = 'category/update.html' |
152 | model = Category | 152 | model = Category |
153 | form_class = CategoryForm | 153 | form_class = CategoryForm |
154 | - success_url = reverse_lazy('app:course:manage_cat') | 154 | + success_url = reverse_lazy('course:manage_cat') |
155 | 155 | ||
156 | def form_valid(self, form): | 156 | def form_valid(self, form): |
157 | self.object = form.save(commit = False) | 157 | self.object = form.save(commit = False) |
@@ -162,7 +162,7 @@ class UpdateCatView(LoginRequiredMixin, HasRoleMixin, generic.UpdateView): | @@ -162,7 +162,7 @@ class UpdateCatView(LoginRequiredMixin, HasRoleMixin, generic.UpdateView): | ||
162 | 162 | ||
163 | def render_to_response(self, context, **response_kwargs): | 163 | def render_to_response(self, context, **response_kwargs): |
164 | messages.success(self.request, _('Category edited successfully!')) | 164 | messages.success(self.request, _('Category edited successfully!')) |
165 | - | 165 | + |
166 | return self.response_class(request=self.request, template=self.get_template_names(), context=context, using=self.template_engine) | 166 | return self.response_class(request=self.request, template=self.get_template_names(), context=context, using=self.template_engine) |
167 | 167 | ||
168 | class ViewCat(LoginRequiredMixin, generic.DetailView): | 168 | class ViewCat(LoginRequiredMixin, generic.DetailView): |
@@ -173,17 +173,17 @@ class ViewCat(LoginRequiredMixin, generic.DetailView): | @@ -173,17 +173,17 @@ class ViewCat(LoginRequiredMixin, generic.DetailView): | ||
173 | context_object_name = 'category' | 173 | context_object_name = 'category' |
174 | 174 | ||
175 | class DeleteCatView(LoginRequiredMixin, HasRoleMixin, generic.DeleteView): | 175 | class DeleteCatView(LoginRequiredMixin, HasRoleMixin, generic.DeleteView): |
176 | - | 176 | + |
177 | allowed_roles = ['professor', 'system_admin'] | 177 | allowed_roles = ['professor', 'system_admin'] |
178 | login_url = '/' | 178 | login_url = '/' |
179 | redirect_field_name = 'next' | 179 | redirect_field_name = 'next' |
180 | model = Category | 180 | model = Category |
181 | template_name = 'category/delete.html' | 181 | template_name = 'category/delete.html' |
182 | - success_url = reverse_lazy('app:course:manage_cat') | 182 | + success_url = reverse_lazy('course:manage_cat') |
183 | 183 | ||
184 | def render_to_response(self, context, **response_kwargs): | 184 | def render_to_response(self, context, **response_kwargs): |
185 | messages.success(self.request, _('Category deleted successfully!')) | 185 | messages.success(self.request, _('Category deleted successfully!')) |
186 | - | 186 | + |
187 | return self.response_class(request=self.request, template=self.get_template_names(), context=context, using=self.template_engine) | 187 | return self.response_class(request=self.request, template=self.get_template_names(), context=context, using=self.template_engine) |
188 | 188 | ||
189 | class ModulesView(LoginRequiredMixin, generic.ListView): | 189 | class ModulesView(LoginRequiredMixin, generic.ListView): |
@@ -214,7 +214,7 @@ class CreateModView(LoginRequiredMixin, HasRoleMixin, generic.edit.CreateView): | @@ -214,7 +214,7 @@ class CreateModView(LoginRequiredMixin, HasRoleMixin, generic.edit.CreateView): | ||
214 | form_class = ModuleForm | 214 | form_class = ModuleForm |
215 | 215 | ||
216 | def get_success_url(self): | 216 | def get_success_url(self): |
217 | - return reverse_lazy('app:course:manage_mods', kwargs={'slug' : self.object.course.slug}) | 217 | + return reverse_lazy('course:manage_mods', kwargs={'slug' : self.object.course.slug}) |
218 | 218 | ||
219 | def get_context_data(self, **kwargs): | 219 | def get_context_data(self, **kwargs): |
220 | course = get_object_or_404(Course, slug = self.kwargs.get('slug')) | 220 | course = get_object_or_404(Course, slug = self.kwargs.get('slug')) |
@@ -235,7 +235,7 @@ class CreateModView(LoginRequiredMixin, HasRoleMixin, generic.edit.CreateView): | @@ -235,7 +235,7 @@ class CreateModView(LoginRequiredMixin, HasRoleMixin, generic.edit.CreateView): | ||
235 | 235 | ||
236 | def render_to_response(self, context, **response_kwargs): | 236 | def render_to_response(self, context, **response_kwargs): |
237 | messages.success(self.request, _('Module created successfully!')) | 237 | messages.success(self.request, _('Module created successfully!')) |
238 | - | 238 | + |
239 | return self.response_class(request=self.request, template=self.get_template_names(), context=context, using=self.template_engine) | 239 | return self.response_class(request=self.request, template=self.get_template_names(), context=context, using=self.template_engine) |
240 | 240 | ||
241 | class UpdateModView(LoginRequiredMixin, HasRoleMixin, generic.UpdateView): | 241 | class UpdateModView(LoginRequiredMixin, HasRoleMixin, generic.UpdateView): |
@@ -248,7 +248,7 @@ class UpdateModView(LoginRequiredMixin, HasRoleMixin, generic.UpdateView): | @@ -248,7 +248,7 @@ class UpdateModView(LoginRequiredMixin, HasRoleMixin, generic.UpdateView): | ||
248 | form_class = ModuleForm | 248 | form_class = ModuleForm |
249 | 249 | ||
250 | def get_success_url(self): | 250 | def get_success_url(self): |
251 | - return reverse_lazy('app:course:manage_mods', kwargs={'slug' : self.object.course.slug}) | 251 | + return reverse_lazy('course:manage_mods', kwargs={'slug' : self.object.course.slug}) |
252 | 252 | ||
253 | def get_context_data(self, **kwargs): | 253 | def get_context_data(self, **kwargs): |
254 | course = get_object_or_404(Course, slug = self.kwargs.get('slug_course')) | 254 | course = get_object_or_404(Course, slug = self.kwargs.get('slug_course')) |
@@ -266,7 +266,7 @@ class UpdateModView(LoginRequiredMixin, HasRoleMixin, generic.UpdateView): | @@ -266,7 +266,7 @@ class UpdateModView(LoginRequiredMixin, HasRoleMixin, generic.UpdateView): | ||
266 | 266 | ||
267 | def render_to_response(self, context, **response_kwargs): | 267 | def render_to_response(self, context, **response_kwargs): |
268 | messages.success(self.request, _('Module edited successfully!')) | 268 | messages.success(self.request, _('Module edited successfully!')) |
269 | - | 269 | + |
270 | return self.response_class(request=self.request, template=self.get_template_names(), context=context, using=self.template_engine) | 270 | return self.response_class(request=self.request, template=self.get_template_names(), context=context, using=self.template_engine) |
271 | 271 | ||
272 | class DeleteModView(LoginRequiredMixin, HasRoleMixin, generic.DeleteView): | 272 | class DeleteModView(LoginRequiredMixin, HasRoleMixin, generic.DeleteView): |
@@ -278,7 +278,7 @@ class DeleteModView(LoginRequiredMixin, HasRoleMixin, generic.DeleteView): | @@ -278,7 +278,7 @@ class DeleteModView(LoginRequiredMixin, HasRoleMixin, generic.DeleteView): | ||
278 | template_name = 'module/delete.html' | 278 | template_name = 'module/delete.html' |
279 | 279 | ||
280 | def get_success_url(self): | 280 | def get_success_url(self): |
281 | - return reverse_lazy('app:course:manage_mods', kwargs={'slug' : self.object.course.slug}) | 281 | + return reverse_lazy('course:manage_mods', kwargs={'slug' : self.object.course.slug}) |
282 | 282 | ||
283 | def get_context_data(self, **kwargs): | 283 | def get_context_data(self, **kwargs): |
284 | course = get_object_or_404(Course, slug = self.kwargs.get('slug_course')) | 284 | course = get_object_or_404(Course, slug = self.kwargs.get('slug_course')) |
@@ -289,5 +289,5 @@ class DeleteModView(LoginRequiredMixin, HasRoleMixin, generic.DeleteView): | @@ -289,5 +289,5 @@ class DeleteModView(LoginRequiredMixin, HasRoleMixin, generic.DeleteView): | ||
289 | 289 | ||
290 | def render_to_response(self, context, **response_kwargs): | 290 | def render_to_response(self, context, **response_kwargs): |
291 | messages.success(self.request, _('Module deleted successfully!')) | 291 | messages.success(self.request, _('Module deleted successfully!')) |
292 | - | 292 | + |
293 | return self.response_class(request=self.request, template=self.get_template_names(), context=context, using=self.template_engine) | 293 | return self.response_class(request=self.request, template=self.get_template_names(), context=context, using=self.template_engine) |
users/urls.py
@@ -9,4 +9,4 @@ urlpatterns = [ | @@ -9,4 +9,4 @@ urlpatterns = [ | ||
9 | url(r'^usuario/dados/(?P<username>[\w_-]+)/$', views.View.as_view(), name='view'), | 9 | url(r'^usuario/dados/(?P<username>[\w_-]+)/$', views.View.as_view(), name='view'), |
10 | url(r'^perfil/$', views.Profile.as_view(), name='profile'), | 10 | url(r'^perfil/$', views.Profile.as_view(), name='profile'), |
11 | url(r'^perfil/editar/$', views.EditProfile.as_view(), name='edit_profile'), | 11 | url(r'^perfil/editar/$', views.EditProfile.as_view(), name='edit_profile'), |
12 | -] | ||
13 | \ No newline at end of file | 12 | \ No newline at end of file |
13 | +] |
users/views.py
@@ -10,7 +10,7 @@ from .models import User | @@ -10,7 +10,7 @@ from .models import User | ||
10 | from .forms import UserForm, ProfileForm | 10 | from .forms import UserForm, ProfileForm |
11 | 11 | ||
12 | class UsersListView(HasRoleMixin, LoginRequiredMixin, generic.ListView): | 12 | class UsersListView(HasRoleMixin, LoginRequiredMixin, generic.ListView): |
13 | - | 13 | + |
14 | allowed_roles = ['system_admin'] | 14 | allowed_roles = ['system_admin'] |
15 | login_url = '/' | 15 | login_url = '/' |
16 | redirect_field_name = 'next' | 16 | redirect_field_name = 'next' |
@@ -30,7 +30,7 @@ class Create(HasRoleMixin, LoginRequiredMixin, generic.edit.CreateView): | @@ -30,7 +30,7 @@ class Create(HasRoleMixin, LoginRequiredMixin, generic.edit.CreateView): | ||
30 | template_name = 'users/create.html' | 30 | template_name = 'users/create.html' |
31 | form_class = UserForm | 31 | form_class = UserForm |
32 | context_object_name = 'acc' | 32 | context_object_name = 'acc' |
33 | - success_url = reverse_lazy('app:user:manage') | 33 | + success_url = reverse_lazy('user:manage') |
34 | 34 | ||
35 | def form_valid(self, form): | 35 | def form_valid(self, form): |
36 | self.object = form.save(commit = False) | 36 | self.object = form.save(commit = False) |
@@ -59,11 +59,11 @@ class Update(HasRoleMixin, LoginRequiredMixin, generic.UpdateView): | @@ -59,11 +59,11 @@ class Update(HasRoleMixin, LoginRequiredMixin, generic.UpdateView): | ||
59 | context_object_name = 'acc' | 59 | context_object_name = 'acc' |
60 | model = User | 60 | model = User |
61 | form_class = UserForm | 61 | form_class = UserForm |
62 | - success_url = reverse_lazy('app:users:manage') | 62 | + success_url = reverse_lazy('users:manage') |
63 | 63 | ||
64 | def form_valid(self, form): | 64 | def form_valid(self, form): |
65 | self.object = form.save(commit = False) | 65 | self.object = form.save(commit = False) |
66 | - | 66 | + |
67 | if self.object.type_profile == 2: | 67 | if self.object.type_profile == 2: |
68 | assign_role(self.object, 'student') | 68 | assign_role(self.object, 'student') |
69 | elif self.object.type_profile == 1: | 69 | elif self.object.type_profile == 1: |
@@ -72,11 +72,11 @@ class Update(HasRoleMixin, LoginRequiredMixin, generic.UpdateView): | @@ -72,11 +72,11 @@ class Update(HasRoleMixin, LoginRequiredMixin, generic.UpdateView): | ||
72 | assign_role(self.object, 'system_admin') | 72 | assign_role(self.object, 'system_admin') |
73 | 73 | ||
74 | self.object.save() | 74 | self.object.save() |
75 | - | 75 | + |
76 | messages.success(self.request, _('User edited successfully!')) | 76 | messages.success(self.request, _('User edited successfully!')) |
77 | 77 | ||
78 | return super(Update, self).form_valid(form) | 78 | return super(Update, self).form_valid(form) |
79 | - | 79 | + |
80 | class View(LoginRequiredMixin, generic.DetailView): | 80 | class View(LoginRequiredMixin, generic.DetailView): |
81 | 81 | ||
82 | login_url = '/' | 82 | login_url = '/' |
@@ -96,7 +96,7 @@ class Profile(LoginRequiredMixin, generic.DetailView): | @@ -96,7 +96,7 @@ class Profile(LoginRequiredMixin, generic.DetailView): | ||
96 | 96 | ||
97 | def get_object(self): | 97 | def get_object(self): |
98 | user = get_object_or_404(User, username = self.request.user.username) | 98 | user = get_object_or_404(User, username = self.request.user.username) |
99 | - return user | 99 | + return user |
100 | 100 | ||
101 | class EditProfile(LoginRequiredMixin, generic.UpdateView): | 101 | class EditProfile(LoginRequiredMixin, generic.UpdateView): |
102 | 102 | ||
@@ -112,7 +112,7 @@ class EditProfile(LoginRequiredMixin, generic.UpdateView): | @@ -112,7 +112,7 @@ class EditProfile(LoginRequiredMixin, generic.UpdateView): | ||
112 | 112 | ||
113 | def form_valid(self, form): | 113 | def form_valid(self, form): |
114 | self.object = form.save(commit = False) | 114 | self.object = form.save(commit = False) |
115 | - | 115 | + |
116 | if self.object.type_profile == 2: | 116 | if self.object.type_profile == 2: |
117 | assign_role(self.object, 'student') | 117 | assign_role(self.object, 'student') |
118 | elif self.object.type_profile == 1: | 118 | elif self.object.type_profile == 1: |
@@ -124,4 +124,4 @@ class EditProfile(LoginRequiredMixin, generic.UpdateView): | @@ -124,4 +124,4 @@ class EditProfile(LoginRequiredMixin, generic.UpdateView): | ||
124 | 124 | ||
125 | messages.success(self.request, _('Profile edited successfully!')) | 125 | messages.success(self.request, _('Profile edited successfully!')) |
126 | 126 | ||
127 | - return super(EditProfile, self).form_valid(form) | ||
128 | \ No newline at end of file | 127 | \ No newline at end of file |
128 | + return super(EditProfile, self).form_valid(form) |