PluginProbe ʕ •ᴥ•ʔ
Hustle – Email Marketing, Lead Generation, Optins, Popups / 7.4.6
Hustle – Email Marketing, Lead Generation, Optins, Popups v7.4.6
7.8.14 7.8.14.1 7.8.13 7.8.13.1 trunk 3.0 3.1 3.1.1 3.1.2 3.1.3 3.1.4 4.3.2 4.4.4 4.4.5 4.4.5.1 4.4.5.4 4.6 4.6.1.1 4.6.1.4 4.7.0.2 4.7.0.3 4.7.0.7 4.7.0.9 4.7.1.0 4.7.1.1 4.8.0.0 5.0.0 5.0.1 5.0.1.1 5.0.1.2 5.1 5.1.1 5.1.2 5.1.3 5.1.3.1 5.1.3.2 5.1.4 5.1.5 6.0 6.0.1 6.0.2 6.0.3 6.0.4.2 6.0.5 6.0.6.1 6.0.7 6.0.8.1 6.0.9 7.0.0.1 7.0.2 7.0.3 7.0.4 7.1.0 7.1.1 7.2.0 7.2.1 7.3.0 7.3.1 7.3.3 7.3.5 7.3.6 7.3.7 7.4.0 7.4.1 7.4.11 7.4.13 7.4.13.1 7.4.2 7.4.3 7.4.4 7.4.5 7.4.5.1 7.4.5.2 7.4.6 7.4.7 7.5.0 7.6.0 7.6.1 7.6.3 7.6.4 7.6.6 7.7.0 7.7.1 7.8.0 7.8.1 7.8.10 7.8.10.1 7.8.10.2 7.8.11 7.8.12 7.8.12.1 7.8.2 7.8.3 7.8.4 7.8.5 7.8.6 7.8.7 7.8.8 7.8.9 7.8.9.1 7.8.9.2 7.8.9.3
wordpress-popup / views / admin / global / sui-components / sui-tabs.php
wordpress-popup / views / admin / global / sui-components Last commit date
footer 4 years ago sui-accordion.php 4 years ago sui-box-header.php 5 years ago sui-button.php 4 years ago sui-checkbox.php 5 years ago sui-footer.php 5 years ago sui-header.php 5 years ago sui-icon.php 5 years ago sui-notice.php 5 years ago sui-row.php 5 years ago sui-select.php 5 years ago sui-settings-row.php 5 years ago sui-tabs.php 5 years ago sui-tutorials.php 4 years ago
sui-tabs.php
165 lines
1 <?php
2 /**
3 * SUI Tab Options.
4 *
5 * @package Hustle
6 * @since 4.3.0
7 */
8
9 $wrapper = 'sui-tabs';
10 $wrapper .= ( isset( $sidetabs ) && true === $sidetabs ) ? ' sui-side-tabs' : '';
11 $wrapper .= ( isset( $flushed ) && true === $flushed ) ? ' sui-tabs-flushed' : '';
12 $wrapper .= ( isset( $overflow ) && true === $overflow ) ? ' sui-tabs-overflow' : '';
13 $wrapper .= ( isset( $class ) && ! empty( $class ) ) ? ' ' . $class : '';
14
15 $radio_allowed = ( isset( $radio ) && true === $radio ) ? true : false;
16 $content_allowed = ( isset( $content ) && true === $content ) ? true : false;
17 $content_class = empty( $content_class ) ? '' : ' ' . $content_class;
18
19 reset( $options );
20 $first_tab = key( $options );
21 ?>
22
23 <div
24 <?php echo ! empty( $id ) ? 'id="' . esc_attr( $id ) . '"' : ''; ?>
25 class="<?php echo esc_attr( $wrapper ); ?>"
26 >
27
28 <?php
29 foreach ( $options as $key => $option ) {
30 $value = ( isset( $option['value'] ) && ( ! empty( $option['value'] ) || '0' === $option['value'] ) ) ? $option['value'] : $key;
31 ?>
32
33 <?php if ( $radio_allowed ) { ?>
34 <input
35 type="radio"
36 name="<?php echo esc_attr( $name ); ?>"
37 value="<?php echo esc_attr( $value ); ?>"
38 id="hustle-<?php echo esc_attr( $name ); ?>--<?php echo esc_attr( $key ); ?>"
39 class="sui-screen-reader-text hustle-tabs-option"
40 data-attribute="<?php echo esc_attr( $name ); ?>"
41 aria-hidden="true"
42 tabindex="-1"
43 <?php checked( $saved_value, $value ); ?>
44 />
45 <?php } ?>
46 <?php } ?>
47
48 <?php if ( isset( $overflow ) && true === $overflow ) { ?>
49
50 <div
51 tabindex="-1"
52 class="sui-tabs-navigation"
53 aria-hidden="true"
54 >
55 <button
56 type="button"
57 class="sui-button-icon sui-tabs-navigation--left"
58 >
59 <i class="sui-icon-chevron-left"></i>
60 </button>
61 <button
62 type="button"
63 class="sui-button-icon sui-tabs-navigation--right"
64 >
65 <i class="sui-icon-chevron-right"></i>
66 </button>
67 </div>
68
69 <?php } ?>
70
71 <div role="tablist" class="sui-tabs-menu">
72
73 <?php
74 foreach ( $options as $key => $option ) {
75
76 $label = $option['label'];
77 $sui_icon = ( isset( $option['sui-icon'] ) && ! empty( $option['sui-icon'] ) ) ? $option['sui-icon'] : '';
78 $hui_icon = ( isset( $option['hui-icon'] ) && ! empty( $option['hui-icon'] ) ) ? $option['hui-icon'] : '';
79 $tabcontent = ( isset( $option['content'] ) && ! empty( $option['content'] ) ) ? 'tab-content-' . $name . '-' . $key : '';
80
81 $has_sui_icon = ( isset( $option['sui-icon'] ) && ! empty( $option['sui-icon'] ) ) ? true : false;
82 $has_hui_icon = ( isset( $option['hui-icon'] ) && ! empty( $option['hui-icon'] ) ) ? true : false;
83 $has_content = ( isset( $option['content'] ) && ! empty( $option['content'] ) ) ? true : false;
84
85 $button_class = ( ! $radio_allowed && $key === $first_tab ) ? 'sui-tab-item active' : 'sui-tab-item';
86 $button_selected = ( ! $radio_allowed && $key === $first_tab ) ? 'true' : 'false';
87 $button_controls = $tabcontent;
88 $button_index = ( 'false' === $button_selected ) ? '-1' : '';
89 $button_label_for = 'hustle-' . $name . '--' . $key;
90 ?>
91
92 <button
93 role="tab"
94 type="button"
95 id="tab-<?php echo esc_attr( $name ); ?>-<?php echo esc_attr( $key ); ?>"
96 class="<?php echo esc_attr( $button_class ); ?>"
97 aria-selected="<?php echo esc_attr( $button_selected ); ?>"
98 <?php echo ( $content_allowed && $has_content ) ? 'aria-controls="' . esc_attr( $button_controls ) . '"' : ''; ?>
99 <?php echo ( 'false' === $button_selected ) ? 'tabindex="' . esc_attr( $button_index ) . '"' : ''; ?>
100 <?php echo $radio_allowed ? 'data-label-for="' . esc_attr( $button_label_for ) . '"' : ''; ?>
101 >
102 <?php
103 if ( $has_sui_icon || $has_hui_icon ) {
104
105 if ( $has_sui_icon ) {
106 $icon_size = ! empty( $option['icon-size'] ) ? ' sui-' . $option['icon-size'] : '';
107 echo '<span class="sui-icon-' . esc_attr( $sui_icon ) . esc_attr( $icon_size ) . '" aria-hidden="true" style="pointer-events: none;"></span>';
108 } elseif ( $has_hui_icon ) {
109 $icon_size = ! empty( $option['icon-size'] ) ? ' hui-' . $option['icon-size'] : '';
110 echo '<span class="hui-icon-' . esc_attr( $hui_icon ) . esc_attr( $icon_size ) . '" aria-hidden="true" style="pointer-events: none;"></span>';
111 }
112
113 echo '<span class="sui-screen-reader-text">' . esc_html( $label ) . '</span>';
114
115 } else {
116 echo esc_html( $label );
117 }
118 ?>
119 </button>
120
121 <?php } ?>
122
123 </div>
124
125 <?php if ( $content_allowed ) { ?>
126
127 <div class="sui-tabs-content<?php echo esc_attr( $content_class ); ?>">
128
129 <?php
130 foreach ( $options as $key => $option ) {
131
132 $tabclass = 'sui-tab-content';
133 $tabclass .= ( isset( $option['boxed'] ) && true === $option['boxed'] ) ? ' sui-tab-boxed' : '';
134 $tabclass .= ( isset( $option['class'] ) && ! empty( $option['class'] ) ) ? ' ' . $option['class'] : '';
135
136 if ( ! $radio_allowed && $key === $first_tab ) {
137 $tabclass .= ' active';
138 }
139
140 $has_content = ( isset( $option['content'] ) && ! empty( $option['content'] ) ) ? true : false;
141 ?>
142
143 <?php if ( $has_content ) { ?>
144
145 <div
146 role="tabpanel"
147 tabindex="0"
148 id="tab-content-<?php echo esc_attr( $name ); ?>-<?php echo esc_attr( $key ); ?>"
149 class="<?php echo esc_attr( $tabclass ); ?>"
150 aria-labelledby="tab-<?php echo esc_attr( $name ); ?>-<?php echo esc_attr( $key ); ?>"
151 <?php echo ( ! $radio_allowed && $key === $first_tab ) ? '' : 'hidden'; ?>
152 >
153 <?php echo $option['content']; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>
154 </div>
155
156 <?php } ?>
157
158 <?php } ?>
159
160 </div>
161
162 <?php } ?>
163
164 </div>
165