[Kimchi-devel] [PATCH V2 1/7] Add Minimal UI Page for the Sample Plugin
Yu Xin Huo
huoyuxin at linux.vnet.ibm.com
Mon May 19 09:43:51 UTC 2014
On 5/17/2014 3:30 AM, shaohef at linux.vnet.ibm.com wrote:
> From: Zhou Zheng Sheng <zhshzhou at linux.vnet.ibm.com>
>
> Add minimal UI just enough to re-produce issue 342.
>
> https://github.com/kimchi-project/kimchi/issues/342
>
> Signed-off-by: Zhou Zheng Sheng <zhshzhou at linux.vnet.ibm.com>
> Signed-off-by: ShaoHe Feng <shaohef at linux.vnet.ibm.com>
> ---
> plugins/sample/__init__.py | 3 ++-
> plugins/sample/sample.conf | 5 +++++
> plugins/sample/ui/config/tab-ext.xml | 9 +++++----
> plugins/sample/ui/pages/i18n.json.tmpl | 9 +++++++++
> plugins/sample/ui/pages/tab.html.tmpl | 6 ++++++
> 5 files changed, 27 insertions(+), 5 deletions(-)
> create mode 100644 plugins/sample/ui/pages/i18n.json.tmpl
> create mode 100644 plugins/sample/ui/pages/tab.html.tmpl
>
> diff --git a/plugins/sample/__init__.py b/plugins/sample/__init__.py
> index 3183898..2101aed 100644
> --- a/plugins/sample/__init__.py
> +++ b/plugins/sample/__init__.py
> @@ -26,6 +26,7 @@ from cherrypy import expose
>
> from kimchi.config import PluginPaths
> from kimchi.control.base import Collection, Resource
> +from kimchi.root import Root
> from plugins.sample.i18n import messages
> from plugins.sample.model import Model
>
> @@ -33,7 +34,7 @@ from plugins.sample.model import Model
> model = Model()
>
>
> -class Drawings(Resource):
> +class Drawings(Root):
> def __init__(self):
> Resource.__init__(self, model)
> self.description = Description(model)
> diff --git a/plugins/sample/sample.conf b/plugins/sample/sample.conf
> index c4e80f7..78a9f4e 100644
> --- a/plugins/sample/sample.conf
> +++ b/plugins/sample/sample.conf
> @@ -5,3 +5,8 @@ uri = "/plugins/sample"
>
> [/]
> tools.trailing_slash.on = False
> +tools.sessions.on = True
> +tools.sessions.name = 'kimchi'
> +tools.sessions.httponly = True
> +tools.sessions.locking = 'explicit'
> +tools.sessions.storage_type = 'ram'
> diff --git a/plugins/sample/ui/config/tab-ext.xml b/plugins/sample/ui/config/tab-ext.xml
> index 948fa07..b98c126 100644
> --- a/plugins/sample/ui/config/tab-ext.xml
> +++ b/plugins/sample/ui/config/tab-ext.xml
> @@ -1,7 +1,8 @@
> <?xml version="1.0" encoding="utf-8"?>
> -<!--<tabs-ext>
> +<tabs-ext>
> <tab>
> - <title>Test</title>
> - <filePath>plugins/sample/ui/tab.html</filePath>
> + <title>SampleTab</title>
> + <path>plugins/sample/tab.html</path>
> + <nls>plugins/sample/i18n.html</nls>
here, an nls tag is designed for user to specify which file is used for
i18n content.
But go through ' [PATCH V2 5/7] Issue #342: load i18n.html of the plugin'.
In javascript code, the path is hardcoded to be below
/var pluginI18nUrl = 'plugins/{plugin}/i18n.json';
/If it is mandatory for a plugin to put i18n content to a file named i18n.html directly under the plugin folder. then remove that nls tag.
Personally, as a plugin descriptor xml file is provided for a plugin developer to specify configuration of a plugin,
I prefer to leave the nls tag there to give the plugin developer the freedom to put wherever the i18n file to be.
> </tab>
> -</tabs-ext>-->
> \ No newline at end of file
> +</tabs-ext>
> diff --git a/plugins/sample/ui/pages/i18n.json.tmpl b/plugins/sample/ui/pages/i18n.json.tmpl
> new file mode 100644
> index 0000000..a153e2d
> --- /dev/null
> +++ b/plugins/sample/ui/pages/i18n.json.tmpl
> @@ -0,0 +1,9 @@
> +#unicode UTF-8
> +#import gettext
> +#from kimchi.cachebust import href
> +#silent t = gettext.translation($lang.domain, $lang.localedir, languages=$lang.lang)
> +#silent _ = t.gettext
> +#silent _t = t.gettext
> +{
> + "SampleTab": "$_("SampleTab")"
> +}
> diff --git a/plugins/sample/ui/pages/tab.html.tmpl b/plugins/sample/ui/pages/tab.html.tmpl
> new file mode 100644
> index 0000000..49fc4ec
> --- /dev/null
> +++ b/plugins/sample/ui/pages/tab.html.tmpl
> @@ -0,0 +1,6 @@
> +<!DOCTYPE html>
> +<html>
> +<body>
> +Hello, world
> +</body>
> +</html>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ovirt.org/pipermail/kimchi-devel/attachments/20140519/12c5fa44/attachment.html>
More information about the Kimchi-devel
mailing list