added SSL suport

This commit is contained in:
coderaiser 2013-03-04 07:03:26 -05:00
parent 7b6371fd50
commit 75c67fd1d1
10 changed files with 108 additions and 15 deletions

View file

@ -8,6 +8,12 @@
* Added filepicker.
* Added ability to load files to cloud
and get them out to file system.
* Added SSL suport.
2012.03.01, Version 0.1.9
* Changed the way of getting github application id

View file

@ -175,12 +175,20 @@
}, 1000);
});
server.start({
var lParams = {
appcache : appCacheProcessing,
minimize : minimize,
rest : rest,
route : route
});
};
if(Config.ssl)
lParams.ssl = {
key : fs.readFileSync(__dirname + '/privatekey.pem'),
cert : fs.readFileSync(__dirname + '/certificate.pem')
};
server.start(lParams);
}
function readConfig(pCallBack){

View file

@ -14,5 +14,6 @@
"socket" : true,
"port" : 80,
"ip" : null,
"ssl" : false,
"rest" : true
}

View file

@ -399,6 +399,19 @@ CloudCmd.getModules = function(pCallBack){
});
};
CloudCmd.execFromModule = function(pModuleName, pFuncName, pParams){
var lObject = CloudCmd[pModuleName];
Util.ifExec('init' in lObject,
function(){
var lObj = CloudCmd[pModuleName];
Util.exec( lObj[pFuncName], pParams);
},
function(pCallBack){
Util.exec(lObject, pCallBack);
});
};
/* функция меняет ссыки на ajax-овые */
CloudCmd._changeLinks = function(pPanelID){

View file

@ -46,6 +46,7 @@ var CloudCommander, Util, DOM, CloudFunc, $;
});
}
/**
* function get menu item object for Upload To
*/
@ -62,16 +63,7 @@ var CloudCommander, Util, DOM, CloudFunc, $;
else if( Util.isString(pObjectName) ){
lObj = function(key, opt){
DOM.getCurrentData(function(pParams){
var lObject = CloudCmd[pObjectName];
Util.ifExec('init' in lObject,
function(){
CloudCmd[pObjectName].uploadFile(pParams);
},
function(pCallBack){
Util.exec(lObject, pCallBack);
});
CloudCmd.execFromModule(pObjectName, 'uploadFile', pParams);
});
Util.log('Uploading to ' + pObjectName+ '...');
@ -179,7 +171,15 @@ var CloudCommander, Util, DOM, CloudFunc, $;
Util.log('New->File');
},
'Dir' : DOM.promptNewFolder
'Dir' : DOM.promptNewFolder,
'From cloud...' : function(){
CloudCmd.execFromModule('FilePicker', 'saveFile', function(pName, pData){
var lPath = DOM.getCurrentDirPath() + pName;
DOM.RESTfull.save(lPath, pData, CloudCmd.refresh);
});
}
};
lRet = {

View file

@ -13,7 +13,20 @@ var CloudCommander, Util, DOM, $, filepicker;
};
this.uploadFile = function(pCallBack){
this.uploadFile = function(pParams, pCallBack){
var lContent = pParams.data,
lName = pParams.name;
filepicker.store(lContent, {filename: lName},
function(new_fpfile){
console.log(JSON.stringify(new_fpfile));
filepicker.exportFile(
'https://drpyjw32lhcoa.cloudfront.net/0d6afe9/img/success.png',
function(FPFile){
console.log(FPFile.url);
});
}
);
filepicker.pick(function(FPFile){
console.log(FPFile.url);
@ -21,6 +34,19 @@ var CloudCommander, Util, DOM, $, filepicker;
});
};
this.saveFile = function(pCallBack){
filepicker.pick(function(FPFile){
console.log(FPFile);
DOM.ajax({
url : FPFile.url,
success : function(pData){
Util.exec(pCallBack, FPFile.filename, pData);
}
});
});
};
function load(pCallBack){
console.time('filepicker load');
var lHTTP = "https:"===document.location.protocol? "https:" : "http:";

View file

@ -24,6 +24,7 @@
Socket = main.socket,
http = main.http,
https = main.https,
Util = main.util,
Server, Rest, Route, Minimize, Port, IP;
@ -62,6 +63,8 @@
Route = pProcessing.route;
Minimize = pProcessing.minimize;
var lSSL = pProcessing.ssl;
init(pProcessing.appcache);
Port = process.env.PORT || /* c9 */
@ -76,7 +79,10 @@
/* server mode or testing mode */
if (lConfig.server) {
var lError = Util.tryCatchLog(function(){
Server = http.createServer( controller );
if(!lSSL)
Server = http.createServer( controller );
else
Server = https.createServer( lSSL, controller );
Server.listen(Port, IP);
var lListen;

View file

@ -189,6 +189,7 @@
lRet = {
'Access-Control-Allow-Origin': '*',
'Content-Type': lType + lContentEncoding,
'last-modified': new Date().toString(),
'Vary': 'Accept-Encoding'

17
ssl/certificate.pem Normal file
View file

@ -0,0 +1,17 @@
-----BEGIN CERTIFICATE-----
MIICtzCCAiACCQCCiuC5c+uyqzANBgkqhkiG9w0BAQUFADCBnzELMAkGA1UEBhMC
WFgxWzBZBgNVBAgMUm9wZW5zc2wgeDUwOSAtcmVxIC1pbiBjZXJ0cmVxdWVzdC5j
c3IgLXNpZ25rZXkgcHJpdmF0ZWtleS5wZW0gLW91dCBjZXJ0aWZpY2F0ZS5wZW0x
FTATBgNVBAcMDERlZmF1bHQgQ2l0eTEcMBoGA1UECgwTRGVmYXVsdCBDb21wYW55
IEx0ZDAeFw0xMzAzMDQxMTA1NDdaFw0xMzA0MDMxMTA1NDdaMIGfMQswCQYDVQQG
EwJYWDFbMFkGA1UECAxSb3BlbnNzbCB4NTA5IC1yZXEgLWluIGNlcnRyZXF1ZXN0
LmNzciAtc2lnbmtleSBwcml2YXRla2V5LnBlbSAtb3V0IGNlcnRpZmljYXRlLnBl
bTEVMBMGA1UEBwwMRGVmYXVsdCBDaXR5MRwwGgYDVQQKDBNEZWZhdWx0IENvbXBh
bnkgTHRkMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCtM0N5vaWCtx8Wp5IN
8VW62Hm2RSxIZougZ9qQbm8xLNNDZok8qGoNXZguNYSazuB3O0JcVUwI81OeMVB+
j/uAIIXJK/t4npmR8Cak2MjquShy2dyC6DW42ikwXeRU26vOxH6fzfaOrDahNVwD
hPsXAqdgpsjRWvr17qW77ycWAwIDAQABMA0GCSqGSIb3DQEBBQUAA4GBAJxlSiFF
+f8KJSootodifS0KNTUWKZl7Ajh+unpfRpevZFHhSMjK5xAERGGylvZy+b2GYjXq
J61jIITSlo4r43jOafmpqsbEOE85Ctm5Fv+7jnzNT6C8wFcc5L4JLuFREP2oCtTZ
oTYTEFxW0NzIiQChSn9SB4RKfn85OUWzNyKE
-----END CERTIFICATE-----

15
ssl/privatekey.pem Normal file
View file

@ -0,0 +1,15 @@
-----BEGIN RSA PRIVATE KEY-----
MIICXQIBAAKBgQCtM0N5vaWCtx8Wp5IN8VW62Hm2RSxIZougZ9qQbm8xLNNDZok8
qGoNXZguNYSazuB3O0JcVUwI81OeMVB+j/uAIIXJK/t4npmR8Cak2MjquShy2dyC
6DW42ikwXeRU26vOxH6fzfaOrDahNVwDhPsXAqdgpsjRWvr17qW77ycWAwIDAQAB
AoGBAJGOhIV6WO9awDjEyR0Ildi59se0qHuMGonK3ccF2FKGbmG1eV5N1xq2bp9f
ALstYz0wwxtf38+h1sMahKBolp38Pc11FDIwaH50jxd3fIDFes6xrO1urgmVn2jF
rCQglumltLtriYjlj2IgjIY1bI/11qKED0zTT8AFyrnB3jYBAkEA1f2/5X04+YC9
2EPtzxFkVHyTp4wV2UTb0hNAXGjppI95WNjaHO6wYwFEea2K85TAZR1epQQGCxks
mL0oAKtZAwJBAM8zintppbL2q7JryRfIMQ9bzJ7odUvoMY7H/iPdMiStJsiqvrtu
6c2pi8pJi2p/KpeKVODR0+wI6E6+DhfcPwECQQCDcnCrBmW2FZgIPYnZ1WQc5b1J
gSp2oO6qt3qkiSlkFWHD6sjoVtJwrnmiiLC++VPJiOX3VWZk8NzNIfxtlNODAkAU
KVa7RX9rF5eDZ/uMRd2IOg2CFOp89V4FH665/KcJbJPOiNbAVD2J1oqUp21acn9J
eZtiuOgfGorIRrQGXFcBAkBEyev6ZY28qMhinLAP2n/YXRC3IuOy/amyK5OArRYx
pcI3E2qLpARicb6YuWUAslcUb5ZohfP60DlDa0BhcYiG
-----END RSA PRIVATE KEY-----