def reference_outline_view(context, request): # Look for moveUp or moveDown in QUERY_STRING, telling us to # reorder something status_message = None subpath = request.params.get('subpath') backto = { 'href': resource_url(context.__parent__, request), 'title': context.__parent__.title, } user_can_edit = False actions = [] if has_permission('create', context, request): addables = get_folder_addables(context, request) if addables is not None: actions.extend(addables()) if has_permission('edit', context, request): user_can_edit = True actions.append(('Edit', 'edit.html')) if subpath: direction = request.params['direction'] status_message = move_subpath(context, subpath, direction) if has_permission('delete', context, request): actions.append(('Delete', 'delete.html')) if has_permission('administer', context, request): actions.append(('Advanced', 'advanced.html')) page_title = context.title api = TemplateAPI(context, request, page_title) # Get a layout layout_provider = get_layout_provider(context, request) layout = layout_provider() # provide client data for rendering current tags in the tagbox client_json_data = dict( tagbox=get_tags_client_data(context, request), ) previous, next = get_previous_next(context, request) api.status_message = status_message return render_to_response( 'templates/show_referencemanual.pt', dict(api=api, actions=actions, user_can_edit=user_can_edit, head_data=convert_to_script(client_json_data), tree=getTree(context, request, api), backto=backto, layout=layout, previous_entry=previous, next_entry=next), request=request, )
def reference_outline_view(context, request): # Look for moveUp or moveDown in QUERY_STRING, telling us to # reorder something status_message = None subpath = request.params.get('subpath') backto = { 'href': resource_url(context.__parent__, request), 'title': context.__parent__.title, } user_can_edit = False actions = [] if has_permission('create', context, request): addables = get_folder_addables(context, request) if addables is not None: actions.extend(addables()) if has_permission('edit', context, request): user_can_edit = True actions.append(('Edit', 'edit.html')) if subpath: direction = request.params['direction'] status_message = move_subpath(context, subpath, direction) if has_permission('delete', context, request): actions.append(('Delete', 'delete.html')) if has_permission('administer', context, request): actions.append(('Advanced', 'advanced.html')) page_title = context.title api = TemplateAPI(context, request, page_title) # Get a layout layout_provider = get_layout_provider(context, request) layout = layout_provider() # provide client data for rendering current tags in the tagbox client_json_data = dict(tagbox=get_tags_client_data(context, request), ) previous, next = get_previous_next(context, request) api.status_message = status_message return render_to_response( 'templates/show_referencemanual.pt', dict(api=api, actions=actions, user_can_edit=user_can_edit, head_data=convert_to_script(client_json_data), tree=getTree(context, request, api), backto=backto, layout=layout, previous_entry=previous, next_entry=next), request=request, )
def reference_viewall_view(context, request): backto = { 'href': resource_url(context.__parent__, request), 'title': context.__parent__.title, } actions = [] if has_permission('create', context, request): addables = get_folder_addables(context, request) if addables is not None: actions.extend(addables()) if has_permission('edit', context, request): actions.append(('Edit', 'edit.html')) if has_permission('delete', context, request): actions.append(('Delete', 'delete.html')) if has_permission('administer', context, request): actions.append(('Advanced', 'advanced.html')) page_title = context.title api = TemplateAPI(context, request, page_title) # Get a layout layout_provider = get_layout_provider(context, request) old_layout = layout_provider('intranet') # provide client data for rendering current tags in the tagbox client_json_data = dict( tagbox = get_tags_client_data(context, request), ) previous, next = get_previous_next(context, request, 'view_all.html') intranet = find_intranet(context) if intranet is not None: ux2_layout = request.layout_manager.layout ux2_layout.section_style = "none" return render_to_response( 'templates/viewall_referencemanual.pt', dict(api=api, actions=actions, head_data=convert_to_script(client_json_data), tree=getTree(context, request, api), backto=backto, old_layout=old_layout, previous_entry=previous, next_entry=next), request=request, )
def show_referencesection_view(context, request): backto = { 'href': model_url(context.__parent__, request), 'title': context.__parent__.title, } actions = [] if has_permission('create', context, request): addables = get_folder_addables(context, request) if addables is not None: actions.extend(addables()) actions.append(('Edit', 'edit.html')) if has_permission('delete', context, request): actions.append(('Delete', 'delete.html')) page_title = context.title api = TemplateAPI(context, request, page_title) # Get a layout layout_provider = get_layout_provider(context, request) layout = layout_provider('intranet') previous, next = get_previous_next(context, request) # provide client data for rendering current tags in the tagbox client_json_data = dict( tagbox = get_tags_client_data(context, request), ) return render_template_to_response( 'templates/show_referencesection.pt', api=api, actions=actions, entries=_get_ordered_listing(context, request), head_data=convert_to_script(client_json_data), backto=backto, previous=previous, next=next, layout=layout, )
def show_folder_view(context, request): page_title = context.title api = TemplateAPI(context, request, page_title) # Now get the data that goes with this # Actions backto = False actions = [] if has_permission('create', context, request): # Allow "policy" to override list of addables in a particular context addables = get_folder_addables(context, request) if addables is not None: actions.extend(addables()) if not (ICommunityRootFolder.providedBy(context) or IIntranetRootFolder.providedBy(context)): # Root folders for the tools aren't editable or deletable if has_permission('create', context, request): actions.append(('Edit', 'edit.html')) actions.append(('Delete', 'delete.html')) in_intranets = find_interface(context, IIntranets) is not None if has_permission('administer', context, request) and in_intranets: # admins see an Advanced action that puts markers on a # folder. actions.append( ('Advanced','advanced.html'), ) backto = { 'href': model_url(context.__parent__, request), 'title': context.__parent__.title, } # Only provide atom feed links on root folder. if ICommunityRootFolder.providedBy(context): feed_url = model_url(context, request, "atom.xml") else: feed_url = None # Folder and tag data for Ajax client_json_data = dict( filegrid = get_filegrid_client_data(context, request, start = 0, limit = 10, sort_on = 'modified_date', reverse = True, ), tagbox = get_tags_client_data(context, request), ) # Get a layout layout_provider = get_layout_provider(context, request) layout = layout_provider('community') return render_template_to_response( 'templates/show_folder.pt', api=api, actions=actions, head_data=convert_to_script(client_json_data), backto=backto, layout=layout, feed_url=feed_url, )
class CustomFolderView(object): _past_events = None past_events_url = None future_events_url = None def __init__(self, context, request): self.context = context self.request = request searchterm = request.params.get('searchterm', None) if searchterm == '': searchterm = None self.searchterm = searchterm year = request.params.get('year', None) if year == 'all': year = None self.year = year month = request.params.get('month', None) if month == 'all': month = None self.month = month def __call__(self): """ Folder contents for the INetworkEvents marker""" context = self.context request = self.request page_title = context.title api = TemplateAPI(context, request, page_title) # Data for the filter bar, get the list of possible years and months this_year = datetime.datetime.now().year fb_years = [str(i) for i in range(2007, this_year+1)] fb_months = [('1', 'January'), ('2', 'February'), ('3', 'March'), ('4', 'April'), ('5', 'May'), ('6', 'June'), ('7', 'July'), ('8', 'August'), ('9', 'September'), ('10', 'October'), ('11', 'November'), ('12', 'December')] # Flatten the search results into ZPT data try: batch = self._get_batch() except ParseError, e: api.set_error_message('Error: %s' % e) batch = {'entries': (), 'batching_required': False} entries = [] for entry in batch["entries"]: info = {} info['url'] = resource_url(entry, request) info['title'] = entry.title info['date'] = self._get_date(entry) entries.append(info) # Actions and backlink actions = [] if has_permission('create', context, request): addables = get_folder_addables(context, request) if addables is not None: actions.extend(addables()) if has_permission('edit', context, request): actions.append(('Edit', 'edit.html')) if has_permission('delete', context.__parent__, request): actions.append(('Delete', 'delete.html')) if has_permission('administer', context, request): # admins see an Advanced action that puts markers on a folder. actions.append(('Advanced', 'advanced.html')) back_target, extra_path = get_user_home(context, request) backto = { 'href': resource_url(back_target, request, *extra_path), 'title': getattr(back_target, "title", "Home") } client_json_data = dict( tagbox = get_tags_client_data(context, request), ) # Get a layout layout_provider = get_layout_provider(context, request) layout = layout_provider('community') intranet = find_intranet(self.context) intranets = find_intranets(self.context) community = find_community(self.context) if intranet is not None or community == intranets: ux2_layout = self.request.layout_manager.layout ux2_layout.section_style = "none" return dict( api=api, actions=actions, head_data=convert_to_script(client_json_data), backto=backto, old_layout=layout, entries=entries, fb_years=fb_years, fb_months=fb_months, searchterm=self.searchterm, selected_year=self.year, selected_month=self.month, batch_info=batch, past_events_url=self.past_events_url, future_events_url=self.future_events_url, )
def show_referencemanual_view(context, request): # Look for moveUp or moveDown in QUERY_STRING, telling us to # reorder something status_message = None sectionUp = request.params.get('sectionUp', False) if sectionUp: section = context.get(sectionUp) context.ordering.moveUp(sectionUp) status_message = 'Moved section <em>%s</em> up' % section.title else: sectionDown = request.params.get('sectionDown', False) if sectionDown: section = context.get(sectionDown) context.ordering.moveDown(sectionDown) status_message = 'Moved section <em>%s</em> down' % section.title else: itemUp = request.params.get('itemUp', False) if itemUp: section = context.get(request.params.get('section')) section.ordering.moveUp(itemUp) title = section.get(itemUp).title status_message = 'Moved item <em>%s</em> up' % title else: itemDown = request.params.get('itemDown', False) if itemDown: section = context.get(request.params.get('section')) section.ordering.moveDown(itemDown) title = section.get(itemDown).title status_message = 'Moved item <em>%s</em> down' % title backto = { 'href': model_url(context.__parent__, request), 'title': context.__parent__.title, } actions = [] if has_permission('create', context, request): addables = get_folder_addables(context, request) if addables is not None: actions.extend(addables()) actions.append(('Edit', 'edit.html')) if has_permission('delete', context, request): actions.append(('Delete', 'delete.html')) page_title = context.title api = TemplateAPI(context, request, page_title) # Get a layout layout_provider = get_layout_provider(context, request) layout = layout_provider('intranet') # provide client data for rendering current tags in the tagbox client_json_data = dict( tagbox = get_tags_client_data(context, request), ) api.status_message = status_message return render_template_to_response( 'templates/show_referencemanual.pt', api=api, actions=actions, head_data=convert_to_script(client_json_data), sections=_get_toc(context, api.here_url), backto=backto, layout=layout, )