Esempio n. 1
0
 def get(self):
     result = {}
     
     result['collections'] = Collection.all().fetch(1000)
     
     template_path = os.path.join(os.path.dirname(os.path.dirname(__file__)), 'template', 'admin_collection.html') #two os.path.dirname to get the root app dir
     self.response.out.write(template.render(template_path, result))
Esempio n. 2
0
    def get(self):
        result = {}

        result['collections'] = Collection.all().fetch(1000)

        template_path = os.path.join(
            os.path.dirname(os.path.dirname(__file__)), 'template',
            'admin_collection.html'
        )  #two os.path.dirname to get the root app dir
        self.response.out.write(template.render(template_path, result))
Esempio n. 3
0
 def post(self):
     
     if self.request.get('create'):
         action = 'create'
     elif self.request.get('update'):
         action = 'update'
     elif self.request.get('delete'):
         action = 'delete'
     
     key_names = self.request.get('key_name', allow_multiple=True)
     
     if action == 'create':
         name = self.request.get('new_name')
         slug = self.request.get('new_slug')
         items = [int(id) for id in filter(lambda a: a != '', self.request.get('new_items').strip().split(' '))]
         # list(set(a)) to eliminate duplicates
         # filter to eliminate 2 or more consecutive spaces
         new_collection = Collection(key_name = name, slug = slug, items = items )
         new_collection.put()
         self.redirect('../collection/?status=item_saved')
     elif action == 'update':
         name_list = self.request.get('name', allow_multiple=True)
         slug_list = [ slug for slug in self.request.get('slug', allow_multiple=True)]
         items_list = [[int(id) for id in items.strip().split(' ')] for items in self.request.get('items', allow_multiple=True)]
         collections_list = zip(name_list, slug_list, items_list)
         collections = [Collection(key_name = collection[0], slug = collection[1], items = collection[2]) for collection in collections_list]
         Collection.save(collections)
         self.redirect('../collection/?status=item_saved')
     elif action == 'delete':
         if key_names:
             Collection.delete_by_key_name(key_names)
             self.redirect('../collection/?status=item_deleted')
         else:
             self.redirect('../collection/?status=nothing_selected')
     else:
         # No action specified
         self.redirect('../collection/')
Esempio n. 4
0
    def post(self):

        if self.request.get('create'):
            action = 'create'
        elif self.request.get('update'):
            action = 'update'
        elif self.request.get('delete'):
            action = 'delete'

        key_names = self.request.get('key_name', allow_multiple=True)

        if action == 'create':
            name = self.request.get('new_name')
            slug = self.request.get('new_slug')
            items = [
                int(id) for id in filter(
                    lambda a: a != '',
                    self.request.get('new_items').strip().split(' '))
            ]
            # list(set(a)) to eliminate duplicates
            # filter to eliminate 2 or more consecutive spaces
            new_collection = Collection(key_name=name, slug=slug, items=items)
            new_collection.put()
            self.redirect('../collection/?status=item_saved')
        elif action == 'update':
            name_list = self.request.get('name', allow_multiple=True)
            slug_list = [
                slug for slug in self.request.get('slug', allow_multiple=True)
            ]
            items_list = [[
                int(id) for id in items.strip().split(' ')
            ] for items in self.request.get('items', allow_multiple=True)]
            collections_list = zip(name_list, slug_list, items_list)
            collections = [
                Collection(key_name=collection[0],
                           slug=collection[1],
                           items=collection[2])
                for collection in collections_list
            ]
            Collection.save(collections)
            self.redirect('../collection/?status=item_saved')
        elif action == 'delete':
            if key_names:
                Collection.delete_by_key_name(key_names)
                self.redirect('../collection/?status=item_deleted')
            else:
                self.redirect('../collection/?status=nothing_selected')
        else:
            # No action specified
            self.redirect('../collection/')