[Kimchi-devel] [PATCH 1/1] Enabling help page for wok base. This commit supports en_US only.

sureshab at linux.vnet.ibm.com sureshab at linux.vnet.ibm.com
Tue Aug 4 13:04:16 UTC 2015


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="../../images/logo.ico" />
+                <link rel="stylesheet" type="text/css" href="../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;
+}
-- 
2.1.0




More information about the Kimchi-devel mailing list