PluginProbe
Virtue/Ascend/Pinnacle Toolkit / 1.5
Virtue/Ascend/Pinnacle Toolkit v1.5
trunk 1.3 1.4 1.5 1.6 1.7 1.8 1.9 2.0 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.9 3.0 3.1 3.2 3.3 3.4 3.7 3.8 All 47 releases
virtue-toolkit / shortcodes.php

shortcodes.php in Virtue/Ascend/Pinnacle Toolkit 1.5, at shortcodes.php

259 lines 9.6 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 //Shortcode for accordion
3 function kad_accordion_shortcode_function($atts, $content ) {
4 $GLOBALS['pane_count'] = 0;
5 do_shortcode( $content );
6 $random = rand(1, 99);
7 if( is_array( $GLOBALS['panes'] ) ){
8
9 foreach( $GLOBALS['panes'] as $tab ){
10 $tabs[] = '<div class="panel panel-default"><div class="panel-heading"><a class="accordion-toggle '.$tab['open'].'" data-toggle="collapse" data-parent="#accordionname'.$random.'" href="#collapse'.$random.$tab['link'].'"><h5><i class="icon-minus primary-color"></i><i class="icon-plus"></i>'.$tab['title'].'</h5></a></div><div id="collapse'.$random.$tab['link'].'" class="panel-collapse collapse '.$tab['in'].'"><div class="panel-body postclass">'.$tab['content'].'</div></div></div>';
11
12 }
13 $return = "\n".'<div class="panel-group" id="accordionname'.$random.'">'.implode( "\n", $tabs ).'</div>'."\n";
14 }
15 return $return;
16 }
17
18 function kad_accordion_pane_function($atts, $content ) {
19 extract(shortcode_atts(array(
20 'title' => 'Pane %d',
21 'start' => ''
22 ), $atts));
23 if ($start != '') {$open = '';} else {$open = 'collapsed';}
24 if ($start != '') {$in = 'in';} else {$in = '';}
25
26 $x = $GLOBALS['pane_count'];
27 $GLOBALS['panes'][$x] = array( 'title' => $title, 'open' => $open, 'in' => $in, 'link' => $GLOBALS['pane_count'], 'content' => do_shortcode( $content ) );
28
29 $GLOBALS['pane_count']++;
30 }
31 function kad_tab_shortcode_function($atts, $content ) {
32 $GLOBALS['tab_count'] = 0;
33 do_shortcode( $content );
34 $random = rand(1, 99);
35 if( is_array( $GLOBALS['tabs'] ) ){
36
37 foreach( $GLOBALS['tabs'] as $nav ){
38 $tabnav[] = '<li class="'.$nav['active'].'"><a href="#sctab'.$random.$nav['link'].'">'.$nav['title'].'</a></li>';
39 }
40
41 foreach( $GLOBALS['tabs'] as $tab ){
42 $tabs[] = '<div class="tab-pane clearfix '.$tab['active'].'" id="sctab'.$random.$tab['link'].'">'.$tab['content'].'</div>';
43 }
44
45 $return = "\n".'<ul class="nav nav-tabs sc_tabs">'.implode( "\n", $tabnav ).'</ul> <div class="tab-content postclass">'.implode( "\n", $tabs ).'</div>'."\n";
46 }
47 return $return;
48 }
49 function kad_tab_pane_function($atts, $content ) {
50 extract(shortcode_atts(array(
51 'title' => 'Tab %d',
52 'start' => ''
53 ), $atts));
54 if ($start != '') {$active = 'active';} else {$active = '';}
55
56 $x = $GLOBALS['tab_count'];
57 $GLOBALS['tabs'][$x] = array( 'title' => $title, 'active' => $active, 'link' => $GLOBALS['tab_count'], 'content' => do_shortcode( $content ) );
58
59 $GLOBALS['tab_count']++;
60 }
61
62 //Shortcode for columns
63 function kad_column_shortcode_function( $atts, $content ) {
64 return '<div class="row">'.do_shortcode($content).'</div>';
65 }
66 function kad_hcolumn_shortcode_function( $atts, $content ) {
67 return '<div class="row">'.do_shortcode($content).'</div>';
68 }
69 function kad_column11_function( $atts, $content ) {
70 return '<div class="col-md-11">'.do_shortcode($content).'</div>';
71 }
72 function kad_column10_function( $atts, $content ) {
73 return '<div class="col-md-10">'.do_shortcode($content).'</div>';
74 }
75 function kad_column9_function( $atts, $content ) {
76 return '<div class="col-md-9">'.do_shortcode($content).'</div>';
77 }
78 function kad_column8_function( $atts, $content ) {
79 return '<div class="col-md-8">'.do_shortcode($content).'</div>';
80 }
81 function kad_column7_function( $atts, $content ) {
82 return '<div class="col-md-7">'.do_shortcode($content).'</div>';
83 }
84 function kad_column6_function( $atts, $content ) {
85 return '<div class="col-md-6">'.do_shortcode($content).'</div>';
86 }
87 function kad_column5_function( $atts, $content ) {
88 return '<div class="col-md-5">'.do_shortcode($content).'</div>';
89 }
90 function kad_column4_function( $atts, $content ) {
91 return '<div class="col-md-4">'.do_shortcode($content).'</div>';
92 }
93 function kad_column3_function( $atts, $content ) {
94 return '<div class="col-md-3">'.do_shortcode($content).'</div>';
95 }
96 function kad_column2_function( $atts, $content ) {
97 return '<div class="col-md-2">'.do_shortcode($content).'</div>';
98 }
99 function kad_column1_function( $atts, $content ) {
100 return '<div class="col-md-1">'.do_shortcode($content).'</div>';
101 }
102 //Shortcode for Icons
103 function kad_icon_shortcode_function( $atts) {
104 extract(shortcode_atts(array(
105 'icon' => '',
106 'size' => '',
107 'color' => '',
108 'float'=> ''
109 ), $atts));
110 if ($float != '') $output = '<i class="'.$icon.'" style="font-size:'.$size.'; color:'.$color.'; float:'.$float.'; padding:10px;"></i>';
111 else $output = '<i class="'.$icon.'" style="font-size:'.$size.'; color:'.$color.';"></i>';
112 return $output;
113 }
114 // Video Shortcode
115 function kad_video_shortcode_function( $atts, $content) {
116 extract(shortcode_atts(array(
117 'width' => '',
118 ), $atts));
119 if($width != '') { $output = '<div style="max-width:'.$width.'px;"><div class="videofit">'.$content.'</div></div>';}
120 else { $output = '<div class="videofit">'.$content.'</div>'; }
121 return $output;
122 }
123 //Button
124 function kad_button_shortcode_function( $atts) {
125 extract(shortcode_atts(array(
126 'bcolor' => '',
127 'link' => '',
128 'text' => '',
129 'tcolor' => '',
130 ), $atts));
131 return '<a href="'.$link.'" class="kad-btn kad-btn-primary" style="background-color:'.$bcolor.'; color:'.$tcolor.'">'.$text.'</a>';
132 }
133 function kad_blockquote_shortcode_function( $atts, $content) {
134 extract(shortcode_atts(array(
135 'align' => 'center',
136 ), $atts));
137 switch ($align)
138 {
139 case "center":
140 $output = '<div class="blockquote-full postclass clearfix">' . do_shortcode($content) . '</div>';
141 break;
142
143 case "left":
144 $output = '<div class="blockquote-left postclass clearfix">' . do_shortcode($content) . '</div>';
145 break;
146
147 case "right":
148 $output = '<div class="blockquote-right postclass clearfix">' . do_shortcode($content) . '</div>';
149 break;
150 }
151 return $output;
152 }
153 function kad_pullquote_shortcode_function( $atts, $content) {
154 extract( shortcode_atts( array(
155 'align' => 'center'
156 ), $atts ));
157
158 switch ($align)
159 {
160 case "center":
161 $output = '<div class="pullquote-center">' . do_shortcode($content) . '</div>';
162 break;
163
164 case "right":
165 $output = '<div class="pullquote-right">' . do_shortcode($content) . '</div>';
166 break;
167
168 case "left":
169 $output = '<div class="pullquote-left">' . do_shortcode($content) . '</div>';
170 break;
171 }
172
173 return $output;
174 }
175 function kad_hrule_function( ) {
176 return '<div class="hrule clearfix"></div>';
177 }
178 function kad_hrpadding10_function( ) {
179 return '<div class="space_20 clearfix"></div>';
180 }
181 function kad_hrpadding20_function( ) {
182 return '<div class="space_40 clearfix"></div>';
183 }
184 function kad_hrpadding40_function( ) {
185 return '<div class="space_80 clearfix"></div>';
186 }
187 function kad_clearfix_function( ) {
188 return '<div class="clearfix"></div>';
189 }
190 function kad_columnhelper_function( ) {
191 return '';
192 }
193 function virtuetoolkit_register_shortcodes(){
194 add_shortcode('accordion', 'kad_accordion_shortcode_function');
195 add_shortcode('pane', 'kad_accordion_pane_function');
196 add_shortcode('tabs', 'kad_tab_shortcode_function');
197 add_shortcode('tab', 'kad_tab_pane_function');
198 add_shortcode('columns', 'kad_column_shortcode_function');
199 add_shortcode('hcolumns', 'kad_hcolumn_shortcode_function');
200 add_shortcode('span11', 'kad_column11_function');
201 add_shortcode('span10', 'kad_column10_function');
202 add_shortcode('span9', 'kad_column9_function');
203 add_shortcode('span8', 'kad_column8_function');
204 add_shortcode('span7', 'kad_column7_function');
205 add_shortcode('span6', 'kad_column6_function');
206 add_shortcode('span5', 'kad_column5_function');
207 add_shortcode('span4', 'kad_column4_function');
208 add_shortcode('span3', 'kad_column3_function');
209 add_shortcode('span2', 'kad_column2_function');
210 add_shortcode('span1', 'kad_column1_function');
211 add_shortcode('columnhelper', 'kad_columnhelper_function');
212 add_shortcode('icon', 'kad_icon_shortcode_function');
213 add_shortcode('video', 'kad_video_shortcode_function');
214 add_shortcode('pullquote', 'kad_pullquote_shortcode_function');
215 add_shortcode('blockquote', 'kad_blockquote_shortcode_function');
216 add_shortcode('btn', 'kad_button_shortcode_function');
217 add_shortcode('hr', 'kad_hrule_function');
218 add_shortcode('space_20', 'kad_hrpadding10_function');
219 add_shortcode('space_40', 'kad_hrpadding20_function');
220 add_shortcode('space_80', 'kad_hrpadding40_function');
221 add_shortcode('clear', 'kad_clearfix_function');
222 }
223 add_action( 'init', 'virtuetoolkit_register_shortcodes');
224
225
226 function virtue_register_button( $buttons ) {
227 array_push( $buttons, "|", "kadcolumns" );
228 array_push( $buttons, "|", "kaddivider" );
229 array_push( $buttons, "|", "kadaccordion" );
230 array_push( $buttons, "|", "kadquote" );
231 array_push( $buttons, "|", "kadbtn" );
232 array_push( $buttons, "|", "kadicon" );
233 array_push( $buttons, "|", "kadvideo" );
234 return $buttons;
235 }
236 function virtue_add_plugin( $plugin_array ) {
237 $plugin_array['kadcolumns'] = VIRTUE_TOOLKIT_URL . '/shortcodes/columns/columns_shortgen.js';
238 $plugin_array['kadicon'] = VIRTUE_TOOLKIT_URL . '/shortcodes/icons/icon_shortgen.js';
239 $plugin_array['kadaccordion'] = VIRTUE_TOOLKIT_URL . '/shortcodes/accordion/accordion_shortgen.js';
240 $plugin_array['kadvideo'] = VIRTUE_TOOLKIT_URL . '/shortcodes/video/video_shortgen.js';
241 $plugin_array['kadquote'] = VIRTUE_TOOLKIT_URL . '/shortcodes/pullquote/quote_shortgen.js';
242 $plugin_array['kadbtn'] = VIRTUE_TOOLKIT_URL . '/shortcodes/btns/btns_shortgen.js';
243 $plugin_array['kaddivider'] = VIRTUE_TOOLKIT_URL . '/shortcodes/divider/divider_shortgen.js';
244 return $plugin_array;
245 }
246 function virtue_tinymce_shortcode_button() {
247
248 if ( ! current_user_can('edit_posts') && ! current_user_can('edit_pages') ) {
249 return;
250 }
251
252 if ( get_user_option('rich_editing') == 'true' ) {
253 add_filter( 'mce_external_plugins', 'virtue_add_plugin' );
254 add_filter( 'mce_buttons_3', 'virtue_register_button' );
255 }
256
257 }
258 add_action('init', 'virtue_tinymce_shortcode_button');
259