def post(self, channelid): """Handles a POST to the /channel/{id}/subscriber/ resource which is to add a subscriber to the channel """ # Get channel first channel = Channel.get_by_id(int(channelid)) if channel is None: self.response.out.write("Channel %s not found" % (channelid, )) self.response.set_status(404) return # Add subscriber name = self.request.get('name').rstrip('\n') resource = self.request.get('resource').rstrip('\n') subscriber = Subscriber() subscriber.channel = channel subscriber.name = name subscriber.resource = resource subscriber.put() # Not sure I like this ... re-put()ing if len(subscriber.name) == 0: subscriber.name = 'subscriber-' + str(subscriber.key().id()) subscriber.put() # If we've got here from a web form, redirect the user to the # channel subscriber resource, otherwise return the 201 if self.request.get('subscribersubmissionform'): self.redirect(self.request.path_info) else: self.response.headers['Location'] = self.request.url + str(subscriber.key().id()) + '/' self.response.set_status(201)
def get(self, urlparam): cmn = Common() user = users.get_current_user() # create or get a subscriber... query = db.GqlQuery("SELECT * FROM Subscriber WHERE who = :1", user) numUsers = query.count(1) if numUsers == 0: sub = Subscriber(who=user) sub.put() cmn.showMain(self, urlparam)
def post(self): device_id = self.request.get('device_id') device = Device.get_by_key_name(device_id) if not device: self.response.out.write('<p>Device does not exist</p>') return email = self.request.get('email') subscriber = Subscriber(device=device, email=email) subscriber.trigger_state = "Ready" subscriber.put() self.response.out.write('<p>Subscribed</p>')
def addSubscriber(request): form = SubscriberForm(request.POST) if form.is_valid(): subscriber = Subscriber(email=form.clean_data['email']) subscriber.put() message = mail.EmailMessage(sender=u"DunTeam <*****@*****.**>", subject=u"Дагасанд баярлалаа") message.to = subscriber.email message.body = u"Баярлалаа\nТа бидний шинэ мэдээг дагахаар амжилттай бүртгүүллээ.\nDunTeam" message.send() else: return render_to_response('index.html', {'form': form }) return HttpResponseRedirect('/')
def add_subcriber(data, instance_id=""): if instance_id: subscriber = Subscriber.get_by_id(str(instance_id)) else: subscriber = Subscriber() if data["name"]: subscriber.name = data["name"] if data["email"]: subscriber.email = data["email"] if data["fb_id"]: subscriber.fb_id = data["fb_id"] if data["distribution"]: subscriber.distribution = ndb.Key("Distribution", data["distribution"]) subscriber.put() return subscriber
def post(self): device_id = self.request.get("device_id") device = Device.get_by_key_name(device_id) if not device: logging.info("Unknown device") self.redirect("/") return email = self.request.get("email") if not match(r"[^@]+@[^@]+\.[^@]+", email): self.response.out.write("Invalid email") return subscriber = device.subscriber_set.filter("email =", email).filter("trigger_state =", "ready").get() if subscriber: self.response.out.write("Subscribed") return subscriber = Subscriber(device=device, email=email) subscriber.trigger_state = "ready" subscriber.put() self.response.out.write("Subscribed")
def post(self): device_id = self.request.get('device_id') device = Device.get_by_key_name(device_id) if not device: logging.info('Unknown device') self.redirect('/') return email = self.request.get('email') if not match(r"[^@]+@[^@]+\.[^@]+", email): self.response.out.write('Invalid email') return subscriber = device.subscriber_set.filter('email =', email).filter( 'trigger_state =', "ready").get() if subscriber: self.response.out.write('Subscribed') return subscriber = Subscriber(device=device, email=email) subscriber.trigger_state = "ready" subscriber.put() self.response.out.write('Subscribed')