@@ 288-311 (lines=24) @@ | ||
285 | } |
|
286 | ||
287 | ||
288 | @view_config(route_name='user_item_request_new', |
|
289 | request_method='POST', |
|
290 | permission='user') |
|
291 | def item_request_new(request): |
|
292 | try: |
|
293 | request_text = request.POST['request'] |
|
294 | vendor_id = request.POST['vendor'] |
|
295 | vendor = Vendor.from_id(vendor_id) |
|
296 | vendor_url = request.POST['vendor-url'] |
|
297 | if len(request_text) < 5: |
|
298 | raise ValueError() |
|
299 | ||
300 | datalayer.new_request(request.user, request_text, vendor, vendor_url) |
|
301 | ||
302 | request.session.flash('Request added successfully', 'success') |
|
303 | return HTTPFound(location=request.route_url('user_item_request')) |
|
304 | ||
305 | except ValueError: |
|
306 | request.session.flash('Please include a detailed description of the item.', 'error') |
|
307 | return HTTPFound(location=request.route_url('user_item_request')) |
|
308 | ||
309 | except: |
|
310 | request.session.flash('Error adding request.', 'error') |
|
311 | return HTTPFound(location=request.route_url('user_item_request')) |
|
312 | ||
313 | ||
314 | @view_config(route_name='user_item_request_post_new', |
|
@@ 314-333 (lines=20) @@ | ||
311 | return HTTPFound(location=request.route_url('user_item_request')) |
|
312 | ||
313 | ||
314 | @view_config(route_name='user_item_request_post_new', |
|
315 | request_method='POST', |
|
316 | permission='user') |
|
317 | def item_request_post_new(request): |
|
318 | try: |
|
319 | item_request = Request.from_id(request.matchdict['id']) |
|
320 | post_text = request.POST['post'] |
|
321 | if post_text.strip() == '': |
|
322 | request.session.flash('Empty comment not saved.', 'error') |
|
323 | return HTTPFound(location=request.route_url('user_item_request')) |
|
324 | post = RequestPost(item_request, request.user, post_text) |
|
325 | DBSession.add(post) |
|
326 | DBSession.flush() |
|
327 | except Exception as e: |
|
328 | if request.debug: |
|
329 | raise(e) |
|
330 | else: |
|
331 | print(e) |
|
332 | request.session.flash('Error posting comment.', 'error') |
|
333 | return HTTPFound(location=request.route_url('user_item_request')) |
|
334 | ||
335 | ||
336 |