diff --git a/company/edit_forms.py b/company/edit_forms.py index d7751b57..0738c0ec 100644 --- a/company/edit_forms.py +++ b/company/edit_forms.py @@ -68,6 +68,19 @@ class PhoneForm(BaseForm): model = Company fields = ('phone',) + def clean_phone(self): + phone = self.cleaned_data['phone'] + if not phone: + return + + deduct = ('-','(',')','.',' ', '+') + for elem in deduct: + phone = phone.replace(elem, '') + if phone.isdigit(): + return phone + else: + raise forms.ValidationError(_(u'Введите правильный телефон')) + class EmailForm(BaseForm): email = forms.EmailField(label=_(u'Ваш e-mail'), required=False) diff --git a/company/views.py b/company/views.py index b093451d..a7e82a64 100644 --- a/company/views.py +++ b/company/views.py @@ -108,10 +108,14 @@ class MemberDetail(DetailView): forms = { 'home_form': CompHomeForm(instance=company), 'phone_form': CompPhoneForm(instance=company), 'email_form': CompEmailForm(instance=company), 'web_page_form': CompWebPageForm(instance=company), - 'social_form': CompSocialForm(instance=company), 'tag_form': CompTagForm(instance=company), + 'social_form': CompSocialForm(instance=company), 'staff_form': CompStaff(instance=company), 'found_form': CompFound(instance=company), 'logo_form': CompLogo(instance=company) } + tags = [{'id': tag.id, 'text': tag.name } for tag in company.tag.all()] + tag_form = CompTagForm(instance=company) + tag_form.fields['tag'].widget.attrs['data-predifined'] = json.dumps(tags) + forms.update({'tag_form': tag_form}) lang = get_language() comp_transl = company.translations.get(language_code=lang)