예제 #1
0
def contacts(request):
    template = 'contacts/contacts.html'
    if request.method == 'POST':
        lang = translation.get_language()
        form = ContactForm(request.POST)
        if form.is_valid():
            data = form.cleaned_data
            addresses = "[email protected], [email protected]"
            recipients = [x.strip() for x in clean_sting(addresses).split(',')]
            site = get_current_site(request)
            ctx_dict = {
                'site': site,
                'phone': data.get('phone'),
                'name': data.get('name'),
                'email': data.get('email'),
                'message': data.get('message'),
            }
            send_mail(recipients,
                      'contacts/mail/email_subject.txt',
                      'contacts/mail/email.html',
                      'contacts/mail/email.txt',
                      ctx_dict)
            return JsonResponse({'success': True, 'location': reverse('contacts_thank_you')})
        else:
            errors = dict([(k, force_text(v[0])) for k, v in form.errors.items()])
            return JsonResponse({'success': False, 'errors': errors})
    else:
        form = ContactForm()
    ctx = {'form': form}
    return render(request, template, ctx)
예제 #2
0
def send_change_mail(order, status):
    if order.email:
        site = Site.objects.get_current()
        ctx_dict = {
            'site': site,
            'order': order,
            'state': status,
        }
        recipients = order.email.strip()
        send_mail(recipients,
                  'orders/mail/order_feedback_subject.txt',
                  'orders/mail/order_feedback.html',
                  'orders/mail/order_feedback.txt',
                  ctx_dict)
    return None
예제 #3
0
def create_personal_course(request):
    page = get_page(request, '/course/create/')
    skills = Skill.objects.all()
    skills = group_of(skills, 2)
    if request.method == "POST":
        form = CreatePersonCourseForm(request.POST)
        if form.is_valid():
            if not form.cleaned_data['no_skills']:
                form.save()
                course = Course.objects.get(id=form.instance.id)
                course.user = request.user
                course.value_type = 'course_personal'
                course.save()
                subscribe = UserCourse.objects.create(
                    user=request.user,
                    course=course,
                    status='course_notpaid'
                )
                subscribe.save()
                invoice = Invoice.objects.create(
                    user=request.user,
                    course=subscribe,
                    status='invoice_noprice'
                )
                invoice.save()
                return redirect('/course/price/%s/' % invoice.pk)
            else:
                form.save()
                course = Course.objects.get(id=form.instance.id)
                course.user = request.user
                course.value_type = 'course_personal'
                course.save()
                subscribe = UserCourse.objects.create(
                    user=request.user,
                    course=course,
                    status='course_notpaid'
                )
                subscribe.save()
                invoice = Invoice.objects.create(
                    user=request.user,
                    course=subscribe,
                    status='invoice_noprice'
                )
                invoice.save()
                managers = User.objects.filter(
                    groups=Group.objects.get(
                        id=AppConfig.objects.get(
                            key='id_group_managers', enabled=True).value), is_staff=True).values_list('email')
                addresses = re.sub("^|\[|\]|\(u|\'\,|\)|\'|\s+|\n|\r|\s+$", '', str(managers))
                recipients = [x.strip() for x in clean_sting(addresses).split(',')]
                site = get_current_site(request)
                ctx_dict = {
                    'site': site,
                    'user': request.user,
                    'course': course,
                }
                send_mail(recipients,
                          'courses/mail/signal_email_subject.txt',
                          'courses/mail/signal_email.html',
                          'courses/mail/signal_email.txt',
                          ctx_dict)
                return redirect('/course/price/%s/' % invoice.pk)
    else:
        form = CreatePersonCourseForm()
    return render(request, 'courses/create_course.html', {'form': form,
                                                          'skills': skills,
                                                          'page': page})