def get(self, current_url): useraccount = models.get_current_auth_user(self) items = models.get_latest_text_items(5) video_featured_items = models.get_featured_items("Video",1) image_featured_items = models.get_featured_items("Image", 3) usercount = models.get_counter("total_users") itemcount = models.get_counter("total_items") ratingcount = models.get_counter("total_ratings") locationcount = models.get_counter("total_locations") template_values = { 'ratingform': models.RatingForm(), 'itemform': models.ItemForm(), 'media_types': helpers.get_media_types(), 'form_tags': helpers.get_form_tags(), 'locations': models.Location.all().order('name'), 'useraccount': useraccount, 'user_action_url': helpers.get_user_action_url(useraccount, current_url), 'items': items, 'usercount': usercount, 'itemcount': itemcount, 'ratingcount': ratingcount, 'locationcount': locationcount, 'image_featured_items': image_featured_items } if video_featured_items: template_values['video_featured_item'] = video_featured_items[0] viewhelpers.render_template(self, "views/home", template_values)
def post(self, current_url, itemurl): useraccount = models.get_current_auth_user(self) tag = self.request.get("tag") media_type = self.request.get("media_type") form = models.ItemForm(data=self.request.POST) location = models.Location.get(self.request.get("location")) created = False item = False if form.is_valid(): item = form.save(commit=False) item.useraccount = useraccount item.location = location item.tag = tag item.media_type = media_type # Handle oembed if (item.media_type == "Video") or (item.media_type == "Image"): item.url = helpers.get_oembed_links(item.text) models.kill_featured_caches() item.put() location.itemcount += 1 location.put() useraccount.itemcount +=1 useraccount.actioncount +=1 useraccount.put() created = True models.kill_location_items_cache(location) userlocation = models.log_userlocation_activity(location, useraccount, False) models.increment_counter("total_items") template_values = { 'created':created, 'itemform':form, 'media_types': helpers.get_media_types(), 'form_tags': helpers.get_form_tags(), 'locations': models.Location.all().order('name'), 'location': location, 'useraccount': useraccount, 'user_action_url': helpers.get_user_action_url(useraccount, current_url), 'ajax_item': self.request.get("item_ajax_submit") } if item: template_values['item'] = item if self.request.get("item_ajax_submit"): viewhelpers.render_template(self, "views/ajaxitem", template_values) else: viewhelpers.render_template(self, "views/item", template_values)
def get(self, current_url, itemurl): useraccount = models.get_current_auth_user(self) template_values = { 'useraccount': useraccount, 'user_action_url': helpers.get_user_action_url(useraccount, current_url), 'itemurl': itemurl, 'locations': models.Location.all().order('name'), 'itemform': models.ItemForm(), 'ratingform': models.RatingForm(), 'media_types': helpers.get_media_types(), 'form_tags': helpers.get_form_tags() } item = models.Item.get(itemurl) if item: template_values['location'] = item.location template_values['locationrating'] = models.LocationRatings.gql("WHERE location = :1", item.location).get() template_values['item'] = item viewhelpers.render_template(self, "views/location", template_values)
def get(self, current_url, locationurl): useraccount = models.get_current_auth_user(self) location = models.Location.gql("WHERE indexname = :1", locationurl.lower()).get() items = models.get_items_for_location(location, 20, 0) locationrating = models.LocationRatings.gql("WHERE location = :1", location).get() userlocations = models.get_userlocations_for_location(location, 10, 0) template_values = { 'items': items, 'useraccount': useraccount, 'user_action_url': helpers.get_user_action_url(useraccount, current_url), 'locationurl': locationurl, 'ratingform': models.RatingForm(), 'itemform': models.ItemForm(), 'media_types': helpers.get_media_types(), 'form_tags': helpers.get_form_tags(), 'locations': models.Location.all().order('name'), 'location': location, 'locationrating': locationrating, 'userlocations': userlocations, } if location: template_values['location'] = location viewhelpers.render_template(self, "views/location", template_values)