示例#1
0
 def new_funct(self, *args, **kw):
     user = get_current_user_name()
     if not user:
         sessions.Session()['flash'] = [
             'You must login to use this feature.'
         ]
         return self.redirect(create_login_url(self.request.uri))
     return funct(self, *args, **kw)
示例#2
0
 def get(self):
     sess = sessions.Session()
     if not sess.has_key('user') or not sess['user']:
         return self.redirect(create_login_url(self.request.uri))            
     data = {
         'session' : sess,
         'pages'   : Post.get_pages(),
     }
     return self.response.out.write(template.render('post/post.html',data))
示例#3
0
 def get(self,key):
     user = get_current_user_name()
     if not user:
         return self.redirect(create_login_url(self.request.uri))
     if not is_current_user_admin():
         sessions.Session()['flash'] = ['You must be an admin to delete pages.']
         return self.redirect('/')
        
     # delete the post
     Post.get(db.Key(key)).delete()
     
     sessions.Session()['flash'] = ['News item deleted succesfully.']
     return self.redirect('/news')
示例#4
0
    def post(self):
        user = get_current_user_name()
        if not user:
            return self.redirect(create_login_url(self.request.uri))

        slug = self.request.get('slug')
        action = self.request.get('action')

        messages = []
        if not is_current_user_admin():
            messages.append('Only admins can manage pages')
        if not user:
            messages.append('You need to be logged in to manage pages')
        if not slug:
            messages.append('Please specify which page you would like to change')
        if not action:
            messages.append('Please specify what you would like to do')
        if messages:
            return self.__compose(messages)
            
        # get the existing post
        post = db.GqlQuery('''
            SELECT * FROM Post
            WHERE slug = '%s'
            AND type = 'page'
            LIMIT 1
            ''' % slug)[0]
        if action == 'delete':  
            post.active = False
            messages.append('%s deleted' % slug)
        elif action == 'undelete':
            post.active = True
            messages.append('%s undeleted' % slug)
        elif action == 'hide':
            post.hidden = True
            messages.append('%s hidden' % slug)
        elif action == 'unhide':
            post.hidden = False
            messages.append('%s unhidden' % slug)
        elif action == 'edit':
            return self.redirect('/page/edit/%s' % slug)
        # save the changes
        post.put()
            
        return self.redirect(self.request.uri)        
        
        
            
        
示例#5
0
 def get(self,key):
     user = get_current_user_name()
     if not user:
         return self.redirect(create_login_url(self.request.uri))
        
     # get the existing post
     post = Post.get(key)
     
     data = {
         'session'   : sessions.Session(),
         'pages'     : Post.get_pages(),
         'title'     : post.title,
         'type'      : post.type,
         'key'       : key,
         'content'   : post.content,
     }
     return self.response.out.write(template.render('post/edit.html',data))
示例#6
0
 def get(self,slug):
     user = get_current_user_name()
     if not user:
         return self.redirect(create_login_url(self.request.uri))
     if not is_current_user_admin():
         sessions.Session()['flash'] = ['You must be an admin to delete pages.']
         return self.redirect('/')
        
     # get the existing post
     post = db.GqlQuery('''
         SELECT * FROM Post
         WHERE slug = '%s'
         AND type = 'page'
         LIMIT 1
         ''' % slug)[0]
         
     post.active = False
     post.put()
     sessions.Session()['flash'] = ['Page deleted succesfully.']
     return self.redirect('/')
示例#7
0
 def get(self,slug):
     user = get_current_user_name()
     if not user:
         return self.redirect(create_login_url(self.request.uri))
        
     # get the existing post
     post = db.GqlQuery('''
         SELECT * FROM Post
         WHERE slug = '%s'
         AND type = 'page'
         LIMIT 1
         ''' % (slug))[0]
         
     data = {
         'session'   : sessions.Session(),
         'pages'     : Post.get_pages(),
         'title'     : post.title,
         'type'      : post.type,
         'content'   : post.content,
     }
     return self.response.out.write(template.render('post/edit.html',data))
示例#8
0
 def new_funct(self,*args,**kw):
     user = get_current_user_name()
     if not user:
         sessions.Session()['flash'] = ['You must login to use this feature.']
         return self.redirect(create_login_url(self.request.uri))
     return funct(self,*args,**kw)