CTX Feed – WooCommerce Product Feed Manager Plugin - Version 3.1.29

Version Description

Download this release

Release Info

Developer wahid0003
Plugin Icon 128x128 CTX Feed – WooCommerce Product Feed Manager Plugin
Version 3.1.29
Comparing to
See all releases

Code changes from version 3.1.28 to 3.1.29

README.txt CHANGED
@@ -4,7 +4,7 @@ Donate link: https://webappick.com
4
  Tags:woocommerce,google product feed,facebook product feed,woocommerce product feed,woocommerce,
5
  Requires at least: 3.6
6
  Tested Up To: 5.2
7
- Stable tag: 3.1.28
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
@@ -304,6 +304,12 @@ Using pro version:
304
 
305
  == Changelog ==
306
 
 
 
 
 
 
 
307
  = 3.1.28(2019-09-26) =
308
  * Fix Google Taxonomy Popup with jquery sortable plugin.
309
  * Fix row become invisible while dragging.
4
  Tags:woocommerce,google product feed,facebook product feed,woocommerce product feed,woocommerce,
5
  Requires at least: 3.6
6
  Tested Up To: 5.2
7
+ Stable tag: 3.1.29
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
304
 
305
  == Changelog ==
306
 
307
+ = 3.1.29(2019-09-30) =
308
+ * Update Google Taxonomy list at the latest.
309
+ * Add Google Taxonomy in facebook and pinterest template.
310
+ * Google Taxonomy chooser directly in Feed Config without any popup.
311
+ * Optimize JavaScript.
312
+
313
  = 3.1.28(2019-09-26) =
314
  * Fix Google Taxonomy Popup with jquery sortable plugin.
315
  * Fix row become invisible while dragging.
admin/css/selectize.css CHANGED
@@ -1,323 +1,334 @@
1
- /**
2
- * selectize.css (v0.12.2)
3
- * Copyright (c) 2013–2015 Brian Reavis & contributors
4
- *
5
- * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this
6
- * file except in compliance with the License. You may obtain a copy of the License at:
7
- * http://www.apache.org/licenses/LICENSE-2.0
8
- *
9
- * Unless required by applicable law or agreed to in writing, software distributed under
10
- * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF
11
- * ANY KIND, either express or implied. See the License for the specific language
12
- * governing permissions and limitations under the License.
13
- *
14
- * @author Brian Reavis <brian@thirdroute.com>
15
- */
16
-
17
- .selectize-control.plugin-drag_drop.multi > .selectize-input > div.ui-sortable-placeholder {
18
- visibility: visible !important;
19
- background: #f2f2f2 !important;
20
- background: rgba(0, 0, 0, 0.06) !important;
21
- border: 0 none !important;
22
- -webkit-box-shadow: inset 0 0 12px 4px #ffffff;
23
- box-shadow: inset 0 0 12px 4px #ffffff;
24
- }
25
- .selectize-control.plugin-drag_drop .ui-sortable-placeholder::after {
26
- content: '!';
27
- visibility: hidden;
28
- }
29
- .selectize-control.plugin-drag_drop .ui-sortable-helper {
30
- -webkit-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
31
- box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
32
- }
33
- .selectize-dropdown-header {
34
- position: relative;
35
- padding: 5px 8px;
36
- border-bottom: 1px solid #d0d0d0;
37
- background: #f8f8f8;
38
- -webkit-border-radius: 3px 3px 0 0;
39
- -moz-border-radius: 3px 3px 0 0;
40
- border-radius: 3px 3px 0 0;
41
- }
42
- .selectize-dropdown-header-close {
43
- position: absolute;
44
- right: 8px;
45
- top: 50%;
46
- color: #303030;
47
- opacity: 0.4;
48
- margin-top: -12px;
49
- line-height: 20px;
50
- font-size: 20px !important;
51
- }
52
- .selectize-dropdown-header-close:hover {
53
- color: #000000;
54
- }
55
- .selectize-dropdown.plugin-optgroup_columns .optgroup {
56
- border-right: 1px solid #f2f2f2;
57
- border-top: 0 none;
58
- float: left;
59
- -webkit-box-sizing: border-box;
60
- -moz-box-sizing: border-box;
61
- box-sizing: border-box;
62
- }
63
- .selectize-dropdown.plugin-optgroup_columns .optgroup:last-child {
64
- border-right: 0 none;
65
- }
66
- .selectize-dropdown.plugin-optgroup_columns .optgroup:before {
67
- display: none;
68
- }
69
- .selectize-dropdown.plugin-optgroup_columns .optgroup-header {
70
- border-top: 0 none;
71
- }
72
- .selectize-control.plugin-remove_button [data-value] {
73
- position: relative;
74
- padding-right: 24px !important;
75
- }
76
- .selectize-control.plugin-remove_button [data-value] .remove {
77
- z-index: 1;
78
- /* fixes ie bug (see #392) */
79
- position: absolute;
80
- top: 0;
81
- right: 0;
82
- bottom: 0;
83
- width: 17px;
84
- text-align: center;
85
- font-weight: bold;
86
- font-size: 12px;
87
- color: inherit;
88
- text-decoration: none;
89
- vertical-align: middle;
90
- display: inline-block;
91
- padding: 2px 0 0 0;
92
- border-left: 1px solid #d0d0d0;
93
- -webkit-border-radius: 0 2px 2px 0;
94
- -moz-border-radius: 0 2px 2px 0;
95
- border-radius: 0 2px 2px 0;
96
- -webkit-box-sizing: border-box;
97
- -moz-box-sizing: border-box;
98
- box-sizing: border-box;
99
- }
100
- .selectize-control.plugin-remove_button [data-value] .remove:hover {
101
- background: rgba(0, 0, 0, 0.05);
102
- }
103
- .selectize-control.plugin-remove_button [data-value].active .remove {
104
- border-left-color: #cacaca;
105
- }
106
- .selectize-control.plugin-remove_button .disabled [data-value] .remove:hover {
107
- background: none;
108
- }
109
- .selectize-control.plugin-remove_button .disabled [data-value] .remove {
110
- border-left-color: #ffffff;
111
- }
112
- .selectize-control.plugin-remove_button .remove-single {
113
- position: absolute;
114
- right: 28px;
115
- top: 6px;
116
- font-size: 23px;
117
- }
118
- .selectize-control {
119
- position: relative;
120
- }
121
- .selectize-dropdown,
122
- .selectize-input,
123
- .selectize-input input {
124
- color: #303030;
125
- font-family: inherit;
126
- font-size: 13px;
127
- line-height: 18px;
128
- -webkit-font-smoothing: inherit;
129
- }
130
- .selectize-input,
131
- .selectize-control.single .selectize-input.input-active {
132
- background: #ffffff;
133
- cursor: text;
134
- display: inline-block;
135
- }
136
- .selectize-input {
137
- border: 1px solid #d0d0d0;
138
- padding: 8px 8px;
139
- display: inline-block;
140
- width: 100%;
141
- overflow: hidden;
142
- position: relative;
143
- z-index: 1;
144
- -webkit-box-sizing: border-box;
145
- -moz-box-sizing: border-box;
146
- box-sizing: border-box;
147
- -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.1);
148
- box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.1);
149
- -webkit-border-radius: 3px;
150
- -moz-border-radius: 3px;
151
- border-radius: 3px;
152
- }
153
- .selectize-control.multi .selectize-input.has-items {
154
- padding: 6px 8px 3px;
155
- }
156
- .selectize-input.full {
157
- background-color: #ffffff;
158
- }
159
- .selectize-input.disabled,
160
- .selectize-input.disabled * {
161
- cursor: default !important;
162
- }
163
- .selectize-input.focus {
164
- -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.15);
165
- box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.15);
166
- }
167
- .selectize-input.dropdown-active {
168
- -webkit-border-radius: 3px 3px 0 0;
169
- -moz-border-radius: 3px 3px 0 0;
170
- border-radius: 3px 3px 0 0;
171
- }
172
- .selectize-input > * {
173
- vertical-align: baseline;
174
- display: -moz-inline-stack;
175
- display: inline-block;
176
- zoom: 1;
177
- *display: inline;
178
- }
179
- .selectize-control.multi .selectize-input > div {
180
- cursor: pointer;
181
- margin: 0 3px 3px 0;
182
- padding: 2px 6px;
183
- background: #f2f2f2;
184
- color: #303030;
185
- border: 0 solid #d0d0d0;
186
- }
187
- .selectize-control.multi .selectize-input > div.active {
188
- background: #e8e8e8;
189
- color: #303030;
190
- border: 0 solid #cacaca;
191
- }
192
- .selectize-control.multi .selectize-input.disabled > div,
193
- .selectize-control.multi .selectize-input.disabled > div.active {
194
- color: #7d7d7d;
195
- background: #ffffff;
196
- border: 0 solid #ffffff;
197
- }
198
- .selectize-input > input {
199
- display: inline-block !important;
200
- padding: 0 !important;
201
- min-height: 0 !important;
202
- max-height: none !important;
203
- max-width: 100% !important;
204
- margin: 0 2px 0 0 !important;
205
- text-indent: 0 !important;
206
- border: 0 none !important;
207
- background: none !important;
208
- line-height: inherit !important;
209
- -webkit-user-select: auto !important;
210
- -webkit-box-shadow: none !important;
211
- box-shadow: none !important;
212
- }
213
- .selectize-input > input::-ms-clear {
214
- display: none;
215
- }
216
- .selectize-input > input:focus {
217
- outline: none !important;
218
- }
219
- .selectize-input::after {
220
- content: ' ';
221
- display: block;
222
- clear: left;
223
- }
224
- .selectize-input.dropdown-active::before {
225
- content: ' ';
226
- display: block;
227
- position: absolute;
228
- background: #f0f0f0;
229
- height: 1px;
230
- bottom: 0;
231
- left: 0;
232
- right: 0;
233
- }
234
- .selectize-dropdown {
235
- position: absolute;
236
- z-index: 10;
237
- border: 1px solid #d0d0d0;
238
- background: #ffffff;
239
- margin: -1px 0 0 0;
240
- border-top: 0 none;
241
- -webkit-box-sizing: border-box;
242
- -moz-box-sizing: border-box;
243
- box-sizing: border-box;
244
- -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
245
- box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
246
- -webkit-border-radius: 0 0 3px 3px;
247
- -moz-border-radius: 0 0 3px 3px;
248
- border-radius: 0 0 3px 3px;
249
- }
250
- .selectize-dropdown [data-selectable] {
251
- cursor: pointer;
252
- overflow: hidden;
253
- }
254
- .selectize-dropdown [data-selectable] .highlight {
255
- background: rgba(125, 168, 208, 0.2);
256
- -webkit-border-radius: 1px;
257
- -moz-border-radius: 1px;
258
- border-radius: 1px;
259
- }
260
- .selectize-dropdown [data-selectable],
261
- .selectize-dropdown .optgroup-header {
262
- padding: 5px 8px;
263
- }
264
- .selectize-dropdown .optgroup:first-child .optgroup-header {
265
- border-top: 0 none;
266
- }
267
- .selectize-dropdown .optgroup-header {
268
- color: #303030;
269
- background: #ffffff;
270
- cursor: default;
271
- }
272
- .selectize-dropdown .active {
273
- background-color: #f5fafd;
274
- color: #495c68;
275
- }
276
- .selectize-dropdown .active.create {
277
- color: #495c68;
278
- }
279
- .selectize-dropdown .create {
280
- color: rgba(48, 48, 48, 0.5);
281
- }
282
- .selectize-dropdown-content {
283
- overflow-y: auto;
284
- overflow-x: hidden;
285
- max-height: 200px;
286
- }
287
- .selectize-control.single .selectize-input,
288
- .selectize-control.single .selectize-input input {
289
- cursor: pointer;
290
- }
291
- .selectize-control.single .selectize-input.input-active,
292
- .selectize-control.single .selectize-input.input-active input {
293
- cursor: text;
294
- }
295
- .selectize-control.single .selectize-input:after {
296
- content: ' ';
297
- display: block;
298
- position: absolute;
299
- top: 50%;
300
- right: 15px;
301
- margin-top: -3px;
302
- width: 0;
303
- height: 0;
304
- border-style: solid;
305
- border-width: 5px 5px 0 5px;
306
- border-color: #808080 transparent transparent transparent;
307
- }
308
- .selectize-control.single .selectize-input.dropdown-active:after {
309
- margin-top: -4px;
310
- border-width: 0 5px 5px 5px;
311
- border-color: transparent transparent #808080 transparent;
312
- }
313
- .selectize-control.rtl.single .selectize-input:after {
314
- left: 15px;
315
- right: auto;
316
- }
317
- .selectize-control.rtl .selectize-input > input {
318
- margin: 0 4px 0 -2px !important;
319
- }
320
- .selectize-control .selectize-input.disabled {
321
- opacity: 0.5;
322
- background-color: #fafafa;
323
- }
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ /**
3
+ * selectize.css (v0.12.6)
4
+ * Copyright (c) 2013–2015 Brian Reavis & contributors
5
+ *
6
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this
7
+ * file except in compliance with the License. You may obtain a copy of the License at:
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software distributed under
11
+ * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF
12
+ * ANY KIND, either express or implied. See the License for the specific language
13
+ * governing permissions and limitations under the License.
14
+ *
15
+ * @author Brian Reavis <brian@thirdroute.com>
16
+ */
17
+
18
+ .selectize-control.plugin-drag_drop.multi > .selectize-input > div.ui-sortable-placeholder {
19
+ visibility: visible !important;
20
+ background: #f2f2f2 !important;
21
+ background: rgba(0, 0, 0, 0.06) !important;
22
+ border: 0 none !important;
23
+ -webkit-box-shadow: inset 0 0 12px 4px #fff;
24
+ box-shadow: inset 0 0 12px 4px #fff;
25
+ }
26
+ .selectize-control.plugin-drag_drop .ui-sortable-placeholder::after {
27
+ content: '!';
28
+ visibility: hidden;
29
+ }
30
+ .selectize-control.plugin-drag_drop .ui-sortable-helper {
31
+ -webkit-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
32
+ box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
33
+ }
34
+ .selectize-dropdown-header {
35
+ position: relative;
36
+ padding: 5px 8px;
37
+ border-bottom: 1px solid #d0d0d0;
38
+ background: #f8f8f8;
39
+ -webkit-border-radius: 3px 3px 0 0;
40
+ -moz-border-radius: 3px 3px 0 0;
41
+ border-radius: 3px 3px 0 0;
42
+ }
43
+ .selectize-dropdown-header-close {
44
+ position: absolute;
45
+ right: 8px;
46
+ top: 50%;
47
+ color: #303030;
48
+ opacity: 0.4;
49
+ margin-top: -12px;
50
+ line-height: 20px;
51
+ font-size: 20px !important;
52
+ }
53
+ .selectize-dropdown-header-close:hover {
54
+ color: #000000;
55
+ }
56
+ .selectize-dropdown.plugin-optgroup_columns .optgroup {
57
+ border-right: 1px solid #f2f2f2;
58
+ border-top: 0 none;
59
+ float: left;
60
+ -webkit-box-sizing: border-box;
61
+ -moz-box-sizing: border-box;
62
+ box-sizing: border-box;
63
+ }
64
+ .selectize-dropdown.plugin-optgroup_columns .optgroup:last-child {
65
+ border-right: 0 none;
66
+ }
67
+ .selectize-dropdown.plugin-optgroup_columns .optgroup:before {
68
+ display: none;
69
+ }
70
+ .selectize-dropdown.plugin-optgroup_columns .optgroup-header {
71
+ border-top: 0 none;
72
+ }
73
+ .selectize-control.plugin-remove_button [data-value] {
74
+ position: relative;
75
+ padding-right: 24px !important;
76
+ }
77
+ .selectize-control.plugin-remove_button [data-value] .remove {
78
+ z-index: 1;
79
+ /* fixes ie bug (see #392) */
80
+ position: absolute;
81
+ top: 0;
82
+ right: 0;
83
+ bottom: 0;
84
+ width: 17px;
85
+ text-align: center;
86
+ font-weight: bold;
87
+ font-size: 12px;
88
+ color: inherit;
89
+ text-decoration: none;
90
+ vertical-align: middle;
91
+ display: inline-block;
92
+ padding: 2px 0 0 0;
93
+ border-left: 1px solid #d0d0d0;
94
+ -webkit-border-radius: 0 2px 2px 0;
95
+ -moz-border-radius: 0 2px 2px 0;
96
+ border-radius: 0 2px 2px 0;
97
+ -webkit-box-sizing: border-box;
98
+ -moz-box-sizing: border-box;
99
+ box-sizing: border-box;
100
+ }
101
+ .selectize-control.plugin-remove_button [data-value] .remove:hover {
102
+ background: rgba(0, 0, 0, 0.05);
103
+ }
104
+ .selectize-control.plugin-remove_button [data-value].active .remove {
105
+ border-left-color: #cacaca;
106
+ }
107
+ .selectize-control.plugin-remove_button .disabled [data-value] .remove:hover {
108
+ background: none;
109
+ }
110
+ .selectize-control.plugin-remove_button .disabled [data-value] .remove {
111
+ border-left-color: #ffffff;
112
+ }
113
+ .selectize-control.plugin-remove_button .remove-single {
114
+ position: absolute;
115
+ right: 0;
116
+ top: 0;
117
+ font-size: 23px;
118
+ }
119
+ .selectize-control {
120
+ position: relative;
121
+ }
122
+ .selectize-dropdown,
123
+ .selectize-input,
124
+ .selectize-input input {
125
+ color: #303030;
126
+ font-family: inherit;
127
+ font-size: 13px;
128
+ line-height: 18px;
129
+ -webkit-font-smoothing: inherit;
130
+ }
131
+ .selectize-input,
132
+ .selectize-control.single .selectize-input.input-active {
133
+ background: #fff;
134
+ cursor: text;
135
+ display: inline-block;
136
+ }
137
+ .selectize-input {
138
+ border: 1px solid #d0d0d0;
139
+ padding: 8px 8px;
140
+ display: inline-block;
141
+ width: 100%;
142
+ overflow: hidden;
143
+ position: relative;
144
+ z-index: 1;
145
+ -webkit-box-sizing: border-box;
146
+ -moz-box-sizing: border-box;
147
+ box-sizing: border-box;
148
+ -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.1);
149
+ box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.1);
150
+ -webkit-border-radius: 3px;
151
+ -moz-border-radius: 3px;
152
+ border-radius: 3px;
153
+ }
154
+ .selectize-control.multi .selectize-input.has-items {
155
+ padding: 6px 8px 3px;
156
+ }
157
+ .selectize-input.full {
158
+ background-color: #fff;
159
+ }
160
+ .selectize-input.disabled,
161
+ .selectize-input.disabled * {
162
+ cursor: default !important;
163
+ }
164
+ .selectize-input.focus {
165
+ -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.15);
166
+ box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.15);
167
+ }
168
+ .selectize-input.dropdown-active {
169
+ -webkit-border-radius: 3px 3px 0 0;
170
+ -moz-border-radius: 3px 3px 0 0;
171
+ border-radius: 3px 3px 0 0;
172
+ }
173
+ .selectize-input > * {
174
+ vertical-align: baseline;
175
+ display: -moz-inline-stack;
176
+ display: inline-block;
177
+ zoom: 1;
178
+ *display: inline;
179
+ }
180
+ .selectize-control.multi .selectize-input > div {
181
+ cursor: pointer;
182
+ margin: 0 3px 3px 0;
183
+ padding: 2px 6px;
184
+ background: #f2f2f2;
185
+ color: #303030;
186
+ border: 0 solid #d0d0d0;
187
+ }
188
+ .selectize-control.multi .selectize-input > div.active {
189
+ background: #e8e8e8;
190
+ color: #303030;
191
+ border: 0 solid #cacaca;
192
+ }
193
+ .selectize-control.multi .selectize-input.disabled > div,
194
+ .selectize-control.multi .selectize-input.disabled > div.active {
195
+ color: #7d7d7d;
196
+ background: #ffffff;
197
+ border: 0 solid #ffffff;
198
+ }
199
+ .selectize-input > input {
200
+ display: inline-block !important;
201
+ padding: 0 !important;
202
+ min-height: 0 !important;
203
+ max-height: none !important;
204
+ max-width: 100% !important;
205
+ margin: 0 2px 0 0 !important;
206
+ text-indent: 0 !important;
207
+ border: 0 none !important;
208
+ background: none !important;
209
+ line-height: inherit !important;
210
+ -webkit-user-select: auto !important;
211
+ -webkit-box-shadow: none !important;
212
+ box-shadow: none !important;
213
+ }
214
+ .selectize-input > input::-ms-clear {
215
+ display: none;
216
+ }
217
+ .selectize-input > input:focus {
218
+ outline: none !important;
219
+ }
220
+ .selectize-input::after {
221
+ content: ' ';
222
+ display: block;
223
+ clear: left;
224
+ }
225
+ .selectize-input.dropdown-active::before {
226
+ content: ' ';
227
+ display: block;
228
+ position: absolute;
229
+ background: #f0f0f0;
230
+ height: 1px;
231
+ bottom: 0;
232
+ left: 0;
233
+ right: 0;
234
+ }
235
+ .selectize-dropdown {
236
+ position: absolute;
237
+ z-index: 10;
238
+ border: 1px solid #d0d0d0;
239
+ background: #fff;
240
+ margin: -1px 0 0 0;
241
+ border-top: 0 none;
242
+ -webkit-box-sizing: border-box;
243
+ -moz-box-sizing: border-box;
244
+ box-sizing: border-box;
245
+ -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
246
+ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
247
+ -webkit-border-radius: 0 0 3px 3px;
248
+ -moz-border-radius: 0 0 3px 3px;
249
+ border-radius: 0 0 3px 3px;
250
+ }
251
+ .selectize-dropdown [data-selectable] {
252
+ cursor: pointer;
253
+ overflow: hidden;
254
+ }
255
+ .selectize-dropdown [data-selectable] .highlight {
256
+ background: rgba(125, 168, 208, 0.2);
257
+ -webkit-border-radius: 1px;
258
+ -moz-border-radius: 1px;
259
+ border-radius: 1px;
260
+ }
261
+ .selectize-dropdown .option,
262
+ .selectize-dropdown .optgroup-header {
263
+ padding: 5px 8px;
264
+ }
265
+ .selectize-dropdown .option,
266
+ .selectize-dropdown [data-disabled],
267
+ .selectize-dropdown [data-disabled] [data-selectable].option {
268
+ cursor: inherit;
269
+ opacity: 0.5;
270
+ }
271
+ .selectize-dropdown [data-selectable].option {
272
+ opacity: 1;
273
+ }
274
+ .selectize-dropdown .optgroup:first-child .optgroup-header {
275
+ border-top: 0 none;
276
+ }
277
+ .selectize-dropdown .optgroup-header {
278
+ color: #303030;
279
+ background: #fff;
280
+ cursor: default;
281
+ }
282
+ .selectize-dropdown .active {
283
+ background-color: #f5fafd;
284
+ color: #495c68;
285
+ }
286
+ .selectize-dropdown .active.create {
287
+ color: #495c68;
288
+ }
289
+ .selectize-dropdown .create {
290
+ color: rgba(48, 48, 48, 0.5);
291
+ }
292
+ .selectize-dropdown-content {
293
+ overflow-y: auto;
294
+ overflow-x: hidden;
295
+ max-height: 200px;
296
+ -webkit-overflow-scrolling: touch;
297
+ }
298
+ .selectize-control.single .selectize-input,
299
+ .selectize-control.single .selectize-input input {
300
+ cursor: pointer;
301
+ }
302
+ .selectize-control.single .selectize-input.input-active,
303
+ .selectize-control.single .selectize-input.input-active input {
304
+ cursor: text;
305
+ }
306
+ .selectize-control.single .selectize-input:after {
307
+ content: ' ';
308
+ display: block;
309
+ position: absolute;
310
+ top: 50%;
311
+ right: 15px;
312
+ margin-top: -3px;
313
+ width: 0;
314
+ height: 0;
315
+ border-style: solid;
316
+ border-width: 5px 5px 0 5px;
317
+ border-color: #808080 transparent transparent transparent;
318
+ }
319
+ .selectize-control.single .selectize-input.dropdown-active:after {
320
+ margin-top: -4px;
321
+ border-width: 0 5px 5px 5px;
322
+ border-color: transparent transparent #808080 transparent;
323
+ }
324
+ .selectize-control.rtl.single .selectize-input:after {
325
+ left: 15px;
326
+ right: auto;
327
+ }
328
+ .selectize-control.rtl .selectize-input > input {
329
+ margin: 0 4px 0 -2px !important;
330
+ }
331
+ .selectize-control .selectize-input.disabled {
332
+ opacity: 0.5;
333
+ background-color: #fafafa;
334
+ }
admin/css/woo-feed-admin.css CHANGED
@@ -1,484 +1,442 @@
1
- /**
2
- * All of the CSS for your admin-specific functionality should be
3
- * included in this file.
4
- */
5
- .wpf_sos{
6
- -webkit-animation: spin 1000ms infinite linear;
7
- animation: spin 1000ms infinite linear;
8
- }
9
- @-webkit-keyframes spin {
10
- 0% {
11
- -webkit-transform: rotate(0deg);
12
- transform: rotate(0deg);
13
- }
14
- 100% {
15
- -webkit-transform: rotate(359deg);
16
- transform: rotate(359deg);
17
- }
18
- }
19
- @keyframes spin {
20
- 0% {
21
- -webkit-transform: rotate(0deg);
22
- transform: rotate(0deg);
23
- }
24
- 100% {
25
- -webkit-transform: rotate(359deg);
26
- transform: rotate(359deg);
27
- }
28
- }
29
-
30
- .wfbtn {
31
- background: #3498db;
32
- background-image: -webkit-linear-gradient(top, #3498db, #2980b9);
33
- background-image: -moz-linear-gradient(top, #3498db, #2980b9);
34
- background-image: -ms-linear-gradient(top, #3498db, #2980b9);
35
- background-image: -o-linear-gradient(top, #3498db, #2980b9);
36
- background-image: linear-gradient(to bottom, #3498db, #2980b9);
37
- -webkit-border-radius: 17px;
38
- -moz-border-radius: 17px;
39
- border-radius: 17px;
40
- -webkit-box-shadow: 0px 1px 3px #666666;
41
- -moz-box-shadow: 0px 1px 3px #666666;
42
- box-shadow: 0px 1px 3px #666666;
43
- font-family: Arial;
44
- color: #ffffff;
45
- font-size: 20px;
46
- padding: 10px 20px 10px 20px;
47
- border: solid #2b698f 3px;
48
- text-decoration: none;
49
- }
50
- .wftooltip {
51
- display:none;
52
- position:absolute;
53
- border:1px solid #333;
54
- background-color:#161616;
55
- border-radius:5px;
56
- padding:10px;
57
- color:#fff;
58
- font-size:12px;
59
- }
60
- .wfbtn:hover {
61
- background: #3cb0fd;
62
- background-image: -webkit-linear-gradient(top, #3cb0fd, #3498db);
63
- background-image: -moz-linear-gradient(top, #3cb0fd, #3498db);
64
- background-image: -ms-linear-gradient(top, #3cb0fd, #3498db);
65
- background-image: -o-linear-gradient(top, #3cb0fd, #3498db);
66
- background-image: linear-gradient(to bottom, #3cb0fd, #3498db);
67
- text-decoration: none;
68
- }
69
-
70
- .makeFeedResponse{
71
- width: 70%;
72
- color: green;
73
- }
74
-
75
- .woo-feed-mapping-input {
76
- width: 100%;
77
- }
78
-
79
- .requiredIn {
80
- color: red;
81
- }
82
-
83
- .generalInput {
84
- width: 200px;
85
- }
86
-
87
- .typeahead {
88
- z-index: 1051;
89
- }
90
-
91
- .error {
92
- color: red;
93
- }
94
-
95
- /*.widefat th {*/
96
- /*text-align: center;*/
97
- /*}*/
98
-
99
- #wf_newRow {
100
- margin-left: 0px;
101
- }
102
-
103
- .mtable tbody tr {
104
- height: 25px;
105
- border: 1px solid #CCC;
106
- text-align: left;
107
- align-items: baseline;
108
- font-weight: bold;
109
- }
110
-
111
- .mtable th:nth-child(1) {
112
- width: 17px;
113
- }
114
-
115
- .mtable th:nth-child(2) {
116
- width: 160px;
117
- }
118
-
119
- .mtable th:nth-child(3) {
120
- width: 100px;
121
- }
122
-
123
- .mtable th:nth-child(4) {
124
- width: 100px;
125
- }
126
-
127
- .mtable th:nth-child(5) {
128
- width: 150px;
129
- }
130
-
131
- .mtable th:nth-child(6) {
132
- width: 100px;
133
- }
134
-
135
- .mtable th:nth-child(7) {
136
- width: 150px;
137
- }
138
-
139
- .mtable th:nth-child(8) {
140
- width: 90px;
141
- }
142
-
143
- .mtable th:nth-child(9) {
144
- width: 29px;
145
- }
146
- .wp-admin select.wf_mattributes,
147
- .wfnoempty{
148
- width:120px;
149
- }
150
-
151
- .wf_mattributes {
152
- width: 150px;
153
- left: 0;
154
- height: 25px;
155
- }
156
-
157
- .wf_attributes {
158
- width: 150px;
159
- left: 0
160
- }
161
- .wf_compare {
162
- max-width: 245px;
163
- left: 0
164
- }
165
-
166
- .wf_ps {
167
- width: 100px;
168
- left: 0
169
- }
170
-
171
-
172
- .wf_sortedtable {
173
- cursor: move;
174
- }
175
- .sorted_table .dragged {
176
- position: absolute;
177
- opacity: 0.8;
178
- z-index: 9999;
179
- background: #fff;
180
- }
181
- .sorted_table tbody tr.placeholder td {
182
- border: 1px dashed #2cc185;
183
- height: 100%;
184
- }
185
- .mtable2 tbody tr {
186
- height: 25px;
187
- border: 1px solid #CCC;
188
- text-align: left;
189
- align-items: baseline;
190
- font-weight: bold;
191
- }
192
-
193
- .mtable2 th:nth-child(1) {
194
- width: 30px;
195
- }
196
-
197
- .mtable2 th:nth-child(2) {
198
- width: 150px;
199
- }
200
-
201
- .mtable2 th:nth-child(3) {
202
- width: 230px;
203
- }
204
-
205
- .mtable2 th:nth-child(4) {
206
- width: 220px;
207
- }
208
-
209
- /*.mtable2 th:nth-child(5) {*/
210
- /*width: 200px;*/
211
- /*}*/
212
-
213
- /*.mtable2 th:nth-child(6) {*/
214
- /*width: 200px;*/
215
- /*}*/
216
-
217
- .mtable2 th:nth-child(7) {
218
- width: 50px;
219
- }
220
-
221
- .mtable2 th:nth-child(8) {
222
- width: 50px;
223
- }
224
-
225
- .mtable2 th:nth-child(9) {
226
- width: 29px;
227
- }
228
-
229
- /*==================Tab Design=======================*/
230
-
231
- p {
232
- color: #222;
233
- }
234
-
235
- .wf_tabs {
236
- position: relative;
237
- margin: 0 auto;
238
- width: 100%;
239
- list-style: none;
240
- /*bottom: 50px;*/
241
-
242
- }
243
-
244
- .wf_tabs:after {
245
- display: table;
246
- clear: both;
247
- content: "";
248
- }
249
-
250
- .wf_tabs li {
251
- float: left;
252
- width: 20%;
253
- display: block;
254
- border: 2px solid #CCC;
255
- }
256
-
257
- .wf_tabs input[type="radio"] {
258
- position: absolute;
259
- top:auto;
260
- left: -9999px;
261
- /*overflow: hidden;*/
262
- }
263
-
264
- .wf-tab-name {
265
- display: block;
266
- padding: 15px;
267
- font-size: 15px;
268
- font-weight: bold;
269
- line-height: 1;
270
- background: #fff;
271
- cursor: pointer;
272
- position: relative;
273
- text-align: center;
274
- text-transform: uppercase;
275
- color: #2CC185;
276
- }
277
-
278
- .wf-tab-name:hover {
279
- background: #2CC185;
280
- color: white;
281
- }
282
-
283
- .wf_tabs .wf-tab-content {
284
- z-index: 2;
285
- display: none;
286
- overflow: hidden;
287
- width: 100%;
288
- font-size: 0.9rem;
289
- /*line-height: 5px;*/
290
- /*padding: 5px;*/
291
- position: absolute;
292
- left: 0;
293
- background: #fff;
294
- border: 2px solid #CCC;
295
- }
296
-
297
- .wf_tabs [id^="tab"]:checked + label {
298
- background: #2CC185;
299
- color: white;
300
- }
301
-
302
- .wf_tabs [id^="tab"]:checked ~ [id^="wf-tab-content"] {
303
- display: block;
304
- }
305
-
306
- /**
307
- * Premium Page Design
308
- */
309
- .woo_feed_free_manage_attribute {
310
- margin: 0 auto;
311
- width: 100%;
312
- }
313
-
314
- .woo_feed_screenshort{
315
- max-width: 100%;
316
- width: 1000px;
317
- border: 3px solid #00b9eb;
318
- display: block;
319
- margin: 0 auto;
320
- }
321
-
322
- .woo-feed-screen-shot-title{
323
- font-size: 36px;
324
- text-align: center;
325
- box-sizing: content-box;
326
- color: #00b9eb;
327
- }
328
-
329
- .woo_feed_screen {
330
- background: #fff;
331
- padding: 25px 20px;
332
- margin-bottom: 20px;
333
- }
334
-
335
- .woo_feed_screen_des{
336
- text-align: center;
337
- margin: 20px 50px 20px 50px;
338
- font-size: 16px;
339
- color: #666;
340
- }
341
- .woo_feed_screen_des_2{
342
- text-align: center;
343
- margin: 20px 50px 5px 50px;
344
- font-size: 14px;
345
- color: #32373c;
346
- }
347
-
348
- /* Feed active and inactive button CSS */
349
- .wf_status_wrap label{
350
- width:50px;
351
- height:25px;
352
- box-sizing:border-box;
353
- border :1px solid;
354
- float:left;
355
- border-radius:100px;
356
- position:relative;
357
- cursor:pointer;
358
- transition:.3s ease;
359
- }
360
- input[class=woo_feed_status_input]:checked + label{
361
- background:#55e868;
362
- }
363
- input[class=woo_feed_status_input]:checked + label:before{
364
- left:25px;
365
- }
366
- .wf_status_wrap label:before{
367
- transition:.3s ease;
368
- content:'';
369
- width:20px;
370
- height:20px;
371
- position:absolute;
372
- background:white;
373
- left:2px;
374
- top:2px;
375
- box-sizing:border-box;
376
- border:1px solid;
377
- color:black;
378
- border-radius:100px;
379
- }
380
-
381
- /*Google Taxonomy creating modal*/
382
- ._wf_popup {
383
- width:100%;
384
- height:100%;
385
- display:none;
386
- position:absolute !important;
387
- z-index: 1050;
388
- background:rgba(4, 4, 4, 0.85);
389
- max-height: 100%;
390
- overflow-y: auto !important;
391
- }
392
-
393
- /* Inner */
394
- ._wf_popup-inner {
395
- max-width:500px;
396
- width:90%;
397
- padding:40px;
398
- position:absolute !important;
399
- top:50%;
400
- left:50%;
401
- -webkit-transform:translate(-50%, -50%);
402
- transform:translate(-50%, -50%);
403
- box-shadow:0px 2px 6px rgba(0,0,0,1);
404
- border-radius:3px;
405
- background:#fff;
406
- z-index: 1050;
407
- }
408
-
409
- /* Close Button */
410
- ._wf_popup-close {
411
- width:30px;
412
- height:30px;
413
- padding-top:4px;
414
- display:inline-block;
415
- position:absolute;
416
- top:0px;
417
- right:0px;
418
- transition:ease 0.25s;
419
- -webkit-transform:translate(50%, -50%);
420
- transform:translate(50%, -50%);
421
- border-radius:1000px;
422
- background:rgba(0,0,0,0.8);
423
- font-size:20px;
424
- text-align:center;
425
- line-height:100%;
426
- color:#fff;
427
- }
428
- ._wf_popup-close:hover {
429
- -webkit-transform:translate(50%, -50%) rotate(180deg);
430
- transform:translate(50%, -50%) rotate(180deg);
431
- background:rgba(0,0,0,1);
432
- text-decoration:none;
433
- }
434
-
435
- /*Plugin Deactivation popup*/
436
- .wpf_deactive_plugin-modal {
437
- position: fixed;
438
- z-index: 99999;
439
- top: 0;
440
- right: 0;
441
- bottom: 0;
442
- left: 0;
443
- background: rgba(0,0,0,0.5);
444
- display: none;
445
- }
446
-
447
- .wpf_deactive_plugin-modal.modal-active {
448
- display: block;
449
- }
450
-
451
- .wpf_deactive_plugin-modal-wrap {
452
- width: 475px;
453
- position: relative;
454
- margin: 10% auto;
455
- background: #fff;
456
- }
457
-
458
- .wpf_deactive_plugin-modal-header {
459
- border-bottom: 1px solid #eee;
460
- padding: 8px 20px;
461
- }
462
-
463
- .wpf_deactive_plugin-modal-header h3 {
464
- line-height: 150%;
465
- margin: 0;
466
- }
467
-
468
- .wpf_deactive_plugin-modal-body {
469
- padding: 5px 20px 20px 20px;
470
- }
471
-
472
- .wpf_deactive_plugin-modal-body .reason-input {
473
- margin-top: 5px;
474
- margin-left: 20px;
475
- }
476
- .wpf_deactive_plugin-modal-footer {
477
- border-top: 1px solid #eee;
478
- padding: 12px 20px;
479
- text-align: right;
480
- }
481
-
482
- #wpbody-content.woofeed-body-content{
483
- overflow:visible!important;
484
  }
1
+ /**
2
+ * All of the CSS for your admin-specific functionality should be
3
+ * included in this file.
4
+ */
5
+ .wpf_sos{
6
+ -webkit-animation: spin 1000ms infinite linear;
7
+ animation: spin 1000ms infinite linear;
8
+ }
9
+ @-webkit-keyframes spin {
10
+ 0% {
11
+ -webkit-transform: rotate(0deg);
12
+ transform: rotate(0deg);
13
+ }
14
+ 100% {
15
+ -webkit-transform: rotate(359deg);
16
+ transform: rotate(359deg);
17
+ }
18
+ }
19
+ @keyframes spin {
20
+ 0% {
21
+ -webkit-transform: rotate(0deg);
22
+ transform: rotate(0deg);
23
+ }
24
+ 100% {
25
+ -webkit-transform: rotate(359deg);
26
+ transform: rotate(359deg);
27
+ }
28
+ }
29
+
30
+ .wfbtn {
31
+ background: #3498db;
32
+ background-image: -webkit-linear-gradient(top, #3498db, #2980b9);
33
+ background-image: -moz-linear-gradient(top, #3498db, #2980b9);
34
+ background-image: -ms-linear-gradient(top, #3498db, #2980b9);
35
+ background-image: -o-linear-gradient(top, #3498db, #2980b9);
36
+ background-image: linear-gradient(to bottom, #3498db, #2980b9);
37
+ -webkit-border-radius: 17px;
38
+ -moz-border-radius: 17px;
39
+ border-radius: 17px;
40
+ -webkit-box-shadow: 0px 1px 3px #666666;
41
+ -moz-box-shadow: 0px 1px 3px #666666;
42
+ box-shadow: 0px 1px 3px #666666;
43
+ font-family: Arial;
44
+ color: #ffffff;
45
+ font-size: 20px;
46
+ padding: 10px 20px 10px 20px;
47
+ border: solid #2b698f 3px;
48
+ text-decoration: none;
49
+ }
50
+ .wftooltip {
51
+ display:none;
52
+ position:absolute;
53
+ border:1px solid #333;
54
+ background-color:#161616;
55
+ border-radius:5px;
56
+ padding:10px;
57
+ color:#fff;
58
+ font-size:12px;
59
+ }
60
+ .wfbtn:hover {
61
+ background: #3cb0fd;
62
+ background-image: -webkit-linear-gradient(top, #3cb0fd, #3498db);
63
+ background-image: -moz-linear-gradient(top, #3cb0fd, #3498db);
64
+ background-image: -ms-linear-gradient(top, #3cb0fd, #3498db);
65
+ background-image: -o-linear-gradient(top, #3cb0fd, #3498db);
66
+ background-image: linear-gradient(to bottom, #3cb0fd, #3498db);
67
+ text-decoration: none;
68
+ }
69
+
70
+ .makeFeedResponse{
71
+ width: 70%;
72
+ color: green;
73
+ }
74
+
75
+ .woo-feed-mapping-input {
76
+ width: 100%;
77
+ }
78
+
79
+ .requiredIn {
80
+ color: red;
81
+ }
82
+
83
+ .generalInput {
84
+ width: 200px;
85
+ }
86
+
87
+ .typeahead {
88
+ z-index: 1051;
89
+ }
90
+
91
+ .error {
92
+ color: red;
93
+ }
94
+
95
+ /*.widefat th {*/
96
+ /*text-align: center;*/
97
+ /*}*/
98
+
99
+ #wf_newRow {
100
+ margin-left: 0px;
101
+ }
102
+
103
+ .mtable tbody tr {
104
+ height: 25px;
105
+ border: 1px solid #CCC;
106
+ text-align: left;
107
+ align-items: baseline;
108
+ font-weight: bold;
109
+ }
110
+
111
+ .mtable th:nth-child(1) {
112
+ width: 17px;
113
+ }
114
+
115
+ .mtable th:nth-child(2) {
116
+ width: 160px;
117
+ }
118
+
119
+ .mtable th:nth-child(3) {
120
+ width: 100px;
121
+ }
122
+
123
+ .mtable th:nth-child(4) {
124
+ width: 100px;
125
+ }
126
+
127
+ .mtable th:nth-child(5) {
128
+ width: 150px;
129
+ }
130
+
131
+ .mtable th:nth-child(6) {
132
+ width: 100px;
133
+ }
134
+
135
+ .mtable th:nth-child(7) {
136
+ width: 150px;
137
+ }
138
+
139
+ .mtable th:nth-child(8) {
140
+ width: 90px;
141
+ }
142
+
143
+ .mtable th:nth-child(9) {
144
+ width: 29px;
145
+ }
146
+ .wp-admin select.wf_mattributes,
147
+ .wfnoempty{
148
+ width:120px;
149
+ }
150
+
151
+ .wf_mattributes {
152
+ width: 150px;
153
+ left: 0;
154
+ height: 25px;
155
+ }
156
+
157
+ .wf_attributes {
158
+ width: 150px;
159
+ left: 0
160
+ }
161
+ .wf_compare {
162
+ max-width: 245px;
163
+ left: 0
164
+ }
165
+
166
+ .wf_ps {
167
+ width: 100px;
168
+ left: 0
169
+ }
170
+
171
+
172
+ .wf_sortedtable {
173
+ cursor: move;
174
+ }
175
+ .sorted_table .dragged {
176
+ position: absolute;
177
+ opacity: 0.8;
178
+ z-index: 9999;
179
+ background: #fff;
180
+ }
181
+ .sorted_table tbody tr.placeholder td {
182
+ border: 1px dashed #2cc185;
183
+ height: 100%;
184
+ }
185
+ .mtable2 tbody tr {
186
+ height: 25px;
187
+ border: 1px solid #CCC;
188
+ text-align: left;
189
+ align-items: baseline;
190
+ font-weight: bold;
191
+ }
192
+
193
+ .mtable2 th:nth-child(1) {
194
+ width: 30px;
195
+ }
196
+
197
+ .mtable2 th:nth-child(2) {
198
+ width: 150px;
199
+ }
200
+
201
+ .mtable2 th:nth-child(3) {
202
+ width: 230px;
203
+ }
204
+
205
+ .mtable2 th:nth-child(4) {
206
+ width: 220px;
207
+ }
208
+
209
+ /*.mtable2 th:nth-child(5) {*/
210
+ /*width: 200px;*/
211
+ /*}*/
212
+
213
+ /*.mtable2 th:nth-child(6) {*/
214
+ /*width: 200px;*/
215
+ /*}*/
216
+
217
+ .mtable2 th:nth-child(7) {
218
+ width: 50px;
219
+ }
220
+
221
+ .mtable2 th:nth-child(8) {
222
+ width: 50px;
223
+ }
224
+
225
+ .mtable2 th:nth-child(9) {
226
+ width: 29px;
227
+ }
228
+
229
+ /*==================Tab Design=======================*/
230
+
231
+ p {
232
+ color: #222;
233
+ }
234
+
235
+ .wf_tabs {
236
+ position: relative;
237
+ margin: 0 auto;
238
+ width: 100%;
239
+ list-style: none;
240
+ /*bottom: 50px;*/
241
+
242
+ }
243
+
244
+ .wf_tabs:after {
245
+ display: table;
246
+ clear: both;
247
+ content: "";
248
+ }
249
+
250
+ .wf_tabs li {
251
+ float: left;
252
+ width: 20%;
253
+ display: block;
254
+ border: 2px solid #CCC;
255
+ }
256
+
257
+ .wf_tabs input[type="radio"] {
258
+ position: absolute;
259
+ top:auto;
260
+ left: -9999px;
261
+ /*overflow: hidden;*/
262
+ }
263
+
264
+ .wf-tab-name {
265
+ display: block;
266
+ padding: 15px;
267
+ font-size: 15px;
268
+ font-weight: bold;
269
+ line-height: 1;
270
+ background: #fff;
271
+ cursor: pointer;
272
+ position: relative;
273
+ text-align: center;
274
+ text-transform: uppercase;
275
+ color: #2CC185;
276
+ }
277
+
278
+ .wf-tab-name:hover {
279
+ background: #2CC185;
280
+ color: white;
281
+ }
282
+
283
+ .wf_tabs .wf-tab-content {
284
+ z-index: 2;
285
+ display: none;
286
+ overflow: hidden;
287
+ width: 100%;
288
+ font-size: 0.9rem;
289
+ /*line-height: 5px;*/
290
+ /*padding: 5px;*/
291
+ position: absolute;
292
+ left: 0;
293
+ background: #fff;
294
+ border: 2px solid #CCC;
295
+ }
296
+
297
+ .wf_tabs [id^="tab"]:checked + label {
298
+ background: #2CC185;
299
+ color: white;
300
+ }
301
+
302
+ .wf_tabs [id^="tab"]:checked ~ [id^="wf-tab-content"] {
303
+ display: block;
304
+ }
305
+
306
+ .webappick_selector{
307
+ background: #0073aa !important;
308
+ color: #f1f1f1 !important;
309
+ font-weight: bold !important;
310
+ border-color:#0073aa !important ;
311
+ }
312
+ .selectize-input.full #googleTaxonomyId-selectized { opacity: 0; position: absolute; left: -10000px; }
313
+ .selectize-dropdown [data-selectable].option { cursor: default; }
314
+ .selectize-control.plugin-remove_button [data-value] .remove{
315
+ border-left: 1px solid #0073aa !important;
316
+ }
317
+
318
+ /**
319
+ * Premium Page Design
320
+ */
321
+ .woo_feed_free_manage_attribute {
322
+ margin: 0 auto;
323
+ width: 100%;
324
+ }
325
+
326
+ .woo_feed_screenshort{
327
+ max-width: 100%;
328
+ width: 1000px;
329
+ border: 3px solid #00b9eb;
330
+ display: block;
331
+ margin: 0 auto;
332
+ }
333
+
334
+ .woo-feed-screen-shot-title{
335
+ font-size: 36px;
336
+ text-align: center;
337
+ box-sizing: content-box;
338
+ color: #00b9eb;
339
+ }
340
+
341
+ .woo_feed_screen {
342
+ background: #fff;
343
+ padding: 25px 20px;
344
+ margin-bottom: 20px;
345
+ }
346
+
347
+ .woo_feed_screen_des{
348
+ text-align: center;
349
+ margin: 20px 50px 20px 50px;
350
+ font-size: 16px;
351
+ color: #666;
352
+ }
353
+ .woo_feed_screen_des_2{
354
+ text-align: center;
355
+ margin: 20px 50px 5px 50px;
356
+ font-size: 14px;
357
+ color: #32373c;
358
+ }
359
+
360
+ /* Feed active and inactive button CSS */
361
+ .wf_status_wrap label{
362
+ width:50px;
363
+ height:25px;
364
+ box-sizing:border-box;
365
+ border :1px solid;
366
+ float:left;
367
+ border-radius:100px;
368
+ position:relative;
369
+ cursor:pointer;
370
+ transition:.3s ease;
371
+ }
372
+ input[class=woo_feed_status_input]:checked + label{
373
+ background:#55e868;
374
+ }
375
+ input[class=woo_feed_status_input]:checked + label:before{
376
+ left:25px;
377
+ }
378
+ .wf_status_wrap label:before{
379
+ transition:.3s ease;
380
+ content:'';
381
+ width:20px;
382
+ height:20px;
383
+ position:absolute;
384
+ background:white;
385
+ left:2px;
386
+ top:2px;
387
+ box-sizing:border-box;
388
+ border:1px solid;
389
+ color:black;
390
+ border-radius:100px;
391
+ }
392
+
393
+ /*Plugin Deactivation popup*/
394
+ .wpf_deactive_plugin-modal {
395
+ position: fixed;
396
+ z-index: 99999;
397
+ top: 0;
398
+ right: 0;
399
+ bottom: 0;
400
+ left: 0;
401
+ background: rgba(0,0,0,0.5);
402
+ display: none;
403
+ }
404
+
405
+ .wpf_deactive_plugin-modal.modal-active {
406
+ display: block;
407
+ }
408
+
409
+ .wpf_deactive_plugin-modal-wrap {
410
+ width: 475px;
411
+ position: relative;
412
+ margin: 10% auto;
413
+ background: #fff;
414
+ }
415
+
416
+ .wpf_deactive_plugin-modal-header {
417
+ border-bottom: 1px solid #eee;
418
+ padding: 8px 20px;
419
+ }
420
+
421
+ .wpf_deactive_plugin-modal-header h3 {
422
+ line-height: 150%;
423
+ margin: 0;
424
+ }
425
+
426
+ .wpf_deactive_plugin-modal-body {
427
+ padding: 5px 20px 20px 20px;
428
+ }
429
+
430
+ .wpf_deactive_plugin-modal-body .reason-input {
431
+ margin-top: 5px;
432
+ margin-left: 20px;
433
+ }
434
+ .wpf_deactive_plugin-modal-footer {
435
+ border-top: 1px solid #eee;
436
+ padding: 12px 20px;
437
+ text-align: right;
438
+ }
439
+
440
+ #wpbody-content.woofeed-body-content{
441
+ overflow:visible!important;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
442
  }
admin/js/selectize.min.js CHANGED
@@ -1,3 +1,3 @@
1
- /*! selectize.js - v0.12.2 | https://github.com/selectize/selectize.js | Apache License (v2) */
2
- !function(a,b){"function"==typeof define&&define.amd?define("sifter",b):"object"==typeof exports?module.exports=b():a.Sifter=b()}(this,function(){var a=function(a,b){this.items=a,this.settings=b||{diacritics:!0}};a.prototype.tokenize=function(a){if(a=e(String(a||"").toLowerCase()),!a||!a.length)return[];var b,c,d,g,i=[],j=a.split(/ +/);for(b=0,c=j.length;b<c;b++){if(d=f(j[b]),this.settings.diacritics)for(g in h)h.hasOwnProperty(g)&&(d=d.replace(new RegExp(g,"g"),h[g]));i.push({string:j[b],regex:new RegExp(d,"i")})}return i},a.prototype.iterator=function(a,b){var c;c=g(a)?Array.prototype.forEach||function(a){for(var b=0,c=this.length;b<c;b++)a(this[b],b,this)}:function(a){for(var b in this)this.hasOwnProperty(b)&&a(this[b],b,this)},c.apply(a,[b])},a.prototype.getScoreFunction=function(a,b){var c,e,f,g,h;c=this,a=c.prepareSearch(a,b),f=a.tokens,e=a.options.fields,g=f.length,h=a.options.nesting;var i=function(a,b){var c,d;return a?(a=String(a||""),d=a.search(b.regex),d===-1?0:(c=b.string.length/a.length,0===d&&(c+=.5),c)):0},j=function(){var a=e.length;return a?1===a?function(a,b){return i(d(b,e[0],h),a)}:function(b,c){for(var f=0,g=0;f<a;f++)g+=i(d(c,e[f],h),b);return g/a}:function(){return 0}}();return g?1===g?function(a){return j(f[0],a)}:"and"===a.options.conjunction?function(a){for(var b,c=0,d=0;c<g;c++){if(b=j(f[c],a),b<=0)return 0;d+=b}return d/g}:function(a){for(var b=0,c=0;b<g;b++)c+=j(f[b],a);return c/g}:function(){return 0}},a.prototype.getSortFunction=function(a,c){var e,f,g,h,i,j,k,l,m,n,o;if(g=this,a=g.prepareSearch(a,c),o=!a.query&&c.sort_empty||c.sort,m=function(a,b){return"$score"===a?b.score:d(g.items[b.id],a,c.nesting)},i=[],o)for(e=0,f=o.length;e<f;e++)(a.query||"$score"!==o[e].field)&&i.push(o[e]);if(a.query){for(n=!0,e=0,f=i.length;e<f;e++)if("$score"===i[e].field){n=!1;break}n&&i.unshift({field:"$score",direction:"desc"})}else for(e=0,f=i.length;e<f;e++)if("$score"===i[e].field){i.splice(e,1);break}for(l=[],e=0,f=i.length;e<f;e++)l.push("desc"===i[e].direction?-1:1);return j=i.length,j?1===j?(h=i[0].field,k=l[0],function(a,c){return k*b(m(h,a),m(h,c))}):function(a,c){var d,e,f;for(d=0;d<j;d++)if(f=i[d].field,e=l[d]*b(m(f,a),m(f,c)))return e;return 0}:null},a.prototype.prepareSearch=function(a,b){if("object"==typeof a)return a;b=c({},b);var d=b.fields,e=b.sort,f=b.sort_empty;return d&&!g(d)&&(b.fields=[d]),e&&!g(e)&&(b.sort=[e]),f&&!g(f)&&(b.sort_empty=[f]),{options:b,query:String(a||"").toLowerCase(),tokens:this.tokenize(a),total:0,items:[]}},a.prototype.search=function(a,b){var c,d,e,f,g=this;return d=this.prepareSearch(a,b),b=d.options,a=d.query,f=b.score||g.getScoreFunction(d),a.length?g.iterator(g.items,function(a,e){c=f(a),(b.filter===!1||c>0)&&d.items.push({score:c,id:e})}):g.iterator(g.items,function(a,b){d.items.push({score:1,id:b})}),e=g.getSortFunction(d,b),e&&d.items.sort(e),d.total=d.items.length,"number"==typeof b.limit&&(d.items=d.items.slice(0,b.limit)),d};var b=function(a,b){return"number"==typeof a&&"number"==typeof b?a>b?1:a<b?-1:0:(a=i(String(a||"")),b=i(String(b||"")),a>b?1:b>a?-1:0)},c=function(a,b){var c,d,e,f;for(c=1,d=arguments.length;c<d;c++)if(f=arguments[c])for(e in f)f.hasOwnProperty(e)&&(a[e]=f[e]);return a},d=function(a,b,c){if(a&&b){if(!c)return a[b];for(var d=b.split(".");d.length&&(a=a[d.shift()]););return a}},e=function(a){return(a+"").replace(/^\s+|\s+$|/g,"")},f=function(a){return(a+"").replace(/([.?*+^$[\]\\(){}|-])/g,"\\$1")},g=Array.isArray||"undefined"!=typeof $&&$.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)},h={a:"[aḀḁĂăÂâǍǎȺⱥȦȧẠạÄäÀàÁáĀāÃãÅåąĄÃąĄ]",b:"[b␢βΒB฿𐌁ᛒ]",c:"[cĆćĈĉČčĊċC̄c̄ÇçḈḉȻȼƇƈɕᴄCc]",d:"[dĎďḊḋḐḑḌḍḒḓḎḏĐđD̦d̦ƉɖƊɗƋƌᵭᶁᶑȡᴅDdð]",e:"[eÉéÈèÊêḘḙĚěĔĕẼẽḚḛẺẻĖėËëĒēȨȩĘęᶒɆɇȄȅẾếỀềỄễỂểḜḝḖḗḔḕȆȇẸẹỆệⱸᴇEeɘǝƏƐε]",f:"[fƑƒḞḟ]",g:"[gɢ₲ǤǥĜĝĞğĢģƓɠĠġ]",h:"[hĤĥĦħḨḩẖẖḤḥḢḣɦʰǶƕ]",i:"[iÍíÌìĬĭÎîǏǐÏïḮḯĨĩĮįĪīỈỉȈȉȊȋỊịḬḭƗɨɨ̆ᵻᶖİiIıɪIi]",j:"[jȷĴĵɈɉʝɟʲ]",k:"[kƘƙꝀꝁḰḱǨǩḲḳḴḵκϰ₭]",l:"[lŁłĽľĻļĹĺḶḷḸḹḼḽḺḻĿŀȽƚⱠⱡⱢɫɬᶅɭȴʟLl]",n:"[nŃńǸǹŇňÑñṄṅŅņṆṇṊṋṈṉN̈n̈ƝɲȠƞᵰᶇɳȵɴNnŊŋ]",o:"[oØøÖöÓóÒòÔôǑǒŐőŎŏȮȯỌọƟɵƠơỎỏŌōÕõǪǫȌȍՕօ]",p:"[pṔṕṖṗⱣᵽƤƥᵱ]",q:"[qꝖꝗʠɊɋꝘꝙq̃]",r:"[rŔŕɌɍŘřŖŗṘṙȐȑȒȓṚṛⱤɽ]",s:"[sŚśṠṡṢṣꞨꞩŜŝŠšŞşȘșS̈s̈]",t:"[tŤťṪṫŢţṬṭƮʈȚțṰṱṮṯƬƭ]",u:"[uŬŭɄʉỤụÜüÚúÙùÛûǓǔŰűŬŭƯưỦủŪūŨũŲųȔȕ∪]",v:"[vṼṽṾṿƲʋꝞꝟⱱʋ]",w:"[wẂẃẀẁŴŵẄẅẆẇẈẉ]",x:"[xẌẍẊẋχ]",y:"[yÝýỲỳŶŷŸÿỸỹẎẏỴỵɎɏƳƴ]",z:"[zŹźẐẑŽžŻżẒẓẔẕƵƶ]"},i=function(){var a,b,c,d,e="",f={};for(c in h)if(h.hasOwnProperty(c))for(d=h[c].substring(2,h[c].length-1),e+=d,a=0,b=d.length;a<b;a++)f[d.charAt(a)]=c;var g=new RegExp("["+e+"]","g");return function(a){return a.replace(g,function(a){return f[a]}).toLowerCase()}}();return a}),function(a,b){"function"==typeof define&&define.amd?define("microplugin",b):"object"==typeof exports?module.exports=b():a.MicroPlugin=b()}(this,function(){var a={};a.mixin=function(a){a.plugins={},a.prototype.initializePlugins=function(a){var c,d,e,f=this,g=[];if(f.plugins={names:[],settings:{},requested:{},loaded:{}},b.isArray(a))for(c=0,d=a.length;c<d;c++)"string"==typeof a[c]?g.push(a[c]):(f.plugins.settings[a[c].name]=a[c].options,g.push(a[c].name));else if(a)for(e in a)a.hasOwnProperty(e)&&(f.plugins.settings[e]=a[e],g.push(e));for(;g.length;)f.require(g.shift())},a.prototype.loadPlugin=function(b){var c=this,d=c.plugins,e=a.plugins[b];if(!a.plugins.hasOwnProperty(b))throw new Error('Unable to find "'+b+'" plugin');d.requested[b]=!0,d.loaded[b]=e.fn.apply(c,[c.plugins.settings[b]||{}]),d.names.push(b)},a.prototype.require=function(a){var b=this,c=b.plugins;if(!b.plugins.loaded.hasOwnProperty(a)){if(c.requested[a])throw new Error('Plugin has circular dependency ("'+a+'")');b.loadPlugin(a)}return c.loaded[a]},a.define=function(b,c){a.plugins[b]={name:b,fn:c}}};var b={isArray:Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}};return a}),function(a,b){"function"==typeof define&&define.amd?define("selectize",["jquery","sifter","microplugin"],b):"object"==typeof exports?module.exports=b(require("jquery"),require("sifter"),require("microplugin")):a.Selectize=b(a.jQuery,a.Sifter,a.MicroPlugin)}(this,function(a,b,c){"use strict";var d=function(a,b){if("string"!=typeof b||b.length){var c="string"==typeof b?new RegExp(b,"i"):b,d=function(a){var b=0;if(3===a.nodeType){var e=a.data.search(c);if(e>=0&&a.data.length>0){var f=a.data.match(c),g=document.createElement("span");g.className="highlight";var h=a.splitText(e),i=(h.splitText(f[0].length),h.cloneNode(!0));g.appendChild(i),h.parentNode.replaceChild(g,h),b=1}}else if(1===a.nodeType&&a.childNodes&&!/(script|style)/i.test(a.tagName))for(var j=0;j<a.childNodes.length;++j)j+=d(a.childNodes[j]);return b};return a.each(function(){d(this)})}},e=function(){};e.prototype={on:function(a,b){this._events=this._events||{},this._events[a]=this._events[a]||[],this._events[a].push(b)},off:function(a,b){var c=arguments.length;return 0===c?delete this._events:1===c?delete this._events[a]:(this._events=this._events||{},void(a in this._events!=!1&&this._events[a].splice(this._events[a].indexOf(b),1)))},trigger:function(a){if(this._events=this._events||{},a in this._events!=!1)for(var b=0;b<this._events[a].length;b++)this._events[a][b].apply(this,Array.prototype.slice.call(arguments,1))}},e.mixin=function(a){for(var b=["on","off","trigger"],c=0;c<b.length;c++)a.prototype[b[c]]=e.prototype[b[c]]};var f=/Mac/.test(navigator.userAgent),g=65,h=13,i=27,j=37,k=38,l=80,m=39,n=40,o=78,p=8,q=46,r=16,s=f?91:17,t=f?18:17,u=9,v=1,w=2,x=!/android/i.test(window.navigator.userAgent)&&!!document.createElement("form").validity,y=function(a){return"undefined"!=typeof a},z=function(a){return"undefined"==typeof a||null===a?null:"boolean"==typeof a?a?"1":"0":a+""},A=function(a){return(a+"").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;")},B={};B.before=function(a,b,c){var d=a[b];a[b]=function(){return c.apply(a,arguments),d.apply(a,arguments)}},B.after=function(a,b,c){var d=a[b];a[b]=function(){var b=d.apply(a,arguments);return c.apply(a,arguments),b}};var C=function(a){var b=!1;return function(){b||(b=!0,a.apply(this,arguments))}},D=function(a,b){var c;return function(){var d=this,e=arguments;window.clearTimeout(c),c=window.setTimeout(function(){a.apply(d,e)},b)}},E=function(a,b,c){var d,e=a.trigger,f={};a.trigger=function(){var c=arguments[0];return b.indexOf(c)===-1?e.apply(a,arguments):void(f[c]=arguments)},c.apply(a,[]),a.trigger=e;for(d in f)f.hasOwnProperty(d)&&e.apply(a,f[d])},F=function(a,b,c,d){a.on(b,c,function(b){for(var c=b.target;c&&c.parentNode!==a[0];)c=c.parentNode;return b.currentTarget=c,d.apply(this,[b])})},G=function(a){var b={};if("selectionStart"in a)b.start=a.selectionStart,b.length=a.selectionEnd-b.start;else if(document.selection){a.focus();var c=document.selection.createRange(),d=document.selection.createRange().text.length;c.moveStart("character",-a.value.length),b.start=c.text.length-d,b.length=d}return b},H=function(a,b,c){var d,e,f={};if(c)for(d=0,e=c.length;d<e;d++)f[c[d]]=a.css(c[d]);else f=a.css();b.css(f)},I=function(b,c){if(!b)return 0;var d=a("<test>").css({position:"absolute",top:-99999,left:-99999,width:"auto",padding:0,whiteSpace:"pre"}).text(b).appendTo("body");H(c,d,["letterSpacing","fontSize","fontFamily","fontWeight","textTransform"]);var e=d.width();return d.remove(),e},J=function(a){var b=null,c=function(c,d){var e,f,g,h,i,j,k,l;c=c||window.event||{},d=d||{},c.metaKey||c.altKey||(d.force||a.data("grow")!==!1)&&(e=a.val(),c.type&&"keydown"===c.type.toLowerCase()&&(f=c.keyCode,g=f>=97&&f<=122||f>=65&&f<=90||f>=48&&f<=57||32===f,f===q||f===p?(l=G(a[0]),l.length?e=e.substring(0,l.start)+e.substring(l.start+l.length):f===p&&l.start?e=e.substring(0,l.start-1)+e.substring(l.start+1):f===q&&"undefined"!=typeof l.start&&(e=e.substring(0,l.start)+e.substring(l.start+1))):g&&(j=c.shiftKey,k=String.fromCharCode(c.keyCode),k=j?k.toUpperCase():k.toLowerCase(),e+=k)),h=a.attr("placeholder"),!e&&h&&(e=h),i=I(e,a)+4,i!==b&&(b=i,a.width(i),a.triggerHandler("resize")))};a.on("keydown keyup update blur",c),c()},K=function(a){var b=document.createElement("div");return b.appendChild(a.cloneNode(!0)),b.innerHTML},L=function(c,d){var e,f,g,h,i=this;h=c[0],h.selectize=i;var j=window.getComputedStyle&&window.getComputedStyle(h,null);if(g=j?j.getPropertyValue("direction"):h.currentStyle&&h.currentStyle.direction,g=g||c.parents("[dir]:first").attr("dir")||"",a.extend(i,{order:0,settings:d,$input:c,tabIndex:c.attr("tabindex")||"",tagType:"select"===h.tagName.toLowerCase()?v:w,rtl:/rtl/i.test(g),eventNS:".selectize"+ ++L.count,highlightedValue:null,isOpen:!1,isDisabled:!1,isRequired:c.is("[required]"),isInvalid:!1,isLocked:!1,isFocused:!1,isInputHidden:!1,isSetup:!1,isShiftDown:!1,isCmdDown:!1,isCtrlDown:!1,ignoreFocus:!1,ignoreBlur:!1,ignoreHover:!1,hasOptions:!1,currentResults:null,lastValue:"",caretPos:0,loading:0,loadedSearches:{},$activeOption:null,$activeItems:[],optgroups:{},options:{},userOptions:{},items:[],renderCache:{},onSearchChange:null===d.loadThrottle?i.onSearchChange:D(i.onSearchChange,d.loadThrottle)}),i.sifter=new b(this.options,{diacritics:d.diacritics}),i.settings.options){for(e=0,f=i.settings.options.length;e<f;e++)i.registerOption(i.settings.options[e]);delete i.settings.options}if(i.settings.optgroups){for(e=0,f=i.settings.optgroups.length;e<f;e++)i.registerOptionGroup(i.settings.optgroups[e]);delete i.settings.optgroups}i.settings.mode=i.settings.mode||(1===i.settings.maxItems?"single":"multi"),"boolean"!=typeof i.settings.hideSelected&&(i.settings.hideSelected="multi"===i.settings.mode),i.initializePlugins(i.settings.plugins),i.setupCallbacks(),i.setupTemplates(),i.setup()};return e.mixin(L),c.mixin(L),a.extend(L.prototype,{setup:function(){var b,c,d,e,g,h,i,j,k,l=this,m=l.settings,n=l.eventNS,o=a(window),p=a(document),q=l.$input;if(i=l.settings.mode,j=q.attr("class")||"",b=a("<div>").addClass(m.wrapperClass).addClass(j).addClass(i),c=a("<div>").addClass(m.inputClass).addClass("items").appendTo(b),d=a('<input type="text" autocomplete="off" />').appendTo(c).attr("tabindex",q.is(":disabled")?"-1":l.tabIndex),h=a(m.dropdownParent||b),e=a("<div>").addClass(m.dropdownClass).addClass(i).hide().appendTo(h),g=a("<div>").addClass(m.dropdownContentClass).appendTo(e),l.settings.copyClassesToDropdown&&e.addClass(j),b.css({width:q[0].style.width}),l.plugins.names.length&&(k="plugin-"+l.plugins.names.join(" plugin-"),b.addClass(k),e.addClass(k)),(null===m.maxItems||m.maxItems>1)&&l.tagType===v&&q.attr("multiple","multiple"),l.settings.placeholder&&d.attr("placeholder",m.placeholder),!l.settings.splitOn&&l.settings.delimiter){var u=l.settings.delimiter.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&");l.settings.splitOn=new RegExp("\\s*"+u+"+\\s*")}q.attr("autocorrect")&&d.attr("autocorrect",q.attr("autocorrect")),q.attr("autocapitalize")&&d.attr("autocapitalize",q.attr("autocapitalize")),l.$wrapper=b,l.$control=c,l.$control_input=d,l.$dropdown=e,l.$dropdown_content=g,e.on("mouseenter","[data-selectable]",function(){return l.onOptionHover.apply(l,arguments)}),e.on("mousedown click","[data-selectable]",function(){return l.onOptionSelect.apply(l,arguments)}),F(c,"mousedown","*:not(input)",function(){return l.onItemSelect.apply(l,arguments)}),J(d),c.on({mousedown:function(){return l.onMouseDown.apply(l,arguments)},click:function(){return l.onClick.apply(l,arguments)}}),d.on({mousedown:function(a){a.stopPropagation()},keydown:function(){return l.onKeyDown.apply(l,arguments)},keyup:function(){return l.onKeyUp.apply(l,arguments)},keypress:function(){return l.onKeyPress.apply(l,arguments)},resize:function(){l.positionDropdown.apply(l,[])},blur:function(){return l.onBlur.apply(l,arguments)},focus:function(){return l.ignoreBlur=!1,l.onFocus.apply(l,arguments)},paste:function(){return l.onPaste.apply(l,arguments)}}),p.on("keydown"+n,function(a){l.isCmdDown=a[f?"metaKey":"ctrlKey"],l.isCtrlDown=a[f?"altKey":"ctrlKey"],l.isShiftDown=a.shiftKey}),p.on("keyup"+n,function(a){a.keyCode===t&&(l.isCtrlDown=!1),a.keyCode===r&&(l.isShiftDown=!1),a.keyCode===s&&(l.isCmdDown=!1)}),p.on("mousedown"+n,function(a){if(l.isFocused){if(a.target===l.$dropdown[0]||a.target.parentNode===l.$dropdown[0])return!1;l.$control.has(a.target).length||a.target===l.$control[0]||l.blur(a.target)}}),o.on(["scroll"+n,"resize"+n].join(" "),function(){l.isOpen&&l.positionDropdown.apply(l,arguments)}),o.on("mousemove"+n,function(){l.ignoreHover=!1}),this.revertSettings={$children:q.children().detach(),tabindex:q.attr("tabindex")},q.attr("tabindex",-1).hide().after(l.$wrapper),a.isArray(m.items)&&(l.setValue(m.items),delete m.items),x&&q.on("invalid"+n,function(a){a.preventDefault(),l.isInvalid=!0,l.refreshState()}),l.updateOriginalInput(),l.refreshItems(),l.refreshState(),l.updatePlaceholder(),l.isSetup=!0,q.is(":disabled")&&l.disable(),l.on("change",this.onChange),q.data("selectize",l),q.addClass("selectized"),l.trigger("initialize"),m.preload===!0&&l.onSearchChange("")},setupTemplates:function(){var b=this,c=b.settings.labelField,d=b.settings.optgroupLabelField,e={optgroup:function(a){return'<div class="optgroup">'+a.html+"</div>"},optgroup_header:function(a,b){return'<div class="optgroup-header">'+b(a[d])+"</div>"},option:function(a,b){return'<div class="option">'+b(a[c])+"</div>"},item:function(a,b){return'<div class="item">'+b(a[c])+"</div>"},option_create:function(a,b){return'<div class="create">Add <strong>'+b(a.input)+"</strong>&hellip;</div>"}};b.settings.render=a.extend({},e,b.settings.render)},setupCallbacks:function(){var a,b,c={initialize:"onInitialize",change:"onChange",item_add:"onItemAdd",item_remove:"onItemRemove",clear:"onClear",option_add:"onOptionAdd",option_remove:"onOptionRemove",option_clear:"onOptionClear",optgroup_add:"onOptionGroupAdd",optgroup_remove:"onOptionGroupRemove",optgroup_clear:"onOptionGroupClear",dropdown_open:"onDropdownOpen",dropdown_close:"onDropdownClose",type:"onType",load:"onLoad",focus:"onFocus",blur:"onBlur"};for(a in c)c.hasOwnProperty(a)&&(b=this.settings[c[a]],b&&this.on(a,b))},onClick:function(a){var b=this;b.isFocused||(b.focus(),a.preventDefault())},onMouseDown:function(b){var c=this,d=b.isDefaultPrevented();a(b.target);if(c.isFocused){if(b.target!==c.$control_input[0])return"single"===c.settings.mode?c.isOpen?c.close():c.open():d||c.setActiveItem(null),!1}else d||window.setTimeout(function(){c.focus()},0)},onChange:function(){this.$input.trigger("change")},onPaste:function(b){var c=this;c.isFull()||c.isInputHidden||c.isLocked?b.preventDefault():c.settings.splitOn&&setTimeout(function(){for(var b=a.trim(c.$control_input.val()||"").split(c.settings.splitOn),d=0,e=b.length;d<e;d++)c.createItem(b[d])},0)},onKeyPress:function(a){if(this.isLocked)return a&&a.preventDefault();var b=String.fromCharCode(a.keyCode||a.which);return this.settings.create&&"multi"===this.settings.mode&&b===this.settings.delimiter?(this.createItem(),a.preventDefault(),!1):void 0},onKeyDown:function(a){var b=(a.target===this.$control_input[0],this);if(b.isLocked)return void(a.keyCode!==u&&a.preventDefault());switch(a.keyCode){case g:if(b.isCmdDown)return void b.selectAll();break;case i:return void(b.isOpen&&(a.preventDefault(),a.stopPropagation(),b.close()));case o:if(!a.ctrlKey||a.altKey)break;case n:if(!b.isOpen&&b.hasOptions)b.open();else if(b.$activeOption){b.ignoreHover=!0;var c=b.getAdjacentOption(b.$activeOption,1);c.length&&b.setActiveOption(c,!0,!0)}return void a.preventDefault();case l:if(!a.ctrlKey||a.altKey)break;case k:if(b.$activeOption){b.ignoreHover=!0;var d=b.getAdjacentOption(b.$activeOption,-1);d.length&&b.setActiveOption(d,!0,!0)}return void a.preventDefault();case h:return void(b.isOpen&&b.$activeOption&&(b.onOptionSelect({currentTarget:b.$activeOption}),a.preventDefault()));case j:return void b.advanceSelection(-1,a);case m:return void b.advanceSelection(1,a);case u:return b.settings.selectOnTab&&b.isOpen&&b.$activeOption&&(b.onOptionSelect({currentTarget:b.$activeOption}),b.isFull()||a.preventDefault()),void(b.settings.create&&b.createItem()&&a.preventDefault());case p:case q:return void b.deleteSelection(a)}return!b.isFull()&&!b.isInputHidden||(f?a.metaKey:a.ctrlKey)?void 0:void a.preventDefault()},onKeyUp:function(a){var b=this;if(b.isLocked)return a&&a.preventDefault();var c=b.$control_input.val()||"";b.lastValue!==c&&(b.lastValue=c,b.onSearchChange(c),b.refreshOptions(),b.trigger("type",c))},onSearchChange:function(a){var b=this,c=b.settings.load;c&&(b.loadedSearches.hasOwnProperty(a)||(b.loadedSearches[a]=!0,b.load(function(d){c.apply(b,[a,d])})))},onFocus:function(a){var b=this,c=b.isFocused;return b.isDisabled?(b.blur(),a&&a.preventDefault(),!1):void(b.ignoreFocus||(b.isFocused=!0,"focus"===b.settings.preload&&b.onSearchChange(""),c||b.trigger("focus"),b.$activeItems.length||(b.showInput(),b.setActiveItem(null),b.refreshOptions(!!b.settings.openOnFocus)),b.refreshState()))},onBlur:function(a,b){var c=this;if(c.isFocused&&(c.isFocused=!1,!c.ignoreFocus)){if(!c.ignoreBlur&&document.activeElement===c.$dropdown_content[0])return c.ignoreBlur=!0,void c.onFocus(a);var d=function(){c.close(),c.setTextboxValue(""),c.setActiveItem(null),c.setActiveOption(null),c.setCaret(c.items.length),c.refreshState(),b&&b.focus(),c.ignoreFocus=!1,c.trigger("blur")};c.ignoreFocus=!0,c.settings.create&&c.settings.createOnBlur?c.createItem(null,!1,d):d()}},onOptionHover:function(a){this.ignoreHover||this.setActiveOption(a.currentTarget,!1)},onOptionSelect:function(b){var c,d,e=this;b.preventDefault&&(b.preventDefault(),b.stopPropagation()),d=a(b.currentTarget),d.hasClass("create")?e.createItem(null,function(){e.settings.closeAfterSelect&&e.close()}):(c=d.attr("data-value"),"undefined"!=typeof c&&(e.lastQuery=null,e.setTextboxValue(""),e.addItem(c),e.settings.closeAfterSelect?e.close():!e.settings.hideSelected&&b.type&&/mouse/.test(b.type)&&e.setActiveOption(e.getOption(c))))},onItemSelect:function(a){var b=this;b.isLocked||"multi"===b.settings.mode&&(a.preventDefault(),b.setActiveItem(a.currentTarget,a))},load:function(a){var b=this,c=b.$wrapper.addClass(b.settings.loadingClass);b.loading++,a.apply(b,[function(a){b.loading=Math.max(b.loading-1,0),a&&a.length&&(b.addOption(a),b.refreshOptions(b.isFocused&&!b.isInputHidden)),b.loading||c.removeClass(b.settings.loadingClass),b.trigger("load",a)}])},setTextboxValue:function(a){var b=this.$control_input,c=b.val()!==a;c&&(b.val(a).triggerHandler("update"),this.lastValue=a)},getValue:function(){return this.tagType===v&&this.$input.attr("multiple")?this.items:this.items.join(this.settings.delimiter)},setValue:function(a,b){var c=b?[]:["change"];E(this,c,function(){this.clear(b),this.addItems(a,b)})},setActiveItem:function(b,c){var d,e,f,g,h,i,j,k,l=this;if("single"!==l.settings.mode){if(b=a(b),!b.length)return a(l.$activeItems).removeClass("active"),l.$activeItems=[],void(l.isFocused&&l.showInput());if(d=c&&c.type.toLowerCase(),"mousedown"===d&&l.isShiftDown&&l.$activeItems.length){for(k=l.$control.children(".active:last"),g=Array.prototype.indexOf.apply(l.$control[0].childNodes,[k[0]]),h=Array.prototype.indexOf.apply(l.$control[0].childNodes,[b[0]]),g>h&&(j=g,g=h,h=j),e=g;e<=h;e++)i=l.$control[0].childNodes[e],l.$activeItems.indexOf(i)===-1&&(a(i).addClass("active"),l.$activeItems.push(i));c.preventDefault()}else"mousedown"===d&&l.isCtrlDown||"keydown"===d&&this.isShiftDown?b.hasClass("active")?(f=l.$activeItems.indexOf(b[0]),l.$activeItems.splice(f,1),b.removeClass("active")):l.$activeItems.push(b.addClass("active")[0]):(a(l.$activeItems).removeClass("active"),l.$activeItems=[b.addClass("active")[0]]);l.hideInput(),this.isFocused||l.focus()}},setActiveOption:function(b,c,d){var e,f,g,h,i,j=this;j.$activeOption&&j.$activeOption.removeClass("active"),j.$activeOption=null,b=a(b),b.length&&(j.$activeOption=b.addClass("active"),!c&&y(c)||(e=j.$dropdown_content.height(),f=j.$activeOption.outerHeight(!0),c=j.$dropdown_content.scrollTop()||0,g=j.$activeOption.offset().top-j.$dropdown_content.offset().top+c,h=g,i=g-e+f,g+f>e+c?j.$dropdown_content.stop().animate({scrollTop:i},d?j.settings.scrollDuration:0):g<c&&j.$dropdown_content.stop().animate({scrollTop:h},d?j.settings.scrollDuration:0)))},selectAll:function(){var a=this;"single"!==a.settings.mode&&(a.$activeItems=Array.prototype.slice.apply(a.$control.children(":not(input)").addClass("active")),a.$activeItems.length&&(a.hideInput(),a.close()),a.focus())},hideInput:function(){var a=this;a.setTextboxValue(""),a.$control_input.css({opacity:0,position:"absolute",left:a.rtl?1e4:-1e4}),a.isInputHidden=!0},showInput:function(){this.$control_input.css({opacity:1,position:"relative",left:0}),this.isInputHidden=!1},focus:function(){var a=this;a.isDisabled||(a.ignoreFocus=!0,a.$control_input[0].focus(),window.setTimeout(function(){a.ignoreFocus=!1,a.onFocus()},0))},blur:function(a){this.$control_input[0].blur(),this.onBlur(null,a)},getScoreFunction:function(a){return this.sifter.getScoreFunction(a,this.getSearchOptions())},getSearchOptions:function(){var a=this.settings,b=a.sortField;return"string"==typeof b&&(b=[{field:b}]),{fields:a.searchField,conjunction:a.searchConjunction,sort:b}},search:function(b){var c,d,e,f=this,g=f.settings,h=this.getSearchOptions();if(g.score&&(e=f.settings.score.apply(this,[b]),"function"!=typeof e))throw new Error('Selectize "score" setting must be a function that returns a function');if(b!==f.lastQuery?(f.lastQuery=b,d=f.sifter.search(b,a.extend(h,{score:e})),f.currentResults=d):d=a.extend(!0,{},f.currentResults),g.hideSelected)for(c=d.items.length-1;c>=0;c--)f.items.indexOf(z(d.items[c].id))!==-1&&d.items.splice(c,1);return d},refreshOptions:function(b){var c,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s;"undefined"==typeof b&&(b=!0);var t=this,u=a.trim(t.$control_input.val()),v=t.search(u),w=t.$dropdown_content,x=t.$activeOption&&z(t.$activeOption.attr("data-value"));for(g=v.items.length,"number"==typeof t.settings.maxOptions&&(g=Math.min(g,t.settings.maxOptions)),h={},i=[],c=0;c<g;c++)for(j=t.options[v.items[c].id],k=t.render("option",j),l=j[t.settings.optgroupField]||"",m=a.isArray(l)?l:[l],e=0,f=m&&m.length;e<f;e++)l=m[e],t.optgroups.hasOwnProperty(l)||(l=""),h.hasOwnProperty(l)||(h[l]=document.createDocumentFragment(),i.push(l)),h[l].appendChild(k);for(this.settings.lockOptgroupOrder&&i.sort(function(a,b){var c=t.optgroups[a].$order||0,d=t.optgroups[b].$order||0;return c-d}),n=document.createDocumentFragment(),c=0,g=i.length;c<g;c++)l=i[c],t.optgroups.hasOwnProperty(l)&&h[l].childNodes.length?(o=document.createDocumentFragment(),o.appendChild(t.render("optgroup_header",t.optgroups[l])),o.appendChild(h[l]),n.appendChild(t.render("optgroup",a.extend({},t.optgroups[l],{html:K(o),dom:o})))):n.appendChild(h[l]);if(w.html(n),t.settings.highlight&&v.query.length&&v.tokens.length)for(c=0,g=v.tokens.length;c<g;c++)d(w,v.tokens[c].regex);if(!t.settings.hideSelected)for(c=0,g=t.items.length;c<g;c++)t.getOption(t.items[c]).addClass("selected");p=t.canCreate(u),p&&(w.prepend(t.render("option_create",{input:u})),s=a(w[0].childNodes[0])),t.hasOptions=v.items.length>0||p,t.hasOptions?(v.items.length>0?(r=x&&t.getOption(x),r&&r.length?q=r:"single"===t.settings.mode&&t.items.length&&(q=t.getOption(t.items[0])),q&&q.length||(q=s&&!t.settings.addPrecedence?t.getAdjacentOption(s,1):w.find("[data-selectable]:first"))):q=s,t.setActiveOption(q),b&&!t.isOpen&&t.open()):(t.setActiveOption(null),b&&t.isOpen&&t.close())},addOption:function(b){var c,d,e,f=this;if(a.isArray(b))for(c=0,d=b.length;c<d;c++)f.addOption(b[c]);else(e=f.registerOption(b))&&(f.userOptions[e]=!0,f.lastQuery=null,f.trigger("option_add",e,b))},registerOption:function(a){var b=z(a[this.settings.valueField]);return"undefined"!=typeof b&&null!==b&&!this.options.hasOwnProperty(b)&&(a.$order=a.$order||++this.order,this.options[b]=a,b)},registerOptionGroup:function(a){var b=z(a[this.settings.optgroupValueField]);return!!b&&(a.$order=a.$order||++this.order,this.optgroups[b]=a,b)},addOptionGroup:function(a,b){b[this.settings.optgroupValueField]=a,(a=this.registerOptionGroup(b))&&this.trigger("optgroup_add",a,b)},removeOptionGroup:function(a){this.optgroups.hasOwnProperty(a)&&(delete this.optgroups[a],this.renderCache={},this.trigger("optgroup_remove",a))},clearOptionGroups:function(){this.optgroups={},this.renderCache={},this.trigger("optgroup_clear")},updateOption:function(b,c){var d,e,f,g,h,i,j,k=this;if(b=z(b),f=z(c[k.settings.valueField]),null!==b&&k.options.hasOwnProperty(b)){if("string"!=typeof f)throw new Error("Value must be set in option data");j=k.options[b].$order,f!==b&&(delete k.options[b],g=k.items.indexOf(b),g!==-1&&k.items.splice(g,1,f)),c.$order=c.$order||j,k.options[f]=c,h=k.renderCache.item,i=k.renderCache.option,h&&(delete h[b],delete h[f]),i&&(delete i[b],delete i[f]),k.items.indexOf(f)!==-1&&(d=k.getItem(b),e=a(k.render("item",c)),d.hasClass("active")&&e.addClass("active"),d.replaceWith(e)),k.lastQuery=null,k.isOpen&&k.refreshOptions(!1)}},removeOption:function(a,b){var c=this;a=z(a);var d=c.renderCache.item,e=c.renderCache.option;d&&delete d[a],e&&delete e[a],delete c.userOptions[a],delete c.options[a],c.lastQuery=null,c.trigger("option_remove",a),c.removeItem(a,b)},clearOptions:function(){var a=this;a.loadedSearches={},a.userOptions={},a.renderCache={},a.options=a.sifter.items={},a.lastQuery=null,a.trigger("option_clear"),a.clear()},getOption:function(a){return this.getElementWithValue(a,this.$dropdown_content.find("[data-selectable]"))},getAdjacentOption:function(b,c){var d=this.$dropdown.find("[data-selectable]"),e=d.index(b)+c;return e>=0&&e<d.length?d.eq(e):a()},getElementWithValue:function(b,c){if(b=z(b),"undefined"!=typeof b&&null!==b)for(var d=0,e=c.length;d<e;d++)if(c[d].getAttribute("data-value")===b)return a(c[d]);return a()},getItem:function(a){return this.getElementWithValue(a,this.$control.children())},addItems:function(b,c){for(var d=a.isArray(b)?b:[b],e=0,f=d.length;e<f;e++)this.isPending=e<f-1,this.addItem(d[e],c)},addItem:function(b,c){var d=c?[]:["change"];E(this,d,function(){var d,e,f,g,h,i=this,j=i.settings.mode;return b=z(b),i.items.indexOf(b)!==-1?void("single"===j&&i.close()):void(i.options.hasOwnProperty(b)&&("single"===j&&i.clear(c),"multi"===j&&i.isFull()||(d=a(i.render("item",i.options[b])),h=i.isFull(),i.items.splice(i.caretPos,0,b),i.insertAtCaret(d),(!i.isPending||!h&&i.isFull())&&i.refreshState(),i.isSetup&&(f=i.$dropdown_content.find("[data-selectable]"),i.isPending||(e=i.getOption(b),g=i.getAdjacentOption(e,1).attr("data-value"),i.refreshOptions(i.isFocused&&"single"!==j),g&&i.setActiveOption(i.getOption(g))),!f.length||i.isFull()?i.close():i.positionDropdown(),i.updatePlaceholder(),i.trigger("item_add",b,d),i.updateOriginalInput({silent:c})))))})},removeItem:function(b,c){var d,e,f,g=this;d=b instanceof a?b:g.getItem(b),b=z(d.attr("data-value")),e=g.items.indexOf(b),e!==-1&&(d.remove(),d.hasClass("active")&&(f=g.$activeItems.indexOf(d[0]),g.$activeItems.splice(f,1)),g.items.splice(e,1),g.lastQuery=null,!g.settings.persist&&g.userOptions.hasOwnProperty(b)&&g.removeOption(b,c),e<g.caretPos&&g.setCaret(g.caretPos-1),g.refreshState(),g.updatePlaceholder(),g.updateOriginalInput({silent:c}),g.positionDropdown(),g.trigger("item_remove",b,d))},createItem:function(b,c){var d=this,e=d.caretPos;b=b||a.trim(d.$control_input.val()||"");var f=arguments[arguments.length-1];if("function"!=typeof f&&(f=function(){}),"boolean"!=typeof c&&(c=!0),!d.canCreate(b))return f(),!1;d.lock();var g="function"==typeof d.settings.create?this.settings.create:function(a){var b={};return b[d.settings.labelField]=a,b[d.settings.valueField]=a,b},h=C(function(a){if(d.unlock(),!a||"object"!=typeof a)return f();var b=z(a[d.settings.valueField]);return"string"!=typeof b?f():(d.setTextboxValue(""),d.addOption(a),d.setCaret(e),d.addItem(b),d.refreshOptions(c&&"single"!==d.settings.mode),void f(a))}),i=g.apply(this,[b,h]);return"undefined"!=typeof i&&h(i),!0},refreshItems:function(){this.lastQuery=null,this.isSetup&&this.addItem(this.items),this.refreshState(),this.updateOriginalInput()},refreshState:function(){var a,b=this;b.isRequired&&(b.items.length&&(b.isInvalid=!1),b.$control_input.prop("required",a)),b.refreshClasses()},refreshClasses:function(){var b=this,c=b.isFull(),d=b.isLocked;b.$wrapper.toggleClass("rtl",b.rtl),b.$control.toggleClass("focus",b.isFocused).toggleClass("disabled",b.isDisabled).toggleClass("required",b.isRequired).toggleClass("invalid",b.isInvalid).toggleClass("locked",d).toggleClass("full",c).toggleClass("not-full",!c).toggleClass("input-active",b.isFocused&&!b.isInputHidden).toggleClass("dropdown-active",b.isOpen).toggleClass("has-options",!a.isEmptyObject(b.options)).toggleClass("has-items",b.items.length>0),b.$control_input.data("grow",!c&&!d)},isFull:function(){return null!==this.settings.maxItems&&this.items.length>=this.settings.maxItems},updateOriginalInput:function(a){var b,c,d,e,f=this;if(a=a||{},f.tagType===v){for(d=[],b=0,c=f.items.length;b<c;b++)e=f.options[f.items[b]][f.settings.labelField]||"",d.push('<option value="'+A(f.items[b])+'" selected="selected">'+A(e)+"</option>");d.length||this.$input.attr("multiple")||d.push('<option value="" selected="selected"></option>'),f.$input.html(d.join(""))}else f.$input.val(f.getValue()),f.$input.attr("value",f.$input.val());f.isSetup&&(a.silent||f.trigger("change",f.$input.val()))},updatePlaceholder:function(){if(this.settings.placeholder){var a=this.$control_input;this.items.length?a.removeAttr("placeholder"):a.attr("placeholder",this.settings.placeholder),a.triggerHandler("update",{force:!0})}},open:function(){var a=this;a.isLocked||a.isOpen||"multi"===a.settings.mode&&a.isFull()||(a.focus(),a.isOpen=!0,a.refreshState(),a.$dropdown.css({visibility:"hidden",display:"block"}),a.positionDropdown(),a.$dropdown.css({visibility:"visible"}),a.trigger("dropdown_open",a.$dropdown))},close:function(){var a=this,b=a.isOpen;"single"===a.settings.mode&&a.items.length&&a.hideInput(),a.isOpen=!1,a.$dropdown.hide(),a.setActiveOption(null),a.refreshState(),b&&a.trigger("dropdown_close",a.$dropdown)},positionDropdown:function(){
3
- var a=this.$control,b="body"===this.settings.dropdownParent?a.offset():a.position();b.top+=a.outerHeight(!0),this.$dropdown.css({width:a.outerWidth(),top:b.top,left:b.left})},clear:function(a){var b=this;b.items.length&&(b.$control.children(":not(input)").remove(),b.items=[],b.lastQuery=null,b.setCaret(0),b.setActiveItem(null),b.updatePlaceholder(),b.updateOriginalInput({silent:a}),b.refreshState(),b.showInput(),b.trigger("clear"))},insertAtCaret:function(b){var c=Math.min(this.caretPos,this.items.length);0===c?this.$control.prepend(b):a(this.$control[0].childNodes[c]).before(b),this.setCaret(c+1)},deleteSelection:function(b){var c,d,e,f,g,h,i,j,k,l=this;if(e=b&&b.keyCode===p?-1:1,f=G(l.$control_input[0]),l.$activeOption&&!l.settings.hideSelected&&(i=l.getAdjacentOption(l.$activeOption,-1).attr("data-value")),g=[],l.$activeItems.length){for(k=l.$control.children(".active:"+(e>0?"last":"first")),h=l.$control.children(":not(input)").index(k),e>0&&h++,c=0,d=l.$activeItems.length;c<d;c++)g.push(a(l.$activeItems[c]).attr("data-value"));b&&(b.preventDefault(),b.stopPropagation())}else(l.isFocused||"single"===l.settings.mode)&&l.items.length&&(e<0&&0===f.start&&0===f.length?g.push(l.items[l.caretPos-1]):e>0&&f.start===l.$control_input.val().length&&g.push(l.items[l.caretPos]));if(!g.length||"function"==typeof l.settings.onDelete&&l.settings.onDelete.apply(l,[g])===!1)return!1;for("undefined"!=typeof h&&l.setCaret(h);g.length;)l.removeItem(g.pop());return l.showInput(),l.positionDropdown(),l.refreshOptions(!0),i&&(j=l.getOption(i),j.length&&l.setActiveOption(j)),!0},advanceSelection:function(a,b){var c,d,e,f,g,h,i=this;0!==a&&(i.rtl&&(a*=-1),c=a>0?"last":"first",d=G(i.$control_input[0]),i.isFocused&&!i.isInputHidden?(f=i.$control_input.val().length,g=a<0?0===d.start&&0===d.length:d.start===f,g&&!f&&i.advanceCaret(a,b)):(h=i.$control.children(".active:"+c),h.length&&(e=i.$control.children(":not(input)").index(h),i.setActiveItem(null),i.setCaret(a>0?e+1:e))))},advanceCaret:function(a,b){var c,d,e=this;0!==a&&(c=a>0?"next":"prev",e.isShiftDown?(d=e.$control_input[c](),d.length&&(e.hideInput(),e.setActiveItem(d),b&&b.preventDefault())):e.setCaret(e.caretPos+a))},setCaret:function(b){var c=this;if(b="single"===c.settings.mode?c.items.length:Math.max(0,Math.min(c.items.length,b)),!c.isPending){var d,e,f,g;for(f=c.$control.children(":not(input)"),d=0,e=f.length;d<e;d++)g=a(f[d]).detach(),d<b?c.$control_input.before(g):c.$control.append(g)}c.caretPos=b},lock:function(){this.close(),this.isLocked=!0,this.refreshState()},unlock:function(){this.isLocked=!1,this.refreshState()},disable:function(){var a=this;a.$input.prop("disabled",!0),a.$control_input.prop("disabled",!0).prop("tabindex",-1),a.isDisabled=!0,a.lock()},enable:function(){var a=this;a.$input.prop("disabled",!1),a.$control_input.prop("disabled",!1).prop("tabindex",a.tabIndex),a.isDisabled=!1,a.unlock()},destroy:function(){var b=this,c=b.eventNS,d=b.revertSettings;b.trigger("destroy"),b.off(),b.$wrapper.remove(),b.$dropdown.remove(),b.$input.html("").append(d.$children).removeAttr("tabindex").removeClass("selectized").attr({tabindex:d.tabindex}).show(),b.$control_input.removeData("grow"),b.$input.removeData("selectize"),a(window).off(c),a(document).off(c),a(document.body).off(c),delete b.$input[0].selectize},render:function(b,c){var d,e,f="",g=!1,h=this;return"option"!==b&&"item"!==b||(d=z(c[h.settings.valueField]),g=!!d),g&&(y(h.renderCache[b])||(h.renderCache[b]={}),h.renderCache[b].hasOwnProperty(d))?h.renderCache[b][d]:(f=a(h.settings.render[b].apply(this,[c,A])),"option"===b||"option_create"===b?f.attr("data-selectable",""):"optgroup"===b&&(e=c[h.settings.optgroupValueField]||"",f.attr("data-group",e)),"option"!==b&&"item"!==b||f.attr("data-value",d||""),g&&(h.renderCache[b][d]=f[0]),f[0])},clearCache:function(a){var b=this;"undefined"==typeof a?b.renderCache={}:delete b.renderCache[a]},canCreate:function(a){var b=this;if(!b.settings.create)return!1;var c=b.settings.createFilter;return a.length&&("function"!=typeof c||c.apply(b,[a]))&&("string"!=typeof c||new RegExp(c).test(a))&&(!(c instanceof RegExp)||c.test(a))}}),L.count=0,L.defaults={options:[],optgroups:[],plugins:[],delimiter:",",splitOn:null,persist:!0,diacritics:!0,create:!1,createOnBlur:!1,createFilter:null,highlight:!0,openOnFocus:!0,maxOptions:1e3,maxItems:null,hideSelected:null,addPrecedence:!1,selectOnTab:!1,preload:!1,allowEmptyOption:!1,closeAfterSelect:!1,scrollDuration:60,loadThrottle:300,loadingClass:"loading",dataAttr:"data-data",optgroupField:"optgroup",valueField:"value",labelField:"text",optgroupLabelField:"label",optgroupValueField:"value",lockOptgroupOrder:!1,sortField:"$order",searchField:["text"],searchConjunction:"and",mode:null,wrapperClass:"selectize-control",inputClass:"selectize-input",dropdownClass:"selectize-dropdown",dropdownContentClass:"selectize-dropdown-content",dropdownParent:null,copyClassesToDropdown:!0,render:{}},a.fn.selectize=function(b){var c=a.fn.selectize.defaults,d=a.extend({},c,b),e=d.dataAttr,f=d.labelField,g=d.valueField,h=d.optgroupField,i=d.optgroupLabelField,j=d.optgroupValueField,k=function(b,c){var h,i,j,k,l=b.attr(e);if(l)for(c.options=JSON.parse(l),h=0,i=c.options.length;h<i;h++)c.items.push(c.options[h][g]);else{var m=a.trim(b.val()||"");if(!d.allowEmptyOption&&!m.length)return;for(j=m.split(d.delimiter),h=0,i=j.length;h<i;h++)k={},k[f]=j[h],k[g]=j[h],c.options.push(k);c.items=j}},l=function(b,c){var k,l,m,n,o=c.options,p={},q=function(a){var b=e&&a.attr(e);return"string"==typeof b&&b.length?JSON.parse(b):null},r=function(b,e){b=a(b);var i=z(b.val());if(i||d.allowEmptyOption)if(p.hasOwnProperty(i)){if(e){var j=p[i][h];j?a.isArray(j)?j.push(e):p[i][h]=[j,e]:p[i][h]=e}}else{var k=q(b)||{};k[f]=k[f]||b.text(),k[g]=k[g]||i,k[h]=k[h]||e,p[i]=k,o.push(k),b.is(":selected")&&c.items.push(i)}},s=function(b){var d,e,f,g,h;for(b=a(b),f=b.attr("label"),f&&(g=q(b)||{},g[i]=f,g[j]=f,c.optgroups.push(g)),h=a("option",b),d=0,e=h.length;d<e;d++)r(h[d],f)};for(c.maxItems=b.attr("multiple")?null:1,n=b.children(),k=0,l=n.length;k<l;k++)m=n[k].tagName.toLowerCase(),"optgroup"===m?s(n[k]):"option"===m&&r(n[k])};return this.each(function(){if(!this.selectize){var e,f=a(this),g=this.tagName.toLowerCase(),h=f.attr("placeholder")||f.attr("data-placeholder");h||d.allowEmptyOption||(h=f.children('option[value=""]').text());var i={placeholder:h,options:[],optgroups:[],items:[]};"select"===g?l(f,i):k(f,i),e=new L(f,a.extend(!0,{},c,i,b))}})},a.fn.selectize.defaults=L.defaults,a.fn.selectize.support={validity:x},L.define("drag_drop",function(b){if(!a.fn.sortable)throw new Error('The "drag_drop" plugin requires jQuery UI "sortable".');if("multi"===this.settings.mode){var c=this;c.lock=function(){var a=c.lock;return function(){var b=c.$control.data("sortable");return b&&b.disable(),a.apply(c,arguments)}}(),c.unlock=function(){var a=c.unlock;return function(){var b=c.$control.data("sortable");return b&&b.enable(),a.apply(c,arguments)}}(),c.setup=function(){var b=c.setup;return function(){b.apply(this,arguments);var d=c.$control.sortable({items:"[data-value]",forcePlaceholderSize:!0,disabled:c.isLocked,start:function(a,b){b.placeholder.css("width",b.helper.css("width")),d.css({overflow:"visible"})},stop:function(){d.css({overflow:"hidden"});var b=c.$activeItems?c.$activeItems.slice():null,e=[];d.children("[data-value]").each(function(){e.push(a(this).attr("data-value"))}),c.setValue(e),c.setActiveItem(b)}})}}()}}),L.define("dropdown_header",function(b){var c=this;b=a.extend({title:"Untitled",headerClass:"selectize-dropdown-header",titleRowClass:"selectize-dropdown-header-title",labelClass:"selectize-dropdown-header-label",closeClass:"selectize-dropdown-header-close",html:function(a){return'<div class="'+a.headerClass+'"><div class="'+a.titleRowClass+'"><span class="'+a.labelClass+'">'+a.title+'</span><a href="javascript:void(0)" class="'+a.closeClass+'">&times;</a></div></div>'}},b),c.setup=function(){var d=c.setup;return function(){d.apply(c,arguments),c.$dropdown_header=a(b.html(b)),c.$dropdown.prepend(c.$dropdown_header)}}()}),L.define("optgroup_columns",function(b){var c=this;b=a.extend({equalizeWidth:!0,equalizeHeight:!0},b),this.getAdjacentOption=function(b,c){var d=b.closest("[data-group]").find("[data-selectable]"),e=d.index(b)+c;return e>=0&&e<d.length?d.eq(e):a()},this.onKeyDown=function(){var a=c.onKeyDown;return function(b){var d,e,f,g;return!this.isOpen||b.keyCode!==j&&b.keyCode!==m?a.apply(this,arguments):(c.ignoreHover=!0,g=this.$activeOption.closest("[data-group]"),d=g.find("[data-selectable]").index(this.$activeOption),g=b.keyCode===j?g.prev("[data-group]"):g.next("[data-group]"),f=g.find("[data-selectable]"),e=f.eq(Math.min(f.length-1,d)),void(e.length&&this.setActiveOption(e)))}}();var d=function(){var a,b=d.width,c=document;return"undefined"==typeof b&&(a=c.createElement("div"),a.innerHTML='<div style="width:50px;height:50px;position:absolute;left:-50px;top:-50px;overflow:auto;"><div style="width:1px;height:100px;"></div></div>',a=a.firstChild,c.body.appendChild(a),b=d.width=a.offsetWidth-a.clientWidth,c.body.removeChild(a)),b},e=function(){var e,f,g,h,i,j,k;if(k=a("[data-group]",c.$dropdown_content),f=k.length,f&&c.$dropdown_content.width()){if(b.equalizeHeight){for(g=0,e=0;e<f;e++)g=Math.max(g,k.eq(e).height());k.css({height:g})}b.equalizeWidth&&(j=c.$dropdown_content.innerWidth()-d(),h=Math.round(j/f),k.css({width:h}),f>1&&(i=j-h*(f-1),k.eq(f-1).css({width:i})))}};(b.equalizeHeight||b.equalizeWidth)&&(B.after(this,"positionDropdown",e),B.after(this,"refreshOptions",e))}),L.define("remove_button",function(b){b=a.extend({label:"&times;",title:"Remove",className:"remove",append:!0},b);var c=function(b,c){c.className="remove-single";var d=b,e='<a href="javascript:void(0)" class="'+c.className+'" tabindex="-1" title="'+A(c.title)+'">'+c.label+"</a>",f=function(a,b){return a+b};b.setup=function(){var g=d.setup;return function(){if(c.append){var h=a(d.$input.context).attr("id"),i=(a("#"+h),d.settings.render.item);d.settings.render.item=function(a){return f(i.apply(b,arguments),e)}}g.apply(b,arguments),b.$control.on("click","."+c.className,function(a){a.preventDefault(),d.isLocked||d.clear()})}}()},d=function(b,c){var d=b,e='<a href="javascript:void(0)" class="'+c.className+'" tabindex="-1" title="'+A(c.title)+'">'+c.label+"</a>",f=function(a,b){var c=a.search(/(<\/[^>]+>\s*)$/);return a.substring(0,c)+b+a.substring(c)};b.setup=function(){var g=d.setup;return function(){if(c.append){var h=d.settings.render.item;d.settings.render.item=function(a){return f(h.apply(b,arguments),e)}}g.apply(b,arguments),b.$control.on("click","."+c.className,function(b){if(b.preventDefault(),!d.isLocked){var c=a(b.currentTarget).parent();d.setActiveItem(c),d.deleteSelection()&&d.setCaret(d.items.length)}})}}()};return"single"===this.settings.mode?void c(this,b):void d(this,b)}),L.define("restore_on_backspace",function(a){var b=this;a.text=a.text||function(a){return a[this.settings.labelField]},this.onKeyDown=function(){var c=b.onKeyDown;return function(b){var d,e;return b.keyCode===p&&""===this.$control_input.val()&&!this.$activeItems.length&&(d=this.caretPos-1,d>=0&&d<this.items.length)?(e=this.options[this.items[d]],this.deleteSelection(b)&&(this.setTextboxValue(a.text.apply(this,[e])),this.refreshOptions(!0)),void b.preventDefault()):c.apply(this,arguments)}}()}),L});
1
+ /*! selectize.js - v0.12.6 | https://github.com/selectize/selectize.js | Apache License (v2) */
2
+ !function(a,b){"function"==typeof define&&define.amd?define("sifter",b):"object"==typeof exports?module.exports=b():a.Sifter=b()}(this,function(){var a=function(a,b){this.items=a,this.settings=b||{diacritics:!0}};a.prototype.tokenize=function(a){if(!(a=e(String(a||"").toLowerCase()))||!a.length)return[];var b,c,d,g,i=[],j=a.split(/ +/);for(b=0,c=j.length;b<c;b++){if(d=f(j[b]),this.settings.diacritics)for(g in h)h.hasOwnProperty(g)&&(d=d.replace(new RegExp(g,"g"),h[g]));i.push({string:j[b],regex:new RegExp(d,"i")})}return i},a.prototype.iterator=function(a,b){var c;c=g(a)?Array.prototype.forEach||function(a){for(var b=0,c=this.length;b<c;b++)a(this[b],b,this)}:function(a){for(var b in this)this.hasOwnProperty(b)&&a(this[b],b,this)},c.apply(a,[b])},a.prototype.getScoreFunction=function(a,b){var c,e,f,g,h;c=this,a=c.prepareSearch(a,b),f=a.tokens,e=a.options.fields,g=f.length,h=a.options.nesting;var i=function(a,b){var c,d;return a?(a=String(a||""),-1===(d=a.search(b.regex))?0:(c=b.string.length/a.length,0===d&&(c+=.5),c)):0},j=function(){var a=e.length;return a?1===a?function(a,b){return i(d(b,e[0],h),a)}:function(b,c){for(var f=0,g=0;f<a;f++)g+=i(d(c,e[f],h),b);return g/a}:function(){return 0}}();return g?1===g?function(a){return j(f[0],a)}:"and"===a.options.conjunction?function(a){for(var b,c=0,d=0;c<g;c++){if((b=j(f[c],a))<=0)return 0;d+=b}return d/g}:function(a){for(var b=0,c=0;b<g;b++)c+=j(f[b],a);return c/g}:function(){return 0}},a.prototype.getSortFunction=function(a,c){var e,f,g,h,i,j,k,l,m,n,o;if(g=this,a=g.prepareSearch(a,c),o=!a.query&&c.sort_empty||c.sort,m=function(a,b){return"$score"===a?b.score:d(g.items[b.id],a,c.nesting)},i=[],o)for(e=0,f=o.length;e<f;e++)(a.query||"$score"!==o[e].field)&&i.push(o[e]);if(a.query){for(n=!0,e=0,f=i.length;e<f;e++)if("$score"===i[e].field){n=!1;break}n&&i.unshift({field:"$score",direction:"desc"})}else for(e=0,f=i.length;e<f;e++)if("$score"===i[e].field){i.splice(e,1);break}for(l=[],e=0,f=i.length;e<f;e++)l.push("desc"===i[e].direction?-1:1);return j=i.length,j?1===j?(h=i[0].field,k=l[0],function(a,c){return k*b(m(h,a),m(h,c))}):function(a,c){var d,e,f;for(d=0;d<j;d++)if(f=i[d].field,e=l[d]*b(m(f,a),m(f,c)))return e;return 0}:null},a.prototype.prepareSearch=function(a,b){if("object"==typeof a)return a;b=c({},b);var d=b.fields,e=b.sort,f=b.sort_empty;return d&&!g(d)&&(b.fields=[d]),e&&!g(e)&&(b.sort=[e]),f&&!g(f)&&(b.sort_empty=[f]),{options:b,query:String(a||"").toLowerCase(),tokens:this.tokenize(a),total:0,items:[]}},a.prototype.search=function(a,b){var c,d,e,f,g=this;return d=this.prepareSearch(a,b),b=d.options,a=d.query,f=b.score||g.getScoreFunction(d),a.length?g.iterator(g.items,function(a,e){c=f(a),(!1===b.filter||c>0)&&d.items.push({score:c,id:e})}):g.iterator(g.items,function(a,b){d.items.push({score:1,id:b})}),e=g.getSortFunction(d,b),e&&d.items.sort(e),d.total=d.items.length,"number"==typeof b.limit&&(d.items=d.items.slice(0,b.limit)),d};var b=function(a,b){return"number"==typeof a&&"number"==typeof b?a>b?1:a<b?-1:0:(a=i(String(a||"")),b=i(String(b||"")),a>b?1:b>a?-1:0)},c=function(a,b){var c,d,e,f;for(c=1,d=arguments.length;c<d;c++)if(f=arguments[c])for(e in f)f.hasOwnProperty(e)&&(a[e]=f[e]);return a},d=function(a,b,c){if(a&&b){if(!c)return a[b];for(var d=b.split(".");d.length&&(a=a[d.shift()]););return a}},e=function(a){return(a+"").replace(/^\s+|\s+$|/g,"")},f=function(a){return(a+"").replace(/([.?*+^$[\]\\(){}|-])/g,"\\$1")},g=Array.isArray||"undefined"!=typeof $&&$.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)},h={a:"[aḀḁĂăÂâǍǎȺⱥȦȧẠạÄäÀàÁáĀāÃãÅåąĄÃąĄ]",b:"[b␢βΒB฿𐌁ᛒ]",c:"[cĆćĈĉČčĊċC̄c̄ÇçḈḉȻȼƇƈɕᴄCc]",d:"[dĎďḊḋḐḑḌḍḒḓḎḏĐđD̦d̦ƉɖƊɗƋƌᵭᶁᶑȡᴅDdð]",e:"[eÉéÈèÊêḘḙĚěĔĕẼẽḚḛẺẻĖėËëĒēȨȩĘęᶒɆɇȄȅẾếỀềỄễỂểḜḝḖḗḔḕȆȇẸẹỆệⱸᴇEeɘǝƏƐε]",f:"[fƑƒḞḟ]",g:"[gɢ₲ǤǥĜĝĞğĢģƓɠĠġ]",h:"[hĤĥĦħḨḩẖẖḤḥḢḣɦʰǶƕ]",i:"[iÍíÌìĬĭÎîǏǐÏïḮḯĨĩĮįĪīỈỉȈȉȊȋỊịḬḭƗɨɨ̆ᵻᶖİiIıɪIi]",j:"[jȷĴĵɈɉʝɟʲ]",k:"[kƘƙꝀꝁḰḱǨǩḲḳḴḵκϰ₭]",l:"[lŁłĽľĻļĹĺḶḷḸḹḼḽḺḻĿŀȽƚⱠⱡⱢɫɬᶅɭȴʟLl]",n:"[nŃńǸǹŇňÑñṄṅŅņṆṇṊṋṈṉN̈n̈ƝɲȠƞᵰᶇɳȵɴNnŊŋ]",o:"[oØøÖöÓóÒòÔôǑǒŐőŎŏȮȯỌọƟɵƠơỎỏŌōÕõǪǫȌȍՕօ]",p:"[pṔṕṖṗⱣᵽƤƥᵱ]",q:"[qꝖꝗʠɊɋꝘꝙq̃]",r:"[rŔŕɌɍŘřŖŗṘṙȐȑȒȓṚṛⱤɽ]",s:"[sŚśṠṡṢṣꞨꞩŜŝŠšŞşȘșS̈s̈]",t:"[tŤťṪṫŢţṬṭƮʈȚțṰṱṮṯƬƭ]",u:"[uŬŭɄʉỤụÜüÚúÙùÛûǓǔŰűŬŭƯưỦủŪūŨũŲųȔȕ∪]",v:"[vṼṽṾṿƲʋꝞꝟⱱʋ]",w:"[wẂẃẀẁŴŵẄẅẆẇẈẉ]",x:"[xẌẍẊẋχ]",y:"[yÝýỲỳŶŷŸÿỸỹẎẏỴỵɎɏƳƴ]",z:"[zŹźẐẑŽžŻżẒẓẔẕƵƶ]"},i=function(){var a,b,c,d,e="",f={};for(c in h)if(h.hasOwnProperty(c))for(d=h[c].substring(2,h[c].length-1),e+=d,a=0,b=d.length;a<b;a++)f[d.charAt(a)]=c;var g=new RegExp("["+e+"]","g");return function(a){return a.replace(g,function(a){return f[a]}).toLowerCase()}}();return a}),function(a,b){"function"==typeof define&&define.amd?define("microplugin",b):"object"==typeof exports?module.exports=b():a.MicroPlugin=b()}(this,function(){var a={};a.mixin=function(a){a.plugins={},a.prototype.initializePlugins=function(a){var c,d,e,f=this,g=[];if(f.plugins={names:[],settings:{},requested:{},loaded:{}},b.isArray(a))for(c=0,d=a.length;c<d;c++)"string"==typeof a[c]?g.push(a[c]):(f.plugins.settings[a[c].name]=a[c].options,g.push(a[c].name));else if(a)for(e in a)a.hasOwnProperty(e)&&(f.plugins.settings[e]=a[e],g.push(e));for(;g.length;)f.require(g.shift())},a.prototype.loadPlugin=function(b){var c=this,d=c.plugins,e=a.plugins[b];if(!a.plugins.hasOwnProperty(b))throw new Error('Unable to find "'+b+'" plugin');d.requested[b]=!0,d.loaded[b]=e.fn.apply(c,[c.plugins.settings[b]||{}]),d.names.push(b)},a.prototype.require=function(a){var b=this,c=b.plugins;if(!b.plugins.loaded.hasOwnProperty(a)){if(c.requested[a])throw new Error('Plugin has circular dependency ("'+a+'")');b.loadPlugin(a)}return c.loaded[a]},a.define=function(b,c){a.plugins[b]={name:b,fn:c}}};var b={isArray:Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)}};return a}),function(a,b){"function"==typeof define&&define.amd?define("selectize",["jquery","sifter","microplugin"],b):"object"==typeof exports?module.exports=b(require("jquery"),require("sifter"),require("microplugin")):a.Selectize=b(a.jQuery,a.Sifter,a.MicroPlugin)}(this,function(a,b,c){"use strict";var d=function(a,b){if("string"!=typeof b||b.length){var c="string"==typeof b?new RegExp(b,"i"):b,d=function(a){var b=0;if(3===a.nodeType){var e=a.data.search(c);if(e>=0&&a.data.length>0){var f=a.data.match(c),g=document.createElement("span");g.className="highlight";var h=a.splitText(e),i=(h.splitText(f[0].length),h.cloneNode(!0));g.appendChild(i),h.parentNode.replaceChild(g,h),b=1}}else if(1===a.nodeType&&a.childNodes&&!/(script|style)/i.test(a.tagName)&&("highlight"!==a.className||"SPAN"!==a.tagName))for(var j=0;j<a.childNodes.length;++j)j+=d(a.childNodes[j]);return b};return a.each(function(){d(this)})}};a.fn.removeHighlight=function(){return this.find("span.highlight").each(function(){this.parentNode.firstChild.nodeName;var a=this.parentNode;a.replaceChild(this.firstChild,this),a.normalize()}).end()};var e=function(){};e.prototype={on:function(a,b){this._events=this._events||{},this._events[a]=this._events[a]||[],this._events[a].push(b)},off:function(a,b){var c=arguments.length;return 0===c?delete this._events:1===c?delete this._events[a]:(this._events=this._events||{},void(a in this._events!=!1&&this._events[a].splice(this._events[a].indexOf(b),1)))},trigger:function(a){if(this._events=this._events||{},a in this._events!=!1)for(var b=0;b<this._events[a].length;b++)this._events[a][b].apply(this,Array.prototype.slice.call(arguments,1))}},e.mixin=function(a){for(var b=["on","off","trigger"],c=0;c<b.length;c++)a.prototype[b[c]]=e.prototype[b[c]]};var f=/Mac/.test(navigator.userAgent),g=f?91:17,h=f?18:17,i=!/android/i.test(window.navigator.userAgent)&&!!document.createElement("input").validity,j=function(a){return void 0!==a},k=function(a){return void 0===a||null===a?null:"boolean"==typeof a?a?"1":"0":a+""},l=function(a){return(a+"").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;")},m={};m.before=function(a,b,c){var d=a[b];a[b]=function(){return c.apply(a,arguments),d.apply(a,arguments)}},m.after=function(a,b,c){var d=a[b];a[b]=function(){var b=d.apply(a,arguments);return c.apply(a,arguments),b}};var n=function(a){var b=!1;return function(){b||(b=!0,a.apply(this,arguments))}},o=function(a,b){var c;return function(){var d=this,e=arguments;window.clearTimeout(c),c=window.setTimeout(function(){a.apply(d,e)},b)}},p=function(a,b,c){var d,e=a.trigger,f={};a.trigger=function(){var c=arguments[0];if(-1===b.indexOf(c))return e.apply(a,arguments);f[c]=arguments},c.apply(a,[]),a.trigger=e;for(d in f)f.hasOwnProperty(d)&&e.apply(a,f[d])},q=function(a,b,c,d){a.on(b,c,function(b){for(var c=b.target;c&&c.parentNode!==a[0];)c=c.parentNode;return b.currentTarget=c,d.apply(this,[b])})},r=function(a){var b={};if("selectionStart"in a)b.start=a.selectionStart,b.length=a.selectionEnd-b.start;else if(document.selection){a.focus();var c=document.selection.createRange(),d=document.selection.createRange().text.length;c.moveStart("character",-a.value.length),b.start=c.text.length-d,b.length=d}return b},s=function(a,b,c){var d,e,f={};if(c)for(d=0,e=c.length;d<e;d++)f[c[d]]=a.css(c[d]);else f=a.css();b.css(f)},t=function(b,c){return b?(w.$testInput||(w.$testInput=a("<span />").css({position:"absolute",top:-99999,left:-99999,width:"auto",padding:0,whiteSpace:"pre"}).appendTo("body")),w.$testInput.text(b),s(c,w.$testInput,["letterSpacing","fontSize","fontFamily","fontWeight","textTransform"]),w.$testInput.width()):0},u=function(a){var b=null,c=function(c,d){var e,f,g,h,i,j,k,l;c=c||window.event||{},d=d||{},c.metaKey||c.altKey||(d.force||!1!==a.data("grow"))&&(e=a.val(),c.type&&"keydown"===c.type.toLowerCase()&&(f=c.keyCode,g=f>=48&&f<=57||f>=65&&f<=90||f>=96&&f<=111||f>=186&&f<=222||32===f,46===f||8===f?(l=r(a[0]),l.length?e=e.substring(0,l.start)+e.substring(l.start+l.length):8===f&&l.start?e=e.substring(0,l.start-1)+e.substring(l.start+1):46===f&&void 0!==l.start&&(e=e.substring(0,l.start)+e.substring(l.start+1))):g&&(j=c.shiftKey,k=String.fromCharCode(c.keyCode),k=j?k.toUpperCase():k.toLowerCase(),e+=k)),h=a.attr("placeholder"),!e&&h&&(e=h),(i=t(e,a)+4)!==b&&(b=i,a.width(i),a.triggerHandler("resize")))};a.on("keydown keyup update blur",c),c()},v=function(a){var b=document.createElement("div");return b.appendChild(a.cloneNode(!0)),b.innerHTML},w=function(c,d){var e,f,g,h,i=this;h=c[0],h.selectize=i;var j=window.getComputedStyle&&window.getComputedStyle(h,null);if(g=j?j.getPropertyValue("direction"):h.currentStyle&&h.currentStyle.direction,g=g||c.parents("[dir]:first").attr("dir")||"",a.extend(i,{order:0,settings:d,$input:c,tabIndex:c.attr("tabindex")||"",tagType:"select"===h.tagName.toLowerCase()?1:2,rtl:/rtl/i.test(g),eventNS:".selectize"+ ++w.count,highlightedValue:null,isBlurring:!1,isOpen:!1,isDisabled:!1,isRequired:c.is("[required]"),isInvalid:!1,isLocked:!1,isFocused:!1,isInputHidden:!1,isSetup:!1,isShiftDown:!1,isCmdDown:!1,isCtrlDown:!1,ignoreFocus:!1,ignoreBlur:!1,ignoreHover:!1,hasOptions:!1,currentResults:null,lastValue:"",caretPos:0,loading:0,loadedSearches:{},$activeOption:null,$activeItems:[],optgroups:{},options:{},userOptions:{},items:[],renderCache:{},onSearchChange:null===d.loadThrottle?i.onSearchChange:o(i.onSearchChange,d.loadThrottle)}),i.sifter=new b(this.options,{diacritics:d.diacritics}),i.settings.options){for(e=0,f=i.settings.options.length;e<f;e++)i.registerOption(i.settings.options[e]);delete i.settings.options}if(i.settings.optgroups){for(e=0,f=i.settings.optgroups.length;e<f;e++)i.registerOptionGroup(i.settings.optgroups[e]);delete i.settings.optgroups}i.settings.mode=i.settings.mode||(1===i.settings.maxItems?"single":"multi"),"boolean"!=typeof i.settings.hideSelected&&(i.settings.hideSelected="multi"===i.settings.mode),i.initializePlugins(i.settings.plugins),i.setupCallbacks(),i.setupTemplates(),i.setup()};return e.mixin(w),void 0!==c?c.mixin(w):function(a,b){b||(b={});console.error("Selectize: "+a),b.explanation&&(console.group&&console.group(),console.error(b.explanation),console.group&&console.groupEnd())}("Dependency MicroPlugin is missing",{explanation:'Make sure you either: (1) are using the "standalone" version of Selectize, or (2) require MicroPlugin before you load Selectize.'}),a.extend(w.prototype,{setup:function(){var b,c,d,e,j,k,l,m,n,o,p=this,r=p.settings,s=p.eventNS,t=a(window),v=a(document),w=p.$input;if(l=p.settings.mode,m=w.attr("class")||"",b=a("<div>").addClass(r.wrapperClass).addClass(m).addClass(l),c=a("<div>").addClass(r.inputClass).addClass("items").appendTo(b),d=a('<input type="text" autocomplete="off" />').appendTo(c).attr("tabindex",w.is(":disabled")?"-1":p.tabIndex),k=a(r.dropdownParent||b),e=a("<div>").addClass(r.dropdownClass).addClass(l).hide().appendTo(k),j=a("<div>").addClass(r.dropdownContentClass).appendTo(e),(o=w.attr("id"))&&(d.attr("id",o+"-selectized"),a("label[for='"+o+"']").attr("for",o+"-selectized")),p.settings.copyClassesToDropdown&&e.addClass(m),b.css({width:w[0].style.width}),p.plugins.names.length&&(n="plugin-"+p.plugins.names.join(" plugin-"),b.addClass(n),e.addClass(n)),(null===r.maxItems||r.maxItems>1)&&1===p.tagType&&w.attr("multiple","multiple"),p.settings.placeholder&&d.attr("placeholder",r.placeholder),!p.settings.splitOn&&p.settings.delimiter){var x=p.settings.delimiter.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&");p.settings.splitOn=new RegExp("\\s*"+x+"+\\s*")}w.attr("autocorrect")&&d.attr("autocorrect",w.attr("autocorrect")),w.attr("autocapitalize")&&d.attr("autocapitalize",w.attr("autocapitalize")),d[0].type=w[0].type,p.$wrapper=b,p.$control=c,p.$control_input=d,p.$dropdown=e,p.$dropdown_content=j,e.on("mouseenter mousedown click","[data-disabled]>[data-selectable]",function(a){a.stopImmediatePropagation()}),e.on("mouseenter","[data-selectable]",function(){return p.onOptionHover.apply(p,arguments)}),e.on("mousedown click","[data-selectable]",function(){return p.onOptionSelect.apply(p,arguments)}),q(c,"mousedown","*:not(input)",function(){return p.onItemSelect.apply(p,arguments)}),u(d),c.on({mousedown:function(){return p.onMouseDown.apply(p,arguments)},click:function(){return p.onClick.apply(p,arguments)}}),d.on({mousedown:function(a){a.stopPropagation()},keydown:function(){return p.onKeyDown.apply(p,arguments)},keyup:function(){return p.onKeyUp.apply(p,arguments)},keypress:function(){return p.onKeyPress.apply(p,arguments)},resize:function(){p.positionDropdown.apply(p,[])},blur:function(){return p.onBlur.apply(p,arguments)},focus:function(){return p.ignoreBlur=!1,p.onFocus.apply(p,arguments)},paste:function(){return p.onPaste.apply(p,arguments)}}),v.on("keydown"+s,function(a){p.isCmdDown=a[f?"metaKey":"ctrlKey"],p.isCtrlDown=a[f?"altKey":"ctrlKey"],p.isShiftDown=a.shiftKey}),v.on("keyup"+s,function(a){a.keyCode===h&&(p.isCtrlDown=!1),16===a.keyCode&&(p.isShiftDown=!1),a.keyCode===g&&(p.isCmdDown=!1)}),v.on("mousedown"+s,function(a){if(p.isFocused){if(a.target===p.$dropdown[0]||a.target.parentNode===p.$dropdown[0])return!1;p.$control.has(a.target).length||a.target===p.$control[0]||p.blur(a.target)}}),t.on(["scroll"+s,"resize"+s].join(" "),function(){p.isOpen&&p.positionDropdown.apply(p,arguments)}),t.on("mousemove"+s,function(){p.ignoreHover=!1}),this.revertSettings={$children:w.children().detach(),tabindex:w.attr("tabindex")},w.attr("tabindex",-1).hide().after(p.$wrapper),a.isArray(r.items)&&(p.setValue(r.items),delete r.items),i&&w.on("invalid"+s,function(a){a.preventDefault(),p.isInvalid=!0,p.refreshState()}),p.updateOriginalInput(),p.refreshItems(),p.refreshState(),p.updatePlaceholder(),p.isSetup=!0,w.is(":disabled")&&p.disable(),p.on("change",this.onChange),w.data("selectize",p),w.addClass("selectized"),p.trigger("initialize"),!0===r.preload&&p.onSearchChange("")},setupTemplates:function(){var b=this,c=b.settings.labelField,d=b.settings.optgroupLabelField,e={optgroup:function(a){return'<div class="optgroup">'+a.html+"</div>"},optgroup_header:function(a,b){return'<div class="optgroup-header">'+b(a[d])+"</div>"},option:function(a,b){return'<div class="option">'+b(a[c])+"</div>"},item:function(a,b){return'<div class="item">'+b(a[c])+"</div>"},option_create:function(a,b){return'<div class="create">Add <strong>'+b(a.input)+"</strong>&hellip;</div>"}};b.settings.render=a.extend({},e,b.settings.render)},setupCallbacks:function(){var a,b,c={initialize:"onInitialize",change:"onChange",item_add:"onItemAdd",item_remove:"onItemRemove",clear:"onClear",option_add:"onOptionAdd",option_remove:"onOptionRemove",option_clear:"onOptionClear",optgroup_add:"onOptionGroupAdd",optgroup_remove:"onOptionGroupRemove",optgroup_clear:"onOptionGroupClear",dropdown_open:"onDropdownOpen",dropdown_close:"onDropdownClose",type:"onType",load:"onLoad",focus:"onFocus",blur:"onBlur"};for(a in c)c.hasOwnProperty(a)&&(b=this.settings[c[a]])&&this.on(a,b)},onClick:function(a){var b=this;b.isFocused&&b.isOpen||(b.focus(),a.preventDefault())},onMouseDown:function(b){var c=this,d=b.isDefaultPrevented();a(b.target);if(c.isFocused){if(b.target!==c.$control_input[0])return"single"===c.settings.mode?c.isOpen?c.close():c.open():d||c.setActiveItem(null),!1}else d||window.setTimeout(function(){c.focus()},0)},onChange:function(){this.$input.trigger("change")},onPaste:function(b){var c=this;if(c.isFull()||c.isInputHidden||c.isLocked)return void b.preventDefault();c.settings.splitOn&&setTimeout(function(){var b=c.$control_input.val();if(b.match(c.settings.splitOn))for(var d=a.trim(b).split(c.settings.splitOn),e=0,f=d.length;e<f;e++)c.createItem(d[e])},0)},onKeyPress:function(a){if(this.isLocked)return a&&a.preventDefault();var b=String.fromCharCode(a.keyCode||a.which);return this.settings.create&&"multi"===this.settings.mode&&b===this.settings.delimiter?(this.createItem(),a.preventDefault(),!1):void 0},onKeyDown:function(a){var b=(a.target,this.$control_input[0],this);if(b.isLocked)return void(9!==a.keyCode&&a.preventDefault());switch(a.keyCode){case 65:if(b.isCmdDown)return void b.selectAll();break;case 27:return void(b.isOpen&&(a.preventDefault(),a.stopPropagation(),b.close()));case 78:if(!a.ctrlKey||a.altKey)break;case 40:if(!b.isOpen&&b.hasOptions)b.open();else if(b.$activeOption){b.ignoreHover=!0;var c=b.getAdjacentOption(b.$activeOption,1);c.length&&b.setActiveOption(c,!0,!0)}return void a.preventDefault();case 80:if(!a.ctrlKey||a.altKey)break;case 38:if(b.$activeOption){b.ignoreHover=!0;var d=b.getAdjacentOption(b.$activeOption,-1);d.length&&b.setActiveOption(d,!0,!0)}return void a.preventDefault();case 13:return void(b.isOpen&&b.$activeOption&&(b.onOptionSelect({currentTarget:b.$activeOption}),a.preventDefault()));case 37:return void b.advanceSelection(-1,a);case 39:return void b.advanceSelection(1,a);case 9:return b.settings.selectOnTab&&b.isOpen&&b.$activeOption&&(b.onOptionSelect({currentTarget:b.$activeOption}),b.isFull()||a.preventDefault()),void(b.settings.create&&b.createItem()&&a.preventDefault());case 8:case 46:return void b.deleteSelection(a)}return!b.isFull()&&!b.isInputHidden||(f?a.metaKey:a.ctrlKey)?void 0:void a.preventDefault()},onKeyUp:function(a){var b=this;if(b.isLocked)return a&&a.preventDefault();var c=b.$control_input.val()||"";b.lastValue!==c&&(b.lastValue=c,b.onSearchChange(c),b.refreshOptions(),b.trigger("type",c))},onSearchChange:function(a){var b=this,c=b.settings.load;c&&(b.loadedSearches.hasOwnProperty(a)||(b.loadedSearches[a]=!0,b.load(function(d){c.apply(b,[a,d])})))},onFocus:function(a){var b=this,c=b.isFocused;if(b.isDisabled)return b.blur(),a&&a.preventDefault(),!1;b.ignoreFocus||(b.isFocused=!0,"focus"===b.settings.preload&&b.onSearchChange(""),c||b.trigger("focus"),b.$activeItems.length||(b.showInput(),b.setActiveItem(null),b.refreshOptions(!!b.settings.openOnFocus)),b.refreshState())},onBlur:function(a,b){var c=this;if(c.isFocused&&(c.isFocused=!1,!c.ignoreFocus)){if(!c.ignoreBlur&&document.activeElement===c.$dropdown_content[0])return c.ignoreBlur=!0,void c.onFocus(a);var d=function(){c.close(),c.setTextboxValue(""),c.setActiveItem(null),c.setActiveOption(null),c.setCaret(c.items.length),c.refreshState(),b&&b.focus&&b.focus(),c.isBlurring=!1,c.ignoreFocus=!1,c.trigger("blur")};c.isBlurring=!0,c.ignoreFocus=!0,c.settings.create&&c.settings.createOnBlur?c.createItem(null,!1,d):d()}},onOptionHover:function(a){this.ignoreHover||this.setActiveOption(a.currentTarget,!1)},onOptionSelect:function(b){var c,d,e=this;b.preventDefault&&(b.preventDefault(),b.stopPropagation()),d=a(b.currentTarget),d.hasClass("create")?e.createItem(null,function(){e.settings.closeAfterSelect&&e.close()}):void 0!==(c=d.attr("data-value"))&&(e.lastQuery=null,e.setTextboxValue(""),e.addItem(c),e.settings.closeAfterSelect?e.close():!e.settings.hideSelected&&b.type&&/mouse/.test(b.type)&&e.setActiveOption(e.getOption(c)))},onItemSelect:function(a){var b=this;b.isLocked||"multi"===b.settings.mode&&(a.preventDefault(),b.setActiveItem(a.currentTarget,a))},load:function(a){var b=this,c=b.$wrapper.addClass(b.settings.loadingClass);b.loading++,a.apply(b,[function(a){b.loading=Math.max(b.loading-1,0),a&&a.length&&(b.addOption(a),b.refreshOptions(b.isFocused&&!b.isInputHidden)),b.loading||c.removeClass(b.settings.loadingClass),b.trigger("load",a)}])},setTextboxValue:function(a){var b=this.$control_input;b.val()!==a&&(b.val(a).triggerHandler("update"),this.lastValue=a)},getValue:function(){return 1===this.tagType&&this.$input.attr("multiple")?this.items:this.items.join(this.settings.delimiter)},setValue:function(a,b){p(this,b?[]:["change"],function(){this.clear(b),this.addItems(a,b)})},setActiveItem:function(b,c){var d,e,f,g,h,i,j,k,l=this;if("single"!==l.settings.mode){if(b=a(b),!b.length)return a(l.$activeItems).removeClass("active"),l.$activeItems=[],void(l.isFocused&&l.showInput());if("mousedown"===(d=c&&c.type.toLowerCase())&&l.isShiftDown&&l.$activeItems.length){for(k=l.$control.children(".active:last"),g=Array.prototype.indexOf.apply(l.$control[0].childNodes,[k[0]]),h=Array.prototype.indexOf.apply(l.$control[0].childNodes,[b[0]]),g>h&&(j=g,g=h,h=j),e=g;e<=h;e++)i=l.$control[0].childNodes[e],-1===l.$activeItems.indexOf(i)&&(a(i).addClass("active"),l.$activeItems.push(i));c.preventDefault()}else"mousedown"===d&&l.isCtrlDown||"keydown"===d&&this.isShiftDown?b.hasClass("active")?(f=l.$activeItems.indexOf(b[0]),l.$activeItems.splice(f,1),b.removeClass("active")):l.$activeItems.push(b.addClass("active")[0]):(a(l.$activeItems).removeClass("active"),l.$activeItems=[b.addClass("active")[0]]);l.hideInput(),this.isFocused||l.focus()}},setActiveOption:function(b,c,d){var e,f,g,h,i,k=this;k.$activeOption&&k.$activeOption.removeClass("active"),k.$activeOption=null,b=a(b),b.length&&(k.$activeOption=b.addClass("active"),!c&&j(c)||(e=k.$dropdown_content.height(),f=k.$activeOption.outerHeight(!0),c=k.$dropdown_content.scrollTop()||0,g=k.$activeOption.offset().top-k.$dropdown_content.offset().top+c,h=g,i=g-e+f,g+f>e+c?k.$dropdown_content.stop().animate({scrollTop:i},d?k.settings.scrollDuration:0):g<c&&k.$dropdown_content.stop().animate({scrollTop:h},d?k.settings.scrollDuration:0)))},selectAll:function(){var a=this;"single"!==a.settings.mode&&(a.$activeItems=Array.prototype.slice.apply(a.$control.children(":not(input)").addClass("active")),a.$activeItems.length&&(a.hideInput(),a.close()),a.focus())},hideInput:function(){var a=this;a.setTextboxValue(""),a.$control_input.css({opacity:0,position:"absolute",left:a.rtl?1e4:-1e4}),a.isInputHidden=!0},showInput:function(){this.$control_input.css({opacity:1,position:"relative",left:0}),this.isInputHidden=!1},focus:function(){var a=this;a.isDisabled||(a.ignoreFocus=!0,a.$control_input[0].focus(),window.setTimeout(function(){a.ignoreFocus=!1,a.onFocus()},0))},blur:function(a){this.$control_input[0].blur(),this.onBlur(null,a)},getScoreFunction:function(a){return this.sifter.getScoreFunction(a,this.getSearchOptions())},getSearchOptions:function(){var a=this.settings,b=a.sortField;return"string"==typeof b&&(b=[{field:b}]),{fields:a.searchField,conjunction:a.searchConjunction,sort:b,nesting:a.nesting}},search:function(b){var c,d,e,f=this,g=f.settings,h=this.getSearchOptions();if(g.score&&"function"!=typeof(e=f.settings.score.apply(this,[b])))throw new Error('Selectize "score" setting must be a function that returns a function');if(b!==f.lastQuery?(f.lastQuery=b,d=f.sifter.search(b,a.extend(h,{score:e})),f.currentResults=d):d=a.extend(!0,{},f.currentResults),g.hideSelected)for(c=d.items.length-1;c>=0;c--)-1!==f.items.indexOf(k(d.items[c].id))&&d.items.splice(c,1);return d},refreshOptions:function(b){var c,e,f,g,h,i,j,l,m,n,o,p,q,r,s,t;void 0===b&&(b=!0);var u=this,w=a.trim(u.$control_input.val()),x=u.search(w),y=u.$dropdown_content,z=u.$activeOption&&k(u.$activeOption.attr("data-value"));for(g=x.items.length,"number"==typeof u.settings.maxOptions&&(g=Math.min(g,u.settings.maxOptions)),h={},i=[],c=0;c<g;c++)for(j=u.options[x.items[c].id],l=u.render("option",j),m=j[u.settings.optgroupField]||"",n=a.isArray(m)?m:[m],e=0,f=n&&n.length;e<f;e++)m=n[e],u.optgroups.hasOwnProperty(m)||(m=""),h.hasOwnProperty(m)||(h[m]=document.createDocumentFragment(),i.push(m)),h[m].appendChild(l);for(this.settings.lockOptgroupOrder&&i.sort(function(a,b){return(u.optgroups[a].$order||0)-(u.optgroups[b].$order||0)}),o=document.createDocumentFragment(),c=0,g=i.length;c<g;c++)m=i[c],u.optgroups.hasOwnProperty(m)&&h[m].childNodes.length?(p=document.createDocumentFragment(),p.appendChild(u.render("optgroup_header",u.optgroups[m])),p.appendChild(h[m]),o.appendChild(u.render("optgroup",a.extend({},u.optgroups[m],{html:v(p),dom:p})))):o.appendChild(h[m]);if(y.html(o),u.settings.highlight&&(y.removeHighlight(),x.query.length&&x.tokens.length))for(c=0,g=x.tokens.length;c<g;c++)d(y,x.tokens[c].regex);if(!u.settings.hideSelected)for(c=0,g=u.items.length;c<g;c++)u.getOption(u.items[c]).addClass("selected");q=u.canCreate(w),q&&(y.prepend(u.render("option_create",{input:w})),t=a(y[0].childNodes[0])),u.hasOptions=x.items.length>0||q,u.hasOptions?(x.items.length>0?(s=z&&u.getOption(z),s&&s.length?r=s:"single"===u.settings.mode&&u.items.length&&(r=u.getOption(u.items[0])),r&&r.length||(r=t&&!u.settings.addPrecedence?u.getAdjacentOption(t,1):y.find("[data-selectable]:first"))):r=t,u.setActiveOption(r),b&&!u.isOpen&&u.open()):(u.setActiveOption(null),b&&u.isOpen&&u.close())},addOption:function(b){var c,d,e,f=this;if(a.isArray(b))for(c=0,d=b.length;c<d;c++)f.addOption(b[c]);else(e=f.registerOption(b))&&(f.userOptions[e]=!0,f.lastQuery=null,f.trigger("option_add",e,b))},registerOption:function(a){var b=k(a[this.settings.valueField]);return void 0!==b&&null!==b&&!this.options.hasOwnProperty(b)&&(a.$order=a.$order||++this.order,this.options[b]=a,b)},registerOptionGroup:function(a){var b=k(a[this.settings.optgroupValueField]);return!!b&&(a.$order=a.$order||++this.order,this.optgroups[b]=a,b)},addOptionGroup:function(a,b){b[this.settings.optgroupValueField]=a,(a=this.registerOptionGroup(b))&&this.trigger("optgroup_add",a,b)},removeOptionGroup:function(a){this.optgroups.hasOwnProperty(a)&&(delete this.optgroups[a],this.renderCache={},this.trigger("optgroup_remove",a))},clearOptionGroups:function(){this.optgroups={},this.renderCache={},this.trigger("optgroup_clear")},updateOption:function(b,c){var d,e,f,g,h,i,j,l=this;if(b=k(b),f=k(c[l.settings.valueField]),null!==b&&l.options.hasOwnProperty(b)){if("string"!=typeof f)throw new Error("Value must be set in option data");j=l.options[b].$order,f!==b&&(delete l.options[b],-1!==(g=l.items.indexOf(b))&&l.items.splice(g,1,f)),c.$order=c.$order||j,l.options[f]=c,h=l.renderCache.item,i=l.renderCache.option,h&&(delete h[b],delete h[f]),i&&(delete i[b],delete i[f]),-1!==l.items.indexOf(f)&&(d=l.getItem(b),e=a(l.render("item",c)),d.hasClass("active")&&e.addClass("active"),d.replaceWith(e)),l.lastQuery=null,l.isOpen&&l.refreshOptions(!1)}},removeOption:function(a,b){var c=this;a=k(a);var d=c.renderCache.item,e=c.renderCache.option;d&&delete d[a],e&&delete e[a],delete c.userOptions[a],delete c.options[a],c.lastQuery=null,c.trigger("option_remove",a),c.removeItem(a,b)},clearOptions:function(){var b=this;b.loadedSearches={},b.userOptions={},b.renderCache={};var c=b.options;a.each(b.options,function(a,d){-1==b.items.indexOf(a)&&delete c[a]}),b.options=b.sifter.items=c,b.lastQuery=null,b.trigger("option_clear")},getOption:function(a){return this.getElementWithValue(a,this.$dropdown_content.find("[data-selectable]"))},getAdjacentOption:function(b,c){var d=this.$dropdown.find("[data-selectable]"),e=d.index(b)+c;return e>=0&&e<d.length?d.eq(e):a()},getElementWithValue:function(b,c){if(void 0!==(b=k(b))&&null!==b)for(var d=0,e=c.length;d<e;d++)if(c[d].getAttribute("data-value")===b)return a(c[d]);return a()},getItem:function(a){return this.getElementWithValue(a,this.$control.children())},addItems:function(b,c){this.buffer=document.createDocumentFragment();for(var d=this.$control[0].childNodes,e=0;e<d.length;e++)this.buffer.appendChild(d[e]);for(var f=a.isArray(b)?b:[b],e=0,g=f.length;e<g;e++)this.isPending=e<g-1,this.addItem(f[e],c);var h=this.$control[0];h.insertBefore(this.buffer,h.firstChild),this.buffer=null},addItem:function(b,c){p(this,c?[]:["change"],function(){var d,e,f,g,h,i=this,j=i.settings.mode;if(b=k(b),-1!==i.items.indexOf(b))return void("single"===j&&i.close());i.options.hasOwnProperty(b)&&("single"===j&&i.clear(c),"multi"===j&&i.isFull()||(d=a(i.render("item",i.options[b])),h=i.isFull(),i.items.splice(i.caretPos,0,b),i.insertAtCaret(d),(!i.isPending||!h&&i.isFull())&&i.refreshState(),i.isSetup&&(f=i.$dropdown_content.find("[data-selectable]"),i.isPending||(e=i.getOption(b),g=i.getAdjacentOption(e,1).attr("data-value"),i.refreshOptions(i.isFocused&&"single"!==j),g&&i.setActiveOption(i.getOption(g))),!f.length||i.isFull()?i.close():i.isPending||i.positionDropdown(),i.updatePlaceholder(),i.trigger("item_add",b,d),i.isPending||i.updateOriginalInput({silent:c}))))})},removeItem:function(b,c){var d,e,f,g=this;d=b instanceof a?b:g.getItem(b),b=k(d.attr("data-value")),-1!==(e=g.items.indexOf(b))&&(d.remove(),d.hasClass("active")&&(f=g.$activeItems.indexOf(d[0]),g.$activeItems.splice(f,1)),g.items.splice(e,1),g.lastQuery=null,!g.settings.persist&&g.userOptions.hasOwnProperty(b)&&g.removeOption(b,c),e<g.caretPos&&g.setCaret(g.caretPos-1),g.refreshState(),g.updatePlaceholder(),g.updateOriginalInput({silent:c}),g.positionDropdown(),g.trigger("item_remove",b,d))},createItem:function(b,c){var d=this,e=d.caretPos;b=b||a.trim(d.$control_input.val()||"");var f=arguments[arguments.length-1];if("function"!=typeof f&&(f=function(){}),"boolean"!=typeof c&&(c=!0),!d.canCreate(b))return f(),!1;d.lock();var g="function"==typeof d.settings.create?this.settings.create:function(a){var b={};return b[d.settings.labelField]=a,b[d.settings.valueField]=a,b},h=n(function(a){if(d.unlock(),!a||"object"!=typeof a)return f();var b=k(a[d.settings.valueField]);if("string"!=typeof b)return f();d.setTextboxValue(""),d.addOption(a),d.setCaret(e),d.addItem(b),d.refreshOptions(c&&"single"!==d.settings.mode),f(a)}),i=g.apply(this,[b,h]);return void 0!==i&&h(i),!0},refreshItems:function(){this.lastQuery=null,this.isSetup&&this.addItem(this.items),this.refreshState(),this.updateOriginalInput()},refreshState:function(){this.refreshValidityState(),this.refreshClasses()},refreshValidityState:function(){if(!this.isRequired)return!1;var a=!this.items.length;this.isInvalid=a,this.$control_input.prop("required",a),this.$input.prop("required",!a)},refreshClasses:function(){var b=this,c=b.isFull(),d=b.isLocked;b.$wrapper.toggleClass("rtl",b.rtl),b.$control.toggleClass("focus",b.isFocused).toggleClass("disabled",b.isDisabled).toggleClass("required",b.isRequired).toggleClass("invalid",b.isInvalid).toggleClass("locked",d).toggleClass("full",c).toggleClass("not-full",!c).toggleClass("input-active",b.isFocused&&!b.isInputHidden).toggleClass("dropdown-active",b.isOpen).toggleClass("has-options",!a.isEmptyObject(b.options)).toggleClass("has-items",b.items.length>0),b.$control_input.data("grow",!c&&!d)},isFull:function(){
3
+ return null!==this.settings.maxItems&&this.items.length>=this.settings.maxItems},updateOriginalInput:function(a){var b,c,d,e,f=this;if(a=a||{},1===f.tagType){for(d=[],b=0,c=f.items.length;b<c;b++)e=f.options[f.items[b]][f.settings.labelField]||"",d.push('<option value="'+l(f.items[b])+'" selected="selected">'+l(e)+"</option>");d.length||this.$input.attr("multiple")||d.push('<option value="" selected="selected"></option>'),f.$input.html(d.join(""))}else f.$input.val(f.getValue()),f.$input.attr("value",f.$input.val());f.isSetup&&(a.silent||f.trigger("change",f.$input.val()))},updatePlaceholder:function(){if(this.settings.placeholder){var a=this.$control_input;this.items.length?a.removeAttr("placeholder"):a.attr("placeholder",this.settings.placeholder),a.triggerHandler("update",{force:!0})}},open:function(){var a=this;a.isLocked||a.isOpen||"multi"===a.settings.mode&&a.isFull()||(a.focus(),a.isOpen=!0,a.refreshState(),a.$dropdown.css({visibility:"hidden",display:"block"}),a.positionDropdown(),a.$dropdown.css({visibility:"visible"}),a.trigger("dropdown_open",a.$dropdown))},close:function(){var a=this,b=a.isOpen;"single"===a.settings.mode&&a.items.length&&(a.hideInput(),a.isBlurring||a.$control_input.blur()),a.isOpen=!1,a.$dropdown.hide(),a.setActiveOption(null),a.refreshState(),b&&a.trigger("dropdown_close",a.$dropdown)},positionDropdown:function(){var a=this.$control,b="body"===this.settings.dropdownParent?a.offset():a.position();b.top+=a.outerHeight(!0),this.$dropdown.css({width:a[0].getBoundingClientRect().width,top:b.top,left:b.left})},clear:function(a){var b=this;b.items.length&&(b.$control.children(":not(input)").remove(),b.items=[],b.lastQuery=null,b.setCaret(0),b.setActiveItem(null),b.updatePlaceholder(),b.updateOriginalInput({silent:a}),b.refreshState(),b.showInput(),b.trigger("clear"))},insertAtCaret:function(a){var b=Math.min(this.caretPos,this.items.length),c=a[0],d=this.buffer||this.$control[0];0===b?d.insertBefore(c,d.firstChild):d.insertBefore(c,d.childNodes[b]),this.setCaret(b+1)},deleteSelection:function(b){var c,d,e,f,g,h,i,j,k,l=this;if(e=b&&8===b.keyCode?-1:1,f=r(l.$control_input[0]),l.$activeOption&&!l.settings.hideSelected&&(i=l.getAdjacentOption(l.$activeOption,-1).attr("data-value")),g=[],l.$activeItems.length){for(k=l.$control.children(".active:"+(e>0?"last":"first")),h=l.$control.children(":not(input)").index(k),e>0&&h++,c=0,d=l.$activeItems.length;c<d;c++)g.push(a(l.$activeItems[c]).attr("data-value"));b&&(b.preventDefault(),b.stopPropagation())}else(l.isFocused||"single"===l.settings.mode)&&l.items.length&&(e<0&&0===f.start&&0===f.length?g.push(l.items[l.caretPos-1]):e>0&&f.start===l.$control_input.val().length&&g.push(l.items[l.caretPos]));if(!g.length||"function"==typeof l.settings.onDelete&&!1===l.settings.onDelete.apply(l,[g]))return!1;for(void 0!==h&&l.setCaret(h);g.length;)l.removeItem(g.pop());return l.showInput(),l.positionDropdown(),l.refreshOptions(!0),i&&(j=l.getOption(i),j.length&&l.setActiveOption(j)),!0},advanceSelection:function(a,b){var c,d,e,f,g,h=this;0!==a&&(h.rtl&&(a*=-1),c=a>0?"last":"first",d=r(h.$control_input[0]),h.isFocused&&!h.isInputHidden?(f=h.$control_input.val().length,(a<0?0===d.start&&0===d.length:d.start===f)&&!f&&h.advanceCaret(a,b)):(g=h.$control.children(".active:"+c),g.length&&(e=h.$control.children(":not(input)").index(g),h.setActiveItem(null),h.setCaret(a>0?e+1:e))))},advanceCaret:function(a,b){var c,d,e=this;0!==a&&(c=a>0?"next":"prev",e.isShiftDown?(d=e.$control_input[c](),d.length&&(e.hideInput(),e.setActiveItem(d),b&&b.preventDefault())):e.setCaret(e.caretPos+a))},setCaret:function(b){var c=this;if(b="single"===c.settings.mode?c.items.length:Math.max(0,Math.min(c.items.length,b)),!c.isPending){var d,e,f,g;for(f=c.$control.children(":not(input)"),d=0,e=f.length;d<e;d++)g=a(f[d]).detach(),d<b?c.$control_input.before(g):c.$control.append(g)}c.caretPos=b},lock:function(){this.close(),this.isLocked=!0,this.refreshState()},unlock:function(){this.isLocked=!1,this.refreshState()},disable:function(){var a=this;a.$input.prop("disabled",!0),a.$control_input.prop("disabled",!0).prop("tabindex",-1),a.isDisabled=!0,a.lock()},enable:function(){var a=this;a.$input.prop("disabled",!1),a.$control_input.prop("disabled",!1).prop("tabindex",a.tabIndex),a.isDisabled=!1,a.unlock()},destroy:function(){var b=this,c=b.eventNS,d=b.revertSettings;b.trigger("destroy"),b.off(),b.$wrapper.remove(),b.$dropdown.remove(),b.$input.html("").append(d.$children).removeAttr("tabindex").removeClass("selectized").attr({tabindex:d.tabindex}).show(),b.$control_input.removeData("grow"),b.$input.removeData("selectize"),0==--w.count&&w.$testInput&&(w.$testInput.remove(),w.$testInput=void 0),a(window).off(c),a(document).off(c),a(document.body).off(c),delete b.$input[0].selectize},render:function(b,c){var d,e,f="",g=!1,h=this;return"option"!==b&&"item"!==b||(d=k(c[h.settings.valueField]),g=!!d),g&&(j(h.renderCache[b])||(h.renderCache[b]={}),h.renderCache[b].hasOwnProperty(d))?h.renderCache[b][d]:(f=a(h.settings.render[b].apply(this,[c,l])),"option"===b||"option_create"===b?c[h.settings.disabledField]||f.attr("data-selectable",""):"optgroup"===b&&(e=c[h.settings.optgroupValueField]||"",f.attr("data-group",e),c[h.settings.disabledField]&&f.attr("data-disabled","")),"option"!==b&&"item"!==b||f.attr("data-value",d||""),g&&(h.renderCache[b][d]=f[0]),f[0])},clearCache:function(a){var b=this;void 0===a?b.renderCache={}:delete b.renderCache[a]},canCreate:function(a){var b=this;if(!b.settings.create)return!1;var c=b.settings.createFilter;return a.length&&("function"!=typeof c||c.apply(b,[a]))&&("string"!=typeof c||new RegExp(c).test(a))&&(!(c instanceof RegExp)||c.test(a))}}),w.count=0,w.defaults={options:[],optgroups:[],plugins:[],delimiter:",",splitOn:null,persist:!0,diacritics:!0,create:!1,createOnBlur:!1,createFilter:null,highlight:!0,openOnFocus:!0,maxOptions:1e3,maxItems:null,hideSelected:null,addPrecedence:!1,selectOnTab:!1,preload:!1,allowEmptyOption:!1,closeAfterSelect:!1,scrollDuration:60,loadThrottle:300,loadingClass:"loading",dataAttr:"data-data",optgroupField:"optgroup",valueField:"value",labelField:"text",disabledField:"disabled",optgroupLabelField:"label",optgroupValueField:"value",lockOptgroupOrder:!1,sortField:"$order",searchField:["text"],searchConjunction:"and",mode:null,wrapperClass:"selectize-control",inputClass:"selectize-input",dropdownClass:"selectize-dropdown",dropdownContentClass:"selectize-dropdown-content",dropdownParent:null,copyClassesToDropdown:!0,render:{}},a.fn.selectize=function(b){var c=a.fn.selectize.defaults,d=a.extend({},c,b),e=d.dataAttr,f=d.labelField,g=d.valueField,h=d.disabledField,i=d.optgroupField,j=d.optgroupLabelField,l=d.optgroupValueField,m=function(b,c){var h,i,j,k,l=b.attr(e);if(l)for(c.options=JSON.parse(l),h=0,i=c.options.length;h<i;h++)c.items.push(c.options[h][g]);else{var m=a.trim(b.val()||"");if(!d.allowEmptyOption&&!m.length)return;for(j=m.split(d.delimiter),h=0,i=j.length;h<i;h++)k={},k[f]=j[h],k[g]=j[h],c.options.push(k);c.items=j}},n=function(b,c){var m,n,o,p,q=c.options,r={},s=function(a){var b=e&&a.attr(e);return"string"==typeof b&&b.length?JSON.parse(b):null},t=function(b,e){b=a(b);var j=k(b.val());if(j||d.allowEmptyOption)if(r.hasOwnProperty(j)){if(e){var l=r[j][i];l?a.isArray(l)?l.push(e):r[j][i]=[l,e]:r[j][i]=e}}else{var m=s(b)||{};m[f]=m[f]||b.text(),m[g]=m[g]||j,m[h]=m[h]||b.prop("disabled"),m[i]=m[i]||e,r[j]=m,q.push(m),b.is(":selected")&&c.items.push(j)}};for(c.maxItems=b.attr("multiple")?null:1,p=b.children(),m=0,n=p.length;m<n;m++)o=p[m].tagName.toLowerCase(),"optgroup"===o?function(b){var d,e,f,g,i;for(b=a(b),f=b.attr("label"),f&&(g=s(b)||{},g[j]=f,g[l]=f,g[h]=b.prop("disabled"),c.optgroups.push(g)),i=a("option",b),d=0,e=i.length;d<e;d++)t(i[d],f)}(p[m]):"option"===o&&t(p[m])};return this.each(function(){if(!this.selectize){var e=a(this),f=this.tagName.toLowerCase(),g=e.attr("placeholder")||e.attr("data-placeholder");g||d.allowEmptyOption||(g=e.children('option[value=""]').text());var h={placeholder:g,options:[],optgroups:[],items:[]};"select"===f?n(e,h):m(e,h),new w(e,a.extend(!0,{},c,h,b))}})},a.fn.selectize.defaults=w.defaults,a.fn.selectize.support={validity:i},w.define("drag_drop",function(b){if(!a.fn.sortable)throw new Error('The "drag_drop" plugin requires jQuery UI "sortable".');if("multi"===this.settings.mode){var c=this;c.lock=function(){var a=c.lock;return function(){var b=c.$control.data("sortable");return b&&b.disable(),a.apply(c,arguments)}}(),c.unlock=function(){var a=c.unlock;return function(){var b=c.$control.data("sortable");return b&&b.enable(),a.apply(c,arguments)}}(),c.setup=function(){var b=c.setup;return function(){b.apply(this,arguments);var d=c.$control.sortable({items:"[data-value]",forcePlaceholderSize:!0,disabled:c.isLocked,start:function(a,b){b.placeholder.css("width",b.helper.css("width")),d.css({overflow:"visible"})},stop:function(){d.css({overflow:"hidden"});var b=c.$activeItems?c.$activeItems.slice():null,e=[];d.children("[data-value]").each(function(){e.push(a(this).attr("data-value"))}),c.setValue(e),c.setActiveItem(b)}})}}()}}),w.define("dropdown_header",function(b){var c=this;b=a.extend({title:"Untitled",headerClass:"selectize-dropdown-header",titleRowClass:"selectize-dropdown-header-title",labelClass:"selectize-dropdown-header-label",closeClass:"selectize-dropdown-header-close",html:function(a){return'<div class="'+a.headerClass+'"><div class="'+a.titleRowClass+'"><span class="'+a.labelClass+'">'+a.title+'</span><a href="javascript:void(0)" class="'+a.closeClass+'">&times;</a></div></div>'}},b),c.setup=function(){var d=c.setup;return function(){d.apply(c,arguments),c.$dropdown_header=a(b.html(b)),c.$dropdown.prepend(c.$dropdown_header)}}()}),w.define("optgroup_columns",function(b){var c=this;b=a.extend({equalizeWidth:!0,equalizeHeight:!0},b),this.getAdjacentOption=function(b,c){var d=b.closest("[data-group]").find("[data-selectable]"),e=d.index(b)+c;return e>=0&&e<d.length?d.eq(e):a()},this.onKeyDown=function(){var a=c.onKeyDown;return function(b){var d,e,f,g;return!this.isOpen||37!==b.keyCode&&39!==b.keyCode?a.apply(this,arguments):(c.ignoreHover=!0,g=this.$activeOption.closest("[data-group]"),d=g.find("[data-selectable]").index(this.$activeOption),g=37===b.keyCode?g.prev("[data-group]"):g.next("[data-group]"),f=g.find("[data-selectable]"),e=f.eq(Math.min(f.length-1,d)),void(e.length&&this.setActiveOption(e)))}}();var d=function(){var a,b=d.width,c=document;return void 0===b&&(a=c.createElement("div"),a.innerHTML='<div style="width:50px;height:50px;position:absolute;left:-50px;top:-50px;overflow:auto;"><div style="width:1px;height:100px;"></div></div>',a=a.firstChild,c.body.appendChild(a),b=d.width=a.offsetWidth-a.clientWidth,c.body.removeChild(a)),b},e=function(){var e,f,g,h,i,j,k;if(k=a("[data-group]",c.$dropdown_content),(f=k.length)&&c.$dropdown_content.width()){if(b.equalizeHeight){for(g=0,e=0;e<f;e++)g=Math.max(g,k.eq(e).height());k.css({height:g})}b.equalizeWidth&&(j=c.$dropdown_content.innerWidth()-d(),h=Math.round(j/f),k.css({width:h}),f>1&&(i=j-h*(f-1),k.eq(f-1).css({width:i})))}};(b.equalizeHeight||b.equalizeWidth)&&(m.after(this,"positionDropdown",e),m.after(this,"refreshOptions",e))}),w.define("remove_button",function(b){b=a.extend({label:"&times;",title:"Remove",className:"remove",append:!0},b);if("single"===this.settings.mode)return void function(b,c){c.className="remove-single";var d=b,e='<a href="javascript:void(0)" class="'+c.className+'" tabindex="-1" title="'+l(c.title)+'">'+c.label+"</a>",f=function(b,c){return a("<span>").append(b).append(c)};b.setup=function(){var g=d.setup;return function(){if(c.append){var h=a(d.$input.context).attr("id"),i=(a("#"+h),d.settings.render.item);d.settings.render.item=function(a){return f(i.apply(b,arguments),e)}}g.apply(b,arguments),b.$control.on("click","."+c.className,function(a){a.preventDefault(),d.isLocked||d.clear()})}}()}(this,b);!function(b,c){var d=b,e='<a href="javascript:void(0)" class="'+c.className+'" tabindex="-1" title="'+l(c.title)+'">'+c.label+"</a>",f=function(a,b){var c=a.search(/(<\/[^>]+>\s*)$/);return a.substring(0,c)+b+a.substring(c)};b.setup=function(){var g=d.setup;return function(){if(c.append){var h=d.settings.render.item;d.settings.render.item=function(a){return f(h.apply(b,arguments),e)}}g.apply(b,arguments),b.$control.on("click","."+c.className,function(b){if(b.preventDefault(),!d.isLocked){var c=a(b.currentTarget).parent();d.setActiveItem(c),d.deleteSelection()&&d.setCaret(d.items.length)}})}}()}(this,b)}),w.define("restore_on_backspace",function(a){var b=this;a.text=a.text||function(a){return a[this.settings.labelField]},this.onKeyDown=function(){var c=b.onKeyDown;return function(b){var d,e;return 8===b.keyCode&&""===this.$control_input.val()&&!this.$activeItems.length&&(d=this.caretPos-1)>=0&&d<this.items.length?(e=this.options[this.items[d]],this.deleteSelection(b)&&(this.setTextboxValue(a.text.apply(this,[e])),this.refreshOptions(!0)),void b.preventDefault()):c.apply(this,arguments)}}()}),w});
admin/js/woo-feed-admin.js CHANGED
@@ -1,567 +1,347 @@
1
- (function ($) {
2
- 'use strict';
3
-
4
- /**
5
- * All of the code for your admin-facing JavaScript source
6
- * should reside in this file.
7
- *
8
- * Note: It has been assumed you will write jQuery code here, so the
9
- * $ function reference has been prepared for usage within the scope
10
- * of this function.
11
- *
12
- * This enables you to define handlers, for when the DOM is ready:
13
- */
14
- $(function () {
15
-
16
- // Template loading ui conflict . Added by Shoroar
17
- var pageURL = $(location). attr("href");
18
- if(pageURL.indexOf('webappick-product-feed-for-woocommerce') >= 0 || pageURL.indexOf('woo_feed_manage_feed') >= 0) {
19
- $('#wpbody-content').addClass('woofeed-body-content');
20
- }
21
-
22
-
23
- // Category Mapping (Auto Field Populate)
24
- $(".treegrid-parent").on('change keyup', function () {
25
- var val = $(this).val();
26
- var parent = $(this).attr('classval');
27
-
28
- $(".treegrid-parent-" + parent).val(val);
29
- });
30
-
31
- // Generate Feed Add Table Row
32
- $(document).on('click', '#wf_newRow', function () {
33
- $("#table-1 tbody tr:first").clone().find('input').val('').end().find("select:not('.wfnoempty')").val('').end().insertAfter("#table-1 tbody tr:last");
34
-
35
- $('.outputType').each(function (index, element) {
36
- //do stuff to each individually.
37
- $(this).attr('name', "output_type[" + index + "][]"); //sets the val to the index of the element, which, you know, is useless
38
- });
39
- });
40
-
41
- // XML Feed Wrapper
42
- $(document).on('change', '#feedType', function () {
43
- var type = $(this).val();
44
- var provider = $("#provider").val();
45
-
46
- if (type == 'xml') {
47
- $(".itemWrapper").show();
48
- $(".wf_csvtxt").hide();
49
- } else if (type == 'csv' || type == 'txt') {
50
- $(".wf_csvtxt").show();
51
- $(".itemWrapper").hide();
52
- } else if (type == '') {
53
- $(".wf_csvtxt").hide();
54
- $(".itemWrapper").hide();
55
- }
56
-
57
- if (provider == 'google' || provider == 'facebook' && type != "") {
58
- $(".itemWrapper").hide();
59
- }
60
- else if(provider == 'criteo')
61
- {
62
- $('.itemWrapper input[name="itemsWrapper"]').val("channel");
63
- $('.itemWrapper input[name="itemWrapper"]').val("item");
64
- } else {
65
- //$(".itemWrapper").hide();
66
- }
67
- });
68
-
69
-
70
- // Tooltip only Text
71
- $('.wfmasterTooltip').hover(function () {
72
- // Hover over code
73
- var title = $(this).attr('wftitle');
74
- $(this).data('tipText', title).removeAttr('wftitle');
75
- $('<p class="wftooltip"></p>')
76
- .text(title)
77
- .appendTo('body')
78
- .fadeIn('slow');
79
- }, function () {
80
- // Hover out code
81
- $(this).attr('wftitle', $(this).data('tipText'));
82
- $('.wftooltip').remove();
83
- }).mousemove(function (e) {
84
- var mousex = e.pageX + 20; //Get X coordinates
85
- var mousey = e.pageY + 10; //Get Y coordinates
86
- $('.wftooltip')
87
- .css({top: mousey, left: mousex})
88
- });
89
-
90
- // Dynamic Attribute Add New Condition
91
- $(document).on('click', '#wf_newCon', function () {
92
- $("#table-1 tbody tr:first").show().clone().find('input').val('').end().insertAfter("#table-1 tbody tr:last");
93
- $(".fsrow:gt(5)").prop('disabled', false);
94
- $(".daRow:eq(0)").hide();
95
-
96
- });
97
-
98
-
99
- // Add New Condition for Filter
100
- $(document).on('click', '#wf_newFilter', function () {
101
- $("#table-filter tbody tr:eq(0)").show().clone().find('input').val('').end().find('select').val('').end().insertAfter("#table-filter tbody tr:last");
102
- $(".fsrow:gt(2)").prop('disabled', false);
103
- $(".daRow:eq(0)").hide();
104
- });
105
-
106
- // Attribute type selection
107
- $(document).on('change', '.attr_type', function () {
108
- var type = $(this).val();
109
- $(this).closest('tr').find('.wf_attr').prop('required',false);
110
- $(this).closest('tr').find('.wf_default').prop('required',false);
111
- if (type == 'pattern') {
112
- $(this).closest('tr').find('.wf_attr').hide();
113
- $(this).closest('tr').find('.wf_attr').val('');
114
- $(this).closest('tr').find('.wf_default').show();
115
- //$(this).closest('tr').find('.wf_default').prop('required',true);
116
- } else {
117
- //$(this).closest('tr').find('.wf_attr').prop('required',true);
118
- $(this).closest('tr').find('.wf_attr').show();
119
- $(this).closest('tr').find('.wf_default').hide();
120
- $(this).closest('tr').find('.wf_default').val('');
121
- }
122
- });
123
-
124
- // Attribute type selection for dynamic attribute
125
- $(document).on('change', '.dType', function () {
126
- var type = $(this).val();
127
- if (type == 'pattern') {
128
- $(this).closest('tr').find('.value_attribute').hide();
129
- $(this).closest('tr').find('.value_pattern').show();
130
- } else if (type == 'attribute') {
131
- $(this).closest('tr').find('.value_attribute').show();
132
- $(this).closest('tr').find('.value_pattern').hide();
133
- } else if (type == 'remove') {
134
- $(this).closest('tr').find('.value_attribute').hide();
135
- $(this).closest('tr').find('.value_pattern').hide();
136
- }
137
- });
138
-
139
- // Generate Feed Table Row Delete
140
- $(document).on('click', '.delRow', function (event) {
141
- $(this).closest('tr').remove();
142
- });
143
-
144
- //Expand output type
145
- $(document).on('click', '.expandType', function () {
146
- $('.outputType').each(function (index, element) {
147
- //do stuff to each individually.
148
- $(this).attr('name', "output_type[" + index + "][]");
149
- });
150
- $(this).closest('tr').find('.outputType').attr('multiple', 'multiple');
151
- $(this).closest('tr').find('.contractType').show();
152
- $(this).hide();
153
- console.log('clicked');
154
- });
155
-
156
- //Contract output type
157
- $(document).on('click', '.contractType', function () {
158
- $('.outputType').each(function (index, element) {
159
- //do stuff to each individually.
160
- $(this).attr('name', "output_type[" + index + "][]");
161
- });
162
- $(this).closest('tr').find('.outputType').removeAttr('multiple');
163
- $(this).closest('tr').find('.expandType').show();
164
- $(this).hide();
165
- });
166
-
167
- // Generate Feed Form Submit
168
- $(".generateFeed").validate();
169
- $(document).on('submit', '#generateFeed', function (event) {
170
- $(".makeFeedResponse").html("<b style='color: darkblue;'><i class='dashicons dashicons-sos wpf_sos'></i> Processing...</b>");
171
- //event.preventDefault();
172
- // Feed Generating form validation
173
- $(this).validate();
174
- var this2 = this;
175
- if ($(this).valid()) {
176
-
177
- }
178
- });
179
- // Update Feed Form Submit
180
- $(".updatefeed").validate();
181
- $(document).on('submit', '#updatefeed', function (event) {
182
- $(".makeFeedResponse").html("<b style='color: darkblue;'><i class='dashicons dashicons-sos wpf_sos'></i> Processing...</b>");
183
- //event.preventDefault();
184
- // Feed Generating form validation
185
- $(this).validate();
186
- var this2 = this;
187
- if ($(this).valid()) {
188
-
189
- }
190
- });
191
- // Get Merchant View
192
- $("#provider").on('change', function (event) {
193
- event.preventDefault();
194
-
195
- // added by Zakaria
196
- var _value = $(this).val();
197
- if(_value == "fruugo" || _value == "fruugo.au" || _value == "vergelijk_comparer" || _value == "avantlink" || _value == 'spartoo.fi') {
198
- $("#feedType").val("csv");
199
- } else {
200
- $("#feedType").val("");
201
- }
202
- // End
203
-
204
- $("#providerPage").html("<h3>Loading...</h3>");
205
- var merchant = $(this).val();
206
- $('#feedType').trigger('change');
207
- $.post(wpf_ajax_obj.wpf_ajax_url, { //POST request
208
- _ajax_nonce: wpf_ajax_obj.nonce, //nonce
209
- action: "get_feed_merchant", //action
210
- merchant: merchant //data
211
- }, function (data) { //callback
212
- //console.log(data); //insert server response
213
- $("#providerPage").html(data);
214
-
215
- // Added by zakaria
216
- $('.wf_ps[name="limit[]"]').prop('readonly', true);
217
- $('.wf_ps[name="limit[]"]').css('background', 'none');
218
-
219
- $('.wf_ps[name="limit[]"]').focus(function()
220
- {
221
- $(this).prop('readonly', false);
222
- });
223
-
224
- $('.wf_ps[name="limit[]"]').blur(function()
225
- {
226
- $(this).prop('readonly', true);
227
- });
228
-
229
- // Select options selectization
230
- $('.googleTaxonomyId').selectize({
231
- plugins: ['remove_button'],
232
- render: {
233
- item: function(data, escape) {
234
- return '<div class="item webappick_selector">'+ escape(data.text) + '</div>';
235
- }
236
- }
237
- });
238
- //For getting Google taxonomy
239
- $(document).on("focus","#wf_google_taxonomy_input_modal",function(e){
240
- e.preventDefault();
241
- showGoogleTaxonomyInputModal(); //call modal
242
- //alert("Hi");
243
- });
244
- //modal show for getting google taxonomy
245
- function showGoogleTaxonomyInputModal() {
246
- $('#wf_google_taxonomy_modal').fadeIn(100);
247
- $('#wf_google_taxonomy_modal_submit_button').on('click',function(e){
248
- var taxonomy_value = $('#googleTaxonomyId').val();
249
- $('#wf_google_taxonomy_input_modal').val(taxonomy_value);
250
- //reset form and modal fadeout
251
- $('#wf_google_taxonomy_modal').fadeOut(200);
252
- $('#google_taxonomy_error_message').text('');
253
-
254
- return false;
255
- });
256
- //cancel Taxonomy Modal
257
- //----- close google taxonomy modal
258
- $('[data-popup-close]').on('click', function(e) {
259
- $('#wf_google_taxonomy_modal').fadeOut(200);
260
- e.preventDefault();
261
- });
262
-
263
- $('._wf_popup-close').on('click',function(e){
264
- e.preventDefault();
265
- $('#wf_google_taxonomy_modal').fadeOut(200);
266
- });
267
-
268
- //cancel Google taxonomy
269
- $('#wf_google_taxonomy_modal_cancel_button').on('click',function(){
270
- $('#wf_google_taxonomy_modal').fadeOut(200);
271
- $('#wf_google_taxonomy_input_modal').text('');
272
- });
273
-
274
- // //close modal if click outside the modal
275
- // $(document).click(function(e) {
276
- // //if you click on anything except the modal itself, close the modal
277
- // if (!$(e.target).closest("._wf_popup-inner").length) {
278
- // $("#wf_google_taxonomy_modal").fadeOut(200);
279
- // }
280
- // });
281
- }
282
-
283
- // Generate Feed Table row shorting
284
- $('.sorted_table').sortablesd({
285
- containerSelector: 'table',
286
- itemPath: '> tbody',
287
- itemSelector: 'tr',
288
- handle: 'i.wf_sortedtable',
289
- placeholder: '<tr class="placeholder"><td colspan="100"></td></tr>',
290
- });
291
- });
292
- });
293
-
294
- //-------------Serialization and modal edit without ajax call------------
295
- $('.googleTaxonomyId').selectize({
296
- plugins: ['remove_button'],
297
- render: {
298
- item: function(data, escape) {
299
- return '<div class="item webappick_selector">'+ escape(data.text) + '</div>';
300
- }
301
- }
302
- });
303
- //For getting Google taxonomy edit
304
- $(".wf_google_taxonomy_input_modal_edit").on("focus",function(e){
305
- e.preventDefault();
306
- showGoogleTaxonomyInputModal(); //call modal
307
- });
308
- //modal show for getting google taxonomy
309
- function showGoogleTaxonomyInputModal() {
310
- $('#wf_google_taxonomy_modal_edit').fadeIn(100);
311
- $('#wf_google_taxonomy_modal_submit_button_edit').on('click',function(e){
312
- var taxonomy_value = $('#googleTaxonomyIdEdit').val();
313
- //console.log('okkss'+ taxonomy_value);
314
- $('.wf_google_taxonomy_input_modal_edit').val(taxonomy_value);
315
- //reset form and modal fadeout
316
- $('#wf_google_taxonomy_modal_edit').fadeOut(200);
317
- return false;
318
- });
319
- //cancel Taxonomy Modal
320
- //----- close google taxonomy modal
321
- $('#wf_google_taxonomy_modal_popup_close').on('click', function(e) {
322
- $('#wf_google_taxonomy_modal_edit').fadeOut(200);
323
- e.preventDefault();
324
- });
325
-
326
- //cancel Google taxonomy
327
- $('#wf_google_taxonomy_modal_cancel_button_edit').on('click',function(){
328
- $('#wf_google_taxonomy_modal_edit').fadeOut(200);
329
- $('#wf_google_taxonomy_input_modal_edit').text('');
330
- });
331
-
332
- //close modal if click outside the modal
333
- $(document).click(function(e) {
334
- //if you click on anything except the modal itself, close the modal
335
- if (!$(e.target).closest("._wf_popup-inner").length) {
336
- $("#wf_google_taxonomy_modal_edit").fadeOut(200);
337
- }
338
- });
339
-
340
- }
341
- //--------end serialization and modal edit without ajax call---------
342
-
343
- // Initialize Table Sorting
344
- $('.sorted_table').sortablesd({
345
- containerSelector: 'table',
346
- itemPath: '> tbody',
347
- itemSelector: 'tr',
348
- handle: 'i.wf_sortedtable',
349
- placeholder: '<tr class="placeholder"><td colspan="100"></td></tr>',
350
- });
351
-
352
- // Feed Active and Inactive status change via ajax
353
- $('.woo_feed_status_input').on('change',function(){
354
- var counter;
355
- var $feedName = $(this).val();
356
- if($(this)[0].checked){
357
- counter = 1;
358
- }else {
359
- counter = 0;
360
- }
361
- $.post(wpf_ajax_obj.wpf_ajax_url, { //POST request
362
- _ajax_nonce: wpf_ajax_obj.nonce, //nonce
363
- action: "update_feed_status", //action
364
- feedName: $feedName,
365
- status: counter
366
- }, function (data) { //callback
367
- });
368
- });
369
-
370
- // Added by: zakaria
371
- // Adding for Copy-to-Clipboard functionality in the settings page
372
- $("#woo_feed_settings_error_copy_clipboard_button").on('click', function()
373
- {
374
- $('#woo_feed_settings_error_report').select();
375
- document.execCommand('copy');
376
- if (window.getSelection) {window.getSelection().removeAllRanges();}
377
- else if (document.selection) {document.selection.empty();}
378
- });
379
-
380
- $('.wf_ps[name="limit[]"]').focus(function()
381
- {
382
- $(this).prop('readonly', false);
383
- });
384
-
385
- $('.wf_ps[name="limit[]"]').blur(function()
386
- {
387
- $(this).prop('readonly', true);
388
- });
389
- // End
390
-
391
- });
392
-
393
- // Plugin deactivation pop up
394
- $(function() {
395
- var modal = $( '#wpf_deactive_plugin-modal' );
396
- var deactivateLink = '';
397
-
398
- $( '#the-list' ).on('click', 'a.wpf-deactivate-link', function(e) {
399
- e.preventDefault();
400
- modal.addClass('modal-active');
401
- deactivateLink = $(this).attr('href');
402
- modal.find('a.dont-bother-me').attr('href', deactivateLink).css('float', 'left');
403
- });
404
-
405
- modal.on('click', 'button.button-primary', function(e) {
406
- e.preventDefault();
407
-
408
- modal.removeClass('modal-active');
409
- });
410
-
411
- modal.on('click', 'input[type="radio"]', function () {
412
- var parent = $(this).parents('li:first');
413
-
414
- modal.find('.reason-input').remove();
415
-
416
- var inputType = parent.data('type'),
417
- inputPlaceholder = parent.data('placeholder'),
418
- reasonInputHtml = '<div class="reason-input">' + ( ( 'text' === inputType ) ? '<input type="text" size="40" />' : '<textarea rows="5" cols="45"></textarea>' ) + '</div>';
419
-
420
- if ( inputType !== '' ) {
421
- parent.append( $(reasonInputHtml) );
422
- parent.find('input, textarea').attr('placeholder', inputPlaceholder).focus();
423
- }
424
- });
425
-
426
- modal.on('click', 'button.button-secondary', function(e) {
427
- e.preventDefault();
428
-
429
- var button = $(this);
430
-
431
- if ( button.hasClass('disabled') ) {
432
- return;
433
- }
434
-
435
- var $radio = $( 'input[type="radio"]:checked', modal );
436
-
437
- var $selected_reason = $radio.parents('li:first'),
438
- $input = $selected_reason.find('textarea, input[type="text"]');
439
-
440
- $.ajax({
441
- url: ajaxurl,
442
- type: 'POST',
443
- data: {
444
- action: 'woo-feed-submit-uninstall-reason',
445
- reason_id: ( 0 === $radio.length ) ? 'none' : $radio.val(),
446
- reason_info: ( 0 !== $input.length ) ? $input.val().trim() : ''
447
- },
448
- beforeSend: function() {
449
- button.addClass('disabled');
450
- button.text('Processing...');
451
- },
452
- complete: function(data) {
453
- // console.log(data);
454
- window.location.href = deactivateLink;
455
- },error:function(data){
456
- // console.log(data);
457
- }
458
- });
459
- });
460
- modal.on('click', '.dont-bother-me', function(e)
461
- {
462
- e.preventDefault();
463
-
464
- let button = $(this);
465
-
466
- if ( button.hasClass('disabled') ) {
467
- return;
468
- }
469
-
470
- $.ajax({
471
- url: ajaxurl,
472
- type: 'POST',
473
- data: {
474
- action: 'woo-feed-submit-uninstall-reason',
475
- reason_id: 'no-comment',
476
- reason_info: 'I rather wouldn\'t say'
477
- },
478
- beforeSend: function()
479
- {
480
- button.addClass("disabled");
481
- },
482
- complete: function(data)
483
- {
484
- window.location.href = deactivateLink;
485
- }
486
- });
487
- });
488
- });
489
-
490
- //Checking whether php ssh2 extension is added or not
491
- $(document).on('change', '.ftporsftp', function () {
492
- var server = $(this).val();
493
- if (server == 'sftp') {
494
- $('.ssh2_status').show();
495
- $('.ssh2_status').css('color','dodgerblue');
496
- $('.ssh2_status').text('Wait! Checking Extensions ...');
497
- $.ajax({
498
- url: wpf_ajax_obj.wpf_ajax_url,
499
- type: 'post',
500
- data: {
501
- _ajax_nonce: wpf_ajax_obj.nonce,
502
- action: "get_ssh2_status",
503
- server: server
504
- },
505
- success: function (response) {
506
- if (response.success) {
507
- if(response.data == 'exists') {
508
- $('.ssh2_status').hide();
509
- } else {
510
- $('.ssh2_status').show();
511
- $('.ssh2_status').css('color','red');
512
- $('.ssh2_status').text('Warning! Enable PHP ssh2 extension to use SFTP. Contact your server administrator.');
513
- }
514
- }
515
- }
516
- });
517
- }else{
518
- $('.ssh2_status').hide();
519
- }
520
- });
521
- $(document).on('click', '.woo-feed-review-notice ul li a', function (e) {
522
- e.preventDefault();
523
- let notice = $(this).attr('val');
524
-
525
- if(notice=="given"){
526
- window.open('https://wordpress.org/support/plugin/webappick-product-feed-for-woocommerce/reviews/?rate=5#new-post','_blank');
527
- }
528
-
529
- $( ".woo-feed-review-notice" ).slideUp( 200, "linear");
530
-
531
- $.ajax({
532
- url: wpf_ajax_obj.wpf_ajax_url,
533
- type: 'post',
534
- data: {
535
- _ajax_nonce: wpf_ajax_obj.nonce,
536
- action: "woo_feed_save_review_notice",
537
- notice: notice
538
- },
539
- success: function (response) {
540
-
541
- }
542
- });
543
- });
544
-
545
- $(document).on('click', '.woo-feed-wpml-notice .notice-dismiss', function (e) {
546
- e.preventDefault();
547
- $.ajax({
548
- url: wpf_ajax_obj.wpf_ajax_url,
549
- type: 'post',
550
- data: {
551
- _ajax_nonce: wpf_ajax_obj.nonce,
552
- action: "woo_feed_save_wpml_notice",
553
- },
554
- success: function (response) {
555
- if (response.success) {
556
- $( ".woo-feed-wpml-notice" ).slideUp( 200, "linear");
557
- }
558
- }
559
- });
560
- });
561
-
562
- }(jQuery));
563
-
564
-
565
-
566
-
567
-
1
+ (function ($, window, document, opts) {
2
+ "use strict";
3
+ /**
4
+ * All of the code for your admin-facing JavaScript source
5
+ * should reside in this file.
6
+ *
7
+ * Note: It has been assumed you will write jQuery code here, so the
8
+ * $ function reference has been prepared for usage within the scope
9
+ * of this function.
10
+ *
11
+ * This enables you to define handlers, for when the DOM is ready:
12
+ */
13
+ $(function () {
14
+
15
+ // Template loading ui conflict . Added by Shoroar
16
+ var pageURL = $(location). attr("href");
17
+ if(pageURL.indexOf('webappick-product-feed-for-woocommerce') >= 0 || pageURL.indexOf('woo_feed_manage_feed') >= 0) {
18
+ $('#wpbody-content').addClass('woofeed-body-content');
19
+ }
20
+ // Category Mapping (Auto Field Populate)
21
+ $(".treegrid-parent").on('change keyup', function () {
22
+ var val = $(this).val(), parent = $(this).attr('classval');
23
+ $(".treegrid-parent-" + parent).val(val);
24
+ });
25
+ // Generate Feed Add Table Row
26
+ $(document).on('click', '#wf_newRow', function () {
27
+ $("#table-1 tbody tr:first").clone().find('input').val('').end().find("select:not('.wfnoempty')").val('').end().insertAfter("#table-1 tbody tr:last");
28
+ $('.outputType').each(function (index, element) {
29
+ //do stuff to each individually.
30
+ $(this).attr('name', "output_type[" + index + "][]"); //sets the val to the index of the element, which, you know, is useless
31
+ });
32
+ });
33
+ // XML Feed Wrapper
34
+ $(document).on('change', '#feedType', function () {
35
+ var type = $(this).val(), provider = $("#provider").val(), itemWrapper = $(".itemWrapper"), wf_csvtxt = $(".wf_csvtxt");
36
+ if ( type === 'xml' ) {
37
+ itemWrapper.show(); wf_csvtxt.hide();
38
+ } else if ( type === 'csv' || type === 'txt' ) {
39
+ itemWrapper.hide(); wf_csvtxt.show();
40
+ } else if ( type === '' ) {
41
+ itemWrapper.hide(); wf_csvtxt.hide();
42
+ }
43
+ if( type !== "" && helper.in_array( provider, ['google', 'facebook'] ) ) {
44
+ $(".itemWrapper").hide();
45
+ }
46
+ if( provider === 'criteo' ) {
47
+ itemWrapper.find('input[name="itemsWrapper"]').val("channel");
48
+ itemWrapper.find('input[name="itemWrapper"]').val("item");
49
+ }
50
+ });
51
+ // Tooltip only Text
52
+ $('.wfmasterTooltip').hover(function () {
53
+ // Hover over code
54
+ var title = $(this).attr('wftitle');
55
+ $(this).data('tipText', title).removeAttr('wftitle');
56
+ $('<p class="wftooltip"></p>')
57
+ .text(title)
58
+ .appendTo('body')
59
+ .fadeIn('slow');
60
+ }, function () {
61
+ // Hover out code
62
+ $(this).attr('wftitle', $(this).data('tipText'));
63
+ $('.wftooltip').remove();
64
+ }).mousemove(function (e) {
65
+ var mousex = e.pageX + 20; //Get X coordinates
66
+ var mousey = e.pageY + 10; //Get Y coordinates
67
+ $('.wftooltip')
68
+ .css({top: mousey, left: mousex})
69
+ });
70
+ // Dynamic Attribute Add New Condition
71
+ $(document).on('click', '#wf_newCon', function () {
72
+ $("#table-1 tbody tr:first").show().clone().find('input').val('').end().insertAfter("#table-1 tbody tr:last");
73
+ $(".fsrow:gt(5)").prop('disabled', false);
74
+ $(".daRow:eq(0)").hide();
75
+ });
76
+ // Add New Condition for Filter
77
+ $(document).on('click', '#wf_newFilter', function () {
78
+ $("#table-filter tbody tr:eq(0)").show().clone().find('input').val('').end().find('select').val('').end().insertAfter("#table-filter tbody tr:last");
79
+ $(".fsrow:gt(2)").prop('disabled', false);
80
+ $(".daRow:eq(0)").hide();
81
+ });
82
+ // Attribute type selection
83
+ $(document).on('change', '.attr_type', function () {
84
+ var type = $(this).val(), row = $(this).closest('tr');
85
+ row.find('.wf_attr').prop('required',false);
86
+ row.find('.wf_default').prop('required',false);
87
+ if (type == 'pattern') {
88
+ row.find('.wf_attr').hide();
89
+ row.find('.wf_attr').val('');
90
+ row.find('.wf_default').show();
91
+ //$(this).closest('tr').find('.wf_default').prop('required',true);
92
+ } else {
93
+ //$(this).closest('tr').find('.wf_attr').prop('required',true);
94
+ row.find('.wf_attr').show();
95
+ row.find('.wf_default').hide();
96
+ row.find('.wf_default').val('');
97
+ }
98
+ });
99
+ // Attribute type selection for dynamic attribute
100
+ $(document).on('change', '.dType', function () {
101
+ var type = $(this).val(), row = $(this).closest('tr');
102
+ if (type == 'pattern') {
103
+ row.find('.value_attribute').hide();
104
+ row.find('.value_pattern').show();
105
+ } else if (type == 'attribute') {
106
+ row.find('.value_attribute').show();
107
+ row.find('.value_pattern').hide();
108
+ } else if (type == 'remove') {
109
+ row.find('.value_attribute').hide();
110
+ row.find('.value_pattern').hide();
111
+ }
112
+ });
113
+ // Generate Feed Table Row Delete
114
+ $(document).on('click', '.delRow', function (event) {
115
+ $(this).closest('tr').remove();
116
+ });
117
+ //Expand output type
118
+ $(document).on('click', '.expandType', function () {
119
+ var row = $(this).closest('tr');
120
+ $('.outputType').each(function (index, element) {
121
+ //do stuff to each individually.
122
+ $(this).attr('name', "output_type[" + index + "][]");
123
+ });
124
+ row.find('.outputType').attr('multiple', 'multiple');
125
+ row.find('.contractType').show();
126
+ $(this).hide();
127
+ });
128
+ //Contract output type
129
+ $(document).on('click', '.contractType', function () {
130
+ var row = $(this).closest('tr');
131
+ $('.outputType').each(function (index, element) {
132
+ //do stuff to each individually.
133
+ $(this).attr('name', "output_type[" + index + "][]");
134
+ });
135
+ row.find('.outputType').removeAttr('multiple');
136
+ row.find('.expandType').show();
137
+ $(this).hide();
138
+ });
139
+ // Generate Feed Form Submit
140
+ $(".generateFeed").validate();
141
+ $(document).on('submit', '#generateFeed', function (event) {
142
+ $(".makeFeedResponse").html("<b style='color: darkblue;'><i class='dashicons dashicons-sos wpf_sos'></i> Processing...</b>");
143
+ //event.preventDefault();
144
+ // Feed Generating form validation
145
+ $(this).validate();
146
+ if ($(this).valid()) {}
147
+ });
148
+ // Update Feed Form Submit
149
+ $(".updatefeed").validate();
150
+ $(document).on('submit', '#updatefeed', function (event) {
151
+ $(".makeFeedResponse").html("<b style='color: darkblue;'><i class='dashicons dashicons-sos wpf_sos'></i> Processing...</b>");
152
+ //event.preventDefault();
153
+ // Feed Generating form validation
154
+ $(this).validate();
155
+ if ($(this).valid()) {}
156
+ });
157
+ // helper functions
158
+ var helper = {
159
+ in_array: function( needle, haystack ) {
160
+ try {
161
+ return haystack.indexOf( needle ) !== -1;
162
+ } catch( e ) {
163
+ return false;
164
+ }
165
+ },
166
+ selectize_render_item: function( data, escape ) {
167
+ return '<div class="item webappick_selector">' + escape(data.text) + '</div>';
168
+ },
169
+ };
170
+ // Feed Editor Table
171
+ var feedEditor = {
172
+ init: function(){
173
+ // Initialize Table Sorting
174
+ $('.sorted_table').sortablesd({
175
+ containerSelector: 'table',
176
+ itemPath: '> tbody',
177
+ itemSelector: 'tr',
178
+ handle: 'i.wf_sortedtable',
179
+ placeholder: '<tr class="placeholder"><td colspan="100"></td></tr>',
180
+ });
181
+ var $glCat = $('#googleTaxonomyId');
182
+ if( $glCat.length ) {
183
+ $glCat.selectize({
184
+ render: {
185
+ item: helper.selectize_render_item,
186
+ }
187
+ });
188
+ }
189
+ },
190
+ };
191
+ feedEditor.init();
192
+ // Get Merchant View
193
+ $("#provider").on('change', function ( event ) {
194
+ event.preventDefault();
195
+ var merchant = $(this).val(), feedType = $("#feedType"), feedForm = $("#providerPage"),
196
+ marchants = ["fruugo", "fruugo.au", "vergelijk_comparer", "spartoo.fi", "avantlink"];
197
+ if( helper.in_array( merchant, marchants ) ) feedType.val("csv");
198
+ else feedType.val("");
199
+ feedType.trigger('change');
200
+ feedForm.html("<h3>Loading...</h3>");
201
+ // Get FeedForm For Selected Provider/Merchant
202
+ $.post( opts.wpf_ajax_url, { _ajax_nonce: opts.nonce, action: "get_feed_merchant", merchant: merchant }, function (data) {
203
+ feedForm.html(data); // insert server response
204
+ feedEditor.init();
205
+ });
206
+ });
207
+ // Feed Active and Inactive status change via ajax
208
+ $('.woo_feed_status_input').on('change',function(){
209
+ var $feedName = $(this).val(), counter = ( $(this)[0].checked ) ? 1 : 0;
210
+ $.post( opts.wpf_ajax_url, { _ajax_nonce: opts.nonce, action: "update_feed_status", feedName: $feedName, status: counter }, function (data) {
211
+ } );
212
+ });
213
+ // Adding for Copy-to-Clipboard functionality in the settings page
214
+ $("#woo_feed_settings_error_copy_clipboard_button").on('click', function() {
215
+ $('#woo_feed_settings_error_report').select();
216
+ document.execCommand('copy');
217
+ if (window.getSelection) {window.getSelection().removeAllRanges();}
218
+ else if (document.selection) {document.selection.empty();}
219
+ });
220
+ });
221
+ // Plugin deactivation pop up
222
+ $(function() {
223
+ var modal = $( '#wpf_deactive_plugin-modal' ), deactivateLink = '';
224
+ $( '#the-list' ).on('click', 'a.wpf-deactivate-link', function(e) {
225
+ e.preventDefault();
226
+ modal.addClass('modal-active');
227
+ deactivateLink = $(this).attr('href');
228
+ modal.find('a.dont-bother-me').attr('href', deactivateLink).css('float', 'left');
229
+ });
230
+ modal
231
+ .on('click', 'button.button-primary', function(e) {
232
+ e.preventDefault();
233
+ modal.removeClass('modal-active');
234
+ }).on('click', 'input[type="radio"]', function () {
235
+ var parent = $(this).parents('li:first');
236
+ modal.find('.reason-input').remove();
237
+ var inputType = parent.data('type'),
238
+ inputPlaceholder = parent.data('placeholder'),
239
+ reasonInputHtml = '<div class="reason-input">' + ( ( 'text' === inputType ) ? '<input type="text" size="40" />' : '<textarea rows="5" cols="45"></textarea>' ) + '</div>';
240
+ if ( inputType !== '' ) {
241
+ parent.append( $(reasonInputHtml) );
242
+ parent.find('input, textarea').attr('placeholder', inputPlaceholder).focus();
243
+ }
244
+ }).on('click', 'button.button-secondary', function(e) {
245
+ e.preventDefault();
246
+ var button = $(this);
247
+ if ( button.hasClass('disabled') ) return;
248
+ var $radio = $( 'input[type="radio"]:checked', modal ),
249
+ $selected_reason = $radio.parents('li:first'),
250
+ $input = $selected_reason.find('textarea, input[type="text"]');
251
+ $.ajax({
252
+ url: ajaxurl,
253
+ type: 'POST',
254
+ data: {
255
+ action: 'woo-feed-submit-uninstall-reason',
256
+ reason_id: ( 0 === $radio.length ) ? 'none' : $radio.val(),
257
+ reason_info: ( 0 !== $input.length ) ? $input.val().trim() : ''
258
+ },
259
+ beforeSend: function() {
260
+ button.addClass('disabled');
261
+ button.text('Processing...');
262
+ },
263
+ complete: function() {
264
+ window.location.href = deactivateLink;
265
+ },
266
+ error:function(data){}
267
+ });
268
+ }).on('click', '.dont-bother-me', function(e) {
269
+ e.preventDefault();
270
+ var button = $(this);
271
+ if ( button.hasClass('disabled') ) return;
272
+ $.ajax({
273
+ url: ajaxurl,
274
+ type: 'POST',
275
+ data: {
276
+ action: 'woo-feed-submit-uninstall-reason',
277
+ reason_id: 'no-comment',
278
+ reason_info: 'I rather wouldn\'t say'
279
+ },
280
+ beforeSend: function() {
281
+ button.addClass("disabled");
282
+ },
283
+ complete: function() {
284
+ window.location.href = deactivateLink;
285
+ }
286
+ });
287
+ });
288
+ });
289
+ //Checking whether php ssh2 extension is added or not
290
+ $(document).on('change', '.ftporsftp', function () {
291
+ var server = $(this).val();
292
+ if (server == 'sftp') {
293
+ $('.ssh2_status').show();
294
+ $('.ssh2_status').css('color','dodgerblue');
295
+ $('.ssh2_status').text('Wait! Checking Extensions ...');
296
+ $.ajax({
297
+ url: opts.wpf_ajax_url,
298
+ type: 'post',
299
+ data: {
300
+ _ajax_nonce: opts.nonce,
301
+ action: "get_ssh2_status",
302
+ server: server
303
+ },
304
+ success: function (response) {
305
+ if (response.success) {
306
+ if(response.data == 'exists') {
307
+ $('.ssh2_status').hide();
308
+ } else {
309
+ $('.ssh2_status').show();
310
+ $('.ssh2_status').css('color','red');
311
+ $('.ssh2_status').text('Warning! Enable PHP ssh2 extension to use SFTP. Contact your server administrator.');
312
+ }
313
+ }
314
+ }
315
+ });
316
+ }else{
317
+ $('.ssh2_status').hide();
318
+ }
319
+ });
320
+ $(document).on('click', '.woo-feed-review-notice ul li a', function (e) {
321
+ e.preventDefault();
322
+ let notice = $(this).attr('val');
323
+ if(notice=="given"){
324
+ window.open('https://wordpress.org/support/plugin/webappick-product-feed-for-woocommerce/reviews/?rate=5#new-post','_blank');
325
+ }
326
+ $( ".woo-feed-review-notice" ).slideUp( 200, "linear");
327
+ $.ajax({
328
+ url: opts.wpf_ajax_url,
329
+ type: 'post',
330
+ data: { _ajax_nonce: opts.nonce, action: "woo_feed_save_review_notice", notice: notice },
331
+ success: function (response) {}
332
+ });
333
+ });
334
+ $(document).on('click', '.woo-feed-wpml-notice .notice-dismiss', function (e) {
335
+ e.preventDefault();
336
+ $.ajax({
337
+ url: opts.wpf_ajax_url,
338
+ type: 'post',
339
+ data: { _ajax_nonce: opts.nonce, action: "woo_feed_save_wpml_notice", },
340
+ success: function (response) {
341
+ if (response.success) {
342
+ $( ".woo-feed-wpml-notice" ).slideUp( 200, "linear");
343
+ }
344
+ }
345
+ });
346
+ });
347
+ }( jQuery, window, document, wpf_ajax_obj ));
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/js/wp-selectize.js CHANGED
@@ -1,14 +1,9 @@
1
- jQuery(document).ready(function($) {
2
-
3
- var options = {
4
- create: true
5
- };
6
- $('.options-general-php select').not('#WPLANG').selectize(options);
7
-
8
- $('.media-toolbar select').not('#WPLANG').selectize(options);
9
- $('.wrap .form-table select').not('#WPLANG').selectize(options);
10
- $('.wrap .actions select').not('#WPLANG').selectize(options);
11
- $('#customize-theme-controls select').not('#WPLANG').selectize(options);
12
- $('#posts-filter .filter-items select').not('#WPLANG').selectize(options);
13
-
14
- });
1
+ jQuery(document).ready(function($) {
2
+ var options = { create: true };
3
+ $('.options-general-php select').not('#WPLANG').selectize(options);
4
+ $('.media-toolbar select').not('#WPLANG').selectize(options);
5
+ $('.wrap .form-table select').not('#WPLANG').selectize(options);
6
+ $('.wrap .actions select').not('#WPLANG').selectize(options);
7
+ $('#customize-theme-controls select').not('#WPLANG').selectize(options);
8
+ $('#posts-filter .filter-items select').not('#WPLANG').selectize(options);
9
+ });
 
 
 
 
 
admin/partials/templates/facebook_add-feed.php CHANGED
@@ -1,704 +1,707 @@
1
- <ul class="wf_tabs">
2
- <li>
3
- <input type="radio" name="wf_tabs" id="tab1" checked/>
4
- <label class="wf-tab-name" for="tab1"><?php echo _e('Feed Config', 'woo-feed'); ?></label>
5
-
6
- <div id="wf-tab-content1" class="wf-tab-content">
7
- <table class="table tree widefat fixed sorted_table mtable" width="100%" id="table-1">
8
- <thead>
9
- <tr>
10
- <th></th>
11
- <th><?php echo ucfirst($provider); ?> <?php echo _e('Attributes', 'woo-feed'); ?></th>
12
- <th><?php echo _e('Prefix', 'woo-feed'); ?></th>
13
- <th><?php echo _e('Type', 'woo-feed'); ?></th>
14
- <th><?php echo _e('Value', 'woo-feed'); ?></th>
15
- <th><?php echo _e('Suffix', 'woo-feed'); ?></th>
16
- <th><?php echo _e('Output Type', 'woo-feed'); ?></th>
17
- <th><?php echo _e('Output Limit', 'woo-feed'); ?></th>
18
- <th></th>
19
- </tr>
20
- </thead>
21
- <tbody>
22
- <tr>
23
- <td>
24
- <i class="wf_sortedtable dashicons dashicons-menu"></i>
25
- </td>
26
- <td>
27
- <select name="mattributes[]" required class="wf_mattributes">
28
- <?php echo $dropDown->googleAttributesDropdown('id'); ?>
29
- </select>
30
- </td>
31
- <td>
32
- <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
33
- </td>
34
- <td>
35
- <select name="type[]" class="attr_type wfnoempty">
36
- <option value="attribute"> <?php echo _e('Attribute', 'woo-feed'); ?></option>
37
- <option value="pattern"> <?php echo _e('Pattern', 'woo-feed'); ?></option>
38
- </select>
39
- </td>
40
- <td>
41
- <select name="attributes[]" class="wf_attr wf_attributes">
42
- <?php echo $product->attributeDropdown('id'); ?>
43
- </select>
44
- <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
45
- style=" display: none;"/>
46
- </td>
47
- <td>
48
- <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
49
- </td>
50
- <td>
51
- <select name="output_type[][]" class="outputType wfnoempty">
52
- <option value="1">Default</option>
53
- <option value="2">Strip Tags</option>
54
- <option value="3">UTF-8 Encode</option>
55
- <option value="4">htmlentities</option>
56
- <option value="5">Integer</option>
57
- <option value="6">Price</option>
58
- <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
59
- <option value="8">CDATA</option>
60
- </select>
61
- <i class="dashicons dashicons-editor-expand expandType"></i>
62
- <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
63
- </td>
64
- <td>
65
- <input type="text" name="limit[]" class="wf_ps"/>
66
- </td>
67
- <td>
68
- <i class="delRow dashicons dashicons-trash"></i>
69
- </td>
70
- </tr>
71
- <tr>
72
- <td>
73
- <i class="wf_sortedtable dashicons dashicons-menu"></i>
74
- </td>
75
- <td>
76
- <select name="mattributes[]" required class="wf_mattributes">
77
- <?php echo $dropDown->googleAttributesDropdown('title'); ?>
78
- </select>
79
- </td>
80
- <td>
81
- <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
82
- </td>
83
- <td>
84
- <select name="type[]" class="attr_type wfnoempty">
85
- <option value="attribute"> <?php echo _e('Attribute', 'woo-feed'); ?></option>
86
- <option value="pattern"> <?php echo _e('Pattern', 'woo-feed'); ?></option>
87
- </select>
88
- </td>
89
- <td>
90
- <select name="attributes[]" class="wf_attr wf_attributes">
91
- <?php echo $product->attributeDropdown('title'); ?>
92
- </select>
93
- <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
94
- style=" display: none;"/>
95
- </td>
96
- <td>
97
- <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
98
- </td>
99
- <td>
100
- <select name="output_type[][]" class="outputType wfnoempty">
101
- <option value="1">Default</option>
102
- <option value="2">Strip Tags</option>
103
- <option value="3">UTF-8 Encode</option>
104
- <option value="4">htmlentities</option>
105
- <option value="5">Integer</option>
106
- <option value="6">Price</option>
107
- <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
108
- <option value="8">CDATA</option>
109
- </select>
110
- <i class="dashicons dashicons-editor-expand expandType"></i>
111
- <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
112
- </td>
113
- <td>
114
- <input type="text" name="limit[]" class="wf_ps"/>
115
- </td>
116
- <td>
117
- <i class="delRow dashicons dashicons-trash"></i>
118
- </td>
119
- </tr>
120
- <tr>
121
- <td>
122
- <i class="wf_sortedtable dashicons dashicons-menu"></i>
123
- </td>
124
- <td>
125
- <select name="mattributes[]" required class="wf_mattributes">
126
- <?php echo $dropDown->googleAttributesDropdown('description'); ?>
127
- </select>
128
- </td>
129
- <td>
130
- <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
131
- </td>
132
- <td>
133
- <select name="type[]" class="attr_type wfnoempty">
134
- <option value="attribute"> <?php echo _e('Attribute', 'woo-feed'); ?></option>
135
- <option value="pattern"> <?php echo _e('Pattern', 'woo-feed'); ?></option>
136
- </select>
137
- </td>
138
- <td>
139
- <select name="attributes[]" class="wf_attr wf_attributes">
140
- <?php echo $product->attributeDropdown('description'); ?>
141
- </select>
142
- <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
143
- style=" display: none;"/>
144
- </td>
145
- <td>
146
- <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
147
- </td>
148
- <td>
149
- <select name="output_type[][]" class="outputType wfnoempty">
150
- <option value="1">Default</option>
151
- <option selected value="2">Strip Tags</option>
152
- <option value="3">UTF-8 Encode</option>
153
- <option value="4">htmlentities</option>
154
- <option value="5">Integer</option>
155
- <option value="6">Price</option>
156
- <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
157
- <option value="8">CDATA</option>
158
- </select>
159
- <i class="dashicons dashicons-editor-expand expandType"></i>
160
- <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
161
- </td>
162
- <td>
163
- <input type="text" name="limit[]" class="wf_ps" value="5000"/>
164
- </td>
165
- <td>
166
- <i class="delRow dashicons dashicons-trash"></i>
167
- </td>
168
- </tr>
169
- <tr>
170
- <td>
171
- <i class="wf_sortedtable dashicons dashicons-menu"></i>
172
- </td>
173
- <td>
174
- <select name="mattributes[]" required class="wf_mattributes">
175
- <?php echo $dropDown->googleAttributesDropdown('item_group_id'); ?>
176
- </select>
177
- </td>
178
- <td>
179
- <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
180
- </td>
181
- <td>
182
- <select name="type[]" class="attr_type wfnoempty">
183
- <option value="attribute"> <?php echo _e('Attribute', 'woo-feed'); ?></option>
184
- <option value="pattern"> <?php echo _e('Pattern', 'woo-feed'); ?></option>
185
- </select>
186
- </td>
187
- <td>
188
- <select name="attributes[]" class="wf_attr wf_attributes">
189
- <?php echo $product->attributeDropdown('item_group_id'); ?>
190
- </select>
191
- <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
192
- style=" display: none;"/>
193
- </td>
194
- <td>
195
- <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
196
- </td>
197
- <td>
198
- <select name="output_type[][]" class="outputType wfnoempty">
199
- <option value="1">Default</option>
200
- <option value="2">Strip Tags</option>
201
- <option value="3">UTF-8 Encode</option>
202
- <option value="4">htmlentities</option>
203
- <option value="5">Integer</option>
204
- <option value="6">Price</option>
205
- <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
206
- <option value="8">CDATA</option>
207
- </select>
208
- <i class="dashicons dashicons-editor-expand expandType"></i>
209
- <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
210
- </td>
211
- <td>
212
- <input type="text" name="limit[]" class="wf_ps"/>
213
- </td>
214
- <td>
215
- <i class="delRow dashicons dashicons-trash"></i>
216
- </td>
217
- </tr>
218
- <tr>
219
- <td>
220
- <i class="wf_sortedtable dashicons dashicons-menu"></i>
221
- </td>
222
- <td>
223
- <select name="mattributes[]" required class="wf_mattributes">
224
- <?php echo $dropDown->googleAttributesDropdown('link'); ?>
225
- </select>
226
- </td>
227
- <td>
228
- <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
229
- </td>
230
- <td>
231
- <select name="type[]" class="attr_type wfnoempty">
232
- <option value="attribute"> <?php echo _e('Attribute', 'woo-feed'); ?></option>
233
- <option value="pattern"> <?php echo _e('Pattern', 'woo-feed'); ?></option>
234
- </select>
235
- </td>
236
- <td>
237
- <select name="attributes[]" class="wf_attr wf_attributes">
238
- <?php echo $product->attributeDropdown('link'); ?>
239
- </select>
240
- <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
241
- style=" display: none;"/>
242
- </td>
243
- <td>
244
- <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
245
- </td>
246
- <td>
247
- <select name="output_type[][]" class="outputType wfnoempty">
248
- <option value="1">Default</option>
249
- <option value="2">Strip Tags</option>
250
- <option value="3">UTF-8 Encode</option>
251
- <option value="4">htmlentities</option>
252
- <option value="5">Integer</option>
253
- <option value="6">Price</option>
254
- <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
255
- <option value="8">CDATA</option>
256
- </select>
257
- <i class="dashicons dashicons-editor-expand expandType"></i>
258
- <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
259
- </td>
260
- <td>
261
- <input type="text" name="limit[]" class="wf_ps"/>
262
- </td>
263
- <td>
264
- <i class="delRow dashicons dashicons-trash"></i>
265
- </td>
266
- </tr>
267
- <tr>
268
- <td>
269
- <i class="wf_sortedtable dashicons dashicons-menu"></i>
270
- </td>
271
- <td>
272
- <select name="mattributes[]" required class="wf_mattributes">
273
- <?php echo $dropDown->googleAttributesDropdown('product_type'); ?>
274
- </select>
275
- </td>
276
- <td>
277
- <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
278
- </td>
279
- <td>
280
- <select name="type[]" class="attr_type wfnoempty">
281
- <option value="attribute"> <?php echo _e('Attribute', 'woo-feed'); ?></option>
282
- <option value="pattern"> <?php echo _e('Pattern', 'woo-feed'); ?></option>
283
- </select>
284
- </td>
285
- <td>
286
- <select name="attributes[]" class="wf_attr wf_attributes">
287
- <?php echo $product->attributeDropdown('product_type'); ?>
288
- </select>
289
- <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
290
- style=" display: none;"/>
291
- </td>
292
- <td>
293
- <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
294
- </td>
295
- <td>
296
- <select name="output_type[][]" class="outputType wfnoempty">
297
- <option value="1">Default</option>
298
- <option value="2">Strip Tags</option>
299
- <option value="3">UTF-8 Encode</option>
300
- <option value="4">htmlentities</option>
301
- <option value="5">Integer</option>
302
- <option value="6">Price</option>
303
- <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
304
- <option value="8">CDATA</option>
305
- </select>
306
- <i class="dashicons dashicons-editor-expand expandType"></i>
307
- <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
308
- </td>
309
- <td>
310
- <input type="text" name="limit[]" class="wf_ps"/>
311
- </td>
312
- <td>
313
- <i class="delRow dashicons dashicons-trash"></i>
314
- </td>
315
- </tr>
316
- <tr>
317
- <td>
318
- <i class="wf_sortedtable dashicons dashicons-menu"></i>
319
- </td>
320
- <td>
321
- <select name="mattributes[]" required class="wf_mattributes">
322
- <?php echo $dropDown->googleAttributesDropdown('current_category'); ?>
323
- </select>
324
- </td>
325
- <td>
326
- <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
327
- </td>
328
- <td>
329
- <select name="type[]" class="attr_type wfnoempty">
330
- <option value="attribute"> <?php echo _e('Attribute', 'woo-feed'); ?></option>
331
- <option value="pattern" selected> <?php echo _e('Pattern', 'woo-feed'); ?></option>
332
- </select>
333
- </td>
334
- <td>
335
- <select name="attributes[]" style=" display: none;" class="wf_attr wf_attributes">
336
- <?php echo $product->attributeDropdown(); ?>
337
- </select>
338
- <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"/>
339
- <br><span style="font-size: x-small;"><a href="http://webappick.helpscoutdocs.com/article/19-how-to-map-store-category-with-merchant-category" target="_blank">Learn More..</a></span>
340
- </td>
341
- <td>
342
- <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
343
- </td>
344
- <td>
345
- <select name="output_type[][]" class="outputType wfnoempty">
346
- <option value="1">Default</option>
347
- <option value="2">Strip Tags</option>
348
- <option value="3">UTF-8 Encode</option>
349
- <option value="4">htmlentities</option>
350
- <option value="5">Integer</option>
351
- <option value="6">Price</option>
352
- <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
353
- <option value="8">CDATA</option>
354
- </select>
355
- <i class="dashicons dashicons-editor-expand expandType"></i>
356
- <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
357
- </td>
358
- <td>
359
- <input type="text" name="limit[]" class="wf_ps"/>
360
- </td>
361
- <td>
362
- <i class="delRow dashicons dashicons-trash"></i>
363
- </td>
364
- </tr>
365
- <tr>
366
- <td>
367
- <i class="wf_sortedtable dashicons dashicons-menu"></i>
368
- </td>
369
- <td>
370
- <select name="mattributes[]" required class="wf_mattributes">
371
- <?php echo $dropDown->googleAttributesDropdown('image'); ?>
372
- </select>
373
- </td>
374
- <td>
375
- <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
376
- </td>
377
- <td>
378
- <select name="type[]" class="attr_type wfnoempty">
379
- <option value="attribute"> <?php echo _e('Attribute', 'woo-feed'); ?></option>
380
- <option value="pattern"> <?php echo _e('Pattern', 'woo-feed'); ?></option>
381
- </select>
382
- </td>
383
- <td>
384
- <select name="attributes[]" class="wf_attr wf_attributes">
385
- <?php echo $product->attributeDropdown('image'); ?>
386
- </select>
387
- <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
388
- style=" display: none;"/>
389
- </td>
390
- <td>
391
- <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
392
- </td>
393
- <td>
394
- <select name="output_type[][]" class="outputType wfnoempty">
395
- <option value="1">Default</option>
396
- <option value="2">Strip Tags</option>
397
- <option value="3">UTF-8 Encode</option>
398
- <option value="4">htmlentities</option>
399
- <option value="5">Integer</option>
400
- <option value="6">Price</option>
401
- <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
402
- <option value="8">CDATA</option>
403
- </select>
404
- <i class="dashicons dashicons-editor-expand expandType"></i>
405
- <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
406
- </td>
407
- <td>
408
- <input type="text" name="limit[]" class="wf_ps"/>
409
- </td>
410
- <td>
411
- <i class="delRow dashicons dashicons-trash"></i>
412
- </td>
413
- </tr>
414
- <tr>
415
- <td>
416
- <i class="wf_sortedtable dashicons dashicons-menu"></i>
417
- </td>
418
- <td>
419
- <select name="mattributes[]" required class="wf_mattributes">
420
- <?php echo $dropDown->googleAttributesDropdown('condition'); ?>
421
- </select>
422
- </td>
423
- <td>
424
- <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
425
- </td>
426
- <td>
427
- <select name="type[]" class="attr_type wfnoempty">
428
- <option value="attribute"><?php echo _e('Attribute', 'woo-feed'); ?></option>
429
- <option value="pattern"><?php echo _e('Pattern', 'woo-feed'); ?></option>
430
- </select>
431
- </td>
432
- <td>
433
- <select name="attributes[]" class="wf_attr wf_attributes">
434
- <?php echo $product->attributeDropdown('condition'); ?>
435
- </select>
436
- <input type="text" style=" display: none;" name="default[]" autocomplete="off" class="wf_default wf_attributes"
437
- />
438
- </td>
439
- <td>
440
- <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
441
- </td>
442
- <td>
443
- <select name="output_type[][]" class="outputType wfnoempty">
444
- <option value="1">Default</option>
445
- <option value="2">Strip Tags</option>
446
- <option value="3">UTF-8 Encode</option>
447
- <option value="4">htmlentities</option>
448
- <option value="5">Integer</option>
449
- <option value="6">Price</option>
450
- <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
451
- <option value="8">CDATA</option>
452
- </select>
453
- <i class="dashicons dashicons-editor-expand expandType"></i>
454
- <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
455
- </td>
456
- <td>
457
- <input type="text" name="limit[]" class="wf_ps"/>
458
- </td>
459
- <td>
460
- <i class="delRow dashicons dashicons-trash"></i>
461
- </td>
462
- </tr>
463
- <tr>
464
- <td>
465
- <i class="wf_sortedtable dashicons dashicons-menu"></i>
466
- </td>
467
- <td>
468
- <select name="mattributes[]" required class="wf_mattributes">
469
- <?php echo $dropDown->googleAttributesDropdown('availability'); ?>
470
- </select>
471
- </td>
472
- <td>
473
- <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
474
- </td>
475
- <td>
476
- <select name="type[]" class="attr_type wfnoempty">
477
- <option value="attribute"> <?php echo _e('Attribute', 'woo-feed'); ?></option>
478
- <option value="pattern"> <?php echo _e('Pattern', 'woo-feed'); ?></option>
479
- </select>
480
- </td>
481
- <td>
482
- <select name="attributes[]" class="wf_attr wf_attributes">
483
- <?php echo $product->attributeDropdown('availability'); ?>
484
- </select>
485
- <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
486
- style=" display: none;"/>
487
- </td>
488
- <td>
489
- <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
490
- </td>
491
- <td>
492
- <select name="output_type[][]" class="outputType wfnoempty">
493
- <option value="1">Default</option>
494
- <option value="2">Strip Tags</option>
495
- <option value="3">UTF-8 Encode</option>
496
- <option value="4">htmlentities</option>
497
- <option value="5">Integer</option>
498
- <option value="6">Price</option>
499
- <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
500
- <option value="8">CDATA</option>
501
- </select>
502
- <i class="dashicons dashicons-editor-expand expandType"></i>
503
- <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
504
- </td>
505
- <td>
506
- <input type="text" name="limit[]" class="wf_ps"/>
507
- </td>
508
- <td>
509
- <i class="delRow dashicons dashicons-trash"></i>
510
- </td>
511
- </tr>
512
- <tr>
513
- <td>
514
- <i class="wf_sortedtable dashicons dashicons-menu"></i>
515
- </td>
516
- <td>
517
- <select name="mattributes[]" required class="wf_mattributes">
518
- <?php echo $dropDown->googleAttributesDropdown('price'); ?>
519
- </select>
520
- </td>
521
- <td>
522
- <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
523
- </td>
524
- <td>
525
- <select name="type[]" class="attr_type wfnoempty">
526
- <option value="attribute"> <?php echo _e('Attribute', 'woo-feed'); ?></option>
527
- <option value="pattern"> <?php echo _e('Pattern', 'woo-feed'); ?></option>
528
- </select>
529
- </td>
530
- <td>
531
- <select name="attributes[]" class="wf_attr wf_attributes">
532
- <?php echo $product->attributeDropdown('price'); ?>
533
- </select>
534
- <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
535
- style=" display: none;"/>
536
- </td>
537
- <td>
538
- <input type="text" name="suffix[]" value="<?php echo get_woocommerce_currency();?>" autocomplete="off" class="wf_ps"/>
539
- </td>
540
- <td>
541
- <select name="output_type[][]" class="outputType wfnoempty">
542
- <option value="1">Default</option>
543
- <option value="2">Strip Tags</option>
544
- <option value="3">UTF-8 Encode</option>
545
- <option value="4">htmlentities</option>
546
- <option value="5">Integer</option>
547
- <option selected value="6">Price</option>
548
- <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
549
- <option value="8">CDATA</option>
550
- </select>
551
- <i class="dashicons dashicons-editor-expand expandType"></i>
552
- <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
553
- </td>
554
- <td>
555
- <input type="text" name="limit[]" class="wf_ps"/>
556
- </td>
557
- <td>
558
- <i class="delRow dashicons dashicons-trash"></i>
559
- </td>
560
- </tr>
561
- <tr>
562
- <td>
563
- <i class="wf_sortedtable dashicons dashicons-menu"></i>
564
- </td>
565
- <td>
566
- <select name="mattributes[]" required class="wf_mattributes">
567
- <?php echo $dropDown->googleAttributesDropdown('sku'); ?>
568
- </select>
569
- </td>
570
- <td>
571
- <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
572
- </td>
573
- <td>
574
- <select name="type[]" class="attr_type wfnoempty">
575
- <option value="attribute"> <?php echo _e('Attribute', 'woo-feed'); ?></option>
576
- <option value="pattern"> <?php echo _e('Pattern', 'woo-feed'); ?></option>
577
- </select>
578
- </td>
579
- <td>
580
- <select name="attributes[]" class="wf_attr wf_attributes">
581
- <?php echo $product->attributeDropdown('sku'); ?>
582
- </select>
583
- <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
584
- style=" display: none;"/>
585
- </td>
586
- <td>
587
- <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
588
- </td>
589
- <td>
590
- <select name="output_type[][]" class="outputType wfnoempty">
591
- <option value="1">Default</option>
592
- <option value="2">Strip Tags</option>
593
- <option value="3">UTF-8 Encode</option>
594
- <option value="4">htmlentities</option>
595
- <option value="5">Integer</option>
596
- <option value="6">Price</option>
597
- <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
598
- <option value="8">CDATA</option>
599
- </select>
600
- <i class="dashicons dashicons-editor-expand expandType"></i>
601
- <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
602
- </td>
603
- <td>
604
- <input type="text" name="limit[]" class="wf_ps"/>
605
- </td>
606
- <td>
607
- <i class="delRow dashicons dashicons-trash"></i>
608
- </td>
609
- </tr>
610
- <tr>
611
- <td>
612
- <i class="wf_sortedtable dashicons dashicons-menu"></i>
613
- </td>
614
- <td>
615
- <select name="mattributes[]" required class="wf_mattributes">
616
- <?php echo $dropDown->googleAttributesDropdown('brand'); ?>
617
- </select>
618
- </td>
619
- <td>
620
- <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
621
- </td>
622
- <td>
623
- <select name="type[]" class="attr_type wfnoempty">
624
- <option value="attribute"><?php echo _e('Attribute', 'woo-feed'); ?></option>
625
- <option value="pattern" selected><?php echo _e('Pattern', 'woo-feed'); ?></option>
626
- </select>
627
- </td>
628
- <td>
629
- <select name="attributes[]" style=" display: none;" class="wf_attr wf_attributes">
630
- <?php echo $product->attributeDropdown(); ?>
631
- </select>
632
- <?php
633
- $url = site_url();
634
- $WABrand="";
635
- // Remove all illegal characters from a url
636
- $url = filter_var($url, FILTER_SANITIZE_URL);
637
- // Validate url
638
- if (filter_var($url, FILTER_VALIDATE_URL) !== false) {
639
- $url=parse_url($url);
640
- if(array_key_exists('host',$url)){
641
- $arr = explode('.',$url['host']);
642
- $WABrand = $arr[count($arr) - 2];
643
- }
644
- }
645
-
646
- ?>
647
- <input type="text" name="default[]" value="<?php echo $WABrand; ?>" autocomplete="off" class="wf_default wf_attributes"/>
648
- </td>
649
- <td>
650
- <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
651
- </td>
652
- <td>
653
- <select name="output_type[][]" class="outputType wfnoempty">
654
- <option value="1">Default</option>
655
- <option value="2">Strip Tags</option>
656
- <option value="3">UTF-8 Encode</option>
657
- <option value="4">htmlentities</option>
658
- <option value="5">Integer</option>
659
- <option value="6">Price</option>
660
- <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
661
- <option value="8">CDATA</option>
662
- </select>
663
- <i class="dashicons dashicons-editor-expand expandType"></i>
664
- <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
665
- </td>
666
- <td>
667
- <input type="text" name="limit[]" class="wf_ps"/>
668
- </td>
669
- <td>
670
- <i class="delRow dashicons dashicons-trash"></i>
671
- </td>
672
- </tr>
673
- </tbody>
674
- <tfoot>
675
- <tr>
676
- <td>
677
- <button type="button" class="button-small button-primary" id="wf_newRow">
678
- <?php echo _e('Add New Row', 'woo-feed'); ?>
679
- </button>
680
- </td>
681
- <td colspan="8">
682
-
683
- </td>
684
- </tr>
685
- </tfoot>
686
- </table>
687
- <table class=" widefat fixed">
688
- <tr>
689
- <td align="left" class="">
690
- <div class="makeFeedResponse"></div>
691
- <div class="makeFeedComplete"></div>
692
- </td>
693
- <td align="right">
694
- <button type="submit" class="wfbtn">
695
- <?php echo _e('Save & Generate Feed', 'woo-feed'); ?>
696
- </button>
697
- </td>
698
- </tr>
699
- </table>
700
- </div>
701
- </li>
702
- <?php include plugin_dir_path(__FILE__) . "../woo-feed-ftp-sftp-template.php"; ?>
703
-
704
- </ul>
 
 
 
1
+ <ul class="wf_tabs">
2
+ <li>
3
+ <input type="radio" name="wf_tabs" id="tab1" checked/>
4
+ <label class="wf-tab-name" for="tab1"><?php echo _e('Feed Config', 'woo-feed'); ?></label>
5
+
6
+ <div id="wf-tab-content1" class="wf-tab-content">
7
+ <table class="table tree widefat fixed sorted_table mtable" width="100%" id="table-1">
8
+ <thead>
9
+ <tr>
10
+ <th></th>
11
+ <th><?php echo ucfirst($provider); ?> <?php echo _e('Attributes', 'woo-feed'); ?></th>
12
+ <th><?php echo _e('Prefix', 'woo-feed'); ?></th>
13
+ <th><?php echo _e('Type', 'woo-feed'); ?></th>
14
+ <th><?php echo _e('Value', 'woo-feed'); ?></th>
15
+ <th><?php echo _e('Suffix', 'woo-feed'); ?></th>
16
+ <th><?php echo _e('Output Type', 'woo-feed'); ?></th>
17
+ <th><?php echo _e('Output Limit', 'woo-feed'); ?></th>
18
+ <th></th>
19
+ </tr>
20
+ </thead>
21
+ <tbody>
22
+ <tr>
23
+ <td>
24
+ <i class="wf_sortedtable dashicons dashicons-menu"></i>
25
+ </td>
26
+ <td>
27
+ <select name="mattributes[]" required class="wf_mattributes">
28
+ <?php echo $dropDown->googleAttributesDropdown('id'); ?>
29
+ </select>
30
+ </td>
31
+ <td>
32
+ <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
33
+ </td>
34
+ <td>
35
+ <select name="type[]" class="attr_type wfnoempty">
36
+ <option value="attribute"> <?php echo _e('Attribute', 'woo-feed'); ?></option>
37
+ <option value="pattern"> <?php echo _e('Pattern', 'woo-feed'); ?></option>
38
+ </select>
39
+ </td>
40
+ <td>
41
+ <select name="attributes[]" class="wf_attr wf_attributes">
42
+ <?php echo $product->attributeDropdown('id'); ?>
43
+ </select>
44
+ <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
45
+ style=" display: none;"/>
46
+ </td>
47
+ <td>
48
+ <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
49
+ </td>
50
+ <td>
51
+ <select name="output_type[][]" class="outputType wfnoempty">
52
+ <option value="1">Default</option>
53
+ <option value="2">Strip Tags</option>
54
+ <option value="3">UTF-8 Encode</option>
55
+ <option value="4">htmlentities</option>
56
+ <option value="5">Integer</option>
57
+ <option value="6">Price</option>
58
+ <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
59
+ <option value="8">CDATA</option>
60
+ </select>
61
+ <i class="dashicons dashicons-editor-expand expandType"></i>
62
+ <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
63
+ </td>
64
+ <td>
65
+ <input type="text" name="limit[]" class="wf_ps"/>
66
+ </td>
67
+ <td>
68
+ <i class="delRow dashicons dashicons-trash"></i>
69
+ </td>
70
+ </tr>
71
+ <tr>
72
+ <td>
73
+ <i class="wf_sortedtable dashicons dashicons-menu"></i>
74
+ </td>
75
+ <td>
76
+ <select name="mattributes[]" required class="wf_mattributes">
77
+ <?php echo $dropDown->googleAttributesDropdown('title'); ?>
78
+ </select>
79
+ </td>
80
+ <td>
81
+ <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
82
+ </td>
83
+ <td>
84
+ <select name="type[]" class="attr_type wfnoempty">
85
+ <option value="attribute"> <?php echo _e('Attribute', 'woo-feed'); ?></option>
86
+ <option value="pattern"> <?php echo _e('Pattern', 'woo-feed'); ?></option>
87
+ </select>
88
+ </td>
89
+ <td>
90
+ <select name="attributes[]" class="wf_attr wf_attributes">
91
+ <?php echo $product->attributeDropdown('title'); ?>
92
+ </select>
93
+ <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
94
+ style=" display: none;"/>
95
+ </td>
96
+ <td>
97
+ <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
98
+ </td>
99
+ <td>
100
+ <select name="output_type[][]" class="outputType wfnoempty">
101
+ <option value="1">Default</option>
102
+ <option value="2">Strip Tags</option>
103
+ <option value="3">UTF-8 Encode</option>
104
+ <option value="4">htmlentities</option>
105
+ <option value="5">Integer</option>
106
+ <option value="6">Price</option>
107
+ <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
108
+ <option value="8">CDATA</option>
109
+ </select>
110
+ <i class="dashicons dashicons-editor-expand expandType"></i>
111
+ <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
112
+ </td>
113
+ <td>
114
+ <input type="text" name="limit[]" class="wf_ps"/>
115
+ </td>
116
+ <td>
117
+ <i class="delRow dashicons dashicons-trash"></i>
118
+ </td>
119
+ </tr>
120
+ <tr>
121
+ <td>
122
+ <i class="wf_sortedtable dashicons dashicons-menu"></i>
123
+ </td>
124
+ <td>
125
+ <select name="mattributes[]" required class="wf_mattributes">
126
+ <?php echo $dropDown->googleAttributesDropdown('description'); ?>
127
+ </select>
128
+ </td>
129
+ <td>
130
+ <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
131
+ </td>
132
+ <td>
133
+ <select name="type[]" class="attr_type wfnoempty">
134
+ <option value="attribute"> <?php echo _e('Attribute', 'woo-feed'); ?></option>
135
+ <option value="pattern"> <?php echo _e('Pattern', 'woo-feed'); ?></option>
136
+ </select>
137
+ </td>
138
+ <td>
139
+ <select name="attributes[]" class="wf_attr wf_attributes">
140
+ <?php echo $product->attributeDropdown('description'); ?>
141
+ </select>
142
+ <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
143
+ style=" display: none;"/>
144
+ </td>
145
+ <td>
146
+ <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
147
+ </td>
148
+ <td>
149
+ <select name="output_type[][]" class="outputType wfnoempty">
150
+ <option value="1">Default</option>
151
+ <option selected value="2">Strip Tags</option>
152
+ <option value="3">UTF-8 Encode</option>
153
+ <option value="4">htmlentities</option>
154
+ <option value="5">Integer</option>
155
+ <option value="6">Price</option>
156
+ <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
157
+ <option value="8">CDATA</option>
158
+ </select>
159
+ <i class="dashicons dashicons-editor-expand expandType"></i>
160
+ <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
161
+ </td>
162
+ <td>
163
+ <input type="text" name="limit[]" class="wf_ps" value="5000"/>
164
+ </td>
165
+ <td>
166
+ <i class="delRow dashicons dashicons-trash"></i>
167
+ </td>
168
+ </tr>
169
+ <tr>
170
+ <td>
171
+ <i class="wf_sortedtable dashicons dashicons-menu"></i>
172
+ </td>
173
+ <td>
174
+ <select name="mattributes[]" required class="wf_mattributes">
175
+ <?php echo $dropDown->googleAttributesDropdown('item_group_id'); ?>
176
+ </select>
177
+ </td>
178
+ <td>
179
+ <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
180
+ </td>
181
+ <td>
182
+ <select name="type[]" class="attr_type wfnoempty">
183
+ <option value="attribute"> <?php echo _e('Attribute', 'woo-feed'); ?></option>
184
+ <option value="pattern"> <?php echo _e('Pattern', 'woo-feed'); ?></option>
185
+ </select>
186
+ </td>
187
+ <td>
188
+ <select name="attributes[]" class="wf_attr wf_attributes">
189
+ <?php echo $product->attributeDropdown('item_group_id'); ?>
190
+ </select>
191
+ <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
192
+ style=" display: none;"/>
193
+ </td>
194
+ <td>
195
+ <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
196
+ </td>
197
+ <td>
198
+ <select name="output_type[][]" class="outputType wfnoempty">
199
+ <option value="1">Default</option>
200
+ <option value="2">Strip Tags</option>
201
+ <option value="3">UTF-8 Encode</option>
202
+ <option value="4">htmlentities</option>
203
+ <option value="5">Integer</option>
204
+ <option value="6">Price</option>
205
+ <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
206
+ <option value="8">CDATA</option>
207
+ </select>
208
+ <i class="dashicons dashicons-editor-expand expandType"></i>
209
+ <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
210
+ </td>
211
+ <td>
212
+ <input type="text" name="limit[]" class="wf_ps"/>
213
+ </td>
214
+ <td>
215
+ <i class="delRow dashicons dashicons-trash"></i>
216
+ </td>
217
+ </tr>
218
+ <tr>
219
+ <td>
220
+ <i class="wf_sortedtable dashicons dashicons-menu"></i>
221
+ </td>
222
+ <td>
223
+ <select name="mattributes[]" required class="wf_mattributes">
224
+ <?php echo $dropDown->googleAttributesDropdown('link'); ?>
225
+ </select>
226
+ </td>
227
+ <td>
228
+ <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
229
+ </td>
230
+ <td>
231
+ <select name="type[]" class="attr_type wfnoempty">
232
+ <option value="attribute"> <?php echo _e('Attribute', 'woo-feed'); ?></option>
233
+ <option value="pattern"> <?php echo _e('Pattern', 'woo-feed'); ?></option>
234
+ </select>
235
+ </td>
236
+ <td>
237
+ <select name="attributes[]" class="wf_attr wf_attributes">
238
+ <?php echo $product->attributeDropdown('link'); ?>
239
+ </select>
240
+ <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
241
+ style=" display: none;"/>
242
+ </td>
243
+ <td>
244
+ <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
245
+ </td>
246
+ <td>
247
+ <select name="output_type[][]" class="outputType wfnoempty">
248
+ <option value="1">Default</option>
249
+ <option value="2">Strip Tags</option>
250
+ <option value="3">UTF-8 Encode</option>
251
+ <option value="4">htmlentities</option>
252
+ <option value="5">Integer</option>
253
+ <option value="6">Price</option>
254
+ <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
255
+ <option value="8">CDATA</option>
256
+ </select>
257
+ <i class="dashicons dashicons-editor-expand expandType"></i>
258
+ <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
259
+ </td>
260
+ <td>
261
+ <input type="text" name="limit[]" class="wf_ps"/>
262
+ </td>
263
+ <td>
264
+ <i class="delRow dashicons dashicons-trash"></i>
265
+ </td>
266
+ </tr>
267
+ <tr>
268
+ <td>
269
+ <i class="wf_sortedtable dashicons dashicons-menu"></i>
270
+ </td>
271
+ <td>
272
+ <select name="mattributes[]" required class="wf_mattributes">
273
+ <?php echo $dropDown->googleAttributesDropdown('product_type'); ?>
274
+ </select>
275
+ </td>
276
+ <td>
277
+ <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
278
+ </td>
279
+ <td>
280
+ <select name="type[]" class="attr_type wfnoempty">
281
+ <option value="attribute"> <?php echo _e('Attribute', 'woo-feed'); ?></option>
282
+ <option value="pattern"> <?php echo _e('Pattern', 'woo-feed'); ?></option>
283
+ </select>
284
+ </td>
285
+ <td>
286
+ <select name="attributes[]" class="wf_attr wf_attributes">
287
+ <?php echo $product->attributeDropdown('product_type'); ?>
288
+ </select>
289
+ <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
290
+ style=" display: none;"/>
291
+ </td>
292
+ <td>
293
+ <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
294
+ </td>
295
+ <td>
296
+ <select name="output_type[][]" class="outputType wfnoempty">
297
+ <option value="1">Default</option>
298
+ <option value="2">Strip Tags</option>
299
+ <option value="3">UTF-8 Encode</option>
300
+ <option value="4">htmlentities</option>
301
+ <option value="5">Integer</option>
302
+ <option value="6">Price</option>
303
+ <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
304
+ <option value="8">CDATA</option>
305
+ </select>
306
+ <i class="dashicons dashicons-editor-expand expandType"></i>
307
+ <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
308
+ </td>
309
+ <td>
310
+ <input type="text" name="limit[]" class="wf_ps"/>
311
+ </td>
312
+ <td>
313
+ <i class="delRow dashicons dashicons-trash"></i>
314
+ </td>
315
+ </tr>
316
+ <tr>
317
+ <td>
318
+ <i class="wf_sortedtable dashicons dashicons-menu"></i>
319
+ </td>
320
+ <td>
321
+ <select name="mattributes[]" required class="wf_mattributes">
322
+ <?php echo $dropDown->googleAttributesDropdown('current_category'); ?>
323
+ </select>
324
+ </td>
325
+ <td>
326
+ <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
327
+ </td>
328
+ <td>
329
+ <select name="type[]" class="attr_type wfnoempty">
330
+ <option value="attribute"> <?php echo _e('Attribute', 'woo-feed'); ?></option>
331
+ <option value="pattern" selected> <?php echo _e('Pattern', 'woo-feed'); ?></option>
332
+ </select>
333
+ </td>
334
+ <td>
335
+ <select name="attributes[]" style=" display: none;" class="wf_attr wf_attributes">
336
+ <?php echo $product->attributeDropdown(); ?>
337
+ </select>
338
+ <span class="wf_default wf_attributes">
339
+ <select name="default[]" id="googleTaxonomyId">
340
+ <?php echo $dropDown->googleTaxonomy(); ?>
341
+ </select>
342
+ </span>
343
+ <span style="font-size: x-small;"><a href="http://webappick.helpscoutdocs.com/article/19-how-to-map-store-category-with-merchant-category" target="_blank">Learn More..</a></span>
344
+ </td>
345
+ <td>
346
+ <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
347
+ </td>
348
+ <td>
349
+ <select name="output_type[][]" class="outputType wfnoempty">
350
+ <option value="1">Default</option>
351
+ <option value="2">Strip Tags</option>
352
+ <option value="3">UTF-8 Encode</option>
353
+ <option value="4">htmlentities</option>
354
+ <option value="5">Integer</option>
355
+ <option value="6">Price</option>
356
+ <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
357
+ <option value="8">CDATA</option>
358
+ </select>
359
+ <i class="dashicons dashicons-editor-expand expandType"></i>
360
+ <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
361
+ </td>
362
+ <td>
363
+ <input type="text" name="limit[]" class="wf_ps"/>
364
+ </td>
365
+ <td>
366
+ <i class="delRow dashicons dashicons-trash"></i>
367
+ </td>
368
+ </tr>
369
+ <tr>
370
+ <td>
371
+ <i class="wf_sortedtable dashicons dashicons-menu"></i>
372
+ </td>
373
+ <td>
374
+ <select name="mattributes[]" required class="wf_mattributes">
375
+ <?php echo $dropDown->googleAttributesDropdown('image'); ?>
376
+ </select>
377
+ </td>
378
+ <td>
379
+ <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
380
+ </td>
381
+ <td>
382
+ <select name="type[]" class="attr_type wfnoempty">
383
+ <option value="attribute"> <?php echo _e('Attribute', 'woo-feed'); ?></option>
384
+ <option value="pattern"> <?php echo _e('Pattern', 'woo-feed'); ?></option>
385
+ </select>
386
+ </td>
387
+ <td>
388
+ <select name="attributes[]" class="wf_attr wf_attributes">
389
+ <?php echo $product->attributeDropdown('image'); ?>
390
+ </select>
391
+ <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
392
+ style=" display: none;"/>
393
+ </td>
394
+ <td>
395
+ <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
396
+ </td>
397
+ <td>
398
+ <select name="output_type[][]" class="outputType wfnoempty">
399
+ <option value="1">Default</option>
400
+ <option value="2">Strip Tags</option>
401
+ <option value="3">UTF-8 Encode</option>
402
+ <option value="4">htmlentities</option>
403
+ <option value="5">Integer</option>
404
+ <option value="6">Price</option>
405
+ <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
406
+ <option value="8">CDATA</option>
407
+ </select>
408
+ <i class="dashicons dashicons-editor-expand expandType"></i>
409
+ <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
410
+ </td>
411
+ <td>
412
+ <input type="text" name="limit[]" class="wf_ps"/>
413
+ </td>
414
+ <td>
415
+ <i class="delRow dashicons dashicons-trash"></i>
416
+ </td>
417
+ </tr>
418
+ <tr>
419
+ <td>
420
+ <i class="wf_sortedtable dashicons dashicons-menu"></i>
421
+ </td>
422
+ <td>
423
+ <select name="mattributes[]" required class="wf_mattributes">
424
+ <?php echo $dropDown->googleAttributesDropdown('condition'); ?>
425
+ </select>
426
+ </td>
427
+ <td>
428
+ <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
429
+ </td>
430
+ <td>
431
+ <select name="type[]" class="attr_type wfnoempty">
432
+ <option value="attribute"><?php echo _e('Attribute', 'woo-feed'); ?></option>
433
+ <option value="pattern"><?php echo _e('Pattern', 'woo-feed'); ?></option>
434
+ </select>
435
+ </td>
436
+ <td>
437
+ <select name="attributes[]" class="wf_attr wf_attributes">
438
+ <?php echo $product->attributeDropdown('condition'); ?>
439
+ </select>
440
+ <input type="text" style=" display: none;" name="default[]" autocomplete="off" class="wf_default wf_attributes"
441
+ />
442
+ </td>
443
+ <td>
444
+ <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
445
+ </td>
446
+ <td>
447
+ <select name="output_type[][]" class="outputType wfnoempty">
448
+ <option value="1">Default</option>
449
+ <option value="2">Strip Tags</option>
450
+ <option value="3">UTF-8 Encode</option>
451
+ <option value="4">htmlentities</option>
452
+ <option value="5">Integer</option>
453
+ <option value="6">Price</option>
454
+ <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
455
+ <option value="8">CDATA</option>
456
+ </select>
457
+ <i class="dashicons dashicons-editor-expand expandType"></i>
458
+ <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
459
+ </td>
460
+ <td>
461
+ <input type="text" name="limit[]" class="wf_ps"/>
462
+ </td>
463
+ <td>
464
+ <i class="delRow dashicons dashicons-trash"></i>
465
+ </td>
466
+ </tr>
467
+ <tr>
468
+ <td>
469
+ <i class="wf_sortedtable dashicons dashicons-menu"></i>
470
+ </td>
471
+ <td>
472
+ <select name="mattributes[]" required class="wf_mattributes">
473
+ <?php echo $dropDown->googleAttributesDropdown('availability'); ?>
474
+ </select>
475
+ </td>
476
+ <td>
477
+ <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
478
+ </td>
479
+ <td>
480
+ <select name="type[]" class="attr_type wfnoempty">
481
+ <option value="attribute"> <?php echo _e('Attribute', 'woo-feed'); ?></option>
482
+ <option value="pattern"> <?php echo _e('Pattern', 'woo-feed'); ?></option>
483
+ </select>
484
+ </td>
485
+ <td>
486
+ <select name="attributes[]" class="wf_attr wf_attributes">
487
+ <?php echo $product->attributeDropdown('availability'); ?>
488
+ </select>
489
+ <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
490
+ style=" display: none;"/>
491
+ </td>
492
+ <td>
493
+ <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
494
+ </td>
495
+ <td>
496
+ <select name="output_type[][]" class="outputType wfnoempty">
497
+ <option value="1">Default</option>
498
+ <option value="2">Strip Tags</option>
499
+ <option value="3">UTF-8 Encode</option>
500
+ <option value="4">htmlentities</option>
501
+ <option value="5">Integer</option>
502
+ <option value="6">Price</option>
503
+ <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
504
+ <option value="8">CDATA</option>
505
+ </select>
506
+ <i class="dashicons dashicons-editor-expand expandType"></i>
507
+ <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
508
+ </td>
509
+ <td>
510
+ <input type="text" name="limit[]" class="wf_ps"/>
511
+ </td>
512
+ <td>
513
+ <i class="delRow dashicons dashicons-trash"></i>
514
+ </td>
515
+ </tr>
516
+ <tr>
517
+ <td>
518
+ <i class="wf_sortedtable dashicons dashicons-menu"></i>
519
+ </td>
520
+ <td>
521
+ <select name="mattributes[]" required class="wf_mattributes">
522
+ <?php echo $dropDown->googleAttributesDropdown('price'); ?>
523
+ </select>
524
+ </td>
525
+ <td>
526
+ <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
527
+ </td>
528
+ <td>
529
+ <select name="type[]" class="attr_type wfnoempty">
530
+ <option value="attribute"> <?php echo _e('Attribute', 'woo-feed'); ?></option>
531
+ <option value="pattern"> <?php echo _e('Pattern', 'woo-feed'); ?></option>
532
+ </select>
533
+ </td>
534
+ <td>
535
+ <select name="attributes[]" class="wf_attr wf_attributes">
536
+ <?php echo $product->attributeDropdown('price'); ?>
537
+ </select>
538
+ <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
539
+ style=" display: none;"/>
540
+ </td>
541
+ <td>
542
+ <input type="text" name="suffix[]" value="<?php echo get_woocommerce_currency();?>" autocomplete="off" class="wf_ps"/>
543
+ </td>
544
+ <td>
545
+ <select name="output_type[][]" class="outputType wfnoempty">
546
+ <option value="1">Default</option>
547
+ <option value="2">Strip Tags</option>
548
+ <option value="3">UTF-8 Encode</option>
549
+ <option value="4">htmlentities</option>
550
+ <option value="5">Integer</option>
551
+ <option selected value="6">Price</option>
552
+ <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
553
+ <option value="8">CDATA</option>
554
+ </select>
555
+ <i class="dashicons dashicons-editor-expand expandType"></i>
556
+ <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
557
+ </td>
558
+ <td>
559
+ <input type="text" name="limit[]" class="wf_ps"/>
560
+ </td>
561
+ <td>
562
+ <i class="delRow dashicons dashicons-trash"></i>
563
+ </td>
564
+ </tr>
565
+ <tr>
566
+ <td>
567
+ <i class="wf_sortedtable dashicons dashicons-menu"></i>
568
+ </td>
569
+ <td>
570
+ <select name="mattributes[]" required class="wf_mattributes">
571
+ <?php echo $dropDown->googleAttributesDropdown('sku'); ?>
572
+ </select>
573
+ </td>
574
+ <td>
575
+ <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
576
+ </td>
577
+ <td>
578
+ <select name="type[]" class="attr_type wfnoempty">
579
+ <option value="attribute"> <?php echo _e('Attribute', 'woo-feed'); ?></option>
580
+ <option value="pattern"> <?php echo _e('Pattern', 'woo-feed'); ?></option>
581
+ </select>
582
+ </td>
583
+ <td>
584
+ <select name="attributes[]" class="wf_attr wf_attributes">
585
+ <?php echo $product->attributeDropdown('sku'); ?>
586
+ </select>
587
+ <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
588
+ style=" display: none;"/>
589
+ </td>
590
+ <td>
591
+ <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
592
+ </td>
593
+ <td>
594
+ <select name="output_type[][]" class="outputType wfnoempty">
595
+ <option value="1">Default</option>
596
+ <option value="2">Strip Tags</option>
597
+ <option value="3">UTF-8 Encode</option>
598
+ <option value="4">htmlentities</option>
599
+ <option value="5">Integer</option>
600
+ <option value="6">Price</option>
601
+ <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
602
+ <option value="8">CDATA</option>
603
+ </select>
604
+ <i class="dashicons dashicons-editor-expand expandType"></i>
605
+ <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
606
+ </td>
607
+ <td>
608
+ <input type="text" name="limit[]" class="wf_ps"/>
609
+ </td>
610
+ <td>
611
+ <i class="delRow dashicons dashicons-trash"></i>
612
+ </td>
613
+ </tr>
614
+ <tr>
615
+ <td>
616
+ <i class="wf_sortedtable dashicons dashicons-menu"></i>
617
+ </td>
618
+ <td>
619
+ <select name="mattributes[]" required class="wf_mattributes">
620
+ <?php echo $dropDown->googleAttributesDropdown('brand'); ?>
621
+ </select>
622
+ </td>
623
+ <td>
624
+ <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
625
+ </td>
626
+ <td>
627
+ <select name="type[]" class="attr_type wfnoempty">
628
+ <option value="attribute"><?php echo _e('Attribute', 'woo-feed'); ?></option>
629
+ <option value="pattern" selected><?php echo _e('Pattern', 'woo-feed'); ?></option>
630
+ </select>
631
+ </td>
632
+ <td>
633
+ <select name="attributes[]" style=" display: none;" class="wf_attr wf_attributes">
634
+ <?php echo $product->attributeDropdown(); ?>
635
+ </select>
636
+ <?php
637
+ $url = site_url();
638
+ $WABrand="";
639
+ // Remove all illegal characters from a url
640
+ $url = filter_var($url, FILTER_SANITIZE_URL);
641
+ // Validate url
642
+ if (filter_var($url, FILTER_VALIDATE_URL) !== false) {
643
+ $url=parse_url($url);
644
+ if(array_key_exists('host',$url)){
645
+ $arr = explode('.',$url['host']);
646
+ $WABrand = $arr[count($arr) - 2];
647
+ }
648
+ }
649
+
650
+ ?>
651
+ <input type="text" name="default[]" value="<?php echo $WABrand; ?>" autocomplete="off" class="wf_default wf_attributes"/>
652
+ </td>
653
+ <td>
654
+ <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
655
+ </td>
656
+ <td>
657
+ <select name="output_type[][]" class="outputType wfnoempty">
658
+ <option value="1">Default</option>
659
+ <option value="2">Strip Tags</option>
660
+ <option value="3">UTF-8 Encode</option>
661
+ <option value="4">htmlentities</option>
662
+ <option value="5">Integer</option>
663
+ <option value="6">Price</option>
664
+ <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
665
+ <option value="8">CDATA</option>
666
+ </select>
667
+ <i class="dashicons dashicons-editor-expand expandType"></i>
668
+ <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
669
+ </td>
670
+ <td>
671
+ <input type="text" name="limit[]" class="wf_ps"/>
672
+ </td>
673
+ <td>
674
+ <i class="delRow dashicons dashicons-trash"></i>
675
+ </td>
676
+ </tr>
677
+ </tbody>
678
+ <tfoot>
679
+ <tr>
680
+ <td>
681
+ <button type="button" class="button-small button-primary" id="wf_newRow">
682
+ <?php echo _e('Add New Row', 'woo-feed'); ?>
683
+ </button>
684
+ </td>
685
+ <td colspan="8">
686
+
687
+ </td>
688
+ </tr>
689
+ </tfoot>
690
+ </table>
691
+ <table class=" widefat fixed">
692
+ <tr>
693
+ <td align="left" class="">
694
+ <div class="makeFeedResponse"></div>
695
+ <div class="makeFeedComplete"></div>
696
+ </td>
697
+ <td align="right">
698
+ <button type="submit" class="wfbtn">
699
+ <?php echo _e('Save & Generate Feed', 'woo-feed'); ?>
700
+ </button>
701
+ </td>
702
+ </tr>
703
+ </table>
704
+ </div>
705
+ </li>
706
+ <?php include plugin_dir_path(__FILE__) . "../woo-feed-ftp-sftp-template.php"; ?>
707
+ </ul>
admin/partials/templates/google_add-feed.php CHANGED
@@ -1,732 +1,717 @@
1
- <ul class="wf_tabs">
2
- <li>
3
- <input type="radio" name="wf_tabs" id="tab1" checked/>
4
- <label class="wf-tab-name" for="tab1"><?php echo _e( 'Feed Config', 'woo-feed' ); ?></label>
5
-
6
- <div id="wf-tab-content1" class="wf-tab-content">
7
- <table class="table tree widefat fixed sorted_table mtable" width="100%" id="table-1">
8
- <thead>
9
- <tr>
10
- <th></th>
11
- <th><?php echo ucfirst( $provider ); ?> <?php echo _e( 'Attributes', 'woo-feed' ); ?></th>
12
- <th><?php echo _e( 'Prefix', 'woo-feed' ); ?></th>
13
- <th><?php echo _e( 'Type', 'woo-feed' ); ?></th>
14
- <th><?php echo _e( 'Value', 'woo-feed' ); ?></th>
15
- <th><?php echo _e( 'Suffix', 'woo-feed' ); ?></th>
16
- <th><?php echo _e( 'Output Type', 'woo-feed' ); ?></th>
17
- <th><?php echo _e( 'Output Limit', 'woo-feed' ); ?></th>
18
- <th></th>
19
- </tr>
20
- </thead>
21
- <tbody>
22
- <tr>
23
- <td>
24
- <i class="wf_sortedtable dashicons dashicons-menu"></i>
25
- </td>
26
- <td>
27
- <select name="mattributes[]" required class="wf_mattributes">
28
- <?php echo $dropDown->googleAttributesDropdown( 'id' ); ?>
29
- </select>
30
- </td>
31
- <td>
32
- <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
33
- </td>
34
- <td>
35
- <select name="type[]" class="attr_type wfnoempty">
36
- <option value="attribute"> <?php echo _e( 'Attribute', 'woo-feed' ); ?></option>
37
- <option value="pattern"> <?php echo _e( 'Pattern', 'woo-feed' ); ?></option>
38
- </select>
39
- </td>
40
- <td>
41
- <select name="attributes[]" class="wf_attr wf_attributes">
42
- <?php echo $product->attributeDropdown( 'id' ); ?>
43
- </select>
44
- <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
45
- style=" display: none;"/>
46
- </td>
47
- <td>
48
- <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
49
- </td>
50
- <td>
51
- <select name="output_type[][]" class="outputType wfnoempty">
52
- <option value="1">Default</option>
53
- <option value="2">Strip Tags</option>
54
- <option value="3">UTF-8 Encode</option>
55
- <option value="4">htmlentities</option>
56
- <option value="5">Integer</option>
57
- <option value="6">Price</option>
58
- <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
59
- <option value="8">CDATA</option>
60
- </select>
61
- <i class="dashicons dashicons-editor-expand expandType"></i>
62
- <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
63
- </td>
64
- <td>
65
- <input type="text" name="limit[]" class="wf_ps"/>
66
- </td>
67
- <td>
68
- <i class="delRow dashicons dashicons-trash"></i>
69
- </td>
70
- </tr>
71
- <tr>
72
- <td>
73
- <i class="wf_sortedtable dashicons dashicons-menu"></i>
74
- </td>
75
- <td>
76
- <select name="mattributes[]" required class="wf_mattributes">
77
- <?php echo $dropDown->googleAttributesDropdown( 'title' ); ?>
78
- </select>
79
- </td>
80
- <td>
81
- <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
82
- </td>
83
- <td>
84
- <select name="type[]" class="attr_type wfnoempty">
85
- <option value="attribute"> <?php echo _e( 'Attribute', 'woo-feed' ); ?></option>
86
- <option value="pattern"> <?php echo _e( 'Pattern', 'woo-feed' ); ?></option>
87
- </select>
88
- </td>
89
- <td>
90
- <select name="attributes[]" class="wf_attr wf_attributes">
91
- <?php echo $product->attributeDropdown( 'title' ); ?>
92
- </select>
93
- <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
94
- style=" display: none;"/>
95
- </td>
96
- <td>
97
- <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
98
- </td>
99
- <td>
100
- <select name="output_type[][]" class="outputType wfnoempty">
101
- <option value="1">Default</option>
102
- <option value="2">Strip Tags</option>
103
- <option value="3">UTF-8 Encode</option>
104
- <option value="4">htmlentities</option>
105
- <option value="5">Integer</option>
106
- <option value="6">Price</option>
107
- <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
108
- <option value="8">CDATA</option>
109
- </select>
110
- <i class="dashicons dashicons-editor-expand expandType"></i>
111
- <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
112
- </td>
113
- <td>
114
- <input type="text" name="limit[]" class="wf_ps"/>
115
- </td>
116
- <td>
117
- <i class="delRow dashicons dashicons-trash"></i>
118
- </td>
119
- </tr>
120
- <tr>
121
- <td>
122
- <i class="wf_sortedtable dashicons dashicons-menu"></i>
123
- </td>
124
- <td>
125
- <select name="mattributes[]" required class="wf_mattributes">
126
- <?php echo $dropDown->googleAttributesDropdown( 'description' ); ?>
127
- </select>
128
- </td>
129
- <td>
130
- <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
131
- </td>
132
- <td>
133
- <select name="type[]" class="attr_type wfnoempty">
134
- <option value="attribute"> <?php echo _e( 'Attribute', 'woo-feed' ); ?></option>
135
- <option value="pattern"> <?php echo _e( 'Pattern', 'woo-feed' ); ?></option>
136
- </select>
137
- </td>
138
- <td>
139
- <select name="attributes[]" class="wf_attr wf_attributes">
140
- <?php echo $product->attributeDropdown( 'description' ); ?>
141
- </select>
142
- <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
143
- style=" display: none;"/>
144
- </td>
145
- <td>
146
- <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
147
- </td>
148
- <td>
149
- <select name="output_type[][]" class="outputType wfnoempty">
150
- <option value="1">Default</option>
151
- <option selected value="2">Strip Tags</option>
152
- <option value="3">UTF-8 Encode</option>
153
- <option value="4">htmlentities</option>
154
- <option value="5">Integer</option>
155
- <option value="6">Price</option>
156
- <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
157
- <option value="8">CDATA</option>
158
- </select>
159
- <i class="dashicons dashicons-editor-expand expandType"></i>
160
- <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
161
- </td>
162
- <td>
163
- <input type="text" name="limit[]" class="wf_ps" value="5000"/>
164
- </td>
165
- <td>
166
- <i class="delRow dashicons dashicons-trash"></i>
167
- </td>
168
- </tr>
169
- <tr>
170
- <td>
171
- <i class="wf_sortedtable dashicons dashicons-menu"></i>
172
- </td>
173
- <td>
174
- <select name="mattributes[]" required class="wf_mattributes">
175
- <?php echo $dropDown->googleAttributesDropdown( 'item_group_id' ); ?>
176
- </select>
177
- </td>
178
- <td>
179
- <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
180
- </td>
181
- <td>
182
- <select name="type[]" class="attr_type wfnoempty">
183
- <option value="attribute"> <?php echo _e( 'Attribute', 'woo-feed' ); ?></option>
184
- <option value="pattern"> <?php echo _e( 'Pattern', 'woo-feed' ); ?></option>
185
- </select>
186
- </td>
187
- <td>
188
- <select name="attributes[]" class="wf_attr wf_attributes">
189
- <?php echo $product->attributeDropdown( 'item_group_id' ); ?>
190
- </select>
191
- <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
192
- style=" display: none;"/>
193
- </td>
194
- <td>
195
- <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
196
- </td>
197
- <td>
198
- <select name="output_type[][]" class="outputType wfnoempty">
199
- <option value="1">Default</option>
200
- <option value="2">Strip Tags</option>
201
- <option value="3">UTF-8 Encode</option>
202
- <option value="4">htmlentities</option>
203
- <option value="5">Integer</option>
204
- <option value="6">Price</option>
205
- <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
206
- <option value="8">CDATA</option>
207
- </select>
208
- <i class="dashicons dashicons-editor-expand expandType"></i>
209
- <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
210
- </td>
211
- <td>
212
- <input type="text" name="limit[]" class="wf_ps"/>
213
- </td>
214
- <td>
215
- <i class="delRow dashicons dashicons-trash"></i>
216
- </td>
217
- </tr>
218
- <tr>
219
- <td>
220
- <i class="wf_sortedtable dashicons dashicons-menu"></i>
221
- </td>
222
- <td>
223
- <select name="mattributes[]" required class="wf_mattributes">
224
- <?php echo $dropDown->googleAttributesDropdown( 'link' ); ?>
225
- </select>
226
- </td>
227
- <td>
228
- <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
229
- </td>
230
- <td>
231
- <select name="type[]" class="attr_type wfnoempty">
232
- <option value="attribute"> <?php echo _e( 'Attribute', 'woo-feed' ); ?></option>
233
- <option value="pattern"> <?php echo _e( 'Pattern', 'woo-feed' ); ?></option>
234
- </select>
235
- </td>
236
- <td>
237
- <select name="attributes[]" class="wf_attr wf_attributes">
238
- <?php echo $product->attributeDropdown( 'link' ); ?>
239
- </select>
240
- <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
241
- style=" display: none;"/>
242
- </td>
243
- <td>
244
- <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
245
- </td>
246
- <td>
247
- <select name="output_type[][]" class="outputType wfnoempty">
248
- <option value="1">Default</option>
249
- <option value="2">Strip Tags</option>
250
- <option value="3">UTF-8 Encode</option>
251
- <option value="4">htmlentities</option>
252
- <option value="5">Integer</option>
253
- <option value="6">Price</option>
254
- <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
255
- <option value="8">CDATA</option>
256
- </select>
257
- <i class="dashicons dashicons-editor-expand expandType"></i>
258
- <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
259
- </td>
260
- <td>
261
- <input type="text" name="limit[]" class="wf_ps"/>
262
- </td>
263
- <td>
264
- <i class="delRow dashicons dashicons-trash"></i>
265
- </td>
266
- </tr>
267
- <tr>
268
- <td>
269
- <i class="wf_sortedtable dashicons dashicons-menu"></i>
270
- </td>
271
- <td>
272
- <select name="mattributes[]" required class="wf_mattributes">
273
- <?php echo $dropDown->googleAttributesDropdown('product_type'); ?>
274
- </select>
275
- </td>
276
- <td>
277
- <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
278
- </td>
279
- <td>
280
- <select name="type[]" class="attr_type wfnoempty">
281
- <option value="attribute"> <?php echo _e('Attribute','woo-feed');?></option>
282
- <option value="pattern"> <?php echo _e('Pattern','woo-feed');?></option>
283
- </select>
284
- </td>
285
- <td>
286
- <select name="attributes[]" class="wf_attr wf_attributes">
287
- <?php echo $product->attributeDropdown('product_type'); ?>
288
- </select>
289
- <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
290
- style=" display: none;"/>
291
- </td>
292
- <td>
293
- <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
294
- </td>
295
- <td>
296
- <select name="output_type[][]" class="outputType wfnoempty">
297
- <option value="1">Default</option>
298
- <option value="2">Strip Tags</option>
299
- <option value="3">UTF-8 Encode</option>
300
- <option value="4">htmlentities</option>
301
- <option value="5">Integer</option>
302
- <option value="6">Price</option>
303
- <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
304
- <option value="8">CDATA</option>
305
- </select>
306
- <i class="dashicons dashicons-editor-expand expandType"></i>
307
- <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
308
- </td>
309
- <td>
310
- <input type="text" name="limit[]" class="wf_ps"/>
311
- </td>
312
- <td>
313
- <i class="delRow dashicons dashicons-trash"></i>
314
- </td>
315
- </tr>
316
- <tr>
317
- <td>
318
- <i class="wf_sortedtable dashicons dashicons-menu"></i>
319
- </td>
320
- <td>
321
- <select name="mattributes[]" required class="wf_mattributes">
322
- <?php echo $dropDown->googleAttributesDropdown('current_category'); ?>
323
- </select>
324
- </td>
325
- <td>
326
- <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
327
- </td>
328
- <td>
329
- <select name="type[]" class="attr_type wfnoempty">
330
- <option value="attribute"> <?php echo _e('Attribute','woo-feed');?></option>
331
- <option value="pattern" selected> <?php echo _e('Pattern','woo-feed');?></option>
332
- </select>
333
- </td>
334
- <!-- <td>-->
335
- <!-- <select name="attributes[]" style=" display: none;" class="wf_attr wf_attributes">-->
336
- <!-- --><?php //echo $product->attributeDropdown(); ?>
337
- <!-- </select>-->
338
- <!-- <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes" />-->
339
- <!-- <br><span style="font-size:x-small;"><a href="http://webappick.helpscoutdocs.com/article/19-how-to-map-store-category-with-merchant-category" target="_blank">Learn More..</a></span>-->
340
- <!-- </td>-->
341
-
342
- <td>
343
- <input type="text" name="default[]" placeholder="Select Google Taxonomy" id="wf_google_taxonomy_input_modal" autocomplete="off" class="wf_default wf_attributes"/>
344
- <select name="attributes[]" class="wf_attr wf_attributes" style="display:none;">
345
- <?php echo $product->attributeDropdown( '' ); ?>
346
- </select>
347
- <br><span style="font-size:x-small;"><a style="color: red" href="http://webappick.helpscoutdocs.com/article/19-how-to-map-store-category-with-merchant-category" target="_blank">Learn More..</a></span>
348
- </td>
349
- <td>
350
- <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
351
- </td>
352
- <td>
353
- <select name="output_type[][]" class="outputType wfnoempty">
354
- <option value="1">Default</option>
355
- <option value="2">Strip Tags</option>
356
- <option value="3">UTF-8 Encode</option>
357
- <option value="4">htmlentities</option>
358
- <option value="5">Integer</option>
359
- <option value="6">Price</option>
360
- <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
361
- <option value="8">CDATA</option>
362
- </select>
363
- <i class="dashicons dashicons-editor-expand expandType"></i>
364
- <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
365
- </td>
366
- <td>
367
- <input type="text" name="limit[]" class="wf_ps"/>
368
- </td>
369
- <td>
370
- <i class="delRow dashicons dashicons-trash"></i>
371
- </td>
372
- </tr>
373
- <tr>
374
- <td>
375
- <i class="wf_sortedtable dashicons dashicons-menu"></i>
376
- </td>
377
- <td>
378
- <select name="mattributes[]" required class="wf_mattributes">
379
- <?php echo $dropDown->googleAttributesDropdown( 'image' ); ?>
380
- </select>
381
- </td>
382
- <td>
383
- <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
384
- </td>
385
- <td>
386
- <select name="type[]" class="attr_type wfnoempty">
387
- <option value="attribute"> <?php echo _e( 'Attribute', 'woo-feed' ); ?></option>
388
- <option value="pattern"> <?php echo _e( 'Pattern', 'woo-feed' ); ?></option>
389
- </select>
390
- </td>
391
- <td>
392
- <select name="attributes[]" class="wf_attr wf_attributes">
393
- <?php echo $product->attributeDropdown( 'image' ); ?>
394
- </select>
395
- <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
396
- style=" display: none;"/>
397
- </td>
398
- <td>
399
- <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
400
- </td>
401
- <td>
402
- <select name="output_type[][]" class="outputType wfnoempty">
403
- <option value="1">Default</option>
404
- <option value="2">Strip Tags</option>
405
- <option value="3">UTF-8 Encode</option>
406
- <option value="4">htmlentities</option>
407
- <option value="5">Integer</option>
408
- <option value="6">Price</option>
409
- <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
410
- <option value="8">CDATA</option>
411
- </select>
412
- <i class="dashicons dashicons-editor-expand expandType"></i>
413
- <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
414
- </td>
415
- <td>
416
- <input type="text" name="limit[]" class="wf_ps"/>
417
- </td>
418
- <td>
419
- <i class="delRow dashicons dashicons-trash"></i>
420
- </td>
421
- </tr>
422
- <tr>
423
- <td>
424
- <i class="wf_sortedtable dashicons dashicons-menu"></i>
425
- </td>
426
- <td>
427
- <select name="mattributes[]" required class="wf_mattributes">
428
- <?php echo $dropDown->googleAttributesDropdown( 'condition' ); ?>
429
- </select>
430
- </td>
431
- <td>
432
- <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
433
- </td>
434
- <td>
435
- <select name="type[]" class="attr_type wfnoempty">
436
- <option value="attribute"><?php echo _e( 'Attribute', 'woo-feed' ); ?></option>
437
- <option value="pattern"><?php echo _e( 'Pattern', 'woo-feed' ); ?></option>
438
- </select>
439
- </td>
440
- <td>
441
- <select name="attributes[]" class="wf_attr wf_attributes">
442
- <?php echo $product->attributeDropdown( 'condition' ); ?>
443
- </select>
444
- <input type="text" style=" display: none;" name="default[]" autocomplete="off" class="wf_default wf_attributes"
445
- />
446
- </td>
447
- <td>
448
- <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
449
- </td>
450
- <td>
451
- <select name="output_type[][]" class="outputType wfnoempty">
452
- <option value="1">Default</option>
453
- <option value="2">Strip Tags</option>
454
- <option value="3">UTF-8 Encode</option>
455
- <option value="4">htmlentities</option>
456
- <option value="5">Integer</option>
457
- <option value="6">Price</option>
458
- <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
459
- <option value="8">CDATA</option>
460
- </select>
461
- <i class="dashicons dashicons-editor-expand expandType"></i>
462
- <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
463
- </td>
464
- <td>
465
- <input type="text" name="limit[]" class="wf_ps"/>
466
- </td>
467
- <td>
468
- <i class="delRow dashicons dashicons-trash"></i>
469
- </td>
470
- </tr>
471
- <tr>
472
- <td>
473
- <i class="wf_sortedtable dashicons dashicons-menu"></i>
474
- </td>
475
- <td>
476
- <select name="mattributes[]" required class="wf_mattributes">
477
- <?php echo $dropDown->googleAttributesDropdown( 'availability' ); ?>
478
- </select>
479
- </td>
480
- <td>
481
- <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
482
- </td>
483
- <td>
484
- <select name="type[]" class="attr_type wfnoempty">
485
- <option value="attribute"> <?php echo _e( 'Attribute', 'woo-feed' ); ?></option>
486
- <option value="pattern"> <?php echo _e( 'Pattern', 'woo-feed' ); ?></option>
487
- </select>
488
- </td>
489
- <td>
490
- <select name="attributes[]" class="wf_attr wf_attributes">
491
- <?php echo $product->attributeDropdown( 'availability' ); ?>
492
- </select>
493
- <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
494
- style=" display: none;"/>
495
- </td>
496
- <td>
497
- <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
498
- </td>
499
- <td>
500
- <select name="output_type[][]" class="outputType wfnoempty">
501
- <option value="1">Default</option>
502
- <option value="2">Strip Tags</option>
503
- <option value="3">UTF-8 Encode</option>
504
- <option value="4">htmlentities</option>
505
- <option value="5">Integer</option>
506
- <option value="6">Price</option>
507
- <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
508
- <option value="8">CDATA</option>
509
- </select>
510
- <i class="dashicons dashicons-editor-expand expandType"></i>
511
- <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
512
- </td>
513
- <td>
514
- <input type="text" name="limit[]" class="wf_ps"/>
515
- </td>
516
- <td>
517
- <i class="delRow dashicons dashicons-trash"></i>
518
- </td>
519
- </tr>
520
- <tr>
521
- <td>
522
- <i class="wf_sortedtable dashicons dashicons-menu"></i>
523
- </td>
524
- <td>
525
- <select name="mattributes[]" required class="wf_mattributes">
526
- <?php echo $dropDown->googleAttributesDropdown( 'price' ); ?>
527
- </select>
528
- </td>
529
- <td>
530
- <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
531
- </td>
532
- <td>
533
- <select name="type[]" class="attr_type wfnoempty">
534
- <option value="attribute"> <?php echo _e( 'Attribute', 'woo-feed' ); ?></option>
535
- <option value="pattern"> <?php echo _e( 'Pattern', 'woo-feed' ); ?></option>
536
- </select>
537
- </td>
538
- <td>
539
- <select name="attributes[]" class="wf_attr wf_attributes">
540
- <?php echo $product->attributeDropdown( 'price' ); ?>
541
- </select>
542
- <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
543
- style=" display: none;"/>
544
- </td>
545
- <td>
546
- <input type="text" name="suffix[]" value="<?php echo get_woocommerce_currency();?>" autocomplete="off" class="wf_ps"/>
547
- </td>
548
- <td>
549
- <select name="output_type[][]" class="outputType wfnoempty">
550
- <option value="1">Default</option>
551
- <option value="2">Strip Tags</option>
552
- <option value="3">UTF-8 Encode</option>
553
- <option value="4">htmlentities</option>
554
- <option value="5">Integer</option>
555
- <option selected value="6">Price</option>
556
- <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
557
- <option value="8">CDATA</option>
558
- </select>
559
- <i class="dashicons dashicons-editor-expand expandType"></i>
560
- <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
561
- </td>
562
- <td>
563
- <input type="text" name="limit[]" class="wf_ps"/>
564
- </td>
565
- <td>
566
- <i class="delRow dashicons dashicons-trash"></i>
567
- </td>
568
- </tr>
569
-
570
- <tr>
571
- <td>
572
- <i class="wf_sortedtable dashicons dashicons-menu"></i>
573
- </td>
574
- <td>
575
- <select name="mattributes[]" required class="wf_mattributes">
576
- <?php echo $dropDown->googleAttributesDropdown( 'sku' ); ?>
577
- </select>
578
- </td>
579
- <td>
580
- <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
581
- </td>
582
- <td>
583
- <select name="type[]" class="attr_type wfnoempty">
584
- <option value="attribute"> <?php echo _e( 'Attribute', 'woo-feed' ); ?></option>
585
- <option value="pattern"> <?php echo _e( 'Pattern', 'woo-feed' ); ?></option>
586
- </select>
587
- </td>
588
- <td>
589
- <select name="attributes[]" class="wf_attr wf_attributes">
590
- <?php echo $product->attributeDropdown( 'sku' ); ?>
591
- </select>
592
- <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
593
- style=" display: none;"/>
594
- </td>
595
- <td>
596
- <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
597
- </td>
598
- <td>
599
- <select name="output_type[][]" class="outputType wfnoempty">
600
- <option value="1">Default</option>
601
- <option value="2">Strip Tags</option>
602
- <option value="3">UTF-8 Encode</option>
603
- <option value="4">htmlentities</option>
604
- <option value="5">Integer</option>
605
- <option value="6">Price</option>
606
- <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
607
- <option value="8">CDATA</option>
608
- </select>
609
- <i class="dashicons dashicons-editor-expand expandType"></i>
610
- <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
611
- </td>
612
- <td>
613
- <input type="text" name="limit[]" class="wf_ps"/>
614
- </td>
615
- <td>
616
- <i class="delRow dashicons dashicons-trash"></i>
617
- </td>
618
- </tr>
619
- <tr>
620
- <td>
621
- <i class="wf_sortedtable dashicons dashicons-menu"></i>
622
- </td>
623
- <td>
624
- <select name="mattributes[]" required class="wf_mattributes">
625
- <?php echo $dropDown->googleAttributesDropdown( 'brand' ); ?>
626
- </select>
627
- </td>
628
- <td>
629
- <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
630
- </td>
631
- <td>
632
- <select name="type[]" class="attr_type wfnoempty">
633
- <option value="attribute" ><?php echo _e( 'Attribute', 'woo-feed' ); ?></option>
634
- <option value="pattern" selected><?php echo _e( 'Pattern', 'woo-feed' ); ?></option>
635
- </select>
636
- </td>
637
- <td>
638
- <select name="attributes[]" style=" display: none;" class="wf_attr wf_attributes">
639
- <?php echo $product->attributeDropdown(); ?>
640
- </select>
641
- <?php
642
- $url = site_url();
643
- $WABrand="";
644
- // Remove all illegal characters from a url
645
- $url = filter_var($url, FILTER_SANITIZE_URL);
646
- // Validate url
647
- if (filter_var($url, FILTER_VALIDATE_URL) !== false) {
648
- $url=parse_url($url);
649
- if(array_key_exists('host',$url)){
650
- $arr = explode('.',$url['host']);
651
- $WABrand = $arr[count($arr) - 2];
652
- }
653
- }
654
-
655
- ?>
656
- <input type="text" name="default[]" value="<?php echo $WABrand; ?>" autocomplete="off" class="wf_default wf_attributes"/>
657
- </td>
658
- <td>
659
- <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
660
- </td>
661
- <td>
662
- <select name="output_type[][]" class="outputType wfnoempty">
663
- <option value="1">Default</option>
664
- <option value="2">Strip Tags</option>
665
- <option value="3">UTF-8 Encode</option>
666
- <option value="4">htmlentities</option>
667
- <option value="5">Integer</option>
668
- <option value="6">Price</option>
669
- <option value="7">Remove Space</option>
670
- <option value="10">Remove ShortCodes</option>
671
- <option value="9">Remove Special Character</option>
672
- <option value="8">CDATA</option>
673
- </select>
674
- <i class="dashicons dashicons-editor-expand expandType"></i>
675
- <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
676
- </td>
677
- <td>
678
- <input type="text" name="limit[]" class="wf_ps"/>
679
- </td>
680
- <td>
681
- <i class="delRow dashicons dashicons-trash"></i>
682
- </td>
683
- </tr>
684
- </tbody>
685
- <tfoot>
686
- <tr>
687
- <td>
688
- <button type="button" class="button-small button-primary" id="wf_newRow">
689
- <?php echo _e( 'Add New Row', 'woo-feed' ); ?>
690
- </button>
691
- </td>
692
- <td colspan="8">
693
-
694
- </td>
695
- </tr>
696
- </tfoot>
697
- </table>
698
- <table class=" widefat fixed">
699
- <tr>
700
- <td align="left" class="">
701
- <div class="makeFeedResponse"></div>
702
- <div class="makeFeedComplete"></div>
703
- </td>
704
- <td align="right">
705
- <button type="submit" class="wfbtn">
706
- <?php echo _e( 'Save & Generate Feed', 'woo-feed' ); ?>
707
- </button>
708
- </td>
709
- </tr>
710
- </table>
711
- </div>
712
- </li>
713
-
714
- <?php include plugin_dir_path(__FILE__) . "../woo-feed-ftp-sftp-template.php"; ?>
715
-
716
- </ul>
717
- <!--modal inputs for getting Google Taxonomy -->
718
- <div class="container">
719
- <div class="_wf_popup" data-popup="popup-wf_google_taxonomy_modal" id="wf_google_taxonomy_modal">
720
- <div class="_wf_popup-inner">
721
- <form id="wf_google_taxonomy_modal_form_submission" enctype="multipart/form-data" >
722
- <h2>Select Google Taxonomy</h2><span style="color: red" id="google_taxonomy_error_message"></span>
723
- <select name="attributes[]" id="googleTaxonomyId" style="" class="googleTaxonomyId">
724
- <?php echo $dropDown->googleTaxonomy(); ?>
725
- </select>
726
- <input style="float: right" id="wf_google_taxonomy_modal_submit_button" class="wf_google_taxonomy_modal_submit_button" type="button" value="Submit"/>
727
- <input style="float: right" id="wf_google_taxonomy_modal_cancel_button" class="wf_google_taxonomy_modal_form_button" value="Cancel" type="button"/>
728
- <a style="text-decoration:none;" class="_wf_popup-close" id="wf_google_taxonomy_modal_popup_close" href="#">x</a>
729
- </form>
730
- </div>
731
- </div>
732
- </div>
1
+ <ul class="wf_tabs">
2
+ <li>
3
+ <input type="radio" name="wf_tabs" id="tab1" checked/>
4
+ <label class="wf-tab-name" for="tab1"><?php echo _e( 'Feed Config', 'woo-feed' ); ?></label>
5
+
6
+ <div id="wf-tab-content1" class="wf-tab-content">
7
+ <table class="table tree widefat fixed sorted_table mtable" width="100%" id="table-1">
8
+ <thead>
9
+ <tr>
10
+ <th></th>
11
+ <th><?php echo ucfirst( $provider ); ?> <?php echo _e( 'Attributes', 'woo-feed' ); ?></th>
12
+ <th><?php echo _e( 'Prefix', 'woo-feed' ); ?></th>
13
+ <th><?php echo _e( 'Type', 'woo-feed' ); ?></th>
14
+ <th><?php echo _e( 'Value', 'woo-feed' ); ?></th>
15
+ <th><?php echo _e( 'Suffix', 'woo-feed' ); ?></th>
16
+ <th><?php echo _e( 'Output Type', 'woo-feed' ); ?></th>
17
+ <th><?php echo _e( 'Output Limit', 'woo-feed' ); ?></th>
18
+ <th></th>
19
+ </tr>
20
+ </thead>
21
+ <tbody>
22
+ <tr>
23
+ <td>
24
+ <i class="wf_sortedtable dashicons dashicons-menu"></i>
25
+ </td>
26
+ <td>
27
+ <select name="mattributes[]" required class="wf_mattributes">
28
+ <?php echo $dropDown->googleAttributesDropdown( 'id' ); ?>
29
+ </select>
30
+ </td>
31
+ <td>
32
+ <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
33
+ </td>
34
+ <td>
35
+ <select name="type[]" class="attr_type wfnoempty">
36
+ <option value="attribute"> <?php echo _e( 'Attribute', 'woo-feed' ); ?></option>
37
+ <option value="pattern"> <?php echo _e( 'Pattern', 'woo-feed' ); ?></option>
38
+ </select>
39
+ </td>
40
+ <td>
41
+ <select name="attributes[]" class="wf_attr wf_attributes">
42
+ <?php echo $product->attributeDropdown( 'id' ); ?>
43
+ </select>
44
+ <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
45
+ style=" display: none;"/>
46
+ </td>
47
+ <td>
48
+ <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
49
+ </td>
50
+ <td>
51
+ <select name="output_type[][]" class="outputType wfnoempty">
52
+ <option value="1">Default</option>
53
+ <option value="2">Strip Tags</option>
54
+ <option value="3">UTF-8 Encode</option>
55
+ <option value="4">htmlentities</option>
56
+ <option value="5">Integer</option>
57
+ <option value="6">Price</option>
58
+ <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
59
+ <option value="8">CDATA</option>
60
+ </select>
61
+ <i class="dashicons dashicons-editor-expand expandType"></i>
62
+ <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
63
+ </td>
64
+ <td>
65
+ <input type="text" name="limit[]" class="wf_ps"/>
66
+ </td>
67
+ <td>
68
+ <i class="delRow dashicons dashicons-trash"></i>
69
+ </td>
70
+ </tr>
71
+ <tr>
72
+ <td>
73
+ <i class="wf_sortedtable dashicons dashicons-menu"></i>
74
+ </td>
75
+ <td>
76
+ <select name="mattributes[]" required class="wf_mattributes">
77
+ <?php echo $dropDown->googleAttributesDropdown( 'title' ); ?>
78
+ </select>
79
+ </td>
80
+ <td>
81
+ <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
82
+ </td>
83
+ <td>
84
+ <select name="type[]" class="attr_type wfnoempty">
85
+ <option value="attribute"> <?php echo _e( 'Attribute', 'woo-feed' ); ?></option>
86
+ <option value="pattern"> <?php echo _e( 'Pattern', 'woo-feed' ); ?></option>
87
+ </select>
88
+ </td>
89
+ <td>
90
+ <select name="attributes[]" class="wf_attr wf_attributes">
91
+ <?php echo $product->attributeDropdown( 'title' ); ?>
92
+ </select>
93
+ <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
94
+ style=" display: none;"/>
95
+ </td>
96
+ <td>
97
+ <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
98
+ </td>
99
+ <td>
100
+ <select name="output_type[][]" class="outputType wfnoempty">
101
+ <option value="1">Default</option>
102
+ <option value="2">Strip Tags</option>
103
+ <option value="3">UTF-8 Encode</option>
104
+ <option value="4">htmlentities</option>
105
+ <option value="5">Integer</option>
106
+ <option value="6">Price</option>
107
+ <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
108
+ <option value="8">CDATA</option>
109
+ </select>
110
+ <i class="dashicons dashicons-editor-expand expandType"></i>
111
+ <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
112
+ </td>
113
+ <td>
114
+ <input type="text" name="limit[]" class="wf_ps"/>
115
+ </td>
116
+ <td>
117
+ <i class="delRow dashicons dashicons-trash"></i>
118
+ </td>
119
+ </tr>
120
+ <tr>
121
+ <td>
122
+ <i class="wf_sortedtable dashicons dashicons-menu"></i>
123
+ </td>
124
+ <td>
125
+ <select name="mattributes[]" required class="wf_mattributes">
126
+ <?php echo $dropDown->googleAttributesDropdown( 'description' ); ?>
127
+ </select>
128
+ </td>
129
+ <td>
130
+ <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
131
+ </td>
132
+ <td>
133
+ <select name="type[]" class="attr_type wfnoempty">
134
+ <option value="attribute"> <?php echo _e( 'Attribute', 'woo-feed' ); ?></option>
135
+ <option value="pattern"> <?php echo _e( 'Pattern', 'woo-feed' ); ?></option>
136
+ </select>
137
+ </td>
138
+ <td>
139
+ <select name="attributes[]" class="wf_attr wf_attributes">
140
+ <?php echo $product->attributeDropdown( 'description' ); ?>
141
+ </select>
142
+ <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
143
+ style=" display: none;"/>
144
+ </td>
145
+ <td>
146
+ <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
147
+ </td>
148
+ <td>
149
+ <select name="output_type[][]" class="outputType wfnoempty">
150
+ <option value="1">Default</option>
151
+ <option selected value="2">Strip Tags</option>
152
+ <option value="3">UTF-8 Encode</option>
153
+ <option value="4">htmlentities</option>
154
+ <option value="5">Integer</option>
155
+ <option value="6">Price</option>
156
+ <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
157
+ <option value="8">CDATA</option>
158
+ </select>
159
+ <i class="dashicons dashicons-editor-expand expandType"></i>
160
+ <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
161
+ </td>
162
+ <td>
163
+ <input type="text" name="limit[]" class="wf_ps" value="5000"/>
164
+ </td>
165
+ <td>
166
+ <i class="delRow dashicons dashicons-trash"></i>
167
+ </td>
168
+ </tr>
169
+ <tr>
170
+ <td>
171
+ <i class="wf_sortedtable dashicons dashicons-menu"></i>
172
+ </td>
173
+ <td>
174
+ <select name="mattributes[]" required class="wf_mattributes">
175
+ <?php echo $dropDown->googleAttributesDropdown( 'item_group_id' ); ?>
176
+ </select>
177
+ </td>
178
+ <td>
179
+ <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
180
+ </td>
181
+ <td>
182
+ <select name="type[]" class="attr_type wfnoempty">
183
+ <option value="attribute"> <?php echo _e( 'Attribute', 'woo-feed' ); ?></option>
184
+ <option value="pattern"> <?php echo _e( 'Pattern', 'woo-feed' ); ?></option>
185
+ </select>
186
+ </td>
187
+ <td>
188
+ <select name="attributes[]" class="wf_attr wf_attributes">
189
+ <?php echo $product->attributeDropdown( 'item_group_id' ); ?>
190
+ </select>
191
+ <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
192
+ style=" display: none;"/>
193
+ </td>
194
+ <td>
195
+ <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
196
+ </td>
197
+ <td>
198
+ <select name="output_type[][]" class="outputType wfnoempty">
199
+ <option value="1">Default</option>
200
+ <option value="2">Strip Tags</option>
201
+ <option value="3">UTF-8 Encode</option>
202
+ <option value="4">htmlentities</option>
203
+ <option value="5">Integer</option>
204
+ <option value="6">Price</option>
205
+ <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
206
+ <option value="8">CDATA</option>
207
+ </select>
208
+ <i class="dashicons dashicons-editor-expand expandType"></i>
209
+ <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
210
+ </td>
211
+ <td>
212
+ <input type="text" name="limit[]" class="wf_ps"/>
213
+ </td>
214
+ <td>
215
+ <i class="delRow dashicons dashicons-trash"></i>
216
+ </td>
217
+ </tr>
218
+ <tr>
219
+ <td>
220
+ <i class="wf_sortedtable dashicons dashicons-menu"></i>
221
+ </td>
222
+ <td>
223
+ <select name="mattributes[]" required class="wf_mattributes">
224
+ <?php echo $dropDown->googleAttributesDropdown( 'link' ); ?>
225
+ </select>
226
+ </td>
227
+ <td>
228
+ <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
229
+ </td>
230
+ <td>
231
+ <select name="type[]" class="attr_type wfnoempty">
232
+ <option value="attribute"> <?php echo _e( 'Attribute', 'woo-feed' ); ?></option>
233
+ <option value="pattern"> <?php echo _e( 'Pattern', 'woo-feed' ); ?></option>
234
+ </select>
235
+ </td>
236
+ <td>
237
+ <select name="attributes[]" class="wf_attr wf_attributes">
238
+ <?php echo $product->attributeDropdown( 'link' ); ?>
239
+ </select>
240
+ <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
241
+ style=" display: none;"/>
242
+ </td>
243
+ <td>
244
+ <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
245
+ </td>
246
+ <td>
247
+ <select name="output_type[][]" class="outputType wfnoempty">
248
+ <option value="1">Default</option>
249
+ <option value="2">Strip Tags</option>
250
+ <option value="3">UTF-8 Encode</option>
251
+ <option value="4">htmlentities</option>
252
+ <option value="5">Integer</option>
253
+ <option value="6">Price</option>
254
+ <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
255
+ <option value="8">CDATA</option>
256
+ </select>
257
+ <i class="dashicons dashicons-editor-expand expandType"></i>
258
+ <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
259
+ </td>
260
+ <td>
261
+ <input type="text" name="limit[]" class="wf_ps"/>
262
+ </td>
263
+ <td>
264
+ <i class="delRow dashicons dashicons-trash"></i>
265
+ </td>
266
+ </tr>
267
+ <tr>
268
+ <td>
269
+ <i class="wf_sortedtable dashicons dashicons-menu"></i>
270
+ </td>
271
+ <td>
272
+ <select name="mattributes[]" required class="wf_mattributes">
273
+ <?php echo $dropDown->googleAttributesDropdown('product_type'); ?>
274
+ </select>
275
+ </td>
276
+ <td>
277
+ <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
278
+ </td>
279
+ <td>
280
+ <select name="type[]" class="attr_type wfnoempty">
281
+ <option value="attribute"> <?php echo _e('Attribute','woo-feed');?></option>
282
+ <option value="pattern"> <?php echo _e('Pattern','woo-feed');?></option>
283
+ </select>
284
+ </td>
285
+ <td>
286
+ <select name="attributes[]" class="wf_attr wf_attributes">
287
+ <?php echo $product->attributeDropdown('product_type'); ?>
288
+ </select>
289
+ <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
290
+ style=" display: none;"/>
291
+ </td>
292
+ <td>
293
+ <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
294
+ </td>
295
+ <td>
296
+ <select name="output_type[][]" class="outputType wfnoempty">
297
+ <option value="1">Default</option>
298
+ <option value="2">Strip Tags</option>
299
+ <option value="3">UTF-8 Encode</option>
300
+ <option value="4">htmlentities</option>
301
+ <option value="5">Integer</option>
302
+ <option value="6">Price</option>
303
+ <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
304
+ <option value="8">CDATA</option>
305
+ </select>
306
+ <i class="dashicons dashicons-editor-expand expandType"></i>
307
+ <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
308
+ </td>
309
+ <td>
310
+ <input type="text" name="limit[]" class="wf_ps"/>
311
+ </td>
312
+ <td>
313
+ <i class="delRow dashicons dashicons-trash"></i>
314
+ </td>
315
+ </tr>
316
+ <tr>
317
+ <td>
318
+ <i class="wf_sortedtable dashicons dashicons-menu"></i>
319
+ </td>
320
+ <td>
321
+ <select name="mattributes[]" required class="wf_mattributes">
322
+ <?php echo $dropDown->googleAttributesDropdown('current_category'); ?>
323
+ </select>
324
+ </td>
325
+ <td>
326
+ <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
327
+ </td>
328
+ <td>
329
+ <select name="type[]" class="attr_type wfnoempty">
330
+ <option value="attribute"> <?php echo _e('Attribute','woo-feed');?></option>
331
+ <option value="pattern" selected> <?php echo _e('Pattern','woo-feed');?></option>
332
+ </select>
333
+ </td>
334
+ <!-- <td>-->
335
+ <!-- <select name="attributes[]" style=" display: none;" class="wf_attr wf_attributes">-->
336
+ <!-- --><?php //echo $product->attributeDropdown(); ?>
337
+ <!-- </select>-->
338
+ <!-- <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes" />-->
339
+ <!-- <br><span style="font-size:x-small;"><a href="http://webappick.helpscoutdocs.com/article/19-how-to-map-store-category-with-merchant-category" target="_blank">Learn More..</a></span>-->
340
+ <!-- </td>-->
341
+ <td>
342
+ <select name="attributes[]" class="wf_attr wf_attributes" style="display:none;">
343
+ <?php echo $product->attributeDropdown( '' ); ?>
344
+ </select>
345
+ <span class="wf_default wf_attributes">
346
+ <select name="default[]" id="googleTaxonomyId">
347
+ <?php echo $dropDown->googleTaxonomy(); ?>
348
+ </select>
349
+ </span>
350
+ <span style="font-size:x-small;"><a style="color: red" href="http://webappick.helpscoutdocs.com/article/19-how-to-map-store-category-with-merchant-category" target="_blank">Learn More..</a></span>
351
+ </td>
352
+ <td>
353
+ <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
354
+ </td>
355
+ <td>
356
+ <select name="output_type[][]" class="outputType wfnoempty">
357
+ <option value="1">Default</option>
358
+ <option value="2">Strip Tags</option>
359
+ <option value="3">UTF-8 Encode</option>
360
+ <option value="4">htmlentities</option>
361
+ <option value="5">Integer</option>
362
+ <option value="6">Price</option>
363
+ <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
364
+ <option value="8">CDATA</option>
365
+ </select>
366
+ <i class="dashicons dashicons-editor-expand expandType"></i>
367
+ <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
368
+ </td>
369
+ <td>
370
+ <input type="text" name="limit[]" class="wf_ps"/>
371
+ </td>
372
+ <td>
373
+ <i class="delRow dashicons dashicons-trash"></i>
374
+ </td>
375
+ </tr>
376
+ <tr>
377
+ <td>
378
+ <i class="wf_sortedtable dashicons dashicons-menu"></i>
379
+ </td>
380
+ <td>
381
+ <select name="mattributes[]" required class="wf_mattributes">
382
+ <?php echo $dropDown->googleAttributesDropdown( 'image' ); ?>
383
+ </select>
384
+ </td>
385
+ <td>
386
+ <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
387
+ </td>
388
+ <td>
389
+ <select name="type[]" class="attr_type wfnoempty">
390
+ <option value="attribute"> <?php echo _e( 'Attribute', 'woo-feed' ); ?></option>
391
+ <option value="pattern"> <?php echo _e( 'Pattern', 'woo-feed' ); ?></option>
392
+ </select>
393
+ </td>
394
+ <td>
395
+ <select name="attributes[]" class="wf_attr wf_attributes">
396
+ <?php echo $product->attributeDropdown( 'image' ); ?>
397
+ </select>
398
+ <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
399
+ style=" display: none;"/>
400
+ </td>
401
+ <td>
402
+ <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
403
+ </td>
404
+ <td>
405
+ <select name="output_type[][]" class="outputType wfnoempty">
406
+ <option value="1">Default</option>
407
+ <option value="2">Strip Tags</option>
408
+ <option value="3">UTF-8 Encode</option>
409
+ <option value="4">htmlentities</option>
410
+ <option value="5">Integer</option>
411
+ <option value="6">Price</option>
412
+ <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
413
+ <option value="8">CDATA</option>
414
+ </select>
415
+ <i class="dashicons dashicons-editor-expand expandType"></i>
416
+ <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
417
+ </td>
418
+ <td>
419
+ <input type="text" name="limit[]" class="wf_ps"/>
420
+ </td>
421
+ <td>
422
+ <i class="delRow dashicons dashicons-trash"></i>
423
+ </td>
424
+ </tr>
425
+ <tr>
426
+ <td>
427
+ <i class="wf_sortedtable dashicons dashicons-menu"></i>
428
+ </td>
429
+ <td>
430
+ <select name="mattributes[]" required class="wf_mattributes">
431
+ <?php echo $dropDown->googleAttributesDropdown( 'condition' ); ?>
432
+ </select>
433
+ </td>
434
+ <td>
435
+ <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
436
+ </td>
437
+ <td>
438
+ <select name="type[]" class="attr_type wfnoempty">
439
+ <option value="attribute"><?php echo _e( 'Attribute', 'woo-feed' ); ?></option>
440
+ <option value="pattern"><?php echo _e( 'Pattern', 'woo-feed' ); ?></option>
441
+ </select>
442
+ </td>
443
+ <td>
444
+ <select name="attributes[]" class="wf_attr wf_attributes">
445
+ <?php echo $product->attributeDropdown( 'condition' ); ?>
446
+ </select>
447
+ <input type="text" style=" display: none;" name="default[]" autocomplete="off" class="wf_default wf_attributes"
448
+ />
449
+ </td>
450
+ <td>
451
+ <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
452
+ </td>
453
+ <td>
454
+ <select name="output_type[][]" class="outputType wfnoempty">
455
+ <option value="1">Default</option>
456
+ <option value="2">Strip Tags</option>
457
+ <option value="3">UTF-8 Encode</option>
458
+ <option value="4">htmlentities</option>
459
+ <option value="5">Integer</option>
460
+ <option value="6">Price</option>
461
+ <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
462
+ <option value="8">CDATA</option>
463
+ </select>
464
+ <i class="dashicons dashicons-editor-expand expandType"></i>
465
+ <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
466
+ </td>
467
+ <td>
468
+ <input type="text" name="limit[]" class="wf_ps"/>
469
+ </td>
470
+ <td>
471
+ <i class="delRow dashicons dashicons-trash"></i>
472
+ </td>
473
+ </tr>
474
+ <tr>
475
+ <td>
476
+ <i class="wf_sortedtable dashicons dashicons-menu"></i>
477
+ </td>
478
+ <td>
479
+ <select name="mattributes[]" required class="wf_mattributes">
480
+ <?php echo $dropDown->googleAttributesDropdown( 'availability' ); ?>
481
+ </select>
482
+ </td>
483
+ <td>
484
+ <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
485
+ </td>
486
+ <td>
487
+ <select name="type[]" class="attr_type wfnoempty">
488
+ <option value="attribute"> <?php echo _e( 'Attribute', 'woo-feed' ); ?></option>
489
+ <option value="pattern"> <?php echo _e( 'Pattern', 'woo-feed' ); ?></option>
490
+ </select>
491
+ </td>
492
+ <td>
493
+ <select name="attributes[]" class="wf_attr wf_attributes">
494
+ <?php echo $product->attributeDropdown( 'availability' ); ?>
495
+ </select>
496
+ <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
497
+ style=" display: none;"/>
498
+ </td>
499
+ <td>
500
+ <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
501
+ </td>
502
+ <td>
503
+ <select name="output_type[][]" class="outputType wfnoempty">
504
+ <option value="1">Default</option>
505
+ <option value="2">Strip Tags</option>
506
+ <option value="3">UTF-8 Encode</option>
507
+ <option value="4">htmlentities</option>
508
+ <option value="5">Integer</option>
509
+ <option value="6">Price</option>
510
+ <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
511
+ <option value="8">CDATA</option>
512
+ </select>
513
+ <i class="dashicons dashicons-editor-expand expandType"></i>
514
+ <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
515
+ </td>
516
+ <td>
517
+ <input type="text" name="limit[]" class="wf_ps"/>
518
+ </td>
519
+ <td>
520
+ <i class="delRow dashicons dashicons-trash"></i>
521
+ </td>
522
+ </tr>
523
+ <tr>
524
+ <td>
525
+ <i class="wf_sortedtable dashicons dashicons-menu"></i>
526
+ </td>
527
+ <td>
528
+ <select name="mattributes[]" required class="wf_mattributes">
529
+ <?php echo $dropDown->googleAttributesDropdown( 'price' ); ?>
530
+ </select>
531
+ </td>
532
+ <td>
533
+ <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
534
+ </td>
535
+ <td>
536
+ <select name="type[]" class="attr_type wfnoempty">
537
+ <option value="attribute"> <?php echo _e( 'Attribute', 'woo-feed' ); ?></option>
538
+ <option value="pattern"> <?php echo _e( 'Pattern', 'woo-feed' ); ?></option>
539
+ </select>
540
+ </td>
541
+ <td>
542
+ <select name="attributes[]" class="wf_attr wf_attributes">
543
+ <?php echo $product->attributeDropdown( 'price' ); ?>
544
+ </select>
545
+ <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
546
+ style=" display: none;"/>
547
+ </td>
548
+ <td>
549
+ <input type="text" name="suffix[]" value="<?php echo get_woocommerce_currency();?>" autocomplete="off" class="wf_ps"/>
550
+ </td>
551
+ <td>
552
+ <select name="output_type[][]" class="outputType wfnoempty">
553
+ <option value="1">Default</option>
554
+ <option value="2">Strip Tags</option>
555
+ <option value="3">UTF-8 Encode</option>
556
+ <option value="4">htmlentities</option>
557
+ <option value="5">Integer</option>
558
+ <option selected value="6">Price</option>
559
+ <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
560
+ <option value="8">CDATA</option>
561
+ </select>
562
+ <i class="dashicons dashicons-editor-expand expandType"></i>
563
+ <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
564
+ </td>
565
+ <td>
566
+ <input type="text" name="limit[]" class="wf_ps"/>
567
+ </td>
568
+ <td>
569
+ <i class="delRow dashicons dashicons-trash"></i>
570
+ </td>
571
+ </tr>
572
+
573
+ <tr>
574
+ <td>
575
+ <i class="wf_sortedtable dashicons dashicons-menu"></i>
576
+ </td>
577
+ <td>
578
+ <select name="mattributes[]" required class="wf_mattributes">
579
+ <?php echo $dropDown->googleAttributesDropdown( 'sku' ); ?>
580
+ </select>
581
+ </td>
582
+ <td>
583
+ <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
584
+ </td>
585
+ <td>
586
+ <select name="type[]" class="attr_type wfnoempty">
587
+ <option value="attribute"> <?php echo _e( 'Attribute', 'woo-feed' ); ?></option>
588
+ <option value="pattern"> <?php echo _e( 'Pattern', 'woo-feed' ); ?></option>
589
+ </select>
590
+ </td>
591
+ <td>
592
+ <select name="attributes[]" class="wf_attr wf_attributes">
593
+ <?php echo $product->attributeDropdown( 'sku' ); ?>
594
+ </select>
595
+ <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
596
+ style=" display: none;"/>
597
+ </td>
598
+ <td>
599
+ <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
600
+ </td>
601
+ <td>
602
+ <select name="output_type[][]" class="outputType wfnoempty">
603
+ <option value="1">Default</option>
604
+ <option value="2">Strip Tags</option>
605
+ <option value="3">UTF-8 Encode</option>
606
+ <option value="4">htmlentities</option>
607
+ <option value="5">Integer</option>
608
+ <option value="6">Price</option>
609
+ <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
610
+ <option value="8">CDATA</option>
611
+ </select>
612
+ <i class="dashicons dashicons-editor-expand expandType"></i>
613
+ <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
614
+ </td>
615
+ <td>
616
+ <input type="text" name="limit[]" class="wf_ps"/>
617
+ </td>
618
+ <td>
619
+ <i class="delRow dashicons dashicons-trash"></i>
620
+ </td>
621
+ </tr>
622
+ <tr>
623
+ <td>
624
+ <i class="wf_sortedtable dashicons dashicons-menu"></i>
625
+ </td>
626
+ <td>
627
+ <select name="mattributes[]" required class="wf_mattributes">
628
+ <?php echo $dropDown->googleAttributesDropdown( 'brand' ); ?>
629
+ </select>
630
+ </td>
631
+ <td>
632
+ <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
633
+ </td>
634
+ <td>
635
+ <select name="type[]" class="attr_type wfnoempty">
636
+ <option value="attribute" ><?php echo _e( 'Attribute', 'woo-feed' ); ?></option>
637
+ <option value="pattern" selected><?php echo _e( 'Pattern', 'woo-feed' ); ?></option>
638
+ </select>
639
+ </td>
640
+ <td>
641
+ <select name="attributes[]" style=" display: none;" class="wf_attr wf_attributes">
642
+ <?php echo $product->attributeDropdown(); ?>
643
+ </select>
644
+ <?php
645
+ $url = site_url();
646
+ $WABrand="";
647
+ // Remove all illegal characters from a url
648
+ $url = filter_var($url, FILTER_SANITIZE_URL);
649
+ // Validate url
650
+ if (filter_var($url, FILTER_VALIDATE_URL) !== false) {
651
+ $url=parse_url($url);
652
+ if(array_key_exists('host',$url)){
653
+ $arr = explode('.',$url['host']);
654
+ $WABrand = $arr[count($arr) - 2];
655
+ }
656
+ }
657
+
658
+ ?>
659
+ <input type="text" name="default[]" value="<?php echo $WABrand; ?>" autocomplete="off" class="wf_default wf_attributes"/>
660
+ </td>
661
+ <td>
662
+ <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
663
+ </td>
664
+ <td>
665
+ <select name="output_type[][]" class="outputType wfnoempty">
666
+ <option value="1">Default</option>
667
+ <option value="2">Strip Tags</option>
668
+ <option value="3">UTF-8 Encode</option>
669
+ <option value="4">htmlentities</option>
670
+ <option value="5">Integer</option>
671
+ <option value="6">Price</option>
672
+ <option value="7">Remove Space</option>
673
+ <option value="10">Remove ShortCodes</option>
674
+ <option value="9">Remove Special Character</option>
675
+ <option value="8">CDATA</option>
676
+ </select>
677
+ <i class="dashicons dashicons-editor-expand expandType"></i>
678
+ <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
679
+ </td>
680
+ <td>
681
+ <input type="text" name="limit[]" class="wf_ps"/>
682
+ </td>
683
+ <td>
684
+ <i class="delRow dashicons dashicons-trash"></i>
685
+ </td>
686
+ </tr>
687
+ </tbody>
688
+ <tfoot>
689
+ <tr>
690
+ <td>
691
+ <button type="button" class="button-small button-primary" id="wf_newRow">
692
+ <?php echo _e( 'Add New Row', 'woo-feed' ); ?>
693
+ </button>
694
+ </td>
695
+ <td colspan="8">
696
+
697
+ </td>
698
+ </tr>
699
+ </tfoot>
700
+ </table>
701
+ <table class=" widefat fixed">
702
+ <tr>
703
+ <td align="left" class="">
704
+ <div class="makeFeedResponse"></div>
705
+ <div class="makeFeedComplete"></div>
706
+ </td>
707
+ <td align="right">
708
+ <button type="submit" class="wfbtn">
709
+ <?php echo _e( 'Save & Generate Feed', 'woo-feed' ); ?>
710
+ </button>
711
+ </td>
712
+ </tr>
713
+ </table>
714
+ </div>
715
+ </li>
716
+ <?php include plugin_dir_path(__FILE__) . "../woo-feed-ftp-sftp-template.php"; ?>
717
+ </ul>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/partials/templates/google_taxonomy.txt CHANGED
@@ -1,3 +1,4 @@
 
1
  1 - Animals & Pet Supplies
2
  3237 - Animals & Pet Supplies > Live Animals
3
  2 - Animals & Pet Supplies > Pet Supplies
@@ -15,6 +16,8 @@
15
  5082 - Animals & Pet Supplies > Pet Supplies > Cat Supplies > Cat Apparel
16
  4433 - Animals & Pet Supplies > Pet Supplies > Cat Supplies > Cat Beds
17
  3367 - Animals & Pet Supplies > Pet Supplies > Cat Supplies > Cat Food
 
 
18
  4997 - Animals & Pet Supplies > Pet Supplies > Cat Supplies > Cat Furniture
19
  500059 - Animals & Pet Supplies > Pet Supplies > Cat Supplies > Cat Furniture Accessories
20
  4999 - Animals & Pet Supplies > Pet Supplies > Cat Supplies > Cat Litter
@@ -29,6 +32,8 @@
29
  7372 - Animals & Pet Supplies > Pet Supplies > Dog Supplies > Dog Diaper Pads & Liners
30
  499900 - Animals & Pet Supplies > Pet Supplies > Dog Supplies > Dog Diapers
31
  3530 - Animals & Pet Supplies > Pet Supplies > Dog Supplies > Dog Food
 
 
32
  5094 - Animals & Pet Supplies > Pet Supplies > Dog Supplies > Dog Houses
33
  7428 - Animals & Pet Supplies > Pet Supplies > Dog Supplies > Dog Kennel & Run Accessories
34
  7274 - Animals & Pet Supplies > Pet Supplies > Dog Supplies > Dog Kennels & Runs
@@ -247,6 +252,8 @@
247
  5626 - Apparel & Accessories > Clothing Accessories > Baby & Toddler Clothing Accessories > Baby Protective Wear
248
  1786 - Apparel & Accessories > Clothing Accessories > Balaclavas
249
  168 - Apparel & Accessories > Clothing Accessories > Bandanas & Headties
 
 
250
  3913 - Apparel & Accessories > Clothing Accessories > Belt Buckles
251
  169 - Apparel & Accessories > Clothing Accessories > Belts
252
  5443 - Apparel & Accessories > Clothing Accessories > Bridal Accessories
@@ -264,6 +271,9 @@
264
  1948 - Apparel & Accessories > Clothing Accessories > Hair Accessories > Hair Forks & Sticks
265
  6183 - Apparel & Accessories > Clothing Accessories > Hair Accessories > Hair Nets
266
  502988 - Apparel & Accessories > Clothing Accessories > Hair Accessories > Hair Pins, Claws & Clips
 
 
 
267
  5915 - Apparel & Accessories > Clothing Accessories > Hair Accessories > Hair Wreaths
268
  1662 - Apparel & Accessories > Clothing Accessories > Hair Accessories > Headbands
269
  1483 - Apparel & Accessories > Clothing Accessories > Hair Accessories > Ponytail Holders
@@ -287,6 +297,8 @@
287
  4179 - Apparel & Accessories > Clothing Accessories > Pinback Buttons
288
  499972 - Apparel & Accessories > Clothing Accessories > Sashes
289
  177 - Apparel & Accessories > Clothing Accessories > Scarves & Shawls
 
 
290
  178 - Apparel & Accessories > Clothing Accessories > Sunglasses
291
  179 - Apparel & Accessories > Clothing Accessories > Suspenders
292
  180 - Apparel & Accessories > Clothing Accessories > Tie Clips
@@ -356,6 +368,8 @@
356
  505372 - Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials
357
  24 - Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Art & Craft Paper
358
  505399 - Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Art & Craft Paper > Cardstock & Scrapbooking Paper
 
 
359
  2532 - Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Art & Craft Paper > Construction Paper
360
  8168 - Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Art & Craft Paper > Craft Foil
361
  505400 - Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Art & Craft Paper > Drawing & Painting Paper
@@ -418,6 +432,8 @@
418
  505383 - Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Leather & Vinyl
419
  44 - Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Pottery & Sculpting Materials
420
  3692 - Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Pottery & Sculpting Materials > Clay & Modeling Dough
 
 
421
  505401 - Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Pottery & Sculpting Materials > Papier Mache Mixes
422
  505804 - Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Pottery & Sculpting Materials > Plaster Gauze
423
  505402 - Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Pottery & Sculpting Materials > Pottery Slips
@@ -488,6 +504,8 @@
488
  615 - Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Textile Craft Machines > Sewing Machines
489
  6137 - Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Textile Craft Machines > Spinning Wheels
490
  6156 - Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Thimbles & Sewing Palms
 
 
491
  505387 - Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Thread & Yarn Tools
492
  6164 - Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Thread & Yarn Tools > Fiber Cards & Brushes
493
  6138 - Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Thread & Yarn Tools > Hand Spindles
@@ -510,6 +528,8 @@
510
  216 - Arts & Entertainment > Hobbies & Creative Arts > Collectibles
511
  3599 - Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Autographs
512
  217 - Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Collectible Coins & Currency
 
 
513
  6997 - Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Collectible Trading Cards
514
  220 - Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Collectible Weapons
515
  499953 - Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Collectible Weapons > Collectible Guns
@@ -775,8 +795,8 @@
775
  6728 - Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Woodwinds > Train Whistles
776
  5709 - Arts & Entertainment > Party & Celebration
777
  2559 - Arts & Entertainment > Party & Celebration > Gift Giving
778
- 6100 - Arts & Entertainment > Party & Celebration > Gift Giving > Corsage & Boutonnière Pins
779
- 5916 - Arts & Entertainment > Party & Celebration > Gift Giving > Corsages & Boutonnières
780
  2899 - Arts & Entertainment > Party & Celebration > Gift Giving > Fresh Cut Flowers
781
  53 - Arts & Entertainment > Party & Celebration > Gift Giving > Gift Cards & Certificates
782
  94 - Arts & Entertainment > Party & Celebration > Gift Giving > Gift Wrapping
@@ -812,7 +832,7 @@
812
  6906 - Arts & Entertainment > Party & Celebration > Party Supplies > Party Hats
813
  502981 - Arts & Entertainment > Party & Celebration > Party Supplies > Party Streamers & Curtains
814
  502972 - Arts & Entertainment > Party & Celebration > Party Supplies > Party Supply Kits
815
- 3994 - Arts & Entertainment > Party & Celebration > Party Supplies > Piñatas
816
  5472 - Arts & Entertainment > Party & Celebration > Party Supplies > Place Card Holders
817
  2104 - Arts & Entertainment > Party & Celebration > Party Supplies > Place Cards
818
  1887 - Arts & Entertainment > Party & Celebration > Party Supplies > Response Cards
@@ -826,6 +846,11 @@
826
  503028 - Arts & Entertainment > Party & Celebration > Special Effects > Special Effects Light Stands
827
  410 - Arts & Entertainment > Party & Celebration > Special Effects > Special Effects Lighting
828
  5868 - Arts & Entertainment > Party & Celebration > Trophies & Awards
 
 
 
 
 
829
  537 - Baby & Toddler
830
  4678 - Baby & Toddler > Baby Bathing
831
  4679 - Baby & Toddler > Baby Bathing > Baby Bathtubs & Bath Seats
@@ -854,6 +879,8 @@
854
  7360 - Baby & Toddler > Baby Toys & Activity Equipment > Baby Soothers
855
  1241 - Baby & Toddler > Baby Toys & Activity Equipment > Baby Walkers & Entertainers
856
  1243 - Baby & Toddler > Baby Toys & Activity Equipment > Play Mats & Gyms
 
 
857
  539 - Baby & Toddler > Baby Toys & Activity Equipment > Play Yards
858
  3459 - Baby & Toddler > Baby Toys & Activity Equipment > Push & Pull Toys
859
  1244 - Baby & Toddler > Baby Toys & Activity Equipment > Rattles
@@ -890,6 +917,8 @@
890
  5720 - Baby & Toddler > Nursing & Feeding > Baby & Toddler Food > Baby Snacks
891
  8436 - Baby & Toddler > Nursing & Feeding > Baby & Toddler Food > Toddler Nutrition Drinks & Shakes
892
  5630 - Baby & Toddler > Nursing & Feeding > Baby Bottle Nipples & Liners
 
 
893
  564 - Baby & Toddler > Nursing & Feeding > Baby Bottles
894
  4768 - Baby & Toddler > Nursing & Feeding > Baby Care Timers
895
  2125 - Baby & Toddler > Nursing & Feeding > Bibs
@@ -907,6 +936,8 @@
907
  552 - Baby & Toddler > Potty Training > Potty Seats
908
  6953 - Baby & Toddler > Potty Training > Potty Training Kits
909
  6899 - Baby & Toddler > Swaddling & Receiving Blankets
 
 
910
  111 - Business & Industrial
911
  5863 - Business & Industrial > Advertising & Marketing
912
  5884 - Business & Industrial > Advertising & Marketing > Brochures
@@ -916,6 +947,11 @@
916
  6991 - Business & Industrial > Agriculture > Animal Husbandry
917
  499997 - Business & Industrial > Agriculture > Animal Husbandry > Egg Incubators
918
  505821 - Business & Industrial > Agriculture > Animal Husbandry > Livestock Feed
 
 
 
 
 
919
  6990 - Business & Industrial > Agriculture > Animal Husbandry > Livestock Feeders & Waterers
920
  499946 - Business & Industrial > Agriculture > Animal Husbandry > Livestock Halters
921
  7261 - Business & Industrial > Automation Control Components
@@ -1019,6 +1055,9 @@
1019
  511 - Business & Industrial > Medical > Medical Supplies > Disposable Gloves
1020
  7063 - Business & Industrial > Medical > Medical Supplies > Finger Cots
1021
  499696 - Business & Industrial > Medical > Medical Supplies > Medical Needles & Syringes
 
 
 
1022
  505828 - Business & Industrial > Medical > Medical Supplies > Ostomy Supplies
1023
  7324 - Business & Industrial > Medical > Medical Supplies > Tongue Depressors
1024
  6490 - Business & Industrial > Medical > Medical Teaching Equipment
@@ -1046,6 +1085,8 @@
1046
  505808 - Business & Industrial > Retail > Money Handling > Cash Register & POS Terminal Accessories > Credit Card Terminals
1047
  5310 - Business & Industrial > Retail > Money Handling > Cash Register & POS Terminal Accessories > Signature Capture Pads
1048
  505824 - Business & Industrial > Retail > Money Handling > Cash Registers & POS Terminals
 
 
1049
  4151 - Business & Industrial > Retail > Money Handling > Coin & Bill Counters
1050
  3273 - Business & Industrial > Retail > Money Handling > Money Changers
1051
  4329 - Business & Industrial > Retail > Money Handling > Money Deposit Bags
@@ -1265,6 +1306,8 @@
1265
  6545 - Electronics > Audio > Audio Components > Channel Strips
1266
  6546 - Electronics > Audio > Audio Components > Direct Boxes
1267
  505771 - Electronics > Audio > Audio Components > Headphones & Headsets
 
 
1268
  234 - Electronics > Audio > Audio Components > Microphones
1269
  246 - Electronics > Audio > Audio Components > Signal Processors
1270
  5435 - Electronics > Audio > Audio Components > Signal Processors > Crossovers
@@ -1347,10 +1390,15 @@
1347
  2353 - Electronics > Communications > Telephony > Mobile Phone Accessories > Mobile Phone Cases
1348
  4550 - Electronics > Communications > Telephony > Mobile Phone Accessories > Mobile Phone Charms & Straps
1349
  6030 - Electronics > Communications > Telephony > Mobile Phone Accessories > Mobile Phone Pre-Paid Cards & SIM Cards
 
 
1350
  7347 - Electronics > Communications > Telephony > Mobile Phone Accessories > Mobile Phone Replacement Parts
1351
  5566 - Electronics > Communications > Telephony > Mobile Phone Accessories > Mobile Phone Stands
1352
  499916 - Electronics > Communications > Telephony > Mobile Phone Accessories > SIM Card Ejection Tools
1353
  267 - Electronics > Communications > Telephony > Mobile Phones
 
 
 
1354
  1924 - Electronics > Communications > Telephony > Satellite Phones
1355
  265 - Electronics > Communications > Telephony > Telephone Accessories
1356
  269 - Electronics > Communications > Telephony > Telephone Accessories > Phone Cards
@@ -1376,6 +1424,8 @@
1376
  500002 - Electronics > Computers > Smart Glasses
1377
  4745 - Electronics > Computers > Tablet Computers
1378
  8539 - Electronics > Computers > Thin & Zero Clients
 
 
1379
  502995 - Electronics > Computers > Touch Table Computers
1380
  2082 - Electronics > Electronics Accessories
1381
  258 - Electronics > Electronics Accessories > Adapters
@@ -1451,6 +1501,11 @@
1451
  505801 - Electronics > Electronics Accessories > Computer Components > Input Devices > Electronic Card Readers
1452
  5366 - Electronics > Electronics Accessories > Computer Components > Input Devices > Fingerprint Readers
1453
  301 - Electronics > Electronics Accessories > Computer Components > Input Devices > Game Controllers
 
 
 
 
 
1454
  499950 - Electronics > Electronics Accessories > Computer Components > Input Devices > Gesture Control Input Devices
1455
  302 - Electronics > Electronics Accessories > Computer Components > Input Devices > Graphics Tablets
1456
  1562 - Electronics > Electronics Accessories > Computer Components > Input Devices > KVM Switches
@@ -1635,6 +1690,8 @@
1635
  414 - Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Beer
1636
  7486 - Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Bitters
1637
  5725 - Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Cocktail Mixes
 
 
1638
  5887 - Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Flavored Alcoholic Beverages
1639
  6761 - Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Hard Cider
1640
  417 - Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Liquor & Spirits
@@ -1644,6 +1701,8 @@
1644
  2933 - Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Liquor & Spirits > Liqueurs
1645
  2605 - Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Liquor & Spirits > Rum
1646
  502976 - Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Liquor & Spirits > Shochu & Soju
 
 
1647
  2220 - Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Liquor & Spirits > Tequila
1648
  2107 - Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Liquor & Spirits > Vodka
1649
  1926 - Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Liquor & Spirits > Whiskey
@@ -1662,6 +1721,12 @@
1662
  2073 - Food, Beverages & Tobacco > Beverages > Tea & Infusions
1663
  7528 - Food, Beverages & Tobacco > Beverages > Vinegar Drinks
1664
  420 - Food, Beverages & Tobacco > Beverages > Water
 
 
 
 
 
 
1665
  422 - Food, Beverages & Tobacco > Food Items
1666
  1876 - Food, Beverages & Tobacco > Food Items > Bakery
1667
  1573 - Food, Beverages & Tobacco > Food Items > Bakery > Bagels
@@ -1731,6 +1796,7 @@
1731
  5756 - Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Dough > Cookie & Brownie Dough
1732
  5753 - Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Dough > Pie Crusts
1733
  6775 - Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Edible Baking Decorations
 
1734
  5105 - Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Floss Sugar
1735
  2775 - Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Flour
1736
  7127 - Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Food Coloring
@@ -1811,7 +1877,7 @@
1811
  6640 - Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Longan
1812
  6639 - Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Loquats
1813
  6638 - Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Lychees
1814
- 6813 - Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Madroño
1815
  6647 - Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Mamey
1816
  6645 - Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Mangosteens
1817
  6649 - Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Melons
@@ -1924,6 +1990,10 @@
1924
  4688 - Food, Beverages & Tobacco > Food Items > Grains, Rice & Cereal > Wheat
1925
  432 - Food, Beverages & Tobacco > Food Items > Meat, Seafood & Eggs
1926
  4627 - Food, Beverages & Tobacco > Food Items > Meat, Seafood & Eggs > Eggs
 
 
 
 
1927
  4628 - Food, Beverages & Tobacco > Food Items > Meat, Seafood & Eggs > Meat
1928
  5811 - Food, Beverages & Tobacco > Food Items > Meat, Seafood & Eggs > Meat > Canned Meats
1929
  5805 - Food, Beverages & Tobacco > Food Items > Meat, Seafood & Eggs > Meat > Fresh & Frozen Meats
@@ -1935,7 +2005,7 @@
1935
  434 - Food, Beverages & Tobacco > Food Items > Pasta & Noodles
1936
  5814 - Food, Beverages & Tobacco > Food Items > Prepared Foods
1937
  499989 - Food, Beverages & Tobacco > Food Items > Prepared Foods > Prepared Appetizers & Side Dishes
1938
- 499988 - Food, Beverages & Tobacco > Food Items > Prepared Foods > Prepared Meals & Entrées
1939
  4608 - Food, Beverages & Tobacco > Food Items > Seasonings & Spices
1940
  1529 - Food, Beverages & Tobacco > Food Items > Seasonings & Spices > Herbs & Spices
1941
  4610 - Food, Beverages & Tobacco > Food Items > Seasonings & Spices > MSG
@@ -1944,6 +2014,8 @@
1944
  423 - Food, Beverages & Tobacco > Food Items > Snack Foods
1945
  7159 - Food, Beverages & Tobacco > Food Items > Snack Foods > Breadsticks
1946
  5747 - Food, Beverages & Tobacco > Food Items > Snack Foods > Cereal & Granola Bars
 
 
1947
  6192 - Food, Beverages & Tobacco > Food Items > Snack Foods > Cheese Puffs
1948
  2392 - Food, Beverages & Tobacco > Food Items > Snack Foods > Chips
1949
  1445 - Food, Beverages & Tobacco > Food Items > Snack Foods > Crackers
@@ -1974,6 +2046,8 @@
1974
  3741 - Food, Beverages & Tobacco > Tobacco Products > Loose Tobacco
1975
  499963 - Food, Beverages & Tobacco > Tobacco Products > Smoking Pipes
1976
  4091 - Food, Beverages & Tobacco > Tobacco Products > Vaporizers & Electronic Cigarettes
 
 
1977
  436 - Furniture
1978
  554 - Furniture > Baby & Toddler Furniture
1979
  6349 - Furniture > Baby & Toddler Furniture > Baby & Toddler Furniture Sets
@@ -2175,6 +2249,12 @@
2175
  1788 - Hardware > Fencing & Barriers > Gates
2176
  502984 - Hardware > Fencing & Barriers > Lattice
2177
  499958 - Hardware > Fencing & Barriers > Safety & Crowd Control Barriers
 
 
 
 
 
 
2178
  502975 - Hardware > Fuel Containers & Tanks
2179
  2878 - Hardware > Hardware Accessories
2180
  7092 - Hardware > Hardware Accessories > Brackets & Reinforcement Braces
@@ -2465,6 +2545,8 @@
2465
  1994 - Hardware > Tools > Drills > Pneumatic Drills
2466
  6461 - Hardware > Tools > Electrician Fish Tape
2467
  338 - Hardware > Tools > Flashlights & Headlamps
 
 
2468
  7556 - Hardware > Tools > Grease Guns
2469
  1219 - Hardware > Tools > Grinders
2470
  1185 - Hardware > Tools > Grips
@@ -2633,6 +2715,8 @@
2633
  2633 - Health & Beauty > Health Care > Biometric Monitors > Breathalyzers
2634
  497 - Health & Beauty > Health Care > Biometric Monitors > Cholesterol Analyzers
2635
  505822 - Health & Beauty > Health Care > Biometric Monitors > Fertility Monitors and Ovulation Tests
 
 
2636
  501 - Health & Beauty > Health Care > Biometric Monitors > Medical Thermometers
2637
  4767 - Health & Beauty > Health Care > Biometric Monitors > Prenatal Heart Rate Monitors
2638
  5551 - Health & Beauty > Health Care > Biometric Monitors > Pulse Oximeters
@@ -2653,7 +2737,7 @@
2653
  2984 - Health & Beauty > Health Care > Fitness & Nutrition > Nutrition Bars
2654
  5702 - Health & Beauty > Health Care > Fitness & Nutrition > Nutrition Drinks & Shakes
2655
  6242 - Health & Beauty > Health Care > Fitness & Nutrition > Nutrition Gels & Chews
2656
- 6871 - Health & Beauty > Health Care > Fitness & Nutrition > Nutritional Food Purées
2657
  7413 - Health & Beauty > Health Care > Fitness & Nutrition > Tube Feeding Supplements
2658
  525 - Health & Beauty > Health Care > Fitness & Nutrition > Vitamins & Supplements
2659
  5690 - Health & Beauty > Health Care > Hearing Aids
@@ -2805,6 +2889,8 @@
2805
  7467 - Health & Beauty > Personal Care > Cosmetics > Skin Care > Facial Cleansing Kits
2806
  6791 - Health & Beauty > Personal Care > Cosmetics > Skin Care > Facial Pore Strips
2807
  482 - Health & Beauty > Personal Care > Cosmetics > Skin Care > Lip Balms & Treatments
 
 
2808
  2592 - Health & Beauty > Personal Care > Cosmetics > Skin Care > Lotion & Moisturizer
2809
  6034 - Health & Beauty > Personal Care > Cosmetics > Skin Care > Makeup Removers
2810
  6753 - Health & Beauty > Personal Care > Cosmetics > Skin Care > Petroleum Jelly
@@ -2815,10 +2901,14 @@
2815
  5338 - Health & Beauty > Personal Care > Cosmetics > Skin Care > Tanning Products > Self Tanner
2816
  5339 - Health & Beauty > Personal Care > Cosmetics > Skin Care > Tanning Products > Tanning Oil & Lotion
2817
  5976 - Health & Beauty > Personal Care > Cosmetics > Skin Care > Toners & Astringents
 
 
2818
  6863 - Health & Beauty > Personal Care > Cosmetics > Skin Care > Wart Removers
2819
  4929 - Health & Beauty > Personal Care > Cotton Balls
2820
  2934 - Health & Beauty > Personal Care > Cotton Swabs
2821
  484 - Health & Beauty > Personal Care > Deodorant & Anti-Perspirant
 
 
2822
  506 - Health & Beauty > Personal Care > Ear Care
2823
  5706 - Health & Beauty > Personal Care > Ear Care > Ear Candles
2824
  6559 - Health & Beauty > Personal Care > Ear Care > Ear Drops
@@ -2864,6 +2954,9 @@
2864
  3407 - Health & Beauty > Personal Care > Hair Care > Hair Styling Tools > Hair Straighteners
2865
  499992 - Health & Beauty > Personal Care > Hair Care > Hair Styling Tools > Hair Styling Tool Sets
2866
  2441 - Health & Beauty > Personal Care > Hair Care > Shampoo & Conditioner
 
 
 
2867
  5663 - Health & Beauty > Personal Care > Massage & Relaxation
2868
  500060 - Health & Beauty > Personal Care > Massage & Relaxation > Back Scratchers
2869
  233420 - Health & Beauty > Personal Care > Massage & Relaxation > Eye Pillows
@@ -2873,6 +2966,9 @@
2873
  8135 - Health & Beauty > Personal Care > Massage & Relaxation > Massage Stones
2874
  2074 - Health & Beauty > Personal Care > Massage & Relaxation > Massage Tables
2875
  471 - Health & Beauty > Personal Care > Massage & Relaxation > Massagers
 
 
 
2876
  526 - Health & Beauty > Personal Care > Oral Care
2877
  6189 - Health & Beauty > Personal Care > Oral Care > Breath Spray
2878
  2620 - Health & Beauty > Personal Care > Oral Care > Dental Floss
@@ -2938,6 +3034,7 @@
2938
  2521 - Health & Beauty > Personal Care > Vision Care > Eyewear Accessories
2939
  5507 - Health & Beauty > Personal Care > Vision Care > Eyewear Accessories > Eyewear Cases & Holders
2940
  352853 - Health & Beauty > Personal Care > Vision Care > Eyewear Accessories > Eyewear Lens Cleaning Solutions
 
2941
  8204 - Health & Beauty > Personal Care > Vision Care > Eyewear Accessories > Eyewear Straps & Chains
2942
  6977 - Health & Beauty > Personal Care > Vision Care > Sunglass Lenses
2943
  536 - Home & Garden
@@ -3132,6 +3229,8 @@
3132
  1934 - Home & Garden > Flood, Fire & Gas Safety > Fire Sprinklers
3133
  7227 - Home & Garden > Flood, Fire & Gas Safety > Heat Detectors
3134
  499673 - Home & Garden > Flood, Fire & Gas Safety > Smoke & Carbon Monoxide Detectors
 
 
3135
  1306 - Home & Garden > Flood, Fire & Gas Safety > Water & Flood Detectors
3136
  3348 - Home & Garden > Household Appliance Accessories
3137
  2367 - Home & Garden > Household Appliance Accessories > Air Conditioner Accessories
@@ -3184,6 +3283,10 @@
3184
  611 - Home & Garden > Household Appliances > Climate Control Appliances > Space Heaters
3185
  235920 - Home & Garden > Household Appliances > Floor & Carpet Dryers
3186
  616 - Home & Garden > Household Appliances > Floor & Steam Cleaners
 
 
 
 
3187
  5294 - Home & Garden > Household Appliances > Floor Polishers & Buffers
3188
  4483 - Home & Garden > Household Appliances > Futon Dryers
3189
  6741 - Home & Garden > Household Appliances > Garage Door Keypads & Remotes
@@ -3226,6 +3329,8 @@
3226
  4977 - Home & Garden > Household Supplies > Household Cleaning Supplies > Household Cleaning Products > Floor Cleaners
3227
  5825 - Home & Garden > Household Supplies > Household Cleaning Supplies > Household Cleaning Products > Furniture Cleaners & Polish
3228
  4976 - Home & Garden > Household Supplies > Household Cleaning Supplies > Household Cleaning Products > Glass & Surface Cleaners
 
 
3229
  6474 - Home & Garden > Household Supplies > Household Cleaning Supplies > Household Cleaning Products > Household Disinfectants
3230
  4978 - Home & Garden > Household Supplies > Household Cleaning Supplies > Household Cleaning Products > Oven & Grill Cleaners
3231
  4979 - Home & Garden > Household Supplies > Household Cleaning Supplies > Household Cleaning Products > Pet Odor & Stain Removers
@@ -3367,7 +3472,7 @@
3367
  6071 - Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware & Bakeware Combo Sets
3368
  655 - Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware > Casserole Dishes
3369
  4721 - Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware > Cookware Sets
3370
- 6838 - Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware > Crêpe & Blini Pans
3371
  656 - Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware > Double Boilers
3372
  657 - Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware > Dutch Ovens
3373
  6518 - Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware > Fermentation & Pickling Crocks
@@ -3376,7 +3481,7 @@
3376
  4459 - Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware > Paella Pans
3377
  660 - Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware > Pressure Cookers & Canners
3378
  661 - Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware > Saucepans
3379
- 4423 - Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware > Sauté Pans
3380
  662 - Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware > Skillets & Frying Pans
3381
  663 - Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware > Stock Pots
3382
  659 - Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware > Stovetop Kettles
@@ -3757,6 +3862,8 @@
3757
  721 - Home & Garden > Lawn & Garden > Gardening > Pots & Planters
3758
  6834 - Home & Garden > Lawn & Garden > Gardening > Rain Barrels
3759
  1794 - Home & Garden > Lawn & Garden > Gardening > Sands & Soils
 
 
3760
  2918 - Home & Garden > Lawn & Garden > Outdoor Living
3761
  499908 - Home & Garden > Lawn & Garden > Outdoor Living > Awning Accessories
3762
  499907 - Home & Garden > Lawn & Garden > Outdoor Living > Awnings
@@ -3920,8 +4027,13 @@
3920
  5590 - Home & Garden > Plants > Aquatic Plants
3921
  984 - Home & Garden > Plants > Flowers
3922
  6762 - Home & Garden > Plants > Indoor & Outdoor Plants
 
 
 
3923
  505285 - Home & Garden > Plants > Plant & Herb Growing Kits
3924
  2802 - Home & Garden > Plants > Seeds
 
 
3925
  1684 - Home & Garden > Plants > Trees
3926
  729 - Home & Garden > Pool & Spa
3927
  2832 - Home & Garden > Pool & Spa > Pool & Spa Accessories
@@ -3943,6 +4055,10 @@
3943
  2997 - Home & Garden > Pool & Spa > Pool & Spa Accessories > Pool Sweeps & Vacuums
3944
  2672 - Home & Garden > Pool & Spa > Pool & Spa Accessories > Pool Toys
3945
  5546 - Home & Garden > Pool & Spa > Pool & Spa Accessories > Pool Water Slides
 
 
 
 
3946
  3992 - Home & Garden > Pool & Spa > Saunas
3947
  2982 - Home & Garden > Pool & Spa > Spas
3948
  2810 - Home & Garden > Pool & Spa > Swimming Pools
@@ -4018,10 +4134,23 @@
4018
  3437 - Mature > Weapons > Whips
4019
  783 - Media
4020
  784 - Media > Books
 
 
 
4021
  499995 - Media > Carpentry & Woodworking Project Plans
4022
  839 - Media > DVDs & Videos
 
 
 
4023
  886 - Media > Magazines & Newspapers
 
 
4024
  855 - Media > Music & Sound Recordings
 
 
 
 
 
4025
  5037 - Media > Product Manuals
4026
  499821 - Media > Product Manuals > Camera & Optics Manuals
4027
  5038 - Media > Product Manuals > Electronics Manuals
@@ -4061,14 +4190,21 @@
4061
  925 - Office Supplies > Filing & Organization > File Boxes
4062
  930 - Office Supplies > Filing & Organization > File Folders
4063
  6884 - Office Supplies > Filing & Organization > Folders & Report Covers
 
 
4064
  5070 - Office Supplies > Filing & Organization > Greeting Card Organizers
4065
  6962 - Office Supplies > Filing & Organization > Mail Sorters
4066
  3062 - Office Supplies > Filing & Organization > Pen & Pencil Cases
4067
  6885 - Office Supplies > Filing & Organization > Portfolios & Padfolios
 
 
4068
  6779 - Office Supplies > Filing & Organization > Recipe Card Boxes
4069
  932 - Office Supplies > General Office Supplies
4070
  6319 - Office Supplies > General Office Supplies > Brass Fasteners
4071
  2591 - Office Supplies > General Office Supplies > Correction Fluids, Pens & Tapes
 
 
 
4072
  938 - Office Supplies > General Office Supplies > Erasers
4073
  960 - Office Supplies > General Office Supplies > Labels & Tags
4074
  4377 - Office Supplies > General Office Supplies > Labels & Tags > Address Labels
@@ -4081,6 +4217,8 @@
4081
  505805 - Office Supplies > General Office Supplies > Mounting Putty
4082
  934 - Office Supplies > General Office Supplies > Office Tape
4083
  936 - Office Supplies > General Office Supplies > Paper Clips & Clamps
 
 
4084
  956 - Office Supplies > General Office Supplies > Paper Products
4085
  2658 - Office Supplies > General Office Supplies > Paper Products > Binder Paper
4086
  5264 - Office Supplies > General Office Supplies > Paper Products > Blank ID Cards
@@ -4115,6 +4253,11 @@
4115
  950 - Office Supplies > Office Equipment
4116
  499864 - Office Supplies > Office Equipment > Calculator Accessories
4117
  333 - Office Supplies > Office Equipment > Calculators
 
 
 
 
 
4118
  337 - Office Supplies > Office Equipment > Electronic Dictionaries & Translators
4119
  952 - Office Supplies > Office Equipment > Label Makers
4120
  1625 - Office Supplies > Office Equipment > Laminators
@@ -4135,6 +4278,8 @@
4135
  503746 - Office Supplies > Office Instruments > Tape Dispensers
4136
  4470 - Office Supplies > Office Instruments > Writing & Drawing Instrument Accessories
4137
  7117 - Office Supplies > Office Instruments > Writing & Drawing Instrument Accessories > Marker & Highlighter Ink Refills
 
 
4138
  4471 - Office Supplies > Office Instruments > Writing & Drawing Instrument Accessories > Pen Ink & Refills
4139
  4472 - Office Supplies > Office Instruments > Writing & Drawing Instrument Accessories > Pencil Lead & Refills
4140
  977 - Office Supplies > Office Instruments > Writing & Drawing Instruments
@@ -4142,6 +4287,8 @@
4142
  978 - Office Supplies > Office Instruments > Writing & Drawing Instruments > Chalk
4143
  979 - Office Supplies > Office Instruments > Writing & Drawing Instruments > Crayons
4144
  980 - Office Supplies > Office Instruments > Writing & Drawing Instruments > Markers & Highlighters
 
 
4145
  6067 - Office Supplies > Office Instruments > Writing & Drawing Instruments > Multifunction Writing Instruments
4146
  4752 - Office Supplies > Office Instruments > Writing & Drawing Instruments > Pastels
4147
  6065 - Office Supplies > Office Instruments > Writing & Drawing Instruments > Pens & Pencils
@@ -4149,6 +4296,8 @@
4149
  6068 - Office Supplies > Office Instruments > Writing & Drawing Instruments > Pens & Pencils > Pencils
4150
  3026 - Office Supplies > Office Instruments > Writing & Drawing Instruments > Pens & Pencils > Pencils > Art Pencils
4151
  981 - Office Supplies > Office Instruments > Writing & Drawing Instruments > Pens & Pencils > Pencils > Writing Pencils
 
 
4152
  982 - Office Supplies > Office Instruments > Writing & Drawing Instruments > Pens & Pencils > Pens
4153
  2014 - Office Supplies > Paper Handling
4154
  6486 - Office Supplies > Paper Handling > Fingertip Grips
@@ -4162,6 +4311,7 @@
4162
  966 - Office Supplies > Presentation Supplies > Display Boards
4163
  7525 - Office Supplies > Presentation Supplies > Display Boards > Bulletin Board Accessories
4164
  7526 - Office Supplies > Presentation Supplies > Display Boards > Bulletin Board Accessories > Bulletin Board Trim
 
4165
  2401 - Office Supplies > Presentation Supplies > Display Boards > Bulletin Boards
4166
  2263 - Office Supplies > Presentation Supplies > Display Boards > Foam Boards
4167
  1627 - Office Supplies > Presentation Supplies > Display Boards > Mounting Boards
@@ -4304,7 +4454,7 @@
4304
  1006 - Sporting Goods > Athletics > Fencing
4305
  3261 - Sporting Goods > Athletics > Fencing > Fencing Protective Gear
4306
  3366 - Sporting Goods > Athletics > Fencing > Fencing Protective Gear > Fencing Gloves & Cuffs
4307
- 499740 - Sporting Goods > Athletics > Fencing > Fencing Protective Gear > Fencing Jackets & Lamés
4308
  3707 - Sporting Goods > Athletics > Fencing > Fencing Protective Gear > Fencing Masks
4309
  3622 - Sporting Goods > Athletics > Fencing > Fencing Weapons
4310
  499741 - Sporting Goods > Athletics > Field Hockey & Lacrosse
@@ -4475,6 +4625,8 @@
4475
  994 - Sporting Goods > Exercise & Fitness > Cardio > Cardio Machines > Exercise Bikes
4476
  995 - Sporting Goods > Exercise & Fitness > Cardio > Cardio Machines > Rowing Machines
4477
  996 - Sporting Goods > Exercise & Fitness > Cardio > Cardio Machines > Stair Climbers & Steppers
 
 
4478
  997 - Sporting Goods > Exercise & Fitness > Cardio > Cardio Machines > Treadmills
4479
  2614 - Sporting Goods > Exercise & Fitness > Cardio > Jump Ropes
4480
  993 - Sporting Goods > Exercise & Fitness > Exercise Balls
@@ -5150,6 +5302,10 @@
5150
  3129 - Toys & Games > Toys > Pretend Play > Pretend Professions & Role Playing
5151
  8295 - Toys & Games > Toys > Pretend Play > Pretend Shopping & Grocery
5152
  3298 - Toys & Games > Toys > Pretend Play > Toy Kitchens & Play Food
 
 
 
 
5153
  3751 - Toys & Games > Toys > Pretend Play > Toy Tools
5154
  2778 - Toys & Games > Toys > Remote Control Toy Accessories
5155
  2546 - Toys & Games > Toys > Remote Control Toys
@@ -5424,4 +5580,4 @@
5424
  3095 - Vehicles & Parts > Vehicles > Watercraft > Motor Boats
5425
  1130 - Vehicles & Parts > Vehicles > Watercraft > Personal Watercraft
5426
  3087 - Vehicles & Parts > Vehicles > Watercraft > Sailboats
5427
- 5644 - Vehicles & Parts > Vehicles > Watercraft > Yachts
1
+ # Google_Product_Taxonomy_Version: 2019-07-10
2
  1 - Animals & Pet Supplies
3
  3237 - Animals & Pet Supplies > Live Animals
4
  2 - Animals & Pet Supplies > Pet Supplies
16
  5082 - Animals & Pet Supplies > Pet Supplies > Cat Supplies > Cat Apparel
17
  4433 - Animals & Pet Supplies > Pet Supplies > Cat Supplies > Cat Beds
18
  3367 - Animals & Pet Supplies > Pet Supplies > Cat Supplies > Cat Food
19
+ 543684 - Animals & Pet Supplies > Pet Supplies > Cat Supplies > Cat Food > Non-prescription Cat Food
20
+ 543683 - Animals & Pet Supplies > Pet Supplies > Cat Supplies > Cat Food > Prescription Cat Food
21
  4997 - Animals & Pet Supplies > Pet Supplies > Cat Supplies > Cat Furniture
22
  500059 - Animals & Pet Supplies > Pet Supplies > Cat Supplies > Cat Furniture Accessories
23
  4999 - Animals & Pet Supplies > Pet Supplies > Cat Supplies > Cat Litter
32
  7372 - Animals & Pet Supplies > Pet Supplies > Dog Supplies > Dog Diaper Pads & Liners
33
  499900 - Animals & Pet Supplies > Pet Supplies > Dog Supplies > Dog Diapers
34
  3530 - Animals & Pet Supplies > Pet Supplies > Dog Supplies > Dog Food
35
+ 543682 - Animals & Pet Supplies > Pet Supplies > Dog Supplies > Dog Food > Non-prescription Dog Food
36
+ 543681 - Animals & Pet Supplies > Pet Supplies > Dog Supplies > Dog Food > Prescription Dog Food
37
  5094 - Animals & Pet Supplies > Pet Supplies > Dog Supplies > Dog Houses
38
  7428 - Animals & Pet Supplies > Pet Supplies > Dog Supplies > Dog Kennel & Run Accessories
39
  7274 - Animals & Pet Supplies > Pet Supplies > Dog Supplies > Dog Kennels & Runs
252
  5626 - Apparel & Accessories > Clothing Accessories > Baby & Toddler Clothing Accessories > Baby Protective Wear
253
  1786 - Apparel & Accessories > Clothing Accessories > Balaclavas
254
  168 - Apparel & Accessories > Clothing Accessories > Bandanas & Headties
255
+ 543586 - Apparel & Accessories > Clothing Accessories > Bandanas & Headties > Bandanas
256
+ 543587 - Apparel & Accessories > Clothing Accessories > Bandanas & Headties > Hair Care Wraps
257
  3913 - Apparel & Accessories > Clothing Accessories > Belt Buckles
258
  169 - Apparel & Accessories > Clothing Accessories > Belts
259
  5443 - Apparel & Accessories > Clothing Accessories > Bridal Accessories
271
  1948 - Apparel & Accessories > Clothing Accessories > Hair Accessories > Hair Forks & Sticks
272
  6183 - Apparel & Accessories > Clothing Accessories > Hair Accessories > Hair Nets
273
  502988 - Apparel & Accessories > Clothing Accessories > Hair Accessories > Hair Pins, Claws & Clips
274
+ 543646 - Apparel & Accessories > Clothing Accessories > Hair Accessories > Hair Pins, Claws & Clips > Barrettes
275
+ 543645 - Apparel & Accessories > Clothing Accessories > Hair Accessories > Hair Pins, Claws & Clips > Hair Claws & Clips
276
+ 543644 - Apparel & Accessories > Clothing Accessories > Hair Accessories > Hair Pins, Claws & Clips > Hair Pins
277
  5915 - Apparel & Accessories > Clothing Accessories > Hair Accessories > Hair Wreaths
278
  1662 - Apparel & Accessories > Clothing Accessories > Hair Accessories > Headbands
279
  1483 - Apparel & Accessories > Clothing Accessories > Hair Accessories > Ponytail Holders
297
  4179 - Apparel & Accessories > Clothing Accessories > Pinback Buttons
298
  499972 - Apparel & Accessories > Clothing Accessories > Sashes
299
  177 - Apparel & Accessories > Clothing Accessories > Scarves & Shawls
300
+ 543673 - Apparel & Accessories > Clothing Accessories > Scarves & Shawls > Scarves
301
+ 543674 - Apparel & Accessories > Clothing Accessories > Scarves & Shawls > Shawls
302
  178 - Apparel & Accessories > Clothing Accessories > Sunglasses
303
  179 - Apparel & Accessories > Clothing Accessories > Suspenders
304
  180 - Apparel & Accessories > Clothing Accessories > Tie Clips
368
  505372 - Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials
369
  24 - Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Art & Craft Paper
370
  505399 - Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Art & Craft Paper > Cardstock & Scrapbooking Paper
371
+ 543510 - Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Art & Craft Paper > Cardstock & Scrapbooking Paper > Cardstock
372
+ 543511 - Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Art & Craft Paper > Cardstock & Scrapbooking Paper > Scrapbooking Paper
373
  2532 - Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Art & Craft Paper > Construction Paper
374
  8168 - Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Art & Craft Paper > Craft Foil
375
  505400 - Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Art & Craft Paper > Drawing & Painting Paper
432
  505383 - Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Leather & Vinyl
433
  44 - Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Pottery & Sculpting Materials
434
  3692 - Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Pottery & Sculpting Materials > Clay & Modeling Dough
435
+ 543628 - Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Pottery & Sculpting Materials > Clay & Modeling Dough > Clay
436
+ 543629 - Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Pottery & Sculpting Materials > Clay & Modeling Dough > Modeling Dough
437
  505401 - Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Pottery & Sculpting Materials > Papier Mache Mixes
438
  505804 - Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Pottery & Sculpting Materials > Plaster Gauze
439
  505402 - Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Pottery & Sculpting Materials > Pottery Slips
504
  615 - Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Textile Craft Machines > Sewing Machines
505
  6137 - Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Textile Craft Machines > Spinning Wheels
506
  6156 - Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Thimbles & Sewing Palms
507
+ 543639 - Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Thimbles & Sewing Palms > Sewing Palms
508
+ 543638 - Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Thimbles & Sewing Palms > Thimbles
509
  505387 - Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Thread & Yarn Tools
510
  6164 - Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Thread & Yarn Tools > Fiber Cards & Brushes
511
  6138 - Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Thread & Yarn Tools > Hand Spindles
528
  216 - Arts & Entertainment > Hobbies & Creative Arts > Collectibles
529
  3599 - Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Autographs
530
  217 - Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Collectible Coins & Currency
531
+ 543607 - Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Collectible Coins & Currency > Collectible Banknotes
532
+ 543606 - Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Collectible Coins & Currency > Collectible Coins
533
  6997 - Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Collectible Trading Cards
534
  220 - Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Collectible Weapons
535
  499953 - Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Collectible Weapons > Collectible Guns
795
  6728 - Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Woodwinds > Train Whistles
796
  5709 - Arts & Entertainment > Party & Celebration
797
  2559 - Arts & Entertainment > Party & Celebration > Gift Giving
798
+ 6100 - Arts & Entertainment > Party & Celebration > Gift Giving > Corsage & Boutonnière Pins
799
+ 5916 - Arts & Entertainment > Party & Celebration > Gift Giving > Corsages & Boutonnières
800
  2899 - Arts & Entertainment > Party & Celebration > Gift Giving > Fresh Cut Flowers
801
  53 - Arts & Entertainment > Party & Celebration > Gift Giving > Gift Cards & Certificates
802
  94 - Arts & Entertainment > Party & Celebration > Gift Giving > Gift Wrapping
832
  6906 - Arts & Entertainment > Party & Celebration > Party Supplies > Party Hats
833
  502981 - Arts & Entertainment > Party & Celebration > Party Supplies > Party Streamers & Curtains
834
  502972 - Arts & Entertainment > Party & Celebration > Party Supplies > Party Supply Kits
835
+ 3994 - Arts & Entertainment > Party & Celebration > Party Supplies > Piñatas
836
  5472 - Arts & Entertainment > Party & Celebration > Party Supplies > Place Card Holders
837
  2104 - Arts & Entertainment > Party & Celebration > Party Supplies > Place Cards
838
  1887 - Arts & Entertainment > Party & Celebration > Party Supplies > Response Cards
846
  503028 - Arts & Entertainment > Party & Celebration > Special Effects > Special Effects Light Stands
847
  410 - Arts & Entertainment > Party & Celebration > Special Effects > Special Effects Lighting
848
  5868 - Arts & Entertainment > Party & Celebration > Trophies & Awards
849
+ 543656 - Arts & Entertainment > Party & Celebration > Trophies & Awards > Award Certificates
850
+ 543655 - Arts & Entertainment > Party & Celebration > Trophies & Awards > Award Pins & Medals
851
+ 543657 - Arts & Entertainment > Party & Celebration > Trophies & Awards > Award Plaques
852
+ 543654 - Arts & Entertainment > Party & Celebration > Trophies & Awards > Award Ribbons
853
+ 543653 - Arts & Entertainment > Party & Celebration > Trophies & Awards > Trophies
854
  537 - Baby & Toddler
855
  4678 - Baby & Toddler > Baby Bathing
856
  4679 - Baby & Toddler > Baby Bathing > Baby Bathtubs & Bath Seats
879
  7360 - Baby & Toddler > Baby Toys & Activity Equipment > Baby Soothers
880
  1241 - Baby & Toddler > Baby Toys & Activity Equipment > Baby Walkers & Entertainers
881
  1243 - Baby & Toddler > Baby Toys & Activity Equipment > Play Mats & Gyms
882
+ 543613 - Baby & Toddler > Baby Toys & Activity Equipment > Play Mats & Gyms > Play Gyms
883
+ 543612 - Baby & Toddler > Baby Toys & Activity Equipment > Play Mats & Gyms > Play Mats
884
  539 - Baby & Toddler > Baby Toys & Activity Equipment > Play Yards
885
  3459 - Baby & Toddler > Baby Toys & Activity Equipment > Push & Pull Toys
886
  1244 - Baby & Toddler > Baby Toys & Activity Equipment > Rattles
917
  5720 - Baby & Toddler > Nursing & Feeding > Baby & Toddler Food > Baby Snacks
918
  8436 - Baby & Toddler > Nursing & Feeding > Baby & Toddler Food > Toddler Nutrition Drinks & Shakes
919
  5630 - Baby & Toddler > Nursing & Feeding > Baby Bottle Nipples & Liners
920
+ 543637 - Baby & Toddler > Nursing & Feeding > Baby Bottle Nipples & Liners > Baby Bottle Liners
921
+ 543636 - Baby & Toddler > Nursing & Feeding > Baby Bottle Nipples & Liners > Baby Bottle Nipples
922
  564 - Baby & Toddler > Nursing & Feeding > Baby Bottles
923
  4768 - Baby & Toddler > Nursing & Feeding > Baby Care Timers
924
  2125 - Baby & Toddler > Nursing & Feeding > Bibs
936
  552 - Baby & Toddler > Potty Training > Potty Seats
937
  6953 - Baby & Toddler > Potty Training > Potty Training Kits
938
  6899 - Baby & Toddler > Swaddling & Receiving Blankets
939
+ 543664 - Baby & Toddler > Swaddling & Receiving Blankets > Receiving Blankets
940
+ 543665 - Baby & Toddler > Swaddling & Receiving Blankets > Swaddling Blankets
941
  111 - Business & Industrial
942
  5863 - Business & Industrial > Advertising & Marketing
943
  5884 - Business & Industrial > Advertising & Marketing > Brochures
947
  6991 - Business & Industrial > Agriculture > Animal Husbandry
948
  499997 - Business & Industrial > Agriculture > Animal Husbandry > Egg Incubators
949
  505821 - Business & Industrial > Agriculture > Animal Husbandry > Livestock Feed
950
+ 543545 - Business & Industrial > Agriculture > Animal Husbandry > Livestock Feed > Cattle Feed
951
+ 543544 - Business & Industrial > Agriculture > Animal Husbandry > Livestock Feed > Chicken Feed
952
+ 543547 - Business & Industrial > Agriculture > Animal Husbandry > Livestock Feed > Goat & Sheep Feed
953
+ 543548 - Business & Industrial > Agriculture > Animal Husbandry > Livestock Feed > Mixed Herd Feed
954
+ 543546 - Business & Industrial > Agriculture > Animal Husbandry > Livestock Feed > Pig Feed
955
  6990 - Business & Industrial > Agriculture > Animal Husbandry > Livestock Feeders & Waterers
956
  499946 - Business & Industrial > Agriculture > Animal Husbandry > Livestock Halters
957
  7261 - Business & Industrial > Automation Control Components
1055
  511 - Business & Industrial > Medical > Medical Supplies > Disposable Gloves
1056
  7063 - Business & Industrial > Medical > Medical Supplies > Finger Cots
1057
  499696 - Business & Industrial > Medical > Medical Supplies > Medical Needles & Syringes
1058
+ 543672 - Business & Industrial > Medical > Medical Supplies > Medical Needles & Syringes > Medical Needle & Syringe Sets
1059
+ 543670 - Business & Industrial > Medical > Medical Supplies > Medical Needles & Syringes > Medical Needles
1060
+ 543671 - Business & Industrial > Medical > Medical Supplies > Medical Needles & Syringes > Medical Syringes
1061
  505828 - Business & Industrial > Medical > Medical Supplies > Ostomy Supplies
1062
  7324 - Business & Industrial > Medical > Medical Supplies > Tongue Depressors
1063
  6490 - Business & Industrial > Medical > Medical Teaching Equipment
1085
  505808 - Business & Industrial > Retail > Money Handling > Cash Register & POS Terminal Accessories > Credit Card Terminals
1086
  5310 - Business & Industrial > Retail > Money Handling > Cash Register & POS Terminal Accessories > Signature Capture Pads
1087
  505824 - Business & Industrial > Retail > Money Handling > Cash Registers & POS Terminals
1088
+ 543647 - Business & Industrial > Retail > Money Handling > Cash Registers & POS Terminals > Cash Registers
1089
+ 543648 - Business & Industrial > Retail > Money Handling > Cash Registers & POS Terminals > POS Terminals
1090
  4151 - Business & Industrial > Retail > Money Handling > Coin & Bill Counters
1091
  3273 - Business & Industrial > Retail > Money Handling > Money Changers
1092
  4329 - Business & Industrial > Retail > Money Handling > Money Deposit Bags
1306
  6545 - Electronics > Audio > Audio Components > Channel Strips
1307
  6546 - Electronics > Audio > Audio Components > Direct Boxes
1308
  505771 - Electronics > Audio > Audio Components > Headphones & Headsets
1309
+ 543626 - Electronics > Audio > Audio Components > Headphones & Headsets > Headphones
1310
+ 543627 - Electronics > Audio > Audio Components > Headphones & Headsets > Headsets
1311
  234 - Electronics > Audio > Audio Components > Microphones
1312
  246 - Electronics > Audio > Audio Components > Signal Processors
1313
  5435 - Electronics > Audio > Audio Components > Signal Processors > Crossovers
1390
  2353 - Electronics > Communications > Telephony > Mobile Phone Accessories > Mobile Phone Cases
1391
  4550 - Electronics > Communications > Telephony > Mobile Phone Accessories > Mobile Phone Charms & Straps
1392
  6030 - Electronics > Communications > Telephony > Mobile Phone Accessories > Mobile Phone Pre-Paid Cards & SIM Cards
1393
+ 543515 - Electronics > Communications > Telephony > Mobile Phone Accessories > Mobile Phone Pre-Paid Cards & SIM Cards > Mobile Phone Pre-Paid Cards
1394
+ 543516 - Electronics > Communications > Telephony > Mobile Phone Accessories > Mobile Phone Pre-Paid Cards & SIM Cards > SIM Cards
1395
  7347 - Electronics > Communications > Telephony > Mobile Phone Accessories > Mobile Phone Replacement Parts
1396
  5566 - Electronics > Communications > Telephony > Mobile Phone Accessories > Mobile Phone Stands
1397
  499916 - Electronics > Communications > Telephony > Mobile Phone Accessories > SIM Card Ejection Tools
1398
  267 - Electronics > Communications > Telephony > Mobile Phones
1399
+ 543513 - Electronics > Communications > Telephony > Mobile Phones > Contract Mobile Phones
1400
+ 543512 - Electronics > Communications > Telephony > Mobile Phones > Pre-paid Mobile Phones
1401
+ 543514 - Electronics > Communications > Telephony > Mobile Phones > Unlocked Mobile Phones
1402
  1924 - Electronics > Communications > Telephony > Satellite Phones
1403
  265 - Electronics > Communications > Telephony > Telephone Accessories
1404
  269 - Electronics > Communications > Telephony > Telephone Accessories > Phone Cards
1424
  500002 - Electronics > Computers > Smart Glasses
1425
  4745 - Electronics > Computers > Tablet Computers
1426
  8539 - Electronics > Computers > Thin & Zero Clients
1427
+ 543668 - Electronics > Computers > Thin & Zero Clients > Thin Client Computers
1428
+ 543669 - Electronics > Computers > Thin & Zero Clients > Zero Client Computers
1429
  502995 - Electronics > Computers > Touch Table Computers
1430
  2082 - Electronics > Electronics Accessories
1431
  258 - Electronics > Electronics Accessories > Adapters
1501
  505801 - Electronics > Electronics Accessories > Computer Components > Input Devices > Electronic Card Readers
1502
  5366 - Electronics > Electronics Accessories > Computer Components > Input Devices > Fingerprint Readers
1503
  301 - Electronics > Electronics Accessories > Computer Components > Input Devices > Game Controllers
1504
+ 543591 - Electronics > Electronics Accessories > Computer Components > Input Devices > Game Controllers > Game Racing Wheels
1505
+ 543590 - Electronics > Electronics Accessories > Computer Components > Input Devices > Game Controllers > Game Remotes
1506
+ 543589 - Electronics > Electronics Accessories > Computer Components > Input Devices > Game Controllers > Gaming Pads
1507
+ 543588 - Electronics > Electronics Accessories > Computer Components > Input Devices > Game Controllers > Joystick Controllers
1508
+ 543593 - Electronics > Electronics Accessories > Computer Components > Input Devices > Game Controllers > Musical Instrument Game Controllers
1509
  499950 - Electronics > Electronics Accessories > Computer Components > Input Devices > Gesture Control Input Devices
1510
  302 - Electronics > Electronics Accessories > Computer Components > Input Devices > Graphics Tablets
1511
  1562 - Electronics > Electronics Accessories > Computer Components > Input Devices > KVM Switches
1690
  414 - Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Beer
1691
  7486 - Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Bitters
1692
  5725 - Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Cocktail Mixes
1693
+ 543537 - Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Cocktail Mixes > Frozen Cocktail Mixes
1694
+ 543536 - Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Cocktail Mixes > Shelf-stable Cocktail Mixes
1695
  5887 - Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Flavored Alcoholic Beverages
1696
  6761 - Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Hard Cider
1697
  417 - Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Liquor & Spirits
1701
  2933 - Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Liquor & Spirits > Liqueurs
1702
  2605 - Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Liquor & Spirits > Rum
1703
  502976 - Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Liquor & Spirits > Shochu & Soju
1704
+ 543642 - Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Liquor & Spirits > Shochu & Soju > Shochu
1705
+ 543643 - Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Liquor & Spirits > Shochu & Soju > Soju
1706
  2220 - Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Liquor & Spirits > Tequila
1707
  2107 - Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Liquor & Spirits > Vodka
1708
  1926 - Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Liquor & Spirits > Whiskey
1721
  2073 - Food, Beverages & Tobacco > Beverages > Tea & Infusions
1722
  7528 - Food, Beverages & Tobacco > Beverages > Vinegar Drinks
1723
  420 - Food, Beverages & Tobacco > Beverages > Water
1724
+ 543531 - Food, Beverages & Tobacco > Beverages > Water > Carbonated Water
1725
+ 543534 - Food, Beverages & Tobacco > Beverages > Water > Carbonated Water > Flavored Carbonated Water
1726
+ 543535 - Food, Beverages & Tobacco > Beverages > Water > Carbonated Water > Unflavored Carbonated Water
1727
+ 543530 - Food, Beverages & Tobacco > Beverages > Water > Distilled Water
1728
+ 543533 - Food, Beverages & Tobacco > Beverages > Water > Flat Mineral Water
1729
+ 543532 - Food, Beverages & Tobacco > Beverages > Water > Spring Water
1730
  422 - Food, Beverages & Tobacco > Food Items
1731
  1876 - Food, Beverages & Tobacco > Food Items > Bakery
1732
  1573 - Food, Beverages & Tobacco > Food Items > Bakery > Bagels
1796
  5756 - Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Dough > Cookie & Brownie Dough
1797
  5753 - Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Dough > Pie Crusts
1798
  6775 - Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Edible Baking Decorations
1799
+ 543549 - Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Egg Replacers
1800
  5105 - Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Floss Sugar
1801
  2775 - Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Flour
1802
  7127 - Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Food Coloring
1877
  6640 - Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Longan
1878
  6639 - Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Loquats
1879
  6638 - Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Lychees
1880
+ 6813 - Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Madroño
1881
  6647 - Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Mamey
1882
  6645 - Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Mangosteens
1883
  6649 - Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Melons
1990
  4688 - Food, Beverages & Tobacco > Food Items > Grains, Rice & Cereal > Wheat
1991
  432 - Food, Beverages & Tobacco > Food Items > Meat, Seafood & Eggs
1992
  4627 - Food, Beverages & Tobacco > Food Items > Meat, Seafood & Eggs > Eggs
1993
+ 543554 - Food, Beverages & Tobacco > Food Items > Meat, Seafood & Eggs > Eggs > Egg Whites
1994
+ 543555 - Food, Beverages & Tobacco > Food Items > Meat, Seafood & Eggs > Eggs > Liquid & Frozen Eggs
1995
+ 543556 - Food, Beverages & Tobacco > Food Items > Meat, Seafood & Eggs > Eggs > Prepared Eggs
1996
+ 543557 - Food, Beverages & Tobacco > Food Items > Meat, Seafood & Eggs > Eggs > Whole Eggs
1997
  4628 - Food, Beverages & Tobacco > Food Items > Meat, Seafood & Eggs > Meat
1998
  5811 - Food, Beverages & Tobacco > Food Items > Meat, Seafood & Eggs > Meat > Canned Meats
1999
  5805 - Food, Beverages & Tobacco > Food Items > Meat, Seafood & Eggs > Meat > Fresh & Frozen Meats
2005
  434 - Food, Beverages & Tobacco > Food Items > Pasta & Noodles
2006
  5814 - Food, Beverages & Tobacco > Food Items > Prepared Foods
2007
  499989 - Food, Beverages & Tobacco > Food Items > Prepared Foods > Prepared Appetizers & Side Dishes
2008
+ 499988 - Food, Beverages & Tobacco > Food Items > Prepared Foods > Prepared Meals & Entrées
2009
  4608 - Food, Beverages & Tobacco > Food Items > Seasonings & Spices
2010
  1529 - Food, Beverages & Tobacco > Food Items > Seasonings & Spices > Herbs & Spices
2011
  4610 - Food, Beverages & Tobacco > Food Items > Seasonings & Spices > MSG
2014
  423 - Food, Beverages & Tobacco > Food Items > Snack Foods
2015
  7159 - Food, Beverages & Tobacco > Food Items > Snack Foods > Breadsticks
2016
  5747 - Food, Beverages & Tobacco > Food Items > Snack Foods > Cereal & Granola Bars
2017
+ 543651 - Food, Beverages & Tobacco > Food Items > Snack Foods > Cereal & Granola Bars > Cereal Bars
2018
+ 543652 - Food, Beverages & Tobacco > Food Items > Snack Foods > Cereal & Granola Bars > Granola Bars
2019
  6192 - Food, Beverages & Tobacco > Food Items > Snack Foods > Cheese Puffs
2020
  2392 - Food, Beverages & Tobacco > Food Items > Snack Foods > Chips
2021
  1445 - Food, Beverages & Tobacco > Food Items > Snack Foods > Crackers
2046
  3741 - Food, Beverages & Tobacco > Tobacco Products > Loose Tobacco
2047
  499963 - Food, Beverages & Tobacco > Tobacco Products > Smoking Pipes
2048
  4091 - Food, Beverages & Tobacco > Tobacco Products > Vaporizers & Electronic Cigarettes
2049
+ 543635 - Food, Beverages & Tobacco > Tobacco Products > Vaporizers & Electronic Cigarettes > Electronic Cigarettes
2050
+ 543634 - Food, Beverages & Tobacco > Tobacco Products > Vaporizers & Electronic Cigarettes > Vaporizers
2051
  436 - Furniture
2052
  554 - Furniture > Baby & Toddler Furniture
2053
  6349 - Furniture > Baby & Toddler Furniture > Baby & Toddler Furniture Sets
2249
  1788 - Hardware > Fencing & Barriers > Gates
2250
  502984 - Hardware > Fencing & Barriers > Lattice
2251
  499958 - Hardware > Fencing & Barriers > Safety & Crowd Control Barriers
2252
+ 543575 - Hardware > Fuel
2253
+ 543703 - Hardware > Fuel > Home Heating Oil
2254
+ 543576 - Hardware > Fuel > Kerosene
2255
+ 543579 - Hardware > Fuel > Kerosene > Clear Kerosene
2256
+ 543578 - Hardware > Fuel > Kerosene > Dyed Kerosene
2257
+ 543577 - Hardware > Fuel > Propane
2258
  502975 - Hardware > Fuel Containers & Tanks
2259
  2878 - Hardware > Hardware Accessories
2260
  7092 - Hardware > Hardware Accessories > Brackets & Reinforcement Braces
2545
  1994 - Hardware > Tools > Drills > Pneumatic Drills
2546
  6461 - Hardware > Tools > Electrician Fish Tape
2547
  338 - Hardware > Tools > Flashlights & Headlamps
2548
+ 543689 - Hardware > Tools > Flashlights & Headlamps > Flashlights
2549
+ 2454 - Hardware > Tools > Flashlights & Headlamps > Headlamps
2550
  7556 - Hardware > Tools > Grease Guns
2551
  1219 - Hardware > Tools > Grinders
2552
  1185 - Hardware > Tools > Grips
2715
  2633 - Health & Beauty > Health Care > Biometric Monitors > Breathalyzers
2716
  497 - Health & Beauty > Health Care > Biometric Monitors > Cholesterol Analyzers
2717
  505822 - Health & Beauty > Health Care > Biometric Monitors > Fertility Monitors and Ovulation Tests
2718
+ 543679 - Health & Beauty > Health Care > Biometric Monitors > Fertility Monitors and Ovulation Tests > Fertility Tests & Monitors
2719
+ 543680 - Health & Beauty > Health Care > Biometric Monitors > Fertility Monitors and Ovulation Tests > Ovulation Tests
2720
  501 - Health & Beauty > Health Care > Biometric Monitors > Medical Thermometers
2721
  4767 - Health & Beauty > Health Care > Biometric Monitors > Prenatal Heart Rate Monitors
2722
  5551 - Health & Beauty > Health Care > Biometric Monitors > Pulse Oximeters
2737
  2984 - Health & Beauty > Health Care > Fitness & Nutrition > Nutrition Bars
2738
  5702 - Health & Beauty > Health Care > Fitness & Nutrition > Nutrition Drinks & Shakes
2739
  6242 - Health & Beauty > Health Care > Fitness & Nutrition > Nutrition Gels & Chews
2740
+ 6871 - Health & Beauty > Health Care > Fitness & Nutrition > Nutritional Food Purées
2741
  7413 - Health & Beauty > Health Care > Fitness & Nutrition > Tube Feeding Supplements
2742
  525 - Health & Beauty > Health Care > Fitness & Nutrition > Vitamins & Supplements
2743
  5690 - Health & Beauty > Health Care > Hearing Aids
2889
  7467 - Health & Beauty > Personal Care > Cosmetics > Skin Care > Facial Cleansing Kits
2890
  6791 - Health & Beauty > Personal Care > Cosmetics > Skin Care > Facial Pore Strips
2891
  482 - Health & Beauty > Personal Care > Cosmetics > Skin Care > Lip Balms & Treatments
2892
+ 543573 - Health & Beauty > Personal Care > Cosmetics > Skin Care > Lip Balms & Treatments > Lip Balms
2893
+ 543574 - Health & Beauty > Personal Care > Cosmetics > Skin Care > Lip Balms & Treatments > Medicated Lip Treatments
2894
  2592 - Health & Beauty > Personal Care > Cosmetics > Skin Care > Lotion & Moisturizer
2895
  6034 - Health & Beauty > Personal Care > Cosmetics > Skin Care > Makeup Removers
2896
  6753 - Health & Beauty > Personal Care > Cosmetics > Skin Care > Petroleum Jelly
2901
  5338 - Health & Beauty > Personal Care > Cosmetics > Skin Care > Tanning Products > Self Tanner
2902
  5339 - Health & Beauty > Personal Care > Cosmetics > Skin Care > Tanning Products > Tanning Oil & Lotion
2903
  5976 - Health & Beauty > Personal Care > Cosmetics > Skin Care > Toners & Astringents
2904
+ 543659 - Health & Beauty > Personal Care > Cosmetics > Skin Care > Toners & Astringents > Astringents
2905
+ 543658 - Health & Beauty > Personal Care > Cosmetics > Skin Care > Toners & Astringents > Toners
2906
  6863 - Health & Beauty > Personal Care > Cosmetics > Skin Care > Wart Removers
2907
  4929 - Health & Beauty > Personal Care > Cotton Balls
2908
  2934 - Health & Beauty > Personal Care > Cotton Swabs
2909
  484 - Health & Beauty > Personal Care > Deodorant & Anti-Perspirant
2910
+ 543599 - Health & Beauty > Personal Care > Deodorant & Anti-Perspirant > Anti-Perspirant
2911
+ 543598 - Health & Beauty > Personal Care > Deodorant & Anti-Perspirant > Deodorant
2912
  506 - Health & Beauty > Personal Care > Ear Care
2913
  5706 - Health & Beauty > Personal Care > Ear Care > Ear Candles
2914
  6559 - Health & Beauty > Personal Care > Ear Care > Ear Drops
2954
  3407 - Health & Beauty > Personal Care > Hair Care > Hair Styling Tools > Hair Straighteners
2955
  499992 - Health & Beauty > Personal Care > Hair Care > Hair Styling Tools > Hair Styling Tool Sets
2956
  2441 - Health & Beauty > Personal Care > Hair Care > Shampoo & Conditioner
2957
+ 543616 - Health & Beauty > Personal Care > Hair Care > Shampoo & Conditioner > Conditioners
2958
+ 543615 - Health & Beauty > Personal Care > Hair Care > Shampoo & Conditioner > Shampoo
2959
+ 543617 - Health & Beauty > Personal Care > Hair Care > Shampoo & Conditioner > Shampoo & Conditioner Sets
2960
  5663 - Health & Beauty > Personal Care > Massage & Relaxation
2961
  500060 - Health & Beauty > Personal Care > Massage & Relaxation > Back Scratchers
2962
  233420 - Health & Beauty > Personal Care > Massage & Relaxation > Eye Pillows
2966
  8135 - Health & Beauty > Personal Care > Massage & Relaxation > Massage Stones
2967
  2074 - Health & Beauty > Personal Care > Massage & Relaxation > Massage Tables
2968
  471 - Health & Beauty > Personal Care > Massage & Relaxation > Massagers
2969
+ 543596 - Health & Beauty > Personal Care > Massage & Relaxation > Massagers > Electric Massagers
2970
+ 543597 - Health & Beauty > Personal Care > Massage & Relaxation > Massagers > Manual Massage Tools
2971
+ 543595 - Health & Beauty > Personal Care > Massage & Relaxation > Massagers > Massage Cushions
2972
  526 - Health & Beauty > Personal Care > Oral Care
2973
  6189 - Health & Beauty > Personal Care > Oral Care > Breath Spray
2974
  2620 - Health & Beauty > Personal Care > Oral Care > Dental Floss
3034
  2521 - Health & Beauty > Personal Care > Vision Care > Eyewear Accessories
3035
  5507 - Health & Beauty > Personal Care > Vision Care > Eyewear Accessories > Eyewear Cases & Holders
3036
  352853 - Health & Beauty > Personal Care > Vision Care > Eyewear Accessories > Eyewear Lens Cleaning Solutions
3037
+ 543538 - Health & Beauty > Personal Care > Vision Care > Eyewear Accessories > Eyewear Replacement Parts
3038
  8204 - Health & Beauty > Personal Care > Vision Care > Eyewear Accessories > Eyewear Straps & Chains
3039
  6977 - Health & Beauty > Personal Care > Vision Care > Sunglass Lenses
3040
  536 - Home & Garden
3229
  1934 - Home & Garden > Flood, Fire & Gas Safety > Fire Sprinklers
3230
  7227 - Home & Garden > Flood, Fire & Gas Safety > Heat Detectors
3231
  499673 - Home & Garden > Flood, Fire & Gas Safety > Smoke & Carbon Monoxide Detectors
3232
+ 2164 - Home & Garden > Flood, Fire & Gas Safety > Smoke & Carbon Monoxide Detectors > Carbon Monoxide Detectors
3233
+ 1471 - Home & Garden > Flood, Fire & Gas Safety > Smoke & Carbon Monoxide Detectors > Smoke Detectors
3234
  1306 - Home & Garden > Flood, Fire & Gas Safety > Water & Flood Detectors
3235
  3348 - Home & Garden > Household Appliance Accessories
3236
  2367 - Home & Garden > Household Appliance Accessories > Air Conditioner Accessories
3283
  611 - Home & Garden > Household Appliances > Climate Control Appliances > Space Heaters
3284
  235920 - Home & Garden > Household Appliances > Floor & Carpet Dryers
3285
  616 - Home & Garden > Household Appliances > Floor & Steam Cleaners
3286
+ 543601 - Home & Garden > Household Appliances > Floor & Steam Cleaners > Carpet Shampooers
3287
+ 543600 - Home & Garden > Household Appliances > Floor & Steam Cleaners > Carpet Steamers
3288
+ 543602 - Home & Garden > Household Appliances > Floor & Steam Cleaners > Floor Scrubbers
3289
+ 543603 - Home & Garden > Household Appliances > Floor & Steam Cleaners > Steam Mops
3290
  5294 - Home & Garden > Household Appliances > Floor Polishers & Buffers
3291
  4483 - Home & Garden > Household Appliances > Futon Dryers
3292
  6741 - Home & Garden > Household Appliances > Garage Door Keypads & Remotes
3329
  4977 - Home & Garden > Household Supplies > Household Cleaning Supplies > Household Cleaning Products > Floor Cleaners
3330
  5825 - Home & Garden > Household Supplies > Household Cleaning Supplies > Household Cleaning Products > Furniture Cleaners & Polish
3331
  4976 - Home & Garden > Household Supplies > Household Cleaning Supplies > Household Cleaning Products > Glass & Surface Cleaners
3332
+ 543649 - Home & Garden > Household Supplies > Household Cleaning Supplies > Household Cleaning Products > Glass & Surface Cleaners > Glass Cleaners
3333
+ 543650 - Home & Garden > Household Supplies > Household Cleaning Supplies > Household Cleaning Products > Glass & Surface Cleaners > Muti-surface Cleaners
3334
  6474 - Home & Garden > Household Supplies > Household Cleaning Supplies > Household Cleaning Products > Household Disinfectants
3335
  4978 - Home & Garden > Household Supplies > Household Cleaning Supplies > Household Cleaning Products > Oven & Grill Cleaners
3336
  4979 - Home & Garden > Household Supplies > Household Cleaning Supplies > Household Cleaning Products > Pet Odor & Stain Removers
3472
  6071 - Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware & Bakeware Combo Sets
3473
  655 - Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware > Casserole Dishes
3474
  4721 - Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware > Cookware Sets
3475
+ 6838 - Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware > Crêpe & Blini Pans
3476
  656 - Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware > Double Boilers
3477
  657 - Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware > Dutch Ovens
3478
  6518 - Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware > Fermentation & Pickling Crocks
3481
  4459 - Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware > Paella Pans
3482
  660 - Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware > Pressure Cookers & Canners
3483
  661 - Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware > Saucepans
3484
+ 4423 - Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware > Sauté Pans
3485
  662 - Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware > Skillets & Frying Pans
3486
  663 - Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware > Stock Pots
3487
  659 - Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware > Stovetop Kettles
3862
  721 - Home & Garden > Lawn & Garden > Gardening > Pots & Planters
3863
  6834 - Home & Garden > Lawn & Garden > Gardening > Rain Barrels
3864
  1794 - Home & Garden > Lawn & Garden > Gardening > Sands & Soils
3865
+ 543677 - Home & Garden > Lawn & Garden > Gardening > Sands & Soils > Sand
3866
+ 543678 - Home & Garden > Lawn & Garden > Gardening > Sands & Soils > Soil
3867
  2918 - Home & Garden > Lawn & Garden > Outdoor Living
3868
  499908 - Home & Garden > Lawn & Garden > Outdoor Living > Awning Accessories
3869
  499907 - Home & Garden > Lawn & Garden > Outdoor Living > Awnings
4027
  5590 - Home & Garden > Plants > Aquatic Plants
4028
  984 - Home & Garden > Plants > Flowers
4029
  6762 - Home & Garden > Plants > Indoor & Outdoor Plants
4030
+ 543559 - Home & Garden > Plants > Indoor & Outdoor Plants > Bushes & Shrubs
4031
+ 543560 - Home & Garden > Plants > Indoor & Outdoor Plants > Landscaping & Garden Plants
4032
+ 543558 - Home & Garden > Plants > Indoor & Outdoor Plants > Potted Houseplants
4033
  505285 - Home & Garden > Plants > Plant & Herb Growing Kits
4034
  2802 - Home & Garden > Plants > Seeds
4035
+ 543561 - Home & Garden > Plants > Seeds > Plant & Flower Bulbs
4036
+ 543562 - Home & Garden > Plants > Seeds > Seeds & Seed Tape
4037
  1684 - Home & Garden > Plants > Trees
4038
  729 - Home & Garden > Pool & Spa
4039
  2832 - Home & Garden > Pool & Spa > Pool & Spa Accessories
4055
  2997 - Home & Garden > Pool & Spa > Pool & Spa Accessories > Pool Sweeps & Vacuums
4056
  2672 - Home & Garden > Pool & Spa > Pool & Spa Accessories > Pool Toys
4057
  5546 - Home & Garden > Pool & Spa > Pool & Spa Accessories > Pool Water Slides
4058
+ 543687 - Home & Garden > Pool & Spa > Sauna Accessories
4059
+ 543633 - Home & Garden > Pool & Spa > Sauna Accessories > Sauna Buckets & Ladles
4060
+ 543632 - Home & Garden > Pool & Spa > Sauna Accessories > Sauna Heaters
4061
+ 543631 - Home & Garden > Pool & Spa > Sauna Accessories > Sauna Kits
4062
  3992 - Home & Garden > Pool & Spa > Saunas
4063
  2982 - Home & Garden > Pool & Spa > Spas
4064
  2810 - Home & Garden > Pool & Spa > Swimming Pools
4134
  3437 - Mature > Weapons > Whips
4135
  783 - Media
4136
  784 - Media > Books
4137
+ 543541 - Media > Books > Audiobooks
4138
+ 543542 - Media > Books > E-books
4139
+ 543543 - Media > Books > Print Books
4140
  499995 - Media > Carpentry & Woodworking Project Plans
4141
  839 - Media > DVDs & Videos
4142
+ 543527 - Media > DVDs & Videos > Film & Television DVDs
4143
+ 543529 - Media > DVDs & Videos > Film & Television Digital Downloads
4144
+ 543528 - Media > DVDs & Videos > Film & Television VHS Tapes
4145
  886 - Media > Magazines & Newspapers
4146
+ 543539 - Media > Magazines & Newspapers > Magazines
4147
+ 543540 - Media > Magazines & Newspapers > Newspapers
4148
  855 - Media > Music & Sound Recordings
4149
+ 543526 - Media > Music & Sound Recordings > Digital Music Downloads
4150
+ 543522 - Media > Music & Sound Recordings > Music CDs
4151
+ 543524 - Media > Music & Sound Recordings > Music Cassette Tapes
4152
+ 543523 - Media > Music & Sound Recordings > Records & LPs
4153
+ 543525 - Media > Music & Sound Recordings > Spoken Word & Field Recordings
4154
  5037 - Media > Product Manuals
4155
  499821 - Media > Product Manuals > Camera & Optics Manuals
4156
  5038 - Media > Product Manuals > Electronics Manuals
4190
  925 - Office Supplies > Filing & Organization > File Boxes
4191
  930 - Office Supplies > Filing & Organization > File Folders
4192
  6884 - Office Supplies > Filing & Organization > Folders & Report Covers
4193
+ 543663 - Office Supplies > Filing & Organization > Folders & Report Covers > Pocket Folders
4194
+ 543662 - Office Supplies > Filing & Organization > Folders & Report Covers > Report Covers
4195
  5070 - Office Supplies > Filing & Organization > Greeting Card Organizers
4196
  6962 - Office Supplies > Filing & Organization > Mail Sorters
4197
  3062 - Office Supplies > Filing & Organization > Pen & Pencil Cases
4198
  6885 - Office Supplies > Filing & Organization > Portfolios & Padfolios
4199
+ 543641 - Office Supplies > Filing & Organization > Portfolios & Padfolios > Padfolios
4200
+ 543640 - Office Supplies > Filing & Organization > Portfolios & Padfolios > Portfolios
4201
  6779 - Office Supplies > Filing & Organization > Recipe Card Boxes
4202
  932 - Office Supplies > General Office Supplies
4203
  6319 - Office Supplies > General Office Supplies > Brass Fasteners
4204
  2591 - Office Supplies > General Office Supplies > Correction Fluids, Pens & Tapes
4205
+ 543618 - Office Supplies > General Office Supplies > Correction Fluids, Pens & Tapes > Correction Fluids
4206
+ 543620 - Office Supplies > General Office Supplies > Correction Fluids, Pens & Tapes > Correction Pens
4207
+ 543619 - Office Supplies > General Office Supplies > Correction Fluids, Pens & Tapes > Correction Tapes
4208
  938 - Office Supplies > General Office Supplies > Erasers
4209
  960 - Office Supplies > General Office Supplies > Labels & Tags
4210
  4377 - Office Supplies > General Office Supplies > Labels & Tags > Address Labels
4217
  505805 - Office Supplies > General Office Supplies > Mounting Putty
4218
  934 - Office Supplies > General Office Supplies > Office Tape
4219
  936 - Office Supplies > General Office Supplies > Paper Clips & Clamps
4220
+ 543676 - Office Supplies > General Office Supplies > Paper Clips & Clamps > Binder Clips
4221
+ 543675 - Office Supplies > General Office Supplies > Paper Clips & Clamps > Paper Clips
4222
  956 - Office Supplies > General Office Supplies > Paper Products
4223
  2658 - Office Supplies > General Office Supplies > Paper Products > Binder Paper
4224
  5264 - Office Supplies > General Office Supplies > Paper Products > Blank ID Cards
4253
  950 - Office Supplies > Office Equipment
4254
  499864 - Office Supplies > Office Equipment > Calculator Accessories
4255
  333 - Office Supplies > Office Equipment > Calculators
4256
+ 543518 - Office Supplies > Office Equipment > Calculators > Basic Calculators
4257
+ 543521 - Office Supplies > Office Equipment > Calculators > Construction Calculators
4258
+ 543519 - Office Supplies > Office Equipment > Calculators > Financial Calculators
4259
+ 543517 - Office Supplies > Office Equipment > Calculators > Graphing Calculators
4260
+ 543520 - Office Supplies > Office Equipment > Calculators > Scientific Calculators
4261
  337 - Office Supplies > Office Equipment > Electronic Dictionaries & Translators
4262
  952 - Office Supplies > Office Equipment > Label Makers
4263
  1625 - Office Supplies > Office Equipment > Laminators
4278
  503746 - Office Supplies > Office Instruments > Tape Dispensers
4279
  4470 - Office Supplies > Office Instruments > Writing & Drawing Instrument Accessories
4280
  7117 - Office Supplies > Office Instruments > Writing & Drawing Instrument Accessories > Marker & Highlighter Ink Refills
4281
+ 543667 - Office Supplies > Office Instruments > Writing & Drawing Instrument Accessories > Marker & Highlighter Ink Refills > Highlighter Refills
4282
+ 543666 - Office Supplies > Office Instruments > Writing & Drawing Instrument Accessories > Marker & Highlighter Ink Refills > Marker Refills
4283
  4471 - Office Supplies > Office Instruments > Writing & Drawing Instrument Accessories > Pen Ink & Refills
4284
  4472 - Office Supplies > Office Instruments > Writing & Drawing Instrument Accessories > Pencil Lead & Refills
4285
  977 - Office Supplies > Office Instruments > Writing & Drawing Instruments
4287
  978 - Office Supplies > Office Instruments > Writing & Drawing Instruments > Chalk
4288
  979 - Office Supplies > Office Instruments > Writing & Drawing Instruments > Crayons
4289
  980 - Office Supplies > Office Instruments > Writing & Drawing Instruments > Markers & Highlighters
4290
+ 543609 - Office Supplies > Office Instruments > Writing & Drawing Instruments > Markers & Highlighters > Highlighters
4291
+ 543608 - Office Supplies > Office Instruments > Writing & Drawing Instruments > Markers & Highlighters > Markers
4292
  6067 - Office Supplies > Office Instruments > Writing & Drawing Instruments > Multifunction Writing Instruments
4293
  4752 - Office Supplies > Office Instruments > Writing & Drawing Instruments > Pastels
4294
  6065 - Office Supplies > Office Instruments > Writing & Drawing Instruments > Pens & Pencils
4296
  6068 - Office Supplies > Office Instruments > Writing & Drawing Instruments > Pens & Pencils > Pencils
4297
  3026 - Office Supplies > Office Instruments > Writing & Drawing Instruments > Pens & Pencils > Pencils > Art Pencils
4298
  981 - Office Supplies > Office Instruments > Writing & Drawing Instruments > Pens & Pencils > Pencils > Writing Pencils
4299
+ 543660 - Office Supplies > Office Instruments > Writing & Drawing Instruments > Pens & Pencils > Pencils > Writing Pencils > Mechanical Pencils
4300
+ 543661 - Office Supplies > Office Instruments > Writing & Drawing Instruments > Pens & Pencils > Pencils > Writing Pencils > Wooden Pencils
4301
  982 - Office Supplies > Office Instruments > Writing & Drawing Instruments > Pens & Pencils > Pens
4302
  2014 - Office Supplies > Paper Handling
4303
  6486 - Office Supplies > Paper Handling > Fingertip Grips
4311
  966 - Office Supplies > Presentation Supplies > Display Boards
4312
  7525 - Office Supplies > Presentation Supplies > Display Boards > Bulletin Board Accessories
4313
  7526 - Office Supplies > Presentation Supplies > Display Boards > Bulletin Board Accessories > Bulletin Board Trim
4314
+ 543688 - Office Supplies > Presentation Supplies > Display Boards > Bulletin Board Accessories > Bulletin Board Trim Sets
4315
  2401 - Office Supplies > Presentation Supplies > Display Boards > Bulletin Boards
4316
  2263 - Office Supplies > Presentation Supplies > Display Boards > Foam Boards
4317
  1627 - Office Supplies > Presentation Supplies > Display Boards > Mounting Boards
4454
  1006 - Sporting Goods > Athletics > Fencing
4455
  3261 - Sporting Goods > Athletics > Fencing > Fencing Protective Gear
4456
  3366 - Sporting Goods > Athletics > Fencing > Fencing Protective Gear > Fencing Gloves & Cuffs
4457
+ 499740 - Sporting Goods > Athletics > Fencing > Fencing Protective Gear > Fencing Jackets & Lamés
4458
  3707 - Sporting Goods > Athletics > Fencing > Fencing Protective Gear > Fencing Masks
4459
  3622 - Sporting Goods > Athletics > Fencing > Fencing Weapons
4460
  499741 - Sporting Goods > Athletics > Field Hockey & Lacrosse
4625
  994 - Sporting Goods > Exercise & Fitness > Cardio > Cardio Machines > Exercise Bikes
4626
  995 - Sporting Goods > Exercise & Fitness > Cardio > Cardio Machines > Rowing Machines
4627
  996 - Sporting Goods > Exercise & Fitness > Cardio > Cardio Machines > Stair Climbers & Steppers
4628
+ 543610 - Sporting Goods > Exercise & Fitness > Cardio > Cardio Machines > Stair Climbers & Steppers > Stair Climbers
4629
+ 543611 - Sporting Goods > Exercise & Fitness > Cardio > Cardio Machines > Stair Climbers & Steppers > Stair Steppers
4630
  997 - Sporting Goods > Exercise & Fitness > Cardio > Cardio Machines > Treadmills
4631
  2614 - Sporting Goods > Exercise & Fitness > Cardio > Jump Ropes
4632
  993 - Sporting Goods > Exercise & Fitness > Exercise Balls
5302
  3129 - Toys & Games > Toys > Pretend Play > Pretend Professions & Role Playing
5303
  8295 - Toys & Games > Toys > Pretend Play > Pretend Shopping & Grocery
5304
  3298 - Toys & Games > Toys > Pretend Play > Toy Kitchens & Play Food
5305
+ 543624 - Toys & Games > Toys > Pretend Play > Toy Kitchens & Play Food > Play Food
5306
+ 543690 - Toys & Games > Toys > Pretend Play > Toy Kitchens & Play Food > Toy Cookware
5307
+ 543622 - Toys & Games > Toys > Pretend Play > Toy Kitchens & Play Food > Toy Kitchens
5308
+ 543623 - Toys & Games > Toys > Pretend Play > Toy Kitchens & Play Food > Toy Tableware
5309
  3751 - Toys & Games > Toys > Pretend Play > Toy Tools
5310
  2778 - Toys & Games > Toys > Remote Control Toy Accessories
5311
  2546 - Toys & Games > Toys > Remote Control Toys
5580
  3095 - Vehicles & Parts > Vehicles > Watercraft > Motor Boats
5581
  1130 - Vehicles & Parts > Vehicles > Watercraft > Personal Watercraft
5582
  3087 - Vehicles & Parts > Vehicles > Watercraft > Sailboats
5583
+ 5644 - Vehicles & Parts > Vehicles > Watercraft > Yachts
admin/partials/templates/pinterest_add-feed.php CHANGED
@@ -1,732 +1,716 @@
1
- <ul class="wf_tabs">
2
- <li>
3
- <input type="radio" name="wf_tabs" id="tab1" checked/>
4
- <label class="wf-tab-name" for="tab1"><?php echo _e( 'Feed Config', 'woo-feed' ); ?></label>
5
-
6
- <div id="wf-tab-content1" class="wf-tab-content">
7
- <table class="table tree widefat fixed sorted_table mtable" width="100%" id="table-1">
8
- <thead>
9
- <tr>
10
- <th></th>
11
- <th><?php echo ucfirst( $provider ); ?> <?php echo _e( 'Attributes', 'woo-feed' ); ?></th>
12
- <th><?php echo _e( 'Prefix', 'woo-feed' ); ?></th>
13
- <th><?php echo _e( 'Type', 'woo-feed' ); ?></th>
14
- <th><?php echo _e( 'Value', 'woo-feed' ); ?></th>
15
- <th><?php echo _e( 'Suffix', 'woo-feed' ); ?></th>
16
- <th><?php echo _e( 'Output Type', 'woo-feed' ); ?></th>
17
- <th><?php echo _e( 'Output Limit', 'woo-feed' ); ?></th>
18
- <th></th>
19
- </tr>
20
- </thead>
21
- <tbody>
22
- <tr>
23
- <td>
24
- <i class="wf_sortedtable dashicons dashicons-menu"></i>
25
- </td>
26
- <td>
27
- <select name="mattributes[]" required class="wf_mattributes">
28
- <?php echo $dropDown->googleAttributesDropdown( 'id' ); ?>
29
- </select>
30
- </td>
31
- <td>
32
- <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
33
- </td>
34
- <td>
35
- <select name="type[]" class="attr_type wfnoempty">
36
- <option value="attribute"> <?php echo _e( 'Attribute', 'woo-feed' ); ?></option>
37
- <option value="pattern"> <?php echo _e( 'Pattern', 'woo-feed' ); ?></option>
38
- </select>
39
- </td>
40
- <td>
41
- <select name="attributes[]" class="wf_attr wf_attributes">
42
- <?php echo $product->attributeDropdown( 'id' ); ?>
43
- </select>
44
- <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
45
- style=" display: none;"/>
46
- </td>
47
- <td>
48
- <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
49
- </td>
50
- <td>
51
- <select name="output_type[][]" class="outputType wfnoempty">
52
- <option value="1">Default</option>
53
- <option value="2">Strip Tags</option>
54
- <option value="3">UTF-8 Encode</option>
55
- <option value="4">htmlentities</option>
56
- <option value="5">Integer</option>
57
- <option value="6">Price</option>
58
- <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
59
- <option value="8">CDATA</option>
60
- </select>
61
- <i class="dashicons dashicons-editor-expand expandType"></i>
62
- <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
63
- </td>
64
- <td>
65
- <input type="text" name="limit[]" class="wf_ps"/>
66
- </td>
67
- <td>
68
- <i class="delRow dashicons dashicons-trash"></i>
69
- </td>
70
- </tr>
71
- <tr>
72
- <td>
73
- <i class="wf_sortedtable dashicons dashicons-menu"></i>
74
- </td>
75
- <td>
76
- <select name="mattributes[]" required class="wf_mattributes">
77
- <?php echo $dropDown->googleAttributesDropdown( 'title' ); ?>
78
- </select>
79
- </td>
80
- <td>
81
- <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
82
- </td>
83
- <td>
84
- <select name="type[]" class="attr_type wfnoempty">
85
- <option value="attribute"> <?php echo _e( 'Attribute', 'woo-feed' ); ?></option>
86
- <option value="pattern"> <?php echo _e( 'Pattern', 'woo-feed' ); ?></option>
87
- </select>
88
- </td>
89
- <td>
90
- <select name="attributes[]" class="wf_attr wf_attributes">
91
- <?php echo $product->attributeDropdown( 'title' ); ?>
92
- </select>
93
- <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
94
- style=" display: none;"/>
95
- </td>
96
- <td>
97
- <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
98
- </td>
99
- <td>
100
- <select name="output_type[][]" class="outputType wfnoempty">
101
- <option value="1">Default</option>
102
- <option value="2">Strip Tags</option>
103
- <option value="3">UTF-8 Encode</option>
104
- <option value="4">htmlentities</option>
105
- <option value="5">Integer</option>
106
- <option value="6">Price</option>
107
- <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
108
- <option value="8">CDATA</option>
109
- </select>
110
- <i class="dashicons dashicons-editor-expand expandType"></i>
111
- <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
112
- </td>
113
- <td>
114
- <input type="text" name="limit[]" class="wf_ps"/>
115
- </td>
116
- <td>
117
- <i class="delRow dashicons dashicons-trash"></i>
118
- </td>
119
- </tr>
120
- <tr>
121
- <td>
122
- <i class="wf_sortedtable dashicons dashicons-menu"></i>
123
- </td>
124
- <td>
125
- <select name="mattributes[]" required class="wf_mattributes">
126
- <?php echo $dropDown->googleAttributesDropdown( 'description' ); ?>
127
- </select>
128
- </td>
129
- <td>
130
- <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
131
- </td>
132
- <td>
133
- <select name="type[]" class="attr_type wfnoempty">
134
- <option value="attribute"> <?php echo _e( 'Attribute', 'woo-feed' ); ?></option>
135
- <option value="pattern"> <?php echo _e( 'Pattern', 'woo-feed' ); ?></option>
136
- </select>
137
- </td>
138
- <td>
139
- <select name="attributes[]" class="wf_attr wf_attributes">
140
- <?php echo $product->attributeDropdown( 'description' ); ?>
141
- </select>
142
- <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
143
- style=" display: none;"/>
144
- </td>
145
- <td>
146
- <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
147
- </td>
148
- <td>
149
- <select name="output_type[][]" class="outputType wfnoempty">
150
- <option value="1">Default</option>
151
- <option selected value="2">Strip Tags</option>
152
- <option value="3">UTF-8 Encode</option>
153
- <option value="4">htmlentities</option>
154
- <option value="5">Integer</option>
155
- <option value="6">Price</option>
156
- <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
157
- <option value="8">CDATA</option>
158
- </select>
159
- <i class="dashicons dashicons-editor-expand expandType"></i>
160
- <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
161
- </td>
162
- <td>
163
- <input type="text" name="limit[]" class="wf_ps" value="5000"/>
164
- </td>
165
- <td>
166
- <i class="delRow dashicons dashicons-trash"></i>
167
- </td>
168
- </tr>
169
- <tr>
170
- <td>
171
- <i class="wf_sortedtable dashicons dashicons-menu"></i>
172
- </td>
173
- <td>
174
- <select name="mattributes[]" required class="wf_mattributes">
175
- <?php echo $dropDown->googleAttributesDropdown( 'item_group_id' ); ?>
176
- </select>
177
- </td>
178
- <td>
179
- <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
180
- </td>
181
- <td>
182
- <select name="type[]" class="attr_type wfnoempty">
183
- <option value="attribute"> <?php echo _e( 'Attribute', 'woo-feed' ); ?></option>
184
- <option value="pattern"> <?php echo _e( 'Pattern', 'woo-feed' ); ?></option>
185
- </select>
186
- </td>
187
- <td>
188
- <select name="attributes[]" class="wf_attr wf_attributes">
189
- <?php echo $product->attributeDropdown( 'item_group_id' ); ?>
190
- </select>
191
- <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
192
- style=" display: none;"/>
193
- </td>
194
- <td>
195
- <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
196
- </td>
197
- <td>
198
- <select name="output_type[][]" class="outputType wfnoempty">
199
- <option value="1">Default</option>
200
- <option value="2">Strip Tags</option>
201
- <option value="3">UTF-8 Encode</option>
202
- <option value="4">htmlentities</option>
203
- <option value="5">Integer</option>
204
- <option value="6">Price</option>
205
- <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
206
- <option value="8">CDATA</option>
207
- </select>
208
- <i class="dashicons dashicons-editor-expand expandType"></i>
209
- <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
210
- </td>
211
- <td>
212
- <input type="text" name="limit[]" class="wf_ps"/>
213
- </td>
214
- <td>
215
- <i class="delRow dashicons dashicons-trash"></i>
216
- </td>
217
- </tr>
218
- <tr>
219
- <td>
220
- <i class="wf_sortedtable dashicons dashicons-menu"></i>
221
- </td>
222
- <td>
223
- <select name="mattributes[]" required class="wf_mattributes">
224
- <?php echo $dropDown->googleAttributesDropdown( 'link' ); ?>
225
- </select>
226
- </td>
227
- <td>
228
- <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
229
- </td>
230
- <td>
231
- <select name="type[]" class="attr_type wfnoempty">
232
- <option value="attribute"> <?php echo _e( 'Attribute', 'woo-feed' ); ?></option>
233
- <option value="pattern"> <?php echo _e( 'Pattern', 'woo-feed' ); ?></option>
234
- </select>
235
- </td>
236
- <td>
237
- <select name="attributes[]" class="wf_attr wf_attributes">
238
- <?php echo $product->attributeDropdown( 'link' ); ?>
239
- </select>
240
- <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
241
- style=" display: none;"/>
242
- </td>
243
- <td>
244
- <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
245
- </td>
246
- <td>
247
- <select name="output_type[][]" class="outputType wfnoempty">
248
- <option value="1">Default</option>
249
- <option value="2">Strip Tags</option>
250
- <option value="3">UTF-8 Encode</option>
251
- <option value="4">htmlentities</option>
252
- <option value="5">Integer</option>
253
- <option value="6">Price</option>
254
- <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
255
- <option value="8">CDATA</option>
256
- </select>
257
- <i class="dashicons dashicons-editor-expand expandType"></i>
258
- <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
259
- </td>
260
- <td>
261
- <input type="text" name="limit[]" class="wf_ps"/>
262
- </td>
263
- <td>
264
- <i class="delRow dashicons dashicons-trash"></i>
265
- </td>
266
- </tr>
267
- <tr>
268
- <td>
269
- <i class="wf_sortedtable dashicons dashicons-menu"></i>
270
- </td>
271
- <td>
272
- <select name="mattributes[]" required class="wf_mattributes">
273
- <?php echo $dropDown->googleAttributesDropdown('product_type'); ?>
274
- </select>
275
- </td>
276
- <td>
277
- <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
278
- </td>
279
- <td>
280
- <select name="type[]" class="attr_type wfnoempty">
281
- <option value="attribute"> <?php echo _e('Attribute','woo-feed');?></option>
282
- <option value="pattern"> <?php echo _e('Pattern','woo-feed');?></option>
283
- </select>
284
- </td>
285
- <td>
286
- <select name="attributes[]" class="wf_attr wf_attributes">
287
- <?php echo $product->attributeDropdown('product_type'); ?>
288
- </select>
289
- <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
290
- style=" display: none;"/>
291
- </td>
292
- <td>
293
- <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
294
- </td>
295
- <td>
296
- <select name="output_type[][]" class="outputType wfnoempty">
297
- <option value="1">Default</option>
298
- <option value="2">Strip Tags</option>
299
- <option value="3">UTF-8 Encode</option>
300
- <option value="4">htmlentities</option>
301
- <option value="5">Integer</option>
302
- <option value="6">Price</option>
303
- <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
304
- <option value="8">CDATA</option>
305
- </select>
306
- <i class="dashicons dashicons-editor-expand expandType"></i>
307
- <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
308
- </td>
309
- <td>
310
- <input type="text" name="limit[]" class="wf_ps"/>
311
- </td>
312
- <td>
313
- <i class="delRow dashicons dashicons-trash"></i>
314
- </td>
315
- </tr>
316
- <tr>
317
- <td>
318
- <i class="wf_sortedtable dashicons dashicons-menu"></i>
319
- </td>
320
- <td>
321
- <select name="mattributes[]" required class="wf_mattributes">
322
- <?php echo $dropDown->googleAttributesDropdown('current_category'); ?>
323
- </select>
324
- </td>
325
- <td>
326
- <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
327
- </td>
328
- <td>
329
- <select name="type[]" class="attr_type wfnoempty">
330
- <option value="attribute"> <?php echo _e('Attribute','woo-feed');?></option>
331
- <option value="pattern" selected> <?php echo _e('Pattern','woo-feed');?></option>
332
- </select>
333
- </td>
334
- <!-- <td>-->
335
- <!-- <select name="attributes[]" style=" display: none;" class="wf_attr wf_attributes">-->
336
- <!-- --><?php //echo $product->attributeDropdown(); ?>
337
- <!-- </select>-->
338
- <!-- <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes" />-->
339
- <!-- <br><span style="font-size:x-small;"><a href="http://webappick.helpscoutdocs.com/article/19-how-to-map-store-category-with-merchant-category" target="_blank">Learn More..</a></span>-->
340
- <!-- </td>-->
341
-
342
- <td>
343
- <input type="text" name="default[]" placeholder="Select Google Taxonomy" id="wf_google_taxonomy_input_modal" autocomplete="off" class="wf_default wf_attributes"/>
344
- <select name="attributes[]" class="wf_attr wf_attributes" style="display:none;">
345
- <?php echo $product->attributeDropdown( '' ); ?>
346
- </select>
347
- <br><span style="font-size:x-small;"><a style="color: red" href="http://webappick.helpscoutdocs.com/article/19-how-to-map-store-category-with-merchant-category" target="_blank">Learn More..</a></span>
348
- </td>
349
- <td>
350
- <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
351
- </td>
352
- <td>
353
- <select name="output_type[][]" class="outputType wfnoempty">
354
- <option value="1">Default</option>
355
- <option value="2">Strip Tags</option>
356
- <option value="3">UTF-8 Encode</option>
357
- <option value="4">htmlentities</option>
358
- <option value="5">Integer</option>
359
- <option value="6">Price</option>
360
- <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
361
- <option value="8">CDATA</option>
362
- </select>
363
- <i class="dashicons dashicons-editor-expand expandType"></i>
364
- <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
365
- </td>
366
- <td>
367
- <input type="text" name="limit[]" class="wf_ps"/>
368
- </td>
369
- <td>
370
- <i class="delRow dashicons dashicons-trash"></i>
371
- </td>
372
- </tr>
373
- <tr>
374
- <td>
375
- <i class="wf_sortedtable dashicons dashicons-menu"></i>
376
- </td>
377
- <td>
378
- <select name="mattributes[]" required class="wf_mattributes">
379
- <?php echo $dropDown->googleAttributesDropdown( 'image' ); ?>
380
- </select>
381
- </td>
382
- <td>
383
- <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
384
- </td>
385
- <td>
386
- <select name="type[]" class="attr_type wfnoempty">
387
- <option value="attribute"> <?php echo _e( 'Attribute', 'woo-feed' ); ?></option>
388
- <option value="pattern"> <?php echo _e( 'Pattern', 'woo-feed' ); ?></option>
389
- </select>
390
- </td>
391
- <td>
392
- <select name="attributes[]" class="wf_attr wf_attributes">
393
- <?php echo $product->attributeDropdown( 'image' ); ?>
394
- </select>
395
- <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
396
- style=" display: none;"/>
397
- </td>
398
- <td>
399
- <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
400
- </td>
401
- <td>
402
- <select name="output_type[][]" class="outputType wfnoempty">
403
- <option value="1">Default</option>
404
- <option value="2">Strip Tags</option>
405
- <option value="3">UTF-8 Encode</option>
406
- <option value="4">htmlentities</option>
407
- <option value="5">Integer</option>
408
- <option value="6">Price</option>
409
- <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
410
- <option value="8">CDATA</option>
411
- </select>
412
- <i class="dashicons dashicons-editor-expand expandType"></i>
413
- <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
414
- </td>
415
- <td>
416
- <input type="text" name="limit[]" class="wf_ps"/>
417
- </td>
418
- <td>
419
- <i class="delRow dashicons dashicons-trash"></i>
420
- </td>
421
- </tr>
422
- <tr>
423
- <td>
424
- <i class="wf_sortedtable dashicons dashicons-menu"></i>
425
- </td>
426
- <td>
427
- <select name="mattributes[]" required class="wf_mattributes">
428
- <?php echo $dropDown->googleAttributesDropdown( 'condition' ); ?>
429
- </select>
430
- </td>
431
- <td>
432
- <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
433
- </td>
434
- <td>
435
- <select name="type[]" class="attr_type wfnoempty">
436
- <option value="attribute"><?php echo _e( 'Attribute', 'woo-feed' ); ?></option>
437
- <option value="pattern"><?php echo _e( 'Pattern', 'woo-feed' ); ?></option>
438
- </select>
439
- </td>
440
- <td>
441
- <select name="attributes[]" class="wf_attr wf_attributes">
442
- <?php echo $product->attributeDropdown( 'condition' ); ?>
443
- </select>
444
- <input type="text" style=" display: none;" name="default[]" autocomplete="off" class="wf_default wf_attributes"
445
- />
446
- </td>
447
- <td>
448
- <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
449
- </td>
450
- <td>
451
- <select name="output_type[][]" class="outputType wfnoempty">
452
- <option value="1">Default</option>
453
- <option value="2">Strip Tags</option>
454
- <option value="3">UTF-8 Encode</option>
455
- <option value="4">htmlentities</option>
456
- <option value="5">Integer</option>
457
- <option value="6">Price</option>
458
- <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
459
- <option value="8">CDATA</option>
460
- </select>
461
- <i class="dashicons dashicons-editor-expand expandType"></i>
462
- <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
463
- </td>
464
- <td>
465
- <input type="text" name="limit[]" class="wf_ps"/>
466
- </td>
467
- <td>
468
- <i class="delRow dashicons dashicons-trash"></i>
469
- </td>
470
- </tr>
471
- <tr>
472
- <td>
473
- <i class="wf_sortedtable dashicons dashicons-menu"></i>
474
- </td>
475
- <td>
476
- <select name="mattributes[]" required class="wf_mattributes">
477
- <?php echo $dropDown->googleAttributesDropdown( 'availability' ); ?>
478
- </select>
479
- </td>
480
- <td>
481
- <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
482
- </td>
483
- <td>
484
- <select name="type[]" class="attr_type wfnoempty">
485
- <option value="attribute"> <?php echo _e( 'Attribute', 'woo-feed' ); ?></option>
486
- <option value="pattern"> <?php echo _e( 'Pattern', 'woo-feed' ); ?></option>
487
- </select>
488
- </td>
489
- <td>
490
- <select name="attributes[]" class="wf_attr wf_attributes">
491
- <?php echo $product->attributeDropdown( 'availability' ); ?>
492
- </select>
493
- <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
494
- style=" display: none;"/>
495
- </td>
496
- <td>
497
- <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
498
- </td>
499
- <td>
500
- <select name="output_type[][]" class="outputType wfnoempty">
501
- <option value="1">Default</option>
502
- <option value="2">Strip Tags</option>
503
- <option value="3">UTF-8 Encode</option>
504
- <option value="4">htmlentities</option>
505
- <option value="5">Integer</option>
506
- <option value="6">Price</option>
507
- <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
508
- <option value="8">CDATA</option>
509
- </select>
510
- <i class="dashicons dashicons-editor-expand expandType"></i>
511
- <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
512
- </td>
513
- <td>
514
- <input type="text" name="limit[]" class="wf_ps"/>
515
- </td>
516
- <td>
517
- <i class="delRow dashicons dashicons-trash"></i>
518
- </td>
519
- </tr>
520
- <tr>
521
- <td>
522
- <i class="wf_sortedtable dashicons dashicons-menu"></i>
523
- </td>
524
- <td>
525
- <select name="mattributes[]" required class="wf_mattributes">
526
- <?php echo $dropDown->googleAttributesDropdown( 'price' ); ?>
527
- </select>
528
- </td>
529
- <td>
530
- <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
531
- </td>
532
- <td>
533
- <select name="type[]" class="attr_type wfnoempty">
534
- <option value="attribute"> <?php echo _e( 'Attribute', 'woo-feed' ); ?></option>
535
- <option value="pattern"> <?php echo _e( 'Pattern', 'woo-feed' ); ?></option>
536
- </select>
537
- </td>
538
- <td>
539
- <select name="attributes[]" class="wf_attr wf_attributes">
540
- <?php echo $product->attributeDropdown( 'price' ); ?>
541
- </select>
542
- <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
543
- style=" display: none;"/>
544
- </td>
545
- <td>
546
- <input type="text" name="suffix[]" value="<?php echo get_woocommerce_currency();?>" autocomplete="off" class="wf_ps"/>
547
- </td>
548
- <td>
549
- <select name="output_type[][]" class="outputType wfnoempty">
550
- <option value="1">Default</option>
551
- <option value="2">Strip Tags</option>
552
- <option value="3">UTF-8 Encode</option>
553
- <option value="4">htmlentities</option>
554
- <option value="5">Integer</option>
555
- <option selected value="6">Price</option>
556
- <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
557
- <option value="8">CDATA</option>
558
- </select>
559
- <i class="dashicons dashicons-editor-expand expandType"></i>
560
- <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
561
- </td>
562
- <td>
563
- <input type="text" name="limit[]" class="wf_ps"/>
564
- </td>
565
- <td>
566
- <i class="delRow dashicons dashicons-trash"></i>
567
- </td>
568
- </tr>
569
-
570
- <tr>
571
- <td>
572
- <i class="wf_sortedtable dashicons dashicons-menu"></i>
573
- </td>
574
- <td>
575
- <select name="mattributes[]" required class="wf_mattributes">
576
- <?php echo $dropDown->googleAttributesDropdown( 'sku' ); ?>
577
- </select>
578
- </td>
579
- <td>
580
- <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
581
- </td>
582
- <td>
583
- <select name="type[]" class="attr_type wfnoempty">
584
- <option value="attribute"> <?php echo _e( 'Attribute', 'woo-feed' ); ?></option>
585
- <option value="pattern"> <?php echo _e( 'Pattern', 'woo-feed' ); ?></option>
586
- </select>
587
- </td>
588
- <td>
589
- <select name="attributes[]" class="wf_attr wf_attributes">
590
- <?php echo $product->attributeDropdown( 'sku' ); ?>
591
- </select>
592
- <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
593
- style=" display: none;"/>
594
- </td>
595
- <td>
596
- <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
597
- </td>
598
- <td>
599
- <select name="output_type[][]" class="outputType wfnoempty">
600
- <option value="1">Default</option>
601
- <option value="2">Strip Tags</option>
602
- <option value="3">UTF-8 Encode</option>
603
- <option value="4">htmlentities</option>
604
- <option value="5">Integer</option>
605
- <option value="6">Price</option>
606
- <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
607
- <option value="8">CDATA</option>
608
- </select>
609
- <i class="dashicons dashicons-editor-expand expandType"></i>
610
- <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
611
- </td>
612
- <td>
613
- <input type="text" name="limit[]" class="wf_ps"/>
614
- </td>
615
- <td>
616
- <i class="delRow dashicons dashicons-trash"></i>
617
- </td>
618
- </tr>
619
- <tr>
620
- <td>
621
- <i class="wf_sortedtable dashicons dashicons-menu"></i>
622
- </td>
623
- <td>
624
- <select name="mattributes[]" required class="wf_mattributes">
625
- <?php echo $dropDown->googleAttributesDropdown( 'brand' ); ?>
626
- </select>
627
- </td>
628
- <td>
629
- <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
630
- </td>
631
- <td>
632
- <select name="type[]" class="attr_type wfnoempty">
633
- <option value="attribute" ><?php echo _e( 'Attribute', 'woo-feed' ); ?></option>
634
- <option value="pattern" selected><?php echo _e( 'Pattern', 'woo-feed' ); ?></option>
635
- </select>
636
- </td>
637
- <td>
638
- <select name="attributes[]" style=" display: none;" class="wf_attr wf_attributes">
639
- <?php echo $product->attributeDropdown(); ?>
640
- </select>
641
- <?php
642
- $url = site_url();
643
- $WABrand="";
644
- // Remove all illegal characters from a url
645
- $url = filter_var($url, FILTER_SANITIZE_URL);
646
- // Validate url
647
- if (filter_var($url, FILTER_VALIDATE_URL) !== false) {
648
- $url=parse_url($url);
649
- if(array_key_exists('host',$url)){
650
- $arr = explode('.',$url['host']);
651
- $WABrand = $arr[count($arr) - 2];
652
- }
653
- }
654
-
655
- ?>
656
- <input type="text" name="default[]" value="<?php echo $WABrand; ?>" autocomplete="off" class="wf_default wf_attributes"/>
657
- </td>
658
- <td>
659
- <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
660
- </td>
661
- <td>
662
- <select name="output_type[][]" class="outputType wfnoempty">
663
- <option value="1">Default</option>
664
- <option value="2">Strip Tags</option>
665
- <option value="3">UTF-8 Encode</option>
666
- <option value="4">htmlentities</option>
667
- <option value="5">Integer</option>
668
- <option value="6">Price</option>
669
- <option value="7">Remove Space</option>
670
- <option value="10">Remove ShortCodes</option>
671
- <option value="9">Remove Special Character</option>
672
- <option value="8">CDATA</option>
673
- </select>
674
- <i class="dashicons dashicons-editor-expand expandType"></i>
675
- <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
676
- </td>
677
- <td>
678
- <input type="text" name="limit[]" class="wf_ps"/>
679
- </td>
680
- <td>
681
- <i class="delRow dashicons dashicons-trash"></i>
682
- </td>
683
- </tr>
684
- </tbody>
685
- <tfoot>
686
- <tr>
687
- <td>
688
- <button type="button" class="button-small button-primary" id="wf_newRow">
689
- <?php echo _e( 'Add New Row', 'woo-feed' ); ?>
690
- </button>
691
- </td>
692
- <td colspan="8">
693
-
694
- </td>
695
- </tr>
696
- </tfoot>
697
- </table>
698
- <table class=" widefat fixed">
699
- <tr>
700
- <td align="left" class="">
701
- <div class="makeFeedResponse"></div>
702
- <div class="makeFeedComplete"></div>
703
- </td>
704
- <td align="right">
705
- <button type="submit" class="wfbtn">
706
- <?php echo _e( 'Save & Generate Feed', 'woo-feed' ); ?>
707
- </button>
708
- </td>
709
- </tr>
710
- </table>
711
- </div>
712
- </li>
713
-
714
- <?php include plugin_dir_path(__FILE__) . "../woo-feed-ftp-sftp-template.php"; ?>
715
-
716
- </ul>
717
- <!--modal inputs for getting Google Taxonomy -->
718
- <div class="container">
719
- <div class="_wf_popup" data-popup="popup-wf_google_taxonomy_modal" id="wf_google_taxonomy_modal">
720
- <div class="_wf_popup-inner">
721
- <form id="wf_google_taxonomy_modal_form_submission" enctype="multipart/form-data" >
722
- <h2>Select Google Taxonomy</h2><span style="color: red" id="google_taxonomy_error_message"></span>
723
- <select name="attributes[]" id="googleTaxonomyId" style="" class="googleTaxonomyId">
724
- <?php echo $dropDown->googleTaxonomy(); ?>
725
- </select>
726
- <input style="float: right" id="wf_google_taxonomy_modal_submit_button" class="wf_google_taxonomy_modal_submit_button" type="button" value="Submit"/>
727
- <input style="float: right" id="wf_google_taxonomy_modal_cancel_button" class="wf_google_taxonomy_modal_form_button" value="Cancel" type="button"/>
728
- <a style="text-decoration:none;" class="_wf_popup-close" id="wf_google_taxonomy_modal_popup_close" href="#">x</a>
729
- </form>
730
- </div>
731
- </div>
732
- </div>
1
+ <ul class="wf_tabs">
2
+ <li>
3
+ <input type="radio" name="wf_tabs" id="tab1" checked/>
4
+ <label class="wf-tab-name" for="tab1"><?php echo _e( 'Feed Config', 'woo-feed' ); ?></label>
5
+
6
+ <div id="wf-tab-content1" class="wf-tab-content">
7
+ <table class="table tree widefat fixed sorted_table mtable" width="100%" id="table-1">
8
+ <thead>
9
+ <tr>
10
+ <th></th>
11
+ <th><?php echo ucfirst( $provider ); ?> <?php echo _e( 'Attributes', 'woo-feed' ); ?></th>
12
+ <th><?php echo _e( 'Prefix', 'woo-feed' ); ?></th>
13
+ <th><?php echo _e( 'Type', 'woo-feed' ); ?></th>
14
+ <th><?php echo _e( 'Value', 'woo-feed' ); ?></th>
15
+ <th><?php echo _e( 'Suffix', 'woo-feed' ); ?></th>
16
+ <th><?php echo _e( 'Output Type', 'woo-feed' ); ?></th>
17
+ <th><?php echo _e( 'Output Limit', 'woo-feed' ); ?></th>
18
+ <th></th>
19
+ </tr>
20
+ </thead>
21
+ <tbody>
22
+ <tr>
23
+ <td>
24
+ <i class="wf_sortedtable dashicons dashicons-menu"></i>
25
+ </td>
26
+ <td>
27
+ <select name="mattributes[]" required class="wf_mattributes">
28
+ <?php echo $dropDown->googleAttributesDropdown( 'id' ); ?>
29
+ </select>
30
+ </td>
31
+ <td>
32
+ <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
33
+ </td>
34
+ <td>
35
+ <select name="type[]" class="attr_type wfnoempty">
36
+ <option value="attribute"> <?php echo _e( 'Attribute', 'woo-feed' ); ?></option>
37
+ <option value="pattern"> <?php echo _e( 'Pattern', 'woo-feed' ); ?></option>
38
+ </select>
39
+ </td>
40
+ <td>
41
+ <select name="attributes[]" class="wf_attr wf_attributes">
42
+ <?php echo $product->attributeDropdown( 'id' ); ?>
43
+ </select>
44
+ <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
45
+ style=" display: none;"/>
46
+ </td>
47
+ <td>
48
+ <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
49
+ </td>
50
+ <td>
51
+ <select name="output_type[][]" class="outputType wfnoempty">
52
+ <option value="1">Default</option>
53
+ <option value="2">Strip Tags</option>
54
+ <option value="3">UTF-8 Encode</option>
55
+ <option value="4">htmlentities</option>
56
+ <option value="5">Integer</option>
57
+ <option value="6">Price</option>
58
+ <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
59
+ <option value="8">CDATA</option>
60
+ </select>
61
+ <i class="dashicons dashicons-editor-expand expandType"></i>
62
+ <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
63
+ </td>
64
+ <td>
65
+ <input type="text" name="limit[]" class="wf_ps"/>
66
+ </td>
67
+ <td>
68
+ <i class="delRow dashicons dashicons-trash"></i>
69
+ </td>
70
+ </tr>
71
+ <tr>
72
+ <td>
73
+ <i class="wf_sortedtable dashicons dashicons-menu"></i>
74
+ </td>
75
+ <td>
76
+ <select name="mattributes[]" required class="wf_mattributes">
77
+ <?php echo $dropDown->googleAttributesDropdown( 'title' ); ?>
78
+ </select>
79
+ </td>
80
+ <td>
81
+ <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
82
+ </td>
83
+ <td>
84
+ <select name="type[]" class="attr_type wfnoempty">
85
+ <option value="attribute"> <?php echo _e( 'Attribute', 'woo-feed' ); ?></option>
86
+ <option value="pattern"> <?php echo _e( 'Pattern', 'woo-feed' ); ?></option>
87
+ </select>
88
+ </td>
89
+ <td>
90
+ <select name="attributes[]" class="wf_attr wf_attributes">
91
+ <?php echo $product->attributeDropdown( 'title' ); ?>
92
+ </select>
93
+ <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
94
+ style=" display: none;"/>
95
+ </td>
96
+ <td>
97
+ <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
98
+ </td>
99
+ <td>
100
+ <select name="output_type[][]" class="outputType wfnoempty">
101
+ <option value="1">Default</option>
102
+ <option value="2">Strip Tags</option>
103
+ <option value="3">UTF-8 Encode</option>
104
+ <option value="4">htmlentities</option>
105
+ <option value="5">Integer</option>
106
+ <option value="6">Price</option>
107
+ <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
108
+ <option value="8">CDATA</option>
109
+ </select>
110
+ <i class="dashicons dashicons-editor-expand expandType"></i>
111
+ <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
112
+ </td>
113
+ <td>
114
+ <input type="text" name="limit[]" class="wf_ps"/>
115
+ </td>
116
+ <td>
117
+ <i class="delRow dashicons dashicons-trash"></i>
118
+ </td>
119
+ </tr>
120
+ <tr>
121
+ <td>
122
+ <i class="wf_sortedtable dashicons dashicons-menu"></i>
123
+ </td>
124
+ <td>
125
+ <select name="mattributes[]" required class="wf_mattributes">
126
+ <?php echo $dropDown->googleAttributesDropdown( 'description' ); ?>
127
+ </select>
128
+ </td>
129
+ <td>
130
+ <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
131
+ </td>
132
+ <td>
133
+ <select name="type[]" class="attr_type wfnoempty">
134
+ <option value="attribute"> <?php echo _e( 'Attribute', 'woo-feed' ); ?></option>
135
+ <option value="pattern"> <?php echo _e( 'Pattern', 'woo-feed' ); ?></option>
136
+ </select>
137
+ </td>
138
+ <td>
139
+ <select name="attributes[]" class="wf_attr wf_attributes">
140
+ <?php echo $product->attributeDropdown( 'description' ); ?>
141
+ </select>
142
+ <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
143
+ style=" display: none;"/>
144
+ </td>
145
+ <td>
146
+ <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
147
+ </td>
148
+ <td>
149
+ <select name="output_type[][]" class="outputType wfnoempty">
150
+ <option value="1">Default</option>
151
+ <option selected value="2">Strip Tags</option>
152
+ <option value="3">UTF-8 Encode</option>
153
+ <option value="4">htmlentities</option>
154
+ <option value="5">Integer</option>
155
+ <option value="6">Price</option>
156
+ <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
157
+ <option value="8">CDATA</option>
158
+ </select>
159
+ <i class="dashicons dashicons-editor-expand expandType"></i>
160
+ <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
161
+ </td>
162
+ <td>
163
+ <input type="text" name="limit[]" class="wf_ps" value="5000"/>
164
+ </td>
165
+ <td>
166
+ <i class="delRow dashicons dashicons-trash"></i>
167
+ </td>
168
+ </tr>
169
+ <tr>
170
+ <td>
171
+ <i class="wf_sortedtable dashicons dashicons-menu"></i>
172
+ </td>
173
+ <td>
174
+ <select name="mattributes[]" required class="wf_mattributes">
175
+ <?php echo $dropDown->googleAttributesDropdown( 'item_group_id' ); ?>
176
+ </select>
177
+ </td>
178
+ <td>
179
+ <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
180
+ </td>
181
+ <td>
182
+ <select name="type[]" class="attr_type wfnoempty">
183
+ <option value="attribute"> <?php echo _e( 'Attribute', 'woo-feed' ); ?></option>
184
+ <option value="pattern"> <?php echo _e( 'Pattern', 'woo-feed' ); ?></option>
185
+ </select>
186
+ </td>
187
+ <td>
188
+ <select name="attributes[]" class="wf_attr wf_attributes">
189
+ <?php echo $product->attributeDropdown( 'item_group_id' ); ?>
190
+ </select>
191
+ <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
192
+ style=" display: none;"/>
193
+ </td>
194
+ <td>
195
+ <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
196
+ </td>
197
+ <td>
198
+ <select name="output_type[][]" class="outputType wfnoempty">
199
+ <option value="1">Default</option>
200
+ <option value="2">Strip Tags</option>
201
+ <option value="3">UTF-8 Encode</option>
202
+ <option value="4">htmlentities</option>
203
+ <option value="5">Integer</option>
204
+ <option value="6">Price</option>
205
+ <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
206
+ <option value="8">CDATA</option>
207
+ </select>
208
+ <i class="dashicons dashicons-editor-expand expandType"></i>
209
+ <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
210
+ </td>
211
+ <td>
212
+ <input type="text" name="limit[]" class="wf_ps"/>
213
+ </td>
214
+ <td>
215
+ <i class="delRow dashicons dashicons-trash"></i>
216
+ </td>
217
+ </tr>
218
+ <tr>
219
+ <td>
220
+ <i class="wf_sortedtable dashicons dashicons-menu"></i>
221
+ </td>
222
+ <td>
223
+ <select name="mattributes[]" required class="wf_mattributes">
224
+ <?php echo $dropDown->googleAttributesDropdown( 'link' ); ?>
225
+ </select>
226
+ </td>
227
+ <td>
228
+ <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
229
+ </td>
230
+ <td>
231
+ <select name="type[]" class="attr_type wfnoempty">
232
+ <option value="attribute"> <?php echo _e( 'Attribute', 'woo-feed' ); ?></option>
233
+ <option value="pattern"> <?php echo _e( 'Pattern', 'woo-feed' ); ?></option>
234
+ </select>
235
+ </td>
236
+ <td>
237
+ <select name="attributes[]" class="wf_attr wf_attributes">
238
+ <?php echo $product->attributeDropdown( 'link' ); ?>
239
+ </select>
240
+ <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
241
+ style=" display: none;"/>
242
+ </td>
243
+ <td>
244
+ <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
245
+ </td>
246
+ <td>
247
+ <select name="output_type[][]" class="outputType wfnoempty">
248
+ <option value="1">Default</option>
249
+ <option value="2">Strip Tags</option>
250
+ <option value="3">UTF-8 Encode</option>
251
+ <option value="4">htmlentities</option>
252
+ <option value="5">Integer</option>
253
+ <option value="6">Price</option>
254
+ <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
255
+ <option value="8">CDATA</option>
256
+ </select>
257
+ <i class="dashicons dashicons-editor-expand expandType"></i>
258
+ <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
259
+ </td>
260
+ <td>
261
+ <input type="text" name="limit[]" class="wf_ps"/>
262
+ </td>
263
+ <td>
264
+ <i class="delRow dashicons dashicons-trash"></i>
265
+ </td>
266
+ </tr>
267
+ <tr>
268
+ <td>
269
+ <i class="wf_sortedtable dashicons dashicons-menu"></i>
270
+ </td>
271
+ <td>
272
+ <select name="mattributes[]" required class="wf_mattributes">
273
+ <?php echo $dropDown->googleAttributesDropdown('product_type'); ?>
274
+ </select>
275
+ </td>
276
+ <td>
277
+ <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
278
+ </td>
279
+ <td>
280
+ <select name="type[]" class="attr_type wfnoempty">
281
+ <option value="attribute"> <?php echo _e('Attribute','woo-feed');?></option>
282
+ <option value="pattern"> <?php echo _e('Pattern','woo-feed');?></option>
283
+ </select>
284
+ </td>
285
+ <td>
286
+ <select name="attributes[]" class="wf_attr wf_attributes">
287
+ <?php echo $product->attributeDropdown('product_type'); ?>
288
+ </select>
289
+ <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
290
+ style=" display: none;"/>
291
+ </td>
292
+ <td>
293
+ <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
294
+ </td>
295
+ <td>
296
+ <select name="output_type[][]" class="outputType wfnoempty">
297
+ <option value="1">Default</option>
298
+ <option value="2">Strip Tags</option>
299
+ <option value="3">UTF-8 Encode</option>
300
+ <option value="4">htmlentities</option>
301
+ <option value="5">Integer</option>
302
+ <option value="6">Price</option>
303
+ <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
304
+ <option value="8">CDATA</option>
305
+ </select>
306
+ <i class="dashicons dashicons-editor-expand expandType"></i>
307
+ <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
308
+ </td>
309
+ <td>
310
+ <input type="text" name="limit[]" class="wf_ps"/>
311
+ </td>
312
+ <td>
313
+ <i class="delRow dashicons dashicons-trash"></i>
314
+ </td>
315
+ </tr>
316
+ <tr>
317
+ <td>
318
+ <i class="wf_sortedtable dashicons dashicons-menu"></i>
319
+ </td>
320
+ <td>
321
+ <select name="mattributes[]" required class="wf_mattributes">
322
+ <?php echo $dropDown->googleAttributesDropdown('current_category'); ?>
323
+ </select>
324
+ </td>
325
+ <td>
326
+ <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
327
+ </td>
328
+ <td>
329
+ <select name="type[]" class="attr_type wfnoempty">
330
+ <option value="attribute"> <?php echo _e('Attribute','woo-feed');?></option>
331
+ <option value="pattern" selected> <?php echo _e('Pattern','woo-feed');?></option>
332
+ </select>
333
+ </td>
334
+ <!-- <td>-->
335
+ <!-- <select name="attributes[]" style=" display: none;" class="wf_attr wf_attributes">-->
336
+ <!-- --><?php //echo $product->attributeDropdown(); ?>
337
+ <!-- </select>-->
338
+ <!-- <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes" />-->
339
+ <!-- <br><span style="font-size:x-small;"><a href="http://webappick.helpscoutdocs.com/article/19-how-to-map-store-category-with-merchant-category" target="_blank">Learn More..</a></span>-->
340
+ <!-- </td>-->
341
+ <td>
342
+ <select name="attributes[]" class="wf_attr wf_attributes" style="display:none;">
343
+ <?php echo $product->attributeDropdown( '' ); ?>
344
+ </select>
345
+ <span class="wf_default wf_attributes">
346
+ <select name="default[]" id="googleTaxonomyId">
347
+ <?php echo $dropDown->googleTaxonomy(); ?>
348
+ </select>
349
+ </span>
350
+ <span style="font-size:x-small;"><a style="color: red" href="http://webappick.helpscoutdocs.com/article/19-how-to-map-store-category-with-merchant-category" target="_blank">Learn More..</a></span>
351
+ </td>
352
+ <td>
353
+ <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
354
+ </td>
355
+ <td>
356
+ <select name="output_type[][]" class="outputType wfnoempty">
357
+ <option value="1">Default</option>
358
+ <option value="2">Strip Tags</option>
359
+ <option value="3">UTF-8 Encode</option>
360
+ <option value="4">htmlentities</option>
361
+ <option value="5">Integer</option>
362
+ <option value="6">Price</option>
363
+ <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
364
+ <option value="8">CDATA</option>
365
+ </select>
366
+ <i class="dashicons dashicons-editor-expand expandType"></i>
367
+ <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
368
+ </td>
369
+ <td>
370
+ <input type="text" name="limit[]" class="wf_ps"/>
371
+ </td>
372
+ <td>
373
+ <i class="delRow dashicons dashicons-trash"></i>
374
+ </td>
375
+ </tr>
376
+ <tr>
377
+ <td>
378
+ <i class="wf_sortedtable dashicons dashicons-menu"></i>
379
+ </td>
380
+ <td>
381
+ <select name="mattributes[]" required class="wf_mattributes">
382
+ <?php echo $dropDown->googleAttributesDropdown( 'image' ); ?>
383
+ </select>
384
+ </td>
385
+ <td>
386
+ <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
387
+ </td>
388
+ <td>
389
+ <select name="type[]" class="attr_type wfnoempty">
390
+ <option value="attribute"> <?php echo _e( 'Attribute', 'woo-feed' ); ?></option>
391
+ <option value="pattern"> <?php echo _e( 'Pattern', 'woo-feed' ); ?></option>
392
+ </select>
393
+ </td>
394
+ <td>
395
+ <select name="attributes[]" class="wf_attr wf_attributes">
396
+ <?php echo $product->attributeDropdown( 'image' ); ?>
397
+ </select>
398
+ <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
399
+ style=" display: none;"/>
400
+ </td>
401
+ <td>
402
+ <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
403
+ </td>
404
+ <td>
405
+ <select name="output_type[][]" class="outputType wfnoempty">
406
+ <option value="1">Default</option>
407
+ <option value="2">Strip Tags</option>
408
+ <option value="3">UTF-8 Encode</option>
409
+ <option value="4">htmlentities</option>
410
+ <option value="5">Integer</option>
411
+ <option value="6">Price</option>
412
+ <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
413
+ <option value="8">CDATA</option>
414
+ </select>
415
+ <i class="dashicons dashicons-editor-expand expandType"></i>
416
+ <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
417
+ </td>
418
+ <td>
419
+ <input type="text" name="limit[]" class="wf_ps"/>
420
+ </td>
421
+ <td>
422
+ <i class="delRow dashicons dashicons-trash"></i>
423
+ </td>
424
+ </tr>
425
+ <tr>
426
+ <td>
427
+ <i class="wf_sortedtable dashicons dashicons-menu"></i>
428
+ </td>
429
+ <td>
430
+ <select name="mattributes[]" required class="wf_mattributes">
431
+ <?php echo $dropDown->googleAttributesDropdown( 'condition' ); ?>
432
+ </select>
433
+ </td>
434
+ <td>
435
+ <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
436
+ </td>
437
+ <td>
438
+ <select name="type[]" class="attr_type wfnoempty">
439
+ <option value="attribute"><?php echo _e( 'Attribute', 'woo-feed' ); ?></option>
440
+ <option value="pattern"><?php echo _e( 'Pattern', 'woo-feed' ); ?></option>
441
+ </select>
442
+ </td>
443
+ <td>
444
+ <select name="attributes[]" class="wf_attr wf_attributes">
445
+ <?php echo $product->attributeDropdown( 'condition' ); ?>
446
+ </select>
447
+ <input type="text" style=" display: none;" name="default[]" autocomplete="off" class="wf_default wf_attributes"
448
+ />
449
+ </td>
450
+ <td>
451
+ <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
452
+ </td>
453
+ <td>
454
+ <select name="output_type[][]" class="outputType wfnoempty">
455
+ <option value="1">Default</option>
456
+ <option value="2">Strip Tags</option>
457
+ <option value="3">UTF-8 Encode</option>
458
+ <option value="4">htmlentities</option>
459
+ <option value="5">Integer</option>
460
+ <option value="6">Price</option>
461
+ <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
462
+ <option value="8">CDATA</option>
463
+ </select>
464
+ <i class="dashicons dashicons-editor-expand expandType"></i>
465
+ <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
466
+ </td>
467
+ <td>
468
+ <input type="text" name="limit[]" class="wf_ps"/>
469
+ </td>
470
+ <td>
471
+ <i class="delRow dashicons dashicons-trash"></i>
472
+ </td>
473
+ </tr>
474
+ <tr>
475
+ <td>
476
+ <i class="wf_sortedtable dashicons dashicons-menu"></i>
477
+ </td>
478
+ <td>
479
+ <select name="mattributes[]" required class="wf_mattributes">
480
+ <?php echo $dropDown->googleAttributesDropdown( 'availability' ); ?>
481
+ </select>
482
+ </td>
483
+ <td>
484
+ <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
485
+ </td>
486
+ <td>
487
+ <select name="type[]" class="attr_type wfnoempty">
488
+ <option value="attribute"> <?php echo _e( 'Attribute', 'woo-feed' ); ?></option>
489
+ <option value="pattern"> <?php echo _e( 'Pattern', 'woo-feed' ); ?></option>
490
+ </select>
491
+ </td>
492
+ <td>
493
+ <select name="attributes[]" class="wf_attr wf_attributes">
494
+ <?php echo $product->attributeDropdown( 'availability' ); ?>
495
+ </select>
496
+ <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
497
+ style=" display: none;"/>
498
+ </td>
499
+ <td>
500
+ <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
501
+ </td>
502
+ <td>
503
+ <select name="output_type[][]" class="outputType wfnoempty">
504
+ <option value="1">Default</option>
505
+ <option value="2">Strip Tags</option>
506
+ <option value="3">UTF-8 Encode</option>
507
+ <option value="4">htmlentities</option>
508
+ <option value="5">Integer</option>
509
+ <option value="6">Price</option>
510
+ <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
511
+ <option value="8">CDATA</option>
512
+ </select>
513
+ <i class="dashicons dashicons-editor-expand expandType"></i>
514
+ <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
515
+ </td>
516
+ <td>
517
+ <input type="text" name="limit[]" class="wf_ps"/>
518
+ </td>
519
+ <td>
520
+ <i class="delRow dashicons dashicons-trash"></i>
521
+ </td>
522
+ </tr>
523
+ <tr>
524
+ <td>
525
+ <i class="wf_sortedtable dashicons dashicons-menu"></i>
526
+ </td>
527
+ <td>
528
+ <select name="mattributes[]" required class="wf_mattributes">
529
+ <?php echo $dropDown->googleAttributesDropdown( 'price' ); ?>
530
+ </select>
531
+ </td>
532
+ <td>
533
+ <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
534
+ </td>
535
+ <td>
536
+ <select name="type[]" class="attr_type wfnoempty">
537
+ <option value="attribute"> <?php echo _e( 'Attribute', 'woo-feed' ); ?></option>
538
+ <option value="pattern"> <?php echo _e( 'Pattern', 'woo-feed' ); ?></option>
539
+ </select>
540
+ </td>
541
+ <td>
542
+ <select name="attributes[]" class="wf_attr wf_attributes">
543
+ <?php echo $product->attributeDropdown( 'price' ); ?>
544
+ </select>
545
+ <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
546
+ style=" display: none;"/>
547
+ </td>
548
+ <td>
549
+ <input type="text" name="suffix[]" value="<?php echo get_woocommerce_currency();?>" autocomplete="off" class="wf_ps"/>
550
+ </td>
551
+ <td>
552
+ <select name="output_type[][]" class="outputType wfnoempty">
553
+ <option value="1">Default</option>
554
+ <option value="2">Strip Tags</option>
555
+ <option value="3">UTF-8 Encode</option>
556
+ <option value="4">htmlentities</option>
557
+ <option value="5">Integer</option>
558
+ <option selected value="6">Price</option>
559
+ <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
560
+ <option value="8">CDATA</option>
561
+ </select>
562
+ <i class="dashicons dashicons-editor-expand expandType"></i>
563
+ <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
564
+ </td>
565
+ <td>
566
+ <input type="text" name="limit[]" class="wf_ps"/>
567
+ </td>
568
+ <td>
569
+ <i class="delRow dashicons dashicons-trash"></i>
570
+ </td>
571
+ </tr>
572
+ <tr>
573
+ <td>
574
+ <i class="wf_sortedtable dashicons dashicons-menu"></i>
575
+ </td>
576
+ <td>
577
+ <select name="mattributes[]" required class="wf_mattributes">
578
+ <?php echo $dropDown->googleAttributesDropdown( 'sku' ); ?>
579
+ </select>
580
+ </td>
581
+ <td>
582
+ <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
583
+ </td>
584
+ <td>
585
+ <select name="type[]" class="attr_type wfnoempty">
586
+ <option value="attribute"> <?php echo _e( 'Attribute', 'woo-feed' ); ?></option>
587
+ <option value="pattern"> <?php echo _e( 'Pattern', 'woo-feed' ); ?></option>
588
+ </select>
589
+ </td>
590
+ <td>
591
+ <select name="attributes[]" class="wf_attr wf_attributes">
592
+ <?php echo $product->attributeDropdown( 'sku' ); ?>
593
+ </select>
594
+ <input type="text" name="default[]" autocomplete="off" class="wf_default wf_attributes"
595
+ style=" display: none;"/>
596
+ </td>
597
+ <td>
598
+ <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
599
+ </td>
600
+ <td>
601
+ <select name="output_type[][]" class="outputType wfnoempty">
602
+ <option value="1">Default</option>
603
+ <option value="2">Strip Tags</option>
604
+ <option value="3">UTF-8 Encode</option>
605
+ <option value="4">htmlentities</option>
606
+ <option value="5">Integer</option>
607
+ <option value="6">Price</option>
608
+ <option value="7">Remove Space</option><option value="10">Remove ShortCodes</option><option value="9">Remove Special Character</option>
609
+ <option value="8">CDATA</option>
610
+ </select>
611
+ <i class="dashicons dashicons-editor-expand expandType"></i>
612
+ <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
613
+ </td>
614
+ <td>
615
+ <input type="text" name="limit[]" class="wf_ps"/>
616
+ </td>
617
+ <td>
618
+ <i class="delRow dashicons dashicons-trash"></i>
619
+ </td>
620
+ </tr>
621
+ <tr>
622
+ <td>
623
+ <i class="wf_sortedtable dashicons dashicons-menu"></i>
624
+ </td>
625
+ <td>
626
+ <select name="mattributes[]" required class="wf_mattributes">
627
+ <?php echo $dropDown->googleAttributesDropdown( 'brand' ); ?>
628
+ </select>
629
+ </td>
630
+ <td>
631
+ <input type="text" name="prefix[]" autocomplete="off" class="wf_ps"/>
632
+ </td>
633
+ <td>
634
+ <select name="type[]" class="attr_type wfnoempty">
635
+ <option value="attribute" ><?php echo _e( 'Attribute', 'woo-feed' ); ?></option>
636
+ <option value="pattern" selected><?php echo _e( 'Pattern', 'woo-feed' ); ?></option>
637
+ </select>
638
+ </td>
639
+ <td>
640
+ <select name="attributes[]" style=" display: none;" class="wf_attr wf_attributes">
641
+ <?php echo $product->attributeDropdown(); ?>
642
+ </select>
643
+ <?php
644
+ $url = site_url();
645
+ $WABrand="";
646
+ // Remove all illegal characters from a url
647
+ $url = filter_var($url, FILTER_SANITIZE_URL);
648
+ // Validate url
649
+ if (filter_var($url, FILTER_VALIDATE_URL) !== false) {
650
+ $url=parse_url($url);
651
+ if(array_key_exists('host',$url)){
652
+ $arr = explode('.',$url['host']);
653
+ $WABrand = $arr[count($arr) - 2];
654
+ }
655
+ }
656
+
657
+ ?>
658
+ <input type="text" name="default[]" value="<?php echo $WABrand; ?>" autocomplete="off" class="wf_default wf_attributes"/>
659
+ </td>
660
+ <td>
661
+ <input type="text" name="suffix[]" autocomplete="off" class="wf_ps"/>
662
+ </td>
663
+ <td>
664
+ <select name="output_type[][]" class="outputType wfnoempty">
665
+ <option value="1">Default</option>
666
+ <option value="2">Strip Tags</option>
667
+ <option value="3">UTF-8 Encode</option>
668
+ <option value="4">htmlentities</option>
669
+ <option value="5">Integer</option>
670
+ <option value="6">Price</option>
671
+ <option value="7">Remove Space</option>
672
+ <option value="10">Remove ShortCodes</option>
673
+ <option value="9">Remove Special Character</option>
674
+ <option value="8">CDATA</option>
675
+ </select>
676
+ <i class="dashicons dashicons-editor-expand expandType"></i>
677
+ <i style="display: none;" class="dashicons dashicons-editor-contract contractType"></i>
678
+ </td>
679
+ <td>
680
+ <input type="text" name="limit[]" class="wf_ps"/>
681
+ </td>
682
+ <td>
683
+ <i class="delRow dashicons dashicons-trash"></i>
684
+ </td>
685
+ </tr>
686
+ </tbody>
687
+ <tfoot>
688
+ <tr>
689
+ <td>
690
+ <button type="button" class="button-small button-primary" id="wf_newRow">
691
+ <?php echo _e( 'Add New Row', 'woo-feed' ); ?>
692
+ </button>
693
+ </td>
694
+ <td colspan="8">
695
+
696
+ </td>
697
+ </tr>
698
+ </tfoot>
699
+ </table>
700
+ <table class=" widefat fixed">
701
+ <tr>
702
+ <td align="left" class="">
703
+ <div class="makeFeedResponse"></div>
704
+ <div class="makeFeedComplete"></div>
705
+ </td>
706
+ <td align="right">
707
+ <button type="submit" class="wfbtn">
708
+ <?php echo _e( 'Save & Generate Feed', 'woo-feed' ); ?>
709
+ </button>
710
+ </td>
711
+ </tr>
712
+ </table>
713
+ </div>
714
+ </li>
715
+ <?php include plugin_dir_path(__FILE__) . "../woo-feed-ftp-sftp-template.php"; ?>
716
+ </ul>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
admin/partials/woo-feed-edit-template.php CHANGED
@@ -1,419 +1,373 @@
1
- <?php
2
-
3
- /**
4
- * Common Feed Editing Template
5
- *
6
- * @link https://webappick.com/
7
- * @since 1.0.0
8
- *
9
- * @package Woo_Feed
10
- * @subpackage Woo_Feed/admin/partial
11
- * @author Ohidul Islam <wahid@webappick.com>
12
- */
13
-
14
- $dropDown = new Woo_Feed_Dropdown();
15
- $product = new Woo_Feed_Products();
16
- $product->load_attributes();
17
- $current_category="";
18
- # Condition is for those merchants which support another merchant feed requirements.
19
- if($feedRules['provider']=='adroll'){
20
- $feedRules['provider']='google';
21
- }
22
-
23
- if(!isset($feedRules['ftporsftp'])){
24
- $feedRules['ftporsftp']="ftp";
25
- }
26
-
27
- $AttributesDropdown = $feedRules['provider'] . "AttributesDropdown";
28
- //echo "<pre>";print_r($feedRules);
29
- ?>
30
- <div class="wrap" id="Feed">
31
- <h2><?php echo _e('WooCommerce Product Feed', 'woo-feed'); ?></h2>
32
- <?php echo WPFFWMessage()->infoMessage1(); ?>
33
-
34
- <form action="" name="feed" method="post" id="updatefeed" autocomplete="disabled" >
35
-
36
- <?php wp_nonce_field('wf_edit_feed'); ?>
37
-
38
- <table class=" widefat fixed">
39
- <thead>
40
- <tr>
41
- <td colspan="2"><b><?php echo _e('Content Settings', 'woo-feed'); ?></b></td>
42
- </tr>
43
- </thead>
44
- <tbody>
45
- <tr>
46
- <td width="30%"><b><?php echo _e('Template', 'woo-feed'); ?> <span class="requiredIn">*</span></b></td>
47
- <td>
48
- <select name="provider" id="provider" class="generalInput">
49
- <?php echo $dropDown->merchantsDropdown(esc_attr($feedRules['provider'])); ?>
50
- </select>
51
- </td>
52
- </tr>
53
- <tr>
54
- <td><b><?php echo _e('File Name', 'woo-feed'); ?> <span class="requiredIn">*</span></b></td>
55
- <td><input name="filename"
56
- value="<?php echo isset($feedRules['filename']) ? esc_attr($feedRules['filename']) : ''; ?>"
57
- type="text"
58
- class="generalInput"/></td>
59
- </tr>
60
- <tr>
61
- <td><b><?php echo _e('Feed Type', 'woo-feed'); ?> <span class="requiredIn">*</span></b></td>
62
- <td>
63
- <select name="feedType" id="feedType" class="generalInput">
64
- <option <?php echo ($feedRules['feedType'] == "xml") ? 'selected="selected"' : ''; ?> value="xml">
65
- XML
66
- </option>
67
- <option <?php echo ($feedRules['feedType'] == "csv") ? 'selected="selected"' : ''; ?> value="csv">
68
- CSV
69
- </option>
70
- <option <?php echo ($feedRules['feedType'] == "txt") ? 'selected="selected"' : ''; ?> value="txt">
71
- TXT
72
- </option>
73
- </select>
74
- </td>
75
- </tr>
76
-
77
- <tr class="itemWrapper" <?php echo ($feedRules['feedType'] != "xml") ? 'style="display: none;"' : ''; ?> >
78
- <td><b><?php echo _e('Items Wrapper', 'woo-feed'); ?> <span class="requiredIn">*</span></b></td>
79
- <td><input name="itemsWrapper" type="text"
80
- value="<?php echo ($feedRules['feedType'] == "xml") && isset($feedRules['itemsWrapper']) ? esc_attr($feedRules['itemsWrapper']) : 'products'; ?>"
81
- class="generalInput" required="required"/>
82
- </td>
83
- </tr>
84
- <tr class="itemWrapper" <?php echo ($feedRules['feedType'] != "xml") ? 'style="display: none;"' : ''; ?>>
85
- <td><b><?php echo _e('Single Item Wrapper', 'woo-feed'); ?> <span class="requiredIn">*</span></b></td>
86
- <td><input name="itemWrapper" type="text"
87
- value="<?php echo ($feedRules['feedType'] == "xml") && isset($feedRules['itemWrapper']) ? esc_attr($feedRules['itemWrapper']) : 'product'; ?>"
88
- class="generalInput" required="required"/>
89
- </td>
90
- </tr>
91
- <tr class="itemWrapper" >
92
- <td><b><?php echo _e('Extra Header', 'woo-feed'); ?> </b></td>
93
- <td>
94
- <textarea name="extraHeader" style="width: 100%" placeholder="Insert Extra Header value. Press enter at the end of each line."
95
- rows="3"><?php echo isset($feedRules['extraHeader']) ? $feedRules['extraHeader'] : ''; ?></textarea>
96
- </td>
97
- </tr>
98
- <tr class="wf_csvtxt" <?php echo ($feedRules['feedType'] == "xml") ? 'style="display: none;"' : ''; ?>>
99
- <td><b><?php echo _e('Delimiter', 'woo-feed'); ?> <span class="requiredIn">*</span></b></td>
100
- <td>
101
- <select name="delimiter" id="delimiter" class="generalInput">
102
- <option <?php echo isset($feedRules['delimiter']) && $feedRules['delimiter'] == "," ? 'selected="selected"' : ''; ?>
103
- value=",">Comma
104
- </option>
105
- <option <?php echo isset($feedRules['delimiter']) && $feedRules['delimiter'] == "tab" ? 'selected="selected"' : ''; ?>
106
- value="tab">Tab
107
- </option>
108
- <option <?php echo isset($feedRules['delimiter']) && $feedRules['delimiter'] == ":" ? 'selected="selected"' : ''; ?>
109
- value=":">Colon
110
- </option>
111
- <option <?php echo isset($feedRules['delimiter']) && $feedRules['delimiter'] == " " ? 'selected="selected"' : ''; ?>
112
- value=" ">Space
113
- </option>
114
- <option <?php echo isset($feedRules['delimiter']) && $feedRules['delimiter'] == "|" ? 'selected="selected"' : ''; ?>
115
- value="|">Pipe
116
- </option>
117
- <option <?php echo isset($feedRules['delimiter']) && $feedRules['delimiter'] == ";" ? 'selected="selected"' : ''; ?>
118
- value=";">Semi Colon
119
- </option>
120
- </select>
121
- </td>
122
- </tr>
123
- <tr class="wf_csvtxt" <?php echo ($feedRules['feedType'] == "xml") ? 'style="display: none;"' : ''; ?>>
124
- <td><b><?php echo _e('Enclosure', 'woo-feed'); ?> <span class="requiredIn">*</span></b></td>
125
- <td>
126
- <select name="enclosure" id="enclosure" class="generalInput">
127
- <option <?php echo isset($feedRules['enclosure']) && $feedRules['enclosure'] == " " ? 'selected="selected"' : ''; ?>
128
- value=" ">None
129
- </option>
130
- <option <?php echo isset($feedRules['enclosure']) && $feedRules['enclosure'] == "double" ? 'selected="selected"' : ''; ?>
131
- value='double'>"
132
- </option>
133
- <option <?php echo isset($feedRules['enclosure']) && $feedRules['enclosure'] == "single" ? 'selected="selected"' : ''; ?>
134
- value="single">'
135
- </option>
136
- </select>
137
- </td>
138
- </tr>
139
- </tbody>
140
- </table>
141
- <br/><br/>
142
- <ul class="wf_tabs">
143
- <li>
144
- <input type="radio" name="wf_tabs" id="tab1" checked/>
145
- <label class="wf-tab-name" for="tab1"><?php echo _e('Feed Config', 'woo-feed'); ?></label>
146
-
147
- <div id="wf-tab-content1" class="wf-tab-content">
148
- <table class="table tree widefat fixed sorted_table mtable" width="100%" id="table-1">
149
- <thead>
150
- <tr>
151
- <th></th>
152
- <th><?php echo ucfirst($provider); ?> <?php echo _e('Attributes', 'woo-feed'); ?></th>
153
- <th><?php echo _e('Prefix', 'woo-feed'); ?></th>
154
- <th><?php echo _e('Type', 'woo-feed'); ?></th>
155
- <th><?php echo _e('Value', 'woo-feed'); ?></th>
156
- <th><?php echo _e('Suffix', 'woo-feed'); ?></th>
157
- <th><?php echo _e('Output Type', 'woo-feed'); ?></th>
158
- <th><?php echo _e('Output Limit', 'woo-feed'); ?></th>
159
- <th></th>
160
- </tr>
161
- </thead>
162
- <tbody>
163
- <?php
164
- if (count($feedRules['mattributes']) > 0) {
165
- $mAttributes = $feedRules['mattributes'];
166
- $wooAttributes = $feedRules['attributes'];
167
- $type = $feedRules['type'];
168
- $default = $feedRules['default'];
169
- $prefix = $feedRules['prefix'];
170
- $suffix = $feedRules['suffix'];
171
- $outputType = $feedRules['output_type'];
172
- $limit = $feedRules['limit'];
173
- $counter = 0;
174
-
175
-
176
- foreach ($mAttributes as $merchant => $mAttribute) {
177
-
178
-
179
- ?>
180
- <tr>
181
-
182
- <td>
183
- <i class="wf_sortedtable dashicons dashicons-menu"></i>
184
- </td>
185
- <td>
186
- <?php //echo $mAttribute; ?>
187
- <select name="mattributes[]" class="wf_mattributes">
188
- <?php echo $dropDown->$AttributesDropdown(esc_attr($mAttribute)); ?>
189
- </select>
190
- </td>
191
- <td>
192
- <input type="text" name="prefix[]" value="<?php echo stripslashes($prefix[$merchant]); ?>"
193
- autocomplete="off"
194
- class="wf_ps"/>
195
- </td>
196
- <td>
197
- <select name="type[]" class="attr_type wfnoempty">
198
- <option <?php echo ($type[$merchant] == "attribute") ? 'selected="selected"' : ''; ?>
199
- value="attribute"><?php echo _e('Attribute', 'woo-feed'); ?>
200
- </option>
201
- <option <?php echo ($type[$merchant] == "pattern") ? 'selected="selected"' : ''; ?>
202
- value="pattern"><?php echo _e('Pattern', 'woo-feed'); ?>
203
- </option>
204
- </select>
205
-
206
- </td>
207
- <td>
208
- <select <?php echo ($type[$merchant] == "attribute") ? '' : 'style=" display: none;"'; ?>
209
- name="attributes[]"
210
- class="wf_attr wf_attributes">
211
- <?php echo $product->attributeDropdown(esc_attr($wooAttributes[$merchant])); ?>
212
- </select>
213
-
214
- <?php
215
-
216
- if($feedRules['provider']=='google' && $mAttribute=="current_category") {
217
- $current_category=$default[$merchant];
218
- ?>
219
- <input <?php echo ($type[$merchant] == "pattern") ? '' : 'style=" display: none;"'; ?>
220
- autocomplete="off"
221
- class="wf_default wf_attributes wf_google_taxonomy_input_modal_edit" type="text" name="default[]"
222
- value="<?php echo esc_attr($default[$merchant]); ?>"/>
223
- <?php
224
- }else{
225
- ?>
226
- <input <?php echo ($type[$merchant] == "pattern") ? '' : 'style=" display: none;"'; ?>
227
- autocomplete="off"
228
- class="wf_default wf_attributes " type="text" name="default[]"
229
- value="<?php echo stripslashes($default[$merchant]); ?>"/>
230
- <?php
231
- }
232
- ?>
233
- </td>
234
- <td>
235
- <input type="text" name="suffix[]" value="<?php echo stripslashes($suffix[$merchant]); ?>"
236
- autocomplete="off"
237
- class="wf_ps"/>
238
- </td>
239
-
240
- <td>
241
- <select name="output_type[<?php echo $counter; ?>][]"
242
- class="outputType wfnoempty" <?php echo (count($outputType[$counter]) > 1) ? 'multiple="multiple"' : ''; ?>>
243
- <option <?php echo (in_array('1', $outputType[$counter])) ? 'selected="selected"' : ''; ?>
244
- value="1">Default
245
- </option>
246
- <option <?php echo (in_array('2', $outputType[$counter])) ? 'selected="selected"' : ''; ?>
247
- value="2">Strip Tags
248
- </option>
249
- <option <?php echo (in_array('3', $outputType[$counter])) ? 'selected="selected"' : ''; ?>
250
- value="3">UTF-8 Encode
251
- </option>
252
- <option <?php echo (in_array('4', $outputType[$counter])) ? 'selected="selected"' : ''; ?>
253
- value="4">htmlentities
254
- </option>
255
- <option <?php echo (in_array('5', $outputType[$counter])) ? 'selected="selected"' : ''; ?>
256
- value="5">Integer
257
- </option>
258
- <option <?php echo (in_array('6', $outputType[$counter])) ? 'selected="selected"' : ''; ?>
259
- value="6">Price
260
- </option>
261
- <option <?php echo (in_array('7', $outputType[$counter])) ? 'selected="selected"' : ''; ?>
262
- value="7">Remove Space
263
- </option>
264
- <option <?php echo (in_array('10', $outputType[$counter])) ? 'selected="selected"' : ''; ?>
265
- value="10">Remove ShortCodes
266
- </option>
267
- <option <?php echo (in_array('9', $outputType[$counter])) ? 'selected="selected"' : ''; ?>
268
- value="9">Remove Special Character
269
- </option>
270
- <option <?php echo (in_array('8', $outputType[$counter])) ? 'selected="selected"' : ''; ?>
271
- value="8">CDATA
272
- </option>
273
- </select>
274
- <i class="dashicons dashicons-editor-expand expandType"></i>
275
- <i style="display: none;"
276
- class="dashicons dashicons-editor-contract contractType"></i>
277
- </td>
278
- <td>
279
- <input type="text" name="limit[]" value="<?php echo esc_attr($limit[$merchant]); ?>"
280
- autocomplete="off"
281
- class="wf_ps" readonly style="background: none"/>
282
- </td>
283
- <td>
284
- <i class="delRow dashicons dashicons-trash"></i>
285
- </td>
286
- </tr>
287
-
288
- <?php
289
- $counter++;
290
- }
291
- }
292
- ?>
293
-
294
- </tbody>
295
- <tfoot>
296
- <tr>
297
- <td colspan="3">
298
- <button type="button" class="button-small button-primary"
299
- id="wf_newRow"><?php echo _e('Add New Row', 'woo-feed'); ?>
300
- </button>
301
- </td>
302
- <td colspan="6">
303
-
304
- </td>
305
- </tr>
306
- </tfoot>
307
- </table>
308
- <table class=" widefat fixed">
309
- <tr>
310
- <td align="left" class="">
311
- <div class="makeFeedResponse"></div>
312
- <div class="makeFeedComplete"></div>
313
- </td>
314
- <td align="right">
315
- <button name="<?php echo isset($_GET['action']) ? esc_attr($_GET['action']) : ''; ?>"
316
- type="submit" id="submit"
317
- class="wfbtn updatefeed">
318
- <?php echo _e('Update and Generate Feed', 'woo-feed'); ?>
319
- </button>
320
- </td>
321
- </tr>
322
- </table>
323
- </div>
324
- </li>
325
- <li>
326
- <input type="radio" name="wf_tabs" id="tab3"/>
327
- <label class="wf-tab-name" for="tab3"><?php echo _e('FTP / SFTP', 'woo-feed'); ?></label>
328
-
329
- <div id="wf-tab-content3" class="wf-tab-content">
330
- <table class="table widefat fixed mtable" width="100%">
331
- <tbody>
332
- <tr>
333
- <td><?php echo _e('Enabled', 'woo-feed'); ?></td>
334
- <td>
335
- <select name="ftpenabled" >
336
- <option <?php echo ($feedRules['ftpenabled'] == "0") ? 'selected="selected"' : ''; ?>
337
- value="0"><?php echo _e('Disabled', 'woo-feed'); ?>
338
- </option>
339
- <option <?php echo ($feedRules['ftpenabled'] == "1") ? 'selected="selected"' : ''; ?>
340
- value="1"><?php echo _e('Enabled', 'woo-feed'); ?>
341
- </option>
342
- </select>
343
- </td>
344
- </tr>
345
- <tr>
346
- <td><?php echo _e( 'Server Type', 'woo-feed' ); ?></td>
347
- <td>
348
- <select name="ftporsftp" class="ftporsftp">
349
- <option <?php echo ($feedRules['ftporsftp'] == "ftp") ? 'selected="selected"' : ''; ?> value="ftp"><?php echo _e( 'FTP', 'woo-feed' ); ?></option>
350
- <option <?php echo ($feedRules['ftporsftp'] == "sftp") ? 'selected="selected"' : ''; ?>value="sftp"><?php echo _e( 'SFTP', 'woo-feed' ); ?></option>
351
- </select>
352
- <span class="ssh2_status"></span>
353
- </td>
354
- </tr>
355
- <tr>
356
- <td><?php echo _e('Host Name', 'woo-feed'); ?></td>
357
- <td><input type="text" value="<?php echo esc_attr($feedRules['ftphost']); ?>" name="ftphost"
358
- autocomplete="off"/></td>
359
- </tr>
360
- <tr>
361
- <td><?php echo _e('User Name', 'woo-feed'); ?></td>
362
- <td><input type="text" value="<?php echo esc_attr($feedRules['ftpuser']); ?>" name="ftpuser"
363
- autocomplete="off"/></td>
364
- </tr>
365
- <tr>
366
- <td><?php echo _e('Password', 'woo-feed'); ?></td>
367
- <td><input type="password" value="<?php echo esc_attr($feedRules['ftppassword']); ?>"
368
- name="ftppassword" autocomplete="off"/></td>
369
- </tr>
370
- <tr>
371
- <td><?php echo _e('Port', 'woo-feed'); ?></td>
372
- <td><input type="text" value="<?php echo isset($feedRules['ftpport'])?esc_attr($feedRules['ftpport']):21; ?>"
373
- name="ftpport" autocomplete="off"/></td>
374
- </tr>
375
- <tr>
376
- <td><?php echo _e('Path (Optional)', 'woo-feed'); ?></td>
377
- <td><input type="text" value="<?php echo esc_attr($feedRules['ftppath']); ?>" name="ftppath"
378
- autocomplete="off"/></td>
379
- </tr>
380
- </tbody>
381
- </table>
382
- <table class="widefat fixed">
383
- <tr>
384
- <td align="left" class="">
385
- <div class="makeFeedResponse"></div>
386
- <div class="makeFeedComplete"></div>
387
- </td>
388
- <td align="right">
389
- <button name="<?php echo isset($_GET['action']) ? esc_attr($_GET['action']) : ''; ?>"
390
- type="submit" id="submit" class="wfbtn updatefeed">
391
- <?php echo _e('Update and Generate Feed', 'woo-feed'); ?>
392
- </button>
393
- </td>
394
- </tr>
395
- </table>
396
- </div>
397
- </li>
398
-
399
- </ul>
400
- </form>
401
- <?php //echo $dropDown->googleTaxonomy($current_category); ?>
402
- </div>
403
-
404
- <!--modal inputs for getting Google Taxonomy -->
405
- <div class="container">
406
- <div class="_wf_popup" data-popup="popup-wf_google_taxonomy_modal" id="wf_google_taxonomy_modal_edit">
407
- <div class="_wf_popup-inner">
408
- <form id="wf_google_taxonomy_modal_form_submission_edit" enctype="multipart/form-data" >
409
- <h2>Select Google Taxonomy</h2><span style="color: red" id="google_taxonomy_error_message"></span>
410
- <select name="attributes[]" id="googleTaxonomyIdEdit" class="googleTaxonomyId">
411
- <?php echo $dropDown->googleTaxonomy($current_category); ?>
412
- </select>
413
- <input style="float: right" id="wf_google_taxonomy_modal_submit_button_edit" class="wf_google_taxonomy_modal_submit_button" type="button" value="Submit"/>
414
- <input style="float: right" id="wf_google_taxonomy_modal_cancel_button_edit" class="wf_google_taxonomy_modal_form_button" value="Cancel" type="button"/>
415
- <a style="text-decoration:none;" class="_wf_popup-close" id="wf_google_taxonomy_modal_popup_close" href="#">x</a>
416
- </form>
417
- </div>
418
- </div>
419
  </div>
1
+ <?php
2
+
3
+ /**
4
+ * Common Feed Editing Template
5
+ *
6
+ * @link https://webappick.com/
7
+ * @since 1.0.0
8
+ *
9
+ * @package Woo_Feed
10
+ * @subpackage Woo_Feed/admin/partial
11
+ * @author Ohidul Islam <wahid@webappick.com>
12
+ */
13
+
14
+ $dropDown = new Woo_Feed_Dropdown();
15
+ $product = new Woo_Feed_Products();
16
+ $product->load_attributes();
17
+ $current_category="";
18
+ # Condition is for those merchants which support another merchant feed requirements.
19
+ if($feedRules['provider']=='adroll'){
20
+ $feedRules['provider']='google';
21
+ }
22
+
23
+ if(!isset($feedRules['ftporsftp'])){
24
+ $feedRules['ftporsftp']="ftp";
25
+ }
26
+
27
+ $AttributesDropdown = $feedRules['provider'] . "AttributesDropdown";
28
+ //echo "<pre>";print_r($feedRules);
29
+ ?>
30
+ <div class="wrap" id="Feed">
31
+ <h2><?php echo _e('WooCommerce Product Feed', 'woo-feed'); ?></h2>
32
+ <?php echo WPFFWMessage()->infoMessage1(); ?>
33
+
34
+ <form action="" name="feed" method="post" id="updatefeed" autocomplete="disabled" >
35
+
36
+ <?php wp_nonce_field('wf_edit_feed'); ?>
37
+
38
+ <table class=" widefat fixed">
39
+ <thead>
40
+ <tr>
41
+ <td colspan="2"><b><?php echo _e('Content Settings', 'woo-feed'); ?></b></td>
42
+ </tr>
43
+ </thead>
44
+ <tbody>
45
+ <tr>
46
+ <td width="30%"><b><?php echo _e('Template', 'woo-feed'); ?> <span class="requiredIn">*</span></b></td>
47
+ <td>
48
+ <select name="provider" id="provider" class="generalInput">
49
+ <?php echo $dropDown->merchantsDropdown(esc_attr($feedRules['provider'])); ?>
50
+ </select>
51
+ </td>
52
+ </tr>
53
+ <tr>
54
+ <td><b><?php echo _e('File Name', 'woo-feed'); ?> <span class="requiredIn">*</span></b></td>
55
+ <td><input name="filename"
56
+ value="<?php echo isset($feedRules['filename']) ? esc_attr($feedRules['filename']) : ''; ?>"
57
+ type="text"
58
+ class="generalInput"/></td>
59
+ </tr>
60
+ <tr>
61
+ <td><b><?php echo _e('Feed Type', 'woo-feed'); ?> <span class="requiredIn">*</span></b></td>
62
+ <td>
63
+ <select name="feedType" id="feedType" class="generalInput">
64
+ <option <?php echo ($feedRules['feedType'] == "xml") ? 'selected="selected"' : ''; ?> value="xml">
65
+ XML
66
+ </option>
67
+ <option <?php echo ($feedRules['feedType'] == "csv") ? 'selected="selected"' : ''; ?> value="csv">
68
+ CSV
69
+ </option>
70
+ <option <?php echo ($feedRules['feedType'] == "txt") ? 'selected="selected"' : ''; ?> value="txt">
71
+ TXT
72
+ </option>
73
+ </select>
74
+ </td>
75
+ </tr>
76
+
77
+ <tr class="itemWrapper" <?php echo ($feedRules['feedType'] != "xml") ? 'style="display: none;"' : ''; ?> >
78
+ <td><b><?php echo _e('Items Wrapper', 'woo-feed'); ?> <span class="requiredIn">*</span></b></td>
79
+ <td><input name="itemsWrapper" type="text"
80
+ value="<?php echo ($feedRules['feedType'] == "xml") && isset($feedRules['itemsWrapper']) ? esc_attr($feedRules['itemsWrapper']) : 'products'; ?>"
81
+ class="generalInput" required="required"/>
82
+ </td>
83
+ </tr>
84
+ <tr class="itemWrapper" <?php echo ($feedRules['feedType'] != "xml") ? 'style="display: none;"' : ''; ?>>
85
+ <td><b><?php echo _e('Single Item Wrapper', 'woo-feed'); ?> <span class="requiredIn">*</span></b></td>
86
+ <td><input name="itemWrapper" type="text"
87
+ value="<?php echo ($feedRules['feedType'] == "xml") && isset($feedRules['itemWrapper']) ? esc_attr($feedRules['itemWrapper']) : 'product'; ?>"
88
+ class="generalInput" required="required"/>
89
+ </td>
90
+ </tr>
91
+ <tr class="itemWrapper" >
92
+ <td><b><?php echo _e('Extra Header', 'woo-feed'); ?> </b></td>
93
+ <td>
94
+ <textarea name="extraHeader" style="width: 100%" placeholder="Insert Extra Header value. Press enter at the end of each line."
95
+ rows="3"><?php echo isset($feedRules['extraHeader']) ? $feedRules['extraHeader'] : ''; ?></textarea>
96
+ </td>
97
+ </tr>
98
+ <tr class="wf_csvtxt" <?php echo ($feedRules['feedType'] == "xml") ? 'style="display: none;"' : ''; ?>>
99
+ <td><b><?php echo _e('Delimiter', 'woo-feed'); ?> <span class="requiredIn">*</span></b></td>
100
+ <td>
101
+ <select name="delimiter" id="delimiter" class="generalInput">
102
+ <option <?php echo isset($feedRules['delimiter']) && $feedRules['delimiter'] == "," ? 'selected="selected"' : ''; ?>
103
+ value=",">Comma
104
+ </option>
105
+ <option <?php echo isset($feedRules['delimiter']) && $feedRules['delimiter'] == "tab" ? 'selected="selected"' : ''; ?>
106
+ value="tab">Tab
107
+ </option>
108
+ <option <?php echo isset($feedRules['delimiter']) && $feedRules['delimiter'] == ":" ? 'selected="selected"' : ''; ?>
109
+ value=":">Colon
110
+ </option>
111
+ <option <?php echo isset($feedRules['delimiter']) && $feedRules['delimiter'] == " " ? 'selected="selected"' : ''; ?>
112
+ value=" ">Space
113
+ </option>
114
+ <option <?php echo isset($feedRules['delimiter']) && $feedRules['delimiter'] == "|" ? 'selected="selected"' : ''; ?>
115
+ value="|">Pipe
116
+ </option>
117
+ <option <?php echo isset($feedRules['delimiter']) && $feedRules['delimiter'] == ";" ? 'selected="selected"' : ''; ?>
118
+ value=";">Semi Colon
119
+ </option>
120
+ </select>
121
+ </td>
122
+ </tr>
123
+ <tr class="wf_csvtxt" <?php echo ($feedRules['feedType'] == "xml") ? 'style="display: none;"' : ''; ?>>
124
+ <td><b><?php echo _e('Enclosure', 'woo-feed'); ?> <span class="requiredIn">*</span></b></td>
125
+ <td>
126
+ <select name="enclosure" id="enclosure" class="generalInput">
127
+ <option <?php echo isset($feedRules['enclosure']) && $feedRules['enclosure'] == " " ? 'selected="selected"' : ''; ?>
128
+ value=" ">None
129
+ </option>
130
+ <option <?php echo isset($feedRules['enclosure']) && $feedRules['enclosure'] == "double" ? 'selected="selected"' : ''; ?>
131
+ value='double'>"
132
+ </option>
133
+ <option <?php echo isset($feedRules['enclosure']) && $feedRules['enclosure'] == "single" ? 'selected="selected"' : ''; ?>
134
+ value="single">'
135
+ </option>
136
+ </select>
137
+ </td>
138
+ </tr>
139
+ </tbody>
140
+ </table>
141
+ <br/><br/>
142
+ <ul class="wf_tabs">
143
+ <li>
144
+ <input type="radio" name="wf_tabs" id="tab1" checked/>
145
+ <label class="wf-tab-name" for="tab1"><?php echo _e('Feed Config', 'woo-feed'); ?></label>
146
+
147
+ <div id="wf-tab-content1" class="wf-tab-content">
148
+ <table class="table tree widefat fixed sorted_table mtable" width="100%" id="table-1">
149
+ <thead>
150
+ <tr>
151
+ <th></th>
152
+ <th><?php echo ucfirst($provider); ?> <?php echo _e('Attributes', 'woo-feed'); ?></th>
153
+ <th><?php echo _e('Prefix', 'woo-feed'); ?></th>
154
+ <th><?php echo _e('Type', 'woo-feed'); ?></th>
155
+ <th><?php echo _e('Value', 'woo-feed'); ?></th>
156
+ <th><?php echo _e('Suffix', 'woo-feed'); ?></th>
157
+ <th><?php echo _e('Output Type', 'woo-feed'); ?></th>
158
+ <th><?php echo _e('Output Limit', 'woo-feed'); ?></th>
159
+ <th></th>
160
+ </tr>
161
+ </thead>
162
+ <tbody>
163
+ <?php
164
+ if (count($feedRules['mattributes']) > 0) {
165
+ $mAttributes = $feedRules['mattributes'];
166
+ $wooAttributes = $feedRules['attributes'];
167
+ $type = $feedRules['type'];
168
+ $default = $feedRules['default'];
169
+ $prefix = $feedRules['prefix'];
170
+ $suffix = $feedRules['suffix'];
171
+ $outputType = $feedRules['output_type'];
172
+ $limit = $feedRules['limit'];
173
+ $counter = 0;
174
+ foreach ($mAttributes as $merchant => $mAttribute) {
175
+ ?>
176
+ <tr>
177
+
178
+ <td>
179
+ <i class="wf_sortedtable dashicons dashicons-menu"></i>
180
+ </td>
181
+ <td>
182
+ <select name="mattributes[]" class="wf_mattributes">
183
+ <?php echo $dropDown->$AttributesDropdown(esc_attr($mAttribute)); ?>
184
+ </select>
185
+ </td>
186
+ <td>
187
+ <input type="text" name="prefix[]" value="<?php echo stripslashes($prefix[$merchant]); ?>" autocomplete="off" class="wf_ps"/>
188
+ </td>
189
+ <td>
190
+ <select name="type[]" class="attr_type wfnoempty">
191
+ <option <?php echo ($type[$merchant] == "attribute") ? 'selected="selected"' : ''; ?>value="attribute"><?php echo _e('Attribute', 'woo-feed'); ?></option>
192
+ <option <?php echo ($type[$merchant] == "pattern") ? 'selected="selected"' : ''; ?>value="pattern"><?php echo _e('Pattern', 'woo-feed'); ?></option>
193
+ </select>
194
+ </td>
195
+ <td>
196
+ <select <?php echo ($type[$merchant] == "attribute") ? '' : 'style=" display: none;"'; ?> name="attributes[]" class="wf_attr wf_attributes">
197
+ <?php echo $product->attributeDropdown(esc_attr($wooAttributes[$merchant])); ?>
198
+ </select>
199
+ <?php if( in_array( $feedRules['provider'], array( 'google', 'facebook', 'pinterest') ) && $mAttribute=="current_category") { ?>
200
+ <span class="wf_default wf_attributes">
201
+ <select name="default[]" id="googleTaxonomyId">
202
+ <?php echo $dropDown->googleTaxonomy( esc_attr($default[$merchant]) ); ?>
203
+ </select>
204
+ </span>
205
+ <span style="font-size:x-small;"><a style="color: red" href="http://webappick.helpscoutdocs.com/article/19-how-to-map-store-category-with-merchant-category" target="_blank">Learn More..</a></span>
206
+ <?php }else{ ?>
207
+ <input <?php echo ($type[$merchant] == "pattern") ? '' : 'style=" display: none;"'; ?>autocomplete="off" class="wf_default wf_attributes " type="text" name="default[]" value="<?php echo esc_attr( $default[$merchant] ); ?>"/>
208
+ <?php } ?>
209
+ </td>
210
+ <td>
211
+ <input type="text" name="suffix[]" value="<?php echo stripslashes($suffix[$merchant]); ?>" autocomplete="off" class="wf_ps"/>
212
+ </td>
213
+ <td>
214
+ <select name="output_type[<?php echo $counter; ?>][]" class="outputType wfnoempty" <?php echo (count($outputType[$counter]) > 1) ? 'multiple="multiple"' : ''; ?>>
215
+ <option <?php echo (in_array('1', $outputType[$counter])) ? 'selected="selected"' : ''; ?>
216
+ value="1">Default
217
+ </option>
218
+ <option <?php echo (in_array('2', $outputType[$counter])) ? 'selected="selected"' : ''; ?>
219
+ value="2">Strip Tags
220
+ </option>
221
+ <option <?php echo (in_array('3', $outputType[$counter])) ? 'selected="selected"' : ''; ?>
222
+ value="3">UTF-8 Encode
223
+ </option>
224
+ <option <?php echo (in_array('4', $outputType[$counter])) ? 'selected="selected"' : ''; ?>
225
+ value="4">htmlentities
226
+ </option>
227
+ <option <?php echo (in_array('5', $outputType[$counter])) ? 'selected="selected"' : ''; ?>
228
+ value="5">Integer
229
+ </option>
230
+ <option <?php echo (in_array('6', $outputType[$counter])) ? 'selected="selected"' : ''; ?>
231
+ value="6">Price
232
+ </option>
233
+ <option <?php echo (in_array('7', $outputType[$counter])) ? 'selected="selected"' : ''; ?>
234
+ value="7">Remove Space
235
+ </option>
236
+ <option <?php echo (in_array('10', $outputType[$counter])) ? 'selected="selected"' : ''; ?>
237
+ value="10">Remove ShortCodes
238
+ </option>
239
+ <option <?php echo (in_array('9', $outputType[$counter])) ? 'selected="selected"' : ''; ?>
240
+ value="9">Remove Special Character
241
+ </option>
242
+ <option <?php echo (in_array('8', $outputType[$counter])) ? 'selected="selected"' : ''; ?>
243
+ value="8">CDATA
244
+ </option>
245
+ </select>
246
+ <i class="dashicons dashicons-editor-expand expandType"></i>
247
+ <i style="display: none;"
248
+ class="dashicons dashicons-editor-contract contractType"></i>
249
+ </td>
250
+ <td>
251
+ <input type="text" name="limit[]" value="<?php echo esc_attr($limit[$merchant]); ?>"
252
+ autocomplete="off"
253
+ class="wf_ps" readonly style="background: none"/>
254
+ </td>
255
+ <td>
256
+ <i class="delRow dashicons dashicons-trash"></i>
257
+ </td>
258
+ </tr>
259
+
260
+ <?php
261
+ $counter++;
262
+ }
263
+ }
264
+ ?>
265
+
266
+ </tbody>
267
+ <tfoot>
268
+ <tr>
269
+ <td colspan="3">
270
+ <button type="button" class="button-small button-primary"
271
+ id="wf_newRow"><?php echo _e('Add New Row', 'woo-feed'); ?>
272
+ </button>
273
+ </td>
274
+ <td colspan="6">
275
+
276
+ </td>
277
+ </tr>
278
+ </tfoot>
279
+ </table>
280
+ <table class=" widefat fixed">
281
+ <tr>
282
+ <td align="left" class="">
283
+ <div class="makeFeedResponse"></div>
284
+ <div class="makeFeedComplete"></div>
285
+ </td>
286
+ <td align="right">
287
+ <button name="<?php echo isset($_GET['action']) ? esc_attr($_GET['action']) : ''; ?>"
288
+ type="submit" id="submit"
289
+ class="wfbtn updatefeed">
290
+ <?php echo _e('Update and Generate Feed', 'woo-feed'); ?>
291
+ </button>
292
+ </td>
293
+ </tr>
294
+ </table>
295
+ </div>
296
+ </li>
297
+ <li>
298
+ <input type="radio" name="wf_tabs" id="tab3"/>
299
+ <label class="wf-tab-name" for="tab3"><?php echo _e('FTP / SFTP', 'woo-feed'); ?></label>
300
+
301
+ <div id="wf-tab-content3" class="wf-tab-content">
302
+ <table class="table widefat fixed mtable" width="100%">
303
+ <tbody>
304
+ <tr>
305
+ <td><?php echo _e('Enabled', 'woo-feed'); ?></td>
306
+ <td>
307
+ <select name="ftpenabled" >
308
+ <option <?php echo ($feedRules['ftpenabled'] == "0") ? 'selected="selected"' : ''; ?>
309
+ value="0"><?php echo _e('Disabled', 'woo-feed'); ?>
310
+ </option>
311
+ <option <?php echo ($feedRules['ftpenabled'] == "1") ? 'selected="selected"' : ''; ?>
312
+ value="1"><?php echo _e('Enabled', 'woo-feed'); ?>
313
+ </option>
314
+ </select>
315
+ </td>
316
+ </tr>
317
+ <tr>
318
+ <td><?php echo _e( 'Server Type', 'woo-feed' ); ?></td>
319
+ <td>
320
+ <select name="ftporsftp" class="ftporsftp">
321
+ <option <?php echo ($feedRules['ftporsftp'] == "ftp") ? 'selected="selected"' : ''; ?> value="ftp"><?php echo _e( 'FTP', 'woo-feed' ); ?></option>
322
+ <option <?php echo ($feedRules['ftporsftp'] == "sftp") ? 'selected="selected"' : ''; ?>value="sftp"><?php echo _e( 'SFTP', 'woo-feed' ); ?></option>
323
+ </select>
324
+ <span class="ssh2_status"></span>
325
+ </td>
326
+ </tr>
327
+ <tr>
328
+ <td><?php echo _e('Host Name', 'woo-feed'); ?></td>
329
+ <td><input type="text" value="<?php echo esc_attr($feedRules['ftphost']); ?>" name="ftphost"
330
+ autocomplete="off"/></td>
331
+ </tr>
332
+ <tr>
333
+ <td><?php echo _e('User Name', 'woo-feed'); ?></td>
334
+ <td><input type="text" value="<?php echo esc_attr($feedRules['ftpuser']); ?>" name="ftpuser"
335
+ autocomplete="off"/></td>
336
+ </tr>
337
+ <tr>
338
+ <td><?php echo _e('Password', 'woo-feed'); ?></td>
339
+ <td><input type="password" value="<?php echo esc_attr($feedRules['ftppassword']); ?>"
340
+ name="ftppassword" autocomplete="off"/></td>
341
+ </tr>
342
+ <tr>
343
+ <td><?php echo _e('Port', 'woo-feed'); ?></td>
344
+ <td><input type="text" value="<?php echo isset($feedRules['ftpport'])?esc_attr($feedRules['ftpport']):21; ?>"
345
+ name="ftpport" autocomplete="off"/></td>
346
+ </tr>
347
+ <tr>
348
+ <td><?php echo _e('Path (Optional)', 'woo-feed'); ?></td>
349
+ <td><input type="text" value="<?php echo esc_attr($feedRules['ftppath']); ?>" name="ftppath"
350
+ autocomplete="off"/></td>
351
+ </tr>
352
+ </tbody>
353
+ </table>
354
+ <table class="widefat fixed">
355
+ <tr>
356
+ <td align="left" class="">
357
+ <div class="makeFeedResponse"></div>
358
+ <div class="makeFeedComplete"></div>
359
+ </td>
360
+ <td align="right">
361
+ <button name="<?php echo isset($_GET['action']) ? esc_attr($_GET['action']) : ''; ?>"
362
+ type="submit" id="submit" class="wfbtn updatefeed">
363
+ <?php echo _e('Update and Generate Feed', 'woo-feed'); ?>
364
+ </button>
365
+ </td>
366
+ </tr>
367
+ </table>
368
+ </div>
369
+ </li>
370
+
371
+ </ul>
372
+ </form>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
373
  </div>
includes/classes/class-woo-feed-dropdown.php CHANGED
@@ -1,973 +1,973 @@
1
- <?php
2
-
3
- /**
4
- * The file that defines the merchants attributes dropdown
5
- *
6
- * A class definition that includes attributes dropdown and functions used across the admin area.
7
- *
8
- * @link https://webappick.com/
9
- * @since 1.0.0
10
- *
11
- * @package Woo_Feed
12
- * @subpackage Woo_Feed/includes
13
- * @author Ohidul Islam <wahid@webappick.com>
14
- */
15
-
16
- class Woo_Feed_Dropdown
17
- {
18
-
19
- /**
20
- * Dropdown of Merchant List
21
- *
22
- * @param string $selected
23
- * @return string
24
- */
25
- public function merchantsDropdown($selected = "")
26
- {
27
- $attributes = new Woo_Feed_Default_Attributes();
28
- $str = "<option></option>";
29
- foreach ($attributes->merchants() as $key => $value) {
30
- if (substr($key, 0, 2) == "--") {
31
- $str .= "<optgroup label='$value'>";
32
- } elseif (substr($key, 0, 2) == "---") {
33
- $str .= "</optgroup>";
34
- } else {
35
- $sltd = "";
36
- if ($selected == $key)
37
- $sltd = 'selected="selected"';
38
- $str .= "<option $sltd value='$key'>" . $value . "</option>";
39
- }
40
-
41
- }
42
- return $str;
43
- }
44
-
45
- /** Read txt file which contains google taxonomy list
46
- * @return string
47
- */
48
-
49
- public function googleTaxonomy($selected=""){
50
- # Get All Google Taxonomies
51
- $fileName = WP_PLUGIN_DIR."/webappick-product-feed-for-woocommerce/admin/partials/templates/google_taxonomy.txt";
52
- $customeTaxonomyFile = fopen($fileName, "r");
53
- if($customeTaxonomyFile){
54
- $count = 0;
55
- while (($line = fgets($customeTaxonomyFile)) !== false) {
56
- $customeTaxonomoies[$count++]= explode("-",$line);
57
- }
58
- }
59
-
60
- $str="";
61
- if (count($customeTaxonomoies)) {
62
- $str .= "<option></option>";
63
- foreach ($customeTaxonomoies as $key => $value) {
64
- $optionValue=!empty($value[1])?trim($value[1]):"";
65
-
66
- $setSelected="";
67
- if($selected==$optionValue){
68
- $setSelected='selected="selected"';
69
- }
70
-
71
- $str.= "<option value='$optionValue' $setSelected >" . $optionValue . "</option>";
72
- }
73
- }
74
- return $str;
75
- }
76
-
77
-
78
- public function amazon_clothingAttributesDropdown($selected = "")
79
- {
80
- $attributes = new Woo_Feed_Default_Attributes();
81
- $str = "<option></option>";
82
- foreach ($attributes->amazon_clothingAttributes() as $key => $value) {
83
- if (substr($key, 0, 2) == "--") {
84
- $str .= "<optgroup label='$value'>";
85
- } elseif (substr($key, 0, 2) == "---") {
86
- $str .= "</optgroup>";
87
- } else {
88
- $sltd = "";
89
- if ($selected == $key)
90
- $sltd = 'selected="selected"';
91
- $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
92
- }
93
-
94
- }
95
- return $str;
96
- }
97
-
98
- public function amazon_jewelryAttributesDropdown($selected = "")
99
- {
100
- $attributes = new Woo_Feed_Default_Attributes();
101
- $str = "<option></option>";
102
- foreach ($attributes->amazon_jewelryAttributes() as $key => $value) {
103
- if (substr($key, 0, 2) == "--") {
104
- $str .= "<optgroup label='$value'>";
105
- } elseif (substr($key, 0, 2) == "---") {
106
- $str .= "</optgroup>";
107
- } else {
108
- $sltd = "";
109
- if ($selected == $key)
110
- $sltd = 'selected="selected"';
111
- $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
112
- }
113
-
114
- }
115
- return $str;
116
- }
117
-
118
- public function amazon_jewelry_frAttributesDropdown($selected = "")
119
- {
120
- $attributes = new Woo_Feed_Default_Attributes();
121
- $str = "<option></option>";
122
- foreach ($attributes->amazon_jewelry_frAttributes() as $key => $value) {
123
- if (substr($key, 0, 2) == "--") {
124
- $str .= "<optgroup label='$value'>";
125
- } elseif (substr($key, 0, 2) == "---") {
126
- $str .= "</optgroup>";
127
- } else {
128
- $sltd = "";
129
- if ($selected == $key)
130
- $sltd = 'selected="selected"';
131
- $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
132
- }
133
-
134
- }
135
- return $str;
136
- }
137
-
138
- public function amazon_lightingAttributesDropdown($selected = "")
139
- {
140
- $attributes = new Woo_Feed_Default_Attributes();
141
- $str = "<option></option>";
142
- foreach ($attributes->amazon_lightingAttributes() as $key => $value) {
143
- if (substr($key, 0, 2) == "--") {
144
- $str .= "<optgroup label='$value'>";
145
- } elseif (substr($key, 0, 2) == "---") {
146
- $str .= "</optgroup>";
147
- } else {
148
- $sltd = "";
149
- if ($selected == $key)
150
- $sltd = 'selected="selected"';
151
- $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
152
- }
153
-
154
- }
155
- return $str;
156
- }
157
- public function amazon_wirelessAttributesDropdown($selected = "")
158
- {
159
- $attributes = new Woo_Feed_Default_Attributes();
160
- $str = "<option></option>";
161
- foreach ($attributes->amazon_wirelessAttributes() as $key => $value) {
162
- if (substr($key, 0, 2) == "--") {
163
- $str .= "<optgroup label='$value'>";
164
- } elseif (substr($key, 0, 2) == "---") {
165
- $str .= "</optgroup>";
166
- } else {
167
- $sltd = "";
168
- if ($selected == $key)
169
- $sltd = 'selected="selected"';
170
- $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
171
- }
172
-
173
- }
174
- return $str;
175
- }
176
- public function amazon_autoaccessoryAttributesDropdown($selected = "")
177
- {
178
- $attributes = new Woo_Feed_Default_Attributes();
179
- $str = "<option></option>";
180
- foreach ($attributes->amazon_autoaccessoryAttributes() as $key => $value) {
181
- if (substr($key, 0, 2) == "--") {
182
- $str .= "<optgroup label='$value'>";
183
- } elseif (substr($key, 0, 2) == "---") {
184
- $str .= "</optgroup>";
185
- } else {
186
- $sltd = "";
187
- if ($selected == $key)
188
- $sltd = 'selected="selected"';
189
- $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
190
- }
191
-
192
- }
193
- return $str;
194
- }
195
- public function amazon_tiresandwheelsAttributesDropdown($selected = "")
196
- {
197
- $attributes = new Woo_Feed_Default_Attributes();
198
- $str = "<option></option>";
199
- foreach ($attributes->amazon_tiresandwheelsAttributes() as $key => $value) {
200
- if (substr($key, 0, 2) == "--") {
201
- $str .= "<optgroup label='$value'>";
202
- } elseif (substr($key, 0, 2) == "---") {
203
- $str .= "</optgroup>";
204
- } else {
205
- $sltd = "";
206
- if ($selected == $key)
207
- $sltd = 'selected="selected"';
208
- $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
209
- }
210
-
211
- }
212
- return $str;
213
- }
214
- public function amazon_homeAttributesDropdown($selected = "")
215
- {
216
- $attributes = new Woo_Feed_Default_Attributes();
217
- $str = "<option></option>";
218
- foreach ($attributes->amazon_homeAttributes() as $key => $value) {
219
- if (substr($key, 0, 2) == "--") {
220
- $str .= "<optgroup label='$value'>";
221
- } elseif (substr($key, 0, 2) == "---") {
222
- $str .= "</optgroup>";
223
- } else {
224
- $sltd = "";
225
- if ($selected == $key)
226
- $sltd = 'selected="selected"';
227
- $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
228
- }
229
-
230
- }
231
- return $str;
232
- }
233
- public function amazon_healthAttributesDropdown($selected = "")
234
- {
235
- $attributes = new Woo_Feed_Default_Attributes();
236
- $str = "<option></option>";
237
- foreach ($attributes->amazon_healthAttributes() as $key => $value) {
238
- if (substr($key, 0, 2) == "--") {
239
- $str .= "<optgroup label='$value'>";
240
- } elseif (substr($key, 0, 2) == "---") {
241
- $str .= "</optgroup>";
242
- } else {
243
- $sltd = "";
244
- if ($selected == $key)
245
- $sltd = 'selected="selected"';
246
- $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
247
- }
248
-
249
- }
250
- return $str;
251
- }
252
- public function amazon_babyAttributesDropdown($selected = "")
253
- {
254
- $attributes = new Woo_Feed_Default_Attributes();
255
- $str = "<option></option>";
256
- foreach ($attributes->amazon_babyAttributes() as $key => $value) {
257
- if (substr($key, 0, 2) == "--") {
258
- $str .= "<optgroup label='$value'>";
259
- } elseif (substr($key, 0, 2) == "---") {
260
- $str .= "</optgroup>";
261
- } else {
262
- $sltd = "";
263
- if ($selected == $key)
264
- $sltd = 'selected="selected"';
265
- $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
266
- }
267
-
268
- }
269
- return $str;
270
- }
271
- public function amazon_BookLoaderAttributesDropdown($selected = "")
272
- {
273
- $attributes = new Woo_Feed_Default_Attributes();
274
- $str = "<option></option>";
275
- foreach ($attributes->amazon_BookLoaderAttributes() as $key => $value) {
276
- if (substr($key, 0, 2) == "--") {
277
- $str .= "<optgroup label='$value'>";
278
- } elseif (substr($key, 0, 2) == "---") {
279
- $str .= "</optgroup>";
280
- } else {
281
- $sltd = "";
282
- if ($selected == $key)
283
- $sltd = 'selected="selected"';
284
- $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
285
- }
286
-
287
- }
288
- return $str;
289
- }
290
- public function amazon_CameraAndPhotoAttributesDropdown($selected = "")
291
- {
292
- $attributes = new Woo_Feed_Default_Attributes();
293
- $str = "<option></option>";
294
- foreach ($attributes->amazon_CameraAndPhotoAttributes() as $key => $value) {
295
- if (substr($key, 0, 2) == "--") {
296
- $str .= "<optgroup label='$value'>";
297
- } elseif (substr($key, 0, 2) == "---") {
298
- $str .= "</optgroup>";
299
- } else {
300
- $sltd = "";
301
- if ($selected == $key)
302
- $sltd = 'selected="selected"';
303
- $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
304
- }
305
-
306
- }
307
- return $str;
308
- }
309
- public function amazon_foodandbeveragesAttributesDropdown($selected = "")
310
- {
311
- $attributes = new Woo_Feed_Default_Attributes();
312
- $str = "<option></option>";
313
- foreach ($attributes->amazon_foodandbeveragesAttributes() as $key => $value) {
314
- if (substr($key, 0, 2) == "--") {
315
- $str .= "<optgroup label='$value'>";
316
- } elseif (substr($key, 0, 2) == "---") {
317
- $str .= "</optgroup>";
318
- } else {
319
- $sltd = "";
320
- if ($selected == $key)
321
- $sltd = 'selected="selected"';
322
- $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
323
- }
324
-
325
- }
326
- return $str;
327
- }
328
- public function amazon_computersAttributesDropdown($selected = "")
329
- {
330
- $attributes = new Woo_Feed_Default_Attributes();
331
- $str = "<option></option>";
332
- foreach ($attributes->amazon_computersAttributes() as $key => $value) {
333
- if (substr($key, 0, 2) == "--") {
334
- $str .= "<optgroup label='$value'>";
335
- } elseif (substr($key, 0, 2) == "---") {
336
- $str .= "</optgroup>";
337
- } else {
338
- $sltd = "";
339
- if ($selected == $key)
340
- $sltd = 'selected="selected"';
341
- $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
342
- }
343
-
344
- }
345
- return $str;
346
- }
347
- public function amazon_ConsumerElectronicsAttributesDropdown($selected = "")
348
- {
349
- $attributes = new Woo_Feed_Default_Attributes();
350
- $str = "<option></option>";
351
- foreach ($attributes->amazon_ConsumerElectronicsAttributes() as $key => $value) {
352
- if (substr($key, 0, 2) == "--") {
353
- $str .= "<optgroup label='$value'>";
354
- } elseif (substr($key, 0, 2) == "---") {
355
- $str .= "</optgroup>";
356
- } else {
357
- $sltd = "";
358
- if ($selected == $key)
359
- $sltd = 'selected="selected"';
360
- $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
361
- }
362
-
363
- }
364
- return $str;
365
- }
366
- public function amazon_entertainmentcollectiblesAttributesDropdown($selected = "")
367
- {
368
- $attributes = new Woo_Feed_Default_Attributes();
369
- $str = "<option></option>";
370
- foreach ($attributes->amazon_entertainmentcollectiblesAttributes() as $key => $value) {
371
- if (substr($key, 0, 2) == "--") {
372
- $str .= "<optgroup label='$value'>";
373
- } elseif (substr($key, 0, 2) == "---") {
374
- $str .= "</optgroup>";
375
- } else {
376
- $sltd = "";
377
- if ($selected == $key)
378
- $sltd = 'selected="selected"';
379
- $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
380
- }
381
-
382
- }
383
- return $str;
384
- }
385
- public function amazon_homeimprovementAttributesDropdown($selected = "")
386
- {
387
- $attributes = new Woo_Feed_Default_Attributes();
388
- $str = "<option></option>";
389
- foreach ($attributes->amazon_homeimprovementAttributes() as $key => $value) {
390
- if (substr($key, 0, 2) == "--") {
391
- $str .= "<optgroup label='$value'>";
392
- } elseif (substr($key, 0, 2) == "---") {
393
- $str .= "</optgroup>";
394
- } else {
395
- $sltd = "";
396
- if ($selected == $key)
397
- $sltd = 'selected="selected"';
398
- $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
399
- }
400
-
401
- }
402
- return $str;
403
- }
404
- public function amazon_officeAttributesDropdown($selected = "")
405
- {
406
- $attributes = new Woo_Feed_Default_Attributes();
407
- $str = "<option></option>";
408
- foreach ($attributes->amazon_officeAttributes() as $key => $value) {
409
- if (substr($key, 0, 2) == "--") {
410
- $str .= "<optgroup label='$value'>";
411
- } elseif (substr($key, 0, 2) == "---") {
412
- $str .= "</optgroup>";
413
- } else {
414
- $sltd = "";
415
- if ($selected == $key)
416
- $sltd = 'selected="selected"';
417
- $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
418
- }
419
-
420
- }
421
- return $str;
422
- }
423
- public function amazon_petsuppliesAttributesDropdown($selected = "")
424
- {
425
- $attributes = new Woo_Feed_Default_Attributes();
426
- $str = "<option></option>";
427
- foreach ($attributes->amazon_petsuppliesAttributes() as $key => $value) {
428
- if (substr($key, 0, 2) == "--") {
429
- $str .= "<optgroup label='$value'>";
430
- } elseif (substr($key, 0, 2) == "---") {
431
- $str .= "</optgroup>";
432
- } else {
433
- $sltd = "";
434
- if ($selected == $key)
435
- $sltd = 'selected="selected"';
436
- $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
437
- }
438
-
439
- }
440
- return $str;
441
- }
442
-
443
- public function amazon_sportsmemorabiliaAttributesDropdown($selected = "")
444
- {
445
- $attributes = new Woo_Feed_Default_Attributes();
446
- $str = "<option></option>";
447
- foreach ($attributes->amazon_sportsmemorabiliaAttributes() as $key => $value) {
448
- if (substr($key, 0, 2) == "--") {
449
- $str .= "<optgroup label='$value'>";
450
- } elseif (substr($key, 0, 2) == "---") {
451
- $str .= "</optgroup>";
452
- } else {
453
- $sltd = "";
454
- if ($selected == $key)
455
- $sltd = 'selected="selected"';
456
- $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
457
- }
458
-
459
- }
460
- return $str;
461
- }
462
- public function amazon_shoesAttributesDropdown($selected = "")
463
- {
464
- $attributes = new Woo_Feed_Default_Attributes();
465
- $str = "<option></option>";
466
- foreach ($attributes->amazon_shoesAttributes() as $key => $value) {
467
- if (substr($key, 0, 2) == "--") {
468
- $str .= "<optgroup label='$value'>";
469
- } elseif (substr($key, 0, 2) == "---") {
470
- $str .= "</optgroup>";
471
- } else {
472
- $sltd = "";
473
- if ($selected == $key)
474
- $sltd = 'selected="selected"';
475
- $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
476
- }
477
-
478
- }
479
- return $str;
480
- }
481
- public function amazon_sportsAttributesDropdown($selected = "")
482
- {
483
- $attributes = new Woo_Feed_Default_Attributes();
484
- $str = "<option></option>";
485
- foreach ($attributes->amazon_sportsAttributes() as $key => $value) {
486
- if (substr($key, 0, 2) == "--") {
487
- $str .= "<optgroup label='$value'>";
488
- } elseif (substr($key, 0, 2) == "---") {
489
- $str .= "</optgroup>";
490
- } else {
491
- $sltd = "";
492
- if ($selected == $key)
493
- $sltd = 'selected="selected"';
494
- $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
495
- }
496
-
497
- }
498
- return $str;
499
- }
500
- public function amazon_toysAttributesDropdown($selected = "")
501
- {
502
- $attributes = new Woo_Feed_Default_Attributes();
503
- $str = "<option></option>";
504
- foreach ($attributes->amazon_toysAttributes() as $key => $value) {
505
- if (substr($key, 0, 2) == "--") {
506
- $str .= "<optgroup label='$value'>";
507
- } elseif (substr($key, 0, 2) == "---") {
508
- $str .= "</optgroup>";
509
- } else {
510
- $sltd = "";
511
- if ($selected == $key)
512
- $sltd = 'selected="selected"';
513
- $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
514
- }
515
-
516
- }
517
- return $str;
518
- }
519
- public function amazon_TradingCardsAttributesDropdown($selected = "")
520
- {
521
- $attributes = new Woo_Feed_Default_Attributes();
522
- $str = "<option></option>";
523
- foreach ($attributes->amazon_TradingCardsAttributes() as $key => $value) {
524
- if (substr($key, 0, 2) == "--") {
525
- $str .= "<optgroup label='$value'>";
526
- } elseif (substr($key, 0, 2) == "---") {
527
- $str .= "</optgroup>";
528
- } else {
529
- $sltd = "";
530
- if ($selected == $key)
531
- $sltd = 'selected="selected"';
532
- $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
533
- }
534
-
535
- }
536
- return $str;
537
- }
538
- public function amazon_watchesAttributesDropdown($selected = "")
539
- {
540
- $attributes = new Woo_Feed_Default_Attributes();
541
- $str = "<option></option>";
542
- foreach ($attributes->amazon_watchesAttributes() as $key => $value) {
543
- if (substr($key, 0, 2) == "--") {
544
- $str .= "<optgroup label='$value'>";
545
- } elseif (substr($key, 0, 2) == "---") {
546
- $str .= "</optgroup>";
547
- } else {
548
- $sltd = "";
549
- if ($selected == $key)
550
- $sltd = 'selected="selected"';
551
- $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
552
- }
553
-
554
- }
555
- return $str;
556
- }
557
-
558
- /**
559
- * Dropdown of pricespy Attribute List
560
- *
561
- * @param string $selected
562
- * @return string
563
- */
564
- public function pricespyAttributesDropdown($selected = "")
565
- {
566
- $attributes = new Woo_Feed_Default_Attributes();
567
- $str = "<option></option>";
568
- foreach ($attributes->pricespyAttribute() as $key => $value) {
569
- if (substr($key, 0, 2) == "--") {
570
- $str .= "<optgroup label='$value'>";
571
- } elseif (substr($key, 0, 2) == "---") {
572
- $str .= "</optgroup>";
573
- } else {
574
- $sltd = "";
575
- if ($selected == $key)
576
- $sltd = 'selected="selected"';
577
- $str .= "<option $sltd value='$key'>" . $value . "</option>";
578
- }
579
-
580
- }
581
- return $str;
582
- }
583
-
584
- /**
585
- * Dropdown of pricespy Attribute List
586
- *
587
- * @param string $selected
588
- * @return string
589
- */
590
- public function prisjaktAttributesDropdown($selected = "")
591
- {
592
- $attributes = new Woo_Feed_Default_Attributes();
593
- $str = "<option></option>";
594
- foreach ($attributes->prisjaktAttribute() as $key => $value) {
595
- if (substr($key, 0, 2) == "--") {
596
- $str .= "<optgroup label='$value'>";
597
- } elseif (substr($key, 0, 2) == "---") {
598
- $str .= "</optgroup>";
599
- } else {
600
- $sltd = "";
601
- if ($selected == $key)
602
- $sltd = 'selected="selected"';
603
- $str .= "<option $sltd value='$key'>" . $value . "</option>";
604
- }
605
-
606
- }
607
- return $str;
608
- }
609
-
610
- /**
611
- * Dropdown of Google Attribute List
612
- *
613
- * @param string $selected
614
- * @return string
615
- */
616
- public function googleAttributesDropdown($selected = "")
617
- {
618
- $attributes = new Woo_Feed_Default_Attributes();
619
- $str = "<option></option>";
620
- foreach ($attributes->googleAttributes() as $key => $value) {
621
- if (substr($key, 0, 2) == "--") {
622
- $str .= "<optgroup label='$value'>";
623
- } elseif (substr($key, 0, 2) == "---") {
624
- $str .= "</optgroup>";
625
- } else {
626
- $sltd = "";
627
- if ($selected == $key)
628
- $sltd = 'selected="selected"';
629
- $str .= "<option $sltd value='$key'>" . $value . "</option>";
630
- }
631
-
632
- }
633
- return $str;
634
- }
635
-
636
- /**
637
- * Dropdown of pinterest Attribute List
638
- *
639
- * @param string $selected
640
- * @return string
641
- */
642
- public function pinterestAttributesDropdown($selected = "")
643
- {
644
- $attributes = new Woo_Feed_Default_Attributes();
645
- $str = "<option></option>";
646
- foreach ($attributes->googleAttributes() as $key => $value) {
647
- if (substr($key, 0, 2) == "--") {
648
- $str .= "<optgroup label='$value'>";
649
- } elseif (substr($key, 0, 2) == "---") {
650
- $str .= "</optgroup>";
651
- } else {
652
- $sltd = "";
653
- if ($selected == $key)
654
- $sltd = 'selected="selected"';
655
- $str .= "<option $sltd value='$key'>" . $value . "</option>";
656
- }
657
-
658
- }
659
- return $str;
660
- }
661
-
662
- /**
663
- * Dropdown of Facebook Attribute List
664
- *
665
- * @param string $selected
666
- * @return string
667
- */
668
- public function facebookAttributesDropdown($selected = "")
669
- {
670
- $attributes = new Woo_Feed_Default_Attributes();
671
- $str = "<option></option>";
672
- foreach ($attributes->googleAttributes() as $key => $value) {
673
- if (substr($key, 0, 2) == "--") {
674
- $str .= "<optgroup label='$value'>";
675
- } elseif (substr($key, 0, 2) == "---") {
676
- $str .= "</optgroup>";
677
- } else {
678
- $sltd = "";
679
- if ($selected == $key)
680
- $sltd = 'selected="selected"';
681
- $str .= "<option $sltd value='$key'>" . $value . "</option>";
682
- }
683
-
684
- }
685
- return $str;
686
- }
687
-
688
- /**
689
- * Dropdown of Facebook Attribute List
690
- *
691
- * @param string $selected
692
- * @return string
693
- */
694
- public function shopbotAttributesDropdown($selected = "")
695
- {
696
- $attributes = new Woo_Feed_Default_Attributes();
697
- $str = "<option></option>";
698
- foreach ($attributes->shopbotAttribute() as $key => $value) {
699
- if (substr($key, 0, 2) == "--") {
700
- $str .= "<optgroup label='$value'>";
701
- } elseif (substr($key, 0, 2) == "---") {
702
- $str .= "</optgroup>";
703
- } else {
704
- $sltd = "";
705
- if ($selected == $key)
706
- $sltd = 'selected="selected"';
707
- $str .= "<option $sltd value='$key'>" . $value . "</option>";
708
- }
709
-
710
- }
711
- return $str;
712
- }
713
-
714
- /**
715
- * Dropdown of Amazon Attribute List
716
- *
717
- * @param string $selected
718
- * @return string
719
- */
720
- public function amazonAttributesDropdown($selected = "")
721
- {
722
- $attributes = new Woo_Feed_Default_Attributes();
723
- $str = "<option></option>";
724
- foreach ($attributes->amazonAttributes() as $key => $value) {
725
- if (substr($key, 0, 2) == "--") {
726
- $str .= "<optgroup label='$value'>";
727
- } elseif (substr($key, 0, 2) == "---") {
728
- $str .= "</optgroup>";
729
- } else {
730
- $sltd = "";
731
- if ($selected == $key)
732
- $sltd = 'selected="selected"';
733
- $str .= "<option $sltd value='$key'>" . $value . "</option>";
734
- }
735
-
736
- }
737
- return $str;
738
- }
739
- /**
740
- * Dropdown of Pricegraber Attribute List
741
- *
742
- * @param string $selected
743
- * @return string
744
- */
745
- public function priceGrabberAttributesDropdown($selected = "")
746
- {
747
- $attributes = new Woo_Feed_Default_Attributes();
748
- $str = "<option></option>";
749
- foreach ($attributes->priceGrabberAttribute() as $key => $value) {
750
- if (substr($key, 0, 2) == "--") {
751
- $str .= "<optgroup label='$value'>";
752
- } elseif (substr($key, 0, 2) == "---") {
753
- $str .= "</optgroup>";
754
- } else {
755
- $sltd = "";
756
- if ($selected == $key)
757
- $sltd = 'selected="selected"';
758
- $str .= "<option $sltd value='$key'>" . $value . "</option>";
759
- }
760
-
761
- }
762
- return $str;
763
- }
764
-
765
- /**
766
- * Dropdown of Nextag Attribute List
767
- *
768
- * @param string $selected
769
- * @return string
770
- */
771
- public function nextagAttributesDropdown($selected = "")
772
- {
773
- $attributes = new Woo_Feed_Default_Attributes();
774
- $str = "<option></option>";
775
- foreach ($attributes->nextagAttribute() as $key => $value) {
776
- if (substr($key, 0, 2) == "--") {
777
- $str .= "<optgroup label='$value'>";
778
- } elseif (substr($key, 0, 2) == "---") {
779
- $str .= "</optgroup>";
780
- } else {
781
- $sltd = "";
782
- if ($selected == $key)
783
- $sltd = 'selected="selected"';
784
- $str .= "<option $sltd value='$key'>" . $value . "</option>";
785
- }
786
-
787
- }
788
- return $str;
789
- }
790
-
791
- /**
792
- * Dropdown of kelkoo Attribute List
793
- *
794
- * @param string $selected
795
- * @return string
796
- */
797
- public function kelkooAttributesDropdown($selected = "")
798
- {
799
- $attributes = new Woo_Feed_Default_Attributes();
800
- $str = "<option></option>";
801
- foreach ($attributes->kelkooAttribute() as $key => $value) {
802
- if (substr($key, 0, 2) == "--") {
803
- $str .= "<optgroup label='$value'>";
804
- } elseif (substr($key, 0, 2) == "---") {
805
- $str .= "</optgroup>";
806
- } else {
807
- $sltd = "";
808
- if ($selected == $key)
809
- $sltd = 'selected="selected"';
810
- $str .= "<option $sltd value='$key'>" . $value . "</option>";
811
- }
812
-
813
- }
814
- return $str;
815
- }
816
-
817
- /**
818
- * Dropdown of Shopzilla Attribute List
819
- *
820
- * @param string $selected
821
- * @return string
822
- */
823
- public function shopzillaAttributesDropdown($selected = "")
824
- {
825
- $attributes = new Woo_Feed_Default_Attributes();
826
- $str = "<option></option>";
827
- foreach ($attributes->shopzillaAttribute() as $key => $value) {
828
- if (substr($key, 0, 2) == "--") {
829
- $str .= "<optgroup label='$value'>";
830
- } elseif (substr($key, 0, 2) == "---") {
831
- $str .= "</optgroup>";
832
- } else {
833
- $sltd = "";
834
- if ($selected == $key)
835
- $sltd = 'selected="selected"';
836
- $str .= "<option $sltd value='$key'>" . $value . "</option>";
837
- }
838
-
839
- }
840
- return $str;
841
- }
842
-
843
- /**
844
- * Dropdown of Shopping.com Attribute List
845
- *
846
- * @param string $selected
847
- * @return string
848
- */
849
- public function shoppingAttributesDropdown($selected = "")
850
- {
851
- $attributes = new Woo_Feed_Default_Attributes();
852
- $str = "<option></option>";
853
- foreach ($attributes->shoppingAttribute() as $key => $value) {
854
- if (substr($key, 0, 2) == "--") {
855
- $str .= "<optgroup label='$value'>";
856
- } elseif (substr($key, 0, 2) == "---") {
857
- $str .= "</optgroup>";
858
- } else {
859
- $sltd = "";
860
- if ($selected == $key)
861
- $sltd = 'selected="selected"';
862
- $str .= "<option $sltd value='$key'>" . $value . "</option>";
863
- }
864
-
865
- }
866
- return $str;
867
- }
868
-
869
- /**
870
- * Dropdown of Shopmania Attribute List
871
- *
872
- * @param string $selected
873
- * @return string
874
- */
875
- public function shopmaniaAttributesDropdown($selected = "")
876
- {
877
- $attributes = new Woo_Feed_Default_Attributes();
878
- $str = "<option></option>";
879
- foreach ($attributes->shopmaniaAttribute() as $key => $value) {
880
- if (substr($key, 0, 2) == "--") {
881
- $str .= "<optgroup label='$value'>";
882
- } elseif (substr($key, 0, 2) == "---") {
883
- $str .= "</optgroup>";
884
- } else {
885
- $sltd = "";
886
- if ($selected == $key)
887
- $sltd = 'selected="selected"';
888
- $str .= "<option $sltd value='$key'>" . $value . "</option>";
889
- }
890
-
891
- }
892
- return $str;
893
- }
894
-
895
-
896
- /**
897
- * Dropdown of Bing.com Attribute List
898
- *
899
- * @param string $selected
900
- * @return string
901
- */
902
- public function bingAttributesDropdown($selected = "")
903
- {
904
- $attributes = new Woo_Feed_Default_Attributes();
905
- $str = "<option></option>";
906
- foreach ($attributes->bingAttribute() as $key => $value) {
907
- if (substr($key, 0, 2) == "--") {
908
- $str .= "<optgroup label='$value'>";
909
- } elseif (substr($key, 0, 2) == "---") {
910
- $str .= "</optgroup>";
911
- } else {
912
- $sltd = "";
913
- if ($selected == $key)
914
- $sltd = 'selected="selected"';
915
- $str .= "<option $sltd value='$key'>" . $value . "</option>";
916
- }
917
-
918
- }
919
- return $str;
920
- }
921
-
922
- /**
923
- * Dropdown of become.com Attribute List
924
- *
925
- * @param string $selected
926
- * @return string
927
- */
928
- public function becomeAttributesDropdown($selected = "")
929
- {
930
- $attributes = new Woo_Feed_Default_Attributes();
931
- $str = "<option></option>";
932
- foreach ($attributes->becomeAttribute() as $key => $value) {
933
- if (substr($key, 0, 2) == "--") {
934
- $str .= "<optgroup label='$value'>";
935
- } elseif (substr($key, 0, 2) == "---") {
936
- $str .= "</optgroup>";
937
- } else {
938
- $sltd = "";
939
- if ($selected == $key)
940
- $sltd = 'selected="selected"';
941
- $str .= "<option $sltd value='$key'>" . $value . "</option>";
942
- }
943
-
944
- }
945
- return $str;
946
- }
947
-
948
- /**
949
- * Dropdown of connexity.com Attribute List
950
- *
951
- * @param string $selected
952
- * @return string
953
- */
954
- public function connexityAttributesDropdown($selected = "")
955
- {
956
- $attributes = new Woo_Feed_Default_Attributes();
957
- $str = "<option></option>";
958
- foreach ($attributes->becomeAttribute() as $key => $value) {
959
- if (substr($key, 0, 2) == "--") {
960
- $str .= "<optgroup label='$value'>";
961
- } elseif (substr($key, 0, 2) == "---") {
962
- $str .= "</optgroup>";
963
- } else {
964
- $sltd = "";
965
- if ($selected == $key)
966
- $sltd = 'selected="selected"';
967
- $str .= "<option $sltd value='$key'>" . $value . "</option>";
968
- }
969
-
970
- }
971
- return $str;
972
- }
973
- }
1
+ <?php
2
+
3
+ /**
4
+ * The file that defines the merchants attributes dropdown
5
+ *
6
+ * A class definition that includes attributes dropdown and functions used across the admin area.
7
+ *
8
+ * @link https://webappick.com/
9
+ * @since 1.0.0
10
+ *
11
+ * @package Woo_Feed
12
+ * @subpackage Woo_Feed/includes
13
+ * @author Ohidul Islam <wahid@webappick.com>
14
+ */
15
+
16
+ class Woo_Feed_Dropdown
17
+ {
18
+
19
+ /**
20
+ * Dropdown of Merchant List
21
+ *
22
+ * @param string $selected
23
+ * @return string
24
+ */
25
+ public function merchantsDropdown($selected = "")
26
+ {
27
+ $attributes = new Woo_Feed_Default_Attributes();
28
+ $str = "<option></option>";
29
+ foreach ($attributes->merchants() as $key => $value) {
30
+ if (substr($key, 0, 2) == "--") {
31
+ $str .= "<optgroup label='$value'>";
32
+ } elseif (substr($key, 0, 2) == "---") {
33
+ $str .= "</optgroup>";
34
+ } else {
35
+ $sltd = "";
36
+ if ($selected == $key)
37
+ $sltd = 'selected="selected"';
38
+ $str .= "<option $sltd value='$key'>" . $value . "</option>";
39
+ }
40
+
41
+ }
42
+ return $str;
43
+ }
44
+
45
+ /**
46
+ * Read txt file which contains google taxonomy list
47
+ * @param string $selected
48
+ * @return string
49
+ */
50
+ public function googleTaxonomy( $selected = "" ){
51
+ # Get All Google Taxonomies
52
+ $fileName = WOO_FEED_Admin_Path . "/partials/templates/google_taxonomy.txt";
53
+ $customTaxonomyFile = fopen($fileName, "r");
54
+ $str = "";
55
+ if( ! empty( $selected ) ) {
56
+ $selected = trim( $selected );
57
+ if( ! is_numeric( $selected ) ) $selected = html_entity_decode( $selected );
58
+ else $selected = (int) $selected;
59
+ }
60
+ if($customTaxonomyFile){
61
+ // First line contains metadata, ignore it
62
+ @fgets( $customTaxonomyFile );
63
+ while ( $line = fgets( $customTaxonomyFile ) ) {
64
+ list( $catId, $cat ) = explode("-", $line );
65
+ $catId = (int) trim( $catId );
66
+ $cat = trim( $cat );
67
+ $selected = ( version_compare( '3.1.28', WOO_FEED_VERSION ) <= 0 ) ? selected( $selected, $cat, false ): selected( $selected, $catId, false );
68
+ $str .= sprintf( '<option value="%s"%s>%s</option>', $catId, $selected, $cat );
69
+ }
70
+ }
71
+ if( ! empty( $str ) ) {
72
+ $str = "<option></option>" . $str;
73
+ }
74
+ return $str;
75
+ }
76
+
77
+
78
+ public function amazon_clothingAttributesDropdown($selected = "")
79
+ {
80
+ $attributes = new Woo_Feed_Default_Attributes();
81
+ $str = "<option></option>";
82
+ foreach ($attributes->amazon_clothingAttributes() as $key => $value) {
83
+ if (substr($key, 0, 2) == "--") {
84
+ $str .= "<optgroup label='$value'>";
85
+ } elseif (substr($key, 0, 2) == "---") {
86
+ $str .= "</optgroup>";
87
+ } else {
88
+ $sltd = "";
89
+ if ($selected == $key)
90
+ $sltd = 'selected="selected"';
91
+ $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
92
+ }
93
+
94
+ }
95
+ return $str;
96
+ }
97
+
98
+ public function amazon_jewelryAttributesDropdown($selected = "")
99
+ {
100
+ $attributes = new Woo_Feed_Default_Attributes();
101
+ $str = "<option></option>";
102
+ foreach ($attributes->amazon_jewelryAttributes() as $key => $value) {
103
+ if (substr($key, 0, 2) == "--") {
104
+ $str .= "<optgroup label='$value'>";
105
+ } elseif (substr($key, 0, 2) == "---") {
106
+ $str .= "</optgroup>";
107
+ } else {
108
+ $sltd = "";
109
+ if ($selected == $key)
110
+ $sltd = 'selected="selected"';
111
+ $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
112
+ }
113
+
114
+ }
115
+ return $str;
116
+ }
117
+
118
+ public function amazon_jewelry_frAttributesDropdown($selected = "")
119
+ {
120
+ $attributes = new Woo_Feed_Default_Attributes();
121
+ $str = "<option></option>";
122
+ foreach ($attributes->amazon_jewelry_frAttributes() as $key => $value) {
123
+ if (substr($key, 0, 2) == "--") {
124
+ $str .= "<optgroup label='$value'>";
125
+ } elseif (substr($key, 0, 2) == "---") {
126
+ $str .= "</optgroup>";
127
+ } else {
128
+ $sltd = "";
129
+ if ($selected == $key)
130
+ $sltd = 'selected="selected"';
131
+ $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
132
+ }
133
+
134
+ }
135
+ return $str;
136
+ }
137
+
138
+ public function amazon_lightingAttributesDropdown($selected = "")
139
+ {
140
+ $attributes = new Woo_Feed_Default_Attributes();
141
+ $str = "<option></option>";
142
+ foreach ($attributes->amazon_lightingAttributes() as $key => $value) {
143
+ if (substr($key, 0, 2) == "--") {
144
+ $str .= "<optgroup label='$value'>";
145
+ } elseif (substr($key, 0, 2) == "---") {
146
+ $str .= "</optgroup>";
147
+ } else {
148
+ $sltd = "";
149
+ if ($selected == $key)
150
+ $sltd = 'selected="selected"';
151
+ $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
152
+ }
153
+
154
+ }
155
+ return $str;
156
+ }
157
+ public function amazon_wirelessAttributesDropdown($selected = "")
158
+ {
159
+ $attributes = new Woo_Feed_Default_Attributes();
160
+ $str = "<option></option>";
161
+ foreach ($attributes->amazon_wirelessAttributes() as $key => $value) {
162
+ if (substr($key, 0, 2) == "--") {
163
+ $str .= "<optgroup label='$value'>";
164
+ } elseif (substr($key, 0, 2) == "---") {
165
+ $str .= "</optgroup>";
166
+ } else {
167
+ $sltd = "";
168
+ if ($selected == $key)
169
+ $sltd = 'selected="selected"';
170
+ $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
171
+ }
172
+
173
+ }
174
+ return $str;
175
+ }
176
+ public function amazon_autoaccessoryAttributesDropdown($selected = "")
177
+ {
178
+ $attributes = new Woo_Feed_Default_Attributes();
179
+ $str = "<option></option>";
180
+ foreach ($attributes->amazon_autoaccessoryAttributes() as $key => $value) {
181
+ if (substr($key, 0, 2) == "--") {
182
+ $str .= "<optgroup label='$value'>";
183
+ } elseif (substr($key, 0, 2) == "---") {
184
+ $str .= "</optgroup>";
185
+ } else {
186
+ $sltd = "";
187
+ if ($selected == $key)
188
+ $sltd = 'selected="selected"';
189
+ $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
190
+ }
191
+
192
+ }
193
+ return $str;
194
+ }
195
+ public function amazon_tiresandwheelsAttributesDropdown($selected = "")
196
+ {
197
+ $attributes = new Woo_Feed_Default_Attributes();
198
+ $str = "<option></option>";
199
+ foreach ($attributes->amazon_tiresandwheelsAttributes() as $key => $value) {
200
+ if (substr($key, 0, 2) == "--") {
201
+ $str .= "<optgroup label='$value'>";
202
+ } elseif (substr($key, 0, 2) == "---") {
203
+ $str .= "</optgroup>";
204
+ } else {
205
+ $sltd = "";
206
+ if ($selected == $key)
207
+ $sltd = 'selected="selected"';
208
+ $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
209
+ }
210
+
211
+ }
212
+ return $str;
213
+ }
214
+ public function amazon_homeAttributesDropdown($selected = "")
215
+ {
216
+ $attributes = new Woo_Feed_Default_Attributes();
217
+ $str = "<option></option>";
218
+ foreach ($attributes->amazon_homeAttributes() as $key => $value) {
219
+ if (substr($key, 0, 2) == "--") {
220
+ $str .= "<optgroup label='$value'>";
221
+ } elseif (substr($key, 0, 2) == "---") {
222
+ $str .= "</optgroup>";
223
+ } else {
224
+ $sltd = "";
225
+ if ($selected == $key)
226
+ $sltd = 'selected="selected"';
227
+ $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
228
+ }
229
+
230
+ }
231
+ return $str;
232
+ }
233
+ public function amazon_healthAttributesDropdown($selected = "")
234
+ {
235
+ $attributes = new Woo_Feed_Default_Attributes();
236
+ $str = "<option></option>";
237
+ foreach ($attributes->amazon_healthAttributes() as $key => $value) {
238
+ if (substr($key, 0, 2) == "--") {
239
+ $str .= "<optgroup label='$value'>";
240
+ } elseif (substr($key, 0, 2) == "---") {
241
+ $str .= "</optgroup>";
242
+ } else {
243
+ $sltd = "";
244
+ if ($selected == $key)
245
+ $sltd = 'selected="selected"';
246
+ $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
247
+ }
248
+
249
+ }
250
+ return $str;
251
+ }
252
+ public function amazon_babyAttributesDropdown($selected = "")
253
+ {
254
+ $attributes = new Woo_Feed_Default_Attributes();
255
+ $str = "<option></option>";
256
+ foreach ($attributes->amazon_babyAttributes() as $key => $value) {
257
+ if (substr($key, 0, 2) == "--") {
258
+ $str .= "<optgroup label='$value'>";
259
+ } elseif (substr($key, 0, 2) == "---") {
260
+ $str .= "</optgroup>";
261
+ } else {
262
+ $sltd = "";
263
+ if ($selected == $key)
264
+ $sltd = 'selected="selected"';
265
+ $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
266
+ }
267
+
268
+ }
269
+ return $str;
270
+ }
271
+ public function amazon_BookLoaderAttributesDropdown($selected = "")
272
+ {
273
+ $attributes = new Woo_Feed_Default_Attributes();
274
+ $str = "<option></option>";
275
+ foreach ($attributes->amazon_BookLoaderAttributes() as $key => $value) {
276
+ if (substr($key, 0, 2) == "--") {
277
+ $str .= "<optgroup label='$value'>";
278
+ } elseif (substr($key, 0, 2) == "---") {
279
+ $str .= "</optgroup>";
280
+ } else {
281
+ $sltd = "";
282
+ if ($selected == $key)
283
+ $sltd = 'selected="selected"';
284
+ $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
285
+ }
286
+
287
+ }
288
+ return $str;
289
+ }
290
+ public function amazon_CameraAndPhotoAttributesDropdown($selected = "")
291
+ {
292
+ $attributes = new Woo_Feed_Default_Attributes();
293
+ $str = "<option></option>";
294
+ foreach ($attributes->amazon_CameraAndPhotoAttributes() as $key => $value) {
295
+ if (substr($key, 0, 2) == "--") {
296
+ $str .= "<optgroup label='$value'>";
297
+ } elseif (substr($key, 0, 2) == "---") {
298
+ $str .= "</optgroup>";
299
+ } else {
300
+ $sltd = "";
301
+ if ($selected == $key)
302
+ $sltd = 'selected="selected"';
303
+ $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
304
+ }
305
+
306
+ }
307
+ return $str;
308
+ }
309
+ public function amazon_foodandbeveragesAttributesDropdown($selected = "")
310
+ {
311
+ $attributes = new Woo_Feed_Default_Attributes();
312
+ $str = "<option></option>";
313
+ foreach ($attributes->amazon_foodandbeveragesAttributes() as $key => $value) {
314
+ if (substr($key, 0, 2) == "--") {
315
+ $str .= "<optgroup label='$value'>";
316
+ } elseif (substr($key, 0, 2) == "---") {
317
+ $str .= "</optgroup>";
318
+ } else {
319
+ $sltd = "";
320
+ if ($selected == $key)
321
+ $sltd = 'selected="selected"';
322
+ $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
323
+ }
324
+
325
+ }
326
+ return $str;
327
+ }
328
+ public function amazon_computersAttributesDropdown($selected = "")
329
+ {
330
+ $attributes = new Woo_Feed_Default_Attributes();
331
+ $str = "<option></option>";
332
+ foreach ($attributes->amazon_computersAttributes() as $key => $value) {
333
+ if (substr($key, 0, 2) == "--") {
334
+ $str .= "<optgroup label='$value'>";
335
+ } elseif (substr($key, 0, 2) == "---") {
336
+ $str .= "</optgroup>";
337
+ } else {
338
+ $sltd = "";
339
+ if ($selected == $key)
340
+ $sltd = 'selected="selected"';
341
+ $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
342
+ }
343
+
344
+ }
345
+ return $str;
346
+ }
347
+ public function amazon_ConsumerElectronicsAttributesDropdown($selected = "")
348
+ {
349
+ $attributes = new Woo_Feed_Default_Attributes();
350
+ $str = "<option></option>";
351
+ foreach ($attributes->amazon_ConsumerElectronicsAttributes() as $key => $value) {
352
+ if (substr($key, 0, 2) == "--") {
353
+ $str .= "<optgroup label='$value'>";
354
+ } elseif (substr($key, 0, 2) == "---") {
355
+ $str .= "</optgroup>";
356
+ } else {
357
+ $sltd = "";
358
+ if ($selected == $key)
359
+ $sltd = 'selected="selected"';
360
+ $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
361
+ }
362
+
363
+ }
364
+ return $str;
365
+ }
366
+ public function amazon_entertainmentcollectiblesAttributesDropdown($selected = "")
367
+ {
368
+ $attributes = new Woo_Feed_Default_Attributes();
369
+ $str = "<option></option>";
370
+ foreach ($attributes->amazon_entertainmentcollectiblesAttributes() as $key => $value) {
371
+ if (substr($key, 0, 2) == "--") {
372
+ $str .= "<optgroup label='$value'>";
373
+ } elseif (substr($key, 0, 2) == "---") {
374
+ $str .= "</optgroup>";
375
+ } else {
376
+ $sltd = "";
377
+ if ($selected == $key)
378
+ $sltd = 'selected="selected"';
379
+ $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
380
+ }
381
+
382
+ }
383
+ return $str;
384
+ }
385
+ public function amazon_homeimprovementAttributesDropdown($selected = "")
386
+ {
387
+ $attributes = new Woo_Feed_Default_Attributes();
388
+ $str = "<option></option>";
389
+ foreach ($attributes->amazon_homeimprovementAttributes() as $key => $value) {
390
+ if (substr($key, 0, 2) == "--") {
391
+ $str .= "<optgroup label='$value'>";
392
+ } elseif (substr($key, 0, 2) == "---") {
393
+ $str .= "</optgroup>";
394
+ } else {
395
+ $sltd = "";
396
+ if ($selected == $key)
397
+ $sltd = 'selected="selected"';
398
+ $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
399
+ }
400
+
401
+ }
402
+ return $str;
403
+ }
404
+ public function amazon_officeAttributesDropdown($selected = "")
405
+ {
406
+ $attributes = new Woo_Feed_Default_Attributes();
407
+ $str = "<option></option>";
408
+ foreach ($attributes->amazon_officeAttributes() as $key => $value) {
409
+ if (substr($key, 0, 2) == "--") {
410
+ $str .= "<optgroup label='$value'>";
411
+ } elseif (substr($key, 0, 2) == "---") {
412
+ $str .= "</optgroup>";
413
+ } else {
414
+ $sltd = "";
415
+ if ($selected == $key)
416
+ $sltd = 'selected="selected"';
417
+ $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
418
+ }
419
+
420
+ }
421
+ return $str;
422
+ }
423
+ public function amazon_petsuppliesAttributesDropdown($selected = "")
424
+ {
425
+ $attributes = new Woo_Feed_Default_Attributes();
426
+ $str = "<option></option>";
427
+ foreach ($attributes->amazon_petsuppliesAttributes() as $key => $value) {
428
+ if (substr($key, 0, 2) == "--") {
429
+ $str .= "<optgroup label='$value'>";
430
+ } elseif (substr($key, 0, 2) == "---") {
431
+ $str .= "</optgroup>";
432
+ } else {
433
+ $sltd = "";
434
+ if ($selected == $key)
435
+ $sltd = 'selected="selected"';
436
+ $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
437
+ }
438
+
439
+ }
440
+ return $str;
441
+ }
442
+
443
+ public function amazon_sportsmemorabiliaAttributesDropdown($selected = "")
444
+ {
445
+ $attributes = new Woo_Feed_Default_Attributes();
446
+ $str = "<option></option>";
447
+ foreach ($attributes->amazon_sportsmemorabiliaAttributes() as $key => $value) {
448
+ if (substr($key, 0, 2) == "--") {
449
+ $str .= "<optgroup label='$value'>";
450
+ } elseif (substr($key, 0, 2) == "---") {
451
+ $str .= "</optgroup>";
452
+ } else {
453
+ $sltd = "";
454
+ if ($selected == $key)
455
+ $sltd = 'selected="selected"';
456
+ $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
457
+ }
458
+
459
+ }
460
+ return $str;
461
+ }
462
+ public function amazon_shoesAttributesDropdown($selected = "")
463
+ {
464
+ $attributes = new Woo_Feed_Default_Attributes();
465
+ $str = "<option></option>";
466
+ foreach ($attributes->amazon_shoesAttributes() as $key => $value) {
467
+ if (substr($key, 0, 2) == "--") {
468
+ $str .= "<optgroup label='$value'>";
469
+ } elseif (substr($key, 0, 2) == "---") {
470
+ $str .= "</optgroup>";
471
+ } else {
472
+ $sltd = "";
473
+ if ($selected == $key)
474
+ $sltd = 'selected="selected"';
475
+ $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
476
+ }
477
+
478
+ }
479
+ return $str;
480
+ }
481
+ public function amazon_sportsAttributesDropdown($selected = "")
482
+ {
483
+ $attributes = new Woo_Feed_Default_Attributes();
484
+ $str = "<option></option>";
485
+ foreach ($attributes->amazon_sportsAttributes() as $key => $value) {
486
+ if (substr($key, 0, 2) == "--") {
487
+ $str .= "<optgroup label='$value'>";
488
+ } elseif (substr($key, 0, 2) == "---") {
489
+ $str .= "</optgroup>";
490
+ } else {
491
+ $sltd = "";
492
+ if ($selected == $key)
493
+ $sltd = 'selected="selected"';
494
+ $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
495
+ }
496
+
497
+ }
498
+ return $str;
499
+ }
500
+ public function amazon_toysAttributesDropdown($selected = "")
501
+ {
502
+ $attributes = new Woo_Feed_Default_Attributes();
503
+ $str = "<option></option>";
504
+ foreach ($attributes->amazon_toysAttributes() as $key => $value) {
505
+ if (substr($key, 0, 2) == "--") {
506
+ $str .= "<optgroup label='$value'>";
507
+ } elseif (substr($key, 0, 2) == "---") {
508
+ $str .= "</optgroup>";
509
+ } else {
510
+ $sltd = "";
511
+ if ($selected == $key)
512
+ $sltd = 'selected="selected"';
513
+ $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
514
+ }
515
+
516
+ }
517
+ return $str;
518
+ }
519
+ public function amazon_TradingCardsAttributesDropdown($selected = "")
520
+ {
521
+ $attributes = new Woo_Feed_Default_Attributes();
522
+ $str = "<option></option>";
523
+ foreach ($attributes->amazon_TradingCardsAttributes() as $key => $value) {
524
+ if (substr($key, 0, 2) == "--") {
525
+ $str .= "<optgroup label='$value'>";
526
+ } elseif (substr($key, 0, 2) == "---") {
527
+ $str .= "</optgroup>";
528
+ } else {
529
+ $sltd = "";
530
+ if ($selected == $key)
531
+ $sltd = 'selected="selected"';
532
+ $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
533
+ }
534
+
535
+ }
536
+ return $str;
537
+ }
538
+ public function amazon_watchesAttributesDropdown($selected = "")
539
+ {
540
+ $attributes = new Woo_Feed_Default_Attributes();
541
+ $str = "<option></option>";
542
+ foreach ($attributes->amazon_watchesAttributes() as $key => $value) {
543
+ if (substr($key, 0, 2) == "--") {
544
+ $str .= "<optgroup label='$value'>";
545
+ } elseif (substr($key, 0, 2) == "---") {
546
+ $str .= "</optgroup>";
547
+ } else {
548
+ $sltd = "";
549
+ if ($selected == $key)
550
+ $sltd = 'selected="selected"';
551
+ $str .= "<option $sltd value='$key'>" . $value ." [".$key."]". "</option>";
552
+ }
553
+
554
+ }
555
+ return $str;
556
+ }
557
+
558
+ /**
559
+ * Dropdown of pricespy Attribute List
560
+ *
561
+ * @param string $selected
562
+ * @return string
563
+ */
564
+ public function pricespyAttributesDropdown($selected = "")
565
+ {
566
+ $attributes = new Woo_Feed_Default_Attributes();
567
+ $str = "<option></option>";
568
+ foreach ($attributes->pricespyAttribute() as $key => $value) {
569
+ if (substr($key, 0, 2) == "--") {
570
+ $str .= "<optgroup label='$value'>";
571
+ } elseif (substr($key, 0, 2) == "---") {
572
+ $str .= "</optgroup>";
573
+ } else {
574
+ $sltd = "";
575
+ if ($selected == $key)
576
+ $sltd = 'selected="selected"';
577
+ $str .= "<option $sltd value='$key'>" . $value . "</option>";
578
+ }
579
+
580
+ }
581
+ return $str;
582
+ }
583
+
584
+ /**
585
+ * Dropdown of pricespy Attribute List
586
+ *
587
+ * @param string $selected
588
+ * @return string
589
+ */
590
+ public function prisjaktAttributesDropdown($selected = "")
591
+ {
592
+ $attributes = new Woo_Feed_Default_Attributes();
593
+ $str = "<option></option>";
594
+ foreach ($attributes->prisjaktAttribute() as $key => $value) {
595
+ if (substr($key, 0, 2) == "--") {
596
+ $str .= "<optgroup label='$value'>";
597
+ } elseif (substr($key, 0, 2) == "---") {
598
+ $str .= "</optgroup>";
599
+ } else {
600
+ $sltd = "";
601
+ if ($selected == $key)
602
+ $sltd = 'selected="selected"';
603
+ $str .= "<option $sltd value='$key'>" . $value . "</option>";
604
+ }
605
+
606
+ }
607
+ return $str;
608
+ }
609
+
610
+ /**
611
+ * Dropdown of Google Attribute List
612
+ *
613
+ * @param string $selected
614
+ * @return string
615
+ */
616
+ public function googleAttributesDropdown($selected = "")
617
+ {
618
+ $attributes = new Woo_Feed_Default_Attributes();
619
+ $str = "<option></option>";
620
+ foreach ($attributes->googleAttributes() as $key => $value) {
621
+ if (substr($key, 0, 2) == "--") {
622
+ $str .= "<optgroup label='$value'>";
623
+ } elseif (substr($key, 0, 2) == "---") {
624
+ $str .= "</optgroup>";
625
+ } else {
626
+ $sltd = "";
627
+ if ($selected == $key)
628
+ $sltd = 'selected="selected"';
629
+ $str .= "<option $sltd value='$key'>" . $value . "</option>";
630
+ }
631
+
632
+ }
633
+ return $str;
634
+ }
635
+
636
+ /**
637
+ * Dropdown of pinterest Attribute List
638
+ *
639
+ * @param string $selected
640
+ * @return string
641
+ */
642
+ public function pinterestAttributesDropdown($selected = "")
643
+ {
644
+ $attributes = new Woo_Feed_Default_Attributes();
645
+ $str = "<option></option>";
646
+ foreach ($attributes->googleAttributes() as $key => $value) {
647
+ if (substr($key, 0, 2) == "--") {
648
+ $str .= "<optgroup label='$value'>";
649
+ } elseif (substr($key, 0, 2) == "---") {
650
+ $str .= "</optgroup>";
651
+ } else {
652
+ $sltd = "";
653
+ if ($selected == $key)
654
+ $sltd = 'selected="selected"';
655
+ $str .= "<option $sltd value='$key'>" . $value . "</option>";
656
+ }
657
+
658
+ }
659
+ return $str;
660
+ }
661
+
662
+ /**
663
+ * Dropdown of Facebook Attribute List
664
+ *
665
+ * @param string $selected
666
+ * @return string
667
+ */
668
+ public function facebookAttributesDropdown($selected = "")
669
+ {
670
+ $attributes = new Woo_Feed_Default_Attributes();
671
+ $str = "<option></option>";
672
+ foreach ($attributes->googleAttributes() as $key => $value) {
673
+ if (substr($key, 0, 2) == "--") {
674
+ $str .= "<optgroup label='$value'>";
675
+ } elseif (substr($key, 0, 2) == "---") {
676
+ $str .= "</optgroup>";
677
+ } else {
678
+ $sltd = "";
679
+ if ($selected == $key)
680
+ $sltd = 'selected="selected"';
681
+ $str .= "<option $sltd value='$key'>" . $value . "</option>";
682
+ }
683
+
684
+ }
685
+ return $str;
686
+ }
687
+
688
+ /**
689
+ * Dropdown of Facebook Attribute List
690
+ *
691
+ * @param string $selected
692
+ * @return string
693
+ */
694
+ public function shopbotAttributesDropdown($selected = "")
695
+ {
696
+ $attributes = new Woo_Feed_Default_Attributes();
697
+ $str = "<option></option>";
698
+ foreach ($attributes->shopbotAttribute() as $key => $value) {
699
+ if (substr($key, 0, 2) == "--") {
700
+ $str .= "<optgroup label='$value'>";
701
+ } elseif (substr($key, 0, 2) == "---") {
702
+ $str .= "</optgroup>";
703
+ } else {
704
+ $sltd = "";
705
+ if ($selected == $key)
706
+ $sltd = 'selected="selected"';
707
+ $str .= "<option $sltd value='$key'>" . $value . "</option>";
708
+ }
709
+
710
+ }
711
+ return $str;
712
+ }
713
+
714
+ /**
715
+ * Dropdown of Amazon Attribute List
716
+ *
717
+ * @param string $selected
718
+ * @return string
719
+ */
720
+ public function amazonAttributesDropdown($selected = "")
721
+ {
722
+ $attributes = new Woo_Feed_Default_Attributes();
723
+ $str = "<option></option>";
724
+ foreach ($attributes->amazonAttributes() as $key => $value) {
725
+ if (substr($key, 0, 2) == "--") {
726
+ $str .= "<optgroup label='$value'>";
727
+ } elseif (substr($key, 0, 2) == "---") {
728
+ $str .= "</optgroup>";
729
+ } else {
730
+ $sltd = "";
731
+ if ($selected == $key)
732
+ $sltd = 'selected="selected"';
733
+ $str .= "<option $sltd value='$key'>" . $value . "</option>";
734
+ }
735
+
736
+ }
737
+ return $str;
738
+ }
739
+ /**
740
+ * Dropdown of Pricegraber Attribute List
741
+ *
742
+ * @param string $selected
743
+ * @return string
744
+ */
745
+ public function priceGrabberAttributesDropdown($selected = "")
746
+ {
747
+ $attributes = new Woo_Feed_Default_Attributes();
748
+ $str = "<option></option>";
749
+ foreach ($attributes->priceGrabberAttribute() as $key => $value) {
750
+ if (substr($key, 0, 2) == "--") {
751
+ $str .= "<optgroup label='$value'>";
752
+ } elseif (substr($key, 0, 2) == "---") {
753
+ $str .= "</optgroup>";
754
+ } else {
755
+ $sltd = "";
756
+ if ($selected == $key)
757
+ $sltd = 'selected="selected"';
758
+ $str .= "<option $sltd value='$key'>" . $value . "</option>";
759
+ }
760
+
761
+ }
762
+ return $str;
763
+ }
764
+
765
+ /**
766
+ * Dropdown of Nextag Attribute List
767
+ *
768
+ * @param string $selected
769
+ * @return string
770
+ */
771
+ public function nextagAttributesDropdown($selected = "")
772
+ {
773
+ $attributes = new Woo_Feed_Default_Attributes();
774
+ $str = "<option></option>";
775
+ foreach ($attributes->nextagAttribute() as $key => $value) {
776
+ if (substr($key, 0, 2) == "--") {
777
+ $str .= "<optgroup label='$value'>";
778
+ } elseif (substr($key, 0, 2) == "---") {
779
+ $str .= "</optgroup>";
780
+ } else {
781
+ $sltd = "";
782
+ if ($selected == $key)
783
+ $sltd = 'selected="selected"';
784
+ $str .= "<option $sltd value='$key'>" . $value . "</option>";
785
+ }
786
+
787
+ }
788
+ return $str;
789
+ }
790
+
791
+ /**
792
+ * Dropdown of kelkoo Attribute List
793
+ *
794
+ * @param string $selected
795
+ * @return string
796
+ */
797
+ public function kelkooAttributesDropdown($selected = "")
798
+ {
799
+ $attributes = new Woo_Feed_Default_Attributes();
800
+ $str = "<option></option>";
801
+ foreach ($attributes->kelkooAttribute() as $key => $value) {
802
+ if (substr($key, 0, 2) == "--") {
803
+ $str .= "<optgroup label='$value'>";
804
+ } elseif (substr($key, 0, 2) == "---") {
805
+ $str .= "</optgroup>";
806
+ } else {
807
+ $sltd = "";
808
+ if ($selected == $key)
809
+ $sltd = 'selected="selected"';
810
+ $str .= "<option $sltd value='$key'>" . $value . "</option>";
811
+ }
812
+
813
+ }
814
+ return $str;
815
+ }
816
+
817
+ /**
818
+ * Dropdown of Shopzilla Attribute List
819
+ *
820
+ * @param string $selected
821
+ * @return string
822
+ */
823
+ public function shopzillaAttributesDropdown($selected = "")
824
+ {
825
+ $attributes = new Woo_Feed_Default_Attributes();
826
+ $str = "<option></option>";
827
+ foreach ($attributes->shopzillaAttribute() as $key => $value) {
828
+ if (substr($key, 0, 2) == "--") {
829
+ $str .= "<optgroup label='$value'>";
830
+ } elseif (substr($key, 0, 2) == "---") {
831
+ $str .= "</optgroup>";
832
+ } else {
833
+ $sltd = "";
834
+ if ($selected == $key)
835
+ $sltd = 'selected="selected"';
836
+ $str .= "<option $sltd value='$key'>" . $value . "</option>";
837
+ }
838
+
839
+ }
840
+ return $str;
841
+ }
842
+
843
+ /**
844
+ * Dropdown of Shopping.com Attribute List
845
+ *
846
+ * @param string $selected
847
+ * @return string
848
+ */
849
+ public function shoppingAttributesDropdown($selected = "")
850
+ {
851
+ $attributes = new Woo_Feed_Default_Attributes();
852
+ $str = "<option></option>";
853
+ foreach ($attributes->shoppingAttribute() as $key => $value) {
854
+ if (substr($key, 0, 2) == "--") {
855
+ $str .= "<optgroup label='$value'>";
856
+ } elseif (substr($key, 0, 2) == "---") {
857
+ $str .= "</optgroup>";
858
+ } else {
859
+ $sltd = "";
860
+ if ($selected == $key)
861
+ $sltd = 'selected="selected"';
862
+ $str .= "<option $sltd value='$key'>" . $value . "</option>";
863
+ }
864
+
865
+ }
866
+ return $str;
867
+ }
868
+
869
+ /**
870
+ * Dropdown of Shopmania Attribute List
871
+ *
872
+ * @param string $selected
873
+ * @return string
874
+ */
875
+ public function shopmaniaAttributesDropdown($selected = "")
876
+ {
877
+ $attributes = new Woo_Feed_Default_Attributes();
878
+ $str = "<option></option>";
879
+ foreach ($attributes->shopmaniaAttribute() as $key => $value) {
880
+ if (substr($key, 0, 2) == "--") {
881
+ $str .= "<optgroup label='$value'>";
882
+ } elseif (substr($key, 0, 2) == "---") {
883
+ $str .= "</optgroup>";
884
+ } else {
885
+ $sltd = "";
886
+ if ($selected == $key)
887
+ $sltd = 'selected="selected"';
888
+ $str .= "<option $sltd value='$key'>" . $value . "</option>";
889
+ }
890
+
891
+ }
892
+ return $str;
893
+ }
894
+
895
+
896
+ /**
897
+ * Dropdown of Bing.com Attribute List
898
+ *
899
+ * @param string $selected
900
+ * @return string
901
+ */
902
+ public function bingAttributesDropdown($selected = "")
903
+ {
904
+ $attributes = new Woo_Feed_Default_Attributes();
905
+ $str = "<option></option>";
906
+ foreach ($attributes->bingAttribute() as $key => $value) {
907
+ if (substr($key, 0, 2) == "--") {
908
+ $str .= "<optgroup label='$value'>";
909
+ } elseif (substr($key, 0, 2) == "---") {
910
+ $str .= "</optgroup>";
911
+ } else {
912
+ $sltd = "";
913
+ if ($selected == $key)
914
+ $sltd = 'selected="selected"';
915
+ $str .= "<option $sltd value='$key'>" . $value . "</option>";
916
+ }
917
+
918
+ }
919
+ return $str;
920
+ }
921
+
922
+ /**
923
+ * Dropdown of become.com Attribute List
924
+ *
925
+ * @param string $selected
926
+ * @return string
927
+ */
928
+ public function becomeAttributesDropdown($selected = "")
929
+ {
930
+ $attributes = new Woo_Feed_Default_Attributes();
931
+ $str = "<option></option>";
932
+ foreach ($attributes->becomeAttribute() as $key => $value) {
933
+ if (substr($key, 0, 2) == "--") {
934
+ $str .= "<optgroup label='$value'>";
935
+ } elseif (substr($key, 0, 2) == "---") {
936
+ $str .= "</optgroup>";
937
+ } else {
938
+ $sltd = "";
939
+ if ($selected == $key)
940
+ $sltd = 'selected="selected"';
941
+ $str .= "<option $sltd value='$key'>" . $value . "</option>";
942
+ }
943
+
944
+ }
945
+ return $str;
946
+ }
947
+
948
+ /**
949
+ * Dropdown of connexity.com Attribute List
950
+ *
951
+ * @param string $selected
952
+ * @return string
953
+ */
954
+ public function connexityAttributesDropdown($selected = "")
955
+ {
956
+ $attributes = new Woo_Feed_Default_Attributes();
957
+ $str = "<option></option>";
958
+ foreach ($attributes->becomeAttribute() as $key => $value) {
959
+ if (substr($key, 0, 2) == "--") {
960
+ $str .= "<optgroup label='$value'>";
961
+ } elseif (substr($key, 0, 2) == "---") {
962
+ $str .= "</optgroup>";
963
+ } else {
964
+ $sltd = "";
965
+ if ($selected == $key)
966
+ $sltd = 'selected="selected"';
967
+ $str .= "<option $sltd value='$key'>" . $value . "</option>";
968
+ }
969
+
970
+ }
971
+ return $str;
972
+ }
973
+ }
woo-feed.php CHANGED
@@ -16,7 +16,7 @@
16
  * Plugin Name: WooCommerce Product Feed
17
  * Plugin URI: https://webappick.com/
18
  * Description: This plugin generate WooCommerce product feed for Shopping Engines like Google Shopping,Facebook Product Feed,eBay,Amazon,Idealo and many more..
19
- * Version: 3.1.28
20
  * Author: WebAppick
21
  * Author URI: https://webappick.com/
22
  * License: GPL v2
@@ -36,7 +36,18 @@ if (!defined('ABSPATH')) {
36
  exit;
37
  }
38
 
39
- define("WOO_FEED_VERSION", "3.1.27");
 
 
 
 
 
 
 
 
 
 
 
40
 
41
  /**
42
  * The core plugin class that is used to define internationalization,
16
  * Plugin Name: WooCommerce Product Feed
17
  * Plugin URI: https://webappick.com/
18
  * Description: This plugin generate WooCommerce product feed for Shopping Engines like Google Shopping,Facebook Product Feed,eBay,Amazon,Idealo and many more..
19
+ * Version: 3.1.29
20
  * Author: WebAppick
21
  * Author URI: https://webappick.com/
22
  * License: GPL v2
36
  exit;
37
  }
38
 
39
+ define( 'WOO_FEED_VERSION', '3.1.29' );
40
+
41
+ /**
42
+ * Plugin Path with trailing slash
43
+ * @var string
44
+ */
45
+ define( 'WOO_FEED_Path', plugin_dir_path( __FILE__ ) );
46
+ /**
47
+ * Admin File Path with trailing slash
48
+ * @var string
49
+ */
50
+ define( 'WOO_FEED_Admin_Path', WOO_FEED_Path . 'admin/' );
51
 
52
  /**
53
  * The core plugin class that is used to define internationalization,