TemplatesNext ToolKit - Version 2.0.9

Version Description

  • Updated Font Awesome
  • Added support for page builder
  • Added widgets for page builder
Download this release

Release Info

Developer marsian
Plugin Icon 128x128 TemplatesNext ToolKit
Version 2.0.9
Comparing to
See all releases

Code changes from version 2.0.8 to 2.0.9

css/rangeslider.css ADDED
@@ -0,0 +1,106 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .rangeslider,
2
+ .rangeslider__fill {
3
+ display: block;
4
+ border-radius: 6px;
5
+ }
6
+
7
+ .rangeslider {
8
+ background: #e6e6e6;
9
+ position: relative;
10
+ }
11
+
12
+ .rangeslider--horizontal {
13
+ height: 12px;
14
+ width: 100%;
15
+ }
16
+
17
+ .rangeslider--vertical {
18
+ width: 20px;
19
+ min-height: 150px;
20
+ max-height: 100%;
21
+ }
22
+
23
+ .rangeslider--disabled {
24
+ filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=40);
25
+ opacity: 0.4;
26
+ }
27
+
28
+ .rangeslider__fill {
29
+ background: #00ff00;
30
+ position: absolute;
31
+ }
32
+ .rangeslider--horizontal .rangeslider__fill {
33
+ top: 0;
34
+ height: 100%;
35
+ }
36
+ .rangeslider--vertical .rangeslider__fill {
37
+ bottom: 0;
38
+ width: 100%;
39
+ }
40
+
41
+ .rangeslider__handle {
42
+ background: white;
43
+ border: 1px solid #ccc;
44
+ cursor: pointer;
45
+ display: inline-block;
46
+ width: 40px;
47
+ height: 40px;
48
+ position: absolute;
49
+ background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmZmZmZiIgc3RvcC1vcGFjaXR5PSIwLjAiLz48c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMwMDAwMDAiIHN0b3Atb3BhY2l0eT0iMC4xIi8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgZmlsbD0idXJsKCNncmFkKSIgLz48L3N2Zz4g');
50
+ background-size: 100%;
51
+ background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, rgba(255, 255, 255, 0)), color-stop(100%, rgba(0, 0, 0, 0.1)));
52
+ background-image: -moz-linear-gradient(rgba(255, 255, 255, 0), rgba(0, 0, 0, 0.1));
53
+ background-image: -webkit-linear-gradient(rgba(255, 255, 255, 0), rgba(0, 0, 0, 0.1));
54
+ background-image: linear-gradient(rgba(255, 255, 255, 0), rgba(0, 0, 0, 0.1));
55
+ -moz-box-shadow: 0 0 8px rgba(0, 0, 0, 0.3);
56
+ -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.3);
57
+ box-shadow: 0 0 8px rgba(0, 0, 0, 0.3);
58
+ -moz-border-radius: 50%;
59
+ -webkit-border-radius: 50%;
60
+ border-radius: 50%;
61
+ }
62
+ .rangeslider__handle:after {
63
+ content: "";
64
+ display: block;
65
+ width: 18px;
66
+ height: 18px;
67
+ margin: auto;
68
+ position: absolute;
69
+ top: 0;
70
+ right: 0;
71
+ bottom: 0;
72
+ left: 0;
73
+ background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzAwMDAwMCIgc3RvcC1vcGFjaXR5PSIwLjEzIi8+PHN0b3Agb2Zmc2V0PSIxMDAlIiBzdG9wLWNvbG9yPSIjZmZmZmZmIiBzdG9wLW9wYWNpdHk9IjAuMCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');
74
+ background-size: 100%;
75
+ background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, rgba(0, 0, 0, 0.13)), color-stop(100%, rgba(255, 255, 255, 0)));
76
+ background-image: -moz-linear-gradient(rgba(0, 0, 0, 0.13), rgba(255, 255, 255, 0));
77
+ background-image: -webkit-linear-gradient(rgba(0, 0, 0, 0.13), rgba(255, 255, 255, 0));
78
+ background-image: linear-gradient(rgba(0, 0, 0, 0.13), rgba(255, 255, 255, 0));
79
+ -moz-border-radius: 50%;
80
+ -webkit-border-radius: 50%;
81
+ border-radius: 50%;
82
+ }
83
+ .rangeslider__handle:active, .rangeslider--active .rangeslider__handle {
84
+ background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzAwMDAwMCIgc3RvcC1vcGFjaXR5PSIwLjEiLz48c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMwMDAwMDAiIHN0b3Atb3BhY2l0eT0iMC4xMiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');
85
+ background-size: 100%;
86
+ background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, rgba(0, 0, 0, 0.1)), color-stop(100%, rgba(0, 0, 0, 0.12)));
87
+ background-image: -moz-linear-gradient(rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.12));
88
+ background-image: -webkit-linear-gradient(rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.12));
89
+ background-image: linear-gradient(rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.12));
90
+ }
91
+ .rangeslider--horizontal .rangeslider__handle {
92
+ top: -10px;
93
+ touch-action: pan-y;
94
+ -ms-touch-action: pan-y;
95
+ }
96
+ .rangeslider--vertical .rangeslider__handle {
97
+ left: -10px;
98
+ touch-action: pan-x;
99
+ -ms-touch-action: pan-x;
100
+ }
101
+
102
+ input[type="range"]:focus + .rangeslider .rangeslider__handle {
103
+ -moz-box-shadow: 0 0 8px rgba(255, 0, 255, 0.9);
104
+ -webkit-box-shadow: 0 0 8px rgba(255, 0, 255, 0.9);
105
+ box-shadow: 0 0 8px rgba(255, 0, 255, 0.9);
106
+ }
css/tx-admin-style.css CHANGED
@@ -142,11 +142,16 @@ ul.tx-fa-icons > li.active {
142
  #tx-image-form,
143
  #tx-team-form,
144
  #tx-animation-form,
145
- #tx-fancyblock-form {
 
146
  padding: 12px 16px;
147
  min-width: 480px;
148
  }
149
 
 
 
 
 
150
  .nx-sh-cancel {
151
  padding-top: 16px;
152
  }
@@ -215,4 +220,107 @@ ul.tx-fa-icons > li.active {
215
 
216
  #colorbox, #cboxOverlay, #cboxWrapper {
217
  z-index: 100055;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
218
  }
142
  #tx-image-form,
143
  #tx-team-form,
144
  #tx-animation-form,
145
+ #tx-fancyblock-form,
146
+ #tx-progressbar-form {
147
  padding: 12px 16px;
148
  min-width: 480px;
149
  }
150
 
151
+ #tx-progressbar-form {
152
+ min-width: 560px;
153
+ }
154
+
155
  .nx-sh-cancel {
156
  padding-top: 16px;
157
  }
220
 
221
  #colorbox, #cboxOverlay, #cboxWrapper {
222
  z-index: 100055;
223
+ }
224
+ /*
225
+ .nx-widselect {
226
+ width: 100%;
227
+ }
228
+ */
229
+
230
+ .nx-pb-para {
231
+ display: block;
232
+ clear: both;
233
+ border: 1px solid #e7e7e7;
234
+ padding: 4px 16px;
235
+ }
236
+ .nx-pb-lebel {
237
+ min-width: 16%;
238
+ display: inline-block;
239
+ line-height: 32px;
240
+ height: 32px;
241
+ font-weight: 600;
242
+ }
243
+ .nx-pb-input {
244
+ display: inline-block;
245
+ min-width: 48%;
246
+ line-height: 32px;
247
+ min-height: 32px;
248
+ }
249
+
250
+ .nx-icon-para {
251
+ display: block;
252
+ clear: both;
253
+ border: 1px solid #e7e7e7;
254
+ padding: 4px 16px;
255
+ }
256
+
257
+ .nx-icon-para .nx-pb-input{
258
+ max-width: 20%;
259
+ min-width: 120px;
260
+ vertical-align: top;
261
+ margin-left: 12px;
262
+ border: 4px solid #999;
263
+ }
264
+
265
+ .nx-icon-para .awedrop {
266
+ display: inline-block;
267
+ }
268
+
269
+ .nx-pb-lebel {
270
+ display: inline-block;
271
+ vertical-align: top;
272
+ }
273
+
274
+ .widget-type-wrapper .dashicons-screenoptions,
275
+ .widget-type-wrapper .dashicons-screenoptions::before {
276
+ color: #F60;
277
+ }
278
+
279
+ .tx-range-slider {
280
+ display: block;
281
+ clear: both;
282
+ -webkit-appearance: none;
283
+ width: 96%;
284
+ height: 24px;
285
+ background: #d3d3d3;
286
+ outline: none;
287
+ opacity: 0.8;
288
+ -webkit-transition: .2s;
289
+ transition: opacity .2s;
290
+ }
291
+
292
+ .nx-pb-para .tx-range-slider {
293
+ width: 48%;
294
+ min-width: 120px;
295
+ margin-left: 16%;
296
+ margin-left: calc( 16% + 6px );
297
+ }
298
+
299
+ .nx-pb-para .nx-pb-input.tx-range-prev {
300
+ }
301
+
302
+ .tx-range-slider:hover {
303
+ opacity: 1;
304
+ }
305
+
306
+ .tx-range-slider::-webkit-slider-thumb {
307
+ -webkit-appearance: none;
308
+ appearance: none;
309
+ width: 24px;
310
+ height: 24px;
311
+ background: #dd9933;
312
+ cursor: pointer;
313
+ border: none;
314
+ }
315
+
316
+ .tx-range-slider::-moz-range-thumb {
317
+ width: 24px;
318
+ height: 24px;
319
+ background: #dd9933;
320
+ cursor: pointer;
321
+ border: none;
322
+ }
323
+
324
+ .form-table input[type="text"].tx-range-prev {
325
+ width: 72px;
326
  }
css/tx-style.css CHANGED
@@ -2001,6 +2001,126 @@ span.tx-animate {
2001
  background-color: #F60;
2002
  }
2003
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2004
  @media (max-width: 720px) {
2005
  .tx-slider .tx-slider-box .nx-slider-container {
2006
  padding-top: 32px;
2001
  background-color: #F60;
2002
  }
2003
 
2004
+
2005
+ /* TX Skill bar */
2006
+
2007
+ .prograss-container {
2008
+ display: block;
2009
+ padding: 0px 0px 16px 0px;
2010
+ }
2011
+
2012
+ .pbar-outer {
2013
+ display: block;
2014
+ position: relative;
2015
+ width: 100%;
2016
+ background-color: #e7e7e7;
2017
+ border-radius: 3px;
2018
+ color: #FFFFFF;
2019
+ }
2020
+
2021
+ .pbar-inner {
2022
+ display: block;
2023
+ width: 0%;
2024
+ color: #FFFFFF;
2025
+ display: block;
2026
+ border-radius: 3px;
2027
+ position: absolute;
2028
+ left: 0px;
2029
+ top: 0px;
2030
+
2031
+ transition-property: all;
2032
+ transition-duration: 1.1s;
2033
+ transition-timing-function: ease-in-out;
2034
+ transition-delay: 0s;
2035
+ z-index: 501;
2036
+ overflow: hidden;
2037
+
2038
+ }
2039
+
2040
+ .pbar-text {
2041
+ display: block;
2042
+ position: absolute;
2043
+ overflow: visible;
2044
+ left: 0px;
2045
+ top: 0px;
2046
+ padding: 0px 16px;
2047
+ z-index: 502;
2048
+ color: #ffffff;
2049
+ font-weight: 500;
2050
+ font-size: 15px;
2051
+ text-align: right;
2052
+ transition-property: all;
2053
+ transition-duration: 1.1s;
2054
+ transition-timing-function: ease-in-out;
2055
+ transition-delay: 0s;
2056
+ width: auto;
2057
+ }
2058
+
2059
+ .bpercent {
2060
+ margin-left: 16px;
2061
+ }
2062
+
2063
+
2064
+ .pbar-inner .candystrip {
2065
+ position: absolute;
2066
+ top: 0;
2067
+ left: 0;
2068
+ right: -32px;
2069
+ bottom: 0;
2070
+ height: 100%;
2071
+ width: 100%;
2072
+ width: calc(100% + 32px);
2073
+
2074
+ background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.2)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.2)), color-stop(0.75, rgba(255, 255, 255, 0.2)), color-stop(0.75, transparent), to(transparent));
2075
+ background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
2076
+ background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
2077
+ background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
2078
+ background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
2079
+ -webkit-background-size: 32px 32px;
2080
+ -moz-background-size: 32px 32px;
2081
+ -o-background-size: 32px 32px;
2082
+ background-size: 32px 32px;
2083
+
2084
+ -webkit-animation: pace-stripe-animation 500ms linear infinite;
2085
+ -moz-animation: pace-stripe-animation 500ms linear infinite;
2086
+ -ms-animation: pace-stripe-animation 500ms linear infinite;
2087
+ -o-animation: pace-stripe-animation 500ms linear infinite;
2088
+ animation: pace-stripe-animation 500ms linear infinite;
2089
+ }
2090
+
2091
+ @-webkit-keyframes pace-stripe-animation {
2092
+ 0% { -webkit-transform: none; transform: none; }
2093
+ 100% { -webkit-transform: translate(-32px, 0); transform: translate(-32px, 0); }
2094
+ }
2095
+ @-moz-keyframes pace-stripe-animation {
2096
+ 0% { -moz-transform: none; transform: none; }
2097
+ 100% { -moz-transform: translate(-32px, 0); transform: translate(-32px, 0); }
2098
+ }
2099
+ @-o-keyframes pace-stripe-animation {
2100
+ 0% { -o-transform: none; transform: none; }
2101
+ 100% { -o-transform: translate(-32px, 0); transform: translate(-32px, 0); }
2102
+ }
2103
+ @-ms-keyframes pace-stripe-animation {
2104
+ 0% { -ms-transform: none; transform: none; }
2105
+ 100% { -ms-transform: translate(-32px, 0); transform: translate(-32px, 0); }
2106
+ }
2107
+ @keyframes pace-stripe-animation {
2108
+ 0% { transform: none; transform: none; }
2109
+ 100% { transform: translate(-32px, 0); transform: translate(-32px, 0); }
2110
+ }
2111
+
2112
+ .nx-cunter {
2113
+ display: block;
2114
+ clear: both;
2115
+ text-align: center;
2116
+ }
2117
+
2118
+ @media only screen and (max-width: 999px) {
2119
+ .nx-cunter {
2120
+ text-align: left;
2121
+ }
2122
+ }
2123
+
2124
  @media (max-width: 720px) {
2125
  .tx-slider .tx-slider-box .nx-slider-container {
2126
  padding-top: 32px;
inc/pb-widgets/widget-heading.php ADDED
@@ -0,0 +1,134 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ Widget Name: NX Heading For Page Builder
4
+ Description: NX heading Widget For Page Builder.
5
+ Author: templatesNext
6
+ Author URI:Author URI: http://www.TemplatesNext.org
7
+ */
8
+
9
+ class nx_heading_widget extends WP_Widget {
10
+
11
+ //function nx_heading_widget() {
12
+ function __construct() {
13
+ $widget_ops = array(
14
+ 'classname' => 'widget-nx-heading',
15
+ 'description' => 'Heading widget for pagebuilder',
16
+ 'panels_icon' => 'dashicons dashicons-screenoptions',
17
+ 'panels_groups' => array('tx')
18
+ );
19
+ parent::__construct( 'widget-nx-heading', 'TX Heading ( for PB )', $widget_ops );
20
+ }
21
+
22
+ function form($instance) {
23
+ $defaults = array(
24
+ 'style' => 'default',
25
+ 'heading_text' => 'Heading Text',
26
+ 'tag' => 'h2',
27
+ 'size' => '24',
28
+ 'margin' => '16',
29
+ 'align' => 'left'
30
+ );
31
+ $instance = wp_parse_args( (array) $instance, $defaults );
32
+
33
+ ?>
34
+ <div class="nx-widget-content">
35
+ <p class="nx-pb-para">
36
+ <label class="nx-pb-lebel"><?php _e('Heading Style', 'nx-admin');?>:</label>
37
+
38
+ <select id="<?php echo $this->get_field_id( 'style' ); ?>" name="<?php echo $this->get_field_name( 'style' ); ?>" value="<?php echo $instance['style']; ?>" class="nx-widselect nx-pb-input">
39
+ <option value="default"><?php _e('Default', 'nx-admin');?></option>
40
+ </select>
41
+ </p>
42
+ <p class="nx-pb-para">
43
+ <label class="nx-pb-lebel"><?php _e('Heading Text', 'nx-admin');?>:</label>
44
+ <input id="<?php echo $this->get_field_id( 'heading_text' ); ?>" name="<?php echo $this->get_field_name( 'heading_text' ); ?>" value="<?php echo $instance['heading_text']; ?>" class="nx-widenumber nx-pb-input" type="text" />
45
+ </p>
46
+ <p class="nx-pb-para">
47
+ <label class="nx-pb-lebel"><?php _e('Heading Tag', 'nx-admin');?>:</label>
48
+ <select id="<?php echo $this->get_field_id( 'tag' ); ?>" name="<?php echo $this->get_field_name( 'tag' ); ?>" value="<?php echo $instance['tag']; ?>" class="nx-widselect nx-pb-input">
49
+ <option value="h2"><?php _e('H2', 'nx-admin');?></option>
50
+ <option value="h1"><?php _e('H1', 'nx-admin');?></option>
51
+ <option value="h3"><?php _e('H3', 'nx-admin');?></option>
52
+ <option value="h4"><?php _e('H4', 'nx-admin');?></option>
53
+ <option value="h5"><?php _e('H5', 'nx-admin');?></option>
54
+ <option value="h6"><?php _e('H6', 'nx-admin');?></option>
55
+ <option value="div"><?php _e('DIV', 'nx-admin');?></option>
56
+ </select>
57
+ </p>
58
+ <p class="nx-pb-para">
59
+ <label class="nx-pb-lebel"><?php _e('Heading Font Size (in px)', 'nx-admin');?>:</label>
60
+ <input id="<?php echo $this->get_field_id( 'size' ); ?>" name="<?php echo $this->get_field_name( 'size' ); ?>" value="<?php echo $instance['size']; ?>" class="nx-pb-input tx-range-prev txPrevi" type="text" />
61
+ <input type="range" min="12" max="120" step="1" value="24" class="txRange tx-range-slider">
62
+ </p>
63
+ <p class="nx-pb-para">
64
+ <label class="nx-pb-lebel"><?php _e('Bottom Margin (in px)', 'nx-admin');?>:</label>
65
+ <input id="<?php echo $this->get_field_id( 'margin' ); ?>" name="<?php echo $this->get_field_name( 'margin' ); ?>" value="<?php echo $instance['margin']; ?>" class="nx-pb-input tx-range-prev txPrevi" type="text" />
66
+ <input type="range" min="0" max="120" step="1" value="16" class="txRange tx-range-slider">
67
+
68
+ </p>
69
+ <p class="nx-pb-para">
70
+ <label class="nx-pb-lebel"><?php _e('Heading Text Alignment', 'nx-admin');?>:</label>
71
+
72
+ <select id="<?php echo $this->get_field_id( 'align' ); ?>" name="<?php echo $this->get_field_name( 'align' ); ?>" value="<?php echo $instance['align']; ?>" class="nx-widselect nx-pb-input">
73
+ <option value="left"><?php _e('Left', 'nx-admin');?></option>
74
+ <option value="right"><?php _e('Right', 'nx-admin');?></option>
75
+ </select>
76
+ </p>
77
+
78
+ </div>
79
+ <script>
80
+
81
+ jQuery(document).ready(function($) {
82
+ $( "input.txRange" ).each(function( index ) {
83
+
84
+ var txRange = $(this);
85
+ var txPrevi = $(this).prev( ".txPrevi" );
86
+
87
+ txRange.bind("input", function() {
88
+ var newRange = txRange.val();
89
+ txPrevi.val(newRange);
90
+ });
91
+ });
92
+ });
93
+
94
+ </script>
95
+ <?php
96
+ }
97
+
98
+ function update($new_instance, $old_instance) {
99
+ $instance = $old_instance;
100
+ $instance['style'] = strip_tags( $new_instance['style'] );
101
+ $instance['heading_text'] = strip_tags( $new_instance['heading_text'] );
102
+ $instance['tag'] = strip_tags( $new_instance['tag'] );
103
+ $instance['size'] = strip_tags( $new_instance['size'] );
104
+ $instance['margin'] = strip_tags( $new_instance['margin'] );
105
+ $instance['align'] = strip_tags( $new_instance['align'] );
106
+ return $instance;
107
+ }
108
+
109
+ function widget($args, $instance) {
110
+
111
+ extract( $args );
112
+
113
+ $style = $instance['style'];
114
+ $heading_text = $instance['heading_text'];
115
+ $tag = $instance['tag'];
116
+ $size = $instance['size'];
117
+ $margin = $instance['margin'];
118
+ $align = $instance['align'];
119
+
120
+ $output = '';
121
+
122
+ $output .= '<div>[tx_heading style="'.$style.'" heading_text="'.$heading_text.'" tag="'.$tag.'" size="'.$size.'" margin="'.$margin.'" align="'.$align.'"]</div>';
123
+
124
+ echo $output;
125
+
126
+ }
127
+
128
+ }
129
+
130
+ add_action( 'widgets_init', 'nx_load_heading_widget' );
131
+
132
+ function nx_load_heading_widget() {
133
+ register_widget('nx_heading_widget');
134
+ }
inc/pb-widgets/widget-portfolio.php ADDED
@@ -0,0 +1,144 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ Widget Name: NX Portfolio For Page Builder
4
+ Description: NX portfolio Widget For Page Builder.
5
+ Author: templatesNext
6
+ Author URI:Author URI: http://www.TemplatesNext.org
7
+ */
8
+
9
+ class nx_portfolio_widget extends WP_Widget {
10
+
11
+ //function nx_portfolio_widget() {
12
+ function __construct() {
13
+ $widget_ops = array(
14
+ 'classname' => 'widget-nx-portfolio',
15
+ 'description' => 'Portfolio widget for pagebuilder',
16
+ 'panels_icon' => 'dashicons dashicons-screenoptions',
17
+ 'panels_groups' => array('tx')
18
+ );
19
+ parent::__construct( 'widget-nx-portfolio', 'TX Portfolio ( for PB )', $widget_ops );
20
+ }
21
+
22
+ function form($instance) {
23
+ $defaults = array(
24
+ 'style' => 'default',
25
+ 'items' => '8',
26
+ 'columns' => '4',
27
+ 'hide_cat' => 'no',
28
+ 'hide_excerpt' => 'no',
29
+ 'show_pagination' => 'no',
30
+ 'carousel' => 'no'
31
+ );
32
+ $instance = wp_parse_args( (array) $instance, $defaults );
33
+
34
+ ?>
35
+ <div class="nx-widget-content">
36
+ <p class="nx-pb-para">
37
+ <label class="nx-pb-lebel"><?php _e('Portfolio Style', 'nx-admin');?>:</label>
38
+
39
+ <select id="<?php echo $this->get_field_id( 'style' ); ?>" name="<?php echo $this->get_field_name( 'style' ); ?>" value="<?php echo $instance['style']; ?>" class="nx-widselect nx-pb-input">
40
+ <option value="default"><?php _e('Default', 'nx-admin');?></option>
41
+ <option value="gallery"><?php _e('Gallery', 'nx-admin');?></option>
42
+ </select>
43
+ </p>
44
+ <p class="nx-pb-para">
45
+ <label class="nx-pb-lebel"><?php _e('Number Of Items', 'nx-admin');?>:</label>
46
+ <input id="<?php echo $this->get_field_id( 'items' ); ?>" name="<?php echo $this->get_field_name( 'items' ); ?>" value="<?php echo $instance['items']; ?>" class="nx-pb-input tx-range-prev txPrevi" type="text" />
47
+ <input type="range" min="1" max="16" step="1" value="8" class="txRange tx-range-slider">
48
+ </p>
49
+ <p class="nx-pb-para">
50
+ <label class="nx-pb-lebel"><?php _e('Number Of Columns', 'nx-admin');?>:</label>
51
+ <input id="<?php echo $this->get_field_id( 'columns' ); ?>" name="<?php echo $this->get_field_name( 'columns' ); ?>" value="<?php echo $instance['columns']; ?>" class="nx-pb-input tx-range-prev txPrevi" type="text" />
52
+ <input type="range" min="1" max="4" step="1" value="4" class="txRange tx-range-slider">
53
+ </p>
54
+ <p class="nx-pb-para">
55
+ <label class="nx-pb-lebel"><?php _e('Hide Category', 'nx-admin');?>:</label>
56
+
57
+ <select id="<?php echo $this->get_field_id( 'hide_cat' ); ?>" name="<?php echo $this->get_field_name( 'hide_cat' ); ?>" value="<?php echo $instance['hide_cat']; ?>" class="nx-widselect nx-pb-input">
58
+ <option value="no"><?php _e('No', 'nx-admin');?></option>
59
+ <option value="yes"><?php _e('Yes', 'nx-admin');?></option>
60
+ </select>
61
+ </p>
62
+ <p class="nx-pb-para">
63
+ <label class="nx-pb-lebel"><?php _e('Hide Excerpt', 'nx-admin');?>:</label>
64
+
65
+ <select id="<?php echo $this->get_field_id( 'hide_excerpt' ); ?>" name="<?php echo $this->get_field_name( 'hide_excerpt' ); ?>" value="<?php echo $instance['hide_excerpt']; ?>" class="nx-widselect nx-pb-input">
66
+ <option value="no"><?php _e('No', 'nx-admin');?></option>
67
+ <option value="yes"><?php _e('Yes', 'nx-admin');?></option>
68
+ </select>
69
+ </p>
70
+ <p class="nx-pb-para">
71
+ <label class="nx-pb-lebel"><?php _e('Show Pagination', 'nx-admin');?>:</label>
72
+
73
+ <select id="<?php echo $this->get_field_id( 'show_pagination' ); ?>" name="<?php echo $this->get_field_name( 'show_pagination' ); ?>" value="<?php echo $instance['show_pagination']; ?>" class="nx-widselect nx-pb-input">
74
+ <option value="no"><?php _e('No', 'nx-admin');?></option>
75
+ <option value="yes"><?php _e('Yes', 'nx-admin');?></option>
76
+ </select>
77
+ </p>
78
+ <p class="nx-pb-para">
79
+ <label class="nx-pb-lebel"><?php _e('Show As Carousel', 'nx-admin');?>:</label>
80
+
81
+ <select id="<?php echo $this->get_field_id( 'carousel' ); ?>" name="<?php echo $this->get_field_name( 'carousel' ); ?>" value="<?php echo $instance['carousel']; ?>" class="nx-widselect nx-pb-input">
82
+ <option value="no"><?php _e('No', 'nx-admin');?></option>
83
+ <option value="yes"><?php _e('Yes', 'nx-admin');?></option>
84
+ </select>
85
+ </p>
86
+ </div>
87
+ <script>
88
+
89
+ jQuery(document).ready(function($) {
90
+ $( "input.txRange" ).each(function( index ) {
91
+
92
+ var txRange = $(this);
93
+ var txPrevi = $(this).prev( ".txPrevi" );
94
+
95
+ txRange.bind("input", function() {
96
+ var newRange = txRange.val();
97
+ txPrevi.val(newRange);
98
+ });
99
+ });
100
+ });
101
+
102
+ </script>
103
+ <?php
104
+ }
105
+
106
+ function update($new_instance, $old_instance) {
107
+ $instance = $old_instance;
108
+ $instance['style'] = strip_tags( $new_instance['style'] );
109
+ $instance['items'] = strip_tags( $new_instance['items'] );
110
+ $instance['columns'] = strip_tags( $new_instance['columns'] );
111
+ $instance['hide_cat'] = strip_tags( $new_instance['hide_cat'] );
112
+ $instance['hide_excerpt'] = strip_tags( $new_instance['hide_excerpt'] );
113
+ $instance['show_pagination'] = strip_tags( $new_instance['show_pagination'] );
114
+ $instance['carousel'] = strip_tags( $new_instance['carousel'] );
115
+ return $instance;
116
+ }
117
+
118
+ function widget($args, $instance) {
119
+
120
+ extract( $args );
121
+
122
+ $style = $instance['style'];
123
+ $items = $instance['items'];
124
+ $columns = $instance['columns'];
125
+ $hide_cat = $instance['hide_cat'];
126
+ $hide_excerpt = $instance['hide_excerpt'];
127
+ $show_pagination = $instance['show_pagination'];
128
+ $carousel = $instance['carousel'];
129
+
130
+ $output = '';
131
+
132
+ $output .= '<div>[tx_portfolio style="'.$style.'" items="'.$items.'" columns="'.$columns.'" hide_cat="'.$hide_cat.'" hide_excerpt="'.$hide_excerpt.'" show_pagination="'.$show_pagination.'" carousel="'.$carousel.'"]</div>';
133
+
134
+ echo $output;
135
+
136
+ }
137
+
138
+ }
139
+
140
+ add_action( 'widgets_init', 'nx_load_portfolio_widget' );
141
+
142
+ function nx_load_portfolio_widget() {
143
+ register_widget('nx_portfolio_widget');
144
+ }
inc/pb-widgets/widget-posts.php ADDED
@@ -0,0 +1,130 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ Widget Name: NX Posts/Blog For Page Builder
4
+ Description: NX Posts/Blog Widget For Page Builder.
5
+ Author: templatesNext
6
+ Author URI:Author URI: http://www.TemplatesNext.org
7
+ */
8
+
9
+ class nx_posts_widget extends WP_Widget {
10
+
11
+ //function nx_posts_widget() {
12
+ function __construct() {
13
+ $widget_ops = array(
14
+ 'classname' => 'widget-nx-posts',
15
+ 'description' => 'Posts/Blog widget for Page Builder',
16
+ 'panels_icon' => 'dashicons dashicons-screenoptions',
17
+ 'panels_groups' => array('tx')
18
+ );
19
+ parent::__construct( 'widget-nx-posts', 'TX Posts/Blog ( for PB )', $widget_ops );
20
+ }
21
+
22
+ function form($instance) {
23
+ $defaults = array(
24
+ 'style' => 'default',
25
+ 'items' => '8',
26
+ 'columns' => '4',
27
+ 'showcat' => 'show',
28
+ 'hide_excerpt' => 'no',
29
+ 'show_pagination' => 'no',
30
+ 'carousel' => 'no',
31
+ );
32
+ $instance = wp_parse_args( (array) $instance, $defaults );
33
+
34
+ ?>
35
+
36
+ <div class="nx-widget-content">
37
+ <p class="nx-pb-para">
38
+ <label class="nx-pb-lebel"><?php _e('Number Of Items', 'nx-admin');?>:</label>
39
+ <input id="<?php echo $this->get_field_id( 'items' ); ?>" name="<?php echo $this->get_field_name( 'items' ); ?>" value="<?php echo $instance['items']; ?>" class="nx-pb-input tx-range-prev txPrevi" type="text" />
40
+ <input type="range" min="1" max="16" step="1" value="8" class="txRange tx-range-slider">
41
+ </p>
42
+ <p class="nx-pb-para">
43
+ <label class="nx-pb-lebel"><?php _e('Number Of Columns', 'nx-admin');?>:</label>
44
+ <input id="<?php echo $this->get_field_id( 'columns' ); ?>" name="<?php echo $this->get_field_name( 'columns' ); ?>" value="<?php echo $instance['columns']; ?>" class="nx-pb-input tx-range-prev txPrevi" type="text" />
45
+ <input type="range" min="1" max="4" step="1" value="4" class="txRange tx-range-slider">
46
+ </p>
47
+ <p class="nx-pb-para">
48
+ <label class="nx-pb-lebel"><?php _e('Show/Hide Category', 'nx-admin');?>:</label>
49
+
50
+ <select id="<?php echo $this->get_field_id( 'showcat' ); ?>" name="<?php echo $this->get_field_name( 'showcat' ); ?>" value="<?php echo $instance['showcat']; ?>" class="nx-widselect nx-pb-input">
51
+ <option value="show"><?php _e('Show', 'nx-admin');?></option>
52
+ <option value="hide"><?php _e('Hide', 'nx-admin');?></option>
53
+ </select>
54
+ </p>
55
+ <p class="nx-pb-para">
56
+ <label class="nx-pb-lebel"><?php _e('Show Pagination', 'nx-admin');?>:</label>
57
+
58
+ <select id="<?php echo $this->get_field_id( 'show_pagination' ); ?>" name="<?php echo $this->get_field_name( 'show_pagination' ); ?>" value="<?php echo $instance['show_pagination']; ?>" class="nx-widselect nx-pb-input">
59
+ <option value="no"><?php _e('No', 'nx-admin');?></option>
60
+ <option value="yes"><?php _e('Yes', 'nx-admin');?></option>
61
+ </select>
62
+ </p>
63
+ <p class="nx-pb-para">
64
+ <label class="nx-pb-lebel"><?php _e('Show As Carousel', 'nx-admin');?>:</label>
65
+
66
+ <select id="<?php echo $this->get_field_id( 'carousel' ); ?>" name="<?php echo $this->get_field_name( 'carousel' ); ?>" value="<?php echo $instance['carousel']; ?>" class="nx-widselect nx-pb-input">
67
+ <option value="no"><?php _e('No', 'nx-admin');?></option>
68
+ <option value="yes"><?php _e('Yes', 'nx-admin');?></option>
69
+ </select>
70
+ </p>
71
+ </div>
72
+ <script>
73
+
74
+ jQuery(document).ready(function($) {
75
+ $( "input.txRange" ).each(function( index ) {
76
+
77
+ var txRange = $(this);
78
+ var txPrevi = $(this).prev( ".txPrevi" );
79
+
80
+ txRange.bind("input", function() {
81
+ var newRange = txRange.val();
82
+ txPrevi.val(newRange);
83
+ });
84
+ });
85
+ });
86
+
87
+ </script>
88
+ <?php
89
+ }
90
+
91
+ function update($new_instance, $old_instance) {
92
+ $instance = $old_instance;
93
+ //$instance['style'] = strip_tags( $new_instance['style'] );
94
+ $instance['items'] = strip_tags( $new_instance['items'] );
95
+ $instance['columns'] = strip_tags( $new_instance['columns'] );
96
+ $instance['showcat'] = strip_tags( $new_instance['showcat'] );
97
+ //$instance['hide_excerpt'] = strip_tags( $new_instance['hide_excerpt'] );
98
+ $instance['show_pagination'] = strip_tags( $new_instance['show_pagination'] );
99
+ $instance['carousel'] = strip_tags( $new_instance['carousel'] );
100
+ return $instance;
101
+ }
102
+
103
+ function widget($args, $instance) {
104
+
105
+ extract( $args );
106
+
107
+ //$style = $instance['style'];
108
+ $items = $instance['items'];
109
+ $columns = $instance['columns'];
110
+ $showcat = $instance['showcat'];
111
+ //$hide_excerpt = $instance['hide_excerpt'];
112
+ $show_pagination = $instance['show_pagination'];
113
+ $carousel = $instance['carousel'];
114
+
115
+ $output = '';
116
+
117
+ $output .= '<div>[tx_blog items="'.$items.'" columns="'.$columns.'" showcat="'.$showcat.'" show_pagination="'.$show_pagination.'" carousel="'.$carousel.'"]</div>';
118
+
119
+ echo $output;
120
+
121
+ }
122
+
123
+ }
124
+
125
+ add_action( 'widgets_init', 'nx_load_posts_widget' );
126
+
127
+ function nx_load_posts_widget() {
128
+ register_widget('nx_posts_widget');
129
+ }
130
+
inc/pb-widgets/widget-prodscroll.php ADDED
@@ -0,0 +1,116 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ Widget Name: NX Products For Page Builder
4
+ Description: NX WooCommerce Products Scroll Widget For Page Builder.
5
+ Author: templatesNext
6
+ Author URI:Author URI: http://www.TemplatesNext.org
7
+ */
8
+
9
+ class nx_prodscroll_widget extends WP_Widget {
10
+
11
+ //function nx_prodscroll_widget() {
12
+ function __construct() {
13
+ $widget_ops = array(
14
+ 'classname' => 'widget-nx-prodscroll',
15
+ 'description' => 'Product Carousel widget for pagebuilder',
16
+ 'panels_icon' => 'dashicons dashicons-screenoptions',
17
+ 'panels_groups' => array('tx')
18
+ );
19
+ parent::__construct( 'widget-nx-prodscroll', 'TX WooCommerce Products Carousel ( for PB )', $widget_ops );
20
+ }
21
+
22
+ function form($instance) {
23
+ $defaults = array(
24
+ 'type' => 'recent_products',
25
+ 'items' => '8',
26
+ 'columns' => '4',
27
+ 'ids' => ''
28
+ );
29
+ $instance = wp_parse_args( (array) $instance, $defaults );
30
+
31
+ //[tx_prodscroll type="product_categories" ids="" columns="4" items="8"]
32
+ ?>
33
+ <div class="nx-widget-content">
34
+ <p class="nx-pb-para">
35
+ <label class="nx-pb-lebel"><?php _e('Portfolio Style', 'nx-admin');?>:</label>
36
+
37
+ <select id="<?php echo $this->get_field_id( 'type' ); ?>" name="<?php echo $this->get_field_name( 'type' ); ?>" value="<?php echo $instance['type']; ?>" class="nx-widselect nx-pb-input">
38
+
39
+ <option value="recent_products"><?php _e('Recent Products', 'nx-admin');?></option>
40
+ <option value="product_categories"><?php _e('Product Categories', 'nx-admin');?></option>
41
+ <option value="featured_products"><?php _e('Featured Products', 'nx-admin');?></option>
42
+ <option value="sale_products"><?php _e('Products On Sale', 'nx-admin');?></option>
43
+ <option value="best_selling_products"><?php _e('Best Selling Products', 'nx-admin');?></option>
44
+ <option value="top_rated_products"><?php _e('Top Rated Products', 'nx-admin');?></option>
45
+ <option value="products"><?php _e('Products By Ids', 'nx-admin');?></option>
46
+
47
+ </select>
48
+ </p>
49
+ <p class="nx-pb-para">
50
+ <label class="nx-pb-lebel"><?php _e('Number Of Items', 'nx-admin');?>:</label>
51
+ <input id="<?php echo $this->get_field_id( 'items' ); ?>" name="<?php echo $this->get_field_name( 'items' ); ?>" value="<?php echo $instance['items']; ?>" class="nx-pb-input tx-range-prev txPrevi" type="text" />
52
+ <input type="range" min="1" max="16" step="1" value="8" class="txRange tx-range-slider">
53
+ </p>
54
+ <p class="nx-pb-para">
55
+ <label class="nx-pb-lebel"><?php _e('Number Of Columns', 'nx-admin');?>:</label>
56
+ <input id="<?php echo $this->get_field_id( 'columns' ); ?>" name="<?php echo $this->get_field_name( 'columns' ); ?>" value="<?php echo $instance['columns']; ?>" class="nx-pb-input tx-range-prev txPrevi" type="text" />
57
+ <input type="range" min="1" max="4" step="1" value="4" class="txRange tx-range-slider">
58
+ </p>
59
+ <p class="nx-pb-para">
60
+ <label class="nx-pb-lebel"><?php _e('Category/Product Ids (optional)', 'nx-admin');?>:</label>
61
+ <input id="<?php echo $this->get_field_id( 'ids' ); ?>" name="<?php echo $this->get_field_name( 'ids' ); ?>" value="<?php echo $instance['ids']; ?>" class="nx-widselect nx-pb-input" type="text" />
62
+ <br /><span class="small"><?php _e('Comma separeted category or product ids (works with "Product Categories" and "Products By Ids")', 'nx-admin');?></span>
63
+ </p>
64
+ </div>
65
+ <script>
66
+
67
+ jQuery(document).ready(function($) {
68
+ $( "input.txRange" ).each(function( index ) {
69
+
70
+ var txRange = $(this);
71
+ var txPrevi = $(this).prev( ".txPrevi" );
72
+
73
+ txRange.bind("input", function() {
74
+ var newRange = txRange.val();
75
+ txPrevi.val(newRange);
76
+ });
77
+ });
78
+ });
79
+
80
+ </script>
81
+ <?php
82
+ }
83
+
84
+ function update($new_instance, $old_instance) {
85
+ $instance = $old_instance;
86
+ $instance['type'] = strip_tags( $new_instance['type'] );
87
+ $instance['items'] = strip_tags( $new_instance['items'] );
88
+ $instance['columns'] = strip_tags( $new_instance['columns'] );
89
+ $instance['ids'] = strip_tags( $new_instance['ids'] );
90
+ return $instance;
91
+ }
92
+
93
+ function widget($args, $instance) {
94
+
95
+ extract( $args );
96
+
97
+ $type = $instance['type'];
98
+ $items = $instance['items'];
99
+ $columns = $instance['columns'];
100
+ $ids = $instance['ids'];
101
+
102
+ $output = '';
103
+
104
+ $output .= '<div>[tx_prodscroll type="'.$type.'" items="'.$items.'" columns="'.$columns.'" ids="'.$ids.'"]</div>';
105
+
106
+ echo $output;
107
+
108
+ }
109
+
110
+ }
111
+
112
+ add_action( 'widgets_init', 'nx_load_prodscroll_widget' );
113
+
114
+ function nx_load_prodscroll_widget() {
115
+ register_widget('nx_prodscroll_widget');
116
+ }
inc/pb-widgets/widget-progressbar.php ADDED
@@ -0,0 +1,140 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /*
4
+ *
5
+ * NX Skill Bar/Progress Bar For Page Builder
6
+ * ------------------------------------------------
7
+ * TemplatesNext
8
+ * Copyright TemplatesNext 2014 - http://www.TemplatesNext.org
9
+ */
10
+
11
+ /*
12
+ * Plugin Name: NX Skill Bar/Progress Bar For Page Builder Widget
13
+ * Plugin URI: http://www.TemplatesNext.org
14
+ * Description: NX progressbar Widget For Page Builder
15
+ * Author: templatesNext
16
+ * Version: 1.0
17
+ * Author URI: http://www.TemplatesNext.org
18
+ */
19
+
20
+ class nx_progressbar_widget extends WP_Widget {
21
+
22
+ //function nx_progressbar_widget() {
23
+ function __construct() {
24
+ $widget_ops = array(
25
+ 'classname' => 'widget-nx-progressbar',
26
+ 'description' => 'Skill Bar/Progress Bar widget for pagebuilder',
27
+ 'panels_icon' => 'dashicons dashicons-screenoptions',
28
+ 'panels_groups' => array('tx')
29
+ );
30
+ parent::__construct( 'widget-nx-progressbar', 'TX Skill Bar/Progress Bar ( for PB )', $widget_ops );
31
+ }
32
+
33
+ function form($instance) {
34
+ $defaults = array(
35
+ 'skill_name' => 'Skill Title',
36
+ 'percent' => 72,
37
+ 'barcolor' => '#dd9933',
38
+ 'trackcolor' => '#f6dab0',
39
+ 'barheight' => 32,
40
+ 'candystrip' => 'no',
41
+ 'class' => '',
42
+ );
43
+ $instance = wp_parse_args( (array) $instance, $defaults );
44
+
45
+ ?>
46
+ <div class="nx-widget-content">
47
+ <p class="nx-pb-para">
48
+ <label class="nx-pb-lebel"><?php _e('Skill Name', 'nx-admin');?>:</label>
49
+ <input id="<?php echo $this->get_field_id( 'skill_name' ); ?>" name="<?php echo $this->get_field_name( 'skill_name' ); ?>" value="<?php echo $instance['skill_name']; ?>" class="nx-widenumber nx-pb-input" type="text" />
50
+ </p>
51
+ <p class="nx-pb-para">
52
+ <label class="nx-pb-lebel"><?php _e('Percent', 'nx-admin');?>:</label>
53
+ <input id="<?php echo $this->get_field_id( 'percent' ); ?>" name="<?php echo $this->get_field_name( 'percent' ); ?>" value="<?php echo $instance['percent']; ?>" class="nx-pb-input tx-range-prev txPrevi" type="text" />
54
+ <input type="range" min="1" max="100" step="1" value="72" class="txRange tx-range-slider">
55
+ </p>
56
+ <p class="nx-pb-para">
57
+ <label class="nx-pb-lebel"><?php _e('Bar Color', 'nx-admin');?>:</label>
58
+ <input id="<?php echo $this->get_field_id( 'barcolor' ); ?>" name="<?php echo $this->get_field_name( 'barcolor' ); ?>" value="<?php echo $instance['barcolor']; ?>" class="nx-widenumber nx-pb-input tx-color" type="text" />
59
+ </p>
60
+ <p class="nx-pb-para">
61
+ <label class="nx-pb-lebel"><?php _e('Track Color', 'nx-admin');?>:</label>
62
+ <input id="<?php echo $this->get_field_id( 'trackcolor' ); ?>" name="<?php echo $this->get_field_name( 'trackcolor' ); ?>" value="<?php echo $instance['trackcolor']; ?>" class="nx-widenumber nx-pb-input tx-color" type="text" />
63
+ </p>
64
+ <p class="nx-pb-para">
65
+ <label class="nx-pb-lebel"><?php _e('Bar Height', 'nx-admin');?>:</label>
66
+ <input id="<?php echo $this->get_field_id( 'barheight' ); ?>" name="<?php echo $this->get_field_name( 'barheight' ); ?>" value="<?php echo $instance['barheight']; ?>" class="nx-pb-input tx-range-prev txPrevi" type="text" />
67
+ <input type="range" min="24" max="48" step="1" value="32" class="txRange tx-range-slider">
68
+
69
+ </p>
70
+ <p class="nx-pb-para">
71
+ <label class="nx-pb-lebel"><?php _e('Candystrip Animation', 'nx-admin');?>:</label>
72
+ <select id="<?php echo $this->get_field_id( 'candystrip' ); ?>" name="<?php echo $this->get_field_name( 'candystrip' ); ?>" value="<?php echo $instance['candystrip']; ?>" class="nx-widselect nx-pb-input">
73
+ <option value="no"><?php _e('Yes', 'nx-admin');?></option>
74
+ <option value="yes"><?php _e('No', 'nx-admin');?></option>
75
+ </select>
76
+ </p>
77
+ <p class="nx-pb-para">
78
+ <label class="nx-pb-lebel"><?php _e('Class', 'nx-admin');?>:</label>
79
+ <input id="<?php echo $this->get_field_id( 'class' ); ?>" name="<?php echo $this->get_field_name( 'class' ); ?>" value="<?php echo $instance['class']; ?>" class="nx-widenumber nx-pb-input" type="text" />
80
+ </p>
81
+ </div>
82
+ <script>
83
+
84
+ jQuery(document).ready(function($) {
85
+ $('.tx-color').wpColorPicker();
86
+
87
+ $( "input.txRange" ).each(function( index ) {
88
+
89
+ var txRange = $(this);
90
+ var txPrevi = $(this).prev( ".txPrevi" );
91
+
92
+ txRange.bind("input", function() {
93
+ var newRange = txRange.val();
94
+ txPrevi.val(newRange);
95
+ });
96
+ });
97
+ });
98
+
99
+ </script>
100
+ <?php
101
+ }
102
+
103
+ function update($new_instance, $old_instance) {
104
+ $instance = $old_instance;
105
+ $instance['skill_name'] = strip_tags( $new_instance['skill_name'] );
106
+ $instance['percent'] = strip_tags( $new_instance['percent'] );
107
+ $instance['barcolor'] = strip_tags( $new_instance['barcolor'] );
108
+ $instance['trackcolor'] = strip_tags( $new_instance['trackcolor'] );
109
+ $instance['barheight'] = strip_tags( $new_instance['barheight'] );
110
+ $instance['candystrip'] = strip_tags( $new_instance['candystrip'] );
111
+
112
+ return $instance;
113
+ }
114
+
115
+ function widget($args, $instance) {
116
+
117
+ extract( $args );
118
+
119
+ $skill_name = $instance['skill_name'];
120
+ $percent = $instance['percent'];
121
+ $barcolor = $instance['barcolor'];
122
+ $trackcolor = $instance['trackcolor'];
123
+ $barheight = $instance['barheight'];
124
+ $candystrip = $instance['candystrip'];
125
+
126
+ $output = '';
127
+
128
+ $output .= '<div>[tx_progressbar skill_name="'.$skill_name.'" percent="'.$percent.'" barcolor="'.$barcolor.'" trackcolor="'.$trackcolor.'" barheight="'.$barheight.'" candystrip="'.$candystrip.'"]</div>';
129
+
130
+ echo $output;
131
+
132
+ }
133
+
134
+ }
135
+
136
+ add_action( 'widgets_init', 'nx_load_progressbar_widget' );
137
+
138
+ function nx_load_progressbar_widget() {
139
+ register_widget('nx_progressbar_widget');
140
+ }
inc/pb-widgets/widget-services.php ADDED
@@ -0,0 +1,113 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ Widget Name: NX Services For Page Builder
4
+ Description: NX Services Widget For Page Builder.
5
+ Author: templatesNext
6
+ Author URI:Author URI: http://www.TemplatesNext.org
7
+ */
8
+
9
+ class nx_services_widget extends WP_Widget {
10
+
11
+ //function nx_services_widget() {
12
+ function __construct() {
13
+ $widget_ops = array(
14
+ 'classname' => 'widget-nx-services',
15
+ 'description' => 'Services widget for Page Builder',
16
+ 'panels_icon' => 'dashicons dashicons-screenoptions',
17
+ 'panels_groups' => array('tx')
18
+ );
19
+ parent::__construct( 'widget-nx-services', 'TX Services ( for PB )', $widget_ops );
20
+ }
21
+
22
+ function form($instance) {
23
+ $defaults = array(
24
+ 'style' => 'default',
25
+ 'title' => 'Service Title',
26
+ 'icon' => 'fa-star',
27
+ 'content' => 'Services content...',
28
+ );
29
+ $instance = wp_parse_args( (array) $instance, $defaults );
30
+
31
+ //[tx_services style="curved" title="Services Title" icon="fa-star"]Services content[/tx_services]
32
+
33
+ ?>
34
+
35
+ <div class="nx-widget-content">
36
+ <p class="nx-pb-para">
37
+ <label class="nx-pb-lebel"><?php _e('Service Style', 'nx-admin');?>:</label>
38
+
39
+ <select id="<?php echo $this->get_field_id( 'style' ); ?>" name="<?php echo $this->get_field_name( 'style' ); ?>" value="<?php echo $instance['style']; ?>" class="nx-widselect nx-pb-input">
40
+ <option value="default"><?php _e('Default (Circle)', 'nx-admin');?></option>
41
+ <option value="curved"><?php _e('Curved Corner', 'nx-admin');?></option>
42
+ <option value="square"><?php _e('Square', 'nx-admin');?></option>
43
+ </select>
44
+ </p>
45
+ <p class="nx-pb-para">
46
+ <label class="nx-pb-lebel"><?php _e('Service Title', 'nx-admin');?>:</label>
47
+ <input id="<?php echo $this->get_field_id( 'title' ); ?>" name="<?php echo $this->get_field_name( 'title' ); ?>" value="<?php echo $instance['title']; ?>" class="nx-widenumber nx-pb-input" type="text" />
48
+ </p>
49
+ <div class="nx-icon-para">
50
+ <label class="nx-pb-lebel"><?php _e('Service Icon', 'nx-admin');?>:</label>
51
+ <div class="awedrop" id="awedrop_<?php echo $this->get_field_name( 'icon' ); ?>">
52
+ </div>
53
+ <input id="<?php echo $this->get_field_id( 'icon' ); ?>" name="<?php echo $this->get_field_name( 'icon' ); ?>" value="<?php echo $instance['icon']; ?>" class="nx-widerange nx-pb-input nx-service-icon" type="text" />
54
+ </div>
55
+ <p class="nx-pb-para">
56
+ <label class="nx-pb-lebel"><?php _e('Service Content', 'nx-admin');?>:</label>
57
+
58
+ <textarea id="<?php echo $this->get_field_id( 'content' ); ?>" name="<?php echo $this->get_field_name( 'content' ); ?>" value="<?php echo $instance['content']; ?>" class="nx-widselect nx-pb-input"><?php echo $instance['content']; ?></textarea>
59
+ </p>
60
+ </div>
61
+ <script>
62
+ document.getElementById("awedrop_<?php echo $this->get_field_name( 'icon' ); ?>").innerHTML = tx_font_awesome_include('tx-fa-icons');
63
+
64
+ jQuery(document).ready(function ($) {
65
+ //$( ".nx-widget-content" ).each(function( index ) {
66
+ //});
67
+ $('.nx-widget-content').on('click', '.tx-fa-icons .fa', function() {
68
+ $('.tx-fa-icons .active').removeClass('active');
69
+ $(this).addClass('active');
70
+ var tx_icon = jQuery(this).data('value');
71
+ $('.nx-service-icon').val(tx_icon);
72
+ });
73
+ });
74
+ </script>
75
+
76
+ <?php
77
+ }
78
+
79
+ function update($new_instance, $old_instance) {
80
+ $instance = $old_instance;
81
+ $instance['style'] = strip_tags( $new_instance['style'] );
82
+ $instance['title'] = strip_tags( $new_instance['title'] );
83
+ $instance['icon'] = strip_tags( $new_instance['icon'] );
84
+ $instance['content'] = strip_tags( $new_instance['content'] );
85
+
86
+ return $instance;
87
+ }
88
+
89
+ function widget($args, $instance) {
90
+
91
+ extract( $args );
92
+
93
+ $style = $instance['style'];
94
+ $title = $instance['title'];
95
+ $icon = $instance['icon'];
96
+ $content = $instance['content'];
97
+
98
+ $output = '';
99
+
100
+ $output .= '<div>[tx_services style="'.$style.'" title="'.$title.'" icon="'.$icon.'"]'.$content.'[/tx_services]</div>';
101
+
102
+ echo $output;
103
+
104
+ }
105
+
106
+ }
107
+
108
+ add_action( 'widgets_init', 'nx_load_services_widget' );
109
+
110
+ function nx_load_services_widget() {
111
+ register_widget('nx_services_widget');
112
+ }
113
+
inc/pb-widgets/widget-spacer.php ADDED
@@ -0,0 +1,93 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /*
4
+ *
5
+ * NX Spacer For Page Builder
6
+ * ------------------------------------------------
7
+ * TemplatesNext
8
+ * Copyright TemplatesNext 2014 - http://www.TemplatesNext.org
9
+ */
10
+
11
+ /*
12
+ * Plugin Name: NX Spacer For Page Builder Widget
13
+ * Plugin URI: http://www.TemplatesNext.org
14
+ * Description: NX spacer Widget For Page Builder
15
+ * Author: templatesNext
16
+ * Version: 1.0
17
+ * Author URI: http://www.TemplatesNext.org
18
+ */
19
+
20
+ class nx_spacer_widget extends WP_Widget {
21
+
22
+ //function nx_spacer_widget() {
23
+ function __construct() {
24
+ $widget_ops = array(
25
+ 'classname' => 'widget-nx-spacer',
26
+ 'description' => 'Spacer widget for pagebuilder',
27
+ 'panels_icon' => 'dashicons dashicons-screenoptions',
28
+ 'panels_groups' => array('tx')
29
+ );
30
+ parent::__construct( 'widget-nx-spacer', 'TX Spacer ( for PB )', $widget_ops );
31
+ }
32
+
33
+ function form($instance) {
34
+ $defaults = array(
35
+ 'spacer_size' => '16'
36
+ );
37
+ $instance = wp_parse_args( (array) $instance, $defaults );
38
+
39
+ ?>
40
+ <div class="nx-widget-content">
41
+ <p class="nx-pb-para">
42
+ <label class="nx-pb-lebel"><?php _e('Spacer Size', 'nx-admin');?>:</label>
43
+ <input id="<?php echo $this->get_field_id( 'spacer_size' ); ?>" name="<?php echo $this->get_field_name( 'spacer_size' ); ?>" value="<?php echo $instance['spacer_size']; ?>" class="nx-pb-input tx-range-prev txPrevi" type="text" />
44
+ <input type="range" min="1" max="240" step="1" value="16" class="txRange tx-range-slider">
45
+ <small><?php _e('Vertical space between 2 elements in px', 'nx-admin');?></small>
46
+ </p>
47
+ </div>
48
+ <script>
49
+
50
+ jQuery(document).ready(function($) {
51
+ $( "input.txRange" ).each(function( index ) {
52
+
53
+ var txRange = $(this);
54
+ var txPrevi = $(this).prev( ".txPrevi" );
55
+
56
+ txRange.bind("input", function() {
57
+ var newRange = txRange.val();
58
+ txPrevi.val(newRange);
59
+ });
60
+ });
61
+ });
62
+
63
+ </script>
64
+ <?php
65
+ }
66
+
67
+ function update($new_instance, $old_instance) {
68
+ $instance = $old_instance;
69
+ $instance['spacer_size'] = strip_tags( $new_instance['spacer_size'] );
70
+ return $instance;
71
+ }
72
+
73
+ function widget($args, $instance) {
74
+
75
+ extract( $args );
76
+
77
+ $spacer_size = $instance['spacer_size'];
78
+
79
+ $output = '';
80
+
81
+ $output .= '<div>[tx_spacer size="'.$spacer_size.'"]</div>';
82
+
83
+ echo $output;
84
+
85
+ }
86
+
87
+ }
88
+
89
+ add_action( 'widgets_init', 'nx_load_spacer_widget' );
90
+
91
+ function nx_load_spacer_widget() {
92
+ register_widget('nx_spacer_widget');
93
+ }
inc/pb-widgets/widget-team.php ADDED
@@ -0,0 +1,85 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ Widget Name: NX Team For Page Builder
4
+ Description: NX Team Members Caropusel Widget For Page Builder.
5
+ Author: templatesNext
6
+ Author URI:Author URI: http://www.TemplatesNext.org
7
+ */
8
+
9
+ class nx_team_widget extends WP_Widget {
10
+
11
+ //function nx_team_widget() {
12
+ function __construct() {
13
+ $widget_ops = array(
14
+ 'classname' => 'widget-nx-team',
15
+ 'description' => 'Team Carousel widget for pagebuilder',
16
+ 'panels_icon' => 'dashicons dashicons-screenoptions',
17
+ 'panels_groups' => array('tx')
18
+ );
19
+ parent::__construct( 'widget-nx-team', 'TX Team Members Carousel ( for PB )', $widget_ops );
20
+ }
21
+
22
+ function form($instance) {
23
+ $defaults = array(
24
+ 'items' => '8',
25
+ 'columns' => '4',
26
+ //'ids' => ''
27
+ );
28
+ $instance = wp_parse_args( (array) $instance, $defaults );
29
+
30
+ //[tx_team type="product_categories" ids="" columns="4" items="8"]
31
+ ?>
32
+ <div class="nx-widget-content">
33
+ <p class="nx-pb-para">
34
+ <label class="nx-pb-lebel"><?php _e('Number Of Items', 'nx-admin');?>:</label>
35
+ <input id="<?php echo $this->get_field_id( 'items' ); ?>" name="<?php echo $this->get_field_name( 'items' ); ?>" value="<?php echo $instance['items']; ?>" class="nx-widenumber nx-pb-input" type="number" min="1" max="16" step="1" />
36
+ </p>
37
+ <p class="nx-pb-para">
38
+ <label class="nx-pb-lebel"><?php _e('Number Of Columns', 'nx-admin');?>:</label>
39
+ <input id="<?php echo $this->get_field_id( 'columns' ); ?>" name="<?php echo $this->get_field_name( 'columns' ); ?>" value="<?php echo $instance['columns']; ?>" class="nx-widerange nx-pb-input" type="number" min="1" max="4" step="1" />
40
+ </p>
41
+ <!--
42
+ <p class="nx-pb-para">
43
+ <label class="nx-pb-lebel"><?php _e('Category/Product Ids (optional)', 'nx-admin');?>:</label>
44
+ <input id="<?php echo $this->get_field_id( 'ids' ); ?>" name="<?php echo $this->get_field_name( 'ids' ); ?>" value="<?php echo $instance['ids']; ?>" class="nx-widselect nx-pb-input" type="text" />
45
+ <br /><span class="small"><?php _e('Comma separeted category or product ids (works with "Product Categories" and "Products By Ids")', 'nx-admin');?></span>
46
+ </p>
47
+ -->
48
+ </div>
49
+ <?php
50
+ }
51
+
52
+ function update($new_instance, $old_instance) {
53
+ $instance = $old_instance;
54
+ $instance['type'] = strip_tags( $new_instance['type'] );
55
+ $instance['items'] = strip_tags( $new_instance['items'] );
56
+ $instance['columns'] = strip_tags( $new_instance['columns'] );
57
+ //$instance['ids'] = strip_tags( $new_instance['ids'] );
58
+
59
+ return $instance;
60
+ }
61
+
62
+ function widget($args, $instance) {
63
+
64
+ extract( $args );
65
+
66
+ $type = $instance['type'];
67
+ $items = $instance['items'];
68
+ $columns = $instance['columns'];
69
+ //$ids = $instance['ids'];
70
+
71
+ $output = '';
72
+
73
+ $output .= '<div>[tx_team type="'.$type.'" items="'.$items.'" columns="'.$columns.'"]</div>';
74
+
75
+ echo $output;
76
+
77
+ }
78
+
79
+ }
80
+
81
+ add_action( 'widgets_init', 'nx_load_team_widget' );
82
+
83
+ function nx_load_team_widget() {
84
+ register_widget('nx_team_widget');
85
+ }
inc/pb-widgets/widget-testimonials.php ADDED
@@ -0,0 +1,78 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /*
4
+ *
5
+ * NX Testimonials For Page Builder
6
+ * ------------------------------------------------
7
+ * TemplatesNext
8
+ * Copyright TemplatesNext 2014 - http://www.TemplatesNext.org
9
+ */
10
+
11
+ /*
12
+ * Plugin Name: NX Testimonials For Page Builder Widget
13
+ * Plugin URI: http://www.TemplatesNext.org
14
+ * Description: NX testimonials Widget For Page Builder
15
+ * Author: templatesNext
16
+ * Version: 1.0
17
+ * Author URI: http://www.TemplatesNext.org
18
+ */
19
+
20
+ class nx_testimonials_widget extends WP_Widget {
21
+
22
+ //function nx_testimonials_widget() {
23
+ function __construct() {
24
+ $widget_ops = array(
25
+ 'classname' => 'widget-nx-testimonials',
26
+ 'description' => 'Testimonials widget for pagebuilder',
27
+ 'panels_icon' => 'dashicons dashicons-screenoptions',
28
+ 'panels_groups' => array('tx')
29
+ );
30
+ parent::__construct( 'widget-nx-testimonials', 'TX Testimonials ( for PB )', $widget_ops );
31
+ }
32
+
33
+ function form($instance) {
34
+ $defaults = array(
35
+ 'testimonials_style' => 'default'
36
+ );
37
+ $instance = wp_parse_args( (array) $instance, $defaults );
38
+
39
+ ?>
40
+ <div class="nx-widget-content">
41
+ <p class="nx-pb-para">
42
+ <label class="nx-pb-lebel"><?php _e('Testimonials Style', 'nx-admin');?>:</label>
43
+
44
+ <select id="<?php echo $this->get_field_id( 'testimonials_style' ); ?>" name="<?php echo $this->get_field_name( 'testimonials_style' ); ?>" value="<?php echo $instance['testimonials_style']; ?>" class="nx-widselect nx-pb-input">
45
+ <option value="default"><?php _e('Default', 'nx-admin');?></option>
46
+ </select>
47
+ </p>
48
+ </div>
49
+ <?php
50
+ }
51
+
52
+ function update($new_instance, $old_instance) {
53
+ $instance = $old_instance;
54
+ $instance['testimonials_style'] = strip_tags( $new_instance['testimonials_style'] );
55
+ return $instance;
56
+ }
57
+
58
+ function widget($args, $instance) {
59
+
60
+ extract( $args );
61
+
62
+ $testimonials_style = $instance['testimonials_style'];
63
+
64
+ $output = '';
65
+
66
+ $output .= '<div>[tx_testimonial style="'.$testimonials_style.'"]</div>';
67
+
68
+ echo $output;
69
+
70
+ }
71
+
72
+ }
73
+
74
+ add_action( 'widgets_init', 'nx_load_testimonials_widget' );
75
+
76
+ function nx_load_testimonials_widget() {
77
+ register_widget('nx_testimonials_widget');
78
+ }
js/my-script.js CHANGED
@@ -0,0 +1,4 @@
 
 
 
 
1
+ /*
2
+
3
+
4
+ */
js/rangeslider.min.js ADDED
@@ -0,0 +1,2 @@
 
 
1
+ /*! rangeslider.js - v2.3.0 | (c) 2016 @andreruffert | MIT license | https://github.com/andreruffert/rangeslider.js */
2
+ !function(a){"use strict";"function"==typeof define&&define.amd?define(["jquery"],a):"object"==typeof exports?module.exports=a(require("jquery")):a(jQuery)}(function(a){"use strict";function b(){var a=document.createElement("input");return a.setAttribute("type","range"),"text"!==a.type}function c(a,b){var c=Array.prototype.slice.call(arguments,2);return setTimeout(function(){return a.apply(null,c)},b)}function d(a,b){return b=b||100,function(){if(!a.debouncing){var c=Array.prototype.slice.apply(arguments);a.lastReturnVal=a.apply(window,c),a.debouncing=!0}return clearTimeout(a.debounceTimeout),a.debounceTimeout=setTimeout(function(){a.debouncing=!1},b),a.lastReturnVal}}function e(a){return a&&(0===a.offsetWidth||0===a.offsetHeight||a.open===!1)}function f(a){for(var b=[],c=a.parentNode;e(c);)b.push(c),c=c.parentNode;return b}function g(a,b){function c(a){"undefined"!=typeof a.open&&(a.open=!a.open)}var d=f(a),e=d.length,g=[],h=a[b];if(e){for(var i=0;i<e;i++)g[i]=d[i].style.cssText,d[i].style.setProperty?d[i].style.setProperty("display","block","important"):d[i].style.cssText+=";display: block !important",d[i].style.height="0",d[i].style.overflow="hidden",d[i].style.visibility="hidden",c(d[i]);h=a[b];for(var j=0;j<e;j++)d[j].style.cssText=g[j],c(d[j])}return h}function h(a,b){var c=parseFloat(a);return Number.isNaN(c)?b:c}function i(a){return a.charAt(0).toUpperCase()+a.substr(1)}function j(b,e){if(this.$window=a(window),this.$document=a(document),this.$element=a(b),this.options=a.extend({},n,e),this.polyfill=this.options.polyfill,this.orientation=this.$element[0].getAttribute("data-orientation")||this.options.orientation,this.onInit=this.options.onInit,this.onSlide=this.options.onSlide,this.onSlideEnd=this.options.onSlideEnd,this.DIMENSION=o.orientation[this.orientation].dimension,this.DIRECTION=o.orientation[this.orientation].direction,this.DIRECTION_STYLE=o.orientation[this.orientation].directionStyle,this.COORDINATE=o.orientation[this.orientation].coordinate,this.polyfill&&m)return!1;this.identifier="js-"+k+"-"+l++,this.startEvent=this.options.startEvent.join("."+this.identifier+" ")+"."+this.identifier,this.moveEvent=this.options.moveEvent.join("."+this.identifier+" ")+"."+this.identifier,this.endEvent=this.options.endEvent.join("."+this.identifier+" ")+"."+this.identifier,this.toFixed=(this.step+"").replace(".","").length-1,this.$fill=a('<div class="'+this.options.fillClass+'" />'),this.$handle=a('<div class="'+this.options.handleClass+'" />'),this.$range=a('<div class="'+this.options.rangeClass+" "+this.options[this.orientation+"Class"]+'" id="'+this.identifier+'" />').insertAfter(this.$element).prepend(this.$fill,this.$handle),this.$element.css({position:"absolute",width:"1px",height:"1px",overflow:"hidden",opacity:"0"}),this.handleDown=a.proxy(this.handleDown,this),this.handleMove=a.proxy(this.handleMove,this),this.handleEnd=a.proxy(this.handleEnd,this),this.init();var f=this;this.$window.on("resize."+this.identifier,d(function(){c(function(){f.update(!1,!1)},300)},20)),this.$document.on(this.startEvent,"#"+this.identifier+":not(."+this.options.disabledClass+")",this.handleDown),this.$element.on("change."+this.identifier,function(a,b){if(!b||b.origin!==f.identifier){var c=a.target.value,d=f.getPositionFromValue(c);f.setPosition(d)}})}Number.isNaN=Number.isNaN||function(a){return"number"==typeof a&&a!==a};var k="rangeslider",l=0,m=b(),n={polyfill:!0,orientation:"horizontal",rangeClass:"rangeslider",disabledClass:"rangeslider--disabled",activeClass:"rangeslider--active",horizontalClass:"rangeslider--horizontal",verticalClass:"rangeslider--vertical",fillClass:"rangeslider__fill",handleClass:"rangeslider__handle",startEvent:["mousedown","touchstart","pointerdown"],moveEvent:["mousemove","touchmove","pointermove"],endEvent:["mouseup","touchend","pointerup"]},o={orientation:{horizontal:{dimension:"width",direction:"left",directionStyle:"left",coordinate:"x"},vertical:{dimension:"height",direction:"top",directionStyle:"bottom",coordinate:"y"}}};return j.prototype.init=function(){this.update(!0,!1),this.onInit&&"function"==typeof this.onInit&&this.onInit()},j.prototype.update=function(a,b){a=a||!1,a&&(this.min=h(this.$element[0].getAttribute("min"),0),this.max=h(this.$element[0].getAttribute("max"),100),this.value=h(this.$element[0].value,Math.round(this.min+(this.max-this.min)/2)),this.step=h(this.$element[0].getAttribute("step"),1)),this.handleDimension=g(this.$handle[0],"offset"+i(this.DIMENSION)),this.rangeDimension=g(this.$range[0],"offset"+i(this.DIMENSION)),this.maxHandlePos=this.rangeDimension-this.handleDimension,this.grabPos=this.handleDimension/2,this.position=this.getPositionFromValue(this.value),this.$element[0].disabled?this.$range.addClass(this.options.disabledClass):this.$range.removeClass(this.options.disabledClass),this.setPosition(this.position,b)},j.prototype.handleDown=function(a){if(a.preventDefault(),this.$document.on(this.moveEvent,this.handleMove),this.$document.on(this.endEvent,this.handleEnd),this.$range.addClass(this.options.activeClass),!((" "+a.target.className+" ").replace(/[\n\t]/g," ").indexOf(this.options.handleClass)>-1)){var b=this.getRelativePosition(a),c=this.$range[0].getBoundingClientRect()[this.DIRECTION],d=this.getPositionFromNode(this.$handle[0])-c,e="vertical"===this.orientation?this.maxHandlePos-(b-this.grabPos):b-this.grabPos;this.setPosition(e),b>=d&&b<d+this.handleDimension&&(this.grabPos=b-d)}},j.prototype.handleMove=function(a){a.preventDefault();var b=this.getRelativePosition(a),c="vertical"===this.orientation?this.maxHandlePos-(b-this.grabPos):b-this.grabPos;this.setPosition(c)},j.prototype.handleEnd=function(a){a.preventDefault(),this.$document.off(this.moveEvent,this.handleMove),this.$document.off(this.endEvent,this.handleEnd),this.$range.removeClass(this.options.activeClass),this.$element.trigger("change",{origin:this.identifier}),this.onSlideEnd&&"function"==typeof this.onSlideEnd&&this.onSlideEnd(this.position,this.value)},j.prototype.cap=function(a,b,c){return a<b?b:a>c?c:a},j.prototype.setPosition=function(a,b){var c,d;void 0===b&&(b=!0),c=this.getValueFromPosition(this.cap(a,0,this.maxHandlePos)),d=this.getPositionFromValue(c),this.$fill[0].style[this.DIMENSION]=d+this.grabPos+"px",this.$handle[0].style[this.DIRECTION_STYLE]=d+"px",this.setValue(c),this.position=d,this.value=c,b&&this.onSlide&&"function"==typeof this.onSlide&&this.onSlide(d,c)},j.prototype.getPositionFromNode=function(a){for(var b=0;null!==a;)b+=a.offsetLeft,a=a.offsetParent;return b},j.prototype.getRelativePosition=function(a){var b=i(this.COORDINATE),c=this.$range[0].getBoundingClientRect()[this.DIRECTION],d=0;return"undefined"!=typeof a.originalEvent["client"+b]?d=a.originalEvent["client"+b]:a.originalEvent.touches&&a.originalEvent.touches[0]&&"undefined"!=typeof a.originalEvent.touches[0]["client"+b]?d=a.originalEvent.touches[0]["client"+b]:a.currentPoint&&"undefined"!=typeof a.currentPoint[this.COORDINATE]&&(d=a.currentPoint[this.COORDINATE]),d-c},j.prototype.getPositionFromValue=function(a){var b,c;return b=(a-this.min)/(this.max-this.min),c=Number.isNaN(b)?0:b*this.maxHandlePos},j.prototype.getValueFromPosition=function(a){var b,c;return b=a/(this.maxHandlePos||1),c=this.step*Math.round(b*(this.max-this.min)/this.step)+this.min,Number(c.toFixed(this.toFixed))},j.prototype.setValue=function(a){a===this.value&&""!==this.$element[0].value||this.$element.val(a).trigger("input",{origin:this.identifier})},j.prototype.destroy=function(){this.$document.off("."+this.identifier),this.$window.off("."+this.identifier),this.$element.off("."+this.identifier).removeAttr("style").removeData("plugin_"+k),this.$range&&this.$range.length&&this.$range[0].parentNode.removeChild(this.$range[0])},a.fn[k]=function(b){var c=Array.prototype.slice.call(arguments,1);return this.each(function(){var d=a(this),e=d.data("plugin_"+k);e||d.data("plugin_"+k,e=new j(this,b)),"string"==typeof b&&e[b].apply(e,c)})},"rangeslider.js is available in jQuery context e.g $(selector).rangeslider(options);"});
js/tx-script.js CHANGED
@@ -302,5 +302,21 @@ jQuery(document).ready(function ($) {
302
  }
303
 
304
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
305
  });
306
 
302
  }
303
 
304
 
305
+ // progress/skill bar
306
+ $('.prograss-container').each(function (index) {
307
+ var _this = $(this);
308
+
309
+ var bar_percent = _this.data("progress-percent")+'%';
310
+
311
+ _this.children('.pbar-outer').children('.pbar-text').children('.bpercent').html(bar_percent);
312
+
313
+ _this.one('inview', function () {
314
+ setTimeout( function () {
315
+ _this.children('.pbar-outer').children('.pbar-inner').width(bar_percent);
316
+ }, (Math.floor((Math.random() * 400) + 40)));
317
+ });
318
+
319
+ });
320
+
321
  });
322
 
js/tx_main.js CHANGED
@@ -592,6 +592,3 @@ function tx_slider_cat(){
592
 
593
 
594
 
595
-
596
-
597
-
592
 
593
 
594
 
 
 
 
readme.txt CHANGED
@@ -4,7 +4,7 @@ Contributors: marsian
4
  Tags: shortcode, shortcodes, columns, column, section, sections, portfolio, testimonial, border, borders, button, buttons, masonry, posts, post_type, font awesome, icons, fontawesome
5
  Requires at least: 3.6
6
  Tested up to: 4.8
7
- Stable tag: 2.0.8
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
@@ -21,6 +21,10 @@ Demo and documentation : [http://www.templatesnext.org/icreate/?page_id=541](htt
21
 
22
  https://www.youtube.com/watch?v=vqTHQCN2ci4
23
 
 
 
 
 
24
  Some of the shortcode may not work properly with any other themes.
25
 
26
  == Installation ==
@@ -29,6 +33,11 @@ Install the plugin into the `/wp-content/plugins/` folder, and activate it.
29
 
30
 
31
  == Changelog ==
 
 
 
 
 
32
  = 2.0.5 =
33
  * Added Youtube Video shortcode
34
  * Added Fullscreen Video/Image slider
@@ -80,8 +89,8 @@ Install the plugin into the `/wp-content/plugins/` folder, and activate it.
80
 
81
 
82
  1. Fill in the post type Portfolio, Testimonial, itrans slider and team. Use the [tx] button to open the shortcode generator popup.
83
- 2. Choose the shortcode to generate.
84
- 3. Enter/select your shortcode parameters and insert in your page.
85
 
86
 
87
 
4
  Tags: shortcode, shortcodes, columns, column, section, sections, portfolio, testimonial, border, borders, button, buttons, masonry, posts, post_type, font awesome, icons, fontawesome
5
  Requires at least: 3.6
6
  Tested up to: 4.8
7
+ Stable tag: 2.0.9
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
21
 
22
  https://www.youtube.com/watch?v=vqTHQCN2ci4
23
 
24
+ = Page Builder Support =
25
+
26
+ **TemplatesNext Toolkit** not only supports **Page Builder by SiteOrigin**, but it extends it with ToolKit functionality.
27
+
28
  Some of the shortcode may not work properly with any other themes.
29
 
30
  == Installation ==
33
 
34
 
35
  == Changelog ==
36
+ = 2.0.9 =
37
+ * Updated Font Awesome
38
+ * Added support for page builder
39
+ * Added widgets for page builder
40
+
41
  = 2.0.5 =
42
  * Added Youtube Video shortcode
43
  * Added Fullscreen Video/Image slider
89
 
90
 
91
  1. Fill in the post type Portfolio, Testimonial, itrans slider and team. Use the [tx] button to open the shortcode generator popup.
92
+ 2. Choose the shortcode to generate. Enter/select your shortcode parameters and insert in your page.
93
+ 3. Using with plugin *Page Builder by SiteOrigin*
94
 
95
 
96
 
screenshot-1.gif ADDED
Binary file
screenshot-1.png DELETED
Binary file
screenshot-2.gif ADDED
Binary file
screenshot-2.png DELETED
Binary file
screenshot-3.gif ADDED
Binary file
screenshot-3.png DELETED
Binary file
shortcodes.php CHANGED
@@ -932,7 +932,13 @@ function tx_vslider_function($atts, $content = null) {
932
  $overlay = esc_attr($atts['overlay']);
933
  $reduct = esc_attr($atts['reduct']);
934
 
935
- $button_bg_color = esc_attr(get_theme_mod('primary_color', '#95C837'));
 
 
 
 
 
 
936
 
937
  if ( strpos( $atts['vurl'], 'youtu' ) !== false )
938
  {
@@ -1027,6 +1033,46 @@ function tx_youtube_function($atts) {
1027
 
1028
  endif;
1029
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1030
 
1031
 
1032
  function tx_register_shortcodes(){
@@ -1049,7 +1095,8 @@ function tx_register_shortcodes(){
1049
  add_shortcode('tx_animate', 'tx_animate_function');
1050
  add_shortcode('tx_fancyblock', 'tx_fancyblock_function');
1051
  add_shortcode('tx_vslider', 'tx_vslider_function');
1052
- add_shortcode('tx_youtube', 'tx_youtube_function');
 
1053
  }
1054
 
1055
  add_action( 'init', 'tx_register_shortcodes');
932
  $overlay = esc_attr($atts['overlay']);
933
  $reduct = esc_attr($atts['reduct']);
934
 
935
+ if ( function_exists('kirki_get_option') )
936
+ {
937
+ $button_bg_color = esc_attr(kirki_get_option('primary_color', '#95C837'));
938
+ } else
939
+ {
940
+ $button_bg_color = esc_attr(get_theme_mod('primary_color', '#95C837'));
941
+ }
942
 
943
  if ( strpos( $atts['vurl'], 'youtu' ) !== false )
944
  {
1033
 
1034
  endif;
1035
 
1036
+ // Skill bar or progress bar
1037
+ if ( !function_exists('tx_progressbar_function') ) :
1038
+
1039
+ function tx_progressbar_function($atts, $content = null) {
1040
+
1041
+ //[tx_progressbar skill_name=”HTML5″ percent=”90″ barcolor=”#dd3333″ trackcolor=”#dd9b9b” barheight=”28″ candystrip=”no”]
1042
+
1043
+ $atts = shortcode_atts(array(
1044
+ 'skill_name' => 'HTML5',
1045
+ 'percent' => 72,
1046
+ 'barcolor' => '#dd3333',
1047
+ 'trackcolor' => '#dd9b9b',
1048
+ 'barheight' => 25,
1049
+ 'candystrip' => 'no',
1050
+ ), $atts);
1051
+
1052
+ $tx_class = "candystrip";
1053
+
1054
+ if ( $atts['candystrip'] == 'yes')
1055
+ {
1056
+ $tx_class = "";
1057
+ }
1058
+
1059
+ $return_string ='';
1060
+
1061
+ $return_string .= '<div class="prograss-container" data-progress-percent="' .esc_attr( $atts['percent']) . '">';
1062
+ $return_string .= '<div class="pbar-outer" style="height: ' . esc_attr($atts['barheight']) . 'px; line-height: ' . esc_attr($atts['barheight']) . 'px; background-color: ' . esc_attr($atts['trackcolor']) . ';">';
1063
+ $return_string .= '<div class="pbar-text">'. esc_attr($atts['skill_name']) .' <span class="bpercent"></span></div>';
1064
+ $return_string .= '<div class="pbar-inner" style="background-color:' . esc_attr($atts['barcolor']) . '; height: ' . esc_attr($atts['barheight']) . 'px;">';
1065
+ $return_string .= '<div class="'.$tx_class.'"></div>';
1066
+ $return_string .= '</div>';
1067
+ $return_string .= '</div>';
1068
+ $return_string .= '</div>';
1069
+
1070
+
1071
+ return $return_string;
1072
+ }
1073
+
1074
+ endif;
1075
+
1076
 
1077
 
1078
  function tx_register_shortcodes(){
1095
  add_shortcode('tx_animate', 'tx_animate_function');
1096
  add_shortcode('tx_fancyblock', 'tx_fancyblock_function');
1097
  add_shortcode('tx_vslider', 'tx_vslider_function');
1098
+ add_shortcode('tx_youtube', 'tx_youtube_function');
1099
+ add_shortcode('tx_progressbar', 'tx_progressbar_function');
1100
  }
1101
 
1102
  add_action( 'init', 'tx_register_shortcodes');
tx-functions.php CHANGED
@@ -406,6 +406,19 @@ function tx_load_jqvariables(){
406
  }
407
  add_action( 'admin_enqueue_scripts', 'tx_load_jqvariables' );
408
 
 
 
 
 
 
 
 
 
 
 
 
 
 
409
  /*
410
  //Insert tx shortcode media button
411
  function tx_shortcode_button() {
406
  }
407
  add_action( 'admin_enqueue_scripts', 'tx_load_jqvariables' );
408
 
409
+ /* Add SiteOrigin PageBuilder Widget Filter Tab */
410
+ function tx_add_widget_tabs($tabs) {
411
+ $tabs[] = array(
412
+ 'title' => __('TemplatesNext Toolkit', 'tx'),
413
+ 'filter' => array(
414
+ 'groups' => array('tx')
415
+ )
416
+ );
417
+
418
+ return $tabs;
419
+ }
420
+ add_filter('siteorigin_panels_widget_dialog_tabs', 'tx_add_widget_tabs', 20);
421
+
422
  /*
423
  //Insert tx shortcode media button
424
  function tx_shortcode_button() {
tx-shortcodes.js CHANGED
@@ -65,7 +65,7 @@
65
  <td class="shortcode-list"><span id="txteam">Team</span></td><td class="shortcode-list"><span id="videoslider">Fullscreen Video/Image Slider</span></td>\
66
  </tr>\
67
  <tr>\
68
- <td class="shortcode-list"><span id="txyoutube">YouTube Video</span></td><td class="shortcode-list"><span id="noid">&nbsp;</span></td>\
69
  </tr>\
70
  </table>\
71
  <div class="nx-sh-cancel">\
@@ -206,7 +206,14 @@
206
  setTimeout(function() {
207
  jQuery.colorbox({inline:true, href:"#tx-youtube-form"});
208
  }, 500);
209
- });
 
 
 
 
 
 
 
210
 
211
  form_tx.find('.modal-close').click(function(){
212
  jQuery.colorbox.close();
@@ -238,7 +245,7 @@
238
  <tr>\
239
  <th><label for="portfolio-columns">Number of columns</label></th>\
240
  <td><input type="number" min="1" max="4" name="columns" id="portfolio-columns" value="4" /><br />\
241
- <small>Specify number of portfolio columns.</small>\
242
  </tr>\
243
  <tr>\
244
  <th><label for="portfolio-hidecat">Show/hide item category labels</label></th>\
@@ -332,7 +339,7 @@
332
  <tr>\
333
  <th><label for="blog-ids">Category Id (optional)</label></th>\
334
  <td><input type="text" name="ids" id="blog-ids" value="" /><br />\
335
- <small>Add ids of categories to filter, keep it blank for all categories</small>\
336
  </tr>\
337
  <tr>\
338
  <th><label for="blog-items">Number of item</label></th>\
@@ -342,7 +349,7 @@
342
  <tr>\
343
  <th><label for="blog-columns">Number of columns</label></th>\
344
  <td><input type="number" min="1" max="4" name="columns" id="blog-columns" value="4" /><br />\
345
- <small>Specify number of columns.</small>\
346
  </tr>\
347
  <tr>\
348
  <th><label for="blog-hidecat">Show/hide item category labels</label></th>\
@@ -493,7 +500,7 @@
493
  <tr>\
494
  <th><label for="heading-text">Heading Text</label></th>\
495
  <td><input type="text" name="text" id="heading-text" value="Heading Text" /><br />\
496
- <small>Specify the heading text.</small>\
497
  </tr>\
498
  <tr>\
499
  <th><label for="heading-tag">Heading Tag</label></th>\
@@ -519,12 +526,12 @@
519
  <tr>\
520
  <th><label for="heading-size">Heading Size</label></th>\
521
  <td><input type="number" name="size" id="heading-size" min="0" max="120" value="24" /><br />\
522
- <small>Heading font size in px</small>\
523
  </tr>\
524
  <tr>\
525
  <th><label for="heading-margin">Heading Margin</label></th>\
526
  <td><input type="number" name="margin" id="heading-margin" min="0" max="120" value="24" /><br />\
527
- <small>Heading bottom margin in px</small>\
528
  </tr>\
529
  </table>\
530
  <p class="submit">\
@@ -582,7 +589,7 @@
582
  <tr>\
583
  <th><label for="devider-padding">Divider Margin</label></th>\
584
  <td><input type="number" name="padding" id="devider-padding" min="0" max="120" value="24" /><br />\
585
- <small>Top and bottom margin in px</small>\
586
  </tr>\
587
  </table>\
588
  <p class="submit">\
@@ -679,12 +686,12 @@
679
  <tr>\
680
  <th><label for="button-text">Button text</label></th>\
681
  <td><input type="text" name="text" id="button-text" value="Know More.." /><br />\
682
- <small>specify the button text.</small>\
683
  </tr>\
684
  <tr>\
685
  <th><label for="button-url">Button url</label></th>\
686
  <td><input type="text" name="url" id="button-url" value="" /><br />\
687
- <small>specify the button url.</small>\
688
  </tr>\
689
  <tr>\
690
  <th><label for="button-color">Button Color</label></th>\
@@ -756,17 +763,17 @@
756
  <tr>\
757
  <th><label for="calltoact-text">Call to act text</label></th>\
758
  <td><input type="text" name="text" id="calltoact-text" value="Call To Act Text" /><br />\
759
- <small>Specify the Call toa ct text.</small>\
760
  </tr>\
761
  <tr>\
762
  <th><label for="calltoact-button-text">Button text</label></th>\
763
  <td><input type="text" name="button-text" id="calltoact-button-text" value="Know More.." /><br />\
764
- <small>Specify the calltoact text.</small>\
765
  </tr>\
766
  <tr>\
767
  <th><label for="calltoact-url">Call to act url</label></th>\
768
  <td><input type="text" name="url" id="calltoact-url" value="" /><br />\
769
- <small>specify the calltoact button url.</small>\
770
  </tr>\
771
  </table>\
772
  <p class="submit">\
@@ -824,7 +831,7 @@
824
  <tr>\
825
  <th><label for="services-title">Services Title</label></th>\
826
  <td><input type="text" name="title" id="services-title" value="Services Title" /><br />\
827
- <small>Specify the Call toa ct text.</small>\
828
  </tr>\
829
  <tr>\
830
  <th><label for="services-icon">Services Icons</label></th>\
@@ -833,7 +840,7 @@
833
  <tr>\
834
  <th><label for="services-content">Services Text</label></th>\
835
  <td><textarea name="content" id="services-content">Services content</textarea><br />\
836
- <small>Services content</small>\
837
  </tr>\
838
  </table>\
839
  <p class="submit">\
@@ -890,7 +897,7 @@
890
  <tr>\
891
  <th><label for="spacer-size">Spacer Size (height in px)</label></th>\
892
  <td><input type="number" min="0" max="120" name="size" id="spacer-size" value="16" /><br />\
893
- <small>Use spacer to manage vertical gaps</small>\
894
  </tr>\
895
  </table>\
896
  <p class="submit">\
@@ -947,17 +954,17 @@
947
  <tr>\
948
  <th><label for="wooprods-ids">Category/Product Ids (optional)</label></th>\
949
  <td><input type="text" name="ids" id="wooprods-ids" value="" /><br />\
950
- <small>Comma separeted category or product ids (works with "Product Categories" and "Products By Ids" )</small>\
951
  </tr>\
952
  <tr>\
953
  <th><label for="wooprods-columns">Number Of Columns</label></th>\
954
  <td><input type="number" min="1" max="4" name="coumns" id="wooprods-columns" value="4" /><br />\
955
- <small>Number of columns or items visible</small>\
956
  </tr>\
957
  <tr>\
958
  <th><label for="wooprods-items">Number Of Items</label></th>\
959
  <td><input type="number" min="1" max="16" name="items" id="wooprods-items" value="8" /><br />\
960
- <small>Total number of items</small>\
961
  </tr>\
962
  </table>\
963
  <div class="nx-sh-cancel">\
@@ -1030,12 +1037,12 @@
1030
  <tr>\
1031
  <th><label for="slider-items">Number Of Items (slides)</label></th>\
1032
  <td><input type="number" min="1" max="16" name="items" id="slider-items" value="4" /><br />\
1033
- <small>Number of slides in the slider</small>\
1034
  </tr>\
1035
  <tr>\
1036
  <th><label for="slider-delay">Delay</label></th>\
1037
  <td><input type="number" min="1000" max="16000" name="delay" step="500" id="slider-delay" value="8000" /><br />\
1038
- <small>Duration between slides in miliseconds</small>\
1039
  </tr>\
1040
  <tr>\
1041
  <th><label for="slider-parallax">Parallax</label></th>\
@@ -1043,7 +1050,7 @@
1043
  <option value="yes">Yes</option>\
1044
  <option value="no">No</option>\
1045
  </select><br />\
1046
- <small>Turn on parallax effect (only works with header slider through page/post meta &quot;Other Slider Plugin Shortcode&quot; )</small>\
1047
  </tr>\
1048
  <tr>\
1049
  <th><label for="slider-align">Content Alignment</label></th>\
@@ -1166,12 +1173,12 @@
1166
  <tr>\
1167
  <th><label for="animation-duration">Animation Duration</label></th>\
1168
  <td><input type="number" name="duration" id="animation-duration" min=".1" max="5" value="1" step=".1" /><br />\
1169
- <small>Animation duration in seconds</small>\
1170
  </tr>\
1171
  <tr>\
1172
  <th><label for="animation-delay">Animation Delay</label></th>\
1173
  <td><input type="number" name="delay" id="animation-delay" min=".1" max="5" value=".4" step=".1" /><br />\
1174
- <small>Animation delay in seconds</small>\
1175
  </tr>\
1176
  <tr>\
1177
  <th><label for="animation-inline">Inline</label></th>\
@@ -1184,7 +1191,7 @@
1184
  <tr>\
1185
  <th><label for="animation-content">Content</label></th>\
1186
  <td><textarea name="content" id="animation-content">Content ...</textarea><br />\
1187
- <small>Enter your contents here, supports nested shortcode.</small>\
1188
  </tr>\
1189
  </table>\
1190
  <p class="submit">\
@@ -1232,12 +1239,12 @@
1232
  <tr>\
1233
  <th><label for="fancyblock-height">Height</label></th>\
1234
  <td><input type="number" name="height" id="fancyblock-height" min="1" max="1200" value="" /><br />\
1235
- <small>Block height, <b>Keep it blank for auto height</b></small>\
1236
  </tr>\
1237
  <tr>\
1238
  <th><label for="fancyblock-padding">Top/Bottom Padding</label></th>\
1239
  <td><input type="number" name="padding" id="fancyblock-padding" min="1" max="600" value="32" /><br />\
1240
- <small>Block Top?bottom padding</b></small>\
1241
  </tr>\
1242
  <tr>\
1243
  <th><label for="fancyblock-bgcolor">Background Color</label></th>\
@@ -1258,7 +1265,7 @@
1258
  <option value="0.8">0.8</option>\
1259
  <option value="0.9">0.9</option>\
1260
  </select><br />\
1261
- <small>Overlay Layer Tranparancy, <b>.9 least transparent and .1 heighest</b></small>\
1262
  </tr>\
1263
  <tr>\
1264
  <th><label for="fancyblock-bgurl">Background Image URL</label></th>\
@@ -1292,7 +1299,7 @@
1292
  <tr>\
1293
  <th><label for="fancyblock-content">Content</label></th>\
1294
  <td><textarea name="content" id="fancyblock-content">Content ...</textarea><br />\
1295
- <small>Enter your contents here, supports nested shortcode.</small>\
1296
  </tr>\
1297
  </table>\
1298
  <p class="submit">\
@@ -1445,18 +1452,18 @@
1445
  <tr>\
1446
  <th><label for="vslider-height">Slider Height in %</label></th>\
1447
  <td><input type="number" name="height" id="vslider-height" min="10" max="100" value="60" /><br />\
1448
- <small>Video slider height in percent(%), <b>% of window height</b></small>\
1449
  </tr>\
1450
  <tr>\
1451
  <th><label for="vslider-reduct">Height Reduction in px</label></th>\
1452
  <td><input type="number" name="reduct" id="vslider-reduct" min="1" max="300" value="0" /><br />\
1453
  <small>Slider height reduction in pixel(px), <b>used for header or a bottom bar</b>\
1454
- <br />example: i-max, i-excel, i-craft has ( Header+topbar ) : 126px</small>\
1455
  </tr>\
1456
  <tr>\
1457
  <th><label for="vslider-vurl">YouTube Video URL</label></th>\
1458
  <td><input type="url" name="vurl" id="vslider-vurl" value="" /><br />\
1459
- <small>YouTube Video URL</b></small>\
1460
  </tr>\
1461
  <tr>\
1462
  <th><label for="vslider-overlay">Overlay Layer</label></th>\
@@ -1465,7 +1472,7 @@
1465
  <option value="vignette">Vignette</option>\
1466
  <option value="pixel">Pixel Pattern</option>\
1467
  </select><br />\
1468
- <small>Overlay Layer Tranparancy, <b>.9 least transparent and .1 heighest</b></small>\
1469
  </tr>\
1470
  <tr>\
1471
  <th><label for="vslider-bgurl">Background Image URL</label></th>\
@@ -1501,7 +1508,7 @@
1501
  <tr>\
1502
  <th><label for="vslider-content">Content</label></th>\
1503
  <td><textarea name="content" id="vslider-content">Content ...</textarea><br />\
1504
- <small>Enter your contents here.</small>\
1505
  </tr>\
1506
  <tr>\
1507
  <th><label for="vslider-linktext">Link Text (Button)</label></th>\
@@ -1644,22 +1651,22 @@
1644
  <tr>\
1645
  <th><label for="youtube-url">YouTube Video URL</label></th>\
1646
  <td><input type="url" name="url" id="youtube-url" value="" /><br />\
1647
- <small>Enter the YouTube Video URL</small>\
1648
  </tr>\
1649
  <tr>\
1650
  <th><label for="youtube-width">Width</label></th>\
1651
  <td><input type="number" name="width" id="youtube-width" value=""><br />\
1652
- <small>Leave it empty for responsive video</small>\
1653
  </tr>\
1654
  <tr>\
1655
  <th><label for="youtube-controls">Show Controls</label></th>\
1656
  <td><input type="checkbox" name="controls" id="youtube-controls" value="1" checked><br />\
1657
- <small>Turn On/OFF video controls</small>\
1658
  </tr>\
1659
  <tr>\
1660
  <th><label for="youtube-autoplay">Autoplay</label></th>\
1661
  <td><input type="checkbox" name="autoplay" id="youtube-autoplay" value="0" /><br />\
1662
- <small>Turn On/OFF autoplay</small>\
1663
  </tr>\
1664
  </table>\
1665
  <p class="submit">\
@@ -1804,6 +1811,103 @@
1804
  });
1805
 
1806
  });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1807
 
1808
 
1809
 
65
  <td class="shortcode-list"><span id="txteam">Team</span></td><td class="shortcode-list"><span id="videoslider">Fullscreen Video/Image Slider</span></td>\
66
  </tr>\
67
  <tr>\
68
+ <td class="shortcode-list"><span id="txyoutube">YouTube Video</span></td><td class="shortcode-list"><span id="txprogress">Skill/Progress Bar</span></td>\
69
  </tr>\
70
  </table>\
71
  <div class="nx-sh-cancel">\
206
  setTimeout(function() {
207
  jQuery.colorbox({inline:true, href:"#tx-youtube-form"});
208
  }, 500);
209
+ });
210
+
211
+ //Insert Progress video
212
+ form_tx.find('#txprogress').click(function(){
213
+ setTimeout(function() {
214
+ jQuery.colorbox({inline:true, href:"#tx-progressbar-form"});
215
+ }, 500);
216
+ });
217
 
218
  form_tx.find('.modal-close').click(function(){
219
  jQuery.colorbox.close();
245
  <tr>\
246
  <th><label for="portfolio-columns">Number of columns</label></th>\
247
  <td><input type="number" min="1" max="4" name="columns" id="portfolio-columns" value="4" /><br />\
248
+ <small>Specify number of portfolio columns.</small></td>\
249
  </tr>\
250
  <tr>\
251
  <th><label for="portfolio-hidecat">Show/hide item category labels</label></th>\
339
  <tr>\
340
  <th><label for="blog-ids">Category Id (optional)</label></th>\
341
  <td><input type="text" name="ids" id="blog-ids" value="" /><br />\
342
+ <small>Add ids of categories to filter, keep it blank for all categories</small></td>\
343
  </tr>\
344
  <tr>\
345
  <th><label for="blog-items">Number of item</label></th>\
349
  <tr>\
350
  <th><label for="blog-columns">Number of columns</label></th>\
351
  <td><input type="number" min="1" max="4" name="columns" id="blog-columns" value="4" /><br />\
352
+ <small>Specify number of columns.</small></td>\
353
  </tr>\
354
  <tr>\
355
  <th><label for="blog-hidecat">Show/hide item category labels</label></th>\
500
  <tr>\
501
  <th><label for="heading-text">Heading Text</label></th>\
502
  <td><input type="text" name="text" id="heading-text" value="Heading Text" /><br />\
503
+ <small>Specify the heading text.</small></td>\
504
  </tr>\
505
  <tr>\
506
  <th><label for="heading-tag">Heading Tag</label></th>\
526
  <tr>\
527
  <th><label for="heading-size">Heading Size</label></th>\
528
  <td><input type="number" name="size" id="heading-size" min="0" max="120" value="24" /><br />\
529
+ <small>Heading font size in px</small></td>\
530
  </tr>\
531
  <tr>\
532
  <th><label for="heading-margin">Heading Margin</label></th>\
533
  <td><input type="number" name="margin" id="heading-margin" min="0" max="120" value="24" /><br />\
534
+ <small>Heading bottom margin in px</small></td>\
535
  </tr>\
536
  </table>\
537
  <p class="submit">\
589
  <tr>\
590
  <th><label for="devider-padding">Divider Margin</label></th>\
591
  <td><input type="number" name="padding" id="devider-padding" min="0" max="120" value="24" /><br />\
592
+ <small>Top and bottom margin in px</small></td>\
593
  </tr>\
594
  </table>\
595
  <p class="submit">\
686
  <tr>\
687
  <th><label for="button-text">Button text</label></th>\
688
  <td><input type="text" name="text" id="button-text" value="Know More.." /><br />\
689
+ <small>specify the button text.</small></td>\
690
  </tr>\
691
  <tr>\
692
  <th><label for="button-url">Button url</label></th>\
693
  <td><input type="text" name="url" id="button-url" value="" /><br />\
694
+ <small>specify the button url.</small></td>\
695
  </tr>\
696
  <tr>\
697
  <th><label for="button-color">Button Color</label></th>\
763
  <tr>\
764
  <th><label for="calltoact-text">Call to act text</label></th>\
765
  <td><input type="text" name="text" id="calltoact-text" value="Call To Act Text" /><br />\
766
+ <small>Specify the Call toa ct text.</small></td>\
767
  </tr>\
768
  <tr>\
769
  <th><label for="calltoact-button-text">Button text</label></th>\
770
  <td><input type="text" name="button-text" id="calltoact-button-text" value="Know More.." /><br />\
771
+ <small>Specify the calltoact text.</small></td>\
772
  </tr>\
773
  <tr>\
774
  <th><label for="calltoact-url">Call to act url</label></th>\
775
  <td><input type="text" name="url" id="calltoact-url" value="" /><br />\
776
+ <small>specify the calltoact button url.</small></td>\
777
  </tr>\
778
  </table>\
779
  <p class="submit">\
831
  <tr>\
832
  <th><label for="services-title">Services Title</label></th>\
833
  <td><input type="text" name="title" id="services-title" value="Services Title" /><br />\
834
+ <small>Specify the Call toa ct text.</small></td>\
835
  </tr>\
836
  <tr>\
837
  <th><label for="services-icon">Services Icons</label></th>\
840
  <tr>\
841
  <th><label for="services-content">Services Text</label></th>\
842
  <td><textarea name="content" id="services-content">Services content</textarea><br />\
843
+ <small>Services content</small></td>\
844
  </tr>\
845
  </table>\
846
  <p class="submit">\
897
  <tr>\
898
  <th><label for="spacer-size">Spacer Size (height in px)</label></th>\
899
  <td><input type="number" min="0" max="120" name="size" id="spacer-size" value="16" /><br />\
900
+ <small>Use spacer to manage vertical gaps</small></td>\
901
  </tr>\
902
  </table>\
903
  <p class="submit">\
954
  <tr>\
955
  <th><label for="wooprods-ids">Category/Product Ids (optional)</label></th>\
956
  <td><input type="text" name="ids" id="wooprods-ids" value="" /><br />\
957
+ <small>Comma separeted category or product ids (works with "Product Categories" and "Products By Ids" )</small></td>\
958
  </tr>\
959
  <tr>\
960
  <th><label for="wooprods-columns">Number Of Columns</label></th>\
961
  <td><input type="number" min="1" max="4" name="coumns" id="wooprods-columns" value="4" /><br />\
962
+ <small>Number of columns or items visible</small></td>\
963
  </tr>\
964
  <tr>\
965
  <th><label for="wooprods-items">Number Of Items</label></th>\
966
  <td><input type="number" min="1" max="16" name="items" id="wooprods-items" value="8" /><br />\
967
+ <small>Total number of items</small></td>\
968
  </tr>\
969
  </table>\
970
  <div class="nx-sh-cancel">\
1037
  <tr>\
1038
  <th><label for="slider-items">Number Of Items (slides)</label></th>\
1039
  <td><input type="number" min="1" max="16" name="items" id="slider-items" value="4" /><br />\
1040
+ <small>Number of slides in the slider</small></td>\
1041
  </tr>\
1042
  <tr>\
1043
  <th><label for="slider-delay">Delay</label></th>\
1044
  <td><input type="number" min="1000" max="16000" name="delay" step="500" id="slider-delay" value="8000" /><br />\
1045
+ <small>Duration between slides in miliseconds</small></td>\
1046
  </tr>\
1047
  <tr>\
1048
  <th><label for="slider-parallax">Parallax</label></th>\
1050
  <option value="yes">Yes</option>\
1051
  <option value="no">No</option>\
1052
  </select><br />\
1053
+ <small>Turn on parallax effect (only works with header slider through page/post meta &quot;Other Slider Plugin Shortcode&quot; )</small></td>\
1054
  </tr>\
1055
  <tr>\
1056
  <th><label for="slider-align">Content Alignment</label></th>\
1173
  <tr>\
1174
  <th><label for="animation-duration">Animation Duration</label></th>\
1175
  <td><input type="number" name="duration" id="animation-duration" min=".1" max="5" value="1" step=".1" /><br />\
1176
+ <small>Animation duration in seconds</small></td>\
1177
  </tr>\
1178
  <tr>\
1179
  <th><label for="animation-delay">Animation Delay</label></th>\
1180
  <td><input type="number" name="delay" id="animation-delay" min=".1" max="5" value=".4" step=".1" /><br />\
1181
+ <small>Animation delay in seconds</small></td>\
1182
  </tr>\
1183
  <tr>\
1184
  <th><label for="animation-inline">Inline</label></th>\
1191
  <tr>\
1192
  <th><label for="animation-content">Content</label></th>\
1193
  <td><textarea name="content" id="animation-content">Content ...</textarea><br />\
1194
+ <small>Enter your contents here, supports nested shortcode.</small></td>\
1195
  </tr>\
1196
  </table>\
1197
  <p class="submit">\
1239
  <tr>\
1240
  <th><label for="fancyblock-height">Height</label></th>\
1241
  <td><input type="number" name="height" id="fancyblock-height" min="1" max="1200" value="" /><br />\
1242
+ <small>Block height, <b>Keep it blank for auto height</b></small></td>\
1243
  </tr>\
1244
  <tr>\
1245
  <th><label for="fancyblock-padding">Top/Bottom Padding</label></th>\
1246
  <td><input type="number" name="padding" id="fancyblock-padding" min="1" max="600" value="32" /><br />\
1247
+ <small>Block Top?bottom padding</b></small></td>\
1248
  </tr>\
1249
  <tr>\
1250
  <th><label for="fancyblock-bgcolor">Background Color</label></th>\
1265
  <option value="0.8">0.8</option>\
1266
  <option value="0.9">0.9</option>\
1267
  </select><br />\
1268
+ <small>Overlay Layer Tranparancy, <b>.9 least transparent and .1 heighest</b></small></td>\
1269
  </tr>\
1270
  <tr>\
1271
  <th><label for="fancyblock-bgurl">Background Image URL</label></th>\
1299
  <tr>\
1300
  <th><label for="fancyblock-content">Content</label></th>\
1301
  <td><textarea name="content" id="fancyblock-content">Content ...</textarea><br />\
1302
+ <small>Enter your contents here, supports nested shortcode.</small></td>\
1303
  </tr>\
1304
  </table>\
1305
  <p class="submit">\
1452
  <tr>\
1453
  <th><label for="vslider-height">Slider Height in %</label></th>\
1454
  <td><input type="number" name="height" id="vslider-height" min="10" max="100" value="60" /><br />\
1455
+ <small>Video slider height in percent(%), <b>% of window height</b></small></td>\
1456
  </tr>\
1457
  <tr>\
1458
  <th><label for="vslider-reduct">Height Reduction in px</label></th>\
1459
  <td><input type="number" name="reduct" id="vslider-reduct" min="1" max="300" value="0" /><br />\
1460
  <small>Slider height reduction in pixel(px), <b>used for header or a bottom bar</b>\
1461
+ <br />example: i-max, i-excel, i-craft has ( Header+topbar ) : 126px</small></td>\
1462
  </tr>\
1463
  <tr>\
1464
  <th><label for="vslider-vurl">YouTube Video URL</label></th>\
1465
  <td><input type="url" name="vurl" id="vslider-vurl" value="" /><br />\
1466
+ <small>YouTube Video URL</b></small></td>\
1467
  </tr>\
1468
  <tr>\
1469
  <th><label for="vslider-overlay">Overlay Layer</label></th>\
1472
  <option value="vignette">Vignette</option>\
1473
  <option value="pixel">Pixel Pattern</option>\
1474
  </select><br />\
1475
+ <small>Overlay Layer Tranparancy, <b>.9 least transparent and .1 heighest</b></small></td>\
1476
  </tr>\
1477
  <tr>\
1478
  <th><label for="vslider-bgurl">Background Image URL</label></th>\
1508
  <tr>\
1509
  <th><label for="vslider-content">Content</label></th>\
1510
  <td><textarea name="content" id="vslider-content">Content ...</textarea><br />\
1511
+ <small>Enter your contents here.</small></td>\
1512
  </tr>\
1513
  <tr>\
1514
  <th><label for="vslider-linktext">Link Text (Button)</label></th>\
1651
  <tr>\
1652
  <th><label for="youtube-url">YouTube Video URL</label></th>\
1653
  <td><input type="url" name="url" id="youtube-url" value="" /><br />\
1654
+ <small>Enter the YouTube Video URL</small></td>\
1655
  </tr>\
1656
  <tr>\
1657
  <th><label for="youtube-width">Width</label></th>\
1658
  <td><input type="number" name="width" id="youtube-width" value=""><br />\
1659
+ <small>Leave it empty for responsive video</small></td>\
1660
  </tr>\
1661
  <tr>\
1662
  <th><label for="youtube-controls">Show Controls</label></th>\
1663
  <td><input type="checkbox" name="controls" id="youtube-controls" value="1" checked><br />\
1664
+ <small>Turn On/OFF video controls</small></td>\
1665
  </tr>\
1666
  <tr>\
1667
  <th><label for="youtube-autoplay">Autoplay</label></th>\
1668
  <td><input type="checkbox" name="autoplay" id="youtube-autoplay" value="0" /><br />\
1669
+ <small>Turn On/OFF autoplay</small></td>\
1670
  </tr>\
1671
  </table>\
1672
  <p class="submit">\
1811
  });
1812
 
1813
  });
1814
+
1815
+
1816
+ /*
1817
+ * progressbar form
1818
+ */
1819
+ jQuery(function(){
1820
+ var form_progressbar = jQuery('<div id="progressbar-form" class="tx-sh-form"><div id="tx-progressbar-form"><table id="progressbar-table" class="form-table">\
1821
+ <tr>\
1822
+ <td class="tx-heading" colspan="2"><h2>Insert Progress/Skill Bar</h2></td>\
1823
+ </tr>\
1824
+ <tr>\
1825
+ <th><label for="progressbar-skill_name">Name</label></th>\
1826
+ <td><input type="text" name="skill_name" id="progressbar-skill_name" value="HTML" /><br />\
1827
+ <small>Enter the skill/label for the bar</small></td>\
1828
+ </tr>\
1829
+ <tr>\
1830
+ <th><label for="progressbar-percent">Bar Percent</label></th>\
1831
+ <td><input type="text" name="percent" id="progressbar-percent" value="72" class="tx-range-prev txPrevi" />\
1832
+ <input type="range" min="1 max="100" value="72" step="1" class="txRange tx-range-slider"><br />\
1833
+ <small>Enter percent of the bar</small></td>\
1834
+ </tr>\
1835
+ <tr>\
1836
+ <th><label for="progressbar-barcolor">Bar Color</label></th>\
1837
+ <td><input type="text" class="color" name="barcolor" id="progressbar-barcolor" value="#dd9933">\<br />\
1838
+ <small>Select color for the bar</small></td>\
1839
+ </tr>\
1840
+ <tr>\
1841
+ <th><label for="progressbar-trackcolor">Track Color</label></th>\
1842
+ <td><input type="text" class="color" name="trackcolor" id="progressbar-trackcolor" value="#ddcaa8">\<br />\
1843
+ <small>Select track color</small></td>\
1844
+ </tr>\
1845
+ <tr>\
1846
+ <th><label for="progressbar-barheight">Bar Height</label></th>\
1847
+ <td><input type="text" name="barheight" id="progressbar-barheight" value="32" class="tx-range-prev txPrevi" />\
1848
+ <input type="range" min="24" max="48" value="32" step="1" class="txRange tx-range-slider"><br />\
1849
+ <small>Height of the bar</small></td>\
1850
+ </tr>\
1851
+ <tr>\
1852
+ <th><label for="progressbar-candystrip">Turn Off Candystrip Animation</label></th>\
1853
+ <td><select name="candystrip" id="progressbar-candystrip">\
1854
+ <option value="no">No</option>\
1855
+ <option value="yes">Yes</option>\
1856
+ </select><br />\
1857
+ <small>Turn Off Candystrip Animation</small></td>\
1858
+ </tr>\
1859
+ </table>\
1860
+ <p class="submit">\
1861
+ <input type="button" id="button-submit" class="button-primary" value="Insert Skill/Progress Bar" name="submit" />\
1862
+ <input type="button" id="modal-close" class="modal-close button-primary" value="Cancel" name="Cancel" />\
1863
+ </p>\
1864
+ <div class="tnext-bottom-lebel">'+tx_footer_include()+'</div>\
1865
+ </div></div>');
1866
+
1867
+ var table = form_progressbar.find('#progressbar-table');
1868
+
1869
+ tx_color_picker(form_progressbar.find('.color'));
1870
+
1871
+ form_progressbar.appendTo('body').hide();
1872
+
1873
+ // handles the click event of the submit button
1874
+ form_progressbar.find('#button-submit').click(function(){
1875
+
1876
+ var skill_name = table.find('#progressbar-skill_name').val();
1877
+ var percent = table.find('#progressbar-percent').val();
1878
+ var barcolor = table.find('#progressbar-barcolor').val();
1879
+ var trackcolor = table.find('#progressbar-trackcolor').val();
1880
+ var barheight = table.find('#progressbar-barheight').val();
1881
+ var candystrip = table.find('#progressbar-candystrip').val();
1882
+
1883
+ var shortcode = '[tx_progressbar skill_name="'+skill_name+'" percent="'+percent+'" barcolor="'+barcolor+'" trackcolor="'+trackcolor+'" barheight="'+barheight+'" candystrip="'+candystrip+'"]';
1884
+
1885
+ // inserts the shortcode into the active editor
1886
+ tinyMCE.activeEditor.execCommand('mceInsertContent', 0, shortcode);
1887
+
1888
+ // closes Thickbox
1889
+ jQuery.colorbox.close();
1890
+ });
1891
+
1892
+ form_progressbar.find('#modal-close').click(function(){
1893
+ jQuery.colorbox.close();
1894
+ });
1895
+
1896
+ jQuery(document).ready(function ($) {
1897
+
1898
+ $( "input.txRange" ).each(function( index ) {
1899
+
1900
+ var txRange = $(this);
1901
+ var txPrevi = $(this).prev( ".txPrevi" );
1902
+
1903
+ txRange.bind("input", function() {
1904
+ var newRange = txRange.val();
1905
+ txPrevi.val(newRange);
1906
+ });
1907
+ });
1908
+
1909
+ });
1910
+ });
1911
 
1912
 
1913
 
tx-toolkit.php CHANGED
@@ -3,7 +3,7 @@
3
  /*
4
  Plugin Name: TemplatesNext ToolKit
5
  Description: Custom Portfolio and Shortcode functionality for TemplatesNext Wordpress Themes
6
- Version: 2.0.8
7
  Author: TemplatesNext
8
  Author URI: http://templatesnext.org/
9
  License: GPLv2 or later
@@ -21,10 +21,11 @@ add_action( 'admin_enqueue_scripts', 'tx_toolkit_admin_style' );
21
  function tx_toolkit_admin_style() {
22
  wp_enqueue_style( 'colorbox', plugins_url( 'css/colorbox.css', __FILE__ ), false, '1.5.14', 'all' );
23
  wp_enqueue_style( 'tx-toolkit-admin-style', plugins_url('css/tx-admin-style.css', __FILE__) );
24
- wp_enqueue_style( 'font-awesome', '//netdna.bootstrapcdn.com/font-awesome/4.1.0/css/font-awesome.min.css', false, '4.1.0', 'all' );
25
 
26
  wp_enqueue_script( 'colorbox', plugins_url( 'js/jquery.colorbox-min.js', __FILE__ ), array( 'jquery' ), '1.6.3', true );
27
  wp_enqueue_script( 'tx-main', plugins_url('/js/tx_main.js', __FILE__) );
 
28
  }
29
 
30
 
@@ -49,6 +50,7 @@ add_action( 'admin_enqueue_scripts', 'tx_enqueue_color_picker' );
49
  function tx_enqueue_color_picker( $hook_suffix ) {
50
  // first check that $hook_suffix is appropriate for your admin page
51
  wp_enqueue_style( 'wp-color-picker' );
 
52
  wp_enqueue_script( 'my-script-handle', plugins_url('js/my-script.js', __FILE__ ), array( 'wp-color-picker' ), false, true );
53
  }
54
 
@@ -93,6 +95,7 @@ require_once('inc/widgets/widget-portfolio-grid.php');
93
  require_once('inc/widgets/widget-advertgrid.php');
94
  require_once('inc/widgets/widget-comments.php');
95
  require_once('inc/widgets/widget-image.php');
 
96
  /**/
97
 
98
  /*-----------------------------------------------------------------------------------*/
@@ -119,4 +122,18 @@ if(!defined('TX_TOOLKIT_URL')){
119
  require( 'inc/class-remote-notification-client.php' );
120
  if ( function_exists( 'tx_add_notification' ) ) {
121
  tx_add_notification( 57, '4c037aa922a5d96c', 'http://www.templatesnext.org/icreate/' );
122
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3
  /*
4
  Plugin Name: TemplatesNext ToolKit
5
  Description: Custom Portfolio and Shortcode functionality for TemplatesNext Wordpress Themes
6
+ Version: 2.0.9
7
  Author: TemplatesNext
8
  Author URI: http://templatesnext.org/
9
  License: GPLv2 or later
21
  function tx_toolkit_admin_style() {
22
  wp_enqueue_style( 'colorbox', plugins_url( 'css/colorbox.css', __FILE__ ), false, '1.5.14', 'all' );
23
  wp_enqueue_style( 'tx-toolkit-admin-style', plugins_url('css/tx-admin-style.css', __FILE__) );
24
+ wp_enqueue_style( 'font-awesome', '//maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css', false, '4.7.0', 'all' );
25
 
26
  wp_enqueue_script( 'colorbox', plugins_url( 'js/jquery.colorbox-min.js', __FILE__ ), array( 'jquery' ), '1.6.3', true );
27
  wp_enqueue_script( 'tx-main', plugins_url('/js/tx_main.js', __FILE__) );
28
+
29
  }
30
 
31
 
50
  function tx_enqueue_color_picker( $hook_suffix ) {
51
  // first check that $hook_suffix is appropriate for your admin page
52
  wp_enqueue_style( 'wp-color-picker' );
53
+ wp_enqueue_script( 'wp-color-picker' );
54
  wp_enqueue_script( 'my-script-handle', plugins_url('js/my-script.js', __FILE__ ), array( 'wp-color-picker' ), false, true );
55
  }
56
 
95
  require_once('inc/widgets/widget-advertgrid.php');
96
  require_once('inc/widgets/widget-comments.php');
97
  require_once('inc/widgets/widget-image.php');
98
+
99
  /**/
100
 
101
  /*-----------------------------------------------------------------------------------*/
122
  require( 'inc/class-remote-notification-client.php' );
123
  if ( function_exists( 'tx_add_notification' ) ) {
124
  tx_add_notification( 57, '4c037aa922a5d96c', 'http://www.templatesnext.org/icreate/' );
125
+ }
126
+
127
+ // including page Builder Widgets
128
+ if (class_exists( 'SiteOrigin_Panels' ))
129
+ {
130
+ require_once('inc/pb-widgets/widget-testimonials.php');
131
+ require_once('inc/pb-widgets/widget-portfolio.php');
132
+ require_once('inc/pb-widgets/widget-posts.php');
133
+ require_once('inc/pb-widgets/widget-spacer.php');
134
+ require_once('inc/pb-widgets/widget-heading.php');
135
+ require_once('inc/pb-widgets/widget-prodscroll.php');
136
+ require_once('inc/pb-widgets/widget-team.php');
137
+ require_once('inc/pb-widgets/widget-services.php');
138
+ require_once('inc/pb-widgets/widget-progressbar.php');
139
+ }