Viewing File: /usr/local/cpanel/whostmgr/docroot/templates/multiphp_manager/poolOptionsForm.ptt
<h2 class="break-on-mobile" ng-if="displayValue.displayMode === 'default'">[% locale.maketext('System [asis,PHP-FPM] Configuration') %]</h2>
<h2 class="break-on-mobile" ng-if="displayValue.displayMode === 'domain'">[% locale.maketext('[asis,PHP-FPM] Configuration Options for the “[_1]” domain.', '{{displayValue.selectedDomain}}') %]</h2>
<cp-loading-panel id="loadingPHPFPMPoolOptionsPanel" ng-show="actions.initialLoading">[% locale.maketext('Loading …') %]</cp-loading-panel>
<div ng-if="!actions.initialLoading" class="col-xs-12 col-md-8">
<form name="poolOptionsForm" id="poolOptionsForm" class="form layout-medium" novalidate>
<div class="panel panel-default">
<div class="panel-heading">[% locale.maketext('[asis,PHP-FPM] Configuration') %]</div>
<div class="panel-body">
<div class="section">
<div class="form-group">
<h3 class="section-heading">[% locale.maketext('PHP-FPM Pool Options') %]</h3>
<div class="row label-row">
<div class="col-xs-12 col-sm-6 col-md-6 col-lg-6">
<label for="maxRequestsInput">[% locale.maketext('Max Requests') %]</label>
</div>
<div class="col-xs-12 col-sm-6 col-md-6 col-lg-6"></div>
</div>
<div class="row">
<div class="col-xs-12 col-sm-3 col-md-3 col-lg-3">
<input
id="maxRequestsInput"
name="maxRequestsInput"
type="number"
class="form-control"
ng-model="poolOptions.pm_max_requests.value"
num-greater-than-equal="1"
num-less-than-equal="10000000"
positive-integer
required />
</div>
<ul class="col-xs-12 col-sm-9 col-md-9 col-lg-8" validation-container field-name="maxRequestsInput">
<li validation-item field-name="maxRequestsInput" validation-name="positive-integer">
[% locale.maketext("The input should be a positive whole number.") %]
</li>
<li validation-item field-name="maxRequestsInput" validation-name="number">
[% locale.maketext("The input should be a positive whole number.") %]
</li>
<li validation-item field-name="maxRequestsInput" validation-name="required">
[% locale.maketext("The input should be a positive whole number.") %]
</li>
</ul>
</div>
<div class="row label-row">
<div class="col-xs-12 col-sm-6 col-md-6 col-lg-6">
<label for="idleTimeInput">[% locale.maketext('Process Idle Timeout') %]</label>
</div>
<div class="col-xs-12 col-sm-6 col-md-6 col-lg-6"></div>
</div>
<div class="row">
<div class="col-xs-12 col-sm-3 col-md-3 col-lg-3">
<input
id="idleTimeInput"
name="idleTimeInput"
type="number"
class="form-control"
ng-model="poolOptions.pm_process_idle_timeout.value"
num-greater-than-equal="1"
num-less-than-equal="10000000"
positive-integer
required />
</div>
<ul class="col-xs-12 col-sm-9 col-md-9 col-lg-8" validation-container field-name="idleTimeInput">
<li validation-item field-name="idleTimeInput" validation-name="number">
[% locale.maketext("The input should be a positive whole number.") %]
</li>
<li validation-item field-name="idleTimeInput" validation-name="positive-integer">
[% locale.maketext("The input should be a positive whole number.") %]
</li>
<li validation-item field-name="idleTimeInput" validation-name="required">
[% locale.maketext("The input should be a positive whole number.") %]
</li>
</ul>
</div>
<div class="row label-row">
<div class="col-xs-12 col-sm-6 col-md-6 col-lg-6">
<label for="maxChildrenInput">[% locale.maketext('Max Children') %]</label>
</div>
<div class="col-xs-12 col-sm-6 col-md-6 col-lg-6"></div>
</div>
<div class="row">
<div class="col-xs-12 col-sm-3 col-md-3 col-lg-3">
<input
id="maxChildrenInput"
name="maxChildrenInput"
type="number"
class="form-control"
ng-model="poolOptions.pm_max_children.value"
num-greater-than-equal="1"
num-less-than-equal="10000"
positive-integer
required />
</div>
<ul class="col-xs-12 col-sm-9 col-md-9 col-lg-8" validation-container field-name="maxChildrenInput">
<li validation-item field-name="maxChildrenInput" validation-name="number">
[% locale.maketext("The input should be a positive whole number.") %]
</li>
<li validation-item field-name="maxChildrenInput" validation-name="positive-integer">
[% locale.maketext("The input should be a positive whole number.") %]
</li>
<li validation-item field-name="maxChildrenInput" validation-name="required">
[% locale.maketext("The input should be a positive whole number.") %]
</li>
</ul>
</div>
<hr />
<div class="row">
<h3 class="col-lg-12">[% locale.maketext('PHP INI Directives') %]</h3>
</div>
<div class="row label-row">
<div class="col-xs-12 col-sm-6 col-md-6 col-lg-6">
<div class="checkbox">
<label for="urlFopenInput">
<input
id="urlFopenInput"
type="checkbox"
ng-model="poolOptions.allow_url_fopen.value" />
<span>[% locale.maketext('Treat URLs as files [output,chr,40][asis,allow_url_fopen][output,chr,41]') %]</span>
</label>
</div>
</div>
<div class="col-xs-12 col-sm-6 col-md-6 col-lg-6">
<button
id="allowURLFopenBtnToggle"
type="button"
class="btn btn-default"
ng-model="poolOptions.allow_url_fopen.admin"
ng-click="toggleOverrideVal('allow_url_fopen',poolOptionsForm)"
ng-class="{'locked-button': poolOptions.allow_url_fopen.admin}">
<span ng-if="!poolOptions.allow_url_fopen.admin"><i class="fas fa-unlock-alt admin-toggle-icon" aria-hidden="true"></i>[% locale.maketext('Lock user override ability[output,nbsp]') %]</span>
<span ng-if="poolOptions.allow_url_fopen.admin"><i class="fas fa-lock admin-toggle-icon" aria-hidden="true"></i>[% locale.maketext('Unlock user override ability[output,nbsp]') %]</span>
</button>
<hr class="hidden-sm hidden-md hidden-lg" />
</div>
</div>
<div class="row label-row">
<div class="col-xs-12 col-sm-6 col-md-6 col-lg-6">
<div class="checkbox">
<label for="logErrorsInput">
<input
id="logErrorsInput"
type="checkbox"
ng-model="poolOptions.log_errors.value" />
[% locale.maketext('Log errors [output,chr,40][asis,log_errors][output,chr,41]') %]
</label>
</div>
</div>
<div class="col-xs-12 col-sm-6 col-md-6 col-lg-6">
<button
id="logErrsBtnToggle"
type="button"
class="btn btn-default"
ng-model="poolOptions.log_errors.admin"
ng-click="toggleOverrideVal('log_errors',poolOptionsForm)"
ng-class="{'locked-button': poolOptions.log_errors.admin}">
<span ng-if="!poolOptions.log_errors.admin"><i ng-if="!poolOptions.log_errors.admin" class="fas fa-unlock-alt admin-toggle-icon" aria-hidden="true"></i>[% locale.maketext('Lock user override ability[output,nbsp]') %]</span>
<span ng-if="poolOptions.log_errors.admin"><i ng-if="poolOptions.log_errors.admin" class="fas fa-lock admin-toggle-icon" aria-hidden="true"></i>[% locale.maketext('Unlock user override ability[output,nbsp]') %]</span>
</button>
<hr class="hidden-sm hidden-md hidden-lg" />
</div>
</div>
<div class="row label-row">
<div class="col-xs-12 col-sm-6 col-md-6 col-lg-6">
<div class="checkbox">
<label for="shortOpenTagInput">
<input
id="shortOpenTagInput"
type="checkbox"
ng-model="poolOptions.short_open_tag.value" />
[% locale.maketext('Recognize code between [output,lt]? and ?[output,gt] tags as PHP source [output,chr,40][asis,short_open_tag][output,chr,41]') %]
</label>
</div>
</div>
<div class="col-xs-12 col-sm-6 col-md-6 col-lg-6">
<button
id="shortOpenTagBtnToggle"
type="button"
class="btn btn-default"
ng-model="poolOptions.short_open_tag.admin"
ng-click="toggleOverrideVal('short_open_tag',poolOptionsForm)"
ng-class="{'locked-button': poolOptions.short_open_tag.admin}">
<span ng-if="!poolOptions.short_open_tag.admin"><i ng-if="!poolOptions.short_open_tag.admin" class="fas fa-unlock-alt admin-toggle-icon" aria-hidden="true"></i>[% locale.maketext('Lock user override ability[output,nbsp]') %]</span>
<span ng-if="poolOptions.short_open_tag.admin"><i ng-if="poolOptions.short_open_tag.admin" class="fas fa-lock admin-toggle-icon" aria-hidden="true"></i>[% locale.maketext('Unlock user override ability[output,nbsp]') %]</span>
</button>
<hr class="hidden-sm hidden-md hidden-lg" />
</div>
</div>
<div class="row label-row">
<div class="col-xs-12 col-sm-6 col-md-6 col-lg-6">
<label for="docRootInput" ng-if="displayValue.displayMode === 'default'">[% locale.maketext('The PHP pages’ document root [output,chr,40][asis,doc_root][output,chr,41]') %]</label>
<toggle-label-info
for="docRootInput"
label-text="[% locale.maketext('The PHP pages’ document root [output,chr,40][asis,doc_root][output,chr,41]') %]"
label-id="docRootLabel"
ng-if="displayValue.displayMode === 'domain'"
info-icon-id="docRootLabelIcon"
info-block-id="docRootInfoBlock"
show-info-block="false">
[% locale.maketext('Enter a path, relative to this directory: [output,strong,_1]', '{{displayValue.docRootDisplayValue}}') %]
</toggle-label-info>
</div>
<div class="col-xs-12 col-sm-6 col-md-6 col-lg-6"></div>
</div>
<div class="row">
<div class="col-xs-12 col-sm-6 col-md-6 col-lg-6">
<input
id="documentRootDefaultPlaceholder"
type="text"
class="form-control"
ng-if="displayValue.displayMode === 'default'"
placeholder="[% locale.maketext('Only valid for domain settings[output,nbsp]') %]"
ng-disabled="true"
aria-label="Placeholder only valid for domain settings" />
<input
id="documentRootInput"
name="documentRootInput"
ng-if="displayValue.displayMode === 'domain'"
type="text"
class="form-control"
ng-model="poolOptions.doc_root.value"
aria-label="document root input" />
</div>
<div class="col-xs-12 col-sm-6 col-md-6 col-lg-6">
<button
id="docRootBtnToggle"
type="button"
class="btn btn-default"
ng-model="poolOptions.doc_root.admin"
ng-click="toggleOverrideVal('doc_root',poolOptionsForm)"
ng-class="{'locked-button': poolOptions.doc_root.admin}">
<span ng-if="!poolOptions.doc_root.admin"><i ng-if="!poolOptions.doc_root.admin" class="fas fa-unlock-alt admin-toggle-icon" aria-hidden="true"></i>[% locale.maketext('Lock user override ability[output,nbsp]') %]</span>
<span ng-if="poolOptions.doc_root.admin"><i ng-if="poolOptions.doc_root.admin" class="fas fa-lock admin-toggle-icon" aria-hidden="true"></i>[% locale.maketext('Unlock user override ability[output,nbsp]') %]</span>
</button>
<hr class="hidden-sm hidden-md hidden-lg" />
</div>
</div>
<div class="row">
<div class="col-xs-12 col-sm-6 col-md-6 col-lg-6">
<ul validation-container field-name="documentRootInput"></ul>
</div>
</div>
<div class="row label-row">
<div class="col-xs-12 col-sm-6 col-md-6 col-lg-6">
<label ng-if="displayValue.displayMode === 'default'" for="errorLogInput">[% locale.maketext('The error log file [output,chr,40][asis,error_log][output,chr,41]') %]</label>
<toggle-label-info
ng-if="displayValue.displayMode === 'domain'"
for="errorLogInput"
label-text="[% locale.maketext('The error log file [output,chr,40][asis,error_log][output,chr,41]') %]"
label-id="errorLogLabel"
info-icon-id="errorLogLabelIcon"
info-block-id="errorLogInfoBlock"
show-info-block="false">
[% locale.maketext('Enter a path, relative to this directory: [output,strong,_1]', '{{displayValue.logDirDisplayValue}}') %]
</toggle-label-info>
</div>
<div class="col-xs-12 col-sm-6 col-md-6 col-lg-6"></div>
</div>
<div class="row">
<div class="col-xs-12 col-sm-6 col-md-6 col-lg-6">
<input
id="errorLogDefaultPlaceholder"
type="text"
class="form-control"
ng-if="displayValue.displayMode === 'default'"
placeholder="[% locale.maketext('Only valid for domain settings[output,nbsp]') %]"
ng-disabled="true"
aria-label="Placeholder only valid for domain settings" />
<input
id="errorLogInput"
name="errorLogInput"
type="text"
ng-if="displayValue.displayMode === 'domain'"
class="form-control"
ng-model="poolOptions.error_log.value" />
</div>
<div class="col-xs-12 col-sm-6 col-md-6 col-lg-6"><button
id="errLogBtnToggle"
type="button"
class="btn btn-default"
ng-model="poolOptions.error_log.admin"
ng-click="toggleOverrideVal('error_log',poolOptionsForm)"
ng-class="{'locked-button': poolOptions.error_log.admin}">
<span ng-if="!poolOptions.error_log.admin"><i ng-if="!poolOptions.error_log.admin" class="fas fa-unlock-alt admin-toggle-icon" aria-hidden="true"></i>[% locale.maketext('Lock user override ability[output,nbsp]') %]</span>
<span ng-if="poolOptions.error_log.admin"><i ng-if="poolOptions.error_log.admin" class="fas fa-lock admin-toggle-icon" aria-hidden="true"></i>[% locale.maketext('Unlock user override ability[output,nbsp]') %]</span>
</button>
<hr class="hidden-sm hidden-md hidden-lg" />
</div>
</div>
<div class="row">
<div class="col-xs-12 col-sm-6 col-md-6 col-lg-6">
<ul validation-container field-name="errorLogInput"></ul>
</div>
</div>
<div class="row label-row">
<div class="col-xs-12 col-sm-6 col-md-6 col-lg-6">
<toggle-label-info
for="disableFunctionsInput"
label-text="[% locale.maketext('Disabled functions [output,chr,40][asis,disable_functions][output,chr,41]') %]"
label-id="disableFunctionsLabel"
info-icon-id="disableFunctionsLabelIcon"
info-block-id="disableFunctionsInfoBlock"
show-info-block="false">
[% locale.maketext('Enter a function. To enter multiple functions, separate them with commas.') %]
</toggle-label-info>
</div>
<div class="col-xs-12 col-sm-6 col-md-6 col-lg-6"></div>
</div>
<div class="row">
<div class="col-xs-12 col-sm-6 col-md-6 col-lg-6">
<div class="input-group">
<input
id="disableFunctionsInput"
type="text"
class="form-control"
ng-model="displayValue.disabledFuncs"
ng-change="deactivateSaveActions(poolOptionsForm)"
aria-label="[% locale.maketext('Disabled functions [output,chr,40][asis,disable_functions][output,chr,41]') %]" />
<span class="input-group-btn">
<button
button-ng-class="getDefaultButtonClasses()"
type="button"
cp-action="addFunctionsToDisable(displayValue.disabledFuncs, poolOptionsForm)"
ng-disabled="!displayValue.disabledFuncs">[% locale.maketext('[output,chr,43]Add') %]
</button>
</span>
</div>
</div>
<div class="col-xs-12 col-sm-6 col-md-6 col-lg-6"><button
id="disableFuncsBtnToggle"
type="button"
class="btn btn-default"
ng-model="poolOptions.disable_functions.admin"
ng-click="toggleOverrideVal('disable_functions',poolOptionsForm)"
ng-class="{'locked-button': poolOptions.disable_functions.admin}">
<span ng-if="!poolOptions.disable_functions.admin"><i ng-if="!poolOptions.disable_functions.admin" class="fas fa-unlock-alt admin-toggle-icon" aria-hidden="true"></i>[% locale.maketext('Lock user override ability[output,nbsp]') %]</span>
<span ng-if="poolOptions.disable_functions.admin"><i ng-if="poolOptions.disable_functions.admin" class="fas fa-lock admin-toggle-icon" aria-hidden="true"></i>[% locale.maketext('Unlock user override ability[output,nbsp]') %]</span>
</button>
</div>
</div>
<div class="row edit-input-row">
<div class="col-xs-12 col-sm-6 col-md-6 col-lg-6">
<uib-accordion>
<uib-accordion-group
is-open="displayValue.disabledFuncsPanelOpen">
<uib-accordion-heading>
[% locale.maketext('Edit function list[output,nbsp]') %]
<i class="pull-right glyphicon" ng-class="{'glyphicon-chevron-down': displayValue.disabledFuncsPanelOpen, 'glyphicon-chevron-right': !displayValue.disabledFuncsPanelOpen}"></i>
</uib-accordion-heading>
<ul id="disabledFunctionsList">
<li ng-repeat="command in poolOptions.disable_functions.value track by $index | orderBy: 'command'" id="disabled_command_{{command}}">
<span class="btn-group btn-group-xs disabled-function-btn-group" role="group">
<button
type="button"
class="btn btn-default lister-button"
value="{{command}}">{{command}}</button>
<button
type="button"
ng-disabled="actions.validatingFuncs"
class="btn btn-default"
ng-click="removeDisabledFunction(command, poolOptionsForm)"
aria-label="remove function">
<i class="fas fa-times fa-xs" aria-hidden="true"></i>
</button>
</span>
</li>
</ul>
</uib-accordion-group>
</uib-accordion>
</div>
</div>
<hr class="hidden-sm hidden-md hidden-lg" />
<div class="row label-row">
<div class="col-xs-12 col-sm-6 col-md-6 col-lg-6">
<toggle-label-info
for="errorReportingInput"
label-text="[% locale.maketext('Report these errors [output,chr,40][asis,error_reporting][output,chr,41]') %]"
label-id="errorReportingLabel"
info-icon-id="errorReportingLabelIcon"
info-block-id="errorReportingInfoBlock"
show-info-block="false">
[% locale.maketext('Enter an error. To enter multiple errors, separate them with commas.') %]
</toggle-label-info>
</div>
<div class="col-xs-12 col-sm-6 col-md-6 col-lg-6"></div>
</div>
<div class="row">
<div class="col-xs-12 col-sm-6 col-md-6 col-lg-6">
<div class="input-group">
<input
id="errorReportingInput"
type="text"
class="form-control"
ng-model="displayValue.reportedErrs"
ng-change="deactivateSaveActions(poolOptionsForm)"
aria-label="[% locale.maketext('Report these errors [output,chr,40][asis,error_reporting][output,chr,41]') %]" />
<span class="input-group-btn">
<button
button-ng-class="getDefaultButtonClasses()"
type="button"
cp-action="addErrsToReport(displayValue.reportedErrs, poolOptionsForm)"
ng-disabled="!displayValue.reportedErrs">[% locale.maketext('[output,chr,43]Add') %]
</button>
</span>
</div>
</div>
<div class="col-xs-12 col-sm-6 col-md-6 col-lg-6">
<button
id="errReportingBtnToggle"
type="button"
class="btn btn-default"
ng-model="poolOptions.error_reporting.admin"
ng-click="toggleOverrideVal('error_reporting', poolOptionsForm)"
ng-class="{'locked-button': poolOptions.error_reporting.admin}">
<span ng-if="!poolOptions.error_reporting.admin"><i ng-if="!poolOptions.error_reporting.admin" class="fas fa-unlock-alt admin-toggle-icon" aria-hidden="true"></i>[% locale.maketext('Lock user override ability[output,nbsp]') %]</span>
<span ng-if="poolOptions.error_reporting.admin"><i ng-if="poolOptions.error_reporting.admin" class="fas fa-lock admin-toggle-icon" aria-hidden="true"></i>[% locale.maketext('Unlock user override ability[output,nbsp]') %]</span>
</button>
</div>
</div>
<div class="row edit-input-row">
<div class="col-xs-12 col-sm-6 col-md-6 col-lg-6">
<uib-accordion>
<uib-accordion-group
is-open="displayValue.errsReportedPanelOpen">
<uib-accordion-heading>
[% locale.maketext('Edit error list[output,nbsp]') %]
<i class="pull-right glyphicon" ng-class="{'glyphicon-chevron-down': displayValue.errsReportedPanelOpen, 'glyphicon-chevron-right': !displayValue.errsReportedPanelOpen}"></i>
</uib-accordion-heading>
<ul id="reportedErrorsList">
<li ng-repeat="err in poolOptions.error_reporting.value track by $index | orderBy: 'err'" id="reported_error_{{err}}">
<span class="btn-group btn-group-xs disabled-function-btn-group" role="group">
<button
type="button"
class="btn btn-default lister-button"
value="{{err}}">{{err}}</button>
<button
type="button"
ng-disabled="actions.validatingErrs"
class="btn btn-default"
ng-click="removeReportedErrs(err, poolOptionsForm)"
aria-label="remove error">
<i class="fas fa-times fa-xs" aria-hidden="true"></i>
</button>
</span>
</li>
</ul>
</uib-accordion-group>
</uib-accordion>
</div>
</div>
<div class="action-group label-row">
<button
type="submit"
button-ng-class="getPrimaryButtonsClasses()"
id="savePoolOptionsBtn"
ng-disabled="poolOptionsForm.$pristine || poolOptionsForm.$invalid"
cp-action="savePoolOptions(poolOptionsForm)"
spinner-id="submitPoolOptionsSpinner">[% locale.maketext('Save Configuration') %]
</button>
<button
type="button"
button-ng-class="getSmallDefaultButtonClasses()"
id="validatePoolOptionsBtn"
ng-disabled="poolOptionsForm.$pristine || poolOptionsForm.$invalid"
cp-action="validatePoolOptions()">[% locale.maketext('Validate Configuration') %]
</button>
<button
type="reset"
class="btn btn-sm btn-default"
id="resetPoolOptionsBtn"
ng-disabled="poolOptionsForm.$pristine"
ng-click="resetPoolOptionsForm(poolOptionsForm)">[% locale.maketext('Reset Configuration') %]
</button>
<button
type="button"
ng-if="displayValue.displayMode === 'domain'"
class="btn btn-link"
id="returnToDomainsBtn"
ng-click="returnToDomainsList()">[% locale.maketext('Return to domains list[output,nbsp]') %]
</button>
<a
ng-if="displayValue.displayMode === 'default'"
href="config"
class="btn btn-link"
id="returnToDomainsBtn">[% locale.maketext('Return to [asis,PHP] Versions') %]
</a>
</div>
</div>
</div>
</div>
</div>
</form>
</div>
<div ng-if="!actions.initialLoading" class="col-xs-12 col-md-4">
<div class="panel panel-default">
<div class="panel-heading">[% locale.maketext('Additional Resources') %]</div>
<div class="panel-body">
<div class="section">
<ul>
<li ng-repeat="resource in additionalResources">
<a ng-href="{{resource.link}}"
target="_blank"
id="resourceLink_{{resource.link}}">
{{resource.text}}
<span class="fas fa-fw fa-external-link-alt" aria-hidden="true"></span>
</a>
<hr />
</li>
</ul>
</div>
</div>
</div>
</div>
Back to Directory
File Manager