Exemple #1
0
 def create_category( self, trans, **kwd ):
     params = util.Params( kwd )
     message = util.restore_text( params.get( 'message', ''  ) )
     status = params.get( 'status', 'done' )
     name = util.restore_text( params.get( 'name', '' ) ).strip()
     description = util.restore_text( params.get( 'description', '' ) ).strip()
     if params.get( 'create_category_button', False ):
         if not name or not description:
             message = 'Enter a valid name and a description'
             status = 'error'
         elif suc.get_category_by_name( trans, name ):
             message = 'A category with that name already exists'
             status = 'error'
         else:
             # Create the category
             category = trans.app.model.Category( name=name, description=description )
             trans.sa_session.add( category )
             trans.sa_session.flush()
             message = "Category '%s' has been created" % category.name
             status = 'done'
             trans.response.send_redirect( web.url_for( controller='admin',
                                                        action='manage_categories',
                                                        message=message,
                                                        status=status ) )
     return trans.fill_template( '/webapps/community/category/create_category.mako',
                                 name=name,
                                 description=description,
                                 message=message,
                                 status=status )
Exemple #2
0
 def create_category(self, trans, **kwd):
     params = util.Params(kwd)
     message = util.restore_text(params.get('message', ''))
     status = params.get('status', 'done')
     name = util.restore_text(params.get('name', '')).strip()
     description = util.restore_text(params.get('description', '')).strip()
     if params.get('create_category_button', False):
         if not name or not description:
             message = 'Enter a valid name and a description'
             status = 'error'
         elif suc.get_category_by_name(trans, name):
             message = 'A category with that name already exists'
             status = 'error'
         else:
             # Create the category
             category = trans.app.model.Category(name=name,
                                                 description=description)
             trans.sa_session.add(category)
             trans.sa_session.flush()
             message = "Category '%s' has been created" % category.name
             status = 'done'
             trans.response.send_redirect(
                 web.url_for(controller='admin',
                             action='manage_categories',
                             message=message,
                             status=status))
     return trans.fill_template(
         '/webapps/community/category/create_category.mako',
         name=name,
         description=description,
         message=message,
         status=status)
Exemple #3
0
 def edit_category(self, trans, **kwd):
     params = util.Params(kwd)
     message = util.restore_text(params.get('message', ''))
     status = params.get('status', 'done')
     id = params.get('id', None)
     if not id:
         message = "No category ids received for editing"
         trans.response.send_redirect(
             web.url_for(controller='admin',
                         action='manage_categories',
                         message=message,
                         status='error'))
     category = suc.get_category(trans, id)
     if params.get('edit_category_button', False):
         new_name = util.restore_text(params.get('name', '')).strip()
         new_description = util.restore_text(params.get('description',
                                                        '')).strip()
         if category.name != new_name or category.description != new_description:
             if not new_name:
                 message = 'Enter a valid name'
                 status = 'error'
             elif category.name != new_name and suc.get_category_by_name(
                     trans, name):
                 message = 'A category with that name already exists'
                 status = 'error'
             else:
                 category.name = new_name
                 category.description = new_description
                 trans.sa_session.add(category)
                 trans.sa_session.flush()
                 message = "The information has been saved for category '%s'" % (
                     category.name)
                 status = 'done'
                 return trans.response.send_redirect(
                     web.url_for(controller='admin',
                                 action='manage_categories',
                                 message=message,
                                 status=status))
     return trans.fill_template(
         '/webapps/community/category/edit_category.mako',
         category=category,
         message=message,
         status=status)
Exemple #4
0
 def edit_category( self, trans, **kwd ):
     params = util.Params( kwd )
     message = util.restore_text( params.get( 'message', ''  ) )
     status = params.get( 'status', 'done' )
     id = params.get( 'id', None )
     if not id:
         message = "No category ids received for editing"
         trans.response.send_redirect( web.url_for( controller='admin',
                                                    action='manage_categories',
                                                    message=message,
                                                    status='error' ) )
     category = suc.get_category( trans, id )
     if params.get( 'edit_category_button', False ):
         new_name = util.restore_text( params.get( 'name', '' ) ).strip()
         new_description = util.restore_text( params.get( 'description', '' ) ).strip()
         if category.name != new_name or category.description != new_description:
             if not new_name:
                 message = 'Enter a valid name'
                 status = 'error'
             elif category.name != new_name and suc.get_category_by_name( trans, name ):
                 message = 'A category with that name already exists'
                 status = 'error'
             else:
                 category.name = new_name
                 category.description = new_description
                 trans.sa_session.add( category )
                 trans.sa_session.flush()
                 message = "The information has been saved for category '%s'" % ( category.name )
                 status = 'done'
                 return trans.response.send_redirect( web.url_for( controller='admin',
                                                                   action='manage_categories',
                                                                   message=message,
                                                                   status=status ) )
     return trans.fill_template( '/webapps/community/category/edit_category.mako',
                                 category=category,
                                 message=message,
                                 status=status )