mirror of
https://github.com/coderaiser/cloudcmd.git
synced 2026-01-23 02:35:49 +00:00
added filepicker
This commit is contained in:
parent
e745435813
commit
7b6371fd50
6 changed files with 209 additions and 165 deletions
|
|
@ -6,6 +6,7 @@
|
|||
|
||||
* Added ability create folders.
|
||||
|
||||
* Added filepicker.
|
||||
|
||||
2012.03.01, Version 0.1.9
|
||||
|
||||
|
|
|
|||
|
|
@ -34,6 +34,12 @@
|
|||
"data": {
|
||||
"id" : "00000000440E696F"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "FilePicker",
|
||||
"data": {
|
||||
"key" : "AACq5fTfzRY2E_Rw_4kyaz"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
|
|
|
|||
|
|
@ -110,9 +110,10 @@ CloudCmd._loadDir = function(pLink, pNeedRefresh){
|
|||
* @param pEvent
|
||||
*/
|
||||
CloudCmd._editFileName = function(pParent){
|
||||
var lA = DOM.getCurrentLink(pParent);
|
||||
var lA = DOM.getCurrentLink(pParent),
|
||||
lName = DOM.getCurrentName();
|
||||
|
||||
if (lA && lA.textContent !== '..'){
|
||||
if ( lName !== '..' ){
|
||||
|
||||
lA.contentEditable = true;
|
||||
KeyBinding && KeyBinding.unSet();
|
||||
|
|
@ -413,7 +414,7 @@ CloudCmd._changeLinks = function(pPanelID){
|
|||
lOnContextMenu_f = function(pEvent){
|
||||
var lReturn_b = true;
|
||||
|
||||
KeyBinding.unSet();
|
||||
KeyBinding && KeyBinding.unSet();
|
||||
|
||||
/* getting html element
|
||||
* currentTarget - DOM event
|
||||
|
|
|
|||
|
|
@ -60,9 +60,7 @@ var CloudCommander, Util, DOM, CloudFunc, $;
|
|||
}
|
||||
}
|
||||
else if( Util.isString(pObjectName) ){
|
||||
lObj.name = pObjectName;
|
||||
|
||||
lObj.callback = function(key, opt){
|
||||
lObj = function(key, opt){
|
||||
DOM.getCurrentData(function(pParams){
|
||||
var lObject = CloudCmd[pObjectName];
|
||||
|
||||
|
|
|
|||
38
lib/client/storage/_filepicker.js
Normal file
38
lib/client/storage/_filepicker.js
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
var CloudCommander, Util, DOM, $, filepicker;
|
||||
/* module for work with github */
|
||||
|
||||
(function(CloudCmd, Util, DOM){
|
||||
'use strict';
|
||||
|
||||
var FilePicker = function(){
|
||||
this.init = function(pCallBack){
|
||||
Util.loadOnLoad([
|
||||
Util.retExec(pCallBack),
|
||||
load
|
||||
]);
|
||||
};
|
||||
|
||||
|
||||
this.uploadFile = function(pCallBack){
|
||||
filepicker.pick(function(FPFile){
|
||||
console.log(FPFile.url);
|
||||
|
||||
Util.exec(pCallBack);
|
||||
});
|
||||
};
|
||||
|
||||
function load(pCallBack){
|
||||
console.time('filepicker load');
|
||||
var lHTTP = "https:"===document.location.protocol? "https:" : "http:";
|
||||
|
||||
DOM.jsload(lHTTP + '//api.filepicker.io/v1/filepicker.js', function(){
|
||||
filepicker.setKey('AACq5fTfzRY2E_Rw_4kyaz');
|
||||
DOM.Images.hideLoad();
|
||||
console.timeEnd('filepicker loaded');
|
||||
Util.exec(pCallBack);
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
CloudCmd.FilePicker = new FilePicker();
|
||||
})(CloudCommander, Util, DOM);
|
||||
|
|
@ -1,159 +1,159 @@
|
|||
var CloudCommander, Util, DOM, $, Github, cb;
|
||||
/* module for work with github */
|
||||
|
||||
(function(CloudCmd, Util, DOM){
|
||||
"use strict";
|
||||
|
||||
var Cache = DOM.Cache,
|
||||
GithubLocal,
|
||||
User,
|
||||
GitHubStore = {};
|
||||
|
||||
/* temporary callback function for work with github */
|
||||
cb = function (err, data){ Util.log(err || data);};
|
||||
|
||||
/* PRIVATE FUNCTIONS */
|
||||
|
||||
/**
|
||||
* function loads github.js
|
||||
*/
|
||||
function load(pCallBack){
|
||||
console.time('github load');
|
||||
|
||||
var lDir = '/lib/client/storage/github/',
|
||||
lFiles = [
|
||||
lDir + 'github.js',
|
||||
lDir + 'lib/base64.js',
|
||||
lDir + 'lib/underscore.js'
|
||||
];
|
||||
|
||||
DOM.anyLoadInParallel(lFiles, function(){
|
||||
console.timeEnd('github load');
|
||||
DOM.Images.hideLoad();
|
||||
|
||||
Util.exec(pCallBack);
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
GitHubStore.autorize = function(pCallBack, pCode){
|
||||
var lToken = Cache.get('token');
|
||||
if(lToken){
|
||||
GitHubStore.Login(lToken);
|
||||
Util.exec(pCallBack);
|
||||
}
|
||||
else{
|
||||
var lCode = pCode || window.location.search;
|
||||
if (lCode || Util.isContainStr(lCode, '?code=') )
|
||||
CloudCmd.getConfig(function(pConfig){
|
||||
DOM.ajax({
|
||||
type : 'put',
|
||||
url : pConfig && pConfig.api_url + '/auth',
|
||||
data : Util.removeStr(lCode, '?code='),
|
||||
success : function(pData){
|
||||
if(pData && pData.token){
|
||||
lToken = pData.token;
|
||||
|
||||
GitHubStore.Login(lToken);
|
||||
Cache.set('token', lToken);
|
||||
Util.exec(pCallBack);
|
||||
}
|
||||
else
|
||||
Util.log('Worning: token not getted...');
|
||||
}
|
||||
});
|
||||
});
|
||||
else{
|
||||
var lUrl = '//' + window.location.host + '/auth/github';
|
||||
DOM.openWindow(lUrl);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
GitHubStore.getUserData = function(pCallBack){
|
||||
User.show(null, function(pError, pData){
|
||||
if(!pError){
|
||||
var lName = pData.name;
|
||||
Util.log('Hello ' + lName + ' :)!');
|
||||
}
|
||||
else
|
||||
DOM.Cache.remove('token');
|
||||
});
|
||||
|
||||
Util.exec(pCallBack);
|
||||
};
|
||||
|
||||
/* PUBLIC FUNCTIONS */
|
||||
GitHubStore.basicLogin = function(pUser, pPasswd){
|
||||
GithubLocal = new Github({
|
||||
username: pUser,
|
||||
password: pPasswd,
|
||||
auth : 'basic'
|
||||
});
|
||||
};
|
||||
|
||||
GitHubStore.Login = function(pToken){
|
||||
Github = GithubLocal = new Github({
|
||||
token : pToken,
|
||||
auth : 'oauth'
|
||||
});
|
||||
|
||||
User = GithubLocal.getUser();
|
||||
};
|
||||
|
||||
/**
|
||||
* function creates gist
|
||||
*/
|
||||
GitHubStore.uploadFile = function(pParams, pCallBack){
|
||||
var lContent = pParams.data,
|
||||
lName = pParams.name;
|
||||
|
||||
if(lContent){
|
||||
DOM.Images.showLoad();
|
||||
if(!lName)
|
||||
lName = Util.getDate();
|
||||
|
||||
var lGist = GithubLocal.getGist(),
|
||||
lFiles = {},
|
||||
lHost = CloudCommander.HOST,
|
||||
lOptions = {
|
||||
description: 'Uplouded by Cloud Commander from ' + lHost,
|
||||
public: true
|
||||
};
|
||||
|
||||
lFiles[lName] ={
|
||||
content: lContent
|
||||
};
|
||||
|
||||
lOptions.files = lFiles;
|
||||
|
||||
lGist.create(lOptions, function(pError, pData){
|
||||
DOM.Images.hideLoad();
|
||||
Util.log(pError || pData);
|
||||
Util.log(pData && pData.html_url);
|
||||
|
||||
Util.exec(pCallBack);
|
||||
});
|
||||
}
|
||||
|
||||
return lContent;
|
||||
};
|
||||
|
||||
GitHubStore.init = function(pCallBack){
|
||||
Util.loadOnLoad([
|
||||
Util.retExec(pCallBack),
|
||||
GitHubStore.getUserData,
|
||||
GitHubStore.autorize,
|
||||
load
|
||||
]);
|
||||
|
||||
GitHubStore.callback = function(){
|
||||
Util.loadOnLoad([
|
||||
Util.retExec(pCallBack),
|
||||
GitHubStore.getUserData,
|
||||
]);
|
||||
};
|
||||
};
|
||||
|
||||
CloudCmd.GitHub = GitHubStore;
|
||||
})(CloudCommander, Util, DOM);
|
||||
var CloudCommander, Util, DOM, $, Github, cb;
|
||||
/* module for work with github */
|
||||
|
||||
(function(CloudCmd, Util, DOM){
|
||||
'use strict';
|
||||
|
||||
var Cache = DOM.Cache,
|
||||
GithubLocal,
|
||||
User,
|
||||
GitHubStore = {};
|
||||
|
||||
/* temporary callback function for work with github */
|
||||
cb = function (err, data){ Util.log(err || data);};
|
||||
|
||||
/* PRIVATE FUNCTIONS */
|
||||
|
||||
/**
|
||||
* function loads github.js
|
||||
*/
|
||||
function load(pCallBack){
|
||||
console.time('github load');
|
||||
|
||||
var lDir = '/lib/client/storage/github/',
|
||||
lFiles = [
|
||||
lDir + 'github.js',
|
||||
lDir + 'lib/base64.js',
|
||||
lDir + 'lib/underscore.js'
|
||||
];
|
||||
|
||||
DOM.anyLoadInParallel(lFiles, function(){
|
||||
console.timeEnd('github load');
|
||||
DOM.Images.hideLoad();
|
||||
|
||||
Util.exec(pCallBack);
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
GitHubStore.autorize = function(pCallBack, pCode){
|
||||
var lToken = Cache.get('token');
|
||||
if(lToken){
|
||||
GitHubStore.Login(lToken);
|
||||
Util.exec(pCallBack);
|
||||
}
|
||||
else{
|
||||
var lCode = pCode || window.location.search;
|
||||
if (lCode || Util.isContainStr(lCode, '?code=') )
|
||||
CloudCmd.getConfig(function(pConfig){
|
||||
DOM.ajax({
|
||||
type : 'put',
|
||||
url : pConfig && pConfig.api_url + '/auth',
|
||||
data : Util.removeStr(lCode, '?code='),
|
||||
success : function(pData){
|
||||
if(pData && pData.token){
|
||||
lToken = pData.token;
|
||||
|
||||
GitHubStore.Login(lToken);
|
||||
Cache.set('token', lToken);
|
||||
Util.exec(pCallBack);
|
||||
}
|
||||
else
|
||||
Util.log('Worning: token not getted...');
|
||||
}
|
||||
});
|
||||
});
|
||||
else{
|
||||
var lUrl = '//' + window.location.host + '/auth/github';
|
||||
DOM.openWindow(lUrl);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
GitHubStore.getUserData = function(pCallBack){
|
||||
User.show(null, function(pError, pData){
|
||||
if(!pError){
|
||||
var lName = pData.name;
|
||||
Util.log('Hello ' + lName + ' :)!');
|
||||
}
|
||||
else
|
||||
DOM.Cache.remove('token');
|
||||
});
|
||||
|
||||
Util.exec(pCallBack);
|
||||
};
|
||||
|
||||
/* PUBLIC FUNCTIONS */
|
||||
GitHubStore.basicLogin = function(pUser, pPasswd){
|
||||
GithubLocal = new Github({
|
||||
username: pUser,
|
||||
password: pPasswd,
|
||||
auth : 'basic'
|
||||
});
|
||||
};
|
||||
|
||||
GitHubStore.Login = function(pToken){
|
||||
Github = GithubLocal = new Github({
|
||||
token : pToken,
|
||||
auth : 'oauth'
|
||||
});
|
||||
|
||||
User = GithubLocal.getUser();
|
||||
};
|
||||
|
||||
/**
|
||||
* function creates gist
|
||||
*/
|
||||
GitHubStore.uploadFile = function(pParams, pCallBack){
|
||||
var lContent = pParams.data,
|
||||
lName = pParams.name;
|
||||
|
||||
if(lContent){
|
||||
DOM.Images.showLoad();
|
||||
if(!lName)
|
||||
lName = Util.getDate();
|
||||
|
||||
var lGist = GithubLocal.getGist(),
|
||||
lFiles = {},
|
||||
lHost = CloudCommander.HOST,
|
||||
lOptions = {
|
||||
description: 'Uplouded by Cloud Commander from ' + lHost,
|
||||
public: true
|
||||
};
|
||||
|
||||
lFiles[lName] ={
|
||||
content: lContent
|
||||
};
|
||||
|
||||
lOptions.files = lFiles;
|
||||
|
||||
lGist.create(lOptions, function(pError, pData){
|
||||
DOM.Images.hideLoad();
|
||||
Util.log(pError || pData);
|
||||
Util.log(pData && pData.html_url);
|
||||
|
||||
Util.exec(pCallBack);
|
||||
});
|
||||
}
|
||||
|
||||
return lContent;
|
||||
};
|
||||
|
||||
GitHubStore.init = function(pCallBack){
|
||||
Util.loadOnLoad([
|
||||
Util.retExec(pCallBack),
|
||||
GitHubStore.getUserData,
|
||||
GitHubStore.autorize,
|
||||
load
|
||||
]);
|
||||
|
||||
GitHubStore.callback = function(){
|
||||
Util.loadOnLoad([
|
||||
Util.retExec(pCallBack),
|
||||
GitHubStore.getUserData,
|
||||
]);
|
||||
};
|
||||
};
|
||||
|
||||
CloudCmd.GitHub = GitHubStore;
|
||||
})(CloudCommander, Util, DOM);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue