Changeset - 8c0a57a4b89b
[Not reviewed]
beta
0 1 0
Marcin Kuzminski - 15 years ago 2011-03-27 00:23:44
marcin@python-works.com
Journal Should not return 500 errors on failure, rather better is to return bad request error
1 file changed with 4 insertions and 4 deletions:
0 comments (0 inline, 0 general)
rhodecode/controllers/journal.py
Show inline comments
 
@@ -22,25 +22,25 @@
 
# 
 
# You should have received a copy of the GNU General Public License
 
# along with this program; if not, write to the Free Software
 
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
 
# MA  02110-1301, USA.
 
import logging
 

	
 
from sqlalchemy import or_
 
from sqlalchemy.orm import joinedload, make_transient
 
from webhelpers.paginate import Page
 
from itertools import groupby
 

	
 
from paste.httpexceptions import HTTPInternalServerError
 
from paste.httpexceptions import HTTPBadRequest
 
from pylons import request, tmpl_context as c, response, url
 
from pylons.i18n.translation import _
 
from webhelpers.feedgenerator import Atom1Feed, Rss201rev2Feed
 

	
 
import rhodecode.lib.helpers as h
 
from rhodecode.lib.auth import LoginRequired, NotAnonymous
 
from rhodecode.lib.base import BaseController, render
 
from rhodecode.model.db import UserLog, UserFollowing
 

	
 
log = logging.getLogger(__name__)
 

	
 
class JournalController(BaseController):
 
@@ -123,38 +123,38 @@ class JournalController(BaseController):
 
    def toggle_following(self):
 
        cur_token = request.POST.get('auth_token')
 
        token = h.get_token()
 
        if cur_token == token:
 

	
 
            user_id = request.POST.get('follows_user_id')
 
            if user_id:
 
                try:
 
                    self.scm_model.toggle_following_user(user_id,
 
                                                    self.rhodecode_user.user_id)
 
                    return 'ok'
 
                except:
 
                    raise HTTPInternalServerError()
 
                    raise HTTPBadRequest()
 

	
 
            repo_id = request.POST.get('follows_repo_id')
 
            if repo_id:
 
                try:
 
                    self.scm_model.toggle_following_repo(repo_id,
 
                                                    self.rhodecode_user.user_id)
 
                    return 'ok'
 
                except:
 
                    raise HTTPInternalServerError()
 
                    raise HTTPBadRequest()
 

	
 

	
 
        log.debug('token mismatch %s vs %s', cur_token, token)
 
        raise HTTPInternalServerError()
 
        raise HTTPBadRequest()
 

	
 

	
 

	
 
    @LoginRequired()
 
    def public_journal(self):
 
        # Return a rendered template
 
        p = int(request.params.get('page', 1))
 

	
 
        c.following = self.sa.query(UserFollowing)\
 
            .filter(UserFollowing.user_id == self.rhodecode_user.user_id)\
 
            .options(joinedload(UserFollowing.follows_repository))\
 
            .all()
0 comments (0 inline, 0 general)