237 lines
10 KiB
PHP
237 lines
10 KiB
PHP
<?php
|
|
/**
|
|
* Add Discount Page
|
|
*
|
|
* @package EDD
|
|
* @subpackage Admin/Discounts
|
|
* @copyright Copyright (c) 2018, Easy Digital Downloads, LLC
|
|
* @license http://opensource.org/licenses/gpl-2.0.php GNU Public License
|
|
* @since 1.0
|
|
*/
|
|
|
|
// Exit if accessed directly
|
|
defined( 'ABSPATH' ) || exit;
|
|
?>
|
|
<div class="wrap">
|
|
<h1><?php esc_html_e( 'Add New Discount', 'easy-digital-downloads' ); ?></h1>
|
|
|
|
<hr class="wp-header-end">
|
|
|
|
<form id="edd-add-discount" action="" method="post">
|
|
|
|
<?php do_action( 'edd_add_discount_form_top' ); ?>
|
|
|
|
<table class="form-table">
|
|
<tbody>
|
|
|
|
<?php do_action( 'edd_add_discount_form_before_name' ); ?>
|
|
|
|
<tr>
|
|
<th scope="row" valign="top">
|
|
<label for="edd-name"><?php esc_html_e( 'Name', 'easy-digital-downloads' ); ?></label>
|
|
</th>
|
|
<td>
|
|
<input name="name" required="required" id="edd-name" type="text" value="" placeholder="<?php esc_html_e( 'Summer Sale', 'easy-digital-downloads' ); ?>" />
|
|
<p class="description"><?php esc_html_e( 'The name of this discount. Customers will see this on checkout.', 'easy-digital-downloads' ); ?></p>
|
|
</td>
|
|
</tr>
|
|
|
|
<?php do_action( 'edd_add_discount_form_before_code' ); ?>
|
|
|
|
<tr>
|
|
<th scope="row" valign="top">
|
|
<label for="edd-code"><?php esc_html_e( 'Code', 'easy-digital-downloads' ); ?></label>
|
|
</th>
|
|
<td>
|
|
<input type="text" required="required" id="edd-code" name="code" class="code" value="" pattern="[a-zA-Z0-9-_]+" placeholder="<?php esc_html_e( '10PERCENT', 'easy-digital-downloads' ); ?>" />
|
|
<p class="description"><?php esc_html_e( 'The code customers will enter to apply this discount. Only alphanumeric characters are allowed.', 'easy-digital-downloads' ); ?></p>
|
|
</td>
|
|
</tr>
|
|
|
|
<?php do_action( 'edd_add_discount_form_before_type' ); ?>
|
|
|
|
<?php do_action( 'edd_add_discount_form_before_amount' ); ?>
|
|
|
|
<tr>
|
|
<th scope="row" valign="top">
|
|
<label for="edd-amount"><?php esc_html_e( 'Amount', 'easy-digital-downloads' ); ?></label>
|
|
</th>
|
|
<td>
|
|
<span class="edd-amount-type-wrapper">
|
|
<input type="text" required="required" class="edd-price-field" id="edd-amount" name="amount" value="" placeholder="<?php esc_html_e( '10.00', 'easy-digital-downloads' ); ?>"/>
|
|
<label for="edd-amount-type" class="screen-reader-text"><?php esc_html_e( 'Amount Type', 'easy-digital-downloads' ); ?></label>
|
|
<select name="amount_type" id="edd-amount-type">
|
|
<option value="percent">%</option>
|
|
<option value="flat"><?php echo esc_html( edd_currency_symbol() ); ?></option>
|
|
</select>
|
|
</span>
|
|
<p class="description"><?php esc_html_e( 'The amount as a percentage or flat rate. Cannot be left blank.', 'easy-digital-downloads' ); ?></p>
|
|
</td>
|
|
</tr>
|
|
|
|
<?php do_action( 'edd_add_discount_form_before_products' ); ?>
|
|
|
|
<tr>
|
|
<th scope="row" valign="top">
|
|
<label for="edd_products"><?php printf( esc_html__( '%s Requirements', 'easy-digital-downloads' ), edd_get_label_singular() ); ?></label>
|
|
</th>
|
|
<td>
|
|
<?php echo EDD()->html->product_dropdown( array(
|
|
'name' => 'product_reqs[]',
|
|
'id' => 'edd_products',
|
|
'selected' => array(),
|
|
'multiple' => true,
|
|
'chosen' => true,
|
|
'placeholder' => sprintf( esc_html__( 'Select %s', 'easy-digital-downloads' ), esc_html( edd_get_label_plural() ) ),
|
|
) ); // WPCS: XSS ok. ?>
|
|
<div id="edd-discount-product-conditions" style="display:none;">
|
|
<p>
|
|
<select id="edd-product-condition" name="product_condition">
|
|
<option value="all"><?php printf( esc_html__( 'Cart must contain all selected %s', 'easy-digital-downloads' ), esc_html( edd_get_label_plural() ) ); ?></option>
|
|
<option value="any"><?php printf( esc_html__( 'Cart needs one or more of the selected %s', 'easy-digital-downloads' ), esc_html( edd_get_label_plural() ) ); ?></option>
|
|
</select>
|
|
</p>
|
|
<p>
|
|
<label>
|
|
<input type="radio" class="tog" name="scope" value="global" checked="checked"/>
|
|
<?php esc_html_e( 'Apply discount to entire purchase.', 'easy-digital-downloads' ); ?>
|
|
</label><br/>
|
|
<label>
|
|
<input type="radio" class="tog" name="scope" value="not_global"/>
|
|
<?php printf( esc_html__( 'Apply discount only to selected %s.', 'easy-digital-downloads' ), esc_html( edd_get_label_plural() ) ); ?>
|
|
</label>
|
|
</p>
|
|
</div>
|
|
<p class="description"><?php printf( esc_html__( '%s this discount can only be applied to. Leave blank for any.', 'easy-digital-downloads' ), esc_html( edd_get_label_plural() ) ); ?></p>
|
|
</td>
|
|
</tr>
|
|
|
|
<?php do_action( 'edd_add_discount_form_before_excluded_products' ); ?>
|
|
|
|
<tr>
|
|
<th scope="row" valign="top">
|
|
<label for="edd-excluded-products"><?php printf( esc_html__( 'Excluded %s', 'easy-digital-downloads' ), esc_html( edd_get_label_plural() ) ); ?></label>
|
|
</th>
|
|
<td>
|
|
<?php echo EDD()->html->product_dropdown( array(
|
|
'name' => 'excluded_products[]',
|
|
'id' => 'excluded_products',
|
|
'selected' => array(),
|
|
'multiple' => true,
|
|
'chosen' => true,
|
|
'placeholder' => sprintf( esc_html__( 'Select %s', 'easy-digital-downloads' ), esc_html( edd_get_label_plural() ) ),
|
|
) ); // WPCS: XSS ok. ?>
|
|
<p class="description"><?php printf( esc_html__( '%s this discount cannot be applied to. Leave blank for none.', 'easy-digital-downloads' ), esc_html( edd_get_label_plural() ) ); ?></p>
|
|
</td>
|
|
</tr>
|
|
|
|
<?php do_action( 'edd_add_discount_form_before_start' ); ?>
|
|
|
|
<tr>
|
|
<th scope="row" valign="top">
|
|
<label for="edd-start"><?php esc_html_e( 'Start date', 'easy-digital-downloads' ); ?></label>
|
|
</th>
|
|
<td class="edd-discount-datetime">
|
|
<input name="start_date" id="edd-start" type="text" value="" class="edd_datepicker" data-format="<?php echo esc_attr( edd_get_date_picker_format() ); ?>" placeholder="<?php echo esc_attr( edd_get_date_picker_format() ); ?>" />
|
|
|
|
<label class="screen-reader-text" for="start-date-hour">
|
|
<?php esc_html_e( 'Start Date Hour', 'easy-digital-downloads' ); ?>
|
|
</label>
|
|
<input type="number" min="0" max="24" step="1" name="start_date_hour" id="start-date-hour" placeholder="00" />
|
|
:
|
|
|
|
<label class="screen-reader-text" for="start-date-minute">
|
|
<?php esc_html_e( 'Start Date Minute', 'easy-digital-downloads' ); ?>
|
|
</label>
|
|
<input type="number" min="0" max="59" step="1" name="start_date_minute" id="start-date-minute" placeholder="00" />
|
|
|
|
<?php echo esc_html( ' (' . edd_get_timezone_abbr() . ')' ); ?>
|
|
<p class="description"><?php esc_html_e( 'Pick the date and time this discount will start on. Leave blank for no start date.', 'easy-digital-downloads' ); ?></p>
|
|
</td>
|
|
</tr>
|
|
|
|
<?php do_action( 'edd_add_discount_form_before_expiration' ); ?>
|
|
|
|
<tr>
|
|
<th scope="row" valign="top">
|
|
<label for="edd-expiration"><?php esc_html_e( 'Expiration date', 'easy-digital-downloads' ); ?></label>
|
|
</th>
|
|
<td class="edd-discount-datetime">
|
|
<input name="end_date" id="edd-expiration" type="text" class="edd_datepicker" data-format="<?php echo esc_attr( edd_get_date_picker_format() ); ?>" placeholder="<?php echo esc_attr( edd_get_date_picker_format() ); ?>" />
|
|
|
|
<label class="screen-reader-text" for="end-date-hour">
|
|
<?php esc_html_e( 'Expiration Date Hour', 'easy-digital-downloads' ); ?>
|
|
</label>
|
|
<input type="number" min="0" max="24" step="1" name="end_date_hour" id="end-date-hour" placeholder="23" />
|
|
:
|
|
|
|
<label class="screen-reader-text" for="end-date-minute">
|
|
<?php esc_html_e( 'Expiration Date Minute', 'easy-digital-downloads' ); ?>
|
|
</label>
|
|
<input type="number" min="0" max="59" step="1" name="end_date_minute" id="end-date-minute" placeholder="59" />
|
|
|
|
<?php echo esc_html( ' (' . edd_get_timezone_abbr() . ')' ); ?>
|
|
<p class="description"><?php esc_html_e( 'Pick the date and time this discount will expire on. Leave blank to never expire.', 'easy-digital-downloads' ); ?></p>
|
|
</td>
|
|
</tr>
|
|
|
|
<?php do_action( 'edd_add_discount_form_before_min_cart_amount' ); ?>
|
|
|
|
<tr>
|
|
<th scope="row" valign="top">
|
|
<label for="edd-min-cart-amount"><?php esc_html_e( 'Minimum Amount', 'easy-digital-downloads' ); ?></label>
|
|
</th>
|
|
<td>
|
|
<input type="text" id="edd-min-cart-amount" name="min_charge_amount" value="" placeholder="<?php esc_html_e( 'No minimum', 'easy-digital-downloads' ); ?>" />
|
|
<p class="description"><?php esc_html_e( 'The minimum subtotal of item prices in a cart before this discount may be applied.', 'easy-digital-downloads' ); ?></p>
|
|
</td>
|
|
</tr>
|
|
|
|
<?php do_action( 'edd_add_discount_form_before_max_uses' ); ?>
|
|
|
|
<tr>
|
|
<th scope="row" valign="top">
|
|
<label for="edd-max-uses"><?php esc_html_e( 'Max Uses', 'easy-digital-downloads' ); ?></label>
|
|
</th>
|
|
<td>
|
|
<input type="text" id="edd-max-uses" name="max_uses" value="" placeholder="<?php esc_html_e( 'Unlimited', 'easy-digital-downloads' ); ?>" />
|
|
<p class="description"><?php esc_html_e( 'The maximum number of times this discount can be used.', 'easy-digital-downloads' ); ?></p>
|
|
</td>
|
|
</tr>
|
|
|
|
<?php do_action( 'edd_add_discount_form_before_use_once' ); ?>
|
|
|
|
<tr>
|
|
<th scope="row" valign="top">
|
|
<label for="edd-use-once"><?php esc_html_e( 'Use Once Per Customer', 'easy-digital-downloads' ); ?></label>
|
|
</th>
|
|
<td>
|
|
<input type="checkbox" id="edd-use-once" name="once_per_customer" value="1"/>
|
|
<span class="description"><?php esc_html_e( 'Prevent customers from using this discount more than once.', 'easy-digital-downloads' ); ?></span>
|
|
</td>
|
|
</tr>
|
|
|
|
<?php
|
|
/**
|
|
* Action after "Use Once Per Customer" checkbox.
|
|
*
|
|
* @since 3.0
|
|
*/
|
|
?>
|
|
<?php do_action( 'edd_add_discount_form_after_use_once' ); ?>
|
|
|
|
</tbody>
|
|
</table>
|
|
|
|
<?php do_action( 'edd_add_discount_form_bottom' ); ?>
|
|
|
|
<p class="submit">
|
|
<input type="hidden" name="type" value="discount" />
|
|
<input type="hidden" name="edd-action" value="add_discount"/>
|
|
<input type="hidden" name="edd-redirect" value="<?php echo esc_url( edd_get_admin_url( array( 'page' => 'edd-discounts' ) ) ); ?>"/>
|
|
<input type="hidden" name="edd-discount-nonce" value="<?php echo esc_attr( wp_create_nonce( 'edd_discount_nonce' ) ); ?>"/>
|
|
<input type="submit" value="<?php esc_html_e( 'Add Discount Code', 'easy-digital-downloads' ); ?>" class="button-primary"/>
|
|
</p>
|
|
</form>
|
|
</div>
|