📁
SKYSHELL MANAGER
PHP v8.2.31
Create
Create
Path:
root
/
home
/
thevaxnx
/
nativize.com
/
staging
/
wp-includes
/
js
/
tinymce
/
themes
/
Name
Size
Perm
Actions
📁
inlite
-
0755
🗑️
🏷️
🔒
📁
modern
-
0755
🗑️
🏷️
🔒
📄
wp-links-opml.php
6.83 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
Edit: crts.html.tt
[% USE CPIcons; USE CPList; USE SSL; USE JSON; USE Geo; USE CPScalar; # CONSTANTS SET SHOW_HELPER_LINKS_RECORD_COUNT = 10; SET MINIMUM_MODULUS_LENGTH = SSL.DEFAULT_KEY_SIZE; SET CPANEL.CPVAR.dprefix = '../'; SET SYSTEM_DEFAULT_KEY_TYPE = SSL.key_types_and_labels().0; SET DEFAULT_NEW_KEY_TYPE = SSL.default_key_type() || SYSTEM_DEFAULT_KEY_TYPE.type; SET DEFAULT_NEW_KEY_LABEL = ""; FOREACH key_type = SSL.key_types_and_labels(); IF DEFAULT_NEW_KEY_TYPE == key_type.type; DEFAULT_NEW_KEY_LABEL = key_type.label; END; END; # Fetch the certificates for this user SET list_certs = execute('SSL', 'list_certs', { 'api.sort_column' => 'subject.commonName', } ); SET expiration_times = list_certs.data.ofeach('not_after'); IF expiration_times && expiration_times.size() > 0; FOR exp_time = expiration_times; expiration_times.${loop.index} = exp_time + 1; END; SET expiration_date = locale.get_lookup_hash_of_multi_epoch_datetime( expiration_times, 'date_format_short' ); SET expiration_datetime = locale.get_lookup_hash_of_multi_epoch_datetime( expiration_times, 'datetime_format_short' ); ELSE; SET expiration_date = 0; SET expiration_datetime = 0; END; # Fetch the keys for this user. SET list_keys = execute('SSL', 'list_keys', { 'api.sort_column' => 'friendly_name', } ); SET has_certs_error = !list_certs.status; SET has_certs_data = !has_certs_error && list_certs.data.size; SET list_count = list_certs.data ? list_certs.data.size() : 0; #Domains SET list_mail_domains = execute('WebVhosts','list_domains', { 'api.sort_column' => 'domain', }); SET show_unified_ssl = SSL.should_show_unified_ssl_ui(); %] [% js_code = PROCESS js_block %] [% WRAPPER '_assets/master.html.tt' app_key = 'ssl_tls' include_legacy_scripts = 1 include_cjt = 1 page_title = show_unified_ssl ? locale.maketext('SSL/TLS Certificates') : '' page_js = js_code embed_stylesheets = ["css/ssl.css"] page_stylesheets = ["css2-min/ssl/crts.css"] -%] [% PROCESS _assets/_ajaxapp_header.html.tt -%] [% PROCESS '_assets/_ssl_tls_tabs.html.tt' active_tab = 'crts' %] <div class="body-content"> <div class="section"> [% IF list_count > SHOW_HELPER_LINKS_RECORD_COUNT %] <a id="top"></a> <div class="related related-top"> <a id="upload-link" href="javascript:void(0)" class="dependent-action">[% locale.maketext('Upload a Certificate.') %]</a> <a id="generate-link" href="javascript:void(0)" class="dependent-action">[% locale.maketext('Generate a self-signed certificate.') %]</a> </div> [% END %] <h2 id="hdrCertificates"> [% locale.maketext('SSL Certificates') %] </h2> <p id="descSelfsigned" class="description">[% locale.maketext('You can use a self-signed certificate or a trusted certificate from an SSL Certificate Authority. If you plan to use a self-signed certificate for one of your sites, you can generate it below. To use a trusted certificate, upload or provide the certificate below, after you have received the SSL certificate from your trusted provider.') %]</p> <h2 id="hdrOnserver">[% locale.maketext("Certificates on Server") %]</h2> <table class="sortable table table-striped" id="ssltable"> <thead> <tr> <th scope="col">[% locale.maketext('Domains') %]</th> <th scope="col">[% locale.maketext('Issuer') %]</th> <th scope="col">[% locale.maketext('Expiration ([_1])','UTC') %]</th> <th scope="col">[% locale.maketext('Key Type') %]</th> <th scope="col">[% locale.maketext('Description') %]</th> <th class="sorttable_nosort" scope="col">[% locale.maketext("Actions") %]</th> </tr> </thead> <tbody> [% IF list_certs.data.size %] [% SET warn_icon = CPIcons.get_common_icon_markup("warning", 16); -%] [% SET error_icon = CPIcons.get_common_icon_markup("error", 16); -%] [% FOREACH cert = list_certs.data; SET modulus_length = cert.modulus_length; SET modulus_class = ''; SET modulus_error = 0; IF key.key_algorithm == 'rsaEncryption' && modulus_length < MINIMUM_MODULUS_LENGTH; modulus_class = 'modulus-critical'; modulus_error = 1; END; IF cert.is_self_signed; SET issuer = locale.maketext('[comment]- Self Signed -[comment,The decorating dashes are meant to visually distinguish this label from a certificate authority name.]'); ELSE; SET issuer = cert.${'issuer.organizationName'}; END; SET inactive_reason = ''; IF !cert.domain_is_configured; inactive_reason = locale.maketext('This certificate does not match any of your account’s domains.'); END; SET cert_expiration = cert.not_after + 1; %] <tr class="[% modulus_class %]"> <td class="subject-column column"><div title="[% locale.list_and(cert.domains) FILTER html %]">[% cert.domains.join("\n").html().breakOn('\.').replace("\n",'<br>') %]</div></td> <td class="issuer-column column"><div class="[%IF cert.is_self_signed %] self-signed[% END %]" title="[% issuer FILTER html %]">[% issuer.html().breakOn('\.') %]</div></td> <td class="expires-column column" title="[% expiration_datetime.${cert_expiration} %]"><div>[% expiration_date.${cert_expiration} %]</div></td> <td class="keytype-column column"><span>[% SSL.translate_key_parts_to_label(cert) %]</span> [% IF modulus_error %] [% error_icon %] [% END %] </td> <td class="description-column column"><div title="[% cert.friendly_name FILTER html %]">[% cert.friendly_name.html().breakOn('\.') %]</div></td> <td class="actions-column"> <a id="show-cert-[% loop.index %]" class="btn btn-link" href="viewcrt.html?id=[% cert.id FILTER uri %]" target="_self"> <span class="glyphicon glyphicon-pencil"></span> [% locale.maketext('Edit') %]</a> <a id="del-cert-[% loop.index %]" class="btn btn-link" href="deletecrtconfirm.html?id=[% cert.id FILTER uri %]"> <span class="glyphicon glyphicon-trash"></span> [% locale.maketext("Delete") %]</a> [% IF inactive_reason -%] <span class="non-domain-matching-cert inactive-link" title="[% inactive_reason %]">[% locale.maketext("Install") -%]</span> [% ELSE -%] <a class="btn btn-link" href="install.html?id=[% cert.id FILTER uri %]#installer"> <span class="glyphicon glyphicon-download"></span> [% locale.maketext("Install") %]</a> [% END -%] </td> </tr> [% END %] [% ELSE %] <tr> <td id="nocertsErrorMsg" colspan="6" class="errors">[% locale.maketext("There are no certificates on the server.") %]</td> </tr> [% END %] </tbody> </table> </div> <div class="section"> [% IF list_count > SHOW_HELPER_LINKS_RECORD_COUNT %] <a id="upload"> </a> <div class="related"> <a id="top-link" href="javascript:void(0)" class="dependent-action">[% locale.maketext('List Certificates') %]</a> <a id="generate2-link" href="javascript:void(0)" class="dependent-action">[% locale.maketext('Generate a self-signed certificate.') %]</a> </div> [% END %] <h2>[% locale.maketext("Upload a New Certificate") %]</h2> <p id="descUpload" class="description"> [% locale.maketext("Use this form to upload a certificate provided by a third-party Certificate Authority. You may either paste the body of the certificate or upload it from a “[_1]” file.", ".crt") %] </p> <form action="uploadcrt.html" name="upload" id="paste" method="post" enctype="multipart/form-data"> <div class="form-group"> <label id="lblCrt" for="crt">[% locale.maketext('Paste the certificate into the following text box:') %]</label> <div class="row"> <div class="col-xs-12 col-sm-6 col-md-6 col-lg-6"> <textarea class="form-control textarea-base64 paste" name="crt" id="crt" dir="ltr" rows="15" title="[% locale.maketext('The certificate should include the lines that contain BEGIN and END.') %]"></textarea> <div id="cert_parse" class="textarea-parse"></div> </div> <div class="col-xs-12 col-sm-6 col-md-6 col-lg-6"> </div> </div> </div> <div class="form-group"> <label id="lblUp1fname" for="up1-fname">[% locale.maketext('Description') %]</label> <div class="row"> <div class="col-xs-12 col-sm-6 col-md-6 col-lg-6"> <textarea id="up1-fname" type="text" class="form-control" name="friendly_name" rows="2"></textarea> </div> <div class="col-xs-12 col-sm-6 col-md-6 col-lg-6"> </div> </div> </div> <div class="form-group"> <input id="save-certificate" type="submit" class="btn btn-primary" value="[% locale.maketext('Save Certificate') %]" /> </div> </form> <div class="connector"> [% locale.maketext('or[comment,this is meant to be a horizontal separator of 2 things stacked vertically]') %] </div> <form action="uploadcrt.html" name="upload" id="upload" method="post" enctype="multipart/form-data"> <div class="form-group"> <label id="lblCrtfile" for="crtfile">[% locale.maketext('Choose a certificate file ([_1]).', '*.crt') %]</label> <div class="row"> <div class="col-xs-12 col-sm-6 col-md-6 col-lg-6"> <input type="file" name="crtfile" id="crtfile" title="[% locale.maketext("The certificate files usually have the “[_1]” extension.", '.crt') %]" /> </div> <div class="col-xs-12 col-sm-6 col-md-6 col-lg-6"> </div> </div> </div> <div class="form-group"> <label id="lblUp2fname" for="up2-fname">[% locale.maketext('Description') %]</label> <div class="row"> <div class="col-xs-12 col-sm-6 col-md-6 col-lg-6"> <textarea id="up2-fname" type="text" class="form-control" name="friendly_name" rows="2"></textarea> </div> <div class="col-xs-12 col-sm-6 col-md-6 col-lg-6"> </div> </div> </div> <div class="form-group"> <input id="upload-certificate" type="submit" class="btn btn-primary" value="[% locale.maketext('Upload Certificate') %]" /> </div> </form> </div> <div class="section"> [% IF list_count > SHOW_HELPER_LINKS_RECORD_COUNT %] <a id="generate" name="generate"> </a> <div class="related"> <a id="top2-link" href="javascript:void(0)" class="dependent-action">[% locale.maketext('List Certificates') %]</a> <a id="upload2-link" href="javascript:void(0)" class="dependent-action">[% locale.maketext('Upload a Certificate.') %]</a> </div> [% END %] <h2 id="hdrNewcert">[% locale.maketext("Generate a New Certificate") %]</h2> <p id="descNewcert" class="description"> [% locale.maketext('Use this form to generate a new, self-signed certificate for your domain. Typically, self-signed certificates are temporarily used until you receive a trusted SSL certificate from your SSL certificate authority.') %] </p> <div id="cjt_pagenotice_container" class="cjt-pagenotice-container cjt-notice-container"></div> <form action="gencrt.html" method="post" name="mainform" id="mainform" class="simple"> <div class="form-group"> <label id="lblKeyid" for="key_id"><span>[% locale.maketext('Key') %]</span><span class="extra">*</span></label> <input type="hidden" value="[% DEFAULT_NEW_KEY_TYPE %]" name="default_key_type" /> <div class="row"> <div class="col-xs-12 col-sm-6 col-md-6 col-lg-6"> <select name="key_id" id="key_id" class="form-control"> <option value="">[% locale.maketext('Generate a new “[_1]” key.', DEFAULT_NEW_KEY_LABEL) %]</option> [% FOR key = list_keys.data -%] <option value="[% key.id.html() %]">[% key.friendly_name.html() %]</option> [% END -%] </select> </div> <div class="col-xs-12 col-sm-6 col-md-6 col-lg-6"> [% IF list_keys.data.size -%] <a id="view-key" class="dependent-action" href="javascript:void(0)" title="[% locale.maketext('This option allows you to view the certificate and edit the certificate’s description.') %]">[% locale.maketext('View [output,amp] Edit') %]</a> [% END -%] <div id="key_id_error" ></div> </div> </div> </div> <div class="form-group"> <label id="lblDomains" for="domains"><span>[% locale.maketext('Domains') %]</span><span class="extra">*</span></label> <div class="row"> <div class="col-xs-12 col-sm-6 col-md-6 col-lg-6"> <textarea name="domains" id="domains" rows="3" cols="15" class="form-control"></textarea> <div class="help-block">[% locale.maketext('Provide the [output,acronym,FQDN,Fully Qualified Domain Name]s that you are trying to secure, one per line. You may also use wildcard domains by adding an asterisk in a domain name in the form: [output,em,_1].','*.example.com') %] ([% locale.maketext('Certificates with multiple domains are sometimes called “[output,acronym,UCC,Unified Communications Certificate]s” or “[output,acronym,SAN,subjectAltName] certificates”.') %])</div> </div> <div id="domains_error" class="col-xs-12 col-sm-6 col-md-6 col-lg-6"></div> </div> </div> <div class="form-group"> <label id="lblCity" for="city"><span>[% locale.maketext("City") %]</span><span class="extra">*</span></label> <div class="row"> <div class="col-xs-12 col-sm-6 col-md-6 col-lg-6"> <input id="city" type="text" class="form-control" name="city" class="validator_position_right" /> <div class="help-block">[% locale.maketext('Provide the complete name for the city or locality. Do not use abbreviations.') %]</div> </div> <div id="city_error" class="col-xs-12 col-sm-6 col-md-6 col-lg-6"></div> </div> </div> <div class="form-group"> <label id="lblState" for="state"><span>[% locale.maketext("State") %]</span><span class="extra">*</span></label> <div class="row"> <div class="col-xs-12 col-sm-6 col-md-6 col-lg-6"> <input id="state" type="text" class="form-control" name="state" class="validator_position_right" /> <div class="help-block">[% locale.maketext('Provide the complete name for the state or province. Do not use abbreviations.') %]</div> </div> <div id="state_error" class="col-xs-12 col-sm-6 col-md-6 col-lg-6"></div> </div> </div> <div class="form-group"> <label id="lblCountry" for="country"><span>[% locale.maketext("Country") %]</span><span class="extra">*</span></label> <div class="row"> <div class="col-xs-12 col-sm-6 col-md-6 col-lg-6"> <select id="country" name="country" class="form-control"> <option value="">[% locale.maketext('Choose a country.') %]</option> [% SET locales_obj = locale.get_locales_obj() -%] [% FOR country_code = Geo.COUNTRY_CODES -%] [% SET country_name = locales_obj.get_territory_from_code(country_code) -%] <option value="[% country_code | upper %]"> [% country_code | upper %] [% country_name ? " ($country_name)" : '' %] </option> [% END -%] </select> <span class="help-block">[% locale.maketext("Choose the country of origin for the certificate’s company.") %]</span> </div> <div id="country_error" class="col-xs-12 col-sm-6 col-md-6 col-lg-6"> </div> </div> </div> <div class="form-group"> <label id="lblCompany" for="company"><span>[% locale.maketext("Company") %]</span><span class="extra">*</span></label> <div class="row"> <div class="col-xs-12 col-sm-6 col-md-6 col-lg-6"> <input id="company" type="text" class="form-control" name="company" class="validator_position_right" /> <div class="help-block">[% locale.maketext('Provide the legally-registered name for your business. If your company name includes symbols other than a period or comma, check with your certificate authority to confirm that they are acceptable.') %]</div> </div> <div id="company_error" class="col-xs-12 col-sm-6 col-md-6 col-lg-6"> </div> </div> </div> <div class="form-group"> <label id="lblCompanyDivision" for="companydivision">[% locale.maketext("Company Division") %]</label> <div class="row"> <div class="col-xs-12 col-sm-6 col-md-6 col-lg-6"> <input id="companydivision" type="text" class="form-control" name="companydivision" class="validator_position_right" /> <div class="help-block">[% locale.maketext('Provide the name of the division or group within the above company. If the division includes symbols other than a period or comma, check with your certificate authority to confirm that they are acceptable.') %]</div> </div> <div id="companydivision_error" class="col-xs-12 col-sm-6 col-md-6 col-lg-6"> </div> </div> </div> <div class="form-group"> <label id="lblEmail" for="email">[% locale.maketext("Email") %]</label> <div class="row"> <div class="col-xs-12 col-sm-6 col-md-6 col-lg-6"> <input id="email" type="text" class="form-control" name="email" class="validator_position_right" /> <span class="help-block">[% locale.maketext('Provide a valid email address where you can be contacted for verification of domain ownership.') %]</span> </div> <div id="email_error" class="col-xs-12 col-sm-6 col-md-6 col-lg-6"> </div> </div> </div> <div class="form-group"> <label id="lblFriendlyName" for="friendly_name">[% locale.maketext('Description') %]</label> <div class="row"> <div class="col-xs-12 col-sm-6 col-md-6 col-lg-6"> <textarea id="friendly_name" type="text" class="form-control" name="friendly_name" class="validator_position_right" rows="2"></textarea> </div> <div id="friendly_name_error" class="col-xs-12 col-sm-6 col-md-6 col-lg-6"> </div> </div> </div> <div class="form-group"> <input id="hidItem" type="hidden" name="item" value="crt" /> <input id="hidItemname" type="hidden" name="itemname" value="Certificate" /> <input id="submit-button" type="submit" class="btn btn-primary" value="[% locale.maketext("Generate") %]" title="[% locale.maketext('Click to generate the certificate.') %]" /> </div> </form> </div> [% IF !show_unified_ssl -%] [% INCLUDE _assets/return_link.html.tt return_location='index.html' return_link_text=locale.maketext('Return to SSL Manager') %] [% END -%] </div><!-- end body-content --> [% PROCESS 'ssl/ssl_certificate_parse.html.tt' -%] [% END #wrapper %] [% BLOCK js_block %] <script type="text/javascript"> (function() { /** * This module contains all the page specific constants generated by the server. * @module PAGE.Properties */ var PAGE = { properties : { installable_domains: [% JSON.stringify(list_mail_domains.data.ofeach('domain')) -%], has_certs_data: [% has_certs_data ? "true" : "false" %], desiredKey: '[% FORM.selkey %]' } } // Publish the PAGE object; window["PAGE"] = PAGE; }()); [% INSERT 'sharedjs/asn1_optimized.js' %] [% INSERT 'cjt/ssl-min.js' %] [% INSERT 'sharedjs/ssl_optimized.js' %] [% SET lex_path = CPANEL.get_js_lex_app_rel_path('sharedjs/sslwidgets.js'); INSERT $lex_path IF lex_path; INSERT 'sharedjs/sslwidgets_optimized.js'; %] [% SET lex_path = CPANEL.get_js_lex_app_rel_path('js2/ssl/crts.js'); INSERT $lex_path IF lex_path; INSERT 'js2/ssl/crts.js'; %] [% SET lexicon = { '[numf,_1] of the [numerate,_2,domain,domains] that you have entered [numerate,_1,is a domain,are domains] that you do not control.' => locale.lextext('[numf,_1] of the [numerate,_2,domain,domains] that you have entered [numerate,_1,is a domain,are domains] that you do not control.'), 'A certificate with a key shorter than [quant,_1,bit,bits] is insecure.' => locale.lextext('A certificate with a key shorter than [quant,_1,bit,bits] is insecure.'), 'A certificate with a key shorter than [quant,_1,bit,bits] is not supported.' => locale.lextext('A certificate with a key shorter than [quant,_1,bit,bits] is not supported.'), 'Choose a country.' => locale.lextext('Choose a country.') 'Domain' => locale.lextext('Domain'), 'Private Key' => locale.lextext('Private Key'), 'Processing …' => locale.lextext('Processing …'), 'SSLCity' => locale.lextext('City'), 'SSLCoDivision' => locale.lextext('Company Division'), 'SSLCompany' => locale.lextext('Company'), 'SSLCountry' => locale.lextext('Country'), 'SSLCountry' => locale.lextext('Country'), 'SSLEmail' => locale.lextext('Email'), 'SSLState' => locale.lextext('State'), 'The certificate’s key is shorter than the recommended length of [quant,_1,bit,bits].' => locale.lextext('The certificate’s key is shorter than the recommended length of [quant,_1,bit,bits].'), 'This field should only contain letters, numbers, and basic punctuation (e.g., period, dash, space, underscore, comma).' => locale.lextext('This field should only contain letters, numbers, and basic punctuation (e.g., period, dash, space, underscore, comma).'), 'ValidatorCity' => locale.maketext('The “[_1]” field cannot be left blank.', locale.maketext('City')), 'ValidatorCompany' => locale.maketext('The “[_1]” field cannot be left blank.', locale.maketext('Company')), 'ValidatorCompanyDiv' => locale.maketext('The “[_1]” field cannot be left blank.', locale.maketext('Company Division')), 'ValidatorEmailEmpty' => locale.maketext('The “[_1]” field cannot be left blank.', locale.maketext('Email Address')), 'ValidatorEmailFormat' => locale.lextext('Please use an email format (for example: [asis,user@example.com]).'), 'ValidatorState' => locale.maketext('The “[_1]” field cannot be left blank.', locale.maketext('State')), 'You can only enter valid domains.' => locale.lextext('You can only enter valid domains.'), 'You do not control this domain.' => locale.lextext('You do not control this domain.'), } -%] YAHOO.lang.augmentObject( LOCALE.LEXICON, [% lexicon.json() %] ); [% SET lex_path = CPANEL.get_js_lex_app_rel_path('sharedjs/form_submit_handler.js'); INSERT $lex_path IF lex_path; INSERT 'sharedjs/form_submit_handler_optimized.js'; %] </script> [% PROCESS _assets/_ajaxapp_footer.html.tt -%] [% END %]
Save