def api_createuser(request): code = 100 data = {'code':code, 'error': 'Request Error'} if request.POST: if 'name' in request.POST and 'email' in request.POST and 'password' in request.POST: name = request.POST['name'] email_x = request.POST['email'] password = request.POST['password'] email = email_x.lower() if validateEmail(email): ck_u = User.objects.filter(email=email) if len(ck_u) > 0: existing_user = True code = 100 data = {'code':code, 'error': 'User Already Exists'} else: existing_user = False u = User(username=email, password=password, email=email) u.save() """create invitation""" store = Store.objects.filter(active=True,city='San Francisco')[0] inv = Invitation(user=u, default_store=store, email=u.username, used=True) inv.save() up = UserProfile(user=u, default_store=store) up.save() """create default subscription""" sub = Subscription(userprofile=up, subscription=False, subscription_type='un-subscribed') sub.save() """Send admin email""" sendSignupAdminEmail(u, 'San Francisco') """Send user email""" sendWelcomeEmail(email,'sanfrancisco', 'San Francisco') """subscribe user to daily email""" LIST_IDS = {'san-francisco':'eaa0a378ba'} l_id = LIST_IDS['san-francisco'] ms = MailSnake(settings.MAILCHIMP_API_KEY) success = ms.listSubscribe(id=l_id, email_address=u.email, double_optin=False) d, code = api_auth_helper(u) code = 200 data = {'code':code, 'account':d['account']} else: code = 100 data = {'code':code, 'error': 'Invalid Email'} else: code = 100 data = {'code':code, 'error': 'Invalid Sign-up'} return HttpResponse(simplejson.dumps(data, cls=MyJSONEncoder),content_type = 'application/javascript; charset=utf8')
def invite_friends(request): user = getUser(request) if request.POST: form = FriendInvitationForm(request.POST) if form.is_valid(): c_email = form.cleaned_data["email"] email = c_email.lower() token = get_rand_token() # Check if new invite is already a user ck_u = User.objects.filter(email=email) if len(ck_u) > 0: error_msg = ( "Looks like we already have a user signed up with this email. Do you have any other friends?" ) messages.add_message(request, messages.INFO, error_msg) else: new_u = User(username=email, password=token, email=email) new_u.save() exstng_up = UserProfile.objects.get(user=user) ds = exstng_up.default_store up = UserProfile(user=new_u, default_store=ds) up.save() c = ds.city.lower() city = c.replace(" ", "") # Send invite to friend send_invite_email(email, token, city, ds, gift=True, gifter=user.email) # Notify admin of new invite send_admin_new_invite(new_u, user) inv = Invitation(user=new_u, default_store=ds, email=new_u.username, token=token, used=False) inv.save() invfrnd = FriendInvites(user=user, invitation=inv) invfrnd.save() # assign new user to subscription s_type = "1 month unlimited (friend invite)" s = Subscription(userprofile=up, subscription=True, subscription_type=s_type) s.save() msg = "Invite to %s sent! Don't stop now, keep inviting friends." % email messages.add_message(request, messages.INFO, msg) else: form = FriendInvitationForm() invites = FriendInvites.objects.filter(user=user) template = "profile/invite_friend.html" data = {"form": form, "invites": invites} return render_to_response(template, data, context_instance=RequestContext(request))
def CreateNewUserHelper(request, c_email, c_city): email = c_email.lower() token = get_rand_token() ck_u = User.objects.filter(email=email) if len(ck_u) > 0: existing_user = True else: existing_user = False u = User(username=email, password=token, email=email) u.save() """create invitation""" store = Store.objects.filter(active=True, city="San Francisco")[0] inv = Invitation(user=u, default_store=store, email=u.username, token=token, used=False) inv.save() # save in session request.session["user"] = base64.b16encode(str(u.id)) CITY_LIST = {"san-francisco": "San Francisco"} cl_city = CITY_LIST[c_city] up = UserProfile(user=u, default_store=store) up.save() """create default subscription""" sub = Subscription(userprofile=up, subscription=False, subscription_type="un-subscribed") sub.save() """Send admin email""" sendSignupAdminEmail(u, cl_city) """Send welcome email to new user""" c = cl_city.lower() city = c.replace(" ", "") sendWelcomeEmail(email, token, city, cl_city) """subscribe user to daily email""" LIST_IDS = {"san-francisco": "eaa0a378ba"} l_id = LIST_IDS[c_city] ms = MailSnake(settings.MAILCHIMP_API_KEY) success = ms.listSubscribe(id=l_id, email_address=u.email, double_optin=False)
def admin_invite(request): if request.POST: form = InvitationForm(request.POST) if form.is_valid(): c_email = form.cleaned_data["email"] email = c_email.lower() token = get_rand_token() u = User(username=email, password=token, email=email) u.save() store = form.cleaned_data["store"] up = UserProfile(user=u, default_store=store) up.save() """create default subscription""" sub = Subscription(userprofile=up, subscription=False, subscription_type="un-subscribed") sub.save() c = store.city.lower() city = c.replace(" ", "") send_invite_email(email, token, city, store) inv = Invitation(user=u, default_store=store, email=u.username, token=token, used=False) inv.save() """subscrbe user to daily email""" LIST_IDS = {"sflaunch_group": "eaa0a378ba"} l_id = LIST_IDS["sflaunch_group"] ms = MailSnake(settings.MAILCHIMP_API_KEY) success = ms.listSubscribe(id=l_id, email_address=u.email, double_optin=False) else: form = InvitationForm() invites = Invitation.objects.all() template = "profile/admin/admin_invite.html" data = {"form": form, "invites": invites} return render_to_response(template, data, context_instance=RequestContext(request))