Viewing File: /usr/local/cpanel/base/sharedjs/ssltable_optimized.js

(function(window){"use strict";var CPANEL=window.CPANEL;var DOM=window.DOM;var Handlebars=window.Handlebars;var content_with_warning_maker=Handlebars.compile(DOM.get("content_with_warning_template").text);var DEFAULT_KEY_SIZE=CPANEL.ssl.DEFAULT_KEY_SIZE;function _showCertParseWithId(opts,extra_parse_args){var show_opts=opts.id&&{leading_rows:[{key_html:LOCALE.maketext("Certificate ID:"),value_html:opts.id}]};if(extra_parse_args){if(!show_opts){show_opts={}}for(var key in extra_parse_args){show_opts[key]=extra_parse_args[key]}}CPANEL.widgets.ssl.showCertificateParse(opts.text,opts.container,show_opts)}CPANEL.namespace("CPANEL.widgets.ssltable");YAHOO.lang.augmentObject(CPANEL.widgets.ssltable,{listTemplate:window.Handlebars.compile(DOM.get("list_template").text),sorterStringArray:function(a,b){return a.join("\n")<b.join("\n")?-1:a.join("\n")>b.join("\n")?1:0},sorterKeyType:function(a,b){var aRsa,bRsa;if(0===a.lastIndexOf("ecdsa-",0)){aRsa=CPANEL.ssl.ecdsaEquivalentRSAModulusLength(a.substring(6))}else{aRsa=parseInt(a.substring(4),10)}if(0===b.lastIndexOf("ecdsa-",0)){bRsa=CPANEL.ssl.ecdsaEquivalentRSAModulusLength(b.substring(6))}else{bRsa=parseInt(b.substring(4),10)}return aRsa<bRsa?-1:aRsa>bRsa?1:0},parseUnixDate:function(oData){if(oData instanceof Date){return oData}return new Date(1e3*oData)},formatCertificateExpiration:function(elCell,oRecord,oColumn,oData){if(!oData){return}var expiration=new Date(oData.getTime()+1e3);if(isNaN(expiration.getTime())){return false}var warning,expired_class;var now=new Date;var time_left=expiration-now.getTime();if(time_left<0){expired_class="error";warning=LOCALE.maketext("This certificate has expired.")}else if(time_left<CPANEL.ssl.NEARLY_EXPIRED_WINDOW){expired_class="warning";var days=Math.ceil(time_left/24/60/60/1e3);if(now.getDate()===expiration.getDate()&&now.getMonth()===expiration.getMonth()){warning=LOCALE.maketext("This certificate will expire later today.")}else{warning=LOCALE.maketext("This certificate will expire in [quant,_1,day,days].",days)}}var cert_parse,useLinkYN;if(warning){cert_parse=CPANEL.ssl.parseCertificateText(oRecord.getData("certificate_text"));if(!cert_parse.isSelfSigned){var cpmarket_can_sell_ssl=CPANEL.is_cpanel()&&window.PAGE&&window.PAGE.cpmarket_can_sell_ssl;warning+=" ";if(cpmarket_can_sell_ssl){var notAfter=new Date(cert_parse.notAfter);notAfter.setSeconds(notAfter.getSeconds()+1);useLinkYN=true;warning+=LOCALE.maketext("Purchase a replacement certificate in the “[_1]”.",LOCALE.maketext("SSL/TLS Wizard"))}else{warning+=LOCALE.maketext("Contact your Certificate Authority ([_1]) to request a certificate renewal.",cert_parse.issuer.organizationName||LOCALE.maketext("unknown"))}}}var warningHtml=content_with_warning_maker({content_html:LOCALE.datetime(expiration,"date_format_short"),warning_class:expired_class,warning_html:warning});if(useLinkYN){var TOKEN_PLUS_THEME=location.pathname.match(/^\/.+?\/.+?\/[^/]+/)[0];var link=document.createElement("a");link.href=TOKEN_PLUS_THEME+"/security/tls_wizard/";link.innerHTML=warningHtml;elCell.appendChild(link);elCell.title=warning}else{elCell.innerHTML=warningHtml;elCell.title=LOCALE.datetime(expiration,"datetime_format_long")}},formatCertificateKeyType:function(el,rec,col,value){var cert_text=rec.getData("certificate_text");var cert_parse=CPANEL.ssl.parseCertificateText(cert_text);var label=cert_parse.getKeyTypeLabel();cert_parse.dispatchForKeyAlgorithm((function(){var modlen=cert_parse.modulusLength;if(!parseInt(modlen,10)){return}var warning,warning_class;if(modlen<DEFAULT_KEY_SIZE){warning_class="error";warning=LOCALE.maketext("This certificate’s key is too short ([quant,_1,bit,bits]). This key will not protect against a spoofing attack.",modlen)}if(warning){warning+=" ";if(cert_parse.is_self_signed){warning+=LOCALE.maketext("You should generate another self-signed certificate for [quant,_1,this domain,these domains] with a [numf,_2]-bit key.",cert_parse.domains.length,DEFAULT_KEY_SIZE)}else{warning+=LOCALE.maketext("Contact your certificate authority ([_1]) to reissue this certificate with a [numf,_2]-bit key.",cert_parse.issuer.organizationName.html_encode(),DEFAULT_KEY_SIZE)}}el.innerHTML=content_with_warning_maker({content_html:label,warning_class:warning_class,warning_html:warning})}),(function(){el.textContent=label}))},detailsExpand:function(args,extra_parse_args){_showCertParseWithId({text:args.data.getData("certificate_text"),container:args.liner_element,id:args.data.getData("certificate_id")},extra_parse_args);CPANEL.align_panels_event.fire()},loadTableAndSort:function(table,loadArgs){var sorted_by=table.get("sortedBy");if(sorted_by){var col=table.getColumn(sorted_by.key);var sorter=function(){table.unsubscribe("postRenderEvent",sorter);table.sortColumn(col,sorted_by.dir);CPANEL.align_panels_event.fire()};table.subscribe("postRenderEvent",sorter)}table.load(loadArgs)}})})(window);
Back to Directory File Manager