File manager - Edit - /usr/local/cpanel/whostmgr/docroot/templates/easyapache4/directives/eaWizard.min.js
Back
define(["angular","cjt/core","lodash","cjt/util/locale","cjt/filters/qaSafeIDFilter","app/services/ea4Data","app/services/ea4Util"],(function(angular,CJT,_,LOCALE){"use strict";var app=angular.module("App");app.directive("eaWizard",["$timeout","ea4Data","ea4Util","wizardApi","pkgResolution",function($timeout,ea4Data,ea4Util,wizardApi,pkgResolution){var TEMPLATE_PATH="directives/eaWizard.ptt";var RELATIVE_PATH="templates/easyapache4/"+TEMPLATE_PATH;var ddo={replace:true,restrict:"E",templateUrl:CJT.config.debug?CJT.buildFullPath(RELATIVE_PATH):TEMPLATE_PATH,scope:{idPrefix:"@",totalPackageInfoList:"=",selectedPackages:"=",metaData:"=",stepName:"@",stepIndex:"@",stepTitle:"@",stepPath:"@",stepNext:"@",onToggleFn:"&",showSearch:"@",showPagination:"@"},link:function postLink(scope,element,attrs){var continueResolvingDeps=function(thisPackage){thisPackage.multiRequirements.exist=false;var chosenPkgName=thisPackage.multiRequirements.chosenPackage;var data=pkgResolution.continueResolvingDependencies(thisPackage,scope.totalPackageInfoList[chosenPkgName],chosenPkgName,scope.totalPackageInfoList,scope.selectedPackages);if(data.orListExist){thisPackage.multiRequirements=pkgResolution.setupMultiRequirementForUserInput(scope.totalPackageInfoList);return false}else if(data.actionNeeded){thisPackage=pkgResolution.setupConDepCallout(thisPackage,scope.totalPackageInfoList);return false}else{return scope.applyDependency(thisPackage)}};var getAllRequiredPhpExtensions=function(pkgName){var reqPkgs=[];var allDeps=pkgResolution.getAllDepsRecursively(true,scope.totalPackageInfoList[pkgName],pkgName,scope.totalPackageInfoList,scope.selectedPackages);if(allDeps){reqPkgs=ea4Util.getExtensionsForPHPVersion(pkgName,allDeps.requiredPkgs)}return reqPkgs};var getAutoSelectPhpExtensions=function(thisPackage){var autoSelectExtList=[];var extList=scope.php.commonExtensions;var isNonEaPackage=!/^ea-/i.test(thisPackage);extList=_.map(extList,(function(ext){var candidateName=thisPackage+"-"+ext;if(scope.totalPackageInfoList[candidateName]){return candidateName}if(isNonEaPackage&&ext.indexOf("php-")===0){var nonEaCandidateName=thisPackage+"-"+ext.substring(4);if(scope.totalPackageInfoList[nonEaCandidateName]){return nonEaCandidateName}}if(!isNonEaPackage&&ext.indexOf("php-")!==0){var eaCandidateName=thisPackage+"-php-"+ext;if(scope.totalPackageInfoList[eaCandidateName]){return eaCandidateName}}return candidateName}));var requiredExtensions=getAllRequiredPhpExtensions(thisPackage);extList=_.filter(extList,(function(ext){var extension=scope.totalPackageInfoList[ext];var notRequired=false;if(typeof extension!=="undefined"&&!_.includes(requiredExtensions,ext)){notRequired=true}return notRequired}));autoSelectExtList=_.map(extList,(function(ext){var displayName=ea4Util.getFormattedPackageName(ext);return{package:ext,displayName:displayName,isSelected:true}}));return autoSelectExtList};var formatPhpVersionForDisplay=function(ver){var phpMatch=ver.match(ea4Util.phpVerRegex);var formatted="";if(phpMatch){var phpVersion=phpMatch[1];formatted="PHP "+phpVersion.replace(/(\d)(\d)$/,"$1.$2")}return formatted};var updatePHP=function(thisPackage){var selectedState=!thisPackage.selectedPackage;var version=thisPackage.package;if(!selectedState){var vhostsCount=0;ea4Data.getVhostsByPhpVersion(version).then((function(data){if(typeof data!=="undefined"){vhostsCount=data.length}if(vhostsCount>0){thisPackage=ea4Util.setupVhostWarning(thisPackage,vhostsCount);return}var isComplete=scope.checkDependency(thisPackage);if(isComplete){scope.php.updatePHPExtensionList(thisPackage)}}),(function(error){}));thisPackage.autoSelectExt=angular.copy(ea4Util.autoSelectExt)}else{scope.checkDependency(thisPackage);if(thisPackage.selectedPackage){thisPackage.autoSelectExt=angular.copy(ea4Util.autoSelectExt);thisPackage.autoSelectExt.list=getAutoSelectPhpExtensions(thisPackage.package);var extCount=thisPackage.autoSelectExt.list.length;thisPackage.autoSelectExt.text=LOCALE.maketext("In addition to the dependencies that this version of [asis,PHP] requires, the system detected [quant,_1,extension,extensions] of all other installed PHP versions that it will install for this version.",extCount);var displayVersion=formatPhpVersionForDisplay(version);thisPackage.autoSelectExt.okText=LOCALE.maketext("[_1][comment,package name] and Extensions[comment,action text]",displayVersion);thisPackage.autoSelectExt.cancelText=LOCALE.maketext("[_1][comment,package name] Only[comment,action text]",displayVersion);thisPackage.autoSelectExt.show=extCount>0&&!thisPackage.actions.actionNeeded?true:false}}};var finishUpdatePHP=function(thisPackage){if(!thisPackage.selectedPackage){var isComplete=scope.applyDependency(thisPackage);if(isComplete){scope.php.updatePHPExtensionList(thisPackage)}}else{scope.applyDependency(thisPackage);scope.php.autoSelectExtList=getAutoSelectPhpExtensions(thisPackage.package);thisPackage.autoSelectExt.show=thisPackage.autoSelectExt.list.length>0&&!thisPackage.actions.actionNeeded?true:false}};var continueResolvingDepsForPhp=function(thisPackage){if(!thisPackage.selectedPackage){var isComplete=continueResolvingDeps(thisPackage);if(isComplete){scope.php.updatePHPExtensionList(thisPackage)}}else{continueResolvingDeps(thisPackage)}};scope.php={commonExtensions:[],updatePHPExtensionList:function(thisPackage){if(!thisPackage.selectedPackage){var list=ea4Util.getExtensionsForPHPVersion(thisPackage.package,scope.selectedPackages);_.each(list,(function(pkg){if(typeof scope.totalPackageInfoList[pkg]!=="undefined"){scope.totalPackageInfoList[pkg].selectedPackage=false}_.pull(scope.selectedPackages,pkg)}))}},continueCheckDependency:function(thisPackage){ea4Util.resetVhostWarning(thisPackage);var isComplete=scope.checkDependency(thisPackage);if(!thisPackage.selectedPackage&&isComplete){scope.php.updatePHPExtensionList(thisPackage)}},resetVhostWarning:function(thisPackage){return ea4Util.resetVhostWarning(thisPackage)}};scope.extensions={_extToConsider:[],_extensionList:{},noPHPSelected:false,filterPHPExtensions:function(){var phpVersions=scope.phpVersions;var showList=[];_.each(phpVersions,(function(ver){if(ver.selected){var testString=new RegExp(ver.version+".*","i");var list=_.filter(scope.extensions._extToConsider,(function(name){return testString.test(name)}));showList=_.union(showList,list)}}));scope.currPkgInfoList=_.pick(scope.extensions._extensionList,showList);scope.applyMetaData()},showPhpFilterTags:function(){return scope.stepName==="extensions"&&!_.isEmpty(scope.extensions._extensionList)}};scope.toggleLabel=function(thisPackage){return ea4Util.getPackageLabel(thisPackage.selectedPackage,thisPackage.state)};scope.packageClass=function(thisPackage){return ea4Util.getPackageClass(thisPackage.selectedPackage,thisPackage.state)};scope.applyDependency=function(thisPackage){var pkgName=thisPackage.package;var selectedPackages=scope.selectedPackages;var resData=pkgResolution.getResolvedData();thisPackage.mpmMissing=false;thisPackage.mpmMissingMsg="";if(thisPackage.actions.actionNeeded){thisPackage=ea4Util.checkMPMRequirement(thisPackage,resData,selectedPackages,thisPackage.selectedPackage);if(thisPackage.mpmMissing){return false}}_.each(resData.removeList,(function(conflict){_.pull(selectedPackages,conflict);if(typeof scope.totalPackageInfoList[conflict]!=="undefined"){scope.totalPackageInfoList[conflict].selectedPackage=false}}));_.each(resData.addList,(function(dep){selectedPackages=_.concat(selectedPackages,dep);if(typeof scope.totalPackageInfoList[dep]!=="undefined"){scope.totalPackageInfoList[dep].selectedPackage=true}}));if(!thisPackage.selectedPackage){_.pull(selectedPackages,pkgName);if(typeof scope.totalPackageInfoList[pkgName]!=="undefined"){scope.totalPackageInfoList[pkgName].selectedPackage=false}}scope.selectedPackages=selectedPackages;thisPackage=pkgResolution.resetPkgResolveActions(thisPackage);ea4Data.setData({pkgInfoList:scope.totalPackageInfoList});return true};scope.checkDependency=function(thisPackage){var selected=false;var pkgName=thisPackage.package;var selectedPackages=scope.selectedPackages;thisPackage.actions={removeList:[],addList:[],actionNeeded:false};thisPackage.selectedPackage=scope.totalPackageInfoList[pkgName].selectedPackage=selected=!thisPackage.selectedPackage;thisPackage.recommendations=ea4Util.decideShowHideRecommendations(thisPackage.recommendations,scope.selectedPackages,selected,pkgName);thisPackage.showRecommendations=!_.every(thisPackage.recommendations,["show",false]);if(selected){var data=pkgResolution.resolveDependenciesWhenSelected(thisPackage,selectedPackages,scope.totalPackageInfoList);if(data.orListExist){thisPackage.multiRequirements=pkgResolution.setupMultiRequirementForUserInput(scope.totalPackageInfoList);return false}else if(data.actionNeeded){thisPackage=pkgResolution.setupConDepCallout(thisPackage,scope.totalPackageInfoList);return false}else{if(thisPackage.showRecommendations){thisPackage.actions.actionNeeded=true;return false}else{return scope.applyDependency(thisPackage)}}}else{pkgResolution.resolveDependenciesWhenUnSelected(thisPackage,selectedPackages,scope.totalPackageInfoList);if(thisPackage.showRecommendations){thisPackage.actions.actionNeeded=true;return false}else{thisPackage.mpmMissing=false;thisPackage.mpmMissingMsg="";var resData=pkgResolution.getResolvedData();thisPackage=ea4Util.checkMPMRequirement(thisPackage,resData,selectedPackages,selected);if(thisPackage.mpmMissing){return false}else{return scope.applyDependency(thisPackage)}}}};scope.applyMetaData=function(){scope.metaData=ea4Util.getUpdatedMetaData(scope.currPkgInfoList,scope.metaData)};scope.getShowingText=function(){return ea4Util.getPageShowingText(scope.metaData)};scope.showSearchPageSection=function(){if(scope.stepName==="extensions"){return scope.stepName==="extensions"&&!scope.extensions.noPHPSelected}else{return true}};scope.showEmptyMessage=function(){var show=false;if(scope.stepName==="extensions"){show=!scope.extensions.noPHPSelected&&scope.metaData.isEmptyList}else{show=scope.metaData.isEmptyList}return show};scope.showToggleSwitch=function(pkgData){if(scope.stepName==="php"){return!pkgData.actions.actionNeeded&&!pkgData.multiRequirements.exist&&!pkgData.mpmMissing&&!pkgData.vhostWarning.exist}else{return!pkgData.actions.actionNeeded&&!pkgData.multiRequirements.exist&&!pkgData.mpmMissing}};scope.initializeSelection=function(pkgData){if(scope.stepName==="php"){updatePHP(pkgData)}else{scope.checkDependency(pkgData)}};scope.php.resetAutoSelectExtensions=function(pkgData){pkgData.autoSelectExt=angular.copy(ea4Util.autoSelectExt)};scope.php.performAutoSelect=function(thisPackage){var extList=_.filter(thisPackage.autoSelectExt.list,["isSelected",true]);_.each(extList,(function(oExt){var pkgName=oExt.package;var selected=true;var selectedPackages=scope.selectedPackages;var pkgData=scope.totalPackageInfoList[pkgName];pkgResolution.resetCommonVariables();pkgData.selectedPackage=selected;var data=pkgResolution.resolveDependenciesWhenSelected(pkgData,selectedPackages,scope.totalPackageInfoList);if(data.orListExist||data.actionNeeded){pkgData.selectedPackage=!selected;thisPackage.autoSelectExt.errorList.push(pkgName)}else{return scope.applyDependency(pkgData)}}));if(thisPackage.autoSelectExt.errorList.length>0){thisPackage.autoSelectExt.showError=true}else{scope.php.resetAutoSelectExtensions(thisPackage)}};scope.continueProcess=function(pkgData){if(scope.stepName==="php"){return continueResolvingDepsForPhp(pkgData)}else{return continueResolvingDeps(pkgData)}};scope.finalizeSelection=function(pkgData){if(scope.stepName==="php"){finishUpdatePHP(pkgData)}else{scope.applyDependency(pkgData)}};scope.resetSelection=function(thisPackage){thisPackage.selectedPackage=!thisPackage.selectedPackage;thisPackage=pkgResolution.resetPkgResolveActions(thisPackage)};scope.proceed=function(step){ea4Data.setData({pkgInfoList:scope.totalPackageInfoList,selectedPkgs:scope.selectedPackages});wizardApi.next(step)};var initWizard=function(){scope.showSearch=false;scope.showPagination=false;var thisStep=wizardApi.getStepByName(scope.stepName);if(typeof thisStep!=="undefined"){scope.stepIndex=thisStep.stepIndex||-1;scope.stepPath=thisStep.path||"";scope.stepTitle=thisStep.title||"";scope.idPrefix=thisStep.name||"eaWizard";scope.stepNext=thisStep.nextStep||""}scope.currPkgInfoList=ea4Data.getPkgInfoByType(scope.stepName,scope.totalPackageInfoList);scope.metaData=ea4Util.getDefaultMetaData();scope.applyMetaData(scope.currPkgInfoList,scope.metaData);$timeout((function(){element.find("#wizard-step-title").focus()}));if(scope.stepName==="extensions"){var currentPkgInfoList=scope.currPkgInfoList;var phpVersionsAndExtensions=ea4Util.getExtensionsOfSelectedPHPVersions(scope.totalPackageInfoList,currentPkgInfoList,scope.selectedPackages);scope.extensions.noPHPSelected=phpVersionsAndExtensions.noPHPSelected;scope.phpVersions=_.map(phpVersionsAndExtensions.versions,(function(ver){if(typeof scope.totalPackageInfoList[ver]!=="undefined"){return{version:scope.totalPackageInfoList[ver].package,name:scope.totalPackageInfoList[ver].filterName||scope.totalPackageInfoList[ver].displayName,selected:true}}}));scope.extensions._extToConsider=phpVersionsAndExtensions.extensions;scope.extensions._extensionList=_.pick(currentPkgInfoList,scope.extensions._extToConsider);scope.currPkgInfoList=scope.extensions._extensionList;scope.applyMetaData()}else if(scope.stepName==="php"){var allPhpExtensions=ea4Data.getPkgInfoByType("extensions",scope.totalPackageInfoList);var installedPhpVersions=_.map(_.filter(scope.currPkgInfoList,(function(pkgInfo){return pkgInfo.state!=="not_installed"})),"package");scope.php.commonExtensions=ea4Util.getCommonlyInstalledExtensions(allPhpExtensions,installedPhpVersions)}};initWizard()}};return ddo}])}));
| ver. 1.4 |
Github
|
.
| PHP 8.1.34 | Generation time: 0.05 |
proxy
|
phpinfo
|
Settings