[Kimchi-devel] [PATCH 1/1] Enabling help page for wok base. This commit supports en_US only.
Aline Manera
alinefm at linux.vnet.ibm.com
Thu Aug 6 19:06:15 UTC 2015
On 06/08/2015 16:01, Aline Manera wrote:
>
>
> On 06/08/2015 14:42, Harshal Patil wrote:
>> If you are looking at wok just as a web framework which developers
>> can use to write plugins for, then it doesn't need to have any user
>> facing webpage at all. Developers would need to interact with wok's
>> API anyway.
>> Now you can always create a marketplace for the wok plugins where
>> users can download and install plugins on them on the fly and that
>> could be the only page wok can serve on it's own without any plugins.
>> ;-)
>
> Yeap!! I have thought about it too.
>
> My idea (for future, of course) is adding to wok a "Configuration tab"
> so user can configure wok settings through UI.
> For example, which authentication method to use, which plugins to
> install/uninstall/enable/disable, authorization settings and any other
> setting related to the web sever config.
>
> It is the same approach we have on Jenkins.
>
>> But if that's not on the table then wok could only display basic API
>> usage for its plugin developers on default index page, probably a
>> button to load bare minimum sample plugin as a proof of concept.
>
> Yeap! I think we should go on that way by now and on future we can
> implement the "Configuration tab" for wok.
"by now" I mean, let's release the first wok version with Kimchi 1.6 (on
Dec 2015) and then we can target the "Configuration tab" to the next wok
release (probably on March 2016).
>
> Sounds a good plan for you?
>
>> ----- Original message -----
>> From: Aline Manera <alinefm at linux.vnet.ibm.com>
>> Sent by: kimchi-devel-bounces at ovirt.org
>> To: sureshab at linux.vnet.ibm.com, kimchi-devel at ovirt.org
>> Cc:
>> Subject: Re: [Kimchi-devel] [PATCH 1/1] Enabling help page for
>> wok base. This commit supports en_US only.
>> Date: Thu, Aug 6, 2015 8:02 PM
>> I don't think we need a help page for Wok framework.
>>
>> We have a lot to discuss on that, but the initial idea was to load a
>> simple page when running wok without any plugin.
>> That page would describe the wok proposal - as a web server framework
>> based on plugins.
>>
>> I think it is hard to us to point the user to any specific plugin
>> like
>> kimchi or ginger, as anyone can develop a wok plugin and host
>> anywhere.
>>
>> I am more for a generic simple page and no help.
>>
>> More (and different) thoughts on it are more than welcome. =)
>>
>> On 04/08/2015 10:04, sureshab at linux.vnet.ibm.com wrote:
>> > From: Suresh Babu Angadi <sureshab at linux.vnet.ibm.com>
>> >
>> > Signed-off-by: Suresh Babu Angadi <sureshab at linux.vnet.ibm.com>
>> > ---
>> > configure.ac | 2 +
>> > src/wok/config.py.in | 5 +
>> > ui/js/src/wok.main.js | 9 +-
>> > ui/pages/Makefile.am | 2 +-
>> > ui/pages/help/Makefile.am | 34 +++++++
>> > ui/pages/help/dita-help.xsl | 26 +++++
>> > ui/pages/help/en_US/Makefile.am | 23 +++++
>> > ui/pages/help/en_US/wokhelp.dita | 27 +++++
>> > ui/pages/help/wok.css | 208
>> +++++++++++++++++++++++++++++++++++++++
>> > 9 files changed, 333 insertions(+), 3 deletions(-)
>> > create mode 100644 ui/pages/help/Makefile.am
>> > create mode 100644 ui/pages/help/dita-help.xsl
>> > create mode 100644 ui/pages/help/en_US/Makefile.am
>> > create mode 100644 ui/pages/help/en_US/wokhelp.dita
>> > create mode 100644 ui/pages/help/wok.css
>> >
>> > diff --git a/configure.ac b/configure.ac
>> > index 47c2e6c..ee4d793 100644
>> > --- a/configure.ac
>> > +++ b/configure.ac
>> > @@ -115,6 +115,8 @@ AC_CONFIG_FILES([
>> > ui/libs/themes/base/Makefile
>> > ui/libs/themes/base/images/Makefile
>> > ui/pages/Makefile
>> > + ui/pages/help/Makefile
>> > + ui/pages/help/en_US/Makefile
>> > ui/pages/websockify/Makefile
>> > contrib/Makefile
>> > contrib/DEBIAN/Makefile
>> > diff --git a/src/wok/config.py.in b/src/wok/config.py.in
>> > index 5ffa936..c158a75 100644
>> > --- a/src/wok/config.py.in
>> > +++ b/src/wok/config.py.in
>> > @@ -142,6 +142,11 @@ class WokConfig(dict):
>> > '/wok-ui.html': {
>> > 'tools.wokauth.on': True
>> > },
>> > + '/help': {
>> > + 'tools.staticdir.on': True,
>> > + 'tools.staticdir.dir': '%s/ui/pages/help' %
>> paths.prefix,
>> > + 'tools.nocache.on': True
>> > + }
>> > }
>> >
>> > def __init__(self):
>> > diff --git a/ui/js/src/wok.main.js b/ui/js/src/wok.main.js
>> > index f4c9940..3dd76b8 100644
>> > --- a/ui/js/src/wok.main.js
>> > +++ b/ui/js/src/wok.main.js
>> > @@ -349,7 +349,12 @@ wok.checkHelpFile = function(path) {
>> >
>> > wok.openHelp = function(e) {
>> > var tab = $('#nav-menu a.current');
>> > - var url =
>> $(tab).parent().find("input[name='helpPath']").val();
>> > - window.open(url, "Wok Help");
>> > + if (tab.length == 0 ){
>> > + window.open("help/en_US/wokhelp.html","Wok Help")
>> > + }
>> > + else {
>> > + var url =
>> $(tab).parent().find("input[name='helpPath']").val();
>> > + window.open(url, "Wok Help");
>> > + }
>> > e.preventDefault();
>> > };
>> > diff --git a/ui/pages/Makefile.am b/ui/pages/Makefile.am
>> > index 68f4c92..b3f5c2e 100644
>> > --- a/ui/pages/Makefile.am
>> > +++ b/ui/pages/Makefile.am
>> > @@ -15,7 +15,7 @@
>> > # See the License for the specific language governing
>> permissions and
>> > # limitations under the License.
>> >
>> > -SUBDIRS = websockify
>> > +SUBDIRS = websockify help
>> >
>> > htmldir = $(datadir)/wok/ui/pages
>> >
>> > diff --git a/ui/pages/help/Makefile.am b/ui/pages/help/Makefile.am
>> > new file mode 100644
>> > index 0000000..0dc8d9f
>> > --- /dev/null
>> > +++ b/ui/pages/help/Makefile.am
>> > @@ -0,0 +1,34 @@
>> > +# Copyright IBM Corp, 2014
>> > +#
>> > +# This library is free software; you can redistribute it and/or
>> > +# modify it under the terms of the GNU Lesser General Public
>> > +# License as published by the Free Software Foundation; either
>> > +# version 2.1 of the License, or (at your option) any later
>> version.
>> > +#
>> > +# This library is distributed in the hope that it will be useful,
>> > +# but WITHOUT ANY WARRANTY; without even the implied warranty of
>> > +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See
>> the GNU
>> > +# Lesser General Public License for more details.
>> > +#
>> > +# You should have received a copy of the GNU Lesser General Public
>> > +# License along with this library; if not, write to the Free
>> Software
>> > +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
>> MA 02110-1301 USA
>> > +
>> > +SUBDIRS = en_US
>> > +
>> > +DITA_HTML_FILES = $(patsubst %.dita,%.html,$(wildcard */*.dita))
>> > +HTML_FILES = $(if $(DITA_HTML_FILES), $(DITA_HTML_FILES),
>> $(wildcard */*.html))
>> > +DITA_XSL_FILE = dita-help.xsl
>> > +
>> > +EXTRA_DIST = $(DITA_XSL_FILE)
>> > +
>> > +helpdir = $(datadir)/wok/ui/pages/help
>> > +
>> > +dist_help_DATA = wok.css
>> > +
>> > +all: $(HTML_FILES) $(wildcard */*.dita)
>> > +
>> > +%.html: %.dita $(DITA_XSL_FILE)
>> > + xsltproc -o $@ $(DITA_XSL_FILE) $<
>> > +
>> > +CLEANFILES = $(HTML_FILES)
>> > \ No newline at end of file
>> > diff --git a/ui/pages/help/dita-help.xsl
>> b/ui/pages/help/dita-help.xsl
>> > new file mode 100644
>> > index 0000000..fb49855
>> > --- /dev/null
>> > +++ b/ui/pages/help/dita-help.xsl
>> > @@ -0,0 +1,26 @@
>> > +<?xml version="1.0" encoding="UTF-8"?>
>> > +<xsl:stylesheet version="1.0"
>> > + xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
>> > + xmlns="http://www.w3.org/1999/xhtml">
>> > + <xsl:output method="xml" indent="yes" encoding="UTF-8" />
>> > +
>> > + <xsl:template match="/">
>> > + <html>
>> > + <head>
>> > + <title><xsl:value-of select="/cshelp/title"
>> /></title>
>> > + <meta charset="UTF-8" />
>> > + <link rel="shortcut icon"
>> href="https://mail.notes.na.collabserv.com/livemail/0/../images/logo.ico"
>> />
>> > + <link rel="stylesheet" type="text/css"
>> href="https://mail.notes.na.collabserv.com/livemail/0/wok.css" />
>> > + </head>
>> > + <body>
>> > + <xsl:apply-templates select="//cshelp" />
>> > + </body>
>> > + </html>
>> > + </xsl:template>
>> > +
>> > + <xsl:template match="cshelp">
>> > + <h1><xsl:value-of select="title" /></h1>
>> > + <p class="shortdesc"><xsl:value-of select="shortdesc"
>> /></p>
>> > + <p class="csbody"><xsl:copy-of select="csbody/node()"
>> /></p>
>> > + </xsl:template>
>> > +</xsl:stylesheet>
>> > diff --git a/ui/pages/help/en_US/Makefile.am
>> b/ui/pages/help/en_US/Makefile.am
>> > new file mode 100644
>> > index 0000000..b1e807d
>> > --- /dev/null
>> > +++ b/ui/pages/help/en_US/Makefile.am
>> > @@ -0,0 +1,23 @@
>> > +# Copyright IBM Corp, 2014
>> > +#
>> > +# This library is free software; you can redistribute it and/or
>> > +# modify it under the terms of the GNU Lesser General Public
>> > +# License as published by the Free Software Foundation; either
>> > +# version 2.1 of the License, or (at your option) any later
>> version.
>> > +#
>> > +# This library is distributed in the hope that it will be useful,
>> > +# but WITHOUT ANY WARRANTY; without even the implied warranty of
>> > +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See
>> the GNU
>> > +# Lesser General Public License for more details.
>> > +#
>> > +# You should have received a copy of the GNU Lesser General Public
>> > +# License along with this library; if not, write to the Free
>> Software
>> > +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
>> MA 02110-1301 USA
>> > +
>> > +en_US_helpdir = $(datadir)/wok/ui/pages/help/en_US
>> > +
>> > +dist_en_US_help_DATA = $(wildcard *.html) $(NULL)
>> > +
>> > +EXTRA_DIST = $(wildcard *.dita)
>> > +
>> > +CLEANFILES = $(wildcard *.html)
>> > \ No newline at end of file
>> > diff --git a/ui/pages/help/en_US/wokhelp.dita
>> b/ui/pages/help/en_US/wokhelp.dita
>> > new file mode 100644
>> > index 0000000..582e47b
>> > --- /dev/null
>> > +++ b/ui/pages/help/en_US/wokhelp.dita
>> > @@ -0,0 +1,27 @@
>> > +<?xml version="1.0" encoding="UTF-8"?>
>> > +<!--Arbortext, Inc., 1988-2011, v.4002-->
>> > +<!DOCTYPE cshelp PUBLIC "-//IBM//DTD DITA CSHelp//EN"
>> > + "..\dtd\cshelp.dtd">
>> > +<?Pub Sty _display FontColor="red"?>
>> > +<?Pub Inc?>
>> > +<!--This DITA specialized document type is not supported by
>> the Authoring Tools development team.
>> > +For support please see:
>> > +https://w3.opensource.ibm.com/projects/dita-cshelp/-->
>> > +<cshelp id="wokbase" xml:lang="en-us">
>> > +<title>Wok (Webserver Originated from Kimchi)</title>
>> > +<shortdesc>Wok is a cherrypy-based web framework with HTML5
>> support that is extended by plugins which expose functionality
>> through REST APIs.</shortdesc>
>> > +<csbody>
>> > +<p>Currently available plugins are Kimchi (Virtualization
>> Management) and Ginger (System Administration).
>> > +Wok comes with a sample plugin for education purposes.<ul>
>> > +<li><uicontrol>Download Kimchi : </uicontrol>
>> > +<a href="https://github.com/kimchi-project/kimchi/tree/wok"
>> > +target="_blank"
>> >https://github.com/kimchi-project/kimchi/tree/wok</a>
>> > +</li>
>> > +<li><uicontrol>Download Ginger : </uicontrol>
>> > +<a href="https://github.com/kimchi-project/ginger/tree/ginger_wok"
>> > +target="_blank"
>> >https://github.com/kimchi-project/ginger/tree/ginger_wok</a>
>> > +</li>
>> > +</ul>
>> > +</p>
>> > +</csbody>
>> > +</cshelp>
>> > diff --git a/ui/pages/help/wok.css b/ui/pages/help/wok.css
>> > new file mode 100644
>> > index 0000000..32fae4a
>> > --- /dev/null
>> > +++ b/ui/pages/help/wok.css
>> > @@ -0,0 +1,208 @@
>> > +/*
>> > + * Project Kimchi
>> > + *
>> > + * Copyright IBM, Corp. 2014
>> > + *
>> > + * 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.
>> > + */
>> > +BODY {
>> > + background: #FFFFFF;
>> > + margin-bottom: 1em;
>> > + margin-left: .5em;
>> > +}
>> > +
>> > +bold {
>> > + font-weight: bold;
>> > +}
>> > +
>> > +boldItalic {
>> > + font-weight: bold;
>> > + font-style: italic;
>> > +}
>> > +
>> > +italic {
>> > + font-style: italic;
>> > +}
>> > +
>> > +underlined {
>> > + text-decoration: underline;
>> > +}
>> > +
>> > +uicontrol {
>> > + font-weight: bold;
>> > +}
>> > +
>> > +filepath {
>> > + font-family: monospace, monospace;
>> > +}.option {
>> > + font-family: monospace, monospace;
>> > +}
>> > +
>> > +cmdname {
>> > + font-weight: bold;
>> > + font-family: monospace, monospace;
>> > +}
>> > +
>> > +.defparmname {
>> > + font-weight: bold;
>> > + text-decoration: underline;
>> > + font-family: monospace, monospace;
>> > +}
>> > +
>> > +.kwd {
>> > + font-weight: bold;
>> > +}
>> > +
>> > +.defkwd {
>> > + font-weight: bold;
>> > + text-decoration: underline;
>> > +}
>> > +
>> > +var {
>> > + font-style : italic;
>> > +}
>> > +
>> > +strongwintitle {
>> > + font-weight : bold;
>> > +}
>> > +
>> > +parmname {
>> > + font-weight: bold;
>> > + font-family: monospace, monospace;
>> > + white-space: nowrap;
>> > +}
>> > +
>> > +code {
>> > + font-family: monospace, monospace;
>> > +}
>> > +
>> > +pre {
>> > + font-family: monospace, monospace;
>> > +}
>> > +
>> > +CITE {
>> > + font-style: italic;
>> > +}
>> > +
>> > +EM {
>> > + font-style: italic;
>> > +}
>> > +
>> > +STRONG {
>> > + font-weight: bold;
>> > +}
>> > +
>> > +VAR {
>> > + font-style: italic;
>> > +}
>> > +
>> > +dt {
>> > + font-weight: bold;
>> > +}
>> > +
>> > +/***********************************************************
>> > + * Basic fonts
>> > + ***********************************************************/
>> > +body,
>> > +td,
>> > +th,
>> > +caption {
>> > + font-family: Verdana, Arial, Helvetica, sans-serif;
>> > + font-size: 10pt;
>> > +}
>> > +
>> > +pre, code {
>> > + font-family: MS Courier New, Courier, monospace;
>> > +}
>> > +
>> > +h1, h2, h3 {
>> > + font-size: 12pt;
>> > + font-weight: bold;
>> > + color: #336699;
>> > +}
>> > +
>> > +h4 {
>> > + font-size: 10pt;
>> > + font-weight: bold;
>> > + color: #336699;
>> > +}
>> > +
>> > +/***********************************************************
>> > + * Basic indents, padding, and margin
>> > + ***********************************************************/
>> > +body {
>> > + color: black;
>> > + background-color: white;
>> > + margin: 0;
>> > + padding-top: 0.2em;
>> > + padding-left: 0.6em;
>> > + padding-right: 0.2em;
>> > + padding-bottom: 1em;
>> > +}
>> > +
>> > +h1,
>> > +h2,
>> > +h3,
>> > +h4,
>> > +h5,
>> > +h6 {
>> > + padding: 0;
>> > + margin-top: 1em;
>> > + margin-bottom: 0.75em;
>> > + margin-left: 0;
>> > + margin-right: 0;
>> > +}
>> > +
>> > +address,
>> > +dl,
>> > +li,
>> > +p {
>> > + padding: 0;
>> > + margin-top: 0.75em;
>> > + margin-bottom: 0.75em;
>> > + margin-left: 0;
>> > + margin-right: 0;
>> > + line-height: 125%;
>> > +}
>> > +
>> > +td dl {
>> > + margin-left: 2em;
>> > +}
>> > +
>> > +pre {
>> > + padding: 0;
>> > + margin-top: 0.75em;
>> > + margin-bottom: 0.75em;
>> > + margin-left: 2em;
>> > + margin-right: 0;
>> > +}
>> > +
>> > +ol,
>> > +ul {
>> > + padding: 0;
>> > + margin-top: 0.75em;
>> > + margin-bottom: 0.75em;
>> > + margin-left: 2.00em;
>> > + margin-right: 0;
>> > +}
>> > +
>> > +dd {
>> > + margin-left: 3.00em;
>> > + margin-top: 0.75em;
>> > + margin-bottom: 0.75em;
>> > +}
>> > +
>> > +dt {
>> > + margin-left: 1.00em;
>> > + margin-top: 0.75em;
>> > +}
>>
>> _______________________________________________
>> Kimchi-devel mailing list
>> Kimchi-devel at ovirt.org
>> http://lists.ovirt.org/mailman/listinfo/kimchi-devel
>>
>>
>
>
>
> _______________________________________________
> Kimchi-devel mailing list
> Kimchi-devel at ovirt.org
> http://lists.ovirt.org/mailman/listinfo/kimchi-devel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ovirt.org/pipermail/kimchi-devel/attachments/20150806/444be776/attachment.html>
More information about the Kimchi-devel
mailing list