Viewing File: /usr/local/cpanel/base/frontend/jupiter/security/tls_wizard/views/PurchaseSimpleController.min.js

define(["angular","lodash","cjt/util/locale","app/views/Certificate","app/services/CountriesService","cjt/modules","ngSanitize","app/services/CertificatesService","app/services/LocationService","app/services/IdVerDefaults","cjt/directives/cpanel/searchSettingsPanel","cjt/directives/triStateCheckbox","cjt/filters/qaSafeIDFilter","cjt/directives/spinnerDirective","cjt/directives/quickFiltersDirective"],(function(e,t,i){"use strict";e.module("App").controller("PurchaseSimpleController",["$rootScope","$scope","$controller","$location","$filter","$timeout","$sce","$routeParams","$window","CertificatesService","IdVerDefaults","CountriesService","Certificate","LocationService","SearchSettingsModel","alertService",function(r,a,n,o,c,s,d,_,l,u,m,f,g,p,h,v){a.show_introduction_block=u.show_introduction_block,a.domains=u.get_all_domains(!0),a.virtual_hosts=u.get_virtual_hosts(),a.pending_certificates=u.get_pending_certificates(),a.showExistingCertificates=!1,a.selected_domains=[],a.working_virtual_host=null,a.LOCALE=i,a.resolution_timeout=0,a.show_wildcard_domains=!0,a.cart_items=[],a.checkout_mode=!1,a.missing_base_domains=[],a.showAdvancedProductSettings=!0,a.panels={},r.addToCartGrowl=null,a.COUNTRIES=f,a.identity_verification={};var w=u.get_stored_extra_settings().simple_identity_verification;w?m.restore_previous(a.identity_verification,w):m.set_defaults(a.identity_verification),e.forEach(a.virtual_hosts,(function(e){e.reset(),e.show_wildcards=!0})),u.build_wildcard_map(),a.meta={sortReverse:!1,sortBy:"label",sortDirection:"asc",maxPages:5,totalItems:a.domains.length,currentPage:1,pageSize:20,pageSizes:[20,50,100,250],start:0,limit:20,filterValue:"",productFilterValue:""},a.cart_price_strings=null;function y(e){return!e.selected&&(!e.is_wildcard&&(0!==e.resolved&&(!a.domain_covered_by_wildcard(e)&&-1!==a.get_selected_vhosts().indexOf(e.virtual_host))))}function b(e){return 1!==e.resolved}a.searchFilterOptions=new h(u.get_domain_search_options()),a.productSearchFilterOptions=new h(u.get_product_search_options(),{certTerms:{"1_year":!0,"2_year":!1,"3_year":!1}}),a.displayProxySubdomains=!0,a.filter_domains=function(e){var t=e;return a.meta.filterValue&&(t=c("filter")(t,a.meta.filterValue)),t=a.searchFilterOptions.filter(t)},a.filter_products=function(e){var t=e,i=a.selected_domains,r=c("filter")(i,{is_wildcard:!0});return t=c("filter")(t,(function(e){if((e.wildcard_price||!r.length)&&(e.price||!(i.length-r.length>0)))return!0})),a.meta.productFilterValue&&(t=c("filter")(t,a.meta.productFilterValue)),t=a.productSearchFilterOptions.filter(t)},a.toggle_values=function(t,i,r){e.forEach(t,(function(e){e[i]=r}))},a.get_showing_text=function(){return i.maketext("[output,strong,Showing] [numf,_1] - [numf,_2] of [quant,_3,domain,domains]",a.meta.start,a.meta.limit,a.meta.totalItems)},a.get_resolution_text=function(e){return e.resolving?i.maketext("Running Domain Control Validation …"):0===e.resolved?i.maketext("Domain Control Validation failed: [_1]",e.resolution_failure_reason):1===e.resolved?e.dcvPassed.dns?(t=e.redirects_count?i.maketext("[asis,HTTP]-based Domain Control Validation required [quant,_1,redirection,redirections].",e.redirects_count):i.maketext("[asis,HTTP]-based Domain Control Validation failed."),i.maketext("Validated via [asis,DNS]-based Domain Control Validation.")+" ("+t+")"):i.maketext("Validated via [asis,HTTP]-based Domain Control Validation."):void 0;var t},a.get_domain_badge_color=function(e){return e.resolving?"info":1===e.resolved?"success":0===e.resolved?"danger":"default"},a.get_cert_status_color=function(e){var t=a.get_domain_certificate(e.domain).certificate;if(t)return"active"!==e.certificate_status||t.is_self_signed?"expired"===e.certificate_status?"label-danger":t.is_self_signed||"expiring_soon"===e.certificate_status?"label-warning":void 0:"label-success"},a.select_domain=function(e){if(e.selected&&e.is_wildcard){var t=c("filter")(a.domains,(function(t){return u.compare_wildcard_domain(e,t.domain)}));a.toggle_values(t,"selected",!0)}a.update_selected_domains(),a.check_selected_domains()},a.check_selected_domains=function(){a.resolution_timeout&&s.cancel(a.resolution_timeout),a.resolution_timeout=s((function(e){a.ensure_dns(e)}),850,!0,u.get_all_selected_domains())},a.update_selected_domains=function(){a.selected_domains=c("filter")(a.domains,(function(e){return!!e.selected&&!a.domain_covered_by_wildcard(e)})),a.current_certificate.set_domains(a.selected_domains),a.current_certificate.set_virtual_hosts(a.get_selected_vhosts()),a.update_baseless_wildcard_domains(),a.fetch_products(),a.update_cart_strings()},a.get_domain_certificate=function(e){return u.get_domain_certificate(e)},a.get_domain_certificate_type=function(e){if(e.certificate_type)return e.certificate_type;e.certificate_type="unsecured";var t=a.get_domain_certificate(e.domain);return t&&t.certificate&&!t.certificate.is_self_signed&&t.certificate.validation_type&&(e.certificate_type=t.certificate.validation_type),a.get_domain_certificate_type(e)},a.get_domain_cert_msg=function(e){if(e.certificate_status_msg)return e.certificate_status_msg;var t,r=a.get_domain_certificate(e.domain);if(r&&r.certificate){var n=r.certificate;"dv"===n.validation_type?t=i.maketext("A [output,abbr,DV,Domain Validated] certificate already secures this domain."):"ov"===n.validation_type?t=i.maketext("An [output,abbr,OV,Organization Validated] certificate already secures this domain."):"ev"===n.validation_type?t=i.maketext("An [output,abbr,EV,Extended Validation] certificate already secures this domain."):n.is_self_signed&&(t=i.maketext("A self-signed certificate already secures this domain."))}return t||(t=i.maketext("A certificate of unknown type already secures this domain.")),"expired"===e.certificate_status?t+=" "+i.maketext("The certificate has expired."):"expiring_soon"===e.certificate_status&&(t+=" "+i.maketext("It will expire soon.")),e.certificate_status_msg=t,a.get_domain_cert_msg(e)},a.pending_certificate=function(e){var t=a.pendingCertificateObject(e);return!!t&&t.order_item_id},a.pendingCertificateObject=function(t){var i=!1;return e.forEach(a.pending_certificates,(function(r){e.forEach(r.vhost_names,(function(e){e===t.virtual_host&&(i=r)}))})),i},a.view_pending_certificate=function(e){var t=a.pending_certificate(e);a.go_to_pending(t)},a.go_to_pending=function(e){e?o.path("/pending-certificates/").search("orderItemID",e):o.path("/pending-certificates")},a.get_domain_lock_classes=function(e){var t=a.get_domain_certificate(e.domain);if(t&&t.certificate)return t.certificate.is_self_signed||"expired"===e.certificate_status?"grey-padlock":"green-padlock"},a.build_csr_url=function(e){var t=a.get_virtual_host_certificate(e);if(t&&t.certificate){var i="";return i+="../../ssl/install.html?id=",i+=encodeURIComponent(t.certificate.id)}},a.get_domain_msg_state=function(e){var t=a.pendingCertificateObject(e);return t?u.doesDomainMatchOneOf(e.domain,t.domains)?"cert-pending":"cert-pending-other-domains":a.domain_covered_by_wildcard(e)?"covered-by-wildcard":a.get_domain_certificate(e.domain)&&-1===e.resolved&&!e.resolving?"ssl-exists":"default"},a.get_virtual_host_by_display_name=function(e){var t=u.get_virtual_host_by_display_name(e);return a.virtual_hosts[t]},a.get_virtual_host_certificate=function(e){return a.get_domain_certificate(e.domain)},a.ensure_dns=function(e){if(!(e=c("filter")(e,{selected:!0,resolved:-1})).length)return!1;var t=a.get_current_or_default_provider();return u.ensure_domains_can_pass_dcv(e,t)},a.get_current_or_default_provider=function(){var e=a.get_product();if(e){var t=a.get_product_by_id(e.provider,e.id);if(t)return t.provider_name}return u.get_default_provider_name()},a.get_dcv_class=function(e){var t=[];return e.resolving&&(t.push("fa-spinner"),t.push("fa-spin"),t.unshift("fa"),t.push("fa-sm")),t},a.get_other_vhost_domains=function(e){return c("filter")(a.domains,(function(t){return!t.is_wildcard&&(!t.selected&&(0!==t.resolved&&(t.domain!==e.domain&&t.virtual_host===e.virtual_host)))}))},a.get_selected_vhosts=function(){var e=a.get_covered_domains(),i=t.filter(e,{selected:!0});return t.uniq(i.map((function(e){return e.virtual_host})))},a.has_partial_vhosts=function(){return a.domains.some(y)},a.get_partial_vhost_domains=function(){return a.domains.filter(y)},a.get_undercovered_vhost_message=function(e){var t=e.map((function(e){return e.domain})),r="";return r+="<p>"+i.maketext("The certificate will secure some, but not all, of the domains on websites on which they exist.")+"</p>",r+="<p>"+i.maketext("If you choose to continue, the certificate will not secure the following [numerate,_1,domain,domains], and because a certificate will exist on their website, you may have to purchase a new certificate to secure all of these domains later. [list_and_quoted,_2]",t.length,t)+"</p>"},a.add_partial_vhost_domains=function(e){a.toggle_values(e,"selected",!0),a.update_selected_domains(),a.check_selected_domains(),a.goto("domains")},a.get_other_domains_msg=function(e,t){var r=t.map((function(e){return e.domain})),a="";return a+="<p>"+i.maketext("This certificate will not secure [quant,_2,other domain,other domains] on the same website as “[_1]”.",e.domain,r.length)+"</p>",a+="<p>"+i.maketext("Because you cannot secure a single website with multiple certificates, in order to secure any unselected [numerate,_1,domain,domains] in the future, you would need to purchase a new certificate to secure all of these domains.",r.length)+"</p>",a+="<p>"+i.maketext("Would you like to secure the following additional [numerate,_2,domain,domains] with this certificate? [list_and_quoted,_1]",r,r.length)+"</p>"},a.get_covered_domains=function(){return c("filter")(a.domains,(function(e){if(e.selected||a.domain_covered_by_wildcard(e))return!0}))},a.get_other_wildcard_domains=function(e){return!!e.is_wildcard&&c("filter")(a.domains,(function(t){return!t.selected&&(!t.is_wildcard&&(t.domain!==e.domain&&!1!==u.compare_wildcard_domain(e,t.domain)))}))},a.has_failed_dcv_domains=function(){return a.selected_domains.some(b)},a.get_failed_dcv_domains=function(){return a.selected_domains.filter(b)},a.get_failed_dcv_message=function(e){var t=e.map((function(e){return e.domain})),r="";return r+="<p>"+i.maketext("The following [numerate,_2,domain,domains] failed [numerate,_2,its,their] [output,abbr,DCV,Domain Control Validation] check: [list_and_quoted,_1]",t,t.length)+"</p>"},a.clear_failed_domains=function(e){a.toggle_values(e,"selected",!1),a.update_selected_domains(),0===a.selected_domains.length?a.goto("domains"):!1===a.check_unresolved_issues()&&a.goto("review")},a.domain_covered_by_wildcard=function(e){if(e.is_wildcard)return!1;var t=u.domain_covered_by_wildcard(e.domain);return!(!t||!t.selected)&&t},a.get_covered_by_wildcard_message=function(e){var t=a.domain_covered_by_wildcard(e);return t?i.maketext("The certificate for wildcard domain “[_1]” will secure this domain.",t.domain):""},a.is_domain_disabled=function(e){return!!a.pending_certificate(e)||(!!a.domain_covered_by_wildcard(e)||void 0)},a.get_currency_string=function(e,t){e+=.001;var r=i.numf(e);return r="$"+r.substring(0,r.length-1),t&&(r+=" "+t),r},a.get_products=function(){return u.get_products()},a.cant_checkout_msg=function(){v.add({type:"warn",message:i.maketext("You cannot check out until you resolve all errors (in red)."),closeable:!0,replace:!1,group:"tlsWizard"})},a.cant_products_msg=function(){v.add({type:"warn",message:i.maketext("You need to select at least one domain before you can select a product."),closeable:!0,replace:!1,group:"tlsWizard"})},a.clear_cloud_domain=function(e){e.selected=!1,a.update_selected_domains(),0===a.selected_domains.length&&a.panels.review&&a.goto("domains")},a.goto=function(t){"review"===t&&a.blocker_issues_exist()?a.cant_checkout_msg():("products"!==t||a.selected_domains.length||(a.cant_products_msg(),t="domains"),e.forEach(a.panels,(function(e,t){a.panels[t]=!1})),a.panels[t]=!0)},a.get_product_name=function(e){if(!e)return"";var t=a.get_product_by_id(e.provider,e.id);return t?t.display_name:""},a.get_product_by_id=function(e,t){return u.get_product_by_id(e,t)},a.check_product_match=function(e){var t=a.get_product();return!(!e||!t)&&(e.id===t.id&&e.provider===t.provider||void 0)},a.get_per_price_string=function(e){var t=[];return e.price&&(t[t.length]=i.maketext("[_1] per domain",a.get_currency_string(e.price,e.price_unit))),e.wildcard_price&&(t[t.length]=i.maketext("[_1] per wildcard domain",a.get_currency_string(e.wildcard_price))),t.join(", ")},a.get_product_estimate_string=function(e){var t=a.get_currency_string(a.calculate_product_price(e));return"("+i.maketext("[_1] total",t,e.price_unit)+")"};var x=function(e,t,i){if(e){var r=0;if(i.length&&e.wildcard_price&&(r+=i.length*e.wildcard_price),t.length&&e.price&&(r+=t.length*e.price),e.wildcard_parent_domain_included){var a={};t.forEach((function(e){a[e.domain]=e})),i.forEach((function(t){var i=t.domain.replace(/^\*\./,"");a[i]&&(r-=e.price)}))}return r}};a.calculate_product_price=function(e){var t=a.selected_domains,i=c("filter")(t,{is_wildcard:!0}),r=c("filter")(t,{is_wildcard:!1});return x(e,r,i)},a.set_product=function(e){a.current_certificate.set_product(e)},a.get_product=function(){return a.current_certificate.get_product()},a.get_product_prices=function(){var e=[],i=a.selected_domains,r=i.filter((function(e){return!!e.is_wildcard})),n=i.filter((function(e){return!e.is_wildcard}));return a.filteredProductList.forEach((function(t){var i=x(t,n,r);e.push(i)})),t.sortBy(e)},a.get_min_price=function(){return a.get_product_prices().shift()},a.get_max_price=function(){return a.get_product_prices().pop()},a.check_unresolved_issues=function(){return!!a.has_partial_vhosts()||!!a.has_failed_dcv_domains()},a.update_baseless_wildcard_domains=function(){if(a.missing_base_domains=[],a.selected_domains.forEach((function(e){if(!1!==e.is_wildcard){var t=u.get_domain_by_domain(e.stripped_domain);t.selected||a.missing_base_domains.push(t)}})),a.missing_base_domains.length){var e=a.missing_base_domains.map((function(e){return e.domain}));v.add({type:"info",message:i.maketext("Because wildcard certificates require their parent domains, the system added the following [numerate,_1,domain,domains] for you: [list_and_quoted,_2]",e.length,e),closeable:!0,replace:!1,group:"tlsWizard"}),a.select_baseless_wildcard_domains(a.missing_base_domains)}},a.select_baseless_wildcard_domains=function(e){a.toggle_values(e,"selected",!0),a.update_selected_domains()},a.get_resolve_panel_color=function(){var e="warning";return a.has_partial_vhosts()&&(e="warning"),a.has_failed_dcv_domains()&&(e="danger"),e},a.blocker_issues_exist=function(){return"danger"===a.get_resolve_panel_color()},a.get_cart_price=function(){if(!a.get_product())return 0;var e=a.get_product_by_id(a.get_product().provider,a.get_product().id),t=a.calculate_product_price(e);return a.current_certificate.set_price(t),t},a.get_cart_strings=function(){return a.cart_price_strings},a.update_cart_strings=function(){var e=a.get_product(),t=a.get_product_prices(),i=a.selected_domains,r={min:0,max:0};e&&i.length?r.min=a.get_currency_string(a.get_cart_price(),"USD"):i.length?(r.min=a.get_currency_string(a.get_min_price(),"USD"),t.length>1&&(r.max=a.get_currency_string(a.get_max_price(),"USD"))):a.cart_price_strings=!1,a.cart_price_strings=r},a.get_cart_items=function(){return a.cart_items=[a.current_certificate],a.cart_items},a.purchase=function(){a.blocker_issues_exist()?a.cant_checkout_msg():(a.current_certificate.set_identity_verification(a.identity_verification),u.add_new_certificate(a.current_certificate),u.save({simple_identity_verification:a.identity_verification})?o.path("/purchase"):v.add({type:"danger",message:i.maketext("Failed to save information to browser cache."),group:"tlsWizard"}))},a.selectFilterType=function(e){a.meta.quickFilterValue="all"===e?"":e,a.fetch()},a.go_to_advanced=function(){u.hard_reset(),p.go_to_advanced_create_route().search("")},a.get_wildcard_base_domain_msg=function(){return i.maketext("This certificate includes the parent domain in the price of the certificate.")},a.fetch=function(){var i=[];if(i=a.filter_domains(a.domains),e.forEach(i,(function(e){a.get_domain_certificate_type(e)})),i=""!==a.meta.filterValue?i.sort((function(e,t){return e.domain.length===t.domain.length?0:a.meta.filterValue.length/e.domain.length<a.meta.filterValue.length/t.domain.length?-1:1})):i.sort((function(e,t){return e.domain==="*."+t.domain?-1:"*."+e.domain===t.domain?1:t.stripped_domain.localeCompare(e.stripped_domain)})),""!==a.meta.sortDirection&&""!==a.meta.sortBy&&(i=c("orderBy")(i,a.meta.sortBy,"asc"===a.meta.sortDirection)),a.meta.totalItems=i.length,a.meta.totalItems>t.min(a.meta.pageSizes)){var r=(a.meta.currentPage-1)*a.meta.pageSize,n=a.meta.pageSize;i=c("limitTo")(c("startFrom")(i,r),n),a.showPager=!0,a.meta.start=r+1,a.meta.limit=r+i.length}else a.showPager=!1,0===i.length?a.meta.start=0:a.meta.start=1,a.meta.limit=i.length;var o=0;return i.forEach((function(e){-1!==a.selected_domains.indexOf(e.id)?e.rowSelected=!0:(e.rowSelected=!1,o++)})),a.filteredList=i,a.allRowsSelected=i.length>0&&0===o,i},a.fetch_products=function(){var e=this.get_products();return a.filteredProductList=a.filter_products(e),a.filteredProductList},a.init=function(){if(_.domain){var i=_.domain;t.isString(i)&&(i=[i]),e.forEach(i,(function(e){var t=u.get_domain_by_domain(e);t&&(t.selected=!0)}))}var r=u.get_product_search_options(),n={certTerms:{"1_year":!0,"2_year":!1,"3_year":!1}};if(_.certificate_type){var o=_.certificate_type;t.isString(o)&&(o=[o]);var c={};void 0===r.validationType?c.all=!0:e.forEach(r.validationType.options,(function(e){c[e.value]=-1!==o.indexOf(e.value)})),n.validationType=c}a.searchFilterOptions=new h(u.get_domain_search_options()),a.productSearchFilterOptions=new h(u.get_product_search_options(),n),a.fetch(),a.fetch_products(),a.current_certificate=new g,a.update_selected_domains(),a.selected_domains.length?(a.check_selected_domains(),a.goto("products")):a.goto("domains")},a.init()}])}));
Back to Directory File Manager