Commit 089af21ad217d217e0c52af2d19fc59a760c1301

Authored by fbormann
2 parents b99d4ef4 d4e29336

Merge branch 'dev' of https://github.com/amadeusproject/amadeuslms into dev

core/forms.py
... ... @@ -15,31 +15,7 @@ class RegisterUserForm(forms.ModelForm):
15 15  
16 16 def validate_cpf(self, cpf):
17 17 cpf = ''.join(re.findall('\d', str(cpf)))
18   - # print(cpf)
19   -
20   - # if (not cpf) or (len(cpf) < 11):
21   - # return False
22   -
23   - # #Get only the first 9 digits and generate other 2
24   - # _int = map(int, cpf)
25   - # integer = list(map(int, cpf))
26   - # new = integer[:9]
27   -
28   - # while len(new) < 11:
29   - # r = sum([(len(new) + 1 - i)* v for i, v in enumerate(new)]) % 11
30   -
31   - # if r > 1:
32   - # f = 11 - r
33   - # else:
34   - # f = 0
35   - # new.append(f)
36   -
37   - # #if generated number is the same(original) the cpf is valid
38   - # new2 = list(new)
39   - # if new2 == _int:
40   - # return cpf
41   - # else:
42   - # return False
  18 +
43 19 if cpfcnpj.validate(cpf):
44 20 return True
45 21 return False
... ...
core/templates/base.html
... ... @@ -38,6 +38,7 @@
38 38 <script type="text/javascript">$.material.init()</script>
39 39  
40 40 <!--Javascript block for specific-app ones -->
  41 + <script src="{% static 'js/base/amadeus.js' %}"></script>
41 42 {% block style %}
42 43 {% endblock %}
43 44 </head>
... ...
core/templates/register_user.html
... ... @@ -8,11 +8,16 @@
8 8  
9 9  
10 10 {% block content %}
11   - {% if message %}
12   - <div class="alert alert-danger">
13   - {{message}}
14   - </div>
15   - {% endif %}
  11 + {% if messages %}
  12 + {% for message in messages %}
  13 + <div class="alert alert-{{ message.tags }} alert-dismissible" role="alert">
  14 + <button type="button" class="close" data-dismiss="alert" aria-label="Close">
  15 + <span aria-hidden="true">&times;</span>
  16 + </button>
  17 + <p>{{ message }}</p>
  18 + </div>
  19 + {% endfor %}
  20 + {% endif %}
16 21 <div class="row logo-row">
17 22 <div class="col-lg-offset-2 col-lg-9">
18 23 <img src="{% static 'img/amadeus.png' %}" class="img-responsive center-block " alt="logo amadeus" id="logo">
... ... @@ -81,5 +86,4 @@
81 86 </div>
82 87  
83 88 <br clear="all" />
84   - <script src="{% static 'js/base/amadeus.js' %}"></script>
85 89 {% endblock %}
... ...
users/forms.py
... ... @@ -27,25 +27,6 @@ class ProfileForm(forms.ModelForm):
27 27 }
28 28  
29 29 class UserForm(RegisterUserForm):
30   - def save(self, commit=True):
31   - super(UserForm, self).save()
32   -
33   - if not self.instance.image:
34   - self.instance.image = os.path.join(os.path.dirname(settings.BASE_DIR), 'uploads', 'no_image.jpg')
35   -
36   - self.instance.set_password(self.cleaned_data['password1'])
37   - self.instance.save()
38   -
39   - if self.instance.is_staff:
40   - assign_role(self.instance, 'system_admin')
41   - elif self.instance.type_profile == 2:
42   - assign_role(self.instance, 'student')
43   - elif self.instance.type_profile == 1:
44   - assign_role(self.instance, 'professor')
45   -
46   - self.instance.save()
47   -
48   - return self.instance
49 30  
50 31 class Meta:
51 32 model = User
... ... @@ -59,6 +40,7 @@ class EditUserForm(forms.ModelForm):
59 40  
60 41 # Ailson
61 42 class UpdateUserForm(forms.ModelForm):
  43 + company_logo = forms.ImageField(label=_('Company Logo'),required=False, error_messages = {'invalid':_("Image files only")})
62 44  
63 45 class Meta:
64 46 model = User
... ...
users/templates/users/create.html
... ... @@ -60,8 +60,8 @@
60 60 {% render_field field class='form-control' %}
61 61 {% endif %}
62 62 <span id="helpBlock" class="help-block">{{ field.help_text }}</span>
63   - {% if field.errors.length > 0 %}
64   - <div class="alert alert-danger alert-dismissible" role="alert">
  63 + {% if field.errors %}
  64 + <div class="alert alert-danger alert-dismissible col-md-offset-4 col-md-8" role="alert">
65 65 <button type="button" class="close" data-dismiss="alert" aria-label="Close">
66 66 <span aria-hidden="true">&times;</span>
67 67 </button>
... ...
users/templates/users/update.html
... ... @@ -46,18 +46,14 @@
46 46 </button>
47 47 </span>
48 48 </div>
49   - {% elif field.auto_id == 'id_is_staff' or field.auto_id == 'id_is_active' %}
50   - <div class="checkbox">
51   - <label>
52   - {% render_field field type='checkbox' %}
53   - </label>
54   - </div>
  49 + {% elif field.auto_id == 'id_cpf' %}
  50 + {% render_field field class='form-control' onkeypress='campoNumerico(this,event); formatarCpf(this,event);' %}
55 51 {% else %}
56 52 {% render_field field class='form-control' %}
57 53 <span id="helpBlock" class="help-block">{{ field.help_text }}</span>
58 54 {% endif %}
59   - {% if field.errors.length > 0 %}
60   - <div class="alert alert-danger alert-dismissible" role="alert">
  55 + {% if field.errors %}
  56 + <div class="alert alert-danger alert-dismissible col-md-offset-4 col-md-8" role="alert">
61 57 <button type="button" class="close" data-dismiss="alert" aria-label="Close">
62 58 <span aria-hidden="true">&times;</span>
63 59 </button>
... ... @@ -67,7 +63,6 @@
67 63 {% endfor %}
68 64 </ul>
69 65 </div>
70   - </div>
71 66 {% endif %}
72 67 </div>
73 68 {% endfor %}
... ...
users/views.py
... ... @@ -10,6 +10,7 @@ from rolepermissions.shortcuts import assign_role
10 10 from .models import User
11 11 from .forms import UserForm, ProfileForm, UpdateUserForm
12 12  
  13 +# ================ ADMIN =======================
13 14 class UsersListView(HasRoleMixin, LoginRequiredMixin, generic.ListView):
14 15  
15 16 allowed_roles = ['system_admin']
... ... @@ -65,7 +66,7 @@ class Update(HasRoleMixin, LoginRequiredMixin, generic.UpdateView):
65 66 slug_url_kwarg = 'username'
66 67 context_object_name = 'acc'
67 68 model = User
68   - form_class = UserForm
  69 + form_class = UpdateUserForm
69 70 success_url = reverse_lazy('users:manage')
70 71  
71 72 def form_valid(self, form):
... ... @@ -94,6 +95,36 @@ class View(LoginRequiredMixin, generic.DetailView):
94 95 slug_field = 'username'
95 96 slug_url_kwarg = 'username'
96 97  
  98 +class UpdateUser(LoginRequiredMixin, generic.edit.UpdateView):
  99 +
  100 + allowed_roles = ['student']
  101 + login_url = reverse_lazy("core:home")
  102 + template_name = 'users/edit_profile.html'
  103 + form_class = UpdateUserForm
  104 + success_url = reverse_lazy('users:update_profile')
  105 +
  106 + def get_object(self):
  107 + user = get_object_or_404(User, username = self.request.user.username)
  108 + return user
  109 +
  110 + def form_valid(self, form):
  111 + form.save()
  112 + messages.success(self.request, _('Profile edited successfully!'))
  113 +
  114 + return super(UpdateUser, self).form_valid(form)
  115 +
  116 +class DeleteUser(LoginRequiredMixin, generic.edit.DeleteView):
  117 + allowed_roles = ['student']
  118 + login_url = reverse_lazy("core:home")
  119 + model = User
  120 + success_url = reverse_lazy('core:index')
  121 + success_message = "Deleted Successfully"
  122 +
  123 + def get_queryset(self):
  124 + user = get_object_or_404(User, username = self.request.user.username)
  125 + return user
  126 +
  127 +
97 128 class Profile(LoginRequiredMixin, generic.DetailView):
98 129  
99 130 login_url = reverse_lazy("core:home")
... ... @@ -131,34 +162,4 @@ class EditProfile(LoginRequiredMixin, generic.UpdateView):
131 162  
132 163 messages.success(self.request, _('Profile edited successfully!'))
133 164  
134   - return super(EditProfile, self).form_valid(form)
135   -
136   -
137   -class UpdateUser(LoginRequiredMixin, generic.edit.UpdateView):
138   -
139   - allowed_roles = ['student']
140   - login_url = reverse_lazy("core:home")
141   - template_name = 'users/edit_profile.html'
142   - form_class = UpdateUserForm
143   - success_url = reverse_lazy('users:update_profile')
144   -
145   - def get_object(self):
146   - user = get_object_or_404(User, username = self.request.user.username)
147   - return user
148   -
149   - def form_valid(self, form):
150   - form.save()
151   - messages.success(self.request, _('Profile edited successfully!'))
152   -
153   - return super(UpdateUser, self).form_valid(form)
154   -
155   -class DeleteUser(LoginRequiredMixin, generic.edit.DeleteView):
156   - allowed_roles = ['student']
157   - login_url = reverse_lazy("core:home")
158   - model = User
159   - success_url = reverse_lazy('core:index')
160   - success_message = "Deleted Successfully"
161   -
162   - def get_queryset(self):
163   - user = get_object_or_404(User, username = self.request.user.username)
164   - return user
  165 + return super(EditProfile, self).form_valid(form)
165 166 \ No newline at end of file
... ...