[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:01:50 UTC 2015



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.

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
>
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ovirt.org/pipermail/kimchi-devel/attachments/20150806/339533bb/attachment.html>


More information about the Kimchi-devel mailing list