def get(self): util = helpers.Util() user_model = util.is_user_good() #if not user_model == None: _template_values = {} posts_results_cache_key = cache_keys.POSTS_DEMO cache_results = memcache.get(posts_results_cache_key) if not cache_results == None: logging.info("cached search results being returned for key: %s" % posts_results_cache_key) _template_values["r"] = cache_results else: logging.info("search results not found for cache key %s" % posts_results_cache_key) queries = helpers.Queries() q = queries.get_posts_demo() results = q.fetch(10, config=queries.get_db_run_config_eventual() ) _template_values["r"] = results memcache.add(posts_results_cache_key, _template_values["r"], 3600) _path = os.path.join(os.path.dirname(__file__), 'posts_demo.html') self.response.headers["Expires"] = util.get_expiration_stamp(3600) self.response.headers["Content-Type"] = "application/json" self.response.headers["Cache-Control: max-age"] = 3600 self.response.headers["Cache-Control"] = "public" self.response.out.write(template.render(_path, _template_values))
def post(self): util = helpers.Util() user_model = util.is_user_good() self.response.headers["Content-Type"] = "application/json" if not user_model == None: text_to_save =self.request.get("text", default_value=None) resubmit_post = self.request.get("resubmit",default_value="true") resubmit_bool = resubmit_post.lower() in ("yes", "true", "t", "1") if not text_to_save == None and len(text_to_save) > 0 and len(text_to_save) < 140: day_created = util.get_todays_start() text_to_save = re.sub("\s+"," ",text_to_save) social_post = model.SocialPostsForUsers(social_user=user_model,text=text_to_save,day_created=day_created,resubmit=resubmit_bool) try: social_post.put() self.response.out.write(json.dumps( { "success" : True, "id" : "%s" % social_post.key() }) ) except CapabilityDisabledError: fail = FailureJson(FAILURE_CAPABILITY_DISABLED_CODE,FAILURE_CAPABILITY_DISABLED_TEXT) self.response.out.write( fail.get_json() ) else: fail = FailureJson(FAILURE_NO_TEXT_TO_SAVE_CODE,FAILURE_NO_TEXT_TO_SAVE_TEXT) self.response.out.write( fail.get_json() ) else: fail = FailureJson(FAILURE_NO_USER_CODE,FAILURE_NO_USER_TEXT) self.response.out.write( fail.get_json() )
def get(self): util = helpers.Util() user_model = util.is_user_good() #if not user_model == None: _template_values = {} posts_results_cache_key = cache_keys.POSTS_DEMO cache_results = memcache.get(posts_results_cache_key) if not cache_results == None: logging.info("cached search results being returned for key: %s" % posts_results_cache_key) _template_values["r"] = cache_results else: logging.info("search results not found for cache key %s" % posts_results_cache_key) queries = helpers.Queries() q = queries.get_posts_demo() results = q.fetch(10, config=queries.get_db_run_config_eventual()) _template_values["r"] = results memcache.add(posts_results_cache_key, _template_values["r"], 3600) _path = os.path.join(os.path.dirname(__file__), 'posts_demo.html') self.response.headers["Expires"] = util.get_expiration_stamp(3600) self.response.headers["Content-Type"] = "application/json" self.response.headers["Cache-Control: max-age"] = 3600 self.response.headers["Cache-Control"] = "public" self.response.out.write(template.render(_path, _template_values))
def post(self): util = helpers.Util() user_model = util.is_user_good() self.response.headers["Content-Type"] = "application/json" if not user_model == None: text_to_save = self.request.get("text", default_value=None) resubmit_post = self.request.get("resubmit", default_value="true") resubmit_bool = resubmit_post.lower() in ("yes", "true", "t", "1") if not text_to_save == None and len(text_to_save) > 0 and len( text_to_save) < 140: day_created = util.get_todays_start() text_to_save = re.sub("\s+", " ", text_to_save) social_post = model.SocialPostsForUsers( social_user=user_model, text=text_to_save, day_created=day_created, resubmit=resubmit_bool) try: social_post.put() self.response.out.write( json.dumps({ "success": True, "id": "%s" % social_post.key() })) except CapabilityDisabledError: fail = FailureJson(FAILURE_CAPABILITY_DISABLED_CODE, FAILURE_CAPABILITY_DISABLED_TEXT) self.response.out.write(fail.get_json()) else: fail = FailureJson(FAILURE_NO_TEXT_TO_SAVE_CODE, FAILURE_NO_TEXT_TO_SAVE_TEXT) self.response.out.write(fail.get_json()) else: fail = FailureJson(FAILURE_NO_USER_CODE, FAILURE_NO_USER_TEXT) self.response.out.write(fail.get_json())
def get(self): util = helpers.Util() user_model = util.is_user_good() if not user_model == None: _template_values = {} get_which = self.request.get("which") get_since = self.request.get("since") if get_since == "" or get_since == "undefined": get_since = None day_start = util.get_todays_start() day_stop = util.get_todays_stop() _template_values["day_start"] = day_start _template_values["day_stop"] = day_stop posts_results_cache_key = cache_keys.POST_RESULTS % (get_which,get_since,day_start.date()) logging.info("post results cache key is: %s" % posts_results_cache_key) cache_results = memcache.get(posts_results_cache_key) if not cache_results == None: logging.info("cached search results being returned for key: %s" % posts_results_cache_key) _template_values["c"] = get_since _template_values["r"] = cache_results else: logging.info("search results not found for cache key %s" % posts_results_cache_key) queries = helpers.Queries() if get_which == "yours-pending": q = queries.get_posts_yours_pending(user_model,get_since,day_start) results = q.fetch(100, config= queries.get_db_run_config_eventual() ) cursor = q.cursor() if get_since == None: q2 = queries.get_posts_yours_resubmitted(user_model,day_start) results2 = q2.fetch(100, config= queries.get_db_run_config_eventual()) logging.info("yours resubmitted: %s" % len(results2) ) results.extend(results2 ) _template_values["c"] = cursor _template_values["r"] = results elif get_which == "theirs-pending": q = queries.get_posts_theirs_pending(get_since,day_start) results = q.fetch(100, config= queries.get_db_run_config_eventual()) cursor = q.cursor() if get_since == None: q2 = queries.get_posts_theirs_resubmitted(user_model,day_start) results2 = q2.fetch(100, config= queries.get_db_run_config_eventual()) logging.info("theirs resubmitted: %s" % len(results2) ) results.extend( results2 ) _template_values["c"] = cursor _template_values["r"] = results else: logging.warning("unknown which was passed: %" % get_which) _template_values["c"] = None _template_values["r"] = None if not _template_values["r"] == None: memcache.add(posts_results_cache_key, _template_values["r"], 60) _path = os.path.join(os.path.dirname(__file__), 'posts.html') self.response.headers["Expires"] = util.get_expiration_stamp(60) self.response.headers["Content-Type"] = "application/json" self.response.headers["Cache-Control: max-age"] = 60 self.response.headers["Cache-Control"] = "public" self.response.out.write(template.render(_path, _template_values)) else: fail = FailureJson(FAILURE_NO_USER_CODE,FAILURE_NO_USER_TEXT) self.response.out.write( fail.get_json() )
def get(self): util = helpers.Util() user_model = util.is_user_good() if not user_model == None: _template_values = {} get_which = self.request.get("which") get_since = self.request.get("since") if get_since == "" or get_since == "undefined": get_since = None day_start = util.get_todays_start() day_stop = util.get_todays_stop() _template_values["day_start"] = day_start _template_values["day_stop"] = day_stop posts_results_cache_key = cache_keys.POST_RESULTS % ( get_which, get_since, day_start.date()) logging.info("post results cache key is: %s" % posts_results_cache_key) cache_results = memcache.get(posts_results_cache_key) if not cache_results == None: logging.info( "cached search results being returned for key: %s" % posts_results_cache_key) _template_values["c"] = get_since _template_values["r"] = cache_results else: logging.info("search results not found for cache key %s" % posts_results_cache_key) queries = helpers.Queries() if get_which == "yours-pending": q = queries.get_posts_yours_pending( user_model, get_since, day_start) results = q.fetch( 100, config=queries.get_db_run_config_eventual()) cursor = q.cursor() if get_since == None: q2 = queries.get_posts_yours_resubmitted( user_model, day_start) results2 = q2.fetch( 100, config=queries.get_db_run_config_eventual()) logging.info("yours resubmitted: %s" % len(results2)) results.extend(results2) _template_values["c"] = cursor _template_values["r"] = results elif get_which == "theirs-pending": q = queries.get_posts_theirs_pending(get_since, day_start) results = q.fetch( 100, config=queries.get_db_run_config_eventual()) cursor = q.cursor() if get_since == None: q2 = queries.get_posts_theirs_resubmitted( user_model, day_start) results2 = q2.fetch( 100, config=queries.get_db_run_config_eventual()) logging.info("theirs resubmitted: %s" % len(results2)) results.extend(results2) _template_values["c"] = cursor _template_values["r"] = results else: logging.warning("unknown which was passed: %" % get_which) _template_values["c"] = None _template_values["r"] = None if not _template_values["r"] == None: memcache.add(posts_results_cache_key, _template_values["r"], 60) _path = os.path.join(os.path.dirname(__file__), 'posts.html') self.response.headers["Expires"] = util.get_expiration_stamp(60) self.response.headers["Content-Type"] = "application/json" self.response.headers["Cache-Control: max-age"] = 60 self.response.headers["Cache-Control"] = "public" self.response.out.write(template.render(_path, _template_values)) else: fail = FailureJson(FAILURE_NO_USER_CODE, FAILURE_NO_USER_TEXT) self.response.out.write(fail.get_json())