def tutorialbin_rss_view(context, request): tutorialbin_url = resource_url(context, request) tutorials = get_tutorials(context, request, sys.maxint) if tutorials: last_date=tutorials[0]['date'] else: last_date=None for tutorial in tutorials: tutorial['text'] = nl_to_br(tutorial['text']) response = dict( tutorials = tutorials, last_date = last_date, tutorialbin_url = tutorialbin_url, ) request.response_content_type = 'application/rss+xml' return response
def tutorial_view(context, request): text = context.text or u'' try: if context.language: l = lexers.get_lexer_by_name(context.language) else: l = lexers.guess_lexer(context.code) except util.ClassNotFound: # couldn't guess lexer l = lexers.TextLexer() formatted_tutorial = highlight(context.code, l, formatter) tutorials = get_tutorials(context, request, 10) can_edit = has_permission('edit', context, request) attachment_url = None if context.attachment_name is not None: attachment_url = request.url + '/download_attachment' return dict( api = API(context, request), author = context.author_name, url = context.url, date = context.date.strftime('%x at %X'), style_defs = style_defs, lexer_name = l.name, code = formatted_tutorial, text = text, tutorials = tutorials, message = None, title = context.title, can_edit = can_edit, edit_url = resource_url(context, request, 'edit'), delete_url = resource_url(context, request, 'delete'), tutorialbin_url = resource_url(context.__parent__, request), attachment_url = attachment_url, attachment_mimetype = context.attachment_mimetype, attachment_name = context.attachment_name, )
def tutorialbin_view(context,request): tutorialbin_url = resource_url(context, request) tutorials = get_tutorials(context, request, sys.maxint) if tutorials: last_date = tutorials[0]['date'] latest_obj = context[tutorials[0]['name']] try: if latest_obj.language: l = lexers.get_lexer_by_name(latest_obj.language) else: l = lexers.guess_lexer(latest_obj.code) except util.ClassNotFound: l = lexers.TextLexer() formatted_code= highlight(latest_obj.code, l, formatter) latest = {'author_name':latest_obj.author_name, 'date':latest_obj.date, 'title':latest_obj.title, 'text':latest_obj.text, 'formatted_code':formatted_code, 'url':latest_obj.url} else: last_date = None latest = None user = authenticated_userid(request) can_manage = has_permission('manage', context, request) return dict( api = API(context, request), tutorials = tutorials, style_defs = style_defs, last_date = last_date, latest = latest, message = None, tutorialbin_url = tutorialbin_url, user = user, can_manage = can_manage, manage_url = resource_url(context, request, 'manage'), )
def tutorialbin_manage_view(context, request): params = request.params message = params.get('message', u'') if params.has_key('form.submitted'): form = marshal(request.environ, request.body_file) checkboxes = form.get('delete', []) for checkbox in checkboxes: del context[checkbox] message = '%s tutorials deleted' % len(checkboxes) url = resource_url(context, request, 'manage', query={'message':message}) response = HTTPFound(location=url) return response tutorials = get_tutorials(context, request, sys.maxint) tutorialbin_url = resource_url(context, request) return dict( api = API(context, request), message = message, tutorials = tutorials, tutorialbin_url = tutorialbin_url, )
def index_view(context, request): tutorials = get_tutorials(context['tutorialbin'], request, 5) return {'api' :API(context, request), 'tutorials':tutorials}
if hasattr(attachment, 'filename'): file_name = attachment.filename mime_type = attachment.type stream = attachment.file pobj = Tutorial(title, user, text, url, code, language, stream, file_name, mime_type) acl = context.__acl__[:] acl.extend([(Allow, user, 'edit'), (Allow, 'admin', 'edit')]) pobj.__acl__ = acl tutorialid = context.add_item(pobj) response = HTTPFound(location = '%s%s' % (tutorialbin_url, tutorialid)) response.set_cookie(COOKIE_LANGUAGE, language) return response tutorials = get_tutorials(context, request, 10) return dict( api = API(context, request), url = url, title = title, text = text, code = code, lexers = lexer_info, message = message, tutorials = tutorials, tutorialbin_url = tutorialbin_url, user = user, can_manage = can_manage, pagetitle = 'Add a Tutorial', form_url = resource_url(context, request, 'add'),