]> jfr.im git - irc/quakenet/qwebirc.git/commitdiff
Generate pages instead of having a load of fixed html files.
authorChris Porter <redacted>
Sun, 19 Oct 2008 15:20:43 +0000 (16:20 +0100)
committerChris Porter <redacted>
Sun, 19 Oct 2008 15:20:43 +0000 (16:20 +0100)
Add favicon png.

14 files changed:
.hgignore
compile.bat
compile.sh
pagegen.py [new file with mode: 0644]
static/css/swmui.css
static/images/favicon.png [new file with mode: 0644]
static/mochaui.html [deleted file]
static/mochauidebug.html [deleted file]
static/qui.html [deleted file]
static/quidebug.html [deleted file]
static/swmui.html [deleted file]
static/swmuidebug.html [deleted file]
static/uglyui.html [deleted file]
static/uglyuidebug.html [deleted file]

index 2eeb382184754e60fb267459379eb33cde8f342c..5f91a7bce8387d54f730af146dc42aa5fbc71dbd 100644 (file)
--- a/.hgignore
+++ b/.hgignore
@@ -11,4 +11,5 @@ dropin.cache
 defargs.conf
 Thumbs.db
 [dD]esktop.ini
-static/js/mochaui/mocha-compressed.js
\ No newline at end of file
+static/js/mochaui/mocha-compressed.js
+static/{ugly,swm,mocha,q}ui{,debug}.js
index 93e2fdbd35c64f3404cdecf3306b75850e14a902..6ea1c10b7e428fbd14cbe251527a4fefa58bb85d 100644 (file)
@@ -1,4 +1,6 @@
 @echo off\r
+\r
+pagegen.py\r
 mkdir compiled\r
 del /q compiled\*.js\r
 \r
index baa6de93a93e8b4398df80584ce89a2d40401708..5c5e340f4d4395b4995e9f3186f901919e390d04 100755 (executable)
@@ -1,4 +1,6 @@
 #!/bin/sh
+python pagegen.py
+
 mkdir -p compiled
 rm -f compiled/*.js
 
diff --git a/pagegen.py b/pagegen.py
new file mode 100644 (file)
index 0000000..9c46bda
--- /dev/null
@@ -0,0 +1,120 @@
+import os, sys
+
+IRC_BASE = ["ircconnection", "irclib", "numerics", "baseircclient", "irctracker", "commandparser", "ircclient", "commandhistory"]
+UI_BASE = ["baseui", "baseuiwindow", "colour", "url", "theme", "genericlogin", "embedwizard"]
+
+DEBUG_BASE = ["qwebirc", "version", "jslib", ["irc/%s" % x for x in IRC_BASE], ["ui/%s" % x for x in UI_BASE], "qwebircinterface"]
+BUILD_BASE = ["qwebirc"]
+JS_BASE = ["mootools-1.2-core"]
+
+UIs = {
+  "qui": {
+    "class": "QUI",
+    "uifiles": ["qui"],
+    "doctype": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\"" + "\n" \
+      "\"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">"
+  },
+  "mochaui": {
+    "class": "MochaUI",
+    "uifiles": ["mochaui"],
+    "extra": ["mootools-1.2-more", "mochaui/mocha"],
+    "buildextra": ["mootools-1.2-more", "mochaui/mocha-compressed"],
+    "doctype": "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01//EN\" \"http://www.w3.org/TR/html4/strict.dtd\">",
+    "div": """
+    <div id="desktop">
+      <div id="dockWrapper">
+        <div id="dock">
+          <div id="dockPlacement"></div>
+          <div id="dockAutoHide"></div>
+          <div id="dockSort"><div id="dockClear" class="clear"></div></div>
+        </div>
+      </div>   
+      <div id="pageWrapper"></div>
+    </div>""",
+    "extracss": ["mochaui/ui", "mochaui/content"],
+    "customjs": """
+  <!--[if IE]>
+    <script type="text/javascript" src="js/mochaui/excanvas-compressed.js"></script>           
+  <![endif]-->"""
+  },
+  "swmui": {
+    "class": "SWMUI",
+    "uifiles": ["swmui", "swmuilayout"],
+    "doctype": "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01//EN\" \"http://www.w3.org/TR/html4/strict.dtd\">"
+  },
+  "uglyui": {
+    "class": "UglyUI",
+    "uifiles": ["uglyui"],
+    "doctype": "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01//EN\" \"http://www.w3.org/TR/html4/strict.dtd\">"
+  }
+}
+
+def flatten(y):
+  for x in y:
+    if isinstance(x, list):
+      for x in flatten(x):
+        yield x
+    else:
+      yield x
+  
+DEBUG = ["debug/%s" % x for x in flatten(DEBUG_BASE)]
+
+def jslist(name, debug):
+  ui = UIs[name]
+  if debug:
+    x = [JS_BASE, ui.get("extra", []), DEBUG, ["debug/ui/%s" % y for y in ui["uifiles"]]]
+  else:
+    x = [JS_BASE, ui.get("buildextra", ui.get("extra", [])), BUILD_BASE, name]
+    
+  return list("js/%s.js" % y for y in flatten(x))
+
+def csslist(name):
+  ui = UIs[name]
+  return list("css/%s.css" % x for x in flatten(["colours", ui.get("extracss", []), "%s" % name]))
+
+def producehtml(name, debug):
+  ui = UIs[name]
+  js = jslist(name, debug)
+  css = csslist(name)
+  
+  csshtml = "\n".join("  <link rel=\"stylesheet\" href=\"%s\" type=\"text/css\">" % x for x in css)
+  jshtml = "\n".join("  <script type=\"text/javascript\" src=\"%s\"></script>" % x for x in js)
+
+  div = ui.get("div", "")
+  customjs = ui.get("customjs", "")
+
+  return """%s
+<html>
+<head>
+  <title>QuakeNet Web IRC</title>
+%s%s
+%s
+  <script type="text/javascript">
+    var ui = new qwebirc.ui.Interface("ircui", qwebirc.ui.%s);
+  </script>
+</head>
+<body>
+  <div id="ircui">%s
+  </div>
+</body>
+</html>
+""" % (ui["doctype"], csshtml, customjs, jshtml, ui["class"], div)
+
+def main():
+  p = os.path.join(os.path.abspath(os.path.split(sys.argv[0])[0]), "static")
+  for x in UIs:
+    f = open(os.path.join(p, "%sdebug.html" % x), "wb")
+    try:
+      f.write(producehtml(x, debug=True))
+    finally:
+      f.close()
+      
+    f = open(os.path.join(p, "%s.html" % x), "wb")
+    try:
+      f.write(producehtml(x, debug=False))
+    finally:
+      f.close()
+
+if __name__ == "__main__":
+  main()
+  
\ No newline at end of file
index 50cbbfe452d51491f36c5cc53749ed2758421771..798d0da08254f144d0a5aef7425ee59d7f5cc51d 100644 (file)
@@ -84,3 +84,9 @@ body, html {
 .qwebirc-swmui .tab-unselected {
   background: #eee;
 }
+
+#swmui {
+  height: 100%;
+  width: 100%;
+  position: absolute;
+}
diff --git a/static/images/favicon.png b/static/images/favicon.png
new file mode 100644 (file)
index 0000000..7d7e28a
Binary files /dev/null and b/static/images/favicon.png differ
diff --git a/static/mochaui.html b/static/mochaui.html
deleted file mode 100644 (file)
index afa24cd..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
-<html>
-<head>
-  <title>QuakeNet Web IRC</title>
-  <link rel="stylesheet" href="css/colours.css" type="text/css">
-  <link rel="stylesheet" href="css/mochaui/ui.css" type="text/css">
-  <link rel="stylesheet" href="css/mochaui/content.css" type="text/css">
-  <link rel="stylesheet" href="css/mochaui.css" type="text/css">
-  <!--[if IE]>
-    <script type="text/javascript" src="js/mochaui/excanvas-compressed.js"></script>           
-       <![endif]-->
-  <script type="text/javascript" src="js/mootools-1.2-core.js"></script>
-  <script type="text/javascript" src="js/mootools-1.2-more.js"></script>
-  <script type="text/javascript" src="js/mochaui/mocha-compressed.js"></script>
-  <script type="text/javascript" src="js/qwebirc.js"></script>
-  <script type="text/javascript" src="js/mochaui.js"></script>
-  <script type="text/javascript">
-    var ui = new qwebirc.ui.Interface("ircui", qwebirc.ui.QMochaUI);
-  </script>
-</head>
-<body scroll="no">
-  <div id="ircui">
-    <div id="desktop">
-      <div id="dockWrapper">
-        <div id="dock">
-          <div id="dockPlacement"></div>
-          <div id="dockAutoHide"></div>
-          <div id="dockSort"><div id="dockClear" class="clear"></div></div>
-        </div>
-      </div>   
-      <div id="pageWrapper"></div>
-    </div>
-  </div>
-</body>
-</html>
diff --git a/static/mochauidebug.html b/static/mochauidebug.html
deleted file mode 100644 (file)
index bd3ec68..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
-<html>
-<head>
-  <title>QuakeNet Web IRC</title>
-  <link rel="stylesheet" href="css/colours.css" type="text/css">
-  <link rel="stylesheet" href="css/mochaui/ui.css" type="text/css">
-  <link rel="stylesheet" href="css/mochaui/content.css" type="text/css">
-  <link rel="stylesheet" href="css/mochaui.css" type="text/css">
-  <!--[if IE]>
-    <script type="text/javascript" src="js/mochaui/excanvas-compressed.js"></script>           
-       <![endif]-->
-  <script type="text/javascript" src="js/mootools-1.2-core.js"></script>
-  <script type="text/javascript" src="js/mootools-1.2-more.js"></script>
-  <script type="text/javascript" src="js/mochaui/mocha.js"></script>
-  <script type="text/javascript" src="js/debug/qwebirc.js"></script>
-  <script type="text/javascript" src="js/debug/version.js"></script>
-  <script type="text/javascript" src="js/debug/jslib.js"></script>
-  <script type="text/javascript" src="js/debug/irc/ircconnection.js"></script>
-  <script type="text/javascript" src="js/debug/irc/irclib.js"></script>
-  <script type="text/javascript" src="js/debug/irc/numerics.js"></script>
-  <script type="text/javascript" src="js/debug/irc/baseircclient.js"></script>
-  <script type="text/javascript" src="js/debug/irc/irctracker.js"></script>
-  <script type="text/javascript" src="js/debug/irc/commandparser.js"></script>
-  <script type="text/javascript" src="js/debug/irc/ircclient.js"></script>
-  <script type="text/javascript" src="js/debug/irc/commandhistory.js"></script>
-  <script type="text/javascript" src="js/debug/ui/baseui.js"></script>
-  <script type="text/javascript" src="js/debug/ui/baseuiwindow.js"></script>
-  <script type="text/javascript" src="js/debug/ui/colour.js"></script>
-  <script type="text/javascript" src="js/debug/ui/url.js"></script>
-  <script type="text/javascript" src="js/debug/ui/theme.js"></script>
-  <script type="text/javascript" src="js/debug/ui/genericlogin.js"></script>
-  <script type="text/javascript" src="js/debug/ui/embedwizard.js"></script>
-  <script type="text/javascript" src="js/debug/ui/mochaui.js"></script>
-  <script type="text/javascript" src="js/debug/qwebircinterface.js"></script>
-  <script type="text/javascript">
-    var ui = new qwebirc.ui.Interface("ircui", qwebirc.ui.MochaUI);
-  </script>
-</head>
-<body scroll="no">
-  <div id="ircui">
-    <div id="desktop">
-      <div id="dockWrapper">
-        <div id="dock">
-          <div id="dockPlacement"></div>
-          <div id="dockAutoHide"></div>
-          <div id="dockSort"><div id="dockClear" class="clear"></div></div>
-        </div>
-      </div>   
-      <div id="pageWrapper"></div>
-    </div>
-  </div>
-</body>
-</html>
diff --git a/static/qui.html b/static/qui.html
deleted file mode 100644 (file)
index c38bc2a..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
-<html>
-<head>
-  <title>QuakeNet Web IRC</title>
-  <link rel="stylesheet" href="css/colours.css" type="text/css">
-  <link rel="stylesheet" href="css/qui.css" type="text/css">
-  <script type="text/javascript" src="js/mootools-1.2-core.js"></script>
-  <script type="text/javascript" src="js/qwebirc.js"></script>
-  <script type="text/javascript" src="js/qui.js"></script>
-  <script type="text/javascript">
-    var ui = new qwebirc.ui.Interface("ircui", qwebirc.ui.QUI);
-  </script>
-</head>
-<body>
-  <div id="ircui"></div>
-</body>
-</html>
diff --git a/static/quidebug.html b/static/quidebug.html
deleted file mode 100644 (file)
index 760d3b8..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
-"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html>
-<head>
-  <title>QuakeNet Web IRC</title>
-  <link rel="stylesheet" href="css/colours.css" type="text/css">
-  <link rel="stylesheet" href="css/qui.css" type="text/css">
-  <script type="text/javascript" src="js/mootools-1.2-core.js"></script>
-  <script type="text/javascript" src="js/debug/qwebirc.js"></script>
-  <script type="text/javascript" src="js/debug/version.js"></script>
-  <script type="text/javascript" src="js/debug/jslib.js"></script>
-  <script type="text/javascript" src="js/debug/irc/ircconnection.js"></script>
-  <script type="text/javascript" src="js/debug/irc/irclib.js"></script>
-  <script type="text/javascript" src="js/debug/irc/numerics.js"></script>
-  <script type="text/javascript" src="js/debug/irc/baseircclient.js"></script>
-  <script type="text/javascript" src="js/debug/irc/irctracker.js"></script>
-  <script type="text/javascript" src="js/debug/irc/commandparser.js"></script>
-  <script type="text/javascript" src="js/debug/irc/ircclient.js"></script>
-  <script type="text/javascript" src="js/debug/irc/commandhistory.js"></script>
-  <script type="text/javascript" src="js/debug/ui/baseui.js"></script>
-  <script type="text/javascript" src="js/debug/ui/baseuiwindow.js"></script>
-  <script type="text/javascript" src="js/debug/ui/colour.js"></script>
-  <script type="text/javascript" src="js/debug/ui/url.js"></script>
-  <script type="text/javascript" src="js/debug/ui/theme.js"></script>
-  <script type="text/javascript" src="js/debug/ui/genericlogin.js"></script>
-  <script type="text/javascript" src="js/debug/ui/embedwizard.js"></script>
-  <script type="text/javascript" src="js/debug/ui/qui.js"></script>
-  <script type="text/javascript" src="js/debug/qwebircinterface.js"></script>
-  <script type="text/javascript">
-    var ui = new qwebirc.ui.Interface("ircui", qwebirc.ui.QUI);
-  </script>
-</head>
-<body>
-  <div id="ircui"></div>
-</body>
-</html>
diff --git a/static/swmui.html b/static/swmui.html
deleted file mode 100644 (file)
index 41bcacb..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
-<html>
-<head>
-  <title>QuakeNet Web IRC</title>
-  <link rel="stylesheet" href="css/colours.css" type="text/css">
-  <link rel="stylesheet" href="css/swmui.css" type="text/css">
-  <script type="text/javascript" src="js/mootools-1.2-core.js"></script>
-  <script type="text/javascript" src="js/qwebirc.js"></script>
-  <script type="text/javascript" src="js/swmui.js"></script>
-  <script type="text/javascript">
-    var ui = new qwebirc.ui.Interface("ircui", qwebirc.ui.SWMUI);
-  </script>
-</head>
-<body>
-  <div id="ircui" style="height: 100%; width: 100%; position: absolute;"></div>
-</body>
-</html>
diff --git a/static/swmuidebug.html b/static/swmuidebug.html
deleted file mode 100644 (file)
index 8cbccd4..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
-<html>
-<head>
-  <title>QuakeNet Web IRC</title>
-  <link rel="stylesheet" href="css/colours.css" type="text/css">
-  <link rel="stylesheet" href="css/swmui.css" type="text/css">
-  <script type="text/javascript" src="js/mootools-1.2-core.js"></script>
-  <script type="text/javascript" src="js/debug/qwebirc.js"></script>
-  <script type="text/javascript" src="js/debug/version.js"></script>
-  <script type="text/javascript" src="js/debug/jslib.js"></script>
-  <script type="text/javascript" src="js/debug/irc/ircconnection.js"></script>
-  <script type="text/javascript" src="js/debug/irc/irclib.js"></script>
-  <script type="text/javascript" src="js/debug/irc/numerics.js"></script>
-  <script type="text/javascript" src="js/debug/irc/baseircclient.js"></script>
-  <script type="text/javascript" src="js/debug/irc/irctracker.js"></script>
-  <script type="text/javascript" src="js/debug/irc/commandparser.js"></script>
-  <script type="text/javascript" src="js/debug/irc/ircclient.js"></script>
-  <script type="text/javascript" src="js/debug/irc/commandhistory.js"></script>
-  <script type="text/javascript" src="js/debug/ui/baseui.js"></script>
-  <script type="text/javascript" src="js/debug/ui/baseuiwindow.js"></script>
-  <script type="text/javascript" src="js/debug/ui/colour.js"></script>
-  <script type="text/javascript" src="js/debug/ui/url.js"></script>
-  <script type="text/javascript" src="js/debug/ui/theme.js"></script>
-  <script type="text/javascript" src="js/debug/ui/genericlogin.js"></script>
-  <script type="text/javascript" src="js/debug/ui/embedwizard.js"></script>
-  <script type="text/javascript" src="js/debug/ui/swmui.js"></script>
-  <script type="text/javascript" src="js/debug/ui/swmlayout.js"></script>
-  <script type="text/javascript" src="js/debug/qwebircinterface.js"></script>
-  <script type="text/javascript">
-    var ui = new qwebirc.ui.Interface("ircui", qwebirc.ui.SWMUI);
-  </script>
-</head>
-<body>
-  <div id="ircui" style="height: 100%; width: 100%; position: absolute"></div>
-</body>
-</html>
diff --git a/static/uglyui.html b/static/uglyui.html
deleted file mode 100644 (file)
index b6b9c17..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
-<html>
-<head>
-  <title>QuakeNet Web IRC</title>
-  <link rel="stylesheet" href="css/colours.css" type="text/css">
-  <link rel="stylesheet" href="css/uglyui.css" type="text/css">
-  <script type="text/javascript" src="js/mootools-1.2-core.js"></script>
-  <script type="text/javascript" src="js/qwebirc.js"></script>
-  <script type="text/javascript" src="js/uglyui.js"></script>
-  <script type="text/javascript">
-    var ui = new qwebirc.ui.Interface("ircui", qwebirc.ui.UglyUI);
-  </script>
-</head>
-<body>
-  <div id="ircui"></div>
-</body>
-</html>
diff --git a/static/uglyuidebug.html b/static/uglyuidebug.html
deleted file mode 100644 (file)
index 943ead9..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
-<html>
-<head>
-  <title>QuakeNet Web IRC</title>
-  <link rel="stylesheet" href="css/colours.css" type="text/css">
-  <link rel="stylesheet" href="css/uglyui.css" type="text/css">
-  <script type="text/javascript" src="js/mootools-1.2-core.js"></script>
-  <script type="text/javascript" src="js/debug/qwebirc.js"></script>
-  <script type="text/javascript" src="js/debug/version.js"></script>
-  <script type="text/javascript" src="js/debug/jslib.js"></script>
-  <script type="text/javascript" src="js/debug/irc/ircconnection.js"></script>
-  <script type="text/javascript" src="js/debug/irc/irclib.js"></script>
-  <script type="text/javascript" src="js/debug/irc/numerics.js"></script>
-  <script type="text/javascript" src="js/debug/irc/baseircclient.js"></script>
-  <script type="text/javascript" src="js/debug/irc/irctracker.js"></script>
-  <script type="text/javascript" src="js/debug/irc/commandparser.js"></script>
-  <script type="text/javascript" src="js/debug/irc/ircclient.js"></script>
-  <script type="text/javascript" src="js/debug/irc/commandhistory.js"></script>
-  <script type="text/javascript" src="js/debug/ui/baseui.js"></script>
-  <script type="text/javascript" src="js/debug/ui/baseuiwindow.js"></script>
-  <script type="text/javascript" src="js/debug/ui/colour.js"></script>
-  <script type="text/javascript" src="js/debug/ui/url.js"></script>
-  <script type="text/javascript" src="js/debug/ui/theme.js"></script>
-  <script type="text/javascript" src="js/debug/ui/genericlogin.js"></script>
-  <script type="text/javascript" src="js/debug/ui/embedwizard.js"></script>
-  <script type="text/javascript" src="js/debug/ui/uglyui.js"></script>
-  <script type="text/javascript" src="js/debug/qwebircinterface.js"></script>
-  <script type="text/javascript">
-    var ui = new qwebirc.ui.Interface("ircui", qwebirc.ui.UglyUI);
-  </script>
-</head>
-<body>
-  <div id="ircui"></div>
-</body>
-</html>