def set_default_device(self, dev_id): dev_id = long(dev_id) user = social.get_current_user() devices = model.Device.filter_by_user(user).order('-name').fetch(100) for dev in devices: dev.default = dev.key().id() == dev_id model.db.put(devices)
def facebook_login(self, access_token): current_user = social.get_current_user() auth = social.facebook_connect(access_token, current_user) if auth is not None: social.login(auth) return "success" return "failed"
def get(self, *ignored_args): user = social.get_current_user() self.response.headers['Content-Type'] = "text/javascript" if user and model.default_device(user): self.response.out.write('var b2m_______last_action="auto_close";') else: self.response.out.write('var b2m_______last_action="no";')
def post(self): user = social.get_current_user() url_keys = self.request.get("url", allow_multiple=True) url_keys = [db.GqlQuery("SELECT __key__ FROM Url WHERE email = :1 and __key__ = :2", user.email().lower(), db.Key(key)).get() for key in url_keys]; db.delete(url_keys) self.redirect("/ui/urls")
def baseTemplateValues(self): bookmarklet = get_bookmarklet_launcher() user = social.get_current_user() return { "user": user, "bookmarklet": bookmarklet, "logout": social.create_logout_url("/"), }
def auth_guard(self, *args, **kwargs): access_token = self.request.get("access_token") user = social.get_current_user(access_token) self.user = user if not user is None: return function(self, *args, **kwargs) self.response.set_status(403)
def auth_guard(self, *args, **kwargs): user = social.get_current_user() if not user is None: self.user = user return function(self, *args, **kwargs) url = social.create_login_url(self.request.path) self.redirect(url)
def google_login(self): google_user = users.get_current_user() if google_user != None: current_user = social.get_current_user() auth = social.connect_google(google_user, current_user) social.login(auth) return "success" return "failed"
def get(self): dev_id = self.request.get('device_id') user = social.get_current_user() if dev_id is None or dev_id == '': devices = model.Device.filter_by_user(user).fetch(100) result = [{'id': dev.key().id(), 'name': dev.name, 'default': dev.default} for dev in devices] else: device = model.device_by(user, dev_id) result = device.script_properties() serialization.json_dump(self.response,result)
def post(self): user = social.get_current_user() dev_id = self.request.get('device_id') default = self.request.get('default') if bool(default): device = self.set_default_device(dev_id) device = model.device_by(user, dev_id) device.name = self.request.get("name") or device.name serialization.json_dump(self.response, device.script_properties())
def delete(self): user = social.get_current_user() dev_id = self.request.get('device_id') device = model.device_by(user, dev_id) if device: urls = model.Url.all().filter("device =", device) urls = db.GqlQuery("SELECT __key__ FROM Url WHERE device = :1", device) db.delete(urls) device.delete() serialization.json_dump(self.response, {'status': 'ok'}) else: log.info("Unable to delete device. Device: '%s' not found", dev_id) serialization.json_dump(self.response, {'status': 'error'})
def get(self): user = social.get_current_user() urls = [url for url in self.removeInvalidUrls(model.Url.filter_by_user(user).order('-created').fetch(100)) if not url.is_deleted] devices = model.Device.filter_by_user(user).order('-name').fetch(10) template_values = self.baseTemplateValues(); template_values.update({ 'urls': urls, 'devices': devices, "user": user, "logout": social.create_logout_url("/"), "since": (datetime.datetime.now() - datetime.timedelta(hours=2)).isoformat() }) self.response.out.write(template.render("templates/ui/urls.html", template_values))
def get(self): user = social.get_current_user() if user == None: self.response.set_status(403) return model.UserProfile.get_or_insert(user.email().lower()) urls = model.Url.filter_by_user(user).order('-created').fetch(10) devices = model.Device.filter_by_user(user).order('-name').fetch(10) template_values = { 'urls': urls, 'devices': devices, "user": user, "logout": users.create_logout_url("/"), "since": (datetime.datetime.now() - datetime.timedelta(hours=2)).isoformat() } self.response.out.write(template.render("templates/developers_ui.html", template_values))
def post(self): user = social.get_current_user() if not user: serialization.json_dump(self.response, dict(status="not-logged-in")) return #data = self.request.body #obj = json.loads(data) url = model.Url() url.device = None url.value = self.request.get('url') url.title = self.request.get('title') url.user = user if len(url.value) > 200: h = hashlib.sha1() h.update(url.value) url.hash = h.hexdigest() url.put() serialization.json_dump(self.response, dict(status="success")) return url #needed for tests
def get(self): # logged in user goes to user home user = social.get_current_user() if user: self.redirect("/en/user") return if self.request.get("google_auth"): self.google_login() self.redirect("/en/user") return tempalte_values = self.baseTemplateValues() url = self.request.url if not "google_auth" in url: url += "?&google_auth=true" # to trigger account creation tempalte_values.update({ "google_login": users.create_login_url(url), "google_user": users.get_current_user() # in case we have already google_user, if clicking the button will log user in directly }) self.response.out.write(template.render("templates/ui/login.html", tempalte_values))
def post(self): user = social.get_current_user() from b2m import mailing user.need_intro_email = True mailing._send_intro_email(user, "facebook", "device") self.redirect(self.request.url)
def post(self): user = social.get_current_user() dev_id = self.request.get('device_id') url_value = self.request.get('url') post_url(user, url_value=url_value, dev_id=dev_id) self.redirect('/')
def post(self, *ignored_args): user = social.get_current_user() if user: self._add_url(user) else: self._require_login()