intro page for update notifier
This commit is contained in:
parent
9fc75f0d0a
commit
7b8fbd5afe
|
@ -11,6 +11,7 @@ import wcs.root
|
|||
from wcs.admin.menu import *
|
||||
|
||||
from wcs.formdef import FormDef
|
||||
from wcs.categories import Category
|
||||
|
||||
class AdminRootDirectory(wcs.admin.root.RootDirectory):
|
||||
def __init__(self):
|
||||
|
@ -24,11 +25,49 @@ class AdminRootDirectory(wcs.admin.root.RootDirectory):
|
|||
|
||||
wcs.root.RootDirectory.admin = AdminRootDirectory()
|
||||
|
||||
class UpdateOneDirectory(Directory):
|
||||
_q_exports = ['']
|
||||
|
||||
def __init__(self, component):
|
||||
repository_zip = os.path.join(get_publisher().app_dir, 'repository.zip')
|
||||
z = zipfile.ZipFile(file(repository_zip), 'r')
|
||||
data = z.read('formdefs/' + component)
|
||||
self.formdef = cPickle.loads(data)
|
||||
if self.formdef.category_id:
|
||||
data = z.read('categories/%s' % self.formdef.category_id)
|
||||
self.category = cPickle.loads(data)
|
||||
else:
|
||||
self.category = None
|
||||
z.close()
|
||||
|
||||
def _q_index [html] (self):
|
||||
html_top('panel', _('Form - %s') % self.formdef.name)
|
||||
if not FormDef.has_key(self.formdef.id):
|
||||
'<h2>%s</h2>' % _('Importing new form: %s') % self.formdef.name
|
||||
else:
|
||||
'<h2>%s</h2>' % _('Updating form: %s') % self.formdef.name
|
||||
|
||||
if self.category:
|
||||
'<p>'
|
||||
_('Category: ')
|
||||
self.category.name
|
||||
if not Category.has_key(self.category.id):
|
||||
' '
|
||||
_('(new)')
|
||||
'</p>'
|
||||
|
||||
|
||||
|
||||
class UpdateDirectory(Directory):
|
||||
def _q_lookup(self, component):
|
||||
return UpdateOneDirectory(component)
|
||||
|
||||
class PanelDirectory(Directory):
|
||||
_q_exports = ['']
|
||||
_q_exports = ['', 'update']
|
||||
label = N_('Control Panel')
|
||||
|
||||
update = UpdateDirectory()
|
||||
|
||||
def _q_index [html] (self):
|
||||
html_top('panel', _('Control Panel'))
|
||||
get_response().breadcrumb.append(('panel', _('Control Panel')))
|
||||
|
@ -75,7 +114,7 @@ class PanelDirectory(Directory):
|
|||
'<img src="/images/checkmark.png" alt="%s" title="%s" />' % (
|
||||
_('Up to date'), _('Up to date'))
|
||||
elif status == 'new':
|
||||
'<a href="update/%s" title="%s">' % (formdef.id, _('Download new form'))
|
||||
'<a href="update/%s/" title="%s">' % (formdef.id, _('Download new form'))
|
||||
'<img src="/images/download.png" alt="%s"/>' % _('New')
|
||||
'</a>'
|
||||
|
||||
|
|
Reference in New Issue