def signup_view(request): request.JSON = JsonRequest(request) data = { 'username' : request.JSON.get('username', False), 'email' : request.JSON.get('email', False), 'password' : request.JSON.get('password', False), 'first_name' : request.JSON.get('first_name', False), 'last_name' : request.JSON.get('last_name', False), } response = Response() form = SignupForm(data) if form.is_valid(): #creating user user = User.objects.create_user(data['username'], data['email'], data['password']); user.first_name = data['first_name'] user.last_name = data['last_name'] user.save() #creating profile userProfile = UserProfile(user_id=user.id) userProfile.save() response.add_message('success', 'Usuario registrado correctamente') else: response.add_message('error', 'Error al registrar el usuario') response.read_form(form.errors); return HttpResponse(response.result('json'), mimetype='application/json')
def profile_update_view(request): request.JSON = JsonRequest(request) data = { 'first_name' : request.JSON.get('first_name', False), 'last_name' : request.JSON.get('last_name', False), 'birth_date' : request.JSON.get('birth_date', False), 'country_id' : request.JSON.get('country_id', False), } response = Response() form = ProfileUpdateForm(data) if form.is_valid(): #update user account user = request.user user.first_name = data['first_name'] user.last_name = data['last_name'] user.save() # update user profile user_profile = request.user.get_profile() user_profile.birth_date = data['birth_date'] user_profile.country_id = data['country_id'] user_profile.save() response.add_message('success', 'Informacion actualizada correctamente') else: response.add_message('error', 'Error al actualizar la informacion') response.read_form(form.errors); return HttpResponse(response.result('json'), mimetype='application/json')
def password_update_view(request): request.JSON = JsonRequest(request) response = Response() if request.JSON.get('password') == request.JSON.get('password_confirm'): request.user.set_password(request.JSON.get('password')) request.user.save() response.add_message('success', 'Informacion actualizada correctamente') else: response.add_error('error', 'Error al actualizar la informacion') return HttpResponse(response.result('json'), mimetype='application/json')
def compound_update_view(request): request.JSON = JsonRequest(request) response = Response() instance = get_object_or_404(Compound,id=request.JSON.get('id')) compound_form = CompoundUpdateForm(request.JSON, instance=instance) if compound_form.is_valid(): compound_form.save() response.add_property('slug', instance.slug) response.add_message('success', 'Informacion actualizada correctamente') else: response.add_error('error', 'Error al actualizar la informacion') return HttpResponse(response.result('json'), mimetype='application/json')
def account_update_view(request): request.JSON = JsonRequest(request) response = Response() user_form = AccountUpdateForm(request.JSON, instance=request.user) if user_form.is_valid(): # update form model user user_form.save() # update user profile user_profile = request.user.get_profile() user_profile.optin = request.JSON.get('optin') user_profile.save() response.add_message('success', 'Informacion actualizada correctamente') else: response.add_error('error', 'Error al actualizar la informacion') response.read_form(user_form.errors) return HttpResponse(response.result('json'), mimetype='application/json')
def compound_create_view(request): request.JSON = JsonRequest(request) response = Response() data = { 'name' : request.JSON.get('name'), 'country_id' : request.JSON.get('country_id') } compound_form = CompoundCreateForm(data) if compound_form.is_valid(): new_compound = compound_form.save() UserCompound.objects.create(user_id=request.user.id, compound_id=new_compound.pk) response.add_message('success', 'Condominio creado correctamente') else: response.add_message('error', 'Error al registrar el condominio') response.read_form(compound_form.errors); return HttpResponse(response.result('json'), mimetype='application/json')
def login_view(request): response = Response() request.JSON = JsonRequest(request) email = request.JSON.get('email', False) password = request.JSON.get('password', False) remember = request.JSON.get('remember', False) user = authenticate(username=email, password=password) if user is None: response.add_error('error', True) response.add_message('error', 'Ups!, datos incorrectos') else: if not remember is False: request.session.set_expiry(timedelta(365)) else: request.session.set_expiry(0) response.add_message('success', 'Datos correctos') login(request, user) return HttpResponse(response.result('json'), mimetype='application/json')