クラス
OrderListCSV
ソース ソース
ファイル: src/Admin/OrderListCSV.php
class OrderListCSV { /** * Registers hooks * * @author Evan D Shaw <evandanielshaw@gmail.com> * @return void */ public static function init() { add_action('usces_action_chk_pro_detail', [get_class(), 'addComboGroupItemsDownloadColCheckbox'], 10, 1); add_filter('usces_filter_chk_pro_label_detail', [get_class(), 'addComboGroupItemsColLabel'], 10, 1); add_filter('usces_filter_chk_pro_data_detail', [get_class(), 'addComboGroupItemsColCell'], 10, 4); add_filter('usces_filter_chk_pro', [get_class(), 'persistCheckedStatus'], 10, 1); } /** * Adds combo-set column checkbox to download dialog * * @author Evan D Shaw <evandanielshaw@gmail.com> * @param array $chk_pro * @return void */ public static function addComboGroupItemsDownloadColCheckbox($chk_pro) { ?> <label for="chk_pro[combo_set]"> <input type="checkbox" class="check_pro check_product" id="chk_pro[combo_set]" value="combo_set" <?php usces_checked($chk_pro, 'combo_set'); ?> /> <?php esc_html_e('Combo-Set Selections', 'wcexics'); ?> </label> <?php } /** * Appends a column header label for combo-set group items * * @author Evan D Shaw <evandanielshaw@gmail.com> * @param null $null * @return null|string */ public static function addComboGroupItemsColLabel($null) { if (empty($_GET['check'])) { return $null; } if (empty($_GET['check']['combo_set']) || $_GET['check']['combo_set'] !== 'on') { return $null; } $th_h = ',"'; $th_f = '"'; return $th_h . __('Combo-Set Selections', 'wcexics') . $th_f; } /** * Appends a column cell for combo-set group items * * @author Evan D Shaw <evandanielshaw@gmail.com> * @param null $null * @param array $usces_opt_order * @param array $array * @param array $cart_row * @return null|string */ public static function addComboGroupItemsColCell($null, $usces_opt_order, $array, $cart_row) { if (empty($_GET['check'])) { return $null; } if (empty($_GET['check']['combo_set']) || $_GET['check']['combo_set'] !== 'on') { return $null; } $csdata = CartPages::getComboSetCart($cart_row); $details = ''; if (!empty($csdata)) { $details = Cart::getComboSetCartDetailsSpaceSeparated($csdata['cartRows']); } $td_h = ',"'; $td_f = '"'; return !empty($details) ? $td_h . $details . $td_f : $null; } /** * Persist checked status for CSV product download combo-set checkbox * * @author Evan D Shaw <evandanielshaw@gmail.com> * @param array $chk_pro * @return array */ public static function persistCheckedStatus($chk_pro) { $chk_pro['combo_set'] = isset($_REQUEST['check']['combo_set']) ? 1 : 0; return $chk_pro; } }
- addComboGroupItemsColCell — Appends a column cell for combo-set group items
- addComboGroupItemsColLabel — Appends a column header label for combo-set group items
- addComboGroupItemsDownloadColCheckbox — Adds combo-set column checkbox to download dialog
- init — Registers hooks
- persistCheckedStatus — Persist checked status for CSV product download combo-set checkbox