~replaceafill/schooltool/schooltool_grokking_basicperson

« back to all changes in this revision

Viewing changes to src/schooltool/basicperson/browser/xml.py

  • Committer: Douglas Cerna
  • Date: 2009-02-28 13:06:03 UTC
  • Revision ID: douglascerna@yahoo.com-20090228130603-vfog8or341cr33q3
Removed <page ...> directives from the schooltool.basicperson.browser package. I guess this package has been grokked :)

Show diffs side-by-side

added added

removed removed

Lines of Context:
27
27
from zope.publisher.browser import BrowserView
28
28
from zope.publisher.interfaces.browser import IBrowserRequest
29
29
import grokcore.component
 
30
import grokcore.view
 
31
import grokcore.viewlet
 
32
import grokcore.security
30
33
 
31
34
from schooltool.course.interfaces import ISection
32
35
from schooltool.basicperson.browser.interfaces import IPersonDataExporterPlugin
33
36
from schooltool.basicperson.browser.interfaces import IExtraDataExporterPlugin
 
37
from schooltool.person.interfaces import IPersonContainer, IPerson
 
38
from schooltool.skin.skin import IActionMenuManager
 
39
from schooltool.skin.skin import NavigationViewlet
 
40
from schooltool.common import SchoolToolMessage as _
 
41
 
 
42
 
 
43
grokcore.view.templatedir("templates")
34
44
 
35
45
 
36
46
class PersonGroupDataExporterPlugin(BrowserView,
79
89
        return self.template()
80
90
 
81
91
 
82
 
class PersonContainerXMLExportView(BrowserView):
83
 
 
84
 
    template =  ViewPageTemplateFile("templates/persons_xml_export.pt")
 
92
class PersonContainerXMLExportViewBase(BrowserView):
85
93
 
86
94
    def persons(self):
87
95
        persons = []
100
108
            IExtraDataExporterPlugin)
101
109
        return [plugin for id, plugin in sorted(plugins)]
102
110
 
103
 
    def __call__(self):
104
 
        return self.template()
 
111
 
 
112
class PersonContainerXMLExportView(PersonContainerXMLExportViewBase,
 
113
                                   grokcore.view.View):
 
114
 
 
115
    grokcore.component.context(IPersonContainer)
 
116
    grokcore.component.name("person_export.xml")
 
117
    grokcore.security.require("schooltool.edit")
 
118
    grokcore.view.template("persons_xml_export")
105
119
 
106
120
 
107
121
class PersonXMLExportView(PersonContainerXMLExportView):
108
122
 
 
123
    grokcore.component.context(IPerson)
 
124
 
109
125
    def persons(self):
110
126
        return [self.context]
 
127
 
 
128
 
 
129
class PersonContainerXMLExportViewActionViewlet(NavigationViewlet,
 
130
                                                grokcore.viewlet.Viewlet):
 
131
 
 
132
    grokcore.viewlet.context(IPersonContainer)
 
133
    grokcore.viewlet.name("personcontainerxmlexport")
 
134
    grokcore.viewlet.viewletmanager(IActionMenuManager)
 
135
    grokcore.viewlet.require("schooltool.edit")
 
136
    grokcore.viewlet.template("actionsViewlet")
 
137
 
 
138
    link = "person_export.xml"
 
139
    title = _(u"Export Persons as XML")
 
140
    order = 10
 
141
 
 
142
 
 
143
class PersonXMLExportViewActionViewlet(NavigationViewlet,
 
144
                                       grokcore.viewlet.Viewlet):
 
145
 
 
146
    grokcore.viewlet.context(IPerson)
 
147
    grokcore.viewlet.name("personxmlexport")
 
148
    grokcore.viewlet.viewletmanager(IActionMenuManager)
 
149
    grokcore.viewlet.require("schooltool.edit")
 
150
    grokcore.viewlet.template("actionsViewlet")
 
151
 
 
152
    link = "person_export.xml"
 
153
    title = _(u"Export")
 
154
    order = 10