(function() { 'use strict'; var DIR = __dirname + '/', DIR_LIB = DIR + 'lib/', DIR_SERVER = DIR + 'lib/server/', fs = require('fs'), win = require(DIR_SERVER + 'win'), main = require(DIR_SERVER + 'main'), format = require(DIR_SERVER + 'format'), mellow = require(DIR_SERVER + 'mellow'), ponse = require(DIR_SERVER + 'ponse'), files = require(DIR_SERVER + 'files'), AppCache = require(DIR_SERVER + 'appcache'), update = require(DIR_SERVER + 'update'), Minify = require(DIR_SERVER + 'minify'), HTMLDIR = main.HTMLDIR, Util = require(DIR_LIB + 'util'), CloudFunc = require(DIR_LIB + 'cloudfunc'), server = require(DIR_LIB + 'server'), Config = main.config, KEY = DIR + 'ssl/ssl.key', CERT = DIR + 'ssl/ssl.crt', HTML_FS_DIR = HTMLDIR + 'fs/', PATH_INDEX = HTML_FS_DIR + 'index.html', TMPL_PATH = [ 'file', 'panel', 'path', 'pathLink', 'link', ], Template = {}, FS = CloudFunc.FS; /* reinit main dir os if we on Win32 should be backslashes */ DIR = main.DIR; exports.start = function(params) { readConfig(function(msg, config) { var keys; Util.log(msg); if (!config) config = {}; if (params) { keys = Object.keys(params); keys.forEach(function(item) { config[item] = params[item]; }); } init(config); }); win.prepareCodePage(); }; /** * additional processing of index file */ function indexProcessing(options) { var keysPanel, left, right, LEFT = CloudFunc.PANEL_LEFT, RIGHT = CloudFunc.PANEL_RIGHT, data = options.data, panel = options.panel; if (!Config.appCache) data = Util.rmStr(data, [ /* min */ ' manifest=/cloudcmd.appcache', /* normal */ ' manifest="/cloudcmd.appcache"' ]); if (!Config.showKeysPanel) { keysPanel = '