You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

38 lines
1.4 KiB

from django.shortcuts import redirect, render_to_response
from social.pipeline.partial import partial
from django.contrib.auth.models import Group
from users.models import ContractorResume
@partial
def test_contractor(backend, details, response, user,is_new=False, *args, **kwargs):
if is_new:
group_name = 'Исполнители'
g = Group.objects.get(name=group_name)
g.user_set.add(user)
if group_name == 'Исполнители':
resume = ContractorResume.objects.create(text='Здесь должна быть описание вашего резюме')
user.contractor_resume = resume
user.save()
@partial
def add_email_for_user(backend, details, response, is_new=False, *args, **kwargs):
data = backend.strategy.request_data()
if is_new:
if not details.get('email'):
if 'email' in kwargs['request']:
return {'email': kwargs['request']['email']}
else:
return render_to_response('add_email_form.html')
@partial
def require_email(strategy, details, user=None, is_new=False, *args, **kwargs):
if kwargs.get('ajax') or user and user.email:
return
elif is_new and not details.get('email'):
email = strategy.request_data().get('email')
if email:
details['email'] = email
else:
return redirect('require_email')