Easy Digital Downloads - Version 2.6.5

Version Description

Download this release

Release Info

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

Code changes from version 2.6.4 to 2.6.5

assets/js/edd-ajax.js CHANGED
@@ -111,7 +111,7 @@ jQuery(document).ready(function ($) {
111
 
112
  if( variable_price == 'yes' ) {
113
 
114
- if ( form.find('.edd_price_option_' + download).is('input:hidden') ) {
115
  item_price_ids[0] = $('.edd_price_option_' + download, form).val();
116
  if ( form.find('.edd-submit').data('price') && form.find('.edd-submit').data('price') > 0 ) {
117
  free_items = false;
111
 
112
  if( variable_price == 'yes' ) {
113
 
114
+ if ( form.find('.edd_price_option_' + download + '[type="hidden"]').length > 0 ) {
115
  item_price_ids[0] = $('.edd_price_option_' + download, form).val();
116
  if ( form.find('.edd-submit').data('price') && form.find('.edd-submit').data('price') > 0 ) {
117
  free_items = false;
assets/js/edd-ajax.min.js CHANGED
@@ -1 +1 @@
1
- function edd_load_gateway(e){jQuery(".edd-cart-ajax").show(),jQuery("#edd_purchase_form_wrap").html('<img src="'+edd_scripts.ajax_loader+'"/>');var d=edd_scripts.ajaxurl;d+=d.indexOf("?")>0?"&":"?",d=d+"payment-mode="+e,jQuery.post(d,{action:"edd_load_gateway",edd_payment_mode:e},function(d){jQuery("#edd_purchase_form_wrap").html(d),jQuery(".edd-no-js").hide(),jQuery("body").trigger("edd_gateway_loaded",[e])})}var edd_scripts;jQuery(document).ready(function(e){function d(){var d,t=e(this),a="undefined"!=typeof edd_global_vars;if("card_state"!=t.attr("id")){var i={action:"edd_get_shop_states",country:t.val(),field_name:"card_state"};e.ajax({type:"POST",data:i,url:edd_scripts.ajaxurl,xhrFields:{withCredentials:!0},success:function(i){console.log(i),console.log(a),d=a?e("#edd_purchase_form"):t.closest("form");var r='input[name="card_state"], select[name="card_state"], input[name="edd_address_state"], select[name="edd_address_state"]';if("nostates"==e.trim(i)){var o='<input type="text" name="card_state" class="cart-state edd-input required" value=""/>';d.find(r).replaceWith(o)}else d.find(r).replaceWith(i);a&&e("body").trigger("edd_cart_billing_address_updated",[i])}}).fail(function(e){window.console&&window.console.log&&console.log(e)}).done(function(e){a&&recalculate_taxes()})}else a&&recalculate_taxes();return!1}e(".edd-no-js").hide(),e("a.edd-add-to-cart").addClass("edd-has-js"),e("body").on("click.eddRemoveFromCart",".edd-remove-from-cart",function(d){var t=e(this),a=t.data("cart-item"),i=t.data("action"),r=t.data("download-id"),o={action:i,cart_item:a};return e.ajax({type:"POST",data:o,dataType:"json",url:edd_scripts.ajaxurl,xhrFields:{withCredentials:!0},success:function(d){if(d.removed){if(parseInt(edd_scripts.position_in_cart,10)===parseInt(a,10))return window.location=window.location,!1;e(".edd-cart").find("[data-cart-item='"+a+"']").parent().remove();var t=0;e(".edd-cart").find("[data-cart-item]").each(function(){e(this).attr("data-cart-item",t),t+=1}),e("[id^=edd_purchase_"+r+"]").length&&(e("[id^=edd_purchase_"+r+"] .edd_go_to_checkout").hide(),e("[id^=edd_purchase_"+r+"] a.edd-add-to-cart").show().removeAttr("data-edd-loading"),"1"==edd_scripts.quantities_enabled&&e("[id^=edd_purchase_"+r+"] .edd_download_quantity_wrapper").show()),e("span.edd-cart-quantity").text(d.cart_quantity),e("body").trigger("edd_quantity_updated",[d.cart_quantity]),edd_scripts.taxes_enabled&&(e(".cart_item.edd_subtotal span").html(d.subtotal),e(".cart_item.edd_cart_tax span").html(d.tax)),e(".cart_item.edd_total span").html(d.total),0==d.cart_quantity&&(e(".cart_item.edd_subtotal,.edd-cart-number-of-items,.cart_item.edd_checkout,.cart_item.edd_cart_tax,.cart_item.edd_total").hide(),e(".edd-cart").append('<li class="cart_item empty">'+edd_scripts.empty_cart_message+"</li>")),e("body").trigger("edd_cart_item_removed",[d])}}}).fail(function(e){window.console&&window.console.log&&console.log(e)}).done(function(e){}),!1}),e("body").on("click.eddAddToCart",".edd-add-to-cart",function(d){d.preventDefault();var t=e(this),a=t.closest("form");t.prop("disabled",!0);var i=t.find(".edd-loading"),r=t.closest("div"),o=i.width(),c=i.height();t.attr("data-edd-loading",""),i.css({"margin-left":o/-2,"margin-top":c/-2});var a=t.parents("form").last(),s=t.data("download-id"),n=t.data("variable-price"),_=t.data("price-mode"),l=[],u=!0;if("yes"==n)if(a.find(".edd_price_option_"+s).is("input:hidden"))l[0]=e(".edd_price_option_"+s,a).val(),a.find(".edd-submit").data("price")&&a.find(".edd-submit").data("price")>0&&(u=!1);else{if(!a.find(".edd_price_option_"+s+":checked",a).length)return t.removeAttr("data-edd-loading"),void alert(edd_scripts.select_option);a.find(".edd_price_option_"+s+":checked",a).each(function(d){if(l[d]=e(this).val(),!0===u){var t=e(this).data("price");t&&t>0&&(u=!1)}})}else l[0]=s,t.data("price")&&t.data("price")>0&&(u=!1);if(u&&a.find(".edd_action_input").val("add_to_cart"),"straight_to_gateway"==a.find(".edd_action_input").val())return a.submit(),!0;var p=t.data("action"),m={action:p,download_id:s,price_ids:l,post_data:e(a).serialize()};return e.ajax({type:"POST",data:m,dataType:"json",url:edd_scripts.ajaxurl,xhrFields:{withCredentials:!0},success:function(d){if("1"==edd_scripts.redirect_to_checkout&&"1"==a.find("#edd_redirect_to_checkout").val())window.location=edd_scripts.checkout_page;else{"1"===edd_scripts.taxes_enabled&&(e(".cart_item.edd_subtotal").show(),e(".cart_item.edd_cart_tax").show()),e(".cart_item.edd_total").show(),e(".cart_item.edd_checkout").show(),e(".cart_item.empty").length?(e(d.cart_item).insertBefore(".edd-cart-meta:first"),e(".cart_item.empty").hide()):e(d.cart_item).insertBefore(".edd-cart-meta:first"),"1"===edd_scripts.taxes_enabled&&(e(".edd-cart-meta.edd_subtotal span").html(d.subtotal),e(".edd-cart-meta.edd_cart_tax span").html(d.tax)),e(".edd-cart-meta.edd_total span").html(d.total);e(".edd-cart-item-title",d.cart_item).length;if(e("span.edd-cart-quantity").each(function(){e(this).text(d.cart_quantity),e("body").trigger("edd_quantity_updated",[d.cart_quantity])}),"none"==e(".edd-cart-number-of-items").css("display")&&e(".edd-cart-number-of-items").show("slow"),("no"==n||"multi"!=_)&&(e("a.edd-add-to-cart",r).toggle(),e(".edd_go_to_checkout",r).css("display","inline-block")),"multi"==_&&t.removeAttr("data-edd-loading"),e(".edd_download_purchase_form").length&&("no"==n||!a.find(".edd_price_option_"+s).is("input:hidden"))){var i=e('.edd_download_purchase_form *[data-download-id="'+s+'"]').parents("form");e("a.edd-add-to-cart",i).hide(),"multi"!=_&&i.find(".edd_download_quantity_wrapper").slideUp(),e(".edd_go_to_checkout",i).show().removeAttr("data-edd-loading")}"incart"!=d&&(e(".edd-cart-added-alert",r).fadeIn(),setTimeout(function(){e(".edd-cart-added-alert",r).fadeOut()},3e3)),t.prop("disabled",!1),e("body").trigger("edd_cart_item_added",[d])}}}).fail(function(e){window.console&&window.console.log&&console.log(e)}).done(function(e){}),!1}),e("#edd_checkout_form_wrap").on("click",".edd_checkout_register_login",function(){var d=e(this),t={action:d.data("action")};return e(".edd-cart-ajax").show(),e.post(edd_scripts.ajaxurl,t,function(d){e("#edd_checkout_login_register").html(edd_scripts.loading),e("#edd_checkout_login_register").html(d),e(".edd-cart-ajax").hide()}),!1}),e(document).on("click","#edd_purchase_form #edd_login_fields input[type=submit]",function(d){d.preventDefault();var t=e(this).val();e(this).val(edd_global_vars.purchase_loading),e(this).after('<span class="edd-cart-ajax"><i class="edd-icon-spinner edd-icon-spin"></i></span>');var a={action:"edd_process_checkout_login",edd_ajax:1,edd_user_login:e("#edd_login_fields #edd_user_login").val(),edd_user_pass:e("#edd_login_fields #edd_user_pass").val()};e.post(edd_global_vars.ajaxurl,a,function(d){"success"==e.trim(d)?(e(".edd_errors").remove(),window.location=edd_scripts.checkout_page):(e("#edd_login_fields input[type=submit]").val(t),e(".edd-cart-ajax").remove(),e(".edd_errors").remove(),e("#edd-user-login-submit").before(d))})}),e("select#edd-gateway, input.edd-gateway").change(function(d){var t=e("#edd-gateway option:selected, input.edd-gateway:checked").val();return"0"==t?!1:(edd_load_gateway(t),!1)}),"1"==edd_scripts.is_checkout&&e("select#edd-gateway, input.edd-gateway").length&&setTimeout(function(){edd_load_gateway(edd_scripts.default_gateway)},200),e(document).on("click","#edd_purchase_form #edd_purchase_submit input[type=submit]",function(d){var t=document.getElementById("edd_purchase_form");if("function"!=typeof t.checkValidity||!1!==t.checkValidity()){d.preventDefault();var a=e(this).val();e(this).val(edd_global_vars.purchase_loading),e(this).prop("disabled",!0),e(this).after('<span class="edd-cart-ajax"><i class="edd-icon-spinner edd-icon-spin"></i></span>'),e.post(edd_global_vars.ajaxurl,e("#edd_purchase_form").serialize()+"&action=edd_process_checkout&edd_ajax=true",function(d){"success"==e.trim(d)?(e(".edd_errors").remove(),e(".edd-error").hide(),e(t).submit()):(e("#edd-purchase-button").val(a),e(".edd-cart-ajax").remove(),e(".edd_errors").remove(),e(".edd-error").hide(),e("#edd_purchase_submit").before(d),e("#edd-purchase-button").prop("disabled",!1))})}}),e("body").on("change","#edd_cc_address input.card_state, #edd_cc_address select, #edd_address_country",d)});
1
+ function edd_load_gateway(a){jQuery(".edd-cart-ajax").show(),jQuery("#edd_purchase_form_wrap").html('<img src="'+edd_scripts.ajax_loader+'"/>');var b=edd_scripts.ajaxurl;b+=b.indexOf("?")>0?"&":"?",b=b+"payment-mode="+a,jQuery.post(b,{action:"edd_load_gateway",edd_payment_mode:a},function(b){jQuery("#edd_purchase_form_wrap").html(b),jQuery(".edd-no-js").hide(),jQuery("body").trigger("edd_gateway_loaded",[a])})}var edd_scripts;jQuery(document).ready(function(a){function b(){var c,b=a(this),d="undefined"!=typeof edd_global_vars;if("card_state"!=b.attr("id")){var e={action:"edd_get_shop_states",country:b.val(),field_name:"card_state"};a.ajax({type:"POST",data:e,url:edd_scripts.ajaxurl,xhrFields:{withCredentials:!0},success:function(e){console.log(e),console.log(d),c=d?a("#edd_purchase_form"):b.closest("form");var f='input[name="card_state"], select[name="card_state"], input[name="edd_address_state"], select[name="edd_address_state"]';if("nostates"==a.trim(e)){var g='<input type="text" name="card_state" class="cart-state edd-input required" value=""/>';c.find(f).replaceWith(g)}else c.find(f).replaceWith(e);d&&a("body").trigger("edd_cart_billing_address_updated",[e])}}).fail(function(a){window.console&&window.console.log&&console.log(a)}).done(function(a){d&&recalculate_taxes()})}else d&&recalculate_taxes();return!1}a(".edd-no-js").hide(),a("a.edd-add-to-cart").addClass("edd-has-js"),a("body").on("click.eddRemoveFromCart",".edd-remove-from-cart",function(b){var c=a(this),d=c.data("cart-item"),e=c.data("action"),f=c.data("download-id"),g={action:e,cart_item:d};return a.ajax({type:"POST",data:g,dataType:"json",url:edd_scripts.ajaxurl,xhrFields:{withCredentials:!0},success:function(b){if(b.removed){if(parseInt(edd_scripts.position_in_cart,10)===parseInt(d,10))return window.location=window.location,!1;a(".edd-cart").find("[data-cart-item='"+d+"']").parent().remove();var c=0;a(".edd-cart").find("[data-cart-item]").each(function(){a(this).attr("data-cart-item",c),c+=1}),a("[id^=edd_purchase_"+f+"]").length&&(a("[id^=edd_purchase_"+f+"] .edd_go_to_checkout").hide(),a("[id^=edd_purchase_"+f+"] a.edd-add-to-cart").show().removeAttr("data-edd-loading"),"1"==edd_scripts.quantities_enabled&&a("[id^=edd_purchase_"+f+"] .edd_download_quantity_wrapper").show()),a("span.edd-cart-quantity").text(b.cart_quantity),a("body").trigger("edd_quantity_updated",[b.cart_quantity]),edd_scripts.taxes_enabled&&(a(".cart_item.edd_subtotal span").html(b.subtotal),a(".cart_item.edd_cart_tax span").html(b.tax)),a(".cart_item.edd_total span").html(b.total),0==b.cart_quantity&&(a(".cart_item.edd_subtotal,.edd-cart-number-of-items,.cart_item.edd_checkout,.cart_item.edd_cart_tax,.cart_item.edd_total").hide(),a(".edd-cart").append('<li class="cart_item empty">'+edd_scripts.empty_cart_message+"</li>")),a("body").trigger("edd_cart_item_removed",[b])}}}).fail(function(a){window.console&&window.console.log&&console.log(a)}).done(function(a){}),!1}),a("body").on("click.eddAddToCart",".edd-add-to-cart",function(b){b.preventDefault();var c=a(this),d=c.closest("form");c.prop("disabled",!0);var e=c.find(".edd-loading"),f=c.closest("div"),g=e.width(),h=e.height();c.attr("data-edd-loading",""),e.css({"margin-left":g/-2,"margin-top":h/-2});var d=c.parents("form").last(),i=c.data("download-id"),j=c.data("variable-price"),k=c.data("price-mode"),l=[],m=!0;if("yes"==j)if(d.find(".edd_price_option_"+i+'[type="hidden"]').length>0)l[0]=a(".edd_price_option_"+i,d).val(),d.find(".edd-submit").data("price")&&d.find(".edd-submit").data("price")>0&&(m=!1);else{if(!d.find(".edd_price_option_"+i+":checked",d).length)return c.removeAttr("data-edd-loading"),void alert(edd_scripts.select_option);d.find(".edd_price_option_"+i+":checked",d).each(function(b){if(l[b]=a(this).val(),!0===m){var c=a(this).data("price");c&&c>0&&(m=!1)}})}else l[0]=i,c.data("price")&&c.data("price")>0&&(m=!1);if(m&&d.find(".edd_action_input").val("add_to_cart"),"straight_to_gateway"==d.find(".edd_action_input").val())return d.submit(),!0;var n=c.data("action"),o={action:n,download_id:i,price_ids:l,post_data:a(d).serialize()};return a.ajax({type:"POST",data:o,dataType:"json",url:edd_scripts.ajaxurl,xhrFields:{withCredentials:!0},success:function(b){if("1"==edd_scripts.redirect_to_checkout&&"1"==d.find("#edd_redirect_to_checkout").val())window.location=edd_scripts.checkout_page;else{"1"===edd_scripts.taxes_enabled&&(a(".cart_item.edd_subtotal").show(),a(".cart_item.edd_cart_tax").show()),a(".cart_item.edd_total").show(),a(".cart_item.edd_checkout").show(),a(".cart_item.empty").length?(a(b.cart_item).insertBefore(".edd-cart-meta:first"),a(".cart_item.empty").hide()):a(b.cart_item).insertBefore(".edd-cart-meta:first"),"1"===edd_scripts.taxes_enabled&&(a(".edd-cart-meta.edd_subtotal span").html(b.subtotal),a(".edd-cart-meta.edd_cart_tax span").html(b.tax)),a(".edd-cart-meta.edd_total span").html(b.total);a(".edd-cart-item-title",b.cart_item).length;if(a("span.edd-cart-quantity").each(function(){a(this).text(b.cart_quantity),a("body").trigger("edd_quantity_updated",[b.cart_quantity])}),"none"==a(".edd-cart-number-of-items").css("display")&&a(".edd-cart-number-of-items").show("slow"),("no"==j||"multi"!=k)&&(a("a.edd-add-to-cart",f).toggle(),a(".edd_go_to_checkout",f).css("display","inline-block")),"multi"==k&&c.removeAttr("data-edd-loading"),a(".edd_download_purchase_form").length&&("no"==j||!d.find(".edd_price_option_"+i).is("input:hidden"))){var g=a('.edd_download_purchase_form *[data-download-id="'+i+'"]').parents("form");a("a.edd-add-to-cart",g).hide(),"multi"!=k&&g.find(".edd_download_quantity_wrapper").slideUp(),a(".edd_go_to_checkout",g).show().removeAttr("data-edd-loading")}"incart"!=b&&(a(".edd-cart-added-alert",f).fadeIn(),setTimeout(function(){a(".edd-cart-added-alert",f).fadeOut()},3e3)),c.prop("disabled",!1),a("body").trigger("edd_cart_item_added",[b])}}}).fail(function(a){window.console&&window.console.log&&console.log(a)}).done(function(a){}),!1}),a("#edd_checkout_form_wrap").on("click",".edd_checkout_register_login",function(){var b=a(this),c={action:b.data("action")};return a(".edd-cart-ajax").show(),a.post(edd_scripts.ajaxurl,c,function(b){a("#edd_checkout_login_register").html(edd_scripts.loading),a("#edd_checkout_login_register").html(b),a(".edd-cart-ajax").hide()}),!1}),a(document).on("click","#edd_purchase_form #edd_login_fields input[type=submit]",function(b){b.preventDefault();var c=a(this).val();a(this).val(edd_global_vars.purchase_loading),a(this).after('<span class="edd-cart-ajax"><i class="edd-icon-spinner edd-icon-spin"></i></span>');var d={action:"edd_process_checkout_login",edd_ajax:1,edd_user_login:a("#edd_login_fields #edd_user_login").val(),edd_user_pass:a("#edd_login_fields #edd_user_pass").val()};a.post(edd_global_vars.ajaxurl,d,function(b){"success"==a.trim(b)?(a(".edd_errors").remove(),window.location=edd_scripts.checkout_page):(a("#edd_login_fields input[type=submit]").val(c),a(".edd-cart-ajax").remove(),a(".edd_errors").remove(),a("#edd-user-login-submit").before(b))})}),a("select#edd-gateway, input.edd-gateway").change(function(b){var c=a("#edd-gateway option:selected, input.edd-gateway:checked").val();return"0"==c?!1:(edd_load_gateway(c),!1)}),"1"==edd_scripts.is_checkout&&a("select#edd-gateway, input.edd-gateway").length&&setTimeout(function(){edd_load_gateway(edd_scripts.default_gateway)},200),a(document).on("click","#edd_purchase_form #edd_purchase_submit input[type=submit]",function(b){var c=document.getElementById("edd_purchase_form");if("function"!=typeof c.checkValidity||!1!==c.checkValidity()){b.preventDefault();var d=a(this).val();a(this).val(edd_global_vars.purchase_loading),a(this).prop("disabled",!0),a(this).after('<span class="edd-cart-ajax"><i class="edd-icon-spinner edd-icon-spin"></i></span>'),a.post(edd_global_vars.ajaxurl,a("#edd_purchase_form").serialize()+"&action=edd_process_checkout&edd_ajax=true",function(b){"success"==a.trim(b)?(a(".edd_errors").remove(),a(".edd-error").hide(),a(c).submit()):(a("#edd-purchase-button").val(d),a(".edd-cart-ajax").remove(),a(".edd_errors").remove(),a(".edd-error").hide(),a("#edd_purchase_submit").before(b),a("#edd-purchase-button").prop("disabled",!1))})}}),a("body").on("change","#edd_cc_address input.card_state, #edd_cc_address select, #edd_address_country",b)});
easy-digital-downloads.php CHANGED
@@ -5,7 +5,7 @@
5
  * Description: The easiest way to sell digital products with WordPress.
6
  * Author: Pippin Williamson and Company
7
  * Author URI: https://easydigitaldownloads.com
8
- * Version: 2.6.4
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.6.4
29
  */
30
 
31
  // Exit if accessed directly.
@@ -195,7 +195,7 @@ final class Easy_Digital_Downloads {
195
 
196
  // Plugin version.
197
  if ( ! defined( 'EDD_VERSION' ) ) {
198
- define( 'EDD_VERSION', '2.6.4' );
199
  }
200
 
201
  // Plugin Folder Path.
5
  * Description: The easiest way to sell digital products with WordPress.
6
  * Author: Pippin Williamson and Company
7
  * Author URI: https://easydigitaldownloads.com
8
+ * Version: 2.6.5
9
  * Text Domain: easy-digital-downloads
10
  * Domain Path: languages
11
  *
25
  * @package EDD
26
  * @category Core
27
  * @author Pippin Williamson
28
+ * @version 2.6.5
29
  */
30
 
31
  // Exit if accessed directly.
195
 
196
  // Plugin version.
197
  if ( ! defined( 'EDD_VERSION' ) ) {
198
+ define( 'EDD_VERSION', '2.6.5' );
199
  }
200
 
201
  // Plugin Folder Path.
includes/admin/import/class-batch-import-downloads.php CHANGED
@@ -79,12 +79,12 @@ class EDD_Batch_Downloads_Import extends EDD_Batch_Import {
79
  foreach( $this->csv->data as $key => $row ) {
80
 
81
  // Skip all rows until we pass our offset
82
- if( $key + 1 < $offset ) {
83
  continue;
84
  }
85
 
86
  // Done with this batch
87
- if( $i >= $this->per_step ) {
88
  break;
89
  }
90
 
@@ -110,7 +110,7 @@ class EDD_Batch_Downloads_Import extends EDD_Batch_Import {
110
  if ( ! empty( $args['post_date'] ) ) {
111
 
112
  $timestamp = strtotime( $args['post_date'], current_time( 'timestamp' ) );
113
- $date = date( 'Y-n-d H:i:s', $timestamp );
114
 
115
  // If the date provided results in a date string, use it, or just default to today so it imports
116
  if ( ! empty( $date ) ) {
79
  foreach( $this->csv->data as $key => $row ) {
80
 
81
  // Skip all rows until we pass our offset
82
+ if( $key + 1 <= $offset ) {
83
  continue;
84
  }
85
 
86
  // Done with this batch
87
+ if( $i > $this->per_step ) {
88
  break;
89
  }
90
 
110
  if ( ! empty( $args['post_date'] ) ) {
111
 
112
  $timestamp = strtotime( $args['post_date'], current_time( 'timestamp' ) );
113
+ $date = date( 'Y-m-d H:i:s', $timestamp );
114
 
115
  // If the date provided results in a date string, use it, or just default to today so it imports
116
  if ( ! empty( $date ) ) {
includes/admin/import/class-batch-import-payments.php CHANGED
@@ -94,12 +94,12 @@ class EDD_Batch_Payments_Import extends EDD_Batch_Import {
94
  foreach( $this->csv->data as $key => $row ) {
95
 
96
  // Skip all rows until we pass our offset
97
- if( $key + 1 < $offset ) {
98
  continue;
99
  }
100
 
101
  // Done with this batch
102
- if( $i >= $this->per_step ) {
103
  break;
104
  }
105
 
@@ -149,11 +149,11 @@ class EDD_Batch_Payments_Import extends EDD_Batch_Import {
149
 
150
  if( ! strtotime( $date ) ) {
151
 
152
- $date = date( 'Y-n-d H:i:s', current_time( 'timestamp' ) );
153
 
154
  } else {
155
 
156
- $date = date( 'Y-n-d H:i:s', strtotime( $date ) );
157
 
158
  }
159
 
94
  foreach( $this->csv->data as $key => $row ) {
95
 
96
  // Skip all rows until we pass our offset
97
+ if( $key + 1 <= $offset ) {
98
  continue;
99
  }
100
 
101
  // Done with this batch
102
+ if( $i > $this->per_step ) {
103
  break;
104
  }
105
 
149
 
150
  if( ! strtotime( $date ) ) {
151
 
152
+ $date = date( 'Y-m-d H:i:s', current_time( 'timestamp' ) );
153
 
154
  } else {
155
 
156
+ $date = date( 'Y-m-d H:i:s', strtotime( $date ) );
157
 
158
  }
159
 
includes/admin/import/class-batch-import.php CHANGED
@@ -229,7 +229,7 @@ class EDD_Batch_Import {
229
 
230
  $delimiter = ';';
231
 
232
- } elseif( false !== strpos( $str, '/' ) ) {
233
 
234
  $delimiter = '/';
235
 
229
 
230
  $delimiter = ';';
231
 
232
+ } elseif( false !== strpos( $str, '/' ) && ! filter_var( $str, FILTER_VALIDATE_URL ) ) {
233
 
234
  $delimiter = '/';
235
 
includes/admin/payments/actions.php CHANGED
@@ -287,7 +287,7 @@ function edd_trigger_purchase_delete( $data ) {
287
 
288
  $payment_id = absint( $data['purchase_id'] );
289
 
290
- if( ! current_user_can( 'edit_shop_payments', $payment_id ) ) {
291
  wp_die( __( 'You do not have permission to edit this payment record', 'easy-digital-downloads' ), __( 'Error', 'easy-digital-downloads' ), array( 'response' => 403 ) );
292
  }
293
 
287
 
288
  $payment_id = absint( $data['purchase_id'] );
289
 
290
+ if( ! current_user_can( 'delete_shop_payments', $payment_id ) ) {
291
  wp_die( __( 'You do not have permission to edit this payment record', 'easy-digital-downloads' ), __( 'Error', 'easy-digital-downloads' ), array( 'response' => 403 ) );
292
  }
293
 
includes/admin/payments/view-order-details.php CHANGED
@@ -171,21 +171,21 @@ $currency_code = $payment->currency;
171
  </div><!-- /.edd-order-update-box -->
172
 
173
  </div><!-- /#edd-order-data -->
174
-
 
175
  <div id="edd-order-resend-receipt" class="postbox edd-order-data">
176
  <div class="inside">
177
  <div class="edd-order-resend-receipt-box edd-admin-box">
178
  <?php do_action( 'edd_view_order_details_resend_receipt_before', $payment_id ); ?>
179
- <?php if( edd_is_payment_complete( $payment_id ) ) : ?>
180
  <a href="<?php echo add_query_arg( array( 'edd-action' => 'email_links', 'purchase_id' => $payment_id ) ); ?>" id="edd-resend-receipt" class="button-secondary alignleft"><?php _e( 'Resend Receipt', 'easy-digital-downloads' ); ?></a>
181
  <span alt="f223" class="edd-help-tip dashicons dashicons-editor-help" title="<?php _e( '<strong>Resend Receipt</strong>: This will send a new copy of the purchase receipt to the customer&#8217;s email address. If download URLs are included in the receipt, new file download URLs will also be included with the receipt.', 'easy-digital-downloads' ); ?>"></span>
182
- <?php endif; ?>
183
  <div class="clear"></div>
184
  <?php do_action( 'edd_view_order_details_resend_receipt_after', $payment_id ); ?>
185
  </div><!-- /.edd-order-resend-receipt-box -->
186
  </div>
187
  </div>
188
-
 
189
  <div id="edd-order-details" class="postbox edd-order-data">
190
 
191
  <h3 class="hndle">
171
  </div><!-- /.edd-order-update-box -->
172
 
173
  </div><!-- /#edd-order-data -->
174
+
175
+ <?php if( edd_is_payment_complete( $payment_id ) ) : ?>
176
  <div id="edd-order-resend-receipt" class="postbox edd-order-data">
177
  <div class="inside">
178
  <div class="edd-order-resend-receipt-box edd-admin-box">
179
  <?php do_action( 'edd_view_order_details_resend_receipt_before', $payment_id ); ?>
 
180
  <a href="<?php echo add_query_arg( array( 'edd-action' => 'email_links', 'purchase_id' => $payment_id ) ); ?>" id="edd-resend-receipt" class="button-secondary alignleft"><?php _e( 'Resend Receipt', 'easy-digital-downloads' ); ?></a>
181
  <span alt="f223" class="edd-help-tip dashicons dashicons-editor-help" title="<?php _e( '<strong>Resend Receipt</strong>: This will send a new copy of the purchase receipt to the customer&#8217;s email address. If download URLs are included in the receipt, new file download URLs will also be included with the receipt.', 'easy-digital-downloads' ); ?>"></span>
 
182
  <div class="clear"></div>
183
  <?php do_action( 'edd_view_order_details_resend_receipt_after', $payment_id ); ?>
184
  </div><!-- /.edd-order-resend-receipt-box -->
185
  </div>
186
  </div>
187
+ <?php endif; ?>
188
+
189
  <div id="edd-order-details" class="postbox edd-order-data">
190
 
191
  <h3 class="hndle">
includes/admin/reporting/graphing.php CHANGED
@@ -532,7 +532,7 @@ function edd_reports_graph_of_download( $download_id = 0 ) {
532
 
533
  foreach ( $temp_data[ 'earnings' ] as $year => $months ) {
534
  foreach( $months as $month => $dates ) {
535
- foreach ( $dates as $day => $sales ) {
536
  $date = mktime( 0, 0, 0, $month, $day, $year ) * 1000;
537
  $earnings_data[] = array( $date, $earnings );
538
  }
532
 
533
  foreach ( $temp_data[ 'earnings' ] as $year => $months ) {
534
  foreach( $months as $month => $dates ) {
535
+ foreach ( $dates as $day => $earnings ) {
536
  $date = mktime( 0, 0, 0, $month, $day, $year ) * 1000;
537
  $earnings_data[] = array( $date, $earnings );
538
  }
includes/admin/settings/register-settings.php CHANGED
@@ -919,88 +919,110 @@ function edd_get_registered_settings() {
919
  * @return string $input Sanitizied value
920
  */
921
  function edd_settings_sanitize( $input = array() ) {
922
-
923
  global $edd_options;
924
 
925
- if ( empty( $_POST['_wp_http_referer'] ) ) {
926
- // If we didn't get the referer, just return the settings with nothing changed
927
- return $edd_options;
928
  }
929
 
930
- parse_str( $_POST['_wp_http_referer'], $referrer );
 
931
 
932
- $settings = edd_get_registered_settings();
933
- $tab = isset( $referrer['tab'] ) ? $referrer['tab'] : 'general';
934
- $section = isset( $referrer['section'] ) ? $referrer['section'] : 'main';
935
 
936
- $input = $input ? $input : array();
 
 
937
 
938
- // Run a general sanitization for the tab for special fields (like taxes)
939
- $input = apply_filters( 'edd_settings_' . $tab . '_sanitize', $input );
940
 
941
- // Run a general sanitization for the section so custom tabs with sub-sections can save special data
942
- $input = apply_filters( 'edd_settings_' . $tab . '-' . $section . '_sanitize', $input );
943
 
944
- if ( 'main' === $section && empty( $settings[ $tab ]['main'] ) ) {
945
- // Check for extensions that aren't using new sections
946
- $input = apply_filters( 'edd_settings_' . $tab . '_sanitize', $input );
947
 
948
- $settings[ $tab ]['main'] = array();
949
- foreach ( $settings[ $tab ] as $key => $setting ) {
950
- if ( is_int( $key ) ) {
951
- $settings[ $tab ]['main'][ $setting[ 'id' ] ] = $setting;
952
- unset( $settings[ $tab ][ $key ]);
953
- }
954
 
955
- // Check for an override on the section for when main is empty
956
- if ( ! empty( $_POST['edd_section_override'] ) ) {
957
- $section = sanitize_text_field( $_POST['edd_section_override'] );
958
- }
959
  }
960
- }
961
 
962
- // Loop through each setting being saved and pass it through a sanitization filter
963
- foreach ( $input as $key => $value ) {
 
 
964
 
965
- // Get the setting type (checkbox, select, etc)
966
- $type = isset( $settings[ $tab ][ $section ][ $key ]['type'] ) ? $settings[ $tab ][ $section ][ $key ]['type'] : false;
 
 
 
 
 
 
967
 
968
- if ( $type ) {
969
- // Field type specific filter
970
- $input[$key] = apply_filters( 'edd_settings_sanitize_' . $type, $value, $key );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
971
  }
972
 
973
- // General filter
974
- $input[ $key ] = apply_filters( 'edd_settings_sanitize', $input[ $key ], $key );
975
  }
976
 
977
- // Loop through the whitelist and unset any that are empty for the tab being saved
978
- $main_settings = $section == 'main' ? $settings[ $tab ]['main'] : array(); // Check for extensions that aren't using new sections
979
- $section_settings = ! empty( $settings[ $tab ][ $section ] ) ? $settings[ $tab ][ $section ] : array();
980
 
981
- $found_settings = array_merge( $main_settings, $section_settings );
 
982
 
983
- if ( ! empty( $found_settings ) ) {
984
- foreach ( $found_settings as $key => $value ) {
 
 
 
 
 
 
 
 
985
 
986
- // settings used to have numeric keys, now they have keys that match the option ID. This ensures both methods work
987
- if ( is_numeric( $key ) ) {
988
- $key = $value['id'];
989
- }
990
 
991
- if ( empty( $input[ $key ] ) ) {
992
- unset( $edd_options[ $key ] );
 
 
 
 
993
  }
994
 
 
 
 
995
  }
996
- }
997
 
998
- // Merge our new settings with the existing
999
- $output = array_merge( $edd_options, $input );
1000
-
1001
- add_settings_error( 'edd-notices', '', __( 'Settings updated.', 'easy-digital-downloads' ), 'updated' );
1002
 
1003
- return $output;
1004
  }
1005
 
1006
  /**
@@ -1294,7 +1316,8 @@ function edd_checkbox_callback( $args ) {
1294
  }
1295
 
1296
  $checked = ! empty( $edd_option ) ? checked( 1, $edd_option, false ) : '';
1297
- $html = '<input type="checkbox" id="edd_settings[' . edd_sanitize_key( $args['id'] ) . ']"' . $name . ' value="1" ' . $checked . '/>';
 
1298
  $html .= '<label for="edd_settings[' . edd_sanitize_key( $args['id'] ) . ']"> ' . wp_kses_post( $args['desc'] ) . '</label>';
1299
 
1300
  echo apply_filters( 'edd_after_setting_output', $html, $args );
919
  * @return string $input Sanitizied value
920
  */
921
  function edd_settings_sanitize( $input = array() ) {
 
922
  global $edd_options;
923
 
924
+ $doing_section = false;
925
+ if ( ! empty( $_POST['_wp_http_referer'] ) ) {
926
+ $doing_section = true;
927
  }
928
 
929
+ $setting_types = edd_get_registered_settings_types();
930
+ $input = $input ? $input : array();
931
 
932
+ if ( $doing_section ) {
 
 
933
 
934
+ parse_str( $_POST['_wp_http_referer'], $referrer ); // Pull out the tab and section
935
+ $tab = isset( $referrer['tab'] ) ? $referrer['tab'] : 'general';
936
+ $section = isset( $referrer['section'] ) ? $referrer['section'] : 'main';
937
 
938
+ // Run a general sanitization for the tab for special fields (like taxes)
939
+ $input = apply_filters( 'edd_settings_' . $tab . '_sanitize', $input );
940
 
941
+ // Run a general sanitization for the section so custom tabs with sub-sections can save special data
942
+ $input = apply_filters( 'edd_settings_' . $tab . '-' . $section . '_sanitize', $input );
943
 
944
+ }
 
 
945
 
946
+ // Merge our new settings with the existing
947
+ $output = array_merge( $edd_options, $input );
 
 
 
 
948
 
949
+ foreach ( $setting_types as $key => $type ) {
950
+
951
+ if ( empty( $type ) ) {
952
+ continue;
953
  }
 
954
 
955
+ // Some setting types are not actually settings, just keep moving along here
956
+ $non_setting_types = apply_filters( 'edd_non_setting_types', array(
957
+ 'header', 'descriptive_text', 'hook',
958
+ ) );
959
 
960
+ if ( in_array( $type, $non_setting_types ) ) {
961
+ continue;
962
+ }
963
+
964
+ if ( array_key_exists( $key, $output ) ) {
965
+ $output[ $key ] = apply_filters( 'edd_settings_sanitize_' . $type, $output[ $key ], $key );
966
+ $output[ $key ] = apply_filters( 'edd_settings_sanitize', $output[ $key ], $key );
967
+ }
968
 
969
+ if ( $doing_section ) {
970
+ switch( $type ) {
971
+ case 'checkbox':
972
+ if ( array_key_exists( $key, $input ) && $output[ $key ] === '-1' ) {
973
+ unset( $output[ $key ] );
974
+ }
975
+ break;
976
+ default:
977
+ if ( array_key_exists( $key, $input ) && empty( $input[ $key ] ) ) {
978
+ unset( $output[ $key ] );
979
+ }
980
+ break;
981
+ }
982
+ } else {
983
+ if ( empty( $input[ $key ] ) ) {
984
+ unset( $output[ $key ] );
985
+ }
986
  }
987
 
 
 
988
  }
989
 
990
+ if ( $doing_section ) {
991
+ add_settings_error( 'edd-notices', '', __( 'Settings updated.', 'easy-digital-downloads' ), 'updated' );
992
+ }
993
 
994
+ return $output;
995
+ }
996
 
997
+ /**
998
+ * Flattens the set of registered settings and their type so we can easily sanitize all the settings
999
+ * in a much cleaner set of logic in edd_settings_sanitize
1000
+ *
1001
+ * @since 2.6.5
1002
+ * @return array Key is the setting ID, value is the type of setting it is registered as
1003
+ */
1004
+ function edd_get_registered_settings_types() {
1005
+ $settings = edd_get_registered_settings();
1006
+ $setting_types = array();
1007
 
1008
+ foreach ( $settings as $tab ) {
 
 
 
1009
 
1010
+ foreach ( $tab as $section_or_setting ) {
1011
+
1012
+ // See if we have a setting registered at the tab level for backwards compatibility
1013
+ if ( is_array( $section_or_setting ) && array_key_exists( 'type', $section_or_setting ) ) {
1014
+ $setting_types[ $section_or_setting['id'] ] = $section_or_setting['type'];
1015
+ continue;
1016
  }
1017
 
1018
+ foreach ( $section_or_setting as $section => $section_settings ) {
1019
+ $setting_types[ $section_settings['id'] ] = $section_settings['type'];
1020
+ }
1021
  }
 
1022
 
1023
+ }
 
 
 
1024
 
1025
+ return $setting_types;
1026
  }
1027
 
1028
  /**
1316
  }
1317
 
1318
  $checked = ! empty( $edd_option ) ? checked( 1, $edd_option, false ) : '';
1319
+ $html = '<input type="hidden"' . $name . ' value="-1" />';
1320
+ $html .= '<input type="checkbox" id="edd_settings[' . edd_sanitize_key( $args['id'] ) . ']"' . $name . ' value="1" ' . $checked . '/>';
1321
  $html .= '<label for="edd_settings[' . edd_sanitize_key( $args['id'] ) . ']"> ' . wp_kses_post( $args['desc'] ) . '</label>';
1322
 
1323
  echo apply_filters( 'edd_after_setting_output', $html, $args );
includes/admin/tracking.php CHANGED
@@ -157,7 +157,7 @@ class EDD_Tracking {
157
  public function check_for_settings_optin( $input ) {
158
  // Send an intial check in on settings save
159
 
160
- if( isset( $input['allow_tracking'] ) ) {
161
  $this->send_checkin( true );
162
  }
163
 
157
  public function check_for_settings_optin( $input ) {
158
  // Send an intial check in on settings save
159
 
160
+ if( isset( $input['allow_tracking'] ) && $input['allow_tracking'] == 1 ) {
161
  $this->send_checkin( true );
162
  }
163
 
includes/api/class-edd-api.php CHANGED
@@ -207,6 +207,7 @@ class EDD_API {
207
  $vars[] = 'id';
208
  $vars[] = 'purchasekey';
209
  $vars[] = 'email';
 
210
 
211
  return $vars;
212
  }
@@ -621,6 +622,12 @@ class EDD_API {
621
 
622
  break;
623
 
 
 
 
 
 
 
624
  endswitch;
625
 
626
  // Allow extensions to setup their own return data
@@ -668,6 +675,7 @@ class EDD_API {
668
  'sales',
669
  'discounts',
670
  'file-download-logs',
 
671
  ) );
672
 
673
  $query = isset( $wp_query->query_vars['edd-api'] ) ? $wp_query->query_vars['edd-api'] : null;
@@ -1644,6 +1652,66 @@ class EDD_API {
1644
  return $downloads;
1645
  }
1646
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1647
  /**
1648
  * Retrieve the output format
1649
  *
207
  $vars[] = 'id';
208
  $vars[] = 'purchasekey';
209
  $vars[] = 'email';
210
+ $vars[] = 'info';
211
 
212
  return $vars;
213
  }
622
 
623
  break;
624
 
625
+ case 'info' :
626
+
627
+ $data = $this->routes->get_info();
628
+
629
+ break;
630
+
631
  endswitch;
632
 
633
  // Allow extensions to setup their own return data
675
  'sales',
676
  'discounts',
677
  'file-download-logs',
678
+ 'info'
679
  ) );
680
 
681
  $query = isset( $wp_query->query_vars['edd-api'] ) ? $wp_query->query_vars['edd-api'] : null;
1652
  return $downloads;
1653
  }
1654
 
1655
+ /**
1656
+ * Process Get Info API Request
1657
+ *
1658
+ * @param array $args Arguments provided by API Request
1659
+ * @return array
1660
+ */
1661
+ public function get_info() {
1662
+ $data = array();
1663
+
1664
+ // plugin.php required to use is_plugin_active()
1665
+ require_once ABSPATH . 'wp-admin/includes/plugin.php';
1666
+
1667
+ // Integrations
1668
+ if ( is_plugin_active( 'edd-commissions/edd-commissions.php' ) ) {
1669
+ $data['info']['integrations']['commissions'] = true;
1670
+ }
1671
+
1672
+ if ( class_exists( 'EDD_Software_Licensing' ) ) {
1673
+ $data['info']['integrations']['software_licensing'] = true;
1674
+ }
1675
+
1676
+ if ( class_exists( 'EDD_Front_End_Submissions' ) ) {
1677
+ $data['info']['integrations']['fes'] = true;
1678
+ }
1679
+
1680
+ if ( class_exists( 'EDD_Reviews' ) ) {
1681
+ $data['info']['integrations']['reviews'] = true;
1682
+ }
1683
+
1684
+ if ( class_exists( 'EDD_Recurring' ) ) {
1685
+ $data['info']['integrations']['recurring'] = true;
1686
+ }
1687
+
1688
+ // Permissions
1689
+ if ( user_can( $this->user_id, 'view_shop_reports' ) ) {
1690
+ $data['info']['permissions']['view_shop_reports'] = true;
1691
+ }
1692
+
1693
+ if ( user_can( $this->user_id, 'view_shop_sensitive_data' ) ) {
1694
+ $data['info']['permissions']['view_shop_sensitive_data'] = true;
1695
+ }
1696
+
1697
+ if ( user_can( $this->user_id, 'manage_shop_discounts' ) ) {
1698
+ $data['info']['permissions']['manage_shop_discounts'] = true;
1699
+ }
1700
+
1701
+ // Site Information
1702
+ if ( user_can( $this->user_id, 'view_shop_sensitive_data' ) ) {
1703
+ $data['info']['site']['wp_version'] = get_bloginfo( 'version' );
1704
+ $data['info']['site']['edd_version'] = EDD_VERSION;
1705
+ }
1706
+
1707
+ $data['info']['site']['currency'] = edd_get_currency();
1708
+ $data['info']['site']['currency_position'] = edd_get_option( 'currency_position', 'before' );
1709
+ $data['info']['site']['decimal_separator'] = edd_get_option( 'decimal_separator', '.' );
1710
+ $data['info']['site']['thousands_separator'] = edd_get_option( 'thousands_separator', ',' );
1711
+
1712
+ return $data;
1713
+ }
1714
+
1715
  /**
1716
  * Retrieve the output format
1717
  *
includes/checkout/template.php CHANGED
@@ -590,11 +590,14 @@ function edd_payment_mode_select() {
590
 
591
  foreach ( $gateways as $gateway_id => $gateway ) :
592
 
593
- $checked = checked( $gateway_id, edd_get_default_gateway(), false );
 
594
  $checked_class = $checked ? ' edd-gateway-option-selected' : '';
 
595
  echo '<label for="edd-gateway-' . esc_attr( $gateway_id ) . '" class="edd-gateway-option' . $checked_class . '" id="edd-gateway-option-' . esc_attr( $gateway_id ) . '">';
596
- echo '<input type="radio" name="payment-mode" class="edd-gateway" id="edd-gateway-' . esc_attr( $gateway_id ) . '" value="' . esc_attr( $gateway_id ) . '"' . $checked . '>' . esc_html( $gateway['checkout_label'] );
597
  echo '</label>';
 
598
  endforeach;
599
 
600
  do_action( 'edd_payment_mode_after_gateways' );
590
 
591
  foreach ( $gateways as $gateway_id => $gateway ) :
592
 
593
+ $label = apply_filters( 'edd_gateway_checkout_label_' . $gateway_id, $gateway['checkout_label'] );
594
+ $checked = checked( $gateway_id, edd_get_default_gateway(), false );
595
  $checked_class = $checked ? ' edd-gateway-option-selected' : '';
596
+
597
  echo '<label for="edd-gateway-' . esc_attr( $gateway_id ) . '" class="edd-gateway-option' . $checked_class . '" id="edd-gateway-option-' . esc_attr( $gateway_id ) . '">';
598
+ echo '<input type="radio" name="payment-mode" class="edd-gateway" id="edd-gateway-' . esc_attr( $gateway_id ) . '" value="' . esc_attr( $gateway_id ) . '"' . $checked . '>' . esc_html( $label );
599
  echo '</label>';
600
+
601
  endforeach;
602
 
603
  do_action( 'edd_payment_mode_after_gateways' );
includes/class-edd-download.php CHANGED
@@ -309,9 +309,13 @@ class EDD_Download {
309
  */
310
  public function get_prices() {
311
 
312
- if( ! isset( $this->prices ) ) {
313
 
314
- $this->prices = get_post_meta( $this->ID, 'edd_variable_prices', true );
 
 
 
 
315
 
316
  }
317
 
309
  */
310
  public function get_prices() {
311
 
312
+ $this->prices = array();
313
 
314
+ if( true === $this->has_variable_prices() ) {
315
+
316
+ if ( empty( $this->prices ) ) {
317
+ $this->prices = get_post_meta( $this->ID, 'edd_variable_prices', true );
318
+ }
319
 
320
  }
321
 
includes/class-edd-register-meta.php CHANGED
@@ -65,14 +65,124 @@ class EDD_Register_Meta {
65
  * @return void
66
  */
67
  public function register_download_meta() {
68
- register_meta( 'post', '_edd_download_earnings', 'edd_sanitize_amount' );
69
- register_meta( 'post', '_edd_download_sales', array( $this, 'intval_wrapper' ) );
70
- register_meta( 'post', 'edd_price', 'edd_sanitize_amount' );
71
- register_meta( 'post', 'edd_variable_prices', array( $this, 'sanitize_variable_prices' ) );
72
- register_meta( 'post', 'edd_download_files', array( $this, 'sanitize_files' ) );
73
- register_meta( 'post', '_edd_bundled_products', array( $this, 'sanitize_array' ) );
74
- register_meta( 'post', '_edd_button_behavior', 'sanitize_text_field' );
75
- register_meta( 'post', '_edd_default_price_id', array( $this, 'intval_wrapper' ) );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
76
  }
77
 
78
  /**
@@ -82,17 +192,163 @@ class EDD_Register_Meta {
82
  * @return void
83
  */
84
  public function register_payment_meta() {
85
- register_meta( 'post', '_edd_payment_user_email', 'sanitize_email' );
86
- register_meta( 'post', '_edd_payment_customer_id', array( $this, 'intval_wrapper' ) );
87
- register_meta( 'post', '_edd_payment_user_id', array( $this, 'intval_wrapper' ) );
88
- register_meta( 'post', '_edd_payment_user_ip', 'sanitize_text_field' );
89
- register_meta( 'post', '_edd_payment_purchase_key', 'sanitize_text_field' );
90
- register_meta( 'post', '_edd_payment_total', 'edd_sanitize_amount' );
91
- register_meta( 'post', '_edd_payment_mode', 'sanitize_text_field' );
92
- register_meta( 'post', '_edd_payment_gateway', 'sanitize_text_field' );
93
- register_meta( 'post', '_edd_payment_meta', array( $this, 'sanitize_array' ) );
94
- register_meta( 'post', '_edd_payment_tax', 'edd_sanitize_amount' );
95
- register_meta( 'post', '_edd_completed_date', 'sanitize_text_field' );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
96
  }
97
 
98
  /**
@@ -131,6 +387,24 @@ class EDD_Register_Meta {
131
  return $value;
132
  }
133
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
134
  /**
135
  * Sanitize the variable prices
136
  *
@@ -140,7 +414,7 @@ class EDD_Register_Meta {
140
  * @param array $prices Variable prices
141
  * @return array $prices Array of the remapped variable prices
142
  */
143
- function sanitize_variable_prices( $prices = array() ) {
144
  $prices = $this->remove_blank_rows( $prices );
145
 
146
  if ( ! is_array( $prices ) ) {
@@ -160,7 +434,7 @@ class EDD_Register_Meta {
160
 
161
  }
162
 
163
- $prices[ $id ]['amount'] = edd_sanitize_amount( $price['amount'] );
164
 
165
  }
166
 
@@ -220,4 +494,4 @@ class EDD_Register_Meta {
220
  }
221
 
222
  }
223
- EDD_Register_Meta::instance();
65
  * @return void
66
  */
67
  public function register_download_meta() {
68
+ register_meta(
69
+ 'post',
70
+ '_edd_download_earnings',
71
+ array(
72
+ 'sanitize_callback' => 'edd_sanitize_amount',
73
+ 'type' => 'float',
74
+ 'description' => __( 'The total earnings for the specified product', 'easy-digital-downloads' ),
75
+ )
76
+ );
77
+
78
+ // Pre-WordPress 4.6 compatibility
79
+ if ( ! has_filter( 'sanitize_post_meta__edd_download_earnings' ) ) {
80
+ add_filter( 'sanitize_post_meta__edd_download_earnings', 'edd_sanitize_amount', 10, 4 );
81
+ }
82
+
83
+ register_meta(
84
+ 'post',
85
+ '_edd_download_sales',
86
+ array(
87
+ 'sanitize_callback' => array( $this, 'intval_wrapper' ),
88
+ 'type' => 'float',
89
+ 'description' => __( 'The nubmer of sales for the specified product.', 'easy-digital-downloads' ),
90
+ )
91
+ );
92
+
93
+ if ( ! has_filter( 'sanitize_post_meta__edd_download_sales' ) ) {
94
+ add_filter( 'sanitize_post_meta__edd_download_sales', array( $this, 'intval_wrapper' ), 10, 4 );
95
+ }
96
+
97
+ register_meta(
98
+ 'post',
99
+ 'edd_price',
100
+ array(
101
+ 'sanitize_callback' => array( $this, 'sanitize_price' ),
102
+ 'type' => 'float',
103
+ 'description' => __( 'The price of the product.', 'easy-digital-downloads' ),
104
+ 'show_in_rest' => true,
105
+ )
106
+ );
107
+
108
+ if ( ! has_filter( 'sanitize_post_meta_edd_price' ) ) {
109
+ add_filter( 'sanitize_post_meta_edd_price', array( $this, 'sanitize_price' ), 10, 4 );
110
+ }
111
+
112
+ register_meta(
113
+ 'post',
114
+ 'edd_variable_prices',
115
+ array(
116
+ 'sanitize_callback' => array( $this, 'sanitize_variable_prices'),
117
+ 'type' => 'array',
118
+ 'description' => __( 'An array of variable prices for the product.', 'easy-digital-downloads' ),
119
+ 'show_in_rest' => true,
120
+ )
121
+ );
122
+
123
+ if ( ! has_filter( 'sanitize_post_meta_edd_variable_prices' ) ) {
124
+ add_filter( 'sanitize_post_meta_edd_variable_prices', array( $this, 'sanitize_variable_prices'), 10, 4 );
125
+ }
126
+
127
+ register_meta(
128
+ 'post',
129
+ 'edd_download_files',
130
+ array(
131
+ 'sanitize_callback' => array( $this, 'sanitize_files' ),
132
+ 'type' => 'array',
133
+ 'description' => __( 'The files associated with the product, available for download.', 'easy-digital-downloads' ),
134
+ )
135
+ );
136
+
137
+ if ( ! has_filter( 'sanitize_post_meta_edd_download_files' ) ) {
138
+ add_filter( 'sanitize_post_meta_edd_download_files', array( $this, 'sanitize_files' ), 10, 4 );
139
+ }
140
+
141
+ register_meta(
142
+ 'post',
143
+ '_edd_bundled_products',
144
+ array(
145
+ 'sanitize_callback' => array( $this, 'sanitize_array' ),
146
+ 'type' => 'array',
147
+ 'description' => __( 'An array of product IDs to associate with a bundle.', 'easy-digital-downloads' ),
148
+ 'show_in_rest' => true,
149
+ )
150
+ );
151
+
152
+ if ( ! has_filter( 'sanitize_post_meta__edd_bundled_products' ) ) {
153
+ add_filter( 'sanitize_post_meta__edd_bundled_products', array( $this, 'sanitize_array' ), 10, 4 );
154
+ }
155
+
156
+ register_meta(
157
+ 'post',
158
+ '_edd_button_behavior',
159
+ array(
160
+ 'sanitize_callback' => 'sanitize_text_field',
161
+ 'type' => 'string',
162
+ 'description' => __( 'Defines how this products `Purchase` button should behave, either add to cart or buy now.', 'easy-digital-downloads' ),
163
+ 'show_in_rest' => true,
164
+ )
165
+ );
166
+
167
+ if ( ! has_filter( 'sanitize_post_meta__edd_button_behavior' ) ) {
168
+ add_filter( 'sanitize_post_meta__edd_button_behavior', 'sanitize_text_field', 10, 4 );
169
+ }
170
+
171
+ register_meta(
172
+ 'post',
173
+ '_edd_default_price_id',
174
+ array(
175
+ 'sanitize_callback' => array( $this, 'intval_wrapper' ),
176
+ 'type' => 'int',
177
+ 'description' => __( 'When variable pricing is enabled, this value defines which option should be chosen by default.', 'easy-digital-downloads' ),
178
+ 'show_in_rest' => true,
179
+ )
180
+ );
181
+
182
+ if ( ! has_filter( 'sanitize_post_meta__edd_default_price_id' ) ) {
183
+ add_filter( 'sanitize_post_meta__edd_default_price_id', array( $this, 'intval_wrapper' ), 10, 4 );
184
+ }
185
+
186
  }
187
 
188
  /**
192
  * @return void
193
  */
194
  public function register_payment_meta() {
195
+
196
+ register_meta(
197
+ 'post',
198
+ '_edd_payment_user_email',
199
+ array(
200
+ 'sanitize_callback' => 'sanitize_email',
201
+ 'type' => 'string',
202
+ 'description' => __( 'The email address associated with the purchase.', 'easy-digital-downloads' ),
203
+ )
204
+ );
205
+
206
+ // Pre-WordPress 4.6 compatibility
207
+ if ( ! has_filter( 'sanitize_post_meta__edd_payment_user_email' ) ) {
208
+ add_filter( 'sanitize_post_meta__edd_payment_user_email', 'sanitize_email', 10, 4 );
209
+ }
210
+
211
+ register_meta(
212
+ 'post',
213
+ '_edd_payment_customer_id',
214
+ array(
215
+ 'sanitize_callback' => array( $this, 'intval_wrapper' ),
216
+ 'type' => 'int',
217
+ 'description' => __( 'The Customer ID associated with the payment.', 'easy-digital-downloads' ),
218
+ )
219
+ );
220
+
221
+ if ( ! has_filter( 'sanitize_post_meta__edd_payment_customer_id' ) ) {
222
+ add_filter( 'sanitize_post_meta__edd_payment_customer_id', array( $this, 'intval_wrapper' ), 10, 4 );
223
+ }
224
+
225
+ register_meta(
226
+ 'post',
227
+ '_edd_payment_user_id',
228
+ array(
229
+ 'sanitize_callback' => array( $this, 'intval_wrapper' ),
230
+ 'type' => 'int',
231
+ 'description' => __( 'The User ID assocaited with the payment.', 'easy-digital-downloads' ),
232
+ )
233
+ );
234
+
235
+ if ( ! has_filter( 'sanitize_post_meta__edd_payment_user_id' ) ) {
236
+ add_filter( 'sanitize_post_meta__edd_payment_user_id', array( $this, 'intval_wrapper' ), 10, 4 );
237
+ }
238
+
239
+ register_meta(
240
+ 'post',
241
+ '_edd_payment_user_ip',
242
+ array(
243
+ 'sanitize_callback' => 'sanitize_text_field',
244
+ 'type' => 'string',
245
+ 'description' => __( 'The IP address the payment was made from.', 'easy-digital-downloads' ),
246
+ )
247
+ );
248
+
249
+ if ( ! has_filter( 'sanitize_post_meta__edd_payment_user_ip' ) ) {
250
+ add_filter( 'sanitize_post_meta__edd_payment_user_ip', 'sanitize_text_field', 10, 4 );
251
+ }
252
+
253
+ register_meta(
254
+ 'post',
255
+ '_edd_payment_purchase_key',
256
+ array(
257
+ 'sanitize_callback' => 'sanitize_text_field',
258
+ 'type' => 'string',
259
+ 'description' => __( 'The unique purchase key for this payment.', 'easy-digital-downloads' ),
260
+ )
261
+ );
262
+
263
+ if ( ! has_filter( 'sanitize_post_meta__edd_payment_purchase_key' ) ) {
264
+ add_filter( 'sanitize_post_meta__edd_payment_purchase_key', 'sanitize_text_field', 10, 4 );
265
+ }
266
+
267
+ register_meta(
268
+ 'post',
269
+ '_edd_payment_total',
270
+ array(
271
+ 'sanitize_callback' => 'edd_sanitize_amount',
272
+ 'type' => 'float',
273
+ 'description' => __( 'The purchase total for this payment.', 'easy-digital-downloads' ),
274
+ )
275
+ );
276
+
277
+ if ( ! has_filter( 'sanitize_post_meta__edd_payment_total' ) ) {
278
+ add_filter( 'sanitize_post_meta__edd_payment_total', 'edd_sanitize_amount', 10, 4 );
279
+ }
280
+
281
+ register_meta(
282
+ 'post',
283
+ '_edd_payment_mode',
284
+ array(
285
+ 'sanitize_callback' => 'sanitize_text_field',
286
+ 'type' => 'string',
287
+ 'description' => __( 'Identifes if the purchase was made in Test or Live mode.', 'easy-digital-downloads' ),
288
+ )
289
+ );
290
+
291
+ if ( ! has_filter( 'sanitize_post_meta__edd_payment_mode' ) ) {
292
+ add_filter( 'sanitize_post_meta__edd_payment_mode', 'sanitize_text_field', 10, 4 );
293
+ }
294
+
295
+ register_meta(
296
+ 'post',
297
+ '_edd_payment_gateway',
298
+ array(
299
+ 'sanitize_callback' => 'sanitize_text_field',
300
+ 'type' => 'string',
301
+ 'description' => __( 'The registered gateway that was used to process this payment.', 'easy-digital-downloads' ),
302
+ )
303
+ );
304
+
305
+ if ( ! has_filter( 'sanitize_post_meta__edd_payment_gateway' ) ) {
306
+ add_filter( 'sanitize_post_meta__edd_payment_gateway', 'sanitize_text_field', 10, 4 );
307
+ }
308
+
309
+ register_meta(
310
+ 'post',
311
+ '_edd_payment_meta',
312
+ array(
313
+ 'sanitize_callback' => array( $this, 'sanitize_array' ),
314
+ 'type' => 'array',
315
+ 'description' => __( 'Array of payment meta that contains cart details, downloads, amounts, taxes, discounts, and subtotals, etc.', 'easy-digital-downloads' ),
316
+ )
317
+ );
318
+
319
+ if ( ! has_filter( 'sanitize_post_meta__edd_payment_meta' ) ) {
320
+ add_filter( 'sanitize_post_meta__edd_payment_meta', array( $this, 'sanitize_array' ), 10, 4 );
321
+ }
322
+
323
+ register_meta(
324
+ 'post',
325
+ '_edd_payment_tax',
326
+ array(
327
+ 'sanitize_callback' => 'edd_sanitize_amount',
328
+ 'type' => 'float',
329
+ 'description' => __( 'The total amount of tax paid for this payment.', 'easy-digital-downloads' ),
330
+ )
331
+ );
332
+
333
+ if ( ! has_filter( 'sanitize_post_meta__edd_payment_tax' ) ) {
334
+ add_filter( 'sanitize_post_meta__edd_payment_tax', 'edd_sanitize_amount', 10, 4 );
335
+ }
336
+
337
+ register_meta(
338
+ 'post',
339
+ '_edd_completed_date',
340
+ array(
341
+ 'sanitize_callback' => 'sanitize_text_field',
342
+ 'type' => 'string',
343
+ 'description' => __( 'The date this payment was changed to the `completed` status.', 'easy-digital-downloads' ),
344
+ )
345
+ );
346
+
347
+ if ( ! has_filter( 'sanitize_post_meta__edd_completed_date' ) ) {
348
+ add_filter( 'sanitize_post_meta__edd_completed_date', 'sanitize_text_field', 10, 4 );
349
+ }
350
+
351
+
352
  }
353
 
354
  /**
387
  return $value;
388
  }
389
 
390
+ /**
391
+ * Perform some sanitization on the amount field including not allowing negative values by default
392
+ *
393
+ * @since 2.6.5
394
+ * @param float $price The price to sanitize
395
+ * @return float A sanitized price
396
+ */
397
+ public function sanitize_price( $price ) {
398
+
399
+ $allow_negative_prices = apply_filters( 'edd_allow_negative_prices', false );
400
+
401
+ if ( ! $allow_negative_prices && $price < 0 ) {
402
+ $price = 0;
403
+ }
404
+
405
+ return edd_sanitize_amount( $price );
406
+ }
407
+
408
  /**
409
  * Sanitize the variable prices
410
  *
414
  * @param array $prices Variable prices
415
  * @return array $prices Array of the remapped variable prices
416
  */
417
+ public function sanitize_variable_prices( $prices = array() ) {
418
  $prices = $this->remove_blank_rows( $prices );
419
 
420
  if ( ! is_array( $prices ) ) {
434
 
435
  }
436
 
437
+ $prices[ $id ]['amount'] = $this->sanitize_price( $price['amount'] );
438
 
439
  }
440
 
494
  }
495
 
496
  }
497
+ EDD_Register_Meta::instance();
includes/login-register.php CHANGED
@@ -78,8 +78,16 @@ function edd_process_login_form( $data ) {
78
  if ( $user_data ) {
79
  $user_ID = $user_data->ID;
80
  $user_email = $user_data->user_email;
 
81
  if ( wp_check_password( $data['edd_user_pass'], $user_data->user_pass, $user_data->ID ) ) {
82
- edd_log_user_in( $user_data->ID, $data['edd_user_login'], $data['edd_user_pass'] );
 
 
 
 
 
 
 
83
  } else {
84
  edd_set_error( 'password_incorrect', __( 'The password you entered is incorrect', 'easy-digital-downloads' ) );
85
  }
@@ -104,13 +112,14 @@ add_action( 'edd_user_login', 'edd_process_login_form' );
104
  * @param int $user_id User ID
105
  * @param string $user_login Username
106
  * @param string $user_pass Password
 
107
  * @return void
108
  */
109
- function edd_log_user_in( $user_id, $user_login, $user_pass ) {
110
  if ( $user_id < 1 )
111
  return;
112
 
113
- wp_set_auth_cookie( $user_id );
114
  wp_set_current_user( $user_id, $user_login );
115
  do_action( 'wp_login', $user_login, get_userdata( $user_id ) );
116
  do_action( 'edd_log_user_in', $user_id, $user_login, $user_pass );
78
  if ( $user_data ) {
79
  $user_ID = $user_data->ID;
80
  $user_email = $user_data->user_email;
81
+
82
  if ( wp_check_password( $data['edd_user_pass'], $user_data->user_pass, $user_data->ID ) ) {
83
+
84
+ if ( isset( $data['remember'] ) ) {
85
+ $data['remember'] = true;
86
+ } else {
87
+ $data['remember'] = false;
88
+ }
89
+
90
+ edd_log_user_in( $user_data->ID, $data['edd_user_login'], $data['edd_user_pass'], $data['remember'] );
91
  } else {
92
  edd_set_error( 'password_incorrect', __( 'The password you entered is incorrect', 'easy-digital-downloads' ) );
93
  }
112
  * @param int $user_id User ID
113
  * @param string $user_login Username
114
  * @param string $user_pass Password
115
+ * @param boolean $remember Remember me
116
  * @return void
117
  */
118
+ function edd_log_user_in( $user_id, $user_login, $user_pass, $remember = false ) {
119
  if ( $user_id < 1 )
120
  return;
121
 
122
+ wp_set_auth_cookie( $user_id, $remember );
123
  wp_set_current_user( $user_id, $user_login );
124
  do_action( 'wp_login', $user_login, get_userdata( $user_id ) );
125
  do_action( 'edd_log_user_in', $user_id, $user_login, $user_pass );
includes/misc-functions.php CHANGED
@@ -453,7 +453,7 @@ function edd_get_current_page_url( $nocache = false ) {
453
 
454
  if ( is_front_page() ) {
455
  $uri = home_url( '/' );
456
- } elseif ( edd_is_checkout( array(), false ) ) {
457
  $uri = edd_get_checkout_uri();
458
  }
459
 
453
 
454
  if ( is_front_page() ) {
455
  $uri = home_url( '/' );
456
+ } elseif ( edd_is_checkout() ) {
457
  $uri = edd_get_checkout_uri();
458
  }
459
 
includes/template-functions.php CHANGED
@@ -72,7 +72,7 @@ function edd_get_purchase_link( $args = array() ) {
72
 
73
  $args = wp_parse_args( $args, $defaults );
74
 
75
- // Override the stright_to_gateway if the shop doesn't support it
76
  if ( ! edd_shop_supports_buy_now() ) {
77
  $args['direct'] = false;
78
  }
@@ -155,7 +155,7 @@ function edd_get_purchase_link( $args = array() ) {
155
 
156
  $form_id = ! empty( $args['form_id'] ) ? $args['form_id'] : 'edd_purchase_' . $download->ID;
157
 
158
- // If we've already generated a form ID for this download ID, apped -#
159
  if ( $edd_displayed_form_ids[ $download->ID ] > 1 ) {
160
  $form_id .= '-' . $edd_displayed_form_ids[ $download->ID ];
161
  }
@@ -236,7 +236,7 @@ function edd_get_purchase_link( $args = array() ) {
236
  function edd_purchase_variable_pricing( $download_id = 0, $args = array() ) {
237
  global $edd_displayed_form_ids;
238
 
239
- // If we've already generated a form ID for this download ID, apped -#
240
  $form_id = '';
241
  if ( $edd_displayed_form_ids[ $download_id ] > 1 ) {
242
  $form_id .= '-' . $edd_displayed_form_ids[ $download_id ];
72
 
73
  $args = wp_parse_args( $args, $defaults );
74
 
75
+ // Override the straight_to_gateway if the shop doesn't support it
76
  if ( ! edd_shop_supports_buy_now() ) {
77
  $args['direct'] = false;
78
  }
155
 
156
  $form_id = ! empty( $args['form_id'] ) ? $args['form_id'] : 'edd_purchase_' . $download->ID;
157
 
158
+ // If we've already generated a form ID for this download ID, append -#
159
  if ( $edd_displayed_form_ids[ $download->ID ] > 1 ) {
160
  $form_id .= '-' . $edd_displayed_form_ids[ $download->ID ];
161
  }
236
  function edd_purchase_variable_pricing( $download_id = 0, $args = array() ) {
237
  global $edd_displayed_form_ids;
238
 
239
+ // If we've already generated a form ID for this download ID, append -#
240
  $form_id = '';
241
  if ( $edd_displayed_form_ids[ $download_id ] > 1 ) {
242
  $form_id .= '-' . $edd_displayed_form_ids[ $download_id ];
languages/easy-digital-downloads-de_CH.mo CHANGED
Binary file
languages/easy-digital-downloads-en_AU.mo CHANGED
Binary file
languages/easy-digital-downloads-en_CA.mo CHANGED
Binary file
languages/easy-digital-downloads-en_NZ.mo CHANGED
Binary file
languages/easy-digital-downloads-it_IT.mo CHANGED
Binary file
languages/easy-digital-downloads-mn.mo CHANGED
Binary file
languages/easy-digital-downloads-pt_PT.mo CHANGED
Binary file
languages/easy-digital-downloads-ro_RO.mo CHANGED
Binary file
languages/easy-digital-downloads.pot CHANGED
@@ -4,14 +4,14 @@ msgid ""
4
  msgstr ""
5
  "Project-Id-Version: Easy Digital Downloads 2.6.4\n"
6
  "Report-Msgid-Bugs-To: https://easydigitaldownloads.com/\n"
7
- "POT-Creation-Date: 2016-07-06 22:59:38+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=utf-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
11
  "PO-Revision-Date: 2016-MO-DA HO:MI+ZONE\n"
12
  "Last-Translator: WP-Translations (http://wp-translations.org/)\n"
13
  "Language-Team: WP-Translations <wpt@wp-translations.org>\n"
14
- "X-Generator: grunt-wp-i18n 0.5.2\n"
15
  "X-Poedit-KeywordsList: "
16
  "__;_e;_x:1,2c;_ex:1,2c;_n:1,2;_nx:1,2,4c;_n_noop:1,2;_nx_noop:1,2,3c;esc_"
17
  "attr__;esc_html__;esc_attr_e;esc_html_e;esc_attr_x:1,2c;esc_html_x:1,2c;\n"
@@ -89,8 +89,8 @@ msgstr ""
89
  #: includes/admin/upgrades/upgrade-functions.php:890
90
  #: includes/admin/upgrades/upgrade-functions.php:1018
91
  #: includes/admin/upgrades/upgrade-functions.php:1103
92
- #: includes/api/class-edd-api.php:1836 includes/api/class-edd-api.php:1841
93
- #: includes/api/class-edd-api.php:1853 includes/api/class-edd-api.php:1855
94
  #: includes/cart/functions.php:1196 includes/cart/functions.php:1213
95
  #: includes/class-edd-license-handler.php:304
96
  #: includes/deprecated-functions.php:517 includes/deprecated-functions.php:532
@@ -174,7 +174,7 @@ msgstr ""
174
 
175
  #: includes/admin/admin-pages.php:43 includes/admin/plugins.php:58
176
  #: includes/admin/settings/contextual-help.php:87
177
- #: includes/admin/settings/register-settings.php:1151
178
  msgid "Extensions"
179
  msgstr ""
180
 
@@ -204,8 +204,7 @@ msgstr ""
204
 
205
  #: includes/admin/class-api-keys-table.php:176
206
  #: includes/checkout/template.php:466 includes/checkout/template.php:472
207
- #: includes/checkout/template.php:538 templates/shortcode-login.php:15
208
- #: templates/shortcode-register.php:18
209
  msgid "Username"
210
  msgstr ""
211
 
@@ -493,7 +492,7 @@ msgstr ""
493
  #: includes/admin/import/import-functions.php:98
494
  #: includes/admin/reporting/export/export-actions.php:23
495
  #: includes/admin/reporting/pdf-reports.php:33
496
- #: includes/api/class-edd-api.php:1836
497
  #: includes/class-edd-license-handler.php:304
498
  msgid "Nonce verification failed"
499
  msgstr ""
@@ -594,7 +593,7 @@ msgid "City"
594
  msgstr ""
595
 
596
  #: includes/admin/customers/customers.php:247
597
- #: includes/admin/settings/register-settings.php:1841
598
  #: includes/admin/tools.php:573 includes/checkout/template.php:417
599
  #: templates/shortcode-profile-editor.php:145
600
  msgid "State / Province"
@@ -685,7 +684,7 @@ msgstr ""
685
 
686
  #: includes/admin/customers/customers.php:379
687
  #: includes/admin/payments/view-order-details.php:360
688
- #: includes/admin/settings/register-settings.php:1844 includes/scripts.php:216
689
  #: templates/checkout_cart.php:57 templates/checkout_cart.php:75
690
  #: templates/shortcode-profile-editor.php:114
691
  msgid "Remove"
@@ -1154,7 +1153,7 @@ msgstr ""
1154
 
1155
  #: includes/admin/discounts/contextual-help.php:38
1156
  #: includes/admin/settings/contextual-help.php:42
1157
- #: includes/admin/settings/register-settings.php:1144
1158
  #: includes/admin/tools.php:68
1159
  msgid "General"
1160
  msgstr ""
@@ -1596,7 +1595,7 @@ msgstr ""
1596
 
1597
  #: includes/admin/downloads/metabox.php:847
1598
  #: includes/admin/settings/register-settings.php:768
1599
- #: includes/admin/thickbox.php:58 includes/checkout/template.php:844
1600
  #: includes/scripts.php:60 includes/shortcodes.php:49
1601
  #: includes/template-functions.php:67
1602
  msgid "Purchase"
@@ -2206,7 +2205,7 @@ msgid "Add Note"
2206
  msgstr ""
2207
 
2208
  #: includes/admin/plugins.php:27
2209
- #: includes/admin/settings/register-settings.php:1199
2210
  msgid "General Settings"
2211
  msgstr ""
2212
 
@@ -2368,7 +2367,7 @@ msgstr ""
2368
 
2369
  #: includes/admin/reporting/class-export-payments.php:70
2370
  #: includes/admin/reporting/export/class-batch-export-payments.php:50
2371
- #: includes/admin/settings/register-settings.php:1840
2372
  #: includes/admin/tools.php:591 templates/shortcode-profile-editor.php:138
2373
  msgid "Country"
2374
  msgstr ""
@@ -2713,7 +2712,7 @@ msgid "Filter"
2713
  msgstr ""
2714
 
2715
  #: includes/admin/reporting/logs.php:144
2716
- #: includes/admin/settings/register-settings.php:1226
2717
  msgid "File Downloads"
2718
  msgstr ""
2719
 
@@ -2832,7 +2831,7 @@ msgstr ""
2832
 
2833
  #: includes/admin/reporting/reports.php:58
2834
  #: includes/admin/settings/contextual-help.php:71
2835
- #: includes/admin/settings/register-settings.php:1148
2836
  msgid "Taxes"
2837
  msgstr ""
2838
 
@@ -2969,7 +2968,7 @@ msgstr ""
2969
 
2970
  #: includes/admin/settings/contextual-help.php:48
2971
  #: includes/admin/settings/register-settings.php:416
2972
- #: includes/admin/settings/register-settings.php:1145
2973
  msgid "Payment Gateways"
2974
  msgstr ""
2975
 
@@ -2998,7 +2997,7 @@ msgid ""
2998
  msgstr ""
2999
 
3000
  #: includes/admin/settings/contextual-help.php:57
3001
- #: includes/admin/settings/register-settings.php:1146
3002
  msgid "Emails"
3003
  msgstr ""
3004
 
@@ -3018,7 +3017,7 @@ msgid ""
3018
  msgstr ""
3019
 
3020
  #: includes/admin/settings/contextual-help.php:65
3021
- #: includes/admin/settings/register-settings.php:1147
3022
  msgid "Styles"
3023
  msgstr ""
3024
 
@@ -3229,7 +3228,7 @@ msgid ""
3229
  msgstr ""
3230
 
3231
  #: includes/admin/settings/register-settings.php:336
3232
- #: includes/admin/settings/register-settings.php:1200
3233
  msgid "Currency Settings"
3234
  msgstr ""
3235
 
@@ -3273,7 +3272,7 @@ msgstr ""
3273
 
3274
  #: includes/admin/settings/register-settings.php:378
3275
  #: includes/admin/settings/register-settings.php:381
3276
- #: includes/admin/settings/register-settings.php:1201
3277
  msgid "API Settings"
3278
  msgstr ""
3279
 
@@ -3301,7 +3300,7 @@ msgid ""
3301
  msgstr ""
3302
 
3303
  #: includes/admin/settings/register-settings.php:404
3304
- #: includes/admin/settings/register-settings.php:1204
3305
  msgid "Gateway Settings"
3306
  msgstr ""
3307
 
@@ -3343,7 +3342,7 @@ msgid ""
3343
  msgstr ""
3344
 
3345
  #: includes/admin/settings/register-settings.php:451
3346
- #: includes/admin/settings/register-settings.php:1208
3347
  msgid "Email Settings"
3348
  msgstr ""
3349
 
@@ -3368,7 +3367,7 @@ msgid ""
3368
  msgstr ""
3369
 
3370
  #: includes/admin/settings/register-settings.php:477
3371
- #: includes/admin/settings/register-settings.php:1209
3372
  msgid "Purchase Receipts"
3373
  msgstr ""
3374
 
@@ -3477,7 +3476,7 @@ msgid "Check this box if you do not want to receive sales notification emails."
3477
  msgstr ""
3478
 
3479
  #: includes/admin/settings/register-settings.php:558
3480
- #: includes/admin/settings/register-settings.php:1213
3481
  msgid "Style Settings"
3482
  msgstr ""
3483
 
@@ -3527,7 +3526,7 @@ msgid "Choose the color you want to use for the buttons."
3527
  msgstr ""
3528
 
3529
  #: includes/admin/settings/register-settings.php:598
3530
- #: includes/admin/settings/register-settings.php:1216
3531
  msgid "Tax Settings"
3532
  msgstr ""
3533
 
@@ -3639,7 +3638,7 @@ msgid "Excluding tax"
3639
  msgstr ""
3640
 
3641
  #: includes/admin/settings/register-settings.php:676
3642
- #: includes/admin/settings/register-settings.php:1223
3643
  msgid "Misc Settings"
3644
  msgstr ""
3645
 
@@ -3697,7 +3696,7 @@ msgid ""
3697
  msgstr ""
3698
 
3699
  #: includes/admin/settings/register-settings.php:712
3700
- #: includes/admin/settings/register-settings.php:1224
3701
  msgid "Checkout Settings"
3702
  msgstr ""
3703
 
@@ -3779,7 +3778,7 @@ msgid ""
3779
  msgstr ""
3780
 
3781
  #: includes/admin/settings/register-settings.php:760
3782
- #: includes/admin/settings/register-settings.php:1225
3783
  msgid "Button Text"
3784
  msgstr ""
3785
 
@@ -3898,7 +3897,7 @@ msgid ""
3898
  msgstr ""
3899
 
3900
  #: includes/admin/settings/register-settings.php:839
3901
- #: includes/admin/settings/register-settings.php:1227
3902
  msgid "Accounting Settings"
3903
  msgstr ""
3904
 
@@ -3974,128 +3973,128 @@ msgstr ""
3974
  msgid "If Agree to Terms is checked, enter the agreement terms here."
3975
  msgstr ""
3976
 
3977
- #: includes/admin/settings/register-settings.php:1001
3978
  msgid "Settings updated."
3979
  msgstr ""
3980
 
3981
- #: includes/admin/settings/register-settings.php:1154
3982
  msgid "Licenses"
3983
  msgstr ""
3984
 
3985
- #: includes/admin/settings/register-settings.php:1157
3986
  msgid "Misc"
3987
  msgstr ""
3988
 
3989
- #: includes/admin/settings/register-settings.php:1205
3990
  #: includes/gateways/functions.php:25 includes/gateways/paypal-standard.php:33
3991
  msgid "PayPal Standard"
3992
  msgstr ""
3993
 
3994
- #: includes/admin/settings/register-settings.php:1210
3995
  msgid "New Sale Notifications"
3996
  msgstr ""
3997
 
3998
- #: includes/admin/settings/register-settings.php:1219
3999
  msgid "Main"
4000
  msgstr ""
4001
 
4002
- #: includes/admin/settings/register-settings.php:1228
4003
  msgid "Terms of Agreement"
4004
  msgstr ""
4005
 
4006
- #: includes/admin/settings/register-settings.php:1619
4007
  msgid "The callback function used for the %s setting is missing."
4008
  msgstr ""
4009
 
4010
- #: includes/admin/settings/register-settings.php:1754
4011
  msgid "Upload File"
4012
  msgstr ""
4013
 
4014
- #: includes/admin/settings/register-settings.php:1842
4015
  msgid "Country Wide"
4016
  msgstr ""
4017
 
4018
- #: includes/admin/settings/register-settings.php:1843
4019
  msgid "Rate"
4020
  msgstr ""
4021
 
4022
- #: includes/admin/settings/register-settings.php:1860
4023
- #: includes/admin/settings/register-settings.php:1904
4024
  msgid "Choose a country"
4025
  msgstr ""
4026
 
4027
- #: includes/admin/settings/register-settings.php:1875
4028
  msgid "Choose a state"
4029
  msgstr ""
4030
 
4031
- #: includes/admin/settings/register-settings.php:1887
4032
- #: includes/admin/settings/register-settings.php:1914
4033
  msgid "Apply to whole country"
4034
  msgstr ""
4035
 
4036
- #: includes/admin/settings/register-settings.php:1890
4037
- #: includes/admin/settings/register-settings.php:1917
4038
  msgid "Remove Rate"
4039
  msgstr ""
4040
 
4041
- #: includes/admin/settings/register-settings.php:1922
4042
  msgid "Add Tax Rate"
4043
  msgstr ""
4044
 
4045
- #: includes/admin/settings/register-settings.php:1975
4046
  msgid ""
4047
  "Your license key expired on %s. Please <a href=\"%s\" "
4048
  "target=\"_blank\">renew your license key</a>."
4049
  msgstr ""
4050
 
4051
- #: includes/admin/settings/register-settings.php:1988
4052
  msgid ""
4053
  "Your license key has been disabled. Please <a href=\"%s\" "
4054
  "target=\"_blank\">contact support</a> for more information."
4055
  msgstr ""
4056
 
4057
- #: includes/admin/settings/register-settings.php:2000
4058
  msgid ""
4059
  "Invalid license. Please <a href=\"%s\" target=\"_blank\">visit your account "
4060
  "page</a> and verify it."
4061
  msgstr ""
4062
 
4063
- #: includes/admin/settings/register-settings.php:2013
4064
  msgid ""
4065
  "Your %s is not active for this URL. Please <a href=\"%s\" "
4066
  "target=\"_blank\">visit your account page</a> to manage your license key "
4067
  "URLs."
4068
  msgstr ""
4069
 
4070
- #: includes/admin/settings/register-settings.php:2025
4071
  msgid "This appears to be an invalid license key for %s."
4072
  msgstr ""
4073
 
4074
- #: includes/admin/settings/register-settings.php:2034
4075
  msgid ""
4076
  "Your license key has reached its activation limit. <a href=\"%s\">View "
4077
  "possible upgrades</a> now."
4078
  msgstr ""
4079
 
4080
- #: includes/admin/settings/register-settings.php:2060
4081
  msgid "License key never expires."
4082
  msgstr ""
4083
 
4084
- #: includes/admin/settings/register-settings.php:2067
4085
  msgid ""
4086
  "Your license key expires soon! It expires on %s. <a href=\"%s\" "
4087
  "target=\"_blank\">Renew your license key</a>."
4088
  msgstr ""
4089
 
4090
- #: includes/admin/settings/register-settings.php:2077
4091
  msgid "Your license key expires on %s."
4092
  msgstr ""
4093
 
4094
- #: includes/admin/settings/register-settings.php:2095
4095
  msgid "To receive updates, please enter your valid %s license key."
4096
  msgstr ""
4097
 
4098
- #: includes/admin/settings/register-settings.php:2106
4099
  msgid "Deactivate License"
4100
  msgstr ""
4101
 
@@ -5021,89 +5020,89 @@ msgstr ""
5021
  msgid "No users found"
5022
  msgstr ""
5023
 
5024
- #: includes/api/class-edd-api-v2.php:143 includes/api/class-edd-api.php:1037
5025
- #: includes/api/class-edd-api.php:1231 includes/api/class-edd-api.php:1341
5026
  msgid "Product %s not found!"
5027
  msgstr ""
5028
 
5029
- #: includes/api/class-edd-api-v2.php:218 includes/api/class-edd-api.php:1142
5030
- #: includes/api/class-edd-api.php:1248
5031
  msgid "The end date must be later than the start date!"
5032
  msgstr ""
5033
 
5034
- #: includes/api/class-edd-api-v2.php:319 includes/api/class-edd-api.php:984
5035
  msgid "Customer %s not found!"
5036
  msgstr ""
5037
 
5038
- #: includes/api/class-edd-api-v2.php:324 includes/api/class-edd-api.php:989
5039
  msgid "No customers found!"
5040
  msgstr ""
5041
 
5042
- #: includes/api/class-edd-api.php:462
5043
  msgid "You must specify both a token and API key!"
5044
  msgstr ""
5045
 
5046
- #: includes/api/class-edd-api.php:479
5047
  msgid "Your request could not be authenticated!"
5048
  msgstr ""
5049
 
5050
- #: includes/api/class-edd-api.php:497
5051
  msgid "Invalid API key!"
5052
  msgstr ""
5053
 
5054
- #: includes/api/class-edd-api.php:513
5055
  msgid "Invalid API version!"
5056
  msgstr ""
5057
 
5058
- #: includes/api/class-edd-api.php:680
5059
  msgid "Invalid query!"
5060
  msgstr ""
5061
 
5062
- #: includes/api/class-edd-api.php:1147 includes/api/class-edd-api.php:1253
5063
  msgid "Invalid or no date range specified!"
5064
  msgstr ""
5065
 
5066
- #: includes/api/class-edd-api.php:1485
5067
  msgid "No discounts found!"
5068
  msgstr ""
5069
 
5070
- #: includes/api/class-edd-api.php:1532
5071
  msgid "Discount %s not found!"
5072
  msgstr ""
5073
 
5074
- #: includes/api/class-edd-api.php:1605
5075
  msgid "No download logs found!"
5076
  msgstr ""
5077
 
5078
- #: includes/api/class-edd-api.php:1800 includes/user-functions.php:961
5079
  msgid "Easy Digital Downloads API Keys"
5080
  msgstr ""
5081
 
5082
- #: includes/api/class-edd-api.php:1809 includes/user-functions.php:970
5083
  msgid "Generate API Key"
5084
  msgstr ""
5085
 
5086
- #: includes/api/class-edd-api.php:1811 includes/user-functions.php:972
5087
  msgid "Public key:"
5088
  msgstr ""
5089
 
5090
- #: includes/api/class-edd-api.php:1812 includes/user-functions.php:973
5091
  msgid "Secret key:"
5092
  msgstr ""
5093
 
5094
- #: includes/api/class-edd-api.php:1813 includes/user-functions.php:974
5095
  msgid "Token:"
5096
  msgstr ""
5097
 
5098
- #: includes/api/class-edd-api.php:1815 includes/user-functions.php:976
5099
  msgid "Revoke API Keys"
5100
  msgstr ""
5101
 
5102
- #: includes/api/class-edd-api.php:1841
5103
  msgid "User ID Required"
5104
  msgstr ""
5105
 
5106
- #: includes/api/class-edd-api.php:1853 includes/api/class-edd-api.php:1855
5107
  msgid "You do not have permission to %s API keys for this user"
5108
  msgstr ""
5109
 
@@ -5366,48 +5365,48 @@ msgstr ""
5366
  msgid "Select Payment Method"
5367
  msgstr ""
5368
 
5369
- #: includes/checkout/template.php:715
5370
  msgid "Have a discount code?"
5371
  msgstr ""
5372
 
5373
- #: includes/checkout/template.php:719
5374
  msgid "Discount"
5375
  msgstr ""
5376
 
5377
- #: includes/checkout/template.php:722
5378
  msgid "Enter a coupon code if you have one."
5379
  msgstr ""
5380
 
5381
- #: includes/checkout/template.php:723 includes/process-purchase.php:306
5382
  #: includes/scripts.php:55
5383
  msgid "Enter discount"
5384
  msgstr ""
5385
 
5386
- #: includes/checkout/template.php:744
5387
  msgid "Agree to Terms?"
5388
  msgstr ""
5389
 
5390
- #: includes/checkout/template.php:755
5391
  msgid "Show Terms"
5392
  msgstr ""
5393
 
5394
- #: includes/checkout/template.php:756
5395
  msgid "Hide Terms"
5396
  msgstr ""
5397
 
5398
- #: includes/checkout/template.php:777
5399
  msgid "Purchase Total:"
5400
  msgstr ""
5401
 
5402
- #: includes/checkout/template.php:803
5403
  msgid "Go back"
5404
  msgstr ""
5405
 
5406
- #: includes/checkout/template.php:826
5407
  msgid "Next"
5408
  msgstr ""
5409
 
5410
- #: includes/checkout/template.php:846
5411
  msgid "Free Download"
5412
  msgstr ""
5413
 
@@ -5782,6 +5781,88 @@ msgstr ""
5782
  msgid "Enter valid license key for automatic updates."
5783
  msgstr ""
5784
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5785
  #: includes/class-edd-roles.php:45
5786
  msgid "Shop Manager"
5787
  msgstr ""
@@ -6659,41 +6740,41 @@ msgstr ""
6659
  msgid "Purchase History"
6660
  msgstr ""
6661
 
6662
- #: includes/login-register.php:84
6663
  msgid "The password you entered is incorrect"
6664
  msgstr ""
6665
 
6666
- #: includes/login-register.php:87 includes/process-purchase.php:612
6667
  msgid "The username you entered does not exist"
6668
  msgstr ""
6669
 
6670
- #: includes/login-register.php:140 includes/login-register.php:148
6671
  #: includes/process-purchase.php:497
6672
  msgid "Invalid username"
6673
  msgstr ""
6674
 
6675
- #: includes/login-register.php:144 includes/process-purchase.php:490
6676
  msgid "Username already taken"
6677
  msgstr ""
6678
 
6679
- #: includes/login-register.php:152
6680
  msgid "Email address already taken"
6681
  msgstr ""
6682
 
6683
- #: includes/login-register.php:156 includes/process-purchase.php:437
6684
  #: includes/process-purchase.php:512 includes/process-purchase.php:645
6685
  msgid "Invalid email"
6686
  msgstr ""
6687
 
6688
- #: includes/login-register.php:160
6689
  msgid "Invalid payment email"
6690
  msgstr ""
6691
 
6692
- #: includes/login-register.php:164
6693
  msgid "Please enter a password"
6694
  msgstr ""
6695
 
6696
- #: includes/login-register.php:168
6697
  msgid "Passwords do not match"
6698
  msgstr ""
6699
 
@@ -7647,15 +7728,23 @@ msgstr ""
7647
  msgid "Log into Your Account"
7648
  msgstr ""
7649
 
7650
- #: templates/shortcode-login.php:26
 
 
 
 
 
 
 
 
7651
  msgid "Log In"
7652
  msgstr ""
7653
 
7654
- #: templates/shortcode-login.php:30
7655
  msgid "Lost Password?"
7656
  msgstr ""
7657
 
7658
- #: templates/shortcode-login.php:37
7659
  msgid "You are already logged in"
7660
  msgstr ""
7661
 
@@ -7796,12 +7885,12 @@ msgctxt "Date one to date two"
7796
  msgid "to"
7797
  msgstr ""
7798
 
7799
- #: includes/checkout/template.php:715
7800
  msgctxt "Entering a discount code"
7801
  msgid "Click to enter it"
7802
  msgstr ""
7803
 
7804
- #: includes/checkout/template.php:724
7805
  msgctxt "Apply discount at checkout"
7806
  msgid "Apply"
7807
  msgstr ""
4
  msgstr ""
5
  "Project-Id-Version: Easy Digital Downloads 2.6.4\n"
6
  "Report-Msgid-Bugs-To: https://easydigitaldownloads.com/\n"
7
+ "POT-Creation-Date: 2016-07-25 14:08:48+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=utf-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
11
  "PO-Revision-Date: 2016-MO-DA HO:MI+ZONE\n"
12
  "Last-Translator: WP-Translations (http://wp-translations.org/)\n"
13
  "Language-Team: WP-Translations <wpt@wp-translations.org>\n"
14
+ "X-Generator: grunt-wp-i18n 0.5.0\n"
15
  "X-Poedit-KeywordsList: "
16
  "__;_e;_x:1,2c;_ex:1,2c;_n:1,2;_nx:1,2,4c;_n_noop:1,2;_nx_noop:1,2,3c;esc_"
17
  "attr__;esc_html__;esc_attr_e;esc_html_e;esc_attr_x:1,2c;esc_html_x:1,2c;\n"
89
  #: includes/admin/upgrades/upgrade-functions.php:890
90
  #: includes/admin/upgrades/upgrade-functions.php:1018
91
  #: includes/admin/upgrades/upgrade-functions.php:1103
92
+ #: includes/api/class-edd-api.php:1904 includes/api/class-edd-api.php:1909
93
+ #: includes/api/class-edd-api.php:1921 includes/api/class-edd-api.php:1923
94
  #: includes/cart/functions.php:1196 includes/cart/functions.php:1213
95
  #: includes/class-edd-license-handler.php:304
96
  #: includes/deprecated-functions.php:517 includes/deprecated-functions.php:532
174
 
175
  #: includes/admin/admin-pages.php:43 includes/admin/plugins.php:58
176
  #: includes/admin/settings/contextual-help.php:87
177
+ #: includes/admin/settings/register-settings.php:1173
178
  msgid "Extensions"
179
  msgstr ""
180
 
204
 
205
  #: includes/admin/class-api-keys-table.php:176
206
  #: includes/checkout/template.php:466 includes/checkout/template.php:472
207
+ #: includes/checkout/template.php:538 templates/shortcode-register.php:18
 
208
  msgid "Username"
209
  msgstr ""
210
 
492
  #: includes/admin/import/import-functions.php:98
493
  #: includes/admin/reporting/export/export-actions.php:23
494
  #: includes/admin/reporting/pdf-reports.php:33
495
+ #: includes/api/class-edd-api.php:1904
496
  #: includes/class-edd-license-handler.php:304
497
  msgid "Nonce verification failed"
498
  msgstr ""
593
  msgstr ""
594
 
595
  #: includes/admin/customers/customers.php:247
596
+ #: includes/admin/settings/register-settings.php:1864
597
  #: includes/admin/tools.php:573 includes/checkout/template.php:417
598
  #: templates/shortcode-profile-editor.php:145
599
  msgid "State / Province"
684
 
685
  #: includes/admin/customers/customers.php:379
686
  #: includes/admin/payments/view-order-details.php:360
687
+ #: includes/admin/settings/register-settings.php:1867 includes/scripts.php:216
688
  #: templates/checkout_cart.php:57 templates/checkout_cart.php:75
689
  #: templates/shortcode-profile-editor.php:114
690
  msgid "Remove"
1153
 
1154
  #: includes/admin/discounts/contextual-help.php:38
1155
  #: includes/admin/settings/contextual-help.php:42
1156
+ #: includes/admin/settings/register-settings.php:1166
1157
  #: includes/admin/tools.php:68
1158
  msgid "General"
1159
  msgstr ""
1595
 
1596
  #: includes/admin/downloads/metabox.php:847
1597
  #: includes/admin/settings/register-settings.php:768
1598
+ #: includes/admin/thickbox.php:58 includes/checkout/template.php:847
1599
  #: includes/scripts.php:60 includes/shortcodes.php:49
1600
  #: includes/template-functions.php:67
1601
  msgid "Purchase"
2205
  msgstr ""
2206
 
2207
  #: includes/admin/plugins.php:27
2208
+ #: includes/admin/settings/register-settings.php:1221
2209
  msgid "General Settings"
2210
  msgstr ""
2211
 
2367
 
2368
  #: includes/admin/reporting/class-export-payments.php:70
2369
  #: includes/admin/reporting/export/class-batch-export-payments.php:50
2370
+ #: includes/admin/settings/register-settings.php:1863
2371
  #: includes/admin/tools.php:591 templates/shortcode-profile-editor.php:138
2372
  msgid "Country"
2373
  msgstr ""
2712
  msgstr ""
2713
 
2714
  #: includes/admin/reporting/logs.php:144
2715
+ #: includes/admin/settings/register-settings.php:1248
2716
  msgid "File Downloads"
2717
  msgstr ""
2718
 
2831
 
2832
  #: includes/admin/reporting/reports.php:58
2833
  #: includes/admin/settings/contextual-help.php:71
2834
+ #: includes/admin/settings/register-settings.php:1170
2835
  msgid "Taxes"
2836
  msgstr ""
2837
 
2968
 
2969
  #: includes/admin/settings/contextual-help.php:48
2970
  #: includes/admin/settings/register-settings.php:416
2971
+ #: includes/admin/settings/register-settings.php:1167
2972
  msgid "Payment Gateways"
2973
  msgstr ""
2974
 
2997
  msgstr ""
2998
 
2999
  #: includes/admin/settings/contextual-help.php:57
3000
+ #: includes/admin/settings/register-settings.php:1168
3001
  msgid "Emails"
3002
  msgstr ""
3003
 
3017
  msgstr ""
3018
 
3019
  #: includes/admin/settings/contextual-help.php:65
3020
+ #: includes/admin/settings/register-settings.php:1169
3021
  msgid "Styles"
3022
  msgstr ""
3023
 
3228
  msgstr ""
3229
 
3230
  #: includes/admin/settings/register-settings.php:336
3231
+ #: includes/admin/settings/register-settings.php:1222
3232
  msgid "Currency Settings"
3233
  msgstr ""
3234
 
3272
 
3273
  #: includes/admin/settings/register-settings.php:378
3274
  #: includes/admin/settings/register-settings.php:381
3275
+ #: includes/admin/settings/register-settings.php:1223
3276
  msgid "API Settings"
3277
  msgstr ""
3278
 
3300
  msgstr ""
3301
 
3302
  #: includes/admin/settings/register-settings.php:404
3303
+ #: includes/admin/settings/register-settings.php:1226
3304
  msgid "Gateway Settings"
3305
  msgstr ""
3306
 
3342
  msgstr ""
3343
 
3344
  #: includes/admin/settings/register-settings.php:451
3345
+ #: includes/admin/settings/register-settings.php:1230
3346
  msgid "Email Settings"
3347
  msgstr ""
3348
 
3367
  msgstr ""
3368
 
3369
  #: includes/admin/settings/register-settings.php:477
3370
+ #: includes/admin/settings/register-settings.php:1231
3371
  msgid "Purchase Receipts"
3372
  msgstr ""
3373
 
3476
  msgstr ""
3477
 
3478
  #: includes/admin/settings/register-settings.php:558
3479
+ #: includes/admin/settings/register-settings.php:1235
3480
  msgid "Style Settings"
3481
  msgstr ""
3482
 
3526
  msgstr ""
3527
 
3528
  #: includes/admin/settings/register-settings.php:598
3529
+ #: includes/admin/settings/register-settings.php:1238
3530
  msgid "Tax Settings"
3531
  msgstr ""
3532
 
3638
  msgstr ""
3639
 
3640
  #: includes/admin/settings/register-settings.php:676
3641
+ #: includes/admin/settings/register-settings.php:1245
3642
  msgid "Misc Settings"
3643
  msgstr ""
3644
 
3696
  msgstr ""
3697
 
3698
  #: includes/admin/settings/register-settings.php:712
3699
+ #: includes/admin/settings/register-settings.php:1246
3700
  msgid "Checkout Settings"
3701
  msgstr ""
3702
 
3778
  msgstr ""
3779
 
3780
  #: includes/admin/settings/register-settings.php:760
3781
+ #: includes/admin/settings/register-settings.php:1247
3782
  msgid "Button Text"
3783
  msgstr ""
3784
 
3897
  msgstr ""
3898
 
3899
  #: includes/admin/settings/register-settings.php:839
3900
+ #: includes/admin/settings/register-settings.php:1249
3901
  msgid "Accounting Settings"
3902
  msgstr ""
3903
 
3973
  msgid "If Agree to Terms is checked, enter the agreement terms here."
3974
  msgstr ""
3975
 
3976
+ #: includes/admin/settings/register-settings.php:991
3977
  msgid "Settings updated."
3978
  msgstr ""
3979
 
3980
+ #: includes/admin/settings/register-settings.php:1176
3981
  msgid "Licenses"
3982
  msgstr ""
3983
 
3984
+ #: includes/admin/settings/register-settings.php:1179
3985
  msgid "Misc"
3986
  msgstr ""
3987
 
3988
+ #: includes/admin/settings/register-settings.php:1227
3989
  #: includes/gateways/functions.php:25 includes/gateways/paypal-standard.php:33
3990
  msgid "PayPal Standard"
3991
  msgstr ""
3992
 
3993
+ #: includes/admin/settings/register-settings.php:1232
3994
  msgid "New Sale Notifications"
3995
  msgstr ""
3996
 
3997
+ #: includes/admin/settings/register-settings.php:1241
3998
  msgid "Main"
3999
  msgstr ""
4000
 
4001
+ #: includes/admin/settings/register-settings.php:1250
4002
  msgid "Terms of Agreement"
4003
  msgstr ""
4004
 
4005
+ #: includes/admin/settings/register-settings.php:1642
4006
  msgid "The callback function used for the %s setting is missing."
4007
  msgstr ""
4008
 
4009
+ #: includes/admin/settings/register-settings.php:1777
4010
  msgid "Upload File"
4011
  msgstr ""
4012
 
4013
+ #: includes/admin/settings/register-settings.php:1865
4014
  msgid "Country Wide"
4015
  msgstr ""
4016
 
4017
+ #: includes/admin/settings/register-settings.php:1866
4018
  msgid "Rate"
4019
  msgstr ""
4020
 
4021
+ #: includes/admin/settings/register-settings.php:1883
4022
+ #: includes/admin/settings/register-settings.php:1927
4023
  msgid "Choose a country"
4024
  msgstr ""
4025
 
4026
+ #: includes/admin/settings/register-settings.php:1898
4027
  msgid "Choose a state"
4028
  msgstr ""
4029
 
4030
+ #: includes/admin/settings/register-settings.php:1910
4031
+ #: includes/admin/settings/register-settings.php:1937
4032
  msgid "Apply to whole country"
4033
  msgstr ""
4034
 
4035
+ #: includes/admin/settings/register-settings.php:1913
4036
+ #: includes/admin/settings/register-settings.php:1940
4037
  msgid "Remove Rate"
4038
  msgstr ""
4039
 
4040
+ #: includes/admin/settings/register-settings.php:1945
4041
  msgid "Add Tax Rate"
4042
  msgstr ""
4043
 
4044
+ #: includes/admin/settings/register-settings.php:1998
4045
  msgid ""
4046
  "Your license key expired on %s. Please <a href=\"%s\" "
4047
  "target=\"_blank\">renew your license key</a>."
4048
  msgstr ""
4049
 
4050
+ #: includes/admin/settings/register-settings.php:2011
4051
  msgid ""
4052
  "Your license key has been disabled. Please <a href=\"%s\" "
4053
  "target=\"_blank\">contact support</a> for more information."
4054
  msgstr ""
4055
 
4056
+ #: includes/admin/settings/register-settings.php:2023
4057
  msgid ""
4058
  "Invalid license. Please <a href=\"%s\" target=\"_blank\">visit your account "
4059
  "page</a> and verify it."
4060
  msgstr ""
4061
 
4062
+ #: includes/admin/settings/register-settings.php:2036
4063
  msgid ""
4064
  "Your %s is not active for this URL. Please <a href=\"%s\" "
4065
  "target=\"_blank\">visit your account page</a> to manage your license key "
4066
  "URLs."
4067
  msgstr ""
4068
 
4069
+ #: includes/admin/settings/register-settings.php:2048
4070
  msgid "This appears to be an invalid license key for %s."
4071
  msgstr ""
4072
 
4073
+ #: includes/admin/settings/register-settings.php:2057
4074
  msgid ""
4075
  "Your license key has reached its activation limit. <a href=\"%s\">View "
4076
  "possible upgrades</a> now."
4077
  msgstr ""
4078
 
4079
+ #: includes/admin/settings/register-settings.php:2083
4080
  msgid "License key never expires."
4081
  msgstr ""
4082
 
4083
+ #: includes/admin/settings/register-settings.php:2090
4084
  msgid ""
4085
  "Your license key expires soon! It expires on %s. <a href=\"%s\" "
4086
  "target=\"_blank\">Renew your license key</a>."
4087
  msgstr ""
4088
 
4089
+ #: includes/admin/settings/register-settings.php:2100
4090
  msgid "Your license key expires on %s."
4091
  msgstr ""
4092
 
4093
+ #: includes/admin/settings/register-settings.php:2118
4094
  msgid "To receive updates, please enter your valid %s license key."
4095
  msgstr ""
4096
 
4097
+ #: includes/admin/settings/register-settings.php:2129
4098
  msgid "Deactivate License"
4099
  msgstr ""
4100
 
5020
  msgid "No users found"
5021
  msgstr ""
5022
 
5023
+ #: includes/api/class-edd-api-v2.php:143 includes/api/class-edd-api.php:1045
5024
+ #: includes/api/class-edd-api.php:1239 includes/api/class-edd-api.php:1349
5025
  msgid "Product %s not found!"
5026
  msgstr ""
5027
 
5028
+ #: includes/api/class-edd-api-v2.php:218 includes/api/class-edd-api.php:1150
5029
+ #: includes/api/class-edd-api.php:1256
5030
  msgid "The end date must be later than the start date!"
5031
  msgstr ""
5032
 
5033
+ #: includes/api/class-edd-api-v2.php:319 includes/api/class-edd-api.php:992
5034
  msgid "Customer %s not found!"
5035
  msgstr ""
5036
 
5037
+ #: includes/api/class-edd-api-v2.php:324 includes/api/class-edd-api.php:997
5038
  msgid "No customers found!"
5039
  msgstr ""
5040
 
5041
+ #: includes/api/class-edd-api.php:463
5042
  msgid "You must specify both a token and API key!"
5043
  msgstr ""
5044
 
5045
+ #: includes/api/class-edd-api.php:480
5046
  msgid "Your request could not be authenticated!"
5047
  msgstr ""
5048
 
5049
+ #: includes/api/class-edd-api.php:498
5050
  msgid "Invalid API key!"
5051
  msgstr ""
5052
 
5053
+ #: includes/api/class-edd-api.php:514
5054
  msgid "Invalid API version!"
5055
  msgstr ""
5056
 
5057
+ #: includes/api/class-edd-api.php:688
5058
  msgid "Invalid query!"
5059
  msgstr ""
5060
 
5061
+ #: includes/api/class-edd-api.php:1155 includes/api/class-edd-api.php:1261
5062
  msgid "Invalid or no date range specified!"
5063
  msgstr ""
5064
 
5065
+ #: includes/api/class-edd-api.php:1493
5066
  msgid "No discounts found!"
5067
  msgstr ""
5068
 
5069
+ #: includes/api/class-edd-api.php:1540
5070
  msgid "Discount %s not found!"
5071
  msgstr ""
5072
 
5073
+ #: includes/api/class-edd-api.php:1613
5074
  msgid "No download logs found!"
5075
  msgstr ""
5076
 
5077
+ #: includes/api/class-edd-api.php:1868 includes/user-functions.php:961
5078
  msgid "Easy Digital Downloads API Keys"
5079
  msgstr ""
5080
 
5081
+ #: includes/api/class-edd-api.php:1877 includes/user-functions.php:970
5082
  msgid "Generate API Key"
5083
  msgstr ""
5084
 
5085
+ #: includes/api/class-edd-api.php:1879 includes/user-functions.php:972
5086
  msgid "Public key:"
5087
  msgstr ""
5088
 
5089
+ #: includes/api/class-edd-api.php:1880 includes/user-functions.php:973
5090
  msgid "Secret key:"
5091
  msgstr ""
5092
 
5093
+ #: includes/api/class-edd-api.php:1881 includes/user-functions.php:974
5094
  msgid "Token:"
5095
  msgstr ""
5096
 
5097
+ #: includes/api/class-edd-api.php:1883 includes/user-functions.php:976
5098
  msgid "Revoke API Keys"
5099
  msgstr ""
5100
 
5101
+ #: includes/api/class-edd-api.php:1909
5102
  msgid "User ID Required"
5103
  msgstr ""
5104
 
5105
+ #: includes/api/class-edd-api.php:1921 includes/api/class-edd-api.php:1923
5106
  msgid "You do not have permission to %s API keys for this user"
5107
  msgstr ""
5108
 
5365
  msgid "Select Payment Method"
5366
  msgstr ""
5367
 
5368
+ #: includes/checkout/template.php:718
5369
  msgid "Have a discount code?"
5370
  msgstr ""
5371
 
5372
+ #: includes/checkout/template.php:722
5373
  msgid "Discount"
5374
  msgstr ""
5375
 
5376
+ #: includes/checkout/template.php:725
5377
  msgid "Enter a coupon code if you have one."
5378
  msgstr ""
5379
 
5380
+ #: includes/checkout/template.php:726 includes/process-purchase.php:306
5381
  #: includes/scripts.php:55
5382
  msgid "Enter discount"
5383
  msgstr ""
5384
 
5385
+ #: includes/checkout/template.php:747
5386
  msgid "Agree to Terms?"
5387
  msgstr ""
5388
 
5389
+ #: includes/checkout/template.php:758
5390
  msgid "Show Terms"
5391
  msgstr ""
5392
 
5393
+ #: includes/checkout/template.php:759
5394
  msgid "Hide Terms"
5395
  msgstr ""
5396
 
5397
+ #: includes/checkout/template.php:780
5398
  msgid "Purchase Total:"
5399
  msgstr ""
5400
 
5401
+ #: includes/checkout/template.php:806
5402
  msgid "Go back"
5403
  msgstr ""
5404
 
5405
+ #: includes/checkout/template.php:829
5406
  msgid "Next"
5407
  msgstr ""
5408
 
5409
+ #: includes/checkout/template.php:849
5410
  msgid "Free Download"
5411
  msgstr ""
5412
 
5781
  msgid "Enter valid license key for automatic updates."
5782
  msgstr ""
5783
 
5784
+ #: includes/class-edd-register-meta.php:74
5785
+ msgid "The total earnings for the specified product"
5786
+ msgstr ""
5787
+
5788
+ #: includes/class-edd-register-meta.php:89
5789
+ msgid "The nubmer of sales for the specified product."
5790
+ msgstr ""
5791
+
5792
+ #: includes/class-edd-register-meta.php:103
5793
+ msgid "The price of the product."
5794
+ msgstr ""
5795
+
5796
+ #: includes/class-edd-register-meta.php:118
5797
+ msgid "An array of variable prices for the product."
5798
+ msgstr ""
5799
+
5800
+ #: includes/class-edd-register-meta.php:133
5801
+ msgid "The files associated with the product, available for download."
5802
+ msgstr ""
5803
+
5804
+ #: includes/class-edd-register-meta.php:147
5805
+ msgid "An array of product IDs to associate with a bundle."
5806
+ msgstr ""
5807
+
5808
+ #: includes/class-edd-register-meta.php:162
5809
+ msgid ""
5810
+ "Defines how this products `Purchase` button should behave, either add to "
5811
+ "cart or buy now."
5812
+ msgstr ""
5813
+
5814
+ #: includes/class-edd-register-meta.php:177
5815
+ msgid ""
5816
+ "When variable pricing is enabled, this value defines which option should be "
5817
+ "chosen by default."
5818
+ msgstr ""
5819
+
5820
+ #: includes/class-edd-register-meta.php:202
5821
+ msgid "The email address associated with the purchase."
5822
+ msgstr ""
5823
+
5824
+ #: includes/class-edd-register-meta.php:217
5825
+ msgid "The Customer ID associated with the payment."
5826
+ msgstr ""
5827
+
5828
+ #: includes/class-edd-register-meta.php:231
5829
+ msgid "The User ID assocaited with the payment."
5830
+ msgstr ""
5831
+
5832
+ #: includes/class-edd-register-meta.php:245
5833
+ msgid "The IP address the payment was made from."
5834
+ msgstr ""
5835
+
5836
+ #: includes/class-edd-register-meta.php:259
5837
+ msgid "The unique purchase key for this payment."
5838
+ msgstr ""
5839
+
5840
+ #: includes/class-edd-register-meta.php:273
5841
+ msgid "The purchase total for this payment."
5842
+ msgstr ""
5843
+
5844
+ #: includes/class-edd-register-meta.php:287
5845
+ msgid "Identifes if the purchase was made in Test or Live mode."
5846
+ msgstr ""
5847
+
5848
+ #: includes/class-edd-register-meta.php:301
5849
+ msgid "The registered gateway that was used to process this payment."
5850
+ msgstr ""
5851
+
5852
+ #: includes/class-edd-register-meta.php:315
5853
+ msgid ""
5854
+ "Array of payment meta that contains cart details, downloads, amounts, "
5855
+ "taxes, discounts, and subtotals, etc."
5856
+ msgstr ""
5857
+
5858
+ #: includes/class-edd-register-meta.php:329
5859
+ msgid "The total amount of tax paid for this payment."
5860
+ msgstr ""
5861
+
5862
+ #: includes/class-edd-register-meta.php:343
5863
+ msgid "The date this payment was changed to the `completed` status."
5864
+ msgstr ""
5865
+
5866
  #: includes/class-edd-roles.php:45
5867
  msgid "Shop Manager"
5868
  msgstr ""
6740
  msgid "Purchase History"
6741
  msgstr ""
6742
 
6743
+ #: includes/login-register.php:92
6744
  msgid "The password you entered is incorrect"
6745
  msgstr ""
6746
 
6747
+ #: includes/login-register.php:95 includes/process-purchase.php:612
6748
  msgid "The username you entered does not exist"
6749
  msgstr ""
6750
 
6751
+ #: includes/login-register.php:149 includes/login-register.php:157
6752
  #: includes/process-purchase.php:497
6753
  msgid "Invalid username"
6754
  msgstr ""
6755
 
6756
+ #: includes/login-register.php:153 includes/process-purchase.php:490
6757
  msgid "Username already taken"
6758
  msgstr ""
6759
 
6760
+ #: includes/login-register.php:161
6761
  msgid "Email address already taken"
6762
  msgstr ""
6763
 
6764
+ #: includes/login-register.php:165 includes/process-purchase.php:437
6765
  #: includes/process-purchase.php:512 includes/process-purchase.php:645
6766
  msgid "Invalid email"
6767
  msgstr ""
6768
 
6769
+ #: includes/login-register.php:169
6770
  msgid "Invalid payment email"
6771
  msgstr ""
6772
 
6773
+ #: includes/login-register.php:173
6774
  msgid "Please enter a password"
6775
  msgstr ""
6776
 
6777
+ #: includes/login-register.php:177
6778
  msgid "Passwords do not match"
6779
  msgstr ""
6780
 
7728
  msgid "Log into Your Account"
7729
  msgstr ""
7730
 
7731
+ #: templates/shortcode-login.php:15
7732
+ msgid "Username or Email"
7733
+ msgstr ""
7734
+
7735
+ #: templates/shortcode-login.php:23
7736
+ msgid "Remember Me"
7737
+ msgstr ""
7738
+
7739
+ #: templates/shortcode-login.php:29
7740
  msgid "Log In"
7741
  msgstr ""
7742
 
7743
+ #: templates/shortcode-login.php:33
7744
  msgid "Lost Password?"
7745
  msgstr ""
7746
 
7747
+ #: templates/shortcode-login.php:40
7748
  msgid "You are already logged in"
7749
  msgstr ""
7750
 
7885
  msgid "to"
7886
  msgstr ""
7887
 
7888
+ #: includes/checkout/template.php:718
7889
  msgctxt "Entering a discount code"
7890
  msgid "Click to enter it"
7891
  msgstr ""
7892
 
7893
+ #: includes/checkout/template.php:727
7894
  msgctxt "Apply discount at checkout"
7895
  msgid "Apply"
7896
  msgstr ""
readme.txt CHANGED
@@ -5,8 +5,8 @@ Contributors: easydigitaldownloads, mordauk, sunnyratilal, chriscct7, section214
5
  Donate link: https://pippinsplugins.com/support-the-site
6
  Tags: download, downloads, e-store, eshop, digital downloads, e-commerce, wp-ecommerce, wp ecommerce
7
  Requires at least: 4.0
8
- Tested up to: 4.6
9
- Stable Tag: 2.6.4
10
 
11
  License: GNU Version 2 or Any Later Version
12
 
@@ -214,6 +214,24 @@ Yes, through the addition of one or more of the add-on payment gateways, you can
214
 
215
  == Changelog ==
216
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
217
  = 2.6.4, July 6, 2016 =
218
  * Fix: Negative fees getting included twice with PayPal Standard
219
  * Fix: Non-standard status in the product import caused silent failure.
5
  Donate link: https://pippinsplugins.com/support-the-site
6
  Tags: download, downloads, e-store, eshop, digital downloads, e-commerce, wp-ecommerce, wp ecommerce
7
  Requires at least: 4.0
8
+ Tested up to: 4.7
9
+ Stable Tag: 2.6.5
10
 
11
  License: GNU Version 2 or Any Later Version
12
 
214
 
215
  == Changelog ==
216
 
217
+ = 2.6.5, July 25, 2016 =
218
+ * Fix: Incorrect parameters passed to edd_is_checkout()
219
+ * Fix: Some records skipped during CSV import
220
+ * Fix: update_option() cannot be used to update EDD settings
221
+ * Fix: Incorrect date format used in CSV payment import
222
+ * Fix: Product-specific sales / earnings graphs show no earnings
223
+ * Fix: Spelling errors in PHPDocs
224
+ * Fix: Resend Receipt box visible even when payment is not Complete
225
+ * Fix: File URLs split on / during product import
226
+ * Fix: Setting display:none on variable price options breaks add to cart processing
227
+ * Fix: Prices can be set as negative
228
+ * Fix: edd_get_variable_prices() returns prices even when variable prices are disabled
229
+ * Tweak: Added filters to payment gateway labels on checkout screen
230
+ * Tweak: Modified how metadata is registered in anticipation of WordPress 4.6
231
+ * Tweak: Changed role required for deleting payment records to delete_shop_payments
232
+ * New: Added Remember Me option to log in form
233
+ * New: Added /info/ endpoint to REST API
234
+
235
  = 2.6.4, July 6, 2016 =
236
  * Fix: Negative fees getting included twice with PayPal Standard
237
  * Fix: Non-standard status in the product import caused silent failure.
templates/edd.css CHANGED
@@ -246,7 +246,8 @@
246
  #edd_checkout_form_wrap textarea,
247
  #edd_checkout_form_wrap input[type="text"],
248
  #edd_checkout_form_wrap input[type="email"],
249
- #edd_checkout_form_wrap input[type="password"] {
 
250
  padding: 4px 6px;
251
  }
252
  #edd_checkout_form_wrap input[type="radio"] {
246
  #edd_checkout_form_wrap textarea,
247
  #edd_checkout_form_wrap input[type="text"],
248
  #edd_checkout_form_wrap input[type="email"],
249
+ #edd_checkout_form_wrap input[type="password"],
250
+ #edd_checkout_form_wrap input[type="tel"] {
251
  padding: 4px 6px;
252
  }
253
  #edd_checkout_form_wrap input[type="radio"] {
templates/edd.min.css CHANGED
@@ -1 +1 @@
1
- @charset "UTF-8";@font-face{font-family:EDD-Icons;src:url(fonts/EDD-Icons.eot);src:url(fonts/EDD-Icons.eot?#iefix) format('embedded-opentype'),url(fonts/EDD-Icons.woff) format('woff'),url(fonts/EDD-Icons.ttf) format('truetype'),url(fonts/EDD-Icons.svg#EDD-Icons) format('svg');font-weight:400;font-style:normal}[class*=edd-icon-],[class*=" edd-icon-"]{font-family:EDD-Icons;speak:none;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;width:auto;height:auto;line-height:1;-webkit-font-smoothing:antialiased}[class*=edd-icon-]:before,[class*=" edd-icon-"]:before{text-decoration:inherit;display:inline-block;cursor:default;speak:none}.edd-icon-spinner:before{content:"\71"}.edd-icon-ok:before{content:"\77"}.edd-icon-remove:before{content:"\65"}.edd-icon-remove-circle:before{content:"\72"}.edd-icon-ok-circle:before{content:"\74"}#edd_checkout_form_wrap label:after,.edd_clearfix:after{visibility:hidden;float:none;text-indent:-9999px;content:".";clear:both}.edd-icon-spin{display:inline-block;-moz-animation:edd-icon-spin 2s infinite linear;-o-animation:edd-icon-spin 2s infinite linear;-webkit-animation:edd-icon-spin 2s infinite linear;animation:edd-icon-spin 2s infinite linear}@-moz-keyframes edd-icon-spin{0%{-moz-transform:rotate(0)}100%{-moz-transform:rotate(359deg)}}@-webkit-keyframes edd-icon-spin{0%{-webkit-transform:rotate(0)}100%{-webkit-transform:rotate(359deg)}}@-o-keyframes edd-icon-spin{0%{-o-transform:rotate(0)}100%{-o-transform:rotate(359deg)}}@-ms-keyframes edd-icon-spin{0%{-ms-transform:rotate(0)}100%{-ms-transform:rotate(359deg)}}@keyframes edd-icon-spin{0%{transform:rotate(0)}100%{transform:rotate(359deg)}}.edd_clearfix:after{display:block}#edd_checkout_cart{text-align:left;width:100%;border:none;margin:0 0 21px;table-layout:auto}#edd_checkout_cart td,#edd_checkout_cart th{text-align:left;border:1px solid #eee;color:#666;padding:.5em 1.387em}#edd_checkout_cart .edd_cart_header_row th{background:#fafafa;padding:1.387em}#edd_checkout_cart .edd_cart_discount_row th,#edd_checkout_cart .edd_cart_tax_row th{background:0 0}#edd_checkout_cart th{font-weight:700}#edd_checkout_cart td{line-height:25px;vertical-align:middle;background:#fff}#edd_checkout_cart td.edd_cart_actions,#edd_checkout_cart td:last-child,#edd_checkout_cart th.edd_cart_actions,#edd_checkout_cart th.edd_cart_total,#edd_checkout_cart th:last-child{text-align:right}#edd_checkout_cart td img{float:left;margin:0 8px 0 0;background:0 0;padding:0;border:none}#edd_checkout_cart input.edd-item-quantity{width:3em;padding:2px}#edd_checkout_cart .edd_discount{display:inline-block;margin-left:5px}.edd_discount_remove{display:inline-block;width:10px;height:11px;background:url(images/xit.gif) no-repeat;position:relative;top:3px}.edd_discount_remove:hover{background-position:-10px 0}#edd_checkout_cart br{display:none}#edd_checkout_cart a.edd-cart-saving-button{font-weight:400;text-decoration:none}#edd_checkout_form_wrap legend{display:block;font-size:120%;line-height:1;font-weight:700;width:100%;margin:0 0 21px;padding:0}#edd_checkout_form_wrap label{font-weight:700;display:block;position:relative;line-height:100%;font-size:95%;margin:0 0 5px}#edd_checkout_form_wrap label:after{display:block;height:0}#edd_checkout_form_wrap span.edd-description{color:#666;font-size:80%;display:block;margin:0 0 5px}#edd_checkout_form_wrap input.edd-input,#edd_checkout_form_wrap textarea.edd-input{display:inline-block;width:70%}#edd_checkout_form_wrap select.edd-select{display:block;width:60%}#edd_checkout_form_wrap select.edd-select.edd-select-small{display:inline;width:auto}#edd_checkout_form_wrap input.edd-input.error,#edd_checkout_form_wrap textarea.edd-input.error{border-color:#c4554e}#edd_checkout_form_wrap>p{margin:0 0 21px}#edd_checkout_form_wrap span.edd-required-indicator{color:#b94a48;display:inline}#edd_checkout_form_wrap input[type=text],#edd_checkout_form_wrap input[type=email],#edd_checkout_form_wrap input[type=password],#edd_checkout_form_wrap textarea{padding:4px 6px}#edd_checkout_form_wrap input[type=radio]{border:none;margin-right:5px}#edd_checkout_form_wrap input[type=checkbox]{display:inline-block;margin:0 5px 0 0}#edd_checkout_form_wrap input[type=checkbox]+label,#edd_checkout_form_wrap input[type=checkbox]+label:after{display:inline}#edd_checkout_form_wrap .edd-payment-icons{height:32px;display:block;margin:0 0 8px}#edd_checkout_form_wrap .edd-payment-icons img.payment-icon{max-height:32px;width:auto;margin:0 3px 0 0;float:left;background:0 0;padding:0;border:none;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}#edd_checkout_form_wrap #edd-payment-mode-wrap label{display:inline-block;margin:0 20px 0 0}#edd_checkout_form_wrap #edd-payment-mode-wrap .edd-payment-mode-label{font-weight:700;display:inline-block;position:relative;margin-bottom:5px}#edd_checkout_form_wrap fieldset{border:1px solid #eee;padding:1.387em;margin:0 0 21px}#edd_checkout_form_wrap #edd_discount_code,#edd_checkout_form_wrap #edd_purchase_submit,#edd_checkout_form_wrap #edd_register_account_fields{padding:0;border:none}#edd_checkout_form_wrap fieldset fieldset{margin:0;border:none;padding:0}#edd_checkout_form_wrap #edd-login-account-wrap,#edd_checkout_form_wrap #edd-new-account-wrap,#edd_checkout_form_wrap #edd_final_total_wrap,#edd_checkout_form_wrap #edd_show_discount,#edd_checkout_form_wrap .edd-cart-adjustment{background:#fafafa;color:#666;padding:.5em 1.387em}#edd_checkout_form_wrap #edd-discount-code-wrap,#edd_checkout_form_wrap #edd_final_total_wrap,#edd_checkout_form_wrap #edd_show_discount{border:1px solid #eee}#edd_checkout_form_wrap .edd-cart-adjustment{padding:1.387em}#edd_checkout_form_wrap .edd-cart-adjustment input.edd-input,#edd_checkout_form_wrap .edd-cart-adjustment input.edd-submit{display:inline-block}#edd_checkout_form_wrap .edd-cart-adjustment input.edd-submit{padding:3px 12px;margin-bottom:2px}#edd_checkout_form_wrap #edd_purchase_final_total p,#edd_checkout_form_wrap fieldset#edd_register_account_fields p.edd_login_password,#edd_checkout_form_wrap fieldset#edd_register_account_fields p.edd_register_password{margin:0}#edd_checkout_form_wrap #edd-discount-error-wrap{width:100%;display:inline-block;margin:1em 0 0}#edd_checkout_form_wrap #edd-login-account-wrap,#edd_checkout_form_wrap #edd-new-account-wrap{margin:-1.387em -1.387em 21px;border-left:none;border-right:none;border-top:none}#edd_checkout_form_wrap #edd_payment_mode_select,#edd_checkout_form_wrap fieldset#edd_register_fields #edd_checkout_user_info{margin-bottom:21px}#edd_checkout_form_wrap fieldset#edd_register_account_fields legend{padding-top:11px}#edd_checkout_form_wrap fieldset#edd_cc_fields{border:1px solid #f0f0f0;background:#f9f9f9;position:relative}#edd_checkout_form_wrap fieldset#edd_cc_fields legend{border:none;padding:0}#edd_checkout_form_wrap fieldset p:last-child{margin-bottom:0}#edd_checkout_form_wrap fieldset#edd_cc_fields #edd-card-number-wrap{margin-top:5px}#edd_checkout_form_wrap #edd_purchase_final_total{margin:21px 0}#edd_secure_site_wrapper{padding:4px 4px 4px 0;font-weight:700}#edd_secure_site_wrapper span.padlock:before{content:'\f160';display:inline-block;-webkit-font-smoothing:antialiased;font:400 20px/1 dashicons;vertical-align:top}#edd_checkout_form_wrap input.edd-input.card-number.valid{background-image:url(images/tick.png);background-repeat:no-repeat;background-position:98% 50%}#edd_checkout_form_wrap span.exp-divider{display:inline}#edd_checkout_form_wrap span.card-type{position:absolute;top:-2px;right:0;width:43px;height:32px;background-size:43px 32px!important}#edd_checkout_form_wrap span.card-type.off{display:none}#edd_checkout_form_wrap span.card-type.visa{background:url(images/icons/visa.gif) no-repeat}#edd_checkout_form_wrap span.card-type.mastercard{background:url(images/icons/mastercard.gif) no-repeat}#edd_checkout_form_wrap span.card-type.discover{background:url(images/icons/discover.gif) no-repeat}#edd_checkout_form_wrap span.card-type.amex{background:url(images/icons/americanexpress.gif) no-repeat}#edd_checkeout_form_wrap .edd-cart-ajax,#edd_checkout_form_wrap #edd-discount-loader{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.edd-amazon-profile-wrapper{font-size:12px}.edd-amazon-profile-name{font-weight:600}.edd-amazon-logout{font-size:10px;line-height:12px}.edd-amazon-logout a{cursor:pointer}#edd-amazon-address-box,#edd-amazon-wallet-box{height:228px;width:350px}#edd-amazon-address-box{margin-bottom:15px}@media only screen and (min-width:768px){#edd-amazon-address-box,#edd-amazon-wallet-box{width:100%;height:228px}}.edd_purchase_submit_wrapper{position:relative}.edd_purchase_submit_wrapper a.edd-add-to-cart{text-decoration:none;display:none;position:relative;overflow:hidden}.edd_purchase_submit_wrapper a.edd-add-to-cart.edd-has-js{display:inline-block}.edd_purchase_submit_wrapper .edd-cart-ajax{display:none;position:relative;left:-35px}.edd-submit.button.edd-ajax-loading{padding-right:30px}.edd-add-to-cart .edd-add-to-cart-label{opacity:1;filter:alpha(opacity=100)}.edd-add-to-cart[data-edd-loading] .edd-add-to-cart-label,a.edd-add-to-cart .edd-loading{opacity:0;filter:alpha(opacity=0)}a.edd-add-to-cart .edd-loading{position:absolute;left:50%;top:50%}a.edd-add-to-cart .edd-add-to-cart-label,a.edd-add-to-cart .edd-loading{-webkit-transition:.1s opacity!important;-moz-transition:.1s opacity!important;-ms-transition:.1s opacity!important;-o-transition:.1s opacity!important;transition:.1s opacity!important}.edd-add-to-cart[data-edd-loading] .edd-loading{opacity:1;filter:alpha(opacity=100)}.edd-cart-added-alert{color:#567622;display:block;position:absolute}.edd-cart-ajax,body.edd_receipt_page:before{position:relative}.edd_form input.edd-input.required,.edd_form select.edd-select.required{color:#000}body.edd_receipt_page{background-color:#fff;color:#141412;margin:0;font-family:Helvetica,sans-serif;font-size:12px}#edd_user_history .edd_purchase_status.cancelled,#edd_user_history .edd_purchase_status.failed,#edd_user_history .edd_purchase_status.pending,#edd_user_history .edd_purchase_status.revoked,table#edd_purchase_receipt .edd_receipt_payment_status.cancelled,table#edd_purchase_receipt .edd_receipt_payment_status.failed,table#edd_purchase_receipt .edd_receipt_payment_status.pending,table#edd_purchase_receipt .edd_receipt_payment_status.revoked{color:#f73f2e}body.edd_receipt_page #edd_receipt_wrapper{width:660px;margin:0 auto;padding:50px 0}body.edd_receipt_page table{display:table;width:100%;border-bottom:1px solid #ededed;border-collapse:collapse;border-spacing:0;font-size:14px;line-height:2;margin:0 0 20px}body.edd_receipt_page td,body.edd_receipt_page th{display:table-cell;text-align:left;border-top:1px solid #ededed;padding:6px 10px;font-weight:400}body.edd_receipt_page th{font-weight:700;text-transform:uppercase}body.edd_receipt_page h3{font-size:22px;margin:40px 0 5px;clear:both;display:block;font-weight:700}#edd_login_form .edd-input,#edd_login_form label,#edd_profile_editor_form label,#edd_register_form .edd-input,#edd_register_form label{display:inline-block;width:200px}body.edd_receipt_page li{list-style:none}table#edd_purchase_receipt,table#edd_purchase_receipt_products{width:100%}table#edd_purchase_receipt td,table#edd_purchase_receipt th,table#edd_purchase_receipt_products td,table#edd_purchase_receipt_products th{text-align:left}table#edd_purchase_receipt_products li{list-style:none;margin:0 0 8px 10px}table#edd_purchase_receipt ul,table#edd_purchase_receipt_products ul.edd_purchase_receipt_files{margin:0;padding:0}table#edd_purchase_receipt li.edd_download_file{list-style:none;margin:0 0 8px}table#edd_purchase_receipt_products .edd_purchase_receipt_product_notes{font-style:italic}table#edd_purchase_receipt_products .edd_purchase_receipt_product_name{font-weight:700}table#edd_purchase_receipt_products .edd_bundled_product_name{font-style:italic;font-weight:700}#edd_user_history{text-align:left;width:100%;border-top:1px solid #f0f0f0;border-bottom:none}#edd_user_history td,#edd_user_history th{text-align:left;padding:3px 5px;border-bottom:1px solid #f0f0f0;border-top:none}#edd_user_history th{font-weight:700;background:#f5f5f5}#edd_user_history td{line-height:25px;vertical-align:middle}#edd_profile_editor_form p{margin-bottom:8px}#edd_profile_editor_form .edd-profile-emails{list-style-type:none;display:inline-table;margin-left:0}#edd_profile_editor_form .edd-profile-email{width:auto}#edd_profile_editor_form .edd-profile-email .actions{display:none}#edd_profile_editor_form .edd-profile-email:hover>span{display:inline-block}.edd_added_to_cart_alert{padding:5px;font-size:14px;border:1px solid #046a9e;background:#9ecce2;color:#333;margin:8px 0}.edd_added_to_cart_alert a.edd_alert_checkout_link{color:#000!important}input.edd_submit_plain{background:0 0!important;border:none!important;padding:0!important;display:inline;cursor:pointer}.single-download .edd_download_purchase_form{margin-bottom:1.387em}.edd_download_purchase_form .edd_download_quantity_wrapper{margin:0 0 .5em}.edd_download_purchase_form .edd_download_quantity_wrapper .edd-item-quantity{width:75px}.edd_download_purchase_form .edd_price_options{margin:0 0 15px}.edd_download_purchase_form .edd_price_options ul{margin:0;padding:0;list-style:none}.edd_download_purchase_form .edd_price_options li{display:block;padding:0;margin:0}.edd_download_purchase_form .edd_price_options span{display:inline;padding:0;margin:0}.edd_download_purchase_form .edd_price_options .edd_download_quantity_wrapper{padding-left:18px}.edd_download_purchase_form .edd_price_options .edd_download_quantity_wrapper *{font-size:80%}.edd_download_purchase_form .edd_price_options input.edd-item-quantity{display:inline;width:50px;max-width:90%}#edd-purchase-button,.edd-submit,input[type=submit].edd-submit{display:inline-block;padding:6px 12px;margin:0;font-size:14px;font-weight:400;line-height:1.428571429;text-align:center;white-space:nowrap;vertical-align:middle;cursor:pointer;border:1px solid #ccc;border-radius:4px;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none}.edd-submit.button:focus,input[type=submit].edd-submit:focus{outline:#333 dotted thin;outline:-webkit-focus-ring-color auto 5px;outline-offset:-2px}.edd-submit.button:focus,.edd-submit.button:hover,input[type=submit].edd-submit:focus,input[type=submit].edd-submit:hover{color:#333;text-decoration:none}.edd-submit.button:active{background-image:none;outline:0;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.edd-submit.plain{padding:0}.edd-submit.button,.edd-submit.button.gray,.edd-submit.button:visited{color:#333;background:#f0f0f0;border-color:#ccc}.edd-submit.button.gray:active,.edd-submit.button.gray:focus,.edd-submit.button.gray:hover,.edd-submit.button:active,.edd-submit.button:focus,.edd-submit.button:hover{color:#333;background:#ebebeb;border-color:#adadad}.edd-submit.button.gray:active{background-image:none}.edd-submit.button.white{color:#333;background:#fff;border-color:#ccc}.edd-submit.button.white:active,.edd-submit.button.white:focus,.edd-submit.button.white:hover{color:#333;background:#ebebeb;border-color:#adadad}.edd-submit.button.white:active{background-image:none}.edd-submit.button.blue{color:#fff;background:#428bca;border-color:#357ebd}.edd-submit.button.blue.active,.edd-submit.button.blue:focus,.edd-submit.button.blue:hover{color:#fff;background:#3276b1;border-color:#285e8e}.edd-submit.button.blue.active{background-image:none}.edd-submit.button.red{color:#fff;background:#d9534f;border-color:#d43f3a}.edd-submit.button.red:active,.edd-submit.button.red:focus,.edd-submit.button.red:hover{color:#fff;background:#d2322d;border-color:#ac2925}.edd-submit.button.red:active{background-image:none}.edd-submit.button.green{color:#fff;background:#5cb85c;border-color:#4cae4c}.edd-submit.button.green:active,.edd-submit.button.green:focus,.edd-submit.button.green:hover{color:#fff;background:#47a447;border-color:#398439}.edd-submit.button.green:active{background-image:none}.edd-submit.button.yellow{color:#fff;background:#f0ad4e;border-color:#eea236}.edd-submit.button.yellow:active,.edd-submit.button.yellow:focus,.edd-submit.button.yellow:hover{color:#fff;background:#ed9c28;border-color:#d58512}.edd-submit.button.yellow:active{background-image:none}.edd-submit.button.orange{color:#fff;background:#ed9c28;border-color:#e3921e}.edd-submit.button.orange:active,.edd-submit.button.orange:focus,.edd-submit.button.orange:hover{color:#fff;background:#e59016;border-color:#d58512}.edd-submit.button.orange:active{background-image:none}.edd-submit.button.dark-gray{color:#fff;background:#363636;border-color:#222}.edd-submit.button.dark-gray:active,.edd-submit.button.dark-gray:focus,.edd-submit.button.dark-gray:hover{color:#fff;background:#333;border-color:#adadad}.edd-submit.button.dark-gray:active{background-image:none}.edd_download{float:left}.edd_download_columns_1 .edd_download{width:100%}.edd_download_columns_2 .edd_download{width:50%}.edd_download_columns_0 .edd_download,.edd_download_columns_3 .edd_download{width:33%}.edd_download_columns_4 .edd_download{width:25%}.edd_download_columns_5 .edd_download{width:20%}.edd_download_columns_6 .edd_download{width:16.6%}.edd_download_inner{padding:0 8px 8px;margin:0 0 10px}.edd_download_image{max-width:100%}.edd_download .edd_price{margin-bottom:10px}.edd-cart-ajax{margin:0 8px 0 4px;top:2px;background:0 0;border:none;padding:0}.edd-cart-number-of-items{font-style:italic;color:grey}.edd-cart-meta.edd_subtotal{font-weight:700;font-style:italic}.edd-cart-meta.edd_cart_tax{font-size:1em;font-style:italic}.edd-cart-meta.edd_cart_tax::before{font-style:normal}.edd-cart-meta.edd_total{font-weight:700}.edd-cart-meta{padding:2px 5px}.edd-cart-meta.edd_subtotal,.edd-cart-meta.edd_total{background-color:#f9f9f9}.edd_errors:not(.edd-alert){-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px;border:1px solid #E6DB55;margin:0 0 21px;background:#FFFFE0;color:#333}.edd_error{padding:10px}p.edd_error{margin:0!important}.edd_success:not(.edd-alert){-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px;border:1px solid #b3ce89;margin:20px 0;background:#d5eab3;color:#567622;padding:6px 8px;box-shadow:inset 0 1px 0 rgba(255,255,255,.7)}.edd-alert{-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px;margin-bottom:20px;padding:10px;border:1px solid transparent;vertical-align:middle}.edd-alert p{padding:0}.edd-alert p:not(:last-child){margin-bottom:5px}.edd-alert p:last-child{margin-bottom:0}.edd-alert-error{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.edd-alert-success{background-color:#dff0d8;border-color:#d6e9c6;color:#3c763d}.edd-alert-info{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.edd-alert-warn{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}
1
+ @charset "UTF-8";@font-face{font-family:EDD-Icons;src:url(fonts/EDD-Icons.eot);src:url(fonts/EDD-Icons.eot?#iefix) format('embedded-opentype'),url(fonts/EDD-Icons.woff) format('woff'),url(fonts/EDD-Icons.ttf) format('truetype'),url(fonts/EDD-Icons.svg#EDD-Icons) format('svg');font-weight:400;font-style:normal}[class*=edd-icon-],[class*=" edd-icon-"]{font-family:EDD-Icons;speak:none;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;width:auto;height:auto;line-height:1;-webkit-font-smoothing:antialiased}[class*=edd-icon-]:before,[class*=" edd-icon-"]:before{text-decoration:inherit;display:inline-block;cursor:default;speak:none}.edd-icon-spinner:before{content:"\71"}.edd-icon-ok:before{content:"\77"}.edd-icon-remove:before{content:"\65"}.edd-icon-remove-circle:before{content:"\72"}.edd-icon-ok-circle:before{content:"\74"}#edd_checkout_form_wrap label:after,.edd_clearfix:after{visibility:hidden;float:none;text-indent:-9999px;content:".";clear:both}.edd-icon-spin{display:inline-block;-moz-animation:edd-icon-spin 2s infinite linear;-o-animation:edd-icon-spin 2s infinite linear;-webkit-animation:edd-icon-spin 2s infinite linear;animation:edd-icon-spin 2s infinite linear}@-moz-keyframes edd-icon-spin{0%{-moz-transform:rotate(0)}100%{-moz-transform:rotate(359deg)}}@-webkit-keyframes edd-icon-spin{0%{-webkit-transform:rotate(0)}100%{-webkit-transform:rotate(359deg)}}@-o-keyframes edd-icon-spin{0%{-o-transform:rotate(0)}100%{-o-transform:rotate(359deg)}}@-ms-keyframes edd-icon-spin{0%{-ms-transform:rotate(0)}100%{-ms-transform:rotate(359deg)}}@keyframes edd-icon-spin{0%{transform:rotate(0)}100%{transform:rotate(359deg)}}.edd_clearfix:after{display:block}#edd_checkout_cart{text-align:left;width:100%;border:none;margin:0 0 21px;table-layout:auto}#edd_checkout_cart td,#edd_checkout_cart th{text-align:left;border:1px solid #eee;color:#666;padding:.5em 1.387em}#edd_checkout_cart .edd_cart_header_row th{background:#fafafa;padding:1.387em}#edd_checkout_cart .edd_cart_discount_row th,#edd_checkout_cart .edd_cart_tax_row th{background:0 0}#edd_checkout_cart th{font-weight:700}#edd_checkout_cart td{line-height:25px;vertical-align:middle;background:#fff}#edd_checkout_cart td.edd_cart_actions,#edd_checkout_cart td:last-child,#edd_checkout_cart th.edd_cart_actions,#edd_checkout_cart th.edd_cart_total,#edd_checkout_cart th:last-child{text-align:right}#edd_checkout_cart td img{float:left;margin:0 8px 0 0;background:0 0;padding:0;border:none}#edd_checkout_cart input.edd-item-quantity{width:3em;padding:2px}#edd_checkout_cart .edd_discount{display:inline-block;margin-left:5px}.edd_discount_remove{display:inline-block;width:10px;height:11px;background:url(images/xit.gif) no-repeat;position:relative;top:3px}.edd_discount_remove:hover{background-position:-10px 0}#edd_checkout_cart br{display:none}#edd_checkout_cart a.edd-cart-saving-button{font-weight:400;text-decoration:none}#edd_checkout_form_wrap legend{display:block;font-size:120%;line-height:1;font-weight:700;width:100%;margin:0 0 21px;padding:0}#edd_checkout_form_wrap label{font-weight:700;display:block;position:relative;line-height:100%;font-size:95%;margin:0 0 5px}#edd_checkout_form_wrap label:after{display:block;height:0}#edd_checkout_form_wrap span.edd-description{color:#666;font-size:80%;display:block;margin:0 0 5px}#edd_checkout_form_wrap input.edd-input,#edd_checkout_form_wrap textarea.edd-input{display:inline-block;width:70%}#edd_checkout_form_wrap select.edd-select{display:block;width:60%}#edd_checkout_form_wrap select.edd-select.edd-select-small{display:inline;width:auto}#edd_checkout_form_wrap input.edd-input.error,#edd_checkout_form_wrap textarea.edd-input.error{border-color:#c4554e}#edd_checkout_form_wrap>p{margin:0 0 21px}#edd_checkout_form_wrap span.edd-required-indicator{color:#b94a48;display:inline}#edd_checkout_form_wrap input[type=text],#edd_checkout_form_wrap input[type=email],#edd_checkout_form_wrap input[type=password],#edd_checkout_form_wrap input[type=tel],#edd_checkout_form_wrap textarea{padding:4px 6px}#edd_checkout_form_wrap input[type=radio]{border:none;margin-right:5px}#edd_checkout_form_wrap input[type=checkbox]{display:inline-block;margin:0 5px 0 0}#edd_checkout_form_wrap input[type=checkbox]+label,#edd_checkout_form_wrap input[type=checkbox]+label:after{display:inline}#edd_checkout_form_wrap .edd-payment-icons{height:32px;display:block;margin:0 0 8px}#edd_checkout_form_wrap .edd-payment-icons img.payment-icon{max-height:32px;width:auto;margin:0 3px 0 0;float:left;background:0 0;padding:0;border:none;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}#edd_checkout_form_wrap #edd-payment-mode-wrap label{display:inline-block;margin:0 20px 0 0}#edd_checkout_form_wrap #edd-payment-mode-wrap .edd-payment-mode-label{font-weight:700;display:inline-block;position:relative;margin-bottom:5px}#edd_checkout_form_wrap fieldset{border:1px solid #eee;padding:1.387em;margin:0 0 21px}#edd_checkout_form_wrap #edd_discount_code,#edd_checkout_form_wrap #edd_purchase_submit,#edd_checkout_form_wrap #edd_register_account_fields{padding:0;border:none}#edd_checkout_form_wrap fieldset fieldset{margin:0;border:none;padding:0}#edd_checkout_form_wrap #edd-login-account-wrap,#edd_checkout_form_wrap #edd-new-account-wrap,#edd_checkout_form_wrap #edd_final_total_wrap,#edd_checkout_form_wrap #edd_show_discount,#edd_checkout_form_wrap .edd-cart-adjustment{background:#fafafa;color:#666;padding:.5em 1.387em}#edd_checkout_form_wrap #edd-discount-code-wrap,#edd_checkout_form_wrap #edd_final_total_wrap,#edd_checkout_form_wrap #edd_show_discount{border:1px solid #eee}#edd_checkout_form_wrap .edd-cart-adjustment{padding:1.387em}#edd_checkout_form_wrap .edd-cart-adjustment input.edd-input,#edd_checkout_form_wrap .edd-cart-adjustment input.edd-submit{display:inline-block}#edd_checkout_form_wrap .edd-cart-adjustment input.edd-submit{padding:3px 12px;margin-bottom:2px}#edd_checkout_form_wrap #edd_purchase_final_total p,#edd_checkout_form_wrap fieldset#edd_register_account_fields p.edd_login_password,#edd_checkout_form_wrap fieldset#edd_register_account_fields p.edd_register_password{margin:0}#edd_checkout_form_wrap #edd-discount-error-wrap{width:100%;display:inline-block;margin:1em 0 0}#edd_checkout_form_wrap #edd-login-account-wrap,#edd_checkout_form_wrap #edd-new-account-wrap{margin:-1.387em -1.387em 21px;border-left:none;border-right:none;border-top:none}#edd_checkout_form_wrap #edd_payment_mode_select,#edd_checkout_form_wrap fieldset#edd_register_fields #edd_checkout_user_info{margin-bottom:21px}#edd_checkout_form_wrap fieldset#edd_register_account_fields legend{padding-top:11px}#edd_checkout_form_wrap fieldset#edd_cc_fields{border:1px solid #f0f0f0;background:#f9f9f9;position:relative}#edd_checkout_form_wrap fieldset#edd_cc_fields legend{border:none;padding:0}#edd_checkout_form_wrap fieldset p:last-child{margin-bottom:0}#edd_checkout_form_wrap fieldset#edd_cc_fields #edd-card-number-wrap{margin-top:5px}#edd_checkout_form_wrap #edd_purchase_final_total{margin:21px 0}#edd_secure_site_wrapper{padding:4px 4px 4px 0;font-weight:700}#edd_secure_site_wrapper span.padlock:before{content:'\f160';display:inline-block;-webkit-font-smoothing:antialiased;font:400 20px/1 dashicons;vertical-align:top}#edd_checkout_form_wrap input.edd-input.card-number.valid{background-image:url(images/tick.png);background-repeat:no-repeat;background-position:98% 50%}#edd_checkout_form_wrap span.exp-divider{display:inline}#edd_checkout_form_wrap span.card-type{position:absolute;top:-2px;right:0;width:43px;height:32px;background-size:43px 32px!important}#edd_checkout_form_wrap span.card-type.off{display:none}#edd_checkout_form_wrap span.card-type.visa{background:url(images/icons/visa.gif) no-repeat}#edd_checkout_form_wrap span.card-type.mastercard{background:url(images/icons/mastercard.gif) no-repeat}#edd_checkout_form_wrap span.card-type.discover{background:url(images/icons/discover.gif) no-repeat}#edd_checkout_form_wrap span.card-type.amex{background:url(images/icons/americanexpress.gif) no-repeat}#edd_checkeout_form_wrap .edd-cart-ajax,#edd_checkout_form_wrap #edd-discount-loader{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.edd-amazon-profile-wrapper{font-size:12px}.edd-amazon-profile-name{font-weight:600}.edd-amazon-logout{font-size:10px;line-height:12px}.edd-amazon-logout a{cursor:pointer}#edd-amazon-address-box,#edd-amazon-wallet-box{height:228px;width:350px}#edd-amazon-address-box{margin-bottom:15px}@media only screen and (min-width:768px){#edd-amazon-address-box,#edd-amazon-wallet-box{width:100%;height:228px}}.edd_purchase_submit_wrapper{position:relative}.edd_purchase_submit_wrapper a.edd-add-to-cart{text-decoration:none;display:none;position:relative;overflow:hidden}.edd_purchase_submit_wrapper a.edd-add-to-cart.edd-has-js{display:inline-block}.edd_purchase_submit_wrapper .edd-cart-ajax{display:none;position:relative;left:-35px}.edd-submit.button.edd-ajax-loading{padding-right:30px}.edd-add-to-cart .edd-add-to-cart-label{opacity:1;filter:alpha(opacity=100)}.edd-add-to-cart[data-edd-loading] .edd-add-to-cart-label,a.edd-add-to-cart .edd-loading{opacity:0;filter:alpha(opacity=0)}a.edd-add-to-cart .edd-loading{position:absolute;left:50%;top:50%}a.edd-add-to-cart .edd-add-to-cart-label,a.edd-add-to-cart .edd-loading{-webkit-transition:.1s opacity!important;-moz-transition:.1s opacity!important;-ms-transition:.1s opacity!important;-o-transition:.1s opacity!important;transition:.1s opacity!important}.edd-add-to-cart[data-edd-loading] .edd-loading{opacity:1;filter:alpha(opacity=100)}.edd-cart-added-alert{color:#567622;display:block;position:absolute}.edd-cart-ajax,body.edd_receipt_page:before{position:relative}.edd_form input.edd-input.required,.edd_form select.edd-select.required{color:#000}body.edd_receipt_page{background-color:#fff;color:#141412;margin:0;font-family:Helvetica,sans-serif;font-size:12px}#edd_user_history .edd_purchase_status.cancelled,#edd_user_history .edd_purchase_status.failed,#edd_user_history .edd_purchase_status.pending,#edd_user_history .edd_purchase_status.revoked,table#edd_purchase_receipt .edd_receipt_payment_status.cancelled,table#edd_purchase_receipt .edd_receipt_payment_status.failed,table#edd_purchase_receipt .edd_receipt_payment_status.pending,table#edd_purchase_receipt .edd_receipt_payment_status.revoked{color:#f73f2e}body.edd_receipt_page #edd_receipt_wrapper{width:660px;margin:0 auto;padding:50px 0}body.edd_receipt_page table{display:table;width:100%;border-bottom:1px solid #ededed;border-collapse:collapse;border-spacing:0;font-size:14px;line-height:2;margin:0 0 20px}body.edd_receipt_page td,body.edd_receipt_page th{display:table-cell;text-align:left;border-top:1px solid #ededed;padding:6px 10px;font-weight:400}body.edd_receipt_page th{font-weight:700;text-transform:uppercase}body.edd_receipt_page h3{font-size:22px;margin:40px 0 5px;clear:both;display:block;font-weight:700}#edd_login_form .edd-input,#edd_login_form label,#edd_profile_editor_form label,#edd_register_form .edd-input,#edd_register_form label{display:inline-block;width:200px}body.edd_receipt_page li{list-style:none}table#edd_purchase_receipt,table#edd_purchase_receipt_products{width:100%}table#edd_purchase_receipt td,table#edd_purchase_receipt th,table#edd_purchase_receipt_products td,table#edd_purchase_receipt_products th{text-align:left}table#edd_purchase_receipt_products li{list-style:none;margin:0 0 8px 10px}table#edd_purchase_receipt ul,table#edd_purchase_receipt_products ul.edd_purchase_receipt_files{margin:0;padding:0}table#edd_purchase_receipt li.edd_download_file{list-style:none;margin:0 0 8px}table#edd_purchase_receipt_products .edd_purchase_receipt_product_notes{font-style:italic}table#edd_purchase_receipt_products .edd_purchase_receipt_product_name{font-weight:700}table#edd_purchase_receipt_products .edd_bundled_product_name{font-style:italic;font-weight:700}#edd_user_history{text-align:left;width:100%;border-top:1px solid #f0f0f0;border-bottom:none}#edd_user_history td,#edd_user_history th{text-align:left;padding:3px 5px;border-bottom:1px solid #f0f0f0;border-top:none}#edd_user_history th{font-weight:700;background:#f5f5f5}#edd_user_history td{line-height:25px;vertical-align:middle}#edd_profile_editor_form p{margin-bottom:8px}#edd_profile_editor_form .edd-profile-emails{list-style-type:none;display:inline-table;margin-left:0}#edd_profile_editor_form .edd-profile-email{width:auto}#edd_profile_editor_form .edd-profile-email .actions{display:none}#edd_profile_editor_form .edd-profile-email:hover>span{display:inline-block}.edd_added_to_cart_alert{padding:5px;font-size:14px;border:1px solid #046a9e;background:#9ecce2;color:#333;margin:8px 0}.edd_added_to_cart_alert a.edd_alert_checkout_link{color:#000!important}input.edd_submit_plain{background:0 0!important;border:none!important;padding:0!important;display:inline;cursor:pointer}.single-download .edd_download_purchase_form{margin-bottom:1.387em}.edd_download_purchase_form .edd_download_quantity_wrapper{margin:0 0 .5em}.edd_download_purchase_form .edd_download_quantity_wrapper .edd-item-quantity{width:75px}.edd_download_purchase_form .edd_price_options{margin:0 0 15px}.edd_download_purchase_form .edd_price_options ul{margin:0;padding:0;list-style:none}.edd_download_purchase_form .edd_price_options li{display:block;padding:0;margin:0}.edd_download_purchase_form .edd_price_options span{display:inline;padding:0;margin:0}.edd_download_purchase_form .edd_price_options .edd_download_quantity_wrapper{padding-left:18px}.edd_download_purchase_form .edd_price_options .edd_download_quantity_wrapper *{font-size:80%}.edd_download_purchase_form .edd_price_options input.edd-item-quantity{display:inline;width:50px;max-width:90%}#edd-purchase-button,.edd-submit,input[type=submit].edd-submit{display:inline-block;padding:6px 12px;margin:0;font-size:14px;font-weight:400;line-height:1.428571429;text-align:center;white-space:nowrap;vertical-align:middle;cursor:pointer;border:1px solid #ccc;border-radius:4px;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none}.edd-submit.button:focus,input[type=submit].edd-submit:focus{outline:#333 dotted thin;outline:-webkit-focus-ring-color auto 5px;outline-offset:-2px}.edd-submit.button:focus,.edd-submit.button:hover,input[type=submit].edd-submit:focus,input[type=submit].edd-submit:hover{color:#333;text-decoration:none}.edd-submit.button:active{background-image:none;outline:0;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.edd-submit.plain{padding:0}.edd-submit.button,.edd-submit.button.gray,.edd-submit.button:visited{color:#333;background:#f0f0f0;border-color:#ccc}.edd-submit.button.gray:active,.edd-submit.button.gray:focus,.edd-submit.button.gray:hover,.edd-submit.button:active,.edd-submit.button:focus,.edd-submit.button:hover{color:#333;background:#ebebeb;border-color:#adadad}.edd-submit.button.gray:active{background-image:none}.edd-submit.button.white{color:#333;background:#fff;border-color:#ccc}.edd-submit.button.white:active,.edd-submit.button.white:focus,.edd-submit.button.white:hover{color:#333;background:#ebebeb;border-color:#adadad}.edd-submit.button.white:active{background-image:none}.edd-submit.button.blue{color:#fff;background:#428bca;border-color:#357ebd}.edd-submit.button.blue.active,.edd-submit.button.blue:focus,.edd-submit.button.blue:hover{color:#fff;background:#3276b1;border-color:#285e8e}.edd-submit.button.blue.active{background-image:none}.edd-submit.button.red{color:#fff;background:#d9534f;border-color:#d43f3a}.edd-submit.button.red:active,.edd-submit.button.red:focus,.edd-submit.button.red:hover{color:#fff;background:#d2322d;border-color:#ac2925}.edd-submit.button.red:active{background-image:none}.edd-submit.button.green{color:#fff;background:#5cb85c;border-color:#4cae4c}.edd-submit.button.green:active,.edd-submit.button.green:focus,.edd-submit.button.green:hover{color:#fff;background:#47a447;border-color:#398439}.edd-submit.button.green:active{background-image:none}.edd-submit.button.yellow{color:#fff;background:#f0ad4e;border-color:#eea236}.edd-submit.button.yellow:active,.edd-submit.button.yellow:focus,.edd-submit.button.yellow:hover{color:#fff;background:#ed9c28;border-color:#d58512}.edd-submit.button.yellow:active{background-image:none}.edd-submit.button.orange{color:#fff;background:#ed9c28;border-color:#e3921e}.edd-submit.button.orange:active,.edd-submit.button.orange:focus,.edd-submit.button.orange:hover{color:#fff;background:#e59016;border-color:#d58512}.edd-submit.button.orange:active{background-image:none}.edd-submit.button.dark-gray{color:#fff;background:#363636;border-color:#222}.edd-submit.button.dark-gray:active,.edd-submit.button.dark-gray:focus,.edd-submit.button.dark-gray:hover{color:#fff;background:#333;border-color:#adadad}.edd-submit.button.dark-gray:active{background-image:none}.edd_download{float:left}.edd_download_columns_1 .edd_download{width:100%}.edd_download_columns_2 .edd_download{width:50%}.edd_download_columns_0 .edd_download,.edd_download_columns_3 .edd_download{width:33%}.edd_download_columns_4 .edd_download{width:25%}.edd_download_columns_5 .edd_download{width:20%}.edd_download_columns_6 .edd_download{width:16.6%}.edd_download_inner{padding:0 8px 8px;margin:0 0 10px}.edd_download_image{max-width:100%}.edd_download .edd_price{margin-bottom:10px}.edd-cart-ajax{margin:0 8px 0 4px;top:2px;background:0 0;border:none;padding:0}.edd-cart-number-of-items{font-style:italic;color:grey}.edd-cart-meta.edd_subtotal{font-weight:700;font-style:italic}.edd-cart-meta.edd_cart_tax{font-size:1em;font-style:italic}.edd-cart-meta.edd_cart_tax::before{font-style:normal}.edd-cart-meta.edd_total{font-weight:700}.edd-cart-meta{padding:2px 5px}.edd-cart-meta.edd_subtotal,.edd-cart-meta.edd_total{background-color:#f9f9f9}.edd_errors:not(.edd-alert){-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px;border:1px solid #E6DB55;margin:0 0 21px;background:#FFFFE0;color:#333}.edd_error{padding:10px}p.edd_error{margin:0!important}.edd_success:not(.edd-alert){-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px;border:1px solid #b3ce89;margin:20px 0;background:#d5eab3;color:#567622;padding:6px 8px;box-shadow:inset 0 1px 0 rgba(255,255,255,.7)}.edd-alert{-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px;margin-bottom:20px;padding:10px;border:1px solid transparent;vertical-align:middle}.edd-alert p{padding:0}.edd-alert p:not(:last-child){margin-bottom:5px}.edd-alert p:last-child{margin-bottom:0}.edd-alert-error{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.edd-alert-success{background-color:#dff0d8;border-color:#d6e9c6;color:#3c763d}.edd-alert-info{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.edd-alert-warn{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}
templates/shortcode-login.php CHANGED
@@ -9,17 +9,20 @@ if ( ! is_user_logged_in() ) :
9
  edd_print_errors(); ?>
10
  <form id="edd_login_form" class="edd_form" action="" method="post">
11
  <fieldset>
12
- <span><legend><?php _e( 'Log into Your Account', 'easy-digital-downloads' ); ?></legend></span>
13
  <?php do_action( 'edd_login_fields_before' ); ?>
14
- <p>
15
- <label for="edd_user_login"><?php _e( 'Username', 'easy-digital-downloads' ); ?></label>
16
  <input name="edd_user_login" id="edd_user_login" class="required edd-input" type="text"/>
17
  </p>
18
- <p>
19
  <label for="edd_user_pass"><?php _e( 'Password', 'easy-digital-downloads' ); ?></label>
20
  <input name="edd_user_pass" id="edd_user_pass" class="password required edd-input" type="password"/>
21
  </p>
22
- <p>
 
 
 
23
  <input type="hidden" name="edd_redirect" value="<?php echo esc_url( $edd_login_redirect ); ?>"/>
24
  <input type="hidden" name="edd_login_nonce" value="<?php echo wp_create_nonce( 'edd-login-nonce' ); ?>"/>
25
  <input type="hidden" name="edd_action" value="user_login"/>
9
  edd_print_errors(); ?>
10
  <form id="edd_login_form" class="edd_form" action="" method="post">
11
  <fieldset>
12
+ <legend><?php _e( 'Log into Your Account', 'easy-digital-downloads' ); ?></legend>
13
  <?php do_action( 'edd_login_fields_before' ); ?>
14
+ <p class="edd-login-username">
15
+ <label for="edd_user_login"><?php _e( 'Username or Email', 'easy-digital-downloads' ); ?></label>
16
  <input name="edd_user_login" id="edd_user_login" class="required edd-input" type="text"/>
17
  </p>
18
+ <p class="edd-login-password">
19
  <label for="edd_user_pass"><?php _e( 'Password', 'easy-digital-downloads' ); ?></label>
20
  <input name="edd_user_pass" id="edd_user_pass" class="password required edd-input" type="password"/>
21
  </p>
22
+ <p class="edd-login-remember">
23
+ <label><input name="rememberme" type="checkbox" id="rememberme" value="forever" /> <?php _e( 'Remember Me', 'easy-digital-downloads' ); ?></label>
24
+ </p>
25
+ <p class="edd-login-submit">
26
  <input type="hidden" name="edd_redirect" value="<?php echo esc_url( $edd_login_redirect ); ?>"/>
27
  <input type="hidden" name="edd_login_nonce" value="<?php echo wp_create_nonce( 'edd-login-nonce' ); ?>"/>
28
  <input type="hidden" name="edd_action" value="user_login"/>