PluginProbe ʕ •ᴥ•ʔ
Bopo – WooCommerce Product Bundle Builder / trunk
Bopo – WooCommerce Product Bundle Builder vtrunk
bopo-woo-product-bundle-builder / templates / horizontal-bundle.php
bopo-woo-product-bundle-builder / templates Last commit date
horizontal-bundle.php 4 years ago vertical-bundle.php 4 years ago
horizontal-bundle.php
145 lines
1 <?php
2 $settings = VI_WOO_BOPO_BUNDLE_DATA::get_instance();
3
4 if ( isset( $args['items'] ) ) {
5 $items = $args['items'];
6 }
7 if ( isset( $args['bundle_id'] ) ) {
8 $bundle_id = $args['bundle_id'];
9 $product_bundle = wc_get_product( $bundle_id );
10 }
11 if ( isset( $args['product_array'] ) ) {
12 $product_arr = $args['product_array'];
13 }
14 if ( isset( $args['bopo_fixed_price'] ) ) {
15 $bopo_fixed_price = $args['bopo_fixed_price'];
16 }
17 if ( isset( $args['bopo_fixed_sale'] ) ) {
18 $bopo_fixed_sale = $args['bopo_fixed_sale'];
19 }
20 if ( isset( $args['bopo_tax_array'] ) ) {
21 $bopo_tax_array = $args['bopo_tax_array'];
22 }
23 if ( isset( $args['bopo_mode'] ) ) {
24 $bopo_mode = $args['bopo_mode'];
25 } else {
26 $bopo_mode = '';
27 }
28 if ( isset( $args['bopo_template'] ) ) {
29 $bopo_template = $args['bopo_template'];
30 } else {
31 $bopo_template = '';
32 }
33 $p_description = [];
34 $p_ratting = [];
35 for ( $i = 0; $i < $items['count']; $i ++ ) {
36 if ( ! empty( $product_arr[ $i ][0] ) ) {
37 if ( $product_arr[ $i ][0] instanceof WC_Product_Variation ) {
38 $p_id = $product_arr[ $i ][0]->get_parent_id();
39 $p_prd = wc_get_product( $p_id );
40 $p_description[ $i ] = $p_prd->get_short_description();
41 if ( $p_prd->get_rating_count() != '0' && ! empty( $p_prd->get_rating_count() ) ) {
42 $p_ratting[ $i ] = wc_get_rating_html( $p_prd->get_average_rating() );
43 }
44 } else {
45 $p_description[ $i ] = $product_arr[ $i ][0]->get_short_description();
46 if ( $product_arr[ $i ][0]->get_rating_count() != '0' ) {
47 $p_ratting[ $i ] = wc_get_rating_html( $product_arr[ $i ][0]->get_average_rating() );
48 }
49 }
50 }
51 }
52 ?>
53 <div class="bopobb-single-wrap bopobb-single-wrap-<?php echo esc_attr( $bundle_id ); ?>" data-id="<?php echo esc_attr( $bundle_id ); ?>">
54 <div class="bopobb-custom-title">
55 <?php
56 if ( ! empty( $items['title'] ) ) {
57 echo esc_html( $items['title'] );
58 }
59 ?>
60 </div>
61 <div class="bopobb-items-top-wrap">
62 </div>
63 <div class="bopobb-items-bottom-wrap bopobb-template-2">
64 <table class="bopobb-detail-table" data-fixed-price="<?php echo esc_attr( $bopo_fixed_price ) ?>" data-fixed-sale="<?php echo esc_attr( $bopo_fixed_sale ) ?>"
65 data-price-suffix="<?php echo esc_attr( htmlentities( $product_bundle->get_price_suffix() ) ); ?>"
66 data-tax-include="<?php echo esc_attr( $bopo_tax_array['include'] ); ?>" data-tax-exempt="<?php echo esc_attr( $bopo_tax_array['exempt'] ); ?>"
67 data-tax-view="<?php echo esc_attr( $bopo_tax_array['view'] ); ?>" data-tax-rate="<?php echo esc_attr( $bopo_tax_array['rate'] ); ?>">
68 <tbody>
69 <?php
70 for ( $i = 0; $i < $items['count']; $i ++ ) {
71 ?>
72 <tr class="bopobb-item-product bopobb-item-<?php echo esc_attr( $i ) ?>" data-discount-type="<?php echo esc_attr( $product_arr[ $i ][8] ) ?>"
73 data-discount-number="<?php echo esc_attr( $product_arr[ $i ][9] ) ?>" data-price="<?php echo esc_attr( $product_arr[ $i ][5] ) ?>"
74 data-qty="<?php echo esc_attr( $product_arr[ $i ][4] ) ?>" data-id="<?php echo esc_attr( $product_arr[ $i ][1] ) ?>"
75 data-max="<?php echo esc_attr( $product_arr[ $i ][10] ) ?>" data-change="<?php echo esc_attr( $product_arr[ $i ][12] ); ?>"
76 data-item="<?php echo esc_attr($i); ?>">
77 <th>
78 <div class="bopobb-item-img-wrap bopobb-item-change" data-item="<?php echo esc_attr( $i ) ?>"
79 data-product="<?php echo esc_attr( $bundle_id ) ?>">
80 <span class="bopobb-item-img" title="<?php echo esc_attr( $product_arr[ $i ][2] ) ?>">
81 <?php if ( $product_arr[ $i ][3] ) {
82 echo wp_kses_post( $product_arr[ $i ][3] );
83 } else {
84 ?>
85 <p class="bopobb-icon-plus2"></p>
86 <?php
87 } ?>
88 </span>
89 </div>
90 <div class="bopobb-item-detail">
91 <a class="bopobb-item-title <?php if ( $settings->get_params( 'bopobb_link_individual' ) == 2 )
92 echo esc_attr( 'bopobb-item-change' ) ?>" data-item="<?php echo esc_attr( $i ) ?>"
93 data-product="<?php echo esc_attr( $bundle_id ) ?>" <?php
94 if ( $settings->get_params( 'bopobb_view_description' ) ) {
95 ?> title="<?php if ( ! empty( $p_description[ $i ] ) ) {
96 echo esc_attr( $p_description[ $i ] );
97 } ?>" <?php
98 }
99 if ( $settings->get_params( 'bopobb_link_individual' ) == 1 && ! empty( $product_arr[ $i ][1] ) ) {
100 echo esc_attr( ' href=' . get_permalink( $product_arr[ $i ][1] ) . ' target=_blank' );
101 }
102 ?>>
103 <?php $item_title = $product_arr[ $i ][2];
104 if ( $settings->get_params( 'bopobb_view_quantity' ) ) {
105 $item_title .= ' x' . $product_arr[ $i ][4];
106 }
107 echo esc_attr( $item_title ) ?>
108 </a>
109 <?php
110 if ( $settings->get_params( 'bopobb_view_ratting' ) ) {
111 if ( ! empty( $p_ratting[ $i ] ) ) {
112 echo wp_kses_post( $p_ratting[ $i ] );
113 }
114 }
115 if ( $settings->get_params( 'bopobb_view_stock' ) ) {
116 if ( ! empty( $product_arr[ $i ][0] ) ) {
117 echo wp_kses_post( wc_get_stock_html( $product_arr[ $i ][0] ) );
118 }
119 }
120 ?>
121 <input type="hidden" class="bopobb-item-variations" value="<?php echo esc_attr( $product_arr[ $i ][11] ) ?>" readonly="readonly">
122 </div>
123 <div class="bopobb-item-change-wrap">
124 <div class="bopobb-item-change bopobb-item-<?php echo esc_attr( $i ) ?>" data-item="<?php echo esc_attr( $i ) ?>"
125 data-product="<?php echo esc_attr( $bundle_id ) ?>" title="<?php echo esc_attr( $settings->get_params( 'bopobb_swap_text' ) ); ?>">
126 <p class="bopobb-icon-pencil"></p>
127 </div>
128 </div>
129 </th>
130 <td>
131 <?php
132 if ( ! empty( $product_arr[ $i ][0] ) ) {
133 echo wp_kses_post( $product_arr[ $i ][0]->get_price_html() );
134 }
135 ?>
136 </td>
137 </tr>
138 <?php } ?>
139 </tbody>
140 </table>
141 </div>
142 <div class="bopobb-alert bopobb-text"></div>
143 </div>
144 <?php
145