| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179 |
- function onChangeType(event)
- {
- const type = $(event.target).val();
- if(type == 'external')
- {
- $('.externalPanel').removeClass('hidden');
- $('.storePanel').addClass('hidden');
- $('#type_external').prop('checked', true);
- }
- else
- {
- $('.storePanel').removeClass('hidden');
- $('.externalPanel').addClass('hidden');
- $('#type_store').prop('checked', true);
- }
- }
- window.onChangeAppType = function(event)
- {
- const appType = $(event.target).val();
- if(appType == 'jenkins' || appType == 'sonarqube' || appType == 'nexus')
- {
- $('div.jenkins').removeClass('hidden');
- if(appType == 'jenkins')
- {
- $('div.token').removeClass('hidden');
- $('div.password .form-label').removeClass('required');
- }
- else
- {
- $('div.token').addClass('hidden');
- $('div.password .form-label').addClass('required');
- }
- }
- else
- {
- $('div.jenkins').addClass('hidden');
- $('div.token').removeClass('hidden');
- }
- $('#url').attr('placeholder', '');
- $('#token').attr('placeholder', '');
- $('#account').attr('placeholder', '');
- $('#password').attr('placeholder', '');
- switch(appType)
- {
- case 'gitlab':
- $('#createAppForm').attr('action', $.createLink('gitlab', 'create'));
- $('#url').attr('placeholder', gitlabUrlTips);
- $('#token').attr('placeholder', gitlabTokenTips);
- break;
- case 'gitea':
- $('#createAppForm').attr('action', $.createLink('gitea', 'create'));
- break;
- case 'gogs':
- $('#createAppForm').attr('action', $.createLink('gogs', 'create'));
- break;
- case 'jenkins':
- $('#createAppForm').attr('action', $.createLink('jenkins', 'create'));
- $('#token').attr('placeholder', jenkinsTokenTips);
- $('#password').attr('placeholder', jenkinsPasswordTips);
- break;
- case 'sonarqube':
- $('#createAppForm').attr('action', $.createLink('sonarqube', 'create'));
- $('#url').attr('placeholder', sonarqubeUrlTips);
- $('#account').attr('placeholder', sonarqubeAccountTips);
- break;
- case 'nexus':
- $('#createAppForm').attr('action', $.createLink('instance', 'createExternalApp', 'type=nexus'));
- break;
- }
- }
- window.onChangeStoreAppType = function(event)
- {
- let storeApp = appID;
- if(!storeApp)
- {
- if(typeof(event) == 'undefined')
- {
- storeApp = defaultApp;
- }
- else
- {
- storeApp = $('[name=storeAppType]').val();
- }
- }
- $('#createStoreAppForm').data('appid', storeApp);
- $('#createStoreAppForm').attr('action', $.createLink('instance', 'install', 'appID=' + storeApp));
- if(externalApps.indexOf(apps[storeApp]) !== -1)
- {
- $('#createStoreAppForm input[name=type][value=external]').prop('disabled', false);
- }
- else
- {
- $('#createStoreAppForm input[name=type][value=external]').prop('disabled', true);
- }
- toggleLoading('#app_version', true);
- toggleLoading('#dbService', true);
- if(storeApp)
- {
- $.getJSON($.createLink('space', 'getStoreAppInfo', 'appID=' + storeApp), function(app)
- {
- $('#app_version').val(app.app_version);
- if(showVersion === true)
- {
- $('#version').picker({items: app.versionList, name: 'version', required: true});
- setTimeout(() =>
- {
- $('#version').picker('setValue', app.versionList[0].value);
- }, 300);
- }
- else
- {
- $('#version').val(app.version);
- }
- if((app.dependencies.mysql && mysqlList) || (app.dependencies.postgresql && pgList && pgList.length > 0))
- {
- $('div.dbType').removeClass('hidden');
- $('[name=dbService]').prop('disabled', false);
- const dbServiceItems = [];
- const dbService = (app.dependencies.mysql && mysqlList) ? mysqlList : pgList;
- for(i in dbService)
- {
- dbServiceItems.push({'text': dbService[i].alias, 'value': dbService[i].name});
- }
- $('#dbService').zui('picker').render({items: dbServiceItems});
- }
- else
- {
- $('div.dbType').addClass('hidden');
- $('[name=dbService]').prop('disabled', true);
- }
- toggleLoading('#app_version', false);
- toggleLoading('#dbService', false);
- });
- }
- }
- function onChangeDbType(event)
- {
- const dbType = $(event.target).val();
- if(dbType == 'sharedDB')
- {
- $('div.dbService').removeClass('hidden');
- $('[name=dbService]').prop('disabled', false);
- }
- else
- {
- $('div.dbService').addClass('hidden');
- $('[name=dbService]').prop('disabled', true);
- }
- }
- window.alertResource = function()
- {
- zui.Modal.confirm({'message': resourceAlert}).then((res) =>
- {
- if(res)
- {
- var appID = $('#createStoreAppForm').data('appid');
- $('#createStoreAppForm').attr('action', $.createLink('instance', 'install', 'appID=' + appID + '&checkResource=false'));
- $('#createStoreAppForm .form-row .toolbar button[type=submit]').trigger('click');
- }
- });
- }
- $(function()
- {
- onChangeStoreAppType();
- $('div.dbService .form-label').removeClass('required');
- });
|