# HG changeset patch # User Todd Larsen # Date 1222838129 0 # Node ID a019afb4b80f1e9fb551442726247bae0e36006f # Parent 42733f531ebf70e01dec2e2829c4a059c0ddc0e4 Implement a Developer list view of all Documents. Patch by: Todd Larsen Review by: to-be-reviewed diff -r 42733f531ebf -r a019afb4b80f app/soc/templates/soc/site/docs/list/all.html --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/app/soc/templates/soc/site/docs/list/all.html Wed Oct 01 05:15:29 2008 +0000 @@ -0,0 +1,31 @@ +{% extends "soc/base.html" %} +{% comment %} +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +{% endcomment %} +{% load forms_helpers %} +{% block page_title %} +Site: Documents List +{% endblock %} +{% block header_title %} +Documents List +{% endblock %} +{% block body %} +

+

+{% block instructions %} +List of Documents in Google Open Source Programs. +{% endblock %} +

+{% include list_main %} +

+{% endblock %} \ No newline at end of file diff -r 42733f531ebf -r a019afb4b80f app/soc/templates/soc/site/docs/list/docs_heading.html --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/app/soc/templates/soc/site/docs/list/docs_heading.html Wed Oct 01 05:15:29 2008 +0000 @@ -0,0 +1,8 @@ + + Path + Title + Partial Path + Linkname + Created + Modified + diff -r 42733f531ebf -r a019afb4b80f app/soc/templates/soc/site/docs/list/docs_row.html --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/app/soc/templates/soc/site/docs/list/docs_row.html Wed Oct 01 05:15:29 2008 +0000 @@ -0,0 +1,14 @@ + + +
+ {{ data_element.partial_path}}/{{ data_element.link_name }} +
+ +
{{ data_element.title }}
+
{{ data_element.partial_path }}
+
{{ data_element.link_name }}
+
{{ data_element.created }}
+
{{ data_element.modified }}
+ diff -r 42733f531ebf -r a019afb4b80f app/soc/views/site/docs/list.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/app/soc/views/site/docs/list.py Wed Oct 01 05:15:29 2008 +0000 @@ -0,0 +1,72 @@ +#!/usr/bin/python2.5 +# +# Copyright 2008 the Melange authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Developer views for listing Documents. +""" + +__authors__ = [ + '"Todd Larsen" ', + ] + + +from soc.logic import document +from soc.views import simple +from soc.views.helpers import list_helpers +from soc.views.helpers import response_helpers + +import soc.models.document + + +DEF_SITE_DOCS_LIST_ALL_TMPL = 'soc/site/docs/list/all.html' + +def all(request, template=DEF_SITE_DOCS_LIST_ALL_TMPL): + """Show a list of all Documents (limit rows per page). + + Args: + request: the standard Django HTTP request object + template: the "sibling" template (or a search list of such templates) + from which to construct an alternate template name (or names) + + Returns: + A subclass of django.http.HttpResponse which either contains the form to + be filled out, or a redirect to the correct view in the interface. + """ + # create default template context for use with any templates + context = response_helpers.getUniversalContext(request) + + alt_response = simple.getAltResponseIfNotDeveloper(request, + context=context) + if alt_response: + return alt_response + + offset = request.GET.get('offset') + limit = request.GET.get('limit') + + offset, limit = list_helpers.getListParemeters(offset=offset, limit=limit) + + docs = document.getWorksForOffsetAndLimit( + offset=offset, limit=limit, cls=soc.models.document.Document) + + list_templates = {'list_main': 'soc/list/list_main.html', + 'list_pagination': 'soc/list/list_pagination.html', + 'list_row': 'soc/site/docs/list/docs_row.html', + 'list_heading': 'soc/site/docs/list/docs_heading.html'} + + context = list_helpers.setList( + request, context, docs, + offset=offset, limit=limit, list_templates=list_templates) + + return response_helpers.respond(request, template, context)