Merge remote-tracking branch 'origin/master' into Astro

This commit is contained in:
2016-05-28 00:25:22 +08:00
10 changed files with 48 additions and 184 deletions

View File

@@ -3,3 +3,5 @@ import configparser
Config = configparser.ConfigParser( interpolation = configparser.ExtendedInterpolation() )
Config.read( "settings.ini" )
DEBUG = Config[ "Env" ][ "Debug" ]

View File

@@ -1,40 +0,0 @@
<html>
<head>
<title>Botan JS - Test</title>
<script>
var debugEnv = true;
</script>
<link href="/ocss/Dandelion.CSSAnimations.MovieClip" rel="stylesheet" type="text/css" />
<script src="/ojs/Dandelion.CSSAnimations.MovieClip"></script>
<script>
function load ()
{
var CSSAnimations = BotanJS.import( "Dandelion.CSSAnimations.*" );
var mc = new CSSAnimations.MovieClip(
"http://file.astropenguin.net/blog/Gothic/__A.png"
// Row, Col
, 6 , 7
// wh
, 125 , 125
// Frame, start
, 42 , 0
);
// CSSAnimations.MouseOverMovie( mc );
document.body.appendChild( mc.stage );
mc.nextFrame();
mc.nextFrame();
mc.nextFrame();
mc.nextFrame();
mc.nextFrame();
mc.prevFrame();
};
</script>
<body onload="load()">
</body>
</html>

View File

@@ -1,25 +0,0 @@
<html>
<head>
<title>Botan JS - Test</title>
<script>
var debugEnv = true;
var _AstConf_ = { };
</script>
<link href="/ocss/System.Net.ClassLoader" rel="stylesheet" type="text/css" />
<script src="/ojs/System.Net.ClassLoader"></script>
<script>
var Loader = BotanJS.import( "System.Net.ClassLoader" );
var makeMessagebox = function()
{
var MessageBox = BotanJS.import( "Components.MessageBox" );
new MessageBox( "Title", "Message" ).show();
};
var ldr = new Loader( "/" );
ldr.load( "Components.MessageBox", makeMessagebox );
</script>
<body>
</body>
</html>

View File

@@ -1,13 +0,0 @@
<html>
<head>
<title>Botan JS - Test</title>
<script>
var debugEnv = true;
var _AstConf_ = { };
</script>
<link href="/ocss/System.utils.IKey" rel="stylesheet" type="text/css" />
<script src="/ojs/System.utils.IKey"></script>
<body>
</body>
</html>

View File

@@ -1,19 +0,0 @@
<html>
<head>
<title>Botan JS - List of Tests</title>
<style>
<!--
body {
font-size: 1.2em;
}
-->
</style>
<body>
<pre>
{% for d in data %}
<a href="/test/{{ d }}">{{ d }}</a>
<br>
{% endfor %}
</pre>
</body>
</html>

View File

@@ -4,6 +4,8 @@ from flask import Response
from flask import render_template
from botanjs.service.jclassresv import BotanClassResolver as JCResv
from botanjs.service.jwork import app as CeleryApp, JWork
from botanjs.config import DEBUG
import os
class WebAPI:
@@ -16,12 +18,6 @@ class WebAPI:
def __init__( self, jsRoot = "../src", jsCache = "/tmp", brokerURL = None ):
self.test_templates = os.path.join(
os.path.dirname( os.path.realpath( __file__ ) )
, "templates"
, "test"
)
self.BRoot = os.path.abspath( jsRoot )
self.BCache = os.path.join( jsCache, "botanjs" )
self.BMap = os.path.join( self.BCache, "bmap.xml" )
@@ -29,27 +25,17 @@ class WebAPI:
if brokerURL != None:
CeleryApp.conf.update( BROKER_URL = brokerURL )
self.app = Flask( __name__, static_url_path = '', static_folder = self.BCache )
print( __name__ )
self.app = Flask( __name__, static_url_path = self.BCache, static_folder = self.BCache )
self.app.jinja_env.add_extension( "compressinja.html.HtmlCompressor" )
self.app.add_url_rule( "/test" , view_func = self.r_test_list )
self.app.add_url_rule( "/test/<string:test_file>" , view_func = self.r_test )
self.app.add_url_rule( "/<path:mode>/<path:code>" , view_func = self.api_request )
self.app.add_url_rule( "/" , view_func = self.index )
self.app.add_url_rule( "/<path:mode>/<path:code>" , view_func = self.api_request )
self.app.run( host="0.0.0.0" )
def r_test_list( self ):
for root, dirs, files in os.walk( self.test_templates ):
break
files.sort()
files = ( os.path.splitext( x )[0] for x in files )
return render_template( "test_list.html", data = files )
def r_test( self, test_file ):
return render_template( os.path.join( "test", test_file + ".html" ) )
self.app.run( host = "0.0.0.0", debug = DEBUG )
def index( self ):
return "Hello, this is the BotanJS Service API.", 200
def api_request( self, mode, code ):
try:
@@ -61,10 +47,9 @@ class WebAPI:
srvHandler = JCResv( JWork, self.BRoot, self.BMap, self.BCache )
return Response( srvHandler.getAPI( code, mode = mode ), mimetype = t )
except LookupError as e:
except Exception as e:
return str(e), 404
# except Exception as e:
# return str(e), 404
return "Invalid request", 404