mirror of
https://github.com/scm-manager/scm-manager.git
synced 2026-06-20 14:51:02 +02:00
added Sonia.repository.get method
This commit is contained in:
@@ -90,3 +90,40 @@ Sonia.repository.DefaultPanel = {
|
||||
bodyCssClass: 'x-panel-mc',
|
||||
html: 'Add or select an Repository'
|
||||
}
|
||||
|
||||
// load object from store or from web service
|
||||
|
||||
Sonia.repository.get = function(id, callback){
|
||||
function execCallback(item){
|
||||
if (Ext.isFunction(callback)){
|
||||
callback(item);
|
||||
} else {
|
||||
callback.call(callback.scope, item);
|
||||
}
|
||||
}
|
||||
|
||||
var grid = Ext.getCmp('repositoryGrid');
|
||||
if ( grid ){
|
||||
var store = grid.getStore();
|
||||
if (store){
|
||||
var rec = store.getById(id);
|
||||
if (rec){
|
||||
execCallback(rec.data);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Ext.Ajax.request({
|
||||
url: restUrl + 'repositories/' + id + '.json',
|
||||
method: 'GET',
|
||||
scope: this,
|
||||
success: function(response){
|
||||
execCallback(Ext.decode(response.responseText));
|
||||
},
|
||||
failure: function(result){
|
||||
main.handleFailure(
|
||||
result.status
|
||||
);
|
||||
}
|
||||
});
|
||||
}
|
||||
@@ -344,26 +344,15 @@ Sonia.History.register('repositorybrowser', function(params){
|
||||
main.getMainTabPanel().setActiveTab(id);
|
||||
tab.changeDirectory(path);
|
||||
} else {
|
||||
Ext.Ajax.request({
|
||||
url: restUrl + 'repositories/' + params[0] + '.json',
|
||||
method: 'GET',
|
||||
scope: this,
|
||||
success: function(response){
|
||||
var item = Ext.decode(response.responseText);
|
||||
main.addTab({
|
||||
id: id,
|
||||
xtype: 'repositoryBrowser',
|
||||
repository: item,
|
||||
revision: revision,
|
||||
path: path,
|
||||
closable: true
|
||||
})
|
||||
},
|
||||
failure: function(result){
|
||||
main.handleFailure(
|
||||
result.status
|
||||
);
|
||||
}
|
||||
Sonia.repository.get(params[0], function(repository){
|
||||
main.addTab({
|
||||
id: id,
|
||||
xtype: 'repositoryBrowser',
|
||||
repository: repository,
|
||||
revision: revision,
|
||||
path: path,
|
||||
closable: true
|
||||
})
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user