mirror of
https://github.com/scm-manager/scm-manager.git
synced 2026-02-16 03:26:54 +01:00
split sonia.config.js into smaller pieces
This commit is contained in:
@@ -97,7 +97,14 @@
|
||||
<script type="text/javascript" src="resources/js/group/sonia.group.memberformpanel.js"></script>
|
||||
<script type="text/javascript" src="resources/js/group/sonia.group.panel.js"></script>
|
||||
|
||||
<script type="text/javascript" src="resources/js/sonia.config.js"></script>
|
||||
<!-- sonia.config -->
|
||||
<script type="text/javascript" src="resources/js/config/sonia.config.js"></script>
|
||||
<script type="text/javascript" src="resources/js/config/sonia.config.configpanel.js"></script>
|
||||
<script type="text/javascript" src="resources/js/config/sonia.config.repositoryconfig.js"></script>
|
||||
<script type="text/javascript" src="resources/js/config/sonia.config.scmconfigpanel.js"></script>
|
||||
<script type="text/javascript" src="resources/js/config/sonia.config.configform.js"></script>
|
||||
<script type="text/javascript" src="resources/js/config/sonia.config.simpleconfigform.js"></script>
|
||||
|
||||
<script type="text/javascript" src="resources/js/sonia.action.js"></script>
|
||||
<script type="text/javascript" src="resources/js/sonia.plugin.js"></script>
|
||||
<script type="text/javascript" src="resources/js/sonia.scm.js"></script>
|
||||
|
||||
@@ -0,0 +1,119 @@
|
||||
/* *
|
||||
* Copyright (c) 2010, Sebastian Sdorra
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions are met:
|
||||
*
|
||||
* 1. Redistributions of source code must retain the above copyright notice,
|
||||
* this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright notice,
|
||||
* this list of conditions and the following disclaimer in the documentation
|
||||
* and/or other materials provided with the distribution.
|
||||
* 3. Neither the name of SCM-Manager; nor the names of its
|
||||
* contributors may be used to endorse or promote products derived from this
|
||||
* software without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
||||
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||
* DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY
|
||||
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
||||
* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* http://bitbucket.org/sdorra/scm-manager
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
Sonia.config.ConfigForm = Ext.extend(Ext.form.FormPanel, {
|
||||
|
||||
title: 'Config Form',
|
||||
saveButtonText: 'Save',
|
||||
resetButtontext: 'Reset',
|
||||
|
||||
submitText: 'Submit ...',
|
||||
loadingText: 'Loading ...',
|
||||
failedText: 'Unknown Error occurred.',
|
||||
|
||||
items: null,
|
||||
onSubmit: null,
|
||||
getValues: null,
|
||||
|
||||
initComponent: function(){
|
||||
|
||||
var config = {
|
||||
title: null,
|
||||
style: 'margin: 10px',
|
||||
trackResetOnLoad : true,
|
||||
autoScroll : true,
|
||||
border : false,
|
||||
frame : false,
|
||||
collapsible : false,
|
||||
collapsed : false,
|
||||
layoutConfig : {
|
||||
labelSeparator : ''
|
||||
},
|
||||
items : [{
|
||||
xtype : 'fieldset',
|
||||
checkboxToggle : false,
|
||||
title : this.title,
|
||||
collapsible : true,
|
||||
autoHeight : true,
|
||||
labelWidth : 140,
|
||||
buttonAlign: 'left',
|
||||
layoutConfig : {
|
||||
labelSeparator : ''
|
||||
},
|
||||
defaults: {
|
||||
width: 250
|
||||
},
|
||||
listeners: {
|
||||
render: function(){
|
||||
if ( this.onLoad != null && Ext.isFunction( this.onLoad ) ){
|
||||
this.onLoad(this.el);
|
||||
}
|
||||
},
|
||||
scope: this
|
||||
},
|
||||
items: this.items,
|
||||
buttons: [{
|
||||
text: this.saveButtonText,
|
||||
scope: this,
|
||||
formBind: true,
|
||||
handler: this.submitForm
|
||||
},{
|
||||
text: this.resetButtontext,
|
||||
scope: this,
|
||||
handler: function(){
|
||||
this.getForm().reset();
|
||||
}
|
||||
}]
|
||||
}]
|
||||
};
|
||||
|
||||
Ext.apply(this, Ext.apply(this.initialConfig, config));
|
||||
Sonia.config.ConfigForm.superclass.initComponent.apply(this, arguments);
|
||||
},
|
||||
|
||||
load: function(values){
|
||||
this.getForm().loadRecord({
|
||||
success: true,
|
||||
data: values
|
||||
});
|
||||
},
|
||||
|
||||
submitForm: function(){
|
||||
var form = this.getForm();
|
||||
if ( this.onSubmit != null && Ext.isFunction( this.onSubmit ) ){
|
||||
this.onSubmit( form.getValues() );
|
||||
}
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
Ext.reg("configForm", Sonia.config.ConfigForm);
|
||||
@@ -0,0 +1,58 @@
|
||||
/* *
|
||||
* Copyright (c) 2010, Sebastian Sdorra
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions are met:
|
||||
*
|
||||
* 1. Redistributions of source code must retain the above copyright notice,
|
||||
* this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright notice,
|
||||
* this list of conditions and the following disclaimer in the documentation
|
||||
* and/or other materials provided with the distribution.
|
||||
* 3. Neither the name of SCM-Manager; nor the names of its
|
||||
* contributors may be used to endorse or promote products derived from this
|
||||
* software without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
||||
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||
* DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY
|
||||
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
||||
* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* http://bitbucket.org/sdorra/scm-manager
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
Sonia.config.ConfigPanel = Ext.extend(Ext.Panel, {
|
||||
|
||||
panels: null,
|
||||
|
||||
initComponent: function(){
|
||||
|
||||
var config = {
|
||||
region: 'center',
|
||||
bodyCssClass: 'x-panel-mc',
|
||||
trackResetOnLoad: true,
|
||||
autoScroll: true,
|
||||
border: false,
|
||||
frame: false,
|
||||
collapsible: false,
|
||||
collapsed: false,
|
||||
items: this.panels
|
||||
}
|
||||
|
||||
Ext.apply(this, Ext.apply(this.initialConfig, config));
|
||||
Sonia.config.ConfigPanel.superclass.initComponent.apply(this, arguments);
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
Ext.reg("configPanel", Sonia.config.ConfigPanel);
|
||||
|
||||
@@ -0,0 +1,57 @@
|
||||
/* *
|
||||
* Copyright (c) 2010, Sebastian Sdorra
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions are met:
|
||||
*
|
||||
* 1. Redistributions of source code must retain the above copyright notice,
|
||||
* this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright notice,
|
||||
* this list of conditions and the following disclaimer in the documentation
|
||||
* and/or other materials provided with the distribution.
|
||||
* 3. Neither the name of SCM-Manager; nor the names of its
|
||||
* contributors may be used to endorse or promote products derived from this
|
||||
* software without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
||||
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||
* DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY
|
||||
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
||||
* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* http://bitbucket.org/sdorra/scm-manager
|
||||
*
|
||||
*/
|
||||
|
||||
// config form panels
|
||||
var repositoryConfigPanels = [];
|
||||
var generalConfigPanels =[];
|
||||
|
||||
function registerConfigPanel(panel){
|
||||
repositoryConfigPanels.push( panel );
|
||||
}
|
||||
|
||||
function registerGeneralConfigPanel(panel){
|
||||
generalConfigPanels.push(panel);
|
||||
}
|
||||
|
||||
Ext.ns("Sonia.config");
|
||||
|
||||
|
||||
// pluginurl validator
|
||||
Ext.apply(Ext.form.VTypes, {
|
||||
|
||||
pluginurl: function(val) {
|
||||
return this.pluginurlRegex.test(val);
|
||||
},
|
||||
|
||||
pluginurlRegex: /(((^https?)|(^ftp)):\/\/([\-\w]+\.)+\w{2,3}(\/[%\-\w]+(\.\w{2,})?)*(([\w\-\.\?\\\/+@&#;`~=%!\{\}]*)(\.\w{2,})?)*\/?)/i,
|
||||
pluginurlText: 'This field should be a URL in the format \n\
|
||||
"http://plugins.scm-manager.org/scm-plugin-backend/api/{version}/plugins?os={os}&arch={arch}&snapshot=false"'
|
||||
});
|
||||
@@ -0,0 +1,47 @@
|
||||
/* *
|
||||
* Copyright (c) 2010, Sebastian Sdorra
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions are met:
|
||||
*
|
||||
* 1. Redistributions of source code must retain the above copyright notice,
|
||||
* this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright notice,
|
||||
* this list of conditions and the following disclaimer in the documentation
|
||||
* and/or other materials provided with the distribution.
|
||||
* 3. Neither the name of SCM-Manager; nor the names of its
|
||||
* contributors may be used to endorse or promote products derived from this
|
||||
* software without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
||||
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||
* DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY
|
||||
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
||||
* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* http://bitbucket.org/sdorra/scm-manager
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
Sonia.config.RepositoryConfig = Ext.extend(Sonia.config.ConfigPanel,{
|
||||
|
||||
initComponent: function(){
|
||||
|
||||
var config = {
|
||||
panels: repositoryConfigPanels
|
||||
}
|
||||
|
||||
Ext.apply(this, Ext.apply(this.initialConfig, config));
|
||||
Sonia.config.RepositoryConfig.superclass.initComponent.apply(this, arguments);
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
Ext.reg("repositoryConfig", Sonia.config.RepositoryConfig);
|
||||
@@ -29,73 +29,7 @@
|
||||
*
|
||||
*/
|
||||
|
||||
// config form panels
|
||||
var repositoryConfigPanels = [];
|
||||
var generalConfigPanels =[];
|
||||
|
||||
function registerConfigPanel(panel){
|
||||
repositoryConfigPanels.push( panel );
|
||||
}
|
||||
|
||||
function registerGeneralConfigPanel(panel){
|
||||
generalConfigPanels.push(panel);
|
||||
}
|
||||
|
||||
Ext.ns("Sonia.config");
|
||||
|
||||
Sonia.config.ConfigPanel = Ext.extend(Ext.Panel, {
|
||||
|
||||
panels: null,
|
||||
|
||||
initComponent: function(){
|
||||
|
||||
var config = {
|
||||
region: 'center',
|
||||
bodyCssClass: 'x-panel-mc',
|
||||
trackResetOnLoad: true,
|
||||
autoScroll: true,
|
||||
border: false,
|
||||
frame: false,
|
||||
collapsible: false,
|
||||
collapsed: false,
|
||||
items: this.panels
|
||||
}
|
||||
|
||||
Ext.apply(this, Ext.apply(this.initialConfig, config));
|
||||
Sonia.config.ConfigPanel.superclass.initComponent.apply(this, arguments);
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
Ext.reg("configPanel", Sonia.config.ConfigPanel);
|
||||
|
||||
Sonia.config.RepositoryConfig = Ext.extend(Sonia.config.ConfigPanel,{
|
||||
|
||||
initComponent: function(){
|
||||
|
||||
var config = {
|
||||
panels: repositoryConfigPanels
|
||||
}
|
||||
|
||||
Ext.apply(this, Ext.apply(this.initialConfig, config));
|
||||
Sonia.config.RepositoryConfig.superclass.initComponent.apply(this, arguments);
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
Ext.reg("repositoryConfig", Sonia.config.RepositoryConfig);
|
||||
|
||||
// pluginurl validator
|
||||
Ext.apply(Ext.form.VTypes, {
|
||||
|
||||
pluginurl: function(val) {
|
||||
return this.pluginurlRegex.test(val);
|
||||
},
|
||||
|
||||
pluginurlRegex: /(((^https?)|(^ftp)):\/\/([\-\w]+\.)+\w{2,3}(\/[%\-\w]+(\.\w{2,})?)*(([\w\-\.\?\\\/+@&#;`~=%!\{\}]*)(\.\w{2,})?)*\/?)/i,
|
||||
pluginurlText: 'This field should be a URL in the format \n\
|
||||
"http://plugins.scm-manager.org/scm-plugin-backend/api/{version}/plugins?os={os}&arch={arch}&snapshot=false"'
|
||||
});
|
||||
|
||||
Sonia.config.ScmConfigPanel = Ext.extend(Sonia.config.ConfigPanel,{
|
||||
|
||||
@@ -325,154 +259,3 @@ Sonia.config.ScmConfigPanel = Ext.extend(Sonia.config.ConfigPanel,{
|
||||
});
|
||||
|
||||
Ext.reg("scmConfig", Sonia.config.ScmConfigPanel);
|
||||
|
||||
Sonia.config.ConfigForm = Ext.extend(Ext.form.FormPanel, {
|
||||
|
||||
title: 'Config Form',
|
||||
saveButtonText: 'Save',
|
||||
resetButtontext: 'Reset',
|
||||
|
||||
submitText: 'Submit ...',
|
||||
loadingText: 'Loading ...',
|
||||
failedText: 'Unknown Error occurred.',
|
||||
|
||||
items: null,
|
||||
onSubmit: null,
|
||||
getValues: null,
|
||||
|
||||
initComponent: function(){
|
||||
|
||||
var config = {
|
||||
title: null,
|
||||
style: 'margin: 10px',
|
||||
trackResetOnLoad : true,
|
||||
autoScroll : true,
|
||||
border : false,
|
||||
frame : false,
|
||||
collapsible : false,
|
||||
collapsed : false,
|
||||
layoutConfig : {
|
||||
labelSeparator : ''
|
||||
},
|
||||
items : [{
|
||||
xtype : 'fieldset',
|
||||
checkboxToggle : false,
|
||||
title : this.title,
|
||||
collapsible : true,
|
||||
autoHeight : true,
|
||||
labelWidth : 140,
|
||||
buttonAlign: 'left',
|
||||
layoutConfig : {
|
||||
labelSeparator : ''
|
||||
},
|
||||
defaults: {
|
||||
width: 250
|
||||
},
|
||||
listeners: {
|
||||
render: function(){
|
||||
if ( this.onLoad != null && Ext.isFunction( this.onLoad ) ){
|
||||
this.onLoad(this.el);
|
||||
}
|
||||
},
|
||||
scope: this
|
||||
},
|
||||
items: this.items,
|
||||
buttons: [{
|
||||
text: this.saveButtonText,
|
||||
scope: this,
|
||||
formBind: true,
|
||||
handler: this.submitForm
|
||||
},{
|
||||
text: this.resetButtontext,
|
||||
scope: this,
|
||||
handler: function(){
|
||||
this.getForm().reset();
|
||||
}
|
||||
}]
|
||||
}]
|
||||
};
|
||||
|
||||
Ext.apply(this, Ext.apply(this.initialConfig, config));
|
||||
Sonia.config.ConfigForm.superclass.initComponent.apply(this, arguments);
|
||||
},
|
||||
|
||||
load: function(values){
|
||||
this.getForm().loadRecord({
|
||||
success: true,
|
||||
data: values
|
||||
});
|
||||
},
|
||||
|
||||
submitForm: function(){
|
||||
var form = this.getForm();
|
||||
if ( this.onSubmit != null && Ext.isFunction( this.onSubmit ) ){
|
||||
this.onSubmit( form.getValues() );
|
||||
}
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
Ext.reg("configForm", Sonia.config.ConfigForm);
|
||||
|
||||
|
||||
Sonia.config.SimpleConfigForm = Ext.extend(Sonia.config.ConfigForm,{
|
||||
|
||||
configUrl: null,
|
||||
loadMethod: 'GET',
|
||||
submitMethod: 'POST',
|
||||
|
||||
initComponent: function(){
|
||||
Ext.apply(this, Ext.apply(this.initialConfig));
|
||||
Sonia.config.SimpleConfigForm.superclass.initComponent.apply(this, arguments);
|
||||
},
|
||||
|
||||
onSubmit: function(values){
|
||||
this.el.mask(this.submitText);
|
||||
Ext.Ajax.request({
|
||||
url: this.configUrl,
|
||||
method: this.submitMethod,
|
||||
jsonData: values,
|
||||
scope: this,
|
||||
disableCaching: true,
|
||||
success: function(response){
|
||||
this.el.unmask();
|
||||
},
|
||||
failure: function(result){
|
||||
this.el.unmask();
|
||||
main.handleFailure(
|
||||
result.status,
|
||||
null,
|
||||
this.failedText
|
||||
);
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
onLoad: function(el){
|
||||
var tid = setTimeout( function(){ el.mask(this.loadingText); }, 100);
|
||||
Ext.Ajax.request({
|
||||
url: this.configUrl,
|
||||
method: this.loadMethod,
|
||||
scope: this,
|
||||
disableCaching: true,
|
||||
success: function(response){
|
||||
var obj = Ext.decode(response.responseText);
|
||||
this.load(obj);
|
||||
clearTimeout(tid);
|
||||
el.unmask();
|
||||
},
|
||||
failure: function(result){
|
||||
el.unmask();
|
||||
clearTimeout(tid);
|
||||
main.handleFailure(
|
||||
result.status,
|
||||
null,
|
||||
this.failedText
|
||||
);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
Ext.reg("simpleConfigForm", Sonia.config.SimpleConfigForm);
|
||||
@@ -0,0 +1,94 @@
|
||||
/* *
|
||||
* Copyright (c) 2010, Sebastian Sdorra
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions are met:
|
||||
*
|
||||
* 1. Redistributions of source code must retain the above copyright notice,
|
||||
* this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright notice,
|
||||
* this list of conditions and the following disclaimer in the documentation
|
||||
* and/or other materials provided with the distribution.
|
||||
* 3. Neither the name of SCM-Manager; nor the names of its
|
||||
* contributors may be used to endorse or promote products derived from this
|
||||
* software without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
||||
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||
* DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY
|
||||
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
||||
* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* http://bitbucket.org/sdorra/scm-manager
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
|
||||
Sonia.config.SimpleConfigForm = Ext.extend(Sonia.config.ConfigForm,{
|
||||
|
||||
configUrl: null,
|
||||
loadMethod: 'GET',
|
||||
submitMethod: 'POST',
|
||||
|
||||
initComponent: function(){
|
||||
Ext.apply(this, Ext.apply(this.initialConfig));
|
||||
Sonia.config.SimpleConfigForm.superclass.initComponent.apply(this, arguments);
|
||||
},
|
||||
|
||||
onSubmit: function(values){
|
||||
this.el.mask(this.submitText);
|
||||
Ext.Ajax.request({
|
||||
url: this.configUrl,
|
||||
method: this.submitMethod,
|
||||
jsonData: values,
|
||||
scope: this,
|
||||
disableCaching: true,
|
||||
success: function(response){
|
||||
this.el.unmask();
|
||||
},
|
||||
failure: function(result){
|
||||
this.el.unmask();
|
||||
main.handleFailure(
|
||||
result.status,
|
||||
null,
|
||||
this.failedText
|
||||
);
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
onLoad: function(el){
|
||||
var tid = setTimeout( function(){ el.mask(this.loadingText); }, 100);
|
||||
Ext.Ajax.request({
|
||||
url: this.configUrl,
|
||||
method: this.loadMethod,
|
||||
scope: this,
|
||||
disableCaching: true,
|
||||
success: function(response){
|
||||
var obj = Ext.decode(response.responseText);
|
||||
this.load(obj);
|
||||
clearTimeout(tid);
|
||||
el.unmask();
|
||||
},
|
||||
failure: function(result){
|
||||
el.unmask();
|
||||
clearTimeout(tid);
|
||||
main.handleFailure(
|
||||
result.status,
|
||||
null,
|
||||
this.failedText
|
||||
);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
Ext.reg("simpleConfigForm", Sonia.config.SimpleConfigForm);
|
||||
Reference in New Issue
Block a user