Skip to content

Commit 3231f03

Browse files
committed
Refactor slightly app loading.
1 parent 5db50c6 commit 3231f03

File tree

1 file changed

+31
-31
lines changed

1 file changed

+31
-31
lines changed

coder-base/server.js

Lines changed: 31 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,9 @@ var connect = require('connect');
3636

3737
global.config = require('./config');
3838

39-
var loadApp = function( loadpath ) {
39+
var loadApp = function( path, appname, auth ) {
40+
var loadpath = path + appname + "/app";
41+
4042
var userapp = null;
4143
if ( config.cacheApps ) {
4244
userapp = require(loadpath);
@@ -52,54 +54,53 @@ var loadApp = function( loadpath ) {
5254
}
5355
userapp = require(loadpath);
5456
}
55-
return userapp;
56-
};
5757

58-
var applyAppSettings = function( userapp, appname, auth ) {
59-
userapp.settings.appname = appname;
60-
userapp.settings.viewpath="apps/" + appname;
61-
userapp.settings.appurl="/app/" + appname;
62-
userapp.settings.staticurl = "/static/apps/" + appname;
63-
userapp.settings.device_name = auth.getDeviceName();
64-
userapp.settings.coder_owner = auth.getCoderOwner();
65-
userapp.settings.coder_color = auth.getCoderColor();
66-
if ( userapp.settings.device_name === "" ) {
67-
userapp.settings.device_name = "Coder";
68-
}
69-
if ( userapp.settings.coder_color === "" ) {
70-
userapp.settings.coder_color = "#3e3e3e";
58+
if (userapp)
59+
{
60+
userapp.settings.appname = appname;
61+
userapp.settings.viewpath="apps/" + appname;
62+
userapp.settings.appurl="/app/" + appname;
63+
userapp.settings.staticurl = "/static/apps/" + appname;
64+
userapp.settings.device_name = auth.getDeviceName();
65+
userapp.settings.coder_owner = auth.getCoderOwner();
66+
userapp.settings.coder_color = auth.getCoderColor();
67+
68+
if ( userapp.settings.device_name === "" ) {
69+
userapp.settings.device_name = "Coder";
70+
}
71+
if ( userapp.settings.coder_color === "" ) {
72+
userapp.settings.coder_color = "#3e3e3e";
73+
}
7174
}
72-
};
75+
76+
return userapp;
77+
}
7378

7479
var apphandler = function( req, res, appdir ) {
7580

7681
var appname = req.params[0];
7782
var apppath = req.params[1];
78-
var modpath = appdir + appname;
79-
var userapp = loadApp( modpath + "/app" );
8083

84+
auth = require(appdir + "auth" + "/app");
85+
var userapp = loadApp( appdir, appname, auth );
86+
87+
if ( !apppath ) {
88+
apppath = "/";
89+
} else {
90+
apppath = "/" + apppath;
91+
}
8192

8293
util.log( "GET: " + apppath + " " + appname );
8394

8495
//Redirect to sign-in for unauthenticated users
8596
publicAllowed = ["auth"]; //apps that are exempt from any login (should only be auth)
86-
auth = require(appdir + "auth" + "/app");
8797
user = auth.isAuthenticated(req, res);
8898
if ( !user && publicAllowed.indexOf( appname ) < 0) {
8999
util.log( "redirect: " + '/app/auth' );
90100
res.redirect('/app/auth');
91101
return;
92102
}
93103

94-
95-
if ( !apppath ) {
96-
apppath = "/";
97-
} else {
98-
apppath = "/" + apppath;
99-
}
100-
101-
applyAppSettings( userapp, appname, auth );
102-
103104
var routes = [];
104105
if ( req.route.method === 'get' ) {
105106
routes = userapp.get_routes;
@@ -251,9 +252,8 @@ var initSocketIO = function( server ) {
251252
}
252253
if ( data.appid !== undefined && data.appid.match(/^\w+$/) && data.key !== undefined ) {
253254
var appname = data.appid;
254-
var userapp = loadApp( __dirname + '/apps/' + appname + "/app" );
255255
var auth = require( __dirname + "/apps/auth/app" );
256-
applyAppSettings( userapp, appname, auth );
256+
var userapp = loadApp( __dirname + '/apps/', appname, auth );
257257

258258
var route;
259259
var key = data.key;

0 commit comments

Comments
 (0)