Easy Digital Downloads - Version 2.9.7

Version Description

Download this release

Release Info

Developer mordauk
Plugin Icon 128x128 Easy Digital Downloads
Version 2.9.7
Comparing to
See all releases

Code changes from version 2.9.6 to 2.9.7

assets/css/edd-admin.css CHANGED
@@ -52,6 +52,7 @@ a.edd-delete:hover {
52
  }
53
 
54
  .edd-ui-tooltip {
 
55
  background: #333 !important;
56
  border-width: 1px !important;
57
  border-radius: 3px !important;
52
  }
53
 
54
  .edd-ui-tooltip {
55
+ position: absolute;
56
  background: #333 !important;
57
  border-width: 1px !important;
58
  border-radius: 3px !important;
assets/css/edd-admin.min.css CHANGED
@@ -1 +1 @@
1
- .edd-hidden{display:none}.edd-clearfix:after{content:".";display:block;height:0;text-indent:-9999px;visibility:hidden}.edd-wrap a{text-decoration:none}a.edd-delete{color:#a00}a.edd-delete:hover{color:red}.download_page_edd-settings .form-table label{color:#666;font-size:14px;font-style:italic;margin:4px 0 0}.download_page_edd-settings .form-table input.small-text~label,.download_page_edd-settings .form-table input[type=checkbox]+label{display:inline}.download_page_edd-settings .form-table tr>th>h3,.download_page_edd-settings .form-table tr>th>strong{font-size:1.2em;font-weight:600;margin:0 auto}.edd-help-tip{cursor:help}.edd-ui-tooltip{background:#333!important;border-width:1px!important;border-radius:3px!important;box-shadow:1px 1px 2px 1px rgba(214,214,214,.5)!important;color:#dedede!important;max-width:300px!important;padding:7px!important;text-rendering:optimizeLegibility;text-shadow:none!important;z-index:9999!important}.download_page_edd-settings .edd-settings-payment-icon-wrapper{margin-right:10px;line-height:16px;height:16px;display:table}#edd-add-ons h2.nav-tab-wrapper{position:relative}.edd-tab-span{top:-6px;right:0;position:absolute}.edd-add-ons-footer{padding-top:10px}#edd-add-ons h2{margin:0 0 15px}.edd-add-ons-view-wrapper{height:50px}#edd-add-ons h2 .button-primary{position:absolute}#edd-add-ons .edd-extension{background:#fff;border:1px solid #ccc;float:left;padding:14px;position:relative;margin:0 15px 15px 0;width:320px;height:315px}#edd-add-ons .edd-extension h3{font-size:13px;margin:0 0 8px}#edd-add-ons .edd-extension .button-secondary{position:absolute;bottom:14px;left:14px}#edd-add-ons .edd-browse-all{clear:both;width:100%}#edd-add-ons .edd-extension .third-party{display:none}#edd-add-ons .edd-starter-package{background-color:#85c0e5;border-color:#62a9d7;color:#fff}#edd-add-ons .edd-starter-package h3{color:#fff}#edd-add-ons .edd-extension .wp-post-image{width:100%;height:auto}#edd-products{height:100px;min-width:200px}#edd-add-discount input[type=text],#edd-edit-discount input[type=text]{width:300px}#edd-add-discount input.edd-price-field,#edd-edit-discount input.edd-price-field{padding:3px 5px;width:75px}.download_page_edd-addons .wrap .wp-heading-inline,.edit-php.post-type-download .wrap .wp-heading-inline{display:none}.download_page_edd-addons .wrap>.page-title-action,.edit-php.post-type-download .wrap>.page-title-action{display:none}.download_page_edd-addons .wrap .nav-tab-wrapper .page-title-action,.edit-php.post-type-download .wrap .nav-tab-wrapper .page-title-action{top:7px;margin-left:5px}#edd-payment-filters{background:#f5f5f5;clear:both;background-image:-webkit-gradient(linear,left bottom,left top,from(#f5f5f5),to(#fafafa));background-image:-webkit-linear-gradient(bottom,#f5f5f5,#fafafa);background-image:-moz-linear-gradient(bottom,#f5f5f5,#fafafa);background-image:-o-linear-gradient(bottom,#f5f5f5,#fafafa);background-image:linear-gradient(to top,#f5f5f5,#fafafa);border-color:#dfdfdf;border-width:1px;border-style:solid;border-radius:3px;font-size:13px;line-height:2.1em;overflow:auto;padding:12px;margin:8px 0}#edd-payments-filter ul.subsubsub{margin-bottom:8px}#edd-payment-filters p{color:#777}#edd-payment-date-filters input{vertical-align:middle}tr.status-refunded td{background:#cecece;border-top-color:#ccc}.wp-list-table.downloads th#ID{width:80px}.wp-list-table.downloads th#details{width:130px}.wp-list-table.downloads th#date{width:140px}.wp-list-table.downloads th#user{width:130px}.edd-mobile-link{line-height:32px;vertical-align:middle}.edd-mobile-link img{max-width:80%;height:auto;float:left}@media handheld,only screen and (max-width:640px){.wp-list-table.downloads th{width:auto!important}}.download_page_edd-payment-history .ui-dialog .ui-dialog-titlebar-close span{margin-left:-8px;margin-top:-8px}#edd-download-link-textarea{width:100%}.edd_files_name_label{width:225px;float:left}.edd_files_url_label{width:220px;float:left}#postbox-container-1 .edd_files_name_label{width:80px}#postbox-container-1 .edd_files_url_label{width:80px}.edd-add-repeatable-row{margin:10px 0}.edd-add-repeatable-row .submit{padding:0!important}.edd_repeatable_upload_wrapper:not(:first-child),.edd_variable_prices_wrapper:not(:first-child){margin-top:12px}.edd-repeatable-row-actions{color:#777;font-size:12px}.edd-repeatable-row-actions a{text-decoration:none;width:auto;cursor:pointer;vertical-align:middle}.edd-repeatable-row-actions .toggle-custom-price-option-section{color:#777}.edd-repeatable-row-actions .toggle-custom-price-option-section:hover{color:#444}.edd-bundle-products-header,.edd-repeatable-row-header{clear:both;background:#f1f1f1;border:1px solid #e5e5e5}.edd-repeatable-row-header{cursor:move}.edd-bundled-product-row:after,.edd-bundled-product-row:before,.edd-repeatable-row-header:after,.edd-repeatable-row-header:before{content:'';display:table}.edd-bundled-product-row:after,.edd-repeatable-row-header:after{clear:both}.edd-repeatable-row-title{float:left;font-weight:600}.edd-bundled-product-item-reorder .edd-product-file-reorder{color:#e5e5e5;font-family:dashicons;content:"\f545";font-size:18px;font-weight:300;margin-left:4px;vertical-align:top;transition:.2s color}.edd-bundled-product-item-reorder .edd-product-file-reorder:hover{color:#bbb}.edd-repeatable-row-actions,.edd-repeatable-row-title{padding:8px;box-sizing:border-box}.edd-repeatable-row-actions{float:right;text-align:right;padding:8px}.edd-bundled-product-row .edd-remove-row,.edd-repeatable-row-actions .edd-remove-row{font-size:12px;width:auto;cursor:pointer}.edd-bundled-product-row,.edd-repeatable-row-standard-fields{background:#f9f9f9;padding:8px;border-width:0 1px 1px;border-style:solid;border-color:#e5e5e5}.edd-repeatable-row-setting-label{display:block;margin-bottom:4px}.edd-repeatable-row-setting-label .edd-help-tip{display:inline-block;margin-left:4px}.edd-bundled-product-row .edd-bundled-product-actions,.edd-bundled-product-row .edd-bundled-product-item,.edd-bundled-product-row .edd-bundled-product-item-reorder,.edd-bundled-product-row .edd-bundled-product-price-assignment,.edd-file-assignment,.edd-file-name,.edd-file-url,.edd-option-name,.edd-option-price,.edd_repeatable_default{display:inline-block;vertical-align:top}.edd-option-name{width:38%;margin-right:5%}.edd-option-price{min-width:100px}.edd_repeatable_default{text-align:center;min-width:80px}.edd-file-name{width:18%;margin-right:3%}.edd-file-url{width:65%}.edd-repeatable-row-standard-fields.has-variable-pricing .edd-file-url{width:38%;margin-right:5%}.edd-file-assignment{width:27%}.edd-file-assignment .edd-repeatable-row-setting-label{margin-bottom:0}.edd-custom-price-option-sections-wrap{display:none;border-width:0 1px 1px;border-style:solid;border-color:#e5e5e5;box-sizing:border-box;width:100%}.edd-custom-price-option-section{display:block;padding:10px 8px;border-bottom:1px solid rgba(222,222,222,.3)}.edd-custom-price-option-section:last-child{border-bottom:none}label.edd_prices_shipping{display:none!important}.edd-custom-price-option-section-title{display:block;font-size:14px;font-weight:600;padding:0 0 10px}.edd-custom-price-option-section>:not(.edd-custom-price-option-section-title){display:inline-block;padding-right:20px;vertical-align:top;margin-bottom:4px}.edd-custom-price-option-section>:not(.edd-custom-price-option-section-title) label{display:block;margin-bottom:2px}.edd-bundle-products-header{font-weight:600;padding:8px}.edd-bundled-product-row .edd-bundled-product-item-reorder{min-width:30px;margin-right:8px}.edd-bundled-product-row .edd-bundled-product-item-reorder .edd-product-file-reorder{font-size:20px;font-weight:300;padding:16px 4px 0;cursor:move}.edd-bundled-product-row .edd-bundled-product-item{width:60%;margin-right:3%}.edd-bundled-product-row.has-variable-pricing .edd-bundled-product-item{width:47%}.edd-bundled-product-row .edd-bundled-product-price-assignment{width:23%;margin-right:3%}.edd-bundled-product-row .edd-bundled-product-actions{float:right}.edd_repeatable_upload_wrapper .edd_repeatable_upload_field_container{position:relative}.edd_upload_file{background:#fff;display:block;padding:2px 8px 2px;position:absolute;top:3px;right:7px}.edd_upload_field{padding-right:8em}textarea#edd-payment-note{width:100%;height:4em;margin:0}#edd-purchased-files .row .edd-purchased-files-list-wrapper .download{line-height:1.4}#edd-purchased-files .edd-purchased-files-list-wrapper .edd-purchased-option{color:#666}input[class*=edd-price-field]{padding:3px 5px;width:75px}#edd-order-download-quantity[type=number].small-text,#edd-order-download-tax[type=text].small-text,[class*=item_] [class*=edd-payment-details-download-][type=number].small-text{height:25px}#edd-order-download-quantity[type=number].small-text,.item_price .edd-payment-details-download-quantity[type=number].small-text{width:55px}#edd-order-download-tax[type=text].small-text,.item_tax .edd-payment-details-download-item-tax[type=number].small-text{width:75px}.edd_repeatable_product_wrapper .edd-select,.edd_repeatable_upload_wrapper .pricing select{min-width:100%}#edd_product_notes_field{display:block;margin:12px 0 0;height:4em;width:100%}.edd_remove_repeatable{border:none;cursor:pointer;display:inline-block;padding:0;overflow:hidden;margin:8px 0 0 0;text-indent:-9999px;width:10px;height:10px}.edd_remove_repeatable:active,.edd_remove_repeatable:focus,.edd_remove_repeatable:hover{background-position:-10px 0!important}#edd-edit-order-form .column{width:32%}.edd-edit-purchase-element[class*=columns-] ul li{padding-right:1%}#edd-edit-order-form .column:nth-child(2n+1),#edd-edit-order-form .columns-4 .column:nth-child(2n+1),#edd-edit-order-form .columns-5 .column:nth-child(3n+1){margin-right:0}#edd-edit-order-form input.large-text{width:90%}.edd-edit-purchase-element ul li.download{width:35%}.edd-edit-purchase-element ul li.item_price{width:15%}.edd-edit-purchase-element ul li.item_price.item_quantity{width:25%}.edd-edit-purchase-element ul li.item_tax{width:15%}.edd-edit-purchase-element ul li.price{width:20%}.edd-admin-box .label{font-weight:600}.edd-admin-box-inside{border-bottom:1px solid #eee;clear:both;padding:3px 12px;margin:0;word-break:break-word}.rtl .edd-admin-box-inside{padding:5px 10px 5px 0}.edd-admin-box-inside .strong{font-weight:600}.edd-payment-fees .fee-label{color:#666;font-weight:400}.edd-admin-box .right{float:right}.rtl .edd-admin-box .right{float:left;margin-left:10px}#edd-order-details .inside,#edd-order-update .inside{margin:0;padding:0}#edd-order-update input.edd_datepicker{width:180px}#edd-order-update input[type=number].edd-payment-time-hour,#edd-order-update input[type=number].edd-payment-time-min{width:50px}#edd-order-update .edd-tax-rate{color:#9c9c9c;font-style:italic}#edd-order-resend-receipt .inside{margin-top:11px}#edd-order-resend-receipt .edd-order-resend-receipt-addresses{margin-top:10px}.edd-admin-box-inside:last-child{border-bottom:0}#edd-edit-order-form .data-payment-key{word-break:break-all}.edd-order-update-box #major-publishing-actions .button-secondary{margin-right:10px}.edd-edit-purchase-element .edd-select-chosen{width:196px}#edd-customer-details .order-data-address input,#edd-customer-details .order-data-column p.data input,#edd-edit-order-form .column input,#edd-order-address-country-wrap select,.edd-edit-purchase-element ul{clear:both;display:block}#edd-customer-details .customer-info .column{width:49%}#edd-customer-details .actions{float:right}.edd-order-data input.small-text{margin:0}.edd-order-data input.med-text{margin:0;width:100px}#edd-order-update span.label{display:inline;width:50px}.edd-order-update-box .button-primary{margin-right:0}#edd-edit-order-form .column .description{padding-right:10px}#edd-edit-order-form .column,.edd-edit-purchase-element ul li{display:inline-block;line-height:1.4;position:relative;margin:0;vertical-align:middle}.edd-edit-purchase-element .row{padding:12px}.edd-edit-purchase-element .row:not(:last-child){border-bottom:1px solid #eee}.edd-edit-purchase-element .row:nth-child(odd):not(.header){background-color:#f9f9f9}.edd-edit-purchase-element .row.header{padding:6px 12px;font-weight:600;vertical-align:top}.edd-edit-purchase-element ul{font-size:0}.edd-edit-purchase-element ul li{font-size:13px}#edd-order-data .data span{color:#666;font-weight:600}.edd-edit-purchase-element .inside{padding:12px}.edd-edit-purchase-element .edd-purchased-download-title{font-size:14px;font-weight:500}.edd-edit-purchase-element .edd-purchased-download-title .deleted{color:#777}.edd-edit-purchase-element .edd-purchased-download-actions{color:#777;line-height:1.4}.edd-edit-purchase-element .edd-purchased-download-actions .edd-purchased-download-actions-label{font-weight:500}.edd-edit-purchase-element .edd-purchased-download-actions a{color:#777;font-size:12px}.edd-edit-purchase-element .edd-purchased-download-actions a:hover{color:#444}.edd-edit-purchase-element .edd-purchased-download-actions .edd-order-remove-download{color:#a00}.edd-edit-purchase-element .edd-purchased-download-actions .edd-order-remove-download:hover{color:red}#edd-order-recalc-total{float:right}#edd_products .edd-select,.edd_repeatable_product_wrapper .edd-select,.edd_repeatable_upload_wrapper .pricing select{min-width:100%;max-width:200px}.edd_repeatable_product_wrapper td{overflow:visible}.edd-payment-details-label-mobile{display:none}@media screen and (max-width:1284px){.edd-edit-purchase-element ul li.download{padding-bottom:15px;width:100%}.edd-edit-purchase-element .edd-purchased-download-title{font-size:16px}.edd-edit-purchase-element ul li.item_price{width:22%}.edd-edit-purchase-element ul li.item_price.item_quantity{width:35%}.edd-edit-purchase-element ul li.item_tax{width:25%}.edd-edit-purchase-element ul li.price{width:20%}.edd-edit-purchase-element .edd-purchased-download-actions{padding-top:10px}.edd-add-download-to-purchase-header,.edd-purchased-files-header{display:none}.edd-payment-details-label-mobile{display:block;font-weight:500;padding-bottom:6px}}@media screen and (max-width:1024px){.edd-edit-purchase-element ul li.item_price.item_quantity{width:40%}.edd-edit-purchase-element ul li.price{width:24%}.edd-edit-purchase-element .edd-purchased-download-actions{padding-top:15px}.edd-edit-purchase-element .edd-purchased-download-actions,.edd-edit-purchase-element .edd-purchased-download-actions a{font-size:14px}}@media screen and (max-width:782px){#edd-edit-order-form .column{width:49%}.edd-edit-purchase-element ul li.item_price,.edd-edit-purchase-element ul li.item_price.item_quantity{padding-bottom:10px}.edd-edit-purchase-element ul li.item_price.item_quantity{width:35%}.edd-edit-purchase-element ul li.item_tax,.edd-edit-purchase-element ul li.price{width:20%;padding-bottom:10px}.edd-payment-details-label-mobile{font-size:14px;font-weight:500}.edd-payment-details-download-amount,.edd-price-currency{font-size:16px}.order-data-column input[type=email]{padding:6px 10px}}@media screen and (max-width:600px){.edd-edit-purchase-element ul li.item_price,.edd-edit-purchase-element ul li.item_price.item_quantity,.edd-edit-purchase-element ul li.item_tax{width:100%;padding-bottom:20px}.edd-edit-purchase-element .edd-add-download-to-purchase ul li.item_tax,.edd-edit-purchase-element ul li.price{width:100%;padding-bottom:0}.edd-edit-purchase-element .edd-add-download-to-purchase-actions{padding-top:15px}#edd-edit-order-form .column{width:100%}}#edd_product_stats .label{display:inline-block}#edd_product_stats hr{border-style:solid;border-width:1px;border-color:#ccc #fff #fff #ccc}#edd_product_stats .product-earnings-stats:before,#edd_product_stats .product-sales-stats:before{color:#82878c;font:normal 20px/1 dashicons;display:inline-block;padding:0 2px 0 0;position:relative;top:0;left:-1px;speak:none;text-decoration:none!important;vertical-align:top;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#edd_product_stats .product-sales-stats:before{content:'\f174'}#edd_product_stats .product-earnings-stats:before{content:'\f239'}.edd_dashboard_widget table thead td{border-bottom:1px solid #ececec;color:#777}.edd_dashboard_widget .table_left{float:left;width:45%}.edd_dashboard_widget .table_right{float:right;width:45%}.edd_dashboard_widget .inside{font-size:12px}.edd_dashboard_widget td{padding:3px 0}.edd_dashboard_widget .b,.edd_dashboard_widget .t{line-height:1.5;vertical-align:middle}.edd_dashboard_widget .b{font-size:14px;font-family:Georgia,"Times New Roman","Bitstream Charter",Times,serif;padding-right:6px;width:auto}.edd_dashboard_widget .t{font-size:12px;padding-right:12px;color:#777;width:100%}.edd_dashboard_widget .label_heading{border-top:1px solid #ececec;color:#8f8f8f;font-family:Helvetica,Arial,sans-serif;font-size:12px;font-weight:400;display:block;padding-top:10px;margin:0 0 8px 12px}.edd_dashboard_widget .edd_dashboard_widget_subheading{border-top:1px solid #ececec;color:#8f8f8f;font-size:14px;padding-top:10px;margin:1em 0 0 0}.edd_dashboard_widget .edd_dashboard_widget_subheading+.table{margin:8px 0 0 0}.edd_dashboard_widget .edd_price_label{background:#00769c;border-radius:3px;color:#fff;font-size:10px;padding:2px 4px;margin-right:2px}.edd_dashboard_widget table{width:100%;margin-left:0;margin-bottom:1em}td.edd_order_label{width:80%}td.edd_order_price{text-align:right}@media handheld,only screen and (max-width:1000px){.edd_dashboard_widget .edd-recent-email{display:none}}#edd-dashboard-widgets-wrap .postbox h3{cursor:default}#edd-date-range-options,#edd-graphs-date-options{float:left}#edd-date-range-options span{float:left;line-height:24px;height:24px;margin-right:6px}.edd-import-export-form{position:relative}.edd-import-export-form .edd-progress{background:#ddd;position:absolute;bottom:15px;width:95%;height:15px}.edd-import-export-form .edd-progress div{background:#ccc;height:100%;width:0}.edd-import-export-form .notice-wrap{background-color:#f4f4f4;border-style:solid;border-width:1px 0;border-color:#eae9e9;padding:12px 12px 4px;overflow:auto;margin:20px -12px -23px;position:relative;width:100%}.edd-import-export-form .notice-wrap .spinner{margin:4px 10px 8px;float:right}.admin-color-fresh .edd-import-export-form .edd-progress div{background:#0073aa}.admin-color-light .edd-import-export-form .edd-progress div{background:#888}.admin-color-blue .edd-import-export-form .edd-progress div{background:#096484}.admin-color-coffee .edd-import-export-form .edd-progress div{background:#c7a589}.admin-color-ectoplasm .edd-import-export-form .edd-progress div{background:#a3b745}.admin-color-midnight .edd-import-export-form .edd-progress div{background:#e14d43}.admin-color-sunrise .edd-import-export-form .edd-progress div{background:#dd823b}#edd-graphs-filter label{vertical-align:inherit}#edd-graphs-filter .graph-option-section{float:left;line-height:2.5em;padding-right:5px}.edd-mix-totals{background-color:#fff;border:1px solid #e5e5e5;box-shadow:0 1px 1px rgba(0,0,0,.04);padding:10px}.edd-mix-chart{display:inline-block;width:49%;vertical-align:top}.edd-graph-notes{color:#9c9c9c}.edd-graph-notes span{display:block}.edd-pie-graph .legend{display:none}.edd-pie-legend{overflow:auto;margin-top:10px}.edd-legend-item-wrapper{color:#333;display:inline-block;font-size:8pt;padding:2px 5px 0 5px;width:48%;height:20px}.edd-legend-color{border:1px solid #cfcfcf;display:inline-block;margin-right:5px;width:20px;height:15px}.edd-pie-legend-item{display:inline-block;vertical-align:top;width:80%}#edd_tax_rates{margin:1em 0 0}#edd_tax_rates .edd_tax_country *,#edd_tax_rates .edd_tax_state *{max-width:100%}#edd_tax_rates .edd_tax_country,#edd_tax_rates .edd_tax_state{width:180px}#edd_tax_rates .edd_tax_rate{width:80px}#edd_tax_rates th{padding:15px 10px}.wrap-licenses .form-table,.wrap-licenses caption,.wrap-licenses tbody,.wrap-licenses td,.wrap-licenses tfoot,.wrap-licenses th,.wrap-licenses thead,.wrap-licenses tr{display:block}.wrap-licenses .form-table tr{float:left;margin:0 15px 15px 0;background:#fff;border:1px solid #ccc;width:30.5%;max-width:350px;padding:14px;min-height:220px;position:relative;box-sizing:border-box}.wrap-licenses .form-table th{background:#f9f9f9;padding:14px;border-bottom:1px solid #ccc;margin:-14px -14px 20px;width:100%}.wrap-licenses .form-table td{padding:0}.wrap-licenses td input.regular-text{margin:0 0 8px;width:100%}.wrap-licenses .edd-license-data[class*=edd-license-]{position:absolute;background:#fafafa;padding:14px;border-top:1px solid #eee;margin:20px -14px -14px;min-height:67px;width:100%;bottom:14px;box-sizing:border-box}.wrap-licenses .edd-license-data[class*=edd-license-] a{color:#444}.wrap-licenses .edd-license-data[class*=edd-license-] a:hover{text-decoration:none}.wrap-licenses .edd-license-data.license-expires-soon-notice{background-color:#00a0d2;color:#fff;border-color:#00a0d2}.wrap-licenses .edd-license-data.edd-license-expired{background-color:#e24e4e;color:#fff;border-color:#e24e4e}.wrap-licenses .edd-license-data.edd-license-error,.wrap-licenses .edd-license-data.edd-license-invalid,.wrap-licenses .edd-license-data.edd-license-item_name_mismatch,.wrap-licenses .edd-license-data.edd-license-missing,.wrap-licenses .edd-license-data.edd-license-site_inactive{background-color:#ffebcd;border-color:#ffebcd}.wrap-licenses .edd-license-data p{font-size:13px;margin-top:0}.wrap-licenses .edd-license-data.edd-license-expired a,.wrap-licenses .edd-license-data.license-expires-soon-notice a{color:#fff}.wrap-licenses .edd-license-data.edd-license-expired a:hover,.wrap-licenses .edd-license-data.license-expires-soon-notice a:hover{text-decoration:none}.wrap-licenses p.submit{clear:both}#system-info-textarea{background:0 0;font-family:Menlo,Monaco,monospace;display:block;overflow:auto;white-space:pre;width:800px;height:400px}#TB_window #edd-add-download:active,#TB_window #edd-add-download:focus,#TB_window #edd-add-download:hover{color:#fff}.edd-graph .y1Axis{color:#edc240!important}.edd-graph .y2Axis{color:#afd8f8!important}.download_page_edd-tools .apikeys .column-user{width:192px}.edd-select-chosen{width:100%;max-width:300px}.chosen-container-multi .chosen-choices{background-image:none;border-color:#dfdfdf;-webkit-border-radius:3px;border-radius:3px}.chosen-container-multi .chosen-choices input{border-color:#dfdfdf;height:27px!important;margin:2px}.chosen-container .chosen-drop{border-color:#aaa;-webkit-box-shadow:1px 1px 2px rgba(0,0,0,.1);box-shadow:1px 1px 2px rgba(0,0,0,.1)}.chosen-container .search-field{float:none!important}.chosen-container .search-field input{width:90%!important}.chosen-container-active .chosen-choices{border-color:#aaa;-webkit-border-top-left-radius:3px;border-top-left-radius:3px;-webkit-border-top-right-radius:3px;border-top-right-radius:3px;-webkit-border-bottom-left-radius:0;border-bottom-left-radius:0;border-bottom-right-radius:0;-webkit-box-shadow:1px 1px 2px rgba(0,0,0,.1);box-shadow:1px 1px 2px rgba(0,0,0,.1)}.download_page_edd-tools .tablenav .actions{overflow:visible}.edd_user_search_wrap{position:relative;overflow:visible}.edd_user_search_results{position:absolute;left:0;top:27px}.edd_user_search_results a.edd-ajax-user-cancel{position:absolute;right:6px;top:2px}.edd_user_search_results ul{background:#f0f0f0;border:1px solid #dfdfdf;overflow-y:scroll;padding:10px 10px 4px;margin:0;max-height:200px;width:300px}.wp-list-table .type-download .row-actions{color:#999}@media screen and (max-width:1100px){.edd-mix-chart{display:block;width:100%}.wrap-licenses .form-table tr{width:46%;max-width:none;min-height:230px}}@media screen and (max-width:782px){.post-type-download .nav-tab-wrapper a{font-size:70%;padding:2px 4px}.download_page_edd-tools .apikeys .column-user{width:80px}.license-expiration-date-notice,.license-lifetime-notice,.license-null{padding-left:0}[class^=license-] input[type=text]{margin-bottom:3px}}@media screen and (max-width:600px){.wrap-licenses .form-table tr{width:100%;min-height:230px}#edd-edit-order-form input.large-text{width:100%}}#edd-item-wrapper{background:#f5f5f5;border:1px solid #e5e5e5;webkit-box-shadow:0 1px 1px rgba(0,0,0,.04);box-shadow:0 1px 1px rgba(0,0,0,.04);max-width:830px}#edd-item-wrapper:after{content:"";display:block;clear:both;visibility:hidden;font-size:0;height:0}#edd-item-tab-wrapper{float:left;width:18%;z-index:1}#edd-item-tab-wrapper-list{background:#fff;margin:0}#edd-item-tab-wrapper-list li{display:block;background-color:#eaeaea;color:#444;font-size:12px;border-bottom:1px solid #e5e5e5;margin-bottom:0;-webkit-hyphens:auto;-moz-hyphens:auto;-ms-hyphens:auto;hyphens:auto;word-wrap:break-word}#edd-item-tab-wrapper-list li a{display:block;padding:8px 10px 8px 6px}#edd-item-tab-wrapper-list li.active{display:block;background-color:#fff;padding:8px 10px 8px 6px}#edd-item-tab-wrapper-list .inactive a,#edd-item-tab-wrapper-list .inactive a:visited{background-color:#f5f5f5;color:#444;text-decoration:none}#edd-item-tab-wrapper-list .inactive a:hover{background-color:#fff}#edd-item-tab-wrapper-list .dashicons{color:#444;font-size:16px;min-width:24px;height:auto}#edd-item-card-wrapper .left{float:left}#edd-item-card-wrapper .right{float:right}#edd-item-card-wrapper input{font-weight:400}#edd-item-card-wrapper{background-color:#fff;border:1px solid #e5e5e5;display:inline-block;margin-left:-1px;min-height:200px;width:700px;z-index:2}.edd-item-has-tabs #edd-item-card-wrapper{border-width:0 0 0 1px;width:82%}#edd-item-card-wrapper .customer-section{border-bottom:1px solid #eee;margin-bottom:10px;overflow:auto}#edd-item-card-wrapper .customer-section table{margin-bottom:20px}#edd-item-card-wrapper>div{padding:0 20px}#edd-item-card-wrapper>div:first-child{padding-top:20px}#edd-item-card-wrapper>div:last-child{border:none;padding-bottom:20px}#edd-item-card-wrapper .avatar-wrap{padding-right:10px;text-align:center}#edd-item-card-wrapper .customer-id{font-size:24px;font-weight:600}#edd-item-card-wrapper .customer-main-wrapper input{width:200px}#edd-item-card-wrapper .customer-address-wrapper{margin-right:25px;max-width:33%;width:202px}#edd-item-card-wrapper .customer-address-wrapper select{width:200px}#edd-item-card-wrapper .customer-info{margin-top:5px;margin-bottom:10px;min-height:185px}#edd-item-card-wrapper .info-wrapper{min-height:125px;overflow:visible}#edd-item-card-wrapper a.delete{color:red;margin-right:5px;text-decoration:none}.customer-info .customer-name{font-size:24px;font-weight:600}.customer-edit-link a,.disconnect-user a{font-size:12px;font-weight:400;text-decoration:none}#customer-edit-actions{line-height:28px;margin-bottom:20px;text-align:center}#customer-edit-actions .button-secondary{margin-right:10px}#edd-item-card-wrapper .row-title{width:30%}#edd-item-card-wrapper .info-item{display:block;line-height:16px;padding-bottom:5px}#edd-item-card-wrapper .edit-item{display:none}#edd-item-card-wrapper .edd_user_search_results{left:1px;top:16px}#edd-item-card-wrapper .edd_user_search_results ul{width:200px}#edd-item-stats-wrapper{margin:0 auto;min-height:30px;text-align:center}#edd-item-stats-wrapper li{font-size:14px;float:left;line-height:22px;width:50%}#edd-item-stats-wrapper a{text-decoration:none}#edd-item-stats-wrapper .dashicons{color:#888}#edd-item-tables-wrapper table{text-align:center;width:100%}#edd-item-tables-wrapper th{text-align:center}#edd-item-tables-wrapper .downloads tr>td:first-child,#edd-item-tables-wrapper .downloads tr>th:first-child,#edd-item-tables-wrapper .emails tr>td:first-child,#edd-item-tables-wrapper .emails tr>th:first-child{text-align:left}#edd-item-tables-wrapper .downloads tr>td:only-child{text-align:center}#edd-item-tables-wrapper .emails .add-customer-email-row td{background-color:#f9f9f9;border-top:1px solid #e5e5e5}#edd-item-tables-wrapper .emails .primary-email-icon{font-size:13px;vertical-align:middle;line-height:1.5em}#edd-item-tables-wrapper .emails input{vertical-align:middle;margin:6px 0}#edd-item-tables-wrapper .emails .spinner{float:none}#edd-item-notes-wrapper{min-height:50px}.edd-item-notes-header img,.edd-item-notes-header span{font-weight:600;line-height:30px;vertical-align:middle}.customer-note-input{margin-bottom:5px;width:100%}#edd-customer-notes div:nth-of-type(even){background-color:#fcfcfc}.customer-note-wrapper{border-bottom:1px solid #f9f9f9;min-height:38px;padding:7px 0 7px 7px}.customer-note-wrapper span{display:block}.note-content-wrap{padding-top:7px}.delete-customer{text-align:center}#edd-item-card-wrapper .notice-container{padding-left:20px;padding-right:20px;margin-left:-20px;margin-right:-20px}#edd-item-card-wrapper .add-customer-email-wrapper>#add-customer-email{vertical-align:middle}@media screen and (max-width:810px) and (min-width:656px){.customer-info .customer-name{font-size:16px}#edd-item-card-wrapper .widefat td,.widefat th{padding:4px 6px;max-width:100px!important;display:table-cell}}@media screen and (max-width:781px){#edd-item-card-wrapper,#edd-item-tab-wrapper{margin:0;width:100%}#edd-item-tab-wrapper-list{background:#fff;margin:0}#edd-item-tab-wrapper-list li{float:left;display:inline;font-size:14px;box-sizing:border-box;border-width:0 1px 1px 0;border-style:solid;border-color:#e5e5e5;width:33.33333%}#edd-item-tab-wrapper-list li:nth-child(3n+3){border-width:0 0 1px 0}#edd-item-tab-wrapper-list .dashicons{font-size:18px}.edd-item-has-tabs #edd-item-card-wrapper{border-top:1px solid #e5e5e5;border-left:0;margin-top:-1px;width:100%}}@media screen and (max-width:656px){#edd-item-card-wrapper .customer-info{min-height:220px}.edd-item-info.customer-info{position:relative}#edd-item-card-wrapper .customer-address-wrapper{float:none;position:absolute;top:84px;left:110px;max-width:200px}#edd-item-card-wrapper .customer-main-wrapper{float:none;position:absolute;left:110px}.customer-info .customer-name{font-size:16px}#edd-item-card-wrapper #edd-item-stats-wrapper{padding-left:0;padding-right:0}#edd-item-card-wrapper .customer-section{margin-bottom:0}#edd-item-card-wrapper .widefat td,#edd-item-card-wrapper .widefat th{padding:4px 6px;max-width:100px!important;display:table-cell;overflow:hidden}#edd-item-card-wrapper .customer-id{font-size:16px}}@media screen and (max-width:480px){#edd-item-tab-wrapper-list li{width:50%}#edd-item-tab-wrapper-list li:nth-child(3n+3){border-width:0 1px 1px 0}#edd-item-tab-wrapper-list li:nth-child(even){border-width:0 0 1px 0}.edd-repeatable-row-actions,.edd-repeatable-row-title{text-align:left;width:100%}.edd-repeatable-row-title{padding-bottom:0}.edd-bundled-product-item-reorder,.edd-bundled-product-row .edd-bundled-product-item,.edd-bundled-product-row .edd-bundled-product-price-assignment,.edd-file-assignment,.edd-file-name,.edd-file-url,.edd-option-name,.edd-option-price,.edd_repeatable_default{float:none;text-align:left;width:100%!important;margin:10px 0}.edd-bundled-product-row .edd-bundled-product-actions{float:none}.edd-bundled-product-row .edd-bundled-product-item-reorder .edd-product-file-reorder{padding:0}#edd-payment-filters span{display:block;margin:2px 0}#edd-payment-filters a,.download_page_edd-reports .button{text-align:center}#edd-payment-date-filters span{display:block}#edd-payment-date-filters span>input{float:right}#edd-add-discount select[multiple] option,#edd-edit-discount select[multiple] option{height:20px}#edd-add-discount input[type=text],#edd-edit-discount input[type=text],#edd-payment-filters a,#edd-payment-filters input:not([type=radio]),#edd-payment-filters select,#system-info-textarea,.download_page_edd-reports .inside .button,.download_page_edd-reports .inside input[type=submit],.download_page_edd-reports .inside input[type=text],.download_page_edd-reports .inside select,.download_page_edd-settings .inside input[type=button],.download_page_edd-tools .inside input[type=submit],.download_page_edd-tools .inside input[type=text],.download_page_edd-tools .inside select{width:100%}#edd-add-discount select[multiple],#edd-edit-discount select[multiple],.download_page_edd-tools select[multiple]{height:200px!important}.download_page_edd-settings input[type=checkbox]{margin:2px 0}.post-type-download input[type=checkbox]{margin-left:2px}}.recount-stats-controls form{display:inline}.edd-recount-stats-descriptions span{display:none;line-height:24px}#edd-debug-log p.submit{margin:20px 0 0;padding:0}#edd-debug-log .edd-inline-button{margin-left:5px}
1
+ .edd-hidden{display:none}.edd-clearfix:after{content:".";display:block;height:0;text-indent:-9999px;visibility:hidden}.edd-wrap a{text-decoration:none}a.edd-delete{color:#a00}a.edd-delete:hover{color:red}.download_page_edd-settings .form-table label{color:#666;font-size:14px;font-style:italic;margin:4px 0 0}.download_page_edd-settings .form-table input.small-text~label,.download_page_edd-settings .form-table input[type=checkbox]+label{display:inline}.download_page_edd-settings .form-table tr>th>h3,.download_page_edd-settings .form-table tr>th>strong{font-size:1.2em;font-weight:600;margin:0 auto}.edd-help-tip{cursor:help}.edd-ui-tooltip{position:absolute;background:#333!important;border-width:1px!important;border-radius:3px!important;box-shadow:1px 1px 2px 1px rgba(214,214,214,.5)!important;color:#dedede!important;max-width:300px!important;padding:7px!important;text-rendering:optimizeLegibility;text-shadow:none!important;z-index:9999!important}.download_page_edd-settings .edd-settings-payment-icon-wrapper{margin-right:10px;line-height:16px;height:16px;display:table}#edd-add-ons h2.nav-tab-wrapper{position:relative}.edd-tab-span{top:-6px;right:0;position:absolute}.edd-add-ons-footer{padding-top:10px}#edd-add-ons h2{margin:0 0 15px}.edd-add-ons-view-wrapper{height:50px}#edd-add-ons h2 .button-primary{position:absolute}#edd-add-ons .edd-extension{background:#fff;border:1px solid #ccc;float:left;padding:14px;position:relative;margin:0 15px 15px 0;width:320px;height:315px}#edd-add-ons .edd-extension h3{font-size:13px;margin:0 0 8px}#edd-add-ons .edd-extension .button-secondary{position:absolute;bottom:14px;left:14px}#edd-add-ons .edd-browse-all{clear:both;width:100%}#edd-add-ons .edd-extension .third-party{display:none}#edd-add-ons .edd-starter-package{background-color:#85c0e5;border-color:#62a9d7;color:#fff}#edd-add-ons .edd-starter-package h3{color:#fff}#edd-add-ons .edd-extension .wp-post-image{width:100%;height:auto}#edd-products{height:100px;min-width:200px}#edd-add-discount input[type=text],#edd-edit-discount input[type=text]{width:300px}#edd-add-discount input.edd-price-field,#edd-edit-discount input.edd-price-field{padding:3px 5px;width:75px}.download_page_edd-addons .wrap .wp-heading-inline,.edit-php.post-type-download .wrap .wp-heading-inline{display:none}.download_page_edd-addons .wrap>.page-title-action,.edit-php.post-type-download .wrap>.page-title-action{display:none}.download_page_edd-addons .wrap .nav-tab-wrapper .page-title-action,.edit-php.post-type-download .wrap .nav-tab-wrapper .page-title-action{top:7px;margin-left:5px}#edd-payment-filters{background:#f5f5f5;clear:both;background-image:-webkit-gradient(linear,left bottom,left top,from(#f5f5f5),to(#fafafa));background-image:-webkit-linear-gradient(bottom,#f5f5f5,#fafafa);background-image:-moz-linear-gradient(bottom,#f5f5f5,#fafafa);background-image:-o-linear-gradient(bottom,#f5f5f5,#fafafa);background-image:linear-gradient(to top,#f5f5f5,#fafafa);border-color:#dfdfdf;border-width:1px;border-style:solid;border-radius:3px;font-size:13px;line-height:2.1em;overflow:auto;padding:12px;margin:8px 0}#edd-payments-filter ul.subsubsub{margin-bottom:8px}#edd-payment-filters p{color:#777}#edd-payment-date-filters input{vertical-align:middle}tr.status-refunded td{background:#cecece;border-top-color:#ccc}.wp-list-table.downloads th#ID{width:80px}.wp-list-table.downloads th#details{width:130px}.wp-list-table.downloads th#date{width:140px}.wp-list-table.downloads th#user{width:130px}.edd-mobile-link{line-height:32px;vertical-align:middle}.edd-mobile-link img{max-width:80%;height:auto;float:left}@media handheld,only screen and (max-width:640px){.wp-list-table.downloads th{width:auto!important}}.download_page_edd-payment-history .ui-dialog .ui-dialog-titlebar-close span{margin-left:-8px;margin-top:-8px}#edd-download-link-textarea{width:100%}.edd_files_name_label{width:225px;float:left}.edd_files_url_label{width:220px;float:left}#postbox-container-1 .edd_files_name_label{width:80px}#postbox-container-1 .edd_files_url_label{width:80px}.edd-add-repeatable-row{margin:10px 0}.edd-add-repeatable-row .submit{padding:0!important}.edd_repeatable_upload_wrapper:not(:first-child),.edd_variable_prices_wrapper:not(:first-child){margin-top:12px}.edd-repeatable-row-actions{color:#777;font-size:12px}.edd-repeatable-row-actions a{text-decoration:none;width:auto;cursor:pointer;vertical-align:middle}.edd-repeatable-row-actions .toggle-custom-price-option-section{color:#777}.edd-repeatable-row-actions .toggle-custom-price-option-section:hover{color:#444}.edd-bundle-products-header,.edd-repeatable-row-header{clear:both;background:#f1f1f1;border:1px solid #e5e5e5}.edd-repeatable-row-header{cursor:move}.edd-bundled-product-row:after,.edd-bundled-product-row:before,.edd-repeatable-row-header:after,.edd-repeatable-row-header:before{content:'';display:table}.edd-bundled-product-row:after,.edd-repeatable-row-header:after{clear:both}.edd-repeatable-row-title{float:left;font-weight:600}.edd-bundled-product-item-reorder .edd-product-file-reorder{color:#e5e5e5;font-family:dashicons;content:"\f545";font-size:18px;font-weight:300;margin-left:4px;vertical-align:top;transition:.2s color}.edd-bundled-product-item-reorder .edd-product-file-reorder:hover{color:#bbb}.edd-repeatable-row-actions,.edd-repeatable-row-title{padding:8px;box-sizing:border-box}.edd-repeatable-row-actions{float:right;text-align:right;padding:8px}.edd-bundled-product-row .edd-remove-row,.edd-repeatable-row-actions .edd-remove-row{font-size:12px;width:auto;cursor:pointer}.edd-bundled-product-row,.edd-repeatable-row-standard-fields{background:#f9f9f9;padding:8px;border-width:0 1px 1px;border-style:solid;border-color:#e5e5e5}.edd-repeatable-row-setting-label{display:block;margin-bottom:4px}.edd-repeatable-row-setting-label .edd-help-tip{display:inline-block;margin-left:4px}.edd-bundled-product-row .edd-bundled-product-actions,.edd-bundled-product-row .edd-bundled-product-item,.edd-bundled-product-row .edd-bundled-product-item-reorder,.edd-bundled-product-row .edd-bundled-product-price-assignment,.edd-file-assignment,.edd-file-name,.edd-file-url,.edd-option-name,.edd-option-price,.edd_repeatable_default{display:inline-block;vertical-align:top}.edd-option-name{width:38%;margin-right:5%}.edd-option-price{min-width:100px}.edd_repeatable_default{text-align:center;min-width:80px}.edd-file-name{width:18%;margin-right:3%}.edd-file-url{width:65%}.edd-repeatable-row-standard-fields.has-variable-pricing .edd-file-url{width:38%;margin-right:5%}.edd-file-assignment{width:27%}.edd-file-assignment .edd-repeatable-row-setting-label{margin-bottom:0}.edd-custom-price-option-sections-wrap{display:none;border-width:0 1px 1px;border-style:solid;border-color:#e5e5e5;box-sizing:border-box;width:100%}.edd-custom-price-option-section{display:block;padding:10px 8px;border-bottom:1px solid rgba(222,222,222,.3)}.edd-custom-price-option-section:last-child{border-bottom:none}label.edd_prices_shipping{display:none!important}.edd-custom-price-option-section-title{display:block;font-size:14px;font-weight:600;padding:0 0 10px}.edd-custom-price-option-section>:not(.edd-custom-price-option-section-title){display:inline-block;padding-right:20px;vertical-align:top;margin-bottom:4px}.edd-custom-price-option-section>:not(.edd-custom-price-option-section-title) label{display:block;margin-bottom:2px}.edd-bundle-products-header{font-weight:600;padding:8px}.edd-bundled-product-row .edd-bundled-product-item-reorder{min-width:30px;margin-right:8px}.edd-bundled-product-row .edd-bundled-product-item-reorder .edd-product-file-reorder{font-size:20px;font-weight:300;padding:16px 4px 0;cursor:move}.edd-bundled-product-row .edd-bundled-product-item{width:60%;margin-right:3%}.edd-bundled-product-row.has-variable-pricing .edd-bundled-product-item{width:47%}.edd-bundled-product-row .edd-bundled-product-price-assignment{width:23%;margin-right:3%}.edd-bundled-product-row .edd-bundled-product-actions{float:right}.edd_repeatable_upload_wrapper .edd_repeatable_upload_field_container{position:relative}.edd_upload_file{background:#fff;display:block;padding:2px 8px 2px;position:absolute;top:3px;right:7px}.edd_upload_field{padding-right:8em}textarea#edd-payment-note{width:100%;height:4em;margin:0}#edd-purchased-files .row .edd-purchased-files-list-wrapper .download{line-height:1.4}#edd-purchased-files .edd-purchased-files-list-wrapper .edd-purchased-option{color:#666}input[class*=edd-price-field]{padding:3px 5px;width:75px}#edd-order-download-quantity[type=number].small-text,#edd-order-download-tax[type=text].small-text,[class*=item_] [class*=edd-payment-details-download-][type=number].small-text{height:25px}#edd-order-download-quantity[type=number].small-text,.item_price .edd-payment-details-download-quantity[type=number].small-text{width:55px}#edd-order-download-tax[type=text].small-text,.item_tax .edd-payment-details-download-item-tax[type=number].small-text{width:75px}.edd_repeatable_product_wrapper .edd-select,.edd_repeatable_upload_wrapper .pricing select{min-width:100%}#edd_product_notes_field{display:block;margin:12px 0 0;height:4em;width:100%}.edd_remove_repeatable{border:none;cursor:pointer;display:inline-block;padding:0;overflow:hidden;margin:8px 0 0 0;text-indent:-9999px;width:10px;height:10px}.edd_remove_repeatable:active,.edd_remove_repeatable:focus,.edd_remove_repeatable:hover{background-position:-10px 0!important}#edd-edit-order-form .column{width:32%}.edd-edit-purchase-element[class*=columns-] ul li{padding-right:1%}#edd-edit-order-form .column:nth-child(2n+1),#edd-edit-order-form .columns-4 .column:nth-child(2n+1),#edd-edit-order-form .columns-5 .column:nth-child(3n+1){margin-right:0}#edd-edit-order-form input.large-text{width:90%}.edd-edit-purchase-element ul li.download{width:35%}.edd-edit-purchase-element ul li.item_price{width:15%}.edd-edit-purchase-element ul li.item_price.item_quantity{width:25%}.edd-edit-purchase-element ul li.item_tax{width:15%}.edd-edit-purchase-element ul li.price{width:20%}.edd-admin-box .label{font-weight:600}.edd-admin-box-inside{border-bottom:1px solid #eee;clear:both;padding:3px 12px;margin:0;word-break:break-word}.rtl .edd-admin-box-inside{padding:5px 10px 5px 0}.edd-admin-box-inside .strong{font-weight:600}.edd-payment-fees .fee-label{color:#666;font-weight:400}.edd-admin-box .right{float:right}.rtl .edd-admin-box .right{float:left;margin-left:10px}#edd-order-details .inside,#edd-order-update .inside{margin:0;padding:0}#edd-order-update input.edd_datepicker{width:180px}#edd-order-update input[type=number].edd-payment-time-hour,#edd-order-update input[type=number].edd-payment-time-min{width:50px}#edd-order-update .edd-tax-rate{color:#9c9c9c;font-style:italic}#edd-order-resend-receipt .inside{margin-top:11px}#edd-order-resend-receipt .edd-order-resend-receipt-addresses{margin-top:10px}.edd-admin-box-inside:last-child{border-bottom:0}#edd-edit-order-form .data-payment-key{word-break:break-all}.edd-order-update-box #major-publishing-actions .button-secondary{margin-right:10px}.edd-edit-purchase-element .edd-select-chosen{width:196px}#edd-customer-details .order-data-address input,#edd-customer-details .order-data-column p.data input,#edd-edit-order-form .column input,#edd-order-address-country-wrap select,.edd-edit-purchase-element ul{clear:both;display:block}#edd-customer-details .customer-info .column{width:49%}#edd-customer-details .actions{float:right}.edd-order-data input.small-text{margin:0}.edd-order-data input.med-text{margin:0;width:100px}#edd-order-update span.label{display:inline;width:50px}.edd-order-update-box .button-primary{margin-right:0}#edd-edit-order-form .column .description{padding-right:10px}#edd-edit-order-form .column,.edd-edit-purchase-element ul li{display:inline-block;line-height:1.4;position:relative;margin:0;vertical-align:middle}.edd-edit-purchase-element .row{padding:12px}.edd-edit-purchase-element .row:not(:last-child){border-bottom:1px solid #eee}.edd-edit-purchase-element .row:nth-child(odd):not(.header){background-color:#f9f9f9}.edd-edit-purchase-element .row.header{padding:6px 12px;font-weight:600;vertical-align:top}.edd-edit-purchase-element ul{font-size:0}.edd-edit-purchase-element ul li{font-size:13px}#edd-order-data .data span{color:#666;font-weight:600}.edd-edit-purchase-element .inside{padding:12px}.edd-edit-purchase-element .edd-purchased-download-title{font-size:14px;font-weight:500}.edd-edit-purchase-element .edd-purchased-download-title .deleted{color:#777}.edd-edit-purchase-element .edd-purchased-download-actions{color:#777;line-height:1.4}.edd-edit-purchase-element .edd-purchased-download-actions .edd-purchased-download-actions-label{font-weight:500}.edd-edit-purchase-element .edd-purchased-download-actions a{color:#777;font-size:12px}.edd-edit-purchase-element .edd-purchased-download-actions a:hover{color:#444}.edd-edit-purchase-element .edd-purchased-download-actions .edd-order-remove-download{color:#a00}.edd-edit-purchase-element .edd-purchased-download-actions .edd-order-remove-download:hover{color:red}#edd-order-recalc-total{float:right}#edd_products .edd-select,.edd_repeatable_product_wrapper .edd-select,.edd_repeatable_upload_wrapper .pricing select{min-width:100%;max-width:200px}.edd_repeatable_product_wrapper td{overflow:visible}.edd-payment-details-label-mobile{display:none}@media screen and (max-width:1284px){.edd-edit-purchase-element ul li.download{padding-bottom:15px;width:100%}.edd-edit-purchase-element .edd-purchased-download-title{font-size:16px}.edd-edit-purchase-element ul li.item_price{width:22%}.edd-edit-purchase-element ul li.item_price.item_quantity{width:35%}.edd-edit-purchase-element ul li.item_tax{width:25%}.edd-edit-purchase-element ul li.price{width:20%}.edd-edit-purchase-element .edd-purchased-download-actions{padding-top:10px}.edd-add-download-to-purchase-header,.edd-purchased-files-header{display:none}.edd-payment-details-label-mobile{display:block;font-weight:500;padding-bottom:6px}}@media screen and (max-width:1024px){.edd-edit-purchase-element ul li.item_price.item_quantity{width:40%}.edd-edit-purchase-element ul li.price{width:24%}.edd-edit-purchase-element .edd-purchased-download-actions{padding-top:15px}.edd-edit-purchase-element .edd-purchased-download-actions,.edd-edit-purchase-element .edd-purchased-download-actions a{font-size:14px}}@media screen and (max-width:782px){#edd-edit-order-form .column{width:49%}.edd-edit-purchase-element ul li.item_price,.edd-edit-purchase-element ul li.item_price.item_quantity{padding-bottom:10px}.edd-edit-purchase-element ul li.item_price.item_quantity{width:35%}.edd-edit-purchase-element ul li.item_tax,.edd-edit-purchase-element ul li.price{width:20%;padding-bottom:10px}.edd-payment-details-label-mobile{font-size:14px;font-weight:500}.edd-payment-details-download-amount,.edd-price-currency{font-size:16px}.order-data-column input[type=email]{padding:6px 10px}}@media screen and (max-width:600px){.edd-edit-purchase-element ul li.item_price,.edd-edit-purchase-element ul li.item_price.item_quantity,.edd-edit-purchase-element ul li.item_tax{width:100%;padding-bottom:20px}.edd-edit-purchase-element .edd-add-download-to-purchase ul li.item_tax,.edd-edit-purchase-element ul li.price{width:100%;padding-bottom:0}.edd-edit-purchase-element .edd-add-download-to-purchase-actions{padding-top:15px}#edd-edit-order-form .column{width:100%}}#edd_product_stats .label{display:inline-block}#edd_product_stats hr{border-style:solid;border-width:1px;border-color:#ccc #fff #fff #ccc}#edd_product_stats .product-earnings-stats:before,#edd_product_stats .product-sales-stats:before{color:#82878c;font:normal 20px/1 dashicons;display:inline-block;padding:0 2px 0 0;position:relative;top:0;left:-1px;speak:none;text-decoration:none!important;vertical-align:top;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#edd_product_stats .product-sales-stats:before{content:'\f174'}#edd_product_stats .product-earnings-stats:before{content:'\f239'}.edd_dashboard_widget table thead td{border-bottom:1px solid #ececec;color:#777}.edd_dashboard_widget .table_left{float:left;width:45%}.edd_dashboard_widget .table_right{float:right;width:45%}.edd_dashboard_widget .inside{font-size:12px}.edd_dashboard_widget td{padding:3px 0}.edd_dashboard_widget .b,.edd_dashboard_widget .t{line-height:1.5;vertical-align:middle}.edd_dashboard_widget .b{font-size:14px;font-family:Georgia,"Times New Roman","Bitstream Charter",Times,serif;padding-right:6px;width:auto}.edd_dashboard_widget .t{font-size:12px;padding-right:12px;color:#777;width:100%}.edd_dashboard_widget .label_heading{border-top:1px solid #ececec;color:#8f8f8f;font-family:Helvetica,Arial,sans-serif;font-size:12px;font-weight:400;display:block;padding-top:10px;margin:0 0 8px 12px}.edd_dashboard_widget .edd_dashboard_widget_subheading{border-top:1px solid #ececec;color:#8f8f8f;font-size:14px;padding-top:10px;margin:1em 0 0 0}.edd_dashboard_widget .edd_dashboard_widget_subheading+.table{margin:8px 0 0 0}.edd_dashboard_widget .edd_price_label{background:#00769c;border-radius:3px;color:#fff;font-size:10px;padding:2px 4px;margin-right:2px}.edd_dashboard_widget table{width:100%;margin-left:0;margin-bottom:1em}td.edd_order_label{width:80%}td.edd_order_price{text-align:right}@media handheld,only screen and (max-width:1000px){.edd_dashboard_widget .edd-recent-email{display:none}}#edd-dashboard-widgets-wrap .postbox h3{cursor:default}#edd-date-range-options,#edd-graphs-date-options{float:left}#edd-date-range-options span{float:left;line-height:24px;height:24px;margin-right:6px}.edd-import-export-form{position:relative}.edd-import-export-form .edd-progress{background:#ddd;position:absolute;bottom:15px;width:95%;height:15px}.edd-import-export-form .edd-progress div{background:#ccc;height:100%;width:0}.edd-import-export-form .notice-wrap{background-color:#f4f4f4;border-style:solid;border-width:1px 0;border-color:#eae9e9;padding:12px 12px 4px;overflow:auto;margin:20px -12px -23px;position:relative;width:100%}.edd-import-export-form .notice-wrap .spinner{margin:4px 10px 8px;float:right}.admin-color-fresh .edd-import-export-form .edd-progress div{background:#0073aa}.admin-color-light .edd-import-export-form .edd-progress div{background:#888}.admin-color-blue .edd-import-export-form .edd-progress div{background:#096484}.admin-color-coffee .edd-import-export-form .edd-progress div{background:#c7a589}.admin-color-ectoplasm .edd-import-export-form .edd-progress div{background:#a3b745}.admin-color-midnight .edd-import-export-form .edd-progress div{background:#e14d43}.admin-color-sunrise .edd-import-export-form .edd-progress div{background:#dd823b}#edd-graphs-filter label{vertical-align:inherit}#edd-graphs-filter .graph-option-section{float:left;line-height:2.5em;padding-right:5px}.edd-mix-totals{background-color:#fff;border:1px solid #e5e5e5;box-shadow:0 1px 1px rgba(0,0,0,.04);padding:10px}.edd-mix-chart{display:inline-block;width:49%;vertical-align:top}.edd-graph-notes{color:#9c9c9c}.edd-graph-notes span{display:block}.edd-pie-graph .legend{display:none}.edd-pie-legend{overflow:auto;margin-top:10px}.edd-legend-item-wrapper{color:#333;display:inline-block;font-size:8pt;padding:2px 5px 0 5px;width:48%;height:20px}.edd-legend-color{border:1px solid #cfcfcf;display:inline-block;margin-right:5px;width:20px;height:15px}.edd-pie-legend-item{display:inline-block;vertical-align:top;width:80%}#edd_tax_rates{margin:1em 0 0}#edd_tax_rates .edd_tax_country *,#edd_tax_rates .edd_tax_state *{max-width:100%}#edd_tax_rates .edd_tax_country,#edd_tax_rates .edd_tax_state{width:180px}#edd_tax_rates .edd_tax_rate{width:80px}#edd_tax_rates th{padding:15px 10px}.wrap-licenses .form-table,.wrap-licenses caption,.wrap-licenses tbody,.wrap-licenses td,.wrap-licenses tfoot,.wrap-licenses th,.wrap-licenses thead,.wrap-licenses tr{display:block}.wrap-licenses .form-table tr{float:left;margin:0 15px 15px 0;background:#fff;border:1px solid #ccc;width:30.5%;max-width:350px;padding:14px;min-height:220px;position:relative;box-sizing:border-box}.wrap-licenses .form-table th{background:#f9f9f9;padding:14px;border-bottom:1px solid #ccc;margin:-14px -14px 20px;width:100%}.wrap-licenses .form-table td{padding:0}.wrap-licenses td input.regular-text{margin:0 0 8px;width:100%}.wrap-licenses .edd-license-data[class*=edd-license-]{position:absolute;background:#fafafa;padding:14px;border-top:1px solid #eee;margin:20px -14px -14px;min-height:67px;width:100%;bottom:14px;box-sizing:border-box}.wrap-licenses .edd-license-data[class*=edd-license-] a{color:#444}.wrap-licenses .edd-license-data[class*=edd-license-] a:hover{text-decoration:none}.wrap-licenses .edd-license-data.license-expires-soon-notice{background-color:#00a0d2;color:#fff;border-color:#00a0d2}.wrap-licenses .edd-license-data.edd-license-expired{background-color:#e24e4e;color:#fff;border-color:#e24e4e}.wrap-licenses .edd-license-data.edd-license-error,.wrap-licenses .edd-license-data.edd-license-invalid,.wrap-licenses .edd-license-data.edd-license-item_name_mismatch,.wrap-licenses .edd-license-data.edd-license-missing,.wrap-licenses .edd-license-data.edd-license-site_inactive{background-color:#ffebcd;border-color:#ffebcd}.wrap-licenses .edd-license-data p{font-size:13px;margin-top:0}.wrap-licenses .edd-license-data.edd-license-expired a,.wrap-licenses .edd-license-data.license-expires-soon-notice a{color:#fff}.wrap-licenses .edd-license-data.edd-license-expired a:hover,.wrap-licenses .edd-license-data.license-expires-soon-notice a:hover{text-decoration:none}.wrap-licenses p.submit{clear:both}#system-info-textarea{background:0 0;font-family:Menlo,Monaco,monospace;display:block;overflow:auto;white-space:pre;width:800px;height:400px}#TB_window #edd-add-download:active,#TB_window #edd-add-download:focus,#TB_window #edd-add-download:hover{color:#fff}.edd-graph .y1Axis{color:#edc240!important}.edd-graph .y2Axis{color:#afd8f8!important}.download_page_edd-tools .apikeys .column-user{width:192px}.edd-select-chosen{width:100%;max-width:300px}.chosen-container-multi .chosen-choices{background-image:none;border-color:#dfdfdf;-webkit-border-radius:3px;border-radius:3px}.chosen-container-multi .chosen-choices input{border-color:#dfdfdf;height:27px!important;margin:2px}.chosen-container .chosen-drop{border-color:#aaa;-webkit-box-shadow:1px 1px 2px rgba(0,0,0,.1);box-shadow:1px 1px 2px rgba(0,0,0,.1)}.chosen-container .search-field{float:none!important}.chosen-container .search-field input{width:90%!important}.chosen-container-active .chosen-choices{border-color:#aaa;-webkit-border-top-left-radius:3px;border-top-left-radius:3px;-webkit-border-top-right-radius:3px;border-top-right-radius:3px;-webkit-border-bottom-left-radius:0;border-bottom-left-radius:0;border-bottom-right-radius:0;-webkit-box-shadow:1px 1px 2px rgba(0,0,0,.1);box-shadow:1px 1px 2px rgba(0,0,0,.1)}.download_page_edd-tools .tablenav .actions{overflow:visible}.edd_user_search_wrap{position:relative;overflow:visible}.edd_user_search_results{position:absolute;left:0;top:27px}.edd_user_search_results a.edd-ajax-user-cancel{position:absolute;right:6px;top:2px}.edd_user_search_results ul{background:#f0f0f0;border:1px solid #dfdfdf;overflow-y:scroll;padding:10px 10px 4px;margin:0;max-height:200px;width:300px}.wp-list-table .type-download .row-actions{color:#999}@media screen and (max-width:1100px){.edd-mix-chart{display:block;width:100%}.wrap-licenses .form-table tr{width:46%;max-width:none;min-height:230px}}@media screen and (max-width:782px){.post-type-download .nav-tab-wrapper a{font-size:70%;padding:2px 4px}.download_page_edd-tools .apikeys .column-user{width:80px}.license-expiration-date-notice,.license-lifetime-notice,.license-null{padding-left:0}[class^=license-] input[type=text]{margin-bottom:3px}}@media screen and (max-width:600px){.wrap-licenses .form-table tr{width:100%;min-height:230px}#edd-edit-order-form input.large-text{width:100%}}#edd-item-wrapper{background:#f5f5f5;border:1px solid #e5e5e5;webkit-box-shadow:0 1px 1px rgba(0,0,0,.04);box-shadow:0 1px 1px rgba(0,0,0,.04);max-width:830px}#edd-item-wrapper:after{content:"";display:block;clear:both;visibility:hidden;font-size:0;height:0}#edd-item-tab-wrapper{float:left;width:18%;z-index:1}#edd-item-tab-wrapper-list{background:#fff;margin:0}#edd-item-tab-wrapper-list li{display:block;background-color:#eaeaea;color:#444;font-size:12px;border-bottom:1px solid #e5e5e5;margin-bottom:0;-webkit-hyphens:auto;-moz-hyphens:auto;-ms-hyphens:auto;hyphens:auto;word-wrap:break-word}#edd-item-tab-wrapper-list li a{display:block;padding:8px 10px 8px 6px}#edd-item-tab-wrapper-list li.active{display:block;background-color:#fff;padding:8px 10px 8px 6px}#edd-item-tab-wrapper-list .inactive a,#edd-item-tab-wrapper-list .inactive a:visited{background-color:#f5f5f5;color:#444;text-decoration:none}#edd-item-tab-wrapper-list .inactive a:hover{background-color:#fff}#edd-item-tab-wrapper-list .dashicons{color:#444;font-size:16px;min-width:24px;height:auto}#edd-item-card-wrapper .left{float:left}#edd-item-card-wrapper .right{float:right}#edd-item-card-wrapper input{font-weight:400}#edd-item-card-wrapper{background-color:#fff;border:1px solid #e5e5e5;display:inline-block;margin-left:-1px;min-height:200px;width:700px;z-index:2}.edd-item-has-tabs #edd-item-card-wrapper{border-width:0 0 0 1px;width:82%}#edd-item-card-wrapper .customer-section{border-bottom:1px solid #eee;margin-bottom:10px;overflow:auto}#edd-item-card-wrapper .customer-section table{margin-bottom:20px}#edd-item-card-wrapper>div{padding:0 20px}#edd-item-card-wrapper>div:first-child{padding-top:20px}#edd-item-card-wrapper>div:last-child{border:none;padding-bottom:20px}#edd-item-card-wrapper .avatar-wrap{padding-right:10px;text-align:center}#edd-item-card-wrapper .customer-id{font-size:24px;font-weight:600}#edd-item-card-wrapper .customer-main-wrapper input{width:200px}#edd-item-card-wrapper .customer-address-wrapper{margin-right:25px;max-width:33%;width:202px}#edd-item-card-wrapper .customer-address-wrapper select{width:200px}#edd-item-card-wrapper .customer-info{margin-top:5px;margin-bottom:10px;min-height:185px}#edd-item-card-wrapper .info-wrapper{min-height:125px;overflow:visible}#edd-item-card-wrapper a.delete{color:red;margin-right:5px;text-decoration:none}.customer-info .customer-name{font-size:24px;font-weight:600}.customer-edit-link a,.disconnect-user a{font-size:12px;font-weight:400;text-decoration:none}#customer-edit-actions{line-height:28px;margin-bottom:20px;text-align:center}#customer-edit-actions .button-secondary{margin-right:10px}#edd-item-card-wrapper .row-title{width:30%}#edd-item-card-wrapper .info-item{display:block;line-height:16px;padding-bottom:5px}#edd-item-card-wrapper .edit-item{display:none}#edd-item-card-wrapper .edd_user_search_results{left:1px;top:16px}#edd-item-card-wrapper .edd_user_search_results ul{width:200px}#edd-item-stats-wrapper{margin:0 auto;min-height:30px;text-align:center}#edd-item-stats-wrapper li{font-size:14px;float:left;line-height:22px;width:50%}#edd-item-stats-wrapper a{text-decoration:none}#edd-item-stats-wrapper .dashicons{color:#888}#edd-item-tables-wrapper table{text-align:center;width:100%}#edd-item-tables-wrapper th{text-align:center}#edd-item-tables-wrapper .downloads tr>td:first-child,#edd-item-tables-wrapper .downloads tr>th:first-child,#edd-item-tables-wrapper .emails tr>td:first-child,#edd-item-tables-wrapper .emails tr>th:first-child{text-align:left}#edd-item-tables-wrapper .downloads tr>td:only-child{text-align:center}#edd-item-tables-wrapper .emails .add-customer-email-row td{background-color:#f9f9f9;border-top:1px solid #e5e5e5}#edd-item-tables-wrapper .emails .primary-email-icon{font-size:13px;vertical-align:middle;line-height:1.5em}#edd-item-tables-wrapper .emails input{vertical-align:middle;margin:6px 0}#edd-item-tables-wrapper .emails .spinner{float:none}#edd-item-notes-wrapper{min-height:50px}.edd-item-notes-header img,.edd-item-notes-header span{font-weight:600;line-height:30px;vertical-align:middle}.customer-note-input{margin-bottom:5px;width:100%}#edd-customer-notes div:nth-of-type(even){background-color:#fcfcfc}.customer-note-wrapper{border-bottom:1px solid #f9f9f9;min-height:38px;padding:7px 0 7px 7px}.customer-note-wrapper span{display:block}.note-content-wrap{padding-top:7px}.delete-customer{text-align:center}#edd-item-card-wrapper .notice-container{padding-left:20px;padding-right:20px;margin-left:-20px;margin-right:-20px}#edd-item-card-wrapper .add-customer-email-wrapper>#add-customer-email{vertical-align:middle}@media screen and (max-width:810px) and (min-width:656px){.customer-info .customer-name{font-size:16px}#edd-item-card-wrapper .widefat td,.widefat th{padding:4px 6px;max-width:100px!important;display:table-cell}}@media screen and (max-width:781px){#edd-item-card-wrapper,#edd-item-tab-wrapper{margin:0;width:100%}#edd-item-tab-wrapper-list{background:#fff;margin:0}#edd-item-tab-wrapper-list li{float:left;display:inline;font-size:14px;box-sizing:border-box;border-width:0 1px 1px 0;border-style:solid;border-color:#e5e5e5;width:33.33333%}#edd-item-tab-wrapper-list li:nth-child(3n+3){border-width:0 0 1px 0}#edd-item-tab-wrapper-list .dashicons{font-size:18px}.edd-item-has-tabs #edd-item-card-wrapper{border-top:1px solid #e5e5e5;border-left:0;margin-top:-1px;width:100%}}@media screen and (max-width:656px){#edd-item-card-wrapper .customer-info{min-height:220px}.edd-item-info.customer-info{position:relative}#edd-item-card-wrapper .customer-address-wrapper{float:none;position:absolute;top:84px;left:110px;max-width:200px}#edd-item-card-wrapper .customer-main-wrapper{float:none;position:absolute;left:110px}.customer-info .customer-name{font-size:16px}#edd-item-card-wrapper #edd-item-stats-wrapper{padding-left:0;padding-right:0}#edd-item-card-wrapper .customer-section{margin-bottom:0}#edd-item-card-wrapper .widefat td,#edd-item-card-wrapper .widefat th{padding:4px 6px;max-width:100px!important;display:table-cell;overflow:hidden}#edd-item-card-wrapper .customer-id{font-size:16px}}@media screen and (max-width:480px){#edd-item-tab-wrapper-list li{width:50%}#edd-item-tab-wrapper-list li:nth-child(3n+3){border-width:0 1px 1px 0}#edd-item-tab-wrapper-list li:nth-child(even){border-width:0 0 1px 0}.edd-repeatable-row-actions,.edd-repeatable-row-title{text-align:left;width:100%}.edd-repeatable-row-title{padding-bottom:0}.edd-bundled-product-item-reorder,.edd-bundled-product-row .edd-bundled-product-item,.edd-bundled-product-row .edd-bundled-product-price-assignment,.edd-file-assignment,.edd-file-name,.edd-file-url,.edd-option-name,.edd-option-price,.edd_repeatable_default{float:none;text-align:left;width:100%!important;margin:10px 0}.edd-bundled-product-row .edd-bundled-product-actions{float:none}.edd-bundled-product-row .edd-bundled-product-item-reorder .edd-product-file-reorder{padding:0}#edd-payment-filters span{display:block;margin:2px 0}#edd-payment-filters a,.download_page_edd-reports .button{text-align:center}#edd-payment-date-filters span{display:block}#edd-payment-date-filters span>input{float:right}#edd-add-discount select[multiple] option,#edd-edit-discount select[multiple] option{height:20px}#edd-add-discount input[type=text],#edd-edit-discount input[type=text],#edd-payment-filters a,#edd-payment-filters input:not([type=radio]),#edd-payment-filters select,#system-info-textarea,.download_page_edd-reports .inside .button,.download_page_edd-reports .inside input[type=submit],.download_page_edd-reports .inside input[type=text],.download_page_edd-reports .inside select,.download_page_edd-settings .inside input[type=button],.download_page_edd-tools .inside input[type=submit],.download_page_edd-tools .inside input[type=text],.download_page_edd-tools .inside select{width:100%}#edd-add-discount select[multiple],#edd-edit-discount select[multiple],.download_page_edd-tools select[multiple]{height:200px!important}.download_page_edd-settings input[type=checkbox]{margin:2px 0}.post-type-download input[type=checkbox]{margin-left:2px}}.recount-stats-controls form{display:inline}.edd-recount-stats-descriptions span{display:none;line-height:24px}#edd-debug-log p.submit{margin:20px 0 0;padding:0}#edd-debug-log .edd-inline-button{margin-left:5px}
assets/js/edd-checkout-global.js CHANGED
@@ -312,7 +312,17 @@ window.EDD_Checkout = (function($) {
312
  });
313
 
314
  $('.edd_cart_amount').each(function() {
315
- $(this).text(response.total);
 
 
 
 
 
 
 
 
 
 
316
  $body.trigger('edd_quantity_updated', [ response ]);
317
  });
318
  }
312
  });
313
 
314
  $('.edd_cart_amount').each(function() {
315
+ var total = response.total;
316
+ var subtotal = response.subtotal;
317
+
318
+ $(this).text(total);
319
+
320
+ var float_total = parseFloat(total.replace(/[^0-9\.-]+/g,""));
321
+ var float_subtotal = parseFloat(subtotal.replace(/[^0-9\.-]+/g,""));
322
+
323
+ $(this).data('total', float_total);
324
+ $(this).data('subtotal', float_subtotal);
325
+
326
  $body.trigger('edd_quantity_updated', [ response ]);
327
  });
328
  }
assets/js/edd-checkout-global.min.js CHANGED
@@ -1 +1 @@
1
- window.EDD_Checkout=function($){"use strict";var $body,$form,$edd_cart_amount,$checkout_form_wrap;function apply_discount(event){event.preventDefault();$(this);var discount_code=$("#edd-discount").val(),edd_discount_loader=$("#edd-discount-loader");if(""==discount_code||discount_code==edd_global_vars.enter_discount)return!1;var postData={action:"edd_apply_discount",code:discount_code,form:$("#edd_purchase_form").serialize()};return $("#edd-discount-error-wrap").html("").hide(),edd_discount_loader.show(),$.ajax({type:"POST",data:postData,dataType:"json",url:edd_global_vars.ajaxurl,xhrFields:{withCredentials:!0},success:function(discount_response){if(discount_response)if("valid"==discount_response.msg){$(".edd_cart_discount").html(discount_response.html),$(".edd_cart_discount_row").show(),$(".edd_cart_amount").each(function(){$(this).text(discount_response.total),$(this).data("total",discount_response.total_plain)}),$("#edd-discount",$checkout_form_wrap).val(""),recalculate_taxes();var inputs=$("#edd_cc_fields .edd-input, #edd_cc_fields .edd-select,#edd_cc_address .edd-input, #edd_cc_address .edd-select,#edd_payment_mode_select .edd-input, #edd_payment_mode_select .edd-select");"0.00"==discount_response.total_plain?($("#edd_cc_fields,#edd_cc_address,#edd_payment_mode_select").slideUp(),inputs.removeAttr("required"),$('input[name="edd-gateway"]').val("manual")):(inputs.is(".card-address-2")||inputs.attr("required","required"),$("#edd_cc_fields,#edd_cc_address").slideDown()),$body.trigger("edd_discount_applied",[discount_response])}else $("#edd-discount-error-wrap").html('<span class="edd_error">'+discount_response.msg+"</span>"),$("#edd-discount-error-wrap").show(),$body.trigger("edd_discount_invalid",[discount_response]);else window.console&&window.console.log&&console.log(discount_response),$body.trigger("edd_discount_failed",[discount_response]);edd_discount_loader.hide()}}).fail(function(data){window.console&&window.console.log&&console.log(data)}),!1}function remove_discount(event){var postData={action:"edd_remove_discount",code:$(this).data("code")};return $.ajax({type:"POST",data:postData,dataType:"json",url:edd_global_vars.ajaxurl,xhrFields:{withCredentials:!0},success:function(discount_response){var zero="0"+edd_global_vars.decimal_separator+"00";$(".edd_cart_amount").each(function(){edd_global_vars.currency_sign+zero!=$(this).text()&&zero+edd_global_vars.currency_sign!=$(this).text()||window.location.reload(),$(this).text(discount_response.total),$(this).data("total",discount_response.total_plain)}),$(".edd_cart_discount").html(discount_response.html),discount_response.discounts||$(".edd_cart_discount_row").hide(),recalculate_taxes(),$("#edd_cc_fields,#edd_cc_address").slideDown(),$body.trigger("edd_discount_removed",[discount_response])}}).fail(function(data){window.console&&window.console.log&&console.log(data)}),!1}function update_item_quantities(event){var $this=$(this),quantity=$this.val(),key=$this.data("key"),download_id=$this.closest(".edd_cart_item").data("download-id"),options=$this.parent().find('input[name="edd-cart-download-'+key+'-options"]').val(),edd_cc_address=$("#edd_cc_address"),postData={action:"edd_update_quantity",quantity:quantity,download_id:download_id,options:options,billing_country:edd_cc_address.find("#billing_country").val(),card_state:edd_cc_address.find("#card_state").val()};return $.ajax({type:"POST",data:postData,dataType:"json",url:edd_global_vars.ajaxurl,xhrFields:{withCredentials:!0},success:function(response){$(".edd_cart_subtotal_amount").each(function(){$(this).text(response.subtotal)}),$(".edd_cart_tax_amount").each(function(){$(this).text(response.taxes)}),$(".edd_cart_amount").each(function(){$(this).text(response.total),$body.trigger("edd_quantity_updated",[response])})}}).fail(function(data){window.console&&window.console.log&&console.log(data)}),!1}return{init:function(){$body=$(document.body),$form=$("#edd_purchase_form"),$edd_cart_amount=$(".edd_cart_amount"),$edd_cart_amount.text(),$checkout_form_wrap=$("#edd_checkout_form_wrap"),$body.on("edd_gateway_loaded",function(e){var form,card_number,card_cvc,card_expiry;card_number=(form=$form).find(".card-number"),card_cvc=form.find(".card-cvc"),card_expiry=form.find(".card-expiry"),card_number.length&&"function"==typeof card_number.payment&&(card_number.payment("formatCardNumber"),card_cvc.payment("formatCardCVC"),card_expiry.payment("formatCardExpiry"))}),$body.on("keyup change",".edd-do-validate .card-number",function(){var field,card_field;field=$(this),(card_field=field).validateCreditCard(function(result){var $card_type=$(".card-type");null==result.card_type?($card_type.removeClass().addClass("off card-type"),card_field.removeClass("valid"),card_field.addClass("error")):($card_type.removeClass("off"),$card_type.addClass(result.card_type.name),result.length_valid&&result.luhn_valid?(card_field.addClass("valid"),card_field.removeClass("error")):(card_field.removeClass("valid"),card_field.addClass("error")))})}),$body.on("blur change",".card-name",function(){var name_field=$(this);name_field.validateCreditCard(function(result){null!=result.card_type?(name_field.removeClass("valid").addClass("error"),$("#edd-purchase-button").attr("disabled","disabled")):(name_field.removeClass("error").addClass("valid"),$("#edd-purchase-button").removeAttr("disabled"))})}),$body.on("submit","#edd_payment_mode",function(){if(0==$("#edd-gateway option:selected").val())return alert(edd_global_vars.no_gateway),!1}),$body.on("click","#edd_payment_mode_select input",function(){$("#edd_payment_mode_select label.edd-gateway-option-selected").removeClass("edd-gateway-option-selected"),$("#edd_payment_mode_select input:checked").parent().addClass("edd-gateway-option-selected")}),$checkout_form_wrap.on("click",".edd-apply-discount",apply_discount),$checkout_form_wrap.on("keypress","#edd-discount",function(event){if("13"==event.keyCode)return!1}),$checkout_form_wrap.on("keyup","#edd-discount",function(event){"13"==event.keyCode&&$checkout_form_wrap.find(".edd-apply-discount").trigger("click")}),$body.on("click",".edd_discount_remove",remove_discount),$body.on("click",".edd_discount_link",function(e){e.preventDefault(),$(".edd_discount_link").parent().hide(),$("#edd-discount-code-wrap").show().find("#edd-discount").focus()}),$body.find("#edd-discount-code-wrap").hide(),$body.find("#edd_show_discount").show(),$body.on("change",".edd-item-quantity",update_item_quantities),$body.on("click",".edd-amazon-logout #Logout",function(e){e.preventDefault(),amazon.Login.logout(),window.location=edd_amazon.checkoutUri})},recalculate_taxes:recalculate_taxes}}(window.jQuery),window.jQuery(document).ready(EDD_Checkout.init);var ajax_tax_count=0;function recalculate_taxes(state){if("1"==edd_global_vars.taxes_enabled){var $edd_cc_address=jQuery("#edd_cc_address");state||(state=$edd_cc_address.find("#card_state").val());var postData={action:"edd_recalculate_taxes",billing_country:$edd_cc_address.find("#billing_country").val(),state:state,card_zip:$edd_cc_address.find("input[name=card_zip]").val(),nonce:jQuery("#edd-checkout-address-fields-nonce").val()};jQuery("#edd_purchase_submit [type=submit]").after('<span class="edd-loading-ajax edd-recalculate-taxes-loading edd-loading"></span>');var current_ajax_count=++ajax_tax_count;jQuery.ajax({type:"POST",data:postData,dataType:"json",url:edd_global_vars.ajaxurl,xhrFields:{withCredentials:!0},success:function(tax_response){if(current_ajax_count===ajax_tax_count){jQuery("#edd_checkout_cart_form").replaceWith(tax_response.html),jQuery(".edd_cart_amount").html(tax_response.total);var tax_data=new Object;tax_data.postdata=postData,tax_data.response=tax_response,jQuery("body").trigger("edd_taxes_recalculated",[tax_data])}jQuery(".edd-recalculate-taxes-loading").remove()}}).fail(function(data){window.console&&window.console.log&&(console.log(data),current_ajax_count===ajax_tax_count&&jQuery("body").trigger("edd_taxes_recalculated",[tax_data]))})}}
1
+ window.EDD_Checkout=function($){"use strict";var $body,$form,$edd_cart_amount,$checkout_form_wrap;function apply_discount(event){event.preventDefault();$(this);var discount_code=$("#edd-discount").val(),edd_discount_loader=$("#edd-discount-loader");if(""==discount_code||discount_code==edd_global_vars.enter_discount)return!1;var postData={action:"edd_apply_discount",code:discount_code,form:$("#edd_purchase_form").serialize()};return $("#edd-discount-error-wrap").html("").hide(),edd_discount_loader.show(),$.ajax({type:"POST",data:postData,dataType:"json",url:edd_global_vars.ajaxurl,xhrFields:{withCredentials:!0},success:function(discount_response){if(discount_response)if("valid"==discount_response.msg){$(".edd_cart_discount").html(discount_response.html),$(".edd_cart_discount_row").show(),$(".edd_cart_amount").each(function(){$(this).text(discount_response.total),$(this).data("total",discount_response.total_plain)}),$("#edd-discount",$checkout_form_wrap).val(""),recalculate_taxes();var inputs=$("#edd_cc_fields .edd-input, #edd_cc_fields .edd-select,#edd_cc_address .edd-input, #edd_cc_address .edd-select,#edd_payment_mode_select .edd-input, #edd_payment_mode_select .edd-select");"0.00"==discount_response.total_plain?($("#edd_cc_fields,#edd_cc_address,#edd_payment_mode_select").slideUp(),inputs.removeAttr("required"),$('input[name="edd-gateway"]').val("manual")):(inputs.is(".card-address-2")||inputs.attr("required","required"),$("#edd_cc_fields,#edd_cc_address").slideDown()),$body.trigger("edd_discount_applied",[discount_response])}else $("#edd-discount-error-wrap").html('<span class="edd_error">'+discount_response.msg+"</span>"),$("#edd-discount-error-wrap").show(),$body.trigger("edd_discount_invalid",[discount_response]);else window.console&&window.console.log&&console.log(discount_response),$body.trigger("edd_discount_failed",[discount_response]);edd_discount_loader.hide()}}).fail(function(data){window.console&&window.console.log&&console.log(data)}),!1}function remove_discount(event){var postData={action:"edd_remove_discount",code:$(this).data("code")};return $.ajax({type:"POST",data:postData,dataType:"json",url:edd_global_vars.ajaxurl,xhrFields:{withCredentials:!0},success:function(discount_response){var zero="0"+edd_global_vars.decimal_separator+"00";$(".edd_cart_amount").each(function(){edd_global_vars.currency_sign+zero!=$(this).text()&&zero+edd_global_vars.currency_sign!=$(this).text()||window.location.reload(),$(this).text(discount_response.total),$(this).data("total",discount_response.total_plain)}),$(".edd_cart_discount").html(discount_response.html),discount_response.discounts||$(".edd_cart_discount_row").hide(),recalculate_taxes(),$("#edd_cc_fields,#edd_cc_address").slideDown(),$body.trigger("edd_discount_removed",[discount_response])}}).fail(function(data){window.console&&window.console.log&&console.log(data)}),!1}function update_item_quantities(event){var $this=$(this),quantity=$this.val(),key=$this.data("key"),download_id=$this.closest(".edd_cart_item").data("download-id"),options=$this.parent().find('input[name="edd-cart-download-'+key+'-options"]').val(),edd_cc_address=$("#edd_cc_address"),postData={action:"edd_update_quantity",quantity:quantity,download_id:download_id,options:options,billing_country:edd_cc_address.find("#billing_country").val(),card_state:edd_cc_address.find("#card_state").val()};return $.ajax({type:"POST",data:postData,dataType:"json",url:edd_global_vars.ajaxurl,xhrFields:{withCredentials:!0},success:function(response){$(".edd_cart_subtotal_amount").each(function(){$(this).text(response.subtotal)}),$(".edd_cart_tax_amount").each(function(){$(this).text(response.taxes)}),$(".edd_cart_amount").each(function(){var total=response.total,subtotal=response.subtotal;$(this).text(total);var float_total=parseFloat(total.replace(/[^0-9\.-]+/g,"")),float_subtotal=parseFloat(subtotal.replace(/[^0-9\.-]+/g,""));$(this).data("total",float_total),$(this).data("subtotal",float_subtotal),$body.trigger("edd_quantity_updated",[response])})}}).fail(function(data){window.console&&window.console.log&&console.log(data)}),!1}return{init:function(){$body=$(document.body),$form=$("#edd_purchase_form"),$edd_cart_amount=$(".edd_cart_amount"),$edd_cart_amount.text(),$checkout_form_wrap=$("#edd_checkout_form_wrap"),$body.on("edd_gateway_loaded",function(e){var form,card_number,card_cvc,card_expiry;card_number=(form=$form).find(".card-number"),card_cvc=form.find(".card-cvc"),card_expiry=form.find(".card-expiry"),card_number.length&&"function"==typeof card_number.payment&&(card_number.payment("formatCardNumber"),card_cvc.payment("formatCardCVC"),card_expiry.payment("formatCardExpiry"))}),$body.on("keyup change",".edd-do-validate .card-number",function(){var field,card_field;field=$(this),(card_field=field).validateCreditCard(function(result){var $card_type=$(".card-type");null==result.card_type?($card_type.removeClass().addClass("off card-type"),card_field.removeClass("valid"),card_field.addClass("error")):($card_type.removeClass("off"),$card_type.addClass(result.card_type.name),result.length_valid&&result.luhn_valid?(card_field.addClass("valid"),card_field.removeClass("error")):(card_field.removeClass("valid"),card_field.addClass("error")))})}),$body.on("blur change",".card-name",function(){var name_field=$(this);name_field.validateCreditCard(function(result){null!=result.card_type?(name_field.removeClass("valid").addClass("error"),$("#edd-purchase-button").attr("disabled","disabled")):(name_field.removeClass("error").addClass("valid"),$("#edd-purchase-button").removeAttr("disabled"))})}),$body.on("submit","#edd_payment_mode",function(){if(0==$("#edd-gateway option:selected").val())return alert(edd_global_vars.no_gateway),!1}),$body.on("click","#edd_payment_mode_select input",function(){$("#edd_payment_mode_select label.edd-gateway-option-selected").removeClass("edd-gateway-option-selected"),$("#edd_payment_mode_select input:checked").parent().addClass("edd-gateway-option-selected")}),$checkout_form_wrap.on("click",".edd-apply-discount",apply_discount),$checkout_form_wrap.on("keypress","#edd-discount",function(event){if("13"==event.keyCode)return!1}),$checkout_form_wrap.on("keyup","#edd-discount",function(event){"13"==event.keyCode&&$checkout_form_wrap.find(".edd-apply-discount").trigger("click")}),$body.on("click",".edd_discount_remove",remove_discount),$body.on("click",".edd_discount_link",function(e){e.preventDefault(),$(".edd_discount_link").parent().hide(),$("#edd-discount-code-wrap").show().find("#edd-discount").focus()}),$body.find("#edd-discount-code-wrap").hide(),$body.find("#edd_show_discount").show(),$body.on("change",".edd-item-quantity",update_item_quantities),$body.on("click",".edd-amazon-logout #Logout",function(e){e.preventDefault(),amazon.Login.logout(),window.location=edd_amazon.checkoutUri})},recalculate_taxes:recalculate_taxes}}(window.jQuery),window.jQuery(document).ready(EDD_Checkout.init);var ajax_tax_count=0;function recalculate_taxes(state){if("1"==edd_global_vars.taxes_enabled){var $edd_cc_address=jQuery("#edd_cc_address");state||(state=$edd_cc_address.find("#card_state").val());var postData={action:"edd_recalculate_taxes",billing_country:$edd_cc_address.find("#billing_country").val(),state:state,card_zip:$edd_cc_address.find("input[name=card_zip]").val(),nonce:jQuery("#edd-checkout-address-fields-nonce").val()};jQuery("#edd_purchase_submit [type=submit]").after('<span class="edd-loading-ajax edd-recalculate-taxes-loading edd-loading"></span>');var current_ajax_count=++ajax_tax_count;jQuery.ajax({type:"POST",data:postData,dataType:"json",url:edd_global_vars.ajaxurl,xhrFields:{withCredentials:!0},success:function(tax_response){if(current_ajax_count===ajax_tax_count){jQuery("#edd_checkout_cart_form").replaceWith(tax_response.html),jQuery(".edd_cart_amount").html(tax_response.total);var tax_data=new Object;tax_data.postdata=postData,tax_data.response=tax_response,jQuery("body").trigger("edd_taxes_recalculated",[tax_data])}jQuery(".edd-recalculate-taxes-loading").remove()}}).fail(function(data){window.console&&window.console.log&&(console.log(data),current_ajax_count===ajax_tax_count&&jQuery("body").trigger("edd_taxes_recalculated",[tax_data]))})}}
easy-digital-downloads.php CHANGED
@@ -5,7 +5,7 @@
5
  * Description: The easiest way to sell digital products with WordPress.
6
  * Author: Easy Digital Downloads
7
  * Author URI: https://easydigitaldownloads.com
8
- * Version: 2.9.6
9
  * Text Domain: easy-digital-downloads
10
  * Domain Path: languages
11
  *
@@ -25,7 +25,7 @@
25
  * @package EDD
26
  * @category Core
27
  * @author Pippin Williamson
28
- * @version 2.9.6
29
  */
30
 
31
  // Exit if accessed directly.
@@ -206,7 +206,7 @@ final class Easy_Digital_Downloads {
206
 
207
  // Plugin version.
208
  if ( ! defined( 'EDD_VERSION' ) ) {
209
- define( 'EDD_VERSION', '2.9.6' );
210
  }
211
 
212
  // Plugin Folder Path.
5
  * Description: The easiest way to sell digital products with WordPress.
6
  * Author: Easy Digital Downloads
7
  * Author URI: https://easydigitaldownloads.com
8
+ * Version: 2.9.7
9
  * Text Domain: easy-digital-downloads
10
  * Domain Path: languages
11
  *
25
  * @package EDD
26
  * @category Core
27
  * @author Pippin Williamson
28
+ * @version 2.9.7
29
  */
30
 
31
  // Exit if accessed directly.
206
 
207
  // Plugin version.
208
  if ( ! defined( 'EDD_VERSION' ) ) {
209
+ define( 'EDD_VERSION', '2.9.7' );
210
  }
211
 
212
  // Plugin Folder Path.
includes/EDD_SL_Plugin_Updater.php CHANGED
@@ -7,7 +7,7 @@ if ( ! defined( 'ABSPATH' ) ) exit;
7
  * Allows plugins to use their own update API.
8
  *
9
  * @author Easy Digital Downloads
10
- * @version 1.6.14
11
  */
12
  class EDD_SL_Plugin_Updater {
13
 
@@ -19,6 +19,8 @@ class EDD_SL_Plugin_Updater {
19
  private $wp_override = false;
20
  private $cache_key = '';
21
 
 
 
22
  /**
23
  * Class constructor.
24
  *
@@ -40,10 +42,19 @@ class EDD_SL_Plugin_Updater {
40
  $this->version = $_api_data['version'];
41
  $this->wp_override = isset( $_api_data['wp_override'] ) ? (bool) $_api_data['wp_override'] : false;
42
  $this->beta = ! empty( $this->api_data['beta'] ) ? true : false;
43
- $this->cache_key = md5( serialize( $this->slug . $this->api_data['license'] . $this->beta ) );
44
 
45
  $edd_plugin_data[ $this->slug ] = $this->api_data;
46
 
 
 
 
 
 
 
 
 
 
47
  // Set up hooks.
48
  $this->init();
49
 
@@ -112,7 +123,7 @@ class EDD_SL_Plugin_Updater {
112
 
113
  }
114
 
115
- $_transient_data->last_checked = current_time( 'timestamp' );
116
  $_transient_data->checked[ $this->name ] = $this->version;
117
 
118
  }
@@ -158,6 +169,19 @@ class EDD_SL_Plugin_Updater {
158
  if ( false === $version_info ) {
159
  $version_info = $this->api_request( 'plugin_latest_version', array( 'slug' => $this->slug, 'beta' => $this->beta ) );
160
 
 
 
 
 
 
 
 
 
 
 
 
 
 
161
  $this->set_version_info_cache( $version_info );
162
  }
163
 
@@ -171,7 +195,7 @@ class EDD_SL_Plugin_Updater {
171
 
172
  }
173
 
174
- $update_cache->last_checked = current_time( 'timestamp' );
175
  $update_cache->checked[ $this->name ] = $this->version;
176
 
177
  set_site_transient( 'update_plugins', $update_cache );
@@ -251,7 +275,8 @@ class EDD_SL_Plugin_Updater {
251
  'is_ssl' => is_ssl(),
252
  'fields' => array(
253
  'banners' => array(),
254
- 'reviews' => false
 
255
  )
256
  );
257
 
@@ -278,27 +303,43 @@ class EDD_SL_Plugin_Updater {
278
 
279
  // Convert sections into an associative array, since we're getting an object, but Core expects an array.
280
  if ( isset( $_data->sections ) && ! is_array( $_data->sections ) ) {
281
- $new_sections = array();
282
- foreach ( $_data->sections as $key => $value ) {
283
- $new_sections[ $key ] = $value;
284
- }
285
-
286
- $_data->sections = $new_sections;
287
  }
288
 
289
  // Convert banners into an associative array, since we're getting an object, but Core expects an array.
290
  if ( isset( $_data->banners ) && ! is_array( $_data->banners ) ) {
291
- $new_banners = array();
292
- foreach ( $_data->banners as $key => $value ) {
293
- $new_banners[ $key ] = $value;
294
- }
295
 
296
- $_data->banners = $new_banners;
 
 
297
  }
298
 
299
  return $_data;
300
  }
301
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
302
  /**
303
  * Disable SSL verification in order to prevent download update failures
304
  *
@@ -329,7 +370,29 @@ class EDD_SL_Plugin_Updater {
329
  */
330
  private function api_request( $_action, $_data ) {
331
 
332
- global $wp_version;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
333
 
334
  $data = array_merge( $this->api_data, $_data );
335
 
@@ -337,7 +400,7 @@ class EDD_SL_Plugin_Updater {
337
  return;
338
  }
339
 
340
- if( $this->api_url == trailingslashit (home_url() ) ) {
341
  return false; // Don't allow a plugin to ping itself
342
  }
343
 
@@ -370,6 +433,10 @@ class EDD_SL_Plugin_Updater {
370
  $request->banners = maybe_unserialize( $request->banners );
371
  }
372
 
 
 
 
 
373
  if( ! empty( $request->sections ) ) {
374
  foreach( $request->sections as $key => $section ) {
375
  $request->$key = (array) $section;
@@ -455,11 +522,17 @@ class EDD_SL_Plugin_Updater {
455
 
456
  $cache = get_option( $cache_key );
457
 
458
- if( empty( $cache['timeout'] ) || current_time( 'timestamp' ) > $cache['timeout'] ) {
459
  return false; // Cache is expired
460
  }
461
 
462
- return json_decode( $cache['value'] );
 
 
 
 
 
 
463
 
464
  }
465
 
@@ -470,7 +543,7 @@ class EDD_SL_Plugin_Updater {
470
  }
471
 
472
  $data = array(
473
- 'timeout' => strtotime( '+3 hours', current_time( 'timestamp' ) ),
474
  'value' => json_encode( $value )
475
  );
476
 
7
  * Allows plugins to use their own update API.
8
  *
9
  * @author Easy Digital Downloads
10
+ * @version 1.6.17
11
  */
12
  class EDD_SL_Plugin_Updater {
13
 
19
  private $wp_override = false;
20
  private $cache_key = '';
21
 
22
+ private $health_check_timeout = 5;
23
+
24
  /**
25
  * Class constructor.
26
  *
42
  $this->version = $_api_data['version'];
43
  $this->wp_override = isset( $_api_data['wp_override'] ) ? (bool) $_api_data['wp_override'] : false;
44
  $this->beta = ! empty( $this->api_data['beta'] ) ? true : false;
45
+ $this->cache_key = 'edd_sl_' . md5( serialize( $this->slug . $this->api_data['license'] . $this->beta ) );
46
 
47
  $edd_plugin_data[ $this->slug ] = $this->api_data;
48
 
49
+ /**
50
+ * Fires after the $edd_plugin_data is setup.
51
+ *
52
+ * @since x.x.x
53
+ *
54
+ * @param array $edd_plugin_data Array of EDD SL plugin data.
55
+ */
56
+ do_action( 'post_edd_sl_plugin_updater_setup', $edd_plugin_data );
57
+
58
  // Set up hooks.
59
  $this->init();
60
 
123
 
124
  }
125
 
126
+ $_transient_data->last_checked = time();
127
  $_transient_data->checked[ $this->name ] = $this->version;
128
 
129
  }
169
  if ( false === $version_info ) {
170
  $version_info = $this->api_request( 'plugin_latest_version', array( 'slug' => $this->slug, 'beta' => $this->beta ) );
171
 
172
+ // Since we disabled our filter for the transient, we aren't running our object conversion on banners, sections, or icons. Do this now:
173
+ if ( isset( $version_info->banners ) && ! is_array( $version_info->banners ) ) {
174
+ $version_info->banners = $this->convert_object_to_array( $version_info->banners );
175
+ }
176
+
177
+ if ( isset( $version_info->sections ) && ! is_array( $version_info->sections ) ) {
178
+ $version_info->sections = $this->convert_object_to_array( $version_info->sections );
179
+ }
180
+
181
+ if ( isset( $version_info->icons ) && ! is_array( $version_info->icons ) ) {
182
+ $version_info->icons = $this->convert_object_to_array( $version_info->icons );
183
+ }
184
+
185
  $this->set_version_info_cache( $version_info );
186
  }
187
 
195
 
196
  }
197
 
198
+ $update_cache->last_checked = time();
199
  $update_cache->checked[ $this->name ] = $this->version;
200
 
201
  set_site_transient( 'update_plugins', $update_cache );
275
  'is_ssl' => is_ssl(),
276
  'fields' => array(
277
  'banners' => array(),
278
+ 'reviews' => false,
279
+ 'icons' => array(),
280
  )
281
  );
282
 
303
 
304
  // Convert sections into an associative array, since we're getting an object, but Core expects an array.
305
  if ( isset( $_data->sections ) && ! is_array( $_data->sections ) ) {
306
+ $_data->sections = $this->convert_object_to_array( $_data->sections );
 
 
 
 
 
307
  }
308
 
309
  // Convert banners into an associative array, since we're getting an object, but Core expects an array.
310
  if ( isset( $_data->banners ) && ! is_array( $_data->banners ) ) {
311
+ $_data->banners = $this->convert_object_to_array( $_data->banners );
312
+ }
 
 
313
 
314
+ // Convert icons into an associative array, since we're getting an object, but Core expects an array.
315
+ if ( isset( $_data->icons ) && ! is_array( $_data->icons ) ) {
316
+ $_data->icons = $this->convert_object_to_array( $_data->icons );
317
  }
318
 
319
  return $_data;
320
  }
321
 
322
+ /**
323
+ * Convert some objects to arrays when injecting data into the update API
324
+ *
325
+ * Some data like sections, banners, and icons are expected to be an associative array, however due to the JSON
326
+ * decoding, they are objects. This method allows us to pass in the object and return an associative array.
327
+ *
328
+ * @since 3.6.5
329
+ *
330
+ * @param stdClass $data
331
+ *
332
+ * @return array
333
+ */
334
+ private function convert_object_to_array( $data ) {
335
+ $new_data = array();
336
+ foreach ( $data as $key => $value ) {
337
+ $new_data[ $key ] = $value;
338
+ }
339
+
340
+ return $new_data;
341
+ }
342
+
343
  /**
344
  * Disable SSL verification in order to prevent download update failures
345
  *
370
  */
371
  private function api_request( $_action, $_data ) {
372
 
373
+ global $wp_version, $edd_plugin_url_available;
374
+
375
+ // Do a quick status check on this domain if we haven't already checked it.
376
+ $store_hash = md5( $this->api_url );
377
+ if ( ! is_array( $edd_plugin_url_available ) || ! isset( $edd_plugin_url_available[ $store_hash ] ) ) {
378
+ $test_url_parts = parse_url( $this->api_url );
379
+
380
+ $scheme = ! empty( $test_url_parts['scheme'] ) ? $test_url_parts['scheme'] : 'http';
381
+ $host = ! empty( $test_url_parts['host'] ) ? $test_url_parts['host'] : '';
382
+ $port = ! empty( $test_url_parts['port'] ) ? ':' . $test_url_parts['port'] : '';
383
+
384
+ if ( empty( $host ) ) {
385
+ $edd_plugin_url_available[ $store_hash ] = false;
386
+ } else {
387
+ $test_url = $scheme . '://' . $host . $port;
388
+ $response = wp_remote_get( $test_url, array( 'timeout' => $this->health_check_timeout, 'sslverify' => true ) );
389
+ $edd_plugin_url_available[ $store_hash ] = is_wp_error( $response ) ? false : true;
390
+ }
391
+ }
392
+
393
+ if ( false === $edd_plugin_url_available[ $store_hash ] ) {
394
+ return;
395
+ }
396
 
397
  $data = array_merge( $this->api_data, $_data );
398
 
400
  return;
401
  }
402
 
403
+ if( $this->api_url == trailingslashit ( home_url() ) ) {
404
  return false; // Don't allow a plugin to ping itself
405
  }
406
 
433
  $request->banners = maybe_unserialize( $request->banners );
434
  }
435
 
436
+ if ( $request && isset( $request->icons ) ) {
437
+ $request->icons = maybe_unserialize( $request->icons );
438
+ }
439
+
440
  if( ! empty( $request->sections ) ) {
441
  foreach( $request->sections as $key => $section ) {
442
  $request->$key = (array) $section;
522
 
523
  $cache = get_option( $cache_key );
524
 
525
+ if( empty( $cache['timeout'] ) || time() > $cache['timeout'] ) {
526
  return false; // Cache is expired
527
  }
528
 
529
+ // We need to turn the icons into an array, thanks to WP Core forcing these into an object at some point.
530
+ $cache['value'] = json_decode( $cache['value'] );
531
+ if ( ! empty( $cache['value']->icons ) ) {
532
+ $cache['value']->icons = (array) $cache['value']->icons;
533
+ }
534
+
535
+ return $cache['value'];
536
 
537
  }
538
 
543
  }
544
 
545
  $data = array(
546
+ 'timeout' => strtotime( '+3 hours', time() ),
547
  'value' => json_encode( $value )
548
  );
549
 
includes/admin/system-info.php DELETED
@@ -1,241 +0,0 @@
1
- <?php
2
- /**
3
- * System Info
4
- *
5
- * These are functions are used for exporting data from Easy Digital Downloads.
6
- *
7
- * @package EDD
8
- * @subpackage Admin/System
9
- * @copyright Copyright (c) 2014, Pippin Williamson
10
- * @license http://opensource.org/licenses/gpl-2.0.php GNU Public License
11
- */
12
-
13
- // Exit if accessed directly
14
- if ( ! defined( 'ABSPATH' ) ) exit;
15
-
16
- /**
17
- * System info
18
- *
19
- * Shows the system info panel which contains version data and debug info.
20
- * The data for the system info is generated by the Browser class.
21
- *
22
- * @since 1.4
23
- * @global $wpdb
24
- * @global object $wpdb Used to query the database using the WordPress
25
- * Database API
26
- * @global $edd_options Array of all the EDD Options
27
- * @author Chris Christoff
28
- * @return void
29
- */
30
- function edd_system_info() {
31
- global $wpdb, $edd_options;
32
-
33
- if ( ! class_exists( 'Browser' ) )
34
- require_once EDD_PLUGIN_DIR . 'includes/libraries/browser.php';
35
-
36
- $browser = new Browser();
37
- if ( get_bloginfo( 'version' ) < '3.4' ) {
38
- $theme_data = get_theme_data( get_stylesheet_directory() . '/style.css' );
39
- $theme = $theme_data['Name'] . ' ' . $theme_data['Version'];
40
- } else {
41
- $theme_data = wp_get_theme();
42
- $theme = $theme_data->Name . ' ' . $theme_data->Version;
43
- }
44
-
45
- // Try to identifty the hosting provider
46
- $host = false;
47
- if( defined( 'WPE_APIKEY' ) ) {
48
- $host = 'WP Engine';
49
- } elseif( defined( 'PAGELYBIN' ) ) {
50
- $host = 'Pagely';
51
- }
52
- ?>
53
- <div class="wrap">
54
- <h2><?php _e( 'System Information', 'edd' ); ?></h2><br/>
55
- <form action="<?php echo esc_url( admin_url( 'edit.php?post_type=download&page=edd-system-info' ) ); ?>" method="post" dir="ltr">
56
- <textarea readonly="readonly" onclick="this.focus();this.select()" id="system-info-textarea" name="edd-sysinfo" title="<?php _e( 'To copy the system info, click below then press Ctrl + C (PC) or Cmd + C (Mac).', 'edd' ); ?>">
57
- ### Begin System Info ###
58
-
59
- ## Please include this information when posting support requests ##
60
-
61
- <?php do_action( 'edd_system_info_before' ); ?>
62
-
63
- Multisite: <?php echo is_multisite() ? 'Yes' . "\n" : 'No' . "\n" ?>
64
-
65
- SITE_URL: <?php echo site_url() . "\n"; ?>
66
- HOME_URL: <?php echo home_url() . "\n"; ?>
67
-
68
- EDD Version: <?php echo EDD_VERSION . "\n"; ?>
69
- Upgraded From: <?php echo get_option( 'edd_version_upgraded_from', 'None' ) . "\n"; ?>
70
- WordPress Version: <?php echo get_bloginfo( 'version' ) . "\n"; ?>
71
- Permalink Structure: <?php echo get_option( 'permalink_structure' ) . "\n"; ?>
72
- Active Theme: <?php echo $theme . "\n"; ?>
73
- <?php if( $host ) : ?>
74
- Host: <?php echo $host . "\n"; ?>
75
- <?php endif; ?>
76
-
77
- Test Mode Enabled: <?php echo edd_is_test_mode() ? "Yes\n" : "No\n"; ?>
78
- Ajax Enabled: <?php echo edd_is_ajax_enabled() ? "Yes\n" : "No\n"; ?>
79
- Guest Checkout Enabled: <?php echo edd_no_guest_checkout() ? "No\n" : "Yes\n"; ?>
80
- Symlinks Enabled: <?php echo apply_filters( 'edd_symlink_file_downloads', isset( $edd_options['symlink_file_downloads'] ) ) && function_exists( 'symlink' ) ? "Yes\n" : "No\n"; ?>
81
-
82
- Checkout is: <?php echo ! empty( $edd_options['purchase_page'] ) ? "Valid\n" : "Invalid\n"; ?>
83
- Checkout Page: <?php echo ! empty( $edd_options['purchase_page'] ) ? get_permalink( $edd_options['purchase_page'] ) . "\n" : "\n" ?>
84
- Success Page: <?php echo ! empty( $edd_options['success_page'] ) ? get_permalink( $edd_options['success_page'] ) . "\n" : "\n" ?>
85
- Failure Page: <?php echo ! empty( $edd_options['failure_page'] ) ? get_permalink( $edd_options['failure_page'] ) . "\n" : "\n" ?>
86
- Downloads slug: <?php echo defined( 'EDD_SLUG' ) ? '/' . EDD_SLUG . "\n" : "/downloads\n"; ?>
87
-
88
- Taxes Enabled: <?php echo edd_use_taxes() ? "Yes\n" : "No\n"; ?>
89
- Taxes After Discounts: <?php echo edd_taxes_after_discounts() ? "Yes\n" : "No\n"; ?>
90
- Tax Rate: <?php echo edd_get_tax_rate() * 100; ?>%
91
- Country / State Rates: <?php
92
-
93
- $rates = edd_get_tax_rates();
94
- if( ! empty( $rates ) ) {
95
- foreach( $rates as $rate ) {
96
- echo 'Country: ' . $rate['country'] . ', State: ' . $rate['state'] . ', Rate: ' . $rate['rate'] . ' | ';
97
- }
98
- }
99
- ?>
100
-
101
- Registered Post Stati: <?php echo implode( ', ', get_post_stati() ) . "\n\n"; ?>
102
-
103
- <?php echo $browser ; ?>
104
-
105
- PHP Version: <?php echo PHP_VERSION . "\n"; ?>
106
- MySQL Version: <?php echo mysql_get_server_info() . "\n"; ?>
107
- Web Server Info: <?php echo $_SERVER['SERVER_SOFTWARE'] . "\n"; ?>
108
-
109
- WordPress Memory Limit: <?php echo ( edd_let_to_num( WP_MEMORY_LIMIT )/( 1024 ) )."MB"; ?><?php echo "\n"; ?>
110
- PHP Safe Mode: <?php echo ini_get( 'safe_mode' ) ? "Yes" : "No\n"; ?>
111
- PHP Memory Limit: <?php echo ini_get( 'memory_limit' ) . "\n"; ?>
112
- PHP Upload Max Size: <?php echo ini_get( 'upload_max_filesize' ) . "\n"; ?>
113
- PHP Post Max Size: <?php echo ini_get( 'post_max_size' ) . "\n"; ?>
114
- PHP Upload Max Filesize: <?php echo ini_get( 'upload_max_filesize' ) . "\n"; ?>
115
- PHP Time Limit: <?php echo ini_get( 'max_execution_time' ) . "\n"; ?>
116
- PHP Max Input Vars: <?php echo ini_get( 'max_input_vars' ) . "\n"; ?>
117
- PHP Arg Separator: <?php echo ini_get( 'arg_separator.output' ) . "\n"; ?>
118
- PHP Allow URL File Open: <?php echo ini_get( 'allow_url_fopen' ) ? "Yes" : "No\n"; ?>
119
-
120
- WP_DEBUG: <?php echo defined( 'WP_DEBUG' ) ? WP_DEBUG ? 'Enabled' . "\n" : 'Disabled' . "\n" : 'Not set' . "\n" ?>
121
-
122
- WP Table Prefix: <?php echo "Length: ". strlen( $wpdb->prefix ); echo " Status:"; if ( strlen( $wpdb->prefix )>16 ) {echo " ERROR: Too Long";} else {echo " Acceptable";} echo "\n"; ?>
123
-
124
- Show On Front: <?php echo get_option( 'show_on_front' ) . "\n" ?>
125
- Page On Front: <?php $id = get_option( 'page_on_front' ); echo get_the_title( $id ) . ' (#' . $id . ')' . "\n" ?>
126
- Page For Posts: <?php $id = get_option( 'page_for_posts' ); echo get_the_title( $id ) . ' (#' . $id . ')' . "\n" ?>
127
-
128
- <?php
129
- $request['cmd'] = '_notify-validate';
130
-
131
- $params = array(
132
- 'sslverify' => false,
133
- 'timeout' => 60,
134
- 'user-agent' => 'EDD/' . EDD_VERSION,
135
- 'body' => $request
136
- );
137
-
138
- $response = wp_remote_post( 'https://www.paypal.com/cgi-bin/webscr', $params );
139
-
140
- if ( ! is_wp_error( $response ) && $response['response']['code'] >= 200 && $response['response']['code'] < 300 ) {
141
- $WP_REMOTE_POST = 'wp_remote_post() works' . "\n";
142
- } else {
143
- $WP_REMOTE_POST = 'wp_remote_post() does not work' . "\n";
144
- }
145
- ?>
146
- WP Remote Post: <?php echo $WP_REMOTE_POST; ?>
147
-
148
- Session: <?php echo isset( $_SESSION ) ? 'Enabled' : 'Disabled'; ?><?php echo "\n"; ?>
149
- Session Name: <?php echo esc_html( ini_get( 'session.name' ) ); ?><?php echo "\n"; ?>
150
- Cookie Path: <?php echo esc_html( ini_get( 'session.cookie_path' ) ); ?><?php echo "\n"; ?>
151
- Save Path: <?php echo esc_html( ini_get( 'session.save_path' ) ); ?><?php echo "\n"; ?>
152
- Use Cookies: <?php echo ini_get( 'session.use_cookies' ) ? 'On' : 'Off'; ?><?php echo "\n"; ?>
153
- Use Only Cookies: <?php echo ini_get( 'session.use_only_cookies' ) ? 'On' : 'Off'; ?><?php echo "\n"; ?>
154
-
155
- DISPLAY ERRORS: <?php echo ( ini_get( 'display_errors' ) ) ? 'On (' . ini_get( 'display_errors' ) . ')' : 'N/A'; ?><?php echo "\n"; ?>
156
- FSOCKOPEN: <?php echo ( function_exists( 'fsockopen' ) ) ? 'Your server supports fsockopen.' : 'Your server does not support fsockopen.'; ?><?php echo "\n"; ?>
157
- cURL: <?php echo ( function_exists( 'curl_init' ) ) ? 'Your server supports cURL.' : 'Your server does not support cURL.'; ?><?php echo "\n"; ?>
158
- SOAP Client: <?php echo ( class_exists( 'SoapClient' ) ) ? 'Your server has the SOAP Client enabled.' : 'Your server does not have the SOAP Client enabled.'; ?><?php echo "\n"; ?>
159
- SUHOSIN: <?php echo ( extension_loaded( 'suhosin' ) ) ? 'Your server has SUHOSIN installed.' : 'Your server does not have SUHOSIN installed.'; ?><?php echo "\n"; ?>
160
-
161
- TEMPLATES:
162
-
163
- <?php
164
- // Show templates that have been copied to the theme's edd_templates dir
165
- $dir = get_stylesheet_directory() . '/edd_templates/*';
166
- if (!empty($dir)){
167
- foreach ( glob( $dir ) as $file ) {
168
- echo "Filename: " . basename( $file ) . "\n";
169
- }
170
- }
171
- else {
172
- echo 'No overrides found';
173
- }
174
- ?>
175
-
176
- ACTIVE PLUGINS:
177
-
178
- <?php
179
- $plugins = get_plugins();
180
- $active_plugins = get_option( 'active_plugins', array() );
181
-
182
- foreach ( $plugins as $plugin_path => $plugin ) {
183
- // If the plugin isn't active, don't show it.
184
- if ( ! in_array( $plugin_path, $active_plugins ) )
185
- continue;
186
-
187
- echo $plugin['Name'] . ': ' . $plugin['Version'] ."\n";
188
- }
189
-
190
- if ( is_multisite() ) :
191
- ?>
192
-
193
- NETWORK ACTIVE PLUGINS:
194
-
195
- <?php
196
- $plugins = wp_get_active_network_plugins();
197
- $active_plugins = get_site_option( 'active_sitewide_plugins', array() );
198
-
199
- foreach ( $plugins as $plugin_path ) {
200
- $plugin_base = plugin_basename( $plugin_path );
201
-
202
- // If the plugin isn't active, don't show it.
203
- if ( ! array_key_exists( $plugin_base, $active_plugins ) )
204
- continue;
205
-
206
- $plugin = get_plugin_data( $plugin_path );
207
-
208
- echo $plugin['Name'] . ' :' . $plugin['Version'] ."\n";
209
- }
210
-
211
- endif;
212
-
213
- do_action( 'edd_system_info_after' );
214
- ?>
215
- ### End System Info ###</textarea>
216
- <p class="submit">
217
- <input type="hidden" name="edd-action" value="download_sysinfo" />
218
- <?php submit_button( 'Download System Info File', 'primary', 'edd-download-sysinfo', false ); ?>
219
- </p>
220
- </form>
221
- </div>
222
- </div>
223
- <?php
224
- }
225
-
226
- /**
227
- * Generates the System Info Download File
228
- *
229
- * @since 1.4
230
- * @return void
231
- */
232
- function edd_generate_sysinfo_download() {
233
- nocache_headers();
234
-
235
- header( "Content-type: text/plain" );
236
- header( 'Content-Disposition: attachment; filename="edd-system-info.txt"' );
237
-
238
- echo wp_strip_all_tags( $_POST['edd-sysinfo'] );
239
- edd_die();
240
- }
241
- add_action( 'edd_download_sysinfo', 'edd_generate_sysinfo_download' );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
includes/admin/tools.php CHANGED
@@ -1186,7 +1186,7 @@ function edd_tools_sysinfo_get() {
1186
  // Try to identify the hosting provider
1187
  $host = edd_get_host();
1188
 
1189
- $return = '### Begin System Info ###' . "\n\n";
1190
 
1191
  // Start with the basics...
1192
  $return .= '-- Site Info' . "\n\n";
1186
  // Try to identify the hosting provider
1187
  $host = edd_get_host();
1188
 
1189
+ $return = '### Begin System Info (Generated ' . date( 'Y-m-d H:i:s' ) . ') ###' . "\n\n";
1190
 
1191
  // Start with the basics...
1192
  $return .= '-- Site Info' . "\n\n";
includes/api/class-edd-api-v2.php CHANGED
@@ -42,12 +42,36 @@ class EDD_API_V2 extends EDD_API_V1 {
42
  'posts_per_page' => $this->per_page(),
43
  'suppress_filters' => true,
44
  'paged' => $this->get_paged(),
 
 
45
  );
46
 
47
  if( ! empty( $args['s'] ) ) {
48
  $query_args['s'] = sanitize_text_field( $args['s'] );
49
  }
50
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
51
  if( ! empty( $args['category'] ) ) {
52
  if ( strpos( $args['category'], ',' ) ) {
53
  $args['category'] = explode( ',', $args['category'] );
42
  'posts_per_page' => $this->per_page(),
43
  'suppress_filters' => true,
44
  'paged' => $this->get_paged(),
45
+ 'order' => $args['order'],
46
+ 'orderby' => $args['orderby'],
47
  );
48
 
49
  if( ! empty( $args['s'] ) ) {
50
  $query_args['s'] = sanitize_text_field( $args['s'] );
51
  }
52
 
53
+ switch ( $query_args['orderby'] ) {
54
+ case 'price':
55
+ $query_args['meta_key'] = 'edd_price';
56
+ $query_args['orderby'] = 'meta_value_num';
57
+ break;
58
+
59
+ case 'sales':
60
+ if ( user_can( $this->user_id, 'view_shop_sensitive_data' ) || current_user_can( 'view_shop_sensitive_data' ) || $this->override ) {
61
+ $query_args['meta_key'] = '_edd_download_sales';
62
+ $query_args['orderby'] = 'meta_value_num';
63
+ }
64
+ break;
65
+
66
+ case 'earnings':
67
+ if ( user_can( $this->user_id, 'view_shop_sensitive_data' ) || current_user_can( 'view_shop_sensitive_data' ) || $this->override ) {
68
+ $query_args['meta_key'] = '_edd_download_earnings';
69
+ $query_args['orderby'] = 'meta_value_num';
70
+ }
71
+ break;
72
+
73
+ }
74
+
75
  if( ! empty( $args['category'] ) ) {
76
  if ( strpos( $args['category'], ',' ) ) {
77
  $args['category'] = explode( ',', $args['category'] );
includes/api/class-edd-api.php CHANGED
@@ -573,6 +573,8 @@ class EDD_API {
573
  'tag' => isset( $wp_query->query_vars['tag'] ) ? $this->sanitize_request_term( $wp_query->query_vars['tag'] ) : null,
574
  'term_relation' => isset( $wp_query->query_vars['term_relation'] ) ? $this->sanitize_request_term( $wp_query->query_vars['term_relation'] ) : null,
575
  's' => isset( $wp_query->query_vars['s'] ) ? sanitize_text_field( $wp_query->query_vars['s'] ) : null,
 
 
576
  );
577
 
578
  $data = $this->routes->get_products( $args );
@@ -2262,4 +2264,4 @@ class EDD_API {
2262
  return hash_equals( md5( $secret . $public ), $token );
2263
  }
2264
 
2265
- }
573
  'tag' => isset( $wp_query->query_vars['tag'] ) ? $this->sanitize_request_term( $wp_query->query_vars['tag'] ) : null,
574
  'term_relation' => isset( $wp_query->query_vars['term_relation'] ) ? $this->sanitize_request_term( $wp_query->query_vars['term_relation'] ) : null,
575
  's' => isset( $wp_query->query_vars['s'] ) ? sanitize_text_field( $wp_query->query_vars['s'] ) : null,
576
+ 'order' => isset( $wp_query->query_vars['order'] ) ? $wp_query->query_vars['order'] : 'DESC',
577
+ 'orderby' => isset( $wp_query->query_vars['orderby'] ) ? $wp_query->query_vars['orderby'] : 'date',
578
  );
579
 
580
  $data = $this->routes->get_products( $args );
2264
  return hash_equals( md5( $secret . $public ), $token );
2265
  }
2266
 
2267
+ }
includes/checkout/template.php CHANGED
@@ -558,7 +558,7 @@ function edd_get_login_fields() {
558
  <?php } ?>
559
  <?php do_action('edd_checkout_login_fields_before'); ?>
560
  <p id="edd-user-login-wrap">
561
- <label class="edd-label" for="edd-username">
562
  <?php _e( 'Username or Email', 'easy-digital-downloads' ); ?>
563
  <?php if( edd_no_guest_checkout() ) { ?>
564
  <span class="edd-required-indicator">*</span>
@@ -567,7 +567,7 @@ function edd_get_login_fields() {
567
  <input class="<?php if(edd_no_guest_checkout()) { echo 'required '; } ?>edd-input" type="text" name="edd_user_login" id="edd_user_login" value="" placeholder="<?php _e( 'Your username or email address', 'easy-digital-downloads' ); ?>"/>
568
  </p>
569
  <p id="edd-user-pass-wrap" class="edd_login_password">
570
- <label class="edd-label" for="edd-password">
571
  <?php _e( 'Password', 'easy-digital-downloads' ); ?>
572
  <?php if( edd_no_guest_checkout() ) { ?>
573
  <span class="edd-required-indicator">*</span>
558
  <?php } ?>
559
  <?php do_action('edd_checkout_login_fields_before'); ?>
560
  <p id="edd-user-login-wrap">
561
+ <label class="edd-label" for="edd_user_login">
562
  <?php _e( 'Username or Email', 'easy-digital-downloads' ); ?>
563
  <?php if( edd_no_guest_checkout() ) { ?>
564
  <span class="edd-required-indicator">*</span>
567
  <input class="<?php if(edd_no_guest_checkout()) { echo 'required '; } ?>edd-input" type="text" name="edd_user_login" id="edd_user_login" value="" placeholder="<?php _e( 'Your username or email address', 'easy-digital-downloads' ); ?>"/>
568
  </p>
569
  <p id="edd-user-pass-wrap" class="edd_login_password">
570
+ <label class="edd-label" for="edd_user_pass">
571
  <?php _e( 'Password', 'easy-digital-downloads' ); ?>
572
  <?php if( edd_no_guest_checkout() ) { ?>
573
  <span class="edd-required-indicator">*</span>
includes/class-edd-download.php CHANGED
@@ -850,7 +850,7 @@ class EDD_Download {
850
 
851
  global $wpdb;
852
 
853
- if ( empty( $meta_key ) || empty( $meta_value ) ) {
854
  return false;
855
  }
856
 
850
 
851
  global $wpdb;
852
 
853
+ if ( empty( $meta_key ) || ( ! is_numeric( $meta_value ) && empty( $meta_value ) ) ) {
854
  return false;
855
  }
856
 
includes/class-edd-session.php CHANGED
@@ -354,6 +354,11 @@ class EDD_Session {
354
  $start_session = false;
355
  }
356
 
 
 
 
 
 
357
  if( false !== strpos( $uri, 'wp_scrape_key' ) ) {
358
  // Starting sessions while saving the file editor can break the save process, so don't start
359
  $start_session = false;
354
  $start_session = false;
355
  }
356
 
357
+ if( is_admin() && false === strpos( $uri, 'wp-admin/admin-ajax.php' ) ) {
358
+ // We do not want to start sessions in the admin unless we're processing an ajax request
359
+ $start_session = false;
360
+ }
361
+
362
  if( false !== strpos( $uri, 'wp_scrape_key' ) ) {
363
  // Starting sessions while saving the file editor can break the save process, so don't start
364
  $start_session = false;
includes/emails/functions.php CHANGED
@@ -86,7 +86,7 @@ function edd_email_test_purchase_receipt() {
86
 
87
  $subject = edd_get_option( 'purchase_subject', __( 'Purchase Receipt', 'easy-digital-downloads' ) );
88
  $subject = apply_filters( 'edd_purchase_subject', wp_strip_all_tags( $subject ), 0 );
89
- $subject = edd_do_email_tags( $subject, 0 );
90
 
91
  $heading = edd_get_option( 'purchase_heading', __( 'Purchase Receipt', 'easy-digital-downloads' ) );
92
  $heading = apply_filters( 'edd_purchase_heading', $heading, 0, array() );
86
 
87
  $subject = edd_get_option( 'purchase_subject', __( 'Purchase Receipt', 'easy-digital-downloads' ) );
88
  $subject = apply_filters( 'edd_purchase_subject', wp_strip_all_tags( $subject ), 0 );
89
+ $subject = wp_specialchars_decode( edd_do_email_tags( $subject, 0 ) );
90
 
91
  $heading = edd_get_option( 'purchase_heading', __( 'Purchase Receipt', 'easy-digital-downloads' ) );
92
  $heading = apply_filters( 'edd_purchase_heading', $heading, 0, array() );
includes/process-download.php CHANGED
@@ -800,7 +800,10 @@ function edd_readfile_chunked( $file, $retbytes = true ) {
800
 
801
  header( 'Accept-Ranges: bytes' );
802
 
803
- set_time_limit( 0 );
 
 
 
804
  fseek( $handle, $seek_start );
805
 
806
  while ( ! @feof( $handle ) ) {
800
 
801
  header( 'Accept-Ranges: bytes' );
802
 
803
+ if ( ! edd_is_func_disabled( 'set_time_limit' ) ) {
804
+ @set_time_limit(0);
805
+ }
806
+
807
  fseek( $handle, $seek_start );
808
 
809
  while ( ! @feof( $handle ) ) {
includes/process-purchase.php CHANGED
@@ -230,7 +230,7 @@ function edd_process_purchase_login() {
230
  $is_ajax = isset( $_POST['edd_ajax'] );
231
 
232
  if ( ! isset( $_POST['edd_login_nonce'] ) ) {
233
- edd_debug_log( __( 'Missing nonce when processing login during checkout. Please read the following for more information: https://easydigitaldownloads.com/development/2018/07/05/important-update-to-ajax-requests-in-easy-digital-downloads-2-9-4', 'easy-digital-downloads' ), true );
234
  }
235
 
236
  $nonce = isset( $_POST['edd_login_nonce'] ) ? sanitize_text_field( $_POST['edd_login_nonce'] ) : '';
@@ -1074,7 +1074,7 @@ function edd_purchase_form_validate_cc_zip( $zip = 0, $country_code = '' ) {
1074
  "MG" => "\d{3}",
1075
  "MH" => "969[67]\d([ \-]\d{4})?",
1076
  "MK" => "\d{4}",
1077
- "MN" => "\d{6}",
1078
  "MP" => "9695[012]([ \-]\d{4})?",
1079
  "MQ" => "9[78]2\d{2}",
1080
  "MT" => "[A-Z]{3}[ ]?\d{2,4}",
230
  $is_ajax = isset( $_POST['edd_ajax'] );
231
 
232
  if ( ! isset( $_POST['edd_login_nonce'] ) ) {
233
+ edd_debug_log( __( 'Missing nonce when processing login during checkout. Please read the following for more information: https://easydigitaldownloads.com/development/2018/07/09/important-update-to-ajax-requests-in-easy-digital-downloads-2-9-4', 'easy-digital-downloads' ), true );
234
  }
235
 
236
  $nonce = isset( $_POST['edd_login_nonce'] ) ? sanitize_text_field( $_POST['edd_login_nonce'] ) : '';
1074
  "MG" => "\d{3}",
1075
  "MH" => "969[67]\d([ \-]\d{4})?",
1076
  "MK" => "\d{4}",
1077
+ "MN" => "\d{5}",
1078
  "MP" => "9695[012]([ \-]\d{4})?",
1079
  "MQ" => "9[78]2\d{2}",
1080
  "MT" => "[A-Z]{3}[ ]?\d{2,4}",
includes/shortcodes.php CHANGED
@@ -309,7 +309,7 @@ add_shortcode( 'purchase_collection', 'edd_purchase_collection_shortcode' );
309
  *
310
  * This shortcodes uses the WordPress Query API to get downloads with the
311
  * arguments specified when using the shortcode. A list of the arguments
312
- * can be found from the EDD Dccumentation. The shortcode will take all the
313
  * parameters and display the downloads queried in a valid HTML <div> tags.
314
  *
315
  * @since 1.0.6
309
  *
310
  * This shortcodes uses the WordPress Query API to get downloads with the
311
  * arguments specified when using the shortcode. A list of the arguments
312
+ * can be found from the EDD Documentation. The shortcode will take all the
313
  * parameters and display the downloads queried in a valid HTML <div> tags.
314
  *
315
  * @since 1.0.6
languages/easy-digital-downloads.pot CHANGED
@@ -2,9 +2,9 @@
2
  # This file is distributed under the same license as the Easy Digital Downloads package.
3
  msgid ""
4
  msgstr ""
5
- "Project-Id-Version: Easy Digital Downloads 2.9.5\n"
6
  "Report-Msgid-Bugs-To: https://easydigitaldownloads.com/\n"
7
- "POT-Creation-Date: 2018-07-12 17:29:20+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=utf-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
@@ -28,21 +28,21 @@ msgstr ""
28
  msgid "Cheatin&#8217; huh?"
29
  msgstr ""
30
 
31
- #: includes/EDD_SL_Plugin_Updater.php:201
32
  msgid "There is a new version of %1$s available. %2$sView version %3$s details%4$s."
33
  msgstr ""
34
 
35
- #: includes/EDD_SL_Plugin_Updater.php:209
36
  msgid ""
37
  "There is a new version of %1$s available. %2$sView version %3$s details%4$s "
38
  "or %5$supdate now%6$s."
39
  msgstr ""
40
 
41
- #: includes/EDD_SL_Plugin_Updater.php:399
42
  msgid "You do not have permission to install plugin updates"
43
  msgstr ""
44
 
45
- #: includes/EDD_SL_Plugin_Updater.php:399
46
  #: includes/admin/customers/customer-actions.php:301
47
  #: includes/admin/customers/customer-actions.php:345
48
  #: includes/admin/customers/customer-actions.php:603
@@ -88,8 +88,8 @@ msgstr ""
88
  #: includes/admin/upgrades/upgrade-functions.php:901
89
  #: includes/admin/upgrades/upgrade-functions.php:1029
90
  #: includes/admin/upgrades/upgrade-functions.php:1114
91
- #: includes/api/class-edd-api.php:1967 includes/api/class-edd-api.php:1972
92
- #: includes/api/class-edd-api.php:1984 includes/api/class-edd-api.php:1986
93
  #: includes/cart/class-edd-cart.php:1423 includes/cart/class-edd-cart.php:1437
94
  #: includes/class-edd-license-handler.php:305
95
  #: includes/deprecated-functions.php:517 includes/deprecated-functions.php:532
@@ -97,7 +97,7 @@ msgstr ""
97
  #: includes/emails/actions.php:53 includes/emails/template.php:243
98
  #: includes/error-tracking.php:40 includes/gateways/functions.php:221
99
  #: includes/gateways/manual.php:33 includes/gateways/paypal-standard.php:168
100
- #: includes/process-download.php:293 includes/process-download.php:881
101
  #: includes/query-filters.php:48 includes/user-functions.php:895
102
  #: includes/user-functions.php:920 includes/user-functions.php:973
103
  msgid "Error"
@@ -550,7 +550,7 @@ msgstr ""
550
  #: includes/admin/import/import-functions.php:31
551
  #: includes/admin/import/import-functions.php:113
552
  #: includes/admin/reporting/export/export-actions.php:23
553
- #: includes/api/class-edd-api.php:1967
554
  #: includes/class-edd-license-handler.php:305
555
  msgid "Nonce verification failed"
556
  msgstr ""
@@ -5106,21 +5106,21 @@ msgstr ""
5106
  msgid "All Prices"
5107
  msgstr ""
5108
 
5109
- #: includes/api/class-edd-api-v2.php:142 includes/api/class-edd-api.php:1113
5110
- #: includes/api/class-edd-api.php:1296 includes/api/class-edd-api.php:1413
5111
  msgid "Product %s not found!"
5112
  msgstr ""
5113
 
5114
- #: includes/api/class-edd-api-v2.php:216 includes/api/class-edd-api.php:1218
5115
- #: includes/api/class-edd-api.php:1313
5116
  msgid "The end date must be later than the start date!"
5117
  msgstr ""
5118
 
5119
- #: includes/api/class-edd-api-v2.php:317 includes/api/class-edd-api.php:1055
5120
  msgid "Customer %s not found!"
5121
  msgstr ""
5122
 
5123
- #: includes/api/class-edd-api-v2.php:322 includes/api/class-edd-api.php:1060
5124
  msgid "No customers found!"
5125
  msgstr ""
5126
 
@@ -5140,59 +5140,59 @@ msgstr ""
5140
  msgid "Invalid API version!"
5141
  msgstr ""
5142
 
5143
- #: includes/api/class-edd-api.php:680
5144
  msgid "Invalid query!"
5145
  msgstr ""
5146
 
5147
- #: includes/api/class-edd-api.php:1223 includes/api/class-edd-api.php:1318
5148
  msgid "Invalid or no date range specified!"
5149
  msgstr ""
5150
 
5151
- #: includes/api/class-edd-api.php:1263 includes/api/class-edd-api.php:1382
5152
  msgid "There was an error retrieving earnings."
5153
  msgstr ""
5154
 
5155
- #: includes/api/class-edd-api.php:1557
5156
  msgid "No discounts found!"
5157
  msgstr ""
5158
 
5159
- #: includes/api/class-edd-api.php:1604
5160
  msgid "Discount %s not found!"
5161
  msgstr ""
5162
 
5163
- #: includes/api/class-edd-api.php:1676
5164
  msgid "No download logs found!"
5165
  msgstr ""
5166
 
5167
- #: includes/api/class-edd-api.php:1932 includes/user-functions.php:1072
5168
  msgid "Easy Digital Downloads API Keys"
5169
  msgstr ""
5170
 
5171
- #: includes/api/class-edd-api.php:1941 includes/user-functions.php:1077
5172
  msgid "Generate API Key"
5173
  msgstr ""
5174
 
5175
- #: includes/api/class-edd-api.php:1943 includes/user-functions.php:1079
5176
  msgid "Public key:"
5177
  msgstr ""
5178
 
5179
- #: includes/api/class-edd-api.php:1944 includes/user-functions.php:1080
5180
  msgid "Secret key:"
5181
  msgstr ""
5182
 
5183
- #: includes/api/class-edd-api.php:1945 includes/user-functions.php:1081
5184
  msgid "Token:"
5185
  msgstr ""
5186
 
5187
- #: includes/api/class-edd-api.php:1947 includes/user-functions.php:1083
5188
  msgid "Revoke API Keys"
5189
  msgstr ""
5190
 
5191
- #: includes/api/class-edd-api.php:1972
5192
  msgid "User ID Required"
5193
  msgstr ""
5194
 
5195
- #: includes/api/class-edd-api.php:1984 includes/api/class-edd-api.php:1986
5196
  msgid "You do not have permission to %s API keys for this user"
5197
  msgstr ""
5198
 
@@ -6324,7 +6324,7 @@ msgid ""
6324
  "of a purchase. HTML is accepted. Available template tags:"
6325
  msgstr ""
6326
 
6327
- #: includes/deprecated-functions.php:517 includes/process-download.php:881
6328
  msgid "Sorry but you have hit your download limit for this file."
6329
  msgstr ""
6330
 
@@ -6870,7 +6870,7 @@ msgstr ""
6870
  msgid "The password you entered is incorrect"
6871
  msgstr ""
6872
 
6873
- #: includes/login-register.php:93 includes/process-purchase.php:733
6874
  msgid "The username you entered does not exist"
6875
  msgstr ""
6876
 
@@ -6888,7 +6888,7 @@ msgid "Email address already taken"
6888
  msgstr ""
6889
 
6890
  #: includes/login-register.php:163 includes/process-purchase.php:542
6891
- #: includes/process-purchase.php:626 includes/process-purchase.php:766
6892
  msgid "Invalid email"
6893
  msgstr ""
6894
 
@@ -7595,15 +7595,15 @@ msgstr ""
7595
  msgid "Purchase Verification Failed"
7596
  msgstr ""
7597
 
7598
- #: includes/process-download.php:957
7599
  msgid "Invalid file"
7600
  msgstr ""
7601
 
7602
- #: includes/process-download.php:964
7603
  msgid "The requested file could not be found. Error 404."
7604
  msgstr ""
7605
 
7606
- #: includes/process-download.php:965
7607
  msgid "File not found"
7608
  msgstr ""
7609
 
@@ -7631,7 +7631,7 @@ msgstr ""
7631
  msgid ""
7632
  "Missing nonce when processing login during checkout. Please read the "
7633
  "following for more information: "
7634
- "https://easydigitaldownloads.com/development/2018/07/05/important-update-to-"
7635
  "ajax-requests-in-easy-digital-downloads-2-9-4"
7636
  msgstr ""
7637
 
@@ -7679,7 +7679,7 @@ msgstr ""
7679
  msgid "Please enter billing state / province"
7680
  msgstr ""
7681
 
7682
- #: includes/process-purchase.php:547 includes/process-purchase.php:885
7683
  msgid "The user information is invalid"
7684
  msgstr ""
7685
 
@@ -7687,57 +7687,53 @@ msgstr ""
7687
  msgid "Invalid username. Only lowercase letters (a-z) and numbers are allowed"
7688
  msgstr ""
7689
 
7690
- #: includes/process-purchase.php:609 includes/process-purchase.php:617
7691
  msgid "You must register or login to complete your purchase"
7692
  msgstr ""
7693
 
7694
- #: includes/process-purchase.php:615 includes/process-purchase.php:775
7695
- msgid "You must login to complete your purchase"
7696
- msgstr ""
7697
-
7698
- #: includes/process-purchase.php:631
7699
  msgid ""
7700
  "Email already used. Login or use a different email to complete your "
7701
  "purchase."
7702
  msgstr ""
7703
 
7704
- #: includes/process-purchase.php:639 includes/process-purchase.php:781
7705
  msgid "Enter an email"
7706
  msgstr ""
7707
 
7708
- #: includes/process-purchase.php:647
7709
  msgid "Passwords don't match"
7710
  msgstr ""
7711
 
7712
- #: includes/process-purchase.php:656 includes/process-purchase.php:729
7713
  msgid "Enter a password"
7714
  msgstr ""
7715
 
7716
- #: includes/process-purchase.php:659
7717
  msgid "Enter the password confirmation"
7718
  msgstr ""
7719
 
7720
- #: includes/process-purchase.php:683
7721
  msgid "You must log in or register to complete your purchase"
7722
  msgstr ""
7723
 
7724
- #: includes/process-purchase.php:710
7725
  msgid "The password you entered is incorrect. %sReset Password%s"
7726
  msgstr ""
7727
 
7728
- #: includes/process-purchase.php:755
7729
  msgid "You must be logged into an account to purchase"
7730
  msgstr ""
7731
 
7732
- #: includes/process-purchase.php:949
7733
  msgid "The zip / postal code you entered for your billing address is invalid"
7734
  msgstr ""
7735
 
7736
- #: includes/process-purchase.php:1198
7737
  msgid "An internal error has occurred, please try again or contact support."
7738
  msgstr ""
7739
 
7740
- #: includes/process-purchase.php:1234
7741
  msgid "There was an error completing your purchase. Please try again."
7742
  msgstr ""
7743
 
2
  # This file is distributed under the same license as the Easy Digital Downloads package.
3
  msgid ""
4
  msgstr ""
5
+ "Project-Id-Version: Easy Digital Downloads 2.9.7\n"
6
  "Report-Msgid-Bugs-To: https://easydigitaldownloads.com/\n"
7
+ "POT-Creation-Date: 2018-09-10 22:52:27+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=utf-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
28
  msgid "Cheatin&#8217; huh?"
29
  msgstr ""
30
 
31
+ #: includes/EDD_SL_Plugin_Updater.php:225
32
  msgid "There is a new version of %1$s available. %2$sView version %3$s details%4$s."
33
  msgstr ""
34
 
35
+ #: includes/EDD_SL_Plugin_Updater.php:233
36
  msgid ""
37
  "There is a new version of %1$s available. %2$sView version %3$s details%4$s "
38
  "or %5$supdate now%6$s."
39
  msgstr ""
40
 
41
+ #: includes/EDD_SL_Plugin_Updater.php:466
42
  msgid "You do not have permission to install plugin updates"
43
  msgstr ""
44
 
45
+ #: includes/EDD_SL_Plugin_Updater.php:466
46
  #: includes/admin/customers/customer-actions.php:301
47
  #: includes/admin/customers/customer-actions.php:345
48
  #: includes/admin/customers/customer-actions.php:603
88
  #: includes/admin/upgrades/upgrade-functions.php:901
89
  #: includes/admin/upgrades/upgrade-functions.php:1029
90
  #: includes/admin/upgrades/upgrade-functions.php:1114
91
+ #: includes/api/class-edd-api.php:1969 includes/api/class-edd-api.php:1974
92
+ #: includes/api/class-edd-api.php:1986 includes/api/class-edd-api.php:1988
93
  #: includes/cart/class-edd-cart.php:1423 includes/cart/class-edd-cart.php:1437
94
  #: includes/class-edd-license-handler.php:305
95
  #: includes/deprecated-functions.php:517 includes/deprecated-functions.php:532
97
  #: includes/emails/actions.php:53 includes/emails/template.php:243
98
  #: includes/error-tracking.php:40 includes/gateways/functions.php:221
99
  #: includes/gateways/manual.php:33 includes/gateways/paypal-standard.php:168
100
+ #: includes/process-download.php:293 includes/process-download.php:884
101
  #: includes/query-filters.php:48 includes/user-functions.php:895
102
  #: includes/user-functions.php:920 includes/user-functions.php:973
103
  msgid "Error"
550
  #: includes/admin/import/import-functions.php:31
551
  #: includes/admin/import/import-functions.php:113
552
  #: includes/admin/reporting/export/export-actions.php:23
553
+ #: includes/api/class-edd-api.php:1969
554
  #: includes/class-edd-license-handler.php:305
555
  msgid "Nonce verification failed"
556
  msgstr ""
5106
  msgid "All Prices"
5107
  msgstr ""
5108
 
5109
+ #: includes/api/class-edd-api-v2.php:166 includes/api/class-edd-api.php:1115
5110
+ #: includes/api/class-edd-api.php:1298 includes/api/class-edd-api.php:1415
5111
  msgid "Product %s not found!"
5112
  msgstr ""
5113
 
5114
+ #: includes/api/class-edd-api-v2.php:240 includes/api/class-edd-api.php:1220
5115
+ #: includes/api/class-edd-api.php:1315
5116
  msgid "The end date must be later than the start date!"
5117
  msgstr ""
5118
 
5119
+ #: includes/api/class-edd-api-v2.php:341 includes/api/class-edd-api.php:1057
5120
  msgid "Customer %s not found!"
5121
  msgstr ""
5122
 
5123
+ #: includes/api/class-edd-api-v2.php:346 includes/api/class-edd-api.php:1062
5124
  msgid "No customers found!"
5125
  msgstr ""
5126
 
5140
  msgid "Invalid API version!"
5141
  msgstr ""
5142
 
5143
+ #: includes/api/class-edd-api.php:682
5144
  msgid "Invalid query!"
5145
  msgstr ""
5146
 
5147
+ #: includes/api/class-edd-api.php:1225 includes/api/class-edd-api.php:1320
5148
  msgid "Invalid or no date range specified!"
5149
  msgstr ""
5150
 
5151
+ #: includes/api/class-edd-api.php:1265 includes/api/class-edd-api.php:1384
5152
  msgid "There was an error retrieving earnings."
5153
  msgstr ""
5154
 
5155
+ #: includes/api/class-edd-api.php:1559
5156
  msgid "No discounts found!"
5157
  msgstr ""
5158
 
5159
+ #: includes/api/class-edd-api.php:1606
5160
  msgid "Discount %s not found!"
5161
  msgstr ""
5162
 
5163
+ #: includes/api/class-edd-api.php:1678
5164
  msgid "No download logs found!"
5165
  msgstr ""
5166
 
5167
+ #: includes/api/class-edd-api.php:1934 includes/user-functions.php:1072
5168
  msgid "Easy Digital Downloads API Keys"
5169
  msgstr ""
5170
 
5171
+ #: includes/api/class-edd-api.php:1943 includes/user-functions.php:1077
5172
  msgid "Generate API Key"
5173
  msgstr ""
5174
 
5175
+ #: includes/api/class-edd-api.php:1945 includes/user-functions.php:1079
5176
  msgid "Public key:"
5177
  msgstr ""
5178
 
5179
+ #: includes/api/class-edd-api.php:1946 includes/user-functions.php:1080
5180
  msgid "Secret key:"
5181
  msgstr ""
5182
 
5183
+ #: includes/api/class-edd-api.php:1947 includes/user-functions.php:1081
5184
  msgid "Token:"
5185
  msgstr ""
5186
 
5187
+ #: includes/api/class-edd-api.php:1949 includes/user-functions.php:1083
5188
  msgid "Revoke API Keys"
5189
  msgstr ""
5190
 
5191
+ #: includes/api/class-edd-api.php:1974
5192
  msgid "User ID Required"
5193
  msgstr ""
5194
 
5195
+ #: includes/api/class-edd-api.php:1986 includes/api/class-edd-api.php:1988
5196
  msgid "You do not have permission to %s API keys for this user"
5197
  msgstr ""
5198
 
6324
  "of a purchase. HTML is accepted. Available template tags:"
6325
  msgstr ""
6326
 
6327
+ #: includes/deprecated-functions.php:517 includes/process-download.php:884
6328
  msgid "Sorry but you have hit your download limit for this file."
6329
  msgstr ""
6330
 
6870
  msgid "The password you entered is incorrect"
6871
  msgstr ""
6872
 
6873
+ #: includes/login-register.php:93 includes/process-purchase.php:725
6874
  msgid "The username you entered does not exist"
6875
  msgstr ""
6876
 
6888
  msgstr ""
6889
 
6890
  #: includes/login-register.php:163 includes/process-purchase.php:542
6891
+ #: includes/process-purchase.php:618 includes/process-purchase.php:758
6892
  msgid "Invalid email"
6893
  msgstr ""
6894
 
7595
  msgid "Purchase Verification Failed"
7596
  msgstr ""
7597
 
7598
+ #: includes/process-download.php:960
7599
  msgid "Invalid file"
7600
  msgstr ""
7601
 
7602
+ #: includes/process-download.php:967
7603
  msgid "The requested file could not be found. Error 404."
7604
  msgstr ""
7605
 
7606
+ #: includes/process-download.php:968
7607
  msgid "File not found"
7608
  msgstr ""
7609
 
7631
  msgid ""
7632
  "Missing nonce when processing login during checkout. Please read the "
7633
  "following for more information: "
7634
+ "https://easydigitaldownloads.com/development/2018/07/09/important-update-to-"
7635
  "ajax-requests-in-easy-digital-downloads-2-9-4"
7636
  msgstr ""
7637
 
7679
  msgid "Please enter billing state / province"
7680
  msgstr ""
7681
 
7682
+ #: includes/process-purchase.php:547 includes/process-purchase.php:870
7683
  msgid "The user information is invalid"
7684
  msgstr ""
7685
 
7687
  msgid "Invalid username. Only lowercase letters (a-z) and numbers are allowed"
7688
  msgstr ""
7689
 
7690
+ #: includes/process-purchase.php:610
7691
  msgid "You must register or login to complete your purchase"
7692
  msgstr ""
7693
 
7694
+ #: includes/process-purchase.php:623
 
 
 
 
7695
  msgid ""
7696
  "Email already used. Login or use a different email to complete your "
7697
  "purchase."
7698
  msgstr ""
7699
 
7700
+ #: includes/process-purchase.php:631 includes/process-purchase.php:766
7701
  msgid "Enter an email"
7702
  msgstr ""
7703
 
7704
+ #: includes/process-purchase.php:639
7705
  msgid "Passwords don't match"
7706
  msgstr ""
7707
 
7708
+ #: includes/process-purchase.php:648 includes/process-purchase.php:721
7709
  msgid "Enter a password"
7710
  msgstr ""
7711
 
7712
+ #: includes/process-purchase.php:651
7713
  msgid "Enter the password confirmation"
7714
  msgstr ""
7715
 
7716
+ #: includes/process-purchase.php:675
7717
  msgid "You must log in or register to complete your purchase"
7718
  msgstr ""
7719
 
7720
+ #: includes/process-purchase.php:702
7721
  msgid "The password you entered is incorrect. %sReset Password%s"
7722
  msgstr ""
7723
 
7724
+ #: includes/process-purchase.php:747
7725
  msgid "You must be logged into an account to purchase"
7726
  msgstr ""
7727
 
7728
+ #: includes/process-purchase.php:934
7729
  msgid "The zip / postal code you entered for your billing address is invalid"
7730
  msgstr ""
7731
 
7732
+ #: includes/process-purchase.php:1183
7733
  msgid "An internal error has occurred, please try again or contact support."
7734
  msgstr ""
7735
 
7736
+ #: includes/process-purchase.php:1219
7737
  msgid "There was an error completing your purchase. Please try again."
7738
  msgstr ""
7739
 
readme.txt CHANGED
@@ -1,12 +1,12 @@
1
  === Easy Digital Downloads ===
2
  Author URI: https://easydigitaldownloads.com
3
  Plugin URI: https://easydigitaldownloads.com
4
- Contributors: easydigitaldownloads, mordauk, sunnyratilal, chriscct7, section214, sumobi, sdavis2702, cklosows, mindctrl, sksmatt, SpencerFinnell, johnstonphilip, brashrebel
5
  Donate link: https://easydigitaldownloads.com/donate/
6
  Tags: download, downloads, e-store, eshop, digital downloads, e-commerce, wp-ecommerce, wp ecommerce, ecommerce, ebook
7
  Requires at least: 4.4
8
- Tested up to: 4.9.7
9
- Stable Tag: 2.9.6
10
  License: GNU Version 2 or Any Later Version
11
 
12
  The easiest way to sell digital products with WordPress.
@@ -45,7 +45,6 @@ Payment gateways supported through free or premium extension:
45
  * SOFORT Banking
46
  * BitPay
47
  * Coinbase
48
- * Payza
49
 
50
  See our [gateways category](https://easydigitaldownloads.com/downloads/category/gateways/?utm_source=extensions&utm_medium=description_tab&utm_content=gateways&utm_campaign=readme) in the extensions catalogue for a complete list of supported gateways. There are also a large number of additional gateways developed and supported by [3rd party developers](https://easydigitaldownloads.com/3rd-party-extensions/#gateways).
51
 
@@ -190,6 +189,19 @@ Yes. Easy Digital Downloads also includes default support for Amazon Payments an
190
 
191
  == Changelog ==
192
 
 
 
 
 
 
 
 
 
 
 
 
 
 
193
  = 2.9.6, July 16, 2018 =
194
  * Fix: "Error: You must login to complete your purchase" shown incorrectly on checkout.
195
  * Fix: WordPress database error in File Download Log updater.
1
  === Easy Digital Downloads ===
2
  Author URI: https://easydigitaldownloads.com
3
  Plugin URI: https://easydigitaldownloads.com
4
+ Contributors: easydigitaldownloads, mordauk, sunnyratilal, chriscct7, section214, sumobi, sdavis2702, cklosows, mindctrl, sksmatt, SpencerFinnell, johnstonphilip, brashrebel, drewapicture, johnjamesjacoby, nosegraze
5
  Donate link: https://easydigitaldownloads.com/donate/
6
  Tags: download, downloads, e-store, eshop, digital downloads, e-commerce, wp-ecommerce, wp ecommerce, ecommerce, ebook
7
  Requires at least: 4.4
8
+ Tested up to: 4.9.8
9
+ Stable Tag: 2.9.7
10
  License: GNU Version 2 or Any Later Version
11
 
12
  The easiest way to sell digital products with WordPress.
45
  * SOFORT Banking
46
  * BitPay
47
  * Coinbase
 
48
 
49
  See our [gateways category](https://easydigitaldownloads.com/downloads/category/gateways/?utm_source=extensions&utm_medium=description_tab&utm_content=gateways&utm_campaign=readme) in the extensions catalogue for a complete list of supported gateways. There are also a large number of additional gateways developed and supported by [3rd party developers](https://easydigitaldownloads.com/3rd-party-extensions/#gateways).
50
 
189
 
190
  == Changelog ==
191
 
192
+ = 2.9.7, September 10, 2018 =
193
+ * Fix: The edd_cart_amount data attributes were not updated when quantities were changed at checkout.
194
+ * Fix: Updated the zip/postal code validation for Mongolia.
195
+ * Fix: Updating a download meta to 0 using the EDD_Download class would not save correctly.
196
+ * Fix: Corrected an issue with mobile file downloads sometimes getting corrupted.
197
+ * Fix: Incorrect label "for" attributes were being used on the checkout login form.
198
+ * Fix: Prevent the vertical scrollbar in Firefox when hovering over tooltips.
199
+ * Fix: Corrected some issues with EDD Sessions and WP Admin.
200
+ * Fix: Test Purchase Email Subject ampersands were getting improperly HTML encoded.
201
+ * New: Updated the EDD_SL_Plugin_Updater to support icons and have a health check.
202
+ * New: Added the date generated to system info.
203
+ * New: EDD API now supports "order" and "orderby" parameters for the products endpoint.
204
+
205
  = 2.9.6, July 16, 2018 =
206
  * Fix: "Error: You must login to complete your purchase" shown incorrectly on checkout.
207
  * Fix: WordPress database error in File Download Log updater.