Advanced Custom Fields - Version 5.6.7

Version Description

  • Fixed an assortment of bugs found in 5.6.6
Download this release

Release Info

Developer elliotcondon
Plugin Icon 128x128 Advanced Custom Fields
Version 5.6.7
Comparing to
See all releases

Code changes from version 5.6.5 to 5.6.7

Files changed (69) hide show
  1. acf.php +3 -3
  2. assets/_build/_compiler/acf-field-group.js +0 -1
  3. assets/_build/_compiler/acf-field-group.min.js +0 -1
  4. assets/_build/_compiler/acf-input.js +0 -27
  5. assets/_build/_compiler/acf-input.min.js +0 -27
  6. assets/_build/css/field-group.less +0 -559
  7. assets/_build/css/global.less +0 -1779
  8. assets/_build/css/input.less +0 -3301
  9. assets/_build/css/vars.less +0 -42
  10. assets/_build/js/acf-ajax.js +0 -376
  11. assets/_build/js/acf-button-group.js +0 -58
  12. assets/_build/js/acf-checkbox.js +0 -116
  13. assets/_build/js/acf-color-picker.js +0 -64
  14. assets/_build/js/acf-conditional-logic.js +0 -535
  15. assets/_build/js/acf-date-picker.js +0 -231
  16. assets/_build/js/acf-date-time-picker.js +0 -185
  17. assets/_build/js/acf-file.js +0 -469
  18. assets/_build/js/acf-google-map.js +0 -763
  19. assets/_build/js/acf-image.js +0 -389
  20. assets/_build/js/acf-link.js +0 -289
  21. assets/_build/js/acf-media.js +0 -1112
  22. assets/_build/js/acf-oembed.js +0 -259
  23. assets/_build/js/acf-radio.js +0 -110
  24. assets/_build/js/acf-range.js +0 -50
  25. assets/_build/js/acf-relationship.js +0 -503
  26. assets/_build/js/acf-select.js +0 -94
  27. assets/_build/js/acf-select2.js +0 -1441
  28. assets/_build/js/acf-tab.js +0 -439
  29. assets/_build/js/acf-taxonomy.js +0 -408
  30. assets/_build/js/acf-time-picker.js +0 -113
  31. assets/_build/js/acf-true-false.js +0 -231
  32. assets/_build/js/acf-url.js +0 -69
  33. assets/_build/js/acf-validation.js +0 -1019
  34. assets/_build/js/acf-wysiwyg.js +0 -552
  35. assets/_build/js/acf.js +0 -3933
  36. assets/_build/js/event-manager.js +0 -252
  37. assets/_build/js/field-group.js +0 -3177
  38. assets/css/acf-field-group.css +33 -27
  39. assets/css/acf-input.css +472 -292
  40. assets/images/sprite.psd +0 -0
  41. assets/images/sprite@2x.psd +0 -0
  42. assets/js/acf-field-group.js +4 -1
  43. assets/js/acf-field-group.min.js +1 -1
  44. assets/js/acf-input.js +883 -484
  45. assets/js/acf-input.min.js +3 -3
  46. includes/api/api-helpers.php +7 -6
  47. includes/api/api-input.php +2 -1
  48. includes/fields/class-acf-field-accordion.php +167 -0
  49. includes/fields/class-acf-field-tab.php +13 -12
  50. includes/forms/form-attachment.php +0 -38
  51. includes/forms/form-comment.php +3 -0
  52. includes/forms/form-front.php +4 -0
  53. includes/forms/form-nav-menu.php +2 -2
  54. includes/forms/form-taxonomy.php +15 -15
  55. includes/forms/form-user.php +10 -8
  56. includes/forms/form-widget.php +25 -26
  57. includes/walkers/class-acf-walker-nav-menu-edit.php +11 -1
  58. lang/acf-ar.mo +0 -0
  59. lang/acf-ar.po +8 -11
  60. lang/acf-de_CH.mo +0 -0
  61. lang/acf-de_CH.po +773 -740
  62. lang/acf-de_DE.mo +0 -0
  63. lang/acf-de_DE.po +6 -6
  64. lang/acf-de_DE_formal.mo +0 -0
  65. lang/acf-de_DE_formal.po +2 -2
  66. lang/acf-fa_IR.mo +0 -0
  67. lang/acf-fa_IR.po +1960 -1326
  68. lang/acf-it_IT.mo +0 -0
  69. lang/acf-it_IT.po +41 -31
acf.php CHANGED
@@ -3,7 +3,7 @@
3
  Plugin Name: Advanced Custom Fields
4
  Plugin URI: https://www.advancedcustomfields.com/
5
  Description: Customise WordPress with powerful, professional and intuitive fields.
6
- Version: 5.6.5
7
  Author: Elliot Condon
8
  Author URI: http://www.elliotcondon.com/
9
  Copyright: Elliot Condon
@@ -18,7 +18,7 @@ if( ! class_exists('acf') ) :
18
  class acf {
19
 
20
  /** @var string The plugin version number */
21
- var $version = '5.6.5';
22
 
23
 
24
  /** @var array The plugin settings array */
@@ -274,7 +274,7 @@ class acf {
274
  acf_include('includes/fields/class-acf-field-color_picker.php');
275
 
276
  acf_include('includes/fields/class-acf-field-message.php');
277
- //acf_include('includes/fields/class-acf-field-separator.php');
278
  acf_include('includes/fields/class-acf-field-tab.php');
279
  acf_include('includes/fields/class-acf-field-group.php');
280
  do_action('acf/include_field_types', $major);
3
  Plugin Name: Advanced Custom Fields
4
  Plugin URI: https://www.advancedcustomfields.com/
5
  Description: Customise WordPress with powerful, professional and intuitive fields.
6
+ Version: 5.6.7
7
  Author: Elliot Condon
8
  Author URI: http://www.elliotcondon.com/
9
  Copyright: Elliot Condon
18
  class acf {
19
 
20
  /** @var string The plugin version number */
21
+ var $version = '5.6.7';
22
 
23
 
24
  /** @var array The plugin settings array */
274
  acf_include('includes/fields/class-acf-field-color_picker.php');
275
 
276
  acf_include('includes/fields/class-acf-field-message.php');
277
+ acf_include('includes/fields/class-acf-field-accordion.php');
278
  acf_include('includes/fields/class-acf-field-tab.php');
279
  acf_include('includes/fields/class-acf-field-group.php');
280
  do_action('acf/include_field_types', $major);
assets/_build/_compiler/acf-field-group.js DELETED
@@ -1 +0,0 @@
1
- // @codekit-prepend "../js/field-group.js";
 
assets/_build/_compiler/acf-field-group.min.js DELETED
@@ -1 +0,0 @@
1
- // @codekit-prepend "../js/field-group.js";
 
assets/_build/_compiler/acf-input.js DELETED
@@ -1,27 +0,0 @@
1
- // @codekit-prepend "../js/event-manager.js";
2
- // @codekit-prepend "../js/acf.js";
3
- // @codekit-prepend "../js/acf-ajax.js";
4
- // @codekit-prepend "../js/acf-button-group.js";
5
- // @codekit-prepend "../js/acf-checkbox.js";
6
- // @codekit-prepend "../js/acf-color-picker.js";
7
- // @codekit-prepend "../js/acf-conditional-logic.js";
8
- // @codekit-prepend "../js/acf-date-picker.js";
9
- // @codekit-prepend "../js/acf-date-time-picker.js";
10
- // @codekit-prepend "../js/acf-file.js";
11
- // @codekit-prepend "../js/acf-google-map.js";
12
- // @codekit-prepend "../js/acf-image.js";
13
- // @codekit-prepend "../js/acf-link.js";
14
- // @codekit-prepend "../js/acf-media.js";
15
- // @codekit-prepend "../js/acf-oembed.js";
16
- // @codekit-prepend "../js/acf-radio.js";
17
- // @codekit-prepend "../js/acf-range.js";
18
- // @codekit-prepend "../js/acf-relationship.js";
19
- // @codekit-prepend "../js/acf-select2.js";
20
- // @codekit-prepend "../js/acf-select.js";
21
- // @codekit-prepend "../js/acf-tab.js";
22
- // @codekit-prepend "../js/acf-time-picker.js";
23
- // @codekit-prepend "../js/acf-true-false.js";
24
- // @codekit-prepend "../js/acf-taxonomy.js";
25
- // @codekit-prepend "../js/acf-url.js";
26
- // @codekit-prepend "../js/acf-validation.js";
27
- // @codekit-prepend "../js/acf-wysiwyg.js";
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/_build/_compiler/acf-input.min.js DELETED
@@ -1,27 +0,0 @@
1
- // @codekit-prepend "../js/event-manager.js";
2
- // @codekit-prepend "../js/acf.js";
3
- // @codekit-prepend "../js/acf-ajax.js";
4
- // @codekit-prepend "../js/acf-button-group.js";
5
- // @codekit-prepend "../js/acf-checkbox.js";
6
- // @codekit-prepend "../js/acf-color-picker.js";
7
- // @codekit-prepend "../js/acf-conditional-logic.js";
8
- // @codekit-prepend "../js/acf-date-picker.js";
9
- // @codekit-prepend "../js/acf-date-time-picker.js";
10
- // @codekit-prepend "../js/acf-file.js";
11
- // @codekit-prepend "../js/acf-google-map.js";
12
- // @codekit-prepend "../js/acf-image.js";
13
- // @codekit-prepend "../js/acf-link.js";
14
- // @codekit-prepend "../js/acf-media.js";
15
- // @codekit-prepend "../js/acf-oembed.js";
16
- // @codekit-prepend "../js/acf-radio.js";
17
- // @codekit-prepend "../js/acf-range.js";
18
- // @codekit-prepend "../js/acf-relationship.js";
19
- // @codekit-prepend "../js/acf-select2.js";
20
- // @codekit-prepend "../js/acf-select.js";
21
- // @codekit-prepend "../js/acf-tab.js";
22
- // @codekit-prepend "../js/acf-time-picker.js";
23
- // @codekit-prepend "../js/acf-true-false.js";
24
- // @codekit-prepend "../js/acf-taxonomy.js";
25
- // @codekit-prepend "../js/acf-url.js";
26
- // @codekit-prepend "../js/acf-validation.js";
27
- // @codekit-prepend "../js/acf-wysiwyg.js";
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/_build/css/field-group.less DELETED
@@ -1,559 +0,0 @@
1
- @import '../css/vars.less';
2
-
3
-
4
- /*---------------------------------------------------------------------------------------------
5
- *
6
- * Global
7
- *
8
- *---------------------------------------------------------------------------------------------*/
9
-
10
- #adv-settings .show-field-keys label {
11
- padding: 0 5px;
12
- }
13
-
14
-
15
- #acf-field-group-fields > .inside,
16
- #acf-field-group-locations > .inside,
17
- #acf-field-group-options > .inside {
18
- padding: 0;
19
- margin: 0;
20
- }
21
-
22
- .acf-field {
23
-
24
- p.description {
25
- font-style: normal;
26
- font-size: 12px;
27
- color: #777777;
28
- }
29
-
30
- }
31
-
32
-
33
- /*---------------------------------------------------------------------------------------------
34
- *
35
- * Postbox: Publish
36
- *
37
- *---------------------------------------------------------------------------------------------*/
38
-
39
- #minor-publishing-actions,
40
- #misc-publishing-actions #visibility {
41
- display: none;
42
- }
43
-
44
- #minor-publishing {
45
- border-bottom: 0 none;
46
- }
47
-
48
- #misc-pub-section {
49
- border-bottom: 0 none;
50
- }
51
-
52
- #misc-publishing-actions .misc-pub-section {
53
- border-bottom-color: #F5F5F5;
54
- }
55
-
56
-
57
- /*---------------------------------------------------------------------------------------------
58
- *
59
- * Postbox: Fields
60
- *
61
- *---------------------------------------------------------------------------------------------*/
62
-
63
- #acf-field-group-fields {
64
- border: 0 none;
65
- box-shadow: none;
66
-
67
-
68
- /* metabox */
69
- > .handlediv,
70
- > .hndle {
71
- display: none;
72
- }
73
-
74
-
75
- /* links */
76
- a {
77
- text-decoration: none;
78
-
79
- &:active,
80
- &:focus {
81
- outline: none;
82
- box-shadow: none;
83
- }
84
- }
85
-
86
-
87
- /* no fields */
88
- .no-fields-message {
89
- padding: 15px 15px;
90
- background: #fff;
91
- }
92
-
93
-
94
- /* table header */
95
- .li-field-order { width: 20%; }
96
- .li-field-label { width: 30%; }
97
- .li-field-name { width: 25%; }
98
- .li-field-type { width: 25%; }
99
- .li-field-key { display: none; }
100
-
101
-
102
- /* show keys */
103
- &.show-field-keys {
104
-
105
- .li-field-label,
106
- .li-field-name,
107
- .li-field-type,
108
- .li-field-key { width: 20%; }
109
- .li-field-key { display: block; }
110
- }
111
-
112
-
113
- /* fields */
114
- .acf-field-list-wrap {
115
- border: #DFDFDF solid 1px;
116
- }
117
-
118
- .acf-field-list {
119
- background: #F9F9F9;
120
- margin-top: -1px;
121
- }
122
-
123
- }
124
-
125
-
126
- /* field object */
127
- .acf-field-object {
128
- border-top: #F0F0F0 solid 1px;
129
- background: #fff;
130
-
131
- /* sortable */
132
- &.ui-sortable-helper {
133
- border-top-color: #fff;
134
- box-shadow: 0 0 0 1px #DFDFDF, 0 1px 4px rgba(0,0,0,0.1);
135
- }
136
-
137
- &.ui-sortable-placeholder {
138
- box-shadow: 0 -1px 0 0 #DFDFDF;
139
- visibility: visible !important;
140
- background: #F9F9F9;
141
- border-top-color: transparent;
142
- }
143
-
144
-
145
- /* meta */
146
- > .meta {
147
- display: none;
148
- }
149
-
150
-
151
- /* handle */
152
- > .handle {
153
-
154
- a {
155
- -webkit-transition: none;
156
- -moz-transition: none;
157
- -o-transition: none;
158
- transition: none;
159
- }
160
-
161
- li {
162
- padding-top: 10px;
163
- padding-bottom: 10px;
164
- word-wrap: break-word;
165
- }
166
-
167
- .acf-icon {
168
- margin: 1px 0 0;
169
- cursor: move;
170
- background: transparent;
171
- float: left;
172
-
173
- height: 28px;
174
- line-height: 28px;
175
- width: 28px;
176
- font-size: 13px;
177
- color: #444;
178
- position: relative;
179
- z-index: 1;
180
- }
181
-
182
- strong {
183
- display: block;
184
- padding-bottom: 6px;
185
- font-size: 14px;
186
- line-height: 14px;
187
- min-height: 14px;
188
- }
189
-
190
- .row-options {
191
- visibility: hidden;
192
-
193
- a {
194
- margin-right: 4px;
195
- }
196
-
197
- a.delete-field {
198
- color: #a00;
199
-
200
- &:hover { color: #f00; }
201
- }
202
- }
203
-
204
- }
205
-
206
-
207
- /* open */
208
- &.open {
209
-
210
- + .acf-field-object {
211
- border-top-color: #E1E1E1;
212
- }
213
-
214
- > .handle {
215
- background: @acf_blue;
216
- border: darken(@acf_blue, 2%) solid 1px;
217
- text-shadow: #268FBB 0 1px 0;
218
- color: #fff;
219
- position: relative;
220
- margin: -1px -1px 0 -1px;
221
-
222
- a {
223
- color: #fff !important;
224
-
225
- &:hover {
226
- text-decoration: underline !important;
227
- }
228
- }
229
-
230
- .acf-icon {
231
- border-color: #fff;
232
- color: #fff;
233
- }
234
-
235
- .acf-required {
236
- color: #fff;
237
- }
238
- }
239
- }
240
-
241
-
242
- /* hover */
243
- &:hover {
244
-
245
- > .handle {
246
-
247
- .row-options {
248
- visibility: visible;
249
- }
250
-
251
- }
252
- }
253
-
254
-
255
- /* settings */
256
- > .settings {
257
- display: none;
258
- width: 100%;
259
-
260
- > .acf-table {
261
- border: none;
262
- }
263
- }
264
-
265
-
266
- /* conditional logic */
267
- .rule-groups {
268
- margin-top: 20px;
269
- }
270
-
271
- }
272
-
273
-
274
- /*---------------------------------------------------------------------------------------------
275
- *
276
- * Postbox: Locations
277
- *
278
- *---------------------------------------------------------------------------------------------*/
279
-
280
- .rule-groups h4 {
281
- margin: 15px 0 5px;
282
- }
283
-
284
- .rule-groups .rule-group {
285
- margin: 0 0 5px;
286
- }
287
-
288
- .rule-groups .rule-group h4 {
289
- margin: 0 0 3px;
290
- }
291
-
292
- .rule-groups .rule-group td.param {
293
- width: 35%;
294
- }
295
-
296
- .rule-groups .rule-group td.operator {
297
- width: 20%;
298
- }
299
-
300
- .rule-groups .rule-group td.add {
301
- width: 40px;
302
- }
303
-
304
- .rule-groups .rule-group td.remove {
305
- width: 28px;
306
- vertical-align: middle;
307
- visibility: hidden;
308
- }
309
-
310
- .rule-groups .rule-group tr:hover td.remove {
311
- visibility: visible;
312
- }
313
-
314
-
315
- /* Don't allow user to delete the first field group */
316
- .rule-groups .rule-group:first-child tr:first-child td.remove {
317
- visibility: hidden !important;
318
- }
319
-
320
-
321
- /*---------------------------------------------------------------------------------------------
322
- *
323
- * Options
324
- *
325
- *---------------------------------------------------------------------------------------------*/
326
-
327
- #acf-field-group-options tr[data-name="hide_on_screen"] li {
328
- float: left;
329
- width: 33%;
330
- }
331
-
332
- @media (max-width: 1100px) {
333
-
334
- #acf-field-group-options tr[data-name="hide_on_screen"] li {
335
- width: 50%;
336
- }
337
-
338
- }
339
-
340
-
341
- /*---------------------------------------------------------------------------------------------
342
- *
343
- * Conditional Logic
344
- *
345
- *---------------------------------------------------------------------------------------------*/
346
-
347
- table.conditional-logic-rules {
348
- background: transparent;
349
- border: 0 none;
350
- border-radius: 0;
351
- }
352
-
353
- table.conditional-logic-rules tbody td {
354
- background: transparent;
355
- border: 0 none !important;
356
- padding: 5px 2px !important;
357
- }
358
-
359
-
360
- /*---------------------------------------------------------------------------------------------
361
- *
362
- * Field: Tab
363
- *
364
- *---------------------------------------------------------------------------------------------*/
365
-
366
- .acf-field-object-tab tr[data-name="name"],
367
- .acf-field-object-tab tr[data-name="instructions"],
368
- .acf-field-object-tab tr[data-name="required"],
369
- .acf-field-object-tab tr[data-name="warning"],
370
- .acf-field-object-tab tr[data-name="wrapper"] {
371
- display: none !important;
372
- }
373
-
374
- .acf-field-object-tab .li-field-name {
375
- visibility: hidden;
376
- }
377
-
378
-
379
- .acf-field-object-tab .acf-error-message {
380
- display: none;
381
- }
382
-
383
- .acf-field-list[data-layout="table"] .acf-field-object-tab .acf-error-message {
384
- display: block;
385
- }
386
-
387
- .acf-field-object + .acf-field-object-tab {
388
- margin-top: 6px;
389
- }
390
-
391
- .acf-field-object + .acf-field-object-tab:before {
392
- display: block;
393
- content: "";
394
- height: 1px;
395
- background: #F0F0F0;
396
- margin-top: -7px;
397
- width: 100%;
398
- position: absolute;
399
- }
400
-
401
- .acf-field-object + .acf-field-object-tab.ui-sortable-placeholder {
402
- margin-top: 0;
403
- padding-top: 6px;
404
- }
405
-
406
- .acf-field-object-tab.ui-sortable-helper:before,
407
- .ui-sortable-placeholder + .acf-field-object-tab:before {
408
- display: none;
409
- }
410
-
411
-
412
- /*---------------------------------------------------------------------------------------------
413
- *
414
- * Field: Message
415
- *
416
- *---------------------------------------------------------------------------------------------*/
417
-
418
- .acf-field-object-message tr[data-name="name"],
419
- .acf-field-object-message tr[data-name="instructions"],
420
- .acf-field-object-message tr[data-name="required"] {
421
- display: none !important;
422
- }
423
-
424
- .acf-field-object-message .li-field-name {
425
- visibility: hidden;
426
- }
427
-
428
- .acf-field-object-message textarea {
429
- height: 175px !important;
430
- }
431
-
432
-
433
- /*---------------------------------------------------------------------------------------------
434
- *
435
- * Field: Separator
436
- *
437
- *---------------------------------------------------------------------------------------------*/
438
-
439
- .acf-field-object-separator tr[data-name="name"],
440
- .acf-field-object-separator tr[data-name="instructions"],
441
- .acf-field-object-separator tr[data-name="required"] {
442
- display: none !important;
443
- }
444
-
445
-
446
- /*---------------------------------------------------------------------------------------------
447
- *
448
- * Field: Date Picker
449
- *
450
- *---------------------------------------------------------------------------------------------*/
451
-
452
- .acf-field-object-date-picker,
453
- .acf-field-object-time-picker,
454
- .acf-field-object-date-time-picker {
455
-
456
- .acf-radio-list {
457
-
458
- li {
459
- line-height: 25px;
460
- }
461
-
462
- span {
463
- display: inline-block;
464
- min-width: 10em;
465
- }
466
-
467
- input[type="text"] {
468
- width: 100px;
469
- }
470
- }
471
-
472
- }
473
-
474
- .acf-field-object-date-time-picker {
475
-
476
- .acf-radio-list {
477
-
478
- span {
479
- min-width: 15em;
480
- }
481
-
482
- input[type="text"] {
483
- width: 200px;
484
- }
485
- }
486
-
487
- }
488
-
489
-
490
- /*--------------------------------------------------------------------------------------------
491
- *
492
- * Slug
493
- *
494
- *--------------------------------------------------------------------------------------------*/
495
-
496
- #slugdiv {
497
-
498
- .inside {
499
- padding: 12px;
500
- margin: 0;
501
- }
502
-
503
- input[type="text"] {
504
- width: 100%;
505
- height: 28px;
506
- font-size: 14px;
507
- }
508
- }
509
-
510
-
511
- /*--------------------------------------------------------------------------------------------
512
- *
513
- * RTL
514
- *
515
- *--------------------------------------------------------------------------------------------*/
516
-
517
- html[dir="rtl"] .acf-field-object.open > .handle {
518
- margin: -1px -1px 0;
519
- }
520
-
521
- html[dir="rtl"] .acf-field-object.open > .handle .acf-icon {
522
- float: right;
523
- }
524
-
525
- html[dir="rtl"] .acf-field-object.open > .handle .li-field-order {
526
- padding-left: 0 !important;
527
- padding-right: 15px !important;
528
- }
529
-
530
-
531
- /*---------------------------------------------------------------------------------------------
532
- *
533
- * Device
534
- *
535
- *---------------------------------------------------------------------------------------------*/
536
-
537
- @media only screen and (max-width: 850px) {
538
-
539
- tr.acf-field,
540
- td.acf-label,
541
- td.acf-input {
542
- display: block !important;
543
- width: auto !important;
544
- border: 0 none !important;
545
- }
546
-
547
- tr.acf-field {
548
- border-top: #ededed solid 1px !important;
549
- margin-bottom: 0 !important;
550
- }
551
-
552
- td.acf-label {
553
- background: transparent !important;
554
- padding-bottom: 0 !important;
555
-
556
- }
557
-
558
- }
559
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/_build/css/global.less DELETED
@@ -1,1779 +0,0 @@
1
- @import '../css/vars.less';
2
-
3
-
4
- /*--------------------------------------------------------------------------------------------
5
- *
6
- * General
7
- *
8
- *--------------------------------------------------------------------------------------------*/
9
-
10
- /* box-sizing */
11
- /*
12
- [class^="acf-"] {
13
- -webkit-box-sizing: border-box;
14
- -moz-box-sizing: border-box;
15
- box-sizing: border-box;
16
- }
17
- */
18
-
19
-
20
- /* Horizontal List */
21
- .acf-hl { padding: 0; margin: 0; list-style: none; display: block; position: relative; }
22
- .acf-hl > li { float: left; display: block; margin: 0; padding: 0; }
23
- .acf-hl > li.acf-fr { float: right; }
24
-
25
-
26
- /* Horizontal List: Clearfix */
27
- .acf-hl:before, .acf-hl:after,
28
- .acf-bl:before, .acf-bl:after,
29
- .acf-cf:before, .acf-cf:after {
30
- content: "";
31
- display: block;
32
- line-height: 0;
33
- }
34
- .acf-hl:after,
35
- .acf-bl:after,
36
- .acf-cf:after {
37
- clear: both;
38
- }
39
-
40
-
41
- /* Block List */
42
- .acf-bl { padding: 0; margin: 0; list-style: none; display: block; position: relative; }
43
- .acf-bl > li { display: block; margin: 0; padding: 0; float: none; }
44
-
45
-
46
- /* Full width */
47
- img.acf-fw {
48
- width: 100%;
49
- }
50
-
51
-
52
- /* Browser */
53
- .acf-visible { display: block; visibility: visible; }
54
- .acf-hidden { display: none; visibility: visible; }
55
-
56
-
57
- /* Float */
58
- .acf-fl { float: left; }
59
- .acf-fr { float: right; }
60
- .acf-fn { float: none; }
61
-
62
-
63
- /* Align */
64
- .acf-al { text-align: left; }
65
- .acf-ar { text-align: right; }
66
- .acf-ac { text-align: center; }
67
-
68
-
69
- /* loading */
70
- .acf-loading,
71
- .acf-spinner {
72
- display: inline-block;
73
- height: 20px;
74
- width: 20px;
75
- vertical-align: text-top;
76
- background: transparent url(../images/spinner.gif) no-repeat 50% 50%;
77
- }
78
-
79
-
80
- /* spinner */
81
- .acf-spinner {
82
- display: none;
83
- }
84
-
85
- .acf-spinner.is-active {
86
- display: inline-block;
87
- }
88
-
89
-
90
- /* WP < 4.2 */
91
- .spinner.is-active {
92
- display: inline-block;
93
- }
94
-
95
-
96
- /* required */
97
- .acf-required {
98
- color: #f00;
99
- }
100
-
101
-
102
- /* show on hover */
103
- .acf-soh .acf-soh-target {
104
- -webkit-transition: opacity 0.25s 0s ease-in-out, visibility 0s linear 0.25s;
105
- -moz-transition: opacity 0.25s 0s ease-in-out, visibility 0s linear 0.25s;
106
- -o-transition: opacity 0.25s 0s ease-in-out, visibility 0s linear 0.25s;
107
- transition: opacity 0.25s 0s ease-in-out, visibility 0s linear 0.25s;
108
-
109
- visibility: hidden;
110
- opacity: 0;
111
- }
112
-
113
- .acf-soh:hover .acf-soh-target {
114
- -webkit-transition-delay:0s;
115
- -moz-transition-delay:0s;
116
- -o-transition-delay:0s;
117
- transition-delay:0s;
118
-
119
- visibility: visible;
120
- opacity: 1;
121
- }
122
-
123
-
124
- /* show if value */
125
- .show-if-value { display: none; }
126
- .hide-if-value { display: block; }
127
-
128
- .has-value .show-if-value { display: block; }
129
- .has-value .hide-if-value { display: none; }
130
-
131
-
132
- /* select2 WP animation fix */
133
- .select2-search-choice-close {
134
- -webkit-transition: none;
135
- -moz-transition: none;
136
- -o-transition: none;
137
- transition: none;
138
- }
139
-
140
-
141
- /*---------------------------------------------------------------------------------------------
142
- *
143
- * tooltip
144
- *
145
- *---------------------------------------------------------------------------------------------*/
146
-
147
- /* tooltip */
148
- .acf-tooltip {
149
- background: #2F353E;
150
- border-radius: 5px;
151
- color: #fff;
152
- padding: 5px 10px;
153
- position: absolute;
154
- font-size: 12px;
155
- z-index: 900000;
156
-
157
-
158
- /* tip */
159
- &:before {
160
- border: solid;
161
- border-color: transparent;
162
- border-width: 6px;
163
- content: "";
164
- position: absolute;
165
- }
166
-
167
-
168
- /* positions */
169
- &.top {
170
- margin-top: -8px;
171
-
172
- &:before {
173
- top: 100%;
174
- left: 50%;
175
- margin-left: -6px;
176
- border-top-color: #2F353E;
177
- border-bottom-width: 0;
178
- }
179
- }
180
-
181
- &.right {
182
- margin-right: -8px;
183
-
184
- &:before {
185
- top: 50%;
186
- margin-top: -6px;
187
- right: 100%;
188
- border-right-color: #2F353E;
189
- border-left-width: 0;
190
- }
191
- }
192
-
193
- &.bottom {
194
- margin-bottom: -8px;
195
-
196
- &:before {
197
- bottom: 100%;
198
- left: 50%;
199
- margin-left: -6px;
200
- border-bottom-color: #2F353E;
201
- border-top-width: 0;
202
- }
203
- }
204
-
205
- &.left {
206
- margin-left: -8px;
207
-
208
- &:before {
209
- top: 50%;
210
- margin-top: -6px;
211
- left: 100%;
212
- border-left-color: #2F353E;
213
- border-right-width: 0;
214
- }
215
- }
216
-
217
- }
218
-
219
-
220
- /* confirm */
221
- .acf-tooltip.-confirm {
222
- z-index: 900001; // +1 higher than .acf-tooltip
223
-
224
- a {
225
- text-decoration: none;
226
- color: #9ea3a8;
227
-
228
- &:hover {
229
- text-decoration: underline;
230
- }
231
-
232
- &.-red {
233
- color: #F55E4F;
234
- }
235
- }
236
-
237
-
238
- .acf-confirm-y { }
239
- .acf-confirm-n { }
240
- }
241
-
242
-
243
- /*---------------------------------------------------------------------------------------------
244
- *
245
- * callout
246
- *
247
- *---------------------------------------------------------------------------------------------*/
248
-
249
- .acf-callout {
250
- margin: 20px 0;
251
- padding: 20px;
252
-
253
- background-color: #FCF8F2;
254
- border-left: 3px solid #F0AD4E;
255
- }
256
-
257
- .acf-callout h4 {
258
- color: #F0AD4E;
259
- margin: 0 !important;
260
- }
261
-
262
- .acf-callout p {
263
- margin-bottom: 0;
264
- }
265
-
266
- .acf-callout.danger {
267
- border-color: #D9534F;
268
- background-color: #FDF7F7;
269
- }
270
-
271
- .acf-callout.danger h4 {
272
- color: #D9534F;
273
- }
274
-
275
- .acf-callout.success {
276
- background-color: #f4faf6;
277
- border-color: #bcf1c5;
278
- }
279
-
280
- .acf-callout.success h4 {
281
- color: #3aad60;
282
- }
283
-
284
-
285
- /*--------------------------------------------------------------------------------------------
286
- *
287
- * acf-icon
288
- *
289
- *--------------------------------------------------------------------------------------------*/
290
-
291
- @font-face {
292
- font-family: 'acf';
293
- src: url('../font/acf.eot?57601716');
294
- src: url('../font/acf.eot?57601716#iefix') format('embedded-opentype'),
295
- url('../font/acf.woff2?57601716') format('woff2'),
296
- url('../font/acf.woff?57601716') format('woff'),
297
- url('../font/acf.ttf?57601716') format('truetype'),
298
- url('../font/acf.svg?57601716#acf') format('svg');
299
- font-weight: normal;
300
- font-style: normal;
301
- }
302
-
303
- .acf-icon:before {
304
- font-family: "acf";
305
- font-style: normal;
306
- font-weight: normal;
307
- speak: none;
308
-
309
- display: inline-block;
310
- text-decoration: inherit;
311
- width: 1em;
312
- // margin-right: .2em;
313
- text-align: center;
314
- /* opacity: .8; */
315
-
316
- /* For safety - reset parent styles, that can break glyph codes*/
317
- font-variant: normal;
318
- text-transform: none;
319
-
320
- /* fix buttons height, for twitter bootstrap */
321
- line-height: 1em;
322
-
323
- /* Font smoothing. That was taken from TWBS */
324
- -webkit-font-smoothing: antialiased;
325
- -moz-osx-font-smoothing: grayscale;
326
-
327
- /* more consistent vertical align */
328
- position: relative;
329
- }
330
-
331
- .acf-icon.-plus:before { content: '\e800'; } /* '' */
332
- .acf-icon.-minus:before { content: '\e801'; } /* '' */
333
- .acf-icon.-cancel:before { content: '\e802'; } /* '' */
334
- .acf-icon.-pencil:before { content: '\e803'; top: -1px; } /* '' */
335
- .acf-icon.-location:before { content: '\e804'; } /* '' */
336
- .acf-icon.-down:before { content: '\e805'; top: 1px; } /* '' */
337
- .acf-icon.-left:before { content: '\e806'; left: -1px; } /* '' */
338
- .acf-icon.-right:before { content: '\e807'; left: 1px; } /* '' */
339
- .acf-icon.-up:before { content: '\e808'; top: -1px; } /* '' */
340
- .acf-icon.-sync:before { content: '\e809'; } /* '' */
341
- .acf-icon.-globe:before { content: '\e80a'; } /* '' */
342
- .acf-icon.-picture:before { content: '\e80b'; } /* '' */
343
- .acf-icon.-check:before { content: '\e80c'; } /* '' */
344
- .acf-icon.-dot-3:before { content: '\e80d'; } /* '' */
345
- .acf-icon.-arrow-combo:before { content: '\e80e'; } /* '' */
346
- .acf-icon.-arrow-up:before { content: '\e810'; top: -1px; } /* '' */
347
- .acf-icon.-arrow-down:before { content: '\e80f'; top: 1px; } /* '' */
348
- .acf-icon.-search:before { content: '\e811'; } /* '' */
349
- .acf-icon.-link-ext:before { content: '\f08e'; } /* '' */
350
-
351
-
352
- /* collapse */
353
- .acf-icon.-collapse:before { content: '\e810'; top: -1px; } /* arrow-up */
354
- .-collapsed .acf-icon.-collapse:before { content: '\e80f'; top: 1px; } /* arrow-down */
355
-
356
-
357
- /* default */
358
- .acf-icon {
359
- display: inline-block;
360
- height: 26px;
361
- width: 26px;
362
- border: transparent solid 1px;
363
- border-radius: 100%;
364
-
365
- font-size: 16px;
366
- line-height: 26px;
367
- text-align: center;
368
- text-decoration: none;
369
- vertical-align: top;
370
- }
371
-
372
-
373
- /* elements */
374
- span.acf-icon {
375
- color: #999;
376
- border-color: #BBB;
377
- background-color: #fff;
378
- }
379
-
380
-
381
- /* icon */
382
- a.acf-icon {
383
- color: #999;
384
- border-color: #BBB;
385
- background-color: #fff;
386
-
387
- position: relative;
388
- overflow: hidden;
389
- transition: none;
390
-
391
-
392
- /* clear */
393
- &.-clear {
394
- color: #444;
395
- background: transparent;
396
- border: none;
397
- }
398
-
399
-
400
- /* light*/
401
- &.light {
402
- border: none;
403
- padding: 1px;
404
- background: #F5F5F5;
405
- color: #72777c;
406
- }
407
-
408
-
409
- /* states */
410
- &:hover {
411
- border-color: transparent;
412
- background: @acf_blue;
413
- color: #fff;
414
- }
415
-
416
- &:active {
417
- color: #fff;
418
- background-color: darken(@acf_blue, 5%);
419
- }
420
-
421
-
422
- /* remove WP outline box-shadow */
423
- &:active,
424
- &:focus {
425
- outline: none;
426
- box-shadow: none;
427
- }
428
-
429
-
430
- /* red */
431
- &.-minus,
432
- &.-cancel {
433
-
434
- &:hover {
435
- background-color: #F55E4F;
436
- }
437
-
438
- &:active {
439
- background-color: darken(#F55E4F, 5%);
440
- }
441
-
442
- }
443
-
444
- }
445
-
446
-
447
- /* minor tweaks */
448
- .acf-icon.-pencil {
449
- font-size: 15px;
450
- }
451
-
452
- .acf-icon.-location {
453
- font-size: 18px;
454
- }
455
-
456
-
457
- /* sizes */
458
- .acf-icon.small,
459
- .acf-icon.-small {
460
- width: 18px;
461
- height: 18px;
462
- line-height: 18px;
463
- font-size: 14px;
464
- }
465
-
466
-
467
- /* dark */
468
- .acf-icon.dark {
469
- border-color: transparent;
470
- background: #23282D;
471
- color: #eee;
472
- }
473
-
474
- a.acf-icon.dark:hover {
475
- border-color: transparent;
476
- background: #191E23;
477
- color: #00b9eb;
478
- }
479
-
480
- a.acf-icon.-minus.dark:hover,
481
- a.acf-icon.-cancel.dark:hover {
482
- color: #D54E21;
483
- }
484
-
485
-
486
- /* grey */
487
- .acf-icon.grey {
488
- border-color: transparent;
489
- background: #b4b9be;
490
- color: #fff;
491
- }
492
-
493
- a.acf-icon.grey:hover {
494
- border-color: transparent;
495
- background: #00A0D2;
496
- color: #fff;
497
- }
498
-
499
- a.acf-icon.-minus.grey:hover,
500
- a.acf-icon.-cancel.grey:hover {
501
- background: #32373C;
502
- }
503
-
504
-
505
- /* red */
506
- .acf-icon.red {
507
- border-color: transparent;
508
- background-color: #F55E4F;
509
- color: #fff;
510
- }
511
-
512
-
513
- /* yellow */
514
- .acf-icon.yellow {
515
- border-color: transparent;
516
- background-color: #FDBC40;
517
- color: #fff;
518
- }
519
-
520
-
521
- /* logo */
522
- .acf-icon.logo {
523
- width: 150px;
524
- height: 150px;
525
- background: #5EE8BF;
526
-
527
- border: 0 none;
528
- position: absolute;
529
- right: 0;
530
- top: 0;
531
- }
532
-
533
-
534
- /*--------------------------------------------------------------------------------------------
535
- *
536
- * Sprite
537
- *
538
- *--------------------------------------------------------------------------------------------*/
539
-
540
- [class^="acf-sprite-"] {
541
- display: inline-block;
542
- width: 16px;
543
- height: 16px;
544
- background: url(../images/sprite.png);
545
- }
546
-
547
- .acf-icon [class^="acf-sprite-"] {
548
- margin: 1px auto 0;
549
- }
550
-
551
- .acf-sprite-logo {
552
- background-position: 0 0;
553
- width: 100px;
554
- height: 46px;
555
- }
556
-
557
- .acf-icon .acf-sprite-logo {
558
- margin-top: 52px;
559
- }
560
-
561
-
562
- /*--------------------------------------------------------------------------------------------
563
- *
564
- * acf-box
565
- *
566
- *--------------------------------------------------------------------------------------------*/
567
-
568
- .acf-box {
569
- background: #FFFFFF;
570
- border: 1px solid #E5E5E5;
571
- position: relative;
572
- box-shadow: 0 1px 1px rgba(0, 0, 0, 0.04);
573
-
574
- /* title */
575
- .title {
576
- border-bottom: 1px solid #EEEEEE;
577
- margin: 0;
578
- padding: 15px;
579
- background: #FFFFFF;
580
-
581
- h3 {
582
- font-size: 14px;
583
- line-height: 1em;
584
- margin: 0;
585
- padding: 0;
586
- }
587
- }
588
-
589
-
590
- .inner {
591
- padding: 15px;
592
- }
593
-
594
- h2 {
595
- color: #333333;
596
- font-size: 26px;
597
- line-height: 1.25em;
598
- margin: 0.25em 0 0.75em;
599
- padding: 0;
600
- }
601
-
602
- h3 {
603
- margin: 1.5em 0 0;
604
- }
605
-
606
- p {
607
- margin-top: 0.5em;
608
- }
609
-
610
- a {
611
- text-decoration: none;
612
- }
613
-
614
- i {
615
- &.dashicons-external {
616
- margin-top: -1px;
617
- }
618
- }
619
-
620
- /* footer */
621
- .footer {
622
- background: #fff;
623
- border-top: 1px solid #eee;
624
- padding: 12px;
625
- font-size: 13px;
626
- line-height: 1.5;
627
-
628
- p {
629
- margin: 0;
630
- }
631
- }
632
-
633
- }
634
-
635
-
636
- /* error */
637
- .acf-error-message {
638
- position: relative;
639
- display: block;
640
-
641
- background: #F55E4F;
642
- margin: 5px 0 15px;
643
- padding: 1px 12px;
644
- min-height: 0px;
645
- border-left: #dd4232 solid 4px;
646
- }
647
-
648
- .acf-error-message p {
649
- font-size: 13px !important;
650
- line-height: 1.5;
651
- margin: 0.5em 0;
652
- padding: 2px;
653
- text-shadow: none;
654
- color: #fff;
655
- }
656
-
657
- .acf-error-message .acf-icon {
658
- position: absolute;
659
- top: 9px;
660
- right: 12px;
661
- background-color: #dd4232;
662
- border-color: transparent;
663
- color: #fff;
664
- }
665
-
666
- /* important to include .-cancel to override .acf-icon.-cancel class */
667
- .acf-error-message .acf-icon.-cancel:hover {
668
- background-color: #191e23;
669
- color: #F55E4F;
670
- }
671
-
672
-
673
- /* success */
674
- .acf-error-message.-success {
675
- background-color: #46b450;
676
- border-color: #32973b;
677
- }
678
-
679
- .acf-error-message.-success .acf-icon {
680
- background-color: #32973b;
681
- }
682
-
683
- .acf-error-message.-success .acf-icon.-cancel:hover {
684
- background-color: #191e23;
685
- color: #46b450;
686
- }
687
-
688
-
689
- /*--------------------------------------------------------------------------------------------
690
- *
691
- * acf-table
692
- *
693
- *--------------------------------------------------------------------------------------------*/
694
-
695
- .acf-table {
696
- border: #DFDFDF solid 1px;
697
- background: #fff;
698
- border-spacing: 0;
699
- border-radius: 0;
700
- table-layout: auto;
701
- padding: 0;
702
- margin: 0;
703
- width: 100%;
704
- clear: both;
705
-
706
-
707
- /* defaults */
708
- > tbody > tr,
709
- > thead > tr {
710
-
711
- > th, > td {
712
- padding: 8px;
713
- vertical-align: top;
714
- background: #fff;
715
- text-align: left;
716
- border-style: solid;
717
- font-weight: normal;
718
- }
719
-
720
- > th {
721
- position: relative;
722
- color: #333333;
723
- }
724
-
725
- }
726
-
727
-
728
- /* thead */
729
- > thead {
730
-
731
- > tr {
732
-
733
- > th {
734
- border-color: #E1E1E1;
735
- border-width: 0 0 1px 1px;
736
-
737
- &:first-child {
738
- border-left-width: 0;
739
- }
740
- }
741
-
742
- }
743
-
744
- }
745
-
746
-
747
- /* tbody */
748
- > tbody {
749
-
750
- > tr {
751
- z-index: 1;
752
-
753
- > td {
754
- border-color: #EDEDED;
755
- border-width: 1px 0 0 1px;
756
-
757
- &:first-child {
758
- border-left-width: 0;
759
- }
760
- }
761
-
762
- &:first-child > td {
763
- border-top-width: 0;
764
- }
765
- }
766
-
767
- }
768
-
769
-
770
- /* -clear */
771
- &.-clear {
772
- border: 0 none;
773
-
774
- > tbody > tr,
775
- > thead > tr {
776
-
777
- > td, >th {
778
- border: 0 none;
779
- padding: 4px;
780
- }
781
- }
782
- }
783
- }
784
-
785
-
786
- /* remove tr */
787
- .acf-remove-element {
788
- -webkit-transition: all 0.25s ease-out;
789
- -moz-transition: all 0.25s ease-out;
790
- -o-transition: all 0.25s ease-out;
791
- transition: all 0.25s ease-out;
792
-
793
- transform: translate(50px, 0);
794
- opacity: 0;
795
- }
796
-
797
-
798
- /* fade-up */
799
- .acf-fade-up {
800
- -webkit-transition: all 0.25s ease-out;
801
- -moz-transition: all 0.25s ease-out;
802
- -o-transition: all 0.25s ease-out;
803
- transition: all 0.25s ease-out;
804
-
805
- transform: translate(0, -10px);
806
- opacity: 0;
807
- }
808
-
809
-
810
- /*---------------------------------------------------------------------------------------------
811
- *
812
- * wp-admin
813
- *
814
- *---------------------------------------------------------------------------------------------*/
815
-
816
- /* Menu */
817
- #adminmenu a[href="edit.php?post_type=acf-field-group&page=acf-settings-info"] {
818
- display: none;
819
- }
820
-
821
-
822
- /*---------------------------------------------------------------------------------------------
823
- *
824
- * Field Group List
825
- *
826
- *---------------------------------------------------------------------------------------------*/
827
-
828
- #icon-edit.icon32-posts-acf-field-group {
829
- background-position: -11px -5px;
830
- }
831
-
832
- #acf-field-group-wrap {
833
-
834
- .tablenav,
835
- p.search-box {
836
- display: none;
837
- }
838
-
839
- .wp-list-table {
840
-
841
- .column-acf-fg-description,
842
- .column-acf-fg-description:before {
843
- display: none !important; /* important needed to override mobile */
844
- }
845
-
846
- .column-acf-fg-count {
847
- width: 10%;
848
- }
849
-
850
- .column-acf-fg-status {
851
- width: 10%;
852
- }
853
-
854
- }
855
-
856
- .tablenav.bottom {
857
- display: block;
858
- }
859
-
860
- .acf-description {
861
- font-weight: normal;
862
- font-size: 13px;
863
- color: #999;
864
- margin-left: 7px;
865
- font-style: italic;
866
- }
867
-
868
- }
869
-
870
-
871
-
872
-
873
- /* subsubsub */
874
- #acf-field-group-wrap .subsubsub {
875
-
876
- /* WPML */
877
- margin-bottom: 3px;
878
-
879
- ul {
880
- margin: 0;
881
- }
882
-
883
- + .subsubsub {
884
- margin-top: 0;
885
- }
886
-
887
- /* search */
888
- a:focus {
889
- box-shadow: none;
890
- }
891
-
892
- }
893
-
894
-
895
-
896
- /* columns (replicate post edit layout) */
897
- .acf-columns-2 {
898
- margin-right: 300px;
899
- clear: both;
900
- .clearfix;
901
-
902
- /* rtl */
903
- html[dir="rtl"] & {
904
- margin-right: 0;
905
- margin-left: 300px;
906
- }
907
-
908
- .acf-column-1 {
909
- float: left;
910
- width: 100%;
911
-
912
- /* rtl */
913
- html[dir="rtl"] & {
914
- float: right;
915
- }
916
- }
917
-
918
- .acf-column-2 {
919
- float: right;
920
- margin-right: -300px;
921
- width: 280px;
922
-
923
- /* rtl */
924
- html[dir="rtl"] & {
925
- float: left;
926
- margin-right: 0;
927
- margin-left: -300px;
928
- }
929
- }
930
-
931
- }
932
-
933
-
934
- /* search */
935
- #acf-field-group-wrap .search-box {
936
-
937
- &:after {
938
- display: block;
939
- content: "";
940
- height: 5px;
941
- }
942
-
943
- }
944
-
945
- .acf-clear {
946
- clear: both;
947
- }
948
-
949
-
950
- /* mobile compatibilty */
951
- @media screen and (max-width: 782px) {
952
-
953
- #acf-field-group-wrap #the-list .acf-icon:after {
954
- content: attr(title);
955
- position: absolute;
956
- margin-left: 5px;
957
- font-size: 13px;
958
- line-height: 18px;
959
- font-style: normal;
960
- color: #444;
961
- }
962
-
963
- }
964
-
965
-
966
- /*---------------------------------------------------------------------------------------------
967
- *
968
- * Fake table
969
- *
970
- *---------------------------------------------------------------------------------------------*/
971
-
972
- .acf-thead,
973
- .acf-tbody,
974
- .acf-tfoot {
975
- width: 100%;
976
- padding: 0;
977
- margin: 0;
978
- }
979
-
980
- .acf-thead > li,
981
- .acf-tbody > li,
982
- .acf-tfoot > li {
983
- -webkit-box-sizing: border-box;
984
- -moz-box-sizing: border-box;
985
- box-sizing: border-box;
986
-
987
- padding: 8px 15px;
988
- font-size: 12px;
989
- line-height: 14px;
990
- }
991
-
992
-
993
- .acf-thead {
994
- background: #FFFFFF;
995
- border-bottom: #E1E1E1 solid 1px;
996
- }
997
-
998
- .acf-thead > li {
999
- font-size: 14px;
1000
- line-height: 1.4em;
1001
- font-family: "Open Sans",sans-serif;
1002
- color: #222222;
1003
- font-weight: bold;
1004
- }
1005
-
1006
- .acf-tfoot {
1007
- background: #f5f5f5;
1008
- border-top: #dddddd solid 1px;
1009
- }
1010
-
1011
- .acf-tfoot > li {
1012
- color: #7A9BBE;
1013
- font-size: 12px;
1014
- line-height: 27px;
1015
- }
1016
-
1017
- .acf-tfoot > li.comic-sans {
1018
- font-family: Comic Sans MS, sans-serif;
1019
- font-size: 11px;
1020
- }
1021
-
1022
-
1023
- /*--------------------------------------------------------------------------------------------
1024
- *
1025
- * Settings
1026
- *
1027
- *--------------------------------------------------------------------------------------------*/
1028
-
1029
- .acf-settings-wrap {
1030
-
1031
- }
1032
-
1033
- .acf-settings-wrap .acf-box {
1034
- margin: 20px 0;
1035
- }
1036
-
1037
- .acf-settings-wrap table {
1038
- margin: 0;
1039
- }
1040
-
1041
- .acf-settings-wrap table .button {
1042
- vertical-align: middle;
1043
- }
1044
-
1045
-
1046
- /*--------------------------------------------------------------------------------------------
1047
- *
1048
- * Settings: Add-ons
1049
- *
1050
- *--------------------------------------------------------------------------------------------*/
1051
-
1052
- .add-ons-list {
1053
- margin: 20px 0 0 -18px;
1054
- max-width: 960px;
1055
- }
1056
-
1057
- .add-ons-list .add-on {
1058
- width: 220px;
1059
- margin: 0 0 20px 18px;
1060
- float: left;
1061
- }
1062
-
1063
- .add-ons-list .add-on .inner {
1064
- min-height: 90px;
1065
- }
1066
-
1067
- .add-ons-list .add-on-acf-pro {
1068
- width: 940px;
1069
- }
1070
-
1071
- .add-ons-list .add-on .thumbnail {
1072
-
1073
- }
1074
-
1075
- .add-ons-list .add-on .thumbnail img {
1076
- display: block;
1077
- }
1078
-
1079
- .add-ons-list .add-on h3 a {
1080
- color: inherit;
1081
- text-decoration: none;
1082
- }
1083
-
1084
- .add-ons-list .add-on h3 {
1085
- margin: 0.5em 0;
1086
- }
1087
-
1088
-
1089
- /*--------------------------------------------------------------------------------------------
1090
- *
1091
- * acf-popup
1092
- *
1093
- *--------------------------------------------------------------------------------------------*/
1094
-
1095
- #acf-popup {
1096
- position: fixed;
1097
- z-index: 900000;
1098
- top: 0;
1099
- left: 0;
1100
- right: 0;
1101
- bottom: 0;
1102
-
1103
- }
1104
-
1105
- #acf-popup .bg {
1106
- position: absolute;
1107
- top: 0;
1108
- left: 0;
1109
- right: 0;
1110
- bottom: 0;
1111
- z-index: 0;
1112
- background: rgba(0,0,0,0.25);
1113
- }
1114
-
1115
- #acf-popup .acf-popup-box {
1116
- position: absolute;
1117
- z-index: 1;
1118
- width: 300px;
1119
- height: 300px;
1120
- left: 50%;
1121
- top: 50%;
1122
- margin: -150px 0 0 -150px;
1123
- border-color: #aaaaaa;
1124
- }
1125
-
1126
- #acf-popup .title .acf-icon {
1127
- position: absolute;
1128
- top: 10px;
1129
- right: 10px;
1130
- }
1131
-
1132
- html[dir="rtl"] #acf-popup .title .acf-icon {
1133
- right: auto;
1134
- left: 10px;
1135
- }
1136
-
1137
- #acf-popup .acf-popup-box .inner,
1138
- #acf-popup .acf-popup-box .loading {
1139
- position: absolute;
1140
- top: 44px;
1141
- left: 0;
1142
- right: 0;
1143
- bottom: 0;
1144
- z-index: 1;
1145
- }
1146
-
1147
- #acf-popup .acf-popup-box .loading {
1148
- background: rgba(0,0,0,0.1);
1149
- z-index: 2;
1150
- border-top: #DDDDDD solid 1px;
1151
- display: none;
1152
- }
1153
-
1154
- #acf-popup .acf-popup-box .loading .acf-loading {
1155
- position: absolute;
1156
- top: 50%;
1157
- left: 50%;
1158
- margin: -10px 0 0 -10px;
1159
- }
1160
-
1161
- #acf-popup .inner > *:first-child {
1162
- margin-top: 0;
1163
- }
1164
-
1165
-
1166
-
1167
- /* submit p */
1168
- .acf-submit {
1169
- margin-bottom: 0;
1170
- }
1171
-
1172
- .acf-submit span {
1173
- float: right;
1174
- color: #999;
1175
- }
1176
-
1177
- .acf-submit .acf-loading {
1178
- display: none;
1179
- }
1180
-
1181
- .acf-submit .button {
1182
- margin-right: 5px;
1183
- }
1184
-
1185
-
1186
- /*--------------------------------------------------------------------------------------------
1187
- *
1188
- * upgrade notice
1189
- *
1190
- *--------------------------------------------------------------------------------------------*/
1191
-
1192
- #acf-upgrade-notice {
1193
- margin-left: -20px;
1194
- background: #fff;
1195
- border-bottom: #E5E5E5 solid 1px;
1196
- }
1197
-
1198
- #acf-upgrade-notice .inner {
1199
- padding: 20px;
1200
- }
1201
-
1202
- #acf-upgrade-notice .logo {
1203
- position: relative;
1204
- float: left;
1205
- }
1206
-
1207
- #acf-upgrade-notice .content {
1208
- margin-left: 170px;
1209
- max-width: 710px;
1210
- }
1211
-
1212
- #acf-upgrade-notice h2 {
1213
-
1214
- }
1215
-
1216
- #acf-upgrade-notice p {
1217
- font-size: 14px;
1218
- }
1219
-
1220
-
1221
- /*--------------------------------------------------------------------------------------------
1222
- *
1223
- * Welcome
1224
- *
1225
- *--------------------------------------------------------------------------------------------*/
1226
-
1227
- .acf-wrap {
1228
-
1229
- }
1230
-
1231
- .acf-wrap h1 {
1232
- margin-top: 0;
1233
- padding-top: 20px;
1234
- }
1235
-
1236
- .acf-wrap .about-text {
1237
- margin-top: 0.5em;
1238
- min-height: 50px;
1239
- }
1240
-
1241
- .acf-wrap .about-headline-callout {
1242
- font-size: 2.4em;
1243
- font-weight: 300;
1244
- line-height: 1.3;
1245
- margin: 1.1em 0 0.2em;
1246
- text-align: center;
1247
- }
1248
-
1249
- .acf-wrap .feature-section {
1250
- margin-top: 40px;
1251
- padding-bottom: 20px;
1252
- }
1253
-
1254
- .acf-three-col img {
1255
- border: #DDDDDD solid 1px;
1256
- margin: 0 0 20px;
1257
- }
1258
-
1259
- .acf-three-col {
1260
- position: relative;
1261
- overflow: hidden;
1262
- }
1263
-
1264
- .acf-three-col > div {
1265
- float: left;
1266
- margin: 0 0 15px 5%;
1267
- position: relative;
1268
- width: 30%;
1269
- }
1270
-
1271
- .acf-three-col > div:first-child,
1272
- .acf-three-col > br + div {
1273
- margin-left: 0;
1274
- clear: left;
1275
- }
1276
-
1277
- .acf-three-col > br {
1278
- display: none;
1279
- }
1280
-
1281
- .acf-wrap .acf-three-col h3,
1282
- .acf-wrap .acf-three-col h4 {
1283
- margin-top: 0;
1284
- }
1285
-
1286
- .acf-wrap .changelog {
1287
- list-style: disc;
1288
- padding-left: 15px;
1289
- }
1290
-
1291
- .acf-wrap .changelog li {
1292
- margin: 0 0 0.75em;
1293
- }
1294
-
1295
-
1296
- /*--------------------------------------------------------------------------------------------
1297
- *
1298
- * acf-hl cols
1299
- *
1300
- *--------------------------------------------------------------------------------------------*/
1301
-
1302
- .acf-hl[data-cols] {
1303
- margin-left: -10px;
1304
- margin-right: -10px;
1305
-
1306
- > li {
1307
- padding: 0 10px;
1308
-
1309
- -webkit-box-sizing: border-box;
1310
- -moz-box-sizing: border-box;
1311
- box-sizing: border-box;
1312
- }
1313
-
1314
- }
1315
-
1316
-
1317
- /* sizes */
1318
- .acf-hl[data-cols="2"] > li { width: 50%; }
1319
- .acf-hl[data-cols="3"] > li { width: 33.333%; }
1320
- .acf-hl[data-cols="4"] > li { width: 25%; }
1321
-
1322
-
1323
- /* mobile */
1324
- @media screen and (max-width: @sm) {
1325
-
1326
- .acf-hl[data-cols] {
1327
- margin-left: 0;
1328
- margin-right: 0;
1329
- margin-top: -10px;
1330
-
1331
- > li {
1332
- width: 100% !important;
1333
- padding: 10px 0 0;
1334
- }
1335
-
1336
- }
1337
-
1338
- }
1339
-
1340
-
1341
-
1342
- /*--------------------------------------------------------------------------------------------
1343
- *
1344
- * misc
1345
- *
1346
- *--------------------------------------------------------------------------------------------*/
1347
-
1348
- .acf-actions {
1349
- text-align: right;
1350
- z-index: 1;
1351
-
1352
- a {
1353
- margin-left: 4px;
1354
- }
1355
-
1356
-
1357
- /* hover */
1358
- &.-hover {
1359
- position: absolute;
1360
- display: none;
1361
- top: 0;
1362
- right: 0;
1363
- padding: 5px;
1364
- }
1365
-
1366
-
1367
- /* rtl */
1368
- html[dir="rtl"] & {
1369
-
1370
- a {
1371
- margin-left: 0;
1372
- margin-right: 4px;
1373
- }
1374
-
1375
- &.-hover {
1376
- right: auto;
1377
- left: 0;
1378
- }
1379
-
1380
- }
1381
- }
1382
-
1383
-
1384
- /* ul compatibility */
1385
- ul.acf-actions {
1386
- li { float: right; margin-left: 4px; }
1387
- }
1388
-
1389
-
1390
- /*--------------------------------------------------------------------------------------------
1391
- *
1392
- * Plugins
1393
- *
1394
- *--------------------------------------------------------------------------------------------*/
1395
-
1396
- .acf-plugin-upgrade-notice {
1397
- font-weight: normal;
1398
- color: #fff;
1399
- background: #d54d21;
1400
- padding: 1em;
1401
- margin: 9px 0;
1402
-
1403
- &:before {
1404
- content: "\f348";
1405
- display: inline-block;
1406
- font: 400 18px/1 dashicons;
1407
- speak: none;
1408
- margin: 0 8px 0 -2px;
1409
- -webkit-font-smoothing: antialiased;
1410
- -moz-osx-font-smoothing: grayscale;
1411
- vertical-align: top;
1412
- }
1413
-
1414
- h4 {
1415
- display: none;
1416
- }
1417
-
1418
- ul,
1419
- li {
1420
- display: inline;
1421
- color: inherit;
1422
- list-style: none;
1423
- }
1424
-
1425
- li:after {
1426
- content: '. ';
1427
- display: inline;
1428
- }
1429
-
1430
- }
1431
-
1432
-
1433
- /*--------------------------------------------------------------------------------------------
1434
- *
1435
- * RTL
1436
- *
1437
- *--------------------------------------------------------------------------------------------*/
1438
-
1439
- html[dir="rtl"] .acf-fl { float: right; }
1440
- html[dir="rtl"] .acf-fr { float: left; }
1441
-
1442
- html[dir="rtl"] .acf-hl > li {
1443
- float: right;
1444
- }
1445
-
1446
- html[dir="rtl"] .acf-hl > li.acf-fr {
1447
- float: left;
1448
- }
1449
-
1450
- html[dir="rtl"] .acf-icon.logo {
1451
- left: 0;
1452
- right: auto;
1453
- }
1454
-
1455
-
1456
- html[dir="rtl"] .acf-table thead th {
1457
- text-align: right;
1458
- border-right-width: 1px;
1459
- border-left-width: 0px;
1460
- }
1461
-
1462
- html[dir="rtl"] .acf-table > tbody > tr > td {
1463
- text-align: right;
1464
- border-right-width: 1px;
1465
- border-left-width: 0px;
1466
- }
1467
-
1468
- html[dir="rtl"] .acf-table > thead > tr > th:first-child,
1469
- html[dir="rtl"] .acf-table > tbody > tr > td:first-child {
1470
- border-right-width: 0;
1471
- }
1472
-
1473
- html[dir="rtl"] .acf-table > tbody > tr > td.order + td {
1474
- border-right-color: #e1e1e1;
1475
- }
1476
-
1477
-
1478
- /*---------------------------------------------------------------------------------------------
1479
- *
1480
- * acf-postbox-columns
1481
- *
1482
- *---------------------------------------------------------------------------------------------*/
1483
-
1484
- .acf-postbox-columns {
1485
- .clearfix;
1486
- position: relative;
1487
- margin-top: -11px;
1488
- margin-bottom: -11px;
1489
- margin-left: -12px;
1490
- margin-right: (280px - 12px);
1491
-
1492
- .acf-postbox-main,
1493
- .acf-postbox-side {
1494
- .border-box;
1495
- padding: 0 12px 12px;
1496
- }
1497
-
1498
- .acf-postbox-main {
1499
- float: left;
1500
- width: 100%;
1501
- }
1502
-
1503
- .acf-postbox-side {
1504
- float: right;
1505
- width: 280px;
1506
- margin-right: -280px;
1507
-
1508
- &:before {
1509
- content: "";
1510
- display: block;
1511
- position: absolute;
1512
- width: 1px;
1513
- height: 100%;
1514
- top: 0;
1515
- right: 0;
1516
- background: #ebebeb;
1517
- }
1518
- }
1519
- }
1520
-
1521
-
1522
- /* mobile */
1523
- @media only screen and (max-width: 850px) {
1524
-
1525
- .acf-postbox-columns {
1526
- margin: 0;
1527
-
1528
- .acf-postbox-main,
1529
- .acf-postbox-side {
1530
- float: none;
1531
- width: auto;
1532
- margin: 0;
1533
- padding: 0;
1534
- }
1535
-
1536
- .acf-postbox-side {
1537
- margin-top: 1em;
1538
-
1539
- &:before {
1540
- display: none;
1541
- }
1542
- }
1543
- }
1544
- }
1545
-
1546
-
1547
- /*---------------------------------------------------------------------------------------------
1548
- *
1549
- * acf-panel
1550
- *
1551
- *---------------------------------------------------------------------------------------------*/
1552
-
1553
- .acf-panel {
1554
- margin-top: -1px;
1555
- border-top: 1px solid #e2e4e7;
1556
- border-bottom: 1px solid #e2e4e7;
1557
-
1558
- .acf-panel-title {
1559
- margin: 0;
1560
- padding: 12px;
1561
- font-weight: bold;
1562
- cursor: pointer;
1563
- font-size: inherit;
1564
-
1565
- i {
1566
- float: right;
1567
- }
1568
- }
1569
-
1570
- .acf-panel-inside {
1571
- margin: 0;
1572
- padding: 0 12px 12px;
1573
- display: none;
1574
- }
1575
-
1576
- /* open */
1577
- &.-open {
1578
-
1579
- .acf-panel-inside {
1580
- display: block;
1581
- }
1582
-
1583
- }
1584
-
1585
-
1586
- /* inside postbox */
1587
- .postbox & {
1588
- margin-left: -12px;
1589
- margin-right: -12px;
1590
- }
1591
-
1592
-
1593
- /* fields */
1594
- .acf-field {
1595
- margin: 20px 0 0;
1596
-
1597
- .acf-label label {
1598
- color: #555d66;
1599
- font-weight: normal;
1600
- }
1601
-
1602
- &:first-child {
1603
- margin-top: 0;
1604
- }
1605
- }
1606
-
1607
- }
1608
-
1609
-
1610
- /*---------------------------------------------------------------------------------------------
1611
- *
1612
- * Admin Tools
1613
- *
1614
- *---------------------------------------------------------------------------------------------*/
1615
-
1616
- #acf-admin-tools {
1617
-
1618
- .notice {
1619
- margin-top: 10px;
1620
- }
1621
- }
1622
-
1623
- .acf-meta-box-wrap {
1624
- margin-top: 10px;
1625
-
1626
- .postbox {
1627
- .border-box;
1628
-
1629
- .inside {
1630
- margin-bottom: 0;
1631
- }
1632
-
1633
- .hndle {
1634
- font-size: 14px;
1635
- padding: 8px 12px;
1636
- margin: 0;
1637
- line-height: 1.4;
1638
- }
1639
-
1640
- .handlediv {
1641
- display: none;
1642
- }
1643
- }
1644
-
1645
-
1646
- /* acf-fields */
1647
- .acf-fields {
1648
- border: #ebebeb solid 1px;
1649
- background: #fafafa;
1650
- border-radius: 3px;
1651
- }
1652
- }
1653
-
1654
-
1655
- /* grid */
1656
- .acf-meta-box-wrap.-grid {
1657
- margin-left: 8px;
1658
- margin-right: 8px;
1659
-
1660
- .postbox {
1661
- float: left;
1662
- clear: left;
1663
- width: 50%;
1664
- margin: 0 0 16px;
1665
-
1666
- &:nth-child(odd) {
1667
- margin-left: -8px;
1668
- }
1669
-
1670
- &:nth-child(even) {
1671
- float: right;
1672
- clear: right;
1673
- margin-right: -8px;
1674
- }
1675
- }
1676
- }
1677
-
1678
-
1679
- /* mobile */
1680
- @media only screen and (max-width: 850px) {
1681
-
1682
- .acf-meta-box-wrap.-grid {
1683
- margin-left: 0;
1684
- margin-right: 0;
1685
-
1686
- .postbox {
1687
- margin-left: 0 !important;
1688
- margin-right: 0 !important;
1689
- width: 100%;
1690
- }
1691
- }
1692
- }
1693
-
1694
-
1695
- /* export tool */
1696
- #acf-admin-tool-export {
1697
-
1698
- p {
1699
- max-width: 800px;
1700
- }
1701
-
1702
- ul {
1703
- column-width: 200px;
1704
- }
1705
-
1706
- .acf-postbox-side .button {
1707
- margin: 0;
1708
- width: 100%;
1709
- }
1710
-
1711
- textarea {
1712
- display: block;
1713
- width: 100%;
1714
- min-height: 500px;
1715
-
1716
- background: #fafafa;
1717
- box-shadow: none;
1718
- padding: 7px;
1719
- border-radius: 3px;
1720
- }
1721
-
1722
- /* panel: selection */
1723
- .acf-panel-selection {
1724
- .acf-label {
1725
- display: none;
1726
- }
1727
- }
1728
- }
1729
-
1730
-
1731
- /*---------------------------------------------------------------------------------------------
1732
- *
1733
- * Retina
1734
- *
1735
- *---------------------------------------------------------------------------------------------*/
1736
-
1737
- @media
1738
- only screen and (-webkit-min-device-pixel-ratio: 2),
1739
- only screen and ( min--moz-device-pixel-ratio: 2),
1740
- only screen and ( -o-min-device-pixel-ratio: 2/1),
1741
- only screen and ( min-device-pixel-ratio: 2),
1742
- only screen and ( min-resolution: 192dpi),
1743
- only screen and ( min-resolution: 2dppx) {
1744
-
1745
- [class^="acf-sprite-"],
1746
- [class*=" acf-sprite-"] {
1747
- background-image: url(../images/sprite@2x.png);
1748
- background-size: 250px 250px;
1749
- }
1750
-
1751
- .acf-loading,
1752
- .acf-spinner {
1753
- background-image: url(../images/spinner@2x.gif);
1754
- background-size: 20px 20px;
1755
- }
1756
-
1757
- }
1758
-
1759
-
1760
- /*---------------------------------------------------------------------------------------------
1761
- *
1762
- * Device
1763
- *
1764
- *---------------------------------------------------------------------------------------------*/
1765
-
1766
- @media only screen and (max-width: 850px) {
1767
-
1768
- .acf-columns-2 {
1769
- margin-right: 0;
1770
- }
1771
-
1772
- .acf-columns-2 .acf-column-1,
1773
- .acf-columns-2 .acf-column-2 {
1774
- float: none;
1775
- width: auto;
1776
- margin: 0;
1777
- }
1778
-
1779
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/_build/css/input.less DELETED
@@ -1,3301 +0,0 @@
1
- @import '../css/vars.less';
2
-
3
-
4
- /*--------------------------------------------------------------------------------------------
5
- *
6
- * acf-field
7
- *
8
- *--------------------------------------------------------------------------------------------*/
9
-
10
- .acf-field,
11
- .acf-field .acf-label,
12
- .acf-field .acf-input {
13
- -webkit-box-sizing: border-box;
14
- -moz-box-sizing: border-box;
15
- box-sizing: border-box;
16
- position: relative;
17
- }
18
-
19
- .acf-field {
20
- margin: 0 0 20px;
21
-
22
- p.description {
23
- display: block;
24
- margin: 0;
25
- padding: 0;
26
- }
27
-
28
-
29
- /* label */
30
- .acf-label {
31
- vertical-align: top;
32
- margin: 0 0 10px;
33
-
34
- label {
35
- display: block;
36
- font-weight: bold;
37
- margin: 0 0 3px;
38
- padding: 0;
39
- }
40
-
41
- &:empty {
42
- margin-bottom: 0;
43
- }
44
- }
45
-
46
-
47
- /* input */
48
- .acf-input {
49
- vertical-align: top;
50
-
51
- > p.description {
52
- margin-top: 5px;
53
- }
54
- }
55
-
56
-
57
- /* error */
58
- .acf-error-message {
59
- background: #F55E4F;
60
- color: #fff;
61
- margin: 0 0 10px;
62
- display: inline-block;
63
- border-radius: 3px;
64
- border-left: none;
65
-
66
- &:after {
67
- content: "";
68
- display: block;
69
-
70
- width: 0;
71
- height: 0;
72
- border: transparent 5px solid;
73
- border-top-color: #F55E4F;
74
-
75
- display: block;
76
- position: absolute;
77
- bottom: -10px;
78
- left: 10px;
79
- }
80
- }
81
- }
82
-
83
-
84
- /*--------------------------------------------------------------------------------------------
85
- *
86
- * acf-fields
87
- *
88
- *--------------------------------------------------------------------------------------------*/
89
-
90
- .acf-fields {
91
- position: relative;
92
-
93
- > .acf-field {
94
- margin: 0;
95
- padding: @field_padding;
96
- border-top: #EEEEEE solid 1px;
97
- position: relative;
98
- clear: left; /* used to clear floating widths */
99
-
100
- &:first-child {
101
- border-top-width: 0;
102
- }
103
- }
104
-
105
- &:after {
106
- content: "";
107
- display: block;
108
- line-height: 0;
109
- clear: both;
110
- }
111
-
112
- &.-border {
113
- border: #dfdfdf solid 1px;
114
- background: #fff;
115
- }
116
- }
117
-
118
- td.acf-fields {
119
- padding: 0 !important;
120
- }
121
-
122
-
123
- /*--------------------------------------------------------------------------------------------
124
- *
125
- * acf-fields (left)
126
- *
127
- *--------------------------------------------------------------------------------------------*/
128
- .acf-fields.-left > .acf-field {
129
- padding-left: 20%;
130
-
131
- html[dir="rtl"] & { padding-left: @field_padding_x; padding-right: 20%; }
132
-
133
- &:after {
134
- content: "";
135
- display: block;
136
- line-height: 0;
137
- clear: both;
138
- }
139
-
140
- &:before {
141
- content: "";
142
- display: block;
143
- position: absolute;
144
- z-index: 0;
145
- background: #F9F9F9;
146
- border-color: #E1E1E1;
147
- border-style: solid;
148
- border-width: 0 1px 0 0;
149
- top: 0;
150
- bottom: 0;
151
- left: 0;
152
- width: 20%;
153
-
154
- /* rtl */
155
- html[dir="rtl"] & {
156
- border-right-width: 0;
157
- border-left-width: 1px;
158
- left: auto;
159
- right: 0;
160
- }
161
- }
162
-
163
- > .acf-label,
164
- > .acf-input {
165
- float: left;
166
- margin: 0;
167
-
168
- html[dir="rtl"] & { float: right; }
169
- }
170
-
171
-
172
- > .acf-label {
173
- width: 25%;
174
- margin-left: -25%;
175
- padding: 0 @field_padding_x;
176
-
177
- html[dir="rtl"] & { margin-left: 0; margin-right: -25%; }
178
- }
179
-
180
- > .acf-input {
181
- width: 100%;
182
- padding-left: @field_padding_x;
183
-
184
- html[dir="rtl"] & { padding-left: 0; padding-right: @field_padding_x; }
185
- }
186
-
187
-
188
- /* mobile */
189
- @media screen and (max-width: @sm) {
190
-
191
- & {
192
- padding: @field_padding;
193
- }
194
-
195
- &:before {
196
- display: none;
197
- }
198
-
199
- > .acf-label,
200
- > .acf-input {
201
- padding: 0;
202
- float: none;
203
- width: auto;
204
- }
205
-
206
- > .acf-label {
207
- margin: 0 0 10px;
208
- }
209
- }
210
- }
211
-
212
-
213
- /* acf-table */
214
- .acf-table tr.acf-field {
215
-
216
- > td.acf-label,
217
- > td.acf-input {
218
- padding: @field_padding;
219
- margin: 0;
220
- }
221
-
222
- > td.acf-label {
223
- background: #F9F9F9;
224
- width: 20%;
225
- }
226
-
227
- > td.acf-input {
228
- border-left-color: #E1E1E1;
229
- }
230
-
231
- }
232
-
233
-
234
- /*--------------------------------------------------------------------------------------------
235
- *
236
- * acf-fields (clear)
237
- *
238
- *--------------------------------------------------------------------------------------------*/
239
-
240
- .acf-fields.-clear > .acf-field {
241
- border: none;
242
- padding: 0;
243
- margin: 0 0 20px;
244
-
245
- &:before {
246
- display: none;
247
- }
248
-
249
- > .acf-label {
250
- padding: 0;
251
- }
252
-
253
- > .acf-input {
254
- padding: 0;
255
- }
256
- }
257
-
258
-
259
- /* left */
260
- .acf-fields.-clear.-left > .acf-field {
261
-
262
- > .acf-label {
263
- padding-right: @field_padding_x * 2;
264
- }
265
-
266
- }
267
-
268
-
269
-
270
- /*--------------------------------------------------------------------------------------------
271
- *
272
- * acf-postbox
273
- *
274
- *--------------------------------------------------------------------------------------------*/
275
-
276
- .acf-postbox {
277
- position: relative;
278
-
279
- /* position high */
280
- #acf_after_title-sortables & {
281
- margin: 20px 0 0;
282
- }
283
-
284
-
285
- /* inside */
286
- > .inside {
287
- margin: 0 !important; /* override WP style - do not delete - you have tried this before */
288
- padding: 0 !important; /* override WP style - do not delete - you have tried this before */
289
- }
290
-
291
-
292
- /* hndle */
293
- > .hndle {
294
-
295
- /* edit field group */
296
- .acf-hndle-cog {
297
- color: #AAAAAA;
298
- font-size: 16px;
299
- line-height: 20px;
300
- padding: 0 2px;
301
- float: right;
302
- position: relative;
303
- display: none;
304
-
305
- &:hover {
306
- color: #777777;
307
- }
308
- }
309
-
310
- &:hover .acf-hndle-cog,
311
- &.hover .acf-hndle-cog {
312
- display: block;
313
- }
314
-
315
-
316
- }
317
-
318
- .acf-replace-with-fields {
319
- padding: 15px;
320
- text-align: center;
321
- }
322
- }
323
-
324
-
325
- /* seamless */
326
- .acf-postbox.seamless {
327
- border: 0 none;
328
- background: transparent;
329
- box-shadow: none;
330
-
331
-
332
- /* hide hndle */
333
- > .hndle,
334
- > .handlediv {
335
- display: none;
336
- }
337
-
338
-
339
- /* inside */
340
- > .inside {
341
- display: block !important; /* stop metabox from hiding when closed */
342
- margin: -@field_padding_x !important;
343
- }
344
-
345
- > .acf-fields > .acf-field {
346
- border: 0 none !important;
347
- }
348
-
349
- /* tab */
350
- .acf-tab-wrap {
351
- padding-left: @field_padding_x;
352
- padding-right: @field_padding_x;
353
-
354
- .acf-tab-group {
355
- border-top: 0 none;
356
- }
357
- }
358
-
359
- }
360
-
361
-
362
- /* seamless (left) */
363
- .acf-postbox.seamless > .acf-fields.-left {
364
-
365
- /* hide sidebar bg */
366
- > .acf-field:before {
367
- display: none;
368
- }
369
-
370
-
371
- /* mobile */
372
- @media screen and (max-width: 782px) {
373
-
374
- /* remove padding */
375
- & > .acf-field > .acf-label,
376
- & > .acf-field > .acf-input {
377
- padding: 0;
378
- }
379
- }
380
- }
381
-
382
-
383
- /* override WP CSS */
384
- .metabox-prefs label.acf-hidden {
385
- display: none;
386
- }
387
-
388
-
389
- /*--------------------------------------------------------------------------------------------
390
- *
391
- * Basic ACF field wrap
392
- *
393
- *--------------------------------------------------------------------------------------------*/
394
-
395
- /* add term */
396
- #addtag div.acf-field.error {
397
- border: 0 none;
398
- padding: 8px 0;
399
- }
400
-
401
-
402
- /* width */
403
- .acf-field[data-width] {
404
- float: left;
405
-
406
- -webkit-box-sizing: border-box;
407
- -moz-box-sizing: border-box;
408
- box-sizing: border-box;
409
- }
410
-
411
- .acf-field[data-width] + .acf-field {
412
- clear: left;
413
- }
414
-
415
- .acf-field[data-width] + .acf-field[data-width] {
416
- clear: none;
417
- border-left: 1px solid #eeeeee;
418
- }
419
-
420
- td.acf-field[data-width] {
421
- float: none;
422
- }
423
-
424
-
425
- /* field width helpers */
426
- .acf-r0 {
427
- border-top-width: 0 !important;
428
- }
429
-
430
- .acf-c0 {
431
- clear: left !important;
432
- border-left-width: 0 !important;
433
- }
434
-
435
-
436
- /* rtl */
437
- html[dir="rtl"] .acf-field[data-width] {
438
- float: right;
439
- }
440
-
441
- html[dir="rtl"] .acf-field[data-width] + .acf-field {
442
- clear: right;
443
- }
444
-
445
- html[dir="rtl"] .acf-field[data-width] + .acf-field[data-width] {
446
- clear: none;
447
- border-right: 1px solid #eeeeee;
448
- }
449
-
450
- html[dir="rtl"] .acf-c0 {
451
- clear: right !important;
452
- border-left-width: 1px !important;
453
- border-right-width: 0 !important;
454
- }
455
-
456
-
457
- /*---------------------------------------------------------------------------------------------
458
- *
459
- * Basic Field Styles
460
- *
461
- *---------------------------------------------------------------------------------------------*/
462
-
463
- .acf-field input[type="text"],
464
- .acf-field input[type="password"],
465
- .acf-field input[type="number"],
466
- .acf-field input[type="search"],
467
- .acf-field input[type="email"],
468
- .acf-field input[type="url"],
469
- .acf-field textarea,
470
- .acf-field select {
471
- width: 100%;
472
- padding: 3px 5px;
473
- resize: none;
474
- margin: 0;
475
- -webkit-box-sizing: border-box;
476
- -moz-box-sizing: border-box;
477
- box-sizing: border-box;
478
-
479
- font-size: 14px;
480
- line-height: 1.4;
481
- }
482
-
483
- .acf-field textarea {
484
- resize: vertical;
485
- }
486
-
487
-
488
- /* disabled */
489
- .acf-field {
490
-
491
- input:disabled,
492
- select:disabled,
493
- textarea:disabled {
494
- background: #f8f8f8;
495
- }
496
-
497
- input[readonly],
498
- textarea[readonly] {
499
- background: #f8f8f8;
500
- }
501
-
502
- }
503
-
504
-
505
- /*---------------------------------------------------------------------------------------------
506
- *
507
- * Text
508
- *
509
- *---------------------------------------------------------------------------------------------*/
510
- .acf-input-prepend,
511
- .acf-input-append {
512
- font-size: 13px;
513
- line-height: 20px;
514
- height: 20px;
515
-
516
- padding: 3px 7px;
517
-
518
- background: #F4F4F4;
519
- border: #DFDFDF solid 1px;
520
- }
521
-
522
- .acf-input-prepend {
523
- float: left;
524
- border-right-width: 0;
525
- border-radius: 3px 0 0 3px;
526
- }
527
-
528
- .acf-input-append {
529
- float: right;
530
- border-left-width: 0;
531
- border-radius: 0 3px 3px 0;
532
- }
533
-
534
- .acf-input-wrap {
535
- position: relative;
536
- overflow: hidden;
537
- }
538
-
539
- .acf-input-wrap input {
540
- height: 28px;
541
- margin: 0;
542
- }
543
-
544
- input.acf-is-prepended {
545
- border-radius: 0 3px 3px 0 !important;
546
- }
547
-
548
- input.acf-is-appended {
549
- border-radius: 3px 0 0 3px !important;
550
- }
551
-
552
- input.acf-is-prepended.acf-is-appended {
553
- border-radius: 0 !important;
554
- }
555
-
556
-
557
- /* rtl */
558
- html[dir="rtl"] .acf-input-prepend {
559
- border-left-width: 0;
560
- border-right-width: 1px;
561
- border-radius: 0 3px 3px 0;
562
-
563
- float: right;
564
- }
565
-
566
- html[dir="rtl"] .acf-input-append {
567
- border-left-width: 1px;
568
- border-right-width: 0;
569
- border-radius: 3px 0 0 3px;
570
- float: left;
571
- }
572
-
573
- html[dir="rtl"] input.acf-is-prepended {
574
- border-radius: 3px 0 0 3px !important;
575
- }
576
-
577
- html[dir="rtl"] input.acf-is-appended {
578
- border-radius: 0 3px 3px 0 !important;
579
- }
580
-
581
- html[dir="rtl"] input.acf-is-prepended.acf-is-appended {
582
- border-radius: 0 !important;
583
- }
584
-
585
-
586
- /*---------------------------------------------------------------------------------------------
587
- *
588
- * Color Picker
589
- *
590
- *---------------------------------------------------------------------------------------------*/
591
-
592
- .acf-color-picker {
593
-
594
- .wp-picker-active {
595
- position: relative;
596
- z-index: 1;
597
- }
598
-
599
- }
600
-
601
-
602
- /*---------------------------------------------------------------------------------------------
603
- *
604
- * Url
605
- *
606
- *---------------------------------------------------------------------------------------------*/
607
-
608
- .acf-url {
609
-
610
- i {
611
- position: absolute;
612
- top: 4px;
613
- left: 4px;
614
- opacity: 0.5;
615
- color: #A9A9A9;
616
- }
617
-
618
- input[type="url"] {
619
- padding-left: 25px;
620
- }
621
-
622
- &.-valid i {
623
- opacity: 1;
624
- }
625
-
626
- }
627
-
628
-
629
- /*---------------------------------------------------------------------------------------------
630
- *
631
- * Select
632
- *
633
- *---------------------------------------------------------------------------------------------*/
634
-
635
- .acf-field select {
636
- padding: 2px;
637
- }
638
-
639
- .acf-field select optgroup {
640
- padding: 5px;
641
- background: #fff;
642
- }
643
-
644
- .acf-field select option {
645
- padding: 3px;
646
- }
647
-
648
- .acf-field select optgroup option {
649
- padding-left: 5px;
650
- }
651
-
652
- .acf-field select optgroup:nth-child(2n) {
653
- background: #F9F9F9;
654
- }
655
-
656
- .acf-field .select2-input {
657
- max-width: 200px;
658
- }
659
-
660
-
661
- /*---------------------------------------------------------------------------------------------
662
- *
663
- * Select2 (v3)
664
- *
665
- *---------------------------------------------------------------------------------------------*/
666
-
667
- .select2-container.-acf {
668
-
669
- .select2-choices {
670
- background: #fff;
671
- border-color: #ddd;
672
- box-shadow: 0 1px 2px rgba(0, 0, 0, 0.07) inset;
673
- min-height: 31px;
674
-
675
- .select2-search-choice {
676
- margin: 5px 0 5px 5px;
677
- padding: 3px 5px 3px 18px;
678
- border-color: #bbb;
679
- background: #f9f9f9;
680
- box-shadow: 0 1px 0 rgba(255, 255, 255, 0.25) inset;
681
-
682
- /* sortable item*/
683
- &.ui-sortable-helper {
684
- background: #5897fb;
685
- border-color: darken(#5897fb, 5%);
686
- color: #fff;
687
- box-shadow: 0 0 3px rgba(0,0,0,0.1);
688
-
689
- a {
690
- visibility: hidden;
691
- }
692
- }
693
-
694
-
695
- /* sortable shadow */
696
- &.ui-sortable-placeholder {
697
- background-color: #f7f7f7;
698
- border-color: #f7f7f7;
699
- visibility: visible !important;
700
- }
701
- }
702
-
703
- .select2-search-choice-focus {
704
- border-color: #999;
705
- }
706
-
707
- .select2-search-field input {
708
- height: 31px;
709
- line-height: 22px;
710
- margin: 0;
711
- padding: 5px 5px 5px 7px;
712
- }
713
- }
714
-
715
- .select2-choice {
716
- border-color: #BBBBBB;
717
-
718
- .select2-arrow {
719
- background: transparent;
720
- border-left-color: #DFDFDF;
721
- padding-left: 1px;
722
- }
723
-
724
- .select2-result-description {
725
- display: none;
726
- }
727
- }
728
-
729
-
730
-
731
- /* open */
732
- &.select2-container-active .select2-choices,
733
- &.select2-dropdown-open .select2-choices {
734
- border-color: #5B9DD9;
735
- border-radius: 3px 3px 0 0;
736
- }
737
-
738
-
739
- /* single open */
740
- &.select2-dropdown-open .select2-choice {
741
- background: #fff;
742
- border-color: #5B9DD9;
743
- }
744
-
745
- }
746
-
747
- /* rtl */
748
- html[dir="rtl"] .select2-container.-acf {
749
-
750
- .select2-search-choice-close {
751
- left: 24px;
752
- }
753
-
754
- .select2-choice > .select2-chosen {
755
- margin-left: 42px;
756
- }
757
-
758
- .select2-choice .select2-arrow {
759
- padding-left: 0;
760
- padding-right: 1px;
761
- }
762
- }
763
-
764
-
765
- /* description */
766
- .select2-drop {
767
-
768
- /* search*/
769
- .select2-search {
770
- padding: 4px 4px 0;
771
- }
772
-
773
-
774
- /* result */
775
- .select2-result {
776
-
777
- .select2-result-description {
778
- color: #999;
779
- font-size: 12px;
780
- margin-left: 5px;
781
- }
782
-
783
-
784
- /* hover*/
785
- &.select2-highlighted {
786
-
787
- .select2-result-description {
788
- color: #fff;
789
- opacity: 0.75;
790
- }
791
-
792
- }
793
-
794
- }
795
-
796
- }
797
-
798
-
799
-
800
- /*---------------------------------------------------------------------------------------------
801
- *
802
- * Select2 (v4)
803
- *
804
- *---------------------------------------------------------------------------------------------*/
805
-
806
- .select2-container.-acf {
807
-
808
- li{
809
- margin-bottom: 0;
810
- }
811
-
812
- }
813
-
814
- .select2-container--default.-acf {
815
-
816
- .select2-selection--multiple {
817
-
818
- .select2-search--inline:first-child {
819
- float: none;
820
- input { width: 100% !important; }
821
- }
822
-
823
- /* multiple choice item */
824
- .select2-selection__choice {
825
- background-color: #f7f7f7;
826
- border-color: #cccccc;
827
-
828
-
829
- /* sortable item*/
830
- &.ui-sortable-helper {
831
- background: #5897fb;
832
- border-color: darken(#5897fb, 5%);
833
- color: #fff;
834
- box-shadow: 0 0 3px rgba(0,0,0,0.1);
835
-
836
- span {
837
- visibility: hidden;
838
- }
839
- }
840
-
841
-
842
- /* sortable shadow */
843
- &.ui-sortable-placeholder {
844
- background-color: #f7f7f7;
845
- border-color: #f7f7f7;
846
- visibility: visible !important;
847
- }
848
- }
849
-
850
- }
851
-
852
- }
853
-
854
- .select2-container {
855
-
856
- .select2-dropdown {
857
- z-index: 900000;
858
- }
859
-
860
- }
861
-
862
-
863
-
864
-
865
- /*---------------------------------------------------------------------------------------------
866
- *
867
- * Link
868
- *
869
- *---------------------------------------------------------------------------------------------*/
870
-
871
- .link-wrap {
872
- border: #dddddd solid 1px;
873
- border-radius: 3px;
874
- padding: 5px;
875
- line-height: 26px;
876
- background: #fff;
877
-
878
- word-wrap: break-word;
879
- word-break: break-all;
880
-
881
- .link-title {
882
- padding: 0 5px;
883
- }
884
-
885
- }
886
-
887
- .acf-link {
888
-
889
- .link-wrap,
890
- .acf-icon.-link-ext { display: none; }
891
-
892
- /* value */
893
- &.-value {
894
-
895
- .button { display: none; }
896
- .link-wrap { display: inline-block; }
897
-
898
- }
899
-
900
-
901
- /* external */
902
- &.-external {
903
-
904
- .acf-icon.-link-ext { display: inline-block; }
905
-
906
- }
907
-
908
- }
909
-
910
- #wp-link-backdrop { z-index: 900000 !important; }
911
- #wp-link-wrap { z-index: 900001 !important; }
912
-
913
-
914
-
915
- /*---------------------------------------------------------------------------------------------
916
- *
917
- * Radio
918
- *
919
- *---------------------------------------------------------------------------------------------*/
920
-
921
- ul.acf-radio-list,
922
- ul.acf-checkbox-list {
923
- background: transparent;
924
- position: relative;
925
- padding: 1px;
926
- margin: 0;
927
-
928
- li {
929
- font-size: 13px;
930
- line-height: 22px;
931
- margin: 0;
932
- position: relative;
933
- word-wrap: break-word;
934
-
935
- label {
936
- display: inline;
937
- }
938
-
939
- input[type="checkbox"],
940
- input[type="radio"] {
941
- margin: -1px 4px 0 0;
942
- vertical-align: middle;
943
- }
944
-
945
- input[type="text"] {
946
- width: auto;
947
- vertical-align: middle;
948
- margin: 2px 0;
949
- }
950
-
951
-
952
- /* attachment sidebar fix*/
953
- span {
954
- float: none;
955
- }
956
-
957
- i {
958
- vertical-align: middle;
959
- }
960
- }
961
-
962
-
963
- /* hl */
964
- &.acf-hl {
965
-
966
- li {
967
- margin-right: 20px;
968
- clear: none;
969
- }
970
- }
971
-
972
-
973
- /* rtl */
974
- html[dir="rtl"] & {
975
-
976
- input[type="checkbox"],
977
- input[type="radio"] {
978
- margin-left: 4px;
979
- margin-right: 0;
980
- }
981
- }
982
-
983
-
984
-
985
-
986
- }
987
-
988
-
989
- /*---------------------------------------------------------------------------------------------
990
- *
991
- * Button Group
992
- *
993
- *---------------------------------------------------------------------------------------------*/
994
-
995
- .acf-button-group {
996
- display: inline-block;
997
-
998
- label {
999
- display: inline-block;
1000
- border: #ccc solid 1px;
1001
- position: relative;
1002
- z-index: 1;
1003
- padding: 5px 10px;
1004
- background: #fff;
1005
-
1006
- &:hover {
1007
- border-color: darken(#ccc, 20%);
1008
- z-index: 2;
1009
- }
1010
-
1011
- &.selected {
1012
- border-color: darken(#309cf3, 1%);
1013
- background: #309cf3;
1014
- color: #fff;
1015
- z-index: 2;
1016
-
1017
- &:hover {
1018
- background: lighten(#309cf3, 5%);
1019
- }
1020
- }
1021
- }
1022
-
1023
- input {
1024
- display: none;
1025
- }
1026
-
1027
-
1028
- /* default (horizontal) */
1029
- & {
1030
- padding-left: 1px;
1031
- display: inline-flex;
1032
- flex-direction: row;
1033
- flex-wrap: nowrap;
1034
-
1035
- label {
1036
- margin: 0 0 0 -1px;
1037
- flex: 1;
1038
- text-align: center;
1039
- white-space: nowrap;
1040
-
1041
- // corners
1042
- &:first-child { border-radius: 3px 0 0 3px; }
1043
- &:last-child { border-radius: 0 3px 3px 0; }
1044
- &:only-child { border-radius: 3px; }
1045
-
1046
- }
1047
- }
1048
-
1049
-
1050
- /* vertical */
1051
- &.-vertical {
1052
- padding-left: 0;
1053
- padding-top: 1px;
1054
- flex-direction: column;
1055
-
1056
- label {
1057
- margin: -1px 0 0 0;
1058
-
1059
- // corners
1060
- &:first-child { border-radius: 3px 3px 0 0; }
1061
- &:last-child { border-radius: 0 0 3px 3px; }
1062
- &:only-child { border-radius: 3px; }
1063
-
1064
- }
1065
- }
1066
-
1067
-
1068
- }
1069
-
1070
-
1071
-
1072
- /*---------------------------------------------------------------------------------------------
1073
- *
1074
- * Checkbox
1075
- *
1076
- *---------------------------------------------------------------------------------------------*/
1077
-
1078
- .acf-checkbox-list {
1079
-
1080
- .button {
1081
- margin: 10px 0 0;
1082
- }
1083
-
1084
- }
1085
-
1086
-
1087
-
1088
- /*---------------------------------------------------------------------------------------------
1089
- *
1090
- * True / False
1091
- *
1092
- *---------------------------------------------------------------------------------------------*/
1093
-
1094
- .acf-switch {
1095
- display: inline-block;
1096
- border-radius: 5px;
1097
- cursor: pointer;
1098
- position: relative;
1099
- background: #f8f8f8;
1100
- height: 30px;
1101
- vertical-align: middle;
1102
- //box-shadow: inset 0 0 1px rgba(0,0,0,0.2);
1103
- border: #ccc solid 1px;
1104
-
1105
- -webkit-transition: background 0.25s ease;
1106
- -moz-transition: background 0.25s ease;
1107
- -o-transition: background 0.25s ease;
1108
- transition: background 0.25s ease;
1109
-
1110
- span {
1111
- display: inline-block;
1112
- float: left;
1113
- text-align: center;
1114
-
1115
- font-size: 13px;
1116
- line-height: 22px;
1117
-
1118
- padding: 4px 10px;
1119
- min-width: 15px;
1120
-
1121
- i {
1122
- vertical-align: middle;
1123
- }
1124
- }
1125
-
1126
- .acf-switch-on {
1127
- color: #fff;
1128
- text-shadow: darken(@acf_blue, 10%) 0 1px 0;
1129
- }
1130
-
1131
- .acf-switch-off {
1132
-
1133
- }
1134
-
1135
- .acf-switch-slider {
1136
- position: absolute;
1137
- top: 2px;
1138
- left: 2px;
1139
- bottom: 2px;
1140
- right: 50%;
1141
- z-index: 1;
1142
- background: #fff;
1143
- border-radius: 3px;
1144
- border: #ccc solid 1px;
1145
-
1146
- -webkit-transition: all 0.25s ease;
1147
- -moz-transition: all 0.25s ease;
1148
- -o-transition: all 0.25s ease;
1149
- transition: all 0.25s ease;
1150
-
1151
- transition-property: left, right;
1152
- }
1153
-
1154
-
1155
- /* hover */
1156
- &:hover {
1157
- .acf-switch-slider{
1158
- border-color: darken(#ccc, 10%);
1159
- }
1160
- }
1161
-
1162
-
1163
- /* active */
1164
- &.-on {
1165
- background: #309cf3;
1166
- border-color: darken(#309cf3, 1%);
1167
-
1168
- .acf-switch-slider {
1169
- left: 50%;
1170
- right: 2px;
1171
- border-color: darken(#309cf3, 10%);
1172
- }
1173
-
1174
- /* hover */
1175
- &:hover {
1176
- background: lighten(#309cf3, 5%);
1177
- }
1178
- }
1179
-
1180
-
1181
- /* focus */
1182
- &.-focus {
1183
-
1184
- .acf-switch-slider {
1185
- border-color: #5b9dd9;
1186
- box-shadow: 0 0 2px rgba(30, 140, 190, 0.5);
1187
- }
1188
-
1189
-
1190
- &.-on {
1191
-
1192
- .acf-switch-slider {
1193
- border-color: darken(@acf_blue, 20%);
1194
- box-shadow: 0 0 2px darken(@acf_blue, 10%);
1195
- }
1196
- }
1197
-
1198
- }
1199
-
1200
-
1201
- /* message */
1202
- + span {
1203
- margin-left: 6px;
1204
- }
1205
-
1206
- }
1207
-
1208
-
1209
- /* checkbox */
1210
- .acf-switch-input {
1211
- opacity: 0;
1212
- position: absolute;
1213
- margin: 0;
1214
- }
1215
-
1216
-
1217
- /* in media modal */
1218
- .compat-item .acf-true-false {
1219
-
1220
- .message {
1221
- float: none;
1222
- padding: 0;
1223
- vertical-align: middle;
1224
- }
1225
-
1226
- }
1227
-
1228
-
1229
- /*--------------------------------------------------------------------------
1230
- *
1231
- * Google Map
1232
- *
1233
- *-------------------------------------------------------------------------*/
1234
-
1235
- .acf-google-map {
1236
- position: relative;
1237
- border: #DFDFDF solid 1px;
1238
- background: #fff;
1239
-
1240
- .title {
1241
- position: relative;
1242
- border-bottom: #DFDFDF solid 1px;
1243
-
1244
- .search {
1245
- margin: 0;
1246
- font-size: 14px;
1247
- line-height: 30px;
1248
- height: 40px;
1249
- padding: 5px 10px;
1250
- border: 0 none;
1251
- box-shadow: none;
1252
- border-radius: 0;
1253
- font-family: inherit;
1254
- cursor: text;
1255
- }
1256
-
1257
- .acf-actions {
1258
-
1259
- }
1260
-
1261
- .acf-loading {
1262
- position: absolute;
1263
- top: 10px;
1264
- right: 11px;
1265
- display: none;
1266
- }
1267
-
1268
- &:hover {
1269
- .acf-actions { display: block; }
1270
- }
1271
- }
1272
-
1273
- .canvas {
1274
- height: 400px;
1275
- }
1276
-
1277
-
1278
- /* default is focused */
1279
- .title {
1280
- .acf-icon.-location {
1281
- display: inline-block;
1282
- }
1283
- .acf-icon.-cancel {
1284
- display: none;
1285
- }
1286
- .acf-icon.-search {
1287
- display: none;
1288
- }
1289
- }
1290
-
1291
-
1292
- /* -search */
1293
- &.-search .title {
1294
- .acf-icon.-location {
1295
- display: none;
1296
- }
1297
- .acf-icon.-cancel {
1298
- display: inline-block;
1299
- }
1300
- .acf-icon.-search {
1301
- display: inline-block;
1302
- }
1303
- }
1304
-
1305
-
1306
-
1307
- /* -value */
1308
- &.-value .title {
1309
- .search {
1310
- font-weight: bold;
1311
- }
1312
- .acf-icon.-location {
1313
- display: none;
1314
- }
1315
- .acf-icon.-cancel {
1316
- display: inline-block;
1317
- }
1318
- .acf-icon.-search {
1319
- display: none;
1320
- }
1321
- }
1322
-
1323
-
1324
- /* -loading */
1325
- &.-loading .title {
1326
- a {
1327
- display: none !important;
1328
- }
1329
- i {
1330
- display: inline-block;
1331
- }
1332
- }
1333
-
1334
- }
1335
-
1336
-
1337
-
1338
- /* autocomplete */
1339
- .pac-container {
1340
- border-width: 1px 0;
1341
- box-shadow: none;
1342
- }
1343
-
1344
- .pac-container:after {
1345
- display: none;
1346
- }
1347
-
1348
- .pac-container .pac-item:first-child {
1349
- border-top: 0 none;
1350
- }
1351
- .pac-container .pac-item {
1352
- padding: 5px 10px;
1353
- cursor: pointer;
1354
- }
1355
-
1356
-
1357
- html[dir="rtl"] .pac-container .pac-item {
1358
- text-align: right;
1359
- }
1360
-
1361
-
1362
- /*--------------------------------------------------------------------------
1363
- *
1364
- * Relationship
1365
- *
1366
- *-------------------------------------------------------------------------*/
1367
-
1368
- .acf-relationship {
1369
- background: #fff;
1370
-
1371
- /* filters (top) */
1372
- .filters {
1373
- .clearfix;
1374
- border: #DFDFDF solid 1px;
1375
- background: #fff;
1376
-
1377
-
1378
- .filter {
1379
- margin: 0;
1380
- padding: 0;
1381
- float: left;
1382
- width: 100%;
1383
-
1384
-
1385
- /* inner padding */
1386
- span {
1387
- display: block;
1388
- padding: 7px 7px 7px 0;
1389
- }
1390
-
1391
- &:first-child span {
1392
- padding-left: 7px;
1393
- }
1394
-
1395
-
1396
- // inputs
1397
- input, select {
1398
- height: 28px;
1399
- line-height: 28px;
1400
- padding: 2px;
1401
- width: 100%;
1402
- margin: 0;
1403
- float: none; /* potential fix for media popup? */
1404
-
1405
- &:focus,
1406
- &:active {
1407
- outline: none;
1408
- box-shadow: none;
1409
- }
1410
- }
1411
-
1412
- input {
1413
- border-color: transparent;
1414
- box-shadow: none;
1415
- }
1416
-
1417
- }
1418
-
1419
-
1420
- /* widths */
1421
- &.-f2 {
1422
- .filter { width: 50%; }
1423
- }
1424
- &.-f3 {
1425
- .filter { width: 25%; }
1426
- .filter.-search { width: 50%; }
1427
- }
1428
-
1429
- }
1430
-
1431
-
1432
- /* list */
1433
- .list {
1434
- margin: 0;
1435
- padding: 5px;
1436
- height: 160px;
1437
- overflow: auto;
1438
-
1439
- .acf-rel-label,
1440
- .acf-rel-item,
1441
- p {
1442
- padding: 5px 7px;
1443
- margin: 0;
1444
- display: block;
1445
- position: relative;
1446
- min-height: 18px;
1447
- }
1448
-
1449
- .acf-rel-label {
1450
- font-weight: bold;
1451
- }
1452
-
1453
- .acf-rel-item {
1454
- cursor: pointer;
1455
-
1456
- b {
1457
- text-decoration: underline;
1458
- font-weight: normal;
1459
- }
1460
-
1461
- .thumbnail {
1462
- background: darken(#f9f9f9, 10%);
1463
- width: 22px;
1464
- height: 22px;
1465
- float: left;
1466
- margin: -2px 5px 0 0;
1467
-
1468
- img {
1469
- max-width: 22px;
1470
- max-height: 22px;
1471
- margin: 0 auto;
1472
- display: block;
1473
- }
1474
-
1475
- &.-icon {
1476
- background: #fff;
1477
-
1478
- img {
1479
- max-height: 20px;
1480
- margin-top: 1px;
1481
- }
1482
- }
1483
- }
1484
-
1485
- /* hover */
1486
- &:hover {
1487
- background: #3875D7;
1488
- color: #fff;
1489
-
1490
- .thumbnail {
1491
- background: lighten(#3875D7, 25%);
1492
-
1493
- &.-icon {
1494
- background: #fff;
1495
- }
1496
- }
1497
- }
1498
-
1499
-
1500
- /* disabled */
1501
- &.disabled {
1502
- opacity: 0.5;
1503
-
1504
- &:hover {
1505
- background: transparent;
1506
- color: #333;
1507
- cursor: default;
1508
-
1509
- .thumbnail {
1510
- background: darken(#f9f9f9, 10%);
1511
-
1512
- &.-icon {
1513
- background: #fff;
1514
- }
1515
- }
1516
- }
1517
- }
1518
- }
1519
-
1520
- ul {
1521
- padding-bottom: 5px;
1522
-
1523
- .acf-rel-label,
1524
- .acf-rel-item,
1525
- p {
1526
- padding-left: 20px;
1527
- }
1528
-
1529
- }
1530
-
1531
- }
1532
-
1533
-
1534
- /* selection (bottom) */
1535
- .selection {
1536
- .clearfix;
1537
- border: #DFDFDF solid 1px;
1538
- position: relative;
1539
- margin-top: -1px;
1540
-
1541
- .values,
1542
- .choices {
1543
- width: 50%;
1544
- background: #fff;
1545
- float: left
1546
- }
1547
-
1548
- /* choices */
1549
- .choices {
1550
- background: #F9F9F9;
1551
-
1552
- .list {
1553
- border-right: #DFDFDF solid 1px;
1554
- }
1555
-
1556
- }
1557
-
1558
-
1559
- /* values */
1560
- .values {
1561
-
1562
- .acf-icon {
1563
- position: absolute;
1564
- top: 4px;
1565
- right: 7px;
1566
- display: none;
1567
-
1568
- /* rtl */
1569
- html[dir="rtl"] & {
1570
- right: auto;
1571
- left: 7px;
1572
- }
1573
-
1574
- }
1575
-
1576
- .acf-rel-item:hover .acf-icon {
1577
- display: block;
1578
- }
1579
-
1580
- .acf-rel-item {
1581
- cursor: move;
1582
-
1583
- b {
1584
- text-decoration: none;
1585
- }
1586
-
1587
- }
1588
-
1589
- }
1590
-
1591
- }
1592
-
1593
-
1594
- }
1595
-
1596
- /* menu item fix */
1597
- .menu-item {
1598
-
1599
- .acf-relationship {
1600
-
1601
- ul {
1602
- width: auto;
1603
- }
1604
-
1605
- li {
1606
- display: block;
1607
- }
1608
- }
1609
- }
1610
-
1611
-
1612
- /*--------------------------------------------------------------------------
1613
- *
1614
- * WYSIWYG
1615
- *
1616
- *-------------------------------------------------------------------------*/
1617
-
1618
- .acf-editor-wrap {
1619
-
1620
- /* delay */
1621
- &.delay {
1622
-
1623
- .acf-editor-toolbar {
1624
- content: "";
1625
- display: block;
1626
- background: #f5f5f5;
1627
- border-bottom: #dddddd solid 1px;
1628
- color: #555d66;
1629
- padding: 10px;
1630
- }
1631
-
1632
- textarea {
1633
- padding: 10px;
1634
- }
1635
-
1636
- }
1637
- }
1638
-
1639
- .acf-editor-wrap iframe{
1640
- min-height: 200px;
1641
- }
1642
-
1643
- .acf-editor-wrap .wp-editor-container{
1644
- border: 1px solid #E5E5E5;
1645
- box-shadow: none;
1646
- }
1647
-
1648
- #mce_fullscreen_container {
1649
- z-index: 900000 !important;
1650
- }
1651
-
1652
-
1653
- /* WP < 4.1 */
1654
- .acf-editor-wrap .wp-switch-editor {
1655
- float: left;
1656
- -moz-box-sizing: content-box;
1657
- -webkit-box-sizing: content-box;
1658
- box-sizing: content-box;
1659
- }
1660
-
1661
- .acf-editor-wrap.tmce-active .wp-editor-area {
1662
- color: #333 !important;
1663
- }
1664
-
1665
-
1666
- /*---------------------------------------------------------------------------------------------
1667
- *
1668
- * Tab
1669
- *
1670
- *---------------------------------------------------------------------------------------------*/
1671
-
1672
- .acf-field-tab {
1673
- display: none !important;
1674
- }
1675
-
1676
- .hidden-by-tab {
1677
- display: none !important;
1678
- }
1679
-
1680
- .acf-tab-wrap {
1681
- clear: both;
1682
- }
1683
-
1684
- .acf-tab-group {
1685
- border-bottom: #ccc solid 1px;
1686
- padding: 10px 10px 0;
1687
-
1688
- li {
1689
- margin: 0 0 0 0.5em;
1690
-
1691
- a {
1692
- padding: 5px 10px;
1693
- display: block;
1694
-
1695
- color: #555;
1696
- font-size: 14px;
1697
- font-weight: 600;
1698
- line-height: 24px;
1699
-
1700
- border: #ccc solid 1px;
1701
- border-bottom: 0 none;
1702
- text-decoration: none;
1703
- background: #e5e5e5;
1704
- transition: none;
1705
-
1706
- &:hover {
1707
- background: #FFF;
1708
- }
1709
-
1710
- &:focus {
1711
- outline: none;
1712
- box-shadow: none;
1713
- }
1714
-
1715
- }
1716
-
1717
-
1718
- /* rtl */
1719
- html[dir="rtl"] & {
1720
- margin: 0 0.5em 0 0;
1721
- }
1722
-
1723
-
1724
- /* first */
1725
- &:first-child {
1726
- margin: 0 !important;
1727
- }
1728
-
1729
-
1730
- /* active */
1731
- &.active a {
1732
- background: #F1F1F1;
1733
- color: #000;
1734
- padding-bottom: 6px;
1735
- margin-bottom: -1px;
1736
- position: relative;
1737
- z-index: 1;
1738
- }
1739
- }
1740
- }
1741
-
1742
-
1743
- /* inside acf-fields */
1744
- .acf-fields > .acf-tab-wrap {
1745
- background: #F9F9F9;
1746
-
1747
- .acf-tab-group {
1748
- position: relative;
1749
- z-index: 1;
1750
- margin-bottom: -1px;
1751
-
1752
- border-top: #DFDFDF solid 1px;
1753
- border-bottom: #DFDFDF solid 1px;
1754
-
1755
- li a {
1756
- background: #f1f1f1;
1757
-
1758
- &:hover {
1759
- background: #FFF;
1760
- }
1761
- }
1762
-
1763
- li.active a {
1764
- background: #FFFFFF;
1765
- }
1766
- }
1767
-
1768
- &:first-child .acf-tab-group {
1769
- border-top: none;
1770
- }
1771
- }
1772
-
1773
-
1774
- /* inside acf-fields.-left */
1775
- .acf-fields.-left > .acf-tab-wrap .acf-tab-group {
1776
- padding-left: 20%;
1777
-
1778
- li:first-child {
1779
- margin: 0;
1780
- }
1781
-
1782
-
1783
- /* mobile */
1784
- @media screen and (max-width: 850px) {
1785
- padding-left: 10px;
1786
- }
1787
-
1788
-
1789
- /* rtl */
1790
- html[dir="rtl"] & {
1791
- padding-left: 0;
1792
- padding-right: 20%;
1793
-
1794
- /* mobile */
1795
- @media screen and (max-width: 850px) {
1796
- padding-right: 10px;
1797
- }
1798
- }
1799
- }
1800
-
1801
-
1802
- /* space between field and tabs */
1803
- .acf-field + .acf-tab-wrap.-left:before {
1804
- content: "";
1805
- display: block;
1806
- position: absolute;
1807
- z-index: 1;
1808
- background: #DFDFDF;
1809
- left: 0;
1810
- width: 100%;
1811
- height: 1px;
1812
- }
1813
-
1814
-
1815
- /* sidebar */
1816
- .acf-fields.-sidebar {
1817
- padding: 0 0 0 20% !important;
1818
- position: relative;
1819
-
1820
-
1821
- /* before */
1822
- &:before {
1823
- content: "";
1824
- display: block;
1825
- position: absolute;
1826
- top: 0;
1827
- left: 0;
1828
- width: 20%;
1829
- bottom: 0;
1830
- border-right: #DFDFDF solid 1px;
1831
- background: #F9F9F9;
1832
- z-index: 1;
1833
- }
1834
-
1835
-
1836
- /* rtl */
1837
- html[dir="rtl"] & {
1838
- padding: 0 20% 0 0 !important;
1839
-
1840
- &:before {
1841
- border-left: #DFDFDF solid 1px;
1842
- border-right-width: 0;
1843
- left: auto;
1844
- right: 0;
1845
- }
1846
- }
1847
-
1848
-
1849
- /* tab wrap left */
1850
- > .acf-tab-wrap.-left .acf-tab-group {
1851
- position: absolute;
1852
- left: 0;
1853
- width: 20%;
1854
- border: 0 none;
1855
- padding: 0 !important; /* important overrides 'left aligned labels' */
1856
- margin: 0;
1857
-
1858
- /* rtl */
1859
- html[dir="rtl"] & {
1860
- left: auto;
1861
- right: 0;
1862
- }
1863
-
1864
- li {
1865
- float: none;
1866
- margin: -1px 0 0;
1867
-
1868
- a {
1869
- border: 1px solid #ededed;
1870
- font-size: 13px;
1871
- line-height: 18px;
1872
- color: #0073aa;
1873
- padding: 10px;
1874
- font-weight: normal;
1875
- border-width: 1px 0;
1876
- border-radius: 0;
1877
- background: transparent;
1878
-
1879
- &:hover {
1880
- color: #00a0d2;
1881
- }
1882
- }
1883
-
1884
- &.active a {
1885
- border-color:#DFDFDF;
1886
- color: #000;
1887
- margin-right: -1px;
1888
- background: #fff;
1889
-
1890
- html[dir="rtl"] & { margin-right: 0; margin-left: -1px; }
1891
- }
1892
- }
1893
- }
1894
-
1895
-
1896
- /* .acf-fields.-left */
1897
- &.-left {
1898
- padding: 0 0 0 180px !important;
1899
-
1900
- /* rtl */
1901
- html[dir="rtl"] & {
1902
- padding: 0 180px 0 0 !important;
1903
- }
1904
-
1905
- &:before {
1906
- background: #F1F1F1;
1907
- border-color: #dfdfdf;
1908
- width: 180px;
1909
- }
1910
-
1911
- .acf-tab-wrap.-left .acf-tab-group {
1912
- width: 180px;
1913
-
1914
- li a {
1915
- border-color: #e4e4e4;
1916
- }
1917
-
1918
- li.active a {
1919
- background: #F9F9F9;
1920
- }
1921
-
1922
- }
1923
- }
1924
-
1925
-
1926
- /* first tab group */
1927
- .acf-tab-wrap.-left:first-child .acf-tab-group li:first-child a {
1928
- border-top-width: 0;
1929
- }
1930
-
1931
- }
1932
-
1933
-
1934
- /* seamless */
1935
- .acf-postbox.seamless {
1936
-
1937
- /* standard */
1938
- > .acf-fields > .acf-tab-wrap {
1939
- background: #f1f1f1;
1940
- margin-bottom: 10px;
1941
-
1942
- .acf-tab-group {
1943
-
1944
- li a {
1945
- background: #e5e5e5;
1946
-
1947
- &:hover {
1948
- background: #fff;
1949
- }
1950
- }
1951
-
1952
- li.active a {
1953
- background: #f1f1f1;
1954
- }
1955
-
1956
- }
1957
-
1958
- }
1959
-
1960
-
1961
- /* left label */
1962
- > .acf-fields.-left {
1963
-
1964
- /* left label, top tab */
1965
- > .acf-tab-wrap {
1966
-
1967
- }
1968
-
1969
- /* left label, left tab */
1970
- .acf-tab-wrap.-left .acf-tab-group {
1971
- margin-bottom: 0;
1972
-
1973
- li a {
1974
- border-width: 1px 0 1px 1px !important;
1975
- border-color: #cccccc;
1976
- background: #e5e5e5;
1977
- }
1978
-
1979
- li.active a {
1980
- background: #f1f1f1;
1981
- }
1982
- }
1983
-
1984
-
1985
- }
1986
-
1987
- }
1988
-
1989
-
1990
-
1991
- .compat-item .acf-tab-wrap td {
1992
- display: block;
1993
- }
1994
-
1995
-
1996
-
1997
-
1998
-
1999
- /* within gallery sidebar */
2000
- .acf-gallery-side .acf-tab-wrap {
2001
- border-top: 0 none !important;
2002
- }
2003
-
2004
- .acf-gallery-side .acf-tab-wrap .acf-tab-group {
2005
- margin: 10px 0 !important;
2006
- padding: 0 !important;
2007
- }
2008
-
2009
- .acf-gallery-side .acf-tab-group li.active a {
2010
- background: #F9F9F9 !important;
2011
- }
2012
-
2013
-
2014
-
2015
- /* withing widget */
2016
- .widget .acf-tab-group {
2017
- border-bottom-color: #e8e8e8;
2018
- }
2019
-
2020
- .widget .acf-tab-group li a {
2021
- background: #F1F1F1;
2022
- }
2023
-
2024
- .widget .acf-tab-group li.active a {
2025
- background: #fff;
2026
- }
2027
-
2028
-
2029
- /* media popup (edit image) */
2030
- .media-modal.acf-expanded .compat-attachment-fields > tbody > tr.acf-tab-wrap .acf-tab-group {
2031
- padding-left: 23%;
2032
- border-bottom-color: #DDDDDD;
2033
- }
2034
-
2035
-
2036
- /* table */
2037
- .form-table > tbody > tr.acf-tab-wrap td {
2038
- padding: 0;
2039
- }
2040
-
2041
- .form-table > tbody > tr.acf-tab-wrap .acf-tab-group {
2042
- padding: 0 5px 0 210px;
2043
- }
2044
-
2045
- /* rtl */
2046
- html[dir="rtl"] .form-table > tbody > tr.acf-tab-wrap .acf-tab-group {
2047
- padding: 0 210px 0 5px;
2048
- }
2049
-
2050
-
2051
- /*--------------------------------------------------------------------------------------------
2052
- *
2053
- * oembed
2054
- *
2055
- *--------------------------------------------------------------------------------------------*/
2056
-
2057
- .acf-oembed {
2058
- position: relative;
2059
- border: #DFDFDF solid 1px;
2060
- background: #fff;
2061
-
2062
- .title {
2063
- position: relative;
2064
- border-bottom: #DFDFDF solid 1px;
2065
- padding: 5px 10px;
2066
-
2067
- h4, input[type="text"] {
2068
- margin: 0;
2069
- font-size: 14px;
2070
- line-height: 30px;
2071
- height: 30px;
2072
- padding: 0;
2073
- border: 0 none;
2074
- box-shadow: none;
2075
- border-radius: 0;
2076
- font-family: inherit;
2077
- cursor: text;
2078
- }
2079
-
2080
- .search {
2081
- height: auto;
2082
- border: 0 none;
2083
- }
2084
-
2085
- .acf-actions {
2086
- padding: 6px;
2087
- }
2088
-
2089
- &:hover .acf-actions {
2090
- display: block;
2091
- }
2092
- }
2093
-
2094
-
2095
- .canvas {
2096
- position: relative;
2097
- min-height: 250px;
2098
- background: #F9F9F9;
2099
-
2100
- .canvas-media {
2101
- position: relative;
2102
- z-index: 1;
2103
- }
2104
-
2105
- iframe {
2106
- display: block;
2107
- margin: 0;
2108
- padding: 0;
2109
- width: 100%;
2110
- }
2111
-
2112
- .acf-icon.-picture {
2113
- position: absolute;
2114
- top: 50%;
2115
- left: 50%;
2116
- margin: -21px 0 0 -21px;
2117
- z-index: 0;
2118
-
2119
- height: 42px;
2120
- width: 42px;
2121
- font-size: 42px;
2122
- color: #999;
2123
- }
2124
-
2125
- .canvas-loading {
2126
- position: absolute;
2127
- top: 0;
2128
- left: 0;
2129
- right: 0;
2130
- bottom: 0;
2131
- z-index: 2;
2132
-
2133
- background: rgba(255,255,255,0.9);
2134
- display: none;
2135
- z-index: 2;
2136
-
2137
- i {
2138
- position: absolute;
2139
- top: 50%;
2140
- left: 50%;
2141
- margin: -10px 0 0 -10px;
2142
- }
2143
- }
2144
-
2145
- .canvas-error {
2146
- position: absolute;
2147
- top: 50%;
2148
- left: 0%;
2149
- right: 0%;
2150
- margin: -9px 0 0 0;
2151
- text-align: center;
2152
- display: none;
2153
-
2154
- p {
2155
- padding: 8px;
2156
- margin: 0;
2157
- display: inline;
2158
- }
2159
- }
2160
- }
2161
-
2162
- &.has-value .canvas {
2163
- min-height: 0;
2164
- }
2165
-
2166
- }
2167
-
2168
-
2169
- /* states */
2170
- .acf-oembed .title-value { display: none; }
2171
- .acf-oembed .title-search { display: block; }
2172
-
2173
- .acf-oembed.has-value .title-value { display: block; }
2174
- .acf-oembed.has-value .title-search { display: none; }
2175
- .acf-oembed.has-value .canvas .acf-icon { display: none; }
2176
-
2177
- .acf-oembed.is-editing .title-value { display: none; }
2178
- .acf-oembed.is-editing .title-search { display: block; }
2179
-
2180
- .acf-oembed.is-loading .canvas-loading { display: block; }
2181
- .acf-oembed.is-loading .title .acf-icon { display: none; }
2182
-
2183
- .acf-oembed.has-error .canvas-error { display: block; }
2184
- .acf-oembed.has-error .canvas .acf-icon { display: none; }
2185
-
2186
-
2187
- /*--------------------------------------------------------------------------------------------
2188
- *
2189
- * Image
2190
- *
2191
- *--------------------------------------------------------------------------------------------*/
2192
-
2193
- .acf-image-uploader {
2194
- .clearfix;
2195
- position: relative;
2196
-
2197
-
2198
- p {
2199
- margin: 0;
2200
- }
2201
-
2202
-
2203
- /* image wrap*/
2204
- .image-wrap {
2205
- position: relative;
2206
- float: left;
2207
-
2208
- img {
2209
- max-width: 100%;
2210
- width: auto;
2211
- height: auto;
2212
- display: block;
2213
- min-width: 30px;
2214
- min-height: 30px;
2215
- background: #f1f1f1;
2216
- margin: 0;
2217
- padding: 0;
2218
-
2219
-
2220
- /* svg */
2221
- &[src$=".svg"] {
2222
- min-height: 100px;
2223
- min-width: 100px;
2224
- }
2225
- }
2226
-
2227
-
2228
- /* hover */
2229
- &:hover .acf-actions {
2230
- display: block;
2231
- }
2232
- }
2233
-
2234
-
2235
- /* input */
2236
- input.button {
2237
- width: auto;
2238
- }
2239
-
2240
-
2241
- /* rtl */
2242
- html[dir="rtl"] & {
2243
-
2244
- .image-wrap {
2245
- float: right;
2246
- }
2247
-
2248
- }
2249
-
2250
- }
2251
-
2252
-
2253
- /*--------------------------------------------------------------------------------------------
2254
- *
2255
- * File
2256
- *
2257
- *--------------------------------------------------------------------------------------------*/
2258
-
2259
- .acf-file-uploader {
2260
- position: relative;
2261
-
2262
- p {
2263
- margin: 0;
2264
- }
2265
-
2266
- .file-wrap {
2267
- border: #DFDFDF solid 1px;
2268
- min-height: 84px;
2269
- position: relative;
2270
- background: #fff;
2271
- }
2272
-
2273
- .file-icon {
2274
- position: absolute;
2275
- top: 0;
2276
- left: 0;
2277
- bottom: 0;
2278
- padding: 10px;
2279
- background: #F1F1F1;
2280
- border-right: #E5E5E5 solid 1px;
2281
-
2282
- img {
2283
- display: block;
2284
- padding: 0;
2285
- margin: 0;
2286
- max-width: 48px;
2287
- }
2288
- }
2289
-
2290
- .file-info {
2291
- padding: 10px;
2292
- margin-left: 69px;
2293
-
2294
- p {
2295
- margin: 0 0 2px;
2296
- font-size: 13px;
2297
- line-height: 1.4em;
2298
- word-break: break-all;
2299
- }
2300
-
2301
- a {
2302
- text-decoration: none;
2303
- }
2304
- }
2305
-
2306
- /* hover */
2307
- &:hover .acf-actions {
2308
- display: block;
2309
- }
2310
-
2311
-
2312
- /* rtl */
2313
- html[dir="rtl"] & {
2314
-
2315
- .file-icon {
2316
- left: auto;
2317
- right: 0;
2318
- border-left: #E5E5E5 solid 1px;
2319
- border-right: none;
2320
- }
2321
-
2322
- .file-info {
2323
- margin-right: 69px;
2324
- margin-left: 0;
2325
- }
2326
- }
2327
-
2328
- }
2329
-
2330
-
2331
- /*---------------------------------------------------------------------------------------------
2332
- *
2333
- * Date Picker
2334
- *
2335
- *---------------------------------------------------------------------------------------------*/
2336
-
2337
- .acf-ui-datepicker .ui-datepicker {
2338
- z-index: 900000 !important;
2339
-
2340
- .ui-widget-header a {
2341
- cursor: pointer;
2342
- transition: none;
2343
- }
2344
- }
2345
-
2346
-
2347
- /* fix highlight state overriding hover / active */
2348
- .acf-ui-datepicker .ui-state-highlight.ui-state-hover {
2349
- border: 1px solid #98b7e8 !important;
2350
- background: #98b7e8 !important;
2351
- font-weight: normal !important;
2352
- color: #ffffff !important;
2353
- }
2354
-
2355
- .acf-ui-datepicker .ui-state-highlight.ui-state-active {
2356
- border: 1px solid #3875d7 !important;
2357
- background: #3875d7 !important;
2358
- font-weight: normal !important;
2359
- color: #ffffff !important;
2360
- }
2361
-
2362
-
2363
- /*---------------------------------------------------------------------------------------------
2364
- *
2365
- * Separator field
2366
- *
2367
- *---------------------------------------------------------------------------------------------*/
2368
-
2369
- .acf-field-separator {
2370
-
2371
- .acf-label {
2372
- margin-bottom: 0;
2373
-
2374
- label {
2375
- font-weight: normal;
2376
- }
2377
- }
2378
-
2379
- .acf-input {
2380
- display: none;
2381
- }
2382
-
2383
-
2384
- /* fields */
2385
- .acf-fields > & {
2386
- background: #f9f9f9;
2387
- border-bottom: 1px solid #dfdfdf;
2388
- border-top: 1px solid #dfdfdf;
2389
- margin-bottom: -1px;
2390
- z-index: 2;
2391
- }
2392
-
2393
- /* sidebar */
2394
- .acf-fields.-sidebar > & {
2395
-
2396
- }
2397
-
2398
- }
2399
-
2400
-
2401
- /*---------------------------------------------------------------------------------------------
2402
- *
2403
- * Taxonomy
2404
- *
2405
- *---------------------------------------------------------------------------------------------*/
2406
-
2407
- .acf-taxonomy-field {
2408
- position: relative;
2409
-
2410
- ul {
2411
-
2412
- li {
2413
-
2414
- }
2415
- }
2416
-
2417
- .categorychecklist-holder {
2418
- border: #DFDFDF solid 1px;
2419
- border-radius: 3px;
2420
- max-height: 200px;
2421
- overflow: auto;
2422
- }
2423
-
2424
- .acf-checkbox-list {
2425
- margin: 0;
2426
- padding: 10px;
2427
-
2428
- ul.children {
2429
- padding-left: 18px;
2430
- }
2431
- }
2432
-
2433
-
2434
- /* hover */
2435
- &:hover {
2436
-
2437
- .acf-actions {
2438
- display: block;
2439
- }
2440
-
2441
- }
2442
-
2443
-
2444
- /* select */
2445
- &[data-type="select"] {
2446
-
2447
- .acf-actions {
2448
- padding: 0;
2449
- margin: -9px;
2450
- }
2451
-
2452
- }
2453
-
2454
- }
2455
-
2456
-
2457
- /*---------------------------------------------------------------------------------------------
2458
- *
2459
- * Range
2460
- *
2461
- *---------------------------------------------------------------------------------------------*/
2462
-
2463
- .acf-range-wrap {
2464
-
2465
- .acf-append,
2466
- .acf-prepend {
2467
- display: inline-block;
2468
- vertical-align: middle;
2469
- line-height: 28px;
2470
- margin: 0 7px 0 0;
2471
- }
2472
-
2473
- .acf-append {
2474
- margin: 0 0 0 7px;
2475
- }
2476
-
2477
- input[type="range"] {
2478
- display: inline-block;
2479
- padding: 0;
2480
- margin: 0;
2481
- vertical-align: middle;
2482
- height: 28px;
2483
-
2484
- &:focus {
2485
- outline: none;
2486
- }
2487
-
2488
- }
2489
-
2490
- input[type="number"] {
2491
- display: inline-block;
2492
- min-width: 3em;
2493
- margin-left: 10px;
2494
- vertical-align: middle;
2495
- }
2496
-
2497
-
2498
- /* rtl */
2499
- html[dir="rtl"] & {
2500
-
2501
- input[type="number"] {
2502
- margin-right: 10px;
2503
- margin-left: 0;
2504
- }
2505
-
2506
- .acf-append { margin: 0 7px 0 0; }
2507
- .acf-prepend { margin: 0 0 0 7px; }
2508
-
2509
- }
2510
-
2511
- }
2512
-
2513
-
2514
-
2515
- /*---------------------------------------------------------------------------------------------
2516
- *
2517
- * Media Model
2518
- *
2519
- *---------------------------------------------------------------------------------------------*/
2520
-
2521
- /* WP sets tables to act as divs. ACF uses tables, so these muct be reset */
2522
- .media-modal .compat-attachment-fields td.acf-input {
2523
-
2524
- table {
2525
- display: table;
2526
-
2527
- tbody {
2528
- display: table-row-group;
2529
- }
2530
-
2531
- tr {
2532
- display: table-row;
2533
- }
2534
-
2535
- td, th {
2536
- display: table-cell;
2537
- }
2538
-
2539
- }
2540
-
2541
- }
2542
-
2543
-
2544
- /* field widths floats */
2545
- .media-modal .compat-attachment-fields > tbody > .acf-field {
2546
- margin: 0;
2547
-
2548
- > .acf-label {
2549
- min-width: 30%;
2550
- margin: 0;
2551
- padding: 0;
2552
- float: left;
2553
- text-align: right;
2554
- display: block;
2555
- float: left;
2556
-
2557
- > label {
2558
- padding-top: 6px;
2559
- margin: 0;
2560
- color: #666666;
2561
- font-weight: 400;
2562
- line-height: 16px;
2563
- }
2564
- }
2565
-
2566
- > .acf-input {
2567
- width: 65%;
2568
- margin: 0;
2569
- padding: 0;
2570
- float: right;
2571
- display: block;
2572
- }
2573
-
2574
- p.description {
2575
- margin: 0;
2576
- }
2577
- }
2578
-
2579
-
2580
- /* restricted selection (copy of WP .upload-errors)*/
2581
- .acf-selection-error {
2582
- background: #ffebe8;
2583
- border: 1px solid #c00;
2584
- border-radius: 3px;
2585
- padding: 8px;
2586
- margin: 20px 0 0;
2587
-
2588
- .selection-error-label {
2589
- background: #CC0000;
2590
- border-radius: 3px;
2591
- color: #fff;
2592
- font-weight: bold;
2593
- margin-right: 8px;
2594
- padding: 2px 4px;
2595
- }
2596
-
2597
- .selection-error-message {
2598
- color: #b44;
2599
- display: block;
2600
- padding-top: 8px;
2601
- word-wrap: break-word;
2602
- white-space: pre-wrap;
2603
- }
2604
- }
2605
-
2606
-
2607
- /* disabled attachment */
2608
- .media-modal .attachment.acf-disabled {
2609
-
2610
- .thumbnail {
2611
- opacity: 0.25 !important;
2612
- }
2613
-
2614
- .attachment-preview:before {
2615
- background: rgba(0,0,0,0.15);
2616
- z-index: 1;
2617
- position: relative;
2618
- }
2619
-
2620
- }
2621
-
2622
-
2623
- /* misc */
2624
- .media-modal {
2625
-
2626
- /* compat-item */
2627
- .compat-field-acf-form-data,
2628
- .compat-field-acf-blank {
2629
- display: none !important;
2630
- }
2631
-
2632
-
2633
- /* fix % margin which causes .acf-uploadedTo to drop down below select */
2634
- select.attachment-filters {
2635
- margin-right: 6px !important;
2636
- vertical-align: middle;
2637
- }
2638
-
2639
- .acf-uploadedTo {
2640
- line-height: 28px;
2641
- height: 28px;
2642
- display: inline-block;
2643
- position: relative;
2644
- margin: 11px 6px 0 0;
2645
- vertical-align: middle;
2646
- }
2647
-
2648
-
2649
- /* allow line breaks in upload error */
2650
- .upload-error-message {
2651
- white-space: pre-wrap;
2652
- }
2653
-
2654
-
2655
- /* fix required span */
2656
- .acf-required {
2657
- padding: 0 !important;
2658
- margin: 0 !important;
2659
- float: none !important;
2660
- color: #f00 !important;
2661
- }
2662
-
2663
-
2664
- /* sidebar */
2665
- .media-sidebar {
2666
-
2667
- .compat-item{
2668
- padding-bottom: 20px;
2669
- }
2670
-
2671
- }
2672
-
2673
-
2674
- /* mobile md */
2675
- @media (max-width: 900px) {
2676
-
2677
- /* label */
2678
- .setting span,
2679
- .compat-attachment-fields > tbody > .acf-field > .acf-label {
2680
- width: 98%;
2681
- float: none;
2682
- text-align: left;
2683
- min-height: 0;
2684
- padding: 0;
2685
- }
2686
-
2687
-
2688
- /* field */
2689
- .setting input,
2690
- .setting textarea,
2691
- .compat-attachment-fields > tbody > .acf-field > .acf-input {
2692
- float: none;
2693
- height: auto;
2694
- max-width: none;
2695
- width: 98%;
2696
- }
2697
-
2698
- }
2699
-
2700
-
2701
- }
2702
-
2703
-
2704
-
2705
- /*---------------------------------------------------------------------------------------------
2706
- *
2707
- * Media Model (expand details)
2708
- *
2709
- *---------------------------------------------------------------------------------------------*/
2710
-
2711
- .media-modal .acf-expand-details {
2712
- float: right;
2713
- padding: 1px 10px;
2714
- margin-right: 6px;
2715
- height: 18px;
2716
- line-height: 18px;
2717
- color: #AAAAAA;
2718
- font-size: 12px;
2719
-
2720
- &:focus, &:active {
2721
- outline: 0 none;
2722
- box-shadow: none;
2723
- color: #AAAAAA;
2724
- }
2725
-
2726
- &:hover {
2727
- color: #666666 !important;
2728
- }
2729
-
2730
- span {
2731
- display: block;
2732
- float: left;
2733
- }
2734
-
2735
- .acf-icon {
2736
- margin: 0 4px 0 0;
2737
- }
2738
-
2739
- &:hover .acf-icon {
2740
- border-color: #AAAAAA;
2741
- }
2742
-
2743
- .is-open { display: none; }
2744
- .is-closed { display: block; }
2745
-
2746
- }
2747
-
2748
-
2749
- /* expanded */
2750
- .media-modal.acf-expanded {
2751
-
2752
- /* toggle */
2753
- .acf-expand-details {
2754
-
2755
- .is-open { display: block; }
2756
- .is-closed { display: none; }
2757
-
2758
- }
2759
-
2760
-
2761
- /* resize */
2762
- .attachments-browser .media-toolbar,
2763
- .attachments-browser .attachments { right: 740px; }
2764
- .media-sidebar { width: 708px; }
2765
-
2766
-
2767
- /* label & fields */
2768
- .media-sidebar {
2769
-
2770
- /* label */
2771
- .attachment-info .thumbnail,
2772
- .setting span,
2773
- .compat-attachment-fields > tbody > .acf-field > .acf-label {
2774
- min-width: 20%;
2775
- }
2776
-
2777
-
2778
- /* field */
2779
- .attachment-info .details,
2780
- .setting input,
2781
- .setting textarea,
2782
- .compat-attachment-fields > tbody > .acf-field > .acf-input {
2783
- min-width: 77%;
2784
- }
2785
-
2786
- .setting span {
2787
- margin-right: 2%;
2788
- }
2789
-
2790
-
2791
- /* larger thumbnail */
2792
- .attachment-info {
2793
-
2794
- .thumbnail {
2795
- max-height: none;
2796
-
2797
- img {
2798
- max-width: 100%;
2799
- max-height: 200px;
2800
- }
2801
-
2802
- }
2803
-
2804
- .details {
2805
- float: right;
2806
-
2807
- }
2808
-
2809
- }
2810
-
2811
- }
2812
-
2813
-
2814
- /* mobile md */
2815
- @media (max-width: 900px) {
2816
-
2817
- /* resize */
2818
- .attachments-browser .media-toolbar { display: none; }
2819
- .attachments { display: none; }
2820
- .media-sidebar { width: auto; max-width: none !important; }
2821
-
2822
-
2823
- .media-sidebar {
2824
-
2825
- .attachment-info {
2826
-
2827
- .thumbnail {
2828
- min-width: 30%;
2829
- margin: 0;
2830
- }
2831
-
2832
- .details {
2833
- min-width: 67%;
2834
- }
2835
-
2836
- }
2837
-
2838
- }
2839
-
2840
- }
2841
-
2842
- }
2843
-
2844
-
2845
-
2846
- /*---------------------------------------------------------------------------------------------
2847
- *
2848
- * ACF Media Model
2849
- *
2850
- *---------------------------------------------------------------------------------------------*/
2851
-
2852
- .acf-media-modal {
2853
-
2854
- /* hide embed settings */
2855
- .media-embed {
2856
-
2857
- .setting.align,
2858
- .setting.link-to {
2859
- display: none;
2860
- }
2861
-
2862
- }
2863
-
2864
- }
2865
-
2866
-
2867
- /*---------------------------------------------------------------------------------------------
2868
- *
2869
- * ACF Media Model (Select Mode)
2870
- *
2871
- *---------------------------------------------------------------------------------------------*/
2872
-
2873
- .acf-media-modal.-select {
2874
-
2875
-
2876
-
2877
- }
2878
-
2879
-
2880
- /*---------------------------------------------------------------------------------------------
2881
- *
2882
- * ACF Media Model (Edit Mode)
2883
- *
2884
- *---------------------------------------------------------------------------------------------*/
2885
-
2886
- .acf-media-modal.-edit {
2887
-
2888
- /* resize modal */
2889
- left: 15%;
2890
- right: 15%;
2891
- top: 100px;
2892
- bottom: 100px;
2893
-
2894
-
2895
- /* hide elements */
2896
- .media-frame-menu,
2897
- .media-frame-router,
2898
- .media-frame-content .attachments,
2899
- .media-frame-content .media-toolbar {
2900
- display: none;
2901
- }
2902
-
2903
-
2904
- /* full width */
2905
- .media-frame-title,
2906
- .media-frame-content,
2907
- .media-frame-toolbar,
2908
- .media-sidebar {
2909
- width: auto;
2910
- left: 0;
2911
- right: 0;
2912
- }
2913
-
2914
-
2915
- /* tidy up incorrect distance */
2916
- .media-frame-content {
2917
- top: 56px;
2918
- }
2919
-
2920
-
2921
- /* WP4 */
2922
- body.major-4 & .media-frame-content {
2923
- top: 50px;
2924
- }
2925
-
2926
-
2927
- /* title box shadow (to match media grid) */
2928
- .media-frame-title {
2929
- border-bottom: 1px solid #DFDFDF;
2930
- box-shadow: 0 4px 4px -4px rgba(0, 0, 0, 0.1);
2931
- }
2932
-
2933
-
2934
- /* sidebar */
2935
- .media-sidebar {
2936
-
2937
- padding: 0 16px;
2938
-
2939
- /* WP details */
2940
- .attachment-details {
2941
-
2942
- overflow: visible;
2943
-
2944
- /* hide 'Attachment Details' heading */
2945
- > h3, > h2 {
2946
- display: none;
2947
- }
2948
-
2949
-
2950
- /* remove overflow */
2951
- .attachment-info {
2952
- background: #fff;
2953
- border-bottom: #dddddd solid 1px;
2954
- padding: 16px;
2955
- margin: 0 -16px 16px;
2956
- }
2957
-
2958
- /* move thumbnail */
2959
- .thumbnail {
2960
- margin: 0 16px 0 0;
2961
- }
2962
-
2963
- .setting {
2964
- display: block;
2965
- overflow: hidden;
2966
- float: none;
2967
- width: auto;
2968
- margin: 0 0 5px;
2969
-
2970
- span {
2971
- margin: 0;
2972
- }
2973
- }
2974
-
2975
- }
2976
-
2977
-
2978
- /* ACF fields */
2979
- .compat-attachment-fields {
2980
-
2981
- > tbody > .acf-field {
2982
- margin: 0 0 5px;
2983
-
2984
- p.description {
2985
- margin-top: 3px;
2986
- }
2987
- }
2988
-
2989
- }
2990
-
2991
-
2992
- /* WP required message */
2993
- .media-types-required-info { display: none; }
2994
-
2995
- }
2996
-
2997
-
2998
- /* mobile md */
2999
- @media (max-width: 900px) {
3000
-
3001
- & {
3002
- top: 30px;
3003
- right: 30px;
3004
- bottom: 30px;
3005
- left: 30px;
3006
- }
3007
-
3008
- }
3009
-
3010
-
3011
- /* mobile sm */
3012
- @media (max-width: 640px) {
3013
-
3014
- & {
3015
- top: 0;
3016
- right: 0;
3017
- bottom: 0;
3018
- left: 0;
3019
- }
3020
-
3021
- .media-sidebar {
3022
- bottom: 0 !important;
3023
- }
3024
-
3025
- }
3026
-
3027
- }
3028
-
3029
-
3030
- /*--------------------------------------------------------------------------------------------
3031
- *
3032
- * User
3033
- *
3034
- *--------------------------------------------------------------------------------------------*/
3035
-
3036
- .form-table > tbody {
3037
-
3038
- /* field */
3039
- > .acf-field {
3040
-
3041
- /* label */
3042
- > .acf-label {
3043
- padding: 20px 10px 20px 0;
3044
- width: 210px;
3045
-
3046
- /* rtl */
3047
- html[dir="rtl"] & {
3048
- padding: 20px 0 20px 10px;
3049
- }
3050
-
3051
- label {
3052
- font-size: 14px;
3053
- color: #23282d;
3054
- }
3055
-
3056
- }
3057
-
3058
-
3059
- /* input */
3060
- > .acf-input {
3061
- padding: 15px 5% 15px 10px;
3062
-
3063
- /* rtl */
3064
- html[dir="rtl"] & {
3065
- padding: 15px 10px 15px 5%;
3066
- }
3067
- }
3068
-
3069
- }
3070
-
3071
-
3072
- /* tab wrap */
3073
- > .acf-tab-wrap td {
3074
- padding: 15px 5% 15px 0;
3075
-
3076
- /* rtl */
3077
- html[dir="rtl"] & {
3078
- padding: 15px 0 15px 5%;
3079
- }
3080
-
3081
- }
3082
-
3083
-
3084
- /* misc */
3085
- .form-table th.acf-th {
3086
- width: auto;
3087
- }
3088
-
3089
- }
3090
-
3091
-
3092
- /*--------------------------------------------------------------------------------------------
3093
- *
3094
- * Term
3095
- *
3096
- *--------------------------------------------------------------------------------------------*/
3097
-
3098
- #addtag > .acf-field {
3099
- padding-right: 5%;
3100
- }
3101
-
3102
- #addtag > .acf-field .acf-label {
3103
- margin: 0;
3104
- }
3105
-
3106
- #addtag > .acf-field .acf-label label {
3107
- font-size: 12px;
3108
- font-weight: normal;
3109
- }
3110
-
3111
- p.submit .spinner,
3112
- p.submit .acf-spinner {
3113
- vertical-align: top;
3114
- float: none;
3115
- margin: 4px 4px 0;
3116
- }
3117
-
3118
-
3119
- /*--------------------------------------------------------------------------------------------
3120
- *
3121
- * Comment
3122
- *
3123
- *--------------------------------------------------------------------------------------------*/
3124
-
3125
- .editcomment td:first-child {
3126
- white-space: nowrap;
3127
- width: 131px;
3128
- }
3129
-
3130
-
3131
- /*--------------------------------------------------------------------------------------------
3132
- *
3133
- * Widget
3134
- *
3135
- *--------------------------------------------------------------------------------------------*/
3136
-
3137
- #widgets-right .widget .acf-field .description {
3138
- padding-left: 0;
3139
- padding-right: 0;
3140
- }
3141
-
3142
- .widget {
3143
-
3144
- .acf-field {
3145
- margin: 1em 0;
3146
-
3147
- .acf-label {
3148
- margin-bottom: 5px;
3149
-
3150
- label {
3151
- font-weight: normal;
3152
- margin: 0;
3153
- }
3154
- }
3155
- }
3156
-
3157
- .widget-inside > form > .acf-error-message {
3158
- margin-top: 15px;
3159
- }
3160
- }
3161
-
3162
-
3163
- /*--------------------------------------------------------------------------------------------
3164
- *
3165
- * Customizer
3166
- *
3167
- *--------------------------------------------------------------------------------------------*/
3168
-
3169
- .customize-control .acf-field {
3170
- margin: 1em 0;
3171
- }
3172
-
3173
-
3174
- /*--------------------------------------------------------------------------------------------
3175
- *
3176
- * Nav Menu
3177
- *
3178
- *--------------------------------------------------------------------------------------------*/
3179
-
3180
- .acf-menu-settings {
3181
- border-top: 1px solid #eee;
3182
- margin-top: 2em;
3183
-
3184
-
3185
- /* fields */
3186
- > .acf-fields {
3187
-
3188
- > .acf-field {
3189
- padding-left: 20%;
3190
- margin: 0 0 10px;
3191
-
3192
- > .acf-label {
3193
- width: 25%;
3194
- margin-left: -25%;
3195
-
3196
- label {
3197
- color: #666;
3198
- font-style: italic;
3199
- font-weight: normal;
3200
- }
3201
- }
3202
- }
3203
-
3204
- }
3205
-
3206
-
3207
- /* seamless */
3208
- &.-seamless {
3209
- border-top: none;
3210
- margin-top: 15px;
3211
-
3212
- > h2 { display: none; }
3213
- }
3214
- }
3215
-
3216
-
3217
- .menu-item-settings {
3218
-
3219
- /* fields */
3220
- > .field-acf {
3221
-
3222
- > .acf-field {
3223
- margin: 0 0 10px;
3224
-
3225
- > .acf-label {
3226
- margin: 0;
3227
-
3228
- label {
3229
- color: #666;
3230
- font-style: italic;
3231
- font-weight: normal;
3232
- margin: 0;
3233
- }
3234
- }
3235
- }
3236
- }
3237
-
3238
- }
3239
-
3240
-
3241
- /*--------------------------------------------------------------------------------------------
3242
- *
3243
- * Confirm remove
3244
- *
3245
- *--------------------------------------------------------------------------------------------*/
3246
-
3247
- .acf-temp-remove {
3248
- position: relative;
3249
- opacity: 1;
3250
- -webkit-transition: all 0.25s ease;
3251
- -moz-transition: all 0.25s ease;
3252
- -o-transition: all 0.25s ease;
3253
- transition: all 0.25s ease;
3254
- overflow: hidden;
3255
-
3256
- /* overlay prevents hover */
3257
- &:after {
3258
- display: block;
3259
- content: "";
3260
- position: absolute;
3261
- top: 0;
3262
- left: 0;
3263
- right: 0;
3264
- bottom: 0;
3265
- z-index: 99;
3266
- }
3267
- }
3268
-
3269
-
3270
- /*--------------------------------------------------------------------------
3271
- *
3272
- * Conditional Logic
3273
- *
3274
- *-------------------------------------------------------------------------*/
3275
-
3276
- /* Hide */
3277
- .hidden-by-conditional-logic {
3278
- display: none !important;
3279
- }
3280
-
3281
-
3282
- /* Hide (appear empty) */
3283
- .hidden-by-conditional-logic.appear-empty {
3284
- display: table-cell !important;
3285
- }
3286
-
3287
- .hidden-by-conditional-logic.appear-empty .acf-input {
3288
- display: none !important;
3289
- }
3290
-
3291
-
3292
- /*--------------------------------------------------------------------------
3293
- *
3294
- * 3rd Party
3295
- *
3296
- *-------------------------------------------------------------------------*/
3297
-
3298
- /* Tabify shows hidden postboxes */
3299
- .acf-postbox.acf-hidden {
3300
- display: none !important;
3301
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/_build/css/vars.less DELETED
@@ -1,42 +0,0 @@
1
- /*--------------------------------------------------------------------------------------------
2
- *
3
- * Vars
4
- *
5
- *--------------------------------------------------------------------------------------------*/
6
-
7
- /* colors */
8
- @acf_blue: #2a9bd9;
9
-
10
-
11
- /* acf-field */
12
- @field_padding: 15px 12px;
13
- @field_padding_x: 12px;
14
- @field_padding_y: 15px;
15
-
16
-
17
- /* responsive */
18
- @md: 880px;
19
- @sm: 782px;
20
-
21
-
22
- /*--------------------------------------------------------------------------------------------
23
- *
24
- * Mixins
25
- *
26
- *--------------------------------------------------------------------------------------------*/
27
-
28
- .clearfix() {
29
-
30
- &:after {
31
- clear: both;
32
- content: "";
33
- display: table;
34
- }
35
-
36
- }
37
-
38
- .border-box() {
39
- -webkit-box-sizing: border-box;
40
- -moz-box-sizing: border-box;
41
- box-sizing: border-box;
42
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/_build/js/acf-ajax.js DELETED
@@ -1,376 +0,0 @@
1
- (function($){
2
-
3
- acf.ajax = acf.model.extend({
4
-
5
- active: false,
6
- actions: {
7
- 'ready': 'ready'
8
- },
9
- events: {
10
- 'change #page_template': '_change_template',
11
- 'change #parent_id': '_change_parent',
12
- 'change #post-formats-select input': '_change_format',
13
- 'change .categorychecklist input': '_change_term',
14
- 'change .categorychecklist select': '_change_term',
15
- 'change .acf-taxonomy-field[data-save="1"] input': '_change_term',
16
- 'change .acf-taxonomy-field[data-save="1"] select': '_change_term'
17
- },
18
- o: {
19
- //'post_id': 0,
20
- //'page_template': 0,
21
- //'page_parent': 0,
22
- //'page_type': 0,
23
- //'post_format': 0,
24
- //'post_taxonomy': 0
25
- },
26
- xhr: null,
27
-
28
- update: function( k, v ){
29
-
30
- this.o[ k ] = v;
31
-
32
- return this;
33
-
34
- },
35
-
36
- get: function( k ){
37
-
38
- return this.o[ k ] || null;
39
-
40
- },
41
-
42
- ready: function(){
43
-
44
- // update post_id
45
- this.update('post_id', acf.get('post_id'));
46
-
47
-
48
- // active
49
- this.active = true;
50
-
51
- },
52
-
53
- /*
54
- timeout: null,
55
- maybe_fetch: function(){
56
-
57
- // reference
58
- var self = this;
59
-
60
-
61
- // abort timeout
62
- if( this.timeout ) {
63
-
64
- clearTimeout( this.timeout );
65
-
66
- }
67
-
68
-
69
- // fetch
70
- this.timeout = setTimeout(function(){
71
-
72
- self.fetch();
73
-
74
- }, 100);
75
-
76
- },
77
- */
78
-
79
- fetch: function(){
80
-
81
- // bail early if not active
82
- if( !this.active ) return;
83
-
84
-
85
- // bail early if no ajax
86
- if( !acf.get('ajax') ) return;
87
-
88
-
89
- // abort XHR if is already loading AJAX data
90
- if( this.xhr ) {
91
-
92
- this.xhr.abort();
93
-
94
- }
95
-
96
-
97
- // vars
98
- var self = this,
99
- data = this.o;
100
-
101
-
102
- // add action url
103
- data.action = 'acf/post/get_field_groups';
104
-
105
-
106
- // add ignore
107
- data.exists = [];
108
-
109
- $('.acf-postbox').not('.acf-hidden').each(function(){
110
-
111
- data.exists.push( $(this).attr('id').substr(4) );
112
-
113
- });
114
-
115
-
116
- // ajax
117
- this.xhr = $.ajax({
118
- url: acf.get('ajaxurl'),
119
- data: acf.prepare_for_ajax( data ),
120
- type: 'post',
121
- dataType: 'json',
122
-
123
- success: function( json ){
124
-
125
- if( acf.is_ajax_success( json ) ) {
126
-
127
- self.render( json.data );
128
-
129
- }
130
-
131
- }
132
- });
133
-
134
- },
135
-
136
- render: function( json ){
137
-
138
- // hide
139
- $('.acf-postbox').addClass('acf-hidden');
140
- $('.acf-postbox-toggle').addClass('acf-hidden');
141
-
142
-
143
- // reset style
144
- $('#acf-style').html('');
145
-
146
-
147
- // show the new postboxes
148
- $.each(json, function( k, field_group ){
149
-
150
- // vars
151
- var $postbox = $('#acf-' + field_group.key),
152
- $toggle = $('#acf-' + field_group.key + '-hide'),
153
- $label = $toggle.parent();
154
-
155
-
156
- // show
157
- // use show() to force display when postbox has been hidden by 'Show on screen' toggle
158
- $postbox.removeClass('acf-hidden hide-if-js').show();
159
- $label.removeClass('acf-hidden hide-if-js').show();
160
- $toggle.prop('checked', true);
161
-
162
-
163
- // replace HTML if needed
164
- var $replace = $postbox.find('.acf-replace-with-fields');
165
-
166
- if( $replace.exists() ) {
167
-
168
- $replace.replaceWith( field_group.html );
169
-
170
- acf.do_action('append', $postbox);
171
-
172
- }
173
-
174
-
175
- // update style if needed
176
- if( k === 0 ) {
177
-
178
- $('#acf-style').html( field_group.style );
179
-
180
- }
181
-
182
-
183
- // enable inputs
184
- $postbox.find('.acf-hidden-by-postbox').prop('disabled', false);
185
-
186
- });
187
-
188
-
189
- // disable inputs
190
- $('.acf-postbox.acf-hidden').find('select, textarea, input').not(':disabled').each(function(){
191
-
192
- $(this).addClass('acf-hidden-by-postbox').prop('disabled', true);
193
-
194
- });
195
-
196
- },
197
-
198
- sync_taxonomy_terms: function(){
199
-
200
- // vars
201
- var values = [''];
202
-
203
-
204
- // loop over term lists
205
- $('.categorychecklist, .acf-taxonomy-field').each(function(){
206
-
207
- // vars
208
- var $el = $(this),
209
- $checkbox = $el.find('input[type="checkbox"]').not(':disabled'),
210
- $radio = $el.find('input[type="radio"]').not(':disabled'),
211
- $select = $el.find('select').not(':disabled'),
212
- $hidden = $el.find('input[type="hidden"]').not(':disabled');
213
-
214
-
215
- // bail early if not a field which saves taxonomy terms to post
216
- if( $el.is('.acf-taxonomy-field') && $el.attr('data-save') != '1' ) {
217
-
218
- return;
219
-
220
- }
221
-
222
-
223
- // bail early if in attachment
224
- if( $el.closest('.media-frame').exists() ) {
225
-
226
- return;
227
-
228
- }
229
-
230
-
231
- // checkbox
232
- if( $checkbox.exists() ) {
233
-
234
- $checkbox.filter(':checked').each(function(){
235
-
236
- values.push( $(this).val() );
237
-
238
- });
239
-
240
- } else if( $radio.exists() ) {
241
-
242
- $radio.filter(':checked').each(function(){
243
-
244
- values.push( $(this).val() );
245
-
246
- });
247
-
248
- } else if( $select.exists() ) {
249
-
250
- $select.find('option:selected').each(function(){
251
-
252
- values.push( $(this).val() );
253
-
254
- });
255
-
256
- } else if( $hidden.exists() ) {
257
-
258
- $hidden.each(function(){
259
-
260
- // ignor blank values
261
- if( ! $(this).val() ) {
262
-
263
- return;
264
-
265
- }
266
-
267
- values.push( $(this).val() );
268
-
269
- });
270
-
271
- }
272
-
273
- });
274
-
275
-
276
- // filter duplicates
277
- values = values.filter (function (v, i, a) { return a.indexOf (v) == i });
278
-
279
-
280
- // update screen
281
- this.update( 'post_taxonomy', values ).fetch();
282
-
283
- },
284
-
285
-
286
- /*
287
- * events
288
- *
289
- * description
290
- *
291
- * @type function
292
- * @date 29/09/2015
293
- * @since 5.2.3
294
- *
295
- * @param $post_id (int)
296
- * @return $post_id (int)
297
- */
298
-
299
- _change_template: function( e ){
300
-
301
- // vars
302
- var page_template = e.$el.val();
303
-
304
-
305
- // update & fetch
306
- this.update('page_template', page_template).fetch();
307
-
308
- },
309
-
310
- _change_parent: function( e ){
311
-
312
- // vars
313
- var page_type = 'parent',
314
- page_parent = 0;
315
-
316
-
317
- // if is child
318
- if( e.$el.val() != "" ) {
319
-
320
- page_type = 'child';
321
- page_parent = e.$el.val();
322
-
323
- }
324
-
325
- // update & fetch
326
- this.update('page_type', page_type).update('page_parent', page_parent).fetch();
327
-
328
- },
329
-
330
- _change_format: function( e ){
331
-
332
- // vars
333
- var post_format = e.$el.val();
334
-
335
-
336
- // default
337
- if( post_format == '0' ) {
338
-
339
- post_format = 'standard';
340
-
341
- }
342
-
343
-
344
- // update & fetch
345
- this.update('post_format', post_format).fetch();
346
-
347
- },
348
-
349
- _change_term: function( e ){
350
-
351
- // reference
352
- var self = this;
353
-
354
-
355
- // bail early if within media popup
356
- if( e.$el.closest('.media-frame').exists() ) {
357
-
358
- return;
359
-
360
- }
361
-
362
-
363
- // set timeout to fix issue with chrome which does not register the change has yet happened
364
- setTimeout(function(){
365
-
366
- self.sync_taxonomy_terms();
367
-
368
- }, 1);
369
-
370
-
371
- }
372
-
373
- });
374
-
375
-
376
- })(jQuery);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/_build/js/acf-button-group.js DELETED
@@ -1,58 +0,0 @@
1
- (function($){
2
-
3
- acf.fields.button_group = acf.field.extend({
4
-
5
- type: 'button_group',
6
- $div: null,
7
-
8
- events: {
9
- 'click input[type="radio"]': 'click'
10
- },
11
-
12
- focus: function(){
13
-
14
- // focus on $select
15
- this.$div = this.$field.find('.acf-button-group');
16
-
17
-
18
- // get options
19
- this.o = acf.get_data(this.$div, {
20
- allow_null: 0
21
- });
22
-
23
- },
24
-
25
- click: function( e ){
26
-
27
- // vars
28
- var $radio = e.$el;
29
- var $label = $radio.parent('label');
30
- var selected = $label.hasClass('selected');
31
-
32
-
33
- // remove previous selected
34
- this.$div.find('.selected').removeClass('selected');
35
-
36
-
37
- // add active class
38
- $label.addClass('selected');
39
-
40
-
41
- // allow null
42
- if( this.o.allow_null && selected ) {
43
-
44
- // unselect
45
- e.$el.prop('checked', false);
46
- $label.removeClass('selected');
47
-
48
-
49
- // trigger change
50
- e.$el.trigger('change');
51
-
52
- }
53
-
54
- }
55
-
56
- });
57
-
58
- })(jQuery);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/_build/js/acf-checkbox.js DELETED
@@ -1,116 +0,0 @@
1
- (function($){
2
-
3
- acf.fields.checkbox = acf.field.extend({
4
-
5
- type: 'checkbox',
6
-
7
- events: {
8
- 'change input': '_change',
9
- 'click .acf-add-checkbox': '_add'
10
- },
11
-
12
-
13
- /*
14
- * focus
15
- *
16
- * This function will setup variables when focused on a field
17
- *
18
- * @type function
19
- * @date 12/04/2016
20
- * @since 5.3.8
21
- *
22
- * @param n/a
23
- * @return n/a
24
- */
25
-
26
- focus: function(){
27
-
28
- // get elements
29
- this.$ul = this.$field.find('ul');
30
- this.$input = this.$field.find('input[type="hidden"]');
31
-
32
- },
33
-
34
-
35
- add: function(){
36
-
37
- // vars
38
- var name = this.$input.attr('name') + '[]';
39
-
40
-
41
- // vars
42
- var html = '<li><input class="acf-checkbox-custom" type="checkbox" checked="checked" /><input type="text" name="'+name+'" /></li>';
43
-
44
-
45
- // append
46
- this.$ul.find('.acf-add-checkbox').parent('li').before( html );
47
-
48
- },
49
-
50
- _change: function( e ){
51
-
52
- // vars
53
- var $ul = this.$ul,
54
- $inputs = $ul.find('input[type="checkbox"]').not('.acf-checkbox-toggle'),
55
- checked = e.$el.is(':checked');
56
-
57
-
58
- // is toggle?
59
- if( e.$el.hasClass('acf-checkbox-toggle') ) {
60
-
61
- // toggle all
62
- $inputs.prop('checked', checked).trigger('change');
63
-
64
-
65
- // return
66
- return;
67
-
68
- }
69
-
70
-
71
- // is custom
72
- if( e.$el.hasClass('acf-checkbox-custom') ) {
73
-
74
- // vars
75
- var $text = e.$el.next('input[type="text"]');
76
-
77
-
78
- // toggle disabled
79
- e.$el.next('input[type="text"]').prop('disabled', !checked);
80
-
81
-
82
- // remove complelety if no value
83
- if( !checked && $text.val() == '' ) {
84
-
85
- e.$el.parent('li').remove();
86
-
87
- }
88
- }
89
-
90
-
91
- // bail early if no toggle
92
- if( !$ul.find('.acf-checkbox-toggle').exists() ) {
93
-
94
- return;
95
-
96
- }
97
-
98
-
99
- // determine if all inputs are checked
100
- var checked = ( $inputs.not(':checked').length == 0 );
101
-
102
-
103
- // update toggle
104
- $ul.find('.acf-checkbox-toggle').prop('checked', checked);
105
-
106
- },
107
-
108
- _add: function( e ){
109
-
110
- this.add();
111
-
112
- }
113
-
114
- });
115
-
116
- })(jQuery);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/_build/js/acf-color-picker.js DELETED
@@ -1,64 +0,0 @@
1
- (function($){
2
-
3
- acf.fields.color_picker = acf.field.extend({
4
-
5
- type: 'color_picker',
6
- $input: null,
7
- $hidden: null,
8
-
9
- actions: {
10
- 'ready': 'initialize',
11
- 'append': 'initialize'
12
- },
13
-
14
- focus: function(){
15
-
16
- this.$input = this.$field.find('input[type="text"]');
17
- this.$hidden = this.$field.find('input[type="hidden"]');
18
-
19
- },
20
-
21
- initialize: function(){
22
-
23
- // reference
24
- var $input = this.$input,
25
- $hidden = this.$hidden;
26
-
27
-
28
- // trigger change function
29
- var change_hidden = function(){
30
-
31
- // timeout is required to ensure the $input val is correct
32
- setTimeout(function(){
33
-
34
- acf.val( $hidden, $input.val() );
35
-
36
- }, 1);
37
-
38
- }
39
-
40
-
41
- // args
42
- var args = {
43
-
44
- defaultColor: false,
45
- palettes: true,
46
- hide: true,
47
- change: change_hidden,
48
- clear: change_hidden
49
-
50
- }
51
-
52
-
53
- // filter
54
- var args = acf.apply_filters('color_picker_args', args, this.$field);
55
-
56
-
57
- // iris
58
- this.$input.wpColorPicker(args);
59
-
60
- }
61
-
62
- });
63
-
64
- })(jQuery);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/_build/js/acf-conditional-logic.js DELETED
@@ -1,535 +0,0 @@
1
- (function($){
2
-
3
- acf.conditional_logic = acf.model.extend({
4
-
5
- actions: {
6
- 'prepare 20': 'render',
7
- 'append 20': 'render'
8
- },
9
-
10
- events: {
11
- 'change .acf-field input': 'change',
12
- 'change .acf-field textarea': 'change',
13
- 'change .acf-field select': 'change'
14
- },
15
-
16
- items: {},
17
- triggers: {},
18
-
19
-
20
- /*
21
- * add
22
- *
23
- * This function will add a set of conditional logic rules
24
- *
25
- * @type function
26
- * @date 22/05/2015
27
- * @since 5.2.3
28
- *
29
- * @param target (string) target field key
30
- * @param groups (array) rule groups
31
- * @return $post_id (int)
32
- */
33
-
34
- add: function( target, groups ){
35
-
36
- // debug
37
- //console.log( 'conditional_logic.add(%o, %o)', target, groups );
38
-
39
-
40
- // populate triggers
41
- for( var i in groups ) {
42
-
43
- // vars
44
- var group = groups[i];
45
-
46
- for( var k in group ) {
47
-
48
- // vars
49
- var rule = group[k],
50
- trigger = rule.field,
51
- triggers = this.triggers[ trigger ] || {};
52
-
53
-
54
- // append trigger (sub field will simply override)
55
- triggers[ target ] = target;
56
-
57
-
58
- // update
59
- this.triggers[ trigger ] = triggers;
60
-
61
- }
62
-
63
- }
64
-
65
-
66
- // append items
67
- this.items[ target ] = groups;
68
-
69
- },
70
-
71
-
72
- /*
73
- * render
74
- *
75
- * This function will render all fields
76
- *
77
- * @type function
78
- * @date 22/05/2015
79
- * @since 5.2.3
80
- *
81
- * @param $post_id (int)
82
- * @return $post_id (int)
83
- */
84
-
85
- render: function( $el ){
86
-
87
- // debug
88
- //console.log('conditional_logic.render(%o)', $el);
89
-
90
-
91
- // defaults
92
- $el = $el || false;
93
-
94
-
95
- // get targets
96
- var $targets = acf.get_fields( '', $el, true );
97
-
98
-
99
- // render fields
100
- this.render_fields( $targets );
101
-
102
-
103
- // action for 3rd party customization
104
- acf.do_action('refresh', $el);
105
-
106
- },
107
-
108
-
109
- /*
110
- * change
111
- *
112
- * This function is called when an input is changed and will render any fields which are considered targets of this trigger
113
- *
114
- * @type function
115
- * @date 22/05/2015
116
- * @since 5.2.3
117
- *
118
- * @param $post_id (int)
119
- * @return $post_id (int)
120
- */
121
-
122
- change: function( e ){
123
-
124
- // debug
125
- //console.log( 'conditional_logic.change(%o)', $input );
126
-
127
-
128
- // vars
129
- var $input = e.$el,
130
- $field = acf.get_field_wrap( $input ),
131
- key = $field.data('key');
132
-
133
-
134
- // bail early if this field does not trigger any actions
135
- if( typeof this.triggers[key] === 'undefined' ) {
136
-
137
- return false;
138
-
139
- }
140
-
141
-
142
- // vars
143
- $parent = $field.parent();
144
-
145
-
146
- // update visibility
147
- for( var i in this.triggers[ key ] ) {
148
-
149
- // get the target key
150
- var target_key = this.triggers[ key ][ i ];
151
-
152
-
153
- // get targets
154
- var $targets = acf.get_fields(target_key, $parent, true);
155
-
156
-
157
- // render
158
- this.render_fields( $targets );
159
-
160
- }
161
-
162
-
163
- // action for 3rd party customization
164
- acf.do_action('refresh', $parent);
165
-
166
- },
167
-
168
-
169
- /*
170
- * render_fields
171
- *
172
- * This function will render a selection of fields
173
- *
174
- * @type function
175
- * @date 22/05/2015
176
- * @since 5.2.3
177
- *
178
- * @param $post_id (int)
179
- * @return $post_id (int)
180
- */
181
-
182
- render_fields: function( $targets ) {
183
-
184
- // reference
185
- var self = this;
186
-
187
-
188
- // loop over targets and render them
189
- $targets.each(function(){
190
-
191
- self.render_field( $(this) );
192
-
193
- });
194
-
195
- },
196
-
197
-
198
- /*
199
- * render_field
200
- *
201
- * This function will render a field
202
- *
203
- * @type function
204
- * @date 22/05/2015
205
- * @since 5.2.3
206
- *
207
- * @param $post_id (int)
208
- * @return $post_id (int)
209
- */
210
-
211
- render_field : function( $target ){
212
-
213
- // vars
214
- var key = $target.data('key');
215
-
216
-
217
- // bail early if this field does not contain any conditional logic
218
- if( typeof this.items[ key ] === 'undefined' ) {
219
-
220
- return false;
221
-
222
- }
223
-
224
-
225
- // vars
226
- var visibility = false;
227
-
228
-
229
- // debug
230
- //console.log( 'conditional_logic.render_field(%o)', $field );
231
-
232
-
233
- // get conditional logic
234
- var groups = this.items[ key ];
235
-
236
-
237
- // calculate visibility
238
- for( var i = 0; i < groups.length; i++ ) {
239
-
240
- // vars
241
- var group = groups[i],
242
- match_group = true;
243
-
244
- for( var k = 0; k < group.length; k++ ) {
245
-
246
- // vars
247
- var rule = group[k];
248
-
249
-
250
- // get trigger for rule
251
- var $trigger = this.get_trigger( $target, rule.field );
252
-
253
-
254
- // break if rule did not validate
255
- if( !this.calculate(rule, $trigger, $target) ) {
256
-
257
- match_group = false;
258
- break;
259
-
260
- }
261
-
262
- }
263
-
264
-
265
- // set visibility if rule group did validate
266
- if( match_group ) {
267
-
268
- visibility = true;
269
- break;
270
-
271
- }
272
-
273
- }
274
-
275
-
276
- // hide / show field
277
- if( visibility ) {
278
-
279
- this.show_field( $target );
280
-
281
- } else {
282
-
283
- this.hide_field( $target );
284
-
285
- }
286
-
287
- },
288
-
289
-
290
- /*
291
- * show_field
292
- *
293
- * This function will show a field
294
- *
295
- * @type function
296
- * @date 22/05/2015
297
- * @since 5.2.3
298
- *
299
- * @param $post_id (int)
300
- * @return $post_id (int)
301
- */
302
-
303
- show_field: function( $field ){
304
-
305
- // debug
306
- //console.log('show_field(%o)', $field);
307
-
308
-
309
- // vars
310
- var key = $field.data('key');
311
-
312
-
313
- // remove class
314
- $field.removeClass( 'hidden-by-conditional-logic' );
315
-
316
-
317
- // enable
318
- acf.enable_form( $field, 'condition_'+key );
319
-
320
-
321
- // action for 3rd party customization
322
- acf.do_action('show_field', $field, 'conditional_logic' );
323
-
324
- },
325
-
326
-
327
- /*
328
- * hide_field
329
- *
330
- * This function will hide a field
331
- *
332
- * @type function
333
- * @date 22/05/2015
334
- * @since 5.2.3
335
- *
336
- * @param $post_id (int)
337
- * @return $post_id (int)
338
- */
339
-
340
- hide_field : function( $field ){
341
-
342
- // debug
343
- //console.log('hide_field(%o)', $field);
344
-
345
-
346
- // vars
347
- var key = $field.data('key');
348
-
349
-
350
- // add class
351
- $field.addClass( 'hidden-by-conditional-logic' );
352
-
353
-
354
- // disable
355
- acf.disable_form( $field, 'condition_'+key );
356
-
357
-
358
- // action for 3rd party customization
359
- acf.do_action('hide_field', $field, 'conditional_logic' );
360
-
361
- },
362
-
363
-
364
- /*
365
- * get_trigger
366
- *
367
- * This function will return the relevant $trigger for a $target
368
- *
369
- * @type function
370
- * @date 22/05/2015
371
- * @since 5.2.3
372
- *
373
- * @param $post_id (int)
374
- * @return $post_id (int)
375
- */
376
-
377
- get_trigger: function( $target, key ){
378
-
379
- // vars
380
- var selector = acf.get_selector( key );
381
-
382
-
383
- // find sibling $trigger
384
- var $trigger = $target.siblings( selector );
385
-
386
-
387
- // parent trigger
388
- if( !$trigger.exists() ) {
389
-
390
- // vars
391
- var parent = acf.get_selector();
392
-
393
-
394
- // loop through parent fields and review their siblings too
395
- $target.parents( parent ).each(function(){
396
-
397
- // find sibling $trigger
398
- $trigger = $(this).siblings( selector );
399
-
400
-
401
- // bail early if $trigger is found
402
- if( $trigger.exists() ) {
403
-
404
- return false;
405
-
406
- }
407
-
408
- });
409
-
410
- }
411
-
412
-
413
- // bail early if no $trigger is found
414
- if( !$trigger.exists() ) {
415
-
416
- return false;
417
-
418
- }
419
-
420
-
421
- // return
422
- return $trigger;
423
-
424
- },
425
-
426
-
427
- /*
428
- * calculate
429
- *
430
- * This function will calculate if a rule matches based on the $trigger
431
- *
432
- * @type function
433
- * @date 22/05/2015
434
- * @since 5.2.3
435
- *
436
- * @param $post_id (int)
437
- * @return $post_id (int)
438
- */
439
-
440
- calculate : function( rule, $trigger, $target ){
441
-
442
- // bail early if $trigger could not be found
443
- if( !$trigger || !$target ) return false;
444
-
445
-
446
- // debug
447
- //console.log( 'calculate(%o, %o, %o)', rule, $trigger, $target);
448
-
449
-
450
- // vars
451
- var match = false,
452
- type = $trigger.data('type');
453
-
454
-
455
- // input with :checked
456
- if( type == 'true_false' || type == 'checkbox' || type == 'radio' || type == 'button_group' ) {
457
-
458
- match = this.calculate_checkbox( rule, $trigger );
459
-
460
-
461
- } else if( type == 'select' ) {
462
-
463
- match = this.calculate_select( rule, $trigger );
464
-
465
- }
466
-
467
-
468
- // reverse if 'not equal to'
469
- if( rule.operator === "!=" ) {
470
-
471
- match = !match;
472
-
473
- }
474
-
475
-
476
- // return
477
- return match;
478
-
479
- },
480
-
481
- calculate_checkbox: function( rule, $trigger ){
482
-
483
- // look for selected input
484
- var match = $trigger.find('input[value="' + rule.value + '"]:checked').exists();
485
-
486
-
487
- // override for "allow null"
488
- if( rule.value === '' && !$trigger.find('input:checked').exists() ) {
489
-
490
- match = true;
491
-
492
- }
493
-
494
-
495
- // return
496
- return match;
497
-
498
- },
499
-
500
-
501
- calculate_select: function( rule, $trigger ){
502
-
503
- // vars
504
- var $select = $trigger.find('select'),
505
- val = $select.val();
506
-
507
-
508
- // check for no value
509
- if( !val && !$.isNumeric(val) ) {
510
-
511
- val = '';
512
-
513
- }
514
-
515
-
516
- // convert to array
517
- if( !$.isArray(val) ) {
518
-
519
- val = [ val ];
520
-
521
- }
522
-
523
-
524
- // calc
525
- match = ($.inArray(rule.value, val) > -1);
526
-
527
-
528
- // return
529
- return match;
530
-
531
- }
532
-
533
- });
534
-
535
- })(jQuery);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/_build/js/acf-date-picker.js DELETED
@@ -1,231 +0,0 @@
1
- (function($){
2
-
3
- /*
4
- * acf.datepicker
5
- *
6
- * description
7
- *
8
- * @type function
9
- * @date 16/12/2015
10
- * @since 5.3.2
11
- *
12
- * @param $post_id (int)
13
- * @return $post_id (int)
14
- */
15
-
16
- acf.datepicker = acf.model.extend({
17
-
18
- actions: {
19
- 'ready 1': 'ready'
20
- },
21
-
22
- ready: function(){
23
-
24
- // vars
25
- var locale = acf.get('locale'),
26
- rtl = acf.get('rtl')
27
- l10n = acf._e('date_picker');
28
-
29
-
30
- // bail ealry if no l10n (fiedl groups admin page)
31
- if( !l10n ) return;
32
-
33
-
34
- // bail ealry if no datepicker library
35
- if( typeof $.datepicker === 'undefined' ) return;
36
-
37
-
38
- // rtl
39
- l10n.isRTL = rtl;
40
-
41
-
42
- // append
43
- $.datepicker.regional[ locale ] = l10n;
44
- $.datepicker.setDefaults(l10n);
45
-
46
- },
47
-
48
-
49
- /*
50
- * init
51
- *
52
- * This function will initialize JS
53
- *
54
- * @type function
55
- * @date 2/06/2016
56
- * @since 5.3.8
57
- *
58
- * @param $input (jQuery selector)
59
- * @param args (object)
60
- * @return n/a
61
- */
62
-
63
- init: function( $input, args ){
64
-
65
- // bail ealry if no datepicker library
66
- if( typeof $.datepicker === 'undefined' ) return;
67
-
68
-
69
- // defaults
70
- args = args || {};
71
-
72
-
73
- // add date picker
74
- $input.datepicker( args );
75
-
76
-
77
- // wrap the datepicker (only if it hasn't already been wrapped)
78
- if( $('body > #ui-datepicker-div').exists() ) {
79
-
80
- $('body > #ui-datepicker-div').wrap('<div class="acf-ui-datepicker" />');
81
-
82
- }
83
-
84
- },
85
-
86
-
87
- /*
88
- * init
89
- *
90
- * This function will remove JS
91
- *
92
- * @type function
93
- * @date 2/06/2016
94
- * @since 5.3.8
95
- *
96
- * @param $input (jQuery selector)
97
- * @return n/a
98
- */
99
-
100
- destroy: function( $input ){
101
-
102
- // do nothing
103
-
104
- }
105
-
106
- });
107
-
108
- acf.fields.date_picker = acf.field.extend({
109
-
110
- type: 'date_picker',
111
- $el: null,
112
- $input: null,
113
- $hidden: null,
114
-
115
- o: {},
116
-
117
- actions: {
118
- 'ready': 'initialize',
119
- 'append': 'initialize'
120
- },
121
-
122
- events: {
123
- 'blur input[type="text"]': 'blur'
124
- },
125
-
126
- focus: function(){
127
-
128
- // get elements
129
- this.$el = this.$field.find('.acf-date-picker');
130
- this.$input = this.$el.find('input[type="text"]');
131
- this.$hidden = this.$el.find('input[type="hidden"]');
132
-
133
-
134
- // get options
135
- this.o = acf.get_data( this.$el );
136
-
137
- },
138
-
139
- initialize: function(){
140
-
141
- // save_format - compatibility with ACF < 5.0.0
142
- if( this.o.save_format ) {
143
-
144
- return this.initialize2();
145
-
146
- }
147
-
148
-
149
- // create options
150
- var args = {
151
- dateFormat: this.o.date_format,
152
- altField: this.$hidden,
153
- altFormat: 'yymmdd',
154
- changeYear: true,
155
- yearRange: "-100:+100",
156
- changeMonth: true,
157
- showButtonPanel: true,
158
- firstDay: this.o.first_day
159
- };
160
-
161
-
162
- // filter for 3rd party customization
163
- args = acf.apply_filters('date_picker_args', args, this.$field);
164
-
165
-
166
- // add date picker
167
- acf.datepicker.init( this.$input, args );
168
-
169
-
170
- // action for 3rd party customization
171
- acf.do_action('date_picker_init', this.$input, args, this.$field);
172
-
173
- },
174
-
175
- initialize2: function(){
176
-
177
- // get and set value from alt field
178
- this.$input.val( this.$hidden.val() );
179
-
180
-
181
- // create options
182
- var args = {
183
- dateFormat: this.o.date_format,
184
- altField: this.$hidden,
185
- altFormat: this.o.save_format,
186
- changeYear: true,
187
- yearRange: "-100:+100",
188
- changeMonth: true,
189
- showButtonPanel: true,
190
- firstDay: this.o.first_day
191
- };
192
-
193
-
194
- // filter for 3rd party customization
195
- args = acf.apply_filters('date_picker_args', args, this.$field);
196
-
197
-
198
- // backup
199
- var dateFormat = args.dateFormat;
200
-
201
-
202
- // change args.dateFormat
203
- args.dateFormat = this.o.save_format;
204
-
205
-
206
- // add date picker
207
- acf.datepicker.init( this.$input, args );
208
-
209
-
210
- // now change the format back to how it should be.
211
- this.$input.datepicker( 'option', 'dateFormat', dateFormat );
212
-
213
-
214
- // action for 3rd party customization
215
- acf.do_action('date_picker_init', this.$input, args, this.$field);
216
-
217
- },
218
-
219
- blur: function(){
220
-
221
- if( !this.$input.val() ) {
222
-
223
- this.$hidden.val('');
224
-
225
- }
226
-
227
- }
228
-
229
- });
230
-
231
- })(jQuery);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/_build/js/acf-date-time-picker.js DELETED
@@ -1,185 +0,0 @@
1
- (function($){
2
-
3
- /*
4
- * acf.datepicker
5
- *
6
- * description
7
- *
8
- * @type function
9
- * @date 16/12/2015
10
- * @since 5.3.2
11
- *
12
- * @param $post_id (int)
13
- * @return $post_id (int)
14
- */
15
-
16
- acf.datetimepicker = acf.model.extend({
17
-
18
- actions: {
19
- 'ready 1': 'ready'
20
- },
21
-
22
- ready: function(){
23
-
24
- // vars
25
- var locale = acf.get('locale'),
26
- rtl = acf.get('rtl')
27
- l10n = acf._e('date_time_picker');
28
-
29
-
30
- // bail ealry if no l10n (fiedl groups admin page)
31
- if( !l10n ) return;
32
-
33
-
34
- // bail ealry if no timepicker library
35
- if( typeof $.timepicker === 'undefined' ) return;
36
-
37
-
38
- // rtl
39
- l10n.isRTL = rtl;
40
-
41
-
42
- // append
43
- $.timepicker.regional[ locale ] = l10n;
44
- $.timepicker.setDefaults(l10n);
45
-
46
- },
47
-
48
-
49
- /*
50
- * init
51
- *
52
- * This function will initialize JS
53
- *
54
- * @type function
55
- * @date 2/06/2016
56
- * @since 5.3.8
57
- *
58
- * @param $input (jQuery selector)
59
- * @param args (object)
60
- * @return n/a
61
- */
62
-
63
- init: function( $input, args ){
64
-
65
- // bail ealry if no timepicker library
66
- if( typeof $.timepicker === 'undefined' ) return;
67
-
68
-
69
- // defaults
70
- args = args || {};
71
-
72
-
73
- // add date picker
74
- $input.datetimepicker( args );
75
-
76
-
77
- // wrap the datepicker (only if it hasn't already been wrapped)
78
- if( $('body > #ui-datepicker-div').exists() ) {
79
-
80
- $('body > #ui-datepicker-div').wrap('<div class="acf-ui-datepicker" />');
81
-
82
- }
83
-
84
- },
85
-
86
-
87
- /*
88
- * init
89
- *
90
- * This function will remove JS
91
- *
92
- * @type function
93
- * @date 2/06/2016
94
- * @since 5.3.8
95
- *
96
- * @param $input (jQuery selector)
97
- * @return n/a
98
- */
99
-
100
- destroy: function( $input ){
101
-
102
- // do nothing
103
-
104
- }
105
-
106
- });
107
-
108
-
109
- acf.fields.date_time_picker = acf.field.extend({
110
-
111
- type: 'date_time_picker',
112
- $el: null,
113
- $input: null,
114
- $hidden: null,
115
-
116
- o: {},
117
-
118
- actions: {
119
- 'ready': 'initialize',
120
- 'append': 'initialize'
121
- },
122
-
123
- events: {
124
- 'blur input[type="text"]': 'blur'
125
- },
126
-
127
- focus: function(){
128
-
129
- // get elements
130
- this.$el = this.$field.find('.acf-date-time-picker');
131
- this.$input = this.$el.find('input[type="text"]');
132
- this.$hidden = this.$el.find('input[type="hidden"]');
133
-
134
-
135
- // get options
136
- this.o = acf.get_data( this.$el );
137
-
138
- },
139
-
140
- initialize: function(){
141
-
142
- // create options
143
- var args = {
144
- dateFormat: this.o.date_format,
145
- timeFormat: this.o.time_format,
146
- altField: this.$hidden,
147
- altFieldTimeOnly: false,
148
- altFormat: 'yy-mm-dd',
149
- altTimeFormat: 'HH:mm:ss',
150
- changeYear: true,
151
- yearRange: "-100:+100",
152
- changeMonth: true,
153
- showButtonPanel: true,
154
- firstDay: this.o.first_day,
155
- controlType: 'select',
156
- oneLine: true
157
- };
158
-
159
-
160
- // filter for 3rd party customization
161
- args = acf.apply_filters('date_time_picker_args', args, this.$field);
162
-
163
-
164
- // add date time picker
165
- acf.datetimepicker.init( this.$input, args );
166
-
167
-
168
- // action for 3rd party customization
169
- acf.do_action('date_time_picker_init', this.$input, args, this.$field);
170
-
171
- },
172
-
173
- blur: function(){
174
-
175
- if( !this.$input.val() ) {
176
-
177
- this.$hidden.val('');
178
-
179
- }
180
-
181
- }
182
-
183
- });
184
-
185
- })(jQuery);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/_build/js/acf-file.js DELETED
@@ -1,469 +0,0 @@
1
- (function($){
2
-
3
- acf.fields.file = acf.field.extend({
4
-
5
- type: 'file',
6
- $el: null,
7
- $input: null,
8
-
9
- actions: {
10
- 'ready': 'initialize',
11
- 'append': 'initialize'
12
- },
13
-
14
- events: {
15
- 'click a[data-name="add"]': 'add',
16
- 'click a[data-name="edit"]': 'edit',
17
- 'click a[data-name="remove"]': 'remove',
18
- 'change input[type="file"]': 'change'
19
- },
20
-
21
-
22
- /*
23
- * focus
24
- *
25
- * This function will setup variables when focused on a field
26
- *
27
- * @type function
28
- * @date 12/04/2016
29
- * @since 5.3.8
30
- *
31
- * @param n/a
32
- * @return n/a
33
- */
34
-
35
- focus: function(){
36
-
37
- // get elements
38
- this.$el = this.$field.find('.acf-file-uploader');
39
- this.$input = this.$el.find('input[type="hidden"]');
40
-
41
-
42
- // get options
43
- this.o = acf.get_data( this.$el );
44
-
45
- },
46
-
47
-
48
- /*
49
- * initialize
50
- *
51
- * This function is used to setup basic upload form attributes
52
- *
53
- * @type function
54
- * @date 12/04/2016
55
- * @since 5.3.8
56
- *
57
- * @param n/a
58
- * @return n/a
59
- */
60
-
61
- initialize: function(){
62
-
63
- // add attribute to form
64
- if( this.o.uploader == 'basic' ) {
65
-
66
- this.$el.closest('form').attr('enctype', 'multipart/form-data');
67
-
68
- }
69
-
70
- },
71
-
72
-
73
- /*
74
- * prepare
75
- *
76
- * This function will prepare an object of attachment data
77
- * selecting a library image vs embed an image via url return different data
78
- * this function will keep the 2 consistent
79
- *
80
- * @type function
81
- * @date 12/04/2016
82
- * @since 5.3.8
83
- *
84
- * @param attachment (object)
85
- * @return data (object)
86
- */
87
-
88
- prepare: function( attachment ) {
89
-
90
- // defaults
91
- attachment = attachment || {};
92
-
93
-
94
- // bail ealry if already valid
95
- if( attachment._valid ) return attachment;
96
-
97
-
98
- // vars
99
- var data = {
100
- url: '',
101
- alt: '',
102
- title: '',
103
- filename: '',
104
- filesizeHumanReadable: '',
105
- icon: '/wp-includes/images/media/default.png'
106
- };
107
-
108
-
109
- // wp image
110
- if( attachment.id ) {
111
-
112
- // update data
113
- data = attachment.attributes;
114
-
115
- }
116
-
117
-
118
- // valid
119
- data._valid = true;
120
-
121
-
122
- // return
123
- return data;
124
-
125
- },
126
-
127
-
128
- /*
129
- * render
130
- *
131
- * This function will render the UI
132
- *
133
- * @type function
134
- * @date 12/04/2016
135
- * @since 5.3.8
136
- *
137
- * @param attachment (obj)
138
- * @return n/a
139
- */
140
-
141
- render: function( data ){
142
-
143
- // prepare
144
- data = this.prepare(data);
145
-
146
-
147
- // update els
148
- this.$el.find('img').attr({
149
- src: data.icon,
150
- alt: data.alt,
151
- title: data.title
152
- });
153
- this.$el.find('[data-name="title"]').text( data.title );
154
- this.$el.find('[data-name="filename"]').text( data.filename ).attr( 'href', data.url );
155
- this.$el.find('[data-name="filesize"]').text( data.filesizeHumanReadable );
156
-
157
-
158
- // vars
159
- var val = '';
160
-
161
-
162
- // WP attachment
163
- if( data.id ) {
164
-
165
- val = data.id;
166
-
167
- }
168
-
169
-
170
- // update val
171
- acf.val( this.$input, val );
172
-
173
-
174
- // update class
175
- if( val ) {
176
-
177
- this.$el.addClass('has-value');
178
-
179
- } else {
180
-
181
- this.$el.removeClass('has-value');
182
-
183
- }
184
-
185
- },
186
-
187
-
188
- /*
189
- * add
190
- *
191
- * event listener
192
- *
193
- * @type function
194
- * @date 12/04/2016
195
- * @since 5.3.8
196
- *
197
- * @param e (event)
198
- * @return n/a
199
- */
200
-
201
- add: function() {
202
-
203
- // reference
204
- var self = this,
205
- $field = this.$field;
206
-
207
-
208
- // get repeater
209
- var $repeater = acf.get_closest_field( $field, 'repeater' );
210
-
211
-
212
- // popup
213
- var frame = acf.media.popup({
214
-
215
- title: acf._e('file', 'select'),
216
- mode: 'select',
217
- type: '',
218
- field: $field.data('key'),
219
- multiple: $repeater.exists(),
220
- library: this.o.library,
221
- mime_types: this.o.mime_types,
222
-
223
- select: function( attachment, i ) {
224
-
225
- // select / add another image field?
226
- if( i > 0 ) {
227
-
228
- // vars
229
- var key = $field.data('key'),
230
- $tr = $field.closest('.acf-row');
231
-
232
-
233
- // reset field
234
- $field = false;
235
-
236
-
237
- // find next image field
238
- $tr.nextAll('.acf-row:visible').each(function(){
239
-
240
- // get next $field
241
- $field = acf.get_field( key, $(this) );
242
-
243
-
244
- // bail early if $next was not found
245
- if( !$field ) return;
246
-
247
-
248
- // bail early if next file uploader has value
249
- if( $field.find('.acf-file-uploader.has-value').exists() ) {
250
-
251
- $field = false;
252
- return;
253
-
254
- }
255
-
256
-
257
- // end loop if $next is found
258
- return false;
259
-
260
- });
261
-
262
-
263
-
264
- // add extra row if next is not found
265
- if( !$field ) {
266
-
267
- $tr = acf.fields.repeater.doFocus( $repeater ).add();
268
-
269
-
270
- // bail early if no $tr (maximum rows hit)
271
- if( !$tr ) return false;
272
-
273
-
274
- // get next $field
275
- $field = acf.get_field( key, $tr );
276
-
277
- }
278
-
279
- }
280
-
281
-
282
- // render
283
- self.set('$field', $field).render( attachment );
284
-
285
- }
286
- });
287
-
288
- },
289
-
290
-
291
- /*
292
- * edit
293
- *
294
- * event listener
295
- *
296
- * @type function
297
- * @date 12/04/2016
298
- * @since 5.3.8
299
- *
300
- * @param e (event)
301
- * @return n/a
302
- */
303
-
304
- edit: function() {
305
-
306
- // reference
307
- var self = this,
308
- $field = this.$field;
309
-
310
-
311
- // vars
312
- var val = this.$input.val();
313
-
314
-
315
- // bail early if no val
316
- if( !val ) return;
317
-
318
-
319
- // popup
320
- var frame = acf.media.popup({
321
-
322
- title: acf._e('file', 'edit'),
323
- button: acf._e('file', 'update'),
324
- mode: 'edit',
325
- attachment: val,
326
-
327
- select: function( attachment, i ) {
328
-
329
- // render
330
- self.set('$field', $field).render( attachment );
331
-
332
- }
333
-
334
- });
335
-
336
- },
337
-
338
-
339
- /*
340
- * remove
341
- *
342
- * event listener
343
- *
344
- * @type function
345
- * @date 12/04/2016
346
- * @since 5.3.8
347
- *
348
- * @param e (event)
349
- * @return n/a
350
- */
351
-
352
- remove: function() {
353
-
354
- // vars
355
- var attachment = {};
356
-
357
-
358
- // add file to field
359
- this.render( attachment );
360
-
361
- },
362
-
363
-
364
- /*
365
- * get_file_info
366
- *
367
- * This function will find basic file info and store it in a hidden input
368
- *
369
- * @type function
370
- * @date 18/1/17
371
- * @since 5.5.0
372
- *
373
- * @param $file_input (jQuery)
374
- * @param $hidden_input (jQuery)
375
- * @return n/a
376
- */
377
-
378
- get_file_info: function( $file_input, $hidden_input ){
379
-
380
- // vars
381
- var val = $file_input.val(),
382
- attachment = {};
383
-
384
-
385
- // bail early if no value
386
- if( !val ) {
387
-
388
- $hidden_input.val('');
389
- return;
390
-
391
- }
392
-
393
-
394
- // url
395
- attachment.url = val;
396
-
397
-
398
- // modern browsers
399
- var files = $file_input[0].files;
400
-
401
- if( files.length ){
402
-
403
- // vars
404
- var file = files[0];
405
-
406
-
407
- // update
408
- attachment.size = file.size;
409
- attachment.type = file.type;
410
-
411
-
412
- // image
413
- if( file.type.indexOf('image') > -1 ) {
414
-
415
- // vars
416
- var _url = window.URL || window.webkitURL;
417
-
418
-
419
- // temp image
420
- var img = new Image();
421
-
422
- img.onload = function () {
423
-
424
- // update
425
- attachment.width = this.width;
426
- attachment.height = this.height;
427
-
428
-
429
- // set hidden input value
430
- $hidden_input.val( jQuery.param(attachment) );
431
-
432
- };
433
-
434
- img.src = _url.createObjectURL(file);
435
-
436
- }
437
-
438
- }
439
-
440
-
441
- // set hidden input value
442
- $hidden_input.val( jQuery.param(attachment) );
443
-
444
- },
445
-
446
-
447
- /*
448
- * change
449
- *
450
- * This function will update the hidden input when selecting a basic file to add basic validation
451
- *
452
- * @type function
453
- * @date 12/04/2016
454
- * @since 5.3.8
455
- *
456
- * @param e (event)
457
- * @return n/a
458
- */
459
-
460
- change: function( e ){
461
-
462
- this.get_file_info( e.$el, this.$input );
463
-
464
- }
465
-
466
- });
467
-
468
-
469
- })(jQuery);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/_build/js/acf-google-map.js DELETED
@@ -1,763 +0,0 @@
1
- (function($){
2
-
3
- acf.fields.google_map = acf.field.extend({
4
-
5
- type: 'google_map',
6
- url: '',
7
- $el: null,
8
- $search: null,
9
-
10
- timeout: null,
11
- status : '', // '', 'loading', 'ready'
12
- geocoder : false,
13
- map : false,
14
- maps : {},
15
- $pending: $(),
16
-
17
- actions: {
18
- // have considered changing to 'load', however, could cause issues with devs expecting the API to exist earlier
19
- 'ready': 'initialize',
20
- 'append': 'initialize',
21
- 'show': 'show'
22
- },
23
-
24
- events: {
25
- 'click a[data-name="clear"]': '_clear',
26
- 'click a[data-name="locate"]': '_locate',
27
- 'click a[data-name="search"]': '_search',
28
- 'keydown .search': '_keydown',
29
- 'keyup .search': '_keyup',
30
- 'focus .search': '_focus',
31
- 'blur .search': '_blur',
32
- //'paste .search': '_paste',
33
- 'mousedown .acf-google-map': '_mousedown'
34
- },
35
-
36
- focus: function(){
37
-
38
- // get elements
39
- this.$el = this.$field.find('.acf-google-map');
40
- this.$search = this.$el.find('.search');
41
-
42
-
43
- // get options
44
- this.o = acf.get_data( this.$el );
45
- this.o.id = this.$el.attr('id');
46
-
47
-
48
- // get map
49
- if( this.maps[ this.o.id ] ) {
50
-
51
- this.map = this.maps[ this.o.id ];
52
-
53
- }
54
-
55
- },
56
-
57
-
58
- /*
59
- * is_ready
60
- *
61
- * This function will ensure google API is available and return a boolean for the current status
62
- *
63
- * @type function
64
- * @date 19/11/2014
65
- * @since 5.0.9
66
- *
67
- * @param n/a
68
- * @return (boolean)
69
- */
70
-
71
- is_ready: function(){
72
-
73
- // reference
74
- var self = this;
75
-
76
-
77
- // ready
78
- if( this.status == 'ready' ) return true;
79
-
80
-
81
- // loading
82
- if( this.status == 'loading' ) return false;
83
-
84
-
85
- // check exists (optimal)
86
- if( acf.isset(window, 'google', 'maps', 'places') ) {
87
-
88
- this.status = 'ready';
89
- return true;
90
-
91
- }
92
-
93
-
94
- // check exists (ok)
95
- if( acf.isset(window, 'google', 'maps') ) {
96
-
97
- this.status = 'ready';
98
-
99
- }
100
-
101
-
102
- // attempt load google.maps.places
103
- if( this.url ) {
104
-
105
- // set status
106
- this.status = 'loading';
107
-
108
-
109
- // enqueue
110
- acf.enqueue_script(this.url, function(){
111
-
112
- // set status
113
- self.status = 'ready';
114
-
115
-
116
- // initialize pending
117
- self.initialize_pending();
118
-
119
- });
120
-
121
- }
122
-
123
-
124
- // ready
125
- if( this.status == 'ready' ) return true;
126
-
127
-
128
- // return
129
- return false;
130
-
131
- },
132
-
133
-
134
- /*
135
- * initialize_pending
136
- *
137
- * This function will initialize pending fields
138
- *
139
- * @type function
140
- * @date 27/08/2016
141
- * @since 5.4.0
142
- *
143
- * @param n/a
144
- * @return n/a
145
- */
146
-
147
- initialize_pending: function(){
148
-
149
- // reference
150
- var self = this;
151
-
152
- this.$pending.each(function(){
153
-
154
- self.set('$field', $(this)).initialize();
155
-
156
- });
157
-
158
-
159
- // reset
160
- this.$pending = $();
161
-
162
- },
163
-
164
-
165
- /*
166
- * actions
167
- *
168
- * these functions are fired for this fields actions
169
- *
170
- * @type function
171
- * @date 17/09/2015
172
- * @since 5.2.3
173
- *
174
- * @param (mixed)
175
- * @return n/a
176
- */
177
-
178
- initialize: function(){
179
-
180
- // add to pending
181
- if( !this.is_ready() ) {
182
-
183
- this.$pending = this.$pending.add( this.$field );
184
-
185
- return false;
186
-
187
- }
188
-
189
-
190
- // load geocode
191
- if( !this.geocoder ) {
192
-
193
- this.geocoder = new google.maps.Geocoder();
194
-
195
- }
196
-
197
-
198
- // reference
199
- var self = this,
200
- $field = this.$field,
201
- $el = this.$el,
202
- $search = this.$search;
203
-
204
-
205
- // input value may be cached by browser, so update the search input to match
206
- $search.val( this.$el.find('.input-address').val() );
207
-
208
-
209
- // map
210
- var map_args = acf.apply_filters('google_map_args', {
211
-
212
- scrollwheel: false,
213
- zoom: parseInt(this.o.zoom),
214
- center: new google.maps.LatLng(this.o.lat, this.o.lng),
215
- mapTypeId: google.maps.MapTypeId.ROADMAP
216
-
217
- }, this.$field);
218
-
219
-
220
- // create map
221
- this.map = new google.maps.Map( this.$el.find('.canvas')[0], map_args);
222
-
223
-
224
- // search
225
- if( acf.isset(window, 'google', 'maps', 'places', 'Autocomplete') ) {
226
-
227
- // vars
228
- var autocomplete = new google.maps.places.Autocomplete( this.$search[0] );
229
-
230
-
231
- // bind
232
- autocomplete.bindTo('bounds', this.map);
233
-
234
-
235
- // event
236
- google.maps.event.addListener(autocomplete, 'place_changed', function( e ) {
237
-
238
- // vars
239
- var place = this.getPlace();
240
-
241
-
242
- // search
243
- self.search( place );
244
-
245
- });
246
-
247
-
248
- // append
249
- this.map.autocomplete = autocomplete;
250
-
251
- }
252
-
253
-
254
- // marker
255
- var marker_args = acf.apply_filters('google_map_marker_args', {
256
-
257
- draggable: true,
258
- raiseOnDrag: true,
259
- map: this.map
260
-
261
- }, this.$field);
262
-
263
-
264
- // add marker
265
- this.map.marker = new google.maps.Marker( marker_args );
266
-
267
-
268
- // add references
269
- this.map.$el = $el;
270
- this.map.$field = $field;
271
-
272
-
273
- // value exists?
274
- var lat = $el.find('.input-lat').val(),
275
- lng = $el.find('.input-lng').val();
276
-
277
- if( lat && lng ) {
278
-
279
- this.update(lat, lng).center();
280
-
281
- }
282
-
283
-
284
- // events
285
- google.maps.event.addListener( this.map.marker, 'dragend', function(){
286
-
287
- // vars
288
- var position = this.map.marker.getPosition(),
289
- lat = position.lat(),
290
- lng = position.lng();
291
-
292
- self.update( lat, lng ).sync();
293
-
294
- });
295
-
296
-
297
- google.maps.event.addListener( this.map, 'click', function( e ) {
298
-
299
- // vars
300
- var lat = e.latLng.lat(),
301
- lng = e.latLng.lng();
302
-
303
-
304
- self.update( lat, lng ).sync();
305
-
306
- });
307
-
308
-
309
- // action for 3rd party customization
310
- acf.do_action('google_map_init', this.map, this.map.marker, this.$field);
311
-
312
-
313
- // add to maps
314
- this.maps[ this.o.id ] = this.map;
315
-
316
- },
317
-
318
- search: function( place ){
319
-
320
- // reference
321
- var self = this;
322
-
323
-
324
- // vars
325
- var address = this.$search.val();
326
-
327
-
328
- // bail ealry if no address
329
- if( !address ) {
330
-
331
- return false;
332
-
333
- }
334
-
335
-
336
- // update input
337
- this.$el.find('.input-address').val( address );
338
-
339
-
340
- // is lat lng?
341
- var latLng = address.split(',');
342
-
343
- if( latLng.length == 2 ) {
344
-
345
- var lat = latLng[0],
346
- lng = latLng[1];
347
-
348
-
349
- if( $.isNumeric(lat) && $.isNumeric(lng) ) {
350
-
351
- // parse
352
- lat = parseFloat(lat);
353
- lng = parseFloat(lng);
354
-
355
- self.update( lat, lng ).center();
356
-
357
- return;
358
-
359
- }
360
-
361
- }
362
-
363
-
364
- // if place exists
365
- if( place && place.geometry ) {
366
-
367
- var lat = place.geometry.location.lat(),
368
- lng = place.geometry.location.lng();
369
-
370
-
371
- // update
372
- self.update( lat, lng ).center();
373
-
374
-
375
- // bail early
376
- return;
377
-
378
- }
379
-
380
-
381
- // add class
382
- this.$el.addClass('-loading');
383
-
384
- self.geocoder.geocode({ 'address' : address }, function( results, status ){
385
-
386
- // remove class
387
- self.$el.removeClass('-loading');
388
-
389
-
390
- // validate
391
- if( status != google.maps.GeocoderStatus.OK ) {
392
-
393
- console.log('Geocoder failed due to: ' + status);
394
- return;
395
-
396
- } else if( !results[0] ) {
397
-
398
- console.log('No results found');
399
- return;
400
-
401
- }
402
-
403
-
404
- // get place
405
- place = results[0];
406
-
407
- var lat = place.geometry.location.lat(),
408
- lng = place.geometry.location.lng();
409
-
410
-
411
- self.update( lat, lng ).center();
412
-
413
- });
414
-
415
- },
416
-
417
- update: function( lat, lng ){
418
-
419
- // vars
420
- var latlng = new google.maps.LatLng( lat, lng );
421
-
422
-
423
- // update inputs
424
- acf.val( this.$el.find('.input-lat'), lat );
425
- acf.val( this.$el.find('.input-lng'), lng );
426
-
427
-
428
- // update marker
429
- this.map.marker.setPosition( latlng );
430
-
431
-
432
- // show marker
433
- this.map.marker.setVisible( true );
434
-
435
-
436
- // update class
437
- this.$el.addClass('-value');
438
-
439
-
440
- // validation
441
- this.$field.removeClass('error');
442
-
443
-
444
- // action
445
- acf.do_action('google_map_change', latlng, this.map, this.$field);
446
-
447
-
448
- // blur input
449
- this.$search.blur();
450
-
451
-
452
- // return for chaining
453
- return this;
454
-
455
- },
456
-
457
- center: function(){
458
-
459
- // vars
460
- var position = this.map.marker.getPosition(),
461
- lat = this.o.lat,
462
- lng = this.o.lng;
463
-
464
-
465
- // if marker exists, center on the marker
466
- if( position ) {
467
-
468
- lat = position.lat();
469
- lng = position.lng();
470
-
471
- }
472
-
473
-
474
- var latlng = new google.maps.LatLng( lat, lng );
475
-
476
-
477
- // set center of map
478
- this.map.setCenter( latlng );
479
-
480
- },
481
-
482
- sync: function(){
483
-
484
- // reference
485
- var self = this;
486
-
487
-
488
- // vars
489
- var position = this.map.marker.getPosition(),
490
- latlng = new google.maps.LatLng( position.lat(), position.lng() );
491
-
492
-
493
- // add class
494
- this.$el.addClass('-loading');
495
-
496
-
497
- // load
498
- this.geocoder.geocode({ 'latLng' : latlng }, function( results, status ){
499
-
500
- // remove class
501
- self.$el.removeClass('-loading');
502
-
503
-
504
- // validate
505
- if( status != google.maps.GeocoderStatus.OK ) {
506
-
507
- console.log('Geocoder failed due to: ' + status);
508
- return;
509
-
510
- } else if( !results[0] ) {
511
-
512
- console.log('No results found');
513
- return;
514
-
515
- }
516
-
517
-
518
- // get location
519
- var location = results[0];
520
-
521
-
522
- // update title
523
- self.$search.val( location.formatted_address );
524
-
525
-
526
- // update input
527
- acf.val( self.$el.find('.input-address'), location.formatted_address );
528
-
529
- });
530
-
531
-
532
- // return for chaining
533
- return this;
534
-
535
- },
536
-
537
- refresh: function(){
538
-
539
- // bail early if not ready
540
- if( !this.is_ready() ) {
541
-
542
- return false;
543
-
544
- }
545
-
546
-
547
- // trigger resize on map
548
- google.maps.event.trigger(this.map, 'resize');
549
-
550
-
551
-
552
- // center map
553
- this.center();
554
-
555
- },
556
-
557
- show: function(){
558
-
559
- // vars
560
- var self = this,
561
- $field = this.$field;
562
-
563
-
564
- // center map when it is shown (by a tab / collapsed row)
565
- // - use delay to avoid rendering issues with browsers (ensures div is visible)
566
- setTimeout(function(){
567
-
568
- self.set('$field', $field).refresh();
569
-
570
- }, 10);
571
-
572
- },
573
-
574
-
575
- /*
576
- * events
577
- *
578
- * these functions are fired for this fields events
579
- *
580
- * @type function
581
- * @date 17/09/2015
582
- * @since 5.2.3
583
- *
584
- * @param e
585
- * @return n/a
586
- */
587
-
588
- _clear: function( e ){ // console.log('_clear');
589
-
590
- // remove Class
591
- this.$el.removeClass('-value -loading -search');
592
-
593
-
594
- // clear search
595
- this.$search.val('');
596
-
597
-
598
- // clear inputs
599
- acf.val( this.$el.find('.input-address'), '' );
600
- acf.val( this.$el.find('.input-lat'), '' );
601
- acf.val( this.$el.find('.input-lng'), '' );
602
-
603
-
604
- // hide marker
605
- this.map.marker.setVisible( false );
606
-
607
- },
608
-
609
- _locate: function( e ){ // console.log('_locate');
610
-
611
- // reference
612
- var self = this;
613
-
614
-
615
- // Try HTML5 geolocation
616
- if( !navigator.geolocation ) {
617
-
618
- alert( acf._e('google_map', 'browser_support') );
619
- return this;
620
-
621
- }
622
-
623
-
624
- // add class
625
- this.$el.addClass('-loading');
626
-
627
-
628
- // load
629
- navigator.geolocation.getCurrentPosition(function(position){
630
-
631
- // remove class
632
- self.$el.removeClass('-loading');
633
-
634
-
635
- // vars
636
- var lat = position.coords.latitude,
637
- lng = position.coords.longitude;
638
-
639
- self.update( lat, lng ).sync().center();
640
-
641
- });
642
-
643
- },
644
-
645
- _search: function( e ){ // console.log('_search');
646
-
647
- this.search();
648
-
649
- },
650
-
651
- _focus: function( e ){ // console.log('_focus');
652
-
653
- // remove class
654
- this.$el.removeClass('-value');
655
-
656
-
657
- // toggle -search class
658
- this._keyup();
659
-
660
- },
661
-
662
- _blur: function( e ){ // console.log('_blur');
663
-
664
- // reference
665
- var self = this;
666
-
667
-
668
- // vars
669
- var val = this.$el.find('.input-address').val();
670
-
671
-
672
- // bail early if no val
673
- if( !val ) {
674
-
675
- return;
676
-
677
- }
678
-
679
-
680
- // revert search to hidden input value
681
- this.timeout = setTimeout(function(){
682
-
683
- self.$el.addClass('-value');
684
- self.$search.val( val );
685
-
686
- }, 100);
687
-
688
- },
689
-
690
- /*
691
- _paste: function( e ){ console.log('_paste');
692
-
693
- // reference
694
- var $search = this.$search;
695
-
696
-
697
- // blur search
698
- $search.blur();
699
-
700
-
701
- // clear timeout
702
- this._mousedown(e);
703
-
704
-
705
- // focus on input
706
- setTimeout(function(){
707
-
708
- $search.focus();
709
-
710
- }, 1);
711
- },
712
- */
713
-
714
- _keydown: function( e ){ // console.log('_keydown');
715
-
716
- // prevent form from submitting
717
- if( e.which == 13 ) {
718
-
719
- e.preventDefault();
720
-
721
- }
722
-
723
- },
724
-
725
- _keyup: function( e ){ // console.log('_keyup');
726
-
727
- // vars
728
- var val = this.$search.val();
729
-
730
-
731
- // toggle class
732
- if( val ) {
733
-
734
- this.$el.addClass('-search');
735
-
736
- } else {
737
-
738
- this.$el.removeClass('-search');
739
-
740
- }
741
-
742
- },
743
-
744
- _mousedown: function( e ){ // console.log('_mousedown');
745
-
746
- // reference
747
- var self = this;
748
-
749
-
750
- // clear timeout in 1ms (_mousedown will run before _blur)
751
- setTimeout(function(){
752
-
753
- clearTimeout( self.timeout );
754
-
755
- }, 1);
756
-
757
-
758
- }
759
-
760
- });
761
-
762
-
763
- })(jQuery);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/_build/js/acf-image.js DELETED
@@ -1,389 +0,0 @@
1
- (function($){
2
-
3
- acf.fields.image = acf.field.extend({
4
-
5
- type: 'image',
6
- $el: null,
7
- $input: null,
8
- $img: null,
9
-
10
- actions: {
11
- 'ready': 'initialize',
12
- 'append': 'initialize'
13
- },
14
-
15
- events: {
16
- 'click a[data-name="add"]': 'add',
17
- 'click a[data-name="edit"]': 'edit',
18
- 'click a[data-name="remove"]': 'remove',
19
- 'change input[type="file"]': 'change'
20
- },
21
-
22
-
23
- /*
24
- * focus
25
- *
26
- * This function will setup variables when focused on a field
27
- *
28
- * @type function
29
- * @date 12/04/2016
30
- * @since 5.3.8
31
- *
32
- * @param n/a
33
- * @return n/a
34
- */
35
-
36
- focus: function(){
37
-
38
- // vars
39
- this.$el = this.$field.find('.acf-image-uploader');
40
- this.$input = this.$el.find('input[type="hidden"]');
41
- this.$img = this.$el.find('img');
42
-
43
-
44
- // options
45
- this.o = acf.get_data( this.$el );
46
-
47
- },
48
-
49
-
50
- /*
51
- * initialize
52
- *
53
- * This function is used to setup basic upload form attributes
54
- *
55
- * @type function
56
- * @date 12/04/2016
57
- * @since 5.3.8
58
- *
59
- * @param n/a
60
- * @return n/a
61
- */
62
-
63
- initialize: function(){
64
-
65
- // add attribute to form
66
- if( this.o.uploader == 'basic' ) {
67
-
68
- this.$el.closest('form').attr('enctype', 'multipart/form-data');
69
-
70
- }
71
-
72
- },
73
-
74
-
75
- /*
76
- * prepare
77
- *
78
- * This function will prepare an object of attachment data
79
- * selecting a library image vs embed an image via url return different data
80
- * this function will keep the 2 consistent
81
- *
82
- * @type function
83
- * @date 12/04/2016
84
- * @since 5.3.8
85
- *
86
- * @param attachment (object)
87
- * @return data (object)
88
- */
89
-
90
- prepare: function( attachment ) {
91
-
92
- // defaults
93
- attachment = attachment || {};
94
-
95
-
96
- // bail ealry if already valid
97
- if( attachment._valid ) return attachment;
98
-
99
-
100
- // vars
101
- var data = {
102
- url: '',
103
- alt: '',
104
- title: '',
105
- caption: '',
106
- description: '',
107
- width: 0,
108
- height: 0
109
- };
110
-
111
-
112
- // wp image
113
- if( attachment.id ) {
114
-
115
- // update data
116
- data = attachment.attributes;
117
-
118
-
119
- // maybe get preview size
120
- data.url = acf.maybe_get(data, 'sizes.'+this.o.preview_size+'.url', data.url);
121
-
122
- }
123
-
124
-
125
- // valid
126
- data._valid = true;
127
-
128
-
129
- // return
130
- return data;
131
-
132
- },
133
-
134
-
135
- /*
136
- * render
137
- *
138
- * This function will render the UI
139
- *
140
- * @type function
141
- * @date 12/04/2016
142
- * @since 5.3.8
143
- *
144
- * @param attachment (obj)
145
- * @return n/a
146
- */
147
-
148
- render: function( data ){
149
-
150
- // prepare
151
- data = this.prepare(data);
152
-
153
-
154
- // update image
155
- this.$img.attr({
156
- src: data.url,
157
- alt: data.alt,
158
- title: data.title
159
- });
160
-
161
-
162
- // vars
163
- var val = '';
164
-
165
-
166
- // WP attachment
167
- if( data.id ) {
168
-
169
- val = data.id;
170
-
171
- }
172
-
173
-
174
- // update val
175
- acf.val( this.$input, val );
176
-
177
-
178
- // update class
179
- if( val ) {
180
-
181
- this.$el.addClass('has-value');
182
-
183
- } else {
184
-
185
- this.$el.removeClass('has-value');
186
-
187
- }
188
-
189
- },
190
-
191
-
192
- /*
193
- * add
194
- *
195
- * event listener
196
- *
197
- * @type function
198
- * @date 12/04/2016
199
- * @since 5.3.8
200
- *
201
- * @param e (event)
202
- * @return n/a
203
- */
204
-
205
- add: function() {
206
-
207
- // reference
208
- var self = this,
209
- $field = this.$field;
210
-
211
-
212
- // get repeater
213
- var $repeater = acf.get_closest_field( this.$field, 'repeater' );
214
-
215
-
216
- // popup
217
- var frame = acf.media.popup({
218
-
219
- title: acf._e('image', 'select'),
220
- mode: 'select',
221
- type: 'image',
222
- field: $field.data('key'),
223
- multiple: $repeater.exists(),
224
- library: this.o.library,
225
- mime_types: this.o.mime_types,
226
-
227
- select: function( attachment, i ) {
228
-
229
- // select / add another image field?
230
- if( i > 0 ) {
231
-
232
- // vars
233
- var key = $field.data('key'),
234
- $tr = $field.closest('.acf-row');
235
-
236
-
237
- // reset field
238
- $field = false;
239
-
240
-
241
- // find next image field
242
- $tr.nextAll('.acf-row:visible').each(function(){
243
-
244
- // get next $field
245
- $field = acf.get_field( key, $(this) );
246
-
247
-
248
- // bail early if $next was not found
249
- if( !$field ) return;
250
-
251
-
252
- // bail early if next file uploader has value
253
- if( $field.find('.acf-image-uploader.has-value').exists() ) {
254
-
255
- $field = false;
256
- return;
257
-
258
- }
259
-
260
-
261
- // end loop if $next is found
262
- return false;
263
-
264
- });
265
-
266
-
267
- // add extra row if next is not found
268
- if( !$field ) {
269
-
270
- $tr = acf.fields.repeater.doFocus( $repeater ).add();
271
-
272
-
273
- // bail early if no $tr (maximum rows hit)
274
- if( !$tr ) return false;
275
-
276
-
277
- // get next $field
278
- $field = acf.get_field( key, $tr );
279
-
280
- }
281
-
282
- }
283
-
284
-
285
- // render
286
- self.set('$field', $field).render( attachment );
287
-
288
- }
289
-
290
- });
291
-
292
- },
293
-
294
-
295
- /*
296
- * edit
297
- *
298
- * event listener
299
- *
300
- * @type function
301
- * @date 12/04/2016
302
- * @since 5.3.8
303
- *
304
- * @param e (event)
305
- * @return n/a
306
- */
307
-
308
- edit: function() {
309
-
310
- // reference
311
- var self = this,
312
- $field = this.$field;
313
-
314
-
315
- // vars
316
- var val = this.$input.val();
317
-
318
-
319
- // bail early if no val
320
- if( !val ) return;
321
-
322
-
323
- // popup
324
- var frame = acf.media.popup({
325
-
326
- title: acf._e('image', 'edit'),
327
- button: acf._e('image', 'update'),
328
- mode: 'edit',
329
- attachment: val,
330
-
331
- select: function( attachment, i ) {
332
-
333
- // render
334
- self.set('$field', $field).render( attachment );
335
-
336
- }
337
-
338
- });
339
-
340
- },
341
-
342
-
343
- /*
344
- * remove
345
- *
346
- * event listener
347
- *
348
- * @type function
349
- * @date 12/04/2016
350
- * @since 5.3.8
351
- *
352
- * @param e (event)
353
- * @return n/a
354
- */
355
-
356
- remove: function() {
357
-
358
- // vars
359
- var attachment = {};
360
-
361
-
362
- // add file to field
363
- this.render( attachment );
364
-
365
- },
366
-
367
-
368
- /*
369
- * change
370
- *
371
- * This function will update the hidden input when selecting a basic file to add basic validation
372
- *
373
- * @type function
374
- * @date 12/04/2016
375
- * @since 5.3.8
376
- *
377
- * @param e (event)
378
- * @return n/a
379
- */
380
-
381
- change: function( e ){
382
-
383
- acf.fields.file.get_file_info( e.$el, this.$input );
384
-
385
- }
386
-
387
- });
388
-
389
- })(jQuery);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/_build/js/acf-link.js DELETED
@@ -1,289 +0,0 @@
1
- (function($){
2
-
3
- acf.fields.link = acf.field.extend({
4
-
5
- type: 'link',
6
- active: false,
7
- $el: null,
8
- $node: null,
9
-
10
- events: {
11
- 'click a[data-name="add"]': 'add',
12
- 'click a[data-name="edit"]': 'edit',
13
- 'click a[data-name="remove"]': 'remove',
14
- 'change .link-node': 'change',
15
- },
16
-
17
-
18
- /*
19
- * focus
20
- *
21
- * This function will setup variables when focused on a field
22
- *
23
- * @type function
24
- * @date 12/04/2016
25
- * @since 5.3.8
26
- *
27
- * @param n/a
28
- * @return n/a
29
- */
30
-
31
- focus: function(){
32
-
33
- // get elements
34
- this.$el = this.$field.find('.acf-link');
35
- this.$node = this.$el.find('.link-node');
36
-
37
- },
38
-
39
- add: function( e ){
40
-
41
- acf.link.open( this.$node );
42
-
43
- },
44
-
45
- edit: function( e ){
46
-
47
- this.add();
48
-
49
- },
50
-
51
- remove: function( e ){
52
-
53
- this.val('');
54
-
55
- },
56
-
57
- change: function( e, value ){
58
-
59
- // vars
60
- var val = {
61
- 'title': this.$node.html(),
62
- 'url': this.$node.attr('href'),
63
- 'target': this.$node.attr('target')
64
- };
65
-
66
-
67
- // vars
68
- this.val( val );
69
-
70
- },
71
-
72
- val: function( val ){
73
-
74
- // default
75
- val = acf.parse_args(val, {
76
- 'title': '',
77
- 'url': '',
78
- 'target': ''
79
- });
80
-
81
-
82
- // remove class
83
- this.$el.removeClass('-value -external');
84
-
85
-
86
- // add class
87
- if( val.url ) this.$el.addClass('-value');
88
- if( val.target === '_blank' ) this.$el.addClass('-external');
89
-
90
-
91
- // update text
92
- this.$el.find('.link-title').html( val.title );
93
- this.$el.find('.link-url').attr('href', val.url).html( val.url );
94
-
95
-
96
- // update inputs
97
- this.$el.find('.input-title').val( val.title );
98
- this.$el.find('.input-target').val( val.target );
99
- this.$el.find('.input-url').val( val.url ).trigger('change');
100
-
101
-
102
- // update node
103
- this.$node.html(val.title);
104
- this.$node.attr('href', val.url);
105
- this.$node.attr('target', val.target);
106
- }
107
-
108
- });
109
-
110
-
111
- /*
112
- * acf.link
113
- *
114
- * This model will handle adding tabs and groups
115
- *
116
- * @type function
117
- * @date 25/11/2015
118
- * @since 5.3.2
119
- *
120
- * @param $post_id (int)
121
- * @return $post_id (int)
122
- */
123
-
124
- acf.link = acf.model.extend({
125
-
126
- active: false,
127
- $textarea: null,
128
- $node: null,
129
-
130
- events: {
131
- 'click #wp-link-submit': '_update',
132
- //'river-select .query-results': '_select',
133
- 'wplink-open': '_open',
134
- 'wplink-close': '_close',
135
- },
136
-
137
- atts: function( value ){
138
-
139
- // update
140
- if( typeof value !== 'undefined' ) {
141
-
142
- this.$node.html( value.title );
143
- this.$node.attr('href', value.url);
144
- this.$node.attr('target', value.target);
145
- this.$node.trigger('change', [value]);
146
- return true;
147
-
148
- }
149
-
150
-
151
- // get
152
- return {
153
- 'title': this.$node.html(),
154
- 'url': this.$node.attr('href'),
155
- 'target': this.$node.attr('target')
156
- };
157
-
158
- },
159
-
160
- inputs: function( value ){
161
-
162
- // update
163
- if( typeof value !== 'undefined' ) {
164
-
165
- $('#wp-link-text').val( value.title );
166
- $('#wp-link-url').val( value.url );
167
- $('#wp-link-target').prop('checked', value.target === '_blank' );
168
- return true;
169
-
170
- }
171
-
172
-
173
- // get
174
- return {
175
- 'title': $('#wp-link-text').val(),
176
- 'url': $('#wp-link-url').val(),
177
- 'target': $('#wp-link-target').prop('checked') ? '_blank' : ''
178
- };
179
-
180
- },
181
-
182
- open: function( $node ){
183
-
184
- // create textarea
185
- var $textarea = $('<textarea id="acf-link-textarea"></textarea>');
186
-
187
-
188
- // append textarea
189
- $node.before( $textarea );
190
-
191
-
192
- // update vars
193
- this.active = true;
194
- this.$node = $node;
195
- this.$textarea = $textarea;
196
-
197
-
198
- // get atts
199
- var atts = this.atts();
200
-
201
-
202
- // open link
203
- wpLink.open( 'acf-link-textarea', atts.url, atts.title, null );
204
-
205
-
206
- // always show title (WP will hide title if empty)
207
- $('#wp-link-wrap').addClass('has-text-field');
208
-
209
- },
210
-
211
- reset: function(){
212
-
213
- this.active = false;
214
- this.$textarea.remove();
215
- this.$textarea = null;
216
- this.$node = null;
217
-
218
- },
219
-
220
- _select: function( e, $li ){
221
-
222
- // get inputs
223
- var val = this.inputs();
224
-
225
-
226
- // update title
227
- if( !val.title ) {
228
-
229
- val.title = $li.find('.item-title').text();
230
- this.inputs( val );
231
-
232
- console.log(val);
233
- }
234
-
235
- },
236
-
237
- _open: function( e ){
238
-
239
- // bail early if not active
240
- if( !this.active ) return;
241
-
242
-
243
- // get atts
244
- var val = this.atts();
245
-
246
-
247
- // update WP inputs
248
- this.inputs( val );
249
-
250
- },
251
-
252
- _close: function( e ){
253
-
254
- // bail early if not active
255
- if( !this.active ) return;
256
-
257
-
258
- // reset vars
259
- // use timeout to allow _update() function to check vars
260
- setTimeout(function(){
261
-
262
- acf.link.reset();
263
-
264
- }, 100);
265
-
266
- },
267
-
268
- _update: function( e ){
269
-
270
- // bail early if not active
271
- if( !this.active ) return;
272
-
273
-
274
- // get atts
275
- var val = this.inputs();
276
-
277
-
278
- // update node
279
- this.atts( val );
280
-
281
- }
282
-
283
- });
284
-
285
-
286
- // todo - listen to AJAX for wp-link-ajax and append post_id to value
287
-
288
-
289
- })(jQuery);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/_build/js/acf-media.js DELETED
@@ -1,1112 +0,0 @@
1
- (function($){
2
-
3
- acf.media = acf.model.extend({
4
-
5
- frames: [],
6
- mime_types: {},
7
-
8
- actions: {
9
- 'ready': 'ready'
10
- },
11
-
12
-
13
- /*
14
- * frame
15
- *
16
- * This function will return the current frame
17
- *
18
- * @type function
19
- * @date 11/04/2016
20
- * @since 5.3.2
21
- *
22
- * @param n/a
23
- * @return frame (object)
24
- */
25
-
26
- frame: function(){
27
-
28
- // vars
29
- var i = this.frames.length - 1;
30
-
31
-
32
- // bail early if no index
33
- if( i < 0 ) return false;
34
-
35
-
36
- // return
37
- return this.frames[ i ];
38
-
39
- },
40
-
41
-
42
- /*
43
- * destroy
44
- *
45
- * this function will destroy a frame
46
- *
47
- * @type function
48
- * @date 11/04/2016
49
- * @since 5.3.8
50
- *
51
- * @return frame (object)
52
- * @return n/a
53
- */
54
-
55
- destroy: function( frame ) {
56
-
57
- // detach
58
- frame.detach();
59
- frame.dispose();
60
-
61
-
62
- // remove frame
63
- frame = null;
64
- this.frames.pop();
65
-
66
- },
67
-
68
-
69
- /*
70
- * popup
71
- *
72
- * This function will create a wp media popup frame
73
- *
74
- * @type function
75
- * @date 11/04/2016
76
- * @since 5.3.8
77
- *
78
- * @param args (object)
79
- * @return frame (object)
80
- */
81
-
82
- popup: function( args ) {
83
-
84
- // vars
85
- var post_id = acf.get('post_id'),
86
- frame = false;
87
-
88
-
89
- // validate post_id
90
- if( !$.isNumeric(post_id) ) post_id = 0;
91
-
92
-
93
- // settings
94
- var settings = acf.parse_args( args, {
95
- mode: 'select', // 'select', 'edit'
96
- title: '', // 'Upload Image'
97
- button: '', // 'Select Image'
98
- type: '', // 'image', ''
99
- field: '', // 'field_123'
100
- mime_types: '', // 'pdf, etc'
101
- library: 'all', // 'all', 'uploadedTo'
102
- multiple: false, // false, true, 'add'
103
- attachment: 0, // the attachment to edit
104
- post_id: post_id, // the post being edited
105
- select: function(){}
106
- });
107
-
108
-
109
- // id changed to attributes
110
- if( settings.id ) settings.attachment = settings.id;
111
-
112
-
113
- // create frame
114
- var frame = this.new_media_frame( settings );
115
-
116
-
117
- // append
118
- this.frames.push( frame );
119
-
120
-
121
- // open popup (allow frame customization before opening)
122
- setTimeout(function(){
123
-
124
- frame.open();
125
-
126
- }, 1);
127
-
128
-
129
- // return
130
- return frame;
131
-
132
- },
133
-
134
-
135
- /*
136
- * _get_media_frame_settings
137
- *
138
- * This function will return an object containing frame settings
139
- *
140
- * @type function
141
- * @date 11/04/2016
142
- * @since 5.3.8
143
- *
144
- * @param frame (object)
145
- * @param settings (object)
146
- * @return frame (object)
147
- */
148
-
149
- _get_media_frame_settings: function( frame, settings ){
150
-
151
- // select
152
- if( settings.mode === 'select' ) {
153
-
154
- frame = this._get_select_frame_settings( frame, settings );
155
-
156
- // edit
157
- } else if( settings.mode === 'edit' ) {
158
-
159
- frame = this._get_edit_frame_settings( frame, settings );
160
-
161
- }
162
-
163
-
164
- // return
165
- return frame;
166
-
167
- },
168
-
169
- _get_select_frame_settings: function( frame, settings ){
170
-
171
- // type
172
- if( settings.type ) {
173
-
174
- frame.library.type = settings.type;
175
-
176
- }
177
-
178
-
179
- // library
180
- if( settings.library === 'uploadedTo' ) {
181
-
182
- frame.library.uploadedTo = settings.post_id;
183
-
184
- }
185
-
186
-
187
- // button
188
- frame._button = acf._e('media', 'select');
189
-
190
-
191
- // return
192
- return frame;
193
-
194
- },
195
-
196
- _get_edit_frame_settings: function( frame, settings ){
197
-
198
- // post__in
199
- frame.library.post__in = [ settings.attachment ];
200
-
201
-
202
- // button
203
- frame._button = acf._e('media', 'update');
204
-
205
-
206
- // return
207
- return frame;
208
-
209
- },
210
-
211
-
212
- /*
213
- * _add_media_frame_events
214
- *
215
- * This function will add events to the frame object
216
- *
217
- * @type function
218
- * @date 11/04/2016
219
- * @since 5.3.8
220
- *
221
- * @param $post_id (int)
222
- * @return $post_id (int)
223
- */
224
-
225
- _add_media_frame_events: function( frame, settings ){
226
-
227
- // log events
228
- /*
229
- frame.on('all', function( e ) {
230
-
231
- console.log( 'frame all: %o', e );
232
-
233
- });
234
- */
235
-
236
-
237
- // add class
238
- frame.on('open',function() {
239
-
240
- // add class
241
- this.$el.closest('.media-modal').addClass('acf-media-modal -' +settings.mode );
242
-
243
- }, frame);
244
-
245
-
246
- // edit image view
247
- // source: media-views.js:2410 editImageContent()
248
- frame.on('content:render:edit-image', function(){
249
-
250
- var image = this.state().get('image'),
251
- view = new wp.media.view.EditImage( { model: image, controller: this } ).render();
252
-
253
- this.content.set( view );
254
-
255
- // after creating the wrapper view, load the actual editor via an ajax call
256
- view.loadEditor();
257
-
258
- }, frame);
259
-
260
-
261
- // update toolbar button
262
- frame.on( 'toolbar:create:select', function( toolbar ) {
263
-
264
- toolbar.view = new wp.media.view.Toolbar.Select({
265
- text: frame.options._button,
266
- controller: this
267
- });
268
-
269
- }, frame );
270
-
271
-
272
- // select image
273
- frame.on('select', function() {
274
-
275
- // get selected images
276
- var state = frame.state(),
277
- image = state.get('image'),
278
- selection = state.get('selection');
279
-
280
-
281
- // if editing image
282
- if( image ) {
283
-
284
- settings.select.apply( frame, [image, 0] );
285
-
286
- return;
287
-
288
- }
289
-
290
-
291
- // if selecting images
292
- if( selection ) {
293
-
294
- // vars
295
- var i = 0;
296
-
297
-
298
- // loop
299
- selection.each(function( attachment ){
300
-
301
- settings.select.apply( frame, [attachment, i] );
302
-
303
- i++;
304
-
305
- });
306
-
307
- return;
308
-
309
- }
310
-
311
- });
312
-
313
-
314
- // close popup
315
- frame.on('close',function(){
316
-
317
- setTimeout(function(){
318
-
319
- acf.media.destroy( frame );
320
-
321
- }, 500);
322
-
323
- });
324
-
325
-
326
- // select
327
- if( settings.mode === 'select' ) {
328
-
329
- frame = this._add_select_frame_events( frame, settings );
330
-
331
- // edit
332
- } else if( settings.mode === 'edit' ) {
333
-
334
- frame = this._add_edit_frame_events( frame, settings );
335
-
336
- }
337
-
338
-
339
- // return
340
- return frame;
341
-
342
- },
343
-
344
- _add_select_frame_events: function( frame, settings ){
345
-
346
- // reference
347
- var self = this;
348
-
349
-
350
- // plupload
351
- // adds _acfuploader param to validate uploads
352
- if( acf.isset(_wpPluploadSettings, 'defaults', 'multipart_params') ) {
353
-
354
- // add _acfuploader so that Uploader will inherit
355
- _wpPluploadSettings.defaults.multipart_params._acfuploader = settings.field;
356
-
357
-
358
- // remove acf_field so future Uploaders won't inherit
359
- frame.on('open', function(){
360
-
361
- delete _wpPluploadSettings.defaults.multipart_params._acfuploader;
362
-
363
- });
364
-
365
- }
366
-
367
-
368
- // modify DOM
369
- frame.on('content:activate:browse', function(){
370
-
371
- // populate above vars making sure to allow for failure
372
- try {
373
-
374
- var toolbar = frame.content.get().toolbar,
375
- filters = toolbar.get('filters'),
376
- search = toolbar.get('search');
377
-
378
- } catch(e) {
379
-
380
- // one of the objects was 'undefined'... perhaps the frame open is Upload Files
381
- // console.log( 'error %o', e );
382
- return;
383
-
384
- }
385
-
386
-
387
- // image
388
- if( settings.type == 'image' ) {
389
-
390
- // update all
391
- filters.filters.all.text = acf._e('image', 'all');
392
-
393
-
394
- // remove some filters
395
- delete filters.filters.audio;
396
- delete filters.filters.video;
397
-
398
-
399
- // update all filters to show images
400
- $.each( filters.filters, function( k, filter ){
401
-
402
- if( filter.props.type === null ) {
403
-
404
- filter.props.type = 'image';
405
-
406
- }
407
-
408
- });
409
-
410
- }
411
-
412
-
413
- // custom mime types
414
- if( settings.mime_types ) {
415
-
416
- // explode
417
- var extra_types = settings.mime_types.split(' ').join('').split('.').join('').split(',');
418
-
419
-
420
- // loop through mime_types
421
- $.each( extra_types, function( i, type ){
422
-
423
- // find mime
424
- $.each( self.mime_types, function( t, mime ){
425
-
426
- // continue if key does not match
427
- if( t.indexOf(type) === -1 ) {
428
-
429
- return;
430
-
431
- }
432
-
433
-
434
- // create new filter
435
- var filter = {
436
- text: type,
437
- props: {
438
- status: null,
439
- type: mime,
440
- uploadedTo: null,
441
- orderby: 'date',
442
- order: 'DESC'
443
- },
444
- priority: 20
445
- };
446
-
447
-
448
- // append filter
449
- filters.filters[ mime ] = filter;
450
-
451
- });
452
-
453
- });
454
-
455
- }
456
-
457
-
458
- // uploaded to post
459
- if( settings.library == 'uploadedTo' ) {
460
-
461
- // remove some filters
462
- delete filters.filters.unattached;
463
- delete filters.filters.uploaded;
464
-
465
-
466
- // add 'uploadedTo' text
467
- filters.$el.parent().append('<span class="acf-uploadedTo">' + acf._e('image', 'uploadedTo') + '</span>');
468
-
469
-
470
- // add uploadedTo to filters
471
- $.each( filters.filters, function( k, filter ){
472
-
473
- filter.props.uploadedTo = settings.post_id;
474
-
475
- });
476
-
477
- }
478
-
479
-
480
- // add _acfuploader to filters
481
- $.each( filters.filters, function( k, filter ){
482
-
483
- filter.props._acfuploader = settings.field;
484
-
485
- });
486
-
487
-
488
- // add _acfuplaoder to search
489
- search.model.attributes._acfuploader = settings.field;
490
-
491
-
492
- // render
493
- if( typeof filters.refresh === 'function' ) {
494
-
495
- filters.refresh();
496
-
497
- }
498
-
499
- });
500
-
501
-
502
- // return
503
- return frame;
504
-
505
- },
506
-
507
- _add_edit_frame_events: function( frame, settings ){
508
-
509
- // add class
510
- frame.on('open',function() {
511
-
512
- // add class
513
- this.$el.closest('.media-modal').addClass('acf-expanded');
514
-
515
-
516
- // set to browse
517
- if( this.content.mode() != 'browse' ) {
518
-
519
- this.content.mode('browse');
520
-
521
- }
522
-
523
-
524
- // set selection
525
- var state = this.state(),
526
- selection = state.get('selection'),
527
- attachment = wp.media.attachment( settings.attachment );
528
-
529
-
530
- selection.add( attachment );
531
-
532
- }, frame);
533
-
534
-
535
- // return
536
- return frame;
537
-
538
- },
539
-
540
-
541
- /*
542
- * new_media_frame
543
- *
544
- * this function will create a new media frame
545
- *
546
- * @type function
547
- * @date 11/04/2016
548
- * @since 5.3.8
549
- *
550
- * @param settings (object)
551
- * @return frame (object)
552
- */
553
-
554
- new_media_frame: function( settings ){
555
-
556
- // vars
557
- var attributes = {
558
- title: settings.title,
559
- multiple: settings.multiple,
560
- library: {},
561
- states: []
562
- };
563
-
564
-
565
- // get options
566
- attributes = this._get_media_frame_settings( attributes, settings );
567
-
568
-
569
- // create query
570
- var Query = wp.media.query( attributes.library );
571
-
572
-
573
- // add _acfuploader
574
- // this is super wack!
575
- // if you add _acfuploader to the options.library args, new uploads will not be added to the library view.
576
- // this has been traced back to the wp.media.model.Query initialize function (which can't be overriden)
577
- // Adding any custom args will cause the Attahcments to not observe the uploader queue
578
- // To bypass this security issue, we add in the args AFTER the Query has been initialized
579
- // options.library._acfuploader = settings.field;
580
- if( acf.isset(Query, 'mirroring', 'args') ) {
581
-
582
- Query.mirroring.args._acfuploader = settings.field;
583
-
584
- }
585
-
586
-
587
- // add states
588
- attributes.states = [
589
-
590
- // main state
591
- new wp.media.controller.Library({
592
- library: Query,
593
- multiple: attributes.multiple,
594
- title: attributes.title,
595
- priority: 20,
596
- filterable: 'all',
597
- editable: true,
598
-
599
- // If the user isn't allowed to edit fields,
600
- // can they still edit it locally?
601
- allowLocalEdits: true
602
- })
603
-
604
- ];
605
-
606
-
607
- // edit image functionality (added in WP 3.9)
608
- if( acf.isset(wp, 'media', 'controller', 'EditImage') ) {
609
-
610
- attributes.states.push( new wp.media.controller.EditImage() );
611
-
612
- }
613
-
614
-
615
- // create frame
616
- var frame = wp.media( attributes );
617
-
618
-
619
- // add args reference
620
- frame.acf = settings;
621
-
622
-
623
- // add events
624
- frame = this._add_media_frame_events( frame, settings );
625
-
626
-
627
- // return
628
- return frame;
629
-
630
- },
631
-
632
- ready: function(){
633
-
634
- // vars
635
- var version = acf.get('wp_version'),
636
- browser = acf.get('browser'),
637
- post_id = acf.get('post_id');
638
-
639
-
640
- // update wp.media
641
- if( acf.isset(window,'wp','media','view','settings','post') && $.isNumeric(post_id) ) {
642
-
643
- wp.media.view.settings.post.id = post_id;
644
-
645
- }
646
-
647
-
648
- // append browser
649
- if( browser ) {
650
-
651
- $('body').addClass('browser-' + browser );
652
-
653
- }
654
-
655
-
656
- // append version
657
- if( version ) {
658
-
659
- // ensure is string
660
- version = version + '';
661
-
662
-
663
- // use only major version
664
- major = version.substr(0,1);
665
-
666
-
667
- // add body class
668
- $('body').addClass('major-' + major);
669
-
670
- }
671
-
672
-
673
- // customize wp.media views
674
- if( acf.isset(window, 'wp', 'media', 'view') ) {
675
-
676
- //this.customize_Attachments();
677
- //this.customize_Query();
678
- //this.add_AcfEmbed();
679
- this.customize_Attachment();
680
- this.customize_AttachmentFiltersAll();
681
- this.customize_AttachmentCompat();
682
-
683
- }
684
-
685
- },
686
-
687
-
688
- /*
689
- add_AcfEmbed: function(){
690
-
691
- //test urls
692
- //(image) jpg: http://www.ml24.net/img/ml24_design_process_scion_frs_3d_rendering.jpg
693
- //(image) svg: http://kompozer.net/images/svg/Mozilla_Firefox.svg
694
- //(file) pdf: http://martinfowler.com/ieeeSoftware/whenType.pdf
695
- //(video) mp4: https://videos.files.wordpress.com/kUJmAcSf/bbb_sunflower_1080p_30fps_normal_hd.mp4
696
-
697
-
698
-
699
- // add view
700
- wp.media.view.AcfEmbed = wp.media.view.Embed.extend({
701
-
702
- initialize: function() {
703
-
704
- // set attachments
705
- this.model.props.attributes = this.controller.acf.attachment || {};
706
-
707
-
708
- // refresh
709
- wp.media.view.Embed.prototype.initialize.apply( this, arguments );
710
-
711
- },
712
-
713
- refresh: function() {
714
-
715
- // vars
716
- var attachment = acf.parse_args(this.model.props.attributes, {
717
- url: '',
718
- filename: '',
719
- title: '',
720
- caption: '',
721
- alt: '',
722
- description: '',
723
- type: '',
724
- ext: ''
725
- });
726
-
727
-
728
- // update attachment
729
- if( attachment.url ) {
730
-
731
- // filename
732
- attachment.filename = attachment.url.split('/').pop().split('?')[0];
733
-
734
-
735
- // update
736
- attachment.ext = attachment.filename.split('.').pop();
737
- attachment.type = /(jpe?g|png|gif|svg)/i.test(attachment.ext) ? 'image': 'file';
738
-
739
- }
740
-
741
-
742
- // auto generate title
743
- if( attachment.filename && !attachment.title ) {
744
-
745
- // replace
746
- attachment.title = attachment.filename.split('-').join(' ').split('_').join(' ');
747
-
748
-
749
- // uppercase first word
750
- attachment.title = attachment.title.charAt(0).toUpperCase() + attachment.title.slice(1);
751
-
752
-
753
- // remove extension
754
- attachment.title = attachment.title.replace('.'+attachment.ext, '');
755
-
756
-
757
- // update model
758
- this.model.props.attributes.title = attachment.title;
759
-
760
- }
761
-
762
-
763
- // save somee extra data
764
- this.model.props.attributes.filename = attachment.filename;
765
- this.model.props.attributes.type = attachment.type;
766
-
767
-
768
- // always show image view
769
- // avoid this.model.set() to prevent listeners updating view
770
- this.model.attributes.type = 'image';
771
-
772
-
773
- // refresh
774
- wp.media.view.Embed.prototype.refresh.apply( this, arguments );
775
-
776
-
777
- // append title
778
- this.$el.find('.setting.caption').before([
779
- '<label class="setting title">',
780
- '<span>Title</span>',
781
- '<input type="text" data-setting="title" value="' + attachment.title + '">',
782
- '</label>'
783
- ].join(''));
784
-
785
-
786
- // append description
787
- this.$el.find('.setting.alt-text').after([
788
- '<label class="setting description">',
789
- '<span>Description</span>',
790
- '<textarea type="text" data-setting="description">' + attachment.description + '</textarea>',
791
- '</label>'
792
- ].join(''));
793
-
794
-
795
- // hide alt
796
- if( attachment.type !== 'image' ) {
797
-
798
- this.$el.find('.setting.alt-text').hide();
799
-
800
- }
801
-
802
- }
803
-
804
- });
805
-
806
- },
807
- */
808
- /*
809
-
810
- customize_Attachments: function(){
811
-
812
- // vars
813
- var Attachments = wp.media.model.Attachments;
814
-
815
-
816
- wp.media.model.Attachments = Attachments.extend({
817
-
818
- initialize: function( models, options ){
819
-
820
- // console.log('My Attachments initialize: %o %o %o', this, models, options);
821
-
822
- // return
823
- return Attachments.prototype.initialize.apply( this, arguments );
824
-
825
- },
826
-
827
- sync: function( method, model, options ) {
828
-
829
- // console.log('My Attachments sync: %o %o %o %o', this, method, model, options);
830
-
831
-
832
- // return
833
- return Attachments.prototype.sync.apply( this, arguments );
834
-
835
- }
836
-
837
- });
838
-
839
- },
840
-
841
- customize_Query: function(){
842
-
843
- // console.log('customize Query!');
844
-
845
- // vars
846
- var Query = wp.media.model.Query;
847
-
848
-
849
- wp.media.model.Query = {};
850
-
851
- },
852
- */
853
-
854
- customize_Attachment: function(){
855
-
856
- // vars
857
- var AttachmentLibrary = wp.media.view.Attachment.Library;
858
-
859
-
860
- // extend
861
- wp.media.view.Attachment.Library = AttachmentLibrary.extend({
862
-
863
- render: function() {
864
-
865
- // vars
866
- var frame = acf.media.frame(),
867
- errors = acf.maybe_get(this, 'model.attributes.acf_errors');
868
-
869
-
870
- // add class
871
- // also make sure frame exists to prevent this logic running on a WP popup (such as feature image)
872
- if( frame && errors ) {
873
-
874
- this.$el.addClass('acf-disabled');
875
-
876
- }
877
-
878
-
879
- // return
880
- return AttachmentLibrary.prototype.render.apply( this, arguments );
881
-
882
- },
883
-
884
-
885
- /*
886
- * toggleSelection
887
- *
888
- * This function is called before an attachment is selected
889
- * A good place to check for errors and prevent the 'select' function from being fired
890
- *
891
- * @type function
892
- * @date 29/09/2016
893
- * @since 5.4.0
894
- *
895
- * @param options (object)
896
- * @return n/a
897
- */
898
-
899
- toggleSelection: function( options ) {
900
-
901
- // vars
902
- // source: wp-includes/js/media-views.js:2880
903
- var collection = this.collection,
904
- selection = this.options.selection,
905
- model = this.model,
906
- single = selection.single();
907
-
908
-
909
- // vars
910
- var frame = acf.media.frame(),
911
- errors = acf.maybe_get(this, 'model.attributes.acf_errors'),
912
- $sidebar = this.controller.$el.find('.media-frame-content .media-sidebar');
913
-
914
-
915
- // remove previous error
916
- $sidebar.children('.acf-selection-error').remove();
917
-
918
-
919
- // show attachment details
920
- $sidebar.children().removeClass('acf-hidden');
921
-
922
-
923
- // add message
924
- if( frame && errors ) {
925
-
926
- // vars
927
- var filename = acf.maybe_get(this, 'model.attributes.filename', '');
928
-
929
-
930
- // hide attachment details
931
- // Gallery field continues to show previously selected attachment...
932
- $sidebar.children().addClass('acf-hidden');
933
-
934
-
935
- // append message
936
- $sidebar.prepend([
937
- '<div class="acf-selection-error">',
938
- '<span class="selection-error-label">' + acf._e('restricted') +'</span>',
939
- '<span class="selection-error-filename">' + filename + '</span>',
940
- '<span class="selection-error-message">' + errors + '</span>',
941
- '</div>'
942
- ].join(''));
943
-
944
-
945
- // reset selection (unselects all attachments)
946
- selection.reset();
947
-
948
-
949
- // set single (attachment displayed in sidebar)
950
- selection.single( model );
951
-
952
-
953
- // return and prevent 'select' form being fired
954
- return;
955
-
956
- }
957
-
958
-
959
- // return
960
- AttachmentLibrary.prototype.toggleSelection.apply( this, arguments );
961
-
962
- }
963
-
964
- });
965
-
966
- },
967
-
968
- customize_AttachmentFiltersAll: function(){
969
-
970
- // add function refresh
971
- wp.media.view.AttachmentFilters.All.prototype.refresh = function(){
972
-
973
- // Build `<option>` elements.
974
- this.$el.html( _.chain( this.filters ).map( function( filter, value ) {
975
- return {
976
- el: $( '<option></option>' ).val( value ).html( filter.text )[0],
977
- priority: filter.priority || 50
978
- };
979
- }, this ).sortBy('priority').pluck('el').value() );
980
-
981
- };
982
-
983
- },
984
-
985
- customize_AttachmentCompat: function(){
986
-
987
- // vars
988
- var AttachmentCompat = wp.media.view.AttachmentCompat;
989
-
990
-
991
- // extend
992
- wp.media.view.AttachmentCompat = AttachmentCompat.extend({
993
-
994
- add_acf_expand_button: function(){
995
-
996
- // vars
997
- var $el = this.$el.closest('.media-modal');
998
-
999
-
1000
- // does button already exist?
1001
- if( $el.find('.media-frame-router .acf-expand-details').exists() ) return;
1002
-
1003
-
1004
- // create button
1005
- var $a = $([
1006
- '<a href="#" class="acf-expand-details">',
1007
- '<span class="is-closed"><span class="acf-icon -left small grey"></span>' + acf._e('expand_details') + '</span>',
1008
- '<span class="is-open"><span class="acf-icon -right small grey"></span>' + acf._e('collapse_details') + '</span>',
1009
- '</a>'
1010
- ].join(''));
1011
-
1012
-
1013
- // add events
1014
- $a.on('click', function( e ){
1015
-
1016
- e.preventDefault();
1017
-
1018
- if( $el.hasClass('acf-expanded') ) {
1019
-
1020
- $el.removeClass('acf-expanded');
1021
-
1022
- } else {
1023
-
1024
- $el.addClass('acf-expanded');
1025
-
1026
- }
1027
-
1028
- });
1029
-
1030
-
1031
- // append
1032
- $el.find('.media-frame-router').append( $a );
1033
-
1034
- },
1035
-
1036
- render: function() {
1037
-
1038
- // validate
1039
- if( this.ignore_render ) return this;
1040
-
1041
-
1042
- // reference
1043
- var self = this;
1044
-
1045
-
1046
- // add expand button
1047
- setTimeout(function(){
1048
-
1049
- self.add_acf_expand_button();
1050
-
1051
- }, 0);
1052
-
1053
-
1054
- // setup fields
1055
- // The clearTimout is needed to prevent many setup functions from running at the same time
1056
- clearTimeout( acf.media.render_timout );
1057
- acf.media.render_timout = setTimeout(function(){
1058
-
1059
- acf.do_action('append', self.$el);
1060
-
1061
- }, 50);
1062
-
1063
-
1064
- // return
1065
- return AttachmentCompat.prototype.render.apply( this, arguments );
1066
-
1067
- },
1068
-
1069
-
1070
- dispose: function() {
1071
-
1072
- // remove
1073
- acf.do_action('remove', this.$el);
1074
-
1075
-
1076
- // return
1077
- return AttachmentCompat.prototype.dispose.apply( this, arguments );
1078
-
1079
- },
1080
-
1081
-
1082
- save: function( e ) {
1083
-
1084
- if( e ) {
1085
-
1086
- e.preventDefault();
1087
-
1088
- }
1089
-
1090
-
1091
- // serialize form
1092
- var data = acf.serialize(this.$el);
1093
-
1094
-
1095
- // ignore render
1096
- this.ignore_render = true;
1097
-
1098
-
1099
- // save
1100
- this.model.saveCompat( data );
1101
-
1102
- }
1103
-
1104
-
1105
- });
1106
-
1107
- }
1108
-
1109
-
1110
- });
1111
-
1112
- })(jQuery);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/_build/js/acf-oembed.js DELETED
@@ -1,259 +0,0 @@
1
- (function($){
2
-
3
- acf.fields.oembed = acf.field.extend({
4
-
5
- type: 'oembed',
6
- $el: null,
7
-
8
- events: {
9
- 'click [data-name="search-button"]': '_search',
10
- 'click [data-name="clear-button"]': '_clear',
11
- 'click [data-name="value-title"]': '_edit',
12
- 'keypress [data-name="search-input"]': '_keypress',
13
- 'keyup [data-name="search-input"]': '_keyup',
14
- 'blur [data-name="search-input"]': '_blur'
15
- },
16
-
17
-
18
- /*
19
- * focus
20
- *
21
- * This function will setup variables when focused on a field
22
- *
23
- * @type function
24
- * @date 12/04/2016
25
- * @since 5.3.8
26
- *
27
- * @param n/a
28
- * @return n/a
29
- */
30
-
31
- focus: function(){
32
-
33
- // vars
34
- this.$el = this.$field.find('.acf-oembed');
35
- this.$search = this.$el.find('[data-name="search-input"]');
36
- this.$input = this.$el.find('[data-name="value-input"]');
37
- this.$title = this.$el.find('[data-name="value-title"]');
38
- this.$embed = this.$el.find('[data-name="value-embed"]');
39
-
40
-
41
- // options
42
- this.o = acf.get_data( this.$el );
43
-
44
- },
45
-
46
-
47
- /*
48
- * maybe_search
49
- *
50
- * description
51
- *
52
- * @type function
53
- * @date 14/10/16
54
- * @since 5.4.0
55
- *
56
- * @param $post_id (int)
57
- * @return $post_id (int)
58
- */
59
-
60
- maybe_search: function(){
61
-
62
- // set url and focus
63
- var old_url = this.$input.val(),
64
- new_url = this.$search.val();
65
-
66
-
67
- // bail early if no value
68
- if( !new_url ) {
69
-
70
- this.clear();
71
- return;
72
-
73
- }
74
-
75
-
76
- // bail early if no change
77
- if( new_url == old_url ) return;
78
-
79
-
80
- // search
81
- this.search();
82
-
83
- },
84
-
85
-
86
- /*
87
- * search
88
- *
89
- * This function will search for an oembed
90
- *
91
- * @type function
92
- * @date 13/10/16
93
- * @since 5.4.0
94
- *
95
- * @param n/a
96
- * @return n/a
97
- */
98
-
99
- search: function(){
100
-
101
- // vars
102
- var s = this.$search.val();
103
-
104
-
105
- // fix missing 'http://' - causes the oembed code to error and fail
106
- if( s.substr(0, 4) != 'http' ) {
107
-
108
- s = 'http://' + s;
109
- this.$search.val( s );
110
-
111
- }
112
-
113
-
114
- // show loading
115
- this.$el.addClass('is-loading');
116
-
117
-
118
- // AJAX data
119
- var ajax_data = acf.prepare_for_ajax({
120
- 'action' : 'acf/fields/oembed/search',
121
- 's' : s,
122
- 'field_key' : this.$field.data('key')
123
- });
124
-
125
-
126
- // abort XHR if this field is already loading AJAX data
127
- if( this.$el.data('xhr') ) this.$el.data('xhr').abort();
128
-
129
-
130
- // get HTML
131
- var xhr = $.ajax({
132
- url: acf.get('ajaxurl'),
133
- data: ajax_data,
134
- type: 'post',
135
- dataType: 'json',
136
- context: this,
137
- success: this.search_success
138
- });
139
-
140
-
141
- // update el data
142
- this.$el.data('xhr', xhr);
143
-
144
- },
145
-
146
- search_success: function( json ){
147
-
148
- // vars
149
- var s = this.$search.val();
150
-
151
-
152
- // remove loading
153
- this.$el.removeClass('is-loading');
154
-
155
-
156
- // error
157
- if( !json || !json.html ) {
158
-
159
- this.$el.removeClass('has-value').addClass('has-error');
160
- return;
161
-
162
- }
163
-
164
-
165
- // add classes
166
- this.$el.removeClass('has-error').addClass('has-value');
167
-
168
-
169
- // update vars
170
- this.$input.val( s );
171
- this.$title.html( s );
172
- this.$embed.html( json.html );
173
-
174
- },
175
-
176
- clear: function(){
177
-
178
- // update class
179
- this.$el.removeClass('has-error has-value');
180
-
181
-
182
- // clear search
183
- this.$el.find('[data-name="search-input"]').val('');
184
-
185
-
186
- // clear inputs
187
- this.$input.val('');
188
- this.$title.html('');
189
- this.$embed.html('');
190
-
191
- },
192
-
193
- edit: function(){
194
-
195
- // add class
196
- this.$el.addClass('is-editing');
197
-
198
-
199
- // set url and focus
200
- this.$search.val( this.$title.text() ).focus();
201
-
202
- },
203
-
204
- blur: function( $el ){
205
-
206
- // remove class
207
- this.$el.removeClass('is-editing');
208
-
209
-
210
- // maybe search
211
- this.maybe_search();
212
-
213
- },
214
-
215
- _search: function( e ){ // console.log('_search');
216
-
217
- this.search();
218
-
219
- },
220
-
221
- _clear: function( e ){ // console.log('_clear');
222
-
223
- this.clear();
224
-
225
- },
226
-
227
- _edit: function( e ){ // console.log('_clear');
228
-
229
- this.edit();
230
-
231
- },
232
-
233
- _keypress: function( e ){ // console.log('_keypress');
234
-
235
- // don't submit form
236
- if( e.which == 13 ) e.preventDefault();
237
-
238
- },
239
-
240
- _keyup: function( e ){ //console.log('_keypress', e.which);
241
-
242
- // bail early if no value
243
- if( !this.$search.val() ) return;
244
-
245
-
246
- // maybe search
247
- this.maybe_search();
248
-
249
- },
250
-
251
- _blur: function( e ){ // console.log('_blur');
252
-
253
- this.blur();
254
-
255
- }
256
-
257
- });
258
-
259
- })(jQuery);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/_build/js/acf-radio.js DELETED
@@ -1,110 +0,0 @@
1
- (function($){
2
-
3
- acf.fields.radio = acf.field.extend({
4
-
5
- type: 'radio',
6
-
7
- $ul: null,
8
-
9
- actions: {
10
- 'ready': 'initialize',
11
- 'append': 'initialize'
12
- },
13
-
14
- events: {
15
- 'click input[type="radio"]': 'click'
16
- },
17
-
18
- focus: function(){
19
-
20
- // focus on $select
21
- this.$ul = this.$field.find('.acf-radio-list');
22
-
23
-
24
- // get options
25
- this.o = acf.get_data( this.$ul );
26
-
27
- },
28
-
29
-
30
- /*
31
- * initialize
32
- *
33
- * This function will fix a bug found in Chrome.
34
- * A radio input (for a given name) may only have 1 selected value. When used within a fc layout
35
- * multiple times (clone field), the selected value (default value) will not be checked.
36
- * This simply re-checks it.
37
- *
38
- * @type function
39
- * @date 30/08/2016
40
- * @since 5.4.0
41
- *
42
- * @param $post_id (int)
43
- * @return $post_id (int)
44
- */
45
-
46
- initialize: function(){
47
-
48
- // find selected input and check it
49
- this.$ul.find('.selected input').prop('checked', true);
50
-
51
- },
52
-
53
- click: function(e){
54
-
55
- // vars
56
- var $radio = e.$el,
57
- $label = $radio.parent('label'),
58
- selected = $label.hasClass('selected'),
59
- val = $radio.val();
60
-
61
-
62
- // remove previous selected
63
- this.$ul.find('.selected').removeClass('selected');
64
-
65
-
66
- // add active class
67
- $label.addClass('selected');
68
-
69
-
70
- // allow null
71
- if( this.o.allow_null && selected ) {
72
-
73
- // unselect
74
- e.$el.prop('checked', false);
75
- $label.removeClass('selected');
76
- val = false;
77
-
78
-
79
- // trigger change
80
- e.$el.trigger('change');
81
-
82
- }
83
-
84
-
85
- // other
86
- if( this.o.other_choice ) {
87
-
88
- // vars
89
- var $other = this.$ul.find('input[type="text"]');
90
-
91
-
92
- // show
93
- if( val === 'other' ) {
94
-
95
- $other.prop('disabled', false).attr('name', $radio.attr('name'));
96
-
97
- // hide
98
- } else {
99
-
100
- $other.prop('disabled', true).attr('name', '');
101
-
102
- }
103
-
104
- }
105
-
106
- }
107
-
108
- });
109
-
110
- })(jQuery);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/_build/js/acf-range.js DELETED
@@ -1,50 +0,0 @@
1
- (function($){
2
-
3
- acf.fields.range = acf.field.extend({
4
-
5
- type: 'range',
6
- $el: null,
7
- $range: null,
8
- $input: null,
9
-
10
- events: {
11
- 'input input': '_change',
12
- 'change input': '_change'
13
- },
14
-
15
- focus: function(){
16
-
17
- // get elements
18
- this.$el = this.$field.find('.acf-range-wrap');
19
- this.$range = this.$el.children('input[type="range"]');
20
- this.$input = this.$el.children('input[type="number"]');
21
-
22
- },
23
-
24
- _change: function( e ){
25
-
26
- // get value from changed element
27
- var val = e.$el.val();
28
- var type = e.$el.attr('type');
29
-
30
-
31
- // allow for cleared value
32
- val = val || 0;
33
-
34
-
35
- // update sibling
36
- if( type === 'range' ) {
37
-
38
- this.$input.val( val );
39
-
40
- } else {
41
-
42
- this.$range.val( val );
43
-
44
- }
45
-
46
- }
47
-
48
- });
49
-
50
- })(jQuery);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/_build/js/acf-relationship.js DELETED
@@ -1,503 +0,0 @@
1
- (function($){
2
-
3
- acf.fields.relationship = acf.field.extend({
4
-
5
- type: 'relationship',
6
-
7
- $el: null,
8
- $input: null,
9
- $filters: null,
10
- $choices: null,
11
- $values: null,
12
-
13
- actions: {
14
- 'ready': 'initialize',
15
- 'append': 'initialize'
16
- },
17
-
18
- events: {
19
- 'keypress [data-filter]': 'submit_filter',
20
- 'change [data-filter]': 'change_filter',
21
- 'keyup [data-filter]': 'change_filter',
22
- 'click .choices .acf-rel-item': 'add_item',
23
- 'click [data-name="remove_item"]': 'remove_item'
24
- },
25
-
26
- focus: function(){
27
-
28
- // get elements
29
- this.$el = this.$field.find('.acf-relationship');
30
- this.$input = this.$el.children('input[type="hidden"]');
31
- this.$choices = this.$el.find('.choices'),
32
- this.$values = this.$el.find('.values');
33
-
34
- // get options
35
- this.o = acf.get_data( this.$el );
36
-
37
- },
38
-
39
- initialize: function(){
40
-
41
- // reference
42
- var self = this,
43
- $field = this.$field,
44
- $el = this.$el,
45
- $input = this.$input;
46
-
47
-
48
- // right sortable
49
- this.$values.children('.list').sortable({
50
- items: 'li',
51
- forceHelperSize: true,
52
- forcePlaceholderSize: true,
53
- scroll: true,
54
- update: function(){
55
-
56
- $input.trigger('change');
57
-
58
- }
59
- });
60
-
61
-
62
- this.$choices.children('.list').scrollTop(0).on('scroll', function(e){
63
-
64
- // bail early if no more results
65
- if( $el.hasClass('is-loading') || $el.hasClass('is-empty') ) {
66
-
67
- return;
68
-
69
- }
70
-
71
-
72
- // Scrolled to bottom
73
- if( Math.ceil( $(this).scrollTop() ) + $(this).innerHeight() >= $(this).get(0).scrollHeight ) {
74
-
75
- // get paged
76
- var paged = $el.data('paged') || 1;
77
-
78
-
79
- // update paged
80
- $el.data('paged', (paged+1) );
81
-
82
-
83
- // fetch
84
- self.set('$field', $field).fetch();
85
-
86
- }
87
-
88
- });
89
-
90
-
91
- /*
92
- // scroll event
93
- var maybe_fetch = function( e ){
94
- console.log('scroll');
95
- // remove listener
96
- $(window).off('scroll', maybe_fetch);
97
-
98
-
99
- // is field in view
100
- if( acf.is_in_view($field) ) {
101
-
102
- // fetch
103
- self.doFocus($field);
104
- self.fetch();
105
-
106
-
107
- // return
108
- return;
109
- }
110
-
111
-
112
- // add listener
113
- setTimeout(function(){
114
-
115
- $(window).on('scroll', maybe_fetch);
116
-
117
- }, 500);
118
-
119
- };
120
- */
121
-
122
-
123
- // fetch
124
- this.fetch();
125
-
126
- },
127
-
128
- /*
129
- show: function(){
130
-
131
- console.log('show field: %o', this.o.xhr);
132
-
133
- // bail ealry if already loaded
134
- if( typeof this.o.xhr !== 'undefined' ) {
135
-
136
- return;
137
-
138
- }
139
-
140
-
141
- // is field in view
142
- if( acf.is_in_view(this.$field) ) {
143
-
144
- // fetch
145
- this.fetch();
146
-
147
- }
148
-
149
- },
150
- */
151
-
152
- maybe_fetch: function(){
153
-
154
- // reference
155
- var self = this,
156
- $field = this.$field;
157
-
158
-
159
- // abort timeout
160
- if( this.o.timeout ) {
161
-
162
- clearTimeout( this.o.timeout );
163
-
164
- }
165
-
166
-
167
- // fetch
168
- var timeout = setTimeout(function(){
169
-
170
- self.doFocus($field);
171
- self.fetch();
172
-
173
- }, 300);
174
-
175
- this.$el.data('timeout', timeout);
176
-
177
- },
178
-
179
- fetch: function(){
180
-
181
- // reference
182
- var self = this,
183
- $field = this.$field;
184
-
185
-
186
- // add class
187
- this.$el.addClass('is-loading');
188
-
189
-
190
- // abort XHR if this field is already loading AJAX data
191
- if( this.o.xhr ) {
192
-
193
- this.o.xhr.abort();
194
- this.o.xhr = false;
195
-
196
- }
197
-
198
-
199
- // add to this.o
200
- this.o.action = 'acf/fields/relationship/query';
201
- this.o.field_key = $field.data('key');
202
- this.o.post_id = acf.get('post_id');
203
-
204
-
205
- // ready for ajax
206
- var ajax_data = acf.prepare_for_ajax( this.o );
207
-
208
-
209
- // clear html if is new query
210
- if( ajax_data.paged == 1 ) {
211
-
212
- this.$choices.children('.list').html('')
213
-
214
- }
215
-
216
-
217
- // add message
218
- this.$choices.find('ul:last').append('<p><i class="acf-loading"></i> ' + acf._e('relationship', 'loading') + '</p>');
219
-
220
-
221
- // get results
222
- var xhr = $.ajax({
223
- url: acf.get('ajaxurl'),
224
- dataType: 'json',
225
- type: 'post',
226
- data: ajax_data,
227
- success: function( json ){
228
-
229
- self.set('$field', $field).render( json );
230
-
231
- }
232
- });
233
-
234
-
235
- // update el data
236
- this.$el.data('xhr', xhr);
237
-
238
- },
239
-
240
- render: function( json ){
241
-
242
- // remove loading class
243
- this.$el.removeClass('is-loading is-empty');
244
-
245
-
246
- // remove p tag
247
- this.$choices.find('p').remove();
248
-
249
-
250
- // no results?
251
- if( !json || !json.results || !json.results.length ) {
252
-
253
- // add class
254
- this.$el.addClass('is-empty');
255
-
256
-
257
- // add message
258
- if( this.o.paged == 1 ) {
259
-
260
- this.$choices.children('.list').append('<p>' + acf._e('relationship', 'empty') + '</p>');
261
-
262
- }
263
-
264
-
265
- // return
266
- return;
267
-
268
- }
269
-
270
-
271
- // get new results
272
- var $new = $( this.walker(json.results) );
273
-
274
-
275
- // apply .disabled to left li's
276
- this.$values.find('.acf-rel-item').each(function(){
277
-
278
- $new.find('.acf-rel-item[data-id="' + $(this).data('id') + '"]').addClass('disabled');
279
-
280
- });
281
-
282
-
283
- // underline search match
284
- // consider removing due to bug where matched strings within HTML attributes caused incorrect results
285
- // Looks like Select2 v4 has moved away from highlighting results, so perhaps we should too
286
- /*
287
- if( this.o.s ) {
288
-
289
- // vars
290
- var s = this.o.s;
291
-
292
-
293
- // allow special characters to be used within regex
294
- s = acf.addslashes(s);
295
-
296
-
297
- // loop
298
- $new.find('.acf-rel-item').each(function(){
299
-
300
- // vars
301
- var find = $(this).text(),
302
- replace = find.replace( new RegExp('(' + s + ')', 'gi'), '<b>$1</b>');
303
-
304
- $(this).html( $(this).html().replace(find, replace) );
305
-
306
- });
307
-
308
- }
309
- */
310
-
311
-
312
- // append
313
- this.$choices.children('.list').append( $new );
314
-
315
-
316
- // merge together groups
317
- var label = '',
318
- $list = null;
319
-
320
- this.$choices.find('.acf-rel-label').each(function(){
321
-
322
- if( $(this).text() == label ) {
323
-
324
- $list.append( $(this).siblings('ul').html() );
325
-
326
- $(this).parent().remove();
327
-
328
- return;
329
- }
330
-
331
-
332
- // update vars
333
- label = $(this).text();
334
- $list = $(this).siblings('ul');
335
-
336
- });
337
-
338
-
339
- },
340
-
341
- walker: function( data ){
342
-
343
- // vars
344
- var s = '';
345
-
346
-
347
- // loop through data
348
- if( $.isArray(data) ) {
349
-
350
- for( var k in data ) {
351
-
352
- s += this.walker( data[ k ] );
353
-
354
- }
355
-
356
- } else if( $.isPlainObject(data) ) {
357
-
358
- // optgroup
359
- if( data.children !== undefined ) {
360
-
361
- s += '<li><span class="acf-rel-label">' + data.text + '</span><ul class="acf-bl">';
362
-
363
- s += this.walker( data.children );
364
-
365
- s += '</ul></li>';
366
-
367
- } else {
368
-
369
- s += '<li><span class="acf-rel-item" data-id="' + data.id + '">' + data.text + '</span></li>';
370
-
371
- }
372
-
373
- }
374
-
375
-
376
- // return
377
- return s;
378
-
379
- },
380
-
381
- submit_filter: function( e ){
382
-
383
- // don't submit form
384
- if( e.which == 13 ) {
385
-
386
- e.preventDefault();
387
-
388
- }
389
-
390
- },
391
-
392
- change_filter: function( e ){
393
-
394
- // vars
395
- var val = e.$el.val(),
396
- filter = e.$el.data('filter');
397
-
398
-
399
- // Bail early if filter has not changed
400
- if( this.$el.data(filter) == val ) {
401
-
402
- return;
403
-
404
- }
405
-
406
-
407
- // update attr
408
- this.$el.data(filter, val);
409
-
410
-
411
- // reset paged
412
- this.$el.data('paged', 1);
413
-
414
-
415
- // fetch
416
- if( e.$el.is('select') ) {
417
-
418
- this.fetch();
419
-
420
- // search must go through timeout
421
- } else {
422
-
423
- this.maybe_fetch();
424
-
425
- }
426
-
427
- },
428
-
429
- add_item: function( e ){
430
-
431
- // max posts
432
- if( this.o.max > 0 ) {
433
-
434
- if( this.$values.find('.acf-rel-item').length >= this.o.max ) {
435
-
436
- alert( acf._e('relationship', 'max').replace('{max}', this.o.max) );
437
-
438
- return;
439
-
440
- }
441
-
442
- }
443
-
444
-
445
- // can be added?
446
- if( e.$el.hasClass('disabled') ) {
447
-
448
- return false;
449
-
450
- }
451
-
452
-
453
- // disable
454
- e.$el.addClass('disabled');
455
-
456
-
457
- // template
458
- var html = [
459
- '<li>',
460
- '<input type="hidden" name="' + this.$input.attr('name') + '[]" value="' + e.$el.data('id') + '" />',
461
- '<span data-id="' + e.$el.data('id') + '" class="acf-rel-item">' + e.$el.html(),
462
- '<a href="#" class="acf-icon -minus small dark" data-name="remove_item"></a>',
463
- '</span>',
464
- '</li>'].join('');
465
-
466
-
467
- // add new li
468
- this.$values.children('.list').append( html )
469
-
470
-
471
- // trigger change on new_li
472
- this.$input.trigger('change');
473
-
474
-
475
- // validation
476
- acf.validation.remove_error( this.$field );
477
-
478
- },
479
-
480
- remove_item : function( e ){
481
-
482
- // vars
483
- var $span = e.$el.parent(),
484
- id = $span.data('id');
485
-
486
-
487
- // remove
488
- $span.parent('li').remove();
489
-
490
-
491
- // show
492
- this.$choices.find('.acf-rel-item[data-id="' + id + '"]').removeClass('disabled');
493
-
494
-
495
- // trigger change on new_li
496
- this.$input.trigger('change');
497
-
498
- }
499
-
500
- });
501
-
502
-
503
- })(jQuery);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/_build/js/acf-select.js DELETED
@@ -1,94 +0,0 @@
1
- (function($){
2
-
3
- // select
4
- acf.fields.select = acf.field.extend({
5
-
6
- type: 'select',
7
-
8
- $select: null,
9
-
10
- actions: {
11
- 'ready': 'render',
12
- 'append': 'render',
13
- 'remove': 'remove'
14
- },
15
-
16
- focus: function(){
17
-
18
- // focus on $select
19
- this.$select = this.$field.find('select');
20
-
21
-
22
- // bail early if no select field
23
- if( !this.$select.exists() ) return;
24
-
25
-
26
- // get options
27
- this.o = acf.get_data( this.$select );
28
-
29
-
30
- // customize o
31
- this.o = acf.parse_args(this.o, {
32
- 'ajax_action': 'acf/fields/'+this.type+'/query',
33
- 'key': this.$field.data('key')
34
- });
35
-
36
- },
37
-
38
- render: function(){
39
-
40
- // validate ui
41
- if( !this.$select.exists() || !this.o.ui ) {
42
-
43
- return false;
44
-
45
- }
46
-
47
-
48
- acf.select2.init( this.$select, this.o, this.$field );
49
-
50
- },
51
-
52
- remove: function(){
53
-
54
- // validate ui
55
- if( !this.$select.exists() || !this.o.ui ) {
56
-
57
- return false;
58
-
59
- }
60
-
61
-
62
- // remove select2
63
- acf.select2.destroy( this.$select );
64
-
65
- }
66
-
67
- });
68
-
69
-
70
- // user
71
- acf.fields.user = acf.fields.select.extend({
72
-
73
- type: 'user'
74
-
75
- });
76
-
77
-
78
- // post_object
79
- acf.fields.post_object = acf.fields.select.extend({
80
-
81
- type: 'post_object'
82
-
83
- });
84
-
85
-
86
- // page_link
87
- acf.fields.page_link = acf.fields.select.extend({
88
-
89
- type: 'page_link'
90
-
91
- });
92
-
93
-
94
- })(jQuery);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/_build/js/acf-select2.js DELETED
@@ -1,1441 +0,0 @@
1
- (function($){
2
-
3
- // globals
4
- var _select2,
5
- _select23,
6
- _select24;
7
-
8
-
9
- /*
10
- * acf.select2
11
- *
12
- * all logic to create select2 instances
13
- *
14
- * @type function
15
- * @date 16/12/2015
16
- * @since 5.3.2
17
- *
18
- * @param n/a
19
- * @return n/a
20
- */
21
-
22
- _select2 = acf.select2 = acf.model.extend({
23
-
24
- // vars
25
- version: 0,
26
- version3: null,
27
- version4: null,
28
-
29
-
30
- // actions
31
- actions: {
32
- 'ready 1': 'ready'
33
- },
34
-
35
-
36
- /*
37
- * ready
38
- *
39
- * This function will run on document ready
40
- *
41
- * @type function
42
- * @date 21/06/2016
43
- * @since 5.3.8
44
- *
45
- * @param n/a
46
- * @return n/a
47
- */
48
-
49
- ready: function(){
50
-
51
- // determine Select2 version
52
- this.version = this.get_version();
53
-
54
-
55
- // ready
56
- this.do_function('ready');
57
-
58
- },
59
-
60
-
61
- /*
62
- * get_version
63
- *
64
- * This function will return the Select2 version
65
- *
66
- * @type function
67
- * @date 29/4/17
68
- * @since 5.5.13
69
- *
70
- * @param n/a
71
- * @return n/a
72
- */
73
-
74
- get_version: function(){
75
-
76
- if( acf.maybe_get(window, 'Select2') ) return 3;
77
- if( acf.maybe_get(window, 'jQuery.fn.select2.amd') ) return 4;
78
- return 0;
79
-
80
- },
81
-
82
-
83
- /*
84
- * do_function
85
- *
86
- * This function will call the v3 or v4 equivelant function
87
- *
88
- * @type function
89
- * @date 28/4/17
90
- * @since 5.5.13
91
- *
92
- * @param name (string)
93
- * @param args (array)
94
- * @return (mixed)
95
- */
96
-
97
- do_function: function( name, args ){
98
-
99
- // defaults
100
- args = args || [];
101
-
102
-
103
- // vars
104
- var model = 'version'+this.version;
105
-
106
-
107
- // bail early if not set
108
- if( typeof this[model] === 'undefined' ||
109
- typeof this[model][name] === 'undefined' ) return false;
110
-
111
-
112
- // run
113
- return this[model][name].apply( this, args );
114
-
115
- },
116
-
117
-
118
- /*
119
- * get_data
120
- *
121
- * This function will look at a $select element and return an object choices
122
- *
123
- * @type function
124
- * @date 24/12/2015
125
- * @since 5.3.2
126
- *
127
- * @param $select (jQuery)
128
- * @return (array)
129
- */
130
-
131
- get_data: function( $select, data ){
132
-
133
- // reference
134
- var self = this;
135
-
136
-
137
- // defaults
138
- data = data || [];
139
-
140
-
141
- // loop over children
142
- $select.children().each(function(){
143
-
144
- // vars
145
- var $el = $(this);
146
-
147
-
148
- // optgroup
149
- if( $el.is('optgroup') ) {
150
-
151
- data.push({
152
- 'text': $el.attr('label'),
153
- 'children': self.get_data( $el )
154
- });
155
-
156
- // option
157
- } else {
158
-
159
- data.push({
160
- 'id': $el.attr('value'),
161
- 'text': $el.text()
162
- });
163
-
164
- }
165
-
166
- });
167
-
168
-
169
- // return
170
- return data;
171
-
172
- },
173
-
174
-
175
- /*
176
- * decode_data
177
- *
178
- * This function will take an array of choices and decode the text
179
- * Changes '&amp;' to '&' which fixes a bug (in Select2 v3 )when searching for '&'
180
- *
181
- * @type function
182
- * @date 24/12/2015
183
- * @since 5.3.2
184
- *
185
- * @param $select (jQuery)
186
- * @return (array)
187
- */
188
-
189
- decode_data: function( data ) {
190
-
191
- // bail ealry if no data
192
- if( !data ) return [];
193
-
194
-
195
- //loop
196
- $.each(data, function(k, v){
197
-
198
- // text
199
- data[ k ].text = acf.decode( v.text );
200
-
201
-
202
- // children
203
- if( typeof v.children !== 'undefined' ) {
204
-
205
- data[ k ].children = _select2.decode_data(v.children);
206
-
207
- }
208
-
209
- });
210
-
211
-
212
- // return
213
- return data;
214
-
215
- },
216
-
217
-
218
- /*
219
- * count_data
220
- *
221
- * This function will take an array of choices and return the count
222
- *
223
- * @type function
224
- * @date 24/12/2015
225
- * @since 5.3.2
226
- *
227
- * @param data (array)
228
- * @return (int)
229
- */
230
-
231
- count_data: function( data ) {
232
-
233
- // vars
234
- var i = 0;
235
-
236
-
237
- // bail ealry if no data
238
- if( !data ) return i;
239
-
240
-
241
- //loop
242
- $.each(data, function(k, v){
243
-
244
- // increase
245
- i++;
246
-
247
-
248
- // children
249
- if( typeof v.children !== 'undefined' ) {
250
-
251
- i += v.children.length;
252
-
253
- }
254
-
255
- });
256
-
257
-
258
- // return
259
- return i;
260
-
261
- },
262
-
263
-
264
- /*
265
- * get_ajax_data
266
- *
267
- * This function will return an array of data to send via AJAX
268
- *
269
- * @type function
270
- * @date 19/07/2016
271
- * @since 5.4.0
272
- *
273
- * @param $post_id (int)
274
- * @return $post_id (int)
275
- */
276
-
277
- get_ajax_data: function( args, params, $el, $field ){
278
-
279
- // vars
280
- var data = acf.prepare_for_ajax({
281
- action: args.ajax_action,
282
- field_key: args.key,
283
- s: params.term || '',
284
- paged: params.page || 1
285
- });
286
-
287
-
288
- // filter
289
- data = acf.apply_filters( 'select2_ajax_data', data, args, $el, $field );
290
-
291
-
292
- // return
293
- return data;
294
-
295
- },
296
-
297
-
298
- /*
299
- * get_ajax_results
300
- *
301
- * This function will return a valid AJAX response
302
- *
303
- * @type function
304
- * @date 19/07/2016
305
- * @since 5.4.0
306
- *
307
- * @param $post_id (int)
308
- * @return $post_id (int)
309
- */
310
-
311
- get_ajax_results: function( data, params ){
312
-
313
- // vars
314
- var valid = {
315
- results: []
316
- };
317
-
318
-
319
- // bail early if no data
320
- if( !data ) {
321
-
322
- data = valid;
323
-
324
- }
325
-
326
-
327
- // allow for an array of choices
328
- if( typeof data.results == 'undefined' ) {
329
-
330
- valid.results = data;
331
-
332
- data = valid;
333
-
334
- }
335
-
336
-
337
- // decode
338
- data.results = this.decode_data(data.results);
339
-
340
-
341
- // filter
342
- data = acf.apply_filters( 'select2_ajax_results', data, params );
343
-
344
-
345
- // return
346
- return data;
347
-
348
- },
349
-
350
-
351
- /*
352
- * get_value
353
- *
354
- * This function will return the selected options in a Select2 format
355
- *
356
- * @type function
357
- * @date 5/01/2016
358
- * @since 5.3.2
359
- *
360
- * @param $post_id (int)
361
- * @return $post_id (int)
362
- */
363
-
364
- get_value: function( $select ){
365
-
366
- // vars
367
- var val = [],
368
- $selected = $select.find('option:selected');
369
-
370
-
371
- // bail early if no selected
372
- if( !$selected.exists() ) return val;
373
-
374
-
375
- // sort
376
- $selected = $selected.sort(function(a, b) {
377
-
378
- return +a.getAttribute('data-i') - +b.getAttribute('data-i');
379
-
380
- });
381
-
382
-
383
- // loop
384
- $selected.each(function(){
385
-
386
- // vars
387
- var $el = $(this);
388
-
389
-
390
- // append
391
- val.push({
392
- 'id': $el.attr('value'),
393
- 'text': $el.text(),
394
- '$el': $el
395
- });
396
-
397
- });
398
-
399
-
400
- // return
401
- return val;
402
-
403
- },
404
-
405
-
406
- /*
407
- * get_input_value
408
- *
409
- * This function will return an array of values as per the hidden input
410
- *
411
- * @type function
412
- * @date 29/4/17
413
- * @since 5.5.13
414
- *
415
- * @param $input (jQuery)
416
- * @return (array)
417
- */
418
-
419
- get_input_value: function( $input ) {
420
-
421
- return $input.val().split('||');
422
-
423
- },
424
-
425
-
426
- /*
427
- * sync_input_value
428
- *
429
- * This function will save the current selected values into the hidden input
430
- *
431
- * @type function
432
- * @date 29/4/17
433
- * @since 5.5.13
434
- *
435
- * @param $input (jQuery)
436
- * @param $select (jQuery)
437
- * @return n/a
438
- */
439
-
440
- sync_input_value: function( $input, $select ) {
441
-
442
- $input.val( $select.val().join('||') );
443
-
444
- },
445
-
446
-
447
- /*
448
- * add_option
449
- *
450
- * This function will add an <option> element to a select (if it doesn't already exist)
451
- *
452
- * @type function
453
- * @date 29/4/17
454
- * @since 5.5.13
455
- *
456
- * @param $select (jQuery)
457
- * @param value (string)
458
- * @param label (string)
459
- * @return n/a
460
- */
461
-
462
- add_option: function( $select, value, label ){
463
-
464
- if( !$select.find('option[value="'+value+'"]').length ) {
465
-
466
- $select.append('<option value="'+value+'">'+label+'</option>');
467
-
468
- }
469
-
470
- },
471
-
472
-
473
- /*
474
- * select_option
475
- *
476
- * This function will select an option
477
- *
478
- * @type function
479
- * @date 29/4/17
480
- * @since 5.5.13
481
- *
482
- * @param $select (jQuery)
483
- * @param value (string)
484
- * @return n/a
485
- */
486
-
487
- select_option: function( $select, value ){
488
-
489
- $select.find('option[value="'+value+'"]').prop('selected', true);
490
- $select.trigger('change');
491
-
492
- },
493
-
494
-
495
- /*
496
- * unselect_option
497
- *
498
- * This function will unselect an option
499
- *
500
- * @type function
501
- * @date 29/4/17
502
- * @since 5.5.13
503
- *
504
- * @param $select (jQuery)
505
- * @param value (string)
506
- * @return n/a
507
- */
508
-
509
- unselect_option: function( $select, value ){
510
-
511
- $select.find('option[value="'+value+'"]').prop('selected', false);
512
- $select.trigger('change');
513
-
514
- },
515
-
516
-
517
- /*
518
- * Select2 v3 or v4 functions
519
- *
520
- * description
521
- *
522
- * @type function
523
- * @date 29/4/17
524
- * @since 5.5.10
525
- *
526
- * @param $post_id (int)
527
- * @return $post_id (int)
528
- */
529
-
530
- init: function( $select, args, $field ){
531
-
532
- this.do_function( 'init', arguments );
533
-
534
- },
535
-
536
- destroy: function( $select ){
537
-
538
- this.do_function( 'destroy', arguments );
539
-
540
- },
541
-
542
- add_value: function( $select, value, label ){
543
-
544
- this.do_function( 'add_value', arguments );
545
-
546
- },
547
-
548
- remove_value: function( $select, value ){
549
-
550
- this.do_function( 'remove_value', arguments );
551
-
552
- }
553
-
554
- });
555
-
556
-
557
- /*
558
- * Select2 v3
559
- *
560
- * This model contains the Select2 v3 functions
561
- *
562
- * @type function
563
- * @date 28/4/17
564
- * @since 5.5.10
565
- *
566
- * @param n/a
567
- * @return n/a
568
- */
569
-
570
- _select23 = _select2.version3 = {
571
-
572
- ready: function(){
573
-
574
- // vars
575
- var locale = acf.get('locale'),
576
- rtl = acf.get('rtl')
577
- l10n = acf._e('select');
578
-
579
-
580
- // bail ealry if no l10n
581
- if( !l10n ) return;
582
-
583
-
584
- // vars
585
- var l10n_functions = {
586
- formatMatches: function( matches ) {
587
-
588
- if ( 1 === matches ) {
589
- return l10n.matches_1;
590
- }
591
-
592
- return l10n.matches_n.replace('%d', matches);
593
- },
594
- formatNoMatches: function() {
595
- return l10n.matches_0;
596
- },
597
- formatAjaxError: function() {
598
- return l10n.load_fail;
599
- },
600
- formatInputTooShort: function( input, min ) {
601
- var number = min - input.length;
602
-
603
- if ( 1 === number ) {
604
- return l10n.input_too_short_1;
605
- }
606
-
607
- return l10n.input_too_short_n.replace( '%d', number );
608
- },
609
- formatInputTooLong: function( input, max ) {
610
- var number = input.length - max;
611
-
612
- if ( 1 === number ) {
613
- return l10n.input_too_long_1;
614
- }
615
-
616
- return l10n.input_too_long_n.replace( '%d', number );
617
- },
618
- formatSelectionTooBig: function( limit ) {
619
- if ( 1 === limit ) {
620
- return l10n.selection_too_long_1;
621
- }
622
-
623
- return l10n.selection_too_long_n.replace( '%d', limit );
624
- },
625
- formatLoadMore: function() {
626
- return l10n.load_more;
627
- },
628
- formatSearching: function() {
629
- return l10n.searching;
630
- }
631
- };
632
-
633
-
634
- // ensure locales exists
635
- // older versions of Select2 did not have a locale storage
636
- $.fn.select2.locales = acf.maybe_get(window, 'jQuery.fn.select2.locales', {});
637
-
638
-
639
- // append
640
- $.fn.select2.locales[ locale ] = l10n_functions;
641
- $.extend($.fn.select2.defaults, l10n_functions);
642
-
643
- },
644
-
645
- set_data: function( $select, data ){
646
-
647
- // v3
648
- if( this.version == 3 ) {
649
-
650
- $select = $select.siblings('input');
651
-
652
- }
653
-
654
-
655
- // set data
656
- $select.select2('data', data);
657
-
658
- },
659
-
660
- append_data: function( $select, data ){
661
-
662
- // v3
663
- if( this.version == 3 ) {
664
-
665
- $select = $select.siblings('input');
666
-
667
- }
668
-
669
-
670
-
671
- // vars
672
- var current = $select.select2('data') || [];
673
-
674
-
675
- // append
676
- current.push( data );
677
-
678
-
679
- // set data
680
- $select.select2('data', current);
681
-
682
- },
683
-
684
-
685
- /*
686
- * init_v3
687
- *
688
- * This function will create a new Select2 for v3
689
- *
690
- * @type function
691
- * @date 24/12/2015
692
- * @since 5.3.2
693
- *
694
- * @param $select (jQuery)
695
- * @return args (object)
696
- */
697
-
698
- init: function( $select, args, $field ){
699
-
700
- // defaults
701
- args = args || {};
702
- $field = $field || null;
703
-
704
-
705
- // merge
706
- args = $.extend({
707
- allow_null: false,
708
- placeholder: '',
709
- multiple: false,
710
- ajax: false,
711
- ajax_action: ''
712
- }, args);
713
-
714
-
715
- // vars
716
- var $input = $select.siblings('input');
717
-
718
-
719
- // bail early if no input
720
- if( !$input.exists() ) return;
721
-
722
-
723
- // select2 args
724
- var select2_args = {
725
- width: '100%',
726
- containerCssClass: '-acf',
727
- allowClear: args.allow_null,
728
- placeholder: args.placeholder,
729
- multiple: args.multiple,
730
- separator: '||',
731
- data: [],
732
- escapeMarkup: function( m ){ return m; },
733
- formatResult: function( result, container, query, escapeMarkup ){
734
-
735
- // run default formatResult
736
- var text = $.fn.select2.defaults.formatResult( result, container, query, escapeMarkup );
737
-
738
-
739
- // append description
740
- if( result.description ) {
741
-
742
- text += ' <span class="select2-result-description">' + result.description + '</span>';
743
-
744
- }
745
-
746
-
747
- // return
748
- return text;
749
-
750
- }
751
- };
752
-
753
-
754
- // value
755
- var value = this.get_value( $select );
756
-
757
-
758
- // multiple
759
- if( args.multiple ) {
760
-
761
- // vars
762
- var name = $select.attr('name');
763
-
764
-
765
- // add hidden input to each multiple selection
766
- select2_args.formatSelection = function( object, $div ){
767
-
768
- // vars
769
- var html = '<input type="hidden" class="select2-search-choice-hidden" name="' + name + '" value="' + object.id + '"' + ($input.prop('disabled') ? 'disabled="disabled"' : '') + ' />';
770
-
771
-
772
- // append input
773
- $div.parent().append(html);
774
-
775
-
776
- // return
777
- return object.text;
778
-
779
- }
780
-
781
- } else {
782
-
783
- // change array to single object
784
- value = acf.maybe_get(value, 0, false);
785
-
786
-
787
- // if no allow_null, this single select must contain a selection
788
- if( !args.allow_null && value ) {
789
-
790
- $input.val( value.id );
791
-
792
- }
793
- }
794
-
795
-
796
- // remove the blank option as we have a clear all button!
797
- if( args.allow_null ) {
798
-
799
- $select.find('option[value=""]').remove();
800
-
801
- }
802
-
803
-
804
- // get data
805
- select2_args.data = this.get_data( $select );
806
-
807
-
808
- // initial selection
809
- select2_args.initSelection = function( element, callback ) {
810
-
811
- callback( value );
812
-
813
- };
814
-
815
-
816
- // ajax
817
- if( args.ajax ) {
818
-
819
- select2_args.ajax = {
820
- url: acf.get('ajaxurl'),
821
- dataType: 'json',
822
- type: 'post',
823
- cache: false,
824
- quietMillis: 250,
825
- data: function( term, page ) {
826
-
827
- // vars
828
- var params = { 'term': term, 'page': page };
829
-
830
-
831
- // return
832
- return _select2.get_ajax_data(args, params, $input, $field);
833
-
834
- },
835
- results: function( data, page ){
836
-
837
- // vars
838
- var params = { 'page': page };
839
-
840
-
841
- // merge together groups
842
- setTimeout(function(){
843
-
844
- _select23.merge_results();
845
-
846
- }, 1);
847
-
848
-
849
- // return
850
- return _select2.get_ajax_results(data, params);
851
-
852
- }
853
- };
854
-
855
- }
856
-
857
-
858
- // attachment z-index fix
859
- select2_args.dropdownCss = {
860
- 'z-index' : '999999999'
861
- };
862
-
863
-
864
- // append args
865
- select2_args.acf = args;
866
-
867
-
868
- // filter for 3rd party customization
869
- select2_args = acf.apply_filters( 'select2_args', select2_args, $select, args, $field );
870
-
871
-
872
- // add select2
873
- $input.select2( select2_args );
874
-
875
-
876
- // vars
877
- var $container = $input.select2('container');
878
-
879
-
880
- // reorder DOM
881
- // - this order is very important so don't change it
882
- // - $select goes first so the input can override it. Fixes issue where conditional logic will enable the select
883
- // - $input goes second to reset the input data
884
- // - container goes last to allow multiple hidden inputs to override $input
885
- $container.before( $select );
886
- $container.before( $input );
887
-
888
-
889
- // multiple
890
- if( args.multiple ) {
891
-
892
- // sortable
893
- $container.find('ul.select2-choices').sortable({
894
- start: function() {
895
- $input.select2("onSortStart");
896
- },
897
- stop: function() {
898
- $input.select2("onSortEnd");
899
- }
900
- });
901
-
902
- }
903
-
904
-
905
- // disbale select
906
- $select.prop('disabled', true).addClass('acf-disabled acf-hidden');
907
-
908
-
909
- // update select value
910
- // this fixes a bug where select2 appears blank after duplicating a post_object field (field settings).
911
- // the $select is disabled, so setting the value won't cause any issues (this is what select2 v4 does anyway).
912
- $input.on('change', function(e) {
913
-
914
- // add new data
915
- if( e.added ) {
916
-
917
- // add item
918
- _select2.add_option($select, e.added.id, e.added.text);
919
-
920
- }
921
-
922
-
923
- // select
924
- _select2.select_option($select, e.val);
925
-
926
- });
927
-
928
-
929
- // action for 3rd party customization
930
- acf.do_action('select2_init', $input, select2_args, args, $field);
931
-
932
- },
933
-
934
-
935
- /*
936
- * merge_results_v3
937
- *
938
- * description
939
- *
940
- * @type function
941
- * @date 20/07/2016
942
- * @since 5.4.0
943
- *
944
- * @param $post_id (int)
945
- * @return $post_id (int)
946
- */
947
-
948
- merge_results: function(){
949
-
950
- // vars
951
- var label = '',
952
- $list = null;
953
-
954
-
955
- // loop
956
- $('#select2-drop .select2-result-with-children').each(function(){
957
-
958
- // vars
959
- var $label = $(this).children('.select2-result-label'),
960
- $ul = $(this).children('.select2-result-sub');
961
-
962
-
963
- // append group to previous
964
- if( $label.text() == label ) {
965
-
966
- $list.append( $ul.children() );
967
-
968
- $(this).remove();
969
-
970
- return;
971
-
972
- }
973
-
974
-
975
- // update vars
976
- label = $label.text();
977
- $list = $ul;
978
-
979
- });
980
-
981
- },
982
-
983
-
984
- /*
985
- * destroy
986
- *
987
- * This function will destroy a Select2
988
- *
989
- * @type function
990
- * @date 24/12/2015
991
- * @since 5.3.2
992
- *
993
- * @param $post_id (int)
994
- * @return $post_id (int)
995
- */
996
-
997
- destroy: function( $select ){
998
-
999
- // vars
1000
- var $input = $select.siblings('input');
1001
-
1002
-
1003
- // destroy via api
1004
- if( $input.data('select2') ) {
1005
- $input.select2('destroy');
1006
- }
1007
-
1008
-
1009
- // destory via HTML (duplicating HTML deos not contain data)
1010
- $select.siblings('.select2-container').remove();
1011
-
1012
-
1013
- // enable select
1014
- $select.prop('disabled', false).removeClass('acf-disabled acf-hidden');
1015
- $input.attr('style', ''); // fixes bug causing hidden select2 element
1016
-
1017
- },
1018
-
1019
- add_value: function( $select, value, label ){
1020
-
1021
- // add and select item
1022
- _select2.add_option($select, value, label);
1023
- _select2.select_option($select, value);
1024
-
1025
-
1026
- // vars
1027
- var $input = $select.siblings('input');
1028
-
1029
-
1030
- // new item
1031
- var item = {
1032
- 'id': value,
1033
- 'text': label
1034
- };
1035
-
1036
-
1037
- // single
1038
- if( !$select.data('multiple') ) {
1039
-
1040
- return $input.select2('data', item);
1041
-
1042
- }
1043
-
1044
-
1045
- // get existing value
1046
- var values = $input.select2('data') || [];
1047
-
1048
-
1049
- // append
1050
- values.push(item);
1051
-
1052
-
1053
- // set data
1054
- return $input.select2('data', values);
1055
-
1056
- },
1057
-
1058
- remove_value: function( $select, value ){
1059
-
1060
- // unselect option
1061
- _select2.unselect_option($select, value);
1062
-
1063
-
1064
- // vars
1065
- var $input = $select.siblings('input'),
1066
- current = $input.select2('data');
1067
-
1068
-
1069
- // single
1070
- if( !$select.data('multiple') ) {
1071
-
1072
- if( current && current.id == value ) {
1073
-
1074
- $input.select2('data', null);
1075
-
1076
- }
1077
-
1078
- // multiple
1079
- } else {
1080
-
1081
- // filter
1082
- current = $.grep(current, function( item ) {
1083
- return item.id != value;
1084
- });
1085
-
1086
-
1087
- // set data
1088
- $input.select2('data', current);
1089
-
1090
- }
1091
-
1092
- }
1093
-
1094
-
1095
- };
1096
-
1097
-
1098
- /*
1099
- * Select2 v4
1100
- *
1101
- * This model contains the Select2 v4 functions
1102
- *
1103
- * @type function
1104
- * @date 28/4/17
1105
- * @since 5.5.10
1106
- *
1107
- * @param n/a
1108
- * @return n/a
1109
- */
1110
-
1111
- _select24 = _select2.version4 = {
1112
-
1113
- init: function( $select, args, $field ){
1114
-
1115
- // defaults
1116
- args = args || {};
1117
- $field = $field || null;
1118
-
1119
-
1120
- // merge
1121
- args = $.extend({
1122
- allow_null: false,
1123
- placeholder: '',
1124
- multiple: false,
1125
- ajax: false,
1126
- ajax_action: ''
1127
- }, args);
1128
-
1129
-
1130
- // vars
1131
- var $input = $select.siblings('input');
1132
-
1133
-
1134
- // bail early if no input
1135
- if( !$input.exists() ) return;
1136
-
1137
-
1138
- // select2 args
1139
- var select2_args = {
1140
- width: '100%',
1141
- allowClear: args.allow_null,
1142
- placeholder: args.placeholder,
1143
- multiple: args.multiple,
1144
- separator: '||',
1145
- data: [],
1146
- escapeMarkup: function( m ){ return m; }
1147
- };
1148
-
1149
-
1150
- // value
1151
- var value = this.get_value( $select );
1152
-
1153
-
1154
- // multiple
1155
- if( args.multiple ) {
1156
-
1157
- // reorder opts
1158
- $.each(value, function( k, item ){
1159
-
1160
- // detach and re-append to end
1161
- item.$el.detach().appendTo( $select );
1162
-
1163
- });
1164
-
1165
- } else {
1166
-
1167
- // change array to single object
1168
- value = acf.maybe_get(value, 0, '');
1169
-
1170
- }
1171
-
1172
-
1173
- /*
1174
- // removed - Select2 does not show this value by default!
1175
- // remove the blank option as we have a clear all button!
1176
- if( args.allow_null ) {
1177
-
1178
- $select.find('option[value=""]').remove();
1179
-
1180
- }
1181
- */
1182
-
1183
-
1184
- // remove conflicting atts
1185
- if( !args.ajax ) {
1186
-
1187
- $select.removeData('ajax');
1188
- $select.removeAttr('data-ajax');
1189
-
1190
- } else {
1191
-
1192
- select2_args.ajax = {
1193
- url: acf.get('ajaxurl'),
1194
- delay: 250,
1195
- dataType: 'json',
1196
- type: 'post',
1197
- cache: false,
1198
- data: function( params ) {
1199
-
1200
- // return
1201
- return _select2.get_ajax_data(args, params, $select, $field);
1202
-
1203
- },
1204
- processResults: function( data, params ){
1205
-
1206
- // vars
1207
- var results = _select2.get_ajax_results(data, params);
1208
-
1209
-
1210
- // change to more
1211
- if( results.more ) {
1212
-
1213
- results.pagination = { more: true };
1214
-
1215
- }
1216
-
1217
-
1218
- // merge together groups
1219
- setTimeout(function(){
1220
-
1221
- _select24.merge_results();
1222
-
1223
- }, 1);
1224
-
1225
-
1226
- // return
1227
- return results
1228
-
1229
- }
1230
-
1231
- };
1232
-
1233
- }
1234
-
1235
-
1236
- // filter for 3rd party customization
1237
- select2_args = acf.apply_filters( 'select2_args', select2_args, $select, args, $field );
1238
-
1239
-
1240
- // add select2
1241
- $select.select2( select2_args );
1242
-
1243
-
1244
- // get container (Select2 v4 deos not return this from constructor)
1245
- var $container = $select.next('.select2-container');
1246
-
1247
-
1248
- // reorder DOM
1249
- // - no need to reorder, the select field is needed to $_POST values
1250
-
1251
-
1252
- // multiple
1253
- if( args.multiple ) {
1254
-
1255
- // vars
1256
- var $ul = $container.find('ul');
1257
-
1258
-
1259
- // sortable
1260
- $ul.sortable({
1261
-
1262
- stop: function( e ) {
1263
-
1264
- $ul.find('.select2-selection__choice').each(function() {
1265
-
1266
- // vars
1267
- var $option = $( $(this).data('data').element );
1268
-
1269
-
1270
- // detach and re-append to end
1271
- $option.detach().appendTo( $select );
1272
-
1273
-
1274
- // trigger change on input (JS error if trigger on select)
1275
- $input.trigger('change');
1276
- // update input
1277
- //_select2.sync_input_value( $input, $select );
1278
-
1279
- });
1280
-
1281
- }
1282
-
1283
- });
1284
-
1285
-
1286
- // on select, move to end
1287
- $select.on('select2:select', function( e ){
1288
-
1289
- // vars
1290
- var $option = $(e.params.data.element);
1291
-
1292
-
1293
- // detach and re-append to end
1294
- $option.detach().appendTo( $select );
1295
-
1296
-
1297
- // trigger change
1298
- //$select.trigger('change');
1299
-
1300
- });
1301
-
1302
- }
1303
-
1304
-
1305
- /*
1306
- // update input
1307
- $select.on('select2:select', function( e ){
1308
-
1309
- // update input
1310
- _select2.sync_input_value( $input, $select );
1311
-
1312
- });
1313
-
1314
- $select.on('select2:unselect', function( e ){
1315
-
1316
- // update input
1317
- _select2.sync_input_value( $input, $select );
1318
-
1319
- });
1320
- */
1321
-
1322
-
1323
- // clear value (allows null to be saved)
1324
- $input.val('');
1325
-
1326
-
1327
- // add class
1328
- $container.addClass('-acf');
1329
-
1330
-
1331
- // action for 3rd party customization
1332
- acf.do_action('select2_init', $select, select2_args, args, $field);
1333
-
1334
- },
1335
-
1336
-
1337
- /*
1338
- * merge_results_v4
1339
- *
1340
- * description
1341
- *
1342
- * @type function
1343
- * @date 20/07/2016
1344
- * @since 5.4.0
1345
- *
1346
- * @param $post_id (int)
1347
- * @return $post_id (int)
1348
- */
1349
-
1350
- merge_results: function(){
1351
-
1352
- // vars
1353
- var $prev_options = null,
1354
- $prev_group = null;
1355
-
1356
-
1357
- // loop
1358
- $('.select2-results__option[role="group"]').each(function(){
1359
-
1360
- // vars
1361
- var $options = $(this).children('ul'),
1362
- $group = $(this).children('strong');
1363
-
1364
-
1365
- // compare to previous
1366
- if( $prev_group !== null && $group.text() == $prev_group.text() ) {
1367
-
1368
- $prev_options.append( $options.children() );
1369
-
1370
- $(this).remove();
1371
-
1372
- return;
1373
-
1374
- }
1375
-
1376
-
1377
- // update vars
1378
- $prev_options = $options;
1379
- $prev_group = $group;
1380
-
1381
- });
1382
-
1383
- },
1384
-
1385
- add_value: function( $select, value, label ){
1386
-
1387
- // add and select item
1388
- _select2.add_option($select, value, label);
1389
- _select2.select_option($select, value);
1390
-
1391
- },
1392
-
1393
- remove_value: function( $select, value ){
1394
-
1395
- // unselect
1396
- _select2.unselect_option($select, value);
1397
-
1398
- },
1399
-
1400
- destroy: function( $select ){
1401
-
1402
- // destroy via api
1403
- if( $select.data('select2') ) {
1404
- $select.select2('destroy');
1405
- }
1406
-
1407
-
1408
- // destory via HTML (duplicating HTML deos not contain data)
1409
- $select.siblings('.select2-container').remove();
1410
-
1411
- }
1412
-
1413
- };
1414
-
1415
-
1416
- /*
1417
- * depreciated
1418
- *
1419
- * These functions have moved since v5.3.3
1420
- *
1421
- * @type function
1422
- * @date 11/12/2015
1423
- * @since 5.3.2
1424
- *
1425
- * @param n/a
1426
- * @return n/a
1427
- */
1428
-
1429
- acf.add_select2 = function( $select, args ) {
1430
-
1431
- _select2.init( $select, args );
1432
-
1433
- }
1434
-
1435
- acf.remove_select2 = function( $select ) {
1436
-
1437
- _select2.destroy( $select );
1438
-
1439
- }
1440
-
1441
- })(jQuery);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/_build/js/acf-tab.js DELETED
@@ -1,439 +0,0 @@
1
- (function($){
2
-
3
- acf.fields.tab = acf.field.extend({
4
-
5
- type: 'tab',
6
- $el: null,
7
- $wrap: null,
8
-
9
- actions: {
10
- 'prepare': 'initialize',
11
- 'append': 'initialize',
12
- 'hide': 'hide',
13
- 'show': 'show'
14
- },
15
-
16
- focus: function(){
17
-
18
- // get elements
19
- this.$el = this.$field.find('.acf-tab');
20
-
21
-
22
- // get options
23
- this.o = this.$el.data();
24
- this.o.key = this.$field.data('key');
25
- this.o.text = this.$el.html();
26
-
27
- },
28
-
29
- initialize: function(){
30
-
31
- // bail early if is td
32
- if( this.$field.is('td') ) return;
33
-
34
-
35
- // add tab
36
- tab_manager.add_tab( this.$field, this.o );
37
-
38
- },
39
-
40
- hide: function( $field, context ){
41
-
42
- // bail early if not conditional logic
43
- if( context != 'conditional_logic' ) return;
44
-
45
-
46
- // vars
47
- var key = $field.data('key'),
48
- $group = $field.prevAll('.acf-tab-wrap'),
49
- $a = $group.find('a[data-key="' + key + '"]'),
50
- $li = $a.parent();
51
-
52
-
53
- // bail early if $group does not exist (clone field)
54
- if( !$group.exists() ) return;
55
-
56
-
57
- // hide li
58
- $li.addClass('hidden-by-conditional-logic');
59
-
60
-
61
- // set timout to allow proceeding fields to hide first
62
- // without this, the tab field will hide all fields, regarless of if that field has it's own conditional logic rules
63
- setTimeout(function(){
64
-
65
- // if this tab field was hidden by conditional_logic, disable it's children to prevent validation
66
- $field.nextUntil('.acf-field-tab', '.acf-field').each(function(){
67
-
68
- // bail ealry if already hidden
69
- if( $(this).hasClass('hidden-by-conditional-logic') ) return;
70
-
71
-
72
- // hide field
73
- acf.conditional_logic.hide_field( $(this) );
74
-
75
-
76
- // add parent reference
77
- $(this).addClass('-hbcl-' + key);
78
-
79
- });
80
-
81
-
82
- // select other tab if active
83
- if( $li.hasClass('active') ) {
84
-
85
- $group.find('li:not(.hidden-by-conditional-logic):first a').trigger('click');
86
-
87
- }
88
-
89
- }, 0);
90
-
91
- },
92
-
93
- show: function( $field, context ){
94
-
95
- // bail early if not conditional logic
96
- if( context != 'conditional_logic' ) return;
97
-
98
- // vars
99
- var key = $field.data('key'),
100
- $group = $field.prevAll('.acf-tab-wrap'),
101
- $a = $group.find('a[data-key="' + key + '"]'),
102
- $li = $a.parent();
103
-
104
-
105
- // bail early if $group does not exist (clone field)
106
- if( !$group.exists() ) return;
107
-
108
-
109
- // show li
110
- $li.removeClass('hidden-by-conditional-logic');
111
-
112
-
113
- // set timout to allow proceeding fields to hide first
114
- // without this, the tab field will hide all fields, regarless of if that field has it's own conditional logic rules
115
- setTimeout(function(){
116
-
117
- // if this tab field was shown by conditional_logic, enable it's children to allow validation
118
- $field.siblings('.acf-field.-hbcl-' + key).each(function(){
119
-
120
- // show field
121
- acf.conditional_logic.show_field( $(this) );
122
-
123
-
124
- // remove parent reference
125
- $(this).removeClass('-hbcl-' + key);
126
-
127
- });
128
-
129
-
130
- // select tab if no other active
131
- var $active = $li.siblings('.active');
132
- if( !$active.exists() || $active.hasClass('hidden-by-conditional-logic') ) {
133
-
134
- $a.trigger('click');
135
-
136
- }
137
-
138
- }, 0);
139
-
140
- }
141
-
142
- });
143
-
144
-
145
- /*
146
- * tab_manager
147
- *
148
- * This model will handle adding tabs and groups
149
- *
150
- * @type function
151
- * @date 25/11/2015
152
- * @since 5.3.2
153
- *
154
- * @param $post_id (int)
155
- * @return $post_id (int)
156
- */
157
-
158
- var tab_manager = acf.model.extend({
159
-
160
- actions: {
161
- 'prepare 15': 'render',
162
- 'append 15': 'render',
163
- 'refresh 15': 'render'
164
- },
165
-
166
- events: {
167
- 'click .acf-tab-button': '_click'
168
- },
169
-
170
-
171
- render: function( $el ){
172
-
173
- // find visible tab wraps
174
- $('.acf-tab-wrap', $el).each(function(){
175
-
176
- // vars
177
- var $group = $(this),
178
- $wrap = $group.parent();
179
-
180
-
181
- // trigger click
182
- if( !$group.find('li.active').exists() ) {
183
-
184
- $group.find('li:not(.hidden-by-conditional-logic):first a').trigger('click');
185
-
186
- }
187
-
188
-
189
- if( $wrap.hasClass('-sidebar') ) {
190
-
191
- // vars
192
- var attribute = $wrap.is('td') ? 'height' : 'min-height';
193
-
194
-
195
- // find height (minus 1 for border-bottom)
196
- var height = $group.position().top + $group.children('ul').outerHeight(true) - 1;
197
-
198
-
199
- // add css
200
- $wrap.css(attribute, height);
201
-
202
- }
203
-
204
- });
205
-
206
- },
207
-
208
- add_group: function( $field, settings ){
209
-
210
- // vars
211
- var $wrap = $field.parent(),
212
- html = '';
213
-
214
-
215
- // add sidebar to wrap
216
- if( $wrap.hasClass('acf-fields') && settings.placement == 'left' ) {
217
-
218
- $wrap.addClass('-sidebar');
219
-
220
- // can't have side tab without sidebar
221
- } else {
222
-
223
- settings.placement = 'top';
224
-
225
- }
226
-
227
-
228
- // generate html
229
- if( $wrap.is('tbody') ) {
230
-
231
- html = '<tr class="acf-tab-wrap"><td colspan="2"><ul class="acf-hl acf-tab-group"></ul></td></tr>';
232
-
233
- } else {
234
-
235
- html = '<div class="acf-tab-wrap -' + settings.placement + '"><ul class="acf-hl acf-tab-group"></ul></div>';
236
-
237
- }
238
-
239
-
240
- // save
241
- $group = $(html);
242
-
243
-
244
- // append
245
- $field.before( $group );
246
-
247
-
248
- // return
249
- return $group;
250
- },
251
-
252
- add_tab: function( $field, settings ){ //console.log('add_tab(%o, %o)', $field, settings);
253
-
254
- // vars
255
- var $group = $field.siblings('.acf-tab-wrap').last();
256
-
257
-
258
- // add tab group if no group exists
259
- if( !$group.exists() ) {
260
-
261
- $group = this.add_group( $field, settings );
262
-
263
- // add tab group if is endpoint
264
- } else if( settings.endpoint ) {
265
-
266
- $group = this.add_group( $field, settings );
267
-
268
- }
269
-
270
-
271
- // vars
272
- var $li = $('<li><a class="acf-tab-button" href="#" data-key="' + settings.key + '">' + settings.text + '</a></li>');
273
-
274
-
275
- // hide li
276
- if( settings.text === '' ) $li.hide();
277
-
278
-
279
- // add tab
280
- $group.find('ul').append( $li );
281
-
282
-
283
- // conditional logic
284
- if( $field.hasClass('hidden-by-conditional-logic') ) {
285
-
286
- $li.addClass('hidden-by-conditional-logic');
287
-
288
- }
289
-
290
- },
291
-
292
- _click: function( e ){
293
-
294
- // prevent default
295
- e.preventDefault();
296
-
297
-
298
- // reference
299
- var self = this;
300
-
301
-
302
- // vars
303
- var $a = e.$el,
304
- $group = $a.closest('.acf-tab-wrap'),
305
- show = $a.data('key'),
306
- current = '';
307
-
308
-
309
- // add and remove classes
310
- $a.parent().addClass('active').siblings().removeClass('active');
311
-
312
-
313
- // loop over all fields until you hit another group
314
- $group.nextUntil('.acf-tab-wrap', '.acf-field').each(function(){
315
-
316
- // vars
317
- var $field = $(this);
318
-
319
-
320
- // set current
321
- if( $field.data('type') == 'tab' ) {
322
-
323
- current = $field.data('key');
324
-
325
- // bail early if endpoint is found
326
- if( $field.hasClass('endpoint') ) {
327
-
328
- // stop loop - current tab group is complete
329
- return false;
330
-
331
- }
332
-
333
- }
334
-
335
-
336
- // show
337
- if( current === show ) {
338
-
339
- // only show if hidden
340
- if( $field.hasClass('hidden-by-tab') ) {
341
-
342
- $field.removeClass('hidden-by-tab');
343
-
344
- acf.do_action('show_field', $(this), 'tab');
345
-
346
- }
347
-
348
- // hide
349
- } else {
350
-
351
- // only hide if not hidden
352
- if( !$field.hasClass('hidden-by-tab') ) {
353
-
354
- $field.addClass('hidden-by-tab');
355
-
356
- acf.do_action('hide_field', $(this), 'tab');
357
-
358
- }
359
-
360
- }
361
-
362
- });
363
-
364
-
365
- // action for 3rd party customization
366
- acf.do_action('refresh', $group.parent() );
367
-
368
-
369
- // blur
370
- $a.trigger('blur');
371
-
372
- }
373
-
374
- });
375
-
376
-
377
- /*
378
- * tab_validation
379
- *
380
- * This model will handle validation of fields within a tab group
381
- *
382
- * @type function
383
- * @date 25/11/2015
384
- * @since 5.3.2
385
- *
386
- * @param $post_id (int)
387
- * @return $post_id (int)
388
- */
389
-
390
- var tab_validation = acf.model.extend({
391
-
392
- active: 1,
393
-
394
- actions: {
395
- 'invalid_field': 'invalid_field',
396
- },
397
-
398
- invalid_field: function( $field ){
399
-
400
- // bail early if already focused
401
- if( !this.active ) {
402
- return;
403
- }
404
-
405
-
406
- // bail early if not hidden by tab
407
- if( !$field.hasClass('hidden-by-tab') ) {
408
- return;
409
- }
410
-
411
-
412
- // reference
413
- var self = this;
414
-
415
-
416
- // vars
417
- var $tab = $field.prevAll('.acf-field-tab:first'),
418
- $group = $field.prevAll('.acf-tab-wrap:first');
419
-
420
-
421
- // focus
422
- $group.find('a[data-key="' + $tab.data('key') + '"]').trigger('click');
423
-
424
-
425
- // disable functionality for 1sec (allow next validation to work)
426
- this.active = 0;
427
-
428
- setTimeout(function(){
429
-
430
- self.active = 1;
431
-
432
- }, 1000);
433
-
434
- }
435
-
436
- });
437
-
438
-
439
- })(jQuery);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/_build/js/acf-taxonomy.js DELETED
@@ -1,408 +0,0 @@
1
- (function($){
2
-
3
- // taxonomy
4
- acf.fields.taxonomy = acf.field.extend({
5
-
6
- type: 'taxonomy',
7
- $el: null,
8
-
9
- actions: {
10
- 'ready': 'render',
11
- 'append': 'render',
12
- 'remove': 'remove'
13
- },
14
- events: {
15
- 'click a[data-name="add"]': 'add_term'
16
- },
17
-
18
- focus: function(){
19
-
20
- // $el
21
- this.$el = this.$field.find('.acf-taxonomy-field');
22
-
23
-
24
- // get options
25
- this.o = acf.get_data(this.$el, {
26
- save: '',
27
- type: '',
28
- taxonomy: ''
29
- });
30
-
31
-
32
- // extra
33
- this.o.key = this.$field.data('key');
34
-
35
- },
36
-
37
- render: function(){
38
-
39
- // attempt select2
40
- var $select = this.$field.find('select');
41
-
42
-
43
- // bail early if no select field
44
- if( !$select.exists() ) return;
45
-
46
-
47
- // select2 options
48
- var args = acf.get_data( $select );
49
-
50
-
51
- // customize args
52
- args = acf.parse_args(args, {
53
- 'pagination': true,
54
- 'ajax_action': 'acf/fields/taxonomy/query',
55
- 'key': this.o.key
56
- });
57
-
58
-
59
- // add select2
60
- acf.select2.init( $select, args );
61
-
62
- },
63
-
64
- remove: function(){
65
-
66
- // attempt select2
67
- var $select = this.$field.find('select');
68
-
69
-
70
- // validate ui
71
- if( !$select.exists() ) return false;
72
-
73
-
74
- // remove select2
75
- acf.select2.destroy( $select );
76
-
77
- },
78
-
79
- add_term: function( e ){
80
-
81
- // reference
82
- var self = this;
83
-
84
-
85
- // open popup
86
- acf.open_popup({
87
- title: e.$el.attr('title') || e.$el.data('title'),
88
- loading: true,
89
- height: 220
90
- });
91
-
92
-
93
-
94
- // AJAX data
95
- var ajax_data = acf.prepare_for_ajax({
96
- action: 'acf/fields/taxonomy/add_term',
97
- field_key: this.o.key
98
- });
99
-
100
-
101
-
102
- // get HTML
103
- $.ajax({
104
- url: acf.get('ajaxurl'),
105
- data: ajax_data,
106
- type: 'post',
107
- dataType: 'html',
108
- success: function(html){
109
-
110
- self.add_term_confirm( html );
111
-
112
- }
113
- });
114
-
115
-
116
- },
117
-
118
- add_term_confirm: function( html ){
119
-
120
- // reference
121
- var self = this;
122
-
123
-
124
- // update popup
125
- acf.update_popup({
126
- content : html
127
- });
128
-
129
-
130
- // focus
131
- $('#acf-popup input[name="term_name"]').focus();
132
-
133
-
134
- // events
135
- $('#acf-popup form').on('submit', function( e ){
136
-
137
- // prevent default
138
- e.preventDefault();
139
-
140
-
141
- // submit
142
- self.add_term_submit( $(this ));
143
-
144
- });
145
-
146
- },
147
-
148
- add_term_submit: function( $form ){
149
-
150
- // reference
151
- var self = this;
152
-
153
-
154
- // vars
155
- var $submit = $form.find('.acf-submit'),
156
- $name = $form.find('input[name="term_name"]'),
157
- $parent = $form.find('select[name="term_parent"]');
158
-
159
-
160
- // basic validation
161
- if( $name.val() === '' ) {
162
-
163
- $name.focus();
164
- return false;
165
-
166
- }
167
-
168
-
169
- // show loading
170
- $submit.find('button').attr('disabled', 'disabled');
171
- $submit.find('.acf-spinner').addClass('is-active');
172
-
173
-
174
- // vars
175
- var ajax_data = acf.prepare_for_ajax({
176
- action: 'acf/fields/taxonomy/add_term',
177
- field_key: this.o.key,
178
- term_name: $name.val(),
179
- term_parent: $parent.exists() ? $parent.val() : 0
180
- });
181
-
182
-
183
- // save term
184
- $.ajax({
185
- url: acf.get('ajaxurl'),
186
- data: ajax_data,
187
- type: 'post',
188
- dataType: 'json',
189
- success: function( json ){
190
-
191
- // vars
192
- var message = acf.get_ajax_message(json);
193
-
194
-
195
- // success
196
- if( acf.is_ajax_success(json) ) {
197
-
198
- // clear name
199
- $name.val('');
200
-
201
-
202
- // update term lists
203
- self.append_new_term( json.data );
204
-
205
- }
206
-
207
-
208
- // message
209
- if( message.text ) {
210
-
211
- $submit.find('span').html( message.text );
212
-
213
- }
214
-
215
- },
216
- complete: function(){
217
-
218
- // reset button
219
- $submit.find('button').removeAttr('disabled');
220
-
221
-
222
- // hide loading
223
- $submit.find('.acf-spinner').removeClass('is-active');
224
-
225
-
226
- // remove message
227
- $submit.find('span').delay(1500).fadeOut(250, function(){
228
-
229
- $(this).html('');
230
- $(this).show();
231
-
232
- });
233
-
234
-
235
- // focus
236
- $name.focus();
237
-
238
- }
239
- });
240
-
241
- },
242
-
243
- append_new_term: function( term ){
244
-
245
- // vars
246
- var item = {
247
- id: term.term_id,
248
- text: term.term_label
249
- };
250
-
251
-
252
- // append to all taxonomy lists
253
- $('.acf-taxonomy-field[data-taxonomy="' + this.o.taxonomy + '"]').each(function(){
254
-
255
- // vars
256
- var type = $(this).data('type');
257
-
258
-
259
- // bail early if not checkbox/radio
260
- if( type == 'radio' || type == 'checkbox' ) {
261
-
262
- // allow
263
-
264
- } else {
265
-
266
- return;
267
-
268
- }
269
-
270
-
271
- // vars
272
- var $hidden = $(this).children('input[type="hidden"]'),
273
- $ul = $(this).find('ul:first'),
274
- name = $hidden.attr('name');
275
-
276
-
277
- // allow multiple selection
278
- if( type == 'checkbox' ) {
279
-
280
- name += '[]';
281
-
282
- }
283
-
284
-
285
- // create new li
286
- var $li = $([
287
- '<li data-id="' + term.term_id + '">',
288
- '<label>',
289
- '<input type="' + type + '" value="' + term.term_id + '" name="' + name + '" /> ',
290
- '<span>' + term.term_label + '</span>',
291
- '</label>',
292
- '</li>'
293
- ].join(''));
294
-
295
-
296
- // find parent
297
- if( term.term_parent ) {
298
-
299
- // vars
300
- var $parent = $ul.find('li[data-id="' + term.term_parent + '"]');
301
-
302
-
303
- // update vars
304
- $ul = $parent.children('ul');
305
-
306
-
307
- // create ul
308
- if( !$ul.exists() ) {
309
-
310
- $ul = $('<ul class="children acf-bl"></ul>');
311
-
312
- $parent.append( $ul );
313
-
314
- }
315
-
316
- }
317
-
318
-
319
- // append
320
- $ul.append( $li );
321
-
322
- });
323
-
324
-
325
- // append to select
326
- $('#acf-popup #term_parent').each(function(){
327
-
328
- // vars
329
- var $option = $('<option value="' + term.term_id + '">' + term.term_label + '</option>');
330
-
331
- if( term.term_parent ) {
332
-
333
- $(this).children('option[value="' + term.term_parent + '"]').after( $option );
334
-
335
- } else {
336
-
337
- $(this).append( $option );
338
-
339
- }
340
-
341
- });
342
-
343
-
344
- // set value
345
- switch( this.o.type ) {
346
-
347
- // select
348
- case 'select':
349
-
350
- //this.$el.children('input').select2('data', item);
351
-
352
-
353
- // vars
354
- var $select = this.$el.children('select');
355
- acf.select2.add_value($select, term.term_id, term.term_label);
356
-
357
-
358
- break;
359
-
360
- case 'multi_select':
361
-
362
- /*
363
- // vars
364
- var $input = this.$el.children('input'),
365
- value = $input.select2('data') || [];
366
-
367
-
368
- // append
369
- value.push( item );
370
-
371
-
372
- // update
373
- $input.select2('data', value);
374
-
375
-
376
- */
377
- // vars
378
- var $select = this.$el.children('select');
379
- acf.select2.add_value($select, term.term_id, term.term_label);
380
-
381
-
382
- break;
383
-
384
- case 'checkbox':
385
- case 'radio':
386
-
387
- // scroll to view
388
- var $holder = this.$el.find('.categorychecklist-holder'),
389
- $li = $holder.find('li[data-id="' + term.term_id + '"]'),
390
- offet = $holder.get(0).scrollTop + ( $li.offset().top - $holder.offset().top );
391
-
392
-
393
- // check input
394
- $li.find('input').prop('checked', true);
395
-
396
-
397
- // scroll to bottom
398
- $holder.animate({scrollTop: offet}, '250');
399
- break;
400
-
401
- }
402
-
403
-
404
- }
405
-
406
- });
407
-
408
- })(jQuery);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/_build/js/acf-time-picker.js DELETED
@@ -1,113 +0,0 @@
1
- (function($){
2
-
3
- acf.fields.time_picker = acf.field.extend({
4
-
5
- type: 'time_picker',
6
- $el: null,
7
- $input: null,
8
- $hidden: null,
9
-
10
- o: {},
11
-
12
- actions: {
13
- 'ready': 'initialize',
14
- 'append': 'initialize'
15
- },
16
-
17
- events: {
18
- 'blur input[type="text"]': 'blur'
19
- },
20
-
21
- focus: function(){
22
-
23
- // get elements
24
- this.$el = this.$field.find('.acf-time-picker');
25
- this.$input = this.$el.find('input[type="text"]');
26
- this.$hidden = this.$el.find('input[type="hidden"]');
27
-
28
-
29
- // get options
30
- this.o = acf.get_data( this.$el );
31
-
32
- },
33
-
34
- initialize: function(){
35
-
36
- // bail ealry if no timepicker library
37
- if( typeof $.timepicker === 'undefined' ) return;
38
-
39
-
40
- // create options
41
- var args = {
42
- timeFormat: this.o.time_format,
43
- altField: this.$hidden,
44
- altFieldTimeOnly: false,
45
- altTimeFormat: 'HH:mm:ss',
46
- showButtonPanel: true,
47
- controlType: 'select',
48
- oneLine: true,
49
- closeText: acf._e('date_time_picker', 'selectText')
50
- };
51
-
52
-
53
- // add custom 'Close = Select' functionality
54
- args.onClose = function( value, instance ){
55
-
56
- // vars
57
- var $div = instance.dpDiv,
58
- $close = $div.find('.ui-datepicker-close');
59
-
60
-
61
- // if clicking close button
62
- if( !value && $close.is(':hover') ) {
63
-
64
- // attempt to find new value
65
- value = acf.maybe_get(instance, 'settings.timepicker.formattedTime');
66
-
67
-
68
- // bail early if no value
69
- if( !value ) return;
70
-
71
-
72
- // update value
73
- $.datepicker._setTime(instance);
74
-
75
- }
76
-
77
- };
78
-
79
-
80
- // filter for 3rd party customization
81
- args = acf.apply_filters('time_picker_args', args, this.$field);
82
-
83
-
84
- // add date picker
85
- this.$input.timepicker( args );
86
-
87
-
88
- // wrap the datepicker (only if it hasn't already been wrapped)
89
- if( $('body > #ui-datepicker-div').exists() ) {
90
-
91
- $('body > #ui-datepicker-div').wrap('<div class="acf-ui-datepicker" />');
92
-
93
- }
94
-
95
-
96
- // action for 3rd party customization
97
- acf.do_action('time_picker_init', this.$input, args, this.$field);
98
-
99
- },
100
-
101
- blur: function(){
102
-
103
- if( !this.$input.val() ) {
104
-
105
- this.$hidden.val('');
106
-
107
- }
108
-
109
- }
110
-
111
- });
112
-
113
- })(jQuery);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/_build/js/acf-true-false.js DELETED
@@ -1,231 +0,0 @@
1
- (function($){
2
-
3
- acf.fields.true_false = acf.field.extend({
4
-
5
- type: 'true_false',
6
- $switch: null,
7
- $input: null,
8
-
9
- actions: {
10
- 'prepare': 'render',
11
- 'append': 'render',
12
- 'show': 'render'
13
- },
14
-
15
- events: {
16
- 'change .acf-switch-input': '_change',
17
- 'focus .acf-switch-input': '_focus',
18
- 'blur .acf-switch-input': '_blur',
19
- 'keypress .acf-switch-input': '_keypress'
20
- },
21
-
22
-
23
- /*
24
- * focus
25
- *
26
- * This function will setup variables when focused on a field
27
- *
28
- * @type function
29
- * @date 12/04/2016
30
- * @since 5.3.8
31
- *
32
- * @param n/a
33
- * @return n/a
34
- */
35
-
36
- focus: function(){
37
-
38
- // vars
39
- this.$input = this.$field.find('.acf-switch-input');
40
- this.$switch = this.$field.find('.acf-switch');
41
-
42
- },
43
-
44
-
45
- /*
46
- * render
47
- *
48
- * This function is used to setup basic upload form attributes
49
- *
50
- * @type function
51
- * @date 12/04/2016
52
- * @since 5.3.8
53
- *
54
- * @param n/a
55
- * @return n/a
56
- */
57
-
58
- render: function(){
59
-
60
- // bail ealry if no $switch
61
- if( !this.$switch.exists() ) return;
62
-
63
-
64
- // vars
65
- var $on = this.$switch.children('.acf-switch-on'),
66
- $off = this.$switch.children('.acf-switch-off')
67
- width = Math.max( $on.width(), $off.width() );
68
-
69
-
70
- // bail ealry if no width
71
- if( !width ) return;
72
-
73
-
74
- // set widths
75
- $on.css( 'min-width', width );
76
- $off.css( 'min-width', width );
77
-
78
- },
79
-
80
-
81
- /*
82
- * on
83
- *
84
- * description
85
- *
86
- * @type function
87
- * @date 10/1/17
88
- * @since 5.5.0
89
- *
90
- * @param $post_id (int)
91
- * @return $post_id (int)
92
- */
93
-
94
- on: function() { //console.log('on');
95
-
96
- this.$input.prop('checked', true);
97
- this.$switch.addClass('-on');
98
-
99
- },
100
-
101
-
102
- /*
103
- * off
104
- *
105
- * description
106
- *
107
- * @type function
108
- * @date 10/1/17
109
- * @since 5.5.0
110
- *
111
- * @param $post_id (int)
112
- * @return $post_id (int)
113
- */
114
-
115
- off: function() { //console.log('off');
116
-
117
- this.$input.prop('checked', false);
118
- this.$switch.removeClass('-on');
119
-
120
- },
121
-
122
-
123
- /*
124
- * change
125
- *
126
- * description
127
- *
128
- * @type function
129
- * @date 12/10/16
130
- * @since 5.4.0
131
- *
132
- * @param $post_id (int)
133
- * @return $post_id (int)
134
- */
135
-
136
- _change: function( e ){
137
-
138
- // vars
139
- var checked = e.$el.prop('checked');
140
-
141
-
142
- // enable
143
- if( checked ) {
144
-
145
- this.on();
146
-
147
- // disable
148
- } else {
149
-
150
- this.off();
151
-
152
- }
153
-
154
- },
155
-
156
-
157
- /*
158
- * _focus
159
- *
160
- * description
161
- *
162
- * @type function
163
- * @date 10/1/17
164
- * @since 5.5.0
165
- *
166
- * @param $post_id (int)
167
- * @return $post_id (int)
168
- */
169
-
170
- _focus: function( e ){
171
-
172
- this.$switch.addClass('-focus');
173
-
174
- },
175
-
176
-
177
- /*
178
- * _blur
179
- *
180
- * description
181
- *
182
- * @type function
183
- * @date 10/1/17
184
- * @since 5.5.0
185
- *
186
- * @param $post_id (int)
187
- * @return $post_id (int)
188
- */
189
-
190
- _blur: function( e ){
191
-
192
- this.$switch.removeClass('-focus');
193
-
194
- },
195
-
196
-
197
- /*
198
- * _keypress
199
- *
200
- * description
201
- *
202
- * @type function
203
- * @date 10/1/17
204
- * @since 5.5.0
205
- *
206
- * @param $post_id (int)
207
- * @return $post_id (int)
208
- */
209
-
210
- _keypress: function( e ){
211
-
212
- // left
213
- if( e.keyCode === 37 ) {
214
-
215
- return this.off();
216
-
217
- }
218
-
219
-
220
- // right
221
- if( e.keyCode === 39 ) {
222
-
223
- return this.on();
224
-
225
- }
226
-
227
- }
228
-
229
- });
230
-
231
- })(jQuery);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/_build/js/acf-url.js DELETED
@@ -1,69 +0,0 @@
1
- (function($){
2
-
3
- acf.fields.url = acf.field.extend({
4
-
5
- type: 'url',
6
- $input: null,
7
-
8
- actions: {
9
- 'ready': 'render',
10
- 'append': 'render'
11
-
12
- },
13
-
14
- events: {
15
- 'keyup input[type="url"]': 'render'
16
- },
17
-
18
- focus: function(){
19
-
20
- this.$input = this.$field.find('input[type="url"]');
21
-
22
- },
23
-
24
- is_valid: function(){
25
-
26
- // vars
27
- var val = this.$input.val();
28
-
29
-
30
- if( val.indexOf('://') !== -1 ) {
31
-
32
- // url
33
-
34
- } else if( val.indexOf('//') === 0 ) {
35
-
36
- // protocol relative url
37
-
38
- } else {
39
-
40
- return false;
41
-
42
- }
43
-
44
-
45
- // return
46
- return true;
47
-
48
- },
49
-
50
- render: function(){
51
-
52
- // add class
53
- if( this.is_valid() ) {
54
-
55
- this.$input.parent().addClass('-valid');
56
-
57
- // remove class
58
- } else {
59
-
60
- this.$input.parent().removeClass('-valid');
61
-
62
- }
63
-
64
-
65
- }
66
-
67
- });
68
-
69
- })(jQuery);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/_build/js/acf-validation.js DELETED
@@ -1,1019 +0,0 @@
1
- (function($){
2
-
3
- acf.validation = acf.model.extend({
4
-
5
- actions: {
6
- 'ready': 'ready',
7
- 'append': 'ready'
8
- },
9
-
10
- filters: {
11
- 'validation_complete': 'validation_complete'
12
- },
13
-
14
- events: {
15
- 'click #save-post': 'click_ignore',
16
- 'click [type="submit"]': 'click_publish',
17
- 'submit form': 'submit_form',
18
- 'click .acf-error-message a': 'click_message'
19
- },
20
-
21
-
22
- // vars
23
- active: 1,
24
- ignore: 0,
25
- busy: 0,
26
- valid: true,
27
- errors: [],
28
-
29
-
30
- // classes
31
- error_class: 'acf-error',
32
- message_class: 'acf-error-message',
33
-
34
-
35
- // el
36
- $trigger: null,
37
-
38
-
39
- /*
40
- * ready
41
- *
42
- * This function will add 'non bubbling' events
43
- *
44
- * @type function
45
- * @date 26/05/2015
46
- * @since 5.2.3
47
- *
48
- * @param $post_id (int)
49
- * @return $post_id (int)
50
- */
51
-
52
- ready: function( $el ){
53
-
54
- // vars
55
- var $inputs = $('.acf-field input, .acf-field textarea, .acf-field select');
56
-
57
-
58
- // bail early if no inputs
59
- if( !$inputs.length ) return;
60
-
61
-
62
- // reference
63
- var self = this;
64
-
65
-
66
- // event
67
- $inputs.on('invalid', function( e ){
68
-
69
- // vars
70
- var $input = $(this);
71
- var $field = acf.get_field_wrap( $input );
72
-
73
-
74
- // action
75
- acf.do_action('invalid', $input);
76
- acf.do_action('invalid_field', $field);
77
-
78
-
79
- // save draft (ignore validation)
80
- if( acf.validation.ignore ) return;
81
-
82
-
83
- // prevent default
84
- // - prevents browser error message
85
- // - also fixes chrome bug where 'hidden-by-tab' field throws focus error
86
- e.preventDefault();
87
-
88
-
89
- // append to errors
90
- acf.validation.errors.push({
91
- input: $input.attr('name'),
92
- message: e.target.validationMessage
93
- });
94
-
95
-
96
- // invalid event has prevented the form from submitting
97
- // trigger acf validation fetch (safe to call multiple times)
98
- acf.validation.fetch( $input.closest('form') );
99
-
100
- });
101
-
102
- },
103
-
104
-
105
- /*
106
- * validation_complete
107
- *
108
- * This function will modify the JSON response and add local 'invalid' errors
109
- *
110
- * @type function
111
- * @date 26/05/2015
112
- * @since 5.2.3
113
- *
114
- * @param $post_id (int)
115
- * @return $post_id (int)
116
- */
117
-
118
- validation_complete: function( json, $form ) {
119
-
120
- // bail early if no local errors
121
- if( !this.errors.length ) return json;
122
-
123
-
124
- // set valid
125
- json.valid = 0;
126
-
127
-
128
- // require array
129
- json.errors = json.errors || [];
130
-
131
-
132
- // vars
133
- var inputs = [];
134
-
135
-
136
- // populate inputs
137
- if( json.errors.length ) {
138
-
139
- for( i in json.errors ) {
140
-
141
- inputs.push( json.errors[ i ].input );
142
-
143
- }
144
-
145
- }
146
-
147
-
148
- // append
149
- if( this.errors.length ) {
150
-
151
- for( i in this.errors ) {
152
-
153
- // vars
154
- var error = this.errors[ i ];
155
-
156
-
157
- // bail ealry if alreay exists
158
- if( $.inArray(error.input, inputs) !== -1 ) continue;
159
-
160
-
161
- // append
162
- json.errors.push( error );
163
-
164
- }
165
-
166
- }
167
-
168
-
169
- // reset
170
- this.errors = [];
171
-
172
-
173
- // return
174
- return json;
175
-
176
- },
177
-
178
-
179
- /*
180
- * click_message
181
- *
182
- * This function will dismiss the validation message
183
- *
184
- * @type function
185
- * @date 26/05/2015
186
- * @since 5.2.3
187
- *
188
- * @param $post_id (int)
189
- * @return $post_id (int)
190
- */
191
-
192
- click_message: function( e ) {
193
-
194
- e.preventDefault();
195
-
196
- acf.remove_el( e.$el.parent() );
197
-
198
- },
199
-
200
-
201
- /*
202
- * click_ignore
203
- *
204
- * This event is trigered via submit butons which ignore validation
205
- *
206
- * @type function
207
- * @date 4/05/2015
208
- * @since 5.2.3
209
- *
210
- * @param $post_id (int)
211
- * @return $post_id (int)
212
- */
213
-
214
- click_ignore: function( e ) {
215
-
216
- // reference
217
- var self = this;
218
-
219
-
220
- // vars
221
- this.ignore = 1;
222
- this.$trigger = e.$el;
223
- this.$form = e.$el.closest('form');
224
-
225
-
226
- // remove error message
227
- $('.'+this.message_class).each(function(){
228
- acf.remove_el( $(this) );
229
- });
230
-
231
-
232
- // ignore required inputs
233
- this.ignore_required_inputs();
234
-
235
-
236
- // maybe show errors
237
- setTimeout(function(){
238
- self.ignore = 0;
239
- }, 100);
240
-
241
- },
242
-
243
-
244
- /**
245
- * ignore_required_inputs
246
- *
247
- * This function will temporarily remove the 'required' attribute from all ACF inputs
248
- *
249
- * @date 23/10/17
250
- * @since 5.6.3
251
- *
252
- * @param n/a
253
- * @return n/a
254
- */
255
-
256
- ignore_required_inputs: function(){
257
-
258
- // vars
259
- var $inputs = $('.acf-field input[required], .acf-field textarea[required], .acf-field select[required]');
260
-
261
-
262
- // bail early if no inputs
263
- if( !$inputs.length ) return;
264
-
265
-
266
- // remove required
267
- $inputs.prop('required', false);
268
-
269
-
270
- // timeout
271
- setTimeout(function(){
272
- $inputs.prop('required', true);
273
- }, 100);
274
-
275
- },
276
-
277
-
278
- /*
279
- * click_publish
280
- *
281
- * This event is trigered via submit butons which trigger validation
282
- *
283
- * @type function
284
- * @date 4/05/2015
285
- * @since 5.2.3
286
- *
287
- * @param $post_id (int)
288
- * @return $post_id (int)
289
- */
290
-
291
- click_publish: function( e ) {
292
-
293
- this.$trigger = e.$el;
294
-
295
- },
296
-
297
-
298
- /*
299
- * submit_form
300
- *
301
- * description
302
- *
303
- * @type function
304
- * @date 4/05/2015
305
- * @since 5.2.3
306
- *
307
- * @param $post_id (int)
308
- * @return $post_id (int)
309
- */
310
-
311
- submit_form: function( e ){
312
-
313
- // bail early if not active
314
- if( !this.active ) {
315
-
316
- return true;
317
-
318
- }
319
-
320
-
321
- // ignore validation (only ignore once)
322
- if( this.ignore ) {
323
-
324
- this.ignore = 0;
325
- return true;
326
-
327
- }
328
-
329
-
330
- // bail early if this form does not contain ACF data
331
- if( !e.$el.find('#acf-form-data').exists() ) {
332
-
333
- return true;
334
-
335
- }
336
-
337
-
338
- // bail early if is preview
339
- var $preview = e.$el.find('#wp-preview');
340
- if( $preview.exists() && $preview.val() ) {
341
-
342
- // WP will lock form, unlock it
343
- this.toggle( e.$el, 'unlock' );
344
- return true;
345
-
346
- }
347
-
348
-
349
- // prevent default
350
- e.preventDefault();
351
-
352
-
353
- // run validation
354
- this.fetch( e.$el );
355
-
356
- },
357
-
358
-
359
- /*
360
- * lock
361
- *
362
- * description
363
- *
364
- * @type function
365
- * @date 7/05/2015
366
- * @since 5.2.3
367
- *
368
- * @param $post_id (int)
369
- * @return $post_id (int)
370
- */
371
-
372
- toggle: function( $form, state ){
373
-
374
- // defaults
375
- state = state || 'unlock';
376
-
377
-
378
- // debug
379
- //console.log('toggle %o, %o %o', this.$trigger, $form, state);
380
-
381
- // vars
382
- var $submit = null,
383
- $spinner = null,
384
- $parent = $('#submitdiv');
385
-
386
-
387
- // 3rd party publish box
388
- if( !$parent.exists() ) {
389
-
390
- $parent = $('#submitpost');
391
-
392
- }
393
-
394
-
395
- // term, user
396
- if( !$parent.exists() ) {
397
-
398
- $parent = $form.find('p.submit').last();
399
-
400
- }
401
-
402
-
403
- // front end form
404
- if( !$parent.exists() ) {
405
-
406
- $parent = $form.find('.acf-form-submit');
407
-
408
- }
409
-
410
-
411
- // default
412
- if( !$parent.exists() ) {
413
-
414
- $parent = $form;
415
-
416
- }
417
-
418
-
419
- // find elements
420
- // note: media edit page does not use .button, this is why we need to look for generic input[type="submit"]
421
- $submit = $parent.find('input[type="submit"], .button');
422
- $spinner = $parent.find('.spinner, .acf-spinner');
423
-
424
-
425
- // hide all spinners (hides the preview spinner)
426
- this.hide_spinner( $spinner );
427
-
428
-
429
- // unlock
430
- if( state == 'unlock' ) {
431
-
432
- this.enable_submit( $submit );
433
-
434
- // lock
435
- } else if( state == 'lock' ) {
436
-
437
- // show only last spinner (allow all spinners to be hidden - preview spinner + submit spinner)
438
- this.disable_submit( $submit );
439
- this.show_spinner( $spinner.last() );
440
-
441
- }
442
-
443
- },
444
-
445
-
446
- /*
447
- * fetch
448
- *
449
- * description
450
- *
451
- * @type function
452
- * @date 4/05/2015
453
- * @since 5.2.3
454
- *
455
- * @param $post_id (int)
456
- * @return $post_id (int)
457
- */
458
-
459
- fetch: function( $form ){
460
-
461
- // bail aelry if already busy
462
- if( this.busy ) return false;
463
-
464
-
465
- // reference
466
- var self = this;
467
-
468
-
469
- // action for 3rd party
470
- acf.do_action('validation_begin');
471
-
472
-
473
- // vars
474
- var data = acf.serialize($form);
475
-
476
-
477
- // append AJAX action
478
- data.action = 'acf/validate_save_post';
479
-
480
-
481
- // prepare
482
- data = acf.prepare_for_ajax(data);
483
-
484
-
485
- // set busy
486
- this.busy = 1;
487
-
488
-
489
- // lock form
490
- this.toggle( $form, 'lock' );
491
-
492
-
493
- // ajax
494
- $.ajax({
495
- url: acf.get('ajaxurl'),
496
- data: data,
497
- type: 'post',
498
- dataType: 'json',
499
- success: function( json ){
500
-
501
- // bail early if not json success
502
- if( !acf.is_ajax_success(json) ) {
503
-
504
- return;
505
-
506
- }
507
-
508
-
509
- self.fetch_success( $form, json.data );
510
-
511
- },
512
- complete: function(){
513
-
514
- self.fetch_complete( $form );
515
-
516
- }
517
- });
518
-
519
- },
520
-
521
-
522
- /*
523
- * fetch_complete
524
- *
525
- * description
526
- *
527
- * @type function
528
- * @date 4/05/2015
529
- * @since 5.2.3
530
- *
531
- * @param $post_id (int)
532
- * @return $post_id (int)
533
- */
534
-
535
- fetch_complete: function( $form ){
536
-
537
- // set busy
538
- this.busy = 0;
539
-
540
-
541
- // unlock so WP can publish form
542
- this.toggle( $form, 'unlock' );
543
-
544
-
545
- // bail early if validationw as not valid
546
- if( !this.valid ) return;
547
-
548
-
549
- // update ignore (allow form submit to not run validation)
550
- this.ignore = 1;
551
-
552
-
553
- // remove previous error message
554
- var $message = $form.children('.acf-error-message');
555
-
556
- if( $message.exists() ) {
557
-
558
- $message.addClass('-success');
559
- $message.children('p').html( acf._e('validation_successful') );
560
-
561
-
562
- // remove message
563
- setTimeout(function(){
564
-
565
- acf.remove_el( $message );
566
-
567
- }, 2000);
568
-
569
- }
570
-
571
-
572
- // remove hidden postboxes (this will stop them from being posted to save)
573
- $form.find('.acf-postbox.acf-hidden').remove();
574
-
575
-
576
- // action for 3rd party customization
577
- acf.do_action('submit', $form);
578
-
579
-
580
- // submit form again
581
- if( this.$trigger ) {
582
-
583
- this.$trigger.click();
584
-
585
- } else {
586
-
587
- $form.submit();
588
-
589
- }
590
-
591
-
592
- // lock form
593
- this.toggle( $form, 'lock' );
594
-
595
- },
596
-
597
-
598
- /*
599
- * fetch_success
600
- *
601
- * description
602
- *
603
- * @type function
604
- * @date 4/05/2015
605
- * @since 5.2.3
606
- *
607
- * @param $post_id (int)
608
- * @return $post_id (int)
609
- */
610
-
611
- fetch_success: function( $form, json ){
612
-
613
- // filter for 3rd party customization
614
- json = acf.apply_filters('validation_complete', json, $form);
615
-
616
-
617
- // validate json
618
- if( !json || json.valid || !json.errors ) {
619
-
620
- // set valid (allows fetch_complete to run)
621
- this.valid = true;
622
-
623
-
624
- // action for 3rd party
625
- acf.do_action('validation_success');
626
-
627
-
628
- // end function
629
- return;
630
-
631
- }
632
-
633
-
634
- // action for 3rd party
635
- acf.do_action('validation_failure');
636
-
637
-
638
- // set valid (prevents fetch_complete from runing)
639
- this.valid = false;
640
-
641
-
642
- // reset trigger
643
- this.$trigger = null;
644
-
645
-
646
- // display errors
647
- this.display_errors( json.errors, $form );
648
-
649
- },
650
-
651
-
652
- /**
653
- * display_errors
654
- *
655
- * This function will display errors
656
- *
657
- * @date 23/10/17
658
- * @since 5.6.3
659
- *
660
- * @param array errors
661
- * @return n/a
662
- */
663
-
664
- display_errors: function( errors, $form ){
665
-
666
- // bail early if no errors
667
- if( !errors || !errors.length ) return;
668
-
669
-
670
- // vars
671
- var $message = $form.children('.acf-error-message');
672
- var message = acf._e('validation_failed');
673
- var count = 0;
674
- var $scrollTo = null;
675
-
676
-
677
- // loop
678
- for( i = 0; i < errors.length; i++ ) {
679
-
680
- // vars
681
- var error = errors[ i ];
682
-
683
-
684
- // general error
685
- if( !error.input ) {
686
- message += '. ' + error.message;
687
- continue;
688
- }
689
-
690
-
691
- // get input
692
- var $input = $form.find('[name="' + error.input + '"]').first();
693
-
694
-
695
- // if $_POST value was an array, this $input may not exist
696
- if( !$input.exists() ) {
697
- $input = $form.find('[name^="' + error.input + '"]').first();
698
- }
699
-
700
-
701
- // bail early if input doesn't exist
702
- if( !$input.exists() ) continue;
703
-
704
-
705
- // increase
706
- count++;
707
-
708
-
709
- // now get field
710
- var $field = acf.get_field_wrap( $input );
711
-
712
-
713
- // add error
714
- this.add_error( $field, error.message );
715
-
716
-
717
- // set $scrollTo
718
- if( $scrollTo === null ) {
719
- $scrollTo = $field;
720
- }
721
-
722
- }
723
-
724
-
725
- // message
726
- if( count == 1 ) {
727
- message += '. ' + acf._e('validation_failed_1');
728
- } else if( count > 1 ) {
729
- message += '. ' + acf._e('validation_failed_2').replace('%d', count);
730
- }
731
-
732
-
733
- // maybe create $message
734
- if( !$message.exists() ) {
735
- $message = $('<div class="acf-error-message"><p></p><a href="#" class="acf-icon -cancel small"></a></div>');
736
- $form.prepend( $message );
737
- }
738
-
739
-
740
- // update message
741
- $message.children('p').html( message );
742
-
743
-
744
- // if no $scrollTo, set to message
745
- if( $scrollTo === null ) {
746
- $scrollTo = $message;
747
- }
748
-
749
-
750
- // timeout
751
- setTimeout(function(){
752
- $("html, body").animate({ scrollTop: $scrollTo.offset().top - ( $(window).height() / 2 ) }, 500);
753
- }, 10);
754
-
755
- },
756
-
757
-
758
- /*
759
- * add_error
760
- *
761
- * This function will add error markup to a field
762
- *
763
- * @type function
764
- * @date 4/05/2015
765
- * @since 5.2.3
766
- *
767
- * @param $field (jQuery)
768
- * @param message (string)
769
- * @return n/a
770
- */
771
-
772
- add_error: function( $field, message ){
773
-
774
- // reference
775
- var self = this;
776
-
777
-
778
- // add class
779
- $field.addClass(this.error_class);
780
-
781
-
782
- // add message
783
- if( message !== undefined ) {
784
-
785
- $field.children('.acf-input').children('.' + this.message_class).remove();
786
- $field.children('.acf-input').prepend('<div class="' + this.message_class + '"><p>' + message + '</p></div>');
787
-
788
- }
789
-
790
-
791
- // add event
792
- var event = function(){
793
-
794
- // remove error
795
- self.remove_error( $field );
796
-
797
-
798
- // remove self
799
- $field.off('focus change', 'input, textarea, select', event);
800
-
801
- }
802
-
803
- $field.on('focus change', 'input, textarea, select', event);
804
-
805
-
806
- // hook for 3rd party customization
807
- acf.do_action('add_field_error', $field);
808
- acf.do_action('invalid_field', $field);
809
-
810
- },
811
-
812
-
813
- /*
814
- * remove_error
815
- *
816
- * This function will remove error markup from a field
817
- *
818
- * @type function
819
- * @date 4/05/2015
820
- * @since 5.2.3
821
- *
822
- * @param $field (jQuery)
823
- * @return n/a
824
- */
825
-
826
- remove_error: function( $field ){
827
-
828
- // var
829
- var $message = $field.children('.acf-input').children('.' + this.message_class);
830
-
831
-
832
- // remove class
833
- $field.removeClass(this.error_class);
834
-
835
-
836
- // remove message
837
- setTimeout(function(){
838
-
839
- acf.remove_el( $message );
840
-
841
- }, 250);
842
-
843
-
844
- // hook for 3rd party customization
845
- acf.do_action('remove_field_error', $field);
846
- acf.do_action('valid_field', $field);
847
-
848
- },
849
-
850
-
851
- /*
852
- * add_warning
853
- *
854
- * This functino will add and auto remove an error message to a field
855
- *
856
- * @type function
857
- * @date 4/05/2015
858
- * @since 5.2.3
859
- *
860
- * @param $field (jQuery)
861
- * @param message (string)
862
- * @return n/a
863
- */
864
-
865
- add_warning: function( $field, message ){
866
-
867
- this.add_error( $field, message );
868
-
869
- setTimeout(function(){
870
-
871
- acf.validation.remove_error( $field )
872
-
873
- }, 1000);
874
-
875
- },
876
-
877
-
878
- /*
879
- * show_spinner
880
- *
881
- * This function will show a spinner element. Logic changed in WP 4.2
882
- *
883
- * @type function
884
- * @date 3/05/2015
885
- * @since 5.2.3
886
- *
887
- * @param $spinner (jQuery)
888
- * @return n/a
889
- */
890
-
891
- show_spinner: function( $spinner ){
892
-
893
- // bail early if no spinner
894
- if( !$spinner.exists() ) {
895
-
896
- return;
897
-
898
- }
899
-
900
-
901
- // vars
902
- var wp_version = acf.get('wp_version');
903
-
904
-
905
- // show
906
- if( parseFloat(wp_version) >= 4.2 ) {
907
-
908
- $spinner.addClass('is-active');
909
-
910
- } else {
911
-
912
- $spinner.css('display', 'inline-block');
913
-
914
- }
915
-
916
- },
917
-
918
-
919
- /*
920
- * hide_spinner
921
- *
922
- * This function will hide a spinner element. Logic changed in WP 4.2
923
- *
924
- * @type function
925
- * @date 3/05/2015
926
- * @since 5.2.3
927
- *
928
- * @param $spinner (jQuery)
929
- * @return n/a
930
- */
931
-
932
- hide_spinner: function( $spinner ){
933
-
934
- // bail early if no spinner
935
- if( !$spinner.exists() ) {
936
-
937
- return;
938
-
939
- }
940
-
941
-
942
- // vars
943
- var wp_version = acf.get('wp_version');
944
-
945
-
946
- // hide
947
- if( parseFloat(wp_version) >= 4.2 ) {
948
-
949
- $spinner.removeClass('is-active');
950
-
951
- } else {
952
-
953
- $spinner.css('display', 'none');
954
-
955
- }
956
-
957
- },
958
-
959
-
960
- /*
961
- * disable_submit
962
- *
963
- * This function will disable the $trigger is possible
964
- *
965
- * @type function
966
- * @date 3/05/2015
967
- * @since 5.2.3
968
- *
969
- * @param $spinner (jQuery)
970
- * @return n/a
971
- */
972
-
973
- disable_submit: function( $submit ){
974
-
975
- // bail early if no submit
976
- if( !$submit.exists() ) {
977
-
978
- return;
979
-
980
- }
981
-
982
-
983
- // add class
984
- $submit.addClass('disabled button-disabled button-primary-disabled');
985
-
986
- },
987
-
988
-
989
- /*
990
- * enable_submit
991
- *
992
- * This function will enable the $trigger is possible
993
- *
994
- * @type function
995
- * @date 3/05/2015
996
- * @since 5.2.3
997
- *
998
- * @param $spinner (jQuery)
999
- * @return n/a
1000
- */
1001
-
1002
- enable_submit: function( $submit ){
1003
-
1004
- // bail early if no submit
1005
- if( !$submit.exists() ) {
1006
-
1007
- return;
1008
-
1009
- }
1010
-
1011
-
1012
- // remove class
1013
- $submit.removeClass('disabled button-disabled button-primary-disabled');
1014
-
1015
- }
1016
-
1017
- });
1018
-
1019
- })(jQuery);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/_build/js/acf-wysiwyg.js DELETED
@@ -1,552 +0,0 @@
1
- (function($){
2
-
3
- acf.fields.wysiwyg = acf.field.extend({
4
-
5
- type: 'wysiwyg',
6
- $el: null,
7
- $textarea: null,
8
- toolbars: {},
9
-
10
- events: {
11
- 'mousedown .acf-editor-wrap.delay': 'mousedown'
12
- },
13
-
14
- actions: {
15
- 'load': 'initialize',
16
- 'append': 'initialize',
17
- 'remove': 'disable',
18
- 'sortstart': 'disable',
19
- 'sortstop': 'enable'
20
- },
21
-
22
- focus: function(){
23
-
24
- // get elements
25
- this.$el = this.$field.find('.wp-editor-wrap').last();
26
- this.$textarea = this.$el.find('textarea');
27
-
28
-
29
- // get options
30
- this.o = acf.get_data(this.$el, {
31
- toolbar: '',
32
- active: this.$el.hasClass('tmce-active'),
33
- id: this.$textarea.attr('id')
34
- });
35
-
36
- },
37
-
38
- mousedown: function(e){
39
-
40
- // prevent default
41
- e.preventDefault();
42
-
43
-
44
- // remove delay class
45
- this.$el.removeClass('delay');
46
- this.$el.find('.acf-editor-toolbar').remove();
47
-
48
-
49
- // initialize
50
- this.initialize();
51
-
52
- },
53
-
54
- initialize: function(){
55
-
56
- // bail early if delay
57
- if( this.$el.hasClass('delay') ) return;
58
-
59
-
60
- // vars
61
- var args = {
62
- tinymce: true,
63
- quicktags: true,
64
- toolbar: this.o.toolbar,
65
- mode: this.o.active ? 'visual' : 'text',
66
- };
67
-
68
-
69
- // generate new id
70
- var old_id = this.o.id,
71
- new_id = acf.get_uniqid('acf-editor-'),
72
- html = this.$el.outerHTML();
73
-
74
-
75
- // replace
76
- html = acf.str_replace( old_id, new_id, html );
77
-
78
-
79
- // swap
80
- this.$el.replaceWith( html );
81
-
82
-
83
- // update id
84
- this.o.id = new_id;
85
-
86
-
87
- // initialize
88
- acf.tinymce.initialize( this.o.id, args, this.$field );
89
-
90
- },
91
-
92
- disable: function(){
93
-
94
- acf.tinymce.destroy( this.o.id );
95
-
96
- },
97
-
98
- enable: function(){
99
-
100
- if( this.o.active ) {
101
- acf.tinymce.enable( this.o.id );
102
- }
103
-
104
- }
105
-
106
- });
107
-
108
-
109
- /*
110
- * acf.tinymce
111
- *
112
- * description
113
- *
114
- * @type function
115
- * @date 18/8/17
116
- * @since 5.6.0
117
- *
118
- * @param $post_id (int)
119
- * @return $post_id (int)
120
- */
121
-
122
- acf.tinymce = acf.model.extend({
123
-
124
- toolbars: {},
125
-
126
- actions: {
127
- 'ready': 'ready'
128
- },
129
-
130
-
131
- /*
132
- * ready
133
- *
134
- * This function will move the acf-hidden-wp-editor and fix the activeEditor
135
- *
136
- * @type function
137
- * @date 18/8/17
138
- * @since 5.6.0
139
- *
140
- * @param $post_id (int)
141
- * @return $post_id (int)
142
- */
143
-
144
- ready: function(){
145
-
146
- // vars
147
- var $div = $('#acf-hidden-wp-editor');
148
-
149
-
150
- // bail early if doesn't exist
151
- if( !$div.exists() ) return;
152
-
153
-
154
- // move to footer
155
- $div.appendTo('body');
156
-
157
-
158
- // bail early if no tinymce
159
- if( !acf.isset(window,'tinymce','on') ) return;
160
-
161
-
162
- // restore default activeEditor
163
- tinymce.on('AddEditor', function( data ){
164
-
165
- // vars
166
- var editor = data.editor;
167
-
168
-
169
- // bail early if not 'acf'
170
- if( editor.id.substr(0, 3) !== 'acf' ) return;
171
-
172
-
173
- // override if 'content' exists
174
- editor = tinymce.editors.content || editor;
175
-
176
-
177
- // update vars
178
- tinymce.activeEditor = editor;
179
- wpActiveEditor = editor.id;
180
-
181
- });
182
-
183
- },
184
-
185
-
186
- /*
187
- * defaults
188
- *
189
- * This function will return default mce and qt settings
190
- *
191
- * @type function
192
- * @date 18/8/17
193
- * @since 5.6.0
194
- *
195
- * @param $post_id (int)
196
- * @return $post_id (int)
197
- */
198
-
199
- defaults: function(){
200
-
201
- // bail early if no tinyMCEPreInit
202
- if( typeof tinyMCEPreInit === 'undefined' ) return false;
203
-
204
-
205
- // vars
206
- var defaults = {
207
- tinymce: tinyMCEPreInit.mceInit.acf_content,
208
- quicktags: tinyMCEPreInit.qtInit.acf_content
209
- };
210
-
211
-
212
- // return
213
- return defaults;
214
-
215
- },
216
-
217
-
218
- /*
219
- * initialize
220
- *
221
- * This function will initialize the tinymce and quicktags instances
222
- *
223
- * @type function
224
- * @date 18/8/17
225
- * @since 5.6.0
226
- *
227
- * @param $post_id (int)
228
- * @return $post_id (int)
229
- */
230
-
231
- initialize: function( id, args, $field ){
232
-
233
- // defaults
234
- args = args || {};
235
- $field = $field || null;
236
-
237
-
238
- // merge
239
- args = acf.parse_args(args, {
240
- tinymce: true,
241
- quicktags: true,
242
- toolbar: 'full',
243
- mode: 'visual', // visual,text
244
- });
245
-
246
-
247
- // tinymce
248
- if( args.tinymce ) {
249
- this.initialize_tinymce( id, args, $field );
250
- }
251
-
252
-
253
- // quicktags
254
- if( args.quicktags ) {
255
- this.initialize_quicktags( id, args, $field );
256
- }
257
-
258
- },
259
-
260
-
261
- /*
262
- * initialize_tinymce
263
- *
264
- * This function will initialize the tinymce instance
265
- *
266
- * @type function
267
- * @date 18/8/17
268
- * @since 5.6.0
269
- *
270
- * @param $post_id (int)
271
- * @return $post_id (int)
272
- */
273
-
274
- initialize_tinymce: function( id, args, $field ){
275
-
276
- // vars
277
- var $textarea = $('#'+id);
278
- var defaults = this.defaults();
279
- var toolbars = this.toolbars;
280
-
281
-
282
- // bail early
283
- if( typeof tinymce === 'undefined' ) return false;
284
- if( !defaults ) return false;
285
-
286
-
287
- // check if exists
288
- if( tinymce.get(id) ) {
289
- return this.enable( id );
290
- }
291
-
292
-
293
- // settings
294
- init = $.extend( {}, defaults.tinymce, args.tinymce );
295
- init.id = id;
296
- init.selector = '#' + id;
297
-
298
-
299
- // toolbar
300
- var toolbar = args.toolbar;
301
- if( toolbar && typeof toolbars[toolbar] !== 'undefined' ) {
302
-
303
- for( var i = 1; i <= 4; i++ ) {
304
- init[ 'toolbar' + i ] = toolbars[toolbar][i] || '';
305
- }
306
-
307
- }
308
-
309
-
310
- // event
311
- init.setup = function( ed ){
312
-
313
- ed.on('focus', function(e) {
314
- acf.validation.remove_error( $field );
315
- });
316
-
317
- ed.on('change', function(e) {
318
- ed.save(); // save to textarea
319
- $textarea.trigger('change');
320
- });
321
-
322
- $( ed.getWin() ).on('unload', function() {
323
- acf.tinymce.remove( id );
324
- });
325
-
326
- };
327
-
328
-
329
- // disable wp_autoresize_on (no solution yet for fixed toolbar)
330
- init.wp_autoresize_on = false;
331
-
332
-
333
- // hook for 3rd party customization
334
- init = acf.apply_filters('wysiwyg_tinymce_settings', init, id, $field);
335
-
336
-
337
- // z-index fix (caused too many conflicts)
338
- //if( acf.isset(tinymce,'ui','FloatPanel') ) {
339
- // tinymce.ui.FloatPanel.zIndex = 900000;
340
- //}
341
-
342
-
343
- // store settings
344
- tinyMCEPreInit.mceInit[ id ] = init;
345
-
346
-
347
- // visual tab is active
348
- if( args.mode == 'visual' ) {
349
-
350
- // init
351
- tinymce.init( init );
352
-
353
-
354
- // get editor
355
- var ed = tinymce.get( id );
356
-
357
-
358
- // action
359
- acf.do_action('wysiwyg_tinymce_init', ed, ed.id, init, $field);
360
-
361
- }
362
-
363
- },
364
-
365
-
366
- /*
367
- * initialize_quicktags
368
- *
369
- * This function will initialize the quicktags instance
370
- *
371
- * @type function
372
- * @date 18/8/17
373
- * @since 5.6.0
374
- *
375
- * @param $post_id (int)
376
- * @return $post_id (int)
377
- */
378
-
379
- initialize_quicktags: function( id, args, $field ){
380
-
381
- // vars
382
- var defaults = this.defaults();
383
-
384
-
385
- // bail early
386
- if( typeof quicktags === 'undefined' ) return false;
387
- if( !defaults ) return false;
388
-
389
-
390
- // settings
391
- init = $.extend( {}, defaults.quicktags, args.quicktags );
392
- init.id = id;
393
-
394
-
395
- // filter
396
- init = acf.apply_filters('wysiwyg_quicktags_settings', init, init.id, $field);
397
-
398
-
399
- // store settings
400
- tinyMCEPreInit.qtInit[ id ] = init;
401
-
402
-
403
- // init
404
- var ed = quicktags( init );
405
-
406
-
407
- // generate HTML
408
- this.build_quicktags( ed );
409
-
410
-
411
- // action for 3rd party customization
412
- acf.do_action('wysiwyg_quicktags_init', ed, ed.id, init, $field);
413
-
414
- },
415
-
416
-
417
- /*
418
- * build_quicktags
419
- *
420
- * This function will build the quicktags HTML
421
- *
422
- * @type function
423
- * @date 18/8/17
424
- * @since 5.6.0
425
- *
426
- * @param $post_id (int)
427
- * @return $post_id (int)
428
- */
429
-
430
- build_quicktags: function( ed ){
431
-
432
- var canvas, name, settings, theButtons, html, ed, id, i, use,
433
- defaults = ',strong,em,link,block,del,ins,img,ul,ol,li,code,more,close,';
434
-
435
- canvas = ed.canvas;
436
- name = ed.name;
437
- settings = ed.settings;
438
- html = '';
439
- theButtons = {};
440
- use = '';
441
-
442
- // set buttons
443
- if ( settings.buttons ) {
444
- use = ','+settings.buttons+',';
445
- }
446
-
447
- for ( i in edButtons ) {
448
- if ( ! edButtons[i] ) {
449
- continue;
450
- }
451
-
452
- id = edButtons[i].id;
453
- if ( use && defaults.indexOf( ',' + id + ',' ) !== -1 && use.indexOf( ',' + id + ',' ) === -1 ) {
454
- continue;
455
- }
456
-
457
- if ( ! edButtons[i].instance || edButtons[i].instance === instanceId ) {
458
- theButtons[id] = edButtons[i];
459
-
460
- if ( edButtons[i].html ) {
461
- html += edButtons[i].html( name + '_' );
462
- }
463
- }
464
- }
465
-
466
- if ( use && use.indexOf(',dfw,') !== -1 ) {
467
- theButtons.dfw = new QTags.DFWButton();
468
- html += theButtons.dfw.html( name + '_' );
469
- }
470
-
471
- if ( 'rtl' === document.getElementsByTagName( 'html' )[0].dir ) {
472
- theButtons.textdirection = new QTags.TextDirectionButton();
473
- html += theButtons.textdirection.html( name + '_' );
474
- }
475
-
476
- ed.toolbar.innerHTML = html;
477
- ed.theButtons = theButtons;
478
-
479
- if ( typeof jQuery !== 'undefined' ) {
480
- jQuery( document ).triggerHandler( 'quicktags-init', [ ed ] );
481
- }
482
-
483
- },
484
-
485
- disable: function( id ){
486
-
487
- this.destroy( id );
488
-
489
- },
490
-
491
- destroy: function( id ){
492
-
493
- this.destroy_tinymce( id );
494
-
495
- },
496
-
497
- destroy_tinymce: function( id ){
498
-
499
- // bail early
500
- if( typeof tinymce === 'undefined' ) return false;
501
-
502
-
503
- // get editor
504
- var ed = tinymce.get( id );
505
-
506
-
507
- // bail early if no editor
508
- if( !ed ) return false;
509
-
510
-
511
- // save
512
- ed.save();
513
-
514
-
515
- // destroy editor
516
- ed.destroy();
517
-
518
-
519
- // return
520
- return true;
521
-
522
- },
523
-
524
- enable: function( id ){
525
-
526
- this.enable_tinymce( id );
527
-
528
- },
529
-
530
- enable_tinymce: function( id ){
531
-
532
- // bail early
533
- if( typeof switchEditors === 'undefined' ) return false;
534
-
535
-
536
- // bail ealry if not initialized
537
- if( typeof tinyMCEPreInit.mceInit[ id ] === 'undefined' ) return false;
538
-
539
-
540
- // toggle
541
- switchEditors.go( id, 'tmce');
542
-
543
-
544
- // return
545
- return true;
546
-
547
- },
548
-
549
- });
550
-
551
-
552
- })(jQuery);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/_build/js/acf.js DELETED
@@ -1,3933 +0,0 @@
1
- var acf;
2
-
3
- (function($){
4
-
5
-
6
- /*
7
- * exists
8
- *
9
- * This function will return true if a jQuery selection exists
10
- *
11
- * @type function
12
- * @date 8/09/2014
13
- * @since 5.0.0
14
- *
15
- * @param n/a
16
- * @return (boolean)
17
- */
18
-
19
- $.fn.exists = function() {
20
-
21
- return $(this).length>0;
22
-
23
- };
24
-
25
-
26
- /*
27
- * outerHTML
28
- *
29
- * This function will return a string containing the HTML of the selected element
30
- *
31
- * @type function
32
- * @date 19/11/2013
33
- * @since 5.0.0
34
- *
35
- * @param $.fn
36
- * @return (string)
37
- */
38
-
39
- $.fn.outerHTML = function() {
40
-
41
- return $(this).get(0).outerHTML;
42
-
43
- };
44
-
45
-
46
- acf = {
47
-
48
- // vars
49
- l10n: {},
50
- o: {},
51
-
52
-
53
- /*
54
- * update
55
- *
56
- * This function will update a value found in acf.o
57
- *
58
- * @type function
59
- * @date 8/09/2014
60
- * @since 5.0.0
61
- *
62
- * @param k (string) the key
63
- * @param v (mixed) the value
64
- * @return n/a
65
- */
66
-
67
- update: function( k, v ){
68
-
69
- this.o[ k ] = v;
70
-
71
- },
72
-
73
-
74
- /*
75
- * get
76
- *
77
- * This function will return a value found in acf.o
78
- *
79
- * @type function
80
- * @date 8/09/2014
81
- * @since 5.0.0
82
- *
83
- * @param k (string) the key
84
- * @return v (mixed) the value
85
- */
86
-
87
- get: function( k ){
88
-
89
- if( typeof this.o[ k ] !== 'undefined' ) {
90
-
91
- return this.o[ k ];
92
-
93
- }
94
-
95
- return null;
96
-
97
- },
98
-
99
-
100
- /*
101
- * _e
102
- *
103
- * This functiln will return a string found in acf.l10n
104
- *
105
- * @type function
106
- * @date 8/09/2014
107
- * @since 5.0.0
108
- *
109
- * @param k1 (string) the first key to look for
110
- * @param k2 (string) the second key to look for
111
- * @return string (string)
112
- */
113
-
114
- _e: function( k1, k2 ){
115
-
116
- // defaults
117
- k2 = k2 || false;
118
-
119
-
120
- // get context
121
- var string = this.l10n[ k1 ] || '';
122
-
123
-
124
- // get string
125
- if( k2 ) {
126
-
127
- string = string[ k2 ] || '';
128
-
129
- }
130
-
131
-
132
- // return
133
- return string;
134
-
135
- },
136
-
137
-
138
- /*
139
- * add_action
140
- *
141
- * This function uses wp.hooks to mimics WP add_action
142
- *
143
- * @type function
144
- * @date 8/09/2014
145
- * @since 5.0.0
146
- *
147
- * @param
148
- * @return
149
- */
150
-
151
- add_action: function() {
152
-
153
- // vars
154
- var a = arguments[0].split(' '),
155
- l = a.length;
156
-
157
-
158
- // loop
159
- for( var i = 0; i < l; i++) {
160
-
161
- /*
162
- // allow for special actions
163
- if( a[i].indexOf('initialize') !== -1 ) {
164
-
165
- a.push( a[i].replace('initialize', 'ready') );
166
- a.push( a[i].replace('initialize', 'append') );
167
- l = a.length;
168
-
169
- continue;
170
- }
171
- */
172
-
173
-
174
- // prefix action
175
- arguments[0] = 'acf/' + a[i];
176
-
177
-
178
- // add
179
- wp.hooks.addAction.apply(this, arguments);
180
-
181
- }
182
-
183
-
184
- // return
185
- return this;
186
-
187
- },
188
-
189
-
190
- /*
191
- * remove_action
192
- *
193
- * This function uses wp.hooks to mimics WP remove_action
194
- *
195
- * @type function
196
- * @date 8/09/2014
197
- * @since 5.0.0
198
- *
199
- * @param
200
- * @return
201
- */
202
-
203
- remove_action: function() {
204
-
205
- // prefix action
206
- arguments[0] = 'acf/' + arguments[0];
207
-
208
- wp.hooks.removeAction.apply(this, arguments);
209
-
210
- return this;
211
-
212
- },
213
-
214
-
215
- /*
216
- * do_action
217
- *
218
- * This function uses wp.hooks to mimics WP do_action
219
- *
220
- * @type function
221
- * @date 8/09/2014
222
- * @since 5.0.0
223
- *
224
- * @param
225
- * @return
226
- */
227
-
228
- do_action: function() { //console.log('acf.do_action(%o)', arguments);
229
-
230
- // prefix action
231
- arguments[0] = 'acf/' + arguments[0];
232
-
233
- wp.hooks.doAction.apply(this, arguments);
234
-
235
- return this;
236
-
237
- },
238
-
239
-
240
- /*
241
- * add_filter
242
- *
243
- * This function uses wp.hooks to mimics WP add_filter
244
- *
245
- * @type function
246
- * @date 8/09/2014
247
- * @since 5.0.0
248
- *
249
- * @param
250
- * @return
251
- */
252
-
253
- add_filter: function() {
254
-
255
- // prefix action
256
- arguments[0] = 'acf/' + arguments[0];
257
-
258
- wp.hooks.addFilter.apply(this, arguments);
259
-
260
- return this;
261
-
262
- },
263
-
264
-
265
- /*
266
- * remove_filter
267
- *
268
- * This function uses wp.hooks to mimics WP remove_filter
269
- *
270
- * @type function
271
- * @date 8/09/2014
272
- * @since 5.0.0
273
- *
274
- * @param
275
- * @return
276
- */
277
-
278
- remove_filter: function() {
279
-
280
- // prefix action
281
- arguments[0] = 'acf/' + arguments[0];
282
-
283
- wp.hooks.removeFilter.apply(this, arguments);
284
-
285
- return this;
286
-
287
- },
288
-
289
-
290
- /*
291
- * apply_filters
292
- *
293
- * This function uses wp.hooks to mimics WP apply_filters
294
- *
295
- * @type function
296
- * @date 8/09/2014
297
- * @since 5.0.0
298
- *
299
- * @param
300
- * @return
301
- */
302
-
303
- apply_filters: function() { //console.log('acf.apply_filters(%o)', arguments);
304
-
305
- // prefix action
306
- arguments[0] = 'acf/' + arguments[0];
307
-
308
- return wp.hooks.applyFilters.apply(this, arguments);
309
-
310
- },
311
-
312
-
313
- /*
314
- * get_selector
315
- *
316
- * This function will return a valid selector for finding a field object
317
- *
318
- * @type function
319
- * @date 15/01/2015
320
- * @since 5.1.5
321
- *
322
- * @param s (string)
323
- * @return (string)
324
- */
325
-
326
- get_selector: function( s ) {
327
-
328
- // defaults
329
- s = s || '';
330
-
331
-
332
- // vars
333
- var selector = '.acf-field';
334
-
335
-
336
- // compatibility with object
337
- if( $.isPlainObject(s) ) {
338
-
339
- if( $.isEmptyObject(s) ) {
340
-
341
- s = '';
342
-
343
- } else {
344
-
345
- for( k in s ) { s = s[k]; break; }
346
-
347
- }
348
-
349
- }
350
-
351
-
352
- // search
353
- if( s ) {
354
-
355
- // append
356
- selector += '-' + s;
357
-
358
-
359
- // replace underscores (split/join replaces all and is faster than regex!)
360
- selector = selector.split('_').join('-');
361
-
362
-
363
- // remove potential double up
364
- selector = selector.split('field-field-').join('field-');
365
-
366
- }
367
-
368
-
369
- // return
370
- return selector;
371
-
372
- },
373
-
374
-
375
- /*
376
- * get_fields
377
- *
378
- * This function will return a jQuery selection of fields
379
- *
380
- * @type function
381
- * @date 8/09/2014
382
- * @since 5.0.0
383
- *
384
- * @param args (object)
385
- * @param $el (jQuery) element to look within
386
- * @param all (boolean) return all fields or allow filtering (for repeater)
387
- * @return $fields (jQuery)
388
- */
389
-
390
- get_fields: function( s, $el, all ){
391
-
392
- // debug
393
- //console.log( 'acf.get_fields(%o, %o, %o)', args, $el, all );
394
- //console.time("acf.get_fields");
395
-
396
-
397
- // defaults
398
- s = s || '';
399
- $el = $el || false;
400
- all = all || false;
401
-
402
-
403
- // vars
404
- var selector = this.get_selector(s);
405
-
406
-
407
- // get child fields
408
- var $fields = $( selector, $el );
409
-
410
-
411
- // append context to fields if also matches selector.
412
- // * Required for field group 'change_filed_type' append $tr to work
413
- if( $el !== false ) {
414
-
415
- $el.each(function(){
416
-
417
- if( $(this).is(selector) ) {
418
-
419
- $fields = $fields.add( $(this) );
420
-
421
- }
422
-
423
- });
424
-
425
- }
426
-
427
-
428
- // filter out fields
429
- if( !all ) {
430
-
431
- // remove clone fields
432
- $fields = $fields.not('.acf-clone .acf-field');
433
-
434
-
435
- // filter
436
- $fields = acf.apply_filters('get_fields', $fields);
437
-
438
- }
439
-
440
-
441
- //console.log('get_fields(%o, %o, %o) %o', s, $el, all, $fields);
442
- //console.log('acf.get_fields(%o):', this.get_selector(s) );
443
- //console.timeEnd("acf.get_fields");
444
-
445
-
446
- // return
447
- return $fields;
448
-
449
- },
450
-
451
-
452
- /*
453
- * get_field
454
- *
455
- * This function will return a jQuery selection based on a field key
456
- *
457
- * @type function
458
- * @date 8/09/2014
459
- * @since 5.0.0
460
- *
461
- * @param field_key (string)
462
- * @param $el (jQuery) element to look within
463
- * @return $field (jQuery)
464
- */
465
-
466
- get_field: function( s, $el ){
467
-
468
- // defaults
469
- s = s || '';
470
- $el = $el || false;
471
-
472
-
473
- // get fields
474
- var $fields = this.get_fields(s, $el, true);
475
-
476
-
477
- // check if exists
478
- if( $fields.exists() ) {
479
-
480
- return $fields.first();
481
-
482
- }
483
-
484
-
485
- // return
486
- return false;
487
-
488
- },
489
-
490
-
491
- /*
492
- * get_closest_field
493
- *
494
- * This function will return the closest parent field
495
- *
496
- * @type function
497
- * @date 8/09/2014
498
- * @since 5.0.0
499
- *
500
- * @param $el (jQuery) element to start from
501
- * @param args (object)
502
- * @return $field (jQuery)
503
- */
504
-
505
- get_closest_field : function( $el, s ){
506
-
507
- // defaults
508
- s = s || '';
509
-
510
-
511
- // return
512
- return $el.closest( this.get_selector(s) );
513
-
514
- },
515
-
516
-
517
- /*
518
- * get_field_wrap
519
- *
520
- * This function will return the closest parent field
521
- *
522
- * @type function
523
- * @date 8/09/2014
524
- * @since 5.0.0
525
- *
526
- * @param $el (jQuery) element to start from
527
- * @return $field (jQuery)
528
- */
529
-
530
- get_field_wrap: function( $el ){
531
-
532
- return $el.closest( this.get_selector() );
533
-
534
- },
535
-
536
-
537
- /*
538
- * get_field_key
539
- *
540
- * This function will return the field's key
541
- *
542
- * @type function
543
- * @date 8/09/2014
544
- * @since 5.0.0
545
- *
546
- * @param $field (jQuery)
547
- * @return (string)
548
- */
549
-
550
- get_field_key: function( $field ){
551
-
552
- return $field.data('key');
553
-
554
- },
555
-
556
-
557
- /*
558
- * get_field_type
559
- *
560
- * This function will return the field's type
561
- *
562
- * @type function
563
- * @date 8/09/2014
564
- * @since 5.0.0
565
- *
566
- * @param $field (jQuery)
567
- * @return (string)
568
- */
569
-
570
- get_field_type: function( $field ){
571
-
572
- return $field.data('type');
573
-
574
- },
575
-
576
-
577
- /*
578
- * get_data
579
- *
580
- * This function will return attribute data for a given elemnt
581
- *
582
- * @type function
583
- * @date 8/09/2014
584
- * @since 5.0.0
585
- *
586
- * @param $el (jQuery)
587
- * @param name (mixed)
588
- * @return (mixed)
589
- */
590
-
591
- get_data: function( $el, defaults ){
592
-
593
- // get data
594
- var data = $el.data();
595
-
596
-
597
- // defaults
598
- if( typeof defaults === 'object' ) {
599
-
600
- data = this.parse_args( data, defaults );
601
-
602
- }
603
-
604
-
605
- // return
606
- return data;
607
-
608
- },
609
-
610
-
611
- /*
612
- * get_uniqid
613
- *
614
- * This function will return a unique string ID
615
- *
616
- * @type function
617
- * @date 8/09/2014
618
- * @since 5.0.0
619
- *
620
- * @param prefix (string)
621
- * @param more_entropy (boolean)
622
- * @return (string)
623
- */
624
-
625
- get_uniqid : function( prefix, more_entropy ){
626
-
627
- // + original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
628
- // + revised by: Kankrelune (http://www.webfaktory.info/)
629
- // % note 1: Uses an internal counter (in php_js global) to avoid collision
630
- // * example 1: uniqid();
631
- // * returns 1: 'a30285b160c14'
632
- // * example 2: uniqid('foo');
633
- // * returns 2: 'fooa30285b1cd361'
634
- // * example 3: uniqid('bar', true);
635
- // * returns 3: 'bara20285b23dfd1.31879087'
636
- if (typeof prefix === 'undefined') {
637
- prefix = "";
638
- }
639
-
640
- var retId;
641
- var formatSeed = function (seed, reqWidth) {
642
- seed = parseInt(seed, 10).toString(16); // to hex str
643
- if (reqWidth < seed.length) { // so long we split
644
- return seed.slice(seed.length - reqWidth);
645
- }
646
- if (reqWidth > seed.length) { // so short we pad
647
- return Array(1 + (reqWidth - seed.length)).join('0') + seed;
648
- }
649
- return seed;
650
- };
651
-
652
- // BEGIN REDUNDANT
653
- if (!this.php_js) {
654
- this.php_js = {};
655
- }
656
- // END REDUNDANT
657
- if (!this.php_js.uniqidSeed) { // init seed with big random int
658
- this.php_js.uniqidSeed = Math.floor(Math.random() * 0x75bcd15);
659
- }
660
- this.php_js.uniqidSeed++;
661
-
662
- retId = prefix; // start with prefix, add current milliseconds hex string
663
- retId += formatSeed(parseInt(new Date().getTime() / 1000, 10), 8);
664
- retId += formatSeed(this.php_js.uniqidSeed, 5); // add seed hex string
665
- if (more_entropy) {
666
- // for more entropy we add a float lower to 10
667
- retId += (Math.random() * 10).toFixed(8).toString();
668
- }
669
-
670
- return retId;
671
-
672
- },
673
-
674
-
675
- /*
676
- * serialize_form
677
- *
678
- * This function will create an object of data containing all form inputs within an element
679
- *
680
- * @type function
681
- * @date 8/09/2014
682
- * @since 5.0.0
683
- *
684
- * @param $el (jQuery selection)
685
- * @return $post_id (int)
686
- */
687
-
688
- serialize_form: function(){
689
-
690
- return this.serialize.apply( this, arguments );
691
-
692
- },
693
-
694
- serialize: function( $el, prefix ){
695
-
696
- // defaults
697
- prefix = prefix || '';
698
-
699
-
700
- // vars
701
- var data = {};
702
- var names = {};
703
- var values = $el.find('select, textarea, input').serializeArray();
704
-
705
-
706
- // populate data
707
- $.each( values, function( i, pair ) {
708
-
709
- // vars
710
- var name = pair.name;
711
- var value = pair.value;
712
-
713
-
714
- // prefix
715
- if( prefix ) {
716
-
717
- // bail early if does not contain
718
- if( name.indexOf(prefix) !== 0 ) return;
719
-
720
-
721
- // remove prefix
722
- name = name.slice(prefix.length);
723
-
724
-
725
- // name must not start as array piece
726
- if( name.slice(0, 1) == '[' ) {
727
-
728
- name = name.slice(1).replace(']', '');
729
-
730
- }
731
-
732
- }
733
-
734
-
735
- // initiate name
736
- if( name.slice(-2) === '[]' ) {
737
-
738
- // remove []
739
- name = name.slice(0, -2);
740
-
741
-
742
- // initiate counter
743
- if( typeof names[ name ] === 'undefined'){
744
-
745
- names[ name ] = -1;
746
-
747
- }
748
-
749
-
750
- // increase counter
751
- names[ name ]++;
752
-
753
-
754
- // add key
755
- name += '[' + names[ name ] +']';
756
- }
757
-
758
-
759
- // append to data
760
- data[ name ] = value;
761
-
762
- });
763
-
764
-
765
- //console.log('serialize', data);
766
-
767
-
768
- // return
769
- return data;
770
-
771
- },
772
-
773
- /*
774
- serialize: function( $el, prefix ){
775
-
776
- // defaults
777
- prefix = prefix || '';
778
-
779
-
780
- // vars
781
- var data = {};
782
- var $inputs = $el.find('select, textarea, input');
783
-
784
-
785
- // loop
786
- $inputs.each(function(){
787
-
788
- // vars
789
- var $el = $(this);
790
- var name = $el.attr('name');
791
- var val = $el.val();
792
-
793
-
794
- // is array
795
- var is_array = ( name.slice(-2) === '[]' );
796
- if( is_array ) {
797
- name = name.slice(0, -2);
798
- }
799
-
800
-
801
- // explode name
802
- var bits = name.split('[');
803
- var depth = bits.length;
804
-
805
-
806
- // loop
807
- for( var i = 0; i < depth; i++ ) {
808
-
809
- // vars
810
- var k = bits[i];
811
-
812
-
813
- // end
814
- if( i == depth-1 ) {
815
-
816
-
817
-
818
-
819
- // not end
820
- } else {
821
-
822
- // must be object
823
- if( typeof data[k] !== 'object' ) {
824
- data[k] = {};
825
- }
826
-
827
- }
828
-
829
-
830
- }
831
-
832
-
833
- bits.map(function( s ){ return s.replace(']', ''); })
834
-
835
-
836
- });
837
-
838
- },
839
- */
840
-
841
-
842
- /*
843
- * disable
844
- *
845
- * This function will disable an input
846
- *
847
- * @type function
848
- * @date 22/09/2016
849
- * @since 5.4.0
850
- *
851
- * @param $el (jQuery)
852
- * @param context (string)
853
- * @return n/a
854
- */
855
-
856
- disable: function( $input, context ){
857
-
858
- // defaults
859
- context = context || '';
860
-
861
-
862
- // bail early if is .acf-disabled
863
- if( $input.hasClass('acf-disabled') ) return false;
864
-
865
-
866
- // always disable input
867
- $input.prop('disabled', true);
868
-
869
-
870
- // context
871
- if( context ) {
872
-
873
- // vars
874
- var disabled = $input.data('acf_disabled') || [],
875
- i = disabled.indexOf(context);
876
-
877
-
878
- // append context if not found
879
- if( i < 0 ) {
880
-
881
- // append
882
- disabled.push( context );
883
-
884
-
885
- // update
886
- $input.data('acf_disabled', disabled);
887
-
888
- }
889
- }
890
-
891
-
892
- // return
893
- return true;
894
-
895
- },
896
-
897
-
898
- /*
899
- * enable
900
- *
901
- * This function will enable an input
902
- *
903
- * @type function
904
- * @date 22/09/2016
905
- * @since 5.4.0
906
- *
907
- * @param $el (jQuery)
908
- * @param context (string)
909
- * @return n/a
910
- */
911
-
912
- enable: function( $input, context ){
913
-
914
- // defaults
915
- context = context || '';
916
-
917
-
918
- // bail early if is .acf-disabled
919
- if( $input.hasClass('acf-disabled') ) return false;
920
-
921
-
922
- // vars
923
- var disabled = $input.data('acf_disabled') || [];
924
-
925
-
926
- // context
927
- if( context ) {
928
-
929
- // vars
930
- var i = disabled.indexOf(context);
931
-
932
-
933
- // remove context if found
934
- if( i > -1 ) {
935
-
936
- // delete
937
- disabled.splice(i, 1);
938
-
939
-
940
- // update
941
- $input.data('acf_disabled', disabled);
942
-
943
- }
944
- }
945
-
946
-
947
- // bail early if other disabled exist
948
- if( disabled.length ) return false;
949
-
950
-
951
- // enable input
952
- $input.prop('disabled', false);
953
-
954
-
955
- // return
956
- return true;
957
-
958
- },
959
-
960
-
961
- /*
962
- * disable_el
963
- *
964
- * This function will disable all inputs within an element
965
- *
966
- * @type function
967
- * @date 22/09/2016
968
- * @since 5.4.0
969
- *
970
- * @param $el (jQuery)
971
- * @param context (string)
972
- * @return na
973
- */
974
-
975
- disable_el: function( $el, context ) {
976
-
977
- // defaults
978
- context = context || '';
979
-
980
-
981
- // loop
982
- $el.find('select, textarea, input').each(function(){
983
-
984
- acf.disable( $(this), context );
985
-
986
- });
987
-
988
- },
989
-
990
- disable_form: function( $el, context ) {
991
-
992
- this.disable_el.apply( this, arguments );
993
-
994
- },
995
-
996
-
997
- /*
998
- * enable_el
999
- *
1000
- * This function will enable all inputs within an element
1001
- *
1002
- * @type function
1003
- * @date 22/09/2016
1004
- * @since 5.4.0
1005
- *
1006
- * @param $el (jQuery)
1007
- * @param context (string)
1008
- * @return na
1009
- */
1010
-
1011
- enable_el: function( $el, context ) {
1012
-
1013
- // defaults
1014
- context = context || '';
1015
-
1016
-
1017
- // loop
1018
- $el.find('select, textarea, input').each(function(){
1019
-
1020
- acf.enable( $(this), context );
1021
-
1022
- });
1023
-
1024
- },
1025
-
1026
- enable_form: function( $el, context ) {
1027
-
1028
- this.enable_el.apply( this, arguments );
1029
-
1030
- },
1031
-
1032
-
1033
- /*
1034
- * remove_tr
1035
- *
1036
- * This function will remove a tr element with animation
1037
- *
1038
- * @type function
1039
- * @date 8/09/2014
1040
- * @since 5.0.0
1041
- *
1042
- * @param $tr (jQuery selection)
1043
- * @param callback (function) runs on complete
1044
- * @return n/a
1045
- */
1046
-
1047
- remove_tr : function( $tr, callback ){
1048
-
1049
- // vars
1050
- var height = $tr.height(),
1051
- children = $tr.children().length;
1052
-
1053
-
1054
- // add class
1055
- $tr.addClass('acf-remove-element');
1056
-
1057
-
1058
- // after animation
1059
- setTimeout(function(){
1060
-
1061
- // remove class
1062
- $tr.removeClass('acf-remove-element');
1063
-
1064
-
1065
- // vars
1066
- $tr.html('<td style="padding:0; height:' + height + 'px" colspan="' + children + '"></td>');
1067
-
1068
-
1069
- $tr.children('td').animate({ height : 0}, 250, function(){
1070
-
1071
- $tr.remove();
1072
-
1073
- if( typeof(callback) == 'function' ) {
1074
-
1075
- callback();
1076
-
1077
- }
1078
-
1079
-
1080
- });
1081
-
1082
-
1083
- }, 250);
1084
-
1085
- },
1086
-
1087
-
1088
- /*
1089
- * remove_el
1090
- *
1091
- * This function will remove an element with animation
1092
- *
1093
- * @type function
1094
- * @date 8/09/2014
1095
- * @since 5.0.0
1096
- *
1097
- * @param $el (jQuery selection)
1098
- * @param callback (function) runs on complete
1099
- * @param end_height (int)
1100
- * @return n/a
1101
- */
1102
-
1103
- remove_el : function( $el, callback, end_height ){
1104
-
1105
- // defaults
1106
- end_height = end_height || 0;
1107
-
1108
-
1109
- // vars
1110
- var height = $el.height(),
1111
- width = $el.width(),
1112
- margin = $el.css('margin'),
1113
- outer_height = $el.outerHeight(true);
1114
-
1115
-
1116
- // action
1117
- acf.do_action('remove', $el);
1118
-
1119
-
1120
- // create wrap
1121
- $el.wrap('<div class="acf-temp-remove" style="height:' + outer_height + 'px"></div>');
1122
- var $wrap = $el.parent();
1123
-
1124
-
1125
- // set pos
1126
- $el.css({
1127
- height: height,
1128
- width: width,
1129
- margin: margin,
1130
- position: 'absolute'
1131
- });
1132
-
1133
-
1134
- // fade
1135
- setTimeout(function(){
1136
-
1137
- // aniamte
1138
- $wrap.css({
1139
- opacity: 0,
1140
- height: end_height
1141
- });
1142
-
1143
- }, 50);
1144
-
1145
-
1146
- // animate complete
1147
- setTimeout(function(){
1148
-
1149
- // remove wrap
1150
- $wrap.remove();
1151
-
1152
-
1153
- // callback
1154
- if( typeof(callback) == 'function' ) {
1155
- callback.apply(this, arguments);
1156
- }
1157
-
1158
- }, 301);
1159
-
1160
- },
1161
-
1162
-
1163
- /*
1164
- * isset
1165
- *
1166
- * This function will return true if an object key exists
1167
- *
1168
- * @type function
1169
- * @date 8/09/2014
1170
- * @since 5.0.0
1171
- *
1172
- * @param (object)
1173
- * @param key1 (string)
1174
- * @param key2 (string)
1175
- * @param ...
1176
- * @return (boolean)
1177
- */
1178
-
1179
- isset : function(){
1180
-
1181
- var a = arguments,
1182
- l = a.length,
1183
- c = null,
1184
- undef;
1185
-
1186
- if (l === 0) {
1187
- throw new Error('Empty isset');
1188
- }
1189
-
1190
- c = a[0];
1191
-
1192
- for (i = 1; i < l; i++) {
1193
-
1194
- if (a[i] === undef || c[ a[i] ] === undef) {
1195
- return false;
1196
- }
1197
-
1198
- c = c[ a[i] ];
1199
-
1200
- }
1201
-
1202
- return true;
1203
-
1204
- },
1205
-
1206
-
1207
- /*
1208
- * maybe_get
1209
- *
1210
- * This function will attempt to return a value and return null if not possible
1211
- *
1212
- * @type function
1213
- * @date 8/09/2014
1214
- * @since 5.0.0
1215
- *
1216
- * @param obj (object) the array to look within
1217
- * @param key (key) the array key to look for. Nested values may be found using '/'
1218
- * @param value (mixed) the value returned if not found
1219
- * @return (mixed)
1220
- */
1221
-
1222
- maybe_get: function( obj, key, value ){
1223
-
1224
- // default
1225
- if( typeof value == 'undefined' ) value = null;
1226
-
1227
-
1228
- // convert type to string and split
1229
- keys = String(key).split('.');
1230
-
1231
-
1232
- // loop through keys
1233
- for( var i in keys ) {
1234
-
1235
- // vars
1236
- var key = keys[i];
1237
-
1238
-
1239
- // bail ealry if not set
1240
- if( typeof obj[ key ] === 'undefined' ) {
1241
-
1242
- return value;
1243
-
1244
- }
1245
-
1246
-
1247
- // update obj
1248
- obj = obj[ key ];
1249
-
1250
- }
1251
-
1252
-
1253
- // return
1254
- return obj;
1255
-
1256
- },
1257
-
1258
-
1259
- /*
1260
- * open_popup
1261
- *
1262
- * This function will create and open a popup modal
1263
- *
1264
- * @type function
1265
- * @date 8/09/2014
1266
- * @since 5.0.0
1267
- *
1268
- * @param args (object)
1269
- * @return n/a
1270
- */
1271
-
1272
- open_popup : function( args ){
1273
-
1274
- // vars
1275
- $popup = $('body > #acf-popup');
1276
-
1277
-
1278
- // already exists?
1279
- if( $popup.exists() ) {
1280
-
1281
- return update_popup(args);
1282
-
1283
- }
1284
-
1285
-
1286
- // template
1287
- var tmpl = [
1288
- '<div id="acf-popup">',
1289
- '<div class="acf-popup-box acf-box">',
1290
- '<div class="title"><h3></h3><a href="#" class="acf-icon -cancel grey acf-close-popup"></a></div>',
1291
- '<div class="inner"></div>',
1292
- '<div class="loading"><i class="acf-loading"></i></div>',
1293
- '</div>',
1294
- '<div class="bg"></div>',
1295
- '</div>'
1296
- ].join('');
1297
-
1298
-
1299
- // append
1300
- $('body').append( tmpl );
1301
-
1302
-
1303
- $('#acf-popup').on('click', '.bg, .acf-close-popup', function( e ){
1304
-
1305
- e.preventDefault();
1306
-
1307
- acf.close_popup();
1308
-
1309
- });
1310
-
1311
-
1312
- // update
1313
- return this.update_popup(args);
1314
-
1315
- },
1316
-
1317
-
1318
- /*
1319
- * update_popup
1320
- *
1321
- * This function will update the content within a popup modal
1322
- *
1323
- * @type function
1324
- * @date 8/09/2014
1325
- * @since 5.0.0
1326
- *
1327
- * @param args (object)
1328
- * @return n/a
1329
- */
1330
-
1331
- update_popup : function( args ){
1332
-
1333
- // vars
1334
- $popup = $('#acf-popup');
1335
-
1336
-
1337
- // validate
1338
- if( !$popup.exists() )
1339
- {
1340
- return false
1341
- }
1342
-
1343
-
1344
- // defaults
1345
- args = $.extend({}, {
1346
- title : '',
1347
- content : '',
1348
- width : 0,
1349
- height : 0,
1350
- loading : false
1351
- }, args);
1352
-
1353
-
1354
- if( args.title ) {
1355
-
1356
- $popup.find('.title h3').html( args.title );
1357
-
1358
- }
1359
-
1360
- if( args.content ) {
1361
-
1362
- $inner = $popup.find('.inner:first');
1363
-
1364
- $inner.html( args.content );
1365
-
1366
- acf.do_action('append', $inner);
1367
-
1368
- // update height
1369
- $inner.attr('style', 'position: relative;');
1370
- args.height = $inner.outerHeight();
1371
- $inner.removeAttr('style');
1372
-
1373
- }
1374
-
1375
- if( args.width ) {
1376
-
1377
- $popup.find('.acf-popup-box').css({
1378
- 'width' : args.width,
1379
- 'margin-left' : 0 - (args.width / 2)
1380
- });
1381
-
1382
- }
1383
-
1384
- if( args.height ) {
1385
-
1386
- // add h3 height (44)
1387
- args.height += 44;
1388
-
1389
- $popup.find('.acf-popup-box').css({
1390
- 'height' : args.height,
1391
- 'margin-top' : 0 - (args.height / 2)
1392
- });
1393
-
1394
- }
1395
-
1396
-
1397
- if( args.loading ) {
1398
-
1399
- $popup.find('.loading').show();
1400
-
1401
- } else {
1402
-
1403
- $popup.find('.loading').hide();
1404
-
1405
- }
1406
-
1407
- return $popup;
1408
- },
1409
-
1410
-
1411
- /*
1412
- * close_popup
1413
- *
1414
- * This function will close and remove a popup modal
1415
- *
1416
- * @type function
1417
- * @date 8/09/2014
1418
- * @since 5.0.0
1419
- *
1420
- * @param n/a
1421
- * @return n/a
1422
- */
1423
-
1424
- close_popup : function(){
1425
-
1426
- // vars
1427
- $popup = $('#acf-popup');
1428
-
1429
-
1430
- // already exists?
1431
- if( $popup.exists() )
1432
- {
1433
- $popup.remove();
1434
- }
1435
-
1436
- },
1437
-
1438
-
1439
- /*
1440
- * update_user_setting
1441
- *
1442
- * This function will send an AJAX request to update a user setting
1443
- *
1444
- * @type function
1445
- * @date 8/09/2014
1446
- * @since 5.0.0
1447
- *
1448
- * @param $post_id (int)
1449
- * @return $post_id (int)
1450
- */
1451
-
1452
- update_user_setting : function( name, value ) {
1453
-
1454
- // ajax
1455
- $.ajax({
1456
- url : acf.get('ajaxurl'),
1457
- dataType : 'html',
1458
- type : 'post',
1459
- data : acf.prepare_for_ajax({
1460
- 'action' : 'acf/update_user_setting',
1461
- 'name' : name,
1462
- 'value' : value
1463
- })
1464
- });
1465
-
1466
- },
1467
-
1468
-
1469
- /*
1470
- * prepare_for_ajax
1471
- *
1472
- * This function will prepare data for an AJAX request
1473
- *
1474
- * @type function
1475
- * @date 8/09/2014
1476
- * @since 5.0.0
1477
- *
1478
- * @param args (object)
1479
- * @return args
1480
- */
1481
-
1482
- prepare_for_ajax : function( args ) {
1483
-
1484
- // vars
1485
- var data = {
1486
- nonce : acf.get('nonce'),
1487
- post_id : acf.get('post_id')
1488
- };
1489
-
1490
-
1491
- // $.ajax() expects all args to be 'non-nested'
1492
- $.each(args, function(k,v){
1493
-
1494
- // object
1495
- if( $.isPlainObject(v) && !$.isEmptyObject(v) ) {
1496
-
1497
- // loop
1498
- $.each(v, function(k2,v2){
1499
-
1500
- // convert string
1501
- k2 = k2 + '';
1502
-
1503
-
1504
- // vars
1505
- var i = k2.indexOf('[');
1506
-
1507
-
1508
- // starts with [
1509
- if( i == 0 ) {
1510
-
1511
- k2 = k + k2;
1512
-
1513
- // contains [
1514
- } else if( i > 0 ) {
1515
-
1516
- k2 = k + '[' + k2.slice(0, i) + ']' + k2.slice(i);
1517
-
1518
- // no [
1519
- } else {
1520
-
1521
- k2 = k + '[' + k2 + ']';
1522
-
1523
- }
1524
-
1525
-
1526
- // append
1527
- data[k2] = v2;
1528
-
1529
- });
1530
-
1531
- // else
1532
- } else {
1533
-
1534
- data[k] = v;
1535
-
1536
- }
1537
-
1538
- });
1539
-
1540
-
1541
- // filter for 3rd party customization
1542
- data = acf.apply_filters('prepare_for_ajax', data);
1543
-
1544
-
1545
- //console.log( 'prepare_for_ajax', data );
1546
-
1547
-
1548
- // return
1549
- return data;
1550
-
1551
- },
1552
-
1553
-
1554
- /*
1555
- * is_ajax_success
1556
- *
1557
- * This function will return true for a successful WP AJAX response
1558
- *
1559
- * @type function
1560
- * @date 8/09/2014
1561
- * @since 5.0.0
1562
- *
1563
- * @param json (object)
1564
- * @return (boolean)
1565
- */
1566
-
1567
- is_ajax_success : function( json ) {
1568
-
1569
- if( json && json.success ) {
1570
-
1571
- return true;
1572
-
1573
- }
1574
-
1575
- return false;
1576
-
1577
- },
1578
-
1579
-
1580
- /*
1581
- * get_ajax_message
1582
- *
1583
- * This function will return an object containing error/message information
1584
- *
1585
- * @type function
1586
- * @date 8/09/2014
1587
- * @since 5.0.0
1588
- *
1589
- * @param json (object)
1590
- * @return (boolean)
1591
- */
1592
-
1593
- get_ajax_message: function( json ) {
1594
-
1595
- // vars
1596
- var message = {
1597
- text: '',
1598
- type: 'error'
1599
- };
1600
-
1601
-
1602
- // bail early if no json
1603
- if( !json ) {
1604
-
1605
- return message;
1606
-
1607
- }
1608
-
1609
-
1610
- // PHP error (too may themes will have warnings / errors. Don't show these in ACF taxonomy popup)
1611
- /*
1612
- if( typeof json === 'string' ) {
1613
-
1614
- message.text = json;
1615
- return message;
1616
-
1617
- }
1618
- */
1619
-
1620
-
1621
- // success
1622
- if( json.success ) {
1623
-
1624
- message.type = 'success';
1625
-
1626
- }
1627
-
1628
-
1629
- // message
1630
- if( json.data && json.data.message ) {
1631
-
1632
- message.text = json.data.message;
1633
-
1634
- }
1635
-
1636
-
1637
- // error
1638
- if( json.data && json.data.error ) {
1639
-
1640
- message.text = json.data.error;
1641
-
1642
- }
1643
-
1644
-
1645
- // return
1646
- return message;
1647
-
1648
- },
1649
-
1650
-
1651
- /*
1652
- * is_in_view
1653
- *
1654
- * This function will return true if a jQuery element is visible in browser
1655
- *
1656
- * @type function
1657
- * @date 8/09/2014
1658
- * @since 5.0.0
1659
- *
1660
- * @param $el (jQuery)
1661
- * @return (boolean)
1662
- */
1663
-
1664
- is_in_view: function( $el ) {
1665
-
1666
- // vars
1667
- var elemTop = $el.offset().top,
1668
- elemBottom = elemTop + $el.height();
1669
-
1670
-
1671
- // bail early if hidden
1672
- if( elemTop === elemBottom ) {
1673
-
1674
- return false;
1675
-
1676
- }
1677
-
1678
-
1679
- // more vars
1680
- var docViewTop = $(window).scrollTop(),
1681
- docViewBottom = docViewTop + $(window).height();
1682
-
1683
-
1684
- // return
1685
- return ((elemBottom <= docViewBottom) && (elemTop >= docViewTop));
1686
-
1687
- },
1688
-
1689
-
1690
- /*
1691
- * val
1692
- *
1693
- * This function will update an elements value and trigger the change event if different
1694
- *
1695
- * @type function
1696
- * @date 16/10/2014
1697
- * @since 5.0.9
1698
- *
1699
- * @param $el (jQuery)
1700
- * @param val (mixed)
1701
- * @return n/a
1702
- */
1703
-
1704
- val: function( $el, val ){
1705
-
1706
- // vars
1707
- var orig = $el.val();
1708
-
1709
-
1710
- // update value
1711
- $el.val( val );
1712
-
1713
-
1714
- // trigger change
1715
- if( val != orig ) {
1716
-
1717
- $el.trigger('change');
1718
-
1719
- }
1720
-
1721
- },
1722
-
1723
-
1724
- /*
1725
- * str_replace
1726
- *
1727
- * This function will perform a str replace similar to php function str_replace
1728
- *
1729
- * @type function
1730
- * @date 1/05/2015
1731
- * @since 5.2.3
1732
- *
1733
- * @param $search (string)
1734
- * @param $replace (string)
1735
- * @param $subject (string)
1736
- * @return (string)
1737
- */
1738
-
1739
- str_replace: function( search, replace, subject ) {
1740
-
1741
- return subject.split(search).join(replace);
1742
-
1743
- },
1744
-
1745
-
1746
- /*
1747
- * str_sanitize
1748
- *
1749
- * description
1750
- *
1751
- * @type function
1752
- * @date 4/06/2015
1753
- * @since 5.2.3
1754
- *
1755
- * @param $post_id (int)
1756
- * @return $post_id (int)
1757
- */
1758
-
1759
- str_sanitize: function( string ) {
1760
-
1761
- // chars (https://jsperf.com/replace-foreign-characters)
1762
- var map = {
1763
- "À": "A",
1764
- "Á": "A",
1765
- "Â": "A",
1766
- "Ã": "A",
1767
- "Ä": "A",
1768
- "Å": "A",
1769
- "Æ": "AE",
1770
- "Ç": "C",
1771
- "È": "E",
1772
- "É": "E",
1773
- "Ê": "E",
1774
- "Ë": "E",
1775
- "Ì": "I",
1776
- "Í": "I",
1777
- "Î": "I",
1778
- "Ï": "I",
1779
- "Ð": "D",
1780
- "Ñ": "N",
1781
- "Ò": "O",
1782
- "Ó": "O",
1783
- "Ô": "O",
1784
- "Õ": "O",
1785
- "Ö": "O",
1786
- "Ø": "O",
1787
- "Ù": "U",
1788
- "Ú": "U",
1789
- "Û": "U",
1790
- "Ü": "U",
1791
- "Ý": "Y",
1792
- "ß": "s",
1793
- "à": "a",
1794
- "á": "a",
1795
- "â": "a",
1796
- "ã": "a",
1797
- "ä": "a",
1798
- "å": "a",
1799
- "æ": "ae",
1800
- "ç": "c",
1801
- "è": "e",
1802
- "é": "e",
1803
- "ê": "e",
1804
- "ë": "e",
1805
- "ì": "i",
1806
- "í": "i",
1807
- "î": "i",
1808
- "ï": "i",
1809
- "ñ": "n",
1810
- "ò": "o",
1811
- "ó": "o",
1812
- "ô": "o",
1813
- "õ": "o",
1814
- "ö": "o",
1815
- "ø": "o",
1816
- "ù": "u",
1817
- "ú": "u",
1818
- "û": "u",
1819
- "ü": "u",
1820
- "ý": "y",
1821
- "ÿ": "y",
1822
- "Ā": "A",
1823
- "ā": "a",
1824
- "Ă": "A",
1825
- "ă": "a",
1826
- "Ą": "A",
1827
- "ą": "a",
1828
- "Ć": "C",
1829
- "ć": "c",
1830
- "Ĉ": "C",
1831
- "ĉ": "c",
1832
- "Ċ": "C",
1833
- "ċ": "c",
1834
- "Č": "C",
1835
- "č": "c",
1836
- "Ď": "D",
1837
- "ď": "d",
1838
- "Đ": "D",
1839
- "đ": "d",
1840
- "Ē": "E",
1841
- "ē": "e",
1842
- "Ĕ": "E",
1843
- "ĕ": "e",
1844
- "Ė": "E",
1845
- "ė": "e",
1846
- "Ę": "E",
1847
- "ę": "e",
1848
- "Ě": "E",
1849
- "ě": "e",
1850
- "Ĝ": "G",
1851
- "ĝ": "g",
1852
- "Ğ": "G",
1853
- "ğ": "g",
1854
- "Ġ": "G",
1855
- "ġ": "g",
1856
- "Ģ": "G",
1857
- "ģ": "g",
1858
- "Ĥ": "H",
1859
- "ĥ": "h",
1860
- "Ħ": "H",
1861
- "ħ": "h",
1862
- "Ĩ": "I",
1863
- "ĩ": "i",
1864
- "Ī": "I",
1865
- "ī": "i",
1866
- "Ĭ": "I",
1867
- "ĭ": "i",
1868
- "Į": "I",
1869
- "į": "i",
1870
- "İ": "I",
1871
- "ı": "i",
1872
- "IJ": "IJ",
1873
- "ij": "ij",
1874
- "Ĵ": "J",
1875
- "ĵ": "j",
1876
- "Ķ": "K",
1877
- "ķ": "k",
1878
- "Ĺ": "L",
1879
- "ĺ": "l",
1880
- "Ļ": "L",
1881
- "ļ": "l",
1882
- "Ľ": "L",
1883
- "ľ": "l",
1884
- "Ŀ": "L",
1885
- "ŀ": "l",
1886
- "Ł": "l",
1887
- "ł": "l",
1888
- "Ń": "N",
1889
- "ń": "n",
1890
- "Ņ": "N",
1891
- "ņ": "n",
1892
- "Ň": "N",
1893
- "ň": "n",
1894
- "ʼn": "n",
1895
- "Ō": "O",
1896
- "ō": "o",
1897
- "Ŏ": "O",
1898
- "ŏ": "o",
1899
- "Ő": "O",
1900
- "ő": "o",
1901
- "Œ": "OE",
1902
- "œ": "oe",
1903
- "Ŕ": "R",
1904
- "ŕ": "r",
1905
- "Ŗ": "R",
1906
- "ŗ": "r",
1907
- "Ř": "R",
1908
- "ř": "r",
1909
- "Ś": "S",
1910
- "ś": "s",
1911
- "Ŝ": "S",
1912
- "ŝ": "s",
1913
- "Ş": "S",
1914
- "ş": "s",
1915
- "Š": "S",
1916
- "š": "s",
1917
- "Ţ": "T",
1918
- "ţ": "t",
1919
- "Ť": "T",
1920
- "ť": "t",
1921
- "Ŧ": "T",
1922
- "ŧ": "t",
1923
- "Ũ": "U",
1924
- "ũ": "u",
1925
- "Ū": "U",
1926
- "ū": "u",
1927
- "Ŭ": "U",
1928
- "ŭ": "u",
1929
- "Ů": "U",
1930
- "ů": "u",
1931
- "Ű": "U",
1932
- "ű": "u",
1933
- "Ų": "U",
1934
- "ų": "u",
1935
- "Ŵ": "W",
1936
- "ŵ": "w",
1937
- "Ŷ": "Y",
1938
- "ŷ": "y",
1939
- "Ÿ": "Y",
1940
- "Ź": "Z",
1941
- "ź": "z",
1942
- "Ż": "Z",
1943
- "ż": "z",
1944
- "Ž": "Z",
1945
- "ž": "z",
1946
- "ſ": "s",
1947
- "ƒ": "f",
1948
- "Ơ": "O",
1949
- "ơ": "o",
1950
- "Ư": "U",
1951
- "ư": "u",
1952
- "Ǎ": "A",
1953
- "ǎ": "a",
1954
- "Ǐ": "I",
1955
- "ǐ": "i",
1956
- "Ǒ": "O",
1957
- "ǒ": "o",
1958
- "Ǔ": "U",
1959
- "ǔ": "u",
1960
- "Ǖ": "U",
1961
- "ǖ": "u",
1962
- "Ǘ": "U",
1963
- "ǘ": "u",
1964
- "Ǚ": "U",
1965
- "ǚ": "u",
1966
- "Ǜ": "U",
1967
- "ǜ": "u",
1968
- "Ǻ": "A",
1969
- "ǻ": "a",
1970
- "Ǽ": "AE",
1971
- "ǽ": "ae",
1972
- "Ǿ": "O",
1973
- "ǿ": "o",
1974
-
1975
- // extra
1976
- ' ': '_',
1977
- '\'': '',
1978
- '?': '',
1979
- '/': '',
1980
- '\\': '',
1981
- '.': '',
1982
- ',': '',
1983
- '`': '',
1984
- '>': '',
1985
- '<': '',
1986
- '"': '',
1987
- '[': '',
1988
- ']': '',
1989
- '|': '',
1990
- '{': '',
1991
- '}': '',
1992
- '(': '',
1993
- ')': ''
1994
- };
1995
-
1996
-
1997
- // vars
1998
- var regexp = /\W/g,
1999
- mapping = function (c) { return (typeof map[c] !== 'undefined') ? map[c] : c; };
2000
-
2001
-
2002
- // replace
2003
- string = string.replace(regexp, mapping);
2004
-
2005
-
2006
- // lower case
2007
- string = string.toLowerCase();
2008
-
2009
-
2010
- // return
2011
- return string;
2012
-
2013
- },
2014
-
2015
-
2016
- /*
2017
- * addslashes
2018
- *
2019
- * This function mimics the PHP addslashes function.
2020
- * Returns a string with backslashes before characters that need to be escaped.
2021
- *
2022
- * @type function
2023
- * @date 9/1/17
2024
- * @since 5.5.0
2025
- *
2026
- * @param text (string)
2027
- * @return (string)
2028
- */
2029
-
2030
- addslashes: function(text){
2031
-
2032
- return text.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
2033
-
2034
- },
2035
-
2036
-
2037
- /**
2038
- * esc_html
2039
- *
2040
- * This function will escape HTML characters for safe use
2041
- *
2042
- * @source https://stackoverflow.com/questions/24816/escaping-html-strings-with-jquery
2043
- * @date 20/9/17
2044
- * @since 5.6.3
2045
- *
2046
- * @param n/a
2047
- * @return n/a
2048
- */
2049
-
2050
- esc_html: function( string ){
2051
-
2052
- var entityMap = {
2053
- '&': '&amp;',
2054
- '<': '&lt;',
2055
- '>': '&gt;',
2056
- '"': '&quot;',
2057
- "'": '&#39;',
2058
- '/': '&#x2F;',
2059
- '`': '&#x60;',
2060
- '=': '&#x3D;'
2061
- };
2062
-
2063
- return String(string).replace(/[&<>"'`=\/]/g, function (s) {
2064
- return entityMap[s];
2065
- });
2066
-
2067
- },
2068
-
2069
-
2070
- /*
2071
- * render_select
2072
- *
2073
- * This function will update a select field with new choices
2074
- *
2075
- * @type function
2076
- * @date 8/04/2014
2077
- * @since 5.0.0
2078
- *
2079
- * @param $select
2080
- * @param choices
2081
- * @return n/a
2082
- */
2083
-
2084
- render_select: function( $select, choices ){
2085
-
2086
- // vars
2087
- var value = $select.val();
2088
-
2089
-
2090
- // clear choices
2091
- $select.html('');
2092
-
2093
-
2094
- // bail early if no choices
2095
- if( !choices ) {
2096
-
2097
- return;
2098
-
2099
- }
2100
-
2101
-
2102
- // populate choices
2103
- $.each(choices, function( i, item ){
2104
-
2105
- // vars
2106
- var $optgroup = $select;
2107
-
2108
-
2109
- // add group
2110
- if( item.group ) {
2111
-
2112
- $optgroup = $select.find('optgroup[label="' + item.group + '"]');
2113
-
2114
- if( !$optgroup.exists() ) {
2115
-
2116
- $optgroup = $('<optgroup label="' + item.group + '"></optgroup>');
2117
-
2118
- $select.append( $optgroup );
2119
-
2120
- }
2121
-
2122
- }
2123
-
2124
-
2125
- // append select
2126
- $optgroup.append( '<option value="' + item.value + '">' + acf.esc_html(item.label) + '</option>' );
2127
-
2128
-
2129
- // selectedIndex
2130
- if( value == item.value ) {
2131
-
2132
- $select.prop('selectedIndex', i);
2133
-
2134
- }
2135
-
2136
- });
2137
-
2138
- },
2139
-
2140
-
2141
- /*
2142
- * duplicate
2143
- *
2144
- * This function will duplicate and return an element
2145
- *
2146
- * @type function
2147
- * @date 22/08/2015
2148
- * @since 5.2.3
2149
- *
2150
- * @param $el (jQuery) object to be duplicated
2151
- * @param attr (string) attrbute name where $el id can be found
2152
- * @return $el2 (jQuery)
2153
- */
2154
-
2155
- duplicate: function( args ){
2156
-
2157
- //console.time('duplicate');
2158
-
2159
-
2160
- // backwards compatibility
2161
- // - array of settings added in v5.4.6
2162
- if( typeof args.length !== 'undefined' ) args = { $el: args };
2163
-
2164
-
2165
- // defaults
2166
- args = acf.parse_args(args, {
2167
- $el: false,
2168
- search: '',
2169
- replace: '',
2170
- before: function( $el ){},
2171
- after: function( $el, $el2 ){},
2172
- append: function( $el, $el2 ){ $el.after( $el2 ); }
2173
- });
2174
-
2175
-
2176
- // vars
2177
- var $el = args.$el,
2178
- $el2;
2179
-
2180
-
2181
- // search
2182
- if( !args.search ) args.search = $el.attr('data-id');
2183
-
2184
-
2185
- // replace
2186
- if( !args.replace ) args.replace = acf.get_uniqid();
2187
-
2188
-
2189
- // before
2190
- // - allow acf to modify DOM
2191
- // - fixes bug where select field option is not selected
2192
- args.before.apply( this, [$el] );
2193
- acf.do_action('before_duplicate', $el);
2194
-
2195
-
2196
- // clone
2197
- var $el2 = $el.clone();
2198
-
2199
-
2200
- // remove acf-clone (may be a clone)
2201
- $el2.removeClass('acf-clone');
2202
-
2203
-
2204
- // remove JS functionality
2205
- acf.do_action('remove', $el2);
2206
-
2207
-
2208
- // find / replace
2209
- if( args.search ) {
2210
-
2211
- // replace data
2212
- $el2.attr('data-id', args.replace);
2213
-
2214
-
2215
- // replace ids
2216
- $el2.find('[id*="' + args.search + '"]').each(function(){
2217
-
2218
- $(this).attr('id', $(this).attr('id').replace(args.search, args.replace) );
2219
-
2220
- });
2221
-
2222
-
2223
- // replace names
2224
- $el2.find('[name*="' + args.search + '"]').each(function(){
2225
-
2226
- $(this).attr('name', $(this).attr('name').replace(args.search, args.replace) );
2227
-
2228
- });
2229
-
2230
-
2231
- // replace label for
2232
- $el2.find('label[for*="' + args.search + '"]').each(function(){
2233
-
2234
- $(this).attr('for', $(this).attr('for').replace(args.search, args.replace) );
2235
-
2236
- });
2237
-
2238
- }
2239
-
2240
-
2241
- // remove ui-sortable
2242
- $el2.find('.ui-sortable').removeClass('ui-sortable');
2243
-
2244
-
2245
- // after
2246
- // - allow acf to modify DOM
2247
- acf.do_action('after_duplicate', $el, $el2 );
2248
- args.after.apply( this, [$el, $el2] );
2249
-
2250
-
2251
- // append
2252
- args.append.apply( this, [$el, $el2] );
2253
-
2254
-
2255
- // add JS functionality
2256
- // - allow element to be moved into a visible position before fire action
2257
- setTimeout(function(){
2258
-
2259
- acf.do_action('append', $el2);
2260
-
2261
- }, 1);
2262
-
2263
-
2264
- //console.timeEnd('duplicate');
2265
-
2266
-
2267
- // return
2268
- return $el2;
2269
-
2270
- },
2271
-
2272
- decode: function( string ){
2273
-
2274
- return $('<textarea/>').html( string ).text();
2275
-
2276
- },
2277
-
2278
-
2279
- /*
2280
- * parse_args
2281
- *
2282
- * This function will merge together defaults and args much like the WP wp_parse_args function
2283
- *
2284
- * @type function
2285
- * @date 11/04/2016
2286
- * @since 5.3.8
2287
- *
2288
- * @param args (object)
2289
- * @param defaults (object)
2290
- * @return args
2291
- */
2292
-
2293
- parse_args: function( args, defaults ) {
2294
-
2295
- // defaults
2296
- if( typeof args !== 'object' ) args = {};
2297
- if( typeof defaults !== 'object' ) defaults = {};
2298
-
2299
-
2300
- // return
2301
- return $.extend({}, defaults, args);
2302
-
2303
- },
2304
-
2305
-
2306
- /*
2307
- * enqueue_script
2308
- *
2309
- * This function will append a script to the page
2310
- *
2311
- * @source https://www.nczonline.net/blog/2009/06/23/loading-javascript-without-blocking/
2312
- * @type function
2313
- * @date 27/08/2016
2314
- * @since 5.4.0
2315
- *
2316
- * @param url (string)
2317
- * @param callback (function)
2318
- * @return na
2319
- */
2320
-
2321
- enqueue_script: function( url, callback ) {
2322
-
2323
- // vars
2324
- var script = document.createElement('script');
2325
-
2326
-
2327
- // atts
2328
- script.type = "text/javascript";
2329
- script.src = url;
2330
- script.async = true;
2331
-
2332
-
2333
- // ie
2334
- if( script.readyState ) {
2335
-
2336
- script.onreadystatechange = function(){
2337
-
2338
- if( script.readyState == 'loaded' || script.readyState == 'complete' ){
2339
-
2340
- script.onreadystatechange = null;
2341
- callback();
2342
-
2343
- }
2344
-
2345
- };
2346
-
2347
- // normal browsers
2348
- } else {
2349
-
2350
- script.onload = function(){
2351
- callback();
2352
- };
2353
-
2354
- }
2355
-
2356
-
2357
- // append
2358
- document.body.appendChild(script);
2359
-
2360
- }
2361
-
2362
- };
2363
-
2364
-
2365
- /*
2366
- * acf.model
2367
- *
2368
- * This model acts as a scafold for action.event driven modules
2369
- *
2370
- * @type object
2371
- * @date 8/09/2014
2372
- * @since 5.0.0
2373
- *
2374
- * @param (object)
2375
- * @return (object)
2376
- */
2377
-
2378
- acf.model = {
2379
-
2380
- // vars
2381
- actions: {},
2382
- filters: {},
2383
- events: {},
2384
-
2385
- extend: function( args ){
2386
-
2387
- // extend
2388
- var model = $.extend( {}, this, args );
2389
-
2390
-
2391
- // setup actions
2392
- $.each(model.actions, function( name, callback ){
2393
-
2394
- model._add_action( name, callback );
2395
-
2396
- });
2397
-
2398
-
2399
- // setup filters
2400
- $.each(model.filters, function( name, callback ){
2401
-
2402
- model._add_filter( name, callback );
2403
-
2404
- });
2405
-
2406
-
2407
- // setup events
2408
- $.each(model.events, function( name, callback ){
2409
-
2410
- model._add_event( name, callback );
2411
-
2412
- });
2413
-
2414
-
2415
- // return
2416
- return model;
2417
-
2418
- },
2419
-
2420
- _add_action: function( name, callback ) {
2421
-
2422
- // split
2423
- var model = this,
2424
- data = name.split(' ');
2425
-
2426
-
2427
- // add missing priority
2428
- var name = data[0] || '',
2429
- priority = data[1] || 10;
2430
-
2431
-
2432
- // add action
2433
- acf.add_action(name, model[ callback ], priority, model);
2434
-
2435
- },
2436
-
2437
- _add_filter: function( name, callback ) {
2438
-
2439
- // split
2440
- var model = this,
2441
- data = name.split(' ');
2442
-
2443
-
2444
- // add missing priority
2445
- var name = data[0] || '',
2446
- priority = data[1] || 10;
2447
-
2448
-
2449
- // add action
2450
- acf.add_filter(name, model[ callback ], priority, model);
2451
-
2452
- },
2453
-
2454
- _add_event: function( name, callback ) {
2455
-
2456
- // vars
2457
- var model = this,
2458
- i = name.indexOf(' '),
2459
- event = (i > 0) ? name.substr(0,i) : name,
2460
- selector = (i > 0) ? name.substr(i+1) : '';
2461
-
2462
-
2463
- // event
2464
- var fn = function( e ){
2465
-
2466
- // append $el to event object
2467
- e.$el = $(this);
2468
-
2469
-
2470
- // event
2471
- if( typeof model.event === 'function' ) {
2472
- e = model.event( e );
2473
- }
2474
-
2475
-
2476
- // callback
2477
- model[ callback ].apply(model, arguments);
2478
-
2479
- };
2480
-
2481
-
2482
- // add event
2483
- if( selector ) {
2484
- $(document).on(event, selector, fn);
2485
- } else {
2486
- $(document).on(event, fn);
2487
- }
2488
-
2489
- },
2490
-
2491
- get: function( name, value ){
2492
-
2493
- // defaults
2494
- value = value || null;
2495
-
2496
-
2497
- // get
2498
- if( typeof this[ name ] !== 'undefined' ) {
2499
-
2500
- value = this[ name ];
2501
-
2502
- }
2503
-
2504
-
2505
- // return
2506
- return value;
2507
-
2508
- },
2509
-
2510
-
2511
- set: function( name, value ){
2512
-
2513
- // set
2514
- this[ name ] = value;
2515
-
2516
-
2517
- // function for 3rd party
2518
- if( typeof this[ '_set_' + name ] === 'function' ) {
2519
-
2520
- this[ '_set_' + name ].apply(this);
2521
-
2522
- }
2523
-
2524
-
2525
- // return for chaining
2526
- return this;
2527
-
2528
- }
2529
-
2530
- };
2531
-
2532
-
2533
- /*
2534
- * field
2535
- *
2536
- * This model sets up many of the field's interactions
2537
- *
2538
- * @type function
2539
- * @date 21/02/2014
2540
- * @since 3.5.1
2541
- *
2542
- * @param n/a
2543
- * @return n/a
2544
- */
2545
-
2546
- acf.field = acf.model.extend({
2547
-
2548
- // vars
2549
- type: '',
2550
- o: {},
2551
- $field: null,
2552
-
2553
- _add_action: function( name, callback ) {
2554
-
2555
- // vars
2556
- var model = this;
2557
-
2558
-
2559
- // update name
2560
- name = name + '_field/type=' + model.type;
2561
-
2562
-
2563
- // add action
2564
- acf.add_action(name, function( $field ){
2565
-
2566
- // focus
2567
- model.set('$field', $field);
2568
-
2569
-
2570
- // callback
2571
- model[ callback ].apply(model, arguments);
2572
-
2573
- });
2574
-
2575
- },
2576
-
2577
- _add_filter: function( name, callback ) {
2578
-
2579
- // vars
2580
- var model = this;
2581
-
2582
-
2583
- // update name
2584
- name = name + '_field/type=' + model.type;
2585
-
2586
-
2587
- // add action
2588
- acf.add_filter(name, function( $field ){
2589
-
2590
- // focus
2591
- model.set('$field', $field);
2592
-
2593
-
2594
- // callback
2595
- model[ callback ].apply(model, arguments);
2596
-
2597
- });
2598
-
2599
- },
2600
-
2601
- _add_event: function( name, callback ) {
2602
-
2603
- // vars
2604
- var model = this,
2605
- event = name.substr(0,name.indexOf(' ')),
2606
- selector = name.substr(name.indexOf(' ')+1),
2607
- context = acf.get_selector(model.type);
2608
-
2609
-
2610
- // add event
2611
- $(document).on(event, context + ' ' + selector, function( e ){
2612
-
2613
- // vars
2614
- var $el = $(this);
2615
- var $field = acf.get_closest_field( $el, model.type );
2616
-
2617
-
2618
- // bail early if no field
2619
- if( !$field.length ) return;
2620
-
2621
-
2622
- // focus
2623
- if( !$field.is(model.$field) ) {
2624
- model.set('$field', $field);
2625
- }
2626
-
2627
-
2628
- // append to event
2629
- e.$el = $el;
2630
- e.$field = $field;
2631
-
2632
-
2633
- // callback
2634
- model[ callback ].apply(model, [e]);
2635
-
2636
- });
2637
-
2638
- },
2639
-
2640
- _set_$field: function(){
2641
-
2642
- // callback
2643
- if( typeof this.focus === 'function' ) {
2644
- this.focus();
2645
- }
2646
-
2647
- },
2648
-
2649
- // depreciated
2650
- doFocus: function( $field ){
2651
-
2652
- return this.set('$field', $field);
2653
-
2654
- }
2655
-
2656
- });
2657
-
2658
-
2659
- /*
2660
- * field
2661
- *
2662
- * This model fires actions and filters for registered fields
2663
- *
2664
- * @type function
2665
- * @date 21/02/2014
2666
- * @since 3.5.1
2667
- *
2668
- * @param n/a
2669
- * @return n/a
2670
- */
2671
-
2672
- acf.fields = acf.model.extend({
2673
-
2674
- actions: {
2675
- 'prepare' : '_prepare',
2676
- 'prepare_field' : '_prepare_field',
2677
- 'ready' : '_ready',
2678
- 'ready_field' : '_ready_field',
2679
- 'append' : '_append',
2680
- 'append_field' : '_append_field',
2681
- 'load' : '_load',
2682
- 'load_field' : '_load_field',
2683
- 'remove' : '_remove',
2684
- 'remove_field' : '_remove_field',
2685
- 'sortstart' : '_sortstart',
2686
- 'sortstart_field' : '_sortstart_field',
2687
- 'sortstop' : '_sortstop',
2688
- 'sortstop_field' : '_sortstop_field',
2689
- 'show' : '_show',
2690
- 'show_field' : '_show_field',
2691
- 'hide' : '_hide',
2692
- 'hide_field' : '_hide_field'
2693
- },
2694
-
2695
- // prepare
2696
- _prepare: function( $el ){
2697
-
2698
- acf.get_fields('', $el).each(function(){
2699
-
2700
- acf.do_action('prepare_field', $(this));
2701
-
2702
- });
2703
-
2704
- },
2705
-
2706
- _prepare_field: function( $el ){
2707
-
2708
- acf.do_action('prepare_field/type=' + $el.data('type'), $el);
2709
-
2710
- },
2711
-
2712
- // ready
2713
- _ready: function( $el ){
2714
-
2715
- acf.get_fields('', $el).each(function(){
2716
-
2717
- acf.do_action('ready_field', $(this));
2718
-
2719
- });
2720
-
2721
- },
2722
-
2723
- _ready_field: function( $el ){
2724
-
2725
- acf.do_action('ready_field/type=' + $el.data('type'), $el);
2726
-
2727
- },
2728
-
2729
- // append
2730
- _append: function( $el ){
2731
-
2732
- acf.get_fields('', $el).each(function(){
2733
-
2734
- acf.do_action('append_field', $(this));
2735
-
2736
- });
2737
-
2738
- },
2739
-
2740
- _append_field: function( $el ){
2741
-
2742
- acf.do_action('append_field/type=' + $el.data('type'), $el);
2743
-
2744
- },
2745
-
2746
- // load
2747
- _load: function( $el ){
2748
-
2749
- acf.get_fields('', $el).each(function(){
2750
-
2751
- acf.do_action('load_field', $(this));
2752
-
2753
- });
2754
-
2755
- },
2756
-
2757
- _load_field: function( $el ){
2758
-
2759
- acf.do_action('load_field/type=' + $el.data('type'), $el);
2760
-
2761
- },
2762
-
2763
- // remove
2764
- _remove: function( $el ){
2765
-
2766
- acf.get_fields('', $el).each(function(){
2767
-
2768
- acf.do_action('remove_field', $(this));
2769
-
2770
- });
2771
-
2772
- },
2773
-
2774
- _remove_field: function( $el ){
2775
-
2776
- acf.do_action('remove_field/type=' + $el.data('type'), $el);
2777
-
2778
- },
2779
-
2780
- // sortstart
2781
- _sortstart: function( $el, $placeholder ){
2782
-
2783
- acf.get_fields('', $el).each(function(){
2784
-
2785
- acf.do_action('sortstart_field', $(this), $placeholder);
2786
-
2787
- });
2788
-
2789
- },
2790
-
2791
- _sortstart_field: function( $el, $placeholder ){
2792
-
2793
- acf.do_action('sortstart_field/type=' + $el.data('type'), $el, $placeholder);
2794
-
2795
- },
2796
-
2797
- // sortstop
2798
- _sortstop: function( $el, $placeholder ){
2799
-
2800
- acf.get_fields('', $el).each(function(){
2801
-
2802
- acf.do_action('sortstop_field', $(this), $placeholder);
2803
-
2804
- });
2805
-
2806
- },
2807
-
2808
- _sortstop_field: function( $el, $placeholder ){
2809
-
2810
- acf.do_action('sortstop_field/type=' + $el.data('type'), $el, $placeholder);
2811
-
2812
- },
2813
-
2814
-
2815
- // hide
2816
- _hide: function( $el, context ){
2817
-
2818
- acf.get_fields('', $el).each(function(){
2819
-
2820
- acf.do_action('hide_field', $(this), context);
2821
-
2822
- });
2823
-
2824
- },
2825
-
2826
- _hide_field: function( $el, context ){
2827
-
2828
- acf.do_action('hide_field/type=' + $el.data('type'), $el, context);
2829
-
2830
- },
2831
-
2832
- // show
2833
- _show: function( $el, context ){
2834
-
2835
- acf.get_fields('', $el).each(function(){
2836
-
2837
- acf.do_action('show_field', $(this), context);
2838
-
2839
- });
2840
-
2841
- },
2842
-
2843
- _show_field: function( $el, context ){
2844
-
2845
- acf.do_action('show_field/type=' + $el.data('type'), $el, context);
2846
-
2847
- }
2848
-
2849
- });
2850
-
2851
-
2852
- /*
2853
- * ready
2854
- *
2855
- * description
2856
- *
2857
- * @type function
2858
- * @date 19/02/2014
2859
- * @since 5.0.0
2860
- *
2861
- * @param $post_id (int)
2862
- * @return $post_id (int)
2863
- */
2864
-
2865
- $(document).ready(function(){
2866
-
2867
- // action for 3rd party customization
2868
- acf.do_action('ready', $('body'));
2869
-
2870
- });
2871
-
2872
-
2873
- /*
2874
- * load
2875
- *
2876
- * description
2877
- *
2878
- * @type function
2879
- * @date 19/02/2014
2880
- * @since 5.0.0
2881
- *
2882
- * @param $post_id (int)
2883
- * @return $post_id (int)
2884
- */
2885
-
2886
- $(window).on('load', function(){
2887
-
2888
- // action for 3rd party customization
2889
- acf.do_action('load', $('body'));
2890
-
2891
- });
2892
-
2893
-
2894
- /*
2895
- * layout
2896
- *
2897
- * This model handles the width layout for fields
2898
- *
2899
- * @type function
2900
- * @date 21/02/2014
2901
- * @since 3.5.1
2902
- *
2903
- * @param n/a
2904
- * @return n/a
2905
- */
2906
-
2907
- acf.layout = acf.model.extend({
2908
-
2909
- active: 0,
2910
-
2911
- actions: {
2912
- 'prepare 99': 'prepare',
2913
- 'refresh': 'refresh'
2914
- },
2915
-
2916
- prepare: function(){
2917
-
2918
- // vars
2919
- this.active = 1;
2920
-
2921
-
2922
- // render
2923
- this.refresh();
2924
-
2925
- },
2926
-
2927
- refresh: function( $el ){
2928
-
2929
- // bail early if not yet active
2930
- if( !this.active ) return;
2931
-
2932
-
2933
- // defaults
2934
- $el = $el || $('body');
2935
-
2936
-
2937
- // reference
2938
- var self = this;
2939
-
2940
-
2941
- // render
2942
- this.render_tables( $el );
2943
- this.render_groups( $el );
2944
-
2945
- },
2946
-
2947
- render_tables: function( $el ){
2948
-
2949
- // reference
2950
- var self = this;
2951
-
2952
-
2953
- // vars
2954
- var $tables = $el.find('.acf-table:visible');
2955
-
2956
-
2957
- // appent self if is tr
2958
- if( $el.is('tr') ) {
2959
-
2960
- $tables = $el.parent().parent();
2961
-
2962
- }
2963
-
2964
-
2965
- // loop
2966
- $tables.each(function(){
2967
-
2968
- self.render_table( $(this) );
2969
-
2970
- });
2971
-
2972
- },
2973
-
2974
- render_table: function( $table ){
2975
-
2976
- // vars
2977
- var $ths = $table.find('> thead th.acf-th'),
2978
- colspan = 1,
2979
- available_width = 100;
2980
-
2981
-
2982
- // bail early if no $ths
2983
- if( !$ths.exists() ) return;
2984
-
2985
-
2986
- // vars
2987
- var $trs = $table.find('> tbody > tr'),
2988
- $tds = $trs.find('> td.acf-field');
2989
-
2990
-
2991
- // remove clones if has visible rows
2992
- if( $trs.hasClass('acf-clone') && $trs.length > 1 ) {
2993
-
2994
- $tds = $trs.not('.acf-clone').find('> td.acf-field');
2995
-
2996
- }
2997
-
2998
-
2999
- // render th/td visibility
3000
- $ths.each(function(){
3001
-
3002
- // vars
3003
- var $th = $(this),
3004
- key = $th.attr('data-key'),
3005
- $td = $tds.filter('[data-key="'+key+'"]');
3006
-
3007
- // clear class
3008
- $td.removeClass('appear-empty');
3009
- $th.removeClass('hidden-by-conditional-logic');
3010
-
3011
-
3012
- // no td
3013
- if( !$td.exists() ) {
3014
-
3015
- // do nothing
3016
-
3017
- // if all td are hidden
3018
- } else if( $td.not('.hidden-by-conditional-logic').length == 0 ) {
3019
-
3020
- $th.addClass('hidden-by-conditional-logic');
3021
-
3022
- // if 1 or more td are visible
3023
- } else {
3024
-
3025
- $td.filter('.hidden-by-conditional-logic').addClass('appear-empty');
3026
-
3027
- }
3028
-
3029
- });
3030
-
3031
-
3032
-
3033
- // clear widths
3034
- $ths.css('width', 'auto');
3035
-
3036
-
3037
- // update $ths
3038
- $ths = $ths.not('.hidden-by-conditional-logic');
3039
-
3040
-
3041
- // set colspan
3042
- colspan = $ths.length;
3043
-
3044
-
3045
- // set custom widths first
3046
- $ths.filter('[data-width]').each(function(){
3047
-
3048
- // vars
3049
- var width = parseInt( $(this).attr('data-width') );
3050
-
3051
-
3052
- // remove from available
3053
- available_width -= width;
3054
-
3055
-
3056
- // set width
3057
- $(this).css('width', width + '%');
3058
-
3059
- });
3060
-
3061
-
3062
- // update $ths
3063
- $ths = $ths.not('[data-width]');
3064
-
3065
-
3066
- // set custom widths first
3067
- $ths.each(function(){
3068
-
3069
- // cal width
3070
- var width = available_width / $ths.length;
3071
-
3072
-
3073
- // set width
3074
- $(this).css('width', width + '%');
3075
-
3076
- });
3077
-
3078
-
3079
- // update colspan
3080
- $table.find('.acf-row .acf-field.-collapsed-target').removeAttr('colspan');
3081
- $table.find('.acf-row.-collapsed .acf-field.-collapsed-target').attr('colspan', colspan);
3082
-
3083
- },
3084
-
3085
- render_groups: function( $el ){
3086
-
3087
- // reference
3088
- var self = this;
3089
-
3090
-
3091
- // vars
3092
- var $groups = $el.find('.acf-fields:visible');
3093
-
3094
-
3095
- // appent self if is '.acf-fields'
3096
- if( $el && $el.is('.acf-fields') ) {
3097
-
3098
- $groups = $groups.add( $el );
3099
-
3100
- }
3101
-
3102
-
3103
- // loop
3104
- $groups.each(function(){
3105
-
3106
- self.render_group( $(this) );
3107
-
3108
- });
3109
-
3110
- },
3111
-
3112
- render_group: function( $el ){
3113
-
3114
- // vars
3115
- var $els = $(),
3116
- top = 0,
3117
- height = 0,
3118
- cell = -1;
3119
-
3120
-
3121
- // get fields
3122
- var $fields = $el.children('.acf-field[data-width]:visible');
3123
-
3124
-
3125
- // bail early if no fields
3126
- if( !$fields.exists() ) return;
3127
-
3128
-
3129
- // bail ealry if is .-left
3130
- if( $el.hasClass('-left') ) {
3131
-
3132
- $fields.removeAttr('data-width');
3133
- $fields.css('width', 'auto');
3134
- return;
3135
-
3136
- }
3137
-
3138
-
3139
- // reset fields
3140
- $fields.removeClass('acf-r0 acf-c0').css({'min-height': 0});
3141
-
3142
-
3143
- // loop
3144
- $fields.each(function( i ){
3145
-
3146
- // vars
3147
- var $el = $(this),
3148
- this_top = $el.position().top;
3149
-
3150
-
3151
- // set top
3152
- if( i == 0 ) top = this_top;
3153
-
3154
-
3155
- // detect new row
3156
- if( this_top != top ) {
3157
-
3158
- // set previous heights
3159
- $els.css({'min-height': (height+1)+'px'});
3160
-
3161
- // reset
3162
- $els = $();
3163
- top = $el.position().top; // don't use variable as this value may have changed due to min-height css
3164
- height = 0;
3165
- cell = -1;
3166
-
3167
- }
3168
-
3169
-
3170
- // increase
3171
- cell++;
3172
-
3173
-
3174
- // set height
3175
- height = ($el.outerHeight() > height) ? $el.outerHeight() : height;
3176
-
3177
-
3178
- // append
3179
- $els = $els.add( $el );
3180
-
3181
-
3182
- // add classes
3183
- if( this_top == 0 ) {
3184
-
3185
- $el.addClass('acf-r0');
3186
-
3187
- } else if( cell == 0 ) {
3188
-
3189
- $el.addClass('acf-c0');
3190
-
3191
- }
3192
-
3193
- });
3194
-
3195
-
3196
- // clean up
3197
- if( $els.exists() ) {
3198
-
3199
- $els.css({'min-height': (height+1)+'px'});
3200
-
3201
- }
3202
-
3203
- }
3204
-
3205
- });
3206
-
3207
-
3208
- /*
3209
- * Force revisions
3210
- *
3211
- * description
3212
- *
3213
- * @type function
3214
- * @date 19/02/2014
3215
- * @since 5.0.0
3216
- *
3217
- * @param $post_id (int)
3218
- * @return $post_id (int)
3219
- */
3220
-
3221
- $(document).on('change', '.acf-field input, .acf-field textarea, .acf-field select', function(){
3222
-
3223
- // preview hack
3224
- var $input = $('#_acf_changed');
3225
- if( $input.length ) $input.val(1);
3226
-
3227
-
3228
- // action for 3rd party customization
3229
- acf.do_action('change', $(this));
3230
-
3231
- });
3232
-
3233
-
3234
- /*
3235
- * preventDefault helper
3236
- *
3237
- * This function will prevent default of any link with an href of #
3238
- *
3239
- * @type function
3240
- * @date 24/07/2014
3241
- * @since 5.0.0
3242
- *
3243
- * @param $post_id (int)
3244
- * @return $post_id (int)
3245
- */
3246
-
3247
- $(document).on('click', '.acf-field a[href="#"]', function( e ){
3248
-
3249
- e.preventDefault();
3250
-
3251
- });
3252
-
3253
-
3254
- /*
3255
- * unload
3256
- *
3257
- * This model handles the unload prompt
3258
- *
3259
- * @type function
3260
- * @date 21/02/2014
3261
- * @since 3.5.1
3262
- *
3263
- * @param n/a
3264
- * @return n/a
3265
- */
3266
-
3267
- acf.unload = acf.model.extend({
3268
-
3269
- locked: 1,
3270
- active: 1,
3271
- changed: 0,
3272
-
3273
- filters: {
3274
- 'validation_complete': 'validation_complete'
3275
- },
3276
-
3277
- actions: {
3278
- 'ready': 'ready',
3279
- 'change': 'on',
3280
- },
3281
-
3282
- ready: function(){
3283
-
3284
- // unlock in 1s to avoid JS 'trigger change' bugs
3285
- setTimeout(function(){
3286
-
3287
- acf.unload.locked = 0;
3288
-
3289
- }, 1000);
3290
-
3291
- },
3292
-
3293
- events: {
3294
- 'submit form': 'off'
3295
- },
3296
-
3297
- validation_complete: function( json, $form ){
3298
-
3299
- if( json && json.errors ) {
3300
-
3301
- this.on();
3302
-
3303
- }
3304
-
3305
- // return
3306
- return json;
3307
-
3308
- },
3309
-
3310
- on: function(){
3311
-
3312
- // bail ealry if already changed, not active, or still locked
3313
- if( this.changed || !this.active || this.locked ) {
3314
-
3315
- return;
3316
-
3317
- }
3318
-
3319
-
3320
- // update
3321
- this.changed = 1;
3322
-
3323
-
3324
- // add event
3325
- $(window).on('beforeunload', this.unload);
3326
-
3327
- },
3328
-
3329
- off: function(){
3330
-
3331
- // update
3332
- this.changed = 0;
3333
-
3334
-
3335
- // remove event
3336
- $(window).off('beforeunload', this.unload);
3337
-
3338
- },
3339
-
3340
- unload: function(){
3341
-
3342
- // alert string
3343
- return acf._e('unload');
3344
-
3345
- }
3346
-
3347
- });
3348
-
3349
-
3350
- acf.tooltip = acf.model.extend({
3351
-
3352
- events: {
3353
- 'mouseenter .acf-js-tooltip': '_on',
3354
- 'mouseup .acf-js-tooltip': '_off',
3355
- 'mouseleave .acf-js-tooltip': '_off'
3356
- },
3357
-
3358
- tooltip: function( text, $el ){
3359
-
3360
- // vars
3361
- var $tooltip = $('<div class="acf-tooltip">' + text + '</div>');
3362
-
3363
-
3364
- // append
3365
- $('body').append( $tooltip );
3366
-
3367
-
3368
- // position
3369
- var tolerance = 10;
3370
- target_w = $el.outerWidth(),
3371
- target_h = $el.outerHeight(),
3372
- target_t = $el.offset().top,
3373
- target_l = $el.offset().left,
3374
- tooltip_w = $tooltip.outerWidth(),
3375
- tooltip_h = $tooltip.outerHeight();
3376
-
3377
-
3378
- // calculate top
3379
- var top = target_t - tooltip_h,
3380
- left = target_l + (target_w / 2) - (tooltip_w / 2);
3381
-
3382
-
3383
- // too far left
3384
- if( left < tolerance ) {
3385
-
3386
- $tooltip.addClass('right');
3387
-
3388
- left = target_l + target_w;
3389
- top = target_t + (target_h / 2) - (tooltip_h / 2);
3390
-
3391
-
3392
- // too far right
3393
- } else if( (left + tooltip_w + tolerance) > $(window).width() ) {
3394
-
3395
- $tooltip.addClass('left');
3396
-
3397
- left = target_l - tooltip_w;
3398
- top = target_t + (target_h / 2) - (tooltip_h / 2);
3399
-
3400
-
3401
- // too far top
3402
- } else if( top - $(window).scrollTop() < tolerance ) {
3403
-
3404
- $tooltip.addClass('bottom');
3405
-
3406
- top = target_t + target_h;
3407
-
3408
- } else {
3409
-
3410
- $tooltip.addClass('top');
3411
-
3412
- }
3413
-
3414
-
3415
- // update css
3416
- $tooltip.css({ 'top': top, 'left': left });
3417
-
3418
-
3419
- // return
3420
- return $tooltip;
3421
-
3422
- },
3423
-
3424
- temp: function( text, $el ){
3425
-
3426
- // tooltip
3427
- var $el = this.tooltip( text, $el );
3428
- var time = 0;
3429
-
3430
-
3431
- // wait 250
3432
- time += 250;
3433
-
3434
-
3435
- // add class
3436
- setTimeout(function(){
3437
-
3438
- $el.addClass('acf-fade-up');
3439
-
3440
- }, time);
3441
-
3442
-
3443
- // wait 250
3444
- time += 250;
3445
-
3446
-
3447
- // remove
3448
- setTimeout(function(){
3449
-
3450
- $el.remove();
3451
-
3452
- }, time);
3453
-
3454
- },
3455
-
3456
- confirm: function( $el, callback, text, button_y, button_n ){
3457
-
3458
- // defaults
3459
- text = text || acf._e('are_you_sure');
3460
- button_y = button_y || '<a href="#" class="acf-confirm-y">'+acf._e('yes')+'</a>';
3461
- button_n = button_n || '<a href="#" class="acf-confirm-n">'+acf._e('No')+'</a>';
3462
-
3463
-
3464
- // vars
3465
- var $tooltip = this.tooltip( text + ' ' + button_y + ' ' + button_n , $el);
3466
-
3467
-
3468
- // add class
3469
- $tooltip.addClass('-confirm');
3470
-
3471
-
3472
- // events
3473
- var event = function( e, result ){
3474
-
3475
- // prevent all listeners
3476
- e.preventDefault();
3477
- e.stopImmediatePropagation();
3478
-
3479
-
3480
- // remove events
3481
- $el.off('click', event_y);
3482
- $tooltip.off('click', '.acf-confirm-y', event_y);
3483
- $tooltip.off('click', '.acf-confirm-n', event_n);
3484
- $('body').off('click', event_n);
3485
-
3486
-
3487
- // remove tooltip
3488
- $tooltip.remove();
3489
-
3490
-
3491
- // callback
3492
- callback.apply(null, [result]);
3493
-
3494
- };
3495
-
3496
- var event_y = function( e ){
3497
- event( e, true );
3498
- };
3499
-
3500
- var event_n = function( e ){
3501
- event( e, false );
3502
- };
3503
-
3504
-
3505
- // add events
3506
- $tooltip.on('click', '.acf-confirm-y', event_y);
3507
- $tooltip.on('click', '.acf-confirm-n', event_n);
3508
- $el.on('click', event_y);
3509
- $('body').on('click', event_n);
3510
-
3511
- },
3512
-
3513
- confirm_remove: function( $el, callback ){
3514
-
3515
- // vars
3516
- text = false; // default
3517
- button_y = '<a href="#" class="acf-confirm-y -red">'+acf._e('remove')+'</a>';
3518
- button_n = '<a href="#" class="acf-confirm-n">'+acf._e('cancel')+'</a>';
3519
-
3520
-
3521
- // confirm
3522
- this.confirm( $el, callback, false, button_y, button_n );
3523
-
3524
- },
3525
-
3526
- _on: function( e ){
3527
-
3528
- // vars
3529
- var title = e.$el.attr('title');
3530
-
3531
-
3532
- // bail ealry if no title
3533
- if( !title ) return;
3534
-
3535
-
3536
- // create tooltip
3537
- var $tooltip = this.tooltip( title, e.$el );
3538
-
3539
-
3540
- // store as data
3541
- e.$el.data('acf-tooltip', {
3542
- 'title': title,
3543
- '$el': $tooltip
3544
- });
3545
-
3546
-
3547
- // clear title to avoid default browser tooltip
3548
- e.$el.attr('title', '');
3549
-
3550
- },
3551
-
3552
- _off: function( e ){
3553
-
3554
- // vars
3555
- var tooltip = e.$el.data('acf-tooltip');
3556
-
3557
-
3558
- // bail early if no data
3559
- if( !tooltip ) return;
3560
-
3561
-
3562
- // remove tooltip
3563
- tooltip.$el.remove();
3564
-
3565
-
3566
- // restore title
3567
- e.$el.attr('title', tooltip.title);
3568
- }
3569
-
3570
- });
3571
-
3572
-
3573
- acf.postbox = acf.model.extend({
3574
-
3575
- events: {
3576
- 'mouseenter .acf-postbox .handlediv': 'on',
3577
- 'mouseleave .acf-postbox .handlediv': 'off'
3578
- },
3579
-
3580
- on: function( e ){
3581
-
3582
- e.$el.siblings('.hndle').addClass('hover');
3583
-
3584
- },
3585
-
3586
- off: function( e ){
3587
-
3588
- e.$el.siblings('.hndle').removeClass('hover');
3589
-
3590
- },
3591
-
3592
- render: function( args ){
3593
-
3594
- // defaults
3595
- args = $.extend({}, {
3596
- id: '',
3597
- key: '',
3598
- style: 'default',
3599
- label: 'top',
3600
- edit_url: '',
3601
- edit_title: '',
3602
- visibility: true
3603
- }, args);
3604
-
3605
-
3606
- // vars
3607
- var $postbox = $('#' + args.id),
3608
- $toggle = $('#' + args.id + '-hide'),
3609
- $label = $toggle.parent();
3610
-
3611
-
3612
-
3613
- // add class
3614
- $postbox.addClass('acf-postbox');
3615
- $label.addClass('acf-postbox-toggle');
3616
-
3617
-
3618
- // remove class
3619
- $postbox.removeClass('hide-if-js');
3620
- $label.removeClass('hide-if-js');
3621
-
3622
-
3623
- // field group style
3624
- if( args.style !== 'default' ) {
3625
-
3626
- $postbox.addClass( args.style );
3627
-
3628
- }
3629
-
3630
-
3631
- // .inside class
3632
- $postbox.children('.inside').addClass('acf-fields').addClass('-' + args.label);
3633
-
3634
-
3635
- // visibility
3636
- if( args.visibility ) {
3637
-
3638
- $toggle.prop('checked', true);
3639
-
3640
- } else {
3641
-
3642
- $postbox.addClass('acf-hidden');
3643
- $label.addClass('acf-hidden');
3644
-
3645
- }
3646
-
3647
-
3648
- // edit_url
3649
- if( args.edit_url ) {
3650
-
3651
- $postbox.children('.hndle').append('<a href="' + args.edit_url + '" class="dashicons dashicons-admin-generic acf-hndle-cog acf-js-tooltip" title="' + args.edit_title + '"></a>');
3652
-
3653
- }
3654
-
3655
- }
3656
-
3657
- });
3658
-
3659
-
3660
- /**
3661
- * panel
3662
- *
3663
- * This model handles .acf-panel JS
3664
- *
3665
- * @date 21/10/17
3666
- * @since 5.6.3
3667
- *
3668
- * @param n/a
3669
- * @return n/a
3670
- */
3671
-
3672
- var acf_panel = acf.model.extend({
3673
-
3674
- events: {
3675
- 'click .acf-panel-title': '_click',
3676
- },
3677
-
3678
- _click: function( e ){
3679
-
3680
- // prevent Defailt
3681
- e.preventDefault();
3682
-
3683
-
3684
- // open close
3685
- this.toggle( e.$el.parent() );
3686
-
3687
- },
3688
-
3689
- is_open: function( $el ) {
3690
- return $el.hasClass('-open');
3691
- },
3692
-
3693
- toggle: function( $el ){
3694
-
3695
- // is open
3696
- if( this.is_open($el) ) {
3697
- this.close( $el );
3698
- } else {
3699
- this.open( $el );
3700
- }
3701
-
3702
- },
3703
-
3704
- open: function( $el ){
3705
- $el.addClass('-open');
3706
- $el.find('.acf-panel-title i').attr('class', 'dashicons dashicons-arrow-down');
3707
- },
3708
-
3709
- close: function( $el ){
3710
- $el.removeClass('-open');
3711
- $el.find('.acf-panel-title i').attr('class', 'dashicons dashicons-arrow-right');
3712
- }
3713
-
3714
- });
3715
-
3716
-
3717
- /**
3718
- * acf_h2_notice
3719
- *
3720
- * This model will move the .acf-notice element quickly without the WP flicker
3721
- *
3722
- * @date 21/10/17
3723
- * @since 5.6.3
3724
- *
3725
- * @param n/a
3726
- * @return n/a
3727
- */
3728
-
3729
- acf.notice = acf.model.extend({
3730
-
3731
- actions: {
3732
- 'prepare': 'prepare',
3733
- },
3734
-
3735
- prepare: function(){
3736
-
3737
- // vars
3738
- var $notice = $('.acf-notice');
3739
-
3740
-
3741
- // move
3742
- if( $notice.length ) {
3743
- $('h1:first').after( $notice );
3744
- }
3745
-
3746
- },
3747
-
3748
- html: function( text, type ){
3749
-
3750
- },
3751
-
3752
- success: function( text ){
3753
-
3754
-
3755
- },
3756
-
3757
- error: function( text ){
3758
-
3759
- },
3760
-
3761
- warning: function( text ){
3762
-
3763
- },
3764
-
3765
- information: function( text ){
3766
-
3767
- }
3768
-
3769
- });
3770
-
3771
-
3772
- /*
3773
- * Sortable
3774
- *
3775
- * These functions will hook into the start and stop of a jQuery sortable event and modify the item and placeholder
3776
- *
3777
- * @type function
3778
- * @date 12/11/2013
3779
- * @since 5.0.0
3780
- *
3781
- * @param $post_id (int)
3782
- * @return $post_id (int)
3783
- */
3784
-
3785
- acf.add_action('sortstart', function( $item, $placeholder ){
3786
-
3787
- // if $item is a tr, apply some css to the elements
3788
- if( $item.is('tr') ) {
3789
-
3790
- // temp set as relative to find widths
3791
- $item.css('position', 'relative');
3792
-
3793
-
3794
- // set widths for td children
3795
- $item.children().each(function(){
3796
-
3797
- $(this).width($(this).width());
3798
-
3799
- });
3800
-
3801
-
3802
- // revert position css
3803
- $item.css('position', 'absolute');
3804
-
3805
-
3806
- // add markup to the placeholder
3807
- $placeholder.html('<td style="height:' + $item.height() + 'px; padding:0;" colspan="' + $item.children('td').length + '"></td>');
3808
-
3809
- }
3810
-
3811
- });
3812
-
3813
-
3814
-
3815
- /*
3816
- * before & after duplicate
3817
- *
3818
- * This function will modify the DOM before it is cloned. Primarily fixes a cloning issue with select elements
3819
- *
3820
- * @type function
3821
- * @date 16/05/2014
3822
- * @since 5.0.0
3823
- *
3824
- * @param $post_id (int)
3825
- * @return $post_id (int)
3826
- */
3827
-
3828
- acf.add_action('before_duplicate', function( $orig ){
3829
-
3830
- // add 'selected' class
3831
- $orig.find('select option:selected').addClass('selected');
3832
-
3833
- });
3834
-
3835
- acf.add_action('after_duplicate', function( $orig, $duplicate ){
3836
-
3837
- // set select values
3838
- $duplicate.find('select').each(function(){
3839
-
3840
- // vars
3841
- var $select = $(this);
3842
-
3843
-
3844
- // bail early if is 'Stylized UI'
3845
- //if( $select.data('ui') ) return;
3846
-
3847
-
3848
- // vars
3849
- var val = [];
3850
-
3851
-
3852
- // loop
3853
- $select.find('option.selected').each(function(){
3854
-
3855
- val.push( $(this).val() );
3856
-
3857
- });
3858
-
3859
-
3860
- // set val
3861
- $select.val( val );
3862
-
3863
- });
3864
-
3865
-
3866
- // remove 'selected' class
3867
- $orig.find('select option.selected').removeClass('selected');
3868
- $duplicate.find('select option.selected').removeClass('selected');
3869
-
3870
- });
3871
-
3872
-
3873
-
3874
- /*
3875
- acf.test_rtl = acf.model.extend({
3876
-
3877
- actions: {
3878
- 'ready': 'ready',
3879
- },
3880
-
3881
- ready: function(){
3882
-
3883
- $('html').attr('dir', 'rtl');
3884
-
3885
- }
3886
-
3887
- });
3888
- */
3889
-
3890
-
3891
-
3892
- /*
3893
-
3894
-
3895
- console.time("acf_test_ready");
3896
- console.time("acf_test_load");
3897
-
3898
- acf.add_action('ready', function(){
3899
-
3900
- console.timeEnd("acf_test_ready");
3901
-
3902
- }, 999);
3903
-
3904
- acf.add_action('load', function(){
3905
-
3906
- console.timeEnd("acf_test_load");
3907
-
3908
- }, 999);
3909
- */
3910
-
3911
-
3912
- /*
3913
- * indexOf
3914
- *
3915
- * This function will provide compatibility for ie8
3916
- *
3917
- * @type function
3918
- * @date 5/3/17
3919
- * @since 5.5.10
3920
- *
3921
- * @param n/a
3922
- * @return n/a
3923
- */
3924
-
3925
- if( !Array.prototype.indexOf ) {
3926
-
3927
- Array.prototype.indexOf = function(val) {
3928
- return $.inArray(val, this);
3929
- };
3930
-
3931
- }
3932
-
3933
- })(jQuery);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/_build/js/event-manager.js DELETED
@@ -1,252 +0,0 @@
1
- ( function( window, undefined ) {
2
- "use strict";
3
-
4
- /**
5
- * Handles managing all events for whatever you plug it into. Priorities for hooks are based on lowest to highest in
6
- * that, lowest priority hooks are fired first.
7
- */
8
- var EventManager = function() {
9
- /**
10
- * Maintain a reference to the object scope so our public methods never get confusing.
11
- */
12
- var MethodsAvailable = {
13
- removeFilter : removeFilter,
14
- applyFilters : applyFilters,
15
- addFilter : addFilter,
16
- removeAction : removeAction,
17
- doAction : doAction,
18
- addAction : addAction,
19
- storage : getStorage
20
- };
21
-
22
- /**
23
- * Contains the hooks that get registered with this EventManager. The array for storage utilizes a "flat"
24
- * object literal such that looking up the hook utilizes the native object literal hash.
25
- */
26
- var STORAGE = {
27
- actions : {},
28
- filters : {}
29
- };
30
-
31
- function getStorage() {
32
-
33
- return STORAGE;
34
-
35
- };
36
-
37
- /**
38
- * Adds an action to the event manager.
39
- *
40
- * @param action Must contain namespace.identifier
41
- * @param callback Must be a valid callback function before this action is added
42
- * @param [priority=10] Used to control when the function is executed in relation to other callbacks bound to the same hook
43
- * @param [context] Supply a value to be used for this
44
- */
45
- function addAction( action, callback, priority, context ) {
46
- if( typeof action === 'string' && typeof callback === 'function' ) {
47
- priority = parseInt( ( priority || 10 ), 10 );
48
- _addHook( 'actions', action, callback, priority, context );
49
- }
50
-
51
- return MethodsAvailable;
52
- }
53
-
54
- /**
55
- * Performs an action if it exists. You can pass as many arguments as you want to this function; the only rule is
56
- * that the first argument must always be the action.
57
- */
58
- function doAction( /* action, arg1, arg2, ... */ ) {
59
- var args = Array.prototype.slice.call( arguments );
60
- var action = args.shift();
61
-
62
- if( typeof action === 'string' ) {
63
- _runHook( 'actions', action, args );
64
- }
65
-
66
- return MethodsAvailable;
67
- }
68
-
69
- /**
70
- * Removes the specified action if it contains a namespace.identifier & exists.
71
- *
72
- * @param action The action to remove
73
- * @param [callback] Callback function to remove
74
- */
75
- function removeAction( action, callback ) {
76
- if( typeof action === 'string' ) {
77
- _removeHook( 'actions', action, callback );
78
- }
79
-
80
- return MethodsAvailable;
81
- }
82
-
83
- /**
84
- * Adds a filter to the event manager.
85
- *
86
- * @param filter Must contain namespace.identifier
87
- * @param callback Must be a valid callback function before this action is added
88
- * @param [priority=10] Used to control when the function is executed in relation to other callbacks bound to the same hook
89
- * @param [context] Supply a value to be used for this
90
- */
91
- function addFilter( filter, callback, priority, context ) {
92
- if( typeof filter === 'string' && typeof callback === 'function' ) {
93
- priority = parseInt( ( priority || 10 ), 10 );
94
- _addHook( 'filters', filter, callback, priority, context );
95
- }
96
-
97
- return MethodsAvailable;
98
- }
99
-
100
- /**
101
- * Performs a filter if it exists. You should only ever pass 1 argument to be filtered. The only rule is that
102
- * the first argument must always be the filter.
103
- */
104
- function applyFilters( /* filter, filtered arg, arg2, ... */ ) {
105
- var args = Array.prototype.slice.call( arguments );
106
- var filter = args.shift();
107
-
108
- if( typeof filter === 'string' ) {
109
- return _runHook( 'filters', filter, args );
110
- }
111
-
112
- return MethodsAvailable;
113
- }
114
-
115
- /**
116
- * Removes the specified filter if it contains a namespace.identifier & exists.
117
- *
118
- * @param filter The action to remove
119
- * @param [callback] Callback function to remove
120
- */
121
- function removeFilter( filter, callback ) {
122
- if( typeof filter === 'string') {
123
- _removeHook( 'filters', filter, callback );
124
- }
125
-
126
- return MethodsAvailable;
127
- }
128
-
129
- /**
130
- * Removes the specified hook by resetting the value of it.
131
- *
132
- * @param type Type of hook, either 'actions' or 'filters'
133
- * @param hook The hook (namespace.identifier) to remove
134
- * @private
135
- */
136
- function _removeHook( type, hook, callback, context ) {
137
- if ( !STORAGE[ type ][ hook ] ) {
138
- return;
139
- }
140
- if ( !callback ) {
141
- STORAGE[ type ][ hook ] = [];
142
- } else {
143
- var handlers = STORAGE[ type ][ hook ];
144
- var i;
145
- if ( !context ) {
146
- for ( i = handlers.length; i--; ) {
147
- if ( handlers[i].callback === callback ) {
148
- handlers.splice( i, 1 );
149
- }
150
- }
151
- }
152
- else {
153
- for ( i = handlers.length; i--; ) {
154
- var handler = handlers[i];
155
- if ( handler.callback === callback && handler.context === context) {
156
- handlers.splice( i, 1 );
157
- }
158
- }
159
- }
160
- }
161
- }
162
-
163
- /**
164
- * Adds the hook to the appropriate storage container
165
- *
166
- * @param type 'actions' or 'filters'
167
- * @param hook The hook (namespace.identifier) to add to our event manager
168
- * @param callback The function that will be called when the hook is executed.
169
- * @param priority The priority of this hook. Must be an integer.
170
- * @param [context] A value to be used for this
171
- * @private
172
- */
173
- function _addHook( type, hook, callback, priority, context ) {
174
- var hookObject = {
175
- callback : callback,
176
- priority : priority,
177
- context : context
178
- };
179
-
180
- // Utilize 'prop itself' : http://jsperf.com/hasownproperty-vs-in-vs-undefined/19
181
- var hooks = STORAGE[ type ][ hook ];
182
- if( hooks ) {
183
- hooks.push( hookObject );
184
- hooks = _hookInsertSort( hooks );
185
- }
186
- else {
187
- hooks = [ hookObject ];
188
- }
189
-
190
- STORAGE[ type ][ hook ] = hooks;
191
- }
192
-
193
- /**
194
- * Use an insert sort for keeping our hooks organized based on priority. This function is ridiculously faster
195
- * than bubble sort, etc: http://jsperf.com/javascript-sort
196
- *
197
- * @param hooks The custom array containing all of the appropriate hooks to perform an insert sort on.
198
- * @private
199
- */
200
- function _hookInsertSort( hooks ) {
201
- var tmpHook, j, prevHook;
202
- for( var i = 1, len = hooks.length; i < len; i++ ) {
203
- tmpHook = hooks[ i ];
204
- j = i;
205
- while( ( prevHook = hooks[ j - 1 ] ) && prevHook.priority > tmpHook.priority ) {
206
- hooks[ j ] = hooks[ j - 1 ];
207
- --j;
208
- }
209
- hooks[ j ] = tmpHook;
210
- }
211
-
212
- return hooks;
213
- }
214
-
215
- /**
216
- * Runs the specified hook. If it is an action, the value is not modified but if it is a filter, it is.
217
- *
218
- * @param type 'actions' or 'filters'
219
- * @param hook The hook ( namespace.identifier ) to be ran.
220
- * @param args Arguments to pass to the action/filter. If it's a filter, args is actually a single parameter.
221
- * @private
222
- */
223
- function _runHook( type, hook, args ) {
224
- var handlers = STORAGE[ type ][ hook ];
225
-
226
- if ( !handlers ) {
227
- return (type === 'filters') ? args[0] : false;
228
- }
229
-
230
- var i = 0, len = handlers.length;
231
- if ( type === 'filters' ) {
232
- for ( ; i < len; i++ ) {
233
- args[ 0 ] = handlers[ i ].callback.apply( handlers[ i ].context, args );
234
- }
235
- } else {
236
- for ( ; i < len; i++ ) {
237
- handlers[ i ].callback.apply( handlers[ i ].context, args );
238
- }
239
- }
240
-
241
- return ( type === 'filters' ) ? args[ 0 ] : true;
242
- }
243
-
244
- // return all of the publicly available methods
245
- return MethodsAvailable;
246
-
247
- };
248
-
249
- window.wp = window.wp || {};
250
- window.wp.hooks = new EventManager();
251
-
252
- } )( window );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/_build/js/field-group.js DELETED
@@ -1,3177 +0,0 @@
1
- (function($){
2
-
3
- acf.field_group = acf.model.extend({
4
-
5
- // vars
6
- $fields: null,
7
- $locations: null,
8
- $options: null,
9
-
10
- actions: {
11
- 'ready': 'init'
12
- },
13
-
14
- events: {
15
- 'submit #post': 'submit',
16
- 'click a[href="#"]': 'preventDefault',
17
- 'click .submitdelete': 'trash',
18
- 'mouseenter .acf-field-list': 'sortable'
19
- },
20
-
21
-
22
- /*
23
- * init
24
- *
25
- * This function will run on document ready and initialize the module
26
- *
27
- * @type function
28
- * @date 8/04/2014
29
- * @since 5.0.0
30
- *
31
- * @param n/a
32
- * @return n/a
33
- */
34
-
35
- init: function(){
36
-
37
- // $el
38
- this.$fields = $('#acf-field-group-fields');
39
- this.$locations = $('#acf-field-group-locations');
40
- this.$options = $('#acf-field-group-options');
41
-
42
-
43
- // disable validation
44
- acf.validation.active = 0;
45
-
46
- },
47
-
48
-
49
- /*
50
- * sortable
51
- *
52
- * This function will add sortable to the feild group list
53
- * sortable is added on mouseover to speed up page load
54
- *
55
- * @type function
56
- * @date 28/10/2015
57
- * @since 5.3.2
58
- *
59
- * @param $post_id (int)
60
- * @return $post_id (int)
61
- */
62
-
63
- sortable: function( e ){
64
-
65
- // bail early if already sortable
66
- if( e.$el.hasClass('ui-sortable') ) {
67
-
68
- return;
69
-
70
- }
71
-
72
-
73
- // vars
74
- var self = this;
75
-
76
-
77
- // sortable
78
- e.$el.sortable({
79
- handle: '.acf-sortable-handle',
80
- connectWith: '.acf-field-list',
81
- update: function(event, ui){
82
-
83
- // vars
84
- var $el = ui.item;
85
-
86
-
87
- // render
88
- self.render_fields();
89
-
90
-
91
- // actions
92
- acf.do_action('sortstop', $el);
93
-
94
- }
95
- });
96
-
97
- },
98
-
99
-
100
- /*
101
- * preventDefault
102
- *
103
- * This helper will preventDefault on all events for empty links
104
- *
105
- * @type function
106
- * @date 18/08/2015
107
- * @since 5.2.3
108
- *
109
- * @param $post_id (int)
110
- * @return $post_id (int)
111
- */
112
-
113
- preventDefault: function( e ){
114
-
115
- e.preventDefault();
116
-
117
- },
118
-
119
-
120
- /*
121
- * get_selector
122
- *
123
- * This function will return a valid selector for finding a field object
124
- *
125
- * @type function
126
- * @date 15/01/2015
127
- * @since 5.1.5
128
- *
129
- * @param s (string)
130
- * @return (string)
131
- */
132
-
133
- get_selector: function( s ) {
134
-
135
- // defaults
136
- s = s || '';
137
-
138
-
139
- // vars
140
- var selector = '.acf-field-object';
141
-
142
-
143
- // search
144
- if( s ) {
145
-
146
- // append
147
- selector += '-' + s;
148
-
149
-
150
- // replace underscores (split/join replaces all and is faster than regex!)
151
- selector = selector.split('_').join('-');
152
-
153
- }
154
-
155
-
156
- // return
157
- return selector;
158
-
159
- },
160
-
161
-
162
- /*
163
- * render_fields
164
- *
165
- * This function is triggered by a change in field order, and will update the field icon number
166
- *
167
- * @type function
168
- * @date 8/04/2014
169
- * @since 5.0.0
170
- *
171
- * @param n/a
172
- * @return n/a
173
- */
174
-
175
- render_fields: function(){
176
-
177
- // reference
178
- var self = this;
179
-
180
-
181
- // update order numbers
182
- $('.acf-field-list').each(function(){
183
-
184
- // vars
185
- var $fields = $(this).children('.acf-field-object');
186
-
187
-
188
- // loop over fields
189
- $fields.each(function( i ){
190
-
191
- // update meta
192
- self.update_field_meta( $(this), 'menu_order', i );
193
-
194
-
195
- // update icon number
196
- $(this).children('.handle').find('.acf-icon').html( i+1 );
197
-
198
- });
199
-
200
-
201
- // show no fields message
202
- if( !$fields.exists() ){
203
-
204
- $(this).children('.no-fields-message').show();
205
-
206
- } else {
207
-
208
- $(this).children('.no-fields-message').hide();
209
-
210
- }
211
-
212
- });
213
-
214
- },
215
-
216
-
217
- /*
218
- * get_field_meta
219
- *
220
- * This function will return an input value for a field
221
- *
222
- * @type function
223
- * @date 8/04/2014
224
- * @since 5.0.0
225
- *
226
- * @param $el
227
- * @param name
228
- * @return (string)
229
- */
230
-
231
- get_field_meta: function( $el, name ){
232
-
233
- //console.log( 'get_field_meta(%o, %o)', $el, name );
234
-
235
- // vars
236
- var $input = $el.find('> .meta > .input-' + name);
237
-
238
-
239
- // bail early if no input
240
- if( !$input.exists() ) {
241
-
242
- //console.log( '- aborted due to no input' );
243
- return false;
244
-
245
- }
246
-
247
-
248
- // return
249
- return $input.val();
250
-
251
- },
252
-
253
-
254
- /*
255
- * update_field_meta
256
- *
257
- * This function will update an input value for a field
258
- *
259
- * @type function
260
- * @date 8/04/2014
261
- * @since 5.0.0
262
- *
263
- * @param $el
264
- * @param name
265
- * @param value
266
- * @return n/a
267
- */
268
-
269
- update_field_meta: function( $el, name, value ){
270
-
271
- //console.log( 'update_field_meta(%o, %o, %o)', $el, name, value );
272
-
273
- // vars
274
- var $input = $el.find('> .meta > .input-' + name);
275
-
276
-
277
- // create hidden input if doesn't exist
278
- if( !$input.exists() ) {
279
-
280
- // vars
281
- var html = $el.find('> .meta > .input-ID').outerHTML();
282
-
283
-
284
- // replcae
285
- html = acf.str_replace('ID', name, html);
286
-
287
-
288
- // update $input
289
- $input = $(html);
290
-
291
-
292
- // reset value
293
- $input.val( value );
294
-
295
-
296
- // append
297
- $el.children('.meta').append( $input );
298
-
299
- //console.log( '- created new input' );
300
-
301
- }
302
-
303
-
304
- // bail early if no change
305
- if( $input.val() == value ) {
306
-
307
- //console.log( '- aborted due to no change in input value' );
308
- return;
309
- }
310
-
311
-
312
- // update value
313
- $input.val( value );
314
-
315
-
316
- // bail early if updating save
317
- if( name == 'save' ) {
318
-
319
- //console.log( '- aborted due to name == save' );
320
- return;
321
-
322
- }
323
-
324
-
325
- // meta has changed, update save
326
- this.save_field( $el, 'meta' );
327
-
328
- },
329
-
330
-
331
- /*
332
- * delete_field_meta
333
- *
334
- * This function will return an input value for a field
335
- *
336
- * @type function
337
- * @date 8/04/2014
338
- * @since 5.0.0
339
- *
340
- * @param $el
341
- * @param name
342
- * @return (string)
343
- */
344
-
345
- delete_field_meta: function( $el, name ){
346
-
347
- //console.log( 'delete_field_meta(%o, %o, %o)', $el, name );
348
-
349
- // vars
350
- var $input = $el.find('> .meta > .input-' + name);
351
-
352
-
353
- // bail early if not exists
354
- if( !$input.exists() ) {
355
-
356
- //console.log( '- aborted due to no input' );
357
- return;
358
-
359
- }
360
-
361
-
362
- // remove
363
- $input.remove();
364
-
365
-
366
- // meta has changed, update save
367
- this.save_field( $el, 'meta' );
368
-
369
- },
370
-
371
-
372
- /*
373
- * save_field
374
- *
375
- * This function will update the changed input for a given field making sure it is saved on submit
376
- *
377
- * @type function
378
- * @date 8/04/2014
379
- * @since 5.0.0
380
- *
381
- * @param $el
382
- * @return n/a
383
- */
384
-
385
- save_field: function( $el, type ){
386
-
387
- //console.log('save_field(%o %o)', $el, type);
388
-
389
- // defaults
390
- type = type || 'settings';
391
-
392
-
393
- // vars
394
- var value = this.get_field_meta( $el, 'save' );
395
-
396
-
397
- // bail early if already 'settings'
398
- if( value == 'settings' ) {
399
-
400
- return;
401
-
402
- }
403
-
404
-
405
- // bail early if no change
406
- if( value == type ) {
407
-
408
- return;
409
-
410
- }
411
-
412
-
413
- // update meta
414
- this.update_field_meta( $el, 'save', type );
415
-
416
-
417
- // action for 3rd party customization
418
- acf.do_action('save_field', $el, type);
419
-
420
- },
421
-
422
-
423
- /*
424
- * submit
425
- *
426
- * This function is triggered when submitting the form and provides validation prior to posting the data
427
- *
428
- * @type function
429
- * @date 8/04/2014
430
- * @since 5.0.0
431
- *
432
- * @param n/a
433
- * @return (boolean)
434
- */
435
-
436
- submit: function( e ){
437
-
438
- // reference
439
- var self = this;
440
-
441
-
442
- // vars
443
- var $title = $('#titlewrap #title');
444
-
445
-
446
- // title empty
447
- if( !$title.val() ) {
448
-
449
- // prevent default
450
- e.preventDefault();
451
-
452
-
453
- // unlock form
454
- acf.validation.toggle( e.$el, 'unlock' );
455
-
456
-
457
- // alert
458
- alert( acf._e('title_is_required') );
459
-
460
-
461
- // focus
462
- $title.focus();
463
-
464
- }
465
-
466
-
467
- // close / delete fields
468
- $('.acf-field-object').each(function(){
469
-
470
- // vars
471
- var save = self.get_field_meta( $(this), 'save'),
472
- ID = self.get_field_meta( $(this), 'ID'),
473
- open = $(this).hasClass('open');
474
-
475
-
476
- // close
477
- if( open ) {
478
-
479
- self.close_field( $(this) );
480
-
481
- }
482
-
483
-
484
- // remove unnecessary inputs
485
- if( save == 'settings' ) {
486
-
487
- // allow all settings to save (new field, changed field)
488
-
489
- } else if( save == 'meta' ) {
490
-
491
- $(this).children('.settings').find('[name^="acf_fields[' + ID + ']"]').remove();
492
-
493
- } else {
494
-
495
- $(this).find('[name^="acf_fields[' + ID + ']"]').remove();
496
-
497
- }
498
-
499
- });
500
-
501
- },
502
-
503
-
504
- /*
505
- * trash
506
- *
507
- * This function is triggered when moving the field group to trash
508
- *
509
- * @type function
510
- * @date 8/04/2014
511
- * @since 5.0.0
512
- *
513
- * @param n/a
514
- * @return (boolean)
515
- */
516
-
517
- trash: function( e ){
518
-
519
- var result = confirm( acf._e('move_to_trash') );
520
-
521
- if( !result ) {
522
-
523
- e.preventDefault();
524
-
525
- }
526
-
527
- },
528
-
529
-
530
- /*
531
- * render_field
532
- *
533
- * This function will update the field's info
534
- *
535
- * @type function
536
- * @date 8/04/2014
537
- * @since 5.0.0
538
- *
539
- * @param $el
540
- * @return n/a
541
- */
542
-
543
- render_field: function( $el ){
544
-
545
- // vars
546
- var label = $el.find('.field-label:first').val(),
547
- name = $el.find('.field-name:first').val(),
548
- type = $el.find('.field-type:first option:selected').text(),
549
- required = $el.find('.field-required:first').prop('checked'),
550
- $handle = $el.children('.handle');
551
-
552
-
553
- // update label
554
- $handle.find('.li-field-label strong a').text( label );
555
-
556
-
557
- // update required
558
- $handle.find('.li-field-label .acf-required').remove();
559
-
560
- if( required ) {
561
-
562
- $handle.find('.li-field-label strong').append('<span class="acf-required">*</span>');
563
-
564
- }
565
-
566
-
567
- // update name
568
- $handle.find('.li-field-name').text( name );
569
-
570
-
571
- // update type
572
- $handle.find('.li-field-type').text( type );
573
-
574
-
575
- // action for 3rd party customization
576
- acf.do_action('render_field_handle', $el, $handle);
577
-
578
- },
579
-
580
-
581
- /*
582
- * edit_field
583
- *
584
- * This function is triggered when clicking on a field. It will open / close a fields settings
585
- *
586
- * @type function
587
- * @date 8/04/2014
588
- * @since 5.0.0
589
- *
590
- * @param $el
591
- * @return n/a
592
- */
593
-
594
- edit_field: function( $field ){
595
-
596
- // toggle
597
- if( $field.hasClass('open') ) {
598
-
599
- this.close_field( $field );
600
-
601
- } else {
602
-
603
- this.open_field( $field );
604
-
605
- }
606
-
607
- },
608
-
609
-
610
- /*
611
- * open_field
612
- *
613
- * This function will open a fields settings
614
- *
615
- * @type function
616
- * @date 8/04/2014
617
- * @since 5.0.0
618
- *
619
- * @param $el
620
- * @return n/a
621
- */
622
-
623
- open_field: function( $el ){
624
-
625
- // bail early if already open
626
- if( $el.hasClass('open') ) {
627
-
628
- return false;
629
-
630
- }
631
-
632
-
633
- // add class
634
- $el.addClass('open');
635
-
636
-
637
- // action for 3rd party customization
638
- acf.do_action('open_field', $el);
639
-
640
-
641
- // animate toggle
642
- $el.children('.settings').animate({ 'height' : 'toggle' }, 250 );
643
-
644
- },
645
-
646
-
647
- /*
648
- * close_field
649
- *
650
- * This function will open a fields settings
651
- *
652
- * @type function
653
- * @date 8/04/2014
654
- * @since 5.0.0
655
- *
656
- * @param $el
657
- * @return n/a
658
- */
659
-
660
- close_field: function( $el ){
661
-
662
- // bail early if already closed
663
- if( !$el.hasClass('open') ) {
664
-
665
- return false;
666
-
667
- }
668
-
669
-
670
- // remove class
671
- $el.removeClass('open');
672
-
673
-
674
- // action for 3rd party customization
675
- acf.do_action('close_field', $el);
676
-
677
-
678
- // animate toggle
679
- $el.children('.settings').animate({ 'height' : 'toggle' }, 250 );
680
-
681
- },
682
-
683
-
684
- /*
685
- * wipe_field
686
- *
687
- * This function will prepare a new field by updating the input names
688
- *
689
- * @type function
690
- * @date 8/04/2014
691
- * @since 5.0.0
692
- *
693
- * @param $el
694
- * @return n/a
695
- */
696
-
697
- wipe_field: function( $el ){
698
-
699
- // vars
700
- var id = $el.attr('data-id'),
701
- key = $el.attr('data-key'),
702
- new_id = acf.get_uniqid(),
703
- new_key = 'field_' + new_id;
704
-
705
-
706
- // update attr
707
- $el.attr('data-id', new_id);
708
- $el.attr('data-key', new_key);
709
- $el.attr('data-orig', key);
710
-
711
-
712
- // update hidden inputs
713
- this.update_field_meta( $el, 'ID', '' );
714
- this.update_field_meta( $el, 'key', new_key );
715
-
716
-
717
- // update attributes
718
- $el.find('[id*="' + id + '"]').each(function(){
719
-
720
- $(this).attr('id', $(this).attr('id').replace(id, new_id) );
721
-
722
- });
723
-
724
- $el.find('[name*="' + id + '"]').each(function(){
725
-
726
- $(this).attr('name', $(this).attr('name').replace(id, new_id) );
727
-
728
- });
729
-
730
-
731
- // update key
732
- $el.find('> .handle .pre-field-key').text( new_key );
733
-
734
-
735
- // remove sortable classes
736
- $el.find('.ui-sortable').removeClass('ui-sortable');
737
-
738
-
739
- // action for 3rd party customization
740
- acf.do_action('wipe_field', $el);
741
-
742
- },
743
-
744
-
745
- /*
746
- * add_field
747
- *
748
- * This function will add a new field to a field list
749
- *
750
- * @type function
751
- * @date 8/04/2014
752
- * @since 5.0.0
753
- *
754
- * @param $fields
755
- * @return n/a
756
- */
757
-
758
- add_field: function( $fields ){
759
-
760
- // clone tr
761
- var $el = $( $('#tmpl-acf-field').html() ),
762
- $label = $el.find('.field-label:first'),
763
- $name = $el.find('.field-name:first');
764
-
765
-
766
- // update names
767
- this.wipe_field( $el );
768
-
769
-
770
- // append to table
771
- $fields.append( $el );
772
-
773
-
774
- // clear name
775
- $label.val('');
776
- $name.val('');
777
-
778
-
779
- // focus after form has dropped down
780
- setTimeout(function(){
781
-
782
- $label.focus();
783
-
784
- }, 251);
785
-
786
-
787
- // update order numbers
788
- this.render_fields();
789
-
790
-
791
- // trigger append
792
- acf.do_action('append', $el);
793
-
794
-
795
- // open up form
796
- this.edit_field( $el );
797
-
798
-
799
- // action for 3rd party customization
800
- acf.do_action('add_field', $el);
801
-
802
- },
803
-
804
-
805
- /*
806
- * duplicate_field
807
- *
808
- * This function will duplicate a field
809
- *
810
- * @type function
811
- * @date 8/04/2014
812
- * @since 5.0.0
813
- *
814
- * @param $el
815
- * @return $el2
816
- */
817
-
818
- duplicate_field: function( $el ){
819
-
820
- // allow acf to modify DOM
821
- acf.do_action('before_duplicate', $el);
822
-
823
-
824
- // vars
825
- var $el2 = $el.clone(),
826
- $label = $el2.find('.field-label:first'),
827
- $name = $el2.find('.field-name:first');
828
-
829
-
830
- // remove JS functionality
831
- acf.do_action('remove', $el2);
832
-
833
-
834
- // update names
835
- this.wipe_field( $el2 );
836
-
837
-
838
- // allow acf to modify DOM
839
- acf.do_action('after_duplicate', $el, $el2);
840
-
841
-
842
- // append to table
843
- $el.after( $el2 );
844
-
845
-
846
- // trigger append
847
- acf.do_action('append', $el2);
848
-
849
-
850
- // focus after form has dropped down
851
- setTimeout(function(){
852
-
853
- $label.focus();
854
-
855
- }, 251);
856
-
857
-
858
- // update order numbers
859
- this.render_fields();
860
-
861
-
862
- // open up form
863
- if( $el.hasClass('open') ) {
864
-
865
- this.close_field( $el );
866
-
867
- } else {
868
-
869
- this.open_field( $el2 );
870
-
871
- }
872
-
873
-
874
- // update new_field label / name
875
- var label = $label.val(),
876
- name = $name.val(),
877
- end = name.split('_').pop(),
878
- copy = acf._e('copy');
879
-
880
-
881
- // look at last word
882
- if( end.indexOf(copy) === 0 ) {
883
-
884
- var i = end.replace(copy, '') * 1;
885
- i = i ? i+1 : 2;
886
-
887
- // replace
888
- label = label.replace( end, copy + i );
889
- name = name.replace( end, copy + i );
890
-
891
- } else {
892
-
893
- label += ' (' + copy + ')';
894
- name += '_' + copy;
895
-
896
- }
897
-
898
-
899
- $label.val( label );
900
- $name.val( name );
901
-
902
-
903
- // save field
904
- this.save_field( $el2 );
905
-
906
-
907
- // render field
908
- this.render_field( $el2 );
909
-
910
-
911
- // action for 3rd party customization
912
- acf.do_action('duplicate_field', $el2);
913
-
914
-
915
- // return
916
- return $el2;
917
-
918
- },
919
-
920
-
921
- /*
922
- * move_field
923
- *
924
- * This function will launch a popup to move a field to another field group
925
- *
926
- * @type function
927
- * @date 8/04/2014
928
- * @since 5.0.0
929
- *
930
- * @param $field
931
- * @return n/a
932
- */
933
-
934
- move_field: function( $field ){
935
-
936
- // reference
937
- var self = this;
938
-
939
-
940
- // AJAX data
941
- var ajax_data = acf.prepare_for_ajax({
942
- action: 'acf/field_group/move_field',
943
- field_id: this.get_field_meta( $field, 'ID' )
944
- });
945
-
946
-
947
- // vars
948
- var warning = false;
949
-
950
-
951
- // validate
952
- if( !ajax_data.field_id ) {
953
-
954
- // Case: field not saved to DB
955
- warning = true;
956
-
957
- } else if( this.get_field_meta( $field, 'save' ) == 'settings' ) {
958
-
959
- // Case: field's settings have changed
960
- warning = true;
961
-
962
- } else {
963
-
964
- // Case: sub field's settings have changed
965
- $field.find('.acf-field-object').each(function(){
966
-
967
- if( !self.get_field_meta( $(this), 'ID' ) ) {
968
-
969
- // Case: field not saved to DB
970
- warning = true;
971
- return false;
972
-
973
- } else if( self.get_field_meta( $(this), 'save' ) == 'settings' ) {
974
-
975
- // Case: field's settings have changed
976
- warning = true;
977
-
978
- }
979
-
980
- });
981
-
982
- }
983
-
984
-
985
- // bail early if can't move
986
- if( warning ) {
987
-
988
- alert( acf._e('move_field_warning') );
989
- return;
990
-
991
- }
992
-
993
-
994
- // open popup
995
- acf.open_popup({
996
- title : acf._e('move_field'),
997
- loading : true,
998
- height : 145
999
- });
1000
-
1001
-
1002
- // get HTML
1003
- $.ajax({
1004
- url: acf.get('ajaxurl'),
1005
- data: ajax_data,
1006
- type: 'post',
1007
- dataType: 'html',
1008
- success: function(html){
1009
-
1010
- self.move_field_confirm( $field, html );
1011
-
1012
- }
1013
- });
1014
-
1015
- },
1016
-
1017
-
1018
- /*
1019
- * move_field_confirm
1020
- *
1021
- * This function will move a field to another field group
1022
- *
1023
- * @type function
1024
- * @date 8/04/2014
1025
- * @since 5.0.0
1026
- *
1027
- * @param $post_id (int)
1028
- * @return $post_id (int)
1029
- */
1030
-
1031
- move_field_confirm: function( $field, html ){
1032
-
1033
- // reference
1034
- var self = this;
1035
-
1036
-
1037
- // update popup
1038
- acf.update_popup({
1039
- content : html
1040
- });
1041
-
1042
-
1043
- // AJAX data
1044
- var ajax_data = acf.prepare_for_ajax({
1045
- 'action' : 'acf/field_group/move_field',
1046
- 'field_id' : this.get_field_meta($field, 'ID'),
1047
- 'field_group_id' : 0
1048
- });
1049
-
1050
-
1051
- // submit form
1052
- $('#acf-move-field-form').on('submit', function(){
1053
-
1054
- ajax_data.field_group_id = $(this).find('select').val();
1055
-
1056
-
1057
- // get HTML
1058
- $.ajax({
1059
- url: acf.get('ajaxurl'),
1060
- data: ajax_data,
1061
- type: 'post',
1062
- dataType: 'html',
1063
- success: function(html){
1064
-
1065
- acf.update_popup({
1066
- content : html
1067
- });
1068
-
1069
-
1070
- // remove the field without actually deleting it
1071
- self.remove_field( $field );
1072
-
1073
- }
1074
- });
1075
-
1076
- return false;
1077
-
1078
- });
1079
-
1080
- },
1081
-
1082
-
1083
- /*
1084
- * delete_field
1085
- *
1086
- * This function will delete a field
1087
- *
1088
- * @type function
1089
- * @date 8/04/2014
1090
- * @since 5.0.0
1091
- *
1092
- * @param $el
1093
- * @param animation
1094
- * @return n/a
1095
- */
1096
-
1097
- delete_field: function( $el, animation ){
1098
-
1099
- // defaults
1100
- animation = animation || true;
1101
-
1102
-
1103
- // vars
1104
- var id = this.get_field_meta($el, 'ID');
1105
-
1106
-
1107
- // add to remove list
1108
- if( id ) {
1109
-
1110
- var $input = $('#_acf_delete_fields');
1111
- $input.val( $input.val() + '|' + id );
1112
-
1113
- }
1114
-
1115
-
1116
- // action for 3rd party customization
1117
- acf.do_action('delete_field', $el);
1118
-
1119
-
1120
- // bail early if no animation
1121
- if( animation ) {
1122
-
1123
- this.remove_field( $el );
1124
-
1125
- }
1126
-
1127
- },
1128
-
1129
-
1130
- /*
1131
- * remove_field
1132
- *
1133
- * This function will visualy remove a field
1134
- *
1135
- * @type function
1136
- * @date 24/10/2014
1137
- * @since 5.0.9
1138
- *
1139
- * @param $el
1140
- * @param animation
1141
- * @return n/a
1142
- */
1143
-
1144
- remove_field: function( $el ){
1145
-
1146
- // reference
1147
- var self = this;
1148
-
1149
-
1150
- // vars
1151
- var $field_list = $el.closest('.acf-field-list');
1152
-
1153
-
1154
- // set layout
1155
- $el.css({
1156
- height : $el.height(),
1157
- width : $el.width(),
1158
- position : 'absolute'
1159
- });
1160
-
1161
-
1162
- // wrap field
1163
- $el.wrap( '<div class="temp-field-wrap" style="height:' + $el.height() + 'px"></div>' );
1164
-
1165
-
1166
- // fade $el
1167
- $el.animate({ opacity : 0 }, 250);
1168
-
1169
-
1170
- // close field
1171
- var end_height = 0,
1172
- $show = false;
1173
-
1174
-
1175
- if( !$field_list.children('.acf-field-object').length ) {
1176
-
1177
- $show = $field_list.children('.no-fields-message');
1178
- end_height = $show.outerHeight();
1179
-
1180
- }
1181
-
1182
- $el.parent('.temp-field-wrap').animate({ height : end_height }, 250, function(){
1183
-
1184
- // show another element
1185
- if( $show ) {
1186
-
1187
- $show.show();
1188
-
1189
- }
1190
-
1191
-
1192
- // action for 3rd party customization
1193
- acf.do_action('remove', $(this));
1194
-
1195
-
1196
- // remove $el
1197
- $(this).remove();
1198
-
1199
-
1200
- // render fields becuase they have changed
1201
- self.render_fields();
1202
-
1203
- });
1204
-
1205
- },
1206
-
1207
-
1208
- /*
1209
- * change_field_type
1210
- *
1211
- * This function will update the field's settings based on the new field type
1212
- *
1213
- * @type function
1214
- * @date 8/04/2014
1215
- * @since 5.0.0
1216
- *
1217
- * @param $select
1218
- * @return n/a
1219
- */
1220
-
1221
- change_field_type: function( $select ){
1222
-
1223
- // vars
1224
- var $tbody = $select.closest('tbody'),
1225
- $el = $tbody.closest('.acf-field-object'),
1226
- $parent = $el.parent().closest('.acf-field-object'),
1227
-
1228
- key = $el.attr('data-key'),
1229
- old_type = $el.attr('data-type'),
1230
- new_type = $select.val();
1231
-
1232
-
1233
- // update class
1234
- $el.removeClass( 'acf-field-object-' + acf.str_replace('_', '-', old_type) );
1235
- $el.addClass( 'acf-field-object-' + acf.str_replace('_', '-', new_type) );
1236
-
1237
-
1238
- // update atts
1239
- $el.attr('data-type', new_type);
1240
- $el.data('type', new_type);
1241
-
1242
-
1243
- // abort XHR if this field is already loading AJAX data
1244
- if( $el.data('xhr') ) {
1245
-
1246
- $el.data('xhr').abort();
1247
-
1248
- }
1249
-
1250
-
1251
- // get settings
1252
- var $settings = $tbody.children('.acf-field[data-setting="' + old_type + '"]'),
1253
- html = '';
1254
-
1255
-
1256
- // populate settings html
1257
- $settings.each(function(){
1258
-
1259
- html += $(this).outerHTML();
1260
-
1261
- });
1262
-
1263
-
1264
- // remove settings
1265
- $settings.remove();
1266
-
1267
-
1268
- // save field settings html
1269
- acf.update( key + '_settings_' + old_type, html );
1270
-
1271
-
1272
- // render field
1273
- this.render_field( $el );
1274
-
1275
-
1276
- // show field options if they already exist
1277
- html = acf.get( key + '_settings_' + new_type );
1278
-
1279
- if( html ) {
1280
-
1281
- // append settings
1282
- $tbody.children('.acf-field[data-name="conditional_logic"]').before( html );
1283
-
1284
-
1285
- // remove field settings html
1286
- acf.update( key + '_settings_' + new_type, '' );
1287
-
1288
-
1289
- // trigger event
1290
- acf.do_action('change_field_type', $el);
1291
-
1292
-
1293
- // return
1294
- return;
1295
- }
1296
-
1297
-
1298
- // add loading
1299
- var $tr = $('<tr class="acf-field"><td class="acf-label"></td><td class="acf-input"><div class="acf-loading"></div></td></tr>');
1300
-
1301
-
1302
- // add $tr
1303
- $tbody.children('.acf-field[data-name="conditional_logic"]').before( $tr );
1304
-
1305
-
1306
- var ajax_data = {
1307
- action : 'acf/field_group/render_field_settings',
1308
- nonce : acf.o.nonce,
1309
- parent : acf.o.post_id,
1310
- field_group : acf.o.post_id,
1311
- prefix : $select.attr('name').replace('[type]', ''),
1312
- type : new_type
1313
- };
1314
-
1315
-
1316
- // parent
1317
- if( $parent.exists() ) {
1318
-
1319
- ajax_data.parent = this.get_field_meta( $parent, 'ID' );
1320
-
1321
- }
1322
-
1323
-
1324
- // ajax
1325
- var xhr = $.ajax({
1326
- url: acf.o.ajaxurl,
1327
- data: ajax_data,
1328
- type: 'post',
1329
- dataType: 'html',
1330
- success: function( html ){
1331
-
1332
- // bail early if no html
1333
- if( !html ) {
1334
-
1335
- return;
1336
-
1337
- }
1338
-
1339
-
1340
- // vars
1341
- var $new_tr = $(html);
1342
-
1343
-
1344
- // replace
1345
- $tr.after( $new_tr );
1346
-
1347
-
1348
- // trigger event
1349
- acf.do_action('append', $new_tr);
1350
- acf.do_action('change_field_type', $el);
1351
-
1352
-
1353
- },
1354
- complete : function(){
1355
-
1356
- // this function will also be triggered by $el.data('xhr').abort();
1357
- $tr.remove();
1358
-
1359
- }
1360
- });
1361
-
1362
-
1363
- // update el data
1364
- $el.data('xhr', xhr);
1365
-
1366
- },
1367
-
1368
- /*
1369
- * change_field_label
1370
- *
1371
- * This function is triggered when changing the field's label
1372
- *
1373
- * @type function
1374
- * @date 8/04/2014
1375
- * @since 5.0.0
1376
- *
1377
- * @param $el
1378
- * @return n/a
1379
- */
1380
-
1381
- change_field_label: function( $el ) {
1382
-
1383
- // vars
1384
- var $label = $el.find('.field-label:first'),
1385
- $name = $el.find('.field-name:first'),
1386
- type = $el.attr('data-type');
1387
-
1388
-
1389
- // render name
1390
- if( $name.val() == '' ) {
1391
-
1392
- // vars
1393
- var s = $label.val();
1394
-
1395
-
1396
- // sanitize
1397
- s = acf.str_sanitize(s);
1398
-
1399
-
1400
- // update name
1401
- $name.val( s ).trigger('change');
1402
-
1403
- }
1404
-
1405
-
1406
- // render field
1407
- this.render_field( $el );
1408
-
1409
-
1410
- // action for 3rd party customization
1411
- acf.do_action('change_field_label', $el);
1412
-
1413
- },
1414
-
1415
- /*
1416
- * change_field_name
1417
- *
1418
- * This function is triggered when changing the field's name
1419
- *
1420
- * @type function
1421
- * @date 8/04/2014
1422
- * @since 5.0.0
1423
- *
1424
- * @param $el
1425
- * @return n/a
1426
- */
1427
-
1428
- change_field_name: function( $el ) {
1429
-
1430
- // vars
1431
- var $name = $el.find('.field-name:first');
1432
-
1433
- if( $name.val().substr(0, 6) === 'field_' ) {
1434
-
1435
- alert( acf._e('field_name_start') );
1436
-
1437
- setTimeout(function(){
1438
-
1439
- $name.focus();
1440
-
1441
- }, 1);
1442
-
1443
- }
1444
-
1445
-
1446
- // action for 3rd party customization
1447
- acf.do_action('change_field_name', $el);
1448
-
1449
- }
1450
-
1451
- });
1452
-
1453
-
1454
- /*
1455
- * field
1456
- *
1457
- * This model will handle field events
1458
- *
1459
- * @type function
1460
- * @date 19/08/2015
1461
- * @since 5.2.3
1462
- *
1463
- * @param $post_id (int)
1464
- * @return $post_id (int)
1465
- */
1466
-
1467
- acf.field_group.field = acf.model.extend({
1468
-
1469
- events: {
1470
- 'click .edit-field': 'edit',
1471
- 'click .duplicate-field': 'duplicate',
1472
- 'click .move-field': 'move',
1473
- 'click .delete-field': 'delete',
1474
- 'click .add-field': 'add',
1475
-
1476
- 'change .field-type': 'change_type',
1477
- 'blur .field-label': 'change_label',
1478
- 'blur .field-name': 'change_name',
1479
-
1480
- 'keyup .field-label': 'render',
1481
- 'keyup .field-name': 'render',
1482
- 'change .field-required': 'render',
1483
-
1484
- 'change .acf-field-object input': 'save',
1485
- 'change .acf-field-object textarea': 'save',
1486
- 'change .acf-field-object select': 'save'
1487
- },
1488
-
1489
- event: function( e ){
1490
-
1491
- // append $field
1492
- e.$field = e.$el.closest('.acf-field-object');
1493
-
1494
-
1495
- // return
1496
- return e;
1497
-
1498
- },
1499
-
1500
-
1501
- /*
1502
- * events
1503
- *
1504
- * description
1505
- *
1506
- * @type function
1507
- * @date 19/08/2015
1508
- * @since 5.2.3
1509
- *
1510
- * @param $post_id (int)
1511
- * @return $post_id (int)
1512
- */
1513
-
1514
- edit: function( e ){
1515
-
1516
- acf.field_group.edit_field( e.$field );
1517
-
1518
- },
1519
-
1520
- duplicate: function( e ){
1521
-
1522
- acf.field_group.duplicate_field( e.$field );
1523
-
1524
- },
1525
-
1526
- move: function( e ){
1527
-
1528
- acf.field_group.move_field( e.$field );
1529
-
1530
- },
1531
-
1532
- delete: function( e ){
1533
-
1534
- acf.field_group.delete_field( e.$field );
1535
-
1536
- },
1537
-
1538
- add: function( e ){
1539
-
1540
- var $list = e.$el.closest('.acf-field-list-wrap').children('.acf-field-list');
1541
-
1542
- acf.field_group.add_field( $list );
1543
-
1544
- },
1545
-
1546
- change_type: function( e ){
1547
-
1548
- acf.field_group.change_field_type( e.$el );
1549
-
1550
- },
1551
-
1552
- change_label: function( e ){
1553
-
1554
- acf.field_group.change_field_label( e.$field );
1555
-
1556
- },
1557
-
1558
- change_name: function( e ){
1559
-
1560
- acf.field_group.change_field_name( e.$field );
1561
-
1562
- },
1563
-
1564
- render: function( e ){
1565
-
1566
- acf.field_group.render_field( e.$field );
1567
-
1568
- },
1569
-
1570
- save: function( e ){
1571
-
1572
- acf.field_group.save_field( e.$field );
1573
-
1574
- }
1575
-
1576
- });
1577
-
1578
-
1579
- /*
1580
- * conditions
1581
- *
1582
- * This model will handle conditional logic events
1583
- *
1584
- * @type function
1585
- * @date 19/08/2015
1586
- * @since 5.2.3
1587
- *
1588
- * @param $post_id (int)
1589
- * @return $post_id (int)
1590
- */
1591
-
1592
- acf.field_group.conditional_logic = acf.model.extend({
1593
-
1594
- actions: {
1595
- 'open_field': 'render_field',
1596
- 'change_field_label': 'render_fields',
1597
- 'change_field_type': 'render_fields'
1598
- },
1599
-
1600
- events: {
1601
- 'click .add-conditional-rule': 'add_rule',
1602
- 'click .add-conditional-group': 'add_group',
1603
- 'click .remove-conditional-rule': 'remove_rule',
1604
- 'change .conditional-toggle': 'change_toggle',
1605
- 'change .conditional-rule-param': 'change_param'
1606
- },
1607
-
1608
-
1609
- /*
1610
- * render_fields
1611
- *
1612
- * description
1613
- *
1614
- * @type function
1615
- * @date 19/08/2015
1616
- * @since 5.2.3
1617
- *
1618
- * @param $post_id (int)
1619
- * @return $post_id (int)
1620
- */
1621
-
1622
- render_fields: function(){
1623
-
1624
- var self = this;
1625
-
1626
- $('.acf-field-object.open').each(function(){
1627
-
1628
- self.render_field( $(this) );
1629
-
1630
- });
1631
-
1632
- },
1633
-
1634
-
1635
- /*
1636
- * render_field
1637
- *
1638
- * This function will render the conditional logic fields for a given field
1639
- *
1640
- * @type function
1641
- * @date 8/04/2014
1642
- * @since 5.0.0
1643
- *
1644
- * @param $field
1645
- * @return n/a
1646
- */
1647
-
1648
- render_field: function( $field ){
1649
-
1650
- // reference
1651
- var self = this;
1652
-
1653
-
1654
- // vars
1655
- var key = $field.attr('data-key');
1656
- var $lists = $field.parents('.acf-field-list');
1657
- var $tr = $field.find('.acf-field-setting-conditional_logic:last');
1658
-
1659
-
1660
- // choices
1661
- var choices = [];
1662
-
1663
-
1664
- // loop over ancestor lists
1665
- $.each( $lists, function( i ){
1666
-
1667
- // vars
1668
- var group = (i == 0) ? acf._e('sibling_fields') : acf._e('parent_fields');
1669
-
1670
-
1671
- // loop over fields
1672
- $(this).children('.acf-field-object').each(function(){
1673
-
1674
- // vars
1675
- var $this_field = $(this),
1676
- this_key = $this_field.attr('data-key'),
1677
- this_type = $this_field.attr('data-type'),
1678
- this_label = $this_field.find('.field-label:first').val();
1679
-
1680
-
1681
- // validate
1682
- if( $.inArray(this_type, ['select', 'checkbox', 'true_false', 'radio', 'button_group']) === -1 ) {
1683
-
1684
- return;
1685
-
1686
- } else if( this_key == key ) {
1687
-
1688
- return;
1689
-
1690
- }
1691
-
1692
-
1693
- // add this field to available triggers
1694
- choices.push({
1695
- value: this_key,
1696
- label: this_label,
1697
- group: group
1698
- });
1699
-
1700
- });
1701
-
1702
- });
1703
-
1704
-
1705
- // empty?
1706
- if( !choices.length ) {
1707
-
1708
- choices.push({
1709
- value: '',
1710
- label: acf._e('no_fields')
1711
- });
1712
-
1713
- }
1714
-
1715
-
1716
- // create select fields
1717
- $tr.find('.rule').each(function(){
1718
-
1719
- self.render_rule( $(this), choices );
1720
-
1721
- });
1722
-
1723
- },
1724
-
1725
-
1726
- /*
1727
- * populate_triggers
1728
- *
1729
- * description
1730
- *
1731
- * @type function
1732
- * @date 22/08/2015
1733
- * @since 5.2.3
1734
- *
1735
- * @param $post_id (int)
1736
- * @return $post_id (int)
1737
- */
1738
-
1739
- render_rule: function( $tr, triggers ) {
1740
-
1741
- // vars
1742
- var $trigger = $tr.find('.conditional-rule-param'),
1743
- $value = $tr.find('.conditional-rule-value');
1744
-
1745
-
1746
- // populate triggers
1747
- if( triggers ) {
1748
-
1749
- acf.render_select( $trigger, triggers );
1750
-
1751
- }
1752
-
1753
-
1754
- // vars
1755
- var $field = $('.acf-field-object[data-key="' + $trigger.val() + '"]'),
1756
- field_type = $field.attr('data-type'),
1757
- choices = [];
1758
-
1759
-
1760
- // populate choices
1761
- if( field_type == "true_false" ) {
1762
-
1763
- choices.push({
1764
- 'value': 1,
1765
- 'label': acf._e('checked')
1766
- });
1767
-
1768
- // select
1769
- } else if( field_type == "select" || field_type == "checkbox" || field_type == "radio" || field_type == "button_group" ) {
1770
-
1771
- // vars
1772
- var lines = $field.find('.acf-field[data-name="choices"] textarea').val().split("\n");
1773
-
1774
- $.each(lines, function(i, line){
1775
-
1776
- // explode
1777
- line = line.split(':');
1778
-
1779
-
1780
- // default label to value
1781
- line[1] = line[1] || line[0];
1782
-
1783
-
1784
- // append
1785
- choices.push({
1786
- 'value': $.trim( line[0] ),
1787
- 'label': $.trim( line[1] )
1788
- });
1789
-
1790
- });
1791
-
1792
-
1793
- // allow null
1794
- var $allow_null = $field.find('.acf-field[data-name="allow_null"]');
1795
-
1796
- if( $allow_null.exists() ) {
1797
-
1798
- if( $allow_null.find('input:checked').val() == '1' ) {
1799
-
1800
- choices.unshift({
1801
- 'value': '',
1802
- 'label': acf._e('null')
1803
- });
1804
-
1805
- }
1806
-
1807
- }
1808
-
1809
- }
1810
-
1811
-
1812
- // update select
1813
- acf.render_select( $value, choices );
1814
-
1815
- },
1816
-
1817
-
1818
- /*
1819
- * change_toggle
1820
- *
1821
- * This function is triggered by changing the 'Conditional Logic' radio button
1822
- *
1823
- * @type function
1824
- * @date 8/04/2014
1825
- * @since 5.0.0
1826
- *
1827
- * @param $input
1828
- * @return n/a
1829
- */
1830
-
1831
- change_toggle: function( e ){
1832
-
1833
- // vars
1834
- var $input = e.$el,
1835
- checked = e.$el.prop('checked'),
1836
- $td = $input.closest('.acf-input');
1837
-
1838
-
1839
- if( checked ) {
1840
-
1841
- $td.find('.rule-groups').show();
1842
- $td.find('.rule-groups').find('[name]').prop('disabled', false);
1843
-
1844
- } else {
1845
-
1846
- $td.find('.rule-groups').hide();
1847
- $td.find('.rule-groups').find('[name]').prop('disabled', true);
1848
-
1849
- }
1850
-
1851
- },
1852
-
1853
-
1854
- /*
1855
- * change_trigger
1856
- *
1857
- * This function is triggered by changing a 'Conditional Logic' trigger
1858
- *
1859
- * @type function
1860
- * @date 8/04/2014
1861
- * @since 5.0.0
1862
- *
1863
- * @param $select
1864
- * @return n/a
1865
- */
1866
-
1867
- change_param: function( e ){
1868
-
1869
- // vars
1870
- var $rule = e.$el.closest('.rule');
1871
-
1872
-
1873
- // render
1874
- this.render_rule( $rule );
1875
-
1876
- },
1877
-
1878
-
1879
- /*
1880
- * add_rule
1881
- *
1882
- * This function will add a new rule below the specified $tr
1883
- *
1884
- * @type function
1885
- * @date 8/04/2014
1886
- * @since 5.0.0
1887
- *
1888
- * @param $tr
1889
- * @return n/a
1890
- */
1891
-
1892
- add_rule: function( e ){
1893
-
1894
- // vars
1895
- var $tr = e.$el.closest('tr');
1896
-
1897
-
1898
- // duplicate
1899
- $tr2 = acf.duplicate( $tr );
1900
-
1901
-
1902
- // save field
1903
- $tr2.find('select:first').trigger('change');
1904
-
1905
- },
1906
-
1907
-
1908
- /*
1909
- * remove_rule
1910
- *
1911
- * This function will remove the $tr and potentially the group
1912
- *
1913
- * @type function
1914
- * @date 8/04/2014
1915
- * @since 5.0.0
1916
- *
1917
- * @param $tr
1918
- * @return n/a
1919
- */
1920
-
1921
- remove_rule: function( e ){
1922
-
1923
- // vars
1924
- var $tr = e.$el.closest('tr');
1925
-
1926
-
1927
- // save field
1928
- $tr.find('select:first').trigger('change');
1929
-
1930
-
1931
- if( $tr.siblings('tr').length == 0 ) {
1932
-
1933
- // remove group
1934
- $tr.closest('.rule-group').remove();
1935
-
1936
- }
1937
-
1938
-
1939
- // remove tr
1940
- $tr.remove();
1941
-
1942
-
1943
- },
1944
-
1945
-
1946
- /*
1947
- * add_group
1948
- *
1949
- * This function will add a new rule group to the given $groups container
1950
- *
1951
- * @type function
1952
- * @date 8/04/2014
1953
- * @since 5.0.0
1954
- *
1955
- * @param $tr
1956
- * @return n/a
1957
- */
1958
-
1959
- add_group: function( e ){
1960
-
1961
- // vars
1962
- var $groups = e.$el.closest('.rule-groups'),
1963
- $group = $groups.find('.rule-group:last');
1964
-
1965
-
1966
- // duplicate
1967
- $group2 = acf.duplicate( $group );
1968
-
1969
-
1970
- // update h4
1971
- $group2.find('h4').text( acf._e('or') );
1972
-
1973
-
1974
- // remove all tr's except the first one
1975
- $group2.find('tr:not(:first)').remove();
1976
-
1977
-
1978
- // save field
1979
- $group2.find('select:first').trigger('change');
1980
-
1981
- }
1982
-
1983
- });
1984
-
1985
-
1986
- /*
1987
- * locations
1988
- *
1989
- * This model will handle location rule events
1990
- *
1991
- * @type function
1992
- * @date 19/08/2015
1993
- * @since 5.2.3
1994
- *
1995
- * @param $post_id (int)
1996
- * @return $post_id (int)
1997
- */
1998
-
1999
- acf.field_group.locations = acf.model.extend({
2000
-
2001
- events: {
2002
- 'click .add-location-rule': 'add_rule',
2003
- 'click .add-location-group': 'add_group',
2004
- 'click .remove-location-rule': 'remove_rule',
2005
- 'change .refresh-location-rule': 'change_rule'
2006
- },
2007
-
2008
-
2009
- /*
2010
- * add_rule
2011
- *
2012
- * This function will add a new rule below the specified $tr
2013
- *
2014
- * @type function
2015
- * @date 8/04/2014
2016
- * @since 5.0.0
2017
- *
2018
- * @param $tr
2019
- * @return n/a
2020
- */
2021
-
2022
- add_rule: function( e ){
2023
-
2024
- // vars
2025
- var $tr = e.$el.closest('tr');
2026
-
2027
-
2028
- // duplicate
2029
- $tr2 = acf.duplicate( $tr );
2030
-
2031
-
2032
- // action
2033
- //acf.do_action('add_location_rule', $tr2);
2034
-
2035
- },
2036
-
2037
-
2038
- /*
2039
- * remove_rule
2040
- *
2041
- * This function will remove the $tr and potentially the group
2042
- *
2043
- * @type function
2044
- * @date 8/04/2014
2045
- * @since 5.0.0
2046
- *
2047
- * @param $tr
2048
- * @return n/a
2049
- */
2050
-
2051
- remove_rule: function( e ){
2052
-
2053
- // vars
2054
- var $tr = e.$el.closest('tr');
2055
-
2056
-
2057
- // action
2058
- //acf.do_action('remove_location_rule', $tr);
2059
-
2060
-
2061
- // remove
2062
- if( $tr.siblings('tr').length == 0 ) {
2063
-
2064
- // remove group
2065
- $tr.closest('.rule-group').remove();
2066
-
2067
- } else {
2068
-
2069
- // remove tr
2070
- $tr.remove();
2071
-
2072
- }
2073
-
2074
- },
2075
-
2076
-
2077
- /*
2078
- * add_group
2079
- *
2080
- * This function will add a new rule group to the given $groups container
2081
- *
2082
- * @type function
2083
- * @date 8/04/2014
2084
- * @since 5.0.0
2085
- *
2086
- * @param $tr
2087
- * @return n/a
2088
- */
2089
-
2090
- add_group: function( e ){
2091
-
2092
- // vars
2093
- var $groups = e.$el.closest('.rule-groups'),
2094
- $group = $groups.find('.rule-group:last');
2095
-
2096
-
2097
- // duplicate
2098
- $group2 = acf.duplicate( $group );
2099
-
2100
-
2101
- // update h4
2102
- $group2.find('h4').text( acf._e('or') );
2103
-
2104
-
2105
- // remove all tr's except the first one
2106
- $group2.find('tr:not(:first)').remove();
2107
-
2108
-
2109
- // vars
2110
- //var $tr = $group2.find('tr');
2111
-
2112
-
2113
- // action
2114
- //acf.do_action('add_location_rule', $tr);
2115
-
2116
- },
2117
-
2118
-
2119
- /*
2120
- * change_rule
2121
- *
2122
- * This function is triggered when changing a location rule trigger
2123
- *
2124
- * @type function
2125
- * @date 8/04/2014
2126
- * @since 5.0.0
2127
- *
2128
- * @param $select
2129
- * @return n/a
2130
- */
2131
-
2132
- change_rule: function( e ){
2133
-
2134
- // vars
2135
- var $rule = e.$el.closest('tr');
2136
- var $group = $rule.closest('.rule-group');
2137
- var prefix = $rule.find('td.param select').attr('name').replace('[param]', '');
2138
-
2139
-
2140
- // ajax data
2141
- var ajaxdata = {
2142
- action: 'acf/field_group/render_location_rule',
2143
- rule: acf.serialize( $rule, prefix ),
2144
- };
2145
-
2146
-
2147
- // append to data
2148
- ajaxdata.rule.id = $rule.attr('data-id');
2149
- ajaxdata.rule.group = $group.attr('data-id');
2150
-
2151
-
2152
- // ajax
2153
- $.ajax({
2154
- url: acf.get('ajaxurl'),
2155
- data: acf.prepare_for_ajax(ajaxdata),
2156
- type: 'post',
2157
- dataType: 'html',
2158
- success: function( html ){
2159
-
2160
- // bail early if no html
2161
- if( !html ) return;
2162
-
2163
-
2164
- // update
2165
- $rule.replaceWith( html );
2166
-
2167
-
2168
- // action
2169
- //acf.do_action('change_location_rule', $rule);
2170
-
2171
- }
2172
- });
2173
-
2174
- }
2175
- });
2176
-
2177
-
2178
- /*
2179
- * field
2180
- *
2181
- * This model sets up many of the field's interactions
2182
- *
2183
- * @type function
2184
- * @date 21/02/2014
2185
- * @since 3.5.1
2186
- *
2187
- * @param n/a
2188
- * @return n/a
2189
- */
2190
-
2191
- acf.field_group.field_object = acf.model.extend({
2192
-
2193
- // vars
2194
- type: '',
2195
- o: {},
2196
- $field: null,
2197
- $settings: null,
2198
-
2199
- tag: function( tag ) {
2200
-
2201
- // vars
2202
- var type = this.type;
2203
-
2204
-
2205
- // explode, add 'field' and implode
2206
- // - open => open_field
2207
- // - change_type => change_field_type
2208
- var tags = tag.split('_');
2209
- tags.splice(1, 0, 'field');
2210
- tag = tags.join('_');
2211
-
2212
-
2213
- // add type
2214
- if( type ) {
2215
- tag += '/type=' + type;
2216
- }
2217
-
2218
-
2219
- // return
2220
- return tag;
2221
-
2222
- },
2223
-
2224
- selector: function(){
2225
-
2226
- // vars
2227
- var selector = '.acf-field-object';
2228
- var type = this.type;
2229
-
2230
-
2231
- // add type
2232
- if( type ) {
2233
- selector += '-' + type;
2234
- selector = acf.str_replace('_', '-', selector);
2235
- }
2236
-
2237
-
2238
- // return
2239
- return selector;
2240
-
2241
- },
2242
-
2243
- _add_action: function( name, callback ) {
2244
-
2245
- // vars
2246
- var model = this;
2247
-
2248
-
2249
- // add action
2250
- acf.add_action( this.tag(name), function( $field ){
2251
-
2252
- // focus
2253
- model.set('$field', $field);
2254
-
2255
-
2256
- // callback
2257
- model[ callback ].apply(model, arguments);
2258
-
2259
- });
2260
-
2261
- },
2262
-
2263
- _add_filter: function( name, callback ) {
2264
-
2265
- // vars
2266
- var model = this;
2267
-
2268
-
2269
- // add action
2270
- acf.add_filter( this.tag(name), function( $field ){
2271
-
2272
- // focus
2273
- model.set('$field', $field);
2274
-
2275
-
2276
- // callback
2277
- model[ callback ].apply(model, arguments);
2278
-
2279
- });
2280
-
2281
- },
2282
-
2283
- _add_event: function( name, callback ) {
2284
-
2285
- // vars
2286
- var model = this;
2287
- var event = name.substr(0,name.indexOf(' '));
2288
- var selector = name.substr(name.indexOf(' ')+1);
2289
- var context = this.selector();
2290
-
2291
-
2292
- // add event
2293
- $(document).on(event, context + ' ' + selector, function( e ){
2294
-
2295
- // append $el to event object
2296
- e.$el = $(this);
2297
- e.$field = e.$el.closest('.acf-field-object');
2298
-
2299
-
2300
- // focus
2301
- model.set('$field', e.$field);
2302
-
2303
-
2304
- // callback
2305
- model[ callback ].apply(model, [e]);
2306
-
2307
- });
2308
-
2309
- },
2310
-
2311
- _set_$field: function(){
2312
-
2313
- // vars
2314
- this.o = this.$field.data();
2315
-
2316
-
2317
- // els
2318
- this.$settings = this.$field.find('> .settings > table > tbody');
2319
-
2320
-
2321
- // focus
2322
- this.focus();
2323
-
2324
- },
2325
-
2326
- focus: function(){
2327
-
2328
- // do nothing
2329
-
2330
- },
2331
-
2332
- setting: function( name ) {
2333
-
2334
- return this.$settings.find('> .acf-field-setting-' + name);
2335
-
2336
- }
2337
-
2338
- });
2339
-
2340
-
2341
- /*
2342
- * field
2343
- *
2344
- * This model fires actions and filters for registered fields
2345
- *
2346
- * @type function
2347
- * @date 21/02/2014
2348
- * @since 3.5.1
2349
- *
2350
- * @param n/a
2351
- * @return n/a
2352
- */
2353
-
2354
- acf.field_group.field_objects = acf.model.extend({
2355
-
2356
- actions: {
2357
- 'save_field' : '_save_field',
2358
- 'open_field' : '_open_field',
2359
- 'close_field' : '_close_field',
2360
- 'wipe_field' : '_wipe_field',
2361
- 'add_field' : '_add_field',
2362
- 'duplicate_field' : '_duplicate_field',
2363
- 'delete_field' : '_delete_field',
2364
- 'change_field_type' : '_change_field_type',
2365
- 'change_field_label' : '_change_field_label',
2366
- 'change_field_name' : '_change_field_name',
2367
- 'render_field_settings' : '_render_field_settings'
2368
- },
2369
-
2370
- _save_field: function( $el ){
2371
-
2372
- acf.do_action('save_field/type=' + $el.data('type'), $el);
2373
-
2374
- },
2375
-
2376
- _open_field: function( $el ){
2377
-
2378
- acf.do_action('open_field/type=' + $el.data('type'), $el);
2379
- acf.do_action('render_field_settings', $el);
2380
-
2381
- },
2382
-
2383
- _close_field: function( $el ){
2384
-
2385
- acf.do_action('close_field/type=' + $el.data('type'), $el);
2386
-
2387
- },
2388
-
2389
- _wipe_field: function( $el ){
2390
-
2391
- acf.do_action('wipe_field/type=' + $el.data('type'), $el);
2392
-
2393
- },
2394
-
2395
- _add_field: function( $el ){
2396
-
2397
- acf.do_action('add_field/type=' + $el.data('type'), $el);
2398
-
2399
- },
2400
-
2401
- _duplicate_field: function( $el ){
2402
-
2403
- acf.do_action('duplicate_field/type=' + $el.data('type'), $el);
2404
-
2405
- },
2406
-
2407
- _delete_field: function( $el ){
2408
-
2409
- acf.do_action('delete_field/type=' + $el.data('type'), $el);
2410
-
2411
- },
2412
-
2413
- _change_field_type: function( $el ){
2414
-
2415
- acf.do_action('change_field_type/type=' + $el.data('type'), $el);
2416
- acf.do_action('render_field_settings', $el);
2417
- },
2418
-
2419
- _change_field_label: function( $el ){
2420
-
2421
- acf.do_action('change_field_label/type=' + $el.data('type'), $el);
2422
-
2423
- },
2424
-
2425
- _change_field_name: function( $el ){
2426
-
2427
- acf.do_action('change_field_name/type=' + $el.data('type'), $el);
2428
-
2429
- },
2430
-
2431
- _render_field_settings: function( $el ){
2432
-
2433
- acf.do_action('render_field_settings/type=' + $el.data('type'), $el);
2434
-
2435
- }
2436
-
2437
- });
2438
-
2439
-
2440
-
2441
- /*
2442
- * Append
2443
- *
2444
- * This model handles all logic to append fields together
2445
- *
2446
- * @type function
2447
- * @date 12/02/2015
2448
- * @since 5.5.0
2449
- *
2450
- * @param n/a
2451
- * @return n/a
2452
- */
2453
-
2454
- acf.field_group.append = acf.model.extend({
2455
-
2456
- actions: {
2457
- 'render_field_settings' : '_render_field_settings'
2458
- },
2459
-
2460
- render: function( $el ){
2461
-
2462
- // vars
2463
- var append = $el.data('append');
2464
-
2465
-
2466
- // find sibling
2467
- $sibling = $el.siblings('[data-name="' + append + '"]');
2468
-
2469
-
2470
- // bail early if no sibling
2471
- if( !$sibling.exists() ) return;
2472
-
2473
-
2474
- // vars
2475
- var $wrap = $sibling.children('.acf-input'),
2476
- $ul = $wrap.children('.acf-hl');
2477
-
2478
-
2479
- // append ul if doesn't exist
2480
- if( !$ul.exists() ) {
2481
-
2482
- $wrap.wrapInner('<ul class="acf-hl"><li></li></ul>');
2483
-
2484
- $ul = $wrap.children('.acf-hl');
2485
-
2486
- }
2487
-
2488
-
2489
- // create $li
2490
- var $li = $('<li></li>').append( $el.children('.acf-input').children() );
2491
-
2492
-
2493
- // append $li
2494
- $ul.append( $li );
2495
-
2496
-
2497
- // update cols
2498
- $ul.attr('data-cols', $ul.children().length );
2499
-
2500
-
2501
- // remove
2502
- $el.remove();
2503
-
2504
- },
2505
-
2506
- _render_field_settings: function( $el ){
2507
-
2508
- // reference
2509
- var self = this;
2510
-
2511
-
2512
- // loop
2513
- $el.find('.acf-field[data-append]').each(function(){
2514
-
2515
- self.render( $(this) );
2516
-
2517
- });
2518
-
2519
- }
2520
-
2521
- });
2522
-
2523
-
2524
-
2525
- /*
2526
- * Select
2527
- *
2528
- * This field type requires some extra logic for its settings
2529
- *
2530
- * @type function
2531
- * @date 24/10/13
2532
- * @since 5.0.0
2533
- *
2534
- * @param n/a
2535
- * @return n/a
2536
- */
2537
-
2538
- var acf_settings_select = acf.field_group.field_object.extend({
2539
-
2540
- type: 'select',
2541
-
2542
- actions: {
2543
- 'render_settings': 'render'
2544
- },
2545
-
2546
- events: {
2547
- 'change .acf-field-setting-ui input': 'render'
2548
- },
2549
-
2550
- render: function( $el ){
2551
-
2552
- // ui checked
2553
- if( this.setting('ui input[type="checkbox"]').prop('checked') ) {
2554
-
2555
- this.setting('ajax').show();
2556
-
2557
- // ui not checked
2558
- } else {
2559
-
2560
- this.setting('ajax').hide();
2561
- this.setting('ajax input[type="checkbox"]').prop('checked', false).trigger('change');
2562
-
2563
- }
2564
-
2565
- }
2566
-
2567
- });
2568
-
2569
-
2570
- /*
2571
- * Radio
2572
- *
2573
- * This field type requires some extra logic for its settings
2574
- *
2575
- * @type function
2576
- * @date 24/10/13
2577
- * @since 5.0.0
2578
- *
2579
- * @param n/a
2580
- * @return n/a
2581
- */
2582
-
2583
- var acf_settings_radio = acf.field_group.field_object.extend({
2584
-
2585
- type: 'radio',
2586
-
2587
- actions: {
2588
- 'render_settings': 'render'
2589
- },
2590
-
2591
- events: {
2592
- 'change .acf-field-setting-other_choice input': 'render'
2593
- },
2594
-
2595
- render: function( $el ){
2596
-
2597
- // other_choice checked
2598
- if( this.setting('other_choice input[type="checkbox"]').prop('checked') ) {
2599
-
2600
- this.setting('save_other_choice').show();
2601
-
2602
- // other_choice not checked
2603
- } else {
2604
-
2605
- this.setting('save_other_choice').hide();
2606
- this.setting('save_other_choice input[type="checkbox"]').prop('checked', false).trigger('change');
2607
-
2608
- }
2609
-
2610
- }
2611
-
2612
- });
2613
-
2614
-
2615
- /*
2616
- * Radio
2617
- *
2618
- * This field type requires some extra logic for its settings
2619
- *
2620
- * @type function
2621
- * @date 24/10/13
2622
- * @since 5.0.0
2623
- *
2624
- * @param n/a
2625
- * @return n/a
2626
- */
2627
-
2628
- var acf_settings_checkbox = acf.field_group.field_object.extend({
2629
-
2630
- type: 'checkbox',
2631
-
2632
- actions: {
2633
- 'render_settings': 'render'
2634
- },
2635
-
2636
- events: {
2637
- 'change .acf-field-setting-allow_custom input': 'render'
2638
- },
2639
-
2640
- render: function( $el ){
2641
-
2642
- // other_choice checked
2643
- if( this.setting('allow_custom input[type="checkbox"]').prop('checked') ) {
2644
-
2645
- this.setting('save_custom').show();
2646
-
2647
- // other_choice not checked
2648
- } else {
2649
-
2650
- this.setting('save_custom').hide();
2651
- this.setting('save_custom input[type="checkbox"]').prop('checked', false).trigger('change');
2652
-
2653
- }
2654
-
2655
- }
2656
-
2657
- });
2658
-
2659
-
2660
- /*
2661
- * True false
2662
- *
2663
- * This field type requires some extra logic for its settings
2664
- *
2665
- * @type function
2666
- * @date 24/10/13
2667
- * @since 5.0.0
2668
- *
2669
- * @param n/a
2670
- * @return n/a
2671
- */
2672
-
2673
- var acf_settings_true_false = acf.field_group.field_object.extend({
2674
-
2675
- type: 'true_false',
2676
-
2677
- actions: {
2678
- 'render_settings': 'render'
2679
- },
2680
-
2681
- events: {
2682
- 'change .acf-field-setting-ui input': 'render'
2683
- },
2684
-
2685
- render: function( $el ){
2686
-
2687
- // ui checked
2688
- if( this.setting('ui input[type="checkbox"]').prop('checked') ) {
2689
-
2690
- this.setting('ui_on_text').show();
2691
- this.setting('ui_off_text').show();
2692
-
2693
- // ui not checked
2694
- } else {
2695
-
2696
- this.setting('ui_on_text').hide();
2697
- this.setting('ui_off_text').hide();
2698
-
2699
- }
2700
-
2701
- }
2702
-
2703
- });
2704
-
2705
-
2706
- /*
2707
- * Date Picker
2708
- *
2709
- * This field type requires some extra logic for its settings
2710
- *
2711
- * @type function
2712
- * @date 24/10/13
2713
- * @since 5.0.0
2714
- *
2715
- * @param n/a
2716
- * @return n/a
2717
- */
2718
-
2719
- var acf_settings_date_picker = acf.field_group.field_object.extend({
2720
-
2721
- type: 'date_picker',
2722
-
2723
- actions: {
2724
- 'render_settings': 'render'
2725
- },
2726
-
2727
- events: {
2728
- 'change .acf-field-setting-display_format input': 'render',
2729
- 'change .acf-field-setting-return_format input': 'render'
2730
- },
2731
-
2732
- render: function( $el ){
2733
-
2734
- this.render_list( this.setting('display_format') );
2735
- this.render_list( this.setting('return_format') );
2736
-
2737
- },
2738
-
2739
- render_list: function( $setting ){
2740
-
2741
- // vars
2742
- var $ul = $setting.find('ul'),
2743
- $radio = $ul.find('input[type="radio"]:checked'),
2744
- $other = $ul.find('input[type="text"]');
2745
-
2746
-
2747
- // display val
2748
- if( $radio.val() != 'other' ) {
2749
-
2750
- $other.val( $radio.val() );
2751
-
2752
- }
2753
-
2754
- }
2755
-
2756
- });
2757
-
2758
-
2759
- /*
2760
- * Date Time Picker
2761
- *
2762
- * This field type requires some extra logic for its settings
2763
- *
2764
- * @type function
2765
- * @date 24/10/13
2766
- * @since 5.0.0
2767
- *
2768
- * @param n/a
2769
- * @return n/a
2770
- */
2771
-
2772
- var acf_settings_date_time_picker = acf_settings_date_picker.extend({
2773
-
2774
- type: 'date_time_picker'
2775
-
2776
- });
2777
-
2778
-
2779
- /*
2780
- * Time Picker
2781
- *
2782
- * This field type requires some extra logic for its settings
2783
- *
2784
- * @type function
2785
- * @date 24/10/13
2786
- * @since 5.0.0
2787
- *
2788
- * @param n/a
2789
- * @return n/a
2790
- */
2791
-
2792
- var acf_settings_date_time_picker = acf_settings_date_picker.extend({
2793
-
2794
- type: 'time_picker'
2795
-
2796
- });
2797
-
2798
-
2799
- /*
2800
- * tab
2801
- *
2802
- * description
2803
- *
2804
- * @type function
2805
- * @date 12/02/2015
2806
- * @since 5.1.5
2807
- *
2808
- * @param $post_id (int)
2809
- * @return $post_id (int)
2810
- */
2811
-
2812
- var acf_settings_tab = acf.field_group.field_object.extend({
2813
-
2814
- type: 'tab',
2815
-
2816
- actions: {
2817
- 'render_settings': 'render'
2818
- },
2819
-
2820
- render: function( $el ){
2821
-
2822
- // clear name
2823
- this.setting('name input').val('').trigger('change');
2824
-
2825
-
2826
- // clear required
2827
- this.setting('required input[type="checkbox"]').prop('checked', false).trigger('change');
2828
-
2829
- }
2830
-
2831
- });
2832
-
2833
-
2834
- /*
2835
- * message
2836
- *
2837
- * description
2838
- *
2839
- * @type function
2840
- * @date 12/02/2015
2841
- * @since 5.1.5
2842
- *
2843
- * @param $post_id (int)
2844
- * @return $post_id (int)
2845
- */
2846
-
2847
- var acf_settings_message = acf_settings_tab.extend({
2848
-
2849
- type: 'message'
2850
-
2851
- });
2852
-
2853
-
2854
- /*
2855
- * screen
2856
- *
2857
- * description
2858
- *
2859
- * @type function
2860
- * @date 23/07/2015
2861
- * @since 5.2.3
2862
- *
2863
- * @param $post_id (int)
2864
- * @return $post_id (int)
2865
- */
2866
-
2867
- acf.field_group.screen = acf.model.extend({
2868
-
2869
- actions: {
2870
- 'ready': 'ready'
2871
- },
2872
-
2873
- events: {
2874
- 'click #acf-field-key-hide': 'toggle'
2875
- },
2876
-
2877
- ready: function(){
2878
-
2879
- // vars
2880
- var $el = $('#adv-settings'),
2881
- $append = $el.find('#acf-append-show-on-screen');
2882
-
2883
-
2884
- // append
2885
- $el.find('.metabox-prefs').append( $append.html() );
2886
-
2887
-
2888
- // move br
2889
- $el.find('.metabox-prefs br').remove();
2890
-
2891
-
2892
- // remove
2893
- $append.remove();
2894
-
2895
-
2896
- // render
2897
- this.render();
2898
-
2899
- },
2900
-
2901
- toggle: function( e ){
2902
-
2903
- // vars
2904
- var val = e.$el.prop('checked') ? 1 : 0;
2905
-
2906
-
2907
- // update user setting
2908
- acf.update_user_setting('show_field_keys', val);
2909
-
2910
-
2911
- // render $fields
2912
- this.render();
2913
-
2914
- },
2915
-
2916
- render: function(){
2917
-
2918
- // vars
2919
- var options = acf.serialize( $('#adv-settings') );
2920
-
2921
-
2922
- // toggle class
2923
- var $fields = acf.field_group.$fields;
2924
-
2925
-
2926
- // show field keys
2927
- if( options.show_field_keys ) {
2928
-
2929
- $fields.addClass('show-field-keys');
2930
-
2931
- } else {
2932
-
2933
- $fields.removeClass('show-field-keys');
2934
-
2935
- }
2936
-
2937
- }
2938
-
2939
- });
2940
-
2941
-
2942
- /*
2943
- * sub fields
2944
- *
2945
- * description
2946
- *
2947
- * @type function
2948
- * @date 31/1/17
2949
- * @since 5.5.6
2950
- *
2951
- * @param $post_id (int)
2952
- * @return $post_id (int)
2953
- */
2954
-
2955
- acf.field_group.sub_fields = acf.model.extend({
2956
-
2957
- actions: {
2958
- 'open_field': 'update_field_parent',
2959
- 'sortstop': 'update_field_parent',
2960
- 'duplicate_field': 'duplicate_field',
2961
- 'delete_field': 'delete_field',
2962
- 'change_field_type': 'change_field_type'
2963
- },
2964
-
2965
-
2966
- /*
2967
- * fix_conditional_logic
2968
- *
2969
- * This function will update sub field conditional logic rules after duplication
2970
- *
2971
- * @type function
2972
- * @date 10/06/2014
2973
- * @since 5.0.0
2974
- *
2975
- * @param $fields (jquery selection)
2976
- * @return n/a
2977
- */
2978
-
2979
- fix_conditional_logic : function( $fields ){
2980
-
2981
- // build refernce
2982
- var ref = {};
2983
-
2984
- $fields.each(function(){
2985
-
2986
- ref[ $(this).attr('data-orig') ] = $(this).attr('data-key');
2987
-
2988
- });
2989
-
2990
-
2991
- $fields.find('.conditional-rule-param').each(function(){
2992
-
2993
- // vars
2994
- var key = $(this).val();
2995
-
2996
-
2997
- // bail early if val is not a ref key
2998
- if( !(key in ref) ) {
2999
-
3000
- return;
3001
-
3002
- }
3003
-
3004
-
3005
- // add option if doesn't yet exist
3006
- if( ! $(this).find('option[value="' + ref[key] + '"]').exists() ) {
3007
-
3008
- $(this).append('<option value="' + ref[key] + '">' + ref[key] + '</option>');
3009
-
3010
- }
3011
-
3012
-
3013
- // set new val
3014
- $(this).val( ref[key] );
3015
-
3016
- });
3017
-
3018
- },
3019
-
3020
-
3021
- /*
3022
- * update_field_parent
3023
- *
3024
- * This function will update field meta such as parent
3025
- *
3026
- * @type function
3027
- * @date 8/04/2014
3028
- * @since 5.0.0
3029
- *
3030
- * @param $el
3031
- * @return n/a
3032
- */
3033
-
3034
- update_field_parent: function( $el ){
3035
-
3036
- // bail early if not div.field (flexible content tr)
3037
- if( !$el.hasClass('acf-field-object') ) return;
3038
-
3039
-
3040
- // vars
3041
- var $parent = $el.parent().closest('.acf-field-object'),
3042
- val = acf.get('post_id');
3043
-
3044
-
3045
- // find parent
3046
- if( $parent.exists() ) {
3047
-
3048
- // set as parent ID
3049
- val = acf.field_group.get_field_meta( $parent, 'ID' );
3050
-
3051
-
3052
- // if parent is new, no ID exists
3053
- if( !val ) {
3054
-
3055
- val = acf.field_group.get_field_meta( $parent, 'key' );
3056
-
3057
- }
3058
-
3059
- }
3060
-
3061
-
3062
- // update parent
3063
- acf.field_group.update_field_meta( $el, 'parent', val );
3064
-
3065
-
3066
- // action for 3rd party customization
3067
- acf.do_action('update_field_parent', $el, $parent);
3068
-
3069
- },
3070
-
3071
-
3072
- /*
3073
- * duplicate_field
3074
- *
3075
- * This function is triggered when duplicating a field
3076
- *
3077
- * @type function
3078
- * @date 8/04/2014
3079
- * @since 5.0.0
3080
- *
3081
- * @param $el
3082
- * @return n/a
3083
- */
3084
-
3085
- duplicate_field: function( $el ) {
3086
-
3087
- // vars
3088
- var $fields = $el.find('.acf-field-object');
3089
-
3090
-
3091
- // bail early if $fields are empty
3092
- if( !$fields.exists() ) {
3093
-
3094
- return;
3095
-
3096
- }
3097
-
3098
-
3099
- // loop over sub fields
3100
- $fields.each(function(){
3101
-
3102
- // vars
3103
- var $parent = $(this).parent().closest('.acf-field-object'),
3104
- key = acf.field_group.get_field_meta( $parent, 'key');
3105
-
3106
-
3107
- // wipe field
3108
- acf.field_group.wipe_field( $(this) );
3109
-
3110
-
3111
- // update parent
3112
- acf.field_group.update_field_meta( $(this), 'parent', key );
3113
-
3114
-
3115
- // save field
3116
- acf.field_group.save_field( $(this) );
3117
-
3118
-
3119
- });
3120
-
3121
-
3122
- // fix conditional logic rules
3123
- this.fix_conditional_logic( $fields );
3124
-
3125
- },
3126
-
3127
-
3128
- /*
3129
- * delete_field
3130
- *
3131
- * This function is triggered when deleting a field
3132
- *
3133
- * @type function
3134
- * @date 8/04/2014
3135
- * @since 5.0.0
3136
- *
3137
- * @param $el
3138
- * @return n/a
3139
- */
3140
-
3141
- delete_field : function( $el ){
3142
-
3143
- $el.find('.acf-field-object').each(function(){
3144
-
3145
- acf.field_group.delete_field( $(this), false );
3146
-
3147
- });
3148
-
3149
- },
3150
-
3151
-
3152
- /*
3153
- * change_field_type
3154
- *
3155
- * This function is triggered when changing a field type
3156
- *
3157
- * @type function
3158
- * @date 7/06/2014
3159
- * @since 5.0.0
3160
- *
3161
- * @param $post_id (int)
3162
- * @return $post_id (int)
3163
- */
3164
-
3165
- change_field_type : function( $el ) {
3166
-
3167
- $el.find('.acf-field-object').each(function(){
3168
-
3169
- acf.field_group.delete_field( $(this), false );
3170
-
3171
- });
3172
-
3173
- }
3174
-
3175
- });
3176
-
3177
- })(jQuery);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/css/acf-field-group.css CHANGED
@@ -131,6 +131,11 @@
131
  visibility: visible !important;
132
  background: #F9F9F9;
133
  border-top-color: transparent;
 
 
 
 
 
134
  }
135
  .acf-field-object > .meta {
136
  display: none;
@@ -284,41 +289,42 @@ table.conditional-logic-rules tbody td {
284
  * Field: Tab
285
  *
286
  *---------------------------------------------------------------------------------------------*/
287
- .acf-field-object-tab tr[data-name="name"],
288
- .acf-field-object-tab tr[data-name="instructions"],
289
- .acf-field-object-tab tr[data-name="required"],
290
- .acf-field-object-tab tr[data-name="warning"],
291
- .acf-field-object-tab tr[data-name="wrapper"] {
292
- display: none !important;
293
- }
294
- .acf-field-object-tab .li-field-name {
295
- visibility: hidden;
296
- }
297
- .acf-field-object-tab .acf-error-message {
298
  display: none;
299
  }
300
- .acf-field-list[data-layout="table"] .acf-field-object-tab .acf-error-message {
301
- display: block;
302
- }
303
- .acf-field-object + .acf-field-object-tab {
304
- margin-top: 6px;
305
  }
306
- .acf-field-object + .acf-field-object-tab:before {
 
307
  display: block;
308
  content: "";
309
- height: 1px;
310
- background: #F0F0F0;
311
- margin-top: -7px;
312
  width: 100%;
313
- position: absolute;
 
314
  }
315
- .acf-field-object + .acf-field-object-tab.ui-sortable-placeholder {
316
- margin-top: 0;
317
- padding-top: 6px;
318
  }
319
- .acf-field-object-tab.ui-sortable-helper:before,
320
- .ui-sortable-placeholder + .acf-field-object-tab:before {
321
- display: none;
 
 
 
 
322
  }
323
  /*---------------------------------------------------------------------------------------------
324
  *
131
  visibility: visible !important;
132
  background: #F9F9F9;
133
  border-top-color: transparent;
134
+ min-height: 54px;
135
+ }
136
+ .acf-field-object.ui-sortable-placeholder:after,
137
+ .acf-field-object.ui-sortable-placeholder:before {
138
+ visibility: hidden;
139
  }
140
  .acf-field-object > .meta {
141
  display: none;
289
  * Field: Tab
290
  *
291
  *---------------------------------------------------------------------------------------------*/
292
+ .acf-field-object-tab .acf-field-setting-name,
293
+ .acf-field-object-tab .acf-field-setting-instructions,
294
+ .acf-field-object-tab .acf-field-setting-required,
295
+ .acf-field-object-tab .acf-field-setting-warning,
296
+ .acf-field-object-tab .acf-field-setting-wrapper,
297
+ .acf-field-object-accordion .acf-field-setting-name,
298
+ .acf-field-object-accordion .acf-field-setting-instructions,
299
+ .acf-field-object-accordion .acf-field-setting-required,
300
+ .acf-field-object-accordion .acf-field-setting-warning,
301
+ .acf-field-object-accordion .acf-field-setting-wrapper {
 
302
  display: none;
303
  }
304
+ .acf-field-object-tab .li-field-name,
305
+ .acf-field-object-accordion .li-field-name {
306
+ visibility: hidden;
 
 
307
  }
308
+ .acf-field-object + .acf-field-object-tab:before,
309
+ .acf-field-object + .acf-field-object-accordion:before {
310
  display: block;
311
  content: "";
312
+ height: 5px;
 
 
313
  width: 100%;
314
+ background: #f9f9f9;
315
+ border-bottom: #f0f0f0 solid 1px;
316
  }
317
+ .acf-field-object-tab p:first-child,
318
+ .acf-field-object-accordion p:first-child {
319
+ margin: 0.5em 0;
320
  }
321
+ /*---------------------------------------------------------------------------------------------
322
+ *
323
+ * Field: Accordion
324
+ *
325
+ *---------------------------------------------------------------------------------------------*/
326
+ .acf-field-object-accordion .acf-field-setting-instructions {
327
+ display: table-row;
328
  }
329
  /*---------------------------------------------------------------------------------------------
330
  *
assets/css/acf-input.css CHANGED
@@ -25,10 +25,8 @@
25
  position: relative;
26
  }
27
  .acf-field {
28
- margin: 0 0 20px;
29
- /* label */
30
- /* input */
31
- /* error */
32
  }
33
  .acf-field p.description {
34
  display: block;
@@ -64,15 +62,56 @@
64
  }
65
  .acf-field .acf-error-message:after {
66
  content: "";
 
67
  width: 0;
68
  height: 0;
69
  border: transparent 5px solid;
70
  border-top-color: #F55E4F;
71
- display: block;
72
  position: absolute;
73
  bottom: -10px;
74
  left: 10px;
75
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
76
  /*--------------------------------------------------------------------------------------------
77
  *
78
  * acf-fields
@@ -81,48 +120,58 @@
81
  .acf-fields {
82
  position: relative;
83
  }
 
 
 
 
 
 
 
 
 
84
  .acf-fields > .acf-field {
 
85
  margin: 0;
86
  padding: 15px 12px;
87
  border-top: #EEEEEE solid 1px;
88
- position: relative;
89
- clear: left;
90
- /* used to clear floating widths */
91
  }
92
  .acf-fields > .acf-field:first-child {
93
  border-top-width: 0;
94
  }
95
- .acf-fields:after {
96
- content: "";
97
- display: block;
98
- line-height: 0;
99
- clear: both;
100
- }
101
- .acf-fields.-border {
102
- border: #dfdfdf solid 1px;
103
- background: #fff;
104
- }
105
  td.acf-fields {
106
  padding: 0 !important;
107
  }
108
  /*--------------------------------------------------------------------------------------------
109
  *
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
110
  * acf-fields (left)
111
  *
112
  *--------------------------------------------------------------------------------------------*/
113
  .acf-fields.-left > .acf-field {
114
- padding-left: 20%;
115
- /* mobile */
116
- }
117
- html[dir="rtl"] .acf-fields.-left > .acf-field {
118
- padding-left: 12px;
119
- padding-right: 20%;
120
  }
121
  .acf-fields.-left > .acf-field:after {
122
- content: "";
123
- display: block;
124
- line-height: 0;
125
  clear: both;
 
 
126
  }
127
  .acf-fields.-left > .acf-field:before {
128
  content: "";
@@ -137,92 +186,77 @@ html[dir="rtl"] .acf-fields.-left > .acf-field {
137
  bottom: 0;
138
  left: 0;
139
  width: 20%;
140
- /* rtl */
141
  }
142
- html[dir="rtl"] .acf-fields.-left > .acf-field:before {
143
- border-right-width: 0;
144
- border-left-width: 1px;
145
- left: auto;
146
- right: 0;
147
  }
148
- .acf-fields.-left > .acf-field > .acf-label,
149
- .acf-fields.-left > .acf-field > .acf-input {
150
  float: left;
 
151
  margin: 0;
 
152
  }
153
- html[dir="rtl"] .acf-fields.-left > .acf-field > .acf-label,
154
- html[dir="rtl"] .acf-fields.-left > .acf-field > .acf-input {
155
- float: right;
156
- }
157
- .acf-fields.-left > .acf-field > .acf-label {
158
- width: 25%;
159
- margin-left: -25%;
160
  padding: 0 12px;
161
  }
162
- html[dir="rtl"] .acf-fields.-left > .acf-field > .acf-label {
163
- margin-left: 0;
164
- margin-right: -25%;
 
165
  }
166
- .acf-fields.-left > .acf-field > .acf-input {
167
- width: 100%;
168
- padding-left: 12px;
169
  }
170
  html[dir="rtl"] .acf-fields.-left > .acf-field > .acf-input {
171
- padding-left: 0;
172
- padding-right: 12px;
173
  }
174
  @media screen and (max-width: 782px) {
175
- .acf-fields.-left > .acf-field {
176
- padding: 15px 12px;
177
- }
178
  .acf-fields.-left > .acf-field:before {
179
  display: none;
180
  }
181
- .acf-fields.-left > .acf-field > .acf-label,
182
- .acf-fields.-left > .acf-field > .acf-input {
183
- padding: 0;
184
- float: none;
185
- width: auto;
186
- }
187
  .acf-fields.-left > .acf-field > .acf-label {
188
- margin: 0 0 10px;
 
 
 
 
189
  }
190
  }
191
- /* acf-table */
192
- .acf-table tr.acf-field > td.acf-label,
193
- .acf-table tr.acf-field > td.acf-input {
194
- padding: 15px 12px;
195
- margin: 0;
196
- }
197
- .acf-table tr.acf-field > td.acf-label {
198
- background: #F9F9F9;
199
- width: 20%;
200
- }
201
- .acf-table tr.acf-field > td.acf-input {
202
- border-left-color: #E1E1E1;
203
- }
204
- /*--------------------------------------------------------------------------------------------
205
- *
206
- * acf-fields (clear)
207
- *
208
- *--------------------------------------------------------------------------------------------*/
209
- .acf-fields.-clear > .acf-field {
210
- border: none;
211
  padding: 0;
212
- margin: 0 0 20px;
213
  }
214
- .acf-fields.-clear > .acf-field:before {
215
  display: none;
216
  }
217
- .acf-fields.-clear > .acf-field > .acf-label {
218
  padding: 0;
219
  }
220
- .acf-fields.-clear > .acf-field > .acf-input {
221
  padding: 0;
222
  }
223
- /* left */
224
- .acf-fields.-clear.-left > .acf-field > .acf-label {
225
- padding-right: 12px * 2;
 
 
 
 
 
 
 
 
 
 
 
 
226
  }
227
  /*--------------------------------------------------------------------------------------------
228
  *
@@ -274,7 +308,6 @@ html[dir="rtl"] .acf-fields.-left > .acf-field > .acf-input {
274
  box-shadow: none;
275
  /* hide hndle */
276
  /* inside */
277
- /* tab */
278
  }
279
  .acf-postbox.seamless > .hndle,
280
  .acf-postbox.seamless > .handlediv {
@@ -283,17 +316,11 @@ html[dir="rtl"] .acf-fields.-left > .acf-field > .acf-input {
283
  .acf-postbox.seamless > .inside {
284
  display: block !important;
285
  /* stop metabox from hiding when closed */
286
- margin: -12px !important;
 
287
  }
288
- .acf-postbox.seamless > .acf-fields > .acf-field {
289
- border: 0 none !important;
290
- }
291
- .acf-postbox.seamless .acf-tab-wrap {
292
- padding-left: 12px;
293
- padding-right: 12px;
294
- }
295
- .acf-postbox.seamless .acf-tab-wrap .acf-tab-group {
296
- border-top: 0 none;
297
  }
298
  /* seamless (left) */
299
  .acf-postbox.seamless > .acf-fields.-left {
@@ -316,60 +343,9 @@ html[dir="rtl"] .acf-fields.-left > .acf-field > .acf-input {
316
  .metabox-prefs label.acf-hidden {
317
  display: none;
318
  }
319
- /*--------------------------------------------------------------------------------------------
320
- *
321
- * Basic ACF field wrap
322
- *
323
- *--------------------------------------------------------------------------------------------*/
324
- /* add term */
325
- #addtag div.acf-field.error {
326
- border: 0 none;
327
- padding: 8px 0;
328
- }
329
- /* width */
330
- .acf-field[data-width] {
331
- float: left;
332
- -webkit-box-sizing: border-box;
333
- -moz-box-sizing: border-box;
334
- box-sizing: border-box;
335
- }
336
- .acf-field[data-width] + .acf-field {
337
- clear: left;
338
- }
339
- .acf-field[data-width] + .acf-field[data-width] {
340
- clear: none;
341
- border-left: 1px solid #eeeeee;
342
- }
343
- td.acf-field[data-width] {
344
- float: none;
345
- }
346
- /* field width helpers */
347
- .acf-r0 {
348
- border-top-width: 0 !important;
349
- }
350
- .acf-c0 {
351
- clear: left !important;
352
- border-left-width: 0 !important;
353
- }
354
- /* rtl */
355
- html[dir="rtl"] .acf-field[data-width] {
356
- float: right;
357
- }
358
- html[dir="rtl"] .acf-field[data-width] + .acf-field {
359
- clear: right;
360
- }
361
- html[dir="rtl"] .acf-field[data-width] + .acf-field[data-width] {
362
- clear: none;
363
- border-right: 1px solid #eeeeee;
364
- }
365
- html[dir="rtl"] .acf-c0 {
366
- clear: right !important;
367
- border-left-width: 1px !important;
368
- border-right-width: 0 !important;
369
- }
370
  /*---------------------------------------------------------------------------------------------
371
  *
372
- * Basic Field Styles
373
  *
374
  *---------------------------------------------------------------------------------------------*/
375
  .acf-field input[type="text"],
@@ -390,19 +366,29 @@ html[dir="rtl"] .acf-c0 {
390
  font-size: 14px;
391
  line-height: 1.4;
392
  }
393
- .acf-field textarea {
394
- resize: vertical;
395
- }
396
- /* disabled */
397
- .acf-field input:disabled,
398
- .acf-field select:disabled,
399
- .acf-field textarea:disabled {
 
400
  background: #f8f8f8;
401
  }
402
- .acf-field input[readonly],
403
- .acf-field textarea[readonly] {
 
 
 
 
 
 
404
  background: #f8f8f8;
405
  }
 
 
 
406
  /*---------------------------------------------------------------------------------------------
407
  *
408
  * Text
@@ -1270,16 +1256,14 @@ html[dir="rtl"] .acf-relationship .selection .values .acf-icon {
1270
  }
1271
  .acf-tab-wrap {
1272
  clear: both;
 
1273
  }
1274
  .acf-tab-group {
1275
  border-bottom: #ccc solid 1px;
1276
  padding: 10px 10px 0;
1277
  }
1278
  .acf-tab-group li {
1279
- margin: 0 0 0 0.5em;
1280
- /* rtl */
1281
- /* first */
1282
- /* active */
1283
  }
1284
  .acf-tab-group li a {
1285
  padding: 5px 10px;
@@ -1302,10 +1286,7 @@ html[dir="rtl"] .acf-relationship .selection .values .acf-icon {
1302
  box-shadow: none;
1303
  }
1304
  html[dir="rtl"] .acf-tab-group li {
1305
- margin: 0 0.5em 0 0;
1306
- }
1307
- .acf-tab-group li:first-child {
1308
- margin: 0 !important;
1309
  }
1310
  .acf-tab-group li.active a {
1311
  background: #F1F1F1;
@@ -1315,7 +1296,6 @@ html[dir="rtl"] .acf-tab-group li {
1315
  position: relative;
1316
  z-index: 1;
1317
  }
1318
- /* inside acf-fields */
1319
  .acf-fields > .acf-tab-wrap {
1320
  background: #F9F9F9;
1321
  }
@@ -1338,16 +1318,12 @@ html[dir="rtl"] .acf-tab-group li {
1338
  .acf-fields > .acf-tab-wrap:first-child .acf-tab-group {
1339
  border-top: none;
1340
  }
1341
- /* inside acf-fields.-left */
1342
  .acf-fields.-left > .acf-tab-wrap .acf-tab-group {
1343
  padding-left: 20%;
1344
  /* mobile */
1345
  /* rtl */
1346
  }
1347
- .acf-fields.-left > .acf-tab-wrap .acf-tab-group li:first-child {
1348
- margin: 0;
1349
- }
1350
- @media screen and (max-width: 850px) {
1351
  .acf-fields.-left > .acf-tab-wrap .acf-tab-group {
1352
  padding-left: 10px;
1353
  }
@@ -1362,16 +1338,60 @@ html[dir="rtl"] .acf-fields.-left > .acf-tab-wrap .acf-tab-group {
1362
  padding-right: 10px;
1363
  }
1364
  }
1365
- /* space between field and tabs */
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1366
  .acf-field + .acf-tab-wrap.-left:before {
1367
  content: "";
1368
  display: block;
1369
- position: absolute;
1370
  z-index: 1;
1371
- background: #DFDFDF;
1372
- left: 0;
1373
- width: 100%;
1374
- height: 1px;
 
 
 
1375
  }
1376
  /* sidebar */
1377
  .acf-fields.-sidebar {
@@ -1379,9 +1399,6 @@ html[dir="rtl"] .acf-fields.-left > .acf-tab-wrap .acf-tab-group {
1379
  position: relative;
1380
  /* before */
1381
  /* rtl */
1382
- /* tab wrap left */
1383
- /* .acf-fields.-left */
1384
- /* first tab group */
1385
  }
1386
  .acf-fields.-sidebar:before {
1387
  content: "";
@@ -1404,48 +1421,6 @@ html[dir="rtl"] .acf-fields.-sidebar:before {
1404
  left: auto;
1405
  right: 0;
1406
  }
1407
- .acf-fields.-sidebar > .acf-tab-wrap.-left .acf-tab-group {
1408
- position: absolute;
1409
- left: 0;
1410
- width: 20%;
1411
- border: 0 none;
1412
- padding: 0 !important;
1413
- /* important overrides 'left aligned labels' */
1414
- margin: 0;
1415
- /* rtl */
1416
- }
1417
- html[dir="rtl"] .acf-fields.-sidebar > .acf-tab-wrap.-left .acf-tab-group {
1418
- left: auto;
1419
- right: 0;
1420
- }
1421
- .acf-fields.-sidebar > .acf-tab-wrap.-left .acf-tab-group li {
1422
- float: none;
1423
- margin: -1px 0 0;
1424
- }
1425
- .acf-fields.-sidebar > .acf-tab-wrap.-left .acf-tab-group li a {
1426
- border: 1px solid #ededed;
1427
- font-size: 13px;
1428
- line-height: 18px;
1429
- color: #0073aa;
1430
- padding: 10px;
1431
- font-weight: normal;
1432
- border-width: 1px 0;
1433
- border-radius: 0;
1434
- background: transparent;
1435
- }
1436
- .acf-fields.-sidebar > .acf-tab-wrap.-left .acf-tab-group li a:hover {
1437
- color: #00a0d2;
1438
- }
1439
- .acf-fields.-sidebar > .acf-tab-wrap.-left .acf-tab-group li.active a {
1440
- border-color: #DFDFDF;
1441
- color: #000;
1442
- margin-right: -1px;
1443
- background: #fff;
1444
- }
1445
- html[dir="rtl"] .acf-fields.-sidebar > .acf-tab-wrap.-left .acf-tab-group li.active a {
1446
- margin-right: 0;
1447
- margin-left: -1px;
1448
- }
1449
  .acf-fields.-sidebar.-left {
1450
  padding: 0 0 0 180px !important;
1451
  /* rtl */
@@ -1458,26 +1433,51 @@ html[dir="rtl"] .acf-fields.-sidebar.-left {
1458
  border-color: #dfdfdf;
1459
  width: 180px;
1460
  }
1461
- .acf-fields.-sidebar.-left .acf-tab-wrap.-left .acf-tab-group {
1462
  width: 180px;
1463
  }
1464
- .acf-fields.-sidebar.-left .acf-tab-wrap.-left .acf-tab-group li a {
1465
  border-color: #e4e4e4;
1466
  }
1467
- .acf-fields.-sidebar.-left .acf-tab-wrap.-left .acf-tab-group li.active a {
1468
  background: #F9F9F9;
1469
  }
1470
- .acf-fields.-sidebar .acf-tab-wrap.-left:first-child .acf-tab-group li:first-child a {
1471
- border-top-width: 0;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1472
  }
1473
  /* seamless */
1474
- .acf-postbox.seamless {
1475
- /* standard */
1476
- /* left label */
 
 
1477
  }
1478
  .acf-postbox.seamless > .acf-fields > .acf-tab-wrap {
1479
- background: #f1f1f1;
1480
  margin-bottom: 10px;
 
 
 
 
 
1481
  }
1482
  .acf-postbox.seamless > .acf-fields > .acf-tab-wrap .acf-tab-group li a {
1483
  background: #e5e5e5;
@@ -1488,21 +1488,31 @@ html[dir="rtl"] .acf-fields.-sidebar.-left {
1488
  .acf-postbox.seamless > .acf-fields > .acf-tab-wrap .acf-tab-group li.active a {
1489
  background: #f1f1f1;
1490
  }
1491
- .acf-postbox.seamless > .acf-fields.-left {
1492
- /* left label, top tab */
1493
- /* left label, left tab */
1494
  }
1495
- .acf-postbox.seamless > .acf-fields.-left .acf-tab-wrap.-left .acf-tab-group {
1496
  margin-bottom: 0;
1497
  }
1498
- .acf-postbox.seamless > .acf-fields.-left .acf-tab-wrap.-left .acf-tab-group li a {
1499
  border-width: 1px 0 1px 1px !important;
1500
  border-color: #cccccc;
1501
  background: #e5e5e5;
1502
  }
1503
- .acf-postbox.seamless > .acf-fields.-left .acf-tab-wrap.-left .acf-tab-group li.active a {
 
 
 
 
1504
  background: #f1f1f1;
1505
  }
 
 
 
 
 
 
1506
  .compat-item .acf-tab-wrap td {
1507
  display: block;
1508
  }
@@ -1533,9 +1543,6 @@ html[dir="rtl"] .acf-fields.-sidebar.-left {
1533
  border-bottom-color: #DDDDDD;
1534
  }
1535
  /* table */
1536
- .form-table > tbody > tr.acf-tab-wrap td {
1537
- padding: 0;
1538
- }
1539
  .form-table > tbody > tr.acf-tab-wrap .acf-tab-group {
1540
  padding: 0 5px 0 210px;
1541
  }
@@ -1815,7 +1822,6 @@ html[dir="rtl"] .acf-file-uploader .file-info {
1815
  *---------------------------------------------------------------------------------------------*/
1816
  .acf-field-separator {
1817
  /* fields */
1818
- /* sidebar */
1819
  }
1820
  .acf-field-separator .acf-label {
1821
  margin-bottom: 0;
@@ -1909,12 +1915,203 @@ html[dir="rtl"] .acf-range-wrap .acf-prepend {
1909
  }
1910
  /*---------------------------------------------------------------------------------------------
1911
  *
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1912
  * Media Model
1913
  *
1914
  *---------------------------------------------------------------------------------------------*/
1915
  /* WP sets tables to act as divs. ACF uses tables, so these muct be reset */
1916
  .media-modal .compat-attachment-fields td.acf-input table {
1917
  display: table;
 
1918
  }
1919
  .media-modal .compat-attachment-fields td.acf-input table tbody {
1920
  display: table-row-group;
@@ -1928,7 +2125,7 @@ html[dir="rtl"] .acf-range-wrap .acf-prepend {
1928
  }
1929
  /* field widths floats */
1930
  .media-modal .compat-attachment-fields > tbody > .acf-field {
1931
- margin: 0;
1932
  }
1933
  .media-modal .compat-attachment-fields > tbody > .acf-field > .acf-label {
1934
  min-width: 30%;
@@ -2296,7 +2493,7 @@ body.major-4 .acf-media-modal.-edit .media-frame-content {
2296
  }
2297
  .form-table > tbody > .acf-field > .acf-label {
2298
  padding: 20px 10px 20px 0;
2299
- width: 210px;
2300
  /* rtl */
2301
  }
2302
  html[dir="rtl"] .form-table > tbody > .acf-field > .acf-label {
@@ -2307,7 +2504,7 @@ html[dir="rtl"] .form-table > tbody > .acf-field > .acf-label {
2307
  color: #23282d;
2308
  }
2309
  .form-table > tbody > .acf-field > .acf-input {
2310
- padding: 15px 5% 15px 10px;
2311
  /* rtl */
2312
  }
2313
  html[dir="rtl"] .form-table > tbody > .acf-field > .acf-input {
@@ -2328,13 +2525,13 @@ html[dir="rtl"] .form-table > tbody > .acf-tab-wrap td {
2328
  * Term
2329
  *
2330
  *--------------------------------------------------------------------------------------------*/
2331
- #addtag > .acf-field {
2332
  padding-right: 5%;
2333
  }
2334
- #addtag > .acf-field .acf-label {
2335
  margin: 0;
2336
  }
2337
- #addtag > .acf-field .acf-label label {
2338
  font-size: 12px;
2339
  font-weight: normal;
2340
  }
@@ -2344,6 +2541,26 @@ p.submit .acf-spinner {
2344
  float: none;
2345
  margin: 4px 4px 0;
2346
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2347
  /*--------------------------------------------------------------------------------------------
2348
  *
2349
  * Comment
@@ -2362,50 +2579,24 @@ p.submit .acf-spinner {
2362
  padding-left: 0;
2363
  padding-right: 0;
2364
  }
2365
- .widget .acf-field {
2366
- margin: 1em 0;
2367
- }
2368
- .widget .acf-field .acf-label {
2369
  margin-bottom: 5px;
2370
  }
2371
- .widget .acf-field .acf-label label {
2372
  font-weight: normal;
2373
  margin: 0;
2374
  }
2375
- .widget .widget-inside > form > .acf-error-message {
2376
  margin-top: 15px;
2377
  }
2378
  /*--------------------------------------------------------------------------------------------
2379
  *
2380
- * Customizer
2381
- *
2382
- *--------------------------------------------------------------------------------------------*/
2383
- .customize-control .acf-field {
2384
- margin: 1em 0;
2385
- }
2386
- /*--------------------------------------------------------------------------------------------
2387
- *
2388
  * Nav Menu
2389
  *
2390
  *--------------------------------------------------------------------------------------------*/
2391
  .acf-menu-settings {
2392
  border-top: 1px solid #eee;
2393
  margin-top: 2em;
2394
- /* fields */
2395
- /* seamless */
2396
- }
2397
- .acf-menu-settings > .acf-fields > .acf-field {
2398
- padding-left: 20%;
2399
- margin: 0 0 10px;
2400
- }
2401
- .acf-menu-settings > .acf-fields > .acf-field > .acf-label {
2402
- width: 25%;
2403
- margin-left: -25%;
2404
- }
2405
- .acf-menu-settings > .acf-fields > .acf-field > .acf-label label {
2406
- color: #666;
2407
- font-style: italic;
2408
- font-weight: normal;
2409
  }
2410
  .acf-menu-settings.-seamless {
2411
  border-top: none;
@@ -2414,20 +2605,9 @@ p.submit .acf-spinner {
2414
  .acf-menu-settings.-seamless > h2 {
2415
  display: none;
2416
  }
2417
- .menu-item-settings {
2418
- /* fields */
2419
- }
2420
- .menu-item-settings > .field-acf > .acf-field {
2421
- margin: 0 0 10px;
2422
- }
2423
- .menu-item-settings > .field-acf > .acf-field > .acf-label {
2424
- margin: 0;
2425
- }
2426
- .menu-item-settings > .field-acf > .acf-field > .acf-label label {
2427
- color: #666;
2428
- font-style: italic;
2429
- font-weight: normal;
2430
- margin: 0;
2431
  }
2432
  /*--------------------------------------------------------------------------------------------
2433
  *
25
  position: relative;
26
  }
27
  .acf-field {
28
+ margin: 15px 0;
29
+ clear: both;
 
 
30
  }
31
  .acf-field p.description {
32
  display: block;
62
  }
63
  .acf-field .acf-error-message:after {
64
  content: "";
65
+ display: block;
66
  width: 0;
67
  height: 0;
68
  border: transparent 5px solid;
69
  border-top-color: #F55E4F;
 
70
  position: absolute;
71
  bottom: -10px;
72
  left: 10px;
73
  }
74
+ .acf-fieldtd,
75
+ .acf-fieldtr {
76
+ margin: 0;
77
+ }
78
+ .acf-field[data-width] {
79
+ float: left;
80
+ clear: none;
81
+ /*
82
+ @media screen and (max-width: @sm) {
83
+ float: none;
84
+ width: auto;
85
+ border-left-width: 0;
86
+ border-right-width: 0;
87
+ }
88
+ */
89
+ }
90
+ .acf-field[data-width] + .acf-field[data-width] {
91
+ border-left: 1px solid #eeeeee;
92
+ }
93
+ html[dir="rtl"] .acf-field[data-width] {
94
+ float: right;
95
+ }
96
+ html[dir="rtl"] .acf-field[data-width] + .acf-field[data-width] {
97
+ border-left: none;
98
+ border-right: 1px solid #eeeeee;
99
+ }
100
+ .acf-field[data-width]td,
101
+ .acf-field[data-width]tr {
102
+ float: none;
103
+ }
104
+ .acf-field.-c0 {
105
+ clear: both;
106
+ border-left-width: 0 !important;
107
+ }
108
+ html[dir="rtl"] .acf-field.-c0 {
109
+ border-left-width: 1px !important;
110
+ border-right-width: 0 !important;
111
+ }
112
+ .acf-field.-r0 {
113
+ border-top-width: 0 !important;
114
+ }
115
  /*--------------------------------------------------------------------------------------------
116
  *
117
  * acf-fields
120
  .acf-fields {
121
  position: relative;
122
  }
123
+ .acf-fields:after {
124
+ clear: both;
125
+ content: "";
126
+ display: table;
127
+ }
128
+ .acf-fields.-border {
129
+ border: #dfdfdf solid 1px;
130
+ background: #fff;
131
+ }
132
  .acf-fields > .acf-field {
133
+ position: relative;
134
  margin: 0;
135
  padding: 15px 12px;
136
  border-top: #EEEEEE solid 1px;
 
 
 
137
  }
138
  .acf-fields > .acf-field:first-child {
139
  border-top-width: 0;
140
  }
 
 
 
 
 
 
 
 
 
 
141
  td.acf-fields {
142
  padding: 0 !important;
143
  }
144
  /*--------------------------------------------------------------------------------------------
145
  *
146
+ * acf-fields (clear)
147
+ *
148
+ *--------------------------------------------------------------------------------------------*/
149
+ .acf-fields.-clear > .acf-field {
150
+ border: none;
151
+ padding: 0;
152
+ margin: 15px 0;
153
+ }
154
+ .acf-fields.-clear > .acf-field[data-width] {
155
+ border: none !important;
156
+ }
157
+ .acf-fields.-clear > .acf-field > .acf-label {
158
+ padding: 0;
159
+ }
160
+ .acf-fields.-clear > .acf-field > .acf-input {
161
+ padding: 0;
162
+ }
163
+ /*--------------------------------------------------------------------------------------------
164
+ *
165
  * acf-fields (left)
166
  *
167
  *--------------------------------------------------------------------------------------------*/
168
  .acf-fields.-left > .acf-field {
169
+ padding: 15px 0;
 
 
 
 
 
170
  }
171
  .acf-fields.-left > .acf-field:after {
 
 
 
172
  clear: both;
173
+ content: "";
174
+ display: table;
175
  }
176
  .acf-fields.-left > .acf-field:before {
177
  content: "";
186
  bottom: 0;
187
  left: 0;
188
  width: 20%;
 
189
  }
190
+ .acf-fields.-left > .acf-field[data-width] {
191
+ float: none;
192
+ width: auto !important;
193
+ border-left-width: 0 !important;
194
+ border-right-width: 0 !important;
195
  }
196
+ .acf-fields.-left > .acf-field > .acf-label {
 
197
  float: left;
198
+ width: 20%;
199
  margin: 0;
200
+ padding: 0 12px;
201
  }
202
+ .acf-fields.-left > .acf-field > .acf-input {
203
+ float: left;
204
+ width: 80%;
205
+ margin: 0;
 
 
 
206
  padding: 0 12px;
207
  }
208
+ html[dir="rtl"] .acf-fields.-left > .acf-field:before {
209
+ border-width: 0 0 0 1px;
210
+ left: auto;
211
+ right: 0;
212
  }
213
+ html[dir="rtl"] .acf-fields.-left > .acf-field > .acf-label {
214
+ float: right;
 
215
  }
216
  html[dir="rtl"] .acf-fields.-left > .acf-field > .acf-input {
217
+ float: right;
 
218
  }
219
  @media screen and (max-width: 782px) {
 
 
 
220
  .acf-fields.-left > .acf-field:before {
221
  display: none;
222
  }
 
 
 
 
 
 
223
  .acf-fields.-left > .acf-field > .acf-label {
224
+ width: 100%;
225
+ margin-bottom: 10px;
226
+ }
227
+ .acf-fields.-left > .acf-field > .acf-input {
228
+ width: 100%;
229
  }
230
  }
231
+ /* clear + left */
232
+ .acf-fields.-clear.-left > .acf-field {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
233
  padding: 0;
234
+ border: none;
235
  }
236
+ .acf-fields.-clear.-left > .acf-field:before {
237
  display: none;
238
  }
239
+ .acf-fields.-clear.-left > .acf-field > .acf-label {
240
  padding: 0;
241
  }
242
+ .acf-fields.-clear.-left > .acf-field > .acf-input {
243
  padding: 0;
244
  }
245
+ /*--------------------------------------------------------------------------------------------
246
+ *
247
+ * acf-table
248
+ *
249
+ *--------------------------------------------------------------------------------------------*/
250
+ .acf-table tr.acf-field > td.acf-label {
251
+ padding: 15px 12px;
252
+ margin: 0;
253
+ background: #F9F9F9;
254
+ width: 20%;
255
+ }
256
+ .acf-table tr.acf-field > td.acf-input {
257
+ padding: 15px 12px;
258
+ margin: 0;
259
+ border-left-color: #E1E1E1;
260
  }
261
  /*--------------------------------------------------------------------------------------------
262
  *
308
  box-shadow: none;
309
  /* hide hndle */
310
  /* inside */
 
311
  }
312
  .acf-postbox.seamless > .hndle,
313
  .acf-postbox.seamless > .handlediv {
316
  .acf-postbox.seamless > .inside {
317
  display: block !important;
318
  /* stop metabox from hiding when closed */
319
+ margin-left: -12px !important;
320
+ margin-right: -12px !important;
321
  }
322
+ .acf-postbox.seamless > .inside > .acf-field {
323
+ border-color: transparent;
 
 
 
 
 
 
 
324
  }
325
  /* seamless (left) */
326
  .acf-postbox.seamless > .acf-fields.-left {
343
  .metabox-prefs label.acf-hidden {
344
  display: none;
345
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
346
  /*---------------------------------------------------------------------------------------------
347
  *
348
+ * Inputs
349
  *
350
  *---------------------------------------------------------------------------------------------*/
351
  .acf-field input[type="text"],
366
  font-size: 14px;
367
  line-height: 1.4;
368
  }
369
+ .acf-field input[type="text"]:disabled,
370
+ .acf-field input[type="password"]:disabled,
371
+ .acf-field input[type="number"]:disabled,
372
+ .acf-field input[type="search"]:disabled,
373
+ .acf-field input[type="email"]:disabled,
374
+ .acf-field input[type="url"]:disabled,
375
+ .acf-field textarea:disabled,
376
+ .acf-field select:disabled {
377
  background: #f8f8f8;
378
  }
379
+ .acf-field input[type="text"][readonly],
380
+ .acf-field input[type="password"][readonly],
381
+ .acf-field input[type="number"][readonly],
382
+ .acf-field input[type="search"][readonly],
383
+ .acf-field input[type="email"][readonly],
384
+ .acf-field input[type="url"][readonly],
385
+ .acf-field textarea[readonly],
386
+ .acf-field select[readonly] {
387
  background: #f8f8f8;
388
  }
389
+ .acf-field textarea {
390
+ resize: vertical;
391
+ }
392
  /*---------------------------------------------------------------------------------------------
393
  *
394
  * Text
1256
  }
1257
  .acf-tab-wrap {
1258
  clear: both;
1259
+ z-index: 1;
1260
  }
1261
  .acf-tab-group {
1262
  border-bottom: #ccc solid 1px;
1263
  padding: 10px 10px 0;
1264
  }
1265
  .acf-tab-group li {
1266
+ margin: 0 0.5em 0 0;
 
 
 
1267
  }
1268
  .acf-tab-group li a {
1269
  padding: 5px 10px;
1286
  box-shadow: none;
1287
  }
1288
  html[dir="rtl"] .acf-tab-group li {
1289
+ margin: 0 0 0 0.5em;
 
 
 
1290
  }
1291
  .acf-tab-group li.active a {
1292
  background: #F1F1F1;
1296
  position: relative;
1297
  z-index: 1;
1298
  }
 
1299
  .acf-fields > .acf-tab-wrap {
1300
  background: #F9F9F9;
1301
  }
1318
  .acf-fields > .acf-tab-wrap:first-child .acf-tab-group {
1319
  border-top: none;
1320
  }
 
1321
  .acf-fields.-left > .acf-tab-wrap .acf-tab-group {
1322
  padding-left: 20%;
1323
  /* mobile */
1324
  /* rtl */
1325
  }
1326
+ @media screen and (max-width: 782px) {
 
 
 
1327
  .acf-fields.-left > .acf-tab-wrap .acf-tab-group {
1328
  padding-left: 10px;
1329
  }
1338
  padding-right: 10px;
1339
  }
1340
  }
1341
+ .acf-tab-wrap.-left .acf-tab-group {
1342
+ position: absolute;
1343
+ left: 0;
1344
+ width: 20%;
1345
+ border: 0 none;
1346
+ padding: 0 !important;
1347
+ /* important overrides 'left aligned labels' */
1348
+ margin: 1px 0 0;
1349
+ }
1350
+ .acf-tab-wrap.-left .acf-tab-group li {
1351
+ float: none;
1352
+ margin: -1px 0 0;
1353
+ }
1354
+ .acf-tab-wrap.-left .acf-tab-group li a {
1355
+ border: 1px solid #ededed;
1356
+ font-size: 13px;
1357
+ line-height: 18px;
1358
+ color: #0073aa;
1359
+ padding: 10px;
1360
+ margin: 0;
1361
+ font-weight: normal;
1362
+ border-width: 1px 0;
1363
+ border-radius: 0;
1364
+ background: transparent;
1365
+ }
1366
+ .acf-tab-wrap.-left .acf-tab-group li a:hover {
1367
+ color: #00a0d2;
1368
+ }
1369
+ .acf-tab-wrap.-left .acf-tab-group li.active a {
1370
+ border-color: #DFDFDF;
1371
+ color: #000;
1372
+ margin-right: -1px;
1373
+ background: #fff;
1374
+ }
1375
+ html[dir="rtl"] .acf-tab-wrap.-left .acf-tab-group {
1376
+ left: auto;
1377
+ right: 0;
1378
+ }
1379
+ html[dir="rtl"] .acf-tab-wrap.-left .acf-tab-group li.active a {
1380
+ margin-right: 0;
1381
+ margin-left: -1px;
1382
+ }
1383
  .acf-field + .acf-tab-wrap.-left:before {
1384
  content: "";
1385
  display: block;
1386
+ position: relative;
1387
  z-index: 1;
1388
+ height: 10px;
1389
+ border-top: #DFDFDF solid 1px;
1390
+ border-bottom: #DFDFDF solid 1px;
1391
+ margin-bottom: -1px;
1392
+ }
1393
+ .acf-tab-wrap.-left:first-child .acf-tab-group li:first-child a {
1394
+ border-top: none;
1395
  }
1396
  /* sidebar */
1397
  .acf-fields.-sidebar {
1399
  position: relative;
1400
  /* before */
1401
  /* rtl */
 
 
 
1402
  }
1403
  .acf-fields.-sidebar:before {
1404
  content: "";
1421
  left: auto;
1422
  right: 0;
1423
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1424
  .acf-fields.-sidebar.-left {
1425
  padding: 0 0 0 180px !important;
1426
  /* rtl */
1433
  border-color: #dfdfdf;
1434
  width: 180px;
1435
  }
1436
+ .acf-fields.-sidebar.-left > .acf-tab-wrap.-left .acf-tab-group {
1437
  width: 180px;
1438
  }
1439
+ .acf-fields.-sidebar.-left > .acf-tab-wrap.-left .acf-tab-group li a {
1440
  border-color: #e4e4e4;
1441
  }
1442
+ .acf-fields.-sidebar.-left > .acf-tab-wrap.-left .acf-tab-group li.active a {
1443
  background: #F9F9F9;
1444
  }
1445
+ .acf-fields.-sidebar > .acf-field-tab + .acf-field {
1446
+ border-top: none;
1447
+ }
1448
+ .acf-fields.-clear > .acf-tab-wrap {
1449
+ background: transparent;
1450
+ }
1451
+ .acf-fields.-clear > .acf-tab-wrap .acf-tab-group {
1452
+ margin-top: 0;
1453
+ border-top: none;
1454
+ padding-left: 0;
1455
+ padding-right: 0;
1456
+ }
1457
+ .acf-fields.-clear > .acf-tab-wrap .acf-tab-group li a {
1458
+ background: #e5e5e5;
1459
+ }
1460
+ .acf-fields.-clear > .acf-tab-wrap .acf-tab-group li a:hover {
1461
+ background: #fff;
1462
+ }
1463
+ .acf-fields.-clear > .acf-tab-wrap .acf-tab-group li.active a {
1464
+ background: #f1f1f1;
1465
  }
1466
  /* seamless */
1467
+ .acf-postbox.seamless > .acf-fields.-sidebar {
1468
+ margin-left: 0 !important;
1469
+ }
1470
+ .acf-postbox.seamless > .acf-fields.-sidebar:before {
1471
+ background: transparent;
1472
  }
1473
  .acf-postbox.seamless > .acf-fields > .acf-tab-wrap {
1474
+ background: transparent;
1475
  margin-bottom: 10px;
1476
+ padding-left: 12px;
1477
+ padding-right: 12px;
1478
+ }
1479
+ .acf-postbox.seamless > .acf-fields > .acf-tab-wrap .acf-tab-group {
1480
+ border-top: 0 none;
1481
  }
1482
  .acf-postbox.seamless > .acf-fields > .acf-tab-wrap .acf-tab-group li a {
1483
  background: #e5e5e5;
1488
  .acf-postbox.seamless > .acf-fields > .acf-tab-wrap .acf-tab-group li.active a {
1489
  background: #f1f1f1;
1490
  }
1491
+ .acf-postbox.seamless > .acf-fields > .acf-tab-wrap.-left:before {
1492
+ border-top: none;
1493
+ height: auto;
1494
  }
1495
+ .acf-postbox.seamless > .acf-fields > .acf-tab-wrap.-left .acf-tab-group {
1496
  margin-bottom: 0;
1497
  }
1498
+ .acf-postbox.seamless > .acf-fields > .acf-tab-wrap.-left .acf-tab-group li a {
1499
  border-width: 1px 0 1px 1px !important;
1500
  border-color: #cccccc;
1501
  background: #e5e5e5;
1502
  }
1503
+ .acf-postbox.seamless > .acf-fields > .acf-tab-wrap.-left .acf-tab-group li.active a {
1504
+ background: #f1f1f1;
1505
+ }
1506
+ .menu-edit .acf-fields.-clear > .acf-tab-wrap .acf-tab-group li a,
1507
+ .widget .acf-fields.-clear > .acf-tab-wrap .acf-tab-group li a {
1508
  background: #f1f1f1;
1509
  }
1510
+ .menu-edit .acf-fields.-clear > .acf-tab-wrap .acf-tab-group li a:hover,
1511
+ .widget .acf-fields.-clear > .acf-tab-wrap .acf-tab-group li a:hover,
1512
+ .menu-edit .acf-fields.-clear > .acf-tab-wrap .acf-tab-group li.active a,
1513
+ .widget .acf-fields.-clear > .acf-tab-wrap .acf-tab-group li.active a {
1514
+ background: #fff;
1515
+ }
1516
  .compat-item .acf-tab-wrap td {
1517
  display: block;
1518
  }
1543
  border-bottom-color: #DDDDDD;
1544
  }
1545
  /* table */
 
 
 
1546
  .form-table > tbody > tr.acf-tab-wrap .acf-tab-group {
1547
  padding: 0 5px 0 210px;
1548
  }
1822
  *---------------------------------------------------------------------------------------------*/
1823
  .acf-field-separator {
1824
  /* fields */
 
1825
  }
1826
  .acf-field-separator .acf-label {
1827
  margin-bottom: 0;
1915
  }
1916
  /*---------------------------------------------------------------------------------------------
1917
  *
1918
+ * acf-accordion
1919
+ *
1920
+ *---------------------------------------------------------------------------------------------*/
1921
+ .acf-accordion {
1922
+ margin: 0;
1923
+ padding: 0;
1924
+ background: #fff;
1925
+ /* title */
1926
+ /* open */
1927
+ }
1928
+ .acf-accordion .acf-accordion-title {
1929
+ margin: 0;
1930
+ padding: 12px;
1931
+ font-weight: bold;
1932
+ cursor: pointer;
1933
+ font-size: inherit;
1934
+ font-size: 13px;
1935
+ line-height: 1.4em;
1936
+ }
1937
+ .acf-accordion .acf-accordion-title label {
1938
+ margin: 0;
1939
+ padding: 0;
1940
+ font-size: 13px;
1941
+ line-height: 1.4em;
1942
+ }
1943
+ .acf-accordion .acf-accordion-title p {
1944
+ font-weight: normal;
1945
+ }
1946
+ .acf-accordion .acf-accordion-title .acf-accordion-icon {
1947
+ float: right;
1948
+ }
1949
+ .acf-accordion .acf-accordion-content {
1950
+ margin: 0;
1951
+ padding: 0 12px 12px;
1952
+ display: none;
1953
+ }
1954
+ .acf-accordion.-open > .acf-accordion-content {
1955
+ display: block;
1956
+ }
1957
+ /* field specific */
1958
+ .acf-field.acf-accordion {
1959
+ padding: 0;
1960
+ border-color: #dfdfdf;
1961
+ }
1962
+ .acf-field.acf-accordion .acf-accordion-title {
1963
+ padding: 12px !important;
1964
+ float: none !important;
1965
+ width: auto !important;
1966
+ }
1967
+ .acf-field.acf-accordion .acf-accordion-content {
1968
+ padding: 0;
1969
+ float: none !important;
1970
+ width: auto !important;
1971
+ }
1972
+ .acf-field.acf-accordion .acf-accordion-content > .acf-fields {
1973
+ border-top: #EEEEEE solid 1px;
1974
+ }
1975
+ .acf-field.acf-accordion .acf-accordion-content > .acf-fields.-clear {
1976
+ padding: 0 12px 15px;
1977
+ }
1978
+ /* field specific (left) */
1979
+ .acf-fields.-left > .acf-field.acf-accordion {
1980
+ padding: 0 !important;
1981
+ }
1982
+ .acf-fields.-left > .acf-field.acf-accordion:before {
1983
+ display: none;
1984
+ }
1985
+ .acf-fields.-left > .acf-field.acf-accordion .acf-accordion-title {
1986
+ width: auto;
1987
+ margin: 0 !important;
1988
+ padding: 12px;
1989
+ float: none !important;
1990
+ }
1991
+ .acf-fields.-left > .acf-field.acf-accordion .acf-accordion-content {
1992
+ padding: 0 !important;
1993
+ }
1994
+ /* field specific (clear) */
1995
+ .acf-fields.-clear > .acf-field.acf-accordion {
1996
+ border: #cccccc solid 1px;
1997
+ background: transparent;
1998
+ }
1999
+ .acf-fields.-clear > .acf-field.acf-accordion + .acf-field.acf-accordion {
2000
+ margin-top: -16px;
2001
+ }
2002
+ /* table */
2003
+ tr.acf-field.acf-accordion {
2004
+ background: transparent;
2005
+ }
2006
+ tr.acf-field.acf-accordion > .acf-input {
2007
+ padding: 0 !important;
2008
+ border: #cccccc solid 1px;
2009
+ }
2010
+ tr.acf-field.acf-accordion .acf-accordion-content {
2011
+ padding: 0 12px 12px;
2012
+ }
2013
+ /* #addtag */
2014
+ #addtag div.acf-field.error {
2015
+ border: 0 none;
2016
+ padding: 8px 0;
2017
+ }
2018
+ #addtag > .acf-field.acf-accordion {
2019
+ padding-right: 0;
2020
+ margin-right: 5%;
2021
+ }
2022
+ #addtag > .acf-field.acf-accordion + p.submit {
2023
+ margin-top: 0;
2024
+ }
2025
+ /* border */
2026
+ tr.acf-accordion {
2027
+ margin: 15px 0 !important;
2028
+ }
2029
+ tr.acf-accordion + tr.acf-accordion {
2030
+ margin-top: -16px !important;
2031
+ }
2032
+ /* seamless */
2033
+ .acf-postbox.seamless > .acf-fields > .acf-accordion {
2034
+ margin-left: 12px !important;
2035
+ margin-right: 12px !important;
2036
+ }
2037
+ /* rtl */
2038
+ /* menu item */
2039
+ /*
2040
+ .menu-item-settings > .field-acf > .acf-field.acf-accordion {
2041
+ border: #dfdfdf solid 1px;
2042
+ margin: 10px -13px 10px -11px;
2043
+
2044
+ + .acf-field.acf-accordion {
2045
+ margin-top: -11px;
2046
+ }
2047
+ }
2048
+ */
2049
+ /* widget */
2050
+ .widget .widget-content > .acf-field.acf-accordion {
2051
+ border: #dfdfdf solid 1px;
2052
+ margin-bottom: 10px;
2053
+ }
2054
+ .widget .widget-content > .acf-field.acf-accordion .acf-accordion-title {
2055
+ margin-bottom: 0;
2056
+ }
2057
+ .widget .widget-content > .acf-field.acf-accordion + .acf-field.acf-accordion {
2058
+ margin-top: -11px;
2059
+ }
2060
+ .acf-postbox.seamless > .acf-fields > .acf-field.acf-accordion {
2061
+ border: #e5e5e5 solid 1px;
2062
+ }
2063
+ .acf-postbox.seamless > .acf-fields > .acf-field.acf-accordion + .acf-field.acf-accordion {
2064
+ margin-top: -1px;
2065
+ }
2066
+ .media-modal .compat-attachment-fields .acf-field.acf-accordion + .acf-field.acf-accordion {
2067
+ margin-top: -1px;
2068
+ }
2069
+ .media-modal .compat-attachment-fields .acf-field.acf-accordion > .acf-input {
2070
+ width: 100%;
2071
+ }
2072
+ .media-modal .compat-attachment-fields .acf-field.acf-accordion .compat-attachment-fields > tbody > tr > td {
2073
+ padding-bottom: 5px;
2074
+ }
2075
+ /*---------------------------------------------------------------------------------------------
2076
+ *
2077
+ * Attachment Form (single page)
2078
+ *
2079
+ *---------------------------------------------------------------------------------------------*/
2080
+ #post .compat-attachment-fields .compat-field-acf-form-data {
2081
+ display: none;
2082
+ }
2083
+ #post .compat-attachment-fields,
2084
+ #post .compat-attachment-fields > tbody,
2085
+ #post .compat-attachment-fields > tbody > tr,
2086
+ #post .compat-attachment-fields > tbody > tr > th,
2087
+ #post .compat-attachment-fields > tbody > tr > td {
2088
+ display: block;
2089
+ }
2090
+ #post .compat-attachment-fields > tbody > .acf-field {
2091
+ margin: 15px 0;
2092
+ }
2093
+ #post .compat-attachment-fields > tbody > .acf-field > .acf-label {
2094
+ margin: 0;
2095
+ }
2096
+ #post .compat-attachment-fields > tbody > .acf-field > .acf-label label {
2097
+ margin: 0;
2098
+ padding: 0;
2099
+ }
2100
+ #post .compat-attachment-fields > tbody > .acf-field > .acf-label label p {
2101
+ margin: 0 0 3px !important;
2102
+ }
2103
+ #post .compat-attachment-fields > tbody > .acf-field > .acf-input {
2104
+ margin: 0;
2105
+ }
2106
+ /*---------------------------------------------------------------------------------------------
2107
+ *
2108
  * Media Model
2109
  *
2110
  *---------------------------------------------------------------------------------------------*/
2111
  /* WP sets tables to act as divs. ACF uses tables, so these muct be reset */
2112
  .media-modal .compat-attachment-fields td.acf-input table {
2113
  display: table;
2114
+ table-layout: auto;
2115
  }
2116
  .media-modal .compat-attachment-fields td.acf-input table tbody {
2117
  display: table-row-group;
2125
  }
2126
  /* field widths floats */
2127
  .media-modal .compat-attachment-fields > tbody > .acf-field {
2128
+ margin: 5px 0;
2129
  }
2130
  .media-modal .compat-attachment-fields > tbody > .acf-field > .acf-label {
2131
  min-width: 30%;
2493
  }
2494
  .form-table > tbody > .acf-field > .acf-label {
2495
  padding: 20px 10px 20px 0;
2496
+ width: 200px;
2497
  /* rtl */
2498
  }
2499
  html[dir="rtl"] .form-table > tbody > .acf-field > .acf-label {
2504
  color: #23282d;
2505
  }
2506
  .form-table > tbody > .acf-field > .acf-input {
2507
+ padding: 15px 10px;
2508
  /* rtl */
2509
  }
2510
  html[dir="rtl"] .form-table > tbody > .acf-field > .acf-input {
2525
  * Term
2526
  *
2527
  *--------------------------------------------------------------------------------------------*/
2528
+ .acf-addterm-fields {
2529
  padding-right: 5%;
2530
  }
2531
+ .acf-addterm-fields > .acf-field > .acf-label {
2532
  margin: 0;
2533
  }
2534
+ .acf-addterm-fields > .acf-field > .acf-label label {
2535
  font-size: 12px;
2536
  font-weight: normal;
2537
  }
2541
  float: none;
2542
  margin: 4px 4px 0;
2543
  }
2544
+ #edittag .acf-fields.-left > .acf-field {
2545
+ padding-left: 220px;
2546
+ }
2547
+ #edittag .acf-fields.-left > .acf-field:before {
2548
+ width: 209px;
2549
+ }
2550
+ #edittag .acf-fields.-left > .acf-field > .acf-label {
2551
+ width: 220px;
2552
+ margin-left: -220px;
2553
+ padding: 0 10px;
2554
+ }
2555
+ #edittag .acf-fields.-left > .acf-field > .acf-input {
2556
+ padding: 0;
2557
+ }
2558
+ #edittag > .acf-fields.-left {
2559
+ width: 96%;
2560
+ }
2561
+ #edittag > .acf-fields.-left > .acf-field > .acf-label {
2562
+ padding-left: 0;
2563
+ }
2564
  /*--------------------------------------------------------------------------------------------
2565
  *
2566
  * Comment
2579
  padding-left: 0;
2580
  padding-right: 0;
2581
  }
2582
+ .acf-widget-fields > .acf-field .acf-label {
 
 
 
2583
  margin-bottom: 5px;
2584
  }
2585
+ .acf-widget-fields > .acf-field .acf-label label {
2586
  font-weight: normal;
2587
  margin: 0;
2588
  }
2589
+ .widget form > .acf-error-message {
2590
  margin-top: 15px;
2591
  }
2592
  /*--------------------------------------------------------------------------------------------
2593
  *
 
 
 
 
 
 
 
 
2594
  * Nav Menu
2595
  *
2596
  *--------------------------------------------------------------------------------------------*/
2597
  .acf-menu-settings {
2598
  border-top: 1px solid #eee;
2599
  margin-top: 2em;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2600
  }
2601
  .acf-menu-settings.-seamless {
2602
  border-top: none;
2605
  .acf-menu-settings.-seamless > h2 {
2606
  display: none;
2607
  }
2608
+ .acf-menu-item-fields {
2609
+ margin-right: 10px;
2610
+ float: left;
 
 
 
 
 
 
 
 
 
 
 
2611
  }
2612
  /*--------------------------------------------------------------------------------------------
2613
  *
assets/images/sprite.psd DELETED
Binary file
assets/images/sprite@2x.psd DELETED
Binary file
assets/js/acf-field-group.js CHANGED
@@ -78,6 +78,9 @@
78
  e.$el.sortable({
79
  handle: '.acf-sortable-handle',
80
  connectWith: '.acf-field-list',
 
 
 
81
  update: function(event, ui){
82
 
83
  // vars
@@ -551,7 +554,7 @@
551
 
552
 
553
  // update label
554
- $handle.find('.li-field-label strong a').text( label );
555
 
556
 
557
  // update required
78
  e.$el.sortable({
79
  handle: '.acf-sortable-handle',
80
  connectWith: '.acf-field-list',
81
+ start: function(e, ui){
82
+ ui.placeholder.height( ui.item.height() );
83
+ },
84
  update: function(event, ui){
85
 
86
  // vars
554
 
555
 
556
  // update label
557
+ $handle.find('.li-field-label strong a').html( label );
558
 
559
 
560
  // update required
assets/js/acf-field-group.min.js CHANGED
@@ -1 +1 @@
1
- !function($){acf.field_group=acf.model.extend({$fields:null,$locations:null,$options:null,actions:{ready:"init"},events:{"submit #post":"submit",'click a[href="#"]':"preventDefault","click .submitdelete":"trash","mouseenter .acf-field-list":"sortable"},init:function(){this.$fields=$("#acf-field-group-fields"),this.$locations=$("#acf-field-group-locations"),this.$options=$("#acf-field-group-options"),acf.validation.active=0},sortable:function(e){if(!e.$el.hasClass("ui-sortable")){var t=this;e.$el.sortable({handle:".acf-sortable-handle",connectWith:".acf-field-list",update:function(e,i){var a=i.item;t.render_fields(),acf.do_action("sortstop",a)}})}},preventDefault:function(e){e.preventDefault()},get_selector:function(e){e=e||"";var t=".acf-field-object";return e&&(t+="-"+e,t=t.split("_").join("-")),t},render_fields:function(){var e=this;$(".acf-field-list").each(function(){var t=$(this).children(".acf-field-object");t.each(function(t){e.update_field_meta($(this),"menu_order",t),$(this).children(".handle").find(".acf-icon").html(t+1)}),t.exists()?$(this).children(".no-fields-message").hide():$(this).children(".no-fields-message").show()})},get_field_meta:function(e,t){var i=e.find("> .meta > .input-"+t);return!!i.exists()&&i.val()},update_field_meta:function(e,t,i){var a=e.find("> .meta > .input-"+t);if(!a.exists()){var n=e.find("> .meta > .input-ID").outerHTML();n=acf.str_replace("ID",t,n),a=$(n),a.val(i),e.children(".meta").append(a)}a.val()!=i&&(a.val(i),"save"!=t&&this.save_field(e,"meta"))},delete_field_meta:function(e,t){var i=e.find("> .meta > .input-"+t);i.exists()&&(i.remove(),this.save_field(e,"meta"))},save_field:function(e,t){t=t||"settings";var i=this.get_field_meta(e,"save");"settings"!=i&&i!=t&&(this.update_field_meta(e,"save",t),acf.do_action("save_field",e,t))},submit:function(e){var t=this,i=$("#titlewrap #title");i.val()||(e.preventDefault(),acf.validation.toggle(e.$el,"unlock"),alert(acf._e("title_is_required")),i.focus()),$(".acf-field-object").each(function(){var e=t.get_field_meta($(this),"save"),i=t.get_field_meta($(this),"ID"),a=$(this).hasClass("open");a&&t.close_field($(this)),"settings"==e||("meta"==e?$(this).children(".settings").find('[name^="acf_fields['+i+']"]').remove():$(this).find('[name^="acf_fields['+i+']"]').remove())})},trash:function(e){var t=confirm(acf._e("move_to_trash"));t||e.preventDefault()},render_field:function(e){var t=e.find(".field-label:first").val(),i=e.find(".field-name:first").val(),a=e.find(".field-type:first option:selected").text(),n=e.find(".field-required:first").prop("checked"),d=e.children(".handle");d.find(".li-field-label strong a").text(t),d.find(".li-field-label .acf-required").remove(),n&&d.find(".li-field-label strong").append('<span class="acf-required">*</span>'),d.find(".li-field-name").text(i),d.find(".li-field-type").text(a),acf.do_action("render_field_handle",e,d)},edit_field:function(e){e.hasClass("open")?this.close_field(e):this.open_field(e)},open_field:function(e){return!e.hasClass("open")&&(e.addClass("open"),acf.do_action("open_field",e),void e.children(".settings").animate({height:"toggle"},250))},close_field:function(e){return!!e.hasClass("open")&&(e.removeClass("open"),acf.do_action("close_field",e),void e.children(".settings").animate({height:"toggle"},250))},wipe_field:function(e){var t=e.attr("data-id"),i=e.attr("data-key"),a=acf.get_uniqid(),n="field_"+a;e.attr("data-id",a),e.attr("data-key",n),e.attr("data-orig",i),this.update_field_meta(e,"ID",""),this.update_field_meta(e,"key",n),e.find('[id*="'+t+'"]').each(function(){$(this).attr("id",$(this).attr("id").replace(t,a))}),e.find('[name*="'+t+'"]').each(function(){$(this).attr("name",$(this).attr("name").replace(t,a))}),e.find("> .handle .pre-field-key").text(n),e.find(".ui-sortable").removeClass("ui-sortable"),acf.do_action("wipe_field",e)},add_field:function(e){var t=$($("#tmpl-acf-field").html()),i=t.find(".field-label:first"),a=t.find(".field-name:first");this.wipe_field(t),e.append(t),i.val(""),a.val(""),setTimeout(function(){i.focus()},251),this.render_fields(),acf.do_action("append",t),this.edit_field(t),acf.do_action("add_field",t)},duplicate_field:function(e){acf.do_action("before_duplicate",e);var t=e.clone(),i=t.find(".field-label:first"),a=t.find(".field-name:first");acf.do_action("remove",t),this.wipe_field(t),acf.do_action("after_duplicate",e,t),e.after(t),acf.do_action("append",t),setTimeout(function(){i.focus()},251),this.render_fields(),e.hasClass("open")?this.close_field(e):this.open_field(t);var n=i.val(),d=a.val(),l=d.split("_").pop(),f=acf._e("copy");if(0===l.indexOf(f)){var c=1*l.replace(f,"");c=c?c+1:2,n=n.replace(l,f+c),d=d.replace(l,f+c)}else n+=" ("+f+")",d+="_"+f;return i.val(n),a.val(d),this.save_field(t),this.render_field(t),acf.do_action("duplicate_field",t),t},move_field:function(e){var t=this,i=acf.prepare_for_ajax({action:"acf/field_group/move_field",field_id:this.get_field_meta(e,"ID")}),a=!1;return i.field_id?"settings"==this.get_field_meta(e,"save")?a=!0:e.find(".acf-field-object").each(function(){return t.get_field_meta($(this),"ID")?void("settings"==t.get_field_meta($(this),"save")&&(a=!0)):(a=!0,!1)}):a=!0,a?void alert(acf._e("move_field_warning")):(acf.open_popup({title:acf._e("move_field"),loading:!0,height:145}),void $.ajax({url:acf.get("ajaxurl"),data:i,type:"post",dataType:"html",success:function(i){t.move_field_confirm(e,i)}}))},move_field_confirm:function(e,t){var i=this;acf.update_popup({content:t});var a=acf.prepare_for_ajax({action:"acf/field_group/move_field",field_id:this.get_field_meta(e,"ID"),field_group_id:0});$("#acf-move-field-form").on("submit",function(){return a.field_group_id=$(this).find("select").val(),$.ajax({url:acf.get("ajaxurl"),data:a,type:"post",dataType:"html",success:function(t){acf.update_popup({content:t}),i.remove_field(e)}}),!1})},delete_field:function(e,t){t=t||!0;var i=this.get_field_meta(e,"ID");if(i){var a=$("#_acf_delete_fields");a.val(a.val()+"|"+i)}acf.do_action("delete_field",e),t&&this.remove_field(e)},remove_field:function(e){var t=this,i=e.closest(".acf-field-list");e.css({height:e.height(),width:e.width(),position:"absolute"}),e.wrap('<div class="temp-field-wrap" style="height:'+e.height()+'px"></div>'),e.animate({opacity:0},250);var a=0,n=!1;i.children(".acf-field-object").length||(n=i.children(".no-fields-message"),a=n.outerHeight()),e.parent(".temp-field-wrap").animate({height:a},250,function(){n&&n.show(),acf.do_action("remove",$(this)),$(this).remove(),t.render_fields()})},change_field_type:function(e){var t=e.closest("tbody"),i=t.closest(".acf-field-object"),a=i.parent().closest(".acf-field-object"),n=i.attr("data-key"),d=i.attr("data-type"),l=e.val();i.removeClass("acf-field-object-"+acf.str_replace("_","-",d)),i.addClass("acf-field-object-"+acf.str_replace("_","-",l)),i.attr("data-type",l),i.data("type",l),i.data("xhr")&&i.data("xhr").abort();var f=t.children('.acf-field[data-setting="'+d+'"]'),c="";if(f.each(function(){c+=$(this).outerHTML()}),f.remove(),acf.update(n+"_settings_"+d,c),this.render_field(i),c=acf.get(n+"_settings_"+l))return t.children('.acf-field[data-name="conditional_logic"]').before(c),acf.update(n+"_settings_"+l,""),void acf.do_action("change_field_type",i);var r=$('<tr class="acf-field"><td class="acf-label"></td><td class="acf-input"><div class="acf-loading"></div></td></tr>');t.children('.acf-field[data-name="conditional_logic"]').before(r);var o={action:"acf/field_group/render_field_settings",nonce:acf.o.nonce,parent:acf.o.post_id,field_group:acf.o.post_id,prefix:e.attr("name").replace("[type]",""),type:l};a.exists()&&(o.parent=this.get_field_meta(a,"ID"));var s=$.ajax({url:acf.o.ajaxurl,data:o,type:"post",dataType:"html",success:function(e){if(e){var t=$(e);r.after(t),acf.do_action("append",t),acf.do_action("change_field_type",i)}},complete:function(){r.remove()}});i.data("xhr",s)},change_field_label:function(e){var t=e.find(".field-label:first"),i=e.find(".field-name:first"),a=e.attr("data-type");if(""==i.val()){var n=t.val();n=acf.str_sanitize(n),i.val(n).trigger("change")}this.render_field(e),acf.do_action("change_field_label",e)},change_field_name:function(e){var t=e.find(".field-name:first");"field_"===t.val().substr(0,6)&&(alert(acf._e("field_name_start")),setTimeout(function(){t.focus()},1)),acf.do_action("change_field_name",e)}}),acf.field_group.field=acf.model.extend({events:{"click .edit-field":"edit","click .duplicate-field":"duplicate","click .move-field":"move","click .delete-field":"delete","click .add-field":"add","change .field-type":"change_type","blur .field-label":"change_label","blur .field-name":"change_name","keyup .field-label":"render","keyup .field-name":"render","change .field-required":"render","change .acf-field-object input":"save","change .acf-field-object textarea":"save","change .acf-field-object select":"save"},event:function(e){return e.$field=e.$el.closest(".acf-field-object"),e},edit:function(e){acf.field_group.edit_field(e.$field)},duplicate:function(e){acf.field_group.duplicate_field(e.$field)},move:function(e){acf.field_group.move_field(e.$field)},delete:function(e){acf.field_group.delete_field(e.$field)},add:function(e){var t=e.$el.closest(".acf-field-list-wrap").children(".acf-field-list");acf.field_group.add_field(t)},change_type:function(e){acf.field_group.change_field_type(e.$el)},change_label:function(e){acf.field_group.change_field_label(e.$field)},change_name:function(e){acf.field_group.change_field_name(e.$field)},render:function(e){acf.field_group.render_field(e.$field)},save:function(e){acf.field_group.save_field(e.$field)}}),acf.field_group.conditional_logic=acf.model.extend({actions:{open_field:"render_field",change_field_label:"render_fields",change_field_type:"render_fields"},events:{"click .add-conditional-rule":"add_rule","click .add-conditional-group":"add_group","click .remove-conditional-rule":"remove_rule","change .conditional-toggle":"change_toggle","change .conditional-rule-param":"change_param"},render_fields:function(){var e=this;$(".acf-field-object.open").each(function(){e.render_field($(this))})},render_field:function(e){var t=this,i=e.attr("data-key"),a=e.parents(".acf-field-list"),n=e.find(".acf-field-setting-conditional_logic:last"),d=[];$.each(a,function(e){var t=0==e?acf._e("sibling_fields"):acf._e("parent_fields");$(this).children(".acf-field-object").each(function(){var e=$(this),a=e.attr("data-key"),n=e.attr("data-type"),l=e.find(".field-label:first").val();$.inArray(n,["select","checkbox","true_false","radio","button_group"])!==-1&&a!=i&&d.push({value:a,label:l,group:t})})}),d.length||d.push({value:"",label:acf._e("no_fields")}),n.find(".rule").each(function(){t.render_rule($(this),d)})},render_rule:function(e,t){var i=e.find(".conditional-rule-param"),a=e.find(".conditional-rule-value");t&&acf.render_select(i,t);var n=$('.acf-field-object[data-key="'+i.val()+'"]'),d=n.attr("data-type"),l=[];if("true_false"==d)l.push({value:1,label:acf._e("checked")});else if("select"==d||"checkbox"==d||"radio"==d||"button_group"==d){var f=n.find('.acf-field[data-name="choices"] textarea').val().split("\n");$.each(f,function(e,t){t=t.split(":"),t[1]=t[1]||t[0],l.push({value:$.trim(t[0]),label:$.trim(t[1])})});var c=n.find('.acf-field[data-name="allow_null"]');c.exists()&&"1"==c.find("input:checked").val()&&l.unshift({value:"",label:acf._e("null")})}acf.render_select(a,l)},change_toggle:function(e){var t=e.$el,i=e.$el.prop("checked"),a=t.closest(".acf-input");i?(a.find(".rule-groups").show(),a.find(".rule-groups").find("[name]").prop("disabled",!1)):(a.find(".rule-groups").hide(),a.find(".rule-groups").find("[name]").prop("disabled",!0))},change_param:function(e){var t=e.$el.closest(".rule");this.render_rule(t)},add_rule:function(e){var t=e.$el.closest("tr");$tr2=acf.duplicate(t),$tr2.find("select:first").trigger("change")},remove_rule:function(e){var t=e.$el.closest("tr");t.find("select:first").trigger("change"),0==t.siblings("tr").length&&t.closest(".rule-group").remove(),t.remove()},add_group:function(e){var t=e.$el.closest(".rule-groups"),i=t.find(".rule-group:last");$group2=acf.duplicate(i),$group2.find("h4").text(acf._e("or")),$group2.find("tr:not(:first)").remove(),$group2.find("select:first").trigger("change")}}),acf.field_group.locations=acf.model.extend({events:{"click .add-location-rule":"add_rule","click .add-location-group":"add_group","click .remove-location-rule":"remove_rule","change .refresh-location-rule":"change_rule"},add_rule:function(e){var t=e.$el.closest("tr");$tr2=acf.duplicate(t)},remove_rule:function(e){var t=e.$el.closest("tr");0==t.siblings("tr").length?t.closest(".rule-group").remove():t.remove()},add_group:function(e){var t=e.$el.closest(".rule-groups"),i=t.find(".rule-group:last");$group2=acf.duplicate(i),$group2.find("h4").text(acf._e("or")),$group2.find("tr:not(:first)").remove()},change_rule:function(e){var t=e.$el.closest("tr"),i=t.closest(".rule-group"),a=t.find("td.param select").attr("name").replace("[param]",""),n={action:"acf/field_group/render_location_rule",rule:acf.serialize(t,a)};n.rule.id=t.attr("data-id"),n.rule.group=i.attr("data-id"),$.ajax({url:acf.get("ajaxurl"),data:acf.prepare_for_ajax(n),type:"post",dataType:"html",success:function(e){e&&t.replaceWith(e)}})}}),acf.field_group.field_object=acf.model.extend({type:"",o:{},$field:null,$settings:null,tag:function(e){var t=this.type,i=e.split("_");return i.splice(1,0,"field"),e=i.join("_"),t&&(e+="/type="+t),e},selector:function(){var e=".acf-field-object",t=this.type;return t&&(e+="-"+t,e=acf.str_replace("_","-",e)),e},_add_action:function(e,t){var i=this;acf.add_action(this.tag(e),function(e){i.set("$field",e),i[t].apply(i,arguments)})},_add_filter:function(e,t){var i=this;acf.add_filter(this.tag(e),function(e){i.set("$field",e),i[t].apply(i,arguments)})},_add_event:function(e,t){var i=this,a=e.substr(0,e.indexOf(" ")),n=e.substr(e.indexOf(" ")+1),d=this.selector();$(document).on(a,d+" "+n,function(e){e.$el=$(this),e.$field=e.$el.closest(".acf-field-object"),i.set("$field",e.$field),i[t].apply(i,[e])})},_set_$field:function(){this.o=this.$field.data(),this.$settings=this.$field.find("> .settings > table > tbody"),this.focus()},focus:function(){},setting:function(e){return this.$settings.find("> .acf-field-setting-"+e)}}),acf.field_group.field_objects=acf.model.extend({actions:{save_field:"_save_field",open_field:"_open_field",close_field:"_close_field",wipe_field:"_wipe_field",add_field:"_add_field",duplicate_field:"_duplicate_field",delete_field:"_delete_field",change_field_type:"_change_field_type",change_field_label:"_change_field_label",change_field_name:"_change_field_name",render_field_settings:"_render_field_settings"},_save_field:function(e){acf.do_action("save_field/type="+e.data("type"),e)},_open_field:function(e){acf.do_action("open_field/type="+e.data("type"),e),acf.do_action("render_field_settings",e)},_close_field:function(e){acf.do_action("close_field/type="+e.data("type"),e)},_wipe_field:function(e){acf.do_action("wipe_field/type="+e.data("type"),e)},_add_field:function(e){acf.do_action("add_field/type="+e.data("type"),e)},_duplicate_field:function(e){acf.do_action("duplicate_field/type="+e.data("type"),e)},_delete_field:function(e){acf.do_action("delete_field/type="+e.data("type"),e)},_change_field_type:function(e){acf.do_action("change_field_type/type="+e.data("type"),e),acf.do_action("render_field_settings",e)},_change_field_label:function(e){acf.do_action("change_field_label/type="+e.data("type"),e)},_change_field_name:function(e){acf.do_action("change_field_name/type="+e.data("type"),e)},_render_field_settings:function(e){acf.do_action("render_field_settings/type="+e.data("type"),e)}}),acf.field_group.append=acf.model.extend({actions:{render_field_settings:"_render_field_settings"},render:function(e){var t=e.data("append");if($sibling=e.siblings('[data-name="'+t+'"]'),$sibling.exists()){var i=$sibling.children(".acf-input"),a=i.children(".acf-hl");a.exists()||(i.wrapInner('<ul class="acf-hl"><li></li></ul>'),a=i.children(".acf-hl"));var n=$("<li></li>").append(e.children(".acf-input").children());a.append(n),a.attr("data-cols",a.children().length),e.remove()}},_render_field_settings:function(e){var t=this;e.find(".acf-field[data-append]").each(function(){t.render($(this))})}});var e=acf.field_group.field_object.extend({type:"select",actions:{render_settings:"render"},events:{"change .acf-field-setting-ui input":"render"},render:function(e){this.setting('ui input[type="checkbox"]').prop("checked")?this.setting("ajax").show():(this.setting("ajax").hide(),this.setting('ajax input[type="checkbox"]').prop("checked",!1).trigger("change"))}}),t=acf.field_group.field_object.extend({type:"radio",actions:{render_settings:"render"},events:{"change .acf-field-setting-other_choice input":"render"},render:function(e){this.setting('other_choice input[type="checkbox"]').prop("checked")?this.setting("save_other_choice").show():(this.setting("save_other_choice").hide(),this.setting('save_other_choice input[type="checkbox"]').prop("checked",!1).trigger("change"))}}),i=acf.field_group.field_object.extend({type:"checkbox",actions:{render_settings:"render"},events:{"change .acf-field-setting-allow_custom input":"render"},render:function(e){this.setting('allow_custom input[type="checkbox"]').prop("checked")?this.setting("save_custom").show():(this.setting("save_custom").hide(),this.setting('save_custom input[type="checkbox"]').prop("checked",!1).trigger("change"))}}),a=acf.field_group.field_object.extend({type:"true_false",actions:{render_settings:"render"},events:{"change .acf-field-setting-ui input":"render"},render:function(e){this.setting('ui input[type="checkbox"]').prop("checked")?(this.setting("ui_on_text").show(),this.setting("ui_off_text").show()):(this.setting("ui_on_text").hide(),this.setting("ui_off_text").hide())}}),n=acf.field_group.field_object.extend({type:"date_picker",actions:{render_settings:"render"},events:{"change .acf-field-setting-display_format input":"render","change .acf-field-setting-return_format input":"render"},render:function(e){this.render_list(this.setting("display_format")),this.render_list(this.setting("return_format"))},render_list:function(e){var t=e.find("ul"),i=t.find('input[type="radio"]:checked'),a=t.find('input[type="text"]');"other"!=i.val()&&a.val(i.val())}}),d=n.extend({type:"date_time_picker"}),d=n.extend({type:"time_picker"}),l=acf.field_group.field_object.extend({type:"tab",actions:{render_settings:"render"},render:function(e){this.setting("name input").val("").trigger("change"),this.setting('required input[type="checkbox"]').prop("checked",!1).trigger("change")}}),f=l.extend({type:"message"});acf.field_group.screen=acf.model.extend({actions:{ready:"ready"},events:{"click #acf-field-key-hide":"toggle"},ready:function(){var e=$("#adv-settings"),t=e.find("#acf-append-show-on-screen");e.find(".metabox-prefs").append(t.html()),e.find(".metabox-prefs br").remove(),t.remove(),this.render()},toggle:function(e){var t=e.$el.prop("checked")?1:0;acf.update_user_setting("show_field_keys",t),this.render()},render:function(){var e=acf.serialize($("#adv-settings")),t=acf.field_group.$fields;e.show_field_keys?t.addClass("show-field-keys"):t.removeClass("show-field-keys")}}),acf.field_group.sub_fields=acf.model.extend({actions:{open_field:"update_field_parent",sortstop:"update_field_parent",duplicate_field:"duplicate_field",delete_field:"delete_field",change_field_type:"change_field_type"},fix_conditional_logic:function(e){var t={};e.each(function(){t[$(this).attr("data-orig")]=$(this).attr("data-key")}),e.find(".conditional-rule-param").each(function(){var e=$(this).val();e in t&&($(this).find('option[value="'+t[e]+'"]').exists()||$(this).append('<option value="'+t[e]+'">'+t[e]+"</option>"),$(this).val(t[e]))})},update_field_parent:function(e){if(e.hasClass("acf-field-object")){var t=e.parent().closest(".acf-field-object"),i=acf.get("post_id");t.exists()&&(i=acf.field_group.get_field_meta(t,"ID"),i||(i=acf.field_group.get_field_meta(t,"key"))),acf.field_group.update_field_meta(e,"parent",i),acf.do_action("update_field_parent",e,t)}},duplicate_field:function(e){var t=e.find(".acf-field-object");t.exists()&&(t.each(function(){var e=$(this).parent().closest(".acf-field-object"),t=acf.field_group.get_field_meta(e,"key");acf.field_group.wipe_field($(this)),acf.field_group.update_field_meta($(this),"parent",t),acf.field_group.save_field($(this))}),this.fix_conditional_logic(t))},delete_field:function(e){e.find(".acf-field-object").each(function(){acf.field_group.delete_field($(this),!1)})},change_field_type:function(e){e.find(".acf-field-object").each(function(){acf.field_group.delete_field($(this),!1)})}})}(jQuery);
1
+ !function($){acf.field_group=acf.model.extend({$fields:null,$locations:null,$options:null,actions:{ready:"init"},events:{"submit #post":"submit",'click a[href="#"]':"preventDefault","click .submitdelete":"trash","mouseenter .acf-field-list":"sortable"},init:function(){this.$fields=$("#acf-field-group-fields"),this.$locations=$("#acf-field-group-locations"),this.$options=$("#acf-field-group-options"),acf.validation.active=0},sortable:function(e){if(!e.$el.hasClass("ui-sortable")){var t=this;e.$el.sortable({handle:".acf-sortable-handle",connectWith:".acf-field-list",start:function(e,t){t.placeholder.height(t.item.height())},update:function(e,i){var a=i.item;t.render_fields(),acf.do_action("sortstop",a)}})}},preventDefault:function(e){e.preventDefault()},get_selector:function(e){e=e||"";var t=".acf-field-object";return e&&(t+="-"+e,t=t.split("_").join("-")),t},render_fields:function(){var e=this;$(".acf-field-list").each(function(){var t=$(this).children(".acf-field-object");t.each(function(t){e.update_field_meta($(this),"menu_order",t),$(this).children(".handle").find(".acf-icon").html(t+1)}),t.exists()?$(this).children(".no-fields-message").hide():$(this).children(".no-fields-message").show()})},get_field_meta:function(e,t){var i=e.find("> .meta > .input-"+t);return!!i.exists()&&i.val()},update_field_meta:function(e,t,i){var a=e.find("> .meta > .input-"+t);if(!a.exists()){var n=e.find("> .meta > .input-ID").outerHTML();n=acf.str_replace("ID",t,n),a=$(n),a.val(i),e.children(".meta").append(a)}a.val()!=i&&(a.val(i),"save"!=t&&this.save_field(e,"meta"))},delete_field_meta:function(e,t){var i=e.find("> .meta > .input-"+t);i.exists()&&(i.remove(),this.save_field(e,"meta"))},save_field:function(e,t){t=t||"settings";var i=this.get_field_meta(e,"save");"settings"!=i&&i!=t&&(this.update_field_meta(e,"save",t),acf.do_action("save_field",e,t))},submit:function(e){var t=this,i=$("#titlewrap #title");i.val()||(e.preventDefault(),acf.validation.toggle(e.$el,"unlock"),alert(acf._e("title_is_required")),i.focus()),$(".acf-field-object").each(function(){var e=t.get_field_meta($(this),"save"),i=t.get_field_meta($(this),"ID");$(this).hasClass("open")&&t.close_field($(this)),"settings"==e||("meta"==e?$(this).children(".settings").find('[name^="acf_fields['+i+']"]').remove():$(this).find('[name^="acf_fields['+i+']"]').remove())})},trash:function(e){confirm(acf._e("move_to_trash"))||e.preventDefault()},render_field:function(e){var t=e.find(".field-label:first").val(),i=e.find(".field-name:first").val(),a=e.find(".field-type:first option:selected").text(),n=e.find(".field-required:first").prop("checked"),d=e.children(".handle");d.find(".li-field-label strong a").html(t),d.find(".li-field-label .acf-required").remove(),n&&d.find(".li-field-label strong").append('<span class="acf-required">*</span>'),d.find(".li-field-name").text(i),d.find(".li-field-type").text(a),acf.do_action("render_field_handle",e,d)},edit_field:function(e){e.hasClass("open")?this.close_field(e):this.open_field(e)},open_field:function(e){if(e.hasClass("open"))return!1;e.addClass("open"),acf.do_action("open_field",e),e.children(".settings").animate({height:"toggle"},250)},close_field:function(e){if(!e.hasClass("open"))return!1;e.removeClass("open"),acf.do_action("close_field",e),e.children(".settings").animate({height:"toggle"},250)},wipe_field:function(e){var t=e.attr("data-id"),i=e.attr("data-key"),a=acf.get_uniqid(),n="field_"+a;e.attr("data-id",a),e.attr("data-key",n),e.attr("data-orig",i),this.update_field_meta(e,"ID",""),this.update_field_meta(e,"key",n),e.find('[id*="'+t+'"]').each(function(){$(this).attr("id",$(this).attr("id").replace(t,a))}),e.find('[name*="'+t+'"]').each(function(){$(this).attr("name",$(this).attr("name").replace(t,a))}),e.find("> .handle .pre-field-key").text(n),e.find(".ui-sortable").removeClass("ui-sortable"),acf.do_action("wipe_field",e)},add_field:function(e){var t=$($("#tmpl-acf-field").html()),i=t.find(".field-label:first"),a=t.find(".field-name:first");this.wipe_field(t),e.append(t),i.val(""),a.val(""),setTimeout(function(){i.focus()},251),this.render_fields(),acf.do_action("append",t),this.edit_field(t),acf.do_action("add_field",t)},duplicate_field:function(e){acf.do_action("before_duplicate",e);var t=e.clone(),i=t.find(".field-label:first"),a=t.find(".field-name:first");acf.do_action("remove",t),this.wipe_field(t),acf.do_action("after_duplicate",e,t),e.after(t),acf.do_action("append",t),setTimeout(function(){i.focus()},251),this.render_fields(),e.hasClass("open")?this.close_field(e):this.open_field(t);var n=i.val(),d=a.val(),l=d.split("_").pop(),f=acf._e("copy");if(0===l.indexOf(f)){var c=1*l.replace(f,"");c=c?c+1:2,n=n.replace(l,f+c),d=d.replace(l,f+c)}else n+=" ("+f+")",d+="_"+f;return i.val(n),a.val(d),this.save_field(t),this.render_field(t),acf.do_action("duplicate_field",t),t},move_field:function(e){var t=this,i=acf.prepare_for_ajax({action:"acf/field_group/move_field",field_id:this.get_field_meta(e,"ID")}),a=!1;if(i.field_id?"settings"==this.get_field_meta(e,"save")?a=!0:e.find(".acf-field-object").each(function(){if(!t.get_field_meta($(this),"ID"))return a=!0,!1;"settings"==t.get_field_meta($(this),"save")&&(a=!0)}):a=!0,a)return void alert(acf._e("move_field_warning"));acf.open_popup({title:acf._e("move_field"),loading:!0,height:145}),$.ajax({url:acf.get("ajaxurl"),data:i,type:"post",dataType:"html",success:function(i){t.move_field_confirm(e,i)}})},move_field_confirm:function(e,t){var i=this;acf.update_popup({content:t});var a=acf.prepare_for_ajax({action:"acf/field_group/move_field",field_id:this.get_field_meta(e,"ID"),field_group_id:0});$("#acf-move-field-form").on("submit",function(){return a.field_group_id=$(this).find("select").val(),$.ajax({url:acf.get("ajaxurl"),data:a,type:"post",dataType:"html",success:function(t){acf.update_popup({content:t}),i.remove_field(e)}}),!1})},delete_field:function(e,t){t=t||!0;var i=this.get_field_meta(e,"ID");if(i){var a=$("#_acf_delete_fields");a.val(a.val()+"|"+i)}acf.do_action("delete_field",e),t&&this.remove_field(e)},remove_field:function(e){var t=this,i=e.closest(".acf-field-list");e.css({height:e.height(),width:e.width(),position:"absolute"}),e.wrap('<div class="temp-field-wrap" style="height:'+e.height()+'px"></div>'),e.animate({opacity:0},250);var a=0,n=!1;i.children(".acf-field-object").length||(n=i.children(".no-fields-message"),a=n.outerHeight()),e.parent(".temp-field-wrap").animate({height:a},250,function(){n&&n.show(),acf.do_action("remove",$(this)),$(this).remove(),t.render_fields()})},change_field_type:function(e){var t=e.closest("tbody"),i=t.closest(".acf-field-object"),a=i.parent().closest(".acf-field-object"),n=i.attr("data-key"),d=i.attr("data-type"),l=e.val();i.removeClass("acf-field-object-"+acf.str_replace("_","-",d)),i.addClass("acf-field-object-"+acf.str_replace("_","-",l)),i.attr("data-type",l),i.data("type",l),i.data("xhr")&&i.data("xhr").abort();var f=t.children('.acf-field[data-setting="'+d+'"]'),c="";if(f.each(function(){c+=$(this).outerHTML()}),f.remove(),acf.update(n+"_settings_"+d,c),this.render_field(i),c=acf.get(n+"_settings_"+l))return t.children('.acf-field[data-name="conditional_logic"]').before(c),acf.update(n+"_settings_"+l,""),void acf.do_action("change_field_type",i);var r=$('<tr class="acf-field"><td class="acf-label"></td><td class="acf-input"><div class="acf-loading"></div></td></tr>');t.children('.acf-field[data-name="conditional_logic"]').before(r);var o={action:"acf/field_group/render_field_settings",nonce:acf.o.nonce,parent:acf.o.post_id,field_group:acf.o.post_id,prefix:e.attr("name").replace("[type]",""),type:l};a.exists()&&(o.parent=this.get_field_meta(a,"ID"));var s=$.ajax({url:acf.o.ajaxurl,data:o,type:"post",dataType:"html",success:function(e){if(e){var t=$(e);r.after(t),acf.do_action("append",t),acf.do_action("change_field_type",i)}},complete:function(){r.remove()}});i.data("xhr",s)},change_field_label:function(e){var t=e.find(".field-label:first"),i=e.find(".field-name:first"),a=e.attr("data-type");if(""==i.val()){var n=t.val();n=acf.str_sanitize(n),i.val(n).trigger("change")}this.render_field(e),acf.do_action("change_field_label",e)},change_field_name:function(e){var t=e.find(".field-name:first");"field_"===t.val().substr(0,6)&&(alert(acf._e("field_name_start")),setTimeout(function(){t.focus()},1)),acf.do_action("change_field_name",e)}}),acf.field_group.field=acf.model.extend({events:{"click .edit-field":"edit","click .duplicate-field":"duplicate","click .move-field":"move","click .delete-field":"delete","click .add-field":"add","change .field-type":"change_type","blur .field-label":"change_label","blur .field-name":"change_name","keyup .field-label":"render","keyup .field-name":"render","change .field-required":"render","change .acf-field-object input":"save","change .acf-field-object textarea":"save","change .acf-field-object select":"save"},event:function(e){return e.$field=e.$el.closest(".acf-field-object"),e},edit:function(e){acf.field_group.edit_field(e.$field)},duplicate:function(e){acf.field_group.duplicate_field(e.$field)},move:function(e){acf.field_group.move_field(e.$field)},delete:function(e){acf.field_group.delete_field(e.$field)},add:function(e){var t=e.$el.closest(".acf-field-list-wrap").children(".acf-field-list");acf.field_group.add_field(t)},change_type:function(e){acf.field_group.change_field_type(e.$el)},change_label:function(e){acf.field_group.change_field_label(e.$field)},change_name:function(e){acf.field_group.change_field_name(e.$field)},render:function(e){acf.field_group.render_field(e.$field)},save:function(e){acf.field_group.save_field(e.$field)}}),acf.field_group.conditional_logic=acf.model.extend({actions:{open_field:"render_field",change_field_label:"render_fields",change_field_type:"render_fields"},events:{"click .add-conditional-rule":"add_rule","click .add-conditional-group":"add_group","click .remove-conditional-rule":"remove_rule","change .conditional-toggle":"change_toggle","change .conditional-rule-param":"change_param"},render_fields:function(){var e=this;$(".acf-field-object.open").each(function(){e.render_field($(this))})},render_field:function(e){var t=this,i=e.attr("data-key"),a=e.parents(".acf-field-list"),n=e.find(".acf-field-setting-conditional_logic:last"),d=[];$.each(a,function(e){var t=0==e?acf._e("sibling_fields"):acf._e("parent_fields");$(this).children(".acf-field-object").each(function(){var e=$(this),a=e.attr("data-key"),n=e.attr("data-type"),l=e.find(".field-label:first").val();-1!==$.inArray(n,["select","checkbox","true_false","radio","button_group"])&&a!=i&&d.push({value:a,label:l,group:t})})}),d.length||d.push({value:"",label:acf._e("no_fields")}),n.find(".rule").each(function(){t.render_rule($(this),d)})},render_rule:function(e,t){var i=e.find(".conditional-rule-param"),a=e.find(".conditional-rule-value");t&&acf.render_select(i,t);var n=$('.acf-field-object[data-key="'+i.val()+'"]'),d=n.attr("data-type"),l=[];if("true_false"==d)l.push({value:1,label:acf._e("checked")});else if("select"==d||"checkbox"==d||"radio"==d||"button_group"==d){var f=n.find('.acf-field[data-name="choices"] textarea').val().split("\n");$.each(f,function(e,t){t=t.split(":"),t[1]=t[1]||t[0],l.push({value:$.trim(t[0]),label:$.trim(t[1])})});var c=n.find('.acf-field[data-name="allow_null"]');c.exists()&&"1"==c.find("input:checked").val()&&l.unshift({value:"",label:acf._e("null")})}acf.render_select(a,l)},change_toggle:function(e){var t=e.$el,i=e.$el.prop("checked"),a=t.closest(".acf-input");i?(a.find(".rule-groups").show(),a.find(".rule-groups").find("[name]").prop("disabled",!1)):(a.find(".rule-groups").hide(),a.find(".rule-groups").find("[name]").prop("disabled",!0))},change_param:function(e){var t=e.$el.closest(".rule");this.render_rule(t)},add_rule:function(e){var t=e.$el.closest("tr");$tr2=acf.duplicate(t),$tr2.find("select:first").trigger("change")},remove_rule:function(e){var t=e.$el.closest("tr");t.find("select:first").trigger("change"),0==t.siblings("tr").length&&t.closest(".rule-group").remove(),t.remove()},add_group:function(e){var t=e.$el.closest(".rule-groups"),i=t.find(".rule-group:last");$group2=acf.duplicate(i),$group2.find("h4").text(acf._e("or")),$group2.find("tr:not(:first)").remove(),$group2.find("select:first").trigger("change")}}),acf.field_group.locations=acf.model.extend({events:{"click .add-location-rule":"add_rule","click .add-location-group":"add_group","click .remove-location-rule":"remove_rule","change .refresh-location-rule":"change_rule"},add_rule:function(e){var t=e.$el.closest("tr");$tr2=acf.duplicate(t)},remove_rule:function(e){var t=e.$el.closest("tr");0==t.siblings("tr").length?t.closest(".rule-group").remove():t.remove()},add_group:function(e){var t=e.$el.closest(".rule-groups"),i=t.find(".rule-group:last");$group2=acf.duplicate(i),$group2.find("h4").text(acf._e("or")),$group2.find("tr:not(:first)").remove()},change_rule:function(e){var t=e.$el.closest("tr"),i=t.closest(".rule-group"),a=t.find("td.param select").attr("name").replace("[param]",""),n={action:"acf/field_group/render_location_rule",rule:acf.serialize(t,a)};n.rule.id=t.attr("data-id"),n.rule.group=i.attr("data-id"),$.ajax({url:acf.get("ajaxurl"),data:acf.prepare_for_ajax(n),type:"post",dataType:"html",success:function(e){e&&t.replaceWith(e)}})}}),acf.field_group.field_object=acf.model.extend({type:"",o:{},$field:null,$settings:null,tag:function(e){var t=this.type,i=e.split("_");return i.splice(1,0,"field"),e=i.join("_"),t&&(e+="/type="+t),e},selector:function(){var e=".acf-field-object",t=this.type;return t&&(e+="-"+t,e=acf.str_replace("_","-",e)),e},_add_action:function(e,t){var i=this;acf.add_action(this.tag(e),function(e){i.set("$field",e),i[t].apply(i,arguments)})},_add_filter:function(e,t){var i=this;acf.add_filter(this.tag(e),function(e){i.set("$field",e),i[t].apply(i,arguments)})},_add_event:function(e,t){var i=this,a=e.substr(0,e.indexOf(" ")),n=e.substr(e.indexOf(" ")+1),d=this.selector();$(document).on(a,d+" "+n,function(e){e.$el=$(this),e.$field=e.$el.closest(".acf-field-object"),i.set("$field",e.$field),i[t].apply(i,[e])})},_set_$field:function(){this.o=this.$field.data(),this.$settings=this.$field.find("> .settings > table > tbody"),this.focus()},focus:function(){},setting:function(e){return this.$settings.find("> .acf-field-setting-"+e)}}),acf.field_group.field_objects=acf.model.extend({actions:{save_field:"_save_field",open_field:"_open_field",close_field:"_close_field",wipe_field:"_wipe_field",add_field:"_add_field",duplicate_field:"_duplicate_field",delete_field:"_delete_field",change_field_type:"_change_field_type",change_field_label:"_change_field_label",change_field_name:"_change_field_name",render_field_settings:"_render_field_settings"},_save_field:function(e){acf.do_action("save_field/type="+e.data("type"),e)},_open_field:function(e){acf.do_action("open_field/type="+e.data("type"),e),acf.do_action("render_field_settings",e)},_close_field:function(e){acf.do_action("close_field/type="+e.data("type"),e)},_wipe_field:function(e){acf.do_action("wipe_field/type="+e.data("type"),e)},_add_field:function(e){acf.do_action("add_field/type="+e.data("type"),e)},_duplicate_field:function(e){acf.do_action("duplicate_field/type="+e.data("type"),e)},_delete_field:function(e){acf.do_action("delete_field/type="+e.data("type"),e)},_change_field_type:function(e){acf.do_action("change_field_type/type="+e.data("type"),e),acf.do_action("render_field_settings",e)},_change_field_label:function(e){acf.do_action("change_field_label/type="+e.data("type"),e)},_change_field_name:function(e){acf.do_action("change_field_name/type="+e.data("type"),e)},_render_field_settings:function(e){acf.do_action("render_field_settings/type="+e.data("type"),e)}}),acf.field_group.append=acf.model.extend({actions:{render_field_settings:"_render_field_settings"},render:function(e){var t=e.data("append");if($sibling=e.siblings('[data-name="'+t+'"]'),$sibling.exists()){var i=$sibling.children(".acf-input"),a=i.children(".acf-hl");a.exists()||(i.wrapInner('<ul class="acf-hl"><li></li></ul>'),a=i.children(".acf-hl"));var n=$("<li></li>").append(e.children(".acf-input").children());a.append(n),a.attr("data-cols",a.children().length),e.remove()}},_render_field_settings:function(e){var t=this;e.find(".acf-field[data-append]").each(function(){t.render($(this))})}});var e=acf.field_group.field_object.extend({type:"select",actions:{render_settings:"render"},events:{"change .acf-field-setting-ui input":"render"},render:function(e){this.setting('ui input[type="checkbox"]').prop("checked")?this.setting("ajax").show():(this.setting("ajax").hide(),this.setting('ajax input[type="checkbox"]').prop("checked",!1).trigger("change"))}}),t=acf.field_group.field_object.extend({type:"radio",actions:{render_settings:"render"},events:{"change .acf-field-setting-other_choice input":"render"},render:function(e){this.setting('other_choice input[type="checkbox"]').prop("checked")?this.setting("save_other_choice").show():(this.setting("save_other_choice").hide(),this.setting('save_other_choice input[type="checkbox"]').prop("checked",!1).trigger("change"))}}),i=acf.field_group.field_object.extend({type:"checkbox",actions:{render_settings:"render"},events:{"change .acf-field-setting-allow_custom input":"render"},render:function(e){this.setting('allow_custom input[type="checkbox"]').prop("checked")?this.setting("save_custom").show():(this.setting("save_custom").hide(),this.setting('save_custom input[type="checkbox"]').prop("checked",!1).trigger("change"))}}),a=acf.field_group.field_object.extend({type:"true_false",actions:{render_settings:"render"},events:{"change .acf-field-setting-ui input":"render"},render:function(e){this.setting('ui input[type="checkbox"]').prop("checked")?(this.setting("ui_on_text").show(),this.setting("ui_off_text").show()):(this.setting("ui_on_text").hide(),this.setting("ui_off_text").hide())}}),n=acf.field_group.field_object.extend({type:"date_picker",actions:{render_settings:"render"},events:{"change .acf-field-setting-display_format input":"render","change .acf-field-setting-return_format input":"render"},render:function(e){this.render_list(this.setting("display_format")),this.render_list(this.setting("return_format"))},render_list:function(e){var t=e.find("ul"),i=t.find('input[type="radio"]:checked'),a=t.find('input[type="text"]');"other"!=i.val()&&a.val(i.val())}}),d=n.extend({type:"date_time_picker"}),d=n.extend({type:"time_picker"}),l=acf.field_group.field_object.extend({type:"tab",actions:{render_settings:"render"},render:function(e){this.setting("name input").val("").trigger("change"),this.setting('required input[type="checkbox"]').prop("checked",!1).trigger("change")}}),f=l.extend({type:"message"});acf.field_group.screen=acf.model.extend({actions:{ready:"ready"},events:{"click #acf-field-key-hide":"toggle"},ready:function(){var e=$("#adv-settings"),t=e.find("#acf-append-show-on-screen");e.find(".metabox-prefs").append(t.html()),e.find(".metabox-prefs br").remove(),t.remove(),this.render()},toggle:function(e){var t=e.$el.prop("checked")?1:0;acf.update_user_setting("show_field_keys",t),this.render()},render:function(){var e=acf.serialize($("#adv-settings")),t=acf.field_group.$fields;e.show_field_keys?t.addClass("show-field-keys"):t.removeClass("show-field-keys")}}),acf.field_group.sub_fields=acf.model.extend({actions:{open_field:"update_field_parent",sortstop:"update_field_parent",duplicate_field:"duplicate_field",delete_field:"delete_field",change_field_type:"change_field_type"},fix_conditional_logic:function(e){var t={};e.each(function(){t[$(this).attr("data-orig")]=$(this).attr("data-key")}),e.find(".conditional-rule-param").each(function(){var e=$(this).val();e in t&&($(this).find('option[value="'+t[e]+'"]').exists()||$(this).append('<option value="'+t[e]+'">'+t[e]+"</option>"),$(this).val(t[e]))})},update_field_parent:function(e){if(e.hasClass("acf-field-object")){var t=e.parent().closest(".acf-field-object"),i=acf.get("post_id");t.exists()&&((i=acf.field_group.get_field_meta(t,"ID"))||(i=acf.field_group.get_field_meta(t,"key"))),acf.field_group.update_field_meta(e,"parent",i),acf.do_action("update_field_parent",e,t)}},duplicate_field:function(e){var t=e.find(".acf-field-object");t.exists()&&(t.each(function(){var e=$(this).parent().closest(".acf-field-object"),t=acf.field_group.get_field_meta(e,"key");acf.field_group.wipe_field($(this)),acf.field_group.update_field_meta($(this),"parent",t),acf.field_group.save_field($(this))}),this.fix_conditional_logic(t))},delete_field:function(e){e.find(".acf-field-object").each(function(){acf.field_group.delete_field($(this),!1)})},change_field_type:function(e){e.find(".acf-field-object").each(function(){acf.field_group.delete_field($(this),!1)})}})}(jQuery);
assets/js/acf-input.js CHANGED
@@ -1736,10 +1736,7 @@ var acf;
1736
  prepare_for_ajax : function( args ) {
1737
 
1738
  // vars
1739
- var data = {
1740
- nonce : acf.get('nonce'),
1741
- post_id : acf.get('post_id')
1742
- };
1743
 
1744
 
1745
  // $.ajax() expects all args to be 'non-nested'
@@ -1792,11 +1789,13 @@ var acf;
1792
  });
1793
 
1794
 
1795
- // filter for 3rd party customization
1796
- data = acf.apply_filters('prepare_for_ajax', data);
 
1797
 
1798
 
1799
- //console.log( 'prepare_for_ajax', data );
 
1800
 
1801
 
1802
  // return
@@ -3160,38 +3159,16 @@ var acf;
3160
 
3161
  acf.layout = acf.model.extend({
3162
 
3163
- active: 0,
3164
-
3165
  actions: {
3166
- 'prepare 99': 'prepare',
3167
- 'refresh': 'refresh'
3168
- },
3169
-
3170
- prepare: function(){
3171
-
3172
- // vars
3173
- this.active = 1;
3174
-
3175
-
3176
- // render
3177
- this.refresh();
3178
-
3179
  },
3180
 
3181
  refresh: function( $el ){
3182
 
3183
- // bail early if not yet active
3184
- if( !this.active ) return;
3185
-
3186
-
3187
  // defaults
3188
  $el = $el || $('body');
3189
 
3190
 
3191
- // reference
3192
- var self = this;
3193
-
3194
-
3195
  // render
3196
  this.render_tables( $el );
3197
  this.render_groups( $el );
@@ -3208,11 +3185,11 @@ var acf;
3208
  var $tables = $el.find('.acf-table:visible');
3209
 
3210
 
3211
- // appent self if is tr
3212
- if( $el.is('tr') ) {
3213
-
3214
- $tables = $el.parent().parent();
3215
-
3216
  }
3217
 
3218
 
@@ -3391,7 +3368,7 @@ var acf;
3391
 
3392
 
3393
  // reset fields
3394
- $fields.removeClass('acf-r0 acf-c0').css({'min-height': 0});
3395
 
3396
 
3397
  // loop
@@ -3436,11 +3413,11 @@ var acf;
3436
  // add classes
3437
  if( this_top == 0 ) {
3438
 
3439
- $el.addClass('acf-r0');
3440
 
3441
  } else if( cell == 0 ) {
3442
 
3443
- $el.addClass('acf-c0');
3444
 
3445
  }
3446
 
@@ -4021,7 +3998,93 @@ var acf;
4021
  }
4022
 
4023
  });
4024
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4025
 
4026
  /*
4027
  * Sortable
@@ -4036,6 +4099,14 @@ var acf;
4036
  * @return $post_id (int)
4037
  */
4038
 
 
 
 
 
 
 
 
 
4039
  acf.add_action('sortstart', function( $item, $placeholder ){
4040
 
4041
  // if $item is a tr, apply some css to the elements
@@ -4804,24 +4875,30 @@ var acf;
4804
 
4805
  })(jQuery);
4806
 
4807
- (function($){
4808
 
4809
- acf.conditional_logic = acf.model.extend({
4810
-
4811
- actions: {
4812
- 'prepare 20': 'render',
4813
- 'append 20': 'render'
4814
- },
4815
 
4816
- events: {
4817
- 'change .acf-field input': 'change',
4818
- 'change .acf-field textarea': 'change',
4819
- 'change .acf-field select': 'change'
4820
- },
4821
 
4822
- items: {},
4823
  triggers: {},
4824
 
 
 
 
 
 
 
 
 
 
 
4825
 
4826
  /*
4827
  * add
@@ -4832,46 +4909,139 @@ var acf;
4832
  * @date 22/05/2015
4833
  * @since 5.2.3
4834
  *
4835
- * @param target (string) target field key
4836
- * @param groups (array) rule groups
4837
  * @return $post_id (int)
4838
  */
4839
 
4840
- add: function( target, groups ){
4841
-
4842
- // debug
4843
- //console.log( 'conditional_logic.add(%o, %o)', target, groups );
4844
-
4845
 
4846
- // populate triggers
4847
- for( var i in groups ) {
4848
-
4849
- // vars
4850
- var group = groups[i];
4851
 
4852
  for( var k in group ) {
 
4853
 
4854
- // vars
4855
- var rule = group[k],
4856
- trigger = rule.field,
4857
- triggers = this.triggers[ trigger ] || {};
4858
-
4859
-
4860
- // append trigger (sub field will simply override)
4861
- triggers[ target ] = target;
4862
-
4863
-
4864
- // update
4865
- this.triggers[ trigger ] = triggers;
4866
-
4867
  }
4868
-
4869
  }
4870
 
4871
 
4872
- // append items
4873
- this.items[ target ] = groups;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4874
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4875
  },
4876
 
4877
 
@@ -4890,21 +5060,14 @@ var acf;
4890
 
4891
  render: function( $el ){
4892
 
4893
- // debug
4894
- //console.log('conditional_logic.render(%o)', $el);
4895
-
4896
-
4897
- // defaults
4898
  $el = $el || false;
4899
 
4900
-
4901
  // get targets
4902
  var $targets = acf.get_fields( '', $el, true );
4903
 
4904
-
4905
  // render fields
4906
- this.render_fields( $targets );
4907
-
4908
 
4909
  // action for 3rd party customization
4910
  acf.do_action('refresh', $el);
@@ -4912,68 +5075,101 @@ var acf;
4912
  },
4913
 
4914
 
4915
- /*
4916
- * change
4917
  *
4918
- * This function is called when an input is changed and will render any fields which are considered targets of this trigger
4919
  *
4920
- * @type function
4921
- * @date 22/05/2015
4922
- * @since 5.2.3
4923
  *
4924
- * @param $post_id (int)
4925
- * @return $post_id (int)
4926
  */
4927
 
4928
- change: function( e ){
4929
 
4930
- // debug
4931
- //console.log( 'conditional_logic.change(%o)', $input );
4932
 
 
 
4933
 
4934
- // vars
4935
- var $input = e.$el,
4936
- $field = acf.get_field_wrap( $input ),
4937
- key = $field.data('key');
4938
 
 
 
4939
 
4940
- // bail early if this field does not trigger any actions
4941
- if( typeof this.triggers[key] === 'undefined' ) {
4942
 
4943
- return false;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4944
 
4945
  }
4946
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4947
 
4948
  // vars
4949
- $parent = $field.parent();
 
 
4950
 
 
 
4951
 
4952
- // update visibility
4953
- for( var i in this.triggers[ key ] ) {
4954
-
4955
- // get the target key
4956
- var target_key = this.triggers[ key ][ i ];
4957
-
4958
-
4959
- // get targets
4960
- var $targets = acf.get_fields(target_key, $parent, true);
4961
 
 
 
4962
 
4963
  // render
4964
- this.render_fields( $targets );
4965
 
4966
  }
4967
 
4968
-
4969
  // action for 3rd party customization
4970
- acf.do_action('refresh', $parent);
4971
 
4972
  },
4973
 
4974
 
4975
  /*
4976
- * render_fields
4977
  *
4978
  * This function will render a selection of fields
4979
  *
@@ -4985,17 +5181,14 @@ var acf;
4985
  * @return $post_id (int)
4986
  */
4987
 
4988
- render_fields: function( $targets ) {
4989
 
4990
  // reference
4991
  var self = this;
4992
 
4993
-
4994
- // loop over targets and render them
4995
  $targets.each(function(){
4996
-
4997
- self.render_field( $(this) );
4998
-
4999
  });
5000
 
5001
  },
@@ -5014,80 +5207,51 @@ var acf;
5014
  * @return $post_id (int)
5015
  */
5016
 
5017
- render_field : function( $target ){
5018
 
5019
  // vars
 
5020
  var key = $target.data('key');
5021
-
5022
 
5023
  // bail early if this field does not contain any conditional logic
5024
- if( typeof this.items[ key ] === 'undefined' ) {
5025
-
5026
- return false;
5027
-
5028
- }
5029
-
5030
-
5031
- // vars
5032
- var visibility = false;
5033
-
5034
-
5035
- // debug
5036
- //console.log( 'conditional_logic.render_field(%o)', $field );
5037
-
5038
-
5039
- // get conditional logic
5040
- var groups = this.items[ key ];
5041
 
5042
-
5043
- // calculate visibility
5044
- for( var i = 0; i < groups.length; i++ ) {
5045
 
5046
  // vars
5047
- var group = groups[i],
5048
  match_group = true;
5049
 
 
5050
  for( var k = 0; k < group.length; k++ ) {
5051
 
5052
  // vars
5053
  var rule = group[k];
5054
 
5055
-
5056
  // get trigger for rule
5057
- var $trigger = this.get_trigger( $target, rule.field );
5058
-
5059
 
5060
  // break if rule did not validate
5061
  if( !this.calculate(rule, $trigger, $target) ) {
5062
-
5063
  match_group = false;
5064
  break;
5065
-
5066
- }
5067
-
5068
  }
5069
 
5070
-
5071
  // set visibility if rule group did validate
5072
  if( match_group ) {
5073
-
5074
  visibility = true;
5075
  break;
5076
-
5077
  }
5078
-
5079
  }
5080
 
5081
-
5082
- // hide / show field
5083
  if( visibility ) {
5084
-
5085
- this.show_field( $target );
5086
-
5087
  } else {
5088
-
5089
- this.hide_field( $target );
5090
-
5091
  }
5092
 
5093
  },
@@ -5106,24 +5270,20 @@ var acf;
5106
  * @return $post_id (int)
5107
  */
5108
 
5109
- show_field: function( $field ){
5110
-
5111
- // debug
5112
- //console.log('show_field(%o)', $field);
5113
 
 
 
5114
 
5115
  // vars
5116
  var key = $field.data('key');
5117
 
5118
-
5119
  // remove class
5120
- $field.removeClass( 'hidden-by-conditional-logic' );
5121
-
5122
 
5123
  // enable
5124
- acf.enable_form( $field, 'condition_'+key );
5125
 
5126
-
5127
  // action for 3rd party customization
5128
  acf.do_action('show_field', $field, 'conditional_logic' );
5129
 
@@ -5143,92 +5303,25 @@ var acf;
5143
  * @return $post_id (int)
5144
  */
5145
 
5146
- hide_field : function( $field ){
5147
-
5148
- // debug
5149
- //console.log('hide_field(%o)', $field);
5150
 
 
 
5151
 
5152
  // vars
5153
  var key = $field.data('key');
5154
 
5155
-
5156
  // add class
5157
- $field.addClass( 'hidden-by-conditional-logic' );
5158
-
5159
 
5160
  // disable
5161
- acf.disable_form( $field, 'condition_'+key );
5162
 
5163
-
5164
  // action for 3rd party customization
5165
  acf.do_action('hide_field', $field, 'conditional_logic' );
5166
 
5167
  },
5168
-
5169
-
5170
- /*
5171
- * get_trigger
5172
- *
5173
- * This function will return the relevant $trigger for a $target
5174
- *
5175
- * @type function
5176
- * @date 22/05/2015
5177
- * @since 5.2.3
5178
- *
5179
- * @param $post_id (int)
5180
- * @return $post_id (int)
5181
- */
5182
-
5183
- get_trigger: function( $target, key ){
5184
-
5185
- // vars
5186
- var selector = acf.get_selector( key );
5187
-
5188
-
5189
- // find sibling $trigger
5190
- var $trigger = $target.siblings( selector );
5191
-
5192
-
5193
- // parent trigger
5194
- if( !$trigger.exists() ) {
5195
-
5196
- // vars
5197
- var parent = acf.get_selector();
5198
-
5199
 
5200
- // loop through parent fields and review their siblings too
5201
- $target.parents( parent ).each(function(){
5202
-
5203
- // find sibling $trigger
5204
- $trigger = $(this).siblings( selector );
5205
-
5206
-
5207
- // bail early if $trigger is found
5208
- if( $trigger.exists() ) {
5209
-
5210
- return false;
5211
-
5212
- }
5213
-
5214
- });
5215
-
5216
- }
5217
-
5218
-
5219
- // bail early if no $trigger is found
5220
- if( !$trigger.exists() ) {
5221
-
5222
- return false;
5223
-
5224
- }
5225
-
5226
-
5227
- // return
5228
- return $trigger;
5229
-
5230
- },
5231
-
5232
 
5233
  /*
5234
  * calculate
@@ -5243,7 +5336,7 @@ var acf;
5243
  * @return $post_id (int)
5244
  */
5245
 
5246
- calculate : function( rule, $trigger, $target ){
5247
 
5248
  // bail early if $trigger could not be found
5249
  if( !$trigger || !$target ) return false;
@@ -5337,6 +5430,12 @@ var acf;
5337
  }
5338
 
5339
  });
 
 
 
 
 
 
5340
 
5341
  })(jQuery);
5342
 
@@ -11248,152 +11347,287 @@ var acf;
11248
 
11249
  })(jQuery);
11250
 
11251
- (function($){
11252
 
11253
- acf.fields.tab = acf.field.extend({
 
 
11254
 
11255
- type: 'tab',
11256
  $el: null,
11257
  $wrap: null,
11258
 
11259
  actions: {
11260
  'prepare': 'initialize',
11261
  'append': 'initialize',
11262
- 'hide': 'hide',
11263
- 'show': 'show'
11264
  },
11265
 
11266
  focus: function(){
11267
 
11268
- // get elements
11269
- this.$el = this.$field.find('.acf-tab');
11270
-
11271
-
11272
- // get options
11273
- this.o = this.$el.data();
11274
- this.o.key = this.$field.data('key');
11275
- this.o.text = this.$el.html();
11276
 
11277
  },
11278
 
11279
  initialize: function(){
11280
 
11281
- // bail early if is td
11282
- if( this.$field.is('td') ) return;
 
 
 
 
11283
 
11284
 
11285
- // add tab
11286
- tab_manager.add_tab( this.$field, this.o );
11287
 
11288
- },
11289
-
11290
- hide: function( $field, context ){
11291
 
11292
- // bail early if not conditional logic
11293
- if( context != 'conditional_logic' ) return;
 
 
 
11294
 
11295
 
11296
- // vars
11297
- var key = $field.data('key'),
11298
- $group = $field.prevAll('.acf-tab-wrap'),
11299
- $a = $group.find('a[data-key="' + key + '"]'),
11300
- $li = $a.parent();
11301
 
11302
 
11303
- // bail early if $group does not exist (clone field)
11304
- if( !$group.exists() ) return;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11305
 
11306
 
11307
- // hide li
11308
- $li.addClass('hidden-by-conditional-logic');
 
 
11309
 
11310
 
11311
- // set timout to allow proceeding fields to hide first
11312
- // without this, the tab field will hide all fields, regarless of if that field has it's own conditional logic rules
11313
- setTimeout(function(){
11314
-
11315
- // if this tab field was hidden by conditional_logic, disable it's children to prevent validation
11316
- $field.nextUntil('.acf-field-tab', '.acf-field').each(function(){
11317
-
11318
- // bail ealry if already hidden
11319
- if( $(this).hasClass('hidden-by-conditional-logic') ) return;
11320
-
11321
-
11322
- // hide field
11323
- acf.conditional_logic.hide_field( $(this) );
11324
-
11325
-
11326
- // add parent reference
11327
- $(this).addClass('-hbcl-' + key);
11328
-
11329
- });
11330
 
11331
 
11332
- // select other tab if active
11333
- if( $li.hasClass('active') ) {
11334
-
11335
- $group.find('li:not(.hidden-by-conditional-logic):first a').trigger('click');
11336
-
11337
  }
11338
 
11339
- }, 0);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11340
 
11341
  },
11342
 
11343
- show: function( $field, context ){
 
 
 
 
11344
 
11345
- // bail early if not conditional logic
11346
- if( context != 'conditional_logic' ) return;
 
 
 
 
11347
 
11348
- // vars
11349
- var key = $field.data('key'),
11350
- $group = $field.prevAll('.acf-tab-wrap'),
11351
- $a = $group.find('a[data-key="' + key + '"]'),
11352
- $li = $a.parent();
11353
 
 
 
 
 
11354
 
11355
- // bail early if $group does not exist (clone field)
11356
- if( !$group.exists() ) return;
11357
 
 
 
 
 
 
 
11358
 
11359
- // show li
11360
- $li.removeClass('hidden-by-conditional-logic');
 
 
 
11361
 
 
 
 
 
11362
 
11363
- // set timout to allow proceeding fields to hide first
11364
- // without this, the tab field will hide all fields, regarless of if that field has it's own conditional logic rules
11365
- setTimeout(function(){
11366
-
11367
- // if this tab field was shown by conditional_logic, enable it's children to allow validation
11368
- $field.siblings('.acf-field.-hbcl-' + key).each(function(){
11369
-
11370
- // show field
11371
- acf.conditional_logic.show_field( $(this) );
11372
-
11373
-
11374
- // remove parent reference
11375
- $(this).removeClass('-hbcl-' + key);
11376
-
11377
- });
11378
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11379
 
11380
- // select tab if no other active
11381
- var $active = $li.siblings('.active');
11382
- if( !$active.exists() || $active.hasClass('hidden-by-conditional-logic') ) {
11383
-
11384
- $a.trigger('click');
11385
-
11386
- }
11387
 
11388
- }, 0);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11389
 
11390
  }
11391
 
11392
  });
 
 
 
 
 
 
 
 
 
11393
 
11394
 
11395
  /*
11396
- * tab_manager
11397
  *
11398
  * This model will handle adding tabs and groups
11399
  *
@@ -11401,226 +11635,381 @@ var acf;
11401
  * @date 25/11/2015
11402
  * @since 5.3.2
11403
  *
11404
- * @param $post_id (int)
11405
- * @return $post_id (int)
11406
  */
11407
 
11408
- var tab_manager = acf.model.extend({
 
 
11409
 
11410
  actions: {
11411
- 'prepare 15': 'render',
11412
- 'append 15': 'render',
11413
- 'refresh 15': 'render'
11414
  },
11415
 
11416
  events: {
11417
  'click .acf-tab-button': '_click'
11418
  },
11419
 
 
 
 
 
 
 
 
 
 
11420
 
11421
- render: function( $el ){
 
 
 
 
11422
 
11423
- // find visible tab wraps
11424
- $('.acf-tab-wrap', $el).each(function(){
 
 
 
 
 
 
 
 
 
 
 
 
11425
 
11426
  // vars
11427
- var $group = $(this),
11428
- $wrap = $group.parent();
 
11429
 
 
 
 
11430
 
11431
- // trigger click
11432
- if( !$group.find('li.active').exists() ) {
11433
-
11434
- $group.find('li:not(.hidden-by-conditional-logic):first a').trigger('click');
11435
-
11436
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11437
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11438
 
11439
- if( $wrap.hasClass('-sidebar') ) {
11440
-
11441
- // vars
11442
- var attribute = $wrap.is('td') ? 'height' : 'min-height';
11443
-
11444
-
11445
- // find height (minus 1 for border-bottom)
11446
- var height = $group.position().top + $group.children('ul').outerHeight(true) - 1;
11447
-
11448
-
11449
- // add css
11450
- $wrap.css(attribute, height);
11451
-
11452
- }
11453
-
11454
  });
11455
 
11456
  },
11457
 
11458
- add_group: function( $field, settings ){
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11459
 
11460
  // vars
11461
- var $wrap = $field.parent(),
11462
- html = '';
 
 
 
 
11463
 
11464
 
11465
- // add sidebar to wrap
11466
- if( $wrap.hasClass('acf-fields') && settings.placement == 'left' ) {
11467
-
11468
- $wrap.addClass('-sidebar');
11469
 
11470
- // can't have side tab without sidebar
11471
- } else {
11472
-
11473
- settings.placement = 'top';
11474
-
11475
  }
11476
 
11477
 
11478
- // generate html
11479
- if( $wrap.is('tbody') ) {
11480
-
11481
- html = '<tr class="acf-tab-wrap"><td colspan="2"><ul class="acf-hl acf-tab-group"></ul></td></tr>';
11482
 
11483
- } else {
11484
 
11485
- html = '<div class="acf-tab-wrap -' + settings.placement + '"><ul class="acf-hl acf-tab-group"></ul></div>';
11486
-
 
 
 
 
11487
  }
11488
 
11489
 
11490
- // save
11491
- $group = $(html);
11492
 
11493
 
11494
  // append
11495
- $field.before( $group );
 
 
 
 
 
 
 
 
 
 
 
11496
 
11497
 
11498
  // return
11499
- return $group;
11500
  },
11501
 
11502
- add_tab: function( $field, settings ){ //console.log('add_tab(%o, %o)', $field, settings);
11503
 
11504
  // vars
11505
- var $group = $field.siblings('.acf-tab-wrap').last();
 
11506
 
11507
 
11508
- // add tab group if no group exists
11509
- if( !$group.exists() ) {
 
 
11510
 
11511
- $group = this.add_group( $field, settings );
11512
 
11513
- // add tab group if is endpoint
11514
- } else if( settings.endpoint ) {
11515
-
11516
- $group = this.add_group( $field, settings );
11517
-
11518
  }
11519
 
11520
 
11521
- // vars
11522
- var $li = $('<li><a class="acf-tab-button" href="#" data-key="' + settings.key + '">' + settings.text + '</a></li>');
11523
 
11524
 
11525
- // hide li
11526
- if( settings.text === '' ) $li.hide();
 
11527
 
11528
 
11529
- // add tab
11530
- $group.find('ul').append( $li );
11531
 
 
 
 
11532
 
11533
- // conditional logic
11534
- if( $field.hasClass('hidden-by-conditional-logic') ) {
11535
 
11536
- $li.addClass('hidden-by-conditional-logic');
 
11537
 
11538
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11539
 
11540
  },
11541
 
11542
- _click: function( e ){
11543
 
11544
- // prevent default
11545
- e.preventDefault();
11546
 
 
 
 
11547
 
11548
- // reference
11549
- var self = this;
11550
 
11551
 
11552
  // vars
11553
- var $a = e.$el,
11554
- $group = $a.closest('.acf-tab-wrap'),
11555
- show = $a.data('key'),
11556
- current = '';
11557
 
 
 
11558
 
11559
- // add and remove classes
11560
- $a.parent().addClass('active').siblings().removeClass('active');
11561
 
 
 
11562
 
11563
- // loop over all fields until you hit another group
11564
- $group.nextUntil('.acf-tab-wrap', '.acf-field').each(function(){
11565
-
11566
- // vars
11567
- var $field = $(this);
11568
-
11569
-
11570
- // set current
11571
- if( $field.data('type') == 'tab' ) {
11572
-
11573
- current = $field.data('key');
11574
-
11575
- // bail early if endpoint is found
11576
- if( $field.hasClass('endpoint') ) {
11577
-
11578
- // stop loop - current tab group is complete
11579
- return false;
11580
-
11581
- }
11582
-
11583
- }
11584
-
11585
-
11586
- // show
11587
- if( current === show ) {
11588
-
11589
- // only show if hidden
11590
- if( $field.hasClass('hidden-by-tab') ) {
11591
-
11592
- $field.removeClass('hidden-by-tab');
11593
-
11594
- acf.do_action('show_field', $(this), 'tab');
11595
-
11596
- }
11597
-
11598
- // hide
11599
- } else {
11600
-
11601
- // only hide if not hidden
11602
- if( !$field.hasClass('hidden-by-tab') ) {
11603
-
11604
- $field.addClass('hidden-by-tab');
11605
-
11606
- acf.do_action('hide_field', $(this), 'tab');
11607
-
11608
- }
11609
-
11610
- }
11611
 
 
 
 
11612
  });
11613
 
11614
 
11615
- // action for 3rd party customization
11616
- acf.do_action('refresh', $group.parent() );
 
 
11617
 
 
 
 
 
 
 
11618
 
11619
- // blur
11620
- $a.trigger('blur');
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11621
 
11622
  }
 
 
11623
 
 
 
 
 
 
 
 
 
 
 
 
11624
  });
11625
 
11626
 
@@ -12586,6 +12975,10 @@ var acf;
12586
  var $field = acf.get_field_wrap( $input );
12587
 
12588
 
 
 
 
 
12589
  // action
12590
  acf.do_action('invalid', $input);
12591
  acf.do_action('invalid_field', $field);
@@ -13318,6 +13711,10 @@ var acf;
13318
  $field.on('focus change', 'input, textarea, select', event);
13319
 
13320
 
 
 
 
 
13321
  // hook for 3rd party customization
13322
  acf.do_action('add_field_error', $field);
13323
  acf.do_action('invalid_field', $field);
@@ -13964,16 +14361,17 @@ var acf;
13964
 
13965
  build_quicktags: function( ed ){
13966
 
13967
- var canvas, name, settings, theButtons, html, ed, id, i, use,
13968
  defaults = ',strong,em,link,block,del,ins,img,ul,ol,li,code,more,close,';
13969
-
13970
  canvas = ed.canvas;
13971
  name = ed.name;
13972
  settings = ed.settings;
13973
  html = '';
13974
  theButtons = {};
13975
  use = '';
13976
-
 
13977
  // set buttons
13978
  if ( settings.buttons ) {
13979
  use = ','+settings.buttons+',';
@@ -14106,6 +14504,7 @@ var acf;
14106
  // @codekit-prepend "../js/acf-relationship.js";
14107
  // @codekit-prepend "../js/acf-select2.js";
14108
  // @codekit-prepend "../js/acf-select.js";
 
14109
  // @codekit-prepend "../js/acf-tab.js";
14110
  // @codekit-prepend "../js/acf-time-picker.js";
14111
  // @codekit-prepend "../js/acf-true-false.js";
1736
  prepare_for_ajax : function( args ) {
1737
 
1738
  // vars
1739
+ var data = {};
 
 
 
1740
 
1741
 
1742
  // $.ajax() expects all args to be 'non-nested'
1789
  });
1790
 
1791
 
1792
+ // required
1793
+ data.nonce = acf.get('nonce');
1794
+ data.post_id = acf.get('post_id');
1795
 
1796
 
1797
+ // filter for 3rd party customization
1798
+ data = acf.apply_filters('prepare_for_ajax', data);
1799
 
1800
 
1801
  // return
3159
 
3160
  acf.layout = acf.model.extend({
3161
 
 
 
3162
  actions: {
3163
+ 'refresh 99': 'refresh'
 
 
 
 
 
 
 
 
 
 
 
 
3164
  },
3165
 
3166
  refresh: function( $el ){
3167
 
 
 
 
 
3168
  // defaults
3169
  $el = $el || $('body');
3170
 
3171
 
 
 
 
 
3172
  // render
3173
  this.render_tables( $el );
3174
  this.render_groups( $el );
3185
  var $tables = $el.find('.acf-table:visible');
3186
 
3187
 
3188
+ // appent self
3189
+ if( $el.is('table') ) {
3190
+ $tables = $tables.add( $el );
3191
+ } else if( $el.is('tr') ) {
3192
+ $tables = $tables.add( $el.closest('table') );
3193
  }
3194
 
3195
 
3368
 
3369
 
3370
  // reset fields
3371
+ $fields.removeClass('-r0 -c0').css({'min-height': 0});
3372
 
3373
 
3374
  // loop
3413
  // add classes
3414
  if( this_top == 0 ) {
3415
 
3416
+ $el.addClass('-r0');
3417
 
3418
  } else if( cell == 0 ) {
3419
 
3420
+ $el.addClass('-c0');
3421
 
3422
  }
3423
 
3998
  }
3999
 
4000
  });
4001
+
4002
+
4003
+ // Preferences
4004
+ var preferences = localStorage.getItem('acf');
4005
+ preferences = preferences ? JSON.parse(preferences) : {};
4006
+
4007
+
4008
+ /**
4009
+ * getPreferenceName
4010
+ *
4011
+ * Gets the true preference name.
4012
+ * Converts "this.thing" to "thing-123" if editing post 123.
4013
+ *
4014
+ * @date 11/11/17
4015
+ * @since 5.6.5
4016
+ *
4017
+ * @param string name
4018
+ * @return string
4019
+ */
4020
+
4021
+ var getPreferenceName = function( name ){
4022
+ if( name.substr(0, 5) === 'this.' ) {
4023
+ name = name.substr(5) + '-' + acf.get('post_id');
4024
+ }
4025
+ return name;
4026
+ };
4027
+
4028
+
4029
+ /**
4030
+ * acf.getPreference
4031
+ *
4032
+ * Gets a preference setting or null if not set.
4033
+ *
4034
+ * @date 11/11/17
4035
+ * @since 5.6.5
4036
+ *
4037
+ * @param string name
4038
+ * @return mixed
4039
+ */
4040
+
4041
+ acf.getPreference = function( name ){
4042
+ name = getPreferenceName( name );
4043
+ return preferences[ name ] || null;
4044
+ }
4045
+
4046
+
4047
+ /**
4048
+ * acf.setPreference
4049
+ *
4050
+ * Sets a preference setting.
4051
+ *
4052
+ * @date 11/11/17
4053
+ * @since 5.6.5
4054
+ *
4055
+ * @param string name
4056
+ * @param mixed value
4057
+ * @return n/a
4058
+ */
4059
+
4060
+ acf.setPreference = function( name, value ){
4061
+ name = getPreferenceName( name );
4062
+ if( value === null ) {
4063
+ delete preferences[ name ];
4064
+ } else {
4065
+ preferences[ name ] = value;
4066
+ }
4067
+ localStorage.setItem('acf', JSON.stringify(preferences));
4068
+ }
4069
+
4070
+
4071
+ /**
4072
+ * acf.removePreference
4073
+ *
4074
+ * Removes a preference setting.
4075
+ *
4076
+ * @date 11/11/17
4077
+ * @since 5.6.5
4078
+ *
4079
+ * @param string name
4080
+ * @return n/a
4081
+ */
4082
+
4083
+ acf.removePreference = function( name ){
4084
+ acf.setPreference(name, null);
4085
+ };
4086
+
4087
+
4088
 
4089
  /*
4090
  * Sortable
4099
  * @return $post_id (int)
4100
  */
4101
 
4102
+ $(document).on('sortstart', function( event, ui ) {
4103
+ acf.do_action('sortstart', ui.item, ui.placeholder);
4104
+ });
4105
+
4106
+ $(document).on('sortstop', function( event, ui ) {
4107
+ acf.do_action('sortstop', ui.item, ui.placeholder);
4108
+ });
4109
+
4110
  acf.add_action('sortstart', function( $item, $placeholder ){
4111
 
4112
  // if $item is a tr, apply some css to the elements
4875
 
4876
  })(jQuery);
4877
 
4878
+ (function($, undefined){
4879
 
4880
+ // vars
4881
+ var hidden = 'hidden-by-conditional-logic';
4882
+
4883
+ // model
4884
+ var conditionalLogic = acf.conditional_logic = acf.model.extend({
 
4885
 
4886
+ // storage of fields that have conditions
4887
+ conditions: {},
 
 
 
4888
 
4889
+ // storage of fields that trigger a condition
4890
  triggers: {},
4891
 
4892
+ // reference to parent element of both the trigger and target
4893
+ $parent: false,
4894
+
4895
+ // actions
4896
+ actions: {
4897
+ 'prepare 20': 'render',
4898
+ 'append 20': 'render',
4899
+ 'change': 'change'
4900
+ },
4901
+
4902
 
4903
  /*
4904
  * add
4909
  * @date 22/05/2015
4910
  * @since 5.2.3
4911
  *
4912
+ * @param string target field key
4913
+ * @param array conditions array of conditional logic groups
4914
  * @return $post_id (int)
4915
  */
4916
 
4917
+ add: function( target, conditions ){
 
 
 
 
4918
 
4919
+ // add triggers
4920
+ for( var i in conditions ) {
4921
+ var group = conditions[i];
 
 
4922
 
4923
  for( var k in group ) {
4924
+ var rule = group[k];
4925
 
4926
+ this.addTrigger( rule.field, target );
 
 
 
 
 
 
 
 
 
 
 
 
4927
  }
 
4928
  }
4929
 
4930
 
4931
+ // add condition
4932
+ this.setCondition( target, conditions );
4933
+
4934
+ },
4935
+
4936
+
4937
+ /**
4938
+ * getTrigger
4939
+ *
4940
+ * This function will return the fields that are triggered by this key.
4941
+ *
4942
+ * @date 15/11/17
4943
+ * @since 5.6.5
4944
+ *
4945
+ * @param string key The trigger's key.
4946
+ * @return mixed
4947
+ */
4948
+
4949
+ getTrigger: function( key ){
4950
+ return this.triggers[ key ] || null;
4951
+ },
4952
+
4953
+
4954
+ /**
4955
+ * setTrigger
4956
+ *
4957
+ * This function will set the fields that are triggered by this key.
4958
+ *
4959
+ * @date 15/11/17
4960
+ * @since 5.6.5
4961
+ *
4962
+ * @param string key The trigger's key.
4963
+ * @return mixed
4964
+ */
4965
+
4966
+ setTrigger: function( key, value ){
4967
+ this.triggers[ key ] = value;
4968
+ },
4969
+
4970
+
4971
+ /**
4972
+ * addTrigger
4973
+ *
4974
+ * This function will add a reference for a field that triggers another field's visibility
4975
+ *
4976
+ * @date 15/11/17
4977
+ * @since 5.6.5
4978
+ *
4979
+ * @param n/a
4980
+ * @return n/a
4981
+ */
4982
+
4983
+ addTrigger: function( trigger, target ){
4984
+
4985
+ // vars
4986
+ var triggers = this.getTrigger( trigger ) || {};
4987
+
4988
+ // append
4989
+ triggers[ target ] = 1;
4990
 
4991
+ // set
4992
+ this.setTrigger(trigger, triggers);
4993
+
4994
+ },
4995
+
4996
+
4997
+ /**
4998
+ * getConditions
4999
+ *
5000
+ * This function will return the conditions for all targets.
5001
+ *
5002
+ * @date 15/11/17
5003
+ * @since 5.6.5
5004
+ *
5005
+ * @param string key The trigger's key.
5006
+ * @return mixed
5007
+ */
5008
+
5009
+ getConditions: function(){
5010
+ return this.conditions;
5011
+ },
5012
+
5013
+
5014
+ /**
5015
+ * getCondition
5016
+ *
5017
+ * This function will return the conditions for a target.
5018
+ *
5019
+ * @date 15/11/17
5020
+ * @since 5.6.5
5021
+ *
5022
+ * @param string key The trigger's key.
5023
+ * @return mixed
5024
+ */
5025
+
5026
+ getCondition: function( key ){
5027
+ return this.conditions[ key ] || null;
5028
+ },
5029
+
5030
+
5031
+ /**
5032
+ * setCondition
5033
+ *
5034
+ * This function will set the conditions for a target.
5035
+ *
5036
+ * @date 15/11/17
5037
+ * @since 5.6.5
5038
+ *
5039
+ * @param string key The trigger's key.
5040
+ * @return mixed
5041
+ */
5042
+
5043
+ setCondition: function( key, value ){
5044
+ this.conditions[ key ] = value;
5045
  },
5046
 
5047
 
5060
 
5061
  render: function( $el ){
5062
 
5063
+ // vars
 
 
 
 
5064
  $el = $el || false;
5065
 
 
5066
  // get targets
5067
  var $targets = acf.get_fields( '', $el, true );
5068
 
 
5069
  // render fields
5070
+ this.renderFields( $targets );
 
5071
 
5072
  // action for 3rd party customization
5073
  acf.do_action('refresh', $el);
5075
  },
5076
 
5077
 
5078
+ /**
5079
+ * findParent
5080
  *
5081
+ * This function will find a parent that contains both the trigger and target
5082
  *
5083
+ * @date 15/11/17
5084
+ * @since 5.6.5
 
5085
  *
5086
+ * @param n/a
5087
+ * @return n/a
5088
  */
5089
 
5090
+ findTarget: function( $trigger, target ){
5091
 
5092
+ // vars
5093
+ var self = this;
5094
 
5095
+ // reset scope
5096
+ this.$parent = false;
5097
 
5098
+ // find all targets
5099
+ var $targets = acf.get_fields(target, false, true);
 
 
5100
 
5101
+ // bail early if nothing found
5102
+ if( !$targets.length ) return false;
5103
 
5104
+ // refine scope if more than 1 found
5105
+ if( $targets.length > 1 ) {
5106
 
5107
+ // loop
5108
+ $trigger.parents('.acf-row, .acf-table, .acf-fields').each(function(){
5109
+
5110
+ // vars
5111
+ var $parent = $(this);
5112
+ var $child = $parent.find( $targets );
5113
+
5114
+ // found
5115
+ if( $child.length ) {
5116
+ $targets = $child;
5117
+ self.$parent = $parent;
5118
+ return false;
5119
+ }
5120
+
5121
+ });
5122
 
5123
  }
5124
 
5125
+ // return
5126
+ return $targets;
5127
+
5128
+ },
5129
+
5130
+
5131
+ /*
5132
+ * change
5133
+ *
5134
+ * This function is called when an input is changed and will render any fields which are considered targets of this trigger
5135
+ *
5136
+ * @type function
5137
+ * @date 22/05/2015
5138
+ * @since 5.2.3
5139
+ *
5140
+ * @param $post_id (int)
5141
+ * @return $post_id (int)
5142
+ */
5143
+
5144
+ change: function( $input ){
5145
 
5146
  // vars
5147
+ var $trigger = acf.get_field_wrap($input);
5148
+ var key = $trigger.data('key');
5149
+ var trigger = this.getTrigger(key);
5150
 
5151
+ // bail early if this field is not a trigger
5152
+ if( !trigger ) return false;
5153
 
5154
+ // loop
5155
+ for( var target in trigger ) {
 
 
 
 
 
 
 
5156
 
5157
+ // get target(s)
5158
+ var $targets = this.findTarget( $trigger, target );
5159
 
5160
  // render
5161
+ this.renderFields( $targets );
5162
 
5163
  }
5164
 
 
5165
  // action for 3rd party customization
5166
+ acf.do_action('refresh', this.$parent);
5167
 
5168
  },
5169
 
5170
 
5171
  /*
5172
+ * renderFields
5173
  *
5174
  * This function will render a selection of fields
5175
  *
5181
  * @return $post_id (int)
5182
  */
5183
 
5184
+ renderFields: function( $targets ) {
5185
 
5186
  // reference
5187
  var self = this;
5188
 
5189
+ // loop
 
5190
  $targets.each(function(){
5191
+ self.renderField( $(this) );
 
 
5192
  });
5193
 
5194
  },
5207
  * @return $post_id (int)
5208
  */
5209
 
5210
+ renderField : function( $target ){
5211
 
5212
  // vars
5213
+ var visibility = false;
5214
  var key = $target.data('key');
5215
+ var condition = this.getCondition( key );
5216
 
5217
  // bail early if this field does not contain any conditional logic
5218
+ if( !condition ) return false;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5219
 
5220
+ // loop
5221
+ for( var i = 0; i < condition.length; i++ ) {
 
5222
 
5223
  // vars
5224
+ var group = condition[i],
5225
  match_group = true;
5226
 
5227
+ // loop
5228
  for( var k = 0; k < group.length; k++ ) {
5229
 
5230
  // vars
5231
  var rule = group[k];
5232
 
 
5233
  // get trigger for rule
5234
+ var $trigger = this.findTarget( $target, rule.field );
 
5235
 
5236
  // break if rule did not validate
5237
  if( !this.calculate(rule, $trigger, $target) ) {
 
5238
  match_group = false;
5239
  break;
5240
+ }
 
 
5241
  }
5242
 
 
5243
  // set visibility if rule group did validate
5244
  if( match_group ) {
 
5245
  visibility = true;
5246
  break;
 
5247
  }
 
5248
  }
5249
 
5250
+ // hide / show
 
5251
  if( visibility ) {
5252
+ this.showField( $target );
 
 
5253
  } else {
5254
+ this.hideField( $target );
 
 
5255
  }
5256
 
5257
  },
5270
  * @return $post_id (int)
5271
  */
5272
 
5273
+ showField: function( $field ){
 
 
 
5274
 
5275
+ // bail ealry if not hidden
5276
+ //if( !$field.hasClass(hidden) ) return;
5277
 
5278
  // vars
5279
  var key = $field.data('key');
5280
 
 
5281
  // remove class
5282
+ $field.removeClass(hidden);
 
5283
 
5284
  // enable
5285
+ acf.enable_form( $field, 'condition-'+key );
5286
 
 
5287
  // action for 3rd party customization
5288
  acf.do_action('show_field', $field, 'conditional_logic' );
5289
 
5303
  * @return $post_id (int)
5304
  */
5305
 
5306
+ hideField : function( $field ){
 
 
 
5307
 
5308
+ // bail ealry if hidden
5309
+ //if( $field.hasClass(hidden) ) return;
5310
 
5311
  // vars
5312
  var key = $field.data('key');
5313
 
 
5314
  // add class
5315
+ $field.addClass( hidden );
 
5316
 
5317
  // disable
5318
+ acf.disable_form( $field, 'condition-'+key );
5319
 
 
5320
  // action for 3rd party customization
5321
  acf.do_action('hide_field', $field, 'conditional_logic' );
5322
 
5323
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5324
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5325
 
5326
  /*
5327
  * calculate
5336
  * @return $post_id (int)
5337
  */
5338
 
5339
+ calculate: function( rule, $trigger, $target ){
5340
 
5341
  // bail early if $trigger could not be found
5342
  if( !$trigger || !$target ) return false;
5430
  }
5431
 
5432
  });
5433
+
5434
+
5435
+ // compatibility
5436
+ conditionalLogic.show_field = conditionalLogic.showField;
5437
+ conditionalLogic.hide_field = conditionalLogic.hideField;
5438
+
5439
 
5440
  })(jQuery);
5441
 
11347
 
11348
  })(jQuery);
11349
 
11350
+ (function($, undefined){
11351
 
11352
+ var i = 0;
11353
+
11354
+ acf.fields.accordion = acf.field.extend({
11355
 
11356
+ type: 'accordion',
11357
  $el: null,
11358
  $wrap: null,
11359
 
11360
  actions: {
11361
  'prepare': 'initialize',
11362
  'append': 'initialize',
 
 
11363
  },
11364
 
11365
  focus: function(){
11366
 
 
 
 
 
 
 
 
 
11367
 
11368
  },
11369
 
11370
  initialize: function(){
11371
 
11372
+ // vars
11373
+ var $field = this.$field;
11374
+ var $label = $field.children('.acf-label');
11375
+ var $input = $field.children('.acf-input');
11376
+ var $wrap = $input.children('.acf-fields');
11377
+ var settings = $wrap.data();
11378
 
11379
 
11380
+ // bail early if is cell
11381
+ if( $field.is('td') ) return;
11382
 
 
 
 
11383
 
11384
+ // enpoint
11385
+ if( settings.endpoint ) {
11386
+ $field.remove();
11387
+ return;
11388
+ }
11389
 
11390
 
11391
+ // force description into label
11392
+ var $instructions = $input.children('.description')
11393
+ if( $instructions.length ) {
11394
+ $label.append( $instructions );
11395
+ }
11396
 
11397
 
11398
+ // table
11399
+ if( $field.is('tr') ) {
11400
+
11401
+ // vars
11402
+ var $table = $field.closest('table');
11403
+ var $newLabel = $('<div class="acf-accordion-title"/>');
11404
+ var $newInput = $('<div class="acf-accordion-content"/>');
11405
+ var $newTable = $('<table class="' + $table.attr('class') + '"/>');
11406
+ var $newWrap = $('<tbody/>');
11407
+
11408
+ // dom
11409
+ $newLabel.append( $label.html() );
11410
+ $newTable.append( $newWrap );
11411
+ $newInput.append( $newTable );
11412
+ $input.append( $newLabel );
11413
+ $input.append( $newInput );
11414
+
11415
+ // modify
11416
+ $label.remove();
11417
+ $wrap.remove();
11418
+ $input.attr('colspan', 2);
11419
+
11420
+ // update vars
11421
+ $label = $newLabel;
11422
+ $input = $newInput;
11423
+ $wrap = $newWrap;
11424
+
11425
+ }
11426
 
11427
 
11428
+ // add classes
11429
+ $field.addClass('acf-accordion');
11430
+ $label.addClass('acf-accordion-title');
11431
+ $input.addClass('acf-accordion-content');
11432
 
11433
 
11434
+ // index
11435
+ i++;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11436
 
11437
 
11438
+ // multi-expand
11439
+ if( settings.multi_expand ) {
11440
+ $field.data('multi-expand', 1);
 
 
11441
  }
11442
 
11443
+
11444
+ // open
11445
+ var order = acf.getPreference('this.accordions') || [];
11446
+ if( order[i-1] !== undefined ) {
11447
+ settings.open = order[i-1];
11448
+ }
11449
+ if( settings.open ) {
11450
+ $field.addClass('-open');
11451
+ $input.css('display', 'block'); // needed for accordion to close smoothly
11452
+ }
11453
+
11454
+
11455
+ // add icon
11456
+ $label.prepend('<i class="acf-accordion-icon dashicons dashicons-arrow-' + (settings.open ? 'down' : 'right') + '"></i>');
11457
+
11458
+
11459
+ // classes
11460
+ // - remove 'inside' which is a #poststuff WP class
11461
+ var $parent = $field.parent();
11462
+ $wrap.addClass( $parent.hasClass('-left') ? '-left' : '' );
11463
+ $wrap.addClass( $parent.hasClass('-clear') ? '-clear' : '' );
11464
+
11465
+
11466
+ // append
11467
+ $wrap.append( $field.nextUntil('.acf-field-accordion', '.acf-field') );
11468
+
11469
+
11470
+ // clean up
11471
+ $wrap.removeAttr('data-open data-multi_expand data-endpoint');
11472
+ }
11473
+
11474
+ });
11475
+
11476
+
11477
+ /*
11478
+ * accordionManager
11479
+ *
11480
+ * This model will handle adding accordions
11481
+ *
11482
+ * @type function
11483
+ * @date 25/11/2015
11484
+ * @since 5.3.2
11485
+ *
11486
+ * @param $post_id (int)
11487
+ * @return $post_id (int)
11488
+ */
11489
+
11490
+ var accordionManager = acf.model.extend({
11491
+
11492
+ events: {
11493
+ 'click .acf-accordion-title': '_click',
11494
+ },
11495
+
11496
+ _click: function( e ){
11497
+
11498
+ // prevent Defailt
11499
+ e.preventDefault();
11500
+
11501
+ // open close
11502
+ this.toggle( e.$el.closest('.acf-accordion') );
11503
 
11504
  },
11505
 
11506
+ isOpen: function( $el ) {
11507
+ return $el.hasClass('-open');
11508
+ },
11509
+
11510
+ toggle: function( $el ){
11511
 
11512
+ // is open
11513
+ if( this.isOpen($el) ) {
11514
+ this.close( $el );
11515
+ } else {
11516
+ this.open( $el );
11517
+ }
11518
 
11519
+ },
11520
+
11521
+ open: function( $el ){
 
 
11522
 
11523
+ // open
11524
+ $el.find('.acf-accordion-content:first').slideDown().css('display', 'block');
11525
+ $el.find('.acf-accordion-icon:first').removeClass('dashicons-arrow-right').addClass('dashicons-arrow-down');
11526
+ $el.addClass('-open');
11527
 
11528
+ // action
11529
+ acf.do_action('show', $el);
11530
 
11531
+ // close siblings
11532
+ if( !$el.data('multi-expand') ) {
11533
+ $el.siblings('.acf-accordion.-open').each(function(){
11534
+ accordionManager.close( $(this) );
11535
+ });
11536
+ }
11537
 
11538
+ // action
11539
+ acf.do_action('refresh', $el);
11540
+ },
11541
+
11542
+ close: function( $el ){
11543
 
11544
+ // close
11545
+ $el.find('.acf-accordion-content:first').slideUp();
11546
+ $el.find('.acf-accordion-icon:first').removeClass('dashicons-arrow-down').addClass('dashicons-arrow-right');
11547
+ $el.removeClass('-open');
11548
 
11549
+ // action
11550
+ acf.do_action('hide', $el);
 
 
 
 
 
 
 
 
 
 
 
 
 
11551
 
11552
+ }
11553
+
11554
+ });
11555
+
11556
+ $(window).on('unload', function(){
11557
+
11558
+ var order = [];
11559
+ $('.acf-accordion').each(function(){
11560
+ var open = $(this).hasClass('-open') ? 1 : 0;
11561
+ order.push(open);
11562
+ });
11563
+ if( !order.length ) return;
11564
+ acf.setPreference('this.accordions', order);
11565
+
11566
+ });
11567
+
11568
+
11569
+ /**
11570
+ * accordionValidation
11571
+ *
11572
+ * This model will handle validation of fields within an accordion
11573
+ *
11574
+ * @date 20/11/17
11575
+ * @since 5.6.5
11576
+ *
11577
+ * @param n/a
11578
+ * @return n/a
11579
+ */
11580
+
11581
+ var accordionValidation = acf.model.extend({
11582
+
11583
+ active: 1,
11584
+
11585
+ events: {
11586
+ 'invalidField .acf-accordion': 'invalidField'
11587
+ },
11588
+
11589
+ invalidField: function( e ){
11590
 
11591
+ // bail early if already focused
11592
+ if( !this.active ) return;
 
 
 
 
 
11593
 
11594
+ // block
11595
+ this.block();
11596
+
11597
+ // open
11598
+ accordionManager.open( e.$el );
11599
+
11600
+ },
11601
+
11602
+ block: function(){
11603
+
11604
+ // reference
11605
+ var self = this;
11606
+
11607
+ // disable functionality for 1sec (allow next validation to work)
11608
+ this.active = 0;
11609
+
11610
+ // timeout
11611
+ setTimeout(function(){
11612
+ self.active = 1;
11613
+ }, 1000);
11614
 
11615
  }
11616
 
11617
  });
11618
+
11619
+ })(jQuery);
11620
+
11621
+ (function($){
11622
+
11623
+ // vars
11624
+ var hidden = 'hidden-by-conditional-logic';
11625
+ var groupIndex = 0;
11626
+ var tabIndex = 0;
11627
 
11628
 
11629
  /*
11630
+ * tabs
11631
  *
11632
  * This model will handle adding tabs and groups
11633
  *
11635
  * @date 25/11/2015
11636
  * @since 5.3.2
11637
  *
11638
+ * @param n/a
11639
+ * @return n/a
11640
  */
11641
 
11642
+ var tabs = acf.model.extend({
11643
+
11644
+ $fields: [],
11645
 
11646
  actions: {
11647
+ 'prepare 15': 'initialize',
11648
+ 'append 15': 'initialize',
11649
+ 'refresh 15': 'refresh'
11650
  },
11651
 
11652
  events: {
11653
  'click .acf-tab-button': '_click'
11654
  },
11655
 
11656
+ _click: function( e ){
11657
+
11658
+ // prevent Defailt
11659
+ e.preventDefault();
11660
+
11661
+ // toggle
11662
+ this.toggle( e.$el );
11663
+
11664
+ },
11665
 
11666
+ isOpen: function( $el ) {
11667
+ return $el.hasClass('-open');
11668
+ },
11669
+
11670
+ toggle: function( $a ){
11671
 
11672
+ // vars
11673
+ var key = $a.data('key');
11674
+ var $li = $a.parent();
11675
+ var $wrap = $a.closest('.acf-tab-wrap');
11676
+ var $active = $wrap.find('.active a');
11677
+ var $field = $wrap.siblings('.acf-field[data-key="' + key + '"]');
11678
+
11679
+
11680
+ // bail early if already open
11681
+ if( this.isOpen($field) ) return;
11682
+
11683
+
11684
+ // close
11685
+ if( $active.length ) {
11686
 
11687
  // vars
11688
+ var activeKey = $active.data('key');
11689
+ var $activeli = $active.parent();
11690
+ var $activeField = $wrap.siblings('.acf-field[data-key="' + activeKey + '"]');
11691
 
11692
+ // hide
11693
+ $activeli.removeClass('active');
11694
+ this.close( $activeField );
11695
 
11696
+ }
11697
+
11698
+
11699
+ // open
11700
+ $li.addClass('active');
11701
+ this.open( $field );
11702
+
11703
+
11704
+ // action
11705
+ // - allows acf.layout to fix floating field's min-height
11706
+ acf.do_action('refresh', $wrap.parent() );
11707
+
11708
+ },
11709
+
11710
+ getFields: function( $field ){
11711
+ return $field.nextUntil('.acf-field-tab', '.acf-field');
11712
+ },
11713
+
11714
+ getWrap: function( $field ){
11715
+ return $field.prevAll('.acf-tab-wrap:first');
11716
+ },
11717
+
11718
+ getTab: function( $wrap, key ){
11719
+ return $wrap.find('a[data-key="' + key + '"]');
11720
+ },
11721
+
11722
+ open: function( $field ){
11723
+
11724
+ // show
11725
+ this.getFields( $field ).each(function(){
11726
 
11727
+ $(this).removeClass('hidden-by-tab');
11728
+ acf.do_action('show_field', $(this), 'tab');
11729
+
11730
+ });
11731
+
11732
+ },
11733
+
11734
+ close: function( $field ){
11735
+
11736
+ // show
11737
+ this.getFields( $field ).each(function(){
11738
+
11739
+ $(this).addClass('hidden-by-tab');
11740
+ acf.do_action('hide_field', $(this), 'tab');
11741
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11742
  });
11743
 
11744
  },
11745
 
11746
+ addTab: function( $field ){
11747
+ this.$fields.push( $field );
11748
+ },
11749
+
11750
+ initialize: function(){
11751
+
11752
+ // bail ealry if no fields
11753
+ if( !this.$fields.length ) return;
11754
+
11755
+ // loop
11756
+ for( var i = 0; i < this.$fields.length; i++) {
11757
+ this.createTab( this.$fields[ i ] );
11758
+ }
11759
+
11760
+ // reset
11761
+ this.$fields = [];
11762
+
11763
+ },
11764
+
11765
+ createTab: function( $field ){
11766
+
11767
+ // bail early if is cell
11768
+ if( $field.is('td') ) return false;
11769
+
11770
 
11771
  // vars
11772
+ var $label = $field.children('.acf-label');
11773
+ var $input = $field.children('.acf-input');
11774
+ var $wrap = this.getWrap( $field );
11775
+ var $button = $field.find('.acf-tab-button');
11776
+ var settings = $button.data();
11777
+ var open = false;
11778
 
11779
 
11780
+ // remove
11781
+ $field.hide();
11782
+ $label.remove();
11783
+ $input.remove();
11784
 
11785
+
11786
+ // create wrap
11787
+ if( !$wrap.exists() || settings.endpoint ) {
11788
+ $wrap = this.createTabWrap( $field, settings );
11789
+ open = true;
11790
  }
11791
 
11792
 
11793
+ // create tab
11794
+ var $tab = $('<li></li>').append( $button );
 
 
11795
 
 
11796
 
11797
+ // open
11798
+ if( open ) {
11799
+ $tab.addClass('active');
11800
+ this.open( $field );
11801
+ } else {
11802
+ this.close( $field );
11803
  }
11804
 
11805
 
11806
+ // hide li
11807
+ if( $button.html() == '' ) $tab.hide();
11808
 
11809
 
11810
  // append
11811
+ $wrap.find('ul').append( $tab );
11812
+
11813
+
11814
+ // toggle active tab
11815
+ // previous attempts to integrate with above 'open' variable were uncessefull
11816
+ // this separate toggle logic ensures the tab exists
11817
+ tabIndex++;
11818
+ var order = acf.getPreference('this.tabs') || [];
11819
+ var index = order[ groupIndex-1 ] || 0;
11820
+ if( index == tabIndex-1 && !open ) {
11821
+ this.toggle( $button );
11822
+ }
11823
 
11824
 
11825
  // return
11826
+ return $tab;
11827
  },
11828
 
11829
+ createTabWrap: function( $field, settings ){
11830
 
11831
  // vars
11832
+ var $parent = $field.parent();
11833
+ var $wrap = false;
11834
 
11835
 
11836
+ // add sidebar for left placement
11837
+ if( $parent.hasClass('acf-fields') && settings.placement == 'left' ) {
11838
+ $parent.addClass('-sidebar');
11839
+ }
11840
 
 
11841
 
11842
+ // create wrap
11843
+ if( $field.is('tr') ) {
11844
+ $wrap = $('<tr class="acf-tab-wrap"><td colspan="2"><ul class="acf-hl acf-tab-group"></ul></td></tr>');
11845
+ } else {
11846
+ $wrap = $('<div class="acf-tab-wrap -' + settings.placement + '"><ul class="acf-hl acf-tab-group"></ul></div>');
11847
  }
11848
 
11849
 
11850
+ // append
11851
+ $field.before( $wrap );
11852
 
11853
 
11854
+ // index
11855
+ groupIndex++;
11856
+ tabIndex = 0;
11857
 
11858
 
11859
+ // return
11860
+ return $wrap;
11861
 
11862
+ },
11863
+
11864
+ refresh: function( $el ){
11865
 
11866
+ // loop
11867
+ $('.acf-tab-wrap', $el).each(function(){
11868
 
11869
+ // vars
11870
+ var $wrap = $(this);
11871
 
11872
+
11873
+ // fix left aligned min-height
11874
+ if( $wrap.hasClass('-left') ) {
11875
+
11876
+ // vars
11877
+ var $parent = $wrap.parent();
11878
+ var attribute = $parent.is('td') ? 'height' : 'min-height';
11879
+
11880
+ // find height (minus 1 for border-bottom)
11881
+ var height = $wrap.position().top + $wrap.children('ul').outerHeight(true) - 1;
11882
+
11883
+ // add css
11884
+ $parent.css(attribute, height);
11885
+
11886
+ }
11887
+
11888
+ });
11889
+
11890
+ }
11891
+
11892
+ });
11893
+
11894
+
11895
+
11896
+ /**
11897
+ * acf.fields.tab
11898
+ *
11899
+ * description
11900
+ *
11901
+ * @date 17/11/17
11902
+ * @since 5.6.5
11903
+ *
11904
+ * @param n/a
11905
+ * @return n/a
11906
+ */
11907
+
11908
+ acf.fields.tab = acf.field.extend({
11909
+
11910
+ type: 'tab',
11911
+ $el: null,
11912
+ $wrap: null,
11913
+
11914
+ actions: {
11915
+ 'prepare': 'initialize',
11916
+ 'append': 'initialize',
11917
+ 'hide': 'hide',
11918
+ 'show': 'show'
11919
+ },
11920
+
11921
+ focus: function(){
11922
 
11923
  },
11924
 
11925
+ initialize: function(){
11926
 
11927
+ // add tab
11928
+ tabs.addTab( this.$field );
11929
 
11930
+ },
11931
+
11932
+ hide: function( $field, context ){
11933
 
11934
+ // bail early if not conditional logic
11935
+ if( context != 'conditional_logic' ) return;
11936
 
11937
 
11938
  // vars
11939
+ var key = $field.data('key');
11940
+ var $wrap = tabs.getWrap( $field );
11941
+ var $tab = tabs.getTab( $wrap, key );
11942
+ var $li = $tab.parent();
11943
 
11944
+ // bail early if $group does not exist (clone field)
11945
+ if( !$wrap.exists() ) return;
11946
 
 
 
11947
 
11948
+ // hide li
11949
+ $li.addClass(hidden);
11950
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11951
 
11952
+ // hide fields
11953
+ tabs.getFields( $field ).each(function(){
11954
+ acf.conditional_logic.hide_field( $(this) );
11955
  });
11956
 
11957
 
11958
+ // select other tab if active
11959
+ if( $li.hasClass('active') ) {
11960
+ $wrap.find('li:not(.'+hidden+'):first a').trigger('click');
11961
+ }
11962
 
11963
+ },
11964
+
11965
+ show: function( $field, context ){
11966
+
11967
+ // bail early if not conditional logic
11968
+ if( context != 'conditional_logic' ) return;
11969
 
11970
+
11971
+ // vars
11972
+ var key = $field.data('key');
11973
+ var $wrap = tabs.getWrap( $field );
11974
+ var $tab = tabs.getTab( $wrap, key );
11975
+ var $li = $tab.parent();
11976
+
11977
+
11978
+ // bail early if $group does not exist (clone field)
11979
+ if( !$wrap.exists() ) return;
11980
+
11981
+
11982
+ // show li
11983
+ $li.removeClass(hidden);
11984
+
11985
+
11986
+ // hide fields
11987
+ tabs.getFields( $field ).each(function(){
11988
+ acf.conditional_logic.show_field( $(this) );
11989
+ });
11990
+
11991
+
11992
+ // select tab if no other active
11993
+ var $active = $li.siblings('.active');
11994
+ if( !$active.exists() || $active.hasClass(hidden) ) {
11995
+ tabs.toggle( $tab );
11996
+ }
11997
 
11998
  }
11999
+
12000
+ });
12001
 
12002
+
12003
+ $(window).on('unload', function(){
12004
+
12005
+ var order = [];
12006
+ $('.acf-tab-wrap').each(function(){
12007
+ var active = $(this).find('.active').index() || 0;
12008
+ order.push(active);
12009
+ });
12010
+ if( !order.length ) return;
12011
+ acf.setPreference('this.tabs', order);
12012
+
12013
  });
12014
 
12015
 
12975
  var $field = acf.get_field_wrap( $input );
12976
 
12977
 
12978
+ // event
12979
+ $field.trigger('invalidField');
12980
+
12981
+
12982
  // action
12983
  acf.do_action('invalid', $input);
12984
  acf.do_action('invalid_field', $field);
13711
  $field.on('focus change', 'input, textarea, select', event);
13712
 
13713
 
13714
+ // event
13715
+ $field.trigger('invalidField');
13716
+
13717
+
13718
  // hook for 3rd party customization
13719
  acf.do_action('add_field_error', $field);
13720
  acf.do_action('invalid_field', $field);
14361
 
14362
  build_quicktags: function( ed ){
14363
 
14364
+ var canvas, name, settings, theButtons, html, ed, id, i, use, instanceId,
14365
  defaults = ',strong,em,link,block,del,ins,img,ul,ol,li,code,more,close,';
14366
+
14367
  canvas = ed.canvas;
14368
  name = ed.name;
14369
  settings = ed.settings;
14370
  html = '';
14371
  theButtons = {};
14372
  use = '';
14373
+ instanceId = ed.id;
14374
+
14375
  // set buttons
14376
  if ( settings.buttons ) {
14377
  use = ','+settings.buttons+',';
14504
  // @codekit-prepend "../js/acf-relationship.js";
14505
  // @codekit-prepend "../js/acf-select2.js";
14506
  // @codekit-prepend "../js/acf-select.js";
14507
+ // @codekit-prepend "../js/acf-accordion.js";
14508
  // @codekit-prepend "../js/acf-tab.js";
14509
  // @codekit-prepend "../js/acf-time-picker.js";
14510
  // @codekit-prepend "../js/acf-true-false.js";
assets/js/acf-input.min.js CHANGED
@@ -1,3 +1,3 @@
1
- !function(e,t){"use strict";var i=function(){function e(){return u}function t(e,t,i,a){return"string"==typeof e&&"function"==typeof t&&(i=parseInt(i||10,10),l("actions",e,t,i,a)),f}function i(){var e=Array.prototype.slice.call(arguments),t=e.shift();return"string"==typeof t&&d("actions",t,e),f}function a(e,t){return"string"==typeof e&&r("actions",e,t),f}function n(e,t,i,a){return"string"==typeof e&&"function"==typeof t&&(i=parseInt(i||10,10),l("filters",e,t,i,a)),f}function s(){var e=Array.prototype.slice.call(arguments),t=e.shift();return"string"==typeof t?d("filters",t,e):f}function o(e,t){return"string"==typeof e&&r("filters",e,t),f}function r(e,t,i,a){if(u[e][t])if(i){var n=u[e][t],s;if(a)for(s=n.length;s--;){var o=n[s];o.callback===i&&o.context===a&&n.splice(s,1)}else for(s=n.length;s--;)n[s].callback===i&&n.splice(s,1)}else u[e][t]=[]}function l(e,t,i,a,n){var s={callback:i,priority:a,context:n},o=u[e][t];o?(o.push(s),o=c(o)):o=[s],u[e][t]=o}function c(e){for(var t,i,a,n=1,s=e.length;n<s;n++){for(t=e[n],i=n;(a=e[i-1])&&a.priority>t.priority;)e[i]=e[i-1],--i;e[i]=t}return e}function d(e,t,i){var a=u[e][t];if(!a)return"filters"===e&&i[0];var n=0,s=a.length;if("filters"===e)for(;n<s;n++)i[0]=a[n].callback.apply(a[n].context,i);else for(;n<s;n++)a[n].callback.apply(a[n].context,i);return"filters"!==e||i[0]}var f={removeFilter:o,applyFilters:s,addFilter:n,removeAction:a,doAction:i,addAction:t,storage:e},u={actions:{},filters:{}};return f};e.wp=e.wp||{},e.wp.hooks=new i}(window);var acf;!function($){$.fn.exists=function(){return $(this).length>0},$.fn.outerHTML=function(){return $(this).get(0).outerHTML},acf={l10n:{},o:{},update:function(e,t){this.o[e]=t},get:function(e){return"undefined"!=typeof this.o[e]?this.o[e]:null},_e:function(e,t){t=t||!1;var i=this.l10n[e]||"";return t&&(i=i[t]||""),i},add_action:function(){for(var e=arguments[0].split(" "),t=e.length,i=0;i<t;i++)arguments[0]="acf/"+e[i],wp.hooks.addAction.apply(this,arguments);return this},remove_action:function(){return arguments[0]="acf/"+arguments[0],wp.hooks.removeAction.apply(this,arguments),this},do_action:function(){return arguments[0]="acf/"+arguments[0],wp.hooks.doAction.apply(this,arguments),this},add_filter:function(){return arguments[0]="acf/"+arguments[0],wp.hooks.addFilter.apply(this,arguments),this},remove_filter:function(){return arguments[0]="acf/"+arguments[0],wp.hooks.removeFilter.apply(this,arguments),this},apply_filters:function(){return arguments[0]="acf/"+arguments[0],wp.hooks.applyFilters.apply(this,arguments)},get_selector:function(e){e=e||"";var t=".acf-field";if($.isPlainObject(e))if($.isEmptyObject(e))e="";else for(k in e){e=e[k];break}return e&&(t+="-"+e,t=t.split("_").join("-"),t=t.split("field-field-").join("field-")),t},get_fields:function(e,t,i){e=e||"",t=t||!1,i=i||!1;var a=this.get_selector(e),n=$(a,t);return t!==!1&&t.each(function(){$(this).is(a)&&(n=n.add($(this)))}),i||(n=n.not(".acf-clone .acf-field"),n=acf.apply_filters("get_fields",n)),n},get_field:function(e,t){e=e||"",t=t||!1;var i=this.get_fields(e,t,!0);return!!i.exists()&&i.first()},get_closest_field:function(e,t){return t=t||"",e.closest(this.get_selector(t))},get_field_wrap:function(e){return e.closest(this.get_selector())},get_field_key:function(e){return e.data("key")},get_field_type:function(e){return e.data("type")},get_data:function(e,t){var i=e.data();return"object"==typeof t&&(i=this.parse_args(i,t)),i},get_uniqid:function(e,t){"undefined"==typeof e&&(e="");var i,a=function(e,t){return e=parseInt(e,10).toString(16),t<e.length?e.slice(e.length-t):t>e.length?Array(1+(t-e.length)).join("0")+e:e};return this.php_js||(this.php_js={}),this.php_js.uniqidSeed||(this.php_js.uniqidSeed=Math.floor(123456789*Math.random())),this.php_js.uniqidSeed++,i=e,i+=a(parseInt((new Date).getTime()/1e3,10),8),i+=a(this.php_js.uniqidSeed,5),t&&(i+=(10*Math.random()).toFixed(8).toString()),i},serialize_form:function(){return this.serialize.apply(this,arguments)},serialize:function(e,t){t=t||"";var i={},a={},n=e.find("select, textarea, input").serializeArray();return $.each(n,function(e,n){var s=n.name,o=n.value;if(t){if(0!==s.indexOf(t))return;s=s.slice(t.length),"["==s.slice(0,1)&&(s=s.slice(1).replace("]",""))}"[]"===s.slice(-2)&&(s=s.slice(0,-2),"undefined"==typeof a[s]&&(a[s]=-1),a[s]++,s+="["+a[s]+"]"),i[s]=o}),i},disable:function(e,t){if(t=t||"",e.hasClass("acf-disabled"))return!1;if(e.prop("disabled",!0),t){var i=e.data("acf_disabled")||[],a=i.indexOf(t);a<0&&(i.push(t),e.data("acf_disabled",i))}return!0},enable:function(e,t){if(t=t||"",e.hasClass("acf-disabled"))return!1;var i=e.data("acf_disabled")||[];if(t){var a=i.indexOf(t);a>-1&&(i.splice(a,1),e.data("acf_disabled",i))}return!i.length&&(e.prop("disabled",!1),!0)},disable_el:function(e,t){t=t||"",e.find("select, textarea, input").each(function(){acf.disable($(this),t)})},disable_form:function(e,t){this.disable_el.apply(this,arguments)},enable_el:function(e,t){t=t||"",e.find("select, textarea, input").each(function(){acf.enable($(this),t)})},enable_form:function(e,t){this.enable_el.apply(this,arguments)},remove_tr:function(e,t){var i=e.height(),a=e.children().length;e.addClass("acf-remove-element"),setTimeout(function(){e.removeClass("acf-remove-element"),e.html('<td style="padding:0; height:'+i+'px" colspan="'+a+'"></td>'),e.children("td").animate({height:0},250,function(){e.remove(),"function"==typeof t&&t()})},250)},remove_el:function(e,t,i){i=i||0;var a=e.height(),n=e.width(),s=e.css("margin"),o=e.outerHeight(!0);acf.do_action("remove",e),e.wrap('<div class="acf-temp-remove" style="height:'+o+'px"></div>');var r=e.parent();e.css({height:a,width:n,margin:s,position:"absolute"}),setTimeout(function(){r.css({opacity:0,height:i})},50),setTimeout(function(){r.remove(),"function"==typeof t&&t.apply(this,arguments)},301)},isset:function(){var e=arguments,t=e.length,a=null,n;if(0===t)throw new Error("Empty isset");for(a=e[0],i=1;i<t;i++){if(e[i]===n||a[e[i]]===n)return!1;a=a[e[i]]}return!0},maybe_get:function(e,t,i){"undefined"==typeof i&&(i=null),keys=String(t).split(".");for(var a in keys){var t=keys[a];if("undefined"==typeof e[t])return i;e=e[t]}return e},open_popup:function(e){if($popup=$("body > #acf-popup"),$popup.exists())return update_popup(e);var t=['<div id="acf-popup">','<div class="acf-popup-box acf-box">','<div class="title"><h3></h3><a href="#" class="acf-icon -cancel grey acf-close-popup"></a></div>','<div class="inner"></div>','<div class="loading"><i class="acf-loading"></i></div>',"</div>",'<div class="bg"></div>',"</div>"].join("");return $("body").append(t),$("#acf-popup").on("click",".bg, .acf-close-popup",function(e){e.preventDefault(),acf.close_popup()}),this.update_popup(e)},update_popup:function(e){return $popup=$("#acf-popup"),!!$popup.exists()&&(e=$.extend({},{title:"",content:"",width:0,height:0,loading:!1},e),e.title&&$popup.find(".title h3").html(e.title),e.content&&($inner=$popup.find(".inner:first"),$inner.html(e.content),acf.do_action("append",$inner),$inner.attr("style","position: relative;"),e.height=$inner.outerHeight(),$inner.removeAttr("style")),e.width&&$popup.find(".acf-popup-box").css({width:e.width,"margin-left":0-e.width/2}),e.height&&(e.height+=44,$popup.find(".acf-popup-box").css({height:e.height,"margin-top":0-e.height/2})),e.loading?$popup.find(".loading").show():$popup.find(".loading").hide(),$popup)},close_popup:function(){$popup=$("#acf-popup"),$popup.exists()&&$popup.remove()},update_user_setting:function(e,t){$.ajax({url:acf.get("ajaxurl"),dataType:"html",type:"post",data:acf.prepare_for_ajax({action:"acf/update_user_setting",name:e,value:t})})},prepare_for_ajax:function(e){var t={nonce:acf.get("nonce"),post_id:acf.get("post_id")};return $.each(e,function(e,i){$.isPlainObject(i)&&!$.isEmptyObject(i)?$.each(i,function(i,a){i+="";var n=i.indexOf("[");i=0==n?e+i:n>0?e+"["+i.slice(0,n)+"]"+i.slice(n):e+"["+i+"]",t[i]=a}):t[e]=i}),t=acf.apply_filters("prepare_for_ajax",t)},is_ajax_success:function(e){return!(!e||!e.success)},get_ajax_message:function(e){var t={text:"",type:"error"};return e?(e.success&&(t.type="success"),e.data&&e.data.message&&(t.text=e.data.message),e.data&&e.data.error&&(t.text=e.data.error),t):t},is_in_view:function(e){var t=e.offset().top,i=t+e.height();if(t===i)return!1;var a=$(window).scrollTop(),n=a+$(window).height();return i<=n&&t>=a},val:function(e,t){var i=e.val();e.val(t),t!=i&&e.trigger("change")},str_replace:function(e,t,i){return i.split(e).join(t)},str_sanitize:function(e){var t={"À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","Æ":"AE","Ç":"C","È":"E","É":"E","Ê":"E","Ë":"E","Ì":"I","Í":"I","Î":"I","Ï":"I","Ð":"D","Ñ":"N","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","Ù":"U","Ú":"U","Û":"U","Ü":"U","Ý":"Y","ß":"s","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","æ":"ae","ç":"c","è":"e","é":"e","ê":"e","ë":"e","ì":"i","í":"i","î":"i","ï":"i","ñ":"n","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","ù":"u","ú":"u","û":"u","ü":"u","ý":"y","ÿ":"y","Ā":"A","ā":"a","Ă":"A","ă":"a","Ą":"A","ą":"a","Ć":"C","ć":"c","Ĉ":"C","ĉ":"c","Ċ":"C","ċ":"c","Č":"C","č":"c","Ď":"D","ď":"d","Đ":"D","đ":"d","Ē":"E","ē":"e","Ĕ":"E","ĕ":"e","Ė":"E","ė":"e","Ę":"E","ę":"e","Ě":"E","ě":"e","Ĝ":"G","ĝ":"g","Ğ":"G","ğ":"g","Ġ":"G","ġ":"g","Ģ":"G","ģ":"g","Ĥ":"H","ĥ":"h","Ħ":"H","ħ":"h","Ĩ":"I","ĩ":"i","Ī":"I","ī":"i","Ĭ":"I","ĭ":"i","Į":"I","į":"i","İ":"I","ı":"i","IJ":"IJ","ij":"ij","Ĵ":"J","ĵ":"j","Ķ":"K","ķ":"k","Ĺ":"L","ĺ":"l","Ļ":"L","ļ":"l","Ľ":"L","ľ":"l","Ŀ":"L","ŀ":"l","Ł":"l","ł":"l","Ń":"N","ń":"n","Ņ":"N","ņ":"n","Ň":"N","ň":"n","ʼn":"n","Ō":"O","ō":"o","Ŏ":"O","ŏ":"o","Ő":"O","ő":"o","Œ":"OE","œ":"oe","Ŕ":"R","ŕ":"r","Ŗ":"R","ŗ":"r","Ř":"R","ř":"r","Ś":"S","ś":"s","Ŝ":"S","ŝ":"s","Ş":"S","ş":"s","Š":"S","š":"s","Ţ":"T","ţ":"t","Ť":"T","ť":"t","Ŧ":"T","ŧ":"t","Ũ":"U","ũ":"u","Ū":"U","ū":"u","Ŭ":"U","ŭ":"u","Ů":"U","ů":"u","Ű":"U","ű":"u","Ų":"U","ų":"u","Ŵ":"W","ŵ":"w","Ŷ":"Y","ŷ":"y","Ÿ":"Y","Ź":"Z","ź":"z","Ż":"Z","ż":"z","Ž":"Z","ž":"z","ſ":"s","ƒ":"f","Ơ":"O","ơ":"o","Ư":"U","ư":"u","Ǎ":"A","ǎ":"a","Ǐ":"I","ǐ":"i","Ǒ":"O","ǒ":"o","Ǔ":"U","ǔ":"u","Ǖ":"U","ǖ":"u","Ǘ":"U","ǘ":"u","Ǚ":"U","ǚ":"u","Ǜ":"U","ǜ":"u","Ǻ":"A","ǻ":"a","Ǽ":"AE","ǽ":"ae","Ǿ":"O","ǿ":"o"," ":"_","'":"","?":"","/":"","\\":"",".":"",",":"","`":"",">":"","<":"",'"':"","[":"","]":"","|":"","{":"","}":"","(":"",")":""},i=/\W/g,a=function(e){return"undefined"!=typeof t[e]?t[e]:e};return e=e.replace(i,a),e=e.toLowerCase()},addslashes:function(e){return e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&")},esc_html:function(e){var t={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;","/":"&#x2F;","`":"&#x60;","=":"&#x3D;"};return String(e).replace(/[&<>"'`=\/]/g,function(e){return t[e]})},render_select:function(e,t){var i=e.val();e.html(""),t&&$.each(t,function(t,a){var n=e;a.group&&(n=e.find('optgroup[label="'+a.group+'"]'),n.exists()||(n=$('<optgroup label="'+a.group+'"></optgroup>'),e.append(n))),n.append('<option value="'+a.value+'">'+acf.esc_html(a.label)+"</option>"),i==a.value&&e.prop("selectedIndex",t)})},duplicate:function(e){"undefined"!=typeof e.length&&(e={$el:e}),e=acf.parse_args(e,{$el:!1,search:"",replace:"",before:function(e){},after:function(e,t){},append:function(e,t){e.after(t)}});var t=e.$el,i;e.search||(e.search=t.attr("data-id")),e.replace||(e.replace=acf.get_uniqid()),e.before.apply(this,[t]),acf.do_action("before_duplicate",t);var i=t.clone();return i.removeClass("acf-clone"),acf.do_action("remove",i),e.search&&(i.attr("data-id",e.replace),i.find('[id*="'+e.search+'"]').each(function(){$(this).attr("id",$(this).attr("id").replace(e.search,e.replace))}),i.find('[name*="'+e.search+'"]').each(function(){$(this).attr("name",$(this).attr("name").replace(e.search,e.replace))}),i.find('label[for*="'+e.search+'"]').each(function(){$(this).attr("for",$(this).attr("for").replace(e.search,e.replace))})),i.find(".ui-sortable").removeClass("ui-sortable"),acf.do_action("after_duplicate",t,i),e.after.apply(this,[t,i]),e.append.apply(this,[t,i]),setTimeout(function(){acf.do_action("append",i)},1),i},decode:function(e){return $("<textarea/>").html(e).text()},parse_args:function(e,t){return"object"!=typeof e&&(e={}),"object"!=typeof t&&(t={}),$.extend({},t,e)},enqueue_script:function(e,t){var i=document.createElement("script");i.type="text/javascript",i.src=e,i.async=!0,i.readyState?i.onreadystatechange=function(){"loaded"!=i.readyState&&"complete"!=i.readyState||(i.onreadystatechange=null,t())}:i.onload=function(){t()},document.body.appendChild(i)}},acf.model={actions:{},filters:{},events:{},extend:function(e){var t=$.extend({},this,e);return $.each(t.actions,function(e,i){t._add_action(e,i)}),$.each(t.filters,function(e,i){t._add_filter(e,i)}),$.each(t.events,function(e,i){t._add_event(e,i)}),t},_add_action:function(e,t){var i=this,a=e.split(" "),e=a[0]||"",n=a[1]||10;acf.add_action(e,i[t],n,i)},_add_filter:function(e,t){var i=this,a=e.split(" "),e=a[0]||"",n=a[1]||10;acf.add_filter(e,i[t],n,i)},_add_event:function(e,t){var i=this,a=e.indexOf(" "),n=a>0?e.substr(0,a):e,s=a>0?e.substr(a+1):"",o=function(e){e.$el=$(this),"function"==typeof i.event&&(e=i.event(e)),i[t].apply(i,arguments)};s?$(document).on(n,s,o):$(document).on(n,o)},get:function(e,t){return t=t||null,"undefined"!=typeof this[e]&&(t=this[e]),t},set:function(e,t){return this[e]=t,"function"==typeof this["_set_"+e]&&this["_set_"+e].apply(this),this}},acf.field=acf.model.extend({type:"",o:{},$field:null,_add_action:function(e,t){var i=this;e=e+"_field/type="+i.type,acf.add_action(e,function(e){i.set("$field",e),i[t].apply(i,arguments)})},_add_filter:function(e,t){var i=this;e=e+"_field/type="+i.type,acf.add_filter(e,function(e){i.set("$field",e),i[t].apply(i,arguments)})},_add_event:function(e,t){var i=this,a=e.substr(0,e.indexOf(" ")),n=e.substr(e.indexOf(" ")+1),s=acf.get_selector(i.type);$(document).on(a,s+" "+n,function(e){var a=$(this),n=acf.get_closest_field(a,i.type);n.length&&(n.is(i.$field)||i.set("$field",n),e.$el=a,e.$field=n,i[t].apply(i,[e]))})},_set_$field:function(){"function"==typeof this.focus&&this.focus()},doFocus:function(e){return this.set("$field",e)}}),acf.fields=acf.model.extend({actions:{prepare:"_prepare",prepare_field:"_prepare_field",ready:"_ready",ready_field:"_ready_field",append:"_append",append_field:"_append_field",load:"_load",load_field:"_load_field",remove:"_remove",remove_field:"_remove_field",sortstart:"_sortstart",sortstart_field:"_sortstart_field",sortstop:"_sortstop",sortstop_field:"_sortstop_field",show:"_show",show_field:"_show_field",hide:"_hide",hide_field:"_hide_field"},_prepare:function(e){acf.get_fields("",e).each(function(){acf.do_action("prepare_field",$(this))})},_prepare_field:function(e){acf.do_action("prepare_field/type="+e.data("type"),e)},_ready:function(e){acf.get_fields("",e).each(function(){acf.do_action("ready_field",$(this))})},_ready_field:function(e){acf.do_action("ready_field/type="+e.data("type"),e)},_append:function(e){acf.get_fields("",e).each(function(){acf.do_action("append_field",$(this))})},_append_field:function(e){acf.do_action("append_field/type="+e.data("type"),e)},_load:function(e){acf.get_fields("",e).each(function(){acf.do_action("load_field",$(this))})},_load_field:function(e){acf.do_action("load_field/type="+e.data("type"),e)},_remove:function(e){acf.get_fields("",e).each(function(){acf.do_action("remove_field",$(this))})},_remove_field:function(e){acf.do_action("remove_field/type="+e.data("type"),e)},_sortstart:function(e,t){acf.get_fields("",e).each(function(){acf.do_action("sortstart_field",$(this),t)})},_sortstart_field:function(e,t){acf.do_action("sortstart_field/type="+e.data("type"),e,t)},_sortstop:function(e,t){acf.get_fields("",e).each(function(){acf.do_action("sortstop_field",$(this),t)})},_sortstop_field:function(e,t){acf.do_action("sortstop_field/type="+e.data("type"),e,t)},_hide:function(e,t){acf.get_fields("",e).each(function(){acf.do_action("hide_field",$(this),t)})},_hide_field:function(e,t){acf.do_action("hide_field/type="+e.data("type"),e,t)},_show:function(e,t){acf.get_fields("",e).each(function(){acf.do_action("show_field",$(this),t)})},_show_field:function(e,t){acf.do_action("show_field/type="+e.data("type"),e,t)}}),$(document).ready(function(){acf.do_action("ready",$("body"))}),$(window).on("load",function(){acf.do_action("load",$("body"))}),acf.layout=acf.model.extend({active:0,actions:{"prepare 99":"prepare",refresh:"refresh"},prepare:function(){this.active=1,this.refresh()},refresh:function(e){if(this.active){e=e||$("body");var t=this;this.render_tables(e),this.render_groups(e)}},render_tables:function(e){var t=this,i=e.find(".acf-table:visible");e.is("tr")&&(i=e.parent().parent()),i.each(function(){t.render_table($(this))})},render_table:function(e){var t=e.find("> thead th.acf-th"),i=1,a=100;if(t.exists()){var n=e.find("> tbody > tr"),s=n.find("> td.acf-field");n.hasClass("acf-clone")&&n.length>1&&(s=n.not(".acf-clone").find("> td.acf-field")),t.each(function(){var e=$(this),t=e.attr("data-key"),i=s.filter('[data-key="'+t+'"]');i.removeClass("appear-empty"),e.removeClass("hidden-by-conditional-logic"),i.exists()&&(0==i.not(".hidden-by-conditional-logic").length?e.addClass("hidden-by-conditional-logic"):i.filter(".hidden-by-conditional-logic").addClass("appear-empty"))}),t.css("width","auto"),t=t.not(".hidden-by-conditional-logic"),i=t.length,t.filter("[data-width]").each(function(){var e=parseInt($(this).attr("data-width"));a-=e,$(this).css("width",e+"%")}),t=t.not("[data-width]"),t.each(function(){var e=a/t.length;$(this).css("width",e+"%")}),e.find(".acf-row .acf-field.-collapsed-target").removeAttr("colspan"),e.find(".acf-row.-collapsed .acf-field.-collapsed-target").attr("colspan",i)}},render_groups:function(e){var t=this,i=e.find(".acf-fields:visible");e&&e.is(".acf-fields")&&(i=i.add(e)),i.each(function(){t.render_group($(this))})},render_group:function(e){var t=$(),i=0,a=0,n=-1,s=e.children(".acf-field[data-width]:visible");if(s.exists()){if(e.hasClass("-left"))return s.removeAttr("data-width"),void s.css("width","auto");s.removeClass("acf-r0 acf-c0").css({"min-height":0}),s.each(function(e){var s=$(this),o=s.position().top;0==e&&(i=o),o!=i&&(t.css({"min-height":a+1+"px"}),t=$(),i=s.position().top,a=0,n=-1),n++,a=s.outerHeight()>a?s.outerHeight():a,t=t.add(s),0==o?s.addClass("acf-r0"):0==n&&s.addClass("acf-c0")}),t.exists()&&t.css({"min-height":a+1+"px"})}}}),$(document).on("change",".acf-field input, .acf-field textarea, .acf-field select",function(){var e=$("#_acf_changed");e.length&&e.val(1),acf.do_action("change",$(this))}),$(document).on("click",'.acf-field a[href="#"]',function(e){e.preventDefault()}),acf.unload=acf.model.extend({locked:1,active:1,changed:0,filters:{validation_complete:"validation_complete"},actions:{ready:"ready",change:"on"},ready:function(){setTimeout(function(){acf.unload.locked=0},1e3)},events:{"submit form":"off"},validation_complete:function(e,t){return e&&e.errors&&this.on(),e},on:function(){this.changed||!this.active||this.locked||(this.changed=1,$(window).on("beforeunload",this.unload))},off:function(){this.changed=0,$(window).off("beforeunload",this.unload)},unload:function(){return acf._e("unload")}}),acf.tooltip=acf.model.extend({events:{"mouseenter .acf-js-tooltip":"_on","mouseup .acf-js-tooltip":"_off","mouseleave .acf-js-tooltip":"_off"},tooltip:function(e,t){var i=$('<div class="acf-tooltip">'+e+"</div>");$("body").append(i);var a=10;target_w=t.outerWidth(),target_h=t.outerHeight(),target_t=t.offset().top,target_l=t.offset().left,tooltip_w=i.outerWidth(),tooltip_h=i.outerHeight();var n=target_t-tooltip_h,s=target_l+target_w/2-tooltip_w/2;return s<a?(i.addClass("right"),s=target_l+target_w,n=target_t+target_h/2-tooltip_h/2):s+tooltip_w+a>$(window).width()?(i.addClass("left"),s=target_l-tooltip_w,n=target_t+target_h/2-tooltip_h/2):n-$(window).scrollTop()<a?(i.addClass("bottom"),n=target_t+target_h):i.addClass("top"),i.css({top:n,left:s}),i},temp:function(e,t){var t=this.tooltip(e,t),i=0;i+=250,setTimeout(function(){t.addClass("acf-fade-up")},i),i+=250,setTimeout(function(){t.remove()},i)},confirm:function(e,t,i,a,n){i=i||acf._e("are_you_sure"),a=a||'<a href="#" class="acf-confirm-y">'+acf._e("yes")+"</a>",n=n||'<a href="#" class="acf-confirm-n">'+acf._e("No")+"</a>";var s=this.tooltip(i+" "+a+" "+n,e);s.addClass("-confirm");var o=function(i,a){i.preventDefault(),i.stopImmediatePropagation(),e.off("click",r),s.off("click",".acf-confirm-y",r),s.off("click",".acf-confirm-n",l),$("body").off("click",l),s.remove(),t.apply(null,[a])},r=function(e){o(e,!0)},l=function(e){o(e,!1)};s.on("click",".acf-confirm-y",r),s.on("click",".acf-confirm-n",l),e.on("click",r),$("body").on("click",l)},confirm_remove:function(e,t){text=!1,button_y='<a href="#" class="acf-confirm-y -red">'+acf._e("remove")+"</a>",button_n='<a href="#" class="acf-confirm-n">'+acf._e("cancel")+"</a>",this.confirm(e,t,!1,button_y,button_n)},_on:function(e){var t=e.$el.attr("title");if(t){var i=this.tooltip(t,e.$el);e.$el.data("acf-tooltip",{title:t,$el:i}),e.$el.attr("title","")}},_off:function(e){var t=e.$el.data("acf-tooltip");t&&(t.$el.remove(),e.$el.attr("title",t.title))}}),acf.postbox=acf.model.extend({events:{"mouseenter .acf-postbox .handlediv":"on","mouseleave .acf-postbox .handlediv":"off"},on:function(e){e.$el.siblings(".hndle").addClass("hover")},off:function(e){e.$el.siblings(".hndle").removeClass("hover")},render:function(e){e=$.extend({},{id:"",key:"",style:"default",label:"top",edit_url:"",edit_title:"",visibility:!0},e);var t=$("#"+e.id),i=$("#"+e.id+"-hide"),a=i.parent();t.addClass("acf-postbox"),a.addClass("acf-postbox-toggle"),t.removeClass("hide-if-js"),a.removeClass("hide-if-js"),"default"!==e.style&&t.addClass(e.style),t.children(".inside").addClass("acf-fields").addClass("-"+e.label),e.visibility?i.prop("checked",!0):(t.addClass("acf-hidden"),a.addClass("acf-hidden")),e.edit_url&&t.children(".hndle").append('<a href="'+e.edit_url+'" class="dashicons dashicons-admin-generic acf-hndle-cog acf-js-tooltip" title="'+e.edit_title+'"></a>')}});var e=acf.model.extend({events:{"click .acf-panel-title":"_click"},_click:function(e){e.preventDefault(),this.toggle(e.$el.parent())},is_open:function(e){return e.hasClass("-open")},toggle:function(e){this.is_open(e)?this.close(e):this.open(e)},open:function(e){e.addClass("-open"),e.find(".acf-panel-title i").attr("class","dashicons dashicons-arrow-down")},close:function(e){e.removeClass("-open"),e.find(".acf-panel-title i").attr("class","dashicons dashicons-arrow-right")}});acf.notice=acf.model.extend({actions:{prepare:"prepare"},prepare:function(){var e=$(".acf-notice");e.length&&$("h1:first").after(e)},html:function(e,t){},success:function(e){},error:function(e){},warning:function(e){},information:function(e){}}),acf.add_action("sortstart",function(e,t){e.is("tr")&&(e.css("position","relative"),e.children().each(function(){$(this).width($(this).width())}),e.css("position","absolute"),t.html('<td style="height:'+e.height()+'px; padding:0;" colspan="'+e.children("td").length+'"></td>'))}),acf.add_action("before_duplicate",function(e){e.find("select option:selected").addClass("selected")}),acf.add_action("after_duplicate",function(e,t){t.find("select").each(function(){var e=$(this),t=[];e.find("option.selected").each(function(){t.push($(this).val())}),e.val(t)}),e.find("select option.selected").removeClass("selected"),t.find("select option.selected").removeClass("selected")}),Array.prototype.indexOf||(Array.prototype.indexOf=function(e){return $.inArray(e,this)})}(jQuery),function($){acf.ajax=acf.model.extend({active:!1,actions:{ready:"ready"},events:{"change #page_template":"_change_template","change #parent_id":"_change_parent","change #post-formats-select input":"_change_format","change .categorychecklist input":"_change_term","change .categorychecklist select":"_change_term",'change .acf-taxonomy-field[data-save="1"] input':"_change_term",'change .acf-taxonomy-field[data-save="1"] select':"_change_term"},o:{},xhr:null,update:function(e,t){return this.o[e]=t,this},get:function(e){return this.o[e]||null},ready:function(){this.update("post_id",acf.get("post_id")),this.active=!0},fetch:function(){if(this.active&&acf.get("ajax")){this.xhr&&this.xhr.abort();var e=this,t=this.o;t.action="acf/post/get_field_groups",t.exists=[],$(".acf-postbox").not(".acf-hidden").each(function(){t.exists.push($(this).attr("id").substr(4))}),this.xhr=$.ajax({url:acf.get("ajaxurl"),data:acf.prepare_for_ajax(t),type:"post",dataType:"json",success:function(t){acf.is_ajax_success(t)&&e.render(t.data)}})}},render:function(e){$(".acf-postbox").addClass("acf-hidden"),$(".acf-postbox-toggle").addClass("acf-hidden"),$("#acf-style").html(""),$.each(e,function(e,t){var i=$("#acf-"+t.key),a=$("#acf-"+t.key+"-hide"),n=a.parent();i.removeClass("acf-hidden hide-if-js").show(),n.removeClass("acf-hidden hide-if-js").show(),a.prop("checked",!0);var s=i.find(".acf-replace-with-fields");s.exists()&&(s.replaceWith(t.html),acf.do_action("append",i)),0===e&&$("#acf-style").html(t.style),i.find(".acf-hidden-by-postbox").prop("disabled",!1)}),$(".acf-postbox.acf-hidden").find("select, textarea, input").not(":disabled").each(function(){$(this).addClass("acf-hidden-by-postbox").prop("disabled",!0)})},sync_taxonomy_terms:function(){var e=[""];$(".categorychecklist, .acf-taxonomy-field").each(function(){var t=$(this),i=t.find('input[type="checkbox"]').not(":disabled"),a=t.find('input[type="radio"]').not(":disabled"),n=t.find("select").not(":disabled"),s=t.find('input[type="hidden"]').not(":disabled");t.is(".acf-taxonomy-field")&&"1"!=t.attr("data-save")||t.closest(".media-frame").exists()||(i.exists()?i.filter(":checked").each(function(){e.push($(this).val())}):a.exists()?a.filter(":checked").each(function(){e.push($(this).val())}):n.exists()?n.find("option:selected").each(function(){e.push($(this).val())}):s.exists()&&s.each(function(){$(this).val()&&e.push($(this).val())}))}),e=e.filter(function(e,t,i){return i.indexOf(e)==t}),this.update("post_taxonomy",e).fetch()},_change_template:function(e){var t=e.$el.val();this.update("page_template",t).fetch()},_change_parent:function(e){var t="parent",i=0;""!=e.$el.val()&&(t="child",i=e.$el.val()),this.update("page_type",t).update("page_parent",i).fetch()},_change_format:function(e){var t=e.$el.val();"0"==t&&(t="standard"),this.update("post_format",t).fetch()},_change_term:function(e){var t=this;e.$el.closest(".media-frame").exists()||setTimeout(function(){t.sync_taxonomy_terms()},1)}})}(jQuery),function($){acf.fields.button_group=acf.field.extend({type:"button_group",$div:null,events:{'click input[type="radio"]':"click"},focus:function(){this.$div=this.$field.find(".acf-button-group"),this.o=acf.get_data(this.$div,{allow_null:0})},click:function(e){var t=e.$el,i=t.parent("label"),a=i.hasClass("selected");this.$div.find(".selected").removeClass("selected"),i.addClass("selected"),this.o.allow_null&&a&&(e.$el.prop("checked",!1),i.removeClass("selected"),e.$el.trigger("change"))}})}(jQuery),function($){acf.fields.checkbox=acf.field.extend({type:"checkbox",events:{"change input":"_change","click .acf-add-checkbox":"_add"},focus:function(){this.$ul=this.$field.find("ul"),this.$input=this.$field.find('input[type="hidden"]')},add:function(){var e=this.$input.attr("name")+"[]",t='<li><input class="acf-checkbox-custom" type="checkbox" checked="checked" /><input type="text" name="'+e+'" /></li>';this.$ul.find(".acf-add-checkbox").parent("li").before(t)},_change:function(e){var t=this.$ul,i=t.find('input[type="checkbox"]').not(".acf-checkbox-toggle"),a=e.$el.is(":checked");if(e.$el.hasClass("acf-checkbox-toggle"))return void i.prop("checked",a).trigger("change");if(e.$el.hasClass("acf-checkbox-custom")){var n=e.$el.next('input[type="text"]');e.$el.next('input[type="text"]').prop("disabled",!a),a||""!=n.val()||e.$el.parent("li").remove()}if(t.find(".acf-checkbox-toggle").exists()){var a=0==i.not(":checked").length;t.find(".acf-checkbox-toggle").prop("checked",a)}},_add:function(e){this.add()}})}(jQuery),function($){acf.fields.color_picker=acf.field.extend({type:"color_picker",$input:null,$hidden:null,actions:{ready:"initialize",append:"initialize"},focus:function(){this.$input=this.$field.find('input[type="text"]'),this.$hidden=this.$field.find('input[type="hidden"]')},initialize:function(){var e=this.$input,t=this.$hidden,i=function(){setTimeout(function(){acf.val(t,e.val())},1)},a={defaultColor:!1,palettes:!0,hide:!0,change:i,clear:i},a=acf.apply_filters("color_picker_args",a,this.$field);this.$input.wpColorPicker(a)}})}(jQuery),function($){acf.conditional_logic=acf.model.extend({actions:{"prepare 20":"render","append 20":"render"},events:{"change .acf-field input":"change","change .acf-field textarea":"change","change .acf-field select":"change"},items:{},triggers:{},add:function(e,t){for(var i in t){var a=t[i];for(var n in a){var s=a[n],o=s.field,r=this.triggers[o]||{};r[e]=e,this.triggers[o]=r}}this.items[e]=t},render:function(e){e=e||!1;var t=acf.get_fields("",e,!0);this.render_fields(t),acf.do_action("refresh",e)},change:function(e){var t=e.$el,i=acf.get_field_wrap(t),a=i.data("key");if("undefined"==typeof this.triggers[a])return!1;$parent=i.parent();for(var n in this.triggers[a]){var s=this.triggers[a][n],o=acf.get_fields(s,$parent,!0);this.render_fields(o)}acf.do_action("refresh",$parent)},render_fields:function(e){var t=this;e.each(function(){t.render_field($(this))})},render_field:function(e){var t=e.data("key");if("undefined"==typeof this.items[t])return!1;for(var i=!1,a=this.items[t],n=0;n<a.length;n++){for(var s=a[n],o=!0,r=0;r<s.length;r++){var l=s[r],c=this.get_trigger(e,l.field);if(!this.calculate(l,c,e)){o=!1;break}}if(o){i=!0;break}}i?this.show_field(e):this.hide_field(e)},show_field:function(e){var t=e.data("key");e.removeClass("hidden-by-conditional-logic"),acf.enable_form(e,"condition_"+t),acf.do_action("show_field",e,"conditional_logic")},hide_field:function(e){var t=e.data("key");e.addClass("hidden-by-conditional-logic"),acf.disable_form(e,"condition_"+t),acf.do_action("hide_field",e,"conditional_logic")},get_trigger:function(e,t){var i=acf.get_selector(t),a=e.siblings(i);if(!a.exists()){var n=acf.get_selector();e.parents(n).each(function(){if(a=$(this).siblings(i),a.exists())return!1})}return!!a.exists()&&a},calculate:function(e,t,i){if(!t||!i)return!1;var a=!1,n=t.data("type");return"true_false"==n||"checkbox"==n||"radio"==n||"button_group"==n?a=this.calculate_checkbox(e,t):"select"==n&&(a=this.calculate_select(e,t)),"!="===e.operator&&(a=!a),a},calculate_checkbox:function(e,t){var i=t.find('input[value="'+e.value+'"]:checked').exists();return""!==e.value||t.find("input:checked").exists()||(i=!0),i},calculate_select:function(e,t){var i=t.find("select"),a=i.val();return a||$.isNumeric(a)||(a=""),$.isArray(a)||(a=[a]),match=$.inArray(e.value,a)>-1,match}})}(jQuery),function($){acf.datepicker=acf.model.extend({actions:{"ready 1":"ready"},ready:function(){var e=acf.get("locale"),t=acf.get("rtl");l10n=acf._e("date_picker"),l10n&&"undefined"!=typeof $.datepicker&&(l10n.isRTL=t,$.datepicker.regional[e]=l10n,$.datepicker.setDefaults(l10n))},init:function(e,t){"undefined"!=typeof $.datepicker&&(t=t||{},e.datepicker(t),$("body > #ui-datepicker-div").exists()&&$("body > #ui-datepicker-div").wrap('<div class="acf-ui-datepicker" />'))},destroy:function(e){}}),acf.fields.date_picker=acf.field.extend({type:"date_picker",$el:null,$input:null,$hidden:null,o:{},actions:{ready:"initialize",append:"initialize"},events:{'blur input[type="text"]':"blur"},focus:function(){this.$el=this.$field.find(".acf-date-picker"),this.$input=this.$el.find('input[type="text"]'),this.$hidden=this.$el.find('input[type="hidden"]'),this.o=acf.get_data(this.$el)},initialize:function(){if(this.o.save_format)return this.initialize2();var e={dateFormat:this.o.date_format,altField:this.$hidden,altFormat:"yymmdd",changeYear:!0,yearRange:"-100:+100",changeMonth:!0,showButtonPanel:!0,
2
- firstDay:this.o.first_day};e=acf.apply_filters("date_picker_args",e,this.$field),acf.datepicker.init(this.$input,e),acf.do_action("date_picker_init",this.$input,e,this.$field)},initialize2:function(){this.$input.val(this.$hidden.val());var e={dateFormat:this.o.date_format,altField:this.$hidden,altFormat:this.o.save_format,changeYear:!0,yearRange:"-100:+100",changeMonth:!0,showButtonPanel:!0,firstDay:this.o.first_day};e=acf.apply_filters("date_picker_args",e,this.$field);var t=e.dateFormat;e.dateFormat=this.o.save_format,acf.datepicker.init(this.$input,e),this.$input.datepicker("option","dateFormat",t),acf.do_action("date_picker_init",this.$input,e,this.$field)},blur:function(){this.$input.val()||this.$hidden.val("")}})}(jQuery),function($){acf.datetimepicker=acf.model.extend({actions:{"ready 1":"ready"},ready:function(){var e=acf.get("locale"),t=acf.get("rtl");l10n=acf._e("date_time_picker"),l10n&&"undefined"!=typeof $.timepicker&&(l10n.isRTL=t,$.timepicker.regional[e]=l10n,$.timepicker.setDefaults(l10n))},init:function(e,t){"undefined"!=typeof $.timepicker&&(t=t||{},e.datetimepicker(t),$("body > #ui-datepicker-div").exists()&&$("body > #ui-datepicker-div").wrap('<div class="acf-ui-datepicker" />'))},destroy:function(e){}}),acf.fields.date_time_picker=acf.field.extend({type:"date_time_picker",$el:null,$input:null,$hidden:null,o:{},actions:{ready:"initialize",append:"initialize"},events:{'blur input[type="text"]':"blur"},focus:function(){this.$el=this.$field.find(".acf-date-time-picker"),this.$input=this.$el.find('input[type="text"]'),this.$hidden=this.$el.find('input[type="hidden"]'),this.o=acf.get_data(this.$el)},initialize:function(){var e={dateFormat:this.o.date_format,timeFormat:this.o.time_format,altField:this.$hidden,altFieldTimeOnly:!1,altFormat:"yy-mm-dd",altTimeFormat:"HH:mm:ss",changeYear:!0,yearRange:"-100:+100",changeMonth:!0,showButtonPanel:!0,firstDay:this.o.first_day,controlType:"select",oneLine:!0};e=acf.apply_filters("date_time_picker_args",e,this.$field),acf.datetimepicker.init(this.$input,e),acf.do_action("date_time_picker_init",this.$input,e,this.$field)},blur:function(){this.$input.val()||this.$hidden.val("")}})}(jQuery),function($){acf.fields.file=acf.field.extend({type:"file",$el:null,$input:null,actions:{ready:"initialize",append:"initialize"},events:{'click a[data-name="add"]':"add",'click a[data-name="edit"]':"edit",'click a[data-name="remove"]':"remove",'change input[type="file"]':"change"},focus:function(){this.$el=this.$field.find(".acf-file-uploader"),this.$input=this.$el.find('input[type="hidden"]'),this.o=acf.get_data(this.$el)},initialize:function(){"basic"==this.o.uploader&&this.$el.closest("form").attr("enctype","multipart/form-data")},prepare:function(e){if(e=e||{},e._valid)return e;var t={url:"",alt:"",title:"",filename:"",filesizeHumanReadable:"",icon:"/wp-includes/images/media/default.png"};return e.id&&(t=e.attributes),t._valid=!0,t},render:function(e){e=this.prepare(e),this.$el.find("img").attr({src:e.icon,alt:e.alt,title:e.title}),this.$el.find('[data-name="title"]').text(e.title),this.$el.find('[data-name="filename"]').text(e.filename).attr("href",e.url),this.$el.find('[data-name="filesize"]').text(e.filesizeHumanReadable);var t="";e.id&&(t=e.id),acf.val(this.$input,t),t?this.$el.addClass("has-value"):this.$el.removeClass("has-value")},add:function(){var e=this,t=this.$field,i=acf.get_closest_field(t,"repeater"),a=acf.media.popup({title:acf._e("file","select"),mode:"select",type:"",field:t.data("key"),multiple:i.exists(),library:this.o.library,mime_types:this.o.mime_types,select:function(a,n){if(n>0){var s=t.data("key"),o=t.closest(".acf-row");if(t=!1,o.nextAll(".acf-row:visible").each(function(){if(t=acf.get_field(s,$(this)))return!!t.find(".acf-file-uploader.has-value").exists()&&void(t=!1)}),!t){if(o=acf.fields.repeater.doFocus(i).add(),!o)return!1;t=acf.get_field(s,o)}}e.set("$field",t).render(a)}})},edit:function(){var e=this,t=this.$field,i=this.$input.val();if(i)var a=acf.media.popup({title:acf._e("file","edit"),button:acf._e("file","update"),mode:"edit",attachment:i,select:function(i,a){e.set("$field",t).render(i)}})},remove:function(){var e={};this.render(e)},get_file_info:function(e,t){var i=e.val(),a={};if(!i)return void t.val("");a.url=i;var n=e[0].files;if(n.length){var s=n[0];if(a.size=s.size,a.type=s.type,s.type.indexOf("image")>-1){var o=window.URL||window.webkitURL,r=new Image;r.onload=function(){a.width=this.width,a.height=this.height,t.val(jQuery.param(a))},r.src=o.createObjectURL(s)}}t.val(jQuery.param(a))},change:function(e){this.get_file_info(e.$el,this.$input)}})}(jQuery),function($){acf.fields.google_map=acf.field.extend({type:"google_map",url:"",$el:null,$search:null,timeout:null,status:"",geocoder:!1,map:!1,maps:{},$pending:$(),actions:{ready:"initialize",append:"initialize",show:"show"},events:{'click a[data-name="clear"]':"_clear",'click a[data-name="locate"]':"_locate",'click a[data-name="search"]':"_search","keydown .search":"_keydown","keyup .search":"_keyup","focus .search":"_focus","blur .search":"_blur","mousedown .acf-google-map":"_mousedown"},focus:function(){this.$el=this.$field.find(".acf-google-map"),this.$search=this.$el.find(".search"),this.o=acf.get_data(this.$el),this.o.id=this.$el.attr("id"),this.maps[this.o.id]&&(this.map=this.maps[this.o.id])},is_ready:function(){var e=this;return"ready"==this.status||"loading"!=this.status&&(acf.isset(window,"google","maps","places")?(this.status="ready",!0):(acf.isset(window,"google","maps")&&(this.status="ready"),this.url&&(this.status="loading",acf.enqueue_script(this.url,function(){e.status="ready",e.initialize_pending()})),"ready"==this.status))},initialize_pending:function(){var e=this;this.$pending.each(function(){e.set("$field",$(this)).initialize()}),this.$pending=$()},initialize:function(){if(!this.is_ready())return this.$pending=this.$pending.add(this.$field),!1;this.geocoder||(this.geocoder=new google.maps.Geocoder);var e=this,t=this.$field,i=this.$el,a=this.$search;a.val(this.$el.find(".input-address").val());var n=acf.apply_filters("google_map_args",{scrollwheel:!1,zoom:parseInt(this.o.zoom),center:new google.maps.LatLng(this.o.lat,this.o.lng),mapTypeId:google.maps.MapTypeId.ROADMAP},this.$field);if(this.map=new google.maps.Map(this.$el.find(".canvas")[0],n),acf.isset(window,"google","maps","places","Autocomplete")){var s=new google.maps.places.Autocomplete(this.$search[0]);s.bindTo("bounds",this.map),google.maps.event.addListener(s,"place_changed",function(t){var i=this.getPlace();e.search(i)}),this.map.autocomplete=s}var o=acf.apply_filters("google_map_marker_args",{draggable:!0,raiseOnDrag:!0,map:this.map},this.$field);this.map.marker=new google.maps.Marker(o),this.map.$el=i,this.map.$field=t;var r=i.find(".input-lat").val(),l=i.find(".input-lng").val();r&&l&&this.update(r,l).center(),google.maps.event.addListener(this.map.marker,"dragend",function(){var t=this.map.marker.getPosition(),i=t.lat(),a=t.lng();e.update(i,a).sync()}),google.maps.event.addListener(this.map,"click",function(t){var i=t.latLng.lat(),a=t.latLng.lng();e.update(i,a).sync()}),acf.do_action("google_map_init",this.map,this.map.marker,this.$field),this.maps[this.o.id]=this.map},search:function(e){var t=this,i=this.$search.val();if(!i)return!1;this.$el.find(".input-address").val(i);var a=i.split(",");if(2==a.length){var n=a[0],s=a[1];if($.isNumeric(n)&&$.isNumeric(s))return n=parseFloat(n),s=parseFloat(s),void t.update(n,s).center()}if(e&&e.geometry){var n=e.geometry.location.lat(),s=e.geometry.location.lng();return void t.update(n,s).center()}this.$el.addClass("-loading"),t.geocoder.geocode({address:i},function(i,a){if(t.$el.removeClass("-loading"),a!=google.maps.GeocoderStatus.OK)return void console.log("Geocoder failed due to: "+a);if(!i[0])return void console.log("No results found");e=i[0];var n=e.geometry.location.lat(),s=e.geometry.location.lng();t.update(n,s).center()})},update:function(e,t){var i=new google.maps.LatLng(e,t);return acf.val(this.$el.find(".input-lat"),e),acf.val(this.$el.find(".input-lng"),t),this.map.marker.setPosition(i),this.map.marker.setVisible(!0),this.$el.addClass("-value"),this.$field.removeClass("error"),acf.do_action("google_map_change",i,this.map,this.$field),this.$search.blur(),this},center:function(){var e=this.map.marker.getPosition(),t=this.o.lat,i=this.o.lng;e&&(t=e.lat(),i=e.lng());var a=new google.maps.LatLng(t,i);this.map.setCenter(a)},sync:function(){var e=this,t=this.map.marker.getPosition(),i=new google.maps.LatLng(t.lat(),t.lng());return this.$el.addClass("-loading"),this.geocoder.geocode({latLng:i},function(t,i){if(e.$el.removeClass("-loading"),i!=google.maps.GeocoderStatus.OK)return void console.log("Geocoder failed due to: "+i);if(!t[0])return void console.log("No results found");var a=t[0];e.$search.val(a.formatted_address),acf.val(e.$el.find(".input-address"),a.formatted_address)}),this},refresh:function(){return!!this.is_ready()&&(google.maps.event.trigger(this.map,"resize"),void this.center())},show:function(){var e=this,t=this.$field;setTimeout(function(){e.set("$field",t).refresh()},10)},_clear:function(e){this.$el.removeClass("-value -loading -search"),this.$search.val(""),acf.val(this.$el.find(".input-address"),""),acf.val(this.$el.find(".input-lat"),""),acf.val(this.$el.find(".input-lng"),""),this.map.marker.setVisible(!1)},_locate:function(e){var t=this;return navigator.geolocation?(this.$el.addClass("-loading"),void navigator.geolocation.getCurrentPosition(function(e){t.$el.removeClass("-loading");var i=e.coords.latitude,a=e.coords.longitude;t.update(i,a).sync().center()})):(alert(acf._e("google_map","browser_support")),this)},_search:function(e){this.search()},_focus:function(e){this.$el.removeClass("-value"),this._keyup()},_blur:function(e){var t=this,i=this.$el.find(".input-address").val();i&&(this.timeout=setTimeout(function(){t.$el.addClass("-value"),t.$search.val(i)},100))},_keydown:function(e){13==e.which&&e.preventDefault()},_keyup:function(e){var t=this.$search.val();t?this.$el.addClass("-search"):this.$el.removeClass("-search")},_mousedown:function(e){var t=this;setTimeout(function(){clearTimeout(t.timeout)},1)}})}(jQuery),function($){acf.fields.image=acf.field.extend({type:"image",$el:null,$input:null,$img:null,actions:{ready:"initialize",append:"initialize"},events:{'click a[data-name="add"]':"add",'click a[data-name="edit"]':"edit",'click a[data-name="remove"]':"remove",'change input[type="file"]':"change"},focus:function(){this.$el=this.$field.find(".acf-image-uploader"),this.$input=this.$el.find('input[type="hidden"]'),this.$img=this.$el.find("img"),this.o=acf.get_data(this.$el)},initialize:function(){"basic"==this.o.uploader&&this.$el.closest("form").attr("enctype","multipart/form-data")},prepare:function(e){if(e=e||{},e._valid)return e;var t={url:"",alt:"",title:"",caption:"",description:"",width:0,height:0};return e.id&&(t=e.attributes,t.url=acf.maybe_get(t,"sizes."+this.o.preview_size+".url",t.url)),t._valid=!0,t},render:function(e){e=this.prepare(e),this.$img.attr({src:e.url,alt:e.alt,title:e.title});var t="";e.id&&(t=e.id),acf.val(this.$input,t),t?this.$el.addClass("has-value"):this.$el.removeClass("has-value")},add:function(){var e=this,t=this.$field,i=acf.get_closest_field(this.$field,"repeater"),a=acf.media.popup({title:acf._e("image","select"),mode:"select",type:"image",field:t.data("key"),multiple:i.exists(),library:this.o.library,mime_types:this.o.mime_types,select:function(a,n){if(n>0){var s=t.data("key"),o=t.closest(".acf-row");if(t=!1,o.nextAll(".acf-row:visible").each(function(){if(t=acf.get_field(s,$(this)))return!!t.find(".acf-image-uploader.has-value").exists()&&void(t=!1)}),!t){if(o=acf.fields.repeater.doFocus(i).add(),!o)return!1;t=acf.get_field(s,o)}}e.set("$field",t).render(a)}})},edit:function(){var e=this,t=this.$field,i=this.$input.val();if(i)var a=acf.media.popup({title:acf._e("image","edit"),button:acf._e("image","update"),mode:"edit",attachment:i,select:function(i,a){e.set("$field",t).render(i)}})},remove:function(){var e={};this.render(e)},change:function(e){acf.fields.file.get_file_info(e.$el,this.$input)}})}(jQuery),function($){acf.fields.link=acf.field.extend({type:"link",active:!1,$el:null,$node:null,events:{'click a[data-name="add"]':"add",'click a[data-name="edit"]':"edit",'click a[data-name="remove"]':"remove","change .link-node":"change"},focus:function(){this.$el=this.$field.find(".acf-link"),this.$node=this.$el.find(".link-node")},add:function(e){acf.link.open(this.$node)},edit:function(e){this.add()},remove:function(e){this.val("")},change:function(e,t){var i={title:this.$node.html(),url:this.$node.attr("href"),target:this.$node.attr("target")};this.val(i)},val:function(e){e=acf.parse_args(e,{title:"",url:"",target:""}),this.$el.removeClass("-value -external"),e.url&&this.$el.addClass("-value"),"_blank"===e.target&&this.$el.addClass("-external"),this.$el.find(".link-title").html(e.title),this.$el.find(".link-url").attr("href",e.url).html(e.url),this.$el.find(".input-title").val(e.title),this.$el.find(".input-target").val(e.target),this.$el.find(".input-url").val(e.url).trigger("change"),this.$node.html(e.title),this.$node.attr("href",e.url),this.$node.attr("target",e.target)}}),acf.link=acf.model.extend({active:!1,$textarea:null,$node:null,events:{"click #wp-link-submit":"_update","wplink-open":"_open","wplink-close":"_close"},atts:function(e){return"undefined"!=typeof e?(this.$node.html(e.title),this.$node.attr("href",e.url),this.$node.attr("target",e.target),this.$node.trigger("change",[e]),!0):{title:this.$node.html(),url:this.$node.attr("href"),target:this.$node.attr("target")}},inputs:function(e){return"undefined"!=typeof e?($("#wp-link-text").val(e.title),$("#wp-link-url").val(e.url),$("#wp-link-target").prop("checked","_blank"===e.target),!0):{title:$("#wp-link-text").val(),url:$("#wp-link-url").val(),target:$("#wp-link-target").prop("checked")?"_blank":""}},open:function(e){var t=$('<textarea id="acf-link-textarea"></textarea>');e.before(t),this.active=!0,this.$node=e,this.$textarea=t;var i=this.atts();wpLink.open("acf-link-textarea",i.url,i.title,null),$("#wp-link-wrap").addClass("has-text-field")},reset:function(){this.active=!1,this.$textarea.remove(),this.$textarea=null,this.$node=null},_select:function(e,t){var i=this.inputs();i.title||(i.title=t.find(".item-title").text(),this.inputs(i),console.log(i))},_open:function(e){if(this.active){var t=this.atts();this.inputs(t)}},_close:function(e){this.active&&setTimeout(function(){acf.link.reset()},100)},_update:function(e){if(this.active){var t=this.inputs();this.atts(t)}}})}(jQuery),function($){acf.media=acf.model.extend({frames:[],mime_types:{},actions:{ready:"ready"},frame:function(){var e=this.frames.length-1;return!(e<0)&&this.frames[e]},destroy:function(e){e.detach(),e.dispose(),e=null,this.frames.pop()},popup:function(e){var t=acf.get("post_id"),i=!1;$.isNumeric(t)||(t=0);var a=acf.parse_args(e,{mode:"select",title:"",button:"",type:"",field:"",mime_types:"",library:"all",multiple:!1,attachment:0,post_id:t,select:function(){}});a.id&&(a.attachment=a.id);var i=this.new_media_frame(a);return this.frames.push(i),setTimeout(function(){i.open()},1),i},_get_media_frame_settings:function(e,t){return"select"===t.mode?e=this._get_select_frame_settings(e,t):"edit"===t.mode&&(e=this._get_edit_frame_settings(e,t)),e},_get_select_frame_settings:function(e,t){return t.type&&(e.library.type=t.type),"uploadedTo"===t.library&&(e.library.uploadedTo=t.post_id),e._button=acf._e("media","select"),e},_get_edit_frame_settings:function(e,t){return e.library.post__in=[t.attachment],e._button=acf._e("media","update"),e},_add_media_frame_events:function(e,t){return e.on("open",function(){this.$el.closest(".media-modal").addClass("acf-media-modal -"+t.mode)},e),e.on("content:render:edit-image",function(){var e=this.state().get("image"),t=new wp.media.view.EditImage({model:e,controller:this}).render();this.content.set(t),t.loadEditor()},e),e.on("toolbar:create:select",function(t){t.view=new wp.media.view.Toolbar.Select({text:e.options._button,controller:this})},e),e.on("select",function(){var i=e.state(),a=i.get("image"),n=i.get("selection");if(a)return void t.select.apply(e,[a,0]);if(n){var s=0;return void n.each(function(i){t.select.apply(e,[i,s]),s++})}}),e.on("close",function(){setTimeout(function(){acf.media.destroy(e)},500)}),"select"===t.mode?e=this._add_select_frame_events(e,t):"edit"===t.mode&&(e=this._add_edit_frame_events(e,t)),e},_add_select_frame_events:function(e,t){var i=this;return acf.isset(_wpPluploadSettings,"defaults","multipart_params")&&(_wpPluploadSettings.defaults.multipart_params._acfuploader=t.field,e.on("open",function(){delete _wpPluploadSettings.defaults.multipart_params._acfuploader})),e.on("content:activate:browse",function(){try{var a=e.content.get().toolbar,n=a.get("filters"),s=a.get("search")}catch(e){return}if("image"==t.type&&(n.filters.all.text=acf._e("image","all"),delete n.filters.audio,delete n.filters.video,$.each(n.filters,function(e,t){null===t.props.type&&(t.props.type="image")})),t.mime_types){var o=t.mime_types.split(" ").join("").split(".").join("").split(",");$.each(o,function(e,t){$.each(i.mime_types,function(e,i){if(e.indexOf(t)!==-1){var a={text:t,props:{status:null,type:i,uploadedTo:null,orderby:"date",order:"DESC"},priority:20};n.filters[i]=a}})})}"uploadedTo"==t.library&&(delete n.filters.unattached,delete n.filters.uploaded,n.$el.parent().append('<span class="acf-uploadedTo">'+acf._e("image","uploadedTo")+"</span>"),$.each(n.filters,function(e,i){i.props.uploadedTo=t.post_id})),$.each(n.filters,function(e,i){i.props._acfuploader=t.field}),s.model.attributes._acfuploader=t.field,"function"==typeof n.refresh&&n.refresh()}),e},_add_edit_frame_events:function(e,t){return e.on("open",function(){this.$el.closest(".media-modal").addClass("acf-expanded"),"browse"!=this.content.mode()&&this.content.mode("browse");var e=this.state(),i=e.get("selection"),a=wp.media.attachment(t.attachment);i.add(a)},e),e},new_media_frame:function(e){var t={title:e.title,multiple:e.multiple,library:{},states:[]};t=this._get_media_frame_settings(t,e);var i=wp.media.query(t.library);acf.isset(i,"mirroring","args")&&(i.mirroring.args._acfuploader=e.field),t.states=[new wp.media.controller.Library({library:i,multiple:t.multiple,title:t.title,priority:20,filterable:"all",editable:!0,allowLocalEdits:!0})],acf.isset(wp,"media","controller","EditImage")&&t.states.push(new wp.media.controller.EditImage);var a=wp.media(t);return a.acf=e,a=this._add_media_frame_events(a,e)},ready:function(){var e=acf.get("wp_version"),t=acf.get("browser"),i=acf.get("post_id");acf.isset(window,"wp","media","view","settings","post")&&$.isNumeric(i)&&(wp.media.view.settings.post.id=i),t&&$("body").addClass("browser-"+t),e&&(e+="",major=e.substr(0,1),$("body").addClass("major-"+major)),acf.isset(window,"wp","media","view")&&(this.customize_Attachment(),this.customize_AttachmentFiltersAll(),this.customize_AttachmentCompat())},customize_Attachment:function(){var e=wp.media.view.Attachment.Library;wp.media.view.Attachment.Library=e.extend({render:function(){var t=acf.media.frame(),i=acf.maybe_get(this,"model.attributes.acf_errors");return t&&i&&this.$el.addClass("acf-disabled"),e.prototype.render.apply(this,arguments)},toggleSelection:function(t){var i=this.collection,a=this.options.selection,n=this.model,s=a.single(),o=acf.media.frame(),r=acf.maybe_get(this,"model.attributes.acf_errors"),l=this.controller.$el.find(".media-frame-content .media-sidebar");if(l.children(".acf-selection-error").remove(),l.children().removeClass("acf-hidden"),o&&r){var c=acf.maybe_get(this,"model.attributes.filename","");return l.children().addClass("acf-hidden"),l.prepend(['<div class="acf-selection-error">','<span class="selection-error-label">'+acf._e("restricted")+"</span>",'<span class="selection-error-filename">'+c+"</span>",'<span class="selection-error-message">'+r+"</span>","</div>"].join("")),a.reset(),void a.single(n)}e.prototype.toggleSelection.apply(this,arguments)}})},customize_AttachmentFiltersAll:function(){wp.media.view.AttachmentFilters.All.prototype.refresh=function(){this.$el.html(_.chain(this.filters).map(function(e,t){return{el:$("<option></option>").val(t).html(e.text)[0],priority:e.priority||50}},this).sortBy("priority").pluck("el").value())}},customize_AttachmentCompat:function(){var e=wp.media.view.AttachmentCompat;wp.media.view.AttachmentCompat=e.extend({add_acf_expand_button:function(){var e=this.$el.closest(".media-modal");if(!e.find(".media-frame-router .acf-expand-details").exists()){var t=$(['<a href="#" class="acf-expand-details">','<span class="is-closed"><span class="acf-icon -left small grey"></span>'+acf._e("expand_details")+"</span>",'<span class="is-open"><span class="acf-icon -right small grey"></span>'+acf._e("collapse_details")+"</span>","</a>"].join(""));t.on("click",function(t){t.preventDefault(),e.hasClass("acf-expanded")?e.removeClass("acf-expanded"):e.addClass("acf-expanded")}),e.find(".media-frame-router").append(t)}},render:function(){if(this.ignore_render)return this;var t=this;return setTimeout(function(){t.add_acf_expand_button()},0),clearTimeout(acf.media.render_timout),acf.media.render_timout=setTimeout(function(){acf.do_action("append",t.$el)},50),e.prototype.render.apply(this,arguments)},dispose:function(){return acf.do_action("remove",this.$el),e.prototype.dispose.apply(this,arguments)},save:function(e){e&&e.preventDefault();var t=acf.serialize(this.$el);this.ignore_render=!0,this.model.saveCompat(t)}})}})}(jQuery),function($){acf.fields.oembed=acf.field.extend({type:"oembed",$el:null,events:{'click [data-name="search-button"]':"_search",'click [data-name="clear-button"]':"_clear",'click [data-name="value-title"]':"_edit",'keypress [data-name="search-input"]':"_keypress",'keyup [data-name="search-input"]':"_keyup",'blur [data-name="search-input"]':"_blur"},focus:function(){this.$el=this.$field.find(".acf-oembed"),this.$search=this.$el.find('[data-name="search-input"]'),this.$input=this.$el.find('[data-name="value-input"]'),this.$title=this.$el.find('[data-name="value-title"]'),this.$embed=this.$el.find('[data-name="value-embed"]'),this.o=acf.get_data(this.$el)},maybe_search:function(){var e=this.$input.val(),t=this.$search.val();return t?void(t!=e&&this.search()):void this.clear()},search:function(){var e=this.$search.val();"http"!=e.substr(0,4)&&(e="http://"+e,this.$search.val(e)),this.$el.addClass("is-loading");var t=acf.prepare_for_ajax({action:"acf/fields/oembed/search",s:e,field_key:this.$field.data("key")});this.$el.data("xhr")&&this.$el.data("xhr").abort();var i=$.ajax({url:acf.get("ajaxurl"),data:t,type:"post",dataType:"json",context:this,success:this.search_success});this.$el.data("xhr",i)},search_success:function(e){var t=this.$search.val();return this.$el.removeClass("is-loading"),e&&e.html?(this.$el.removeClass("has-error").addClass("has-value"),this.$input.val(t),this.$title.html(t),void this.$embed.html(e.html)):void this.$el.removeClass("has-value").addClass("has-error")},clear:function(){this.$el.removeClass("has-error has-value"),this.$el.find('[data-name="search-input"]').val(""),this.$input.val(""),this.$title.html(""),this.$embed.html("")},edit:function(){this.$el.addClass("is-editing"),this.$search.val(this.$title.text()).focus()},blur:function(e){this.$el.removeClass("is-editing"),this.maybe_search()},_search:function(e){this.search()},_clear:function(e){this.clear()},_edit:function(e){this.edit()},_keypress:function(e){13==e.which&&e.preventDefault()},_keyup:function(e){this.$search.val()&&this.maybe_search()},_blur:function(e){this.blur()}})}(jQuery),function($){acf.fields.radio=acf.field.extend({type:"radio",$ul:null,actions:{ready:"initialize",append:"initialize"},events:{'click input[type="radio"]':"click"},focus:function(){this.$ul=this.$field.find(".acf-radio-list"),this.o=acf.get_data(this.$ul)},initialize:function(){this.$ul.find(".selected input").prop("checked",!0)},click:function(e){var t=e.$el,i=t.parent("label"),a=i.hasClass("selected"),n=t.val();if(this.$ul.find(".selected").removeClass("selected"),i.addClass("selected"),this.o.allow_null&&a&&(e.$el.prop("checked",!1),i.removeClass("selected"),n=!1,e.$el.trigger("change")),this.o.other_choice){var s=this.$ul.find('input[type="text"]');"other"===n?s.prop("disabled",!1).attr("name",t.attr("name")):s.prop("disabled",!0).attr("name","")}}})}(jQuery),function($){acf.fields.range=acf.field.extend({type:"range",$el:null,$range:null,$input:null,events:{"input input":"_change","change input":"_change"},focus:function(){this.$el=this.$field.find(".acf-range-wrap"),this.$range=this.$el.children('input[type="range"]'),this.$input=this.$el.children('input[type="number"]')},_change:function(e){var t=e.$el.val(),i=e.$el.attr("type");t=t||0,"range"===i?this.$input.val(t):this.$range.val(t)}})}(jQuery),function($){acf.fields.relationship=acf.field.extend({type:"relationship",$el:null,$input:null,$filters:null,$choices:null,$values:null,actions:{ready:"initialize",append:"initialize"},events:{"keypress [data-filter]":"submit_filter","change [data-filter]":"change_filter","keyup [data-filter]":"change_filter","click .choices .acf-rel-item":"add_item",'click [data-name="remove_item"]':"remove_item"},focus:function(){this.$el=this.$field.find(".acf-relationship"),this.$input=this.$el.children('input[type="hidden"]'),this.$choices=this.$el.find(".choices"),this.$values=this.$el.find(".values"),this.o=acf.get_data(this.$el)},initialize:function(){var e=this,t=this.$field,i=this.$el,a=this.$input;this.$values.children(".list").sortable({items:"li",forceHelperSize:!0,forcePlaceholderSize:!0,scroll:!0,update:function(){a.trigger("change")}}),this.$choices.children(".list").scrollTop(0).on("scroll",function(a){if(!i.hasClass("is-loading")&&!i.hasClass("is-empty")&&Math.ceil($(this).scrollTop())+$(this).innerHeight()>=$(this).get(0).scrollHeight){var n=i.data("paged")||1;i.data("paged",n+1),e.set("$field",t).fetch()}}),this.fetch()},maybe_fetch:function(){var e=this,t=this.$field;this.o.timeout&&clearTimeout(this.o.timeout);var i=setTimeout(function(){e.doFocus(t),e.fetch()},300);this.$el.data("timeout",i)},fetch:function(){var e=this,t=this.$field;this.$el.addClass("is-loading"),this.o.xhr&&(this.o.xhr.abort(),this.o.xhr=!1),this.o.action="acf/fields/relationship/query",this.o.field_key=t.data("key"),this.o.post_id=acf.get("post_id");var i=acf.prepare_for_ajax(this.o);1==i.paged&&this.$choices.children(".list").html(""),this.$choices.find("ul:last").append('<p><i class="acf-loading"></i> '+acf._e("relationship","loading")+"</p>");var a=$.ajax({url:acf.get("ajaxurl"),dataType:"json",type:"post",data:i,success:function(i){e.set("$field",t).render(i)}});this.$el.data("xhr",a)},render:function(e){if(this.$el.removeClass("is-loading is-empty"),this.$choices.find("p").remove(),!e||!e.results||!e.results.length)return this.$el.addClass("is-empty"),void(1==this.o.paged&&this.$choices.children(".list").append("<p>"+acf._e("relationship","empty")+"</p>"));var t=$(this.walker(e.results));this.$values.find(".acf-rel-item").each(function(){t.find('.acf-rel-item[data-id="'+$(this).data("id")+'"]').addClass("disabled")}),this.$choices.children(".list").append(t);var i="",a=null;this.$choices.find(".acf-rel-label").each(function(){return $(this).text()==i?(a.append($(this).siblings("ul").html()),void $(this).parent().remove()):(i=$(this).text(),void(a=$(this).siblings("ul")))})},walker:function(e){var t="";if($.isArray(e))for(var i in e)t+=this.walker(e[i]);else $.isPlainObject(e)&&(void 0!==e.children?(t+='<li><span class="acf-rel-label">'+e.text+'</span><ul class="acf-bl">',t+=this.walker(e.children),t+="</ul></li>"):t+='<li><span class="acf-rel-item" data-id="'+e.id+'">'+e.text+"</span></li>");return t},submit_filter:function(e){13==e.which&&e.preventDefault()},change_filter:function(e){var t=e.$el.val(),i=e.$el.data("filter");this.$el.data(i)!=t&&(this.$el.data(i,t),this.$el.data("paged",1),e.$el.is("select")?this.fetch():this.maybe_fetch())},add_item:function(e){if(this.o.max>0&&this.$values.find(".acf-rel-item").length>=this.o.max)return void alert(acf._e("relationship","max").replace("{max}",this.o.max));if(e.$el.hasClass("disabled"))return!1;e.$el.addClass("disabled");var t=["<li>",'<input type="hidden" name="'+this.$input.attr("name")+'[]" value="'+e.$el.data("id")+'" />','<span data-id="'+e.$el.data("id")+'" class="acf-rel-item">'+e.$el.html(),'<a href="#" class="acf-icon -minus small dark" data-name="remove_item"></a>',"</span>","</li>"].join("");this.$values.children(".list").append(t),this.$input.trigger("change"),acf.validation.remove_error(this.$field)},remove_item:function(e){var t=e.$el.parent(),i=t.data("id");t.parent("li").remove(),this.$choices.find('.acf-rel-item[data-id="'+i+'"]').removeClass("disabled"),this.$input.trigger("change")}})}(jQuery),function($){var e,t,i;e=acf.select2=acf.model.extend({version:0,version3:null,version4:null,actions:{"ready 1":"ready"},ready:function(){this.version=this.get_version(),this.do_function("ready")},get_version:function(){return acf.maybe_get(window,"Select2")?3:acf.maybe_get(window,"jQuery.fn.select2.amd")?4:0},do_function:function(e,t){t=t||[];var i="version"+this.version;return"undefined"!=typeof this[i]&&"undefined"!=typeof this[i][e]&&this[i][e].apply(this,t)},get_data:function(e,t){var i=this;return t=t||[],e.children().each(function(){var e=$(this);e.is("optgroup")?t.push({text:e.attr("label"),children:i.get_data(e)}):t.push({id:e.attr("value"),text:e.text()})}),t},decode_data:function(t){return t?($.each(t,function(i,a){t[i].text=acf.decode(a.text),"undefined"!=typeof a.children&&(t[i].children=e.decode_data(a.children))}),t):[]},count_data:function(e){var t=0;return e?($.each(e,function(e,i){t++,"undefined"!=typeof i.children&&(t+=i.children.length)}),t):t},get_ajax_data:function(e,t,i,a){var n=acf.prepare_for_ajax({action:e.ajax_action,field_key:e.key,s:t.term||"",paged:t.page||1});return n=acf.apply_filters("select2_ajax_data",n,e,i,a)},get_ajax_results:function(e,t){var i={results:[]};return e||(e=i),"undefined"==typeof e.results&&(i.results=e,e=i),e.results=this.decode_data(e.results),e=acf.apply_filters("select2_ajax_results",e,t)},get_value:function(e){var t=[],i=e.find("option:selected");return i.exists()?(i=i.sort(function(e,t){return+e.getAttribute("data-i")-+t.getAttribute("data-i")}),i.each(function(){var e=$(this);t.push({id:e.attr("value"),text:e.text(),$el:e})}),t):t},get_input_value:function(e){return e.val().split("||")},sync_input_value:function(e,t){e.val(t.val().join("||"))},add_option:function(e,t,i){e.find('option[value="'+t+'"]').length||e.append('<option value="'+t+'">'+i+"</option>")},select_option:function(e,t){e.find('option[value="'+t+'"]').prop("selected",!0),e.trigger("change")},unselect_option:function(e,t){e.find('option[value="'+t+'"]').prop("selected",!1),e.trigger("change")},init:function(e,t,i){this.do_function("init",arguments)},destroy:function(e){this.do_function("destroy",arguments)},add_value:function(e,t,i){this.do_function("add_value",arguments)},remove_value:function(e,t){this.do_function("remove_value",arguments)}}),t=e.version3={ready:function(){var e=acf.get("locale"),t=acf.get("rtl");if(l10n=acf._e("select"),l10n){var i={formatMatches:function(e){return 1===e?l10n.matches_1:l10n.matches_n.replace("%d",e)},formatNoMatches:function(){return l10n.matches_0},formatAjaxError:function(){return l10n.load_fail},formatInputTooShort:function(e,t){var i=t-e.length;return 1===i?l10n.input_too_short_1:l10n.input_too_short_n.replace("%d",i)},formatInputTooLong:function(e,t){var i=e.length-t;return 1===i?l10n.input_too_long_1:l10n.input_too_long_n.replace("%d",i)},formatSelectionTooBig:function(e){return 1===e?l10n.selection_too_long_1:l10n.selection_too_long_n.replace("%d",e)},formatLoadMore:function(){return l10n.load_more},formatSearching:function(){return l10n.searching;
3
- }};$.fn.select2.locales=acf.maybe_get(window,"jQuery.fn.select2.locales",{}),$.fn.select2.locales[e]=i,$.extend($.fn.select2.defaults,i)}},set_data:function(e,t){3==this.version&&(e=e.siblings("input")),e.select2("data",t)},append_data:function(e,t){3==this.version&&(e=e.siblings("input"));var i=e.select2("data")||[];i.push(t),e.select2("data",i)},init:function(i,a,n){a=a||{},n=n||null,a=$.extend({allow_null:!1,placeholder:"",multiple:!1,ajax:!1,ajax_action:""},a);var s=i.siblings("input");if(s.exists()){var o={width:"100%",containerCssClass:"-acf",allowClear:a.allow_null,placeholder:a.placeholder,multiple:a.multiple,separator:"||",data:[],escapeMarkup:function(e){return e},formatResult:function(e,t,i,a){var n=$.fn.select2.defaults.formatResult(e,t,i,a);return e.description&&(n+=' <span class="select2-result-description">'+e.description+"</span>"),n}},r=this.get_value(i);if(a.multiple){var l=i.attr("name");o.formatSelection=function(e,t){var i='<input type="hidden" class="select2-search-choice-hidden" name="'+l+'" value="'+e.id+'"'+(s.prop("disabled")?'disabled="disabled"':"")+" />";return t.parent().append(i),e.text}}else r=acf.maybe_get(r,0,!1),!a.allow_null&&r&&s.val(r.id);a.allow_null&&i.find('option[value=""]').remove(),o.data=this.get_data(i),o.initSelection=function(e,t){t(r)},a.ajax&&(o.ajax={url:acf.get("ajaxurl"),dataType:"json",type:"post",cache:!1,quietMillis:250,data:function(t,i){var o={term:t,page:i};return e.get_ajax_data(a,o,s,n)},results:function(i,a){var n={page:a};return setTimeout(function(){t.merge_results()},1),e.get_ajax_results(i,n)}}),o.dropdownCss={"z-index":"999999999"},o.acf=a,o=acf.apply_filters("select2_args",o,i,a,n),s.select2(o);var c=s.select2("container");c.before(i),c.before(s),a.multiple&&c.find("ul.select2-choices").sortable({start:function(){s.select2("onSortStart")},stop:function(){s.select2("onSortEnd")}}),i.prop("disabled",!0).addClass("acf-disabled acf-hidden"),s.on("change",function(t){t.added&&e.add_option(i,t.added.id,t.added.text),e.select_option(i,t.val)}),acf.do_action("select2_init",s,o,a,n)}},merge_results:function(){var e="",t=null;$("#select2-drop .select2-result-with-children").each(function(){var i=$(this).children(".select2-result-label"),a=$(this).children(".select2-result-sub");return i.text()==e?(t.append(a.children()),void $(this).remove()):(e=i.text(),void(t=a))})},destroy:function(e){var t=e.siblings("input");t.data("select2")&&t.select2("destroy"),e.siblings(".select2-container").remove(),e.prop("disabled",!1).removeClass("acf-disabled acf-hidden"),t.attr("style","")},add_value:function(t,i,a){e.add_option(t,i,a),e.select_option(t,i);var n=t.siblings("input"),s={id:i,text:a};if(!t.data("multiple"))return n.select2("data",s);var o=n.select2("data")||[];return o.push(s),n.select2("data",o)},remove_value:function(t,i){e.unselect_option(t,i);var a=t.siblings("input"),n=a.select2("data");t.data("multiple")?(n=$.grep(n,function(e){return e.id!=i}),a.select2("data",n)):n&&n.id==i&&a.select2("data",null)}},i=e.version4={init:function(t,a,n){a=a||{},n=n||null,a=$.extend({allow_null:!1,placeholder:"",multiple:!1,ajax:!1,ajax_action:""},a);var s=t.siblings("input");if(s.exists()){var o={width:"100%",allowClear:a.allow_null,placeholder:a.placeholder,multiple:a.multiple,separator:"||",data:[],escapeMarkup:function(e){return e}},r=this.get_value(t);a.multiple?$.each(r,function(e,i){i.$el.detach().appendTo(t)}):r=acf.maybe_get(r,0,""),a.ajax?o.ajax={url:acf.get("ajaxurl"),delay:250,dataType:"json",type:"post",cache:!1,data:function(i){return e.get_ajax_data(a,i,t,n)},processResults:function(t,a){var n=e.get_ajax_results(t,a);return n.more&&(n.pagination={more:!0}),setTimeout(function(){i.merge_results()},1),n}}:(t.removeData("ajax"),t.removeAttr("data-ajax")),o=acf.apply_filters("select2_args",o,t,a,n),t.select2(o);var l=t.next(".select2-container");if(a.multiple){var c=l.find("ul");c.sortable({stop:function(e){c.find(".select2-selection__choice").each(function(){var e=$($(this).data("data").element);e.detach().appendTo(t),s.trigger("change")})}}),t.on("select2:select",function(e){var i=$(e.params.data.element);i.detach().appendTo(t)})}s.val(""),l.addClass("-acf"),acf.do_action("select2_init",t,o,a,n)}},merge_results:function(){var e=null,t=null;$('.select2-results__option[role="group"]').each(function(){var i=$(this).children("ul"),a=$(this).children("strong");return null!==t&&a.text()==t.text()?(e.append(i.children()),void $(this).remove()):(e=i,void(t=a))})},add_value:function(t,i,a){e.add_option(t,i,a),e.select_option(t,i)},remove_value:function(t,i){e.unselect_option(t,i)},destroy:function(e){e.data("select2")&&e.select2("destroy"),e.siblings(".select2-container").remove()}},acf.add_select2=function(t,i){e.init(t,i)},acf.remove_select2=function(t){e.destroy(t)}}(jQuery),function($){acf.fields.select=acf.field.extend({type:"select",$select:null,actions:{ready:"render",append:"render",remove:"remove"},focus:function(){this.$select=this.$field.find("select"),this.$select.exists()&&(this.o=acf.get_data(this.$select),this.o=acf.parse_args(this.o,{ajax_action:"acf/fields/"+this.type+"/query",key:this.$field.data("key")}))},render:function(){return!(!this.$select.exists()||!this.o.ui)&&void acf.select2.init(this.$select,this.o,this.$field)},remove:function(){return!(!this.$select.exists()||!this.o.ui)&&void acf.select2.destroy(this.$select)}}),acf.fields.user=acf.fields.select.extend({type:"user"}),acf.fields.post_object=acf.fields.select.extend({type:"post_object"}),acf.fields.page_link=acf.fields.select.extend({type:"page_link"})}(jQuery),function($){acf.fields.tab=acf.field.extend({type:"tab",$el:null,$wrap:null,actions:{prepare:"initialize",append:"initialize",hide:"hide",show:"show"},focus:function(){this.$el=this.$field.find(".acf-tab"),this.o=this.$el.data(),this.o.key=this.$field.data("key"),this.o.text=this.$el.html()},initialize:function(){this.$field.is("td")||e.add_tab(this.$field,this.o)},hide:function(e,t){if("conditional_logic"==t){var i=e.data("key"),a=e.prevAll(".acf-tab-wrap"),n=a.find('a[data-key="'+i+'"]'),s=n.parent();a.exists()&&(s.addClass("hidden-by-conditional-logic"),setTimeout(function(){e.nextUntil(".acf-field-tab",".acf-field").each(function(){$(this).hasClass("hidden-by-conditional-logic")||(acf.conditional_logic.hide_field($(this)),$(this).addClass("-hbcl-"+i))}),s.hasClass("active")&&a.find("li:not(.hidden-by-conditional-logic):first a").trigger("click")},0))}},show:function(e,t){if("conditional_logic"==t){var i=e.data("key"),a=e.prevAll(".acf-tab-wrap"),n=a.find('a[data-key="'+i+'"]'),s=n.parent();a.exists()&&(s.removeClass("hidden-by-conditional-logic"),setTimeout(function(){e.siblings(".acf-field.-hbcl-"+i).each(function(){acf.conditional_logic.show_field($(this)),$(this).removeClass("-hbcl-"+i)});var t=s.siblings(".active");t.exists()&&!t.hasClass("hidden-by-conditional-logic")||n.trigger("click")},0))}}});var e=acf.model.extend({actions:{"prepare 15":"render","append 15":"render","refresh 15":"render"},events:{"click .acf-tab-button":"_click"},render:function(e){$(".acf-tab-wrap",e).each(function(){var e=$(this),t=e.parent();if(e.find("li.active").exists()||e.find("li:not(.hidden-by-conditional-logic):first a").trigger("click"),t.hasClass("-sidebar")){var i=t.is("td")?"height":"min-height",a=e.position().top+e.children("ul").outerHeight(!0)-1;t.css(i,a)}})},add_group:function(e,t){var i=e.parent(),a="";return i.hasClass("acf-fields")&&"left"==t.placement?i.addClass("-sidebar"):t.placement="top",a=i.is("tbody")?'<tr class="acf-tab-wrap"><td colspan="2"><ul class="acf-hl acf-tab-group"></ul></td></tr>':'<div class="acf-tab-wrap -'+t.placement+'"><ul class="acf-hl acf-tab-group"></ul></div>',$group=$(a),e.before($group),$group},add_tab:function(e,t){var i=e.siblings(".acf-tab-wrap").last();i.exists()?t.endpoint&&(i=this.add_group(e,t)):i=this.add_group(e,t);var a=$('<li><a class="acf-tab-button" href="#" data-key="'+t.key+'">'+t.text+"</a></li>");""===t.text&&a.hide(),i.find("ul").append(a),e.hasClass("hidden-by-conditional-logic")&&a.addClass("hidden-by-conditional-logic")},_click:function(e){e.preventDefault();var t=this,i=e.$el,a=i.closest(".acf-tab-wrap"),n=i.data("key"),s="";i.parent().addClass("active").siblings().removeClass("active"),a.nextUntil(".acf-tab-wrap",".acf-field").each(function(){var e=$(this);return("tab"!=e.data("type")||(s=e.data("key"),!e.hasClass("endpoint")))&&void(s===n?e.hasClass("hidden-by-tab")&&(e.removeClass("hidden-by-tab"),acf.do_action("show_field",$(this),"tab")):e.hasClass("hidden-by-tab")||(e.addClass("hidden-by-tab"),acf.do_action("hide_field",$(this),"tab")))}),acf.do_action("refresh",a.parent()),i.trigger("blur")}}),t=acf.model.extend({active:1,actions:{invalid_field:"invalid_field"},invalid_field:function(e){if(this.active&&e.hasClass("hidden-by-tab")){var t=this,i=e.prevAll(".acf-field-tab:first"),a=e.prevAll(".acf-tab-wrap:first");a.find('a[data-key="'+i.data("key")+'"]').trigger("click"),this.active=0,setTimeout(function(){t.active=1},1e3)}}})}(jQuery),function($){acf.fields.time_picker=acf.field.extend({type:"time_picker",$el:null,$input:null,$hidden:null,o:{},actions:{ready:"initialize",append:"initialize"},events:{'blur input[type="text"]':"blur"},focus:function(){this.$el=this.$field.find(".acf-time-picker"),this.$input=this.$el.find('input[type="text"]'),this.$hidden=this.$el.find('input[type="hidden"]'),this.o=acf.get_data(this.$el)},initialize:function(){if("undefined"!=typeof $.timepicker){var e={timeFormat:this.o.time_format,altField:this.$hidden,altFieldTimeOnly:!1,altTimeFormat:"HH:mm:ss",showButtonPanel:!0,controlType:"select",oneLine:!0,closeText:acf._e("date_time_picker","selectText")};e.onClose=function(e,t){var i=t.dpDiv,a=i.find(".ui-datepicker-close");if(!e&&a.is(":hover")){if(e=acf.maybe_get(t,"settings.timepicker.formattedTime"),!e)return;$.datepicker._setTime(t)}},e=acf.apply_filters("time_picker_args",e,this.$field),this.$input.timepicker(e),$("body > #ui-datepicker-div").exists()&&$("body > #ui-datepicker-div").wrap('<div class="acf-ui-datepicker" />'),acf.do_action("time_picker_init",this.$input,e,this.$field)}},blur:function(){this.$input.val()||this.$hidden.val("")}})}(jQuery),function($){acf.fields.true_false=acf.field.extend({type:"true_false",$switch:null,$input:null,actions:{prepare:"render",append:"render",show:"render"},events:{"change .acf-switch-input":"_change","focus .acf-switch-input":"_focus","blur .acf-switch-input":"_blur","keypress .acf-switch-input":"_keypress"},focus:function(){this.$input=this.$field.find(".acf-switch-input"),this.$switch=this.$field.find(".acf-switch")},render:function(){if(this.$switch.exists()){var e=this.$switch.children(".acf-switch-on"),t=this.$switch.children(".acf-switch-off");width=Math.max(e.width(),t.width()),width&&(e.css("min-width",width),t.css("min-width",width))}},on:function(){this.$input.prop("checked",!0),this.$switch.addClass("-on")},off:function(){this.$input.prop("checked",!1),this.$switch.removeClass("-on")},_change:function(e){var t=e.$el.prop("checked");t?this.on():this.off()},_focus:function(e){this.$switch.addClass("-focus")},_blur:function(e){this.$switch.removeClass("-focus")},_keypress:function(e){return 37===e.keyCode?this.off():39===e.keyCode?this.on():void 0}})}(jQuery),function($){acf.fields.taxonomy=acf.field.extend({type:"taxonomy",$el:null,actions:{ready:"render",append:"render",remove:"remove"},events:{'click a[data-name="add"]':"add_term"},focus:function(){this.$el=this.$field.find(".acf-taxonomy-field"),this.o=acf.get_data(this.$el,{save:"",type:"",taxonomy:""}),this.o.key=this.$field.data("key")},render:function(){var e=this.$field.find("select");if(e.exists()){var t=acf.get_data(e);t=acf.parse_args(t,{pagination:!0,ajax_action:"acf/fields/taxonomy/query",key:this.o.key}),acf.select2.init(e,t)}},remove:function(){var e=this.$field.find("select");return!!e.exists()&&void acf.select2.destroy(e)},add_term:function(e){var t=this;acf.open_popup({title:e.$el.attr("title")||e.$el.data("title"),loading:!0,height:220});var i=acf.prepare_for_ajax({action:"acf/fields/taxonomy/add_term",field_key:this.o.key});$.ajax({url:acf.get("ajaxurl"),data:i,type:"post",dataType:"html",success:function(e){t.add_term_confirm(e)}})},add_term_confirm:function(e){var t=this;acf.update_popup({content:e}),$('#acf-popup input[name="term_name"]').focus(),$("#acf-popup form").on("submit",function(e){e.preventDefault(),t.add_term_submit($(this))})},add_term_submit:function(e){var t=this,i=e.find(".acf-submit"),a=e.find('input[name="term_name"]'),n=e.find('select[name="term_parent"]');if(""===a.val())return a.focus(),!1;i.find("button").attr("disabled","disabled"),i.find(".acf-spinner").addClass("is-active");var s=acf.prepare_for_ajax({action:"acf/fields/taxonomy/add_term",field_key:this.o.key,term_name:a.val(),term_parent:n.exists()?n.val():0});$.ajax({url:acf.get("ajaxurl"),data:s,type:"post",dataType:"json",success:function(e){var n=acf.get_ajax_message(e);acf.is_ajax_success(e)&&(a.val(""),t.append_new_term(e.data)),n.text&&i.find("span").html(n.text)},complete:function(){i.find("button").removeAttr("disabled"),i.find(".acf-spinner").removeClass("is-active"),i.find("span").delay(1500).fadeOut(250,function(){$(this).html(""),$(this).show()}),a.focus()}})},append_new_term:function(e){var t={id:e.term_id,text:e.term_label};switch($('.acf-taxonomy-field[data-taxonomy="'+this.o.taxonomy+'"]').each(function(){var t=$(this).data("type");if("radio"==t||"checkbox"==t){var i=$(this).children('input[type="hidden"]'),a=$(this).find("ul:first"),n=i.attr("name");"checkbox"==t&&(n+="[]");var s=$(['<li data-id="'+e.term_id+'">',"<label>",'<input type="'+t+'" value="'+e.term_id+'" name="'+n+'" /> ',"<span>"+e.term_label+"</span>","</label>","</li>"].join(""));if(e.term_parent){var o=a.find('li[data-id="'+e.term_parent+'"]');a=o.children("ul"),a.exists()||(a=$('<ul class="children acf-bl"></ul>'),o.append(a))}a.append(s)}}),$("#acf-popup #term_parent").each(function(){var t=$('<option value="'+e.term_id+'">'+e.term_label+"</option>");e.term_parent?$(this).children('option[value="'+e.term_parent+'"]').after(t):$(this).append(t)}),this.o.type){case"select":var i=this.$el.children("select");acf.select2.add_value(i,e.term_id,e.term_label);break;case"multi_select":var i=this.$el.children("select");acf.select2.add_value(i,e.term_id,e.term_label);break;case"checkbox":case"radio":var a=this.$el.find(".categorychecklist-holder"),n=a.find('li[data-id="'+e.term_id+'"]'),s=a.get(0).scrollTop+(n.offset().top-a.offset().top);n.find("input").prop("checked",!0),a.animate({scrollTop:s},"250")}}})}(jQuery),function($){acf.fields.url=acf.field.extend({type:"url",$input:null,actions:{ready:"render",append:"render"},events:{'keyup input[type="url"]':"render"},focus:function(){this.$input=this.$field.find('input[type="url"]')},is_valid:function(){var e=this.$input.val();if(e.indexOf("://")!==-1);else if(0!==e.indexOf("//"))return!1;return!0},render:function(){this.is_valid()?this.$input.parent().addClass("-valid"):this.$input.parent().removeClass("-valid")}})}(jQuery),function($){acf.validation=acf.model.extend({actions:{ready:"ready",append:"ready"},filters:{validation_complete:"validation_complete"},events:{"click #save-post":"click_ignore",'click [type="submit"]':"click_publish","submit form":"submit_form","click .acf-error-message a":"click_message"},active:1,ignore:0,busy:0,valid:!0,errors:[],error_class:"acf-error",message_class:"acf-error-message",$trigger:null,ready:function(e){var t=$(".acf-field input, .acf-field textarea, .acf-field select");if(t.length){var i=this;t.on("invalid",function(e){var t=$(this),i=acf.get_field_wrap(t);acf.do_action("invalid",t),acf.do_action("invalid_field",i),acf.validation.ignore||(e.preventDefault(),acf.validation.errors.push({input:t.attr("name"),message:e.target.validationMessage}),acf.validation.fetch(t.closest("form")))})}},validation_complete:function(e,t){if(!this.errors.length)return e;e.valid=0,e.errors=e.errors||[];var a=[];if(e.errors.length)for(i in e.errors)a.push(e.errors[i].input);if(this.errors.length)for(i in this.errors){var n=this.errors[i];$.inArray(n.input,a)===-1&&e.errors.push(n)}return this.errors=[],e},click_message:function(e){e.preventDefault(),acf.remove_el(e.$el.parent())},click_ignore:function(e){var t=this;this.ignore=1,this.$trigger=e.$el,this.$form=e.$el.closest("form"),$("."+this.message_class).each(function(){acf.remove_el($(this))}),this.ignore_required_inputs(),setTimeout(function(){t.ignore=0},100)},ignore_required_inputs:function(){var e=$(".acf-field input[required], .acf-field textarea[required], .acf-field select[required]");e.length&&(e.prop("required",!1),setTimeout(function(){e.prop("required",!0)},100))},click_publish:function(e){this.$trigger=e.$el},submit_form:function(e){if(!this.active)return!0;if(this.ignore)return this.ignore=0,!0;if(!e.$el.find("#acf-form-data").exists())return!0;var t=e.$el.find("#wp-preview");return t.exists()&&t.val()?(this.toggle(e.$el,"unlock"),!0):(e.preventDefault(),void this.fetch(e.$el))},toggle:function(e,t){t=t||"unlock";var i=null,a=null,n=$("#submitdiv");n.exists()||(n=$("#submitpost")),n.exists()||(n=e.find("p.submit").last()),n.exists()||(n=e.find(".acf-form-submit")),n.exists()||(n=e),i=n.find('input[type="submit"], .button'),a=n.find(".spinner, .acf-spinner"),this.hide_spinner(a),"unlock"==t?this.enable_submit(i):"lock"==t&&(this.disable_submit(i),this.show_spinner(a.last()))},fetch:function(e){if(this.busy)return!1;var t=this;acf.do_action("validation_begin");var i=acf.serialize(e);i.action="acf/validate_save_post",i=acf.prepare_for_ajax(i),this.busy=1,this.toggle(e,"lock"),$.ajax({url:acf.get("ajaxurl"),data:i,type:"post",dataType:"json",success:function(i){acf.is_ajax_success(i)&&t.fetch_success(e,i.data)},complete:function(){t.fetch_complete(e)}})},fetch_complete:function(e){if(this.busy=0,this.toggle(e,"unlock"),this.valid){this.ignore=1;var t=e.children(".acf-error-message");t.exists()&&(t.addClass("-success"),t.children("p").html(acf._e("validation_successful")),setTimeout(function(){acf.remove_el(t)},2e3)),e.find(".acf-postbox.acf-hidden").remove(),acf.do_action("submit",e),this.$trigger?this.$trigger.click():e.submit(),this.toggle(e,"lock")}},fetch_success:function(e,t){return t=acf.apply_filters("validation_complete",t,e),t&&!t.valid&&t.errors?(acf.do_action("validation_failure"),this.valid=!1,this.$trigger=null,void this.display_errors(t.errors,e)):(this.valid=!0,void acf.do_action("validation_success"))},display_errors:function(e,t){if(e&&e.length){var a=t.children(".acf-error-message"),n=acf._e("validation_failed"),s=0,o=null;for(i=0;i<e.length;i++){var r=e[i];if(r.input){var l=t.find('[name="'+r.input+'"]').first();if(l.exists()||(l=t.find('[name^="'+r.input+'"]').first()),l.exists()){s++;var c=acf.get_field_wrap(l);this.add_error(c,r.message),null===o&&(o=c)}}else n+=". "+r.message}1==s?n+=". "+acf._e("validation_failed_1"):s>1&&(n+=". "+acf._e("validation_failed_2").replace("%d",s)),a.exists()||(a=$('<div class="acf-error-message"><p></p><a href="#" class="acf-icon -cancel small"></a></div>'),t.prepend(a)),a.children("p").html(n),null===o&&(o=a),setTimeout(function(){$("html, body").animate({scrollTop:o.offset().top-$(window).height()/2},500)},10)}},add_error:function(e,t){var i=this;e.addClass(this.error_class),void 0!==t&&(e.children(".acf-input").children("."+this.message_class).remove(),e.children(".acf-input").prepend('<div class="'+this.message_class+'"><p>'+t+"</p></div>"));var a=function(){i.remove_error(e),e.off("focus change","input, textarea, select",a)};e.on("focus change","input, textarea, select",a),acf.do_action("add_field_error",e),acf.do_action("invalid_field",e)},remove_error:function(e){var t=e.children(".acf-input").children("."+this.message_class);e.removeClass(this.error_class),setTimeout(function(){acf.remove_el(t)},250),acf.do_action("remove_field_error",e),acf.do_action("valid_field",e)},add_warning:function(e,t){this.add_error(e,t),setTimeout(function(){acf.validation.remove_error(e)},1e3)},show_spinner:function(e){if(e.exists()){var t=acf.get("wp_version");parseFloat(t)>=4.2?e.addClass("is-active"):e.css("display","inline-block")}},hide_spinner:function(e){if(e.exists()){var t=acf.get("wp_version");parseFloat(t)>=4.2?e.removeClass("is-active"):e.css("display","none")}},disable_submit:function(e){e.exists()&&e.addClass("disabled button-disabled button-primary-disabled")},enable_submit:function(e){e.exists()&&e.removeClass("disabled button-disabled button-primary-disabled")}})}(jQuery),function($){acf.fields.wysiwyg=acf.field.extend({type:"wysiwyg",$el:null,$textarea:null,toolbars:{},events:{"mousedown .acf-editor-wrap.delay":"mousedown"},actions:{load:"initialize",append:"initialize",remove:"disable",sortstart:"disable",sortstop:"enable"},focus:function(){this.$el=this.$field.find(".wp-editor-wrap").last(),this.$textarea=this.$el.find("textarea"),this.o=acf.get_data(this.$el,{toolbar:"",active:this.$el.hasClass("tmce-active"),id:this.$textarea.attr("id")})},mousedown:function(e){e.preventDefault(),this.$el.removeClass("delay"),this.$el.find(".acf-editor-toolbar").remove(),this.initialize()},initialize:function(){if(!this.$el.hasClass("delay")){var e={tinymce:!0,quicktags:!0,toolbar:this.o.toolbar,mode:this.o.active?"visual":"text"},t=this.o.id,i=acf.get_uniqid("acf-editor-"),a=this.$el.outerHTML();a=acf.str_replace(t,i,a),this.$el.replaceWith(a),this.o.id=i,acf.tinymce.initialize(this.o.id,e,this.$field)}},disable:function(){acf.tinymce.destroy(this.o.id)},enable:function(){this.o.active&&acf.tinymce.enable(this.o.id)}}),acf.tinymce=acf.model.extend({toolbars:{},actions:{ready:"ready"},ready:function(){var e=$("#acf-hidden-wp-editor");e.exists()&&(e.appendTo("body"),acf.isset(window,"tinymce","on")&&tinymce.on("AddEditor",function(e){var t=e.editor;"acf"===t.id.substr(0,3)&&(t=tinymce.editors.content||t,tinymce.activeEditor=t,wpActiveEditor=t.id)}))},defaults:function(){if("undefined"==typeof tinyMCEPreInit)return!1;var e={tinymce:tinyMCEPreInit.mceInit.acf_content,quicktags:tinyMCEPreInit.qtInit.acf_content};return e},initialize:function(e,t,i){t=t||{},i=i||null,t=acf.parse_args(t,{tinymce:!0,quicktags:!0,toolbar:"full",mode:"visual"}),t.tinymce&&this.initialize_tinymce(e,t,i),t.quicktags&&this.initialize_quicktags(e,t,i)},initialize_tinymce:function(e,t,i){var a=$("#"+e),n=this.defaults(),s=this.toolbars;if("undefined"==typeof tinymce)return!1;if(!n)return!1;if(tinymce.get(e))return this.enable(e);init=$.extend({},n.tinymce,t.tinymce),init.id=e,init.selector="#"+e;var o=t.toolbar;if(o&&"undefined"!=typeof s[o])for(var r=1;r<=4;r++)init["toolbar"+r]=s[o][r]||"";if(init.setup=function(t){t.on("focus",function(e){acf.validation.remove_error(i)}),t.on("change",function(e){t.save(),a.trigger("change")}),$(t.getWin()).on("unload",function(){acf.tinymce.remove(e)})},init.wp_autoresize_on=!1,init=acf.apply_filters("wysiwyg_tinymce_settings",init,e,i),tinyMCEPreInit.mceInit[e]=init,"visual"==t.mode){tinymce.init(init);var l=tinymce.get(e);acf.do_action("wysiwyg_tinymce_init",l,l.id,init,i)}},initialize_quicktags:function(e,t,i){var a=this.defaults();if("undefined"==typeof quicktags)return!1;if(!a)return!1;init=$.extend({},a.quicktags,t.quicktags),init.id=e,init=acf.apply_filters("wysiwyg_quicktags_settings",init,init.id,i),tinyMCEPreInit.qtInit[e]=init;var n=quicktags(init);this.build_quicktags(n),acf.do_action("wysiwyg_quicktags_init",n,n.id,init,i)},build_quicktags:function(e){var t,i,a,n,s,e,o,r,l,c=",strong,em,link,block,del,ins,img,ul,ol,li,code,more,close,";t=e.canvas,i=e.name,a=e.settings,s="",n={},l="",a.buttons&&(l=","+a.buttons+",");for(r in edButtons)edButtons[r]&&(o=edButtons[r].id,l&&c.indexOf(","+o+",")!==-1&&l.indexOf(","+o+",")===-1||edButtons[r].instance&&edButtons[r].instance!==instanceId||(n[o]=edButtons[r],edButtons[r].html&&(s+=edButtons[r].html(i+"_"))));l&&l.indexOf(",dfw,")!==-1&&(n.dfw=new QTags.DFWButton,s+=n.dfw.html(i+"_")),"rtl"===document.getElementsByTagName("html")[0].dir&&(n.textdirection=new QTags.TextDirectionButton,s+=n.textdirection.html(i+"_")),e.toolbar.innerHTML=s,e.theButtons=n,"undefined"!=typeof jQuery&&jQuery(document).triggerHandler("quicktags-init",[e])},disable:function(e){this.destroy(e)},destroy:function(e){this.destroy_tinymce(e)},destroy_tinymce:function(e){if("undefined"==typeof tinymce)return!1;var t=tinymce.get(e);return!!t&&(t.save(),t.destroy(),!0)},enable:function(e){this.enable_tinymce(e)},enable_tinymce:function(e){return"undefined"!=typeof switchEditors&&("undefined"!=typeof tinyMCEPreInit.mceInit[e]&&(switchEditors.go(e,"tmce"),!0))}})}(jQuery);
1
+ !function(e,t){"use strict";var i=function(){function e(){return u}function t(e,t,i,a){return"string"==typeof e&&"function"==typeof t&&(i=parseInt(i||10,10),l("actions",e,t,i,a)),f}function i(){var e=Array.prototype.slice.call(arguments),t=e.shift();return"string"==typeof t&&d("actions",t,e),f}function a(e,t){return"string"==typeof e&&r("actions",e,t),f}function n(e,t,i,a){return"string"==typeof e&&"function"==typeof t&&(i=parseInt(i||10,10),l("filters",e,t,i,a)),f}function s(){var e=Array.prototype.slice.call(arguments),t=e.shift();return"string"==typeof t?d("filters",t,e):f}function o(e,t){return"string"==typeof e&&r("filters",e,t),f}function r(e,t,i,a){if(u[e][t])if(i){var n=u[e][t],s;if(a)for(s=n.length;s--;){var o=n[s];o.callback===i&&o.context===a&&n.splice(s,1)}else for(s=n.length;s--;)n[s].callback===i&&n.splice(s,1)}else u[e][t]=[]}function l(e,t,i,a,n){var s={callback:i,priority:a,context:n},o=u[e][t];o?(o.push(s),o=c(o)):o=[s],u[e][t]=o}function c(e){for(var t,i,a,n=1,s=e.length;n<s;n++){for(t=e[n],i=n;(a=e[i-1])&&a.priority>t.priority;)e[i]=e[i-1],--i;e[i]=t}return e}function d(e,t,i){var a=u[e][t];if(!a)return"filters"===e&&i[0];var n=0,s=a.length;if("filters"===e)for(;n<s;n++)i[0]=a[n].callback.apply(a[n].context,i);else for(;n<s;n++)a[n].callback.apply(a[n].context,i);return"filters"!==e||i[0]}var f={removeFilter:o,applyFilters:s,addFilter:n,removeAction:a,doAction:i,addAction:t,storage:e},u={actions:{},filters:{}};return f};e.wp=e.wp||{},e.wp.hooks=new i}(window);var acf;!function($){$.fn.exists=function(){return $(this).length>0},$.fn.outerHTML=function(){return $(this).get(0).outerHTML},acf={l10n:{},o:{},update:function(e,t){this.o[e]=t},get:function(e){return void 0!==this.o[e]?this.o[e]:null},_e:function(e,t){t=t||!1;var i=this.l10n[e]||"";return t&&(i=i[t]||""),i},add_action:function(){for(var e=arguments[0].split(" "),t=e.length,i=0;i<t;i++)arguments[0]="acf/"+e[i],wp.hooks.addAction.apply(this,arguments);return this},remove_action:function(){return arguments[0]="acf/"+arguments[0],wp.hooks.removeAction.apply(this,arguments),this},do_action:function(){return arguments[0]="acf/"+arguments[0],wp.hooks.doAction.apply(this,arguments),this},add_filter:function(){return arguments[0]="acf/"+arguments[0],wp.hooks.addFilter.apply(this,arguments),this},remove_filter:function(){return arguments[0]="acf/"+arguments[0],wp.hooks.removeFilter.apply(this,arguments),this},apply_filters:function(){return arguments[0]="acf/"+arguments[0],wp.hooks.applyFilters.apply(this,arguments)},get_selector:function(e){e=e||"";var t=".acf-field";if($.isPlainObject(e))if($.isEmptyObject(e))e="";else for(k in e){e=e[k];break}return e&&(t+="-"+e,t=t.split("_").join("-"),t=t.split("field-field-").join("field-")),t},get_fields:function(e,t,i){e=e||"",t=t||!1,i=i||!1;var a=this.get_selector(e),n=$(a,t);return!1!==t&&t.each(function(){$(this).is(a)&&(n=n.add($(this)))}),i||(n=n.not(".acf-clone .acf-field"),n=acf.apply_filters("get_fields",n)),n},get_field:function(e,t){e=e||"",t=t||!1;var i=this.get_fields(e,t,!0);return!!i.exists()&&i.first()},get_closest_field:function(e,t){return t=t||"",e.closest(this.get_selector(t))},get_field_wrap:function(e){return e.closest(this.get_selector())},get_field_key:function(e){return e.data("key")},get_field_type:function(e){return e.data("type")},get_data:function(e,t){var i=e.data();return"object"==typeof t&&(i=this.parse_args(i,t)),i},get_uniqid:function(e,t){void 0===e&&(e="");var i,a=function(e,t){return e=parseInt(e,10).toString(16),t<e.length?e.slice(e.length-t):t>e.length?Array(t-e.length+1).join("0")+e:e};return this.php_js||(this.php_js={}),this.php_js.uniqidSeed||(this.php_js.uniqidSeed=Math.floor(123456789*Math.random())),this.php_js.uniqidSeed++,i=e,i+=a(parseInt((new Date).getTime()/1e3,10),8),i+=a(this.php_js.uniqidSeed,5),t&&(i+=(10*Math.random()).toFixed(8).toString()),i},serialize_form:function(){return this.serialize.apply(this,arguments)},serialize:function(e,t){t=t||"";var i={},a={},n=e.find("select, textarea, input").serializeArray();return $.each(n,function(e,n){var s=n.name,o=n.value;if(t){if(0!==s.indexOf(t))return;s=s.slice(t.length),"["==s.slice(0,1)&&(s=s.slice(1).replace("]",""))}"[]"===s.slice(-2)&&(s=s.slice(0,-2),void 0===a[s]&&(a[s]=-1),a[s]++,s+="["+a[s]+"]"),i[s]=o}),i},disable:function(e,t){if(t=t||"",e.hasClass("acf-disabled"))return!1;if(e.prop("disabled",!0),t){var i=e.data("acf_disabled")||[];i.indexOf(t)<0&&(i.push(t),e.data("acf_disabled",i))}return!0},enable:function(e,t){if(t=t||"",e.hasClass("acf-disabled"))return!1;var i=e.data("acf_disabled")||[];if(t){var a=i.indexOf(t);a>-1&&(i.splice(a,1),e.data("acf_disabled",i))}return!i.length&&(e.prop("disabled",!1),!0)},disable_el:function(e,t){t=t||"",e.find("select, textarea, input").each(function(){acf.disable($(this),t)})},disable_form:function(e,t){this.disable_el.apply(this,arguments)},enable_el:function(e,t){t=t||"",e.find("select, textarea, input").each(function(){acf.enable($(this),t)})},enable_form:function(e,t){this.enable_el.apply(this,arguments)},remove_tr:function(e,t){var i=e.height(),a=e.children().length;e.addClass("acf-remove-element"),setTimeout(function(){e.removeClass("acf-remove-element"),e.html('<td style="padding:0; height:'+i+'px" colspan="'+a+'"></td>'),e.children("td").animate({height:0},250,function(){e.remove(),"function"==typeof t&&t()})},250)},remove_el:function(e,t,i){i=i||0;var a=e.height(),n=e.width(),s=e.css("margin"),o=e.outerHeight(!0);acf.do_action("remove",e),e.wrap('<div class="acf-temp-remove" style="height:'+o+'px"></div>');var r=e.parent();e.css({height:a,width:n,margin:s,position:"absolute"}),setTimeout(function(){r.css({opacity:0,height:i})},50),setTimeout(function(){r.remove(),"function"==typeof t&&t.apply(this,arguments)},301)},isset:function(){var e=arguments,t=e.length,a=null,n;if(0===t)throw new Error("Empty isset");for(a=e[0],i=1;i<t;i++){if(e[i]===n||a[e[i]]===n)return!1;a=a[e[i]]}return!0},maybe_get:function(e,t,i){void 0===i&&(i=null),keys=String(t).split(".");for(var a in keys){var t=keys[a];if(void 0===e[t])return i;e=e[t]}return e},open_popup:function(e){if($popup=$("body > #acf-popup"),$popup.exists())return update_popup(e);var t=['<div id="acf-popup">','<div class="acf-popup-box acf-box">','<div class="title"><h3></h3><a href="#" class="acf-icon -cancel grey acf-close-popup"></a></div>','<div class="inner"></div>','<div class="loading"><i class="acf-loading"></i></div>',"</div>",'<div class="bg"></div>',"</div>"].join("");return $("body").append(t),$("#acf-popup").on("click",".bg, .acf-close-popup",function(e){e.preventDefault(),acf.close_popup()}),this.update_popup(e)},update_popup:function(e){return $popup=$("#acf-popup"),!!$popup.exists()&&(e=$.extend({},{title:"",content:"",width:0,height:0,loading:!1},e),e.title&&$popup.find(".title h3").html(e.title),e.content&&($inner=$popup.find(".inner:first"),$inner.html(e.content),acf.do_action("append",$inner),$inner.attr("style","position: relative;"),e.height=$inner.outerHeight(),$inner.removeAttr("style")),e.width&&$popup.find(".acf-popup-box").css({width:e.width,"margin-left":0-e.width/2}),e.height&&(e.height+=44,$popup.find(".acf-popup-box").css({height:e.height,"margin-top":0-e.height/2})),e.loading?$popup.find(".loading").show():$popup.find(".loading").hide(),$popup)},close_popup:function(){$popup=$("#acf-popup"),$popup.exists()&&$popup.remove()},update_user_setting:function(e,t){$.ajax({url:acf.get("ajaxurl"),dataType:"html",type:"post",data:acf.prepare_for_ajax({action:"acf/update_user_setting",name:e,value:t})})},prepare_for_ajax:function(e){var t={};return $.each(e,function(e,i){$.isPlainObject(i)&&!$.isEmptyObject(i)?$.each(i,function(i,a){i+="";var n=i.indexOf("[");i=0==n?e+i:n>0?e+"["+i.slice(0,n)+"]"+i.slice(n):e+"["+i+"]",t[i]=a}):t[e]=i}),t.nonce=acf.get("nonce"),t.post_id=acf.get("post_id"),t=acf.apply_filters("prepare_for_ajax",t)},is_ajax_success:function(e){return!(!e||!e.success)},get_ajax_message:function(e){var t={text:"",type:"error"};return e?(e.success&&(t.type="success"),e.data&&e.data.message&&(t.text=e.data.message),e.data&&e.data.error&&(t.text=e.data.error),t):t},is_in_view:function(e){var t=e.offset().top,i=t+e.height();if(t===i)return!1;var a=$(window).scrollTop();return i<=a+$(window).height()&&t>=a},val:function(e,t){var i=e.val();e.val(t),t!=i&&e.trigger("change")},str_replace:function(e,t,i){return i.split(e).join(t)},str_sanitize:function(e){var t={"À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","Æ":"AE","Ç":"C","È":"E","É":"E","Ê":"E","Ë":"E","Ì":"I","Í":"I","Î":"I","Ï":"I","Ð":"D","Ñ":"N","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","Ù":"U","Ú":"U","Û":"U","Ü":"U","Ý":"Y","ß":"s","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","æ":"ae","ç":"c","è":"e","é":"e","ê":"e","ë":"e","ì":"i","í":"i","î":"i","ï":"i","ñ":"n","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","ù":"u","ú":"u","û":"u","ü":"u","ý":"y","ÿ":"y","Ā":"A","ā":"a","Ă":"A","ă":"a","Ą":"A","ą":"a","Ć":"C","ć":"c","Ĉ":"C","ĉ":"c","Ċ":"C","ċ":"c","Č":"C","č":"c","Ď":"D","ď":"d","Đ":"D","đ":"d","Ē":"E","ē":"e","Ĕ":"E","ĕ":"e","Ė":"E","ė":"e","Ę":"E","ę":"e","Ě":"E","ě":"e","Ĝ":"G","ĝ":"g","Ğ":"G","ğ":"g","Ġ":"G","ġ":"g","Ģ":"G","ģ":"g","Ĥ":"H","ĥ":"h","Ħ":"H","ħ":"h","Ĩ":"I","ĩ":"i","Ī":"I","ī":"i","Ĭ":"I","ĭ":"i","Į":"I","į":"i","İ":"I","ı":"i","IJ":"IJ","ij":"ij","Ĵ":"J","ĵ":"j","Ķ":"K","ķ":"k","Ĺ":"L","ĺ":"l","Ļ":"L","ļ":"l","Ľ":"L","ľ":"l","Ŀ":"L","ŀ":"l","Ł":"l","ł":"l","Ń":"N","ń":"n","Ņ":"N","ņ":"n","Ň":"N","ň":"n","ʼn":"n","Ō":"O","ō":"o","Ŏ":"O","ŏ":"o","Ő":"O","ő":"o","Œ":"OE","œ":"oe","Ŕ":"R","ŕ":"r","Ŗ":"R","ŗ":"r","Ř":"R","ř":"r","Ś":"S","ś":"s","Ŝ":"S","ŝ":"s","Ş":"S","ş":"s","Š":"S","š":"s","Ţ":"T","ţ":"t","Ť":"T","ť":"t","Ŧ":"T","ŧ":"t","Ũ":"U","ũ":"u","Ū":"U","ū":"u","Ŭ":"U","ŭ":"u","Ů":"U","ů":"u","Ű":"U","ű":"u","Ų":"U","ų":"u","Ŵ":"W","ŵ":"w","Ŷ":"Y","ŷ":"y","Ÿ":"Y","Ź":"Z","ź":"z","Ż":"Z","ż":"z","Ž":"Z","ž":"z","ſ":"s","ƒ":"f","Ơ":"O","ơ":"o","Ư":"U","ư":"u","Ǎ":"A","ǎ":"a","Ǐ":"I","ǐ":"i","Ǒ":"O","ǒ":"o","Ǔ":"U","ǔ":"u","Ǖ":"U","ǖ":"u","Ǘ":"U","ǘ":"u","Ǚ":"U","ǚ":"u","Ǜ":"U","ǜ":"u","Ǻ":"A","ǻ":"a","Ǽ":"AE","ǽ":"ae","Ǿ":"O","ǿ":"o"," ":"_","'":"","?":"","/":"","\\":"",".":"",",":"","`":"",">":"","<":"",'"':"","[":"","]":"","|":"","{":"","}":"","(":"",")":""},i=/\W/g,a=function(e){return void 0!==t[e]?t[e]:e};return e=e.replace(i,a),e=e.toLowerCase()},addslashes:function(e){return e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&")},esc_html:function(e){var t={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;","/":"&#x2F;","`":"&#x60;","=":"&#x3D;"};return String(e).replace(/[&<>"'`=\/]/g,function(e){return t[e]})},render_select:function(e,t){var i=e.val();e.html(""),t&&$.each(t,function(t,a){var n=e;a.group&&(n=e.find('optgroup[label="'+a.group+'"]'),n.exists()||(n=$('<optgroup label="'+a.group+'"></optgroup>'),e.append(n))),n.append('<option value="'+a.value+'">'+acf.esc_html(a.label)+"</option>"),i==a.value&&e.prop("selectedIndex",t)})},duplicate:function(e){void 0!==e.length&&(e={$el:e}),e=acf.parse_args(e,{$el:!1,search:"",replace:"",before:function(e){},after:function(e,t){},append:function(e,t){e.after(t)}});var t=e.$el,i;e.search||(e.search=t.attr("data-id")),e.replace||(e.replace=acf.get_uniqid()),e.before.apply(this,[t]),acf.do_action("before_duplicate",t);var i=t.clone();return i.removeClass("acf-clone"),acf.do_action("remove",i),e.search&&(i.attr("data-id",e.replace),i.find('[id*="'+e.search+'"]').each(function(){$(this).attr("id",$(this).attr("id").replace(e.search,e.replace))}),i.find('[name*="'+e.search+'"]').each(function(){$(this).attr("name",$(this).attr("name").replace(e.search,e.replace))}),i.find('label[for*="'+e.search+'"]').each(function(){$(this).attr("for",$(this).attr("for").replace(e.search,e.replace))})),i.find(".ui-sortable").removeClass("ui-sortable"),acf.do_action("after_duplicate",t,i),e.after.apply(this,[t,i]),e.append.apply(this,[t,i]),setTimeout(function(){acf.do_action("append",i)},1),i},decode:function(e){return $("<textarea/>").html(e).text()},parse_args:function(e,t){return"object"!=typeof e&&(e={}),"object"!=typeof t&&(t={}),$.extend({},t,e)},enqueue_script:function(e,t){var i=document.createElement("script");i.type="text/javascript",i.src=e,i.async=!0,i.readyState?i.onreadystatechange=function(){"loaded"!=i.readyState&&"complete"!=i.readyState||(i.onreadystatechange=null,t())}:i.onload=function(){t()},document.body.appendChild(i)}},acf.model={actions:{},filters:{},events:{},extend:function(e){var t=$.extend({},this,e);return $.each(t.actions,function(e,i){t._add_action(e,i)}),$.each(t.filters,function(e,i){t._add_filter(e,i)}),$.each(t.events,function(e,i){t._add_event(e,i)}),t},_add_action:function(e,t){var i=this,a=e.split(" "),e=a[0]||"",n=a[1]||10;acf.add_action(e,i[t],n,i)},_add_filter:function(e,t){var i=this,a=e.split(" "),e=a[0]||"",n=a[1]||10;acf.add_filter(e,i[t],n,i)},_add_event:function(e,t){var i=this,a=e.indexOf(" "),n=a>0?e.substr(0,a):e,s=a>0?e.substr(a+1):"",o=function(e){e.$el=$(this),"function"==typeof i.event&&(e=i.event(e)),i[t].apply(i,arguments)};s?$(document).on(n,s,o):$(document).on(n,o)},get:function(e,t){return t=t||null,void 0!==this[e]&&(t=this[e]),t},set:function(e,t){return this[e]=t,"function"==typeof this["_set_"+e]&&this["_set_"+e].apply(this),this}},acf.field=acf.model.extend({type:"",o:{},$field:null,_add_action:function(e,t){var i=this;e=e+"_field/type="+i.type,acf.add_action(e,function(e){i.set("$field",e),i[t].apply(i,arguments)})},_add_filter:function(e,t){var i=this;e=e+"_field/type="+i.type,acf.add_filter(e,function(e){i.set("$field",e),i[t].apply(i,arguments)})},_add_event:function(e,t){var i=this,a=e.substr(0,e.indexOf(" ")),n=e.substr(e.indexOf(" ")+1),s=acf.get_selector(i.type);$(document).on(a,s+" "+n,function(e){var a=$(this),n=acf.get_closest_field(a,i.type);n.length&&(n.is(i.$field)||i.set("$field",n),e.$el=a,e.$field=n,i[t].apply(i,[e]))})},_set_$field:function(){"function"==typeof this.focus&&this.focus()},doFocus:function(e){return this.set("$field",e)}}),acf.fields=acf.model.extend({actions:{prepare:"_prepare",prepare_field:"_prepare_field",ready:"_ready",ready_field:"_ready_field",append:"_append",append_field:"_append_field",load:"_load",load_field:"_load_field",remove:"_remove",remove_field:"_remove_field",sortstart:"_sortstart",sortstart_field:"_sortstart_field",sortstop:"_sortstop",sortstop_field:"_sortstop_field",show:"_show",show_field:"_show_field",hide:"_hide",hide_field:"_hide_field"},_prepare:function(e){acf.get_fields("",e).each(function(){acf.do_action("prepare_field",$(this))})},_prepare_field:function(e){acf.do_action("prepare_field/type="+e.data("type"),e)},_ready:function(e){acf.get_fields("",e).each(function(){acf.do_action("ready_field",$(this))})},_ready_field:function(e){acf.do_action("ready_field/type="+e.data("type"),e)},_append:function(e){acf.get_fields("",e).each(function(){acf.do_action("append_field",$(this))})},_append_field:function(e){acf.do_action("append_field/type="+e.data("type"),e)},_load:function(e){acf.get_fields("",e).each(function(){acf.do_action("load_field",$(this))})},_load_field:function(e){acf.do_action("load_field/type="+e.data("type"),e)},_remove:function(e){acf.get_fields("",e).each(function(){acf.do_action("remove_field",$(this))})},_remove_field:function(e){acf.do_action("remove_field/type="+e.data("type"),e)},_sortstart:function(e,t){acf.get_fields("",e).each(function(){acf.do_action("sortstart_field",$(this),t)})},_sortstart_field:function(e,t){acf.do_action("sortstart_field/type="+e.data("type"),e,t)},_sortstop:function(e,t){acf.get_fields("",e).each(function(){acf.do_action("sortstop_field",$(this),t)})},_sortstop_field:function(e,t){acf.do_action("sortstop_field/type="+e.data("type"),e,t)},_hide:function(e,t){acf.get_fields("",e).each(function(){acf.do_action("hide_field",$(this),t)})},_hide_field:function(e,t){acf.do_action("hide_field/type="+e.data("type"),e,t)},_show:function(e,t){acf.get_fields("",e).each(function(){acf.do_action("show_field",$(this),t)})},_show_field:function(e,t){acf.do_action("show_field/type="+e.data("type"),e,t)}}),$(document).ready(function(){acf.do_action("ready",$("body"))}),$(window).on("load",function(){acf.do_action("load",$("body"))}),acf.layout=acf.model.extend({actions:{"refresh 99":"refresh"},refresh:function(e){e=e||$("body"),this.render_tables(e),this.render_groups(e)},render_tables:function(e){var t=this,i=e.find(".acf-table:visible");e.is("table")?i=i.add(e):e.is("tr")&&(i=i.add(e.closest("table"))),i.each(function(){t.render_table($(this))})},render_table:function(e){var t=e.find("> thead th.acf-th"),i=1,a=100;if(t.exists()){var n=e.find("> tbody > tr"),s=n.find("> td.acf-field");n.hasClass("acf-clone")&&n.length>1&&(s=n.not(".acf-clone").find("> td.acf-field")),t.each(function(){var e=$(this),t=e.attr("data-key"),i=s.filter('[data-key="'+t+'"]');i.removeClass("appear-empty"),e.removeClass("hidden-by-conditional-logic"),i.exists()&&(0==i.not(".hidden-by-conditional-logic").length?e.addClass("hidden-by-conditional-logic"):i.filter(".hidden-by-conditional-logic").addClass("appear-empty"))}),t.css("width","auto"),t=t.not(".hidden-by-conditional-logic"),i=t.length,t.filter("[data-width]").each(function(){var e=parseInt($(this).attr("data-width"));a-=e,$(this).css("width",e+"%")}),t=t.not("[data-width]"),t.each(function(){var e=a/t.length;$(this).css("width",e+"%")}),e.find(".acf-row .acf-field.-collapsed-target").removeAttr("colspan"),e.find(".acf-row.-collapsed .acf-field.-collapsed-target").attr("colspan",i)}},render_groups:function(e){var t=this,i=e.find(".acf-fields:visible");e&&e.is(".acf-fields")&&(i=i.add(e)),i.each(function(){t.render_group($(this))})},render_group:function(e){var t=$(),i=0,a=0,n=-1,s=e.children(".acf-field[data-width]:visible");if(s.exists()){if(e.hasClass("-left"))return s.removeAttr("data-width"),void s.css("width","auto");s.removeClass("-r0 -c0").css({"min-height":0}),s.each(function(e){var s=$(this),o=s.position().top;0==e&&(i=o),o!=i&&(t.css({"min-height":a+1+"px"}),t=$(),i=s.position().top,a=0,n=-1),n++,a=s.outerHeight()>a?s.outerHeight():a,t=t.add(s),0==o?s.addClass("-r0"):0==n&&s.addClass("-c0")}),t.exists()&&t.css({"min-height":a+1+"px"})}}}),$(document).on("change",".acf-field input, .acf-field textarea, .acf-field select",function(){var e=$("#_acf_changed");e.length&&e.val(1),acf.do_action("change",$(this))}),$(document).on("click",'.acf-field a[href="#"]',function(e){e.preventDefault()}),acf.unload=acf.model.extend({locked:1,active:1,changed:0,filters:{validation_complete:"validation_complete"},actions:{ready:"ready",change:"on"},ready:function(){setTimeout(function(){acf.unload.locked=0},1e3)},events:{"submit form":"off"},validation_complete:function(e,t){return e&&e.errors&&this.on(),e},on:function(){this.changed||!this.active||this.locked||(this.changed=1,$(window).on("beforeunload",this.unload))},off:function(){this.changed=0,$(window).off("beforeunload",this.unload)},unload:function(){return acf._e("unload")}}),acf.tooltip=acf.model.extend({events:{"mouseenter .acf-js-tooltip":"_on","mouseup .acf-js-tooltip":"_off","mouseleave .acf-js-tooltip":"_off"},tooltip:function(e,t){var i=$('<div class="acf-tooltip">'+e+"</div>");$("body").append(i);var a=10;target_w=t.outerWidth(),target_h=t.outerHeight(),target_t=t.offset().top,target_l=t.offset().left,tooltip_w=i.outerWidth(),tooltip_h=i.outerHeight();var n=target_t-tooltip_h,s=target_l+target_w/2-tooltip_w/2;return s<10?(i.addClass("right"),s=target_l+target_w,n=target_t+target_h/2-tooltip_h/2):s+tooltip_w+10>$(window).width()?(i.addClass("left"),s=target_l-tooltip_w,n=target_t+target_h/2-tooltip_h/2):n-$(window).scrollTop()<10?(i.addClass("bottom"),n=target_t+target_h):i.addClass("top"),i.css({top:n,left:s}),i},temp:function(e,t){var t=this.tooltip(e,t),i=0;i+=250,setTimeout(function(){t.addClass("acf-fade-up")},i),i+=250,setTimeout(function(){t.remove()},i)},confirm:function(e,t,i,a,n){i=i||acf._e("are_you_sure"),a=a||'<a href="#" class="acf-confirm-y">'+acf._e("yes")+"</a>",n=n||'<a href="#" class="acf-confirm-n">'+acf._e("No")+"</a>";var s=this.tooltip(i+" "+a+" "+n,e);s.addClass("-confirm");var o=function(i,a){i.preventDefault(),i.stopImmediatePropagation(),e.off("click",r),s.off("click",".acf-confirm-y",r),s.off("click",".acf-confirm-n",l),$("body").off("click",l),s.remove(),t.apply(null,[a])},r=function(e){o(e,!0)},l=function(e){o(e,!1)};s.on("click",".acf-confirm-y",r),s.on("click",".acf-confirm-n",l),e.on("click",r),$("body").on("click",l)},confirm_remove:function(e,t){text=!1,button_y='<a href="#" class="acf-confirm-y -red">'+acf._e("remove")+"</a>",button_n='<a href="#" class="acf-confirm-n">'+acf._e("cancel")+"</a>",this.confirm(e,t,!1,button_y,button_n)},_on:function(e){var t=e.$el.attr("title");if(t){var i=this.tooltip(t,e.$el);e.$el.data("acf-tooltip",{title:t,$el:i}),e.$el.attr("title","")}},_off:function(e){var t=e.$el.data("acf-tooltip");t&&(t.$el.remove(),e.$el.attr("title",t.title))}}),acf.postbox=acf.model.extend({events:{"mouseenter .acf-postbox .handlediv":"on","mouseleave .acf-postbox .handlediv":"off"},on:function(e){e.$el.siblings(".hndle").addClass("hover")},off:function(e){e.$el.siblings(".hndle").removeClass("hover")},render:function(e){e=$.extend({},{id:"",key:"",style:"default",label:"top",edit_url:"",edit_title:"",visibility:!0},e);var t=$("#"+e.id),i=$("#"+e.id+"-hide"),a=i.parent();t.addClass("acf-postbox"),a.addClass("acf-postbox-toggle"),t.removeClass("hide-if-js"),a.removeClass("hide-if-js"),"default"!==e.style&&t.addClass(e.style),t.children(".inside").addClass("acf-fields").addClass("-"+e.label),e.visibility?i.prop("checked",!0):(t.addClass("acf-hidden"),a.addClass("acf-hidden")),e.edit_url&&t.children(".hndle").append('<a href="'+e.edit_url+'" class="dashicons dashicons-admin-generic acf-hndle-cog acf-js-tooltip" title="'+e.edit_title+'"></a>')}});var e=acf.model.extend({events:{"click .acf-panel-title":"_click"},_click:function(e){e.preventDefault(),this.toggle(e.$el.parent())},is_open:function(e){return e.hasClass("-open")},toggle:function(e){this.is_open(e)?this.close(e):this.open(e)},open:function(e){e.addClass("-open"),e.find(".acf-panel-title i").attr("class","dashicons dashicons-arrow-down")},close:function(e){e.removeClass("-open"),e.find(".acf-panel-title i").attr("class","dashicons dashicons-arrow-right")}});acf.notice=acf.model.extend({actions:{prepare:"prepare"},prepare:function(){var e=$(".acf-notice");e.length&&$("h1:first").after(e)},html:function(e,t){},success:function(e){},error:function(e){},warning:function(e){},information:function(e){}});var t=localStorage.getItem("acf");t=t?JSON.parse(t):{};var a=function(e){return"this."===e.substr(0,5)&&(e=e.substr(5)+"-"+acf.get("post_id")),e};acf.getPreference=function(e){return e=a(e),t[e]||null},acf.setPreference=function(e,i){e=a(e),null===i?delete t[e]:t[e]=i,localStorage.setItem("acf",JSON.stringify(t))},acf.removePreference=function(e){acf.setPreference(e,null)},$(document).on("sortstart",function(e,t){acf.do_action("sortstart",t.item,t.placeholder)}),$(document).on("sortstop",function(e,t){acf.do_action("sortstop",t.item,t.placeholder)}),acf.add_action("sortstart",function(e,t){e.is("tr")&&(e.css("position","relative"),e.children().each(function(){$(this).width($(this).width())}),e.css("position","absolute"),t.html('<td style="height:'+e.height()+'px; padding:0;" colspan="'+e.children("td").length+'"></td>'))}),acf.add_action("before_duplicate",function(e){e.find("select option:selected").addClass("selected")}),acf.add_action("after_duplicate",function(e,t){t.find("select").each(function(){var e=$(this),t=[];e.find("option.selected").each(function(){t.push($(this).val())}),e.val(t)}),e.find("select option.selected").removeClass("selected"),t.find("select option.selected").removeClass("selected")}),Array.prototype.indexOf||(Array.prototype.indexOf=function(e){return $.inArray(e,this)})}(jQuery),function($){acf.ajax=acf.model.extend({active:!1,actions:{ready:"ready"},events:{"change #page_template":"_change_template","change #parent_id":"_change_parent","change #post-formats-select input":"_change_format","change .categorychecklist input":"_change_term","change .categorychecklist select":"_change_term",'change .acf-taxonomy-field[data-save="1"] input':"_change_term",'change .acf-taxonomy-field[data-save="1"] select':"_change_term"},o:{},xhr:null,update:function(e,t){return this.o[e]=t,this},get:function(e){return this.o[e]||null},ready:function(){this.update("post_id",acf.get("post_id")),this.active=!0},fetch:function(){if(this.active&&acf.get("ajax")){this.xhr&&this.xhr.abort();var e=this,t=this.o;t.action="acf/post/get_field_groups",t.exists=[],$(".acf-postbox").not(".acf-hidden").each(function(){t.exists.push($(this).attr("id").substr(4))}),this.xhr=$.ajax({url:acf.get("ajaxurl"),data:acf.prepare_for_ajax(t),type:"post",dataType:"json",success:function(t){acf.is_ajax_success(t)&&e.render(t.data)}})}},render:function(e){$(".acf-postbox").addClass("acf-hidden"),$(".acf-postbox-toggle").addClass("acf-hidden"),$("#acf-style").html(""),$.each(e,function(e,t){var i=$("#acf-"+t.key),a=$("#acf-"+t.key+"-hide"),n=a.parent();i.removeClass("acf-hidden hide-if-js").show(),n.removeClass("acf-hidden hide-if-js").show(),a.prop("checked",!0);var s=i.find(".acf-replace-with-fields");s.exists()&&(s.replaceWith(t.html),acf.do_action("append",i)),0===e&&$("#acf-style").html(t.style),i.find(".acf-hidden-by-postbox").prop("disabled",!1)}),$(".acf-postbox.acf-hidden").find("select, textarea, input").not(":disabled").each(function(){$(this).addClass("acf-hidden-by-postbox").prop("disabled",!0)})},sync_taxonomy_terms:function(){var e=[""];$(".categorychecklist, .acf-taxonomy-field").each(function(){var t=$(this),i=t.find('input[type="checkbox"]').not(":disabled"),a=t.find('input[type="radio"]').not(":disabled"),n=t.find("select").not(":disabled"),s=t.find('input[type="hidden"]').not(":disabled");t.is(".acf-taxonomy-field")&&"1"!=t.attr("data-save")||t.closest(".media-frame").exists()||(i.exists()?i.filter(":checked").each(function(){e.push($(this).val())}):a.exists()?a.filter(":checked").each(function(){e.push($(this).val())}):n.exists()?n.find("option:selected").each(function(){e.push($(this).val())}):s.exists()&&s.each(function(){$(this).val()&&e.push($(this).val())}))}),e=e.filter(function(e,t,i){return i.indexOf(e)==t}),this.update("post_taxonomy",e).fetch()},_change_template:function(e){var t=e.$el.val();this.update("page_template",t).fetch()},_change_parent:function(e){var t="parent",i=0;""!=e.$el.val()&&(t="child",i=e.$el.val()),this.update("page_type",t).update("page_parent",i).fetch()},_change_format:function(e){var t=e.$el.val();"0"==t&&(t="standard"),this.update("post_format",t).fetch()},_change_term:function(e){var t=this;e.$el.closest(".media-frame").exists()||setTimeout(function(){t.sync_taxonomy_terms()},1)}})}(jQuery),function($){acf.fields.button_group=acf.field.extend({type:"button_group",$div:null,events:{'click input[type="radio"]':"click"},focus:function(){this.$div=this.$field.find(".acf-button-group"),this.o=acf.get_data(this.$div,{allow_null:0})},click:function(e){var t=e.$el,i=t.parent("label"),a=i.hasClass("selected");this.$div.find(".selected").removeClass("selected"),i.addClass("selected"),this.o.allow_null&&a&&(e.$el.prop("checked",!1),i.removeClass("selected"),e.$el.trigger("change"))}})}(jQuery),function($){acf.fields.checkbox=acf.field.extend({type:"checkbox",events:{"change input":"_change","click .acf-add-checkbox":"_add"},focus:function(){this.$ul=this.$field.find("ul"),this.$input=this.$field.find('input[type="hidden"]')},add:function(){var e=this.$input.attr("name")+"[]",t='<li><input class="acf-checkbox-custom" type="checkbox" checked="checked" /><input type="text" name="'+e+'" /></li>';this.$ul.find(".acf-add-checkbox").parent("li").before(t)},_change:function(e){var t=this.$ul,i=t.find('input[type="checkbox"]').not(".acf-checkbox-toggle"),a=e.$el.is(":checked");if(e.$el.hasClass("acf-checkbox-toggle"))return void i.prop("checked",a).trigger("change");if(e.$el.hasClass("acf-checkbox-custom")){var n=e.$el.next('input[type="text"]');e.$el.next('input[type="text"]').prop("disabled",!a),a||""!=n.val()||e.$el.parent("li").remove()}if(t.find(".acf-checkbox-toggle").exists()){var a=0==i.not(":checked").length;t.find(".acf-checkbox-toggle").prop("checked",a)}},_add:function(e){this.add()}})}(jQuery),function($){acf.fields.color_picker=acf.field.extend({type:"color_picker",$input:null,$hidden:null,actions:{ready:"initialize",append:"initialize"},focus:function(){this.$input=this.$field.find('input[type="text"]'),this.$hidden=this.$field.find('input[type="hidden"]')},initialize:function(){var e=this.$input,t=this.$hidden,i=function(){setTimeout(function(){acf.val(t,e.val())},1)},a={defaultColor:!1,palettes:!0,hide:!0,change:i,clear:i},a=acf.apply_filters("color_picker_args",a,this.$field);this.$input.wpColorPicker(a)}})}(jQuery),function($,e){var t="hidden-by-conditional-logic",i=acf.conditional_logic=acf.model.extend({conditions:{},triggers:{},$parent:!1,actions:{"prepare 20":"render","append 20":"render",change:"change"},add:function(e,t){for(var i in t){var a=t[i];for(var n in a){var s=a[n];this.addTrigger(s.field,e)}}this.setCondition(e,t)},getTrigger:function(e){return this.triggers[e]||null},setTrigger:function(e,t){this.triggers[e]=t},addTrigger:function(e,t){var i=this.getTrigger(e)||{};i[t]=1,this.setTrigger(e,i)},getConditions:function(){return this.conditions},getCondition:function(e){return this.conditions[e]||null},setCondition:function(e,t){this.conditions[e]=t},render:function(e){e=e||!1;var t=acf.get_fields("",e,!0);this.renderFields(t),acf.do_action("refresh",e)},findTarget:function(e,t){var i=this;this.$parent=!1;var a=acf.get_fields(t,!1,!0);return!!a.length&&(a.length>1&&e.parents(".acf-row, .acf-table, .acf-fields").each(function(){var e=$(this),t=e.find(a);if(t.length)return a=t,i.$parent=e,!1}),a)},change:function(e){var t=acf.get_field_wrap(e),i=t.data("key"),a=this.getTrigger(i);if(!a)return!1;for(var n in a){var s=this.findTarget(t,n);this.renderFields(s)}acf.do_action("refresh",this.$parent)},renderFields:function(e){var t=this;e.each(function(){t.renderField($(this))})},renderField:function(e){var t=!1,i=e.data("key"),a=this.getCondition(i);if(!a)return!1;for(var n=0;n<a.length;n++){for(var s=a[n],o=!0,r=0;r<s.length;r++){var l=s[r],c=this.findTarget(e,l.field);if(!this.calculate(l,c,e)){o=!1;break}}if(o){t=!0;break}}t?this.showField(e):this.hideField(e)},showField:function(e){var i=e.data("key");e.removeClass(t),acf.enable_form(e,"condition-"+i),acf.do_action("show_field",e,"conditional_logic")},hideField:function(e){var i=e.data("key");e.addClass(t),acf.disable_form(e,"condition-"+i),acf.do_action("hide_field",e,"conditional_logic")},calculate:function(e,t,i){if(!t||!i)return!1;var a=!1,n=t.data("type");return"true_false"==n||"checkbox"==n||"radio"==n||"button_group"==n?a=this.calculate_checkbox(e,t):"select"==n&&(a=this.calculate_select(e,t)),"!="===e.operator&&(a=!a),a},calculate_checkbox:function(e,t){var i=t.find('input[value="'+e.value+'"]:checked').exists();return""!==e.value||t.find("input:checked").exists()||(i=!0),i},calculate_select:function(e,t){var i=t.find("select"),a=i.val();return a||$.isNumeric(a)||(a=""),$.isArray(a)||(a=[a]),match=$.inArray(e.value,a)>-1,match}});i.show_field=i.showField,i.hide_field=i.hideField}(jQuery),function($){acf.datepicker=acf.model.extend({actions:{"ready 1":"ready"},ready:function(){var e=acf.get("locale"),t=acf.get("rtl");l10n=acf._e("date_picker"),l10n&&void 0!==$.datepicker&&(l10n.isRTL=t,$.datepicker.regional[e]=l10n,$.datepicker.setDefaults(l10n))},init:function(e,t){void 0!==$.datepicker&&(t=t||{},e.datepicker(t),$("body > #ui-datepicker-div").exists()&&$("body > #ui-datepicker-div").wrap('<div class="acf-ui-datepicker" />'))},destroy:function(e){}}),
2
+ acf.fields.date_picker=acf.field.extend({type:"date_picker",$el:null,$input:null,$hidden:null,o:{},actions:{ready:"initialize",append:"initialize"},events:{'blur input[type="text"]':"blur"},focus:function(){this.$el=this.$field.find(".acf-date-picker"),this.$input=this.$el.find('input[type="text"]'),this.$hidden=this.$el.find('input[type="hidden"]'),this.o=acf.get_data(this.$el)},initialize:function(){if(this.o.save_format)return this.initialize2();var e={dateFormat:this.o.date_format,altField:this.$hidden,altFormat:"yymmdd",changeYear:!0,yearRange:"-100:+100",changeMonth:!0,showButtonPanel:!0,firstDay:this.o.first_day};e=acf.apply_filters("date_picker_args",e,this.$field),acf.datepicker.init(this.$input,e),acf.do_action("date_picker_init",this.$input,e,this.$field)},initialize2:function(){this.$input.val(this.$hidden.val());var e={dateFormat:this.o.date_format,altField:this.$hidden,altFormat:this.o.save_format,changeYear:!0,yearRange:"-100:+100",changeMonth:!0,showButtonPanel:!0,firstDay:this.o.first_day};e=acf.apply_filters("date_picker_args",e,this.$field);var t=e.dateFormat;e.dateFormat=this.o.save_format,acf.datepicker.init(this.$input,e),this.$input.datepicker("option","dateFormat",t),acf.do_action("date_picker_init",this.$input,e,this.$field)},blur:function(){this.$input.val()||this.$hidden.val("")}})}(jQuery),function($){acf.datetimepicker=acf.model.extend({actions:{"ready 1":"ready"},ready:function(){var e=acf.get("locale"),t=acf.get("rtl");l10n=acf._e("date_time_picker"),l10n&&void 0!==$.timepicker&&(l10n.isRTL=t,$.timepicker.regional[e]=l10n,$.timepicker.setDefaults(l10n))},init:function(e,t){void 0!==$.timepicker&&(t=t||{},e.datetimepicker(t),$("body > #ui-datepicker-div").exists()&&$("body > #ui-datepicker-div").wrap('<div class="acf-ui-datepicker" />'))},destroy:function(e){}}),acf.fields.date_time_picker=acf.field.extend({type:"date_time_picker",$el:null,$input:null,$hidden:null,o:{},actions:{ready:"initialize",append:"initialize"},events:{'blur input[type="text"]':"blur"},focus:function(){this.$el=this.$field.find(".acf-date-time-picker"),this.$input=this.$el.find('input[type="text"]'),this.$hidden=this.$el.find('input[type="hidden"]'),this.o=acf.get_data(this.$el)},initialize:function(){var e={dateFormat:this.o.date_format,timeFormat:this.o.time_format,altField:this.$hidden,altFieldTimeOnly:!1,altFormat:"yy-mm-dd",altTimeFormat:"HH:mm:ss",changeYear:!0,yearRange:"-100:+100",changeMonth:!0,showButtonPanel:!0,firstDay:this.o.first_day,controlType:"select",oneLine:!0};e=acf.apply_filters("date_time_picker_args",e,this.$field),acf.datetimepicker.init(this.$input,e),acf.do_action("date_time_picker_init",this.$input,e,this.$field)},blur:function(){this.$input.val()||this.$hidden.val("")}})}(jQuery),function($){acf.fields.file=acf.field.extend({type:"file",$el:null,$input:null,actions:{ready:"initialize",append:"initialize"},events:{'click a[data-name="add"]':"add",'click a[data-name="edit"]':"edit",'click a[data-name="remove"]':"remove",'change input[type="file"]':"change"},focus:function(){this.$el=this.$field.find(".acf-file-uploader"),this.$input=this.$el.find('input[type="hidden"]'),this.o=acf.get_data(this.$el)},initialize:function(){"basic"==this.o.uploader&&this.$el.closest("form").attr("enctype","multipart/form-data")},prepare:function(e){if(e=e||{},e._valid)return e;var t={url:"",alt:"",title:"",filename:"",filesizeHumanReadable:"",icon:"/wp-includes/images/media/default.png"};return e.id&&(t=e.attributes),t._valid=!0,t},render:function(e){e=this.prepare(e),this.$el.find("img").attr({src:e.icon,alt:e.alt,title:e.title}),this.$el.find('[data-name="title"]').text(e.title),this.$el.find('[data-name="filename"]').text(e.filename).attr("href",e.url),this.$el.find('[data-name="filesize"]').text(e.filesizeHumanReadable);var t="";e.id&&(t=e.id),acf.val(this.$input,t),t?this.$el.addClass("has-value"):this.$el.removeClass("has-value")},add:function(){var e=this,t=this.$field,i=acf.get_closest_field(t,"repeater"),a=acf.media.popup({title:acf._e("file","select"),mode:"select",type:"",field:t.data("key"),multiple:i.exists(),library:this.o.library,mime_types:this.o.mime_types,select:function(a,n){if(n>0){var s=t.data("key"),o=t.closest(".acf-row");if(t=!1,o.nextAll(".acf-row:visible").each(function(){if(t=acf.get_field(s,$(this)))return!!t.find(".acf-file-uploader.has-value").exists()&&void(t=!1)}),!t){if(!(o=acf.fields.repeater.doFocus(i).add()))return!1;t=acf.get_field(s,o)}}e.set("$field",t).render(a)}})},edit:function(){var e=this,t=this.$field,i=this.$input.val();if(i)var a=acf.media.popup({title:acf._e("file","edit"),button:acf._e("file","update"),mode:"edit",attachment:i,select:function(i,a){e.set("$field",t).render(i)}})},remove:function(){var e={};this.render(e)},get_file_info:function(e,t){var i=e.val(),a={};if(!i)return void t.val("");a.url=i;var n=e[0].files;if(n.length){var s=n[0];if(a.size=s.size,a.type=s.type,s.type.indexOf("image")>-1){var o=window.URL||window.webkitURL,r=new Image;r.onload=function(){a.width=this.width,a.height=this.height,t.val(jQuery.param(a))},r.src=o.createObjectURL(s)}}t.val(jQuery.param(a))},change:function(e){this.get_file_info(e.$el,this.$input)}})}(jQuery),function($){acf.fields.google_map=acf.field.extend({type:"google_map",url:"",$el:null,$search:null,timeout:null,status:"",geocoder:!1,map:!1,maps:{},$pending:$(),actions:{ready:"initialize",append:"initialize",show:"show"},events:{'click a[data-name="clear"]':"_clear",'click a[data-name="locate"]':"_locate",'click a[data-name="search"]':"_search","keydown .search":"_keydown","keyup .search":"_keyup","focus .search":"_focus","blur .search":"_blur","mousedown .acf-google-map":"_mousedown"},focus:function(){this.$el=this.$field.find(".acf-google-map"),this.$search=this.$el.find(".search"),this.o=acf.get_data(this.$el),this.o.id=this.$el.attr("id"),this.maps[this.o.id]&&(this.map=this.maps[this.o.id])},is_ready:function(){var e=this;return"ready"==this.status||"loading"!=this.status&&(acf.isset(window,"google","maps","places")?(this.status="ready",!0):(acf.isset(window,"google","maps")&&(this.status="ready"),this.url&&(this.status="loading",acf.enqueue_script(this.url,function(){e.status="ready",e.initialize_pending()})),"ready"==this.status))},initialize_pending:function(){var e=this;this.$pending.each(function(){e.set("$field",$(this)).initialize()}),this.$pending=$()},initialize:function(){if(!this.is_ready())return this.$pending=this.$pending.add(this.$field),!1;this.geocoder||(this.geocoder=new google.maps.Geocoder);var e=this,t=this.$field,i=this.$el;this.$search.val(this.$el.find(".input-address").val());var a=acf.apply_filters("google_map_args",{scrollwheel:!1,zoom:parseInt(this.o.zoom),center:new google.maps.LatLng(this.o.lat,this.o.lng),mapTypeId:google.maps.MapTypeId.ROADMAP},this.$field);if(this.map=new google.maps.Map(this.$el.find(".canvas")[0],a),acf.isset(window,"google","maps","places","Autocomplete")){var n=new google.maps.places.Autocomplete(this.$search[0]);n.bindTo("bounds",this.map),google.maps.event.addListener(n,"place_changed",function(t){var i=this.getPlace();e.search(i)}),this.map.autocomplete=n}var s=acf.apply_filters("google_map_marker_args",{draggable:!0,raiseOnDrag:!0,map:this.map},this.$field);this.map.marker=new google.maps.Marker(s),this.map.$el=i,this.map.$field=t;var o=i.find(".input-lat").val(),r=i.find(".input-lng").val();o&&r&&this.update(o,r).center(),google.maps.event.addListener(this.map.marker,"dragend",function(){var t=this.map.marker.getPosition(),i=t.lat(),a=t.lng();e.update(i,a).sync()}),google.maps.event.addListener(this.map,"click",function(t){var i=t.latLng.lat(),a=t.latLng.lng();e.update(i,a).sync()}),acf.do_action("google_map_init",this.map,this.map.marker,this.$field),this.maps[this.o.id]=this.map},search:function(e){var t=this,i=this.$search.val();if(!i)return!1;this.$el.find(".input-address").val(i);var a=i.split(",");if(2==a.length){var n=a[0],s=a[1];if($.isNumeric(n)&&$.isNumeric(s))return n=parseFloat(n),s=parseFloat(s),void t.update(n,s).center()}if(e&&e.geometry){var n=e.geometry.location.lat(),s=e.geometry.location.lng();return void t.update(n,s).center()}this.$el.addClass("-loading"),t.geocoder.geocode({address:i},function(i,a){if(t.$el.removeClass("-loading"),a!=google.maps.GeocoderStatus.OK)return void console.log("Geocoder failed due to: "+a);if(!i[0])return void console.log("No results found");e=i[0];var n=e.geometry.location.lat(),s=e.geometry.location.lng();t.update(n,s).center()})},update:function(e,t){var i=new google.maps.LatLng(e,t);return acf.val(this.$el.find(".input-lat"),e),acf.val(this.$el.find(".input-lng"),t),this.map.marker.setPosition(i),this.map.marker.setVisible(!0),this.$el.addClass("-value"),this.$field.removeClass("error"),acf.do_action("google_map_change",i,this.map,this.$field),this.$search.blur(),this},center:function(){var e=this.map.marker.getPosition(),t=this.o.lat,i=this.o.lng;e&&(t=e.lat(),i=e.lng());var a=new google.maps.LatLng(t,i);this.map.setCenter(a)},sync:function(){var e=this,t=this.map.marker.getPosition(),i=new google.maps.LatLng(t.lat(),t.lng());return this.$el.addClass("-loading"),this.geocoder.geocode({latLng:i},function(t,i){if(e.$el.removeClass("-loading"),i!=google.maps.GeocoderStatus.OK)return void console.log("Geocoder failed due to: "+i);if(!t[0])return void console.log("No results found");var a=t[0];e.$search.val(a.formatted_address),acf.val(e.$el.find(".input-address"),a.formatted_address)}),this},refresh:function(){if(!this.is_ready())return!1;google.maps.event.trigger(this.map,"resize"),this.center()},show:function(){var e=this,t=this.$field;setTimeout(function(){e.set("$field",t).refresh()},10)},_clear:function(e){this.$el.removeClass("-value -loading -search"),this.$search.val(""),acf.val(this.$el.find(".input-address"),""),acf.val(this.$el.find(".input-lat"),""),acf.val(this.$el.find(".input-lng"),""),this.map.marker.setVisible(!1)},_locate:function(e){var t=this;if(!navigator.geolocation)return alert(acf._e("google_map","browser_support")),this;this.$el.addClass("-loading"),navigator.geolocation.getCurrentPosition(function(e){t.$el.removeClass("-loading");var i=e.coords.latitude,a=e.coords.longitude;t.update(i,a).sync().center()})},_search:function(e){this.search()},_focus:function(e){this.$el.removeClass("-value"),this._keyup()},_blur:function(e){var t=this,i=this.$el.find(".input-address").val();i&&(this.timeout=setTimeout(function(){t.$el.addClass("-value"),t.$search.val(i)},100))},_keydown:function(e){13==e.which&&e.preventDefault()},_keyup:function(e){this.$search.val()?this.$el.addClass("-search"):this.$el.removeClass("-search")},_mousedown:function(e){var t=this;setTimeout(function(){clearTimeout(t.timeout)},1)}})}(jQuery),function($){acf.fields.image=acf.field.extend({type:"image",$el:null,$input:null,$img:null,actions:{ready:"initialize",append:"initialize"},events:{'click a[data-name="add"]':"add",'click a[data-name="edit"]':"edit",'click a[data-name="remove"]':"remove",'change input[type="file"]':"change"},focus:function(){this.$el=this.$field.find(".acf-image-uploader"),this.$input=this.$el.find('input[type="hidden"]'),this.$img=this.$el.find("img"),this.o=acf.get_data(this.$el)},initialize:function(){"basic"==this.o.uploader&&this.$el.closest("form").attr("enctype","multipart/form-data")},prepare:function(e){if(e=e||{},e._valid)return e;var t={url:"",alt:"",title:"",caption:"",description:"",width:0,height:0};return e.id&&(t=e.attributes,t.url=acf.maybe_get(t,"sizes."+this.o.preview_size+".url",t.url)),t._valid=!0,t},render:function(e){e=this.prepare(e),this.$img.attr({src:e.url,alt:e.alt,title:e.title});var t="";e.id&&(t=e.id),acf.val(this.$input,t),t?this.$el.addClass("has-value"):this.$el.removeClass("has-value")},add:function(){var e=this,t=this.$field,i=acf.get_closest_field(this.$field,"repeater"),a=acf.media.popup({title:acf._e("image","select"),mode:"select",type:"image",field:t.data("key"),multiple:i.exists(),library:this.o.library,mime_types:this.o.mime_types,select:function(a,n){if(n>0){var s=t.data("key"),o=t.closest(".acf-row");if(t=!1,o.nextAll(".acf-row:visible").each(function(){if(t=acf.get_field(s,$(this)))return!!t.find(".acf-image-uploader.has-value").exists()&&void(t=!1)}),!t){if(!(o=acf.fields.repeater.doFocus(i).add()))return!1;t=acf.get_field(s,o)}}e.set("$field",t).render(a)}})},edit:function(){var e=this,t=this.$field,i=this.$input.val();if(i)var a=acf.media.popup({title:acf._e("image","edit"),button:acf._e("image","update"),mode:"edit",attachment:i,select:function(i,a){e.set("$field",t).render(i)}})},remove:function(){var e={};this.render(e)},change:function(e){acf.fields.file.get_file_info(e.$el,this.$input)}})}(jQuery),function($){acf.fields.link=acf.field.extend({type:"link",active:!1,$el:null,$node:null,events:{'click a[data-name="add"]':"add",'click a[data-name="edit"]':"edit",'click a[data-name="remove"]':"remove","change .link-node":"change"},focus:function(){this.$el=this.$field.find(".acf-link"),this.$node=this.$el.find(".link-node")},add:function(e){acf.link.open(this.$node)},edit:function(e){this.add()},remove:function(e){this.val("")},change:function(e,t){var i={title:this.$node.html(),url:this.$node.attr("href"),target:this.$node.attr("target")};this.val(i)},val:function(e){e=acf.parse_args(e,{title:"",url:"",target:""}),this.$el.removeClass("-value -external"),e.url&&this.$el.addClass("-value"),"_blank"===e.target&&this.$el.addClass("-external"),this.$el.find(".link-title").html(e.title),this.$el.find(".link-url").attr("href",e.url).html(e.url),this.$el.find(".input-title").val(e.title),this.$el.find(".input-target").val(e.target),this.$el.find(".input-url").val(e.url).trigger("change"),this.$node.html(e.title),this.$node.attr("href",e.url),this.$node.attr("target",e.target)}}),acf.link=acf.model.extend({active:!1,$textarea:null,$node:null,events:{"click #wp-link-submit":"_update","wplink-open":"_open","wplink-close":"_close"},atts:function(e){return void 0!==e?(this.$node.html(e.title),this.$node.attr("href",e.url),this.$node.attr("target",e.target),this.$node.trigger("change",[e]),!0):{title:this.$node.html(),url:this.$node.attr("href"),target:this.$node.attr("target")}},inputs:function(e){return void 0!==e?($("#wp-link-text").val(e.title),$("#wp-link-url").val(e.url),$("#wp-link-target").prop("checked","_blank"===e.target),!0):{title:$("#wp-link-text").val(),url:$("#wp-link-url").val(),target:$("#wp-link-target").prop("checked")?"_blank":""}},open:function(e){var t=$('<textarea id="acf-link-textarea"></textarea>');e.before(t),this.active=!0,this.$node=e,this.$textarea=t;var i=this.atts();wpLink.open("acf-link-textarea",i.url,i.title,null),$("#wp-link-wrap").addClass("has-text-field")},reset:function(){this.active=!1,this.$textarea.remove(),this.$textarea=null,this.$node=null},_select:function(e,t){var i=this.inputs();i.title||(i.title=t.find(".item-title").text(),this.inputs(i),console.log(i))},_open:function(e){if(this.active){var t=this.atts();this.inputs(t)}},_close:function(e){this.active&&setTimeout(function(){acf.link.reset()},100)},_update:function(e){if(this.active){var t=this.inputs();this.atts(t)}}})}(jQuery),function($){acf.media=acf.model.extend({frames:[],mime_types:{},actions:{ready:"ready"},frame:function(){var e=this.frames.length-1;return!(e<0)&&this.frames[e]},destroy:function(e){e.detach(),e.dispose(),e=null,this.frames.pop()},popup:function(e){var t=acf.get("post_id"),i=!1;$.isNumeric(t)||(t=0);var a=acf.parse_args(e,{mode:"select",title:"",button:"",type:"",field:"",mime_types:"",library:"all",multiple:!1,attachment:0,post_id:t,select:function(){}});a.id&&(a.attachment=a.id);var i=this.new_media_frame(a);return this.frames.push(i),setTimeout(function(){i.open()},1),i},_get_media_frame_settings:function(e,t){return"select"===t.mode?e=this._get_select_frame_settings(e,t):"edit"===t.mode&&(e=this._get_edit_frame_settings(e,t)),e},_get_select_frame_settings:function(e,t){return t.type&&(e.library.type=t.type),"uploadedTo"===t.library&&(e.library.uploadedTo=t.post_id),e._button=acf._e("media","select"),e},_get_edit_frame_settings:function(e,t){return e.library.post__in=[t.attachment],e._button=acf._e("media","update"),e},_add_media_frame_events:function(e,t){return e.on("open",function(){this.$el.closest(".media-modal").addClass("acf-media-modal -"+t.mode)},e),e.on("content:render:edit-image",function(){var e=this.state().get("image"),t=new wp.media.view.EditImage({model:e,controller:this}).render();this.content.set(t),t.loadEditor()},e),e.on("toolbar:create:select",function(t){t.view=new wp.media.view.Toolbar.Select({text:e.options._button,controller:this})},e),e.on("select",function(){var i=e.state(),a=i.get("image"),n=i.get("selection");if(a)return void t.select.apply(e,[a,0]);if(n){var s=0;return void n.each(function(i){t.select.apply(e,[i,s]),s++})}}),e.on("close",function(){setTimeout(function(){acf.media.destroy(e)},500)}),"select"===t.mode?e=this._add_select_frame_events(e,t):"edit"===t.mode&&(e=this._add_edit_frame_events(e,t)),e},_add_select_frame_events:function(e,t){var i=this;return acf.isset(_wpPluploadSettings,"defaults","multipart_params")&&(_wpPluploadSettings.defaults.multipart_params._acfuploader=t.field,e.on("open",function(){delete _wpPluploadSettings.defaults.multipart_params._acfuploader})),e.on("content:activate:browse",function(){try{var a=e.content.get().toolbar,n=a.get("filters"),s=a.get("search")}catch(e){return}if("image"==t.type&&(n.filters.all.text=acf._e("image","all"),delete n.filters.audio,delete n.filters.video,$.each(n.filters,function(e,t){null===t.props.type&&(t.props.type="image")})),t.mime_types){var o=t.mime_types.split(" ").join("").split(".").join("").split(",");$.each(o,function(e,t){$.each(i.mime_types,function(e,i){if(-1!==e.indexOf(t)){var a={text:t,props:{status:null,type:i,uploadedTo:null,orderby:"date",order:"DESC"},priority:20};n.filters[i]=a}})})}"uploadedTo"==t.library&&(delete n.filters.unattached,delete n.filters.uploaded,n.$el.parent().append('<span class="acf-uploadedTo">'+acf._e("image","uploadedTo")+"</span>"),$.each(n.filters,function(e,i){i.props.uploadedTo=t.post_id})),$.each(n.filters,function(e,i){i.props._acfuploader=t.field}),s.model.attributes._acfuploader=t.field,"function"==typeof n.refresh&&n.refresh()}),e},_add_edit_frame_events:function(e,t){return e.on("open",function(){this.$el.closest(".media-modal").addClass("acf-expanded"),"browse"!=this.content.mode()&&this.content.mode("browse");var e=this.state(),i=e.get("selection"),a=wp.media.attachment(t.attachment);i.add(a)},e),e},new_media_frame:function(e){var t={title:e.title,multiple:e.multiple,library:{},states:[]};t=this._get_media_frame_settings(t,e);var i=wp.media.query(t.library);acf.isset(i,"mirroring","args")&&(i.mirroring.args._acfuploader=e.field),t.states=[new wp.media.controller.Library({library:i,multiple:t.multiple,title:t.title,priority:20,filterable:"all",editable:!0,allowLocalEdits:!0})],acf.isset(wp,"media","controller","EditImage")&&t.states.push(new wp.media.controller.EditImage);var a=wp.media(t);return a.acf=e,a=this._add_media_frame_events(a,e)},ready:function(){var e=acf.get("wp_version"),t=acf.get("browser"),i=acf.get("post_id");acf.isset(window,"wp","media","view","settings","post")&&$.isNumeric(i)&&(wp.media.view.settings.post.id=i),t&&$("body").addClass("browser-"+t),e&&(e+="",major=e.substr(0,1),$("body").addClass("major-"+major)),acf.isset(window,"wp","media","view")&&(this.customize_Attachment(),this.customize_AttachmentFiltersAll(),this.customize_AttachmentCompat())},customize_Attachment:function(){var e=wp.media.view.Attachment.Library;wp.media.view.Attachment.Library=e.extend({render:function(){var t=acf.media.frame(),i=acf.maybe_get(this,"model.attributes.acf_errors");return t&&i&&this.$el.addClass("acf-disabled"),e.prototype.render.apply(this,arguments)},toggleSelection:function(t){var i=this.collection,a=this.options.selection,n=this.model,s=a.single(),o=acf.media.frame(),r=acf.maybe_get(this,"model.attributes.acf_errors"),l=this.controller.$el.find(".media-frame-content .media-sidebar");if(l.children(".acf-selection-error").remove(),l.children().removeClass("acf-hidden"),o&&r){var c=acf.maybe_get(this,"model.attributes.filename","");return l.children().addClass("acf-hidden"),l.prepend(['<div class="acf-selection-error">','<span class="selection-error-label">'+acf._e("restricted")+"</span>",'<span class="selection-error-filename">'+c+"</span>",'<span class="selection-error-message">'+r+"</span>","</div>"].join("")),a.reset(),void a.single(n)}e.prototype.toggleSelection.apply(this,arguments)}})},customize_AttachmentFiltersAll:function(){wp.media.view.AttachmentFilters.All.prototype.refresh=function(){this.$el.html(_.chain(this.filters).map(function(e,t){return{el:$("<option></option>").val(t).html(e.text)[0],priority:e.priority||50}},this).sortBy("priority").pluck("el").value())}},customize_AttachmentCompat:function(){var e=wp.media.view.AttachmentCompat;wp.media.view.AttachmentCompat=e.extend({add_acf_expand_button:function(){var e=this.$el.closest(".media-modal");if(!e.find(".media-frame-router .acf-expand-details").exists()){var t=$(['<a href="#" class="acf-expand-details">','<span class="is-closed"><span class="acf-icon -left small grey"></span>'+acf._e("expand_details")+"</span>",'<span class="is-open"><span class="acf-icon -right small grey"></span>'+acf._e("collapse_details")+"</span>","</a>"].join(""));t.on("click",function(t){t.preventDefault(),e.hasClass("acf-expanded")?e.removeClass("acf-expanded"):e.addClass("acf-expanded")}),e.find(".media-frame-router").append(t)}},render:function(){if(this.ignore_render)return this;var t=this;return setTimeout(function(){t.add_acf_expand_button()},0),clearTimeout(acf.media.render_timout),acf.media.render_timout=setTimeout(function(){acf.do_action("append",t.$el)},50),e.prototype.render.apply(this,arguments)},dispose:function(){return acf.do_action("remove",this.$el),e.prototype.dispose.apply(this,arguments)},save:function(e){e&&e.preventDefault();var t=acf.serialize(this.$el);this.ignore_render=!0,this.model.saveCompat(t)}})}})}(jQuery),function($){acf.fields.oembed=acf.field.extend({type:"oembed",$el:null,events:{'click [data-name="search-button"]':"_search",'click [data-name="clear-button"]':"_clear",'click [data-name="value-title"]':"_edit",'keypress [data-name="search-input"]':"_keypress",'keyup [data-name="search-input"]':"_keyup",'blur [data-name="search-input"]':"_blur"},focus:function(){this.$el=this.$field.find(".acf-oembed"),this.$search=this.$el.find('[data-name="search-input"]'),this.$input=this.$el.find('[data-name="value-input"]'),this.$title=this.$el.find('[data-name="value-title"]'),this.$embed=this.$el.find('[data-name="value-embed"]'),this.o=acf.get_data(this.$el)},maybe_search:function(){var e=this.$input.val(),t=this.$search.val();if(!t)return void this.clear();t!=e&&this.search()},search:function(){var e=this.$search.val();"http"!=e.substr(0,4)&&(e="http://"+e,this.$search.val(e)),this.$el.addClass("is-loading");var t=acf.prepare_for_ajax({action:"acf/fields/oembed/search",s:e,field_key:this.$field.data("key")});this.$el.data("xhr")&&this.$el.data("xhr").abort();var i=$.ajax({url:acf.get("ajaxurl"),data:t,type:"post",dataType:"json",context:this,success:this.search_success});this.$el.data("xhr",i)},search_success:function(e){var t=this.$search.val();if(this.$el.removeClass("is-loading"),!e||!e.html)return void this.$el.removeClass("has-value").addClass("has-error");this.$el.removeClass("has-error").addClass("has-value"),this.$input.val(t),this.$title.html(t),this.$embed.html(e.html)},clear:function(){this.$el.removeClass("has-error has-value"),this.$el.find('[data-name="search-input"]').val(""),this.$input.val(""),this.$title.html(""),this.$embed.html("")},edit:function(){this.$el.addClass("is-editing"),this.$search.val(this.$title.text()).focus()},blur:function(e){this.$el.removeClass("is-editing"),this.maybe_search()},_search:function(e){this.search()},_clear:function(e){this.clear()},_edit:function(e){this.edit()},_keypress:function(e){13==e.which&&e.preventDefault()},_keyup:function(e){this.$search.val()&&this.maybe_search()},_blur:function(e){this.blur()}})}(jQuery),function($){acf.fields.radio=acf.field.extend({type:"radio",$ul:null,actions:{ready:"initialize",append:"initialize"},events:{'click input[type="radio"]':"click"},focus:function(){this.$ul=this.$field.find(".acf-radio-list"),this.o=acf.get_data(this.$ul)},initialize:function(){this.$ul.find(".selected input").prop("checked",!0)},click:function(e){var t=e.$el,i=t.parent("label"),a=i.hasClass("selected"),n=t.val();if(this.$ul.find(".selected").removeClass("selected"),i.addClass("selected"),this.o.allow_null&&a&&(e.$el.prop("checked",!1),i.removeClass("selected"),n=!1,e.$el.trigger("change")),this.o.other_choice){var s=this.$ul.find('input[type="text"]');"other"===n?s.prop("disabled",!1).attr("name",t.attr("name")):s.prop("disabled",!0).attr("name","")}}})}(jQuery),function($){acf.fields.range=acf.field.extend({type:"range",$el:null,$range:null,$input:null,events:{"input input":"_change","change input":"_change"},focus:function(){this.$el=this.$field.find(".acf-range-wrap"),this.$range=this.$el.children('input[type="range"]'),this.$input=this.$el.children('input[type="number"]')},_change:function(e){var t=e.$el.val(),i=e.$el.attr("type");t=t||0,"range"===i?this.$input.val(t):this.$range.val(t)}})}(jQuery),function($){acf.fields.relationship=acf.field.extend({type:"relationship",$el:null,$input:null,$filters:null,$choices:null,$values:null,actions:{ready:"initialize",append:"initialize"},events:{"keypress [data-filter]":"submit_filter","change [data-filter]":"change_filter","keyup [data-filter]":"change_filter","click .choices .acf-rel-item":"add_item",'click [data-name="remove_item"]':"remove_item"},focus:function(){this.$el=this.$field.find(".acf-relationship"),this.$input=this.$el.children('input[type="hidden"]'),this.$choices=this.$el.find(".choices"),this.$values=this.$el.find(".values"),this.o=acf.get_data(this.$el)},initialize:function(){var e=this,t=this.$field,i=this.$el,a=this.$input;this.$values.children(".list").sortable({items:"li",forceHelperSize:!0,forcePlaceholderSize:!0,scroll:!0,update:function(){a.trigger("change")}}),this.$choices.children(".list").scrollTop(0).on("scroll",function(a){if(!i.hasClass("is-loading")&&!i.hasClass("is-empty")&&Math.ceil($(this).scrollTop())+$(this).innerHeight()>=$(this).get(0).scrollHeight){var n=i.data("paged")||1;i.data("paged",n+1),e.set("$field",t).fetch()}}),this.fetch()},maybe_fetch:function(){var e=this,t=this.$field;this.o.timeout&&clearTimeout(this.o.timeout);var i=setTimeout(function(){e.doFocus(t),e.fetch()},300);this.$el.data("timeout",i)},fetch:function(){var e=this,t=this.$field;this.$el.addClass("is-loading"),this.o.xhr&&(this.o.xhr.abort(),this.o.xhr=!1),this.o.action="acf/fields/relationship/query",this.o.field_key=t.data("key"),this.o.post_id=acf.get("post_id");var i=acf.prepare_for_ajax(this.o);1==i.paged&&this.$choices.children(".list").html(""),this.$choices.find("ul:last").append('<p><i class="acf-loading"></i> '+acf._e("relationship","loading")+"</p>");var a=$.ajax({url:acf.get("ajaxurl"),dataType:"json",type:"post",data:i,success:function(i){e.set("$field",t).render(i)}});this.$el.data("xhr",a)},render:function(e){if(this.$el.removeClass("is-loading is-empty"),this.$choices.find("p").remove(),!e||!e.results||!e.results.length)return this.$el.addClass("is-empty"),void(1==this.o.paged&&this.$choices.children(".list").append("<p>"+acf._e("relationship","empty")+"</p>"));var t=$(this.walker(e.results));this.$values.find(".acf-rel-item").each(function(){t.find('.acf-rel-item[data-id="'+$(this).data("id")+'"]').addClass("disabled")}),this.$choices.children(".list").append(t);var i="",a=null;this.$choices.find(".acf-rel-label").each(function(){if($(this).text()==i)return a.append($(this).siblings("ul").html()),void $(this).parent().remove();i=$(this).text(),a=$(this).siblings("ul")})},walker:function(e){var t="";if($.isArray(e))for(var i in e)t+=this.walker(e[i]);else $.isPlainObject(e)&&(void 0!==e.children?(t+='<li><span class="acf-rel-label">'+e.text+'</span><ul class="acf-bl">',t+=this.walker(e.children),t+="</ul></li>"):t+='<li><span class="acf-rel-item" data-id="'+e.id+'">'+e.text+"</span></li>");return t},submit_filter:function(e){13==e.which&&e.preventDefault()},change_filter:function(e){var t=e.$el.val(),i=e.$el.data("filter");this.$el.data(i)!=t&&(this.$el.data(i,t),this.$el.data("paged",1),e.$el.is("select")?this.fetch():this.maybe_fetch())},add_item:function(e){if(this.o.max>0&&this.$values.find(".acf-rel-item").length>=this.o.max)return void alert(acf._e("relationship","max").replace("{max}",this.o.max));if(e.$el.hasClass("disabled"))return!1;e.$el.addClass("disabled");var t=["<li>",'<input type="hidden" name="'+this.$input.attr("name")+'[]" value="'+e.$el.data("id")+'" />','<span data-id="'+e.$el.data("id")+'" class="acf-rel-item">'+e.$el.html(),'<a href="#" class="acf-icon -minus small dark" data-name="remove_item"></a>',"</span>","</li>"].join("");this.$values.children(".list").append(t),this.$input.trigger("change"),acf.validation.remove_error(this.$field)},remove_item:function(e){var t=e.$el.parent(),i=t.data("id");t.parent("li").remove(),this.$choices.find('.acf-rel-item[data-id="'+i+'"]').removeClass("disabled"),this.$input.trigger("change")}})}(jQuery),function($){var e,t,i;e=acf.select2=acf.model.extend({version:0,version3:null,version4:null,actions:{"ready 1":"ready"},ready:function(){this.version=this.get_version(),this.do_function("ready")},get_version:function(){return acf.maybe_get(window,"Select2")?3:acf.maybe_get(window,"jQuery.fn.select2.amd")?4:0},do_function:function(e,t){t=t||[];var i="version"+this.version;return void 0!==this[i]&&void 0!==this[i][e]&&this[i][e].apply(this,t)},get_data:function(e,t){var i=this;return t=t||[],e.children().each(function(){var e=$(this);e.is("optgroup")?t.push({text:e.attr("label"),children:i.get_data(e)}):t.push({id:e.attr("value"),text:e.text()})}),t},decode_data:function(t){return t?($.each(t,function(i,a){t[i].text=acf.decode(a.text),void 0!==a.children&&(t[i].children=e.decode_data(a.children))}),t):[]},count_data:function(e){var t=0;return e?($.each(e,function(e,i){t++,void 0!==i.children&&(t+=i.children.length)}),t):t},get_ajax_data:function(e,t,i,a){var n=acf.prepare_for_ajax({action:e.ajax_action,field_key:e.key,s:t.term||"",paged:t.page||1});return n=acf.apply_filters("select2_ajax_data",n,e,i,a)},get_ajax_results:function(e,t){var i={results:[]};return e||(e=i),void 0===e.results&&(i.results=e,e=i),e.results=this.decode_data(e.results),e=acf.apply_filters("select2_ajax_results",e,t)},get_value:function(e){var t=[],i=e.find("option:selected");return i.exists()?(i=i.sort(function(e,t){return+e.getAttribute("data-i")-+t.getAttribute("data-i")}),i.each(function(){var e=$(this);t.push({id:e.attr("value"),text:e.text(),$el:e})}),t):t},get_input_value:function(e){return e.val().split("||")},sync_input_value:function(e,t){e.val(t.val().join("||"))},add_option:function(e,t,i){e.find('option[value="'+t+'"]').length||e.append('<option value="'+t+'">'+i+"</option>")},select_option:function(e,t){e.find('option[value="'+t+'"]').prop("selected",!0),e.trigger("change")},unselect_option:function(e,t){e.find('option[value="'+t+'"]').prop("selected",!1),e.trigger("change")},init:function(e,t,i){this.do_function("init",arguments)},destroy:function(e){this.do_function("destroy",arguments)},add_value:function(e,t,i){this.do_function("add_value",arguments)},remove_value:function(e,t){this.do_function("remove_value",arguments)}}),t=e.version3={ready:function(){var e=acf.get("locale"),t=acf.get("rtl");if(l10n=acf._e("select"),l10n){var i={formatMatches:function(e){return 1===e?l10n.matches_1:l10n.matches_n.replace("%d",e)},formatNoMatches:function(){return l10n.matches_0},
3
+ formatAjaxError:function(){return l10n.load_fail},formatInputTooShort:function(e,t){var i=t-e.length;return 1===i?l10n.input_too_short_1:l10n.input_too_short_n.replace("%d",i)},formatInputTooLong:function(e,t){var i=e.length-t;return 1===i?l10n.input_too_long_1:l10n.input_too_long_n.replace("%d",i)},formatSelectionTooBig:function(e){return 1===e?l10n.selection_too_long_1:l10n.selection_too_long_n.replace("%d",e)},formatLoadMore:function(){return l10n.load_more},formatSearching:function(){return l10n.searching}};$.fn.select2.locales=acf.maybe_get(window,"jQuery.fn.select2.locales",{}),$.fn.select2.locales[e]=i,$.extend($.fn.select2.defaults,i)}},set_data:function(e,t){3==this.version&&(e=e.siblings("input")),e.select2("data",t)},append_data:function(e,t){3==this.version&&(e=e.siblings("input"));var i=e.select2("data")||[];i.push(t),e.select2("data",i)},init:function(i,a,n){a=a||{},n=n||null,a=$.extend({allow_null:!1,placeholder:"",multiple:!1,ajax:!1,ajax_action:""},a);var s=i.siblings("input");if(s.exists()){var o={width:"100%",containerCssClass:"-acf",allowClear:a.allow_null,placeholder:a.placeholder,multiple:a.multiple,separator:"||",data:[],escapeMarkup:function(e){return e},formatResult:function(e,t,i,a){var n=$.fn.select2.defaults.formatResult(e,t,i,a);return e.description&&(n+=' <span class="select2-result-description">'+e.description+"</span>"),n}},r=this.get_value(i);if(a.multiple){var l=i.attr("name");o.formatSelection=function(e,t){var i='<input type="hidden" class="select2-search-choice-hidden" name="'+l+'" value="'+e.id+'"'+(s.prop("disabled")?'disabled="disabled"':"")+" />";return t.parent().append(i),e.text}}else r=acf.maybe_get(r,0,!1),!a.allow_null&&r&&s.val(r.id);a.allow_null&&i.find('option[value=""]').remove(),o.data=this.get_data(i),o.initSelection=function(e,t){t(r)},a.ajax&&(o.ajax={url:acf.get("ajaxurl"),dataType:"json",type:"post",cache:!1,quietMillis:250,data:function(t,i){var o={term:t,page:i};return e.get_ajax_data(a,o,s,n)},results:function(i,a){var n={page:a};return setTimeout(function(){t.merge_results()},1),e.get_ajax_results(i,n)}}),o.dropdownCss={"z-index":"999999999"},o.acf=a,o=acf.apply_filters("select2_args",o,i,a,n),s.select2(o);var c=s.select2("container");c.before(i),c.before(s),a.multiple&&c.find("ul.select2-choices").sortable({start:function(){s.select2("onSortStart")},stop:function(){s.select2("onSortEnd")}}),i.prop("disabled",!0).addClass("acf-disabled acf-hidden"),s.on("change",function(t){t.added&&e.add_option(i,t.added.id,t.added.text),e.select_option(i,t.val)}),acf.do_action("select2_init",s,o,a,n)}},merge_results:function(){var e="",t=null;$("#select2-drop .select2-result-with-children").each(function(){var i=$(this).children(".select2-result-label"),a=$(this).children(".select2-result-sub");if(i.text()==e)return t.append(a.children()),void $(this).remove();e=i.text(),t=a})},destroy:function(e){var t=e.siblings("input");t.data("select2")&&t.select2("destroy"),e.siblings(".select2-container").remove(),e.prop("disabled",!1).removeClass("acf-disabled acf-hidden"),t.attr("style","")},add_value:function(t,i,a){e.add_option(t,i,a),e.select_option(t,i);var n=t.siblings("input"),s={id:i,text:a};if(!t.data("multiple"))return n.select2("data",s);var o=n.select2("data")||[];return o.push(s),n.select2("data",o)},remove_value:function(t,i){e.unselect_option(t,i);var a=t.siblings("input"),n=a.select2("data");t.data("multiple")?(n=$.grep(n,function(e){return e.id!=i}),a.select2("data",n)):n&&n.id==i&&a.select2("data",null)}},i=e.version4={init:function(t,a,n){a=a||{},n=n||null,a=$.extend({allow_null:!1,placeholder:"",multiple:!1,ajax:!1,ajax_action:""},a);var s=t.siblings("input");if(s.exists()){var o={width:"100%",allowClear:a.allow_null,placeholder:a.placeholder,multiple:a.multiple,separator:"||",data:[],escapeMarkup:function(e){return e}},r=this.get_value(t);a.multiple?$.each(r,function(e,i){i.$el.detach().appendTo(t)}):r=acf.maybe_get(r,0,""),a.ajax?o.ajax={url:acf.get("ajaxurl"),delay:250,dataType:"json",type:"post",cache:!1,data:function(i){return e.get_ajax_data(a,i,t,n)},processResults:function(t,a){var n=e.get_ajax_results(t,a);return n.more&&(n.pagination={more:!0}),setTimeout(function(){i.merge_results()},1),n}}:(t.removeData("ajax"),t.removeAttr("data-ajax")),o=acf.apply_filters("select2_args",o,t,a,n),t.select2(o);var l=t.next(".select2-container");if(a.multiple){var c=l.find("ul");c.sortable({stop:function(e){c.find(".select2-selection__choice").each(function(){$($(this).data("data").element).detach().appendTo(t),s.trigger("change")})}}),t.on("select2:select",function(e){$(e.params.data.element).detach().appendTo(t)})}s.val(""),l.addClass("-acf"),acf.do_action("select2_init",t,o,a,n)}},merge_results:function(){var e=null,t=null;$('.select2-results__option[role="group"]').each(function(){var i=$(this).children("ul"),a=$(this).children("strong");if(null!==t&&a.text()==t.text())return e.append(i.children()),void $(this).remove();e=i,t=a})},add_value:function(t,i,a){e.add_option(t,i,a),e.select_option(t,i)},remove_value:function(t,i){e.unselect_option(t,i)},destroy:function(e){e.data("select2")&&e.select2("destroy"),e.siblings(".select2-container").remove()}},acf.add_select2=function(t,i){e.init(t,i)},acf.remove_select2=function(t){e.destroy(t)}}(jQuery),function($){acf.fields.select=acf.field.extend({type:"select",$select:null,actions:{ready:"render",append:"render",remove:"remove"},focus:function(){this.$select=this.$field.find("select"),this.$select.exists()&&(this.o=acf.get_data(this.$select),this.o=acf.parse_args(this.o,{ajax_action:"acf/fields/"+this.type+"/query",key:this.$field.data("key")}))},render:function(){if(!this.$select.exists()||!this.o.ui)return!1;acf.select2.init(this.$select,this.o,this.$field)},remove:function(){if(!this.$select.exists()||!this.o.ui)return!1;acf.select2.destroy(this.$select)}}),acf.fields.user=acf.fields.select.extend({type:"user"}),acf.fields.post_object=acf.fields.select.extend({type:"post_object"}),acf.fields.page_link=acf.fields.select.extend({type:"page_link"})}(jQuery),function($,e){var t=0;acf.fields.accordion=acf.field.extend({type:"accordion",$el:null,$wrap:null,actions:{prepare:"initialize",append:"initialize"},focus:function(){},initialize:function(){var e=this.$field,i=e.children(".acf-label"),a=e.children(".acf-input"),n=a.children(".acf-fields"),s=n.data();if(!e.is("td")){if(s.endpoint)return void e.remove();var o=a.children(".description");if(o.length&&i.append(o),e.is("tr")){var r=e.closest("table"),l=$('<div class="acf-accordion-title"/>'),c=$('<div class="acf-accordion-content"/>'),d=$('<table class="'+r.attr("class")+'"/>'),f=$("<tbody/>");l.append(i.html()),d.append(f),c.append(d),a.append(l),a.append(c),i.remove(),n.remove(),a.attr("colspan",2),i=l,a=c,n=f}e.addClass("acf-accordion"),i.addClass("acf-accordion-title"),a.addClass("acf-accordion-content"),t++,s.multi_expand&&e.data("multi-expand",1);var u=acf.getPreference("this.accordions")||[];void 0!==u[t-1]&&(s.open=u[t-1]),s.open&&(e.addClass("-open"),a.css("display","block")),i.prepend('<i class="acf-accordion-icon dashicons dashicons-arrow-'+(s.open?"down":"right")+'"></i>');var h=e.parent();n.addClass(h.hasClass("-left")?"-left":""),n.addClass(h.hasClass("-clear")?"-clear":""),n.append(e.nextUntil(".acf-field-accordion",".acf-field")),n.removeAttr("data-open data-multi_expand data-endpoint")}}});var i=acf.model.extend({events:{"click .acf-accordion-title":"_click"},_click:function(e){e.preventDefault(),this.toggle(e.$el.closest(".acf-accordion"))},isOpen:function(e){return e.hasClass("-open")},toggle:function(e){this.isOpen(e)?this.close(e):this.open(e)},open:function(e){e.find(".acf-accordion-content:first").slideDown().css("display","block"),e.find(".acf-accordion-icon:first").removeClass("dashicons-arrow-right").addClass("dashicons-arrow-down"),e.addClass("-open"),acf.do_action("show",e),e.data("multi-expand")||e.siblings(".acf-accordion.-open").each(function(){i.close($(this))}),acf.do_action("refresh",e)},close:function(e){e.find(".acf-accordion-content:first").slideUp(),e.find(".acf-accordion-icon:first").removeClass("dashicons-arrow-down").addClass("dashicons-arrow-right"),e.removeClass("-open"),acf.do_action("hide",e)}});$(window).on("unload",function(){var e=[];$(".acf-accordion").each(function(){var t=$(this).hasClass("-open")?1:0;e.push(t)}),e.length&&acf.setPreference("this.accordions",e)});var a=acf.model.extend({active:1,events:{"invalidField .acf-accordion":"invalidField"},invalidField:function(e){this.active&&(this.block(),i.open(e.$el))},block:function(){var e=this;this.active=0,setTimeout(function(){e.active=1},1e3)}})}(jQuery),function($){var e="hidden-by-conditional-logic",t=0,i=0,a=acf.model.extend({$fields:[],actions:{"prepare 15":"initialize","append 15":"initialize","refresh 15":"refresh"},events:{"click .acf-tab-button":"_click"},_click:function(e){e.preventDefault(),this.toggle(e.$el)},isOpen:function(e){return e.hasClass("-open")},toggle:function(e){var t=e.data("key"),i=e.parent(),a=e.closest(".acf-tab-wrap"),n=a.find(".active a"),s=a.siblings('.acf-field[data-key="'+t+'"]');if(!this.isOpen(s)){if(n.length){var o=n.data("key"),r=n.parent(),l=a.siblings('.acf-field[data-key="'+o+'"]');r.removeClass("active"),this.close(l)}i.addClass("active"),this.open(s),acf.do_action("refresh",a.parent())}},getFields:function(e){return e.nextUntil(".acf-field-tab",".acf-field")},getWrap:function(e){return e.prevAll(".acf-tab-wrap:first")},getTab:function(e,t){return e.find('a[data-key="'+t+'"]')},open:function(e){this.getFields(e).each(function(){$(this).removeClass("hidden-by-tab"),acf.do_action("show_field",$(this),"tab")})},close:function(e){this.getFields(e).each(function(){$(this).addClass("hidden-by-tab"),acf.do_action("hide_field",$(this),"tab")})},addTab:function(e){this.$fields.push(e)},initialize:function(){if(this.$fields.length){for(var e=0;e<this.$fields.length;e++)this.createTab(this.$fields[e]);this.$fields=[]}},createTab:function(e){if(e.is("td"))return!1;var a=e.children(".acf-label"),n=e.children(".acf-input"),s=this.getWrap(e),o=e.find(".acf-tab-button"),r=o.data(),l=!1;e.hide(),a.remove(),n.remove(),s.exists()&&!r.endpoint||(s=this.createTabWrap(e,r),l=!0);var c=$("<li></li>").append(o);return l?(c.addClass("active"),this.open(e)):this.close(e),""==o.html()&&c.hide(),s.find("ul").append(c),i++,((acf.getPreference("this.tabs")||[])[t-1]||0)!=i-1||l||this.toggle(o),c},createTabWrap:function(e,a){var n=e.parent(),s=!1;return n.hasClass("acf-fields")&&"left"==a.placement&&n.addClass("-sidebar"),s=$(e.is("tr")?'<tr class="acf-tab-wrap"><td colspan="2"><ul class="acf-hl acf-tab-group"></ul></td></tr>':'<div class="acf-tab-wrap -'+a.placement+'"><ul class="acf-hl acf-tab-group"></ul></div>'),e.before(s),t++,i=0,s},refresh:function(e){$(".acf-tab-wrap",e).each(function(){var e=$(this);if(e.hasClass("-left")){var t=e.parent(),i=t.is("td")?"height":"min-height",a=e.position().top+e.children("ul").outerHeight(!0)-1;t.css(i,a)}})}});acf.fields.tab=acf.field.extend({type:"tab",$el:null,$wrap:null,actions:{prepare:"initialize",append:"initialize",hide:"hide",show:"show"},focus:function(){},initialize:function(){a.addTab(this.$field)},hide:function(t,i){if("conditional_logic"==i){var n=t.data("key"),s=a.getWrap(t),o=a.getTab(s,n),r=o.parent();s.exists()&&(r.addClass(e),a.getFields(t).each(function(){acf.conditional_logic.hide_field($(this))}),r.hasClass("active")&&s.find("li:not(."+e+"):first a").trigger("click"))}},show:function(t,i){if("conditional_logic"==i){var n=t.data("key"),s=a.getWrap(t),o=a.getTab(s,n),r=o.parent();if(s.exists()){r.removeClass(e),a.getFields(t).each(function(){acf.conditional_logic.show_field($(this))});var l=r.siblings(".active");l.exists()&&!l.hasClass(e)||a.toggle(o)}}}}),$(window).on("unload",function(){var e=[];$(".acf-tab-wrap").each(function(){var t=$(this).find(".active").index()||0;e.push(t)}),e.length&&acf.setPreference("this.tabs",e)});var n=acf.model.extend({active:1,actions:{invalid_field:"invalid_field"},invalid_field:function(e){if(this.active&&e.hasClass("hidden-by-tab")){var t=this,i=e.prevAll(".acf-field-tab:first");e.prevAll(".acf-tab-wrap:first").find('a[data-key="'+i.data("key")+'"]').trigger("click"),this.active=0,setTimeout(function(){t.active=1},1e3)}}})}(jQuery),function($){acf.fields.time_picker=acf.field.extend({type:"time_picker",$el:null,$input:null,$hidden:null,o:{},actions:{ready:"initialize",append:"initialize"},events:{'blur input[type="text"]':"blur"},focus:function(){this.$el=this.$field.find(".acf-time-picker"),this.$input=this.$el.find('input[type="text"]'),this.$hidden=this.$el.find('input[type="hidden"]'),this.o=acf.get_data(this.$el)},initialize:function(){if(void 0!==$.timepicker){var e={timeFormat:this.o.time_format,altField:this.$hidden,altFieldTimeOnly:!1,altTimeFormat:"HH:mm:ss",showButtonPanel:!0,controlType:"select",oneLine:!0,closeText:acf._e("date_time_picker","selectText")};e.onClose=function(e,t){var i=t.dpDiv,a=i.find(".ui-datepicker-close");if(!e&&a.is(":hover")){if(!(e=acf.maybe_get(t,"settings.timepicker.formattedTime")))return;$.datepicker._setTime(t)}},e=acf.apply_filters("time_picker_args",e,this.$field),this.$input.timepicker(e),$("body > #ui-datepicker-div").exists()&&$("body > #ui-datepicker-div").wrap('<div class="acf-ui-datepicker" />'),acf.do_action("time_picker_init",this.$input,e,this.$field)}},blur:function(){this.$input.val()||this.$hidden.val("")}})}(jQuery),function($){acf.fields.true_false=acf.field.extend({type:"true_false",$switch:null,$input:null,actions:{prepare:"render",append:"render",show:"render"},events:{"change .acf-switch-input":"_change","focus .acf-switch-input":"_focus","blur .acf-switch-input":"_blur","keypress .acf-switch-input":"_keypress"},focus:function(){this.$input=this.$field.find(".acf-switch-input"),this.$switch=this.$field.find(".acf-switch")},render:function(){if(this.$switch.exists()){var e=this.$switch.children(".acf-switch-on"),t=this.$switch.children(".acf-switch-off");width=Math.max(e.width(),t.width()),width&&(e.css("min-width",width),t.css("min-width",width))}},on:function(){this.$input.prop("checked",!0),this.$switch.addClass("-on")},off:function(){this.$input.prop("checked",!1),this.$switch.removeClass("-on")},_change:function(e){e.$el.prop("checked")?this.on():this.off()},_focus:function(e){this.$switch.addClass("-focus")},_blur:function(e){this.$switch.removeClass("-focus")},_keypress:function(e){return 37===e.keyCode?this.off():39===e.keyCode?this.on():void 0}})}(jQuery),function($){acf.fields.taxonomy=acf.field.extend({type:"taxonomy",$el:null,actions:{ready:"render",append:"render",remove:"remove"},events:{'click a[data-name="add"]':"add_term"},focus:function(){this.$el=this.$field.find(".acf-taxonomy-field"),this.o=acf.get_data(this.$el,{save:"",type:"",taxonomy:""}),this.o.key=this.$field.data("key")},render:function(){var e=this.$field.find("select");if(e.exists()){var t=acf.get_data(e);t=acf.parse_args(t,{pagination:!0,ajax_action:"acf/fields/taxonomy/query",key:this.o.key}),acf.select2.init(e,t)}},remove:function(){var e=this.$field.find("select");if(!e.exists())return!1;acf.select2.destroy(e)},add_term:function(e){var t=this;acf.open_popup({title:e.$el.attr("title")||e.$el.data("title"),loading:!0,height:220});var i=acf.prepare_for_ajax({action:"acf/fields/taxonomy/add_term",field_key:this.o.key});$.ajax({url:acf.get("ajaxurl"),data:i,type:"post",dataType:"html",success:function(e){t.add_term_confirm(e)}})},add_term_confirm:function(e){var t=this;acf.update_popup({content:e}),$('#acf-popup input[name="term_name"]').focus(),$("#acf-popup form").on("submit",function(e){e.preventDefault(),t.add_term_submit($(this))})},add_term_submit:function(e){var t=this,i=e.find(".acf-submit"),a=e.find('input[name="term_name"]'),n=e.find('select[name="term_parent"]');if(""===a.val())return a.focus(),!1;i.find("button").attr("disabled","disabled"),i.find(".acf-spinner").addClass("is-active");var s=acf.prepare_for_ajax({action:"acf/fields/taxonomy/add_term",field_key:this.o.key,term_name:a.val(),term_parent:n.exists()?n.val():0});$.ajax({url:acf.get("ajaxurl"),data:s,type:"post",dataType:"json",success:function(e){var n=acf.get_ajax_message(e);acf.is_ajax_success(e)&&(a.val(""),t.append_new_term(e.data)),n.text&&i.find("span").html(n.text)},complete:function(){i.find("button").removeAttr("disabled"),i.find(".acf-spinner").removeClass("is-active"),i.find("span").delay(1500).fadeOut(250,function(){$(this).html(""),$(this).show()}),a.focus()}})},append_new_term:function(e){var t={id:e.term_id,text:e.term_label};switch($('.acf-taxonomy-field[data-taxonomy="'+this.o.taxonomy+'"]').each(function(){var t=$(this).data("type");if("radio"==t||"checkbox"==t){var i=$(this).children('input[type="hidden"]'),a=$(this).find("ul:first"),n=i.attr("name");"checkbox"==t&&(n+="[]");var s=$(['<li data-id="'+e.term_id+'">',"<label>",'<input type="'+t+'" value="'+e.term_id+'" name="'+n+'" /> ',"<span>"+e.term_label+"</span>","</label>","</li>"].join(""));if(e.term_parent){var o=a.find('li[data-id="'+e.term_parent+'"]');a=o.children("ul"),a.exists()||(a=$('<ul class="children acf-bl"></ul>'),o.append(a))}a.append(s)}}),$("#acf-popup #term_parent").each(function(){var t=$('<option value="'+e.term_id+'">'+e.term_label+"</option>");e.term_parent?$(this).children('option[value="'+e.term_parent+'"]').after(t):$(this).append(t)}),this.o.type){case"select":var i=this.$el.children("select");acf.select2.add_value(i,e.term_id,e.term_label);break;case"multi_select":var i=this.$el.children("select");acf.select2.add_value(i,e.term_id,e.term_label);break;case"checkbox":case"radio":var a=this.$el.find(".categorychecklist-holder"),n=a.find('li[data-id="'+e.term_id+'"]'),s=a.get(0).scrollTop+(n.offset().top-a.offset().top);n.find("input").prop("checked",!0),a.animate({scrollTop:s},"250");break}}})}(jQuery),function($){acf.fields.url=acf.field.extend({type:"url",$input:null,actions:{ready:"render",append:"render"},events:{'keyup input[type="url"]':"render"},focus:function(){this.$input=this.$field.find('input[type="url"]')},is_valid:function(){var e=this.$input.val();if(-1!==e.indexOf("://"));else if(0!==e.indexOf("//"))return!1;return!0},render:function(){this.is_valid()?this.$input.parent().addClass("-valid"):this.$input.parent().removeClass("-valid")}})}(jQuery),function($){acf.validation=acf.model.extend({actions:{ready:"ready",append:"ready"},filters:{validation_complete:"validation_complete"},events:{"click #save-post":"click_ignore",'click [type="submit"]':"click_publish","submit form":"submit_form","click .acf-error-message a":"click_message"},active:1,ignore:0,busy:0,valid:!0,errors:[],error_class:"acf-error",message_class:"acf-error-message",$trigger:null,ready:function(e){var t=$(".acf-field input, .acf-field textarea, .acf-field select");if(t.length){var i=this;t.on("invalid",function(e){var t=$(this),i=acf.get_field_wrap(t);i.trigger("invalidField"),acf.do_action("invalid",t),acf.do_action("invalid_field",i),acf.validation.ignore||(e.preventDefault(),acf.validation.errors.push({input:t.attr("name"),message:e.target.validationMessage}),acf.validation.fetch(t.closest("form")))})}},validation_complete:function(e,t){if(!this.errors.length)return e;e.valid=0,e.errors=e.errors||[];var a=[];if(e.errors.length)for(i in e.errors)a.push(e.errors[i].input);if(this.errors.length)for(i in this.errors){var n=this.errors[i];-1===$.inArray(n.input,a)&&e.errors.push(n)}return this.errors=[],e},click_message:function(e){e.preventDefault(),acf.remove_el(e.$el.parent())},click_ignore:function(e){var t=this;this.ignore=1,this.$trigger=e.$el,this.$form=e.$el.closest("form"),$("."+this.message_class).each(function(){acf.remove_el($(this))}),this.ignore_required_inputs(),setTimeout(function(){t.ignore=0},100)},ignore_required_inputs:function(){var e=$(".acf-field input[required], .acf-field textarea[required], .acf-field select[required]");e.length&&(e.prop("required",!1),setTimeout(function(){e.prop("required",!0)},100))},click_publish:function(e){this.$trigger=e.$el},submit_form:function(e){if(!this.active)return!0;if(this.ignore)return this.ignore=0,!0;if(!e.$el.find("#acf-form-data").exists())return!0;var t=e.$el.find("#wp-preview");if(t.exists()&&t.val())return this.toggle(e.$el,"unlock"),!0;e.preventDefault(),this.fetch(e.$el)},toggle:function(e,t){t=t||"unlock";var i=null,a=null,n=$("#submitdiv");n.exists()||(n=$("#submitpost")),n.exists()||(n=e.find("p.submit").last()),n.exists()||(n=e.find(".acf-form-submit")),n.exists()||(n=e),i=n.find('input[type="submit"], .button'),a=n.find(".spinner, .acf-spinner"),this.hide_spinner(a),"unlock"==t?this.enable_submit(i):"lock"==t&&(this.disable_submit(i),this.show_spinner(a.last()))},fetch:function(e){if(this.busy)return!1;var t=this;acf.do_action("validation_begin");var i=acf.serialize(e);i.action="acf/validate_save_post",i=acf.prepare_for_ajax(i),this.busy=1,this.toggle(e,"lock"),$.ajax({url:acf.get("ajaxurl"),data:i,type:"post",dataType:"json",success:function(i){acf.is_ajax_success(i)&&t.fetch_success(e,i.data)},complete:function(){t.fetch_complete(e)}})},fetch_complete:function(e){if(this.busy=0,this.toggle(e,"unlock"),this.valid){this.ignore=1;var t=e.children(".acf-error-message");t.exists()&&(t.addClass("-success"),t.children("p").html(acf._e("validation_successful")),setTimeout(function(){acf.remove_el(t)},2e3)),e.find(".acf-postbox.acf-hidden").remove(),acf.do_action("submit",e),this.$trigger?this.$trigger.click():e.submit(),this.toggle(e,"lock")}},fetch_success:function(e,t){if(!(t=acf.apply_filters("validation_complete",t,e))||t.valid||!t.errors)return this.valid=!0,void acf.do_action("validation_success");acf.do_action("validation_failure"),this.valid=!1,this.$trigger=null,this.display_errors(t.errors,e)},display_errors:function(e,t){if(e&&e.length){var a=t.children(".acf-error-message"),n=acf._e("validation_failed"),s=0,o=null;for(i=0;i<e.length;i++){var r=e[i];if(r.input){var l=t.find('[name="'+r.input+'"]').first();if(l.exists()||(l=t.find('[name^="'+r.input+'"]').first()),l.exists()){s++;var c=acf.get_field_wrap(l);this.add_error(c,r.message),null===o&&(o=c)}}else n+=". "+r.message}1==s?n+=". "+acf._e("validation_failed_1"):s>1&&(n+=". "+acf._e("validation_failed_2").replace("%d",s)),a.exists()||(a=$('<div class="acf-error-message"><p></p><a href="#" class="acf-icon -cancel small"></a></div>'),t.prepend(a)),a.children("p").html(n),null===o&&(o=a),setTimeout(function(){$("html, body").animate({scrollTop:o.offset().top-$(window).height()/2},500)},10)}},add_error:function(e,t){var i=this;e.addClass(this.error_class),void 0!==t&&(e.children(".acf-input").children("."+this.message_class).remove(),e.children(".acf-input").prepend('<div class="'+this.message_class+'"><p>'+t+"</p></div>"));var a=function(){i.remove_error(e),e.off("focus change","input, textarea, select",a)};e.on("focus change","input, textarea, select",a),e.trigger("invalidField"),acf.do_action("add_field_error",e),acf.do_action("invalid_field",e)},remove_error:function(e){var t=e.children(".acf-input").children("."+this.message_class);e.removeClass(this.error_class),setTimeout(function(){acf.remove_el(t)},250),acf.do_action("remove_field_error",e),acf.do_action("valid_field",e)},add_warning:function(e,t){this.add_error(e,t),setTimeout(function(){acf.validation.remove_error(e)},1e3)},show_spinner:function(e){if(e.exists()){var t=acf.get("wp_version");parseFloat(t)>=4.2?e.addClass("is-active"):e.css("display","inline-block")}},hide_spinner:function(e){if(e.exists()){var t=acf.get("wp_version");parseFloat(t)>=4.2?e.removeClass("is-active"):e.css("display","none")}},disable_submit:function(e){e.exists()&&e.addClass("disabled button-disabled button-primary-disabled")},enable_submit:function(e){e.exists()&&e.removeClass("disabled button-disabled button-primary-disabled")}})}(jQuery),function($){acf.fields.wysiwyg=acf.field.extend({type:"wysiwyg",$el:null,$textarea:null,toolbars:{},events:{"mousedown .acf-editor-wrap.delay":"mousedown"},actions:{load:"initialize",append:"initialize",remove:"disable",sortstart:"disable",sortstop:"enable"},focus:function(){this.$el=this.$field.find(".wp-editor-wrap").last(),this.$textarea=this.$el.find("textarea"),this.o=acf.get_data(this.$el,{toolbar:"",active:this.$el.hasClass("tmce-active"),id:this.$textarea.attr("id")})},mousedown:function(e){e.preventDefault(),this.$el.removeClass("delay"),this.$el.find(".acf-editor-toolbar").remove(),this.initialize()},initialize:function(){if(!this.$el.hasClass("delay")){var e={tinymce:!0,quicktags:!0,toolbar:this.o.toolbar,mode:this.o.active?"visual":"text"},t=this.o.id,i=acf.get_uniqid("acf-editor-"),a=this.$el.outerHTML();a=acf.str_replace(t,i,a),this.$el.replaceWith(a),this.o.id=i,acf.tinymce.initialize(this.o.id,e,this.$field)}},disable:function(){acf.tinymce.destroy(this.o.id)},enable:function(){this.o.active&&acf.tinymce.enable(this.o.id)}}),acf.tinymce=acf.model.extend({toolbars:{},actions:{ready:"ready"},ready:function(){var e=$("#acf-hidden-wp-editor");e.exists()&&(e.appendTo("body"),acf.isset(window,"tinymce","on")&&tinymce.on("AddEditor",function(e){var t=e.editor;"acf"===t.id.substr(0,3)&&(t=tinymce.editors.content||t,tinymce.activeEditor=t,wpActiveEditor=t.id)}))},defaults:function(){return"undefined"!=typeof tinyMCEPreInit&&{tinymce:tinyMCEPreInit.mceInit.acf_content,quicktags:tinyMCEPreInit.qtInit.acf_content}},initialize:function(e,t,i){t=t||{},i=i||null,t=acf.parse_args(t,{tinymce:!0,quicktags:!0,toolbar:"full",mode:"visual"}),t.tinymce&&this.initialize_tinymce(e,t,i),t.quicktags&&this.initialize_quicktags(e,t,i)},initialize_tinymce:function(e,t,i){var a=$("#"+e),n=this.defaults(),s=this.toolbars;if("undefined"==typeof tinymce)return!1;if(!n)return!1;if(tinymce.get(e))return this.enable(e);init=$.extend({},n.tinymce,t.tinymce),init.id=e,init.selector="#"+e;var o=t.toolbar;if(o&&void 0!==s[o])for(var r=1;r<=4;r++)init["toolbar"+r]=s[o][r]||"";if(init.setup=function(t){t.on("focus",function(e){acf.validation.remove_error(i)}),t.on("change",function(e){t.save(),a.trigger("change")}),$(t.getWin()).on("unload",function(){acf.tinymce.remove(e)})},init.wp_autoresize_on=!1,init=acf.apply_filters("wysiwyg_tinymce_settings",init,e,i),tinyMCEPreInit.mceInit[e]=init,"visual"==t.mode){tinymce.init(init);var l=tinymce.get(e);acf.do_action("wysiwyg_tinymce_init",l,l.id,init,i)}},initialize_quicktags:function(e,t,i){var a=this.defaults();if("undefined"==typeof quicktags)return!1;if(!a)return!1;init=$.extend({},a.quicktags,t.quicktags),init.id=e,init=acf.apply_filters("wysiwyg_quicktags_settings",init,init.id,i),tinyMCEPreInit.qtInit[e]=init;var n=quicktags(init);this.build_quicktags(n),acf.do_action("wysiwyg_quicktags_init",n,n.id,init,i)},build_quicktags:function(e){var t,i,a,n,s,e,o,r,l,c,d=",strong,em,link,block,del,ins,img,ul,ol,li,code,more,close,";t=e.canvas,i=e.name,a=e.settings,s="",n={},l="",c=e.id,a.buttons&&(l=","+a.buttons+",");for(r in edButtons)edButtons[r]&&(o=edButtons[r].id,l&&-1!==d.indexOf(","+o+",")&&-1===l.indexOf(","+o+",")||edButtons[r].instance&&edButtons[r].instance!==c||(n[o]=edButtons[r],edButtons[r].html&&(s+=edButtons[r].html(i+"_"))));l&&-1!==l.indexOf(",dfw,")&&(n.dfw=new QTags.DFWButton,s+=n.dfw.html(i+"_")),"rtl"===document.getElementsByTagName("html")[0].dir&&(n.textdirection=new QTags.TextDirectionButton,s+=n.textdirection.html(i+"_")),e.toolbar.innerHTML=s,e.theButtons=n,"undefined"!=typeof jQuery&&jQuery(document).triggerHandler("quicktags-init",[e])},disable:function(e){this.destroy(e)},destroy:function(e){this.destroy_tinymce(e)},destroy_tinymce:function(e){if("undefined"==typeof tinymce)return!1;var t=tinymce.get(e);return!!t&&(t.save(),t.destroy(),!0)},enable:function(e){this.enable_tinymce(e)},enable_tinymce:function(e){return"undefined"!=typeof switchEditors&&(void 0!==tinyMCEPreInit.mceInit[e]&&(switchEditors.go(e,"tmce"),!0))}})}(jQuery);
includes/api/api-helpers.php CHANGED
@@ -811,19 +811,20 @@ function acf_verify_nonce( $value) {
811
 
812
  function acf_verify_ajax() {
813
 
 
 
 
 
 
814
  // bail early if not acf action
815
- if( empty($_POST['action']) || substr($_POST['action'], 0, 3) !== 'acf' ) {
816
-
817
  return false;
818
-
819
  }
820
 
821
 
822
  // bail early if not acf nonce
823
- if( empty($_POST['nonce']) || !wp_verify_nonce($_POST['nonce'], 'acf_nonce') ) {
824
-
825
  return false;
826
-
827
  }
828
 
829
 
811
 
812
  function acf_verify_ajax() {
813
 
814
+ // vars
815
+ $action = acf_maybe_get_POST('action');
816
+ $nonce = acf_maybe_get_POST('nonce');
817
+
818
+
819
  // bail early if not acf action
820
+ if( !$action || substr($action, 0, 3) !== 'acf' ) {
 
821
  return false;
 
822
  }
823
 
824
 
825
  // bail early if not acf nonce
826
+ if( !$nonce || !wp_verify_nonce($nonce, 'acf_nonce') ) {
 
827
  return false;
 
828
  }
829
 
830
 
includes/api/api-input.php CHANGED
@@ -124,7 +124,8 @@ function acf_esc_atts( $atts = array() ) {
124
  // string
125
  if( is_string($v) ) {
126
 
127
- $v = trim($v);
 
128
 
129
  // boolean
130
  } elseif( is_bool($v) ) {
124
  // string
125
  if( is_string($v) ) {
126
 
127
+ // don't trim value
128
+ if( $k !== 'value') $v = trim($v);
129
 
130
  // boolean
131
  } elseif( is_bool($v) ) {
includes/fields/class-acf-field-accordion.php ADDED
@@ -0,0 +1,167 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ if( ! class_exists('acf_field__accordion') ) :
4
+
5
+ class acf_field__accordion extends acf_field {
6
+
7
+
8
+ /**
9
+ * initialize
10
+ *
11
+ * This function will setup the field type data
12
+ *
13
+ * @date 30/10/17
14
+ * @since 5.6.3
15
+ *
16
+ * @param n/a
17
+ * @return n/a
18
+ */
19
+
20
+ function initialize() {
21
+
22
+ // vars
23
+ $this->name = 'accordion';
24
+ $this->label = __("Accordion",'acf');
25
+ $this->category = 'layout';
26
+ $this->defaults = array(
27
+ 'open' => 0,
28
+ 'multi_expand' => 0,
29
+ 'endpoint' => 0
30
+ );
31
+
32
+ }
33
+
34
+
35
+ /**
36
+ * render_field
37
+ *
38
+ * Create the HTML interface for your field
39
+ *
40
+ * @date 30/10/17
41
+ * @since 5.6.3
42
+ *
43
+ * @param array $field
44
+ * @return n/a
45
+ */
46
+
47
+ function render_field( $field ) {
48
+
49
+ // vars
50
+ $atts = array(
51
+ 'class' => 'acf-fields',
52
+ 'data-open' => $field['open'],
53
+ 'data-multi_expand' => $field['multi_expand'],
54
+ 'data-endpoint' => $field['endpoint']
55
+ );
56
+
57
+ ?>
58
+ <div <?php acf_esc_attr_e($atts); ?>></div>
59
+ <?php
60
+
61
+ }
62
+
63
+
64
+
65
+ /*
66
+ * render_field_settings()
67
+ *
68
+ * Create extra options for your field. This is rendered when editing a field.
69
+ * The value of $field['name'] can be used (like bellow) to save extra data to the $field
70
+ *
71
+ * @param $field - an array holding all the field's data
72
+ *
73
+ * @type action
74
+ * @since 3.6
75
+ * @date 23/01/13
76
+ */
77
+
78
+ function render_field_settings( $field ) {
79
+
80
+ /*
81
+ // message
82
+ $message = '';
83
+ $message .= '<p>' . __( 'Accordions help you organize fields into panels that open and close.', 'acf') . '</p>';
84
+ $message .= '<p>' . __( 'All fields following this accordion (or until another accordion is defined) will be grouped together.','acf') . '</p>';
85
+
86
+
87
+ // default_value
88
+ acf_render_field_setting( $field, array(
89
+ 'label' => __('Instructions','acf'),
90
+ 'instructions' => '',
91
+ 'name' => 'notes',
92
+ 'type' => 'message',
93
+ 'message' => $message,
94
+ ));
95
+ */
96
+
97
+ // active
98
+ acf_render_field_setting( $field, array(
99
+ 'label' => __('Open','acf'),
100
+ 'instructions' => __('Display this accordion as open on page load.','acf'),
101
+ 'name' => 'open',
102
+ 'type' => 'true_false',
103
+ 'ui' => 1,
104
+ ));
105
+
106
+
107
+ // multi_expand
108
+ acf_render_field_setting( $field, array(
109
+ 'label' => __('Multi-expand','acf'),
110
+ 'instructions' => __('Allow this accordion to open without closing others.','acf'),
111
+ 'name' => 'multi_expand',
112
+ 'type' => 'true_false',
113
+ 'ui' => 1,
114
+ ));
115
+
116
+
117
+ // endpoint
118
+ acf_render_field_setting( $field, array(
119
+ 'label' => __('Endpoint','acf'),
120
+ 'instructions' => __('Define an endpoint for the previous accordion to stop. This accordion will not be visible.','acf'),
121
+ 'name' => 'endpoint',
122
+ 'type' => 'true_false',
123
+ 'ui' => 1,
124
+ ));
125
+
126
+ }
127
+
128
+
129
+ /*
130
+ * load_field()
131
+ *
132
+ * This filter is appied to the $field after it is loaded from the database
133
+ *
134
+ * @type filter
135
+ * @since 3.6
136
+ * @date 23/01/13
137
+ *
138
+ * @param $field - the field array holding all the field options
139
+ *
140
+ * @return $field - the field array holding all the field options
141
+ */
142
+
143
+ function load_field( $field ) {
144
+
145
+ // remove name to avoid caching issue
146
+ $field['name'] = '';
147
+
148
+ // remove required to avoid JS issues
149
+ $field['required'] = 0;
150
+
151
+ // set value other than 'null' to avoid ACF loading / caching issue
152
+ $field['value'] = false;
153
+
154
+ // return
155
+ return $field;
156
+
157
+ }
158
+
159
+ }
160
+
161
+
162
+ // initialize
163
+ acf_register_field_type( 'acf_field__accordion' );
164
+
165
+ endif; // class_exists check
166
+
167
+ ?>
includes/fields/class-acf-field-tab.php CHANGED
@@ -48,13 +48,15 @@ class acf_field_tab extends acf_field {
48
 
49
  // vars
50
  $atts = array(
51
- 'class' => 'acf-tab',
 
52
  'data-placement' => $field['placement'],
53
- 'data-endpoint' => $field['endpoint']
 
54
  );
55
 
56
  ?>
57
- <div <?php acf_esc_attr_e( $atts ); ?>><?php echo acf_esc_html($field['label']); ?></div>
58
  <?php
59
 
60
 
@@ -77,20 +79,22 @@ class acf_field_tab extends acf_field {
77
 
78
  function render_field_settings( $field ) {
79
 
 
80
  // message
81
  $message = '';
82
- $message .= '<span class="acf-error-message"><p>' . __("The tab field will display incorrectly when added to a Table style repeater field or flexible content field layout", 'acf') . '</p></span>';
83
  $message .= '<p>' . __( 'Use "Tab Fields" to better organize your edit screen by grouping fields together.', 'acf') . '</p>';
84
  $message .= '<p>' . __( 'All fields following this "tab field" (or until another "tab field" is defined) will be grouped together using this field\'s label as the tab heading.','acf') . '</p>';
85
 
 
86
  // default_value
87
  acf_render_field_setting( $field, array(
88
  'label' => __('Instructions','acf'),
89
  'instructions' => '',
 
90
  'type' => 'message',
91
  'message' => $message,
92
- 'new_lines' => ''
93
  ));
 
94
 
95
 
96
  // preview_size
@@ -99,16 +103,16 @@ class acf_field_tab extends acf_field {
99
  'type' => 'select',
100
  'name' => 'placement',
101
  'choices' => array(
102
- 'top' => __("Top aligned",'acf'),
103
- 'left' => __("Left Aligned",'acf'),
104
  )
105
  ));
106
 
107
 
108
  // endpoint
109
  acf_render_field_setting( $field, array(
110
- 'label' => __('End-point','acf'),
111
- 'instructions' => __('Use this field as an end-point and start a new group of tabs','acf'),
112
  'name' => 'endpoint',
113
  'type' => 'true_false',
114
  'ui' => 1,
@@ -136,15 +140,12 @@ class acf_field_tab extends acf_field {
136
  // remove name to avoid caching issue
137
  $field['name'] = '';
138
 
139
-
140
  // remove required to avoid JS issues
141
  $field['required'] = 0;
142
 
143
-
144
  // set value other than 'null' to avoid ACF loading / caching issue
145
  $field['value'] = false;
146
 
147
-
148
  // return
149
  return $field;
150
 
48
 
49
  // vars
50
  $atts = array(
51
+ 'href' => '',
52
+ 'class' => 'acf-tab-button',
53
  'data-placement' => $field['placement'],
54
+ 'data-endpoint' => $field['endpoint'],
55
+ 'data-key' => $field['key']
56
  );
57
 
58
  ?>
59
+ <a <?php acf_esc_attr_e( $atts ); ?>><?php echo acf_esc_html($field['label']); ?></a>
60
  <?php
61
 
62
 
79
 
80
  function render_field_settings( $field ) {
81
 
82
+ /*
83
  // message
84
  $message = '';
 
85
  $message .= '<p>' . __( 'Use "Tab Fields" to better organize your edit screen by grouping fields together.', 'acf') . '</p>';
86
  $message .= '<p>' . __( 'All fields following this "tab field" (or until another "tab field" is defined) will be grouped together using this field\'s label as the tab heading.','acf') . '</p>';
87
 
88
+
89
  // default_value
90
  acf_render_field_setting( $field, array(
91
  'label' => __('Instructions','acf'),
92
  'instructions' => '',
93
+ 'name' => 'notes',
94
  'type' => 'message',
95
  'message' => $message,
 
96
  ));
97
+ */
98
 
99
 
100
  // preview_size
103
  'type' => 'select',
104
  'name' => 'placement',
105
  'choices' => array(
106
+ 'top' => __("Top aligned", 'acf'),
107
+ 'left' => __("Left Aligned", 'acf'),
108
  )
109
  ));
110
 
111
 
112
  // endpoint
113
  acf_render_field_setting( $field, array(
114
+ 'label' => __('Endpoint','acf'),
115
+ 'instructions' => __('Define an endpoint for the previous tabs to stop. This will start a new group of tabs.', 'acf'),
116
  'name' => 'endpoint',
117
  'type' => 'true_false',
118
  'ui' => 1,
140
  // remove name to avoid caching issue
141
  $field['name'] = '';
142
 
 
143
  // remove required to avoid JS issues
144
  $field['required'] = 0;
145
 
 
146
  // set value other than 'null' to avoid ACF loading / caching issue
147
  $field['value'] = false;
148
 
 
149
  // return
150
  return $field;
151
 
includes/forms/form-attachment.php CHANGED
@@ -192,44 +192,6 @@ acf.unload.active = 0;
192
  ));
193
 
194
 
195
- if( $this->validate_page() ) {
196
-
197
- echo '<style type="text/css">
198
-
199
- .compat-attachment-fields,
200
- .compat-attachment-fields > tbody,
201
- .compat-attachment-fields > tbody > tr,
202
- .compat-attachment-fields > tbody > tr > th,
203
- .compat-attachment-fields > tbody > tr > td {
204
- display: block;
205
- }
206
-
207
- .compat-attachment-fields > tbody > tr.acf-field {
208
- margin: 0 0 15px;
209
- }
210
-
211
- .compat-attachment-fields > tbody > tr.acf-field > td.acf-label {
212
- margin: 0;
213
- }
214
-
215
- .compat-attachment-fields > tbody > tr.acf-field > td.acf-label label {
216
- margin: 0;
217
- padding: 0;
218
- }
219
-
220
- .compat-attachment-fields > tbody > tr.acf-field > td.acf-label p {
221
- margin: 0 0 3px !important;
222
- }
223
-
224
- .compat-attachment-fields > tbody > tr.acf-field > td.acf-input {
225
- margin: 0;
226
- }
227
-
228
- </style>';
229
-
230
- }
231
-
232
-
233
  // open
234
  echo '</td></tr>';
235
 
192
  ));
193
 
194
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
195
  // open
196
  echo '</td></tr>';
197
 
includes/forms/form-comment.php CHANGED
@@ -240,6 +240,7 @@ class acf_form_comment {
240
  'nonce' => 'comment'
241
  ));
242
 
 
243
 
244
  foreach( $field_groups as $field_group ) {
245
 
@@ -248,6 +249,8 @@ class acf_form_comment {
248
  acf_render_fields( $post_id, $fields, 'p', $field_group['instruction_placement'] );
249
 
250
  }
 
 
251
 
252
 
253
  // append
240
  'nonce' => 'comment'
241
  ));
242
 
243
+ echo '<div class="acf-comment-fields acf-fields -clear">';
244
 
245
  foreach( $field_groups as $field_group ) {
246
 
249
  acf_render_fields( $post_id, $fields, 'p', $field_group['instruction_placement'] );
250
 
251
  }
252
+
253
+ echo '</div>';
254
 
255
 
256
  // append
includes/forms/form-front.php CHANGED
@@ -407,6 +407,10 @@ class acf_form_front {
407
 
408
  function submit_form( $form ) {
409
 
 
 
 
 
410
  // vars
411
  $post_id = acf_maybe_get($form, 'post_id', 0);
412
 
407
 
408
  function submit_form( $form ) {
409
 
410
+ // filter
411
+ $form = apply_filters('acf/pre_submit_form', $form);
412
+
413
+
414
  // vars
415
  $post_id = acf_maybe_get($form, 'post_id', 0);
416
 
includes/forms/form-nav-menu.php CHANGED
@@ -228,7 +228,7 @@ class acf_form_nav_menu {
228
 
229
 
230
  ?>
231
- <script type="text/html" id="tmpl-acf-menu-settings">
232
  <?php
233
 
234
  // data (always needed to save nav menu items)
@@ -263,7 +263,7 @@ class acf_form_nav_menu {
263
  }
264
 
265
  ?>
266
- </script>
267
  <script type="text/javascript">
268
  (function($) {
269
 
228
 
229
 
230
  ?>
231
+ <div id="tmpl-acf-menu-settings" style="display: none;">
232
  <?php
233
 
234
  // data (always needed to save nav menu items)
263
  }
264
 
265
  ?>
266
+ </div>
267
  <script type="text/javascript">
268
  (function($) {
269
 
includes/forms/form-taxonomy.php CHANGED
@@ -158,16 +158,18 @@ class acf_form_taxonomy {
158
  'nonce' => 'taxonomy',
159
  ));
160
 
 
 
161
 
162
  // loop
163
  foreach( $field_groups as $field_group ) {
164
-
165
  $fields = acf_get_fields( $field_group );
166
-
167
  acf_render_fields( $post_id, $fields, 'div', 'field' );
168
-
169
  }
170
 
 
 
 
171
  }
172
 
173
  }
@@ -212,21 +214,19 @@ class acf_form_taxonomy {
212
 
213
  foreach( $field_groups as $field_group ) {
214
 
215
- $fields = acf_get_fields( $field_group );
 
 
 
216
 
217
- ?>
218
- <?php if( $field_group['style'] == 'default' ): ?>
219
- <h2><?php echo $field_group['title']; ?></h2>
220
- <?php endif; ?>
221
- <table class="form-table">
222
- <tbody>
223
- <?php acf_render_fields( $post_id, $fields, 'tr', 'field' ); ?>
224
- </tbody>
225
- </table>
226
- <?php
227
 
228
  }
229
-
230
  }
231
 
232
  }
158
  'nonce' => 'taxonomy',
159
  ));
160
 
161
+ // wrap
162
+ echo '<div class="acf-addterm-fields acf-fields -clear">';
163
 
164
  // loop
165
  foreach( $field_groups as $field_group ) {
 
166
  $fields = acf_get_fields( $field_group );
 
167
  acf_render_fields( $post_id, $fields, 'div', 'field' );
 
168
  }
169
 
170
+ // wrap
171
+ echo '</div>';
172
+
173
  }
174
 
175
  }
214
 
215
  foreach( $field_groups as $field_group ) {
216
 
217
+ // title
218
+ if( $field_group['style'] == 'default' ) {
219
+ echo '<h2>' . $field_group['title'] . '</h2>';
220
+ }
221
 
222
+ // fields
223
+ echo '<table class="form-table">';
224
+ $fields = acf_get_fields( $field_group );
225
+ acf_render_fields( $post_id, $fields, 'tr', 'field' );
226
+ echo '</table>';
 
 
 
 
 
227
 
228
  }
229
+
230
  }
231
 
232
  }
includes/forms/form-user.php CHANGED
@@ -214,10 +214,6 @@ class acf_form_user {
214
  $show_title = true;
215
 
216
 
217
- // show title
218
- //if( $user_form === 'register' ) $show_title = false;
219
-
220
-
221
  // args
222
  $args = array(
223
  'user_id' => 'new',
@@ -251,14 +247,16 @@ class acf_form_user {
251
 
252
  // title
253
  if( $show_title && $field_group['style'] === 'default' ) {
254
-
255
  echo '<h2>' . $field_group['title'] . '</h2>';
256
-
257
  }
258
 
259
 
260
  // table start
261
- if( $el == 'tr' ) echo '<table class="form-table"><tbody>';
 
 
 
 
262
 
263
 
264
  // render fields
@@ -266,7 +264,11 @@ class acf_form_user {
266
 
267
 
268
  // table end
269
- if( $el == 'tr' ) echo '</tbody></table>';
 
 
 
 
270
 
271
  }
272
 
214
  $show_title = true;
215
 
216
 
 
 
 
 
217
  // args
218
  $args = array(
219
  'user_id' => 'new',
247
 
248
  // title
249
  if( $show_title && $field_group['style'] === 'default' ) {
 
250
  echo '<h2>' . $field_group['title'] . '</h2>';
 
251
  }
252
 
253
 
254
  // table start
255
+ if( $el == 'tr' ) {
256
+ echo '<table class="form-table"><tbody>';
257
+ } else {
258
+ echo '<div class="acf-user-register-fields acf-fields -clear">';
259
+ }
260
 
261
 
262
  // render fields
264
 
265
 
266
  // table end
267
+ if( $el == 'tr' ) {
268
+ echo '</tbody></table>';
269
+ } else {
270
+ echo '</div>';
271
+ }
272
 
273
  }
274
 
includes/forms/form-widget.php CHANGED
@@ -166,6 +166,9 @@ class acf_form_widget {
166
  ));
167
 
168
 
 
 
 
169
  // loop
170
  foreach( $field_groups as $field_group ) {
171
 
@@ -186,6 +189,9 @@ class acf_form_widget {
186
 
187
  }
188
 
 
 
 
189
 
190
  // jQuery selector looks odd, but is necessary due to WP adding an incremental number into the ID
191
  // - not possible to find number via PHP parameters
@@ -255,20 +261,25 @@ class acf_form_widget {
255
  <script type="text/javascript">
256
  (function($) {
257
 
258
- acf.add_filter('get_fields', function( $fields ){
259
-
260
- // widgets
261
- $fields = $fields.not('#available-widgets .acf-field');
262
-
263
-
264
- // customizer
265
- $fields = $fields.not('.widget-tpl .acf-field');
266
-
267
-
268
- // return
269
- return $fields;
270
-
271
- });
 
 
 
 
 
272
 
273
 
274
  $('#widgets-right').on('click', '.widget-control-save', function( e ){
@@ -357,18 +368,6 @@ class acf_form_widget {
357
  acf.do_action('submit', $widget );
358
 
359
  });
360
-
361
-
362
- // sortable
363
- $('div.widgets-sortables').on('sortstart', function( event, ui ) {
364
-
365
- acf.do_action('sortstart', ui.item, ui.placeholder);
366
-
367
- }).on('sortstop', function( event, ui ) {
368
-
369
- acf.do_action('sortstop', ui.item, ui.placeholder);
370
-
371
- });
372
 
373
  })(jQuery);
374
  </script>
166
  ));
167
 
168
 
169
+ // wrap
170
+ echo '<div class="acf-widget-fields acf-fields -clear">';
171
+
172
  // loop
173
  foreach( $field_groups as $field_group ) {
174
 
189
 
190
  }
191
 
192
+ //wrap
193
+ echo '</div>';
194
+
195
 
196
  // jQuery selector looks odd, but is necessary due to WP adding an incremental number into the ID
197
  // - not possible to find number via PHP parameters
261
  <script type="text/javascript">
262
  (function($) {
263
 
264
+ // vars
265
+ acf.update('post_id', 'widgets');
266
+
267
+
268
+ // restrict get fields
269
+ acf.add_filter('get_fields', function( $fields ){
270
+
271
+ // widgets
272
+ $fields = $fields.not('#available-widgets .acf-field');
273
+
274
+
275
+ // customizer
276
+ $fields = $fields.not('.widget-tpl .acf-field');
277
+
278
+
279
+ // return
280
+ return $fields;
281
+
282
+ });
283
 
284
 
285
  $('#widgets-right').on('click', '.widget-control-save', function( e ){
368
  acf.do_action('submit', $widget );
369
 
370
  });
 
 
 
 
 
 
 
 
 
 
 
 
371
 
372
  })(jQuery);
373
  </script>
includes/walkers/class-acf-walker-nav-menu-edit.php CHANGED
@@ -97,7 +97,7 @@ class ACF_Walker_Nav_Menu_Edit extends Walker_Nav_Menu_Edit {
97
  // render
98
  if( !empty($field_groups) ) {
99
 
100
- echo '<div class="field-acf description description-wide">';
101
 
102
  // loop
103
  foreach( $field_groups as $field_group ) {
@@ -121,6 +121,16 @@ class ACF_Walker_Nav_Menu_Edit extends Walker_Nav_Menu_Edit {
121
 
122
  echo '</div>';
123
 
 
 
 
 
 
 
 
 
 
 
124
  }
125
 
126
 
97
  // render
98
  if( !empty($field_groups) ) {
99
 
100
+ echo '<div class="acf-menu-item-fields acf-fields -clear">';
101
 
102
  // loop
103
  foreach( $field_groups as $field_group ) {
121
 
122
  echo '</div>';
123
 
124
+
125
+ // Trigger append for newly created menu item (via AJAX)
126
+ if( acf_is_ajax('add-menu-item') ): ?>
127
+ <script type="text/javascript">
128
+ (function($) {
129
+ acf.do_action('append', jQuery('#menu-item-settings-<?php echo $post_id; ?>') );
130
+ })(jQuery);
131
+ </script>
132
+ <?php endif;
133
+
134
  }
135
 
136
 
lang/acf-ar.mo CHANGED
Binary file
lang/acf-ar.po CHANGED
@@ -2,7 +2,7 @@ msgid ""
2
  msgstr ""
3
  "Project-Id-Version: Advanced Custom Fields Pro\n"
4
  "POT-Creation-Date: 2017-06-27 15:37+1000\n"
5
- "PO-Revision-Date: 2017-06-27 15:37+1000\n"
6
  "Last-Translator: Elliot Condon <e@elliotcondon.com>\n"
7
  "Language-Team: Adil el hallaoui <servicewb11@gmail.com>\n"
8
  "Language: ar\n"
@@ -23,7 +23,7 @@ msgstr ""
23
 
24
  #: acf.php:63
25
  msgid "Advanced Custom Fields"
26
- msgstr "الحقول المخصصة المتقدم"
27
 
28
  #: acf.php:355 includes/admin/admin.php:117
29
  msgid "Field Groups"
@@ -2964,9 +2964,8 @@ msgid "Values will be saved as %s"
2964
  msgstr ""
2965
 
2966
  #: pro/fields/class-acf-field-clone.php:920
2967
- #, fuzzy
2968
  msgid "Prefix Field Names"
2969
- msgstr "اسم الحقل"
2970
 
2971
  #: pro/fields/class-acf-field-clone.php:1038
2972
  #, fuzzy
@@ -2974,14 +2973,13 @@ msgid "Unknown field"
2974
  msgstr "فيما يلي الحقول"
2975
 
2976
  #: pro/fields/class-acf-field-clone.php:1077
2977
- #, fuzzy
2978
  msgid "Unknown field group"
2979
- msgstr "مزامنة مجموعة المجال"
2980
 
2981
  #: pro/fields/class-acf-field-clone.php:1081
2982
  #, php-format
2983
  msgid "All fields from %s field group"
2984
- msgstr ""
2985
 
2986
  #: pro/fields/class-acf-field-flexible-content.php:42
2987
  #: pro/fields/class-acf-field-repeater.php:230
@@ -3146,16 +3144,15 @@ msgstr "اختيار الحد الأقصى"
3146
 
3147
  #: pro/fields/class-acf-field-gallery.php:657
3148
  msgid "Insert"
3149
- msgstr ""
3150
 
3151
  #: pro/fields/class-acf-field-gallery.php:658
3152
  msgid "Specify where new attachments are added"
3153
- msgstr ""
3154
 
3155
  #: pro/fields/class-acf-field-gallery.php:662
3156
- #, fuzzy
3157
  msgid "Append to the end"
3158
- msgstr "يظهر بعد إدخال"
3159
 
3160
  #: pro/fields/class-acf-field-gallery.php:663
3161
  msgid "Prepend to the beginning"
2
  msgstr ""
3
  "Project-Id-Version: Advanced Custom Fields Pro\n"
4
  "POT-Creation-Date: 2017-06-27 15:37+1000\n"
5
+ "PO-Revision-Date: 2017-11-28 11:54+1000\n"
6
  "Last-Translator: Elliot Condon <e@elliotcondon.com>\n"
7
  "Language-Team: Adil el hallaoui <servicewb11@gmail.com>\n"
8
  "Language: ar\n"
23
 
24
  #: acf.php:63
25
  msgid "Advanced Custom Fields"
26
+ msgstr "الحقول المخصصة المتقدمة"
27
 
28
  #: acf.php:355 includes/admin/admin.php:117
29
  msgid "Field Groups"
2964
  msgstr ""
2965
 
2966
  #: pro/fields/class-acf-field-clone.php:920
 
2967
  msgid "Prefix Field Names"
2968
+ msgstr "بادئة أسماء الحقول"
2969
 
2970
  #: pro/fields/class-acf-field-clone.php:1038
2971
  #, fuzzy
2973
  msgstr "فيما يلي الحقول"
2974
 
2975
  #: pro/fields/class-acf-field-clone.php:1077
 
2976
  msgid "Unknown field group"
2977
+ msgstr "مجموعة حقل غير معروفة"
2978
 
2979
  #: pro/fields/class-acf-field-clone.php:1081
2980
  #, php-format
2981
  msgid "All fields from %s field group"
2982
+ msgstr "جميع الحقول من المجموعة الحقلية %s"
2983
 
2984
  #: pro/fields/class-acf-field-flexible-content.php:42
2985
  #: pro/fields/class-acf-field-repeater.php:230
3144
 
3145
  #: pro/fields/class-acf-field-gallery.php:657
3146
  msgid "Insert"
3147
+ msgstr "إدراج"
3148
 
3149
  #: pro/fields/class-acf-field-gallery.php:658
3150
  msgid "Specify where new attachments are added"
3151
+ msgstr "حدد مكان إضافة المرفقات الجديدة"
3152
 
3153
  #: pro/fields/class-acf-field-gallery.php:662
 
3154
  msgid "Append to the end"
3155
+ msgstr "إلحاق بالنهاية"
3156
 
3157
  #: pro/fields/class-acf-field-gallery.php:663
3158
  msgid "Prepend to the beginning"
lang/acf-de_CH.mo CHANGED
Binary file
lang/acf-de_CH.po CHANGED
@@ -1,9 +1,9 @@
1
  msgid ""
2
  msgstr ""
3
- "Project-Id-Version: Advanced Custom Fields Pro v5.5.10\n"
4
  "Report-Msgid-Bugs-To: http://support.advancedcustomfields.com\n"
5
- "POT-Creation-Date: 2017-06-27 15:36+1000\n"
6
- "PO-Revision-Date: 2017-06-27 15:36+1000\n"
7
  "Last-Translator: Elliot Condon <e@elliotcondon.com>\n"
8
  "Language-Team: Raphael Hüni <rafhun@gmail.com>\n"
9
  "Language: de_CH\n"
@@ -11,7 +11,7 @@ msgstr ""
11
  "Content-Type: text/plain; charset=UTF-8\n"
12
  "Content-Transfer-Encoding: 8bit\n"
13
  "Plural-Forms: nplurals=2; plural=(n != 1);\n"
14
- "X-Generator: Poedit 1.8.1\n"
15
  "X-Poedit-SourceCharset: UTF-8\n"
16
  "X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;"
17
  "esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;"
@@ -23,116 +23,116 @@ msgstr ""
23
  "X-Poedit-SearchPathExcluded-0: *.js\n"
24
 
25
  # @ acf
26
- #: acf.php:63
27
  msgid "Advanced Custom Fields"
28
  msgstr "Advanced Custom Fields"
29
 
30
  # @ acf
31
- #: acf.php:355 includes/admin/admin.php:117
32
  msgid "Field Groups"
33
  msgstr "Feld-Gruppen"
34
 
35
  # @ acf
36
- #: acf.php:356
37
  msgid "Field Group"
38
  msgstr "Feld-Gruppe"
39
 
40
  # @ acf
41
- #: acf.php:357 acf.php:389 includes/admin/admin.php:118
42
- #: pro/fields/class-acf-field-flexible-content.php:574
43
  msgid "Add New"
44
  msgstr "Erstellen"
45
 
46
  # @ acf
47
- #: acf.php:358
48
  msgid "Add New Field Group"
49
  msgstr "Neue Feld-Gruppe erstellen"
50
 
51
  # @ acf
52
- #: acf.php:359
53
  msgid "Edit Field Group"
54
  msgstr "Feld-Gruppe bearbeiten"
55
 
56
  # @ acf
57
- #: acf.php:360
58
  msgid "New Field Group"
59
  msgstr "Neue Feld-Gruppe"
60
 
61
  # @ acf
62
- #: acf.php:361
63
  msgid "View Field Group"
64
  msgstr "Feld-Gruppe anzeigen"
65
 
66
  # @ acf
67
- #: acf.php:362
68
  msgid "Search Field Groups"
69
  msgstr "Feld-Gruppen suchen"
70
 
71
  # @ acf
72
- #: acf.php:363
73
  msgid "No Field Groups found"
74
  msgstr "Keine Feld-Gruppen gefunden"
75
 
76
  # @ acf
77
- #: acf.php:364
78
  msgid "No Field Groups found in Trash"
79
  msgstr "Keine Feld-Gruppen im Papierkorb gefunden"
80
 
81
  # @ acf
82
- #: acf.php:387 includes/admin/admin-field-group.php:182
83
  #: includes/admin/admin-field-group.php:275
84
  #: includes/admin/admin-field-groups.php:510
85
- #: pro/fields/class-acf-field-clone.php:857
86
  msgid "Fields"
87
  msgstr "Felder"
88
 
89
  # @ acf
90
- #: acf.php:388
91
  msgid "Field"
92
  msgstr "Feld"
93
 
94
  # @ acf
95
- #: acf.php:390
96
  msgid "Add New Field"
97
  msgstr "Feld hinzufügen"
98
 
99
  # @ acf
100
- #: acf.php:391
101
  msgid "Edit Field"
102
  msgstr "Feld bearbeiten"
103
 
104
  # @ acf
105
- #: acf.php:392 includes/admin/views/field-group-fields.php:41
106
  #: includes/admin/views/settings-info.php:105
107
  msgid "New Field"
108
  msgstr "Neues Feld"
109
 
110
  # @ acf
111
- #: acf.php:393
112
  msgid "View Field"
113
  msgstr "Feld anzeigen"
114
 
115
  # @ acf
116
- #: acf.php:394
117
  msgid "Search Fields"
118
  msgstr "Felder suchen"
119
 
120
  # @ acf
121
- #: acf.php:395
122
  msgid "No Fields found"
123
  msgstr "Keine Felder gefunden"
124
 
125
  # @ acf
126
- #: acf.php:396
127
  msgid "No Fields found in Trash"
128
  msgstr "Keine Feld-Gruppen im Papierkorb gefunden"
129
 
130
- #: acf.php:435 includes/admin/admin-field-group.php:390
131
  #: includes/admin/admin-field-groups.php:567
132
  msgid "Inactive"
133
  msgstr "Inaktiv"
134
 
135
- #: acf.php:440
136
  #, php-format
137
  msgid "Inactive <span class=\"count\">(%s)</span>"
138
  msgid_plural "Inactive <span class=\"count\">(%s)</span>"
@@ -207,7 +207,7 @@ msgstr "Es ist ein Titel für die Feld-Gruppe erforderlich"
207
 
208
  # @ acf
209
  #: includes/admin/admin-field-group.php:273
210
- #: includes/api/api-field-group.php:732
211
  msgid "copy"
212
  msgstr "kopieren"
213
 
@@ -217,7 +217,7 @@ msgstr "kopieren"
217
  #: includes/admin/views/field-group-field-conditional-logic.php:154
218
  #: includes/admin/views/field-group-locations.php:29
219
  #: includes/admin/views/html-location-group.php:3
220
- #: includes/api/api-helpers.php:3970
221
  msgid "or"
222
  msgstr "oder"
223
 
@@ -239,7 +239,7 @@ msgstr "Benutzerdefiniertes Feld verschieben"
239
  # @ acf
240
  #: includes/admin/admin-field-group.php:279
241
  msgid "This field cannot be moved until its changes have been saved"
242
- msgstr "Diese Feld kann nicht verschoben werden, bevor es gesichert wurde."
243
 
244
  # @ acf
245
  #: includes/admin/admin-field-group.php:280
@@ -247,10 +247,10 @@ msgid "Null"
247
  msgstr "Null"
248
 
249
  # @ acf
250
- #: includes/admin/admin-field-group.php:281 includes/input.php:257
251
  msgid "The changes you made will be lost if you navigate away from this page"
252
  msgstr ""
253
- "Die vorgenommenen Änderungen gehen verloren wenn diese Seite verlassen wird."
254
 
255
  # @ acf
256
  #: includes/admin/admin-field-group.php:282
@@ -335,7 +335,7 @@ msgstr "Synchronisierung verfügbar"
335
 
336
  # @ acf
337
  #: includes/admin/admin-field-groups.php:507 includes/forms/form-front.php:38
338
- #: pro/fields/class-acf-field-gallery.php:370
339
  msgid "Title"
340
  msgstr "Titel"
341
 
@@ -344,7 +344,7 @@ msgstr "Titel"
344
  #: includes/admin/views/field-group-options.php:96
345
  #: includes/admin/views/install-network.php:21
346
  #: includes/admin/views/install-network.php:29
347
- #: pro/fields/class-acf-field-gallery.php:397
348
  msgid "Description"
349
  msgstr "Beschreibung"
350
 
@@ -363,7 +363,7 @@ msgstr ""
363
  # @ acf
364
  #: includes/admin/admin-field-groups.php:609
365
  #: includes/admin/settings-info.php:76
366
- #: pro/admin/views/html-settings-updates.php:111
367
  msgid "Changelog"
368
  msgstr "Versionshinweise"
369
 
@@ -379,7 +379,7 @@ msgstr "Dokumentation (engl.)"
379
 
380
  #: includes/admin/admin-field-groups.php:619
381
  msgid "Website"
382
- msgstr ""
383
 
384
  #: includes/admin/admin-field-groups.php:620
385
  msgid "Documentation"
@@ -390,9 +390,8 @@ msgid "Support"
390
  msgstr "Hilfe"
391
 
392
  #: includes/admin/admin-field-groups.php:623
393
- #, fuzzy
394
  msgid "Pro"
395
- msgstr "Macht's gut Add-ons&hellip; Hallo PRO!"
396
 
397
  #: includes/admin/admin-field-groups.php:628
398
  #, php-format
@@ -408,14 +407,14 @@ msgstr "Dieses Element duplizieren"
408
  #: includes/admin/admin-field-groups.php:668
409
  #: includes/admin/admin-field-groups.php:684
410
  #: includes/admin/views/field-group-field.php:49
411
- #: pro/fields/class-acf-field-flexible-content.php:573
412
  msgid "Duplicate"
413
  msgstr "Duplizieren"
414
 
415
  # @ acf
416
  #: includes/admin/admin-field-groups.php:701
417
- #: includes/fields/class-acf-field-google-map.php:132
418
- #: includes/fields/class-acf-field-relationship.php:737
419
  msgid "Search"
420
  msgstr "Suchen"
421
 
@@ -438,11 +437,10 @@ msgstr "Synchronisieren"
438
 
439
  #: includes/admin/admin-field-groups.php:780
440
  msgid "Apply"
441
- msgstr ""
442
 
443
  # @ acf
444
  #: includes/admin/admin-field-groups.php:798
445
- #, fuzzy
446
  msgid "Bulk Actions"
447
  msgstr "Massenverarbeitung"
448
 
@@ -506,14 +504,14 @@ msgstr "Keine Feld-Gruppe ausgewählt"
506
 
507
  # @ acf
508
  #: includes/admin/settings-tools.php:184
509
- #: includes/fields/class-acf-field-file.php:174
510
  msgid "No file selected"
511
  msgstr "Keine Datei ausgewählt"
512
 
513
  # @ acf
514
  #: includes/admin/settings-tools.php:197
515
  msgid "Error uploading file. Please try again"
516
- msgstr "Fehler beim Upload. Bitte erneut versuchen."
517
 
518
  # @ acf
519
  #: includes/admin/settings-tools.php:206
@@ -544,13 +542,13 @@ msgstr "Zeige dieses Feld, wenn"
544
 
545
  # @ acf
546
  #: includes/admin/views/field-group-field-conditional-logic.php:103
547
- #: includes/locations.php:243
548
  msgid "is equal to"
549
  msgstr "ist gleich"
550
 
551
  # @ acf
552
  #: includes/admin/views/field-group-field-conditional-logic.php:104
553
- #: includes/locations.php:244
554
  msgid "is not equal to"
555
  msgstr "ist ungleich"
556
 
@@ -568,8 +566,8 @@ msgstr "Regel-Gruppe hinzufügen"
568
 
569
  # @ acf
570
  #: includes/admin/views/field-group-field.php:41
571
- #: pro/fields/class-acf-field-flexible-content.php:420
572
- #: pro/fields/class-acf-field-repeater.php:358
573
  msgid "Drag to reorder"
574
  msgstr "Ziehen zum Sortieren"
575
 
@@ -581,9 +579,10 @@ msgstr "Feld bearbeiten"
581
 
582
  # @ acf
583
  #: includes/admin/views/field-group-field.php:48
584
- #: includes/fields/class-acf-field-image.php:140
585
- #: includes/fields/class-acf-field-link.php:152
586
- #: pro/fields/class-acf-field-gallery.php:357
 
587
  msgid "Edit"
588
  msgstr "Bearbeiten"
589
 
@@ -609,7 +608,7 @@ msgstr "Feld löschen"
609
 
610
  # @ acf
611
  #: includes/admin/views/field-group-field.php:51
612
- #: pro/fields/class-acf-field-flexible-content.php:572
613
  msgid "Delete"
614
  msgstr "Löschen"
615
 
@@ -624,60 +623,60 @@ msgid "This is the name which will appear on the EDIT page"
624
  msgstr "Dieser Name wird in der Bearbeitungs-Ansicht eines Beitrags angezeigt"
625
 
626
  # @ acf
627
- #: includes/admin/views/field-group-field.php:78
628
  msgid "Field Name"
629
  msgstr "Feld-Name"
630
 
631
  # @ acf
632
- #: includes/admin/views/field-group-field.php:79
633
  msgid "Single word, no spaces. Underscores and dashes allowed"
634
  msgstr ""
635
  "Nur ein Wort ohne Leerzeichen; es sind nur Unterstriche und Bindestriche als "
636
  "Sonderzeichen erlaubt"
637
 
638
  # @ acf
639
- #: includes/admin/views/field-group-field.php:89
640
  msgid "Field Type"
641
  msgstr "Feld-Typ"
642
 
643
  # @ acf
644
- #: includes/admin/views/field-group-field.php:101
645
- #: includes/fields/class-acf-field-tab.php:102
646
  msgid "Instructions"
647
  msgstr "Anweisungen"
648
 
649
  # @ acf
650
- #: includes/admin/views/field-group-field.php:102
651
  msgid "Instructions for authors. Shown when submitting data"
652
  msgstr "Anweisungen für Autoren werden in der Bearbeitungs-Ansicht angezeigt"
653
 
654
  # @ acf
655
- #: includes/admin/views/field-group-field.php:111
656
  msgid "Required?"
657
  msgstr "Erforderlich?"
658
 
659
  # @ acf
660
- #: includes/admin/views/field-group-field.php:134
661
  msgid "Wrapper Attributes"
662
  msgstr "Wrapper-Attribute"
663
 
664
  # @ acf
665
- #: includes/admin/views/field-group-field.php:140
666
  msgid "width"
667
  msgstr "Breite"
668
 
669
  # @ acf
670
- #: includes/admin/views/field-group-field.php:155
671
  msgid "class"
672
  msgstr "Klasse"
673
 
674
  # @ acf
675
- #: includes/admin/views/field-group-field.php:168
676
  msgid "id"
677
  msgstr "ID"
678
 
679
  # @ acf
680
- #: includes/admin/views/field-group-field.php:180
681
  msgid "Close Field"
682
  msgstr "Feld schliessen"
683
 
@@ -688,23 +687,24 @@ msgstr "Reihenfolge"
688
 
689
  # @ acf
690
  #: includes/admin/views/field-group-fields.php:5
691
- #: includes/fields/class-acf-field-checkbox.php:317
692
- #: includes/fields/class-acf-field-radio.php:321
693
- #: includes/fields/class-acf-field-select.php:530
694
- #: pro/fields/class-acf-field-flexible-content.php:599
 
695
  msgid "Label"
696
  msgstr "Name"
697
 
698
  # @ acf
699
  #: includes/admin/views/field-group-fields.php:6
700
- #: includes/fields/class-acf-field-taxonomy.php:970
701
- #: pro/fields/class-acf-field-flexible-content.php:612
702
  msgid "Name"
703
  msgstr "Feld-Name"
704
 
705
  #: includes/admin/views/field-group-fields.php:7
706
  msgid "Key"
707
- msgstr ""
708
 
709
  # @ acf
710
  #: includes/admin/views/field-group-fields.php:8
@@ -781,13 +781,13 @@ msgstr "Platzierung Beschriftung"
781
 
782
  # @ acf
783
  #: includes/admin/views/field-group-options.php:62
784
- #: includes/fields/class-acf-field-tab.php:116
785
  msgid "Top aligned"
786
  msgstr "Über dem Feld"
787
 
788
  # @ acf
789
  #: includes/admin/views/field-group-options.php:63
790
- #: includes/fields/class-acf-field-tab.php:117
791
  msgid "Left Aligned"
792
  msgstr "Links neben dem Feld"
793
 
@@ -809,7 +809,7 @@ msgstr "Unterhalb der Felder"
809
  # @ acf
810
  #: includes/admin/views/field-group-options.php:85
811
  msgid "Order No."
812
- msgstr "Reihenfolge"
813
 
814
  #: includes/admin/views/field-group-options.php:86
815
  msgid "Field groups with a lower order will appear first"
@@ -892,7 +892,7 @@ msgstr "Seiten-Attribute"
892
 
893
  # @ acf
894
  #: includes/admin/views/field-group-options.php:126
895
- #: includes/fields/class-acf-field-relationship.php:751
896
  msgid "Featured Image"
897
  msgstr "Beitragsbild"
898
 
@@ -986,25 +986,25 @@ msgstr "Aktualisiere Daten auf Version %s"
986
 
987
  # @ acf
988
  #: includes/admin/views/install-notice.php:8
989
- #: pro/fields/class-acf-field-repeater.php:36
990
  msgid "Repeater"
991
  msgstr "Wiederholung"
992
 
993
  # @ acf
994
  #: includes/admin/views/install-notice.php:9
995
- #: pro/fields/class-acf-field-flexible-content.php:36
996
  msgid "Flexible Content"
997
  msgstr "Flexible Inhalte"
998
 
999
  # @ acf
1000
  #: includes/admin/views/install-notice.php:10
1001
- #: pro/fields/class-acf-field-gallery.php:36
1002
  msgid "Gallery"
1003
  msgstr "Galerie"
1004
 
1005
  # @ acf
1006
  #: includes/admin/views/install-notice.php:11
1007
- #: pro/locations/class-acf-location-options-page.php:13
1008
  msgid "Options Page"
1009
  msgstr "Options-Seite"
1010
 
@@ -1034,6 +1034,8 @@ msgid ""
1034
  "Please also ensure any premium add-ons (%s) have first been updated to the "
1035
  "latest version."
1036
  msgstr ""
 
 
1037
 
1038
  # @ acf
1039
  #: includes/admin/views/install.php:7
@@ -1129,7 +1131,7 @@ msgstr ""
1129
  # @ acf
1130
  #: includes/admin/views/settings-info.php:39
1131
  msgid "Goodbye Add-ons. Hello PRO"
1132
- msgstr "Macht's gut Add-ons&hellip; Hallo PRO!"
1133
 
1134
  # @ acf
1135
  #: includes/admin/views/settings-info.php:44
@@ -1206,7 +1208,7 @@ msgstr ""
1206
  "Um möglichen Fragen vorzubeugen haben wir haben eine <a href=\"%s\"> "
1207
  "Anleitung für den Aktualisierungs-Prozess (Engl.)</a> verfasst. Sollten "
1208
  "dennoch Fragen aufgeworfen werden, kontaktiere bitte unser <a href=\"%s\"> "
1209
- "Support-Team </a>."
1210
 
1211
  # @ acf
1212
  #: includes/admin/views/settings-info.php:66
@@ -1364,7 +1366,7 @@ msgstr ""
1364
 
1365
  # @ acf
1366
  #: includes/admin/views/settings-info.php:144
1367
- #: includes/fields/class-acf-field-page_link.php:36
1368
  msgid "Page Link"
1369
  msgstr "Seiten-Link"
1370
 
@@ -1467,7 +1469,7 @@ msgstr ""
1467
 
1468
  # @ acf
1469
  #: includes/admin/views/settings-tools.php:77
1470
- #: includes/fields/class-acf-field-file.php:46
1471
  msgid "Select File"
1472
  msgstr "Datei auswählen"
1473
 
@@ -1497,56 +1499,56 @@ msgid "Full Size"
1497
  msgstr "Volle Grösse"
1498
 
1499
  # @ acf
1500
- #: includes/api/api-helpers.php:1248 includes/api/api-helpers.php:1837
1501
- #: pro/fields/class-acf-field-clone.php:1042
1502
  msgid "(no title)"
1503
  msgstr "(ohne Titel)"
1504
 
1505
- #: includes/api/api-helpers.php:1874
1506
- #: includes/fields/class-acf-field-page_link.php:284
1507
- #: includes/fields/class-acf-field-post_object.php:283
1508
- #: includes/fields/class-acf-field-taxonomy.php:992
1509
  msgid "Parent"
1510
  msgstr "Eltern"
1511
 
1512
  # @ acf
1513
- #: includes/api/api-helpers.php:3891
1514
  #, php-format
1515
  msgid "Image width must be at least %dpx."
1516
  msgstr "Die Breite des Bildes muss mindestens %dpx sein."
1517
 
1518
  # @ acf
1519
- #: includes/api/api-helpers.php:3896
1520
  #, php-format
1521
  msgid "Image width must not exceed %dpx."
1522
  msgstr "Die Breite des Bildes darf %dpx nicht überschreiten."
1523
 
1524
  # @ acf
1525
- #: includes/api/api-helpers.php:3912
1526
  #, php-format
1527
  msgid "Image height must be at least %dpx."
1528
  msgstr "Die Höhe des Bildes muss mindestens %dpx sein."
1529
 
1530
  # @ acf
1531
- #: includes/api/api-helpers.php:3917
1532
  #, php-format
1533
  msgid "Image height must not exceed %dpx."
1534
  msgstr "Die Höhe des Bild darf %dpx nicht überschreiten."
1535
 
1536
  # @ acf
1537
- #: includes/api/api-helpers.php:3935
1538
  #, php-format
1539
  msgid "File size must be at least %s."
1540
  msgstr "Die Dateigrösse muss mindestens %s sein."
1541
 
1542
  # @ acf
1543
- #: includes/api/api-helpers.php:3940
1544
  #, php-format
1545
  msgid "File size must must not exceed %s."
1546
  msgstr "Die Dateigrösse darf %s nicht überschreiten."
1547
 
1548
  # @ acf
1549
- #: includes/api/api-helpers.php:3974
1550
  #, php-format
1551
  msgid "File type must be %s."
1552
  msgstr "Der Dateityp muss %s sein."
@@ -1577,1174 +1579,1197 @@ msgid "jQuery"
1577
  msgstr "jQuery"
1578
 
1579
  # @ acf
1580
- #: includes/fields.php:149 includes/fields/class-acf-field-checkbox.php:286
1581
- #: includes/fields/class-acf-field-group.php:485
1582
- #: includes/fields/class-acf-field-radio.php:300
1583
- #: pro/fields/class-acf-field-clone.php:889
1584
- #: pro/fields/class-acf-field-flexible-content.php:569
1585
- #: pro/fields/class-acf-field-flexible-content.php:618
1586
- #: pro/fields/class-acf-field-repeater.php:514
 
1587
  msgid "Layout"
1588
  msgstr "Layout"
1589
 
1590
  # @ acf
1591
- #: includes/fields.php:305
1592
  msgid "Field type does not exist"
1593
  msgstr "Feld-Typ existiert nicht"
1594
 
1595
- #: includes/fields.php:305
1596
- #, fuzzy
1597
  msgid "Unknown"
1598
- msgstr "Unbekannte Feld-Gruppe"
1599
 
1600
- # @ acf
1601
- #: includes/fields/class-acf-field-checkbox.php:36
1602
- #: includes/fields/class-acf-field-taxonomy.php:786
1603
- msgid "Checkbox"
1604
- msgstr "Checkbox"
1605
-
1606
- # @ acf
1607
- #: includes/fields/class-acf-field-checkbox.php:150
1608
- msgid "Toggle All"
1609
- msgstr "Alle auswählen"
1610
-
1611
- #: includes/fields/class-acf-field-checkbox.php:207
1612
- msgid "Add new choice"
1613
- msgstr "Neue Auswahlmöglichkeit hinzufügen"
1614
 
1615
  # @ acf
1616
- #: includes/fields/class-acf-field-checkbox.php:246
1617
- #: includes/fields/class-acf-field-radio.php:250
1618
- #: includes/fields/class-acf-field-select.php:466
 
1619
  msgid "Choices"
1620
  msgstr "Auswahlmöglichkeiten"
1621
 
1622
  # @ acf
1623
- #: includes/fields/class-acf-field-checkbox.php:247
1624
- #: includes/fields/class-acf-field-radio.php:251
1625
- #: includes/fields/class-acf-field-select.php:467
 
1626
  msgid "Enter each choice on a new line."
1627
  msgstr "Jede Auswahlmöglichkeit in separater Zeile eingeben."
1628
 
1629
  # @ acf
1630
- #: includes/fields/class-acf-field-checkbox.php:247
1631
- #: includes/fields/class-acf-field-radio.php:251
1632
- #: includes/fields/class-acf-field-select.php:467
 
1633
  msgid "For more control, you may specify both a value and label like this:"
1634
  msgstr ""
1635
  "Für eine bessere Darstellung, kannst Du auch einen Wert und dazu dessen "
1636
  "Beschriftung definieren:"
1637
 
1638
  # @ acf
1639
- #: includes/fields/class-acf-field-checkbox.php:247
1640
- #: includes/fields/class-acf-field-radio.php:251
1641
- #: includes/fields/class-acf-field-select.php:467
 
1642
  msgid "red : Red"
1643
  msgstr "rot : Rot"
1644
 
1645
- #: includes/fields/class-acf-field-checkbox.php:255
1646
- msgid "Allow Custom"
1647
- msgstr "Erlaube benutzerdefinierte Felder"
1648
-
1649
- #: includes/fields/class-acf-field-checkbox.php:260
1650
- msgid "Allow 'custom' values to be added"
1651
- msgstr "Erlaube das Hinzufügen benutzerdefinierter Werte"
1652
-
1653
- #: includes/fields/class-acf-field-checkbox.php:266
1654
- msgid "Save Custom"
1655
- msgstr "Benutzerdefinierte Werte sichern"
1656
-
1657
- #: includes/fields/class-acf-field-checkbox.php:271
1658
- msgid "Save 'custom' values to the field's choices"
1659
- msgstr ""
1660
- "Sichere benutzerdefinierte Werte zu den Auswahlmöglichkeiten des Feldes"
1661
 
1662
  # @ acf
1663
- #: includes/fields/class-acf-field-checkbox.php:277
1664
- #: includes/fields/class-acf-field-color_picker.php:146
1665
- #: includes/fields/class-acf-field-email.php:133
1666
- #: includes/fields/class-acf-field-number.php:145
1667
- #: includes/fields/class-acf-field-radio.php:291
1668
- #: includes/fields/class-acf-field-select.php:475
1669
- #: includes/fields/class-acf-field-text.php:142
1670
- #: includes/fields/class-acf-field-textarea.php:139
1671
- #: includes/fields/class-acf-field-true_false.php:150
1672
- #: includes/fields/class-acf-field-url.php:114
1673
- #: includes/fields/class-acf-field-wysiwyg.php:436
 
 
1674
  msgid "Default Value"
1675
  msgstr "Standardwert"
1676
 
1677
  # @ acf
1678
- #: includes/fields/class-acf-field-checkbox.php:278
1679
- #: includes/fields/class-acf-field-select.php:476
1680
- msgid "Enter each default value on a new line"
1681
- msgstr "Jeden Standardwert in einer neuen Zeile eingeben"
1682
-
1683
- # @ acf
1684
- #: includes/fields/class-acf-field-checkbox.php:292
1685
- #: includes/fields/class-acf-field-radio.php:306
1686
- msgid "Vertical"
1687
- msgstr "Vertikal"
 
1688
 
1689
  # @ acf
1690
- #: includes/fields/class-acf-field-checkbox.php:293
1691
- #: includes/fields/class-acf-field-radio.php:307
 
1692
  msgid "Horizontal"
1693
  msgstr "Horizontal"
1694
 
1695
- #: includes/fields/class-acf-field-checkbox.php:300
1696
- msgid "Toggle"
1697
- msgstr "Auswählen"
1698
-
1699
- #: includes/fields/class-acf-field-checkbox.php:301
1700
- msgid "Prepend an extra checkbox to toggle all choices"
1701
- msgstr ""
1702
- "Hänge eine zusätzliche Checkbox an mit der man alle Optionen auswählen kann"
1703
 
1704
  # @ acf
1705
- #: includes/fields/class-acf-field-checkbox.php:310
1706
- #: includes/fields/class-acf-field-file.php:219
1707
- #: includes/fields/class-acf-field-image.php:206
1708
- #: includes/fields/class-acf-field-link.php:180
1709
- #: includes/fields/class-acf-field-radio.php:314
1710
- #: includes/fields/class-acf-field-taxonomy.php:839
 
1711
  msgid "Return Value"
1712
  msgstr "Rückgabewert"
1713
 
1714
  # @ acf
1715
- #: includes/fields/class-acf-field-checkbox.php:311
1716
- #: includes/fields/class-acf-field-file.php:220
1717
- #: includes/fields/class-acf-field-image.php:207
1718
- #: includes/fields/class-acf-field-link.php:181
1719
- #: includes/fields/class-acf-field-radio.php:315
 
1720
  msgid "Specify the returned value on front end"
1721
  msgstr "Legt den Rückgabewert für das Front-End fest"
1722
 
1723
- #: includes/fields/class-acf-field-checkbox.php:316
1724
- #: includes/fields/class-acf-field-radio.php:320
1725
- #: includes/fields/class-acf-field-select.php:529
 
1726
  msgid "Value"
1727
  msgstr "Wert"
1728
 
1729
- #: includes/fields/class-acf-field-checkbox.php:318
1730
- #: includes/fields/class-acf-field-radio.php:322
1731
- #: includes/fields/class-acf-field-select.php:531
 
1732
  msgid "Both (Array)"
1733
  msgstr "Beide (Array)"
1734
 
1735
  # @ acf
1736
- #: includes/fields/class-acf-field-color_picker.php:36
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1737
  msgid "Color Picker"
1738
  msgstr "Farbe"
1739
 
1740
  # @ acf
1741
- #: includes/fields/class-acf-field-color_picker.php:83
1742
  msgid "Clear"
1743
  msgstr "Leeren"
1744
 
1745
  # @ acf
1746
- #: includes/fields/class-acf-field-color_picker.php:84
1747
  msgid "Default"
1748
  msgstr "Standard"
1749
 
1750
  # @ acf
1751
- #: includes/fields/class-acf-field-color_picker.php:85
1752
  msgid "Select Color"
1753
  msgstr "Farbe auswählen"
1754
 
1755
- #: includes/fields/class-acf-field-color_picker.php:86
1756
  msgid "Current Color"
1757
  msgstr "Aktuelle Farbe"
1758
 
1759
  # @ acf
1760
- #: includes/fields/class-acf-field-date_picker.php:36
1761
  msgid "Date Picker"
1762
  msgstr "Datum"
1763
 
1764
- #: includes/fields/class-acf-field-date_picker.php:44
1765
  msgctxt "Date Picker JS closeText"
1766
  msgid "Done"
1767
  msgstr "Schliessen"
1768
 
1769
- #: includes/fields/class-acf-field-date_picker.php:45
1770
  msgctxt "Date Picker JS currentText"
1771
  msgid "Today"
1772
  msgstr "Heute"
1773
 
1774
- #: includes/fields/class-acf-field-date_picker.php:46
1775
  msgctxt "Date Picker JS nextText"
1776
  msgid "Next"
1777
  msgstr "Weiter"
1778
 
1779
- #: includes/fields/class-acf-field-date_picker.php:47
1780
  msgctxt "Date Picker JS prevText"
1781
  msgid "Prev"
1782
  msgstr "Zurück"
1783
 
1784
- #: includes/fields/class-acf-field-date_picker.php:48
1785
  msgctxt "Date Picker JS weekHeader"
1786
  msgid "Wk"
1787
  msgstr "KW"
1788
 
1789
  # @ acf
1790
- #: includes/fields/class-acf-field-date_picker.php:223
1791
- #: includes/fields/class-acf-field-date_time_picker.php:197
1792
- #: includes/fields/class-acf-field-time_picker.php:127
1793
  msgid "Display Format"
1794
  msgstr "Darstellungs-Format"
1795
 
1796
  # @ acf
1797
- #: includes/fields/class-acf-field-date_picker.php:224
1798
- #: includes/fields/class-acf-field-date_time_picker.php:198
1799
- #: includes/fields/class-acf-field-time_picker.php:128
1800
  msgid "The format displayed when editing a post"
1801
  msgstr "Das Datums-Format für die Anzeige in der Bearbeitungs-Ansicht"
1802
 
1803
- #: includes/fields/class-acf-field-date_picker.php:232
1804
- #: includes/fields/class-acf-field-date_picker.php:263
1805
- #: includes/fields/class-acf-field-date_time_picker.php:207
1806
- #: includes/fields/class-acf-field-date_time_picker.php:224
1807
- #: includes/fields/class-acf-field-time_picker.php:135
1808
- #: includes/fields/class-acf-field-time_picker.php:150
1809
- #, fuzzy
1810
  msgid "Custom:"
1811
- msgstr "Advanced Custom Fields"
1812
 
1813
- #: includes/fields/class-acf-field-date_picker.php:242
1814
  msgid "Save Format"
1815
  msgstr "Format sichern"
1816
 
1817
- #: includes/fields/class-acf-field-date_picker.php:243
1818
  msgid "The format used when saving a value"
1819
  msgstr "Das verwendete Format, wenn der Wert gesichert wird"
1820
 
1821
  # @ acf
1822
- #: includes/fields/class-acf-field-date_picker.php:253
1823
- #: includes/fields/class-acf-field-date_time_picker.php:214
1824
- #: includes/fields/class-acf-field-post_object.php:447
1825
- #: includes/fields/class-acf-field-relationship.php:778
1826
- #: includes/fields/class-acf-field-select.php:524
1827
- #: includes/fields/class-acf-field-time_picker.php:142
1828
  msgid "Return Format"
1829
  msgstr "Rückgabewert"
1830
 
1831
  # @ acf
1832
- #: includes/fields/class-acf-field-date_picker.php:254
1833
- #: includes/fields/class-acf-field-date_time_picker.php:215
1834
- #: includes/fields/class-acf-field-time_picker.php:143
1835
  msgid "The format returned via template functions"
1836
  msgstr "Das Datums-Format für die Ausgabe in den Template-Funktionen"
1837
 
1838
  # @ acf
1839
- #: includes/fields/class-acf-field-date_picker.php:272
1840
- #: includes/fields/class-acf-field-date_time_picker.php:231
1841
  msgid "Week Starts On"
1842
  msgstr "Die Woche beginnt am"
1843
 
1844
- #: includes/fields/class-acf-field-date_time_picker.php:36
1845
  msgid "Date Time Picker"
1846
  msgstr "Datum/Uhrzeit"
1847
 
1848
- #: includes/fields/class-acf-field-date_time_picker.php:44
1849
  msgctxt "Date Time Picker JS timeOnlyTitle"
1850
  msgid "Choose Time"
1851
  msgstr "Zeit setzen"
1852
 
1853
- #: includes/fields/class-acf-field-date_time_picker.php:45
1854
  msgctxt "Date Time Picker JS timeText"
1855
  msgid "Time"
1856
  msgstr "Zeit"
1857
 
1858
- #: includes/fields/class-acf-field-date_time_picker.php:46
1859
  msgctxt "Date Time Picker JS hourText"
1860
  msgid "Hour"
1861
  msgstr "Stunde"
1862
 
1863
- #: includes/fields/class-acf-field-date_time_picker.php:47
1864
  msgctxt "Date Time Picker JS minuteText"
1865
  msgid "Minute"
1866
  msgstr "Minute"
1867
 
1868
- #: includes/fields/class-acf-field-date_time_picker.php:48
1869
  msgctxt "Date Time Picker JS secondText"
1870
  msgid "Second"
1871
  msgstr "Sekunde"
1872
 
1873
- #: includes/fields/class-acf-field-date_time_picker.php:49
1874
  msgctxt "Date Time Picker JS millisecText"
1875
  msgid "Millisecond"
1876
  msgstr "Millisekunde"
1877
 
1878
- #: includes/fields/class-acf-field-date_time_picker.php:50
1879
  msgctxt "Date Time Picker JS microsecText"
1880
  msgid "Microsecond"
1881
  msgstr "Mikrosekunde"
1882
 
1883
- #: includes/fields/class-acf-field-date_time_picker.php:51
1884
  msgctxt "Date Time Picker JS timezoneText"
1885
  msgid "Time Zone"
1886
  msgstr "Zeitzone"
1887
 
1888
- #: includes/fields/class-acf-field-date_time_picker.php:52
1889
  msgctxt "Date Time Picker JS currentText"
1890
  msgid "Now"
1891
  msgstr "Jetzt"
1892
 
1893
- #: includes/fields/class-acf-field-date_time_picker.php:53
1894
  msgctxt "Date Time Picker JS closeText"
1895
  msgid "Done"
1896
  msgstr "Schliessen"
1897
 
1898
- #: includes/fields/class-acf-field-date_time_picker.php:54
1899
  msgctxt "Date Time Picker JS selectText"
1900
  msgid "Select"
1901
  msgstr "Auswählen"
1902
 
1903
- #: includes/fields/class-acf-field-date_time_picker.php:56
1904
  msgctxt "Date Time Picker JS amText"
1905
  msgid "AM"
1906
  msgstr "AM"
1907
 
1908
- #: includes/fields/class-acf-field-date_time_picker.php:57
1909
  msgctxt "Date Time Picker JS amTextShort"
1910
  msgid "A"
1911
  msgstr "A"
1912
 
1913
- #: includes/fields/class-acf-field-date_time_picker.php:60
1914
  msgctxt "Date Time Picker JS pmText"
1915
  msgid "PM"
1916
  msgstr "PM"
1917
 
1918
- #: includes/fields/class-acf-field-date_time_picker.php:61
1919
  msgctxt "Date Time Picker JS pmTextShort"
1920
  msgid "P"
1921
  msgstr "P"
1922
 
1923
  # @ acf
1924
- #: includes/fields/class-acf-field-email.php:36
1925
  msgid "Email"
1926
  msgstr "E-Mail"
1927
 
1928
  # @ acf
1929
- #: includes/fields/class-acf-field-email.php:134
1930
- #: includes/fields/class-acf-field-number.php:146
1931
- #: includes/fields/class-acf-field-radio.php:292
1932
- #: includes/fields/class-acf-field-text.php:143
1933
- #: includes/fields/class-acf-field-textarea.php:140
1934
- #: includes/fields/class-acf-field-url.php:115
1935
- #: includes/fields/class-acf-field-wysiwyg.php:437
1936
- msgid "Appears when creating a new post"
1937
- msgstr "Erscheint bei der Erstellung eines neuen Beitrags"
1938
-
1939
- # @ acf
1940
- #: includes/fields/class-acf-field-email.php:142
1941
- #: includes/fields/class-acf-field-number.php:154
1942
- #: includes/fields/class-acf-field-password.php:134
1943
- #: includes/fields/class-acf-field-text.php:151
1944
- #: includes/fields/class-acf-field-textarea.php:148
1945
- #: includes/fields/class-acf-field-url.php:123
1946
  msgid "Placeholder Text"
1947
  msgstr "Platzhalter-Text"
1948
 
1949
  # @ acf
1950
- #: includes/fields/class-acf-field-email.php:143
1951
- #: includes/fields/class-acf-field-number.php:155
1952
- #: includes/fields/class-acf-field-password.php:135
1953
- #: includes/fields/class-acf-field-text.php:152
1954
- #: includes/fields/class-acf-field-textarea.php:149
1955
- #: includes/fields/class-acf-field-url.php:124
1956
  msgid "Appears within the input"
1957
  msgstr "Platzhalter-Text solange keine Eingabe im Feld vorgenommen wurde"
1958
 
1959
  # @ acf
1960
- #: includes/fields/class-acf-field-email.php:151
1961
- #: includes/fields/class-acf-field-number.php:163
1962
- #: includes/fields/class-acf-field-password.php:143
1963
- #: includes/fields/class-acf-field-text.php:160
 
1964
  msgid "Prepend"
1965
  msgstr "Voranstellen"
1966
 
1967
  # @ acf
1968
- #: includes/fields/class-acf-field-email.php:152
1969
- #: includes/fields/class-acf-field-number.php:164
1970
- #: includes/fields/class-acf-field-password.php:144
1971
- #: includes/fields/class-acf-field-text.php:161
 
1972
  msgid "Appears before the input"
1973
  msgstr "Wird dem Eingabefeld vorangestellt"
1974
 
1975
  # @ acf
1976
- #: includes/fields/class-acf-field-email.php:160
1977
- #: includes/fields/class-acf-field-number.php:172
1978
- #: includes/fields/class-acf-field-password.php:152
1979
- #: includes/fields/class-acf-field-text.php:169
 
1980
  msgid "Append"
1981
  msgstr "Anhängen"
1982
 
1983
  # @ acf
1984
- #: includes/fields/class-acf-field-email.php:161
1985
- #: includes/fields/class-acf-field-number.php:173
1986
- #: includes/fields/class-acf-field-password.php:153
1987
- #: includes/fields/class-acf-field-text.php:170
 
1988
  msgid "Appears after the input"
1989
  msgstr "Wird dem Eingabefeld hinten angestellt"
1990
 
1991
  # @ acf
1992
- #: includes/fields/class-acf-field-file.php:36
1993
  msgid "File"
1994
  msgstr "Datei"
1995
 
1996
  # @ acf
1997
- #: includes/fields/class-acf-field-file.php:47
1998
  msgid "Edit File"
1999
  msgstr "Datei bearbeiten"
2000
 
2001
  # @ acf
2002
- #: includes/fields/class-acf-field-file.php:48
2003
  msgid "Update File"
2004
  msgstr "Datei aktualisieren"
2005
 
2006
  # @ acf
2007
- #: includes/fields/class-acf-field-file.php:49
2008
- #: includes/fields/class-acf-field-image.php:54 includes/media.php:57
2009
- #: pro/fields/class-acf-field-gallery.php:55
2010
  msgid "Uploaded to this post"
2011
  msgstr "Zu diesem Beitrag hochgeladen"
2012
 
2013
- #: includes/fields/class-acf-field-file.php:145
2014
  msgid "File name"
2015
  msgstr "Dateiname"
2016
 
2017
  # @ acf
2018
- #: includes/fields/class-acf-field-file.php:149
2019
- #: includes/fields/class-acf-field-file.php:252
2020
- #: includes/fields/class-acf-field-file.php:263
2021
- #: includes/fields/class-acf-field-image.php:266
2022
- #: includes/fields/class-acf-field-image.php:295
2023
- #: pro/fields/class-acf-field-gallery.php:705
2024
- #: pro/fields/class-acf-field-gallery.php:734
2025
  msgid "File size"
2026
  msgstr "Dateigrösse"
2027
 
2028
  # @ acf
2029
- #: includes/fields/class-acf-field-file.php:174
 
 
 
 
 
 
 
 
 
2030
  msgid "Add File"
2031
  msgstr "Datei hinzufügen"
2032
 
2033
  # @ acf
2034
- #: includes/fields/class-acf-field-file.php:225
2035
  msgid "File Array"
2036
  msgstr "Datei-Array"
2037
 
2038
  # @ acf
2039
- #: includes/fields/class-acf-field-file.php:226
2040
  msgid "File URL"
2041
  msgstr "Datei-URL"
2042
 
2043
  # @ acf
2044
- #: includes/fields/class-acf-field-file.php:227
2045
  msgid "File ID"
2046
  msgstr "Datei-ID"
2047
 
2048
  # @ acf
2049
- #: includes/fields/class-acf-field-file.php:234
2050
- #: includes/fields/class-acf-field-image.php:231
2051
- #: pro/fields/class-acf-field-gallery.php:670
2052
  msgid "Library"
2053
  msgstr "Medienübersicht"
2054
 
2055
  # @ acf
2056
- #: includes/fields/class-acf-field-file.php:235
2057
- #: includes/fields/class-acf-field-image.php:232
2058
- #: pro/fields/class-acf-field-gallery.php:671
2059
  msgid "Limit the media library choice"
2060
  msgstr "Beschränkt die Auswahl in der Medienübersicht"
2061
 
2062
  # @ acf
2063
- #: includes/fields/class-acf-field-file.php:240
2064
- #: includes/fields/class-acf-field-image.php:237
2065
- #: includes/locations/class-acf-location-attachment.php:105
2066
- #: includes/locations/class-acf-location-comment.php:83
2067
- #: includes/locations/class-acf-location-nav-menu.php:106
2068
- #: includes/locations/class-acf-location-taxonomy.php:83
2069
- #: includes/locations/class-acf-location-user-form.php:91
2070
- #: includes/locations/class-acf-location-user-role.php:108
2071
- #: includes/locations/class-acf-location-widget.php:87
2072
- #: pro/fields/class-acf-field-gallery.php:676
2073
  msgid "All"
2074
  msgstr "Alle"
2075
 
2076
  # @ acf
2077
- #: includes/fields/class-acf-field-file.php:241
2078
- #: includes/fields/class-acf-field-image.php:238
2079
- #: pro/fields/class-acf-field-gallery.php:677
2080
  msgid "Uploaded to post"
2081
  msgstr "Für den Beitrag hochgeladen"
2082
 
2083
  # @ acf
2084
- #: includes/fields/class-acf-field-file.php:248
2085
- #: includes/fields/class-acf-field-image.php:245
2086
- #: pro/fields/class-acf-field-gallery.php:684
2087
  msgid "Minimum"
2088
  msgstr "Minimum"
2089
 
2090
  # @ acf
2091
- #: includes/fields/class-acf-field-file.php:249
2092
- #: includes/fields/class-acf-field-file.php:260
2093
  msgid "Restrict which files can be uploaded"
2094
  msgstr ""
2095
  "Erlaubt nur das Hochladen von Dateien die die angegebenen Eigenschaften "
2096
  "erfüllen"
2097
 
2098
  # @ acf
2099
- #: includes/fields/class-acf-field-file.php:259
2100
- #: includes/fields/class-acf-field-image.php:274
2101
- #: pro/fields/class-acf-field-gallery.php:713
2102
  msgid "Maximum"
2103
  msgstr "Maximum"
2104
 
2105
  # @ acf
2106
- #: includes/fields/class-acf-field-file.php:270
2107
- #: includes/fields/class-acf-field-image.php:303
2108
- #: pro/fields/class-acf-field-gallery.php:742
2109
  msgid "Allowed file types"
2110
  msgstr "Erlaubte Datei-Formate"
2111
 
2112
  # @ acf
2113
- #: includes/fields/class-acf-field-file.php:271
2114
- #: includes/fields/class-acf-field-image.php:304
2115
- #: pro/fields/class-acf-field-gallery.php:743
2116
  msgid "Comma separated list. Leave blank for all types"
2117
  msgstr ""
2118
  "Komma separierte Liste; ein leeres Feld bedeutet alle Dateiformate sind "
2119
  "erlaubt"
2120
 
2121
  # @ acf
2122
- #: includes/fields/class-acf-field-google-map.php:36
2123
  msgid "Google Map"
2124
  msgstr "Google Maps"
2125
 
2126
  # @ acf
2127
- #: includes/fields/class-acf-field-google-map.php:51
2128
  msgid "Locating"
2129
  msgstr "Lokalisiere"
2130
 
2131
  # @ acf
2132
- #: includes/fields/class-acf-field-google-map.php:52
2133
  msgid "Sorry, this browser does not support geolocation"
2134
  msgstr "Dieser Browser unterstützt keine Geo-Lokation"
2135
 
2136
  # @ acf
2137
- #: includes/fields/class-acf-field-google-map.php:133
2138
  msgid "Clear location"
2139
  msgstr "Position löschen"
2140
 
2141
  # @ acf
2142
- #: includes/fields/class-acf-field-google-map.php:134
2143
  msgid "Find current location"
2144
  msgstr "Aktuelle Position finden"
2145
 
2146
  # @ acf
2147
- #: includes/fields/class-acf-field-google-map.php:137
2148
  msgid "Search for address..."
2149
  msgstr "Nach der Adresse suchen..."
2150
 
2151
  # @ acf
2152
- #: includes/fields/class-acf-field-google-map.php:167
2153
- #: includes/fields/class-acf-field-google-map.php:178
2154
  msgid "Center"
2155
  msgstr "Kartenmittelpunkt"
2156
 
2157
  # @ acf
2158
- #: includes/fields/class-acf-field-google-map.php:168
2159
- #: includes/fields/class-acf-field-google-map.php:179
2160
  msgid "Center the initial map"
2161
  msgstr "Der Mittelpunkt der Ausgangskarte"
2162
 
2163
  # @ acf
2164
- #: includes/fields/class-acf-field-google-map.php:190
2165
  msgid "Zoom"
2166
  msgstr "Zoom"
2167
 
2168
  # @ acf
2169
- #: includes/fields/class-acf-field-google-map.php:191
2170
  msgid "Set the initial zoom level"
2171
  msgstr "Legt die Zoomstufe der Karte fest"
2172
 
2173
  # @ acf
2174
- #: includes/fields/class-acf-field-google-map.php:200
2175
- #: includes/fields/class-acf-field-image.php:257
2176
- #: includes/fields/class-acf-field-image.php:286
2177
- #: includes/fields/class-acf-field-oembed.php:297
2178
- #: pro/fields/class-acf-field-gallery.php:696
2179
- #: pro/fields/class-acf-field-gallery.php:725
2180
  msgid "Height"
2181
  msgstr "Höhe"
2182
 
2183
  # @ acf
2184
- #: includes/fields/class-acf-field-google-map.php:201
2185
  msgid "Customise the map height"
2186
  msgstr "Legt die Höhe der Karte fest"
2187
 
2188
  # @ acf
2189
- #: includes/fields/class-acf-field-group.php:36
2190
- #, fuzzy
2191
  msgid "Group"
2192
- msgstr ""
2193
- "Gruppe (zeigt die ausgewählten Felder in einer Gruppe innerhalb dieses Felds "
2194
- "an)"
2195
 
2196
  # @ acf
2197
- #: includes/fields/class-acf-field-group.php:469
2198
- #: pro/fields/class-acf-field-repeater.php:453
2199
  msgid "Sub Fields"
2200
  msgstr "Wiederholungsfelder"
2201
 
2202
- #: includes/fields/class-acf-field-group.php:486
2203
- #: pro/fields/class-acf-field-clone.php:890
2204
  msgid "Specify the style used to render the selected fields"
2205
  msgstr "Gib an, wie die ausgewählten Felder angezeigt werden sollen"
2206
 
2207
  # @ acf
2208
- #: includes/fields/class-acf-field-group.php:491
2209
- #: pro/fields/class-acf-field-clone.php:895
2210
- #: pro/fields/class-acf-field-flexible-content.php:629
2211
- #: pro/fields/class-acf-field-repeater.php:522
2212
  msgid "Block"
2213
  msgstr "Block"
2214
 
2215
  # @ acf
2216
- #: includes/fields/class-acf-field-group.php:492
2217
- #: pro/fields/class-acf-field-clone.php:896
2218
- #: pro/fields/class-acf-field-flexible-content.php:628
2219
- #: pro/fields/class-acf-field-repeater.php:521
2220
  msgid "Table"
2221
  msgstr "Tabelle"
2222
 
2223
  # @ acf
2224
- #: includes/fields/class-acf-field-group.php:493
2225
- #: pro/fields/class-acf-field-clone.php:897
2226
- #: pro/fields/class-acf-field-flexible-content.php:630
2227
- #: pro/fields/class-acf-field-repeater.php:523
2228
  msgid "Row"
2229
  msgstr "Reihe"
2230
 
2231
  # @ acf
2232
- #: includes/fields/class-acf-field-image.php:36
2233
  msgid "Image"
2234
  msgstr "Bild"
2235
 
2236
  # @ acf
2237
- #: includes/fields/class-acf-field-image.php:51
2238
  msgid "Select Image"
2239
  msgstr "Bild auswählen"
2240
 
2241
  # @ acf
2242
- #: includes/fields/class-acf-field-image.php:52
2243
- #: pro/fields/class-acf-field-gallery.php:53
2244
  msgid "Edit Image"
2245
  msgstr "Bild bearbeiten"
2246
 
2247
  # @ acf
2248
- #: includes/fields/class-acf-field-image.php:53
2249
- #: pro/fields/class-acf-field-gallery.php:54
2250
  msgid "Update Image"
2251
  msgstr "Bild aktualisieren"
2252
 
2253
  # @ acf
2254
- #: includes/fields/class-acf-field-image.php:55
2255
  msgid "All images"
2256
  msgstr "Alle Bilder"
2257
 
2258
  # @ acf
2259
- #: includes/fields/class-acf-field-image.php:142
2260
- #: includes/fields/class-acf-field-link.php:153 includes/input.php:267
2261
- #: pro/fields/class-acf-field-gallery.php:358
2262
- #: pro/fields/class-acf-field-gallery.php:546
2263
- msgid "Remove"
2264
- msgstr "Entfernen"
2265
-
2266
- # @ acf
2267
- #: includes/fields/class-acf-field-image.php:158
2268
  msgid "No image selected"
2269
  msgstr "Kein Bild ausgewählt"
2270
 
2271
  # @ acf
2272
- #: includes/fields/class-acf-field-image.php:158
2273
  msgid "Add Image"
2274
  msgstr "Bild hinzufügen"
2275
 
2276
  # @ acf
2277
- #: includes/fields/class-acf-field-image.php:212
2278
  msgid "Image Array"
2279
  msgstr "Bild-Array"
2280
 
2281
  # @ acf
2282
- #: includes/fields/class-acf-field-image.php:213
2283
  msgid "Image URL"
2284
  msgstr "Bild-URL"
2285
 
2286
  # @ acf
2287
- #: includes/fields/class-acf-field-image.php:214
2288
  msgid "Image ID"
2289
  msgstr "Bild-ID"
2290
 
2291
  # @ acf
2292
- #: includes/fields/class-acf-field-image.php:221
2293
  msgid "Preview Size"
2294
  msgstr "Masse der Vorschau"
2295
 
2296
  # @ acf
2297
- #: includes/fields/class-acf-field-image.php:222
2298
  msgid "Shown when entering data"
2299
  msgstr "Legt fest welche Masse die Vorschau in der Bearbeitungs-Ansicht hat"
2300
 
2301
  # @ acf
2302
- #: includes/fields/class-acf-field-image.php:246
2303
- #: includes/fields/class-acf-field-image.php:275
2304
- #: pro/fields/class-acf-field-gallery.php:685
2305
- #: pro/fields/class-acf-field-gallery.php:714
2306
  msgid "Restrict which images can be uploaded"
2307
  msgstr ""
2308
  "Erlaubt nur das Hochladen von Bildern, die die angegebenen Eigenschaften "
2309
  "erfüllen"
2310
 
2311
  # @ acf
2312
- #: includes/fields/class-acf-field-image.php:249
2313
- #: includes/fields/class-acf-field-image.php:278
2314
- #: includes/fields/class-acf-field-oembed.php:286
2315
- #: pro/fields/class-acf-field-gallery.php:688
2316
- #: pro/fields/class-acf-field-gallery.php:717
2317
  msgid "Width"
2318
  msgstr "Breite"
2319
 
2320
  # @ acf
2321
- #: includes/fields/class-acf-field-link.php:36
2322
- #, fuzzy
2323
  msgid "Link"
2324
- msgstr "Seiten-Link"
2325
 
2326
  # @ acf
2327
- #: includes/fields/class-acf-field-link.php:146
2328
- #, fuzzy
2329
  msgid "Select Link"
2330
- msgstr "Datei auswählen"
2331
 
2332
- #: includes/fields/class-acf-field-link.php:151
2333
  msgid "Opens in a new window/tab"
2334
- msgstr ""
2335
 
2336
  # @ acf
2337
- #: includes/fields/class-acf-field-link.php:186
2338
- #, fuzzy
2339
  msgid "Link Array"
2340
- msgstr "Datei-Array"
2341
 
2342
  # @ acf
2343
- #: includes/fields/class-acf-field-link.php:187
2344
- #, fuzzy
2345
  msgid "Link URL"
2346
- msgstr "Datei-URL"
2347
 
2348
  # @ acf
2349
- #: includes/fields/class-acf-field-message.php:36
2350
- #: includes/fields/class-acf-field-message.php:115
2351
- #: includes/fields/class-acf-field-true_false.php:141
2352
  msgid "Message"
2353
  msgstr "Nachricht"
2354
 
2355
  # @ acf
2356
- #: includes/fields/class-acf-field-message.php:124
2357
- #: includes/fields/class-acf-field-textarea.php:176
2358
  msgid "New Lines"
2359
  msgstr "Neue Zeilen"
2360
 
2361
  # @ acf
2362
- #: includes/fields/class-acf-field-message.php:125
2363
- #: includes/fields/class-acf-field-textarea.php:177
2364
  msgid "Controls how new lines are rendered"
2365
  msgstr "Legt fest wie Zeilenumbrüche gehandhabt werden"
2366
 
2367
  # @ acf
2368
- #: includes/fields/class-acf-field-message.php:129
2369
- #: includes/fields/class-acf-field-textarea.php:181
2370
  msgid "Automatically add paragraphs"
2371
  msgstr "Absätze automatisch hinzufügen"
2372
 
2373
  # @ acf
2374
- #: includes/fields/class-acf-field-message.php:130
2375
- #: includes/fields/class-acf-field-textarea.php:182
2376
  msgid "Automatically add &lt;br&gt;"
2377
  msgstr "Zeilenumbrüche ( &lt;br&gt; ) automatisch hinzufügen"
2378
 
2379
  # @ acf
2380
- #: includes/fields/class-acf-field-message.php:131
2381
- #: includes/fields/class-acf-field-textarea.php:183
2382
  msgid "No Formatting"
2383
  msgstr "Keine Formatierung"
2384
 
2385
  # @ acf
2386
- #: includes/fields/class-acf-field-message.php:138
2387
  msgid "Escape HTML"
2388
  msgstr "HTML enkodieren"
2389
 
2390
  # @ acf
2391
- #: includes/fields/class-acf-field-message.php:139
2392
  msgid "Allow HTML markup to display as visible text instead of rendering"
2393
  msgstr ""
2394
  "Bei aktiver Option wird HTML Code als solcher angezeigt und nicht "
2395
  "interpretiert"
2396
 
2397
  # @ acf
2398
- #: includes/fields/class-acf-field-number.php:36
2399
  msgid "Number"
2400
  msgstr "Numerisch"
2401
 
2402
  # @ acf
2403
- #: includes/fields/class-acf-field-number.php:181
 
2404
  msgid "Minimum Value"
2405
  msgstr "Mindestwert"
2406
 
2407
  # @ acf
2408
- #: includes/fields/class-acf-field-number.php:190
 
2409
  msgid "Maximum Value"
2410
  msgstr "Maximalwert"
2411
 
2412
  # @ acf
2413
- #: includes/fields/class-acf-field-number.php:199
 
2414
  msgid "Step Size"
2415
  msgstr "Schrittweite"
2416
 
2417
  # @ acf
2418
- #: includes/fields/class-acf-field-number.php:237
2419
  msgid "Value must be a number"
2420
  msgstr "Wert muss eine Zahl sein"
2421
 
2422
  # @ acf
2423
- #: includes/fields/class-acf-field-number.php:255
2424
  #, php-format
2425
  msgid "Value must be equal to or higher than %d"
2426
  msgstr "Wert muss grösser oder gleich %d sein"
2427
 
2428
  # @ acf
2429
- #: includes/fields/class-acf-field-number.php:263
2430
  #, php-format
2431
  msgid "Value must be equal to or lower than %d"
2432
  msgstr "Wert muss kleiner oder gleich %d sein"
2433
 
2434
  # @ acf
2435
- #: includes/fields/class-acf-field-oembed.php:36
2436
  msgid "oEmbed"
2437
  msgstr "oEmbed"
2438
 
2439
  # @ acf
2440
- #: includes/fields/class-acf-field-oembed.php:237
2441
  msgid "Enter URL"
2442
  msgstr "URL eingeben"
2443
 
2444
- #: includes/fields/class-acf-field-oembed.php:250
2445
- #: includes/fields/class-acf-field-taxonomy.php:904
2446
  msgid "Error."
2447
  msgstr "Fehler."
2448
 
2449
  # @ acf
2450
- #: includes/fields/class-acf-field-oembed.php:250
2451
  msgid "No embed found for the given URL."
2452
  msgstr "Keine Inhalte für die eingegebene URL gefunden."
2453
 
2454
  # @ acf
2455
- #: includes/fields/class-acf-field-oembed.php:283
2456
- #: includes/fields/class-acf-field-oembed.php:294
2457
  msgid "Embed Size"
2458
  msgstr "Masse"
2459
 
2460
  # @ acf
2461
- #: includes/fields/class-acf-field-page_link.php:192
2462
  msgid "Archives"
2463
  msgstr "Archive"
2464
 
2465
  # @ acf
2466
- #: includes/fields/class-acf-field-page_link.php:500
2467
- #: includes/fields/class-acf-field-post_object.php:399
2468
- #: includes/fields/class-acf-field-relationship.php:704
2469
  msgid "Filter by Post Type"
2470
  msgstr "Nach Post Types filtern"
2471
 
2472
  # @ acf
2473
- #: includes/fields/class-acf-field-page_link.php:508
2474
- #: includes/fields/class-acf-field-post_object.php:407
2475
- #: includes/fields/class-acf-field-relationship.php:712
2476
  msgid "All post types"
2477
  msgstr "Alle verfügbaren Post Types"
2478
 
2479
  # @ acf
2480
- #: includes/fields/class-acf-field-page_link.php:514
2481
- #: includes/fields/class-acf-field-post_object.php:413
2482
- #: includes/fields/class-acf-field-relationship.php:718
2483
  msgid "Filter by Taxonomy"
2484
  msgstr "Nach Taxonomien filtern"
2485
 
2486
  # @ acf
2487
- #: includes/fields/class-acf-field-page_link.php:522
2488
- #: includes/fields/class-acf-field-post_object.php:421
2489
- #: includes/fields/class-acf-field-relationship.php:726
2490
  msgid "All taxonomies"
2491
  msgstr "Alle Taxonomien"
2492
 
2493
- # @ acf
2494
- #: includes/fields/class-acf-field-page_link.php:528
2495
- #: includes/fields/class-acf-field-post_object.php:427
2496
- #: includes/fields/class-acf-field-radio.php:259
2497
- #: includes/fields/class-acf-field-select.php:484
2498
- #: includes/fields/class-acf-field-taxonomy.php:799
2499
- #: includes/fields/class-acf-field-user.php:423
2500
- msgid "Allow Null?"
2501
- msgstr "NULL-Werte zulassen?"
2502
-
2503
- #: includes/fields/class-acf-field-page_link.php:538
2504
  msgid "Allow Archives URLs"
2505
  msgstr "Archiv URLs erlauben"
2506
 
2507
  # @ acf
2508
- #: includes/fields/class-acf-field-page_link.php:548
2509
- #: includes/fields/class-acf-field-post_object.php:437
2510
- #: includes/fields/class-acf-field-select.php:494
2511
- #: includes/fields/class-acf-field-user.php:433
2512
  msgid "Select multiple values?"
2513
  msgstr "Mehrere Werte auswählbar?"
2514
 
2515
  # @ acf
2516
- #: includes/fields/class-acf-field-password.php:36
2517
  msgid "Password"
2518
  msgstr "Passwort"
2519
 
2520
  # @ acf
2521
- #: includes/fields/class-acf-field-post_object.php:36
2522
- #: includes/fields/class-acf-field-post_object.php:452
2523
- #: includes/fields/class-acf-field-relationship.php:783
2524
  msgid "Post Object"
2525
  msgstr "Beitrags-Objekt"
2526
 
2527
  # @ acf
2528
- #: includes/fields/class-acf-field-post_object.php:453
2529
- #: includes/fields/class-acf-field-relationship.php:784
2530
  msgid "Post ID"
2531
  msgstr "Beitrags-ID"
2532
 
2533
  # @ acf
2534
- #: includes/fields/class-acf-field-radio.php:36
2535
  msgid "Radio Button"
2536
  msgstr "Radio-Button"
2537
 
2538
  # @ acf
2539
- #: includes/fields/class-acf-field-radio.php:269
2540
  msgid "Other"
2541
  msgstr "Sonstige"
2542
 
2543
  # @ acf
2544
- #: includes/fields/class-acf-field-radio.php:274
2545
  msgid "Add 'other' choice to allow for custom values"
2546
  msgstr ""
2547
  "Fügt die Option 'Sonstige' hinzu, welche erlaubt, benutzerdefinierte Werte "
2548
  "hinzuzufügen"
2549
 
2550
  # @ acf
2551
- #: includes/fields/class-acf-field-radio.php:280
2552
  msgid "Save Other"
2553
  msgstr "'Sonstige' speichern"
2554
 
2555
  # @ acf
2556
- #: includes/fields/class-acf-field-radio.php:285
2557
  msgid "Save 'other' values to the field's choices"
2558
  msgstr "Füge 'Sonstige'-Werte zu den Auswahl Optionen hinzu"
2559
 
 
 
 
 
2560
  # @ acf
2561
- #: includes/fields/class-acf-field-relationship.php:36
2562
  msgid "Relationship"
2563
  msgstr "Beziehung"
2564
 
2565
  # @ acf
2566
- #: includes/fields/class-acf-field-relationship.php:48
2567
  msgid "Minimum values reached ( {min} values )"
2568
  msgstr "Minimum der Einträge mit ({min} Einträge) erreicht"
2569
 
2570
  # @ acf
2571
- #: includes/fields/class-acf-field-relationship.php:49
2572
  msgid "Maximum values reached ( {max} values )"
2573
  msgstr "Maximum der Einträge mit ({max} Einträge) erreicht"
2574
 
2575
  # @ acf
2576
- #: includes/fields/class-acf-field-relationship.php:50
2577
  msgid "Loading"
2578
  msgstr "Lade"
2579
 
2580
  # @ acf
2581
- #: includes/fields/class-acf-field-relationship.php:51
2582
  msgid "No matches found"
2583
  msgstr "Keine Übereinstimmung gefunden"
2584
 
2585
  # @ acf
2586
- #: includes/fields/class-acf-field-relationship.php:585
2587
- msgid "Search..."
2588
- msgstr "Suchen..."
2589
-
2590
- # @ acf
2591
- #: includes/fields/class-acf-field-relationship.php:594
2592
  msgid "Select post type"
2593
  msgstr "Beitrag-Typ auswählen"
2594
 
2595
  # @ acf
2596
- #: includes/fields/class-acf-field-relationship.php:607
2597
  msgid "Select taxonomy"
2598
  msgstr "Taxonomie auswählen"
2599
 
2600
  # @ acf
2601
- #: includes/fields/class-acf-field-relationship.php:732
 
 
 
 
 
2602
  msgid "Filters"
2603
  msgstr "Filter"
2604
 
2605
  # @ acf
2606
- #: includes/fields/class-acf-field-relationship.php:738
2607
  #: includes/locations/class-acf-location-post-type.php:27
2608
  msgid "Post Type"
2609
  msgstr "Beitrags-Typ"
2610
 
2611
  # @ acf
2612
- #: includes/fields/class-acf-field-relationship.php:739
2613
- #: includes/fields/class-acf-field-taxonomy.php:36
2614
- #: includes/fields/class-acf-field-taxonomy.php:769
2615
  msgid "Taxonomy"
2616
  msgstr "Taxonomie"
2617
 
2618
  # @ acf
2619
- #: includes/fields/class-acf-field-relationship.php:746
2620
  msgid "Elements"
2621
  msgstr "Elemente"
2622
 
2623
  # @ acf
2624
- #: includes/fields/class-acf-field-relationship.php:747
2625
  msgid "Selected elements will be displayed in each result"
2626
  msgstr "Die ausgewählten Elemente werden in jedem Ergebnis mit angezeigt"
2627
 
2628
  # @ acf
2629
- #: includes/fields/class-acf-field-relationship.php:758
2630
  msgid "Minimum posts"
2631
  msgstr "Min. Anzahl der Beiträge"
2632
 
2633
  # @ acf
2634
- #: includes/fields/class-acf-field-relationship.php:767
2635
  msgid "Maximum posts"
2636
  msgstr "Max. Anzahl der Beiträge"
2637
 
2638
  # @ acf
2639
- #: includes/fields/class-acf-field-relationship.php:871
2640
- #: pro/fields/class-acf-field-gallery.php:815
2641
  #, php-format
2642
  msgid "%s requires at least %s selection"
2643
  msgid_plural "%s requires at least %s selections"
2644
  msgstr[0] "%s benötigt mindestens %s Selektion"
2645
  msgstr[1] "%s benötigt mindestens %s Selektionen"
2646
 
2647
- #: includes/fields/class-acf-field-select.php:36
2648
- #: includes/fields/class-acf-field-taxonomy.php:791
2649
  msgctxt "noun"
2650
  msgid "Select"
2651
  msgstr "Auswahlmenü"
2652
 
2653
- #: includes/fields/class-acf-field-select.php:49
2654
  msgctxt "Select2 JS matches_1"
2655
  msgid "One result is available, press enter to select it."
2656
  msgstr "Ein Resultat gefunden, mit Enter auswählen."
2657
 
2658
- #: includes/fields/class-acf-field-select.php:50
2659
  #, php-format
2660
  msgctxt "Select2 JS matches_n"
2661
  msgid "%d results are available, use up and down arrow keys to navigate."
2662
  msgstr "%d Resultate gefunden, benutze die Pfeiltasten um zu navigieren."
2663
 
2664
- #: includes/fields/class-acf-field-select.php:51
2665
  msgctxt "Select2 JS matches_0"
2666
  msgid "No matches found"
2667
  msgstr "Keine Übereinstimmungen gefunden"
2668
 
2669
- #: includes/fields/class-acf-field-select.php:52
2670
  msgctxt "Select2 JS input_too_short_1"
2671
  msgid "Please enter 1 or more characters"
2672
  msgstr "Bitte eins oder mehrere Zeichen eingeben"
2673
 
2674
- #: includes/fields/class-acf-field-select.php:53
2675
  #, php-format
2676
  msgctxt "Select2 JS input_too_short_n"
2677
  msgid "Please enter %d or more characters"
2678
  msgstr "Bitte %d mehr Zeichen eingeben"
2679
 
2680
- #: includes/fields/class-acf-field-select.php:54
2681
  msgctxt "Select2 JS input_too_long_1"
2682
  msgid "Please delete 1 character"
2683
  msgstr "Bitte ein Zeichen löschen"
2684
 
2685
- #: includes/fields/class-acf-field-select.php:55
2686
  #, php-format
2687
  msgctxt "Select2 JS input_too_long_n"
2688
  msgid "Please delete %d characters"
2689
  msgstr "Bitte %d Zeichen löschen"
2690
 
2691
- #: includes/fields/class-acf-field-select.php:56
2692
  msgctxt "Select2 JS selection_too_long_1"
2693
  msgid "You can only select 1 item"
2694
  msgstr "Du kannst du ein Resultat wählen"
2695
 
2696
- #: includes/fields/class-acf-field-select.php:57
2697
  #, php-format
2698
  msgctxt "Select2 JS selection_too_long_n"
2699
  msgid "You can only select %d items"
2700
  msgstr "Du kannst nur %d Resultate auswählen"
2701
 
2702
- #: includes/fields/class-acf-field-select.php:58
2703
  msgctxt "Select2 JS load_more"
2704
  msgid "Loading more results&hellip;"
2705
  msgstr "Lade weitere Resultate&hellip;"
2706
 
2707
- #: includes/fields/class-acf-field-select.php:59
2708
  msgctxt "Select2 JS searching"
2709
  msgid "Searching&hellip;"
2710
  msgstr "Suche&hellip;"
2711
 
2712
- #: includes/fields/class-acf-field-select.php:60
2713
  msgctxt "Select2 JS load_fail"
2714
  msgid "Loading failed"
2715
  msgstr "Fehler beim Laden"
2716
 
2717
- #: includes/fields/class-acf-field-select.php:270 includes/media.php:54
2718
  msgctxt "verb"
2719
  msgid "Select"
2720
  msgstr "Auswählen"
2721
 
2722
  # @ acf
2723
- #: includes/fields/class-acf-field-select.php:504
2724
- #: includes/fields/class-acf-field-true_false.php:159
2725
  msgid "Stylised UI"
2726
  msgstr "Modernes Auswahlfeld"
2727
 
2728
  # @ acf
2729
- #: includes/fields/class-acf-field-select.php:514
2730
  msgid "Use AJAX to lazy load choices?"
2731
- msgstr "AJAX zum Laden der Einträge aktivieren"
2732
 
2733
- #: includes/fields/class-acf-field-select.php:525
2734
  msgid "Specify the value returned"
2735
  msgstr "Rückgabewert festlegen"
2736
 
2737
- #: includes/fields/class-acf-field-separator.php:36
2738
  msgid "Separator"
2739
- msgstr ""
2740
 
2741
  # @ acf
2742
- #: includes/fields/class-acf-field-tab.php:36
2743
  msgid "Tab"
2744
  msgstr "Tab"
2745
 
2746
  # @ acf
2747
- #: includes/fields/class-acf-field-tab.php:96
2748
  msgid ""
2749
  "The tab field will display incorrectly when added to a Table style repeater "
2750
  "field or flexible content field layout"
@@ -2753,7 +2778,7 @@ msgstr ""
2753
  "oder Flexible-Inhalte-Feld im Tabellen-Layout eingebunden ist"
2754
 
2755
  # @ acf
2756
- #: includes/fields/class-acf-field-tab.php:97
2757
  msgid ""
2758
  "Use \"Tab Fields\" to better organize your edit screen by grouping fields "
2759
  "together."
@@ -2762,7 +2787,7 @@ msgstr ""
2762
  "Tabs zusammengefasst werden."
2763
 
2764
  # @ acf
2765
- #: includes/fields/class-acf-field-tab.php:98
2766
  msgid ""
2767
  "All fields following this \"tab field\" (or until another \"tab field\" is "
2768
  "defined) will be grouped together using this field's label as the tab "
@@ -2773,280 +2798,285 @@ msgstr ""
2773
  "zusammengefasst."
2774
 
2775
  # @ acf
2776
- #: includes/fields/class-acf-field-tab.php:112
2777
  msgid "Placement"
2778
  msgstr "Platzierung Tabs"
2779
 
2780
- #: includes/fields/class-acf-field-tab.php:124
2781
  msgid "End-point"
2782
  msgstr "Abschluss"
2783
 
2784
- #: includes/fields/class-acf-field-tab.php:125
2785
  msgid "Use this field as an end-point and start a new group of tabs"
2786
  msgstr "Benutze das Feld als einen Abschluss und starte eine Gruppe an Tabs"
2787
 
2788
- # @ acf
2789
- #: includes/fields/class-acf-field-taxonomy.php:719
2790
- #: includes/fields/class-acf-field-true_false.php:95
2791
- #: includes/fields/class-acf-field-true_false.php:184 includes/input.php:266
2792
- #: pro/admin/views/html-settings-updates.php:103
2793
- msgid "No"
2794
- msgstr "Nein"
2795
 
2796
  # @ acf
2797
- #: includes/fields/class-acf-field-taxonomy.php:738
2798
  msgid "None"
2799
  msgstr "Nur Text"
2800
 
2801
  # @ acf
2802
- #: includes/fields/class-acf-field-taxonomy.php:770
2803
  msgid "Select the taxonomy to be displayed"
2804
  msgstr "Wähle die Taxonomie, welche angezeigt werden soll"
2805
 
2806
  # @ acf
2807
- #: includes/fields/class-acf-field-taxonomy.php:779
2808
  msgid "Appearance"
2809
  msgstr "Anzeige"
2810
 
2811
  # @ acf
2812
- #: includes/fields/class-acf-field-taxonomy.php:780
2813
  msgid "Select the appearance of this field"
2814
  msgstr "Wähle das Aussehen für dieses Feld"
2815
 
2816
  # @ acf
2817
- #: includes/fields/class-acf-field-taxonomy.php:785
2818
  msgid "Multiple Values"
2819
- msgstr "Mehrere Werte auswählen?"
2820
 
2821
  # @ acf
2822
- #: includes/fields/class-acf-field-taxonomy.php:787
2823
  msgid "Multi Select"
2824
  msgstr "Auswahlmenü"
2825
 
2826
  # @ acf
2827
- #: includes/fields/class-acf-field-taxonomy.php:789
2828
  msgid "Single Value"
2829
  msgstr "Einzelne Werte"
2830
 
2831
  # @ acf
2832
- #: includes/fields/class-acf-field-taxonomy.php:790
2833
  msgid "Radio Buttons"
2834
  msgstr "Radio Button"
2835
 
2836
  # @ acf
2837
- #: includes/fields/class-acf-field-taxonomy.php:809
2838
  msgid "Create Terms"
2839
  msgstr "Neue Einträge erlauben"
2840
 
2841
  # @ acf
2842
- #: includes/fields/class-acf-field-taxonomy.php:810
2843
  msgid "Allow new terms to be created whilst editing"
2844
  msgstr "Erlaube das Erstellen neuer Einträge beim Editieren"
2845
 
2846
- #: includes/fields/class-acf-field-taxonomy.php:819
2847
  msgid "Save Terms"
2848
  msgstr "Einträge speichern"
2849
 
2850
  # @ acf
2851
- #: includes/fields/class-acf-field-taxonomy.php:820
2852
  msgid "Connect selected terms to the post"
2853
  msgstr "Speichert die ausgewählten Einträge auch im Beitrag"
2854
 
2855
- #: includes/fields/class-acf-field-taxonomy.php:829
2856
  msgid "Load Terms"
2857
  msgstr "Einträge laden"
2858
 
2859
- #: includes/fields/class-acf-field-taxonomy.php:830
2860
  msgid "Load value from posts terms"
2861
  msgstr "Den Wert von den Einträgen des Beitrags laden"
2862
 
2863
  # @ acf
2864
- #: includes/fields/class-acf-field-taxonomy.php:844
2865
  msgid "Term Object"
2866
  msgstr "Begriffs-Objekt"
2867
 
2868
  # @ acf
2869
- #: includes/fields/class-acf-field-taxonomy.php:845
2870
  msgid "Term ID"
2871
  msgstr "Begriffs-ID"
2872
 
2873
  # @ acf
2874
- #: includes/fields/class-acf-field-taxonomy.php:904
2875
  #, php-format
2876
  msgid "User unable to add new %s"
2877
  msgstr "Der Benutzer kann keine neue %s hinzufügen"
2878
 
2879
  # @ acf
2880
- #: includes/fields/class-acf-field-taxonomy.php:917
2881
  #, php-format
2882
  msgid "%s already exists"
2883
  msgstr "%s ist bereits vorhanden"
2884
 
2885
  # @ acf
2886
- #: includes/fields/class-acf-field-taxonomy.php:958
2887
  #, php-format
2888
  msgid "%s added"
2889
  msgstr "%s hinzugefügt"
2890
 
2891
  # @ acf
2892
- #: includes/fields/class-acf-field-taxonomy.php:1003
2893
  msgid "Add"
2894
  msgstr "Hinzufügen"
2895
 
2896
  # @ acf
2897
- #: includes/fields/class-acf-field-text.php:36
2898
  msgid "Text"
2899
  msgstr "Text einzeilig"
2900
 
2901
  # @ acf
2902
- #: includes/fields/class-acf-field-text.php:178
2903
- #: includes/fields/class-acf-field-textarea.php:157
2904
  msgid "Character Limit"
2905
  msgstr "Zeichenbegrenzung"
2906
 
2907
  # @ acf
2908
- #: includes/fields/class-acf-field-text.php:179
2909
- #: includes/fields/class-acf-field-textarea.php:158
2910
  msgid "Leave blank for no limit"
2911
  msgstr "Ein leeres Eingabefeld bedeutet keine Begrenzung"
2912
 
2913
  # @ acf
2914
- #: includes/fields/class-acf-field-textarea.php:36
2915
  msgid "Text Area"
2916
  msgstr "Text mehrzeilig"
2917
 
2918
  # @ acf
2919
- #: includes/fields/class-acf-field-textarea.php:166
2920
  msgid "Rows"
2921
  msgstr "Zeilenanzahl"
2922
 
2923
  # @ acf
2924
- #: includes/fields/class-acf-field-textarea.php:167
2925
  msgid "Sets the textarea height"
2926
  msgstr "Definiert die Höhe des Textfelds"
2927
 
2928
- #: includes/fields/class-acf-field-time_picker.php:36
2929
  msgid "Time Picker"
2930
  msgstr "Uhrzeit"
2931
 
2932
  # @ acf
2933
- #: includes/fields/class-acf-field-true_false.php:36
2934
  msgid "True / False"
2935
  msgstr "Ja/Nein"
2936
 
2937
  # @ acf
2938
- #: includes/fields/class-acf-field-true_false.php:94
2939
- #: includes/fields/class-acf-field-true_false.php:174 includes/input.php:265
2940
- #: pro/admin/views/html-settings-updates.php:93
2941
  msgid "Yes"
2942
  msgstr "Ja"
2943
 
2944
- #: includes/fields/class-acf-field-true_false.php:142
 
 
 
 
 
 
 
2945
  msgid "Displays text alongside the checkbox"
2946
  msgstr "Zeigt Text neben der Checkbox"
2947
 
2948
- #: includes/fields/class-acf-field-true_false.php:170
2949
  msgid "On Text"
2950
  msgstr "Wenn aktiv"
2951
 
2952
- #: includes/fields/class-acf-field-true_false.php:171
2953
  msgid "Text shown when active"
2954
  msgstr "Angezeigter Text im aktiven Zustand"
2955
 
2956
- #: includes/fields/class-acf-field-true_false.php:180
2957
  msgid "Off Text"
2958
  msgstr "Wenn inaktiv"
2959
 
2960
- #: includes/fields/class-acf-field-true_false.php:181
2961
  msgid "Text shown when inactive"
2962
  msgstr "Angezeigter Text im inaktiven Zustand"
2963
 
2964
  # @ acf
2965
- #: includes/fields/class-acf-field-url.php:36
2966
  msgid "Url"
2967
  msgstr "URL"
2968
 
2969
  # @ acf
2970
- #: includes/fields/class-acf-field-url.php:165
2971
  msgid "Value must be a valid URL"
2972
  msgstr "Bitte eine gültige URL eingeben"
2973
 
2974
  # @ acf
2975
- #: includes/fields/class-acf-field-user.php:36 includes/locations.php:95
2976
  msgid "User"
2977
  msgstr "Benutzer"
2978
 
2979
  # @ acf
2980
- #: includes/fields/class-acf-field-user.php:408
2981
  msgid "Filter by role"
2982
  msgstr "Filtere nach Benutzerrollen"
2983
 
2984
  # @ acf
2985
- #: includes/fields/class-acf-field-user.php:416
2986
  msgid "All user roles"
2987
  msgstr "Alle Benutzerrollen"
2988
 
2989
  # @ acf
2990
- #: includes/fields/class-acf-field-wysiwyg.php:36
2991
  msgid "Wysiwyg Editor"
2992
  msgstr "WYSIWYG-Editor"
2993
 
2994
  # @ acf
2995
- #: includes/fields/class-acf-field-wysiwyg.php:385
2996
  msgid "Visual"
2997
  msgstr "Visuell"
2998
 
2999
  # @ acf
3000
- #: includes/fields/class-acf-field-wysiwyg.php:386
3001
  msgctxt "Name for the Text editor tab (formerly HTML)"
3002
  msgid "Text"
3003
  msgstr "Text"
3004
 
3005
- #: includes/fields/class-acf-field-wysiwyg.php:392
3006
  msgid "Click to initialize TinyMCE"
3007
  msgstr "Klicken um TinyMCE zu initialisieren"
3008
 
3009
  # @ acf
3010
- #: includes/fields/class-acf-field-wysiwyg.php:445
3011
  msgid "Tabs"
3012
  msgstr "Tabs"
3013
 
3014
  # @ acf
3015
- #: includes/fields/class-acf-field-wysiwyg.php:450
3016
  msgid "Visual & Text"
3017
  msgstr "Visuell & Text"
3018
 
3019
  # @ acf
3020
- #: includes/fields/class-acf-field-wysiwyg.php:451
3021
  msgid "Visual Only"
3022
  msgstr "Nur Visuell"
3023
 
3024
  # @ acf
3025
- #: includes/fields/class-acf-field-wysiwyg.php:452
3026
  msgid "Text Only"
3027
  msgstr "Nur Text"
3028
 
3029
  # @ acf
3030
- #: includes/fields/class-acf-field-wysiwyg.php:459
3031
  msgid "Toolbar"
3032
  msgstr "Werkzeugleiste"
3033
 
3034
  # @ acf
3035
- #: includes/fields/class-acf-field-wysiwyg.php:469
3036
  msgid "Show Media Upload Buttons?"
3037
  msgstr "Button zum Hochladen von Medien anzeigen?"
3038
 
3039
- #: includes/fields/class-acf-field-wysiwyg.php:479
3040
  msgid "Delay initialization?"
3041
  msgstr "Initialisierung verzögern?"
3042
 
3043
- #: includes/fields/class-acf-field-wysiwyg.php:480
3044
  msgid "TinyMCE will not be initalized until field is clicked"
3045
- msgstr "TinyMCE wird nicht initialisiert bis das Feld geklickt wird."
3046
 
3047
  # @ acf
3048
  #: includes/forms/form-comment.php:166 includes/forms/form-post.php:303
3049
- #: pro/admin/admin-options-page.php:304
3050
  msgid "Edit field group"
3051
  msgstr "Feld-Gruppen bearbeiten"
3052
 
@@ -3055,8 +3085,8 @@ msgid "Validate Email"
3055
  msgstr "E-Mail bestätigen"
3056
 
3057
  # @ acf
3058
- #: includes/forms/form-front.php:103
3059
- #: pro/fields/class-acf-field-gallery.php:588 pro/options-page.php:81
3060
  msgid "Update"
3061
  msgstr "Aktualisieren"
3062
 
@@ -3070,44 +3100,49 @@ msgid "Spam Detected"
3070
  msgstr "Spam erkannt"
3071
 
3072
  # @ acf
3073
- #: includes/input.php:258
3074
  msgid "Expand Details"
3075
  msgstr "Details einblenden"
3076
 
3077
  # @ acf
3078
- #: includes/input.php:259
3079
  msgid "Collapse Details"
3080
  msgstr "Details ausblenden"
3081
 
3082
  # @ acf
3083
- #: includes/input.php:260
3084
  msgid "Validation successful"
3085
  msgstr "Überprüfung erfolgreich"
3086
 
3087
  # @ acf
3088
- #: includes/input.php:261 includes/validation.php:285
3089
  #: includes/validation.php:296
3090
  msgid "Validation failed"
3091
  msgstr "Überprüfung fehlgeschlagen"
3092
 
3093
  # @ acf
3094
- #: includes/input.php:262
3095
  msgid "1 field requires attention"
3096
  msgstr "Für 1 Feld ist eine Aktualisierung notwendig"
3097
 
3098
  # @ acf
3099
- #: includes/input.php:263
3100
  #, php-format
3101
  msgid "%d fields require attention"
3102
  msgstr "Für %d Felder ist eine Aktualisierung notwendig"
3103
 
3104
- #: includes/input.php:264
3105
  msgid "Restricted"
3106
  msgstr "Eingeschränkt"
3107
 
3108
- #: includes/input.php:268
 
 
 
 
 
3109
  msgid "Cancel"
3110
- msgstr ""
3111
 
3112
  # @ acf
3113
  #: includes/locations.php:93 includes/locations/class-acf-location-post.php:27
@@ -3129,10 +3164,10 @@ msgstr "Formulare"
3129
  msgid "Attachment"
3130
  msgstr "Dateianhang"
3131
 
3132
- #: includes/locations/class-acf-location-attachment.php:113
3133
  #, php-format
3134
  msgid "All %s formats"
3135
- msgstr ""
3136
 
3137
  # @ acf
3138
  #: includes/locations/class-acf-location-comment.php:27
@@ -3145,7 +3180,7 @@ msgid "Current User Role"
3145
  msgstr "Aktuelle Benutzer-Rolle"
3146
 
3147
  # @ acf
3148
- #: includes/locations/class-acf-location-current-user-role.php:114
3149
  msgid "Super Admin"
3150
  msgstr "Super-Admin"
3151
 
@@ -3155,37 +3190,36 @@ msgid "Current User"
3155
  msgstr "Aktueller Benutzer"
3156
 
3157
  # @ acf
3158
- #: includes/locations/class-acf-location-current-user.php:101
3159
  msgid "Logged in"
3160
- msgstr "ist angemeldet"
3161
 
3162
  # @ acf
3163
- #: includes/locations/class-acf-location-current-user.php:102
3164
  msgid "Viewing front end"
3165
- msgstr "ist im Front-End"
3166
 
3167
  # @ acf
3168
- #: includes/locations/class-acf-location-current-user.php:103
3169
  msgid "Viewing back end"
3170
- msgstr "ist im Back-End"
3171
 
3172
  #: includes/locations/class-acf-location-nav-menu-item.php:27
3173
  msgid "Menu Item"
3174
- msgstr ""
3175
 
3176
  #: includes/locations/class-acf-location-nav-menu.php:27
3177
  msgid "Menu"
3178
- msgstr ""
3179
 
3180
  # @ acf
3181
- #: includes/locations/class-acf-location-nav-menu.php:113
3182
- #, fuzzy
3183
  msgid "Menu Locations"
3184
- msgstr "Position"
3185
 
3186
- #: includes/locations/class-acf-location-nav-menu.php:123
3187
  msgid "Menus"
3188
- msgstr ""
3189
 
3190
  # @ acf
3191
  #: includes/locations/class-acf-location-page-parent.php:27
@@ -3198,8 +3232,8 @@ msgid "Page Template"
3198
  msgstr "Seiten-Template"
3199
 
3200
  # @ acf
3201
- #: includes/locations/class-acf-location-page-template.php:102
3202
- #: includes/locations/class-acf-location-post-template.php:156
3203
  msgid "Default Template"
3204
  msgstr "Standard-Template"
3205
 
@@ -3209,27 +3243,27 @@ msgid "Page Type"
3209
  msgstr "Seitentyp"
3210
 
3211
  # @ acf
3212
- #: includes/locations/class-acf-location-page-type.php:149
3213
  msgid "Front Page"
3214
  msgstr "Startseite"
3215
 
3216
  # @ acf
3217
- #: includes/locations/class-acf-location-page-type.php:150
3218
  msgid "Posts Page"
3219
  msgstr "Beitrags-Seite"
3220
 
3221
  # @ acf
3222
- #: includes/locations/class-acf-location-page-type.php:151
3223
  msgid "Top Level Page (no parent)"
3224
  msgstr "Seite ohne übergeordnete Seiten"
3225
 
3226
  # @ acf
3227
- #: includes/locations/class-acf-location-page-type.php:152
3228
  msgid "Parent Page (has children)"
3229
  msgstr "Übergeordnete Seite (mit Unterseiten)"
3230
 
3231
  # @ acf
3232
- #: includes/locations/class-acf-location-page-type.php:153
3233
  msgid "Child Page (has parent)"
3234
  msgstr "Unterseite (mit übergeordneter Seite)"
3235
 
@@ -3254,10 +3288,9 @@ msgid "Post Taxonomy"
3254
  msgstr "Beitrags-Taxonomie"
3255
 
3256
  # @ acf
3257
- #: includes/locations/class-acf-location-post-template.php:29
3258
- #, fuzzy
3259
  msgid "Post Template"
3260
- msgstr "Seiten-Template"
3261
 
3262
  # @ acf
3263
  #: includes/locations/class-acf-location-taxonomy.php:27
@@ -3270,12 +3303,12 @@ msgid "User Form"
3270
  msgstr "Benutzer-Formular"
3271
 
3272
  # @ acf
3273
- #: includes/locations/class-acf-location-user-form.php:92
3274
  msgid "Add / Edit"
3275
  msgstr "Hinzufügen / Bearbeiten"
3276
 
3277
  # @ acf
3278
- #: includes/locations/class-acf-location-user-form.php:93
3279
  msgid "Register"
3280
  msgstr "Registrieren"
3281
 
@@ -3312,12 +3345,12 @@ msgid "Advanced Custom Fields PRO"
3312
  msgstr "Advanced Custom Fields PRO"
3313
 
3314
  # @ acf
3315
- #: pro/admin/admin-options-page.php:196
3316
  msgid "Publish"
3317
  msgstr "Veröffentlichen"
3318
 
3319
  # @ acf
3320
- #: pro/admin/admin-options-page.php:202
3321
  #, php-format
3322
  msgid ""
3323
  "No Custom Field Groups found for this options page. <a href=\"%s\">Create a "
@@ -3330,29 +3363,29 @@ msgstr ""
3330
  #: pro/admin/admin-settings-updates.php:78
3331
  msgid "<b>Error</b>. Could not connect to update server"
3332
  msgstr ""
3333
- "<b>Fehler</b>. Verbindung zum Update-Server konnte nicht hergestellt werden."
3334
 
3335
  # @ acf
3336
  #: pro/admin/admin-settings-updates.php:162
3337
- #: pro/admin/views/html-settings-updates.php:17
3338
  msgid "Updates"
3339
  msgstr "Aktualisierungen"
3340
 
3341
  # @ acf
3342
- #: pro/admin/views/html-settings-updates.php:11
3343
  msgid "Deactivate License"
3344
  msgstr "Lizenz deaktivieren"
3345
 
3346
  # @ acf
3347
- #: pro/admin/views/html-settings-updates.php:11
3348
  msgid "Activate License"
3349
  msgstr "Lizenz aktivieren"
3350
 
3351
- #: pro/admin/views/html-settings-updates.php:21
3352
  msgid "License Information"
3353
  msgstr "Lizenzinformationen"
3354
 
3355
- #: pro/admin/views/html-settings-updates.php:24
3356
  #, php-format
3357
  msgid ""
3358
  "To unlock updates, please enter your license key below. If you don't have a "
@@ -3364,366 +3397,366 @@ msgstr ""
3364
  "target=\"_blank\">Details & Preise</a>."
3365
 
3366
  # @ acf
3367
- #: pro/admin/views/html-settings-updates.php:33
3368
  msgid "License Key"
3369
  msgstr "Lizenzschlüssel"
3370
 
3371
  # @ acf
3372
- #: pro/admin/views/html-settings-updates.php:65
3373
  msgid "Update Information"
3374
  msgstr "Aktualisierungsinformationen"
3375
 
3376
  # @ acf
3377
- #: pro/admin/views/html-settings-updates.php:72
3378
  msgid "Current Version"
3379
  msgstr "Installierte Version"
3380
 
3381
  # @ acf
3382
- #: pro/admin/views/html-settings-updates.php:80
3383
  msgid "Latest Version"
3384
  msgstr "Aktuellste Version"
3385
 
3386
  # @ acf
3387
- #: pro/admin/views/html-settings-updates.php:88
3388
  msgid "Update Available"
3389
  msgstr "Aktualisierung verfügbar"
3390
 
3391
  # @ acf
3392
- #: pro/admin/views/html-settings-updates.php:96
3393
  msgid "Update Plugin"
3394
  msgstr "Plugin aktualisieren"
3395
 
3396
  # @ acf
3397
- #: pro/admin/views/html-settings-updates.php:98
3398
  msgid "Please enter your license key above to unlock updates"
3399
  msgstr ""
3400
  "Bitte gib oben Deinen Lizenzschlüssel ein um die Update-Fähigkeit "
3401
  "freizuschalten"
3402
 
3403
  # @ acf
3404
- #: pro/admin/views/html-settings-updates.php:104
3405
  msgid "Check Again"
3406
  msgstr "Erneut suchen"
3407
 
3408
  # @ acf
3409
- #: pro/admin/views/html-settings-updates.php:121
3410
  msgid "Upgrade Notice"
3411
  msgstr "Aktualisierungs-Hinweis"
3412
 
3413
- #: pro/fields/class-acf-field-clone.php:36
3414
  msgctxt "noun"
3415
  msgid "Clone"
3416
  msgstr "Klonen"
3417
 
3418
- #: pro/fields/class-acf-field-clone.php:858
3419
  msgid "Select one or more fields you wish to clone"
3420
  msgstr "Wähle eines oder mehrere Felder aus, das/die du klonen willst"
3421
 
3422
  # @ acf
3423
- #: pro/fields/class-acf-field-clone.php:875
3424
  msgid "Display"
3425
  msgstr "Anzeige"
3426
 
3427
- #: pro/fields/class-acf-field-clone.php:876
3428
  msgid "Specify the style used to render the clone field"
3429
  msgstr "Gib an, wie die geklonten Felder ausgegeben werden sollen"
3430
 
3431
- #: pro/fields/class-acf-field-clone.php:881
3432
  msgid "Group (displays selected fields in a group within this field)"
3433
  msgstr ""
3434
  "Gruppe (zeigt die ausgewählten Felder in einer Gruppe innerhalb dieses Felds "
3435
  "an)"
3436
 
3437
- #: pro/fields/class-acf-field-clone.php:882
3438
  msgid "Seamless (replaces this field with selected fields)"
3439
  msgstr "Nahtlos (ersetzt dieses Feld mit den ausgewählten Feldern)"
3440
 
3441
- #: pro/fields/class-acf-field-clone.php:903
3442
  #, php-format
3443
  msgid "Labels will be displayed as %s"
3444
  msgstr "Bezeichnungen werden angezeigt als %s"
3445
 
3446
- #: pro/fields/class-acf-field-clone.php:906
3447
  msgid "Prefix Field Labels"
3448
  msgstr "Präfix für Feld Bezeichnungen"
3449
 
3450
- #: pro/fields/class-acf-field-clone.php:917
3451
  #, php-format
3452
  msgid "Values will be saved as %s"
3453
  msgstr "Werte werden gespeichert als %s"
3454
 
3455
- #: pro/fields/class-acf-field-clone.php:920
3456
  msgid "Prefix Field Names"
3457
  msgstr "Präfix für Feld Namen"
3458
 
3459
- #: pro/fields/class-acf-field-clone.php:1038
3460
  msgid "Unknown field"
3461
  msgstr "Unbekanntes Feld"
3462
 
3463
- #: pro/fields/class-acf-field-clone.php:1077
3464
  msgid "Unknown field group"
3465
  msgstr "Unbekannte Feld-Gruppe"
3466
 
3467
- #: pro/fields/class-acf-field-clone.php:1081
3468
  #, php-format
3469
  msgid "All fields from %s field group"
3470
  msgstr "Alle Felder der %s Feld-Gruppe"
3471
 
3472
  # @ acf
3473
- #: pro/fields/class-acf-field-flexible-content.php:42
3474
- #: pro/fields/class-acf-field-repeater.php:230
3475
- #: pro/fields/class-acf-field-repeater.php:534
3476
  msgid "Add Row"
3477
  msgstr "Eintrag hinzufügen"
3478
 
3479
  # @ acf
3480
- #: pro/fields/class-acf-field-flexible-content.php:45
3481
  msgid "layout"
3482
  msgstr "Eintrag"
3483
 
3484
  # @ acf
3485
- #: pro/fields/class-acf-field-flexible-content.php:46
3486
  msgid "layouts"
3487
  msgstr "Einträge"
3488
 
3489
  # @ acf
3490
- #: pro/fields/class-acf-field-flexible-content.php:47
3491
  msgid "remove {layout}?"
3492
  msgstr "{layout} löschen?"
3493
 
3494
  # @ acf
3495
- #: pro/fields/class-acf-field-flexible-content.php:48
3496
  msgid "This field requires at least {min} {identifier}"
3497
  msgstr "Dieses Feld erfordert mindestens {min} {identifier}"
3498
 
3499
  # @ acf
3500
- #: pro/fields/class-acf-field-flexible-content.php:49
3501
  msgid "This field has a limit of {max} {identifier}"
3502
  msgstr "Diesem Feld dürfen maximal {max} {identifier} hinzugefügt werden."
3503
 
3504
  # @ acf
3505
- #: pro/fields/class-acf-field-flexible-content.php:50
3506
  msgid "This field requires at least {min} {label} {identifier}"
3507
  msgstr "Dieses Feld erfordert mindestens {min} {label} {identifier}"
3508
 
3509
  # @ acf
3510
- #: pro/fields/class-acf-field-flexible-content.php:51
3511
  msgid "Maximum {label} limit reached ({max} {identifier})"
3512
  msgstr "Maximale {label}-Anzahl erreicht ({max} {identifier})"
3513
 
3514
  # @ acf
3515
- #: pro/fields/class-acf-field-flexible-content.php:52
3516
  msgid "{available} {label} {identifier} available (max {max})"
3517
  msgstr "{available} {label} {identifier} möglich (max {max})"
3518
 
3519
  # @ acf
3520
- #: pro/fields/class-acf-field-flexible-content.php:53
3521
  msgid "{required} {label} {identifier} required (min {min})"
3522
  msgstr "{required} {label} {identifier} erforderlich (min {min})"
3523
 
3524
  # @ acf
3525
- #: pro/fields/class-acf-field-flexible-content.php:54
3526
  msgid "Flexible Content requires at least 1 layout"
3527
  msgstr "Flexibler Inhalt benötigt mindestens ein Layout"
3528
 
3529
  # @ acf
3530
- #: pro/fields/class-acf-field-flexible-content.php:288
3531
  #, php-format
3532
  msgid "Click the \"%s\" button below to start creating your layout"
3533
  msgstr "Klicke \"%s\" zum Erstellen des Layouts"
3534
 
3535
  # @ acf
3536
- #: pro/fields/class-acf-field-flexible-content.php:423
3537
  msgid "Add layout"
3538
  msgstr "Layout hinzufügen"
3539
 
3540
  # @ acf
3541
- #: pro/fields/class-acf-field-flexible-content.php:424
3542
  msgid "Remove layout"
3543
  msgstr "Layout entfernen"
3544
 
3545
- #: pro/fields/class-acf-field-flexible-content.php:425
3546
- #: pro/fields/class-acf-field-repeater.php:360
3547
  msgid "Click to toggle"
3548
  msgstr "Zum Auswählen anklicken"
3549
 
3550
  # @ acf
3551
- #: pro/fields/class-acf-field-flexible-content.php:571
3552
  msgid "Reorder Layout"
3553
  msgstr "Layout sortieren"
3554
 
3555
  # @ acf
3556
- #: pro/fields/class-acf-field-flexible-content.php:571
3557
  msgid "Reorder"
3558
  msgstr "Sortieren"
3559
 
3560
  # @ acf
3561
- #: pro/fields/class-acf-field-flexible-content.php:572
3562
  msgid "Delete Layout"
3563
  msgstr "Layout löschen"
3564
 
3565
  # @ acf
3566
- #: pro/fields/class-acf-field-flexible-content.php:573
3567
  msgid "Duplicate Layout"
3568
  msgstr "Layout duplizieren"
3569
 
3570
  # @ acf
3571
- #: pro/fields/class-acf-field-flexible-content.php:574
3572
  msgid "Add New Layout"
3573
  msgstr "Neues Layout hinzufügen"
3574
 
3575
  # @ acf
3576
- #: pro/fields/class-acf-field-flexible-content.php:645
3577
  msgid "Min"
3578
  msgstr "Min"
3579
 
3580
  # @ acf
3581
- #: pro/fields/class-acf-field-flexible-content.php:658
3582
  msgid "Max"
3583
  msgstr "Max"
3584
 
3585
  # @ acf
3586
- #: pro/fields/class-acf-field-flexible-content.php:685
3587
- #: pro/fields/class-acf-field-repeater.php:530
3588
  msgid "Button Label"
3589
  msgstr "Button-Beschriftung"
3590
 
3591
  # @ acf
3592
- #: pro/fields/class-acf-field-flexible-content.php:694
3593
  msgid "Minimum Layouts"
3594
  msgstr "Minimum Layouts"
3595
 
3596
  # @ acf
3597
- #: pro/fields/class-acf-field-flexible-content.php:703
3598
  msgid "Maximum Layouts"
3599
  msgstr "Maximum Layouts"
3600
 
3601
  # @ acf
3602
- #: pro/fields/class-acf-field-gallery.php:52
3603
  msgid "Add Image to Gallery"
3604
  msgstr "Bild zur Galerie hinzufügen"
3605
 
3606
  # @ acf
3607
- #: pro/fields/class-acf-field-gallery.php:56
3608
  msgid "Maximum selection reached"
3609
  msgstr "Maximale Auswahl erreicht"
3610
 
3611
  # @ acf
3612
- #: pro/fields/class-acf-field-gallery.php:336
3613
  msgid "Length"
3614
  msgstr "Länge"
3615
 
3616
- #: pro/fields/class-acf-field-gallery.php:379
3617
  msgid "Caption"
3618
  msgstr "Beschriftung"
3619
 
3620
- #: pro/fields/class-acf-field-gallery.php:388
3621
  msgid "Alt Text"
3622
  msgstr "Alt Text"
3623
 
3624
  # @ acf
3625
- #: pro/fields/class-acf-field-gallery.php:559
3626
  msgid "Add to gallery"
3627
  msgstr "Zur Galerie hinzufügen"
3628
 
3629
  # @ acf
3630
- #: pro/fields/class-acf-field-gallery.php:563
3631
  msgid "Bulk actions"
3632
  msgstr "Massenverarbeitung"
3633
 
3634
  # @ acf
3635
- #: pro/fields/class-acf-field-gallery.php:564
3636
  msgid "Sort by date uploaded"
3637
  msgstr "Sortiere nach Upload-Datum"
3638
 
3639
  # @ acf
3640
- #: pro/fields/class-acf-field-gallery.php:565
3641
  msgid "Sort by date modified"
3642
  msgstr "Sortiere nach Änderungs-Datum"
3643
 
3644
  # @ acf
3645
- #: pro/fields/class-acf-field-gallery.php:566
3646
  msgid "Sort by title"
3647
  msgstr "Sortiere nach Titel"
3648
 
3649
  # @ acf
3650
- #: pro/fields/class-acf-field-gallery.php:567
3651
  msgid "Reverse current order"
3652
  msgstr "Aktuelle Sortierung umkehren"
3653
 
3654
  # @ acf
3655
- #: pro/fields/class-acf-field-gallery.php:585
3656
  msgid "Close"
3657
  msgstr "Schliessen"
3658
 
3659
  # @ acf
3660
- #: pro/fields/class-acf-field-gallery.php:639
3661
  msgid "Minimum Selection"
3662
  msgstr "Minimale Auswahl"
3663
 
3664
  # @ acf
3665
- #: pro/fields/class-acf-field-gallery.php:648
3666
  msgid "Maximum Selection"
3667
  msgstr "Maximale Auswahl"
3668
 
3669
- #: pro/fields/class-acf-field-gallery.php:657
3670
  msgid "Insert"
3671
  msgstr "Einfügen"
3672
 
3673
- #: pro/fields/class-acf-field-gallery.php:658
3674
  msgid "Specify where new attachments are added"
3675
  msgstr "Gib an, wo neue Anhänge eingefügt werden sollen"
3676
 
3677
- #: pro/fields/class-acf-field-gallery.php:662
3678
  msgid "Append to the end"
3679
  msgstr "Am Schluss anhängen"
3680
 
3681
- #: pro/fields/class-acf-field-gallery.php:663
3682
  msgid "Prepend to the beginning"
3683
  msgstr "Vor Beginn einfügen"
3684
 
3685
  # @ acf
3686
- #: pro/fields/class-acf-field-repeater.php:47
3687
  msgid "Minimum rows reached ({min} rows)"
3688
  msgstr "Minimum der Einträge mit ({min} Reihen) erreicht"
3689
 
3690
  # @ acf
3691
- #: pro/fields/class-acf-field-repeater.php:48
3692
  msgid "Maximum rows reached ({max} rows)"
3693
  msgstr "Maximum der Einträge mit ({max} Reihen) erreicht"
3694
 
3695
  # @ acf
3696
- #: pro/fields/class-acf-field-repeater.php:405
3697
  msgid "Add row"
3698
  msgstr "Eintrag hinzufügen"
3699
 
3700
  # @ acf
3701
- #: pro/fields/class-acf-field-repeater.php:406
3702
  msgid "Remove row"
3703
  msgstr "Eintrag löschen"
3704
 
3705
- #: pro/fields/class-acf-field-repeater.php:483
3706
  msgid "Collapsed"
3707
  msgstr "Zugeklappt"
3708
 
3709
- #: pro/fields/class-acf-field-repeater.php:484
3710
  msgid "Select a sub field to show when row is collapsed"
3711
  msgstr ""
3712
  "Wähle welches der Wiederholungsfelder im zugeklappten Zustand angezeigt "
3713
- "werden soll"
3714
 
3715
  # @ acf
3716
- #: pro/fields/class-acf-field-repeater.php:494
3717
  msgid "Minimum Rows"
3718
  msgstr "Minimum der Einträge"
3719
 
3720
  # @ acf
3721
- #: pro/fields/class-acf-field-repeater.php:504
3722
  msgid "Maximum Rows"
3723
  msgstr "Maximum der Einträge"
3724
 
3725
  # @ acf
3726
- #: pro/locations/class-acf-location-options-page.php:70
3727
  msgid "No options pages exist"
3728
  msgstr "Keine Options-Seiten vorhanden"
3729
 
1
  msgid ""
2
  msgstr ""
3
+ "Project-Id-Version: Advanced Custom Fields Pro v5.6.6\n"
4
  "Report-Msgid-Bugs-To: http://support.advancedcustomfields.com\n"
5
+ "POT-Creation-Date: 2017-10-04 14:50+1000\n"
6
+ "PO-Revision-Date: 2017-11-30 16:45+0100\n"
7
  "Last-Translator: Elliot Condon <e@elliotcondon.com>\n"
8
  "Language-Team: Raphael Hüni <rafhun@gmail.com>\n"
9
  "Language: de_CH\n"
11
  "Content-Type: text/plain; charset=UTF-8\n"
12
  "Content-Transfer-Encoding: 8bit\n"
13
  "Plural-Forms: nplurals=2; plural=(n != 1);\n"
14
+ "X-Generator: Poedit 2.0.4\n"
15
  "X-Poedit-SourceCharset: UTF-8\n"
16
  "X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;"
17
  "esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;"
23
  "X-Poedit-SearchPathExcluded-0: *.js\n"
24
 
25
  # @ acf
26
+ #: acf.php:67
27
  msgid "Advanced Custom Fields"
28
  msgstr "Advanced Custom Fields"
29
 
30
  # @ acf
31
+ #: acf.php:369 includes/admin/admin.php:117
32
  msgid "Field Groups"
33
  msgstr "Feld-Gruppen"
34
 
35
  # @ acf
36
+ #: acf.php:370
37
  msgid "Field Group"
38
  msgstr "Feld-Gruppe"
39
 
40
  # @ acf
41
+ #: acf.php:371 acf.php:403 includes/admin/admin.php:118
42
+ #: pro/fields/class-acf-field-flexible-content.php:557
43
  msgid "Add New"
44
  msgstr "Erstellen"
45
 
46
  # @ acf
47
+ #: acf.php:372
48
  msgid "Add New Field Group"
49
  msgstr "Neue Feld-Gruppe erstellen"
50
 
51
  # @ acf
52
+ #: acf.php:373
53
  msgid "Edit Field Group"
54
  msgstr "Feld-Gruppe bearbeiten"
55
 
56
  # @ acf
57
+ #: acf.php:374
58
  msgid "New Field Group"
59
  msgstr "Neue Feld-Gruppe"
60
 
61
  # @ acf
62
+ #: acf.php:375
63
  msgid "View Field Group"
64
  msgstr "Feld-Gruppe anzeigen"
65
 
66
  # @ acf
67
+ #: acf.php:376
68
  msgid "Search Field Groups"
69
  msgstr "Feld-Gruppen suchen"
70
 
71
  # @ acf
72
+ #: acf.php:377
73
  msgid "No Field Groups found"
74
  msgstr "Keine Feld-Gruppen gefunden"
75
 
76
  # @ acf
77
+ #: acf.php:378
78
  msgid "No Field Groups found in Trash"
79
  msgstr "Keine Feld-Gruppen im Papierkorb gefunden"
80
 
81
  # @ acf
82
+ #: acf.php:401 includes/admin/admin-field-group.php:182
83
  #: includes/admin/admin-field-group.php:275
84
  #: includes/admin/admin-field-groups.php:510
85
+ #: pro/fields/class-acf-field-clone.php:807
86
  msgid "Fields"
87
  msgstr "Felder"
88
 
89
  # @ acf
90
+ #: acf.php:402
91
  msgid "Field"
92
  msgstr "Feld"
93
 
94
  # @ acf
95
+ #: acf.php:404
96
  msgid "Add New Field"
97
  msgstr "Feld hinzufügen"
98
 
99
  # @ acf
100
+ #: acf.php:405
101
  msgid "Edit Field"
102
  msgstr "Feld bearbeiten"
103
 
104
  # @ acf
105
+ #: acf.php:406 includes/admin/views/field-group-fields.php:41
106
  #: includes/admin/views/settings-info.php:105
107
  msgid "New Field"
108
  msgstr "Neues Feld"
109
 
110
  # @ acf
111
+ #: acf.php:407
112
  msgid "View Field"
113
  msgstr "Feld anzeigen"
114
 
115
  # @ acf
116
+ #: acf.php:408
117
  msgid "Search Fields"
118
  msgstr "Felder suchen"
119
 
120
  # @ acf
121
+ #: acf.php:409
122
  msgid "No Fields found"
123
  msgstr "Keine Felder gefunden"
124
 
125
  # @ acf
126
+ #: acf.php:410
127
  msgid "No Fields found in Trash"
128
  msgstr "Keine Feld-Gruppen im Papierkorb gefunden"
129
 
130
+ #: acf.php:449 includes/admin/admin-field-group.php:390
131
  #: includes/admin/admin-field-groups.php:567
132
  msgid "Inactive"
133
  msgstr "Inaktiv"
134
 
135
+ #: acf.php:454
136
  #, php-format
137
  msgid "Inactive <span class=\"count\">(%s)</span>"
138
  msgid_plural "Inactive <span class=\"count\">(%s)</span>"
207
 
208
  # @ acf
209
  #: includes/admin/admin-field-group.php:273
210
+ #: includes/api/api-field-group.php:751
211
  msgid "copy"
212
  msgstr "kopieren"
213
 
217
  #: includes/admin/views/field-group-field-conditional-logic.php:154
218
  #: includes/admin/views/field-group-locations.php:29
219
  #: includes/admin/views/html-location-group.php:3
220
+ #: includes/api/api-helpers.php:3964
221
  msgid "or"
222
  msgstr "oder"
223
 
239
  # @ acf
240
  #: includes/admin/admin-field-group.php:279
241
  msgid "This field cannot be moved until its changes have been saved"
242
+ msgstr "Diese Feld kann nicht verschoben werden, bevor es gesichert wurde"
243
 
244
  # @ acf
245
  #: includes/admin/admin-field-group.php:280
247
  msgstr "Null"
248
 
249
  # @ acf
250
+ #: includes/admin/admin-field-group.php:281 includes/input.php:258
251
  msgid "The changes you made will be lost if you navigate away from this page"
252
  msgstr ""
253
+ "Die vorgenommenen Änderungen gehen verloren wenn diese Seite verlassen wird"
254
 
255
  # @ acf
256
  #: includes/admin/admin-field-group.php:282
335
 
336
  # @ acf
337
  #: includes/admin/admin-field-groups.php:507 includes/forms/form-front.php:38
338
+ #: pro/fields/class-acf-field-gallery.php:355
339
  msgid "Title"
340
  msgstr "Titel"
341
 
344
  #: includes/admin/views/field-group-options.php:96
345
  #: includes/admin/views/install-network.php:21
346
  #: includes/admin/views/install-network.php:29
347
+ #: pro/fields/class-acf-field-gallery.php:382
348
  msgid "Description"
349
  msgstr "Beschreibung"
350
 
363
  # @ acf
364
  #: includes/admin/admin-field-groups.php:609
365
  #: includes/admin/settings-info.php:76
366
+ #: pro/admin/views/html-settings-updates.php:107
367
  msgid "Changelog"
368
  msgstr "Versionshinweise"
369
 
379
 
380
  #: includes/admin/admin-field-groups.php:619
381
  msgid "Website"
382
+ msgstr "Webseite"
383
 
384
  #: includes/admin/admin-field-groups.php:620
385
  msgid "Documentation"
390
  msgstr "Hilfe"
391
 
392
  #: includes/admin/admin-field-groups.php:623
 
393
  msgid "Pro"
394
+ msgstr "Pro"
395
 
396
  #: includes/admin/admin-field-groups.php:628
397
  #, php-format
407
  #: includes/admin/admin-field-groups.php:668
408
  #: includes/admin/admin-field-groups.php:684
409
  #: includes/admin/views/field-group-field.php:49
410
+ #: pro/fields/class-acf-field-flexible-content.php:556
411
  msgid "Duplicate"
412
  msgstr "Duplizieren"
413
 
414
  # @ acf
415
  #: includes/admin/admin-field-groups.php:701
416
+ #: includes/fields/class-acf-field-google-map.php:112
417
+ #: includes/fields/class-acf-field-relationship.php:656
418
  msgid "Search"
419
  msgstr "Suchen"
420
 
437
 
438
  #: includes/admin/admin-field-groups.php:780
439
  msgid "Apply"
440
+ msgstr "Anwenden"
441
 
442
  # @ acf
443
  #: includes/admin/admin-field-groups.php:798
 
444
  msgid "Bulk Actions"
445
  msgstr "Massenverarbeitung"
446
 
504
 
505
  # @ acf
506
  #: includes/admin/settings-tools.php:184
507
+ #: includes/fields/class-acf-field-file.php:155
508
  msgid "No file selected"
509
  msgstr "Keine Datei ausgewählt"
510
 
511
  # @ acf
512
  #: includes/admin/settings-tools.php:197
513
  msgid "Error uploading file. Please try again"
514
+ msgstr "Fehler beim Upload. Bitte erneut versuchen"
515
 
516
  # @ acf
517
  #: includes/admin/settings-tools.php:206
542
 
543
  # @ acf
544
  #: includes/admin/views/field-group-field-conditional-logic.php:103
545
+ #: includes/locations.php:247
546
  msgid "is equal to"
547
  msgstr "ist gleich"
548
 
549
  # @ acf
550
  #: includes/admin/views/field-group-field-conditional-logic.php:104
551
+ #: includes/locations.php:248
552
  msgid "is not equal to"
553
  msgstr "ist ungleich"
554
 
566
 
567
  # @ acf
568
  #: includes/admin/views/field-group-field.php:41
569
+ #: pro/fields/class-acf-field-flexible-content.php:403
570
+ #: pro/fields/class-acf-field-repeater.php:296
571
  msgid "Drag to reorder"
572
  msgstr "Ziehen zum Sortieren"
573
 
579
 
580
  # @ acf
581
  #: includes/admin/views/field-group-field.php:48
582
+ #: includes/fields/class-acf-field-file.php:137
583
+ #: includes/fields/class-acf-field-image.php:122
584
+ #: includes/fields/class-acf-field-link.php:139
585
+ #: pro/fields/class-acf-field-gallery.php:342
586
  msgid "Edit"
587
  msgstr "Bearbeiten"
588
 
608
 
609
  # @ acf
610
  #: includes/admin/views/field-group-field.php:51
611
+ #: pro/fields/class-acf-field-flexible-content.php:555
612
  msgid "Delete"
613
  msgstr "Löschen"
614
 
623
  msgstr "Dieser Name wird in der Bearbeitungs-Ansicht eines Beitrags angezeigt"
624
 
625
  # @ acf
626
+ #: includes/admin/views/field-group-field.php:77
627
  msgid "Field Name"
628
  msgstr "Feld-Name"
629
 
630
  # @ acf
631
+ #: includes/admin/views/field-group-field.php:78
632
  msgid "Single word, no spaces. Underscores and dashes allowed"
633
  msgstr ""
634
  "Nur ein Wort ohne Leerzeichen; es sind nur Unterstriche und Bindestriche als "
635
  "Sonderzeichen erlaubt"
636
 
637
  # @ acf
638
+ #: includes/admin/views/field-group-field.php:87
639
  msgid "Field Type"
640
  msgstr "Feld-Typ"
641
 
642
  # @ acf
643
+ #: includes/admin/views/field-group-field.php:98
644
+ #: includes/fields/class-acf-field-tab.php:88
645
  msgid "Instructions"
646
  msgstr "Anweisungen"
647
 
648
  # @ acf
649
+ #: includes/admin/views/field-group-field.php:99
650
  msgid "Instructions for authors. Shown when submitting data"
651
  msgstr "Anweisungen für Autoren werden in der Bearbeitungs-Ansicht angezeigt"
652
 
653
  # @ acf
654
+ #: includes/admin/views/field-group-field.php:108
655
  msgid "Required?"
656
  msgstr "Erforderlich?"
657
 
658
  # @ acf
659
+ #: includes/admin/views/field-group-field.php:131
660
  msgid "Wrapper Attributes"
661
  msgstr "Wrapper-Attribute"
662
 
663
  # @ acf
664
+ #: includes/admin/views/field-group-field.php:137
665
  msgid "width"
666
  msgstr "Breite"
667
 
668
  # @ acf
669
+ #: includes/admin/views/field-group-field.php:152
670
  msgid "class"
671
  msgstr "Klasse"
672
 
673
  # @ acf
674
+ #: includes/admin/views/field-group-field.php:165
675
  msgid "id"
676
  msgstr "ID"
677
 
678
  # @ acf
679
+ #: includes/admin/views/field-group-field.php:177
680
  msgid "Close Field"
681
  msgstr "Feld schliessen"
682
 
687
 
688
  # @ acf
689
  #: includes/admin/views/field-group-fields.php:5
690
+ #: includes/fields/class-acf-field-button-group.php:198
691
+ #: includes/fields/class-acf-field-checkbox.php:415
692
+ #: includes/fields/class-acf-field-radio.php:306
693
+ #: includes/fields/class-acf-field-select.php:432
694
+ #: pro/fields/class-acf-field-flexible-content.php:582
695
  msgid "Label"
696
  msgstr "Name"
697
 
698
  # @ acf
699
  #: includes/admin/views/field-group-fields.php:6
700
+ #: includes/fields/class-acf-field-taxonomy.php:964
701
+ #: pro/fields/class-acf-field-flexible-content.php:595
702
  msgid "Name"
703
  msgstr "Feld-Name"
704
 
705
  #: includes/admin/views/field-group-fields.php:7
706
  msgid "Key"
707
+ msgstr "Feld-Schlüssel"
708
 
709
  # @ acf
710
  #: includes/admin/views/field-group-fields.php:8
781
 
782
  # @ acf
783
  #: includes/admin/views/field-group-options.php:62
784
+ #: includes/fields/class-acf-field-tab.php:102
785
  msgid "Top aligned"
786
  msgstr "Über dem Feld"
787
 
788
  # @ acf
789
  #: includes/admin/views/field-group-options.php:63
790
+ #: includes/fields/class-acf-field-tab.php:103
791
  msgid "Left Aligned"
792
  msgstr "Links neben dem Feld"
793
 
809
  # @ acf
810
  #: includes/admin/views/field-group-options.php:85
811
  msgid "Order No."
812
+ msgstr "Sortiernr."
813
 
814
  #: includes/admin/views/field-group-options.php:86
815
  msgid "Field groups with a lower order will appear first"
892
 
893
  # @ acf
894
  #: includes/admin/views/field-group-options.php:126
895
+ #: includes/fields/class-acf-field-relationship.php:670
896
  msgid "Featured Image"
897
  msgstr "Beitragsbild"
898
 
986
 
987
  # @ acf
988
  #: includes/admin/views/install-notice.php:8
989
+ #: pro/fields/class-acf-field-repeater.php:25
990
  msgid "Repeater"
991
  msgstr "Wiederholung"
992
 
993
  # @ acf
994
  #: includes/admin/views/install-notice.php:9
995
+ #: pro/fields/class-acf-field-flexible-content.php:25
996
  msgid "Flexible Content"
997
  msgstr "Flexible Inhalte"
998
 
999
  # @ acf
1000
  #: includes/admin/views/install-notice.php:10
1001
+ #: pro/fields/class-acf-field-gallery.php:25
1002
  msgid "Gallery"
1003
  msgstr "Galerie"
1004
 
1005
  # @ acf
1006
  #: includes/admin/views/install-notice.php:11
1007
+ #: pro/locations/class-acf-location-options-page.php:26
1008
  msgid "Options Page"
1009
  msgstr "Options-Seite"
1010
 
1034
  "Please also ensure any premium add-ons (%s) have first been updated to the "
1035
  "latest version."
1036
  msgstr ""
1037
+ "Stelle bitte ebenfalls sicher, dass alle Premium-Add-ons (%s) vorab auf die "
1038
+ "neueste Version aktualisiert wurden."
1039
 
1040
  # @ acf
1041
  #: includes/admin/views/install.php:7
1131
  # @ acf
1132
  #: includes/admin/views/settings-info.php:39
1133
  msgid "Goodbye Add-ons. Hello PRO"
1134
+ msgstr "Macht's gut Add-ons&hellip; Hallo PRO"
1135
 
1136
  # @ acf
1137
  #: includes/admin/views/settings-info.php:44
1208
  "Um möglichen Fragen vorzubeugen haben wir haben eine <a href=\"%s\"> "
1209
  "Anleitung für den Aktualisierungs-Prozess (Engl.)</a> verfasst. Sollten "
1210
  "dennoch Fragen aufgeworfen werden, kontaktiere bitte unser <a href=\"%s\"> "
1211
+ "Support-Team </a>"
1212
 
1213
  # @ acf
1214
  #: includes/admin/views/settings-info.php:66
1366
 
1367
  # @ acf
1368
  #: includes/admin/views/settings-info.php:144
1369
+ #: includes/fields/class-acf-field-page_link.php:25
1370
  msgid "Page Link"
1371
  msgstr "Seiten-Link"
1372
 
1469
 
1470
  # @ acf
1471
  #: includes/admin/views/settings-tools.php:77
1472
+ #: includes/fields/class-acf-field-file.php:35
1473
  msgid "Select File"
1474
  msgstr "Datei auswählen"
1475
 
1499
  msgstr "Volle Grösse"
1500
 
1501
  # @ acf
1502
+ #: includes/api/api-helpers.php:1248 includes/api/api-helpers.php:1831
1503
+ #: pro/fields/class-acf-field-clone.php:992
1504
  msgid "(no title)"
1505
  msgstr "(ohne Titel)"
1506
 
1507
+ #: includes/api/api-helpers.php:1868
1508
+ #: includes/fields/class-acf-field-page_link.php:269
1509
+ #: includes/fields/class-acf-field-post_object.php:268
1510
+ #: includes/fields/class-acf-field-taxonomy.php:986
1511
  msgid "Parent"
1512
  msgstr "Eltern"
1513
 
1514
  # @ acf
1515
+ #: includes/api/api-helpers.php:3885
1516
  #, php-format
1517
  msgid "Image width must be at least %dpx."
1518
  msgstr "Die Breite des Bildes muss mindestens %dpx sein."
1519
 
1520
  # @ acf
1521
+ #: includes/api/api-helpers.php:3890
1522
  #, php-format
1523
  msgid "Image width must not exceed %dpx."
1524
  msgstr "Die Breite des Bildes darf %dpx nicht überschreiten."
1525
 
1526
  # @ acf
1527
+ #: includes/api/api-helpers.php:3906
1528
  #, php-format
1529
  msgid "Image height must be at least %dpx."
1530
  msgstr "Die Höhe des Bildes muss mindestens %dpx sein."
1531
 
1532
  # @ acf
1533
+ #: includes/api/api-helpers.php:3911
1534
  #, php-format
1535
  msgid "Image height must not exceed %dpx."
1536
  msgstr "Die Höhe des Bild darf %dpx nicht überschreiten."
1537
 
1538
  # @ acf
1539
+ #: includes/api/api-helpers.php:3929
1540
  #, php-format
1541
  msgid "File size must be at least %s."
1542
  msgstr "Die Dateigrösse muss mindestens %s sein."
1543
 
1544
  # @ acf
1545
+ #: includes/api/api-helpers.php:3934
1546
  #, php-format
1547
  msgid "File size must must not exceed %s."
1548
  msgstr "Die Dateigrösse darf %s nicht überschreiten."
1549
 
1550
  # @ acf
1551
+ #: includes/api/api-helpers.php:3968
1552
  #, php-format
1553
  msgid "File type must be %s."
1554
  msgstr "Der Dateityp muss %s sein."
1579
  msgstr "jQuery"
1580
 
1581
  # @ acf
1582
+ #: includes/fields.php:149 includes/fields/class-acf-field-button-group.php:177
1583
+ #: includes/fields/class-acf-field-checkbox.php:384
1584
+ #: includes/fields/class-acf-field-group.php:474
1585
+ #: includes/fields/class-acf-field-radio.php:285
1586
+ #: pro/fields/class-acf-field-clone.php:839
1587
+ #: pro/fields/class-acf-field-flexible-content.php:552
1588
+ #: pro/fields/class-acf-field-flexible-content.php:601
1589
+ #: pro/fields/class-acf-field-repeater.php:450
1590
  msgid "Layout"
1591
  msgstr "Layout"
1592
 
1593
  # @ acf
1594
+ #: includes/fields.php:326
1595
  msgid "Field type does not exist"
1596
  msgstr "Feld-Typ existiert nicht"
1597
 
1598
+ #: includes/fields.php:326
 
1599
  msgid "Unknown"
1600
+ msgstr "Unbekannt"
1601
 
1602
+ #: includes/fields/class-acf-field-button-group.php:24
1603
+ msgid "Button Group"
1604
+ msgstr "Button Gruppe"
 
 
 
 
 
 
 
 
 
 
 
1605
 
1606
  # @ acf
1607
+ #: includes/fields/class-acf-field-button-group.php:149
1608
+ #: includes/fields/class-acf-field-checkbox.php:344
1609
+ #: includes/fields/class-acf-field-radio.php:235
1610
+ #: includes/fields/class-acf-field-select.php:368
1611
  msgid "Choices"
1612
  msgstr "Auswahlmöglichkeiten"
1613
 
1614
  # @ acf
1615
+ #: includes/fields/class-acf-field-button-group.php:150
1616
+ #: includes/fields/class-acf-field-checkbox.php:345
1617
+ #: includes/fields/class-acf-field-radio.php:236
1618
+ #: includes/fields/class-acf-field-select.php:369
1619
  msgid "Enter each choice on a new line."
1620
  msgstr "Jede Auswahlmöglichkeit in separater Zeile eingeben."
1621
 
1622
  # @ acf
1623
+ #: includes/fields/class-acf-field-button-group.php:150
1624
+ #: includes/fields/class-acf-field-checkbox.php:345
1625
+ #: includes/fields/class-acf-field-radio.php:236
1626
+ #: includes/fields/class-acf-field-select.php:369
1627
  msgid "For more control, you may specify both a value and label like this:"
1628
  msgstr ""
1629
  "Für eine bessere Darstellung, kannst Du auch einen Wert und dazu dessen "
1630
  "Beschriftung definieren:"
1631
 
1632
  # @ acf
1633
+ #: includes/fields/class-acf-field-button-group.php:150
1634
+ #: includes/fields/class-acf-field-checkbox.php:345
1635
+ #: includes/fields/class-acf-field-radio.php:236
1636
+ #: includes/fields/class-acf-field-select.php:369
1637
  msgid "red : Red"
1638
  msgstr "rot : Rot"
1639
 
1640
+ # @ acf
1641
+ #: includes/fields/class-acf-field-button-group.php:158
1642
+ #: includes/fields/class-acf-field-page_link.php:513
1643
+ #: includes/fields/class-acf-field-post_object.php:412
1644
+ #: includes/fields/class-acf-field-radio.php:244
1645
+ #: includes/fields/class-acf-field-select.php:386
1646
+ #: includes/fields/class-acf-field-taxonomy.php:793
1647
+ #: includes/fields/class-acf-field-user.php:408
1648
+ msgid "Allow Null?"
1649
+ msgstr "NULL-Werte zulassen?"
 
 
 
 
 
 
1650
 
1651
  # @ acf
1652
+ #: includes/fields/class-acf-field-button-group.php:168
1653
+ #: includes/fields/class-acf-field-checkbox.php:375
1654
+ #: includes/fields/class-acf-field-color_picker.php:131
1655
+ #: includes/fields/class-acf-field-email.php:118
1656
+ #: includes/fields/class-acf-field-number.php:127
1657
+ #: includes/fields/class-acf-field-radio.php:276
1658
+ #: includes/fields/class-acf-field-range.php:148
1659
+ #: includes/fields/class-acf-field-select.php:377
1660
+ #: includes/fields/class-acf-field-text.php:119
1661
+ #: includes/fields/class-acf-field-textarea.php:102
1662
+ #: includes/fields/class-acf-field-true_false.php:135
1663
+ #: includes/fields/class-acf-field-url.php:100
1664
+ #: includes/fields/class-acf-field-wysiwyg.php:410
1665
  msgid "Default Value"
1666
  msgstr "Standardwert"
1667
 
1668
  # @ acf
1669
+ #: includes/fields/class-acf-field-button-group.php:169
1670
+ #: includes/fields/class-acf-field-email.php:119
1671
+ #: includes/fields/class-acf-field-number.php:128
1672
+ #: includes/fields/class-acf-field-radio.php:277
1673
+ #: includes/fields/class-acf-field-range.php:149
1674
+ #: includes/fields/class-acf-field-text.php:120
1675
+ #: includes/fields/class-acf-field-textarea.php:103
1676
+ #: includes/fields/class-acf-field-url.php:101
1677
+ #: includes/fields/class-acf-field-wysiwyg.php:411
1678
+ msgid "Appears when creating a new post"
1679
+ msgstr "Erscheint bei der Erstellung eines neuen Beitrags"
1680
 
1681
  # @ acf
1682
+ #: includes/fields/class-acf-field-button-group.php:183
1683
+ #: includes/fields/class-acf-field-checkbox.php:391
1684
+ #: includes/fields/class-acf-field-radio.php:292
1685
  msgid "Horizontal"
1686
  msgstr "Horizontal"
1687
 
1688
+ # @ acf
1689
+ #: includes/fields/class-acf-field-button-group.php:184
1690
+ #: includes/fields/class-acf-field-checkbox.php:390
1691
+ #: includes/fields/class-acf-field-radio.php:291
1692
+ msgid "Vertical"
1693
+ msgstr "Vertikal"
 
 
1694
 
1695
  # @ acf
1696
+ #: includes/fields/class-acf-field-button-group.php:191
1697
+ #: includes/fields/class-acf-field-checkbox.php:408
1698
+ #: includes/fields/class-acf-field-file.php:200
1699
+ #: includes/fields/class-acf-field-image.php:188
1700
+ #: includes/fields/class-acf-field-link.php:166
1701
+ #: includes/fields/class-acf-field-radio.php:299
1702
+ #: includes/fields/class-acf-field-taxonomy.php:833
1703
  msgid "Return Value"
1704
  msgstr "Rückgabewert"
1705
 
1706
  # @ acf
1707
+ #: includes/fields/class-acf-field-button-group.php:192
1708
+ #: includes/fields/class-acf-field-checkbox.php:409
1709
+ #: includes/fields/class-acf-field-file.php:201
1710
+ #: includes/fields/class-acf-field-image.php:189
1711
+ #: includes/fields/class-acf-field-link.php:167
1712
+ #: includes/fields/class-acf-field-radio.php:300
1713
  msgid "Specify the returned value on front end"
1714
  msgstr "Legt den Rückgabewert für das Front-End fest"
1715
 
1716
+ #: includes/fields/class-acf-field-button-group.php:197
1717
+ #: includes/fields/class-acf-field-checkbox.php:414
1718
+ #: includes/fields/class-acf-field-radio.php:305
1719
+ #: includes/fields/class-acf-field-select.php:431
1720
  msgid "Value"
1721
  msgstr "Wert"
1722
 
1723
+ #: includes/fields/class-acf-field-button-group.php:199
1724
+ #: includes/fields/class-acf-field-checkbox.php:416
1725
+ #: includes/fields/class-acf-field-radio.php:307
1726
+ #: includes/fields/class-acf-field-select.php:433
1727
  msgid "Both (Array)"
1728
  msgstr "Beide (Array)"
1729
 
1730
  # @ acf
1731
+ #: includes/fields/class-acf-field-checkbox.php:25
1732
+ #: includes/fields/class-acf-field-taxonomy.php:780
1733
+ msgid "Checkbox"
1734
+ msgstr "Checkbox"
1735
+
1736
+ # @ acf
1737
+ #: includes/fields/class-acf-field-checkbox.php:154
1738
+ msgid "Toggle All"
1739
+ msgstr "Alle auswählen"
1740
+
1741
+ #: includes/fields/class-acf-field-checkbox.php:221
1742
+ msgid "Add new choice"
1743
+ msgstr "Neue Auswahlmöglichkeit hinzufügen"
1744
+
1745
+ #: includes/fields/class-acf-field-checkbox.php:353
1746
+ msgid "Allow Custom"
1747
+ msgstr "Erlaube benutzerdefinierte Felder"
1748
+
1749
+ #: includes/fields/class-acf-field-checkbox.php:358
1750
+ msgid "Allow 'custom' values to be added"
1751
+ msgstr "Erlaube das Hinzufügen benutzerdefinierter Werte"
1752
+
1753
+ #: includes/fields/class-acf-field-checkbox.php:364
1754
+ msgid "Save Custom"
1755
+ msgstr "Benutzerdefinierte Werte sichern"
1756
+
1757
+ #: includes/fields/class-acf-field-checkbox.php:369
1758
+ msgid "Save 'custom' values to the field's choices"
1759
+ msgstr ""
1760
+ "Sichere benutzerdefinierte Werte zu den Auswahlmöglichkeiten des Feldes"
1761
+
1762
+ # @ acf
1763
+ #: includes/fields/class-acf-field-checkbox.php:376
1764
+ #: includes/fields/class-acf-field-select.php:378
1765
+ msgid "Enter each default value on a new line"
1766
+ msgstr "Jeden Standardwert in einer neuen Zeile eingeben"
1767
+
1768
+ #: includes/fields/class-acf-field-checkbox.php:398
1769
+ msgid "Toggle"
1770
+ msgstr "Auswählen"
1771
+
1772
+ #: includes/fields/class-acf-field-checkbox.php:399
1773
+ msgid "Prepend an extra checkbox to toggle all choices"
1774
+ msgstr ""
1775
+ "Hänge eine zusätzliche Checkbox an mit der man alle Optionen auswählen kann"
1776
+
1777
+ # @ acf
1778
+ #: includes/fields/class-acf-field-color_picker.php:25
1779
  msgid "Color Picker"
1780
  msgstr "Farbe"
1781
 
1782
  # @ acf
1783
+ #: includes/fields/class-acf-field-color_picker.php:68
1784
  msgid "Clear"
1785
  msgstr "Leeren"
1786
 
1787
  # @ acf
1788
+ #: includes/fields/class-acf-field-color_picker.php:69
1789
  msgid "Default"
1790
  msgstr "Standard"
1791
 
1792
  # @ acf
1793
+ #: includes/fields/class-acf-field-color_picker.php:70
1794
  msgid "Select Color"
1795
  msgstr "Farbe auswählen"
1796
 
1797
+ #: includes/fields/class-acf-field-color_picker.php:71
1798
  msgid "Current Color"
1799
  msgstr "Aktuelle Farbe"
1800
 
1801
  # @ acf
1802
+ #: includes/fields/class-acf-field-date_picker.php:25
1803
  msgid "Date Picker"
1804
  msgstr "Datum"
1805
 
1806
+ #: includes/fields/class-acf-field-date_picker.php:33
1807
  msgctxt "Date Picker JS closeText"
1808
  msgid "Done"
1809
  msgstr "Schliessen"
1810
 
1811
+ #: includes/fields/class-acf-field-date_picker.php:34
1812
  msgctxt "Date Picker JS currentText"
1813
  msgid "Today"
1814
  msgstr "Heute"
1815
 
1816
+ #: includes/fields/class-acf-field-date_picker.php:35
1817
  msgctxt "Date Picker JS nextText"
1818
  msgid "Next"
1819
  msgstr "Weiter"
1820
 
1821
+ #: includes/fields/class-acf-field-date_picker.php:36
1822
  msgctxt "Date Picker JS prevText"
1823
  msgid "Prev"
1824
  msgstr "Zurück"
1825
 
1826
+ #: includes/fields/class-acf-field-date_picker.php:37
1827
  msgctxt "Date Picker JS weekHeader"
1828
  msgid "Wk"
1829
  msgstr "KW"
1830
 
1831
  # @ acf
1832
+ #: includes/fields/class-acf-field-date_picker.php:207
1833
+ #: includes/fields/class-acf-field-date_time_picker.php:181
1834
+ #: includes/fields/class-acf-field-time_picker.php:109
1835
  msgid "Display Format"
1836
  msgstr "Darstellungs-Format"
1837
 
1838
  # @ acf
1839
+ #: includes/fields/class-acf-field-date_picker.php:208
1840
+ #: includes/fields/class-acf-field-date_time_picker.php:182
1841
+ #: includes/fields/class-acf-field-time_picker.php:110
1842
  msgid "The format displayed when editing a post"
1843
  msgstr "Das Datums-Format für die Anzeige in der Bearbeitungs-Ansicht"
1844
 
1845
+ #: includes/fields/class-acf-field-date_picker.php:216
1846
+ #: includes/fields/class-acf-field-date_picker.php:247
1847
+ #: includes/fields/class-acf-field-date_time_picker.php:191
1848
+ #: includes/fields/class-acf-field-date_time_picker.php:208
1849
+ #: includes/fields/class-acf-field-time_picker.php:117
1850
+ #: includes/fields/class-acf-field-time_picker.php:132
 
1851
  msgid "Custom:"
1852
+ msgstr "Benutzerdefiniert:"
1853
 
1854
+ #: includes/fields/class-acf-field-date_picker.php:226
1855
  msgid "Save Format"
1856
  msgstr "Format sichern"
1857
 
1858
+ #: includes/fields/class-acf-field-date_picker.php:227
1859
  msgid "The format used when saving a value"
1860
  msgstr "Das verwendete Format, wenn der Wert gesichert wird"
1861
 
1862
  # @ acf
1863
+ #: includes/fields/class-acf-field-date_picker.php:237
1864
+ #: includes/fields/class-acf-field-date_time_picker.php:198
1865
+ #: includes/fields/class-acf-field-post_object.php:432
1866
+ #: includes/fields/class-acf-field-relationship.php:697
1867
+ #: includes/fields/class-acf-field-select.php:426
1868
+ #: includes/fields/class-acf-field-time_picker.php:124
1869
  msgid "Return Format"
1870
  msgstr "Rückgabewert"
1871
 
1872
  # @ acf
1873
+ #: includes/fields/class-acf-field-date_picker.php:238
1874
+ #: includes/fields/class-acf-field-date_time_picker.php:199
1875
+ #: includes/fields/class-acf-field-time_picker.php:125
1876
  msgid "The format returned via template functions"
1877
  msgstr "Das Datums-Format für die Ausgabe in den Template-Funktionen"
1878
 
1879
  # @ acf
1880
+ #: includes/fields/class-acf-field-date_picker.php:256
1881
+ #: includes/fields/class-acf-field-date_time_picker.php:215
1882
  msgid "Week Starts On"
1883
  msgstr "Die Woche beginnt am"
1884
 
1885
+ #: includes/fields/class-acf-field-date_time_picker.php:25
1886
  msgid "Date Time Picker"
1887
  msgstr "Datum/Uhrzeit"
1888
 
1889
+ #: includes/fields/class-acf-field-date_time_picker.php:33
1890
  msgctxt "Date Time Picker JS timeOnlyTitle"
1891
  msgid "Choose Time"
1892
  msgstr "Zeit setzen"
1893
 
1894
+ #: includes/fields/class-acf-field-date_time_picker.php:34
1895
  msgctxt "Date Time Picker JS timeText"
1896
  msgid "Time"
1897
  msgstr "Zeit"
1898
 
1899
+ #: includes/fields/class-acf-field-date_time_picker.php:35
1900
  msgctxt "Date Time Picker JS hourText"
1901
  msgid "Hour"
1902
  msgstr "Stunde"
1903
 
1904
+ #: includes/fields/class-acf-field-date_time_picker.php:36
1905
  msgctxt "Date Time Picker JS minuteText"
1906
  msgid "Minute"
1907
  msgstr "Minute"
1908
 
1909
+ #: includes/fields/class-acf-field-date_time_picker.php:37
1910
  msgctxt "Date Time Picker JS secondText"
1911
  msgid "Second"
1912
  msgstr "Sekunde"
1913
 
1914
+ #: includes/fields/class-acf-field-date_time_picker.php:38
1915
  msgctxt "Date Time Picker JS millisecText"
1916
  msgid "Millisecond"
1917
  msgstr "Millisekunde"
1918
 
1919
+ #: includes/fields/class-acf-field-date_time_picker.php:39
1920
  msgctxt "Date Time Picker JS microsecText"
1921
  msgid "Microsecond"
1922
  msgstr "Mikrosekunde"
1923
 
1924
+ #: includes/fields/class-acf-field-date_time_picker.php:40
1925
  msgctxt "Date Time Picker JS timezoneText"
1926
  msgid "Time Zone"
1927
  msgstr "Zeitzone"
1928
 
1929
+ #: includes/fields/class-acf-field-date_time_picker.php:41
1930
  msgctxt "Date Time Picker JS currentText"
1931
  msgid "Now"
1932
  msgstr "Jetzt"
1933
 
1934
+ #: includes/fields/class-acf-field-date_time_picker.php:42
1935
  msgctxt "Date Time Picker JS closeText"
1936
  msgid "Done"
1937
  msgstr "Schliessen"
1938
 
1939
+ #: includes/fields/class-acf-field-date_time_picker.php:43
1940
  msgctxt "Date Time Picker JS selectText"
1941
  msgid "Select"
1942
  msgstr "Auswählen"
1943
 
1944
+ #: includes/fields/class-acf-field-date_time_picker.php:45
1945
  msgctxt "Date Time Picker JS amText"
1946
  msgid "AM"
1947
  msgstr "AM"
1948
 
1949
+ #: includes/fields/class-acf-field-date_time_picker.php:46
1950
  msgctxt "Date Time Picker JS amTextShort"
1951
  msgid "A"
1952
  msgstr "A"
1953
 
1954
+ #: includes/fields/class-acf-field-date_time_picker.php:49
1955
  msgctxt "Date Time Picker JS pmText"
1956
  msgid "PM"
1957
  msgstr "PM"
1958
 
1959
+ #: includes/fields/class-acf-field-date_time_picker.php:50
1960
  msgctxt "Date Time Picker JS pmTextShort"
1961
  msgid "P"
1962
  msgstr "P"
1963
 
1964
  # @ acf
1965
+ #: includes/fields/class-acf-field-email.php:25
1966
  msgid "Email"
1967
  msgstr "E-Mail"
1968
 
1969
  # @ acf
1970
+ #: includes/fields/class-acf-field-email.php:127
1971
+ #: includes/fields/class-acf-field-number.php:136
1972
+ #: includes/fields/class-acf-field-password.php:71
1973
+ #: includes/fields/class-acf-field-text.php:128
1974
+ #: includes/fields/class-acf-field-textarea.php:111
1975
+ #: includes/fields/class-acf-field-url.php:109
 
 
 
 
 
 
 
 
 
 
 
1976
  msgid "Placeholder Text"
1977
  msgstr "Platzhalter-Text"
1978
 
1979
  # @ acf
1980
+ #: includes/fields/class-acf-field-email.php:128
1981
+ #: includes/fields/class-acf-field-number.php:137
1982
+ #: includes/fields/class-acf-field-password.php:72
1983
+ #: includes/fields/class-acf-field-text.php:129
1984
+ #: includes/fields/class-acf-field-textarea.php:112
1985
+ #: includes/fields/class-acf-field-url.php:110
1986
  msgid "Appears within the input"
1987
  msgstr "Platzhalter-Text solange keine Eingabe im Feld vorgenommen wurde"
1988
 
1989
  # @ acf
1990
+ #: includes/fields/class-acf-field-email.php:136
1991
+ #: includes/fields/class-acf-field-number.php:145
1992
+ #: includes/fields/class-acf-field-password.php:80
1993
+ #: includes/fields/class-acf-field-range.php:187
1994
+ #: includes/fields/class-acf-field-text.php:137
1995
  msgid "Prepend"
1996
  msgstr "Voranstellen"
1997
 
1998
  # @ acf
1999
+ #: includes/fields/class-acf-field-email.php:137
2000
+ #: includes/fields/class-acf-field-number.php:146
2001
+ #: includes/fields/class-acf-field-password.php:81
2002
+ #: includes/fields/class-acf-field-range.php:188
2003
+ #: includes/fields/class-acf-field-text.php:138
2004
  msgid "Appears before the input"
2005
  msgstr "Wird dem Eingabefeld vorangestellt"
2006
 
2007
  # @ acf
2008
+ #: includes/fields/class-acf-field-email.php:145
2009
+ #: includes/fields/class-acf-field-number.php:154
2010
+ #: includes/fields/class-acf-field-password.php:89
2011
+ #: includes/fields/class-acf-field-range.php:196
2012
+ #: includes/fields/class-acf-field-text.php:146
2013
  msgid "Append"
2014
  msgstr "Anhängen"
2015
 
2016
  # @ acf
2017
+ #: includes/fields/class-acf-field-email.php:146
2018
+ #: includes/fields/class-acf-field-number.php:155
2019
+ #: includes/fields/class-acf-field-password.php:90
2020
+ #: includes/fields/class-acf-field-range.php:197
2021
+ #: includes/fields/class-acf-field-text.php:147
2022
  msgid "Appears after the input"
2023
  msgstr "Wird dem Eingabefeld hinten angestellt"
2024
 
2025
  # @ acf
2026
+ #: includes/fields/class-acf-field-file.php:25
2027
  msgid "File"
2028
  msgstr "Datei"
2029
 
2030
  # @ acf
2031
+ #: includes/fields/class-acf-field-file.php:36
2032
  msgid "Edit File"
2033
  msgstr "Datei bearbeiten"
2034
 
2035
  # @ acf
2036
+ #: includes/fields/class-acf-field-file.php:37
2037
  msgid "Update File"
2038
  msgstr "Datei aktualisieren"
2039
 
2040
  # @ acf
2041
+ #: includes/fields/class-acf-field-file.php:38
2042
+ #: includes/fields/class-acf-field-image.php:43 includes/media.php:57
2043
+ #: pro/fields/class-acf-field-gallery.php:44
2044
  msgid "Uploaded to this post"
2045
  msgstr "Zu diesem Beitrag hochgeladen"
2046
 
2047
+ #: includes/fields/class-acf-field-file.php:126
2048
  msgid "File name"
2049
  msgstr "Dateiname"
2050
 
2051
  # @ acf
2052
+ #: includes/fields/class-acf-field-file.php:130
2053
+ #: includes/fields/class-acf-field-file.php:233
2054
+ #: includes/fields/class-acf-field-file.php:244
2055
+ #: includes/fields/class-acf-field-image.php:248
2056
+ #: includes/fields/class-acf-field-image.php:277
2057
+ #: pro/fields/class-acf-field-gallery.php:690
2058
+ #: pro/fields/class-acf-field-gallery.php:719
2059
  msgid "File size"
2060
  msgstr "Dateigrösse"
2061
 
2062
  # @ acf
2063
+ #: includes/fields/class-acf-field-file.php:139
2064
+ #: includes/fields/class-acf-field-image.php:124
2065
+ #: includes/fields/class-acf-field-link.php:140 includes/input.php:269
2066
+ #: pro/fields/class-acf-field-gallery.php:343
2067
+ #: pro/fields/class-acf-field-gallery.php:531
2068
+ msgid "Remove"
2069
+ msgstr "Entfernen"
2070
+
2071
+ # @ acf
2072
+ #: includes/fields/class-acf-field-file.php:155
2073
  msgid "Add File"
2074
  msgstr "Datei hinzufügen"
2075
 
2076
  # @ acf
2077
+ #: includes/fields/class-acf-field-file.php:206
2078
  msgid "File Array"
2079
  msgstr "Datei-Array"
2080
 
2081
  # @ acf
2082
+ #: includes/fields/class-acf-field-file.php:207
2083
  msgid "File URL"
2084
  msgstr "Datei-URL"
2085
 
2086
  # @ acf
2087
+ #: includes/fields/class-acf-field-file.php:208
2088
  msgid "File ID"
2089
  msgstr "Datei-ID"
2090
 
2091
  # @ acf
2092
+ #: includes/fields/class-acf-field-file.php:215
2093
+ #: includes/fields/class-acf-field-image.php:213
2094
+ #: pro/fields/class-acf-field-gallery.php:655
2095
  msgid "Library"
2096
  msgstr "Medienübersicht"
2097
 
2098
  # @ acf
2099
+ #: includes/fields/class-acf-field-file.php:216
2100
+ #: includes/fields/class-acf-field-image.php:214
2101
+ #: pro/fields/class-acf-field-gallery.php:656
2102
  msgid "Limit the media library choice"
2103
  msgstr "Beschränkt die Auswahl in der Medienübersicht"
2104
 
2105
  # @ acf
2106
+ #: includes/fields/class-acf-field-file.php:221
2107
+ #: includes/fields/class-acf-field-image.php:219
2108
+ #: includes/locations/class-acf-location-attachment.php:101
2109
+ #: includes/locations/class-acf-location-comment.php:79
2110
+ #: includes/locations/class-acf-location-nav-menu.php:102
2111
+ #: includes/locations/class-acf-location-taxonomy.php:79
2112
+ #: includes/locations/class-acf-location-user-form.php:87
2113
+ #: includes/locations/class-acf-location-user-role.php:111
2114
+ #: includes/locations/class-acf-location-widget.php:83
2115
+ #: pro/fields/class-acf-field-gallery.php:661
2116
  msgid "All"
2117
  msgstr "Alle"
2118
 
2119
  # @ acf
2120
+ #: includes/fields/class-acf-field-file.php:222
2121
+ #: includes/fields/class-acf-field-image.php:220
2122
+ #: pro/fields/class-acf-field-gallery.php:662
2123
  msgid "Uploaded to post"
2124
  msgstr "Für den Beitrag hochgeladen"
2125
 
2126
  # @ acf
2127
+ #: includes/fields/class-acf-field-file.php:229
2128
+ #: includes/fields/class-acf-field-image.php:227
2129
+ #: pro/fields/class-acf-field-gallery.php:669
2130
  msgid "Minimum"
2131
  msgstr "Minimum"
2132
 
2133
  # @ acf
2134
+ #: includes/fields/class-acf-field-file.php:230
2135
+ #: includes/fields/class-acf-field-file.php:241
2136
  msgid "Restrict which files can be uploaded"
2137
  msgstr ""
2138
  "Erlaubt nur das Hochladen von Dateien die die angegebenen Eigenschaften "
2139
  "erfüllen"
2140
 
2141
  # @ acf
2142
+ #: includes/fields/class-acf-field-file.php:240
2143
+ #: includes/fields/class-acf-field-image.php:256
2144
+ #: pro/fields/class-acf-field-gallery.php:698
2145
  msgid "Maximum"
2146
  msgstr "Maximum"
2147
 
2148
  # @ acf
2149
+ #: includes/fields/class-acf-field-file.php:251
2150
+ #: includes/fields/class-acf-field-image.php:285
2151
+ #: pro/fields/class-acf-field-gallery.php:727
2152
  msgid "Allowed file types"
2153
  msgstr "Erlaubte Datei-Formate"
2154
 
2155
  # @ acf
2156
+ #: includes/fields/class-acf-field-file.php:252
2157
+ #: includes/fields/class-acf-field-image.php:286
2158
+ #: pro/fields/class-acf-field-gallery.php:728
2159
  msgid "Comma separated list. Leave blank for all types"
2160
  msgstr ""
2161
  "Komma separierte Liste; ein leeres Feld bedeutet alle Dateiformate sind "
2162
  "erlaubt"
2163
 
2164
  # @ acf
2165
+ #: includes/fields/class-acf-field-google-map.php:25
2166
  msgid "Google Map"
2167
  msgstr "Google Maps"
2168
 
2169
  # @ acf
2170
+ #: includes/fields/class-acf-field-google-map.php:40
2171
  msgid "Locating"
2172
  msgstr "Lokalisiere"
2173
 
2174
  # @ acf
2175
+ #: includes/fields/class-acf-field-google-map.php:41
2176
  msgid "Sorry, this browser does not support geolocation"
2177
  msgstr "Dieser Browser unterstützt keine Geo-Lokation"
2178
 
2179
  # @ acf
2180
+ #: includes/fields/class-acf-field-google-map.php:113
2181
  msgid "Clear location"
2182
  msgstr "Position löschen"
2183
 
2184
  # @ acf
2185
+ #: includes/fields/class-acf-field-google-map.php:114
2186
  msgid "Find current location"
2187
  msgstr "Aktuelle Position finden"
2188
 
2189
  # @ acf
2190
+ #: includes/fields/class-acf-field-google-map.php:117
2191
  msgid "Search for address..."
2192
  msgstr "Nach der Adresse suchen..."
2193
 
2194
  # @ acf
2195
+ #: includes/fields/class-acf-field-google-map.php:147
2196
+ #: includes/fields/class-acf-field-google-map.php:158
2197
  msgid "Center"
2198
  msgstr "Kartenmittelpunkt"
2199
 
2200
  # @ acf
2201
+ #: includes/fields/class-acf-field-google-map.php:148
2202
+ #: includes/fields/class-acf-field-google-map.php:159
2203
  msgid "Center the initial map"
2204
  msgstr "Der Mittelpunkt der Ausgangskarte"
2205
 
2206
  # @ acf
2207
+ #: includes/fields/class-acf-field-google-map.php:170
2208
  msgid "Zoom"
2209
  msgstr "Zoom"
2210
 
2211
  # @ acf
2212
+ #: includes/fields/class-acf-field-google-map.php:171
2213
  msgid "Set the initial zoom level"
2214
  msgstr "Legt die Zoomstufe der Karte fest"
2215
 
2216
  # @ acf
2217
+ #: includes/fields/class-acf-field-google-map.php:180
2218
+ #: includes/fields/class-acf-field-image.php:239
2219
+ #: includes/fields/class-acf-field-image.php:268
2220
+ #: includes/fields/class-acf-field-oembed.php:281
2221
+ #: pro/fields/class-acf-field-gallery.php:681
2222
+ #: pro/fields/class-acf-field-gallery.php:710
2223
  msgid "Height"
2224
  msgstr "Höhe"
2225
 
2226
  # @ acf
2227
+ #: includes/fields/class-acf-field-google-map.php:181
2228
  msgid "Customise the map height"
2229
  msgstr "Legt die Höhe der Karte fest"
2230
 
2231
  # @ acf
2232
+ #: includes/fields/class-acf-field-group.php:25
 
2233
  msgid "Group"
2234
+ msgstr "Gruppe"
 
 
2235
 
2236
  # @ acf
2237
+ #: includes/fields/class-acf-field-group.php:459
2238
+ #: pro/fields/class-acf-field-repeater.php:389
2239
  msgid "Sub Fields"
2240
  msgstr "Wiederholungsfelder"
2241
 
2242
+ #: includes/fields/class-acf-field-group.php:475
2243
+ #: pro/fields/class-acf-field-clone.php:840
2244
  msgid "Specify the style used to render the selected fields"
2245
  msgstr "Gib an, wie die ausgewählten Felder angezeigt werden sollen"
2246
 
2247
  # @ acf
2248
+ #: includes/fields/class-acf-field-group.php:480
2249
+ #: pro/fields/class-acf-field-clone.php:845
2250
+ #: pro/fields/class-acf-field-flexible-content.php:612
2251
+ #: pro/fields/class-acf-field-repeater.php:458
2252
  msgid "Block"
2253
  msgstr "Block"
2254
 
2255
  # @ acf
2256
+ #: includes/fields/class-acf-field-group.php:481
2257
+ #: pro/fields/class-acf-field-clone.php:846
2258
+ #: pro/fields/class-acf-field-flexible-content.php:611
2259
+ #: pro/fields/class-acf-field-repeater.php:457
2260
  msgid "Table"
2261
  msgstr "Tabelle"
2262
 
2263
  # @ acf
2264
+ #: includes/fields/class-acf-field-group.php:482
2265
+ #: pro/fields/class-acf-field-clone.php:847
2266
+ #: pro/fields/class-acf-field-flexible-content.php:613
2267
+ #: pro/fields/class-acf-field-repeater.php:459
2268
  msgid "Row"
2269
  msgstr "Reihe"
2270
 
2271
  # @ acf
2272
+ #: includes/fields/class-acf-field-image.php:25
2273
  msgid "Image"
2274
  msgstr "Bild"
2275
 
2276
  # @ acf
2277
+ #: includes/fields/class-acf-field-image.php:40
2278
  msgid "Select Image"
2279
  msgstr "Bild auswählen"
2280
 
2281
  # @ acf
2282
+ #: includes/fields/class-acf-field-image.php:41
2283
+ #: pro/fields/class-acf-field-gallery.php:42
2284
  msgid "Edit Image"
2285
  msgstr "Bild bearbeiten"
2286
 
2287
  # @ acf
2288
+ #: includes/fields/class-acf-field-image.php:42
2289
+ #: pro/fields/class-acf-field-gallery.php:43
2290
  msgid "Update Image"
2291
  msgstr "Bild aktualisieren"
2292
 
2293
  # @ acf
2294
+ #: includes/fields/class-acf-field-image.php:44
2295
  msgid "All images"
2296
  msgstr "Alle Bilder"
2297
 
2298
  # @ acf
2299
+ #: includes/fields/class-acf-field-image.php:140
 
 
 
 
 
 
 
 
2300
  msgid "No image selected"
2301
  msgstr "Kein Bild ausgewählt"
2302
 
2303
  # @ acf
2304
+ #: includes/fields/class-acf-field-image.php:140
2305
  msgid "Add Image"
2306
  msgstr "Bild hinzufügen"
2307
 
2308
  # @ acf
2309
+ #: includes/fields/class-acf-field-image.php:194
2310
  msgid "Image Array"
2311
  msgstr "Bild-Array"
2312
 
2313
  # @ acf
2314
+ #: includes/fields/class-acf-field-image.php:195
2315
  msgid "Image URL"
2316
  msgstr "Bild-URL"
2317
 
2318
  # @ acf
2319
+ #: includes/fields/class-acf-field-image.php:196
2320
  msgid "Image ID"
2321
  msgstr "Bild-ID"
2322
 
2323
  # @ acf
2324
+ #: includes/fields/class-acf-field-image.php:203
2325
  msgid "Preview Size"
2326
  msgstr "Masse der Vorschau"
2327
 
2328
  # @ acf
2329
+ #: includes/fields/class-acf-field-image.php:204
2330
  msgid "Shown when entering data"
2331
  msgstr "Legt fest welche Masse die Vorschau in der Bearbeitungs-Ansicht hat"
2332
 
2333
  # @ acf
2334
+ #: includes/fields/class-acf-field-image.php:228
2335
+ #: includes/fields/class-acf-field-image.php:257
2336
+ #: pro/fields/class-acf-field-gallery.php:670
2337
+ #: pro/fields/class-acf-field-gallery.php:699
2338
  msgid "Restrict which images can be uploaded"
2339
  msgstr ""
2340
  "Erlaubt nur das Hochladen von Bildern, die die angegebenen Eigenschaften "
2341
  "erfüllen"
2342
 
2343
  # @ acf
2344
+ #: includes/fields/class-acf-field-image.php:231
2345
+ #: includes/fields/class-acf-field-image.php:260
2346
+ #: includes/fields/class-acf-field-oembed.php:270
2347
+ #: pro/fields/class-acf-field-gallery.php:673
2348
+ #: pro/fields/class-acf-field-gallery.php:702
2349
  msgid "Width"
2350
  msgstr "Breite"
2351
 
2352
  # @ acf
2353
+ #: includes/fields/class-acf-field-link.php:25
 
2354
  msgid "Link"
2355
+ msgstr "Link"
2356
 
2357
  # @ acf
2358
+ #: includes/fields/class-acf-field-link.php:133
 
2359
  msgid "Select Link"
2360
+ msgstr "Link auswählen"
2361
 
2362
+ #: includes/fields/class-acf-field-link.php:138
2363
  msgid "Opens in a new window/tab"
2364
+ msgstr "Öffnet in einem neuen Fenster/Tab"
2365
 
2366
  # @ acf
2367
+ #: includes/fields/class-acf-field-link.php:172
 
2368
  msgid "Link Array"
2369
+ msgstr "Link Array"
2370
 
2371
  # @ acf
2372
+ #: includes/fields/class-acf-field-link.php:173
 
2373
  msgid "Link URL"
2374
+ msgstr "Link URL"
2375
 
2376
  # @ acf
2377
+ #: includes/fields/class-acf-field-message.php:25
2378
+ #: includes/fields/class-acf-field-message.php:101
2379
+ #: includes/fields/class-acf-field-true_false.php:126
2380
  msgid "Message"
2381
  msgstr "Nachricht"
2382
 
2383
  # @ acf
2384
+ #: includes/fields/class-acf-field-message.php:110
2385
+ #: includes/fields/class-acf-field-textarea.php:139
2386
  msgid "New Lines"
2387
  msgstr "Neue Zeilen"
2388
 
2389
  # @ acf
2390
+ #: includes/fields/class-acf-field-message.php:111
2391
+ #: includes/fields/class-acf-field-textarea.php:140
2392
  msgid "Controls how new lines are rendered"
2393
  msgstr "Legt fest wie Zeilenumbrüche gehandhabt werden"
2394
 
2395
  # @ acf
2396
+ #: includes/fields/class-acf-field-message.php:115
2397
+ #: includes/fields/class-acf-field-textarea.php:144
2398
  msgid "Automatically add paragraphs"
2399
  msgstr "Absätze automatisch hinzufügen"
2400
 
2401
  # @ acf
2402
+ #: includes/fields/class-acf-field-message.php:116
2403
+ #: includes/fields/class-acf-field-textarea.php:145
2404
  msgid "Automatically add &lt;br&gt;"
2405
  msgstr "Zeilenumbrüche ( &lt;br&gt; ) automatisch hinzufügen"
2406
 
2407
  # @ acf
2408
+ #: includes/fields/class-acf-field-message.php:117
2409
+ #: includes/fields/class-acf-field-textarea.php:146
2410
  msgid "No Formatting"
2411
  msgstr "Keine Formatierung"
2412
 
2413
  # @ acf
2414
+ #: includes/fields/class-acf-field-message.php:124
2415
  msgid "Escape HTML"
2416
  msgstr "HTML enkodieren"
2417
 
2418
  # @ acf
2419
+ #: includes/fields/class-acf-field-message.php:125
2420
  msgid "Allow HTML markup to display as visible text instead of rendering"
2421
  msgstr ""
2422
  "Bei aktiver Option wird HTML Code als solcher angezeigt und nicht "
2423
  "interpretiert"
2424
 
2425
  # @ acf
2426
+ #: includes/fields/class-acf-field-number.php:25
2427
  msgid "Number"
2428
  msgstr "Numerisch"
2429
 
2430
  # @ acf
2431
+ #: includes/fields/class-acf-field-number.php:163
2432
+ #: includes/fields/class-acf-field-range.php:157
2433
  msgid "Minimum Value"
2434
  msgstr "Mindestwert"
2435
 
2436
  # @ acf
2437
+ #: includes/fields/class-acf-field-number.php:172
2438
+ #: includes/fields/class-acf-field-range.php:167
2439
  msgid "Maximum Value"
2440
  msgstr "Maximalwert"
2441
 
2442
  # @ acf
2443
+ #: includes/fields/class-acf-field-number.php:181
2444
+ #: includes/fields/class-acf-field-range.php:177
2445
  msgid "Step Size"
2446
  msgstr "Schrittweite"
2447
 
2448
  # @ acf
2449
+ #: includes/fields/class-acf-field-number.php:219
2450
  msgid "Value must be a number"
2451
  msgstr "Wert muss eine Zahl sein"
2452
 
2453
  # @ acf
2454
+ #: includes/fields/class-acf-field-number.php:237
2455
  #, php-format
2456
  msgid "Value must be equal to or higher than %d"
2457
  msgstr "Wert muss grösser oder gleich %d sein"
2458
 
2459
  # @ acf
2460
+ #: includes/fields/class-acf-field-number.php:245
2461
  #, php-format
2462
  msgid "Value must be equal to or lower than %d"
2463
  msgstr "Wert muss kleiner oder gleich %d sein"
2464
 
2465
  # @ acf
2466
+ #: includes/fields/class-acf-field-oembed.php:25
2467
  msgid "oEmbed"
2468
  msgstr "oEmbed"
2469
 
2470
  # @ acf
2471
+ #: includes/fields/class-acf-field-oembed.php:219
2472
  msgid "Enter URL"
2473
  msgstr "URL eingeben"
2474
 
2475
+ #: includes/fields/class-acf-field-oembed.php:234
2476
+ #: includes/fields/class-acf-field-taxonomy.php:898
2477
  msgid "Error."
2478
  msgstr "Fehler."
2479
 
2480
  # @ acf
2481
+ #: includes/fields/class-acf-field-oembed.php:234
2482
  msgid "No embed found for the given URL."
2483
  msgstr "Keine Inhalte für die eingegebene URL gefunden."
2484
 
2485
  # @ acf
2486
+ #: includes/fields/class-acf-field-oembed.php:267
2487
+ #: includes/fields/class-acf-field-oembed.php:278
2488
  msgid "Embed Size"
2489
  msgstr "Masse"
2490
 
2491
  # @ acf
2492
+ #: includes/fields/class-acf-field-page_link.php:177
2493
  msgid "Archives"
2494
  msgstr "Archive"
2495
 
2496
  # @ acf
2497
+ #: includes/fields/class-acf-field-page_link.php:485
2498
+ #: includes/fields/class-acf-field-post_object.php:384
2499
+ #: includes/fields/class-acf-field-relationship.php:623
2500
  msgid "Filter by Post Type"
2501
  msgstr "Nach Post Types filtern"
2502
 
2503
  # @ acf
2504
+ #: includes/fields/class-acf-field-page_link.php:493
2505
+ #: includes/fields/class-acf-field-post_object.php:392
2506
+ #: includes/fields/class-acf-field-relationship.php:631
2507
  msgid "All post types"
2508
  msgstr "Alle verfügbaren Post Types"
2509
 
2510
  # @ acf
2511
+ #: includes/fields/class-acf-field-page_link.php:499
2512
+ #: includes/fields/class-acf-field-post_object.php:398
2513
+ #: includes/fields/class-acf-field-relationship.php:637
2514
  msgid "Filter by Taxonomy"
2515
  msgstr "Nach Taxonomien filtern"
2516
 
2517
  # @ acf
2518
+ #: includes/fields/class-acf-field-page_link.php:507
2519
+ #: includes/fields/class-acf-field-post_object.php:406
2520
+ #: includes/fields/class-acf-field-relationship.php:645
2521
  msgid "All taxonomies"
2522
  msgstr "Alle Taxonomien"
2523
 
2524
+ #: includes/fields/class-acf-field-page_link.php:523
 
 
 
 
 
 
 
 
 
 
2525
  msgid "Allow Archives URLs"
2526
  msgstr "Archiv URLs erlauben"
2527
 
2528
  # @ acf
2529
+ #: includes/fields/class-acf-field-page_link.php:533
2530
+ #: includes/fields/class-acf-field-post_object.php:422
2531
+ #: includes/fields/class-acf-field-select.php:396
2532
+ #: includes/fields/class-acf-field-user.php:418
2533
  msgid "Select multiple values?"
2534
  msgstr "Mehrere Werte auswählbar?"
2535
 
2536
  # @ acf
2537
+ #: includes/fields/class-acf-field-password.php:25
2538
  msgid "Password"
2539
  msgstr "Passwort"
2540
 
2541
  # @ acf
2542
+ #: includes/fields/class-acf-field-post_object.php:25
2543
+ #: includes/fields/class-acf-field-post_object.php:437
2544
+ #: includes/fields/class-acf-field-relationship.php:702
2545
  msgid "Post Object"
2546
  msgstr "Beitrags-Objekt"
2547
 
2548
  # @ acf
2549
+ #: includes/fields/class-acf-field-post_object.php:438
2550
+ #: includes/fields/class-acf-field-relationship.php:703
2551
  msgid "Post ID"
2552
  msgstr "Beitrags-ID"
2553
 
2554
  # @ acf
2555
+ #: includes/fields/class-acf-field-radio.php:25
2556
  msgid "Radio Button"
2557
  msgstr "Radio-Button"
2558
 
2559
  # @ acf
2560
+ #: includes/fields/class-acf-field-radio.php:254
2561
  msgid "Other"
2562
  msgstr "Sonstige"
2563
 
2564
  # @ acf
2565
+ #: includes/fields/class-acf-field-radio.php:259
2566
  msgid "Add 'other' choice to allow for custom values"
2567
  msgstr ""
2568
  "Fügt die Option 'Sonstige' hinzu, welche erlaubt, benutzerdefinierte Werte "
2569
  "hinzuzufügen"
2570
 
2571
  # @ acf
2572
+ #: includes/fields/class-acf-field-radio.php:265
2573
  msgid "Save Other"
2574
  msgstr "'Sonstige' speichern"
2575
 
2576
  # @ acf
2577
+ #: includes/fields/class-acf-field-radio.php:270
2578
  msgid "Save 'other' values to the field's choices"
2579
  msgstr "Füge 'Sonstige'-Werte zu den Auswahl Optionen hinzu"
2580
 
2581
+ #: includes/fields/class-acf-field-range.php:25
2582
+ msgid "Range"
2583
+ msgstr "Range"
2584
+
2585
  # @ acf
2586
+ #: includes/fields/class-acf-field-relationship.php:25
2587
  msgid "Relationship"
2588
  msgstr "Beziehung"
2589
 
2590
  # @ acf
2591
+ #: includes/fields/class-acf-field-relationship.php:37
2592
  msgid "Minimum values reached ( {min} values )"
2593
  msgstr "Minimum der Einträge mit ({min} Einträge) erreicht"
2594
 
2595
  # @ acf
2596
+ #: includes/fields/class-acf-field-relationship.php:38
2597
  msgid "Maximum values reached ( {max} values )"
2598
  msgstr "Maximum der Einträge mit ({max} Einträge) erreicht"
2599
 
2600
  # @ acf
2601
+ #: includes/fields/class-acf-field-relationship.php:39
2602
  msgid "Loading"
2603
  msgstr "Lade"
2604
 
2605
  # @ acf
2606
+ #: includes/fields/class-acf-field-relationship.php:40
2607
  msgid "No matches found"
2608
  msgstr "Keine Übereinstimmung gefunden"
2609
 
2610
  # @ acf
2611
+ #: includes/fields/class-acf-field-relationship.php:423
 
 
 
 
 
2612
  msgid "Select post type"
2613
  msgstr "Beitrag-Typ auswählen"
2614
 
2615
  # @ acf
2616
+ #: includes/fields/class-acf-field-relationship.php:449
2617
  msgid "Select taxonomy"
2618
  msgstr "Taxonomie auswählen"
2619
 
2620
  # @ acf
2621
+ #: includes/fields/class-acf-field-relationship.php:539
2622
+ msgid "Search..."
2623
+ msgstr "Suchen..."
2624
+
2625
+ # @ acf
2626
+ #: includes/fields/class-acf-field-relationship.php:651
2627
  msgid "Filters"
2628
  msgstr "Filter"
2629
 
2630
  # @ acf
2631
+ #: includes/fields/class-acf-field-relationship.php:657
2632
  #: includes/locations/class-acf-location-post-type.php:27
2633
  msgid "Post Type"
2634
  msgstr "Beitrags-Typ"
2635
 
2636
  # @ acf
2637
+ #: includes/fields/class-acf-field-relationship.php:658
2638
+ #: includes/fields/class-acf-field-taxonomy.php:28
2639
+ #: includes/fields/class-acf-field-taxonomy.php:763
2640
  msgid "Taxonomy"
2641
  msgstr "Taxonomie"
2642
 
2643
  # @ acf
2644
+ #: includes/fields/class-acf-field-relationship.php:665
2645
  msgid "Elements"
2646
  msgstr "Elemente"
2647
 
2648
  # @ acf
2649
+ #: includes/fields/class-acf-field-relationship.php:666
2650
  msgid "Selected elements will be displayed in each result"
2651
  msgstr "Die ausgewählten Elemente werden in jedem Ergebnis mit angezeigt"
2652
 
2653
  # @ acf
2654
+ #: includes/fields/class-acf-field-relationship.php:677
2655
  msgid "Minimum posts"
2656
  msgstr "Min. Anzahl der Beiträge"
2657
 
2658
  # @ acf
2659
+ #: includes/fields/class-acf-field-relationship.php:686
2660
  msgid "Maximum posts"
2661
  msgstr "Max. Anzahl der Beiträge"
2662
 
2663
  # @ acf
2664
+ #: includes/fields/class-acf-field-relationship.php:790
2665
+ #: pro/fields/class-acf-field-gallery.php:800
2666
  #, php-format
2667
  msgid "%s requires at least %s selection"
2668
  msgid_plural "%s requires at least %s selections"
2669
  msgstr[0] "%s benötigt mindestens %s Selektion"
2670
  msgstr[1] "%s benötigt mindestens %s Selektionen"
2671
 
2672
+ #: includes/fields/class-acf-field-select.php:25
2673
+ #: includes/fields/class-acf-field-taxonomy.php:785
2674
  msgctxt "noun"
2675
  msgid "Select"
2676
  msgstr "Auswahlmenü"
2677
 
2678
+ #: includes/fields/class-acf-field-select.php:38
2679
  msgctxt "Select2 JS matches_1"
2680
  msgid "One result is available, press enter to select it."
2681
  msgstr "Ein Resultat gefunden, mit Enter auswählen."
2682
 
2683
+ #: includes/fields/class-acf-field-select.php:39
2684
  #, php-format
2685
  msgctxt "Select2 JS matches_n"
2686
  msgid "%d results are available, use up and down arrow keys to navigate."
2687
  msgstr "%d Resultate gefunden, benutze die Pfeiltasten um zu navigieren."
2688
 
2689
+ #: includes/fields/class-acf-field-select.php:40
2690
  msgctxt "Select2 JS matches_0"
2691
  msgid "No matches found"
2692
  msgstr "Keine Übereinstimmungen gefunden"
2693
 
2694
+ #: includes/fields/class-acf-field-select.php:41
2695
  msgctxt "Select2 JS input_too_short_1"
2696
  msgid "Please enter 1 or more characters"
2697
  msgstr "Bitte eins oder mehrere Zeichen eingeben"
2698
 
2699
+ #: includes/fields/class-acf-field-select.php:42
2700
  #, php-format
2701
  msgctxt "Select2 JS input_too_short_n"
2702
  msgid "Please enter %d or more characters"
2703
  msgstr "Bitte %d mehr Zeichen eingeben"
2704
 
2705
+ #: includes/fields/class-acf-field-select.php:43
2706
  msgctxt "Select2 JS input_too_long_1"
2707
  msgid "Please delete 1 character"
2708
  msgstr "Bitte ein Zeichen löschen"
2709
 
2710
+ #: includes/fields/class-acf-field-select.php:44
2711
  #, php-format
2712
  msgctxt "Select2 JS input_too_long_n"
2713
  msgid "Please delete %d characters"
2714
  msgstr "Bitte %d Zeichen löschen"
2715
 
2716
+ #: includes/fields/class-acf-field-select.php:45
2717
  msgctxt "Select2 JS selection_too_long_1"
2718
  msgid "You can only select 1 item"
2719
  msgstr "Du kannst du ein Resultat wählen"
2720
 
2721
+ #: includes/fields/class-acf-field-select.php:46
2722
  #, php-format
2723
  msgctxt "Select2 JS selection_too_long_n"
2724
  msgid "You can only select %d items"
2725
  msgstr "Du kannst nur %d Resultate auswählen"
2726
 
2727
+ #: includes/fields/class-acf-field-select.php:47
2728
  msgctxt "Select2 JS load_more"
2729
  msgid "Loading more results&hellip;"
2730
  msgstr "Lade weitere Resultate&hellip;"
2731
 
2732
+ #: includes/fields/class-acf-field-select.php:48
2733
  msgctxt "Select2 JS searching"
2734
  msgid "Searching&hellip;"
2735
  msgstr "Suche&hellip;"
2736
 
2737
+ #: includes/fields/class-acf-field-select.php:49
2738
  msgctxt "Select2 JS load_fail"
2739
  msgid "Loading failed"
2740
  msgstr "Fehler beim Laden"
2741
 
2742
+ #: includes/fields/class-acf-field-select.php:255 includes/media.php:54
2743
  msgctxt "verb"
2744
  msgid "Select"
2745
  msgstr "Auswählen"
2746
 
2747
  # @ acf
2748
+ #: includes/fields/class-acf-field-select.php:406
2749
+ #: includes/fields/class-acf-field-true_false.php:144
2750
  msgid "Stylised UI"
2751
  msgstr "Modernes Auswahlfeld"
2752
 
2753
  # @ acf
2754
+ #: includes/fields/class-acf-field-select.php:416
2755
  msgid "Use AJAX to lazy load choices?"
2756
+ msgstr "AJAX zum Laden der Einträge aktivieren?"
2757
 
2758
+ #: includes/fields/class-acf-field-select.php:427
2759
  msgid "Specify the value returned"
2760
  msgstr "Rückgabewert festlegen"
2761
 
2762
+ #: includes/fields/class-acf-field-separator.php:25
2763
  msgid "Separator"
2764
+ msgstr "Trennelement"
2765
 
2766
  # @ acf
2767
+ #: includes/fields/class-acf-field-tab.php:25
2768
  msgid "Tab"
2769
  msgstr "Tab"
2770
 
2771
  # @ acf
2772
+ #: includes/fields/class-acf-field-tab.php:82
2773
  msgid ""
2774
  "The tab field will display incorrectly when added to a Table style repeater "
2775
  "field or flexible content field layout"
2778
  "oder Flexible-Inhalte-Feld im Tabellen-Layout eingebunden ist"
2779
 
2780
  # @ acf
2781
+ #: includes/fields/class-acf-field-tab.php:83
2782
  msgid ""
2783
  "Use \"Tab Fields\" to better organize your edit screen by grouping fields "
2784
  "together."
2787
  "Tabs zusammengefasst werden."
2788
 
2789
  # @ acf
2790
+ #: includes/fields/class-acf-field-tab.php:84
2791
  msgid ""
2792
  "All fields following this \"tab field\" (or until another \"tab field\" is "
2793
  "defined) will be grouped together using this field's label as the tab "
2798
  "zusammengefasst."
2799
 
2800
  # @ acf
2801
+ #: includes/fields/class-acf-field-tab.php:98
2802
  msgid "Placement"
2803
  msgstr "Platzierung Tabs"
2804
 
2805
+ #: includes/fields/class-acf-field-tab.php:110
2806
  msgid "End-point"
2807
  msgstr "Abschluss"
2808
 
2809
+ #: includes/fields/class-acf-field-tab.php:111
2810
  msgid "Use this field as an end-point and start a new group of tabs"
2811
  msgstr "Benutze das Feld als einen Abschluss und starte eine Gruppe an Tabs"
2812
 
2813
+ #: includes/fields/class-acf-field-taxonomy.php:713
2814
+ #, php-format
2815
+ msgctxt "No terms"
2816
+ msgid "No %s"
2817
+ msgstr "Keine %s"
 
 
2818
 
2819
  # @ acf
2820
+ #: includes/fields/class-acf-field-taxonomy.php:732
2821
  msgid "None"
2822
  msgstr "Nur Text"
2823
 
2824
  # @ acf
2825
+ #: includes/fields/class-acf-field-taxonomy.php:764
2826
  msgid "Select the taxonomy to be displayed"
2827
  msgstr "Wähle die Taxonomie, welche angezeigt werden soll"
2828
 
2829
  # @ acf
2830
+ #: includes/fields/class-acf-field-taxonomy.php:773
2831
  msgid "Appearance"
2832
  msgstr "Anzeige"
2833
 
2834
  # @ acf
2835
+ #: includes/fields/class-acf-field-taxonomy.php:774
2836
  msgid "Select the appearance of this field"
2837
  msgstr "Wähle das Aussehen für dieses Feld"
2838
 
2839
  # @ acf
2840
+ #: includes/fields/class-acf-field-taxonomy.php:779
2841
  msgid "Multiple Values"
2842
+ msgstr "Mehrere Werte"
2843
 
2844
  # @ acf
2845
+ #: includes/fields/class-acf-field-taxonomy.php:781
2846
  msgid "Multi Select"
2847
  msgstr "Auswahlmenü"
2848
 
2849
  # @ acf
2850
+ #: includes/fields/class-acf-field-taxonomy.php:783
2851
  msgid "Single Value"
2852
  msgstr "Einzelne Werte"
2853
 
2854
  # @ acf
2855
+ #: includes/fields/class-acf-field-taxonomy.php:784
2856
  msgid "Radio Buttons"
2857
  msgstr "Radio Button"
2858
 
2859
  # @ acf
2860
+ #: includes/fields/class-acf-field-taxonomy.php:803
2861
  msgid "Create Terms"
2862
  msgstr "Neue Einträge erlauben"
2863
 
2864
  # @ acf
2865
+ #: includes/fields/class-acf-field-taxonomy.php:804
2866
  msgid "Allow new terms to be created whilst editing"
2867
  msgstr "Erlaube das Erstellen neuer Einträge beim Editieren"
2868
 
2869
+ #: includes/fields/class-acf-field-taxonomy.php:813
2870
  msgid "Save Terms"
2871
  msgstr "Einträge speichern"
2872
 
2873
  # @ acf
2874
+ #: includes/fields/class-acf-field-taxonomy.php:814
2875
  msgid "Connect selected terms to the post"
2876
  msgstr "Speichert die ausgewählten Einträge auch im Beitrag"
2877
 
2878
+ #: includes/fields/class-acf-field-taxonomy.php:823
2879
  msgid "Load Terms"
2880
  msgstr "Einträge laden"
2881
 
2882
+ #: includes/fields/class-acf-field-taxonomy.php:824
2883
  msgid "Load value from posts terms"
2884
  msgstr "Den Wert von den Einträgen des Beitrags laden"
2885
 
2886
  # @ acf
2887
+ #: includes/fields/class-acf-field-taxonomy.php:838
2888
  msgid "Term Object"
2889
  msgstr "Begriffs-Objekt"
2890
 
2891
  # @ acf
2892
+ #: includes/fields/class-acf-field-taxonomy.php:839
2893
  msgid "Term ID"
2894
  msgstr "Begriffs-ID"
2895
 
2896
  # @ acf
2897
+ #: includes/fields/class-acf-field-taxonomy.php:898
2898
  #, php-format
2899
  msgid "User unable to add new %s"
2900
  msgstr "Der Benutzer kann keine neue %s hinzufügen"
2901
 
2902
  # @ acf
2903
+ #: includes/fields/class-acf-field-taxonomy.php:911
2904
  #, php-format
2905
  msgid "%s already exists"
2906
  msgstr "%s ist bereits vorhanden"
2907
 
2908
  # @ acf
2909
+ #: includes/fields/class-acf-field-taxonomy.php:952
2910
  #, php-format
2911
  msgid "%s added"
2912
  msgstr "%s hinzugefügt"
2913
 
2914
  # @ acf
2915
+ #: includes/fields/class-acf-field-taxonomy.php:997
2916
  msgid "Add"
2917
  msgstr "Hinzufügen"
2918
 
2919
  # @ acf
2920
+ #: includes/fields/class-acf-field-text.php:25
2921
  msgid "Text"
2922
  msgstr "Text einzeilig"
2923
 
2924
  # @ acf
2925
+ #: includes/fields/class-acf-field-text.php:155
2926
+ #: includes/fields/class-acf-field-textarea.php:120
2927
  msgid "Character Limit"
2928
  msgstr "Zeichenbegrenzung"
2929
 
2930
  # @ acf
2931
+ #: includes/fields/class-acf-field-text.php:156
2932
+ #: includes/fields/class-acf-field-textarea.php:121
2933
  msgid "Leave blank for no limit"
2934
  msgstr "Ein leeres Eingabefeld bedeutet keine Begrenzung"
2935
 
2936
  # @ acf
2937
+ #: includes/fields/class-acf-field-textarea.php:25
2938
  msgid "Text Area"
2939
  msgstr "Text mehrzeilig"
2940
 
2941
  # @ acf
2942
+ #: includes/fields/class-acf-field-textarea.php:129
2943
  msgid "Rows"
2944
  msgstr "Zeilenanzahl"
2945
 
2946
  # @ acf
2947
+ #: includes/fields/class-acf-field-textarea.php:130
2948
  msgid "Sets the textarea height"
2949
  msgstr "Definiert die Höhe des Textfelds"
2950
 
2951
+ #: includes/fields/class-acf-field-time_picker.php:25
2952
  msgid "Time Picker"
2953
  msgstr "Uhrzeit"
2954
 
2955
  # @ acf
2956
+ #: includes/fields/class-acf-field-true_false.php:25
2957
  msgid "True / False"
2958
  msgstr "Ja/Nein"
2959
 
2960
  # @ acf
2961
+ #: includes/fields/class-acf-field-true_false.php:79
2962
+ #: includes/fields/class-acf-field-true_false.php:159 includes/input.php:267
2963
+ #: pro/admin/views/html-settings-updates.php:89
2964
  msgid "Yes"
2965
  msgstr "Ja"
2966
 
2967
+ # @ acf
2968
+ #: includes/fields/class-acf-field-true_false.php:80
2969
+ #: includes/fields/class-acf-field-true_false.php:169 includes/input.php:268
2970
+ #: pro/admin/views/html-settings-updates.php:99
2971
+ msgid "No"
2972
+ msgstr "Nein"
2973
+
2974
+ #: includes/fields/class-acf-field-true_false.php:127
2975
  msgid "Displays text alongside the checkbox"
2976
  msgstr "Zeigt Text neben der Checkbox"
2977
 
2978
+ #: includes/fields/class-acf-field-true_false.php:155
2979
  msgid "On Text"
2980
  msgstr "Wenn aktiv"
2981
 
2982
+ #: includes/fields/class-acf-field-true_false.php:156
2983
  msgid "Text shown when active"
2984
  msgstr "Angezeigter Text im aktiven Zustand"
2985
 
2986
+ #: includes/fields/class-acf-field-true_false.php:165
2987
  msgid "Off Text"
2988
  msgstr "Wenn inaktiv"
2989
 
2990
+ #: includes/fields/class-acf-field-true_false.php:166
2991
  msgid "Text shown when inactive"
2992
  msgstr "Angezeigter Text im inaktiven Zustand"
2993
 
2994
  # @ acf
2995
+ #: includes/fields/class-acf-field-url.php:25
2996
  msgid "Url"
2997
  msgstr "URL"
2998
 
2999
  # @ acf
3000
+ #: includes/fields/class-acf-field-url.php:151
3001
  msgid "Value must be a valid URL"
3002
  msgstr "Bitte eine gültige URL eingeben"
3003
 
3004
  # @ acf
3005
+ #: includes/fields/class-acf-field-user.php:25 includes/locations.php:95
3006
  msgid "User"
3007
  msgstr "Benutzer"
3008
 
3009
  # @ acf
3010
+ #: includes/fields/class-acf-field-user.php:393
3011
  msgid "Filter by role"
3012
  msgstr "Filtere nach Benutzerrollen"
3013
 
3014
  # @ acf
3015
+ #: includes/fields/class-acf-field-user.php:401
3016
  msgid "All user roles"
3017
  msgstr "Alle Benutzerrollen"
3018
 
3019
  # @ acf
3020
+ #: includes/fields/class-acf-field-wysiwyg.php:25
3021
  msgid "Wysiwyg Editor"
3022
  msgstr "WYSIWYG-Editor"
3023
 
3024
  # @ acf
3025
+ #: includes/fields/class-acf-field-wysiwyg.php:359
3026
  msgid "Visual"
3027
  msgstr "Visuell"
3028
 
3029
  # @ acf
3030
+ #: includes/fields/class-acf-field-wysiwyg.php:360
3031
  msgctxt "Name for the Text editor tab (formerly HTML)"
3032
  msgid "Text"
3033
  msgstr "Text"
3034
 
3035
+ #: includes/fields/class-acf-field-wysiwyg.php:366
3036
  msgid "Click to initialize TinyMCE"
3037
  msgstr "Klicken um TinyMCE zu initialisieren"
3038
 
3039
  # @ acf
3040
+ #: includes/fields/class-acf-field-wysiwyg.php:419
3041
  msgid "Tabs"
3042
  msgstr "Tabs"
3043
 
3044
  # @ acf
3045
+ #: includes/fields/class-acf-field-wysiwyg.php:424
3046
  msgid "Visual & Text"
3047
  msgstr "Visuell & Text"
3048
 
3049
  # @ acf
3050
+ #: includes/fields/class-acf-field-wysiwyg.php:425
3051
  msgid "Visual Only"
3052
  msgstr "Nur Visuell"
3053
 
3054
  # @ acf
3055
+ #: includes/fields/class-acf-field-wysiwyg.php:426
3056
  msgid "Text Only"
3057
  msgstr "Nur Text"
3058
 
3059
  # @ acf
3060
+ #: includes/fields/class-acf-field-wysiwyg.php:433
3061
  msgid "Toolbar"
3062
  msgstr "Werkzeugleiste"
3063
 
3064
  # @ acf
3065
+ #: includes/fields/class-acf-field-wysiwyg.php:443
3066
  msgid "Show Media Upload Buttons?"
3067
  msgstr "Button zum Hochladen von Medien anzeigen?"
3068
 
3069
+ #: includes/fields/class-acf-field-wysiwyg.php:453
3070
  msgid "Delay initialization?"
3071
  msgstr "Initialisierung verzögern?"
3072
 
3073
+ #: includes/fields/class-acf-field-wysiwyg.php:454
3074
  msgid "TinyMCE will not be initalized until field is clicked"
3075
+ msgstr "TinyMCE wird nicht initialisiert bis das Feld geklickt wird"
3076
 
3077
  # @ acf
3078
  #: includes/forms/form-comment.php:166 includes/forms/form-post.php:303
3079
+ #: pro/admin/admin-options-page.php:308
3080
  msgid "Edit field group"
3081
  msgstr "Feld-Gruppen bearbeiten"
3082
 
3085
  msgstr "E-Mail bestätigen"
3086
 
3087
  # @ acf
3088
+ #: includes/forms/form-front.php:103 pro/fields/class-acf-field-gallery.php:573
3089
+ #: pro/options-page.php:81
3090
  msgid "Update"
3091
  msgstr "Aktualisieren"
3092
 
3100
  msgstr "Spam erkannt"
3101
 
3102
  # @ acf
3103
+ #: includes/input.php:259
3104
  msgid "Expand Details"
3105
  msgstr "Details einblenden"
3106
 
3107
  # @ acf
3108
+ #: includes/input.php:260
3109
  msgid "Collapse Details"
3110
  msgstr "Details ausblenden"
3111
 
3112
  # @ acf
3113
+ #: includes/input.php:261
3114
  msgid "Validation successful"
3115
  msgstr "Überprüfung erfolgreich"
3116
 
3117
  # @ acf
3118
+ #: includes/input.php:262 includes/validation.php:285
3119
  #: includes/validation.php:296
3120
  msgid "Validation failed"
3121
  msgstr "Überprüfung fehlgeschlagen"
3122
 
3123
  # @ acf
3124
+ #: includes/input.php:263
3125
  msgid "1 field requires attention"
3126
  msgstr "Für 1 Feld ist eine Aktualisierung notwendig"
3127
 
3128
  # @ acf
3129
+ #: includes/input.php:264
3130
  #, php-format
3131
  msgid "%d fields require attention"
3132
  msgstr "Für %d Felder ist eine Aktualisierung notwendig"
3133
 
3134
+ #: includes/input.php:265
3135
  msgid "Restricted"
3136
  msgstr "Eingeschränkt"
3137
 
3138
+ # @ acf
3139
+ #: includes/input.php:266
3140
+ msgid "Are you sure?"
3141
+ msgstr "Sind Sie sicher?"
3142
+
3143
+ #: includes/input.php:270
3144
  msgid "Cancel"
3145
+ msgstr "Abbrechen"
3146
 
3147
  # @ acf
3148
  #: includes/locations.php:93 includes/locations/class-acf-location-post.php:27
3164
  msgid "Attachment"
3165
  msgstr "Dateianhang"
3166
 
3167
+ #: includes/locations/class-acf-location-attachment.php:109
3168
  #, php-format
3169
  msgid "All %s formats"
3170
+ msgstr "Alle %s Formate"
3171
 
3172
  # @ acf
3173
  #: includes/locations/class-acf-location-comment.php:27
3180
  msgstr "Aktuelle Benutzer-Rolle"
3181
 
3182
  # @ acf
3183
+ #: includes/locations/class-acf-location-current-user-role.php:110
3184
  msgid "Super Admin"
3185
  msgstr "Super-Admin"
3186
 
3190
  msgstr "Aktueller Benutzer"
3191
 
3192
  # @ acf
3193
+ #: includes/locations/class-acf-location-current-user.php:97
3194
  msgid "Logged in"
3195
+ msgstr "Ist angemeldet"
3196
 
3197
  # @ acf
3198
+ #: includes/locations/class-acf-location-current-user.php:98
3199
  msgid "Viewing front end"
3200
+ msgstr "Ist im Front-End"
3201
 
3202
  # @ acf
3203
+ #: includes/locations/class-acf-location-current-user.php:99
3204
  msgid "Viewing back end"
3205
+ msgstr "Ist im Back-End"
3206
 
3207
  #: includes/locations/class-acf-location-nav-menu-item.php:27
3208
  msgid "Menu Item"
3209
+ msgstr "Menüelement"
3210
 
3211
  #: includes/locations/class-acf-location-nav-menu.php:27
3212
  msgid "Menu"
3213
+ msgstr "Menü"
3214
 
3215
  # @ acf
3216
+ #: includes/locations/class-acf-location-nav-menu.php:109
 
3217
  msgid "Menu Locations"
3218
+ msgstr "Menüpositionen"
3219
 
3220
+ #: includes/locations/class-acf-location-nav-menu.php:119
3221
  msgid "Menus"
3222
+ msgstr "Menüs"
3223
 
3224
  # @ acf
3225
  #: includes/locations/class-acf-location-page-parent.php:27
3232
  msgstr "Seiten-Template"
3233
 
3234
  # @ acf
3235
+ #: includes/locations/class-acf-location-page-template.php:98
3236
+ #: includes/locations/class-acf-location-post-template.php:151
3237
  msgid "Default Template"
3238
  msgstr "Standard-Template"
3239
 
3243
  msgstr "Seitentyp"
3244
 
3245
  # @ acf
3246
+ #: includes/locations/class-acf-location-page-type.php:145
3247
  msgid "Front Page"
3248
  msgstr "Startseite"
3249
 
3250
  # @ acf
3251
+ #: includes/locations/class-acf-location-page-type.php:146
3252
  msgid "Posts Page"
3253
  msgstr "Beitrags-Seite"
3254
 
3255
  # @ acf
3256
+ #: includes/locations/class-acf-location-page-type.php:147
3257
  msgid "Top Level Page (no parent)"
3258
  msgstr "Seite ohne übergeordnete Seiten"
3259
 
3260
  # @ acf
3261
+ #: includes/locations/class-acf-location-page-type.php:148
3262
  msgid "Parent Page (has children)"
3263
  msgstr "Übergeordnete Seite (mit Unterseiten)"
3264
 
3265
  # @ acf
3266
+ #: includes/locations/class-acf-location-page-type.php:149
3267
  msgid "Child Page (has parent)"
3268
  msgstr "Unterseite (mit übergeordneter Seite)"
3269
 
3288
  msgstr "Beitrags-Taxonomie"
3289
 
3290
  # @ acf
3291
+ #: includes/locations/class-acf-location-post-template.php:27
 
3292
  msgid "Post Template"
3293
+ msgstr "Beitrags-Vorlage"
3294
 
3295
  # @ acf
3296
  #: includes/locations/class-acf-location-taxonomy.php:27
3303
  msgstr "Benutzer-Formular"
3304
 
3305
  # @ acf
3306
+ #: includes/locations/class-acf-location-user-form.php:88
3307
  msgid "Add / Edit"
3308
  msgstr "Hinzufügen / Bearbeiten"
3309
 
3310
  # @ acf
3311
+ #: includes/locations/class-acf-location-user-form.php:89
3312
  msgid "Register"
3313
  msgstr "Registrieren"
3314
 
3345
  msgstr "Advanced Custom Fields PRO"
3346
 
3347
  # @ acf
3348
+ #: pro/admin/admin-options-page.php:200
3349
  msgid "Publish"
3350
  msgstr "Veröffentlichen"
3351
 
3352
  # @ acf
3353
+ #: pro/admin/admin-options-page.php:206
3354
  #, php-format
3355
  msgid ""
3356
  "No Custom Field Groups found for this options page. <a href=\"%s\">Create a "
3363
  #: pro/admin/admin-settings-updates.php:78
3364
  msgid "<b>Error</b>. Could not connect to update server"
3365
  msgstr ""
3366
+ "<b>Fehler</b>. Verbindung zum Update-Server konnte nicht hergestellt werden"
3367
 
3368
  # @ acf
3369
  #: pro/admin/admin-settings-updates.php:162
3370
+ #: pro/admin/views/html-settings-updates.php:13
3371
  msgid "Updates"
3372
  msgstr "Aktualisierungen"
3373
 
3374
  # @ acf
3375
+ #: pro/admin/views/html-settings-updates.php:7
3376
  msgid "Deactivate License"
3377
  msgstr "Lizenz deaktivieren"
3378
 
3379
  # @ acf
3380
+ #: pro/admin/views/html-settings-updates.php:7
3381
  msgid "Activate License"
3382
  msgstr "Lizenz aktivieren"
3383
 
3384
+ #: pro/admin/views/html-settings-updates.php:17
3385
  msgid "License Information"
3386
  msgstr "Lizenzinformationen"
3387
 
3388
+ #: pro/admin/views/html-settings-updates.php:20
3389
  #, php-format
3390
  msgid ""
3391
  "To unlock updates, please enter your license key below. If you don't have a "
3397
  "target=\"_blank\">Details & Preise</a>."
3398
 
3399
  # @ acf
3400
+ #: pro/admin/views/html-settings-updates.php:29
3401
  msgid "License Key"
3402
  msgstr "Lizenzschlüssel"
3403
 
3404
  # @ acf
3405
+ #: pro/admin/views/html-settings-updates.php:61
3406
  msgid "Update Information"
3407
  msgstr "Aktualisierungsinformationen"
3408
 
3409
  # @ acf
3410
+ #: pro/admin/views/html-settings-updates.php:68
3411
  msgid "Current Version"
3412
  msgstr "Installierte Version"
3413
 
3414
  # @ acf
3415
+ #: pro/admin/views/html-settings-updates.php:76
3416
  msgid "Latest Version"
3417
  msgstr "Aktuellste Version"
3418
 
3419
  # @ acf
3420
+ #: pro/admin/views/html-settings-updates.php:84
3421
  msgid "Update Available"
3422
  msgstr "Aktualisierung verfügbar"
3423
 
3424
  # @ acf
3425
+ #: pro/admin/views/html-settings-updates.php:92
3426
  msgid "Update Plugin"
3427
  msgstr "Plugin aktualisieren"
3428
 
3429
  # @ acf
3430
+ #: pro/admin/views/html-settings-updates.php:94
3431
  msgid "Please enter your license key above to unlock updates"
3432
  msgstr ""
3433
  "Bitte gib oben Deinen Lizenzschlüssel ein um die Update-Fähigkeit "
3434
  "freizuschalten"
3435
 
3436
  # @ acf
3437
+ #: pro/admin/views/html-settings-updates.php:100
3438
  msgid "Check Again"
3439
  msgstr "Erneut suchen"
3440
 
3441
  # @ acf
3442
+ #: pro/admin/views/html-settings-updates.php:117
3443
  msgid "Upgrade Notice"
3444
  msgstr "Aktualisierungs-Hinweis"
3445
 
3446
+ #: pro/fields/class-acf-field-clone.php:25
3447
  msgctxt "noun"
3448
  msgid "Clone"
3449
  msgstr "Klonen"
3450
 
3451
+ #: pro/fields/class-acf-field-clone.php:808
3452
  msgid "Select one or more fields you wish to clone"
3453
  msgstr "Wähle eines oder mehrere Felder aus, das/die du klonen willst"
3454
 
3455
  # @ acf
3456
+ #: pro/fields/class-acf-field-clone.php:825
3457
  msgid "Display"
3458
  msgstr "Anzeige"
3459
 
3460
+ #: pro/fields/class-acf-field-clone.php:826
3461
  msgid "Specify the style used to render the clone field"
3462
  msgstr "Gib an, wie die geklonten Felder ausgegeben werden sollen"
3463
 
3464
+ #: pro/fields/class-acf-field-clone.php:831
3465
  msgid "Group (displays selected fields in a group within this field)"
3466
  msgstr ""
3467
  "Gruppe (zeigt die ausgewählten Felder in einer Gruppe innerhalb dieses Felds "
3468
  "an)"
3469
 
3470
+ #: pro/fields/class-acf-field-clone.php:832
3471
  msgid "Seamless (replaces this field with selected fields)"
3472
  msgstr "Nahtlos (ersetzt dieses Feld mit den ausgewählten Feldern)"
3473
 
3474
+ #: pro/fields/class-acf-field-clone.php:853
3475
  #, php-format
3476
  msgid "Labels will be displayed as %s"
3477
  msgstr "Bezeichnungen werden angezeigt als %s"
3478
 
3479
+ #: pro/fields/class-acf-field-clone.php:856
3480
  msgid "Prefix Field Labels"
3481
  msgstr "Präfix für Feld Bezeichnungen"
3482
 
3483
+ #: pro/fields/class-acf-field-clone.php:867
3484
  #, php-format
3485
  msgid "Values will be saved as %s"
3486
  msgstr "Werte werden gespeichert als %s"
3487
 
3488
+ #: pro/fields/class-acf-field-clone.php:870
3489
  msgid "Prefix Field Names"
3490
  msgstr "Präfix für Feld Namen"
3491
 
3492
+ #: pro/fields/class-acf-field-clone.php:988
3493
  msgid "Unknown field"
3494
  msgstr "Unbekanntes Feld"
3495
 
3496
+ #: pro/fields/class-acf-field-clone.php:1027
3497
  msgid "Unknown field group"
3498
  msgstr "Unbekannte Feld-Gruppe"
3499
 
3500
+ #: pro/fields/class-acf-field-clone.php:1031
3501
  #, php-format
3502
  msgid "All fields from %s field group"
3503
  msgstr "Alle Felder der %s Feld-Gruppe"
3504
 
3505
  # @ acf
3506
+ #: pro/fields/class-acf-field-flexible-content.php:31
3507
+ #: pro/fields/class-acf-field-repeater.php:174
3508
+ #: pro/fields/class-acf-field-repeater.php:470
3509
  msgid "Add Row"
3510
  msgstr "Eintrag hinzufügen"
3511
 
3512
  # @ acf
3513
+ #: pro/fields/class-acf-field-flexible-content.php:34
3514
  msgid "layout"
3515
  msgstr "Eintrag"
3516
 
3517
  # @ acf
3518
+ #: pro/fields/class-acf-field-flexible-content.php:35
3519
  msgid "layouts"
3520
  msgstr "Einträge"
3521
 
3522
  # @ acf
3523
+ #: pro/fields/class-acf-field-flexible-content.php:36
3524
  msgid "remove {layout}?"
3525
  msgstr "{layout} löschen?"
3526
 
3527
  # @ acf
3528
+ #: pro/fields/class-acf-field-flexible-content.php:37
3529
  msgid "This field requires at least {min} {identifier}"
3530
  msgstr "Dieses Feld erfordert mindestens {min} {identifier}"
3531
 
3532
  # @ acf
3533
+ #: pro/fields/class-acf-field-flexible-content.php:38
3534
  msgid "This field has a limit of {max} {identifier}"
3535
  msgstr "Diesem Feld dürfen maximal {max} {identifier} hinzugefügt werden."
3536
 
3537
  # @ acf
3538
+ #: pro/fields/class-acf-field-flexible-content.php:39
3539
  msgid "This field requires at least {min} {label} {identifier}"
3540
  msgstr "Dieses Feld erfordert mindestens {min} {label} {identifier}"
3541
 
3542
  # @ acf
3543
+ #: pro/fields/class-acf-field-flexible-content.php:40
3544
  msgid "Maximum {label} limit reached ({max} {identifier})"
3545
  msgstr "Maximale {label}-Anzahl erreicht ({max} {identifier})"
3546
 
3547
  # @ acf
3548
+ #: pro/fields/class-acf-field-flexible-content.php:41
3549
  msgid "{available} {label} {identifier} available (max {max})"
3550
  msgstr "{available} {label} {identifier} möglich (max {max})"
3551
 
3552
  # @ acf
3553
+ #: pro/fields/class-acf-field-flexible-content.php:42
3554
  msgid "{required} {label} {identifier} required (min {min})"
3555
  msgstr "{required} {label} {identifier} erforderlich (min {min})"
3556
 
3557
  # @ acf
3558
+ #: pro/fields/class-acf-field-flexible-content.php:43
3559
  msgid "Flexible Content requires at least 1 layout"
3560
  msgstr "Flexibler Inhalt benötigt mindestens ein Layout"
3561
 
3562
  # @ acf
3563
+ #: pro/fields/class-acf-field-flexible-content.php:273
3564
  #, php-format
3565
  msgid "Click the \"%s\" button below to start creating your layout"
3566
  msgstr "Klicke \"%s\" zum Erstellen des Layouts"
3567
 
3568
  # @ acf
3569
+ #: pro/fields/class-acf-field-flexible-content.php:406
3570
  msgid "Add layout"
3571
  msgstr "Layout hinzufügen"
3572
 
3573
  # @ acf
3574
+ #: pro/fields/class-acf-field-flexible-content.php:407
3575
  msgid "Remove layout"
3576
  msgstr "Layout entfernen"
3577
 
3578
+ #: pro/fields/class-acf-field-flexible-content.php:408
3579
+ #: pro/fields/class-acf-field-repeater.php:298
3580
  msgid "Click to toggle"
3581
  msgstr "Zum Auswählen anklicken"
3582
 
3583
  # @ acf
3584
+ #: pro/fields/class-acf-field-flexible-content.php:554
3585
  msgid "Reorder Layout"
3586
  msgstr "Layout sortieren"
3587
 
3588
  # @ acf
3589
+ #: pro/fields/class-acf-field-flexible-content.php:554
3590
  msgid "Reorder"
3591
  msgstr "Sortieren"
3592
 
3593
  # @ acf
3594
+ #: pro/fields/class-acf-field-flexible-content.php:555
3595
  msgid "Delete Layout"
3596
  msgstr "Layout löschen"
3597
 
3598
  # @ acf
3599
+ #: pro/fields/class-acf-field-flexible-content.php:556
3600
  msgid "Duplicate Layout"
3601
  msgstr "Layout duplizieren"
3602
 
3603
  # @ acf
3604
+ #: pro/fields/class-acf-field-flexible-content.php:557
3605
  msgid "Add New Layout"
3606
  msgstr "Neues Layout hinzufügen"
3607
 
3608
  # @ acf
3609
+ #: pro/fields/class-acf-field-flexible-content.php:628
3610
  msgid "Min"
3611
  msgstr "Min"
3612
 
3613
  # @ acf
3614
+ #: pro/fields/class-acf-field-flexible-content.php:641
3615
  msgid "Max"
3616
  msgstr "Max"
3617
 
3618
  # @ acf
3619
+ #: pro/fields/class-acf-field-flexible-content.php:668
3620
+ #: pro/fields/class-acf-field-repeater.php:466
3621
  msgid "Button Label"
3622
  msgstr "Button-Beschriftung"
3623
 
3624
  # @ acf
3625
+ #: pro/fields/class-acf-field-flexible-content.php:677
3626
  msgid "Minimum Layouts"
3627
  msgstr "Minimum Layouts"
3628
 
3629
  # @ acf
3630
+ #: pro/fields/class-acf-field-flexible-content.php:686
3631
  msgid "Maximum Layouts"
3632
  msgstr "Maximum Layouts"
3633
 
3634
  # @ acf
3635
+ #: pro/fields/class-acf-field-gallery.php:41
3636
  msgid "Add Image to Gallery"
3637
  msgstr "Bild zur Galerie hinzufügen"
3638
 
3639
  # @ acf
3640
+ #: pro/fields/class-acf-field-gallery.php:45
3641
  msgid "Maximum selection reached"
3642
  msgstr "Maximale Auswahl erreicht"
3643
 
3644
  # @ acf
3645
+ #: pro/fields/class-acf-field-gallery.php:321
3646
  msgid "Length"
3647
  msgstr "Länge"
3648
 
3649
+ #: pro/fields/class-acf-field-gallery.php:364
3650
  msgid "Caption"
3651
  msgstr "Beschriftung"
3652
 
3653
+ #: pro/fields/class-acf-field-gallery.php:373
3654
  msgid "Alt Text"
3655
  msgstr "Alt Text"
3656
 
3657
  # @ acf
3658
+ #: pro/fields/class-acf-field-gallery.php:544
3659
  msgid "Add to gallery"
3660
  msgstr "Zur Galerie hinzufügen"
3661
 
3662
  # @ acf
3663
+ #: pro/fields/class-acf-field-gallery.php:548
3664
  msgid "Bulk actions"
3665
  msgstr "Massenverarbeitung"
3666
 
3667
  # @ acf
3668
+ #: pro/fields/class-acf-field-gallery.php:549
3669
  msgid "Sort by date uploaded"
3670
  msgstr "Sortiere nach Upload-Datum"
3671
 
3672
  # @ acf
3673
+ #: pro/fields/class-acf-field-gallery.php:550
3674
  msgid "Sort by date modified"
3675
  msgstr "Sortiere nach Änderungs-Datum"
3676
 
3677
  # @ acf
3678
+ #: pro/fields/class-acf-field-gallery.php:551
3679
  msgid "Sort by title"
3680
  msgstr "Sortiere nach Titel"
3681
 
3682
  # @ acf
3683
+ #: pro/fields/class-acf-field-gallery.php:552
3684
  msgid "Reverse current order"
3685
  msgstr "Aktuelle Sortierung umkehren"
3686
 
3687
  # @ acf
3688
+ #: pro/fields/class-acf-field-gallery.php:570
3689
  msgid "Close"
3690
  msgstr "Schliessen"
3691
 
3692
  # @ acf
3693
+ #: pro/fields/class-acf-field-gallery.php:624
3694
  msgid "Minimum Selection"
3695
  msgstr "Minimale Auswahl"
3696
 
3697
  # @ acf
3698
+ #: pro/fields/class-acf-field-gallery.php:633
3699
  msgid "Maximum Selection"
3700
  msgstr "Maximale Auswahl"
3701
 
3702
+ #: pro/fields/class-acf-field-gallery.php:642
3703
  msgid "Insert"
3704
  msgstr "Einfügen"
3705
 
3706
+ #: pro/fields/class-acf-field-gallery.php:643
3707
  msgid "Specify where new attachments are added"
3708
  msgstr "Gib an, wo neue Anhänge eingefügt werden sollen"
3709
 
3710
+ #: pro/fields/class-acf-field-gallery.php:647
3711
  msgid "Append to the end"
3712
  msgstr "Am Schluss anhängen"
3713
 
3714
+ #: pro/fields/class-acf-field-gallery.php:648
3715
  msgid "Prepend to the beginning"
3716
  msgstr "Vor Beginn einfügen"
3717
 
3718
  # @ acf
3719
+ #: pro/fields/class-acf-field-repeater.php:36
3720
  msgid "Minimum rows reached ({min} rows)"
3721
  msgstr "Minimum der Einträge mit ({min} Reihen) erreicht"
3722
 
3723
  # @ acf
3724
+ #: pro/fields/class-acf-field-repeater.php:37
3725
  msgid "Maximum rows reached ({max} rows)"
3726
  msgstr "Maximum der Einträge mit ({max} Reihen) erreicht"
3727
 
3728
  # @ acf
3729
+ #: pro/fields/class-acf-field-repeater.php:343
3730
  msgid "Add row"
3731
  msgstr "Eintrag hinzufügen"
3732
 
3733
  # @ acf
3734
+ #: pro/fields/class-acf-field-repeater.php:344
3735
  msgid "Remove row"
3736
  msgstr "Eintrag löschen"
3737
 
3738
+ #: pro/fields/class-acf-field-repeater.php:419
3739
  msgid "Collapsed"
3740
  msgstr "Zugeklappt"
3741
 
3742
+ #: pro/fields/class-acf-field-repeater.php:420
3743
  msgid "Select a sub field to show when row is collapsed"
3744
  msgstr ""
3745
  "Wähle welches der Wiederholungsfelder im zugeklappten Zustand angezeigt "
3746
+ "werden soll"
3747
 
3748
  # @ acf
3749
+ #: pro/fields/class-acf-field-repeater.php:430
3750
  msgid "Minimum Rows"
3751
  msgstr "Minimum der Einträge"
3752
 
3753
  # @ acf
3754
+ #: pro/fields/class-acf-field-repeater.php:440
3755
  msgid "Maximum Rows"
3756
  msgstr "Maximum der Einträge"
3757
 
3758
  # @ acf
3759
+ #: pro/locations/class-acf-location-options-page.php:79
3760
  msgid "No options pages exist"
3761
  msgstr "Keine Options-Seiten vorhanden"
3762
 
lang/acf-de_DE.mo CHANGED
Binary file
lang/acf-de_DE.po CHANGED
@@ -3,15 +3,15 @@ msgstr ""
3
  "Project-Id-Version: Advanced Custom Fields Pro v5.6.2\n"
4
  "Report-Msgid-Bugs-To: http://support.advancedcustomfields.com\n"
5
  "POT-Creation-Date: 2017-09-17 14:05+0200\n"
6
- "PO-Revision-Date: 2017-09-19 13:13+0200\n"
7
- "Last-Translator: Ralf Koller <r.koller@gmail.com>\n"
8
  "Language-Team: Ralf Koller <r.koller@gmail.com>\n"
9
  "Language: de_DE\n"
10
  "MIME-Version: 1.0\n"
11
  "Content-Type: text/plain; charset=UTF-8\n"
12
  "Content-Transfer-Encoding: 8bit\n"
13
  "Plural-Forms: nplurals=2; plural=(n != 1);\n"
14
- "X-Generator: Poedit 2.0.3\n"
15
  "X-Poedit-SourceCharset: UTF-8\n"
16
  "X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;"
17
  "esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;"
@@ -2326,7 +2326,7 @@ msgstr "Breite"
2326
  # @ acf
2327
  #: includes/fields/class-acf-field-link.php:25
2328
  msgid "Link"
2329
- msgstr "Seiten-Link"
2330
 
2331
  # @ acf
2332
  #: includes/fields/class-acf-field-link.php:133
@@ -3072,8 +3072,8 @@ msgid "Validate Email"
3072
  msgstr "E-Mail bestätigen"
3073
 
3074
  # @ acf
3075
- #: includes/forms/form-front.php:103 pro/fields/class-acf-field-gallery.php:573
3076
- #: pro/options-page.php:81
3077
  msgid "Update"
3078
  msgstr "Aktualisieren"
3079
 
3
  "Project-Id-Version: Advanced Custom Fields Pro v5.6.2\n"
4
  "Report-Msgid-Bugs-To: http://support.advancedcustomfields.com\n"
5
  "POT-Creation-Date: 2017-09-17 14:05+0200\n"
6
+ "PO-Revision-Date: 2017-11-22 15:40+1000\n"
7
+ "Last-Translator: Elliot Condon <e@elliotcondon.com>\n"
8
  "Language-Team: Ralf Koller <r.koller@gmail.com>\n"
9
  "Language: de_DE\n"
10
  "MIME-Version: 1.0\n"
11
  "Content-Type: text/plain; charset=UTF-8\n"
12
  "Content-Transfer-Encoding: 8bit\n"
13
  "Plural-Forms: nplurals=2; plural=(n != 1);\n"
14
+ "X-Generator: Poedit 1.8.1\n"
15
  "X-Poedit-SourceCharset: UTF-8\n"
16
  "X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;"
17
  "esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;"
2326
  # @ acf
2327
  #: includes/fields/class-acf-field-link.php:25
2328
  msgid "Link"
2329
+ msgstr "Bearbeitbarer Seiten-Link"
2330
 
2331
  # @ acf
2332
  #: includes/fields/class-acf-field-link.php:133
3072
  msgstr "E-Mail bestätigen"
3073
 
3074
  # @ acf
3075
+ #: includes/forms/form-front.php:103
3076
+ #: pro/fields/class-acf-field-gallery.php:573 pro/options-page.php:81
3077
  msgid "Update"
3078
  msgstr "Aktualisieren"
3079
 
lang/acf-de_DE_formal.mo CHANGED
Binary file
lang/acf-de_DE_formal.po CHANGED
@@ -3,7 +3,7 @@ msgstr ""
3
  "Project-Id-Version: Advanced Custom Fields Pro v5.6.2 Formal\n"
4
  "Report-Msgid-Bugs-To: http://support.advancedcustomfields.com\n"
5
  "POT-Creation-Date: 2017-09-17 14:06+0200\n"
6
- "PO-Revision-Date: 2017-10-24 11:48+1000\n"
7
  "Last-Translator: Elliot Condon <e@elliotcondon.com>\n"
8
  "Language-Team: Ralf Koller <r.koller@gmail.com>\n"
9
  "Language: de_DE\n"
@@ -2311,7 +2311,7 @@ msgstr "Breite"
2311
  # @ acf
2312
  #: includes/fields/class-acf-field-link.php:25
2313
  msgid "Link"
2314
- msgstr "Seiten-Link"
2315
 
2316
  # @ acf
2317
  #: includes/fields/class-acf-field-link.php:133
3
  "Project-Id-Version: Advanced Custom Fields Pro v5.6.2 Formal\n"
4
  "Report-Msgid-Bugs-To: http://support.advancedcustomfields.com\n"
5
  "POT-Creation-Date: 2017-09-17 14:06+0200\n"
6
+ "PO-Revision-Date: 2017-11-22 15:41+1000\n"
7
  "Last-Translator: Elliot Condon <e@elliotcondon.com>\n"
8
  "Language-Team: Ralf Koller <r.koller@gmail.com>\n"
9
  "Language: de_DE\n"
2311
  # @ acf
2312
  #: includes/fields/class-acf-field-link.php:25
2313
  msgid "Link"
2314
+ msgstr "Bearbeitbarer Seiten-Link"
2315
 
2316
  # @ acf
2317
  #: includes/fields/class-acf-field-link.php:133
lang/acf-fa_IR.mo CHANGED
Binary file
lang/acf-fa_IR.po CHANGED
@@ -2,8 +2,8 @@ msgid ""
2
  msgstr ""
3
  "Project-Id-Version: Advanced Custom Fields Pro v5.2.9\n"
4
  "Report-Msgid-Bugs-To: http://support.advancedcustomfields.com\n"
5
- "POT-Creation-Date: 2016-08-06 19:58+0430\n"
6
- "PO-Revision-Date: 2017-07-18 21:53+0430\n"
7
  "Last-Translator: Elliot Condon <e@elliotcondon.com>\n"
8
  "Language-Team: Kamel Kimiaei Fard <Kamel.Kimiaei.Fard@gmail.com>\n"
9
  "Language: fa\n"
@@ -11,2720 +11,3197 @@ msgstr ""
11
  "Content-Type: text/plain; charset=UTF-8\n"
12
  "Content-Transfer-Encoding: 8bit\n"
13
  "Plural-Forms: nplurals=1; plural=0;\n"
14
- "X-Generator: Poedit 2.0.1\n"
15
  "X-Poedit-SourceCharset: UTF-8\n"
16
- "X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;esc_attr_e;esc_attr_x:1,2c;"
17
- "esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;_nx_noop:3c,1,2;__ngettext_noop:1,2\n"
 
18
  "X-Poedit-Basepath: ..\n"
19
  "X-Poedit-WPHeader: acf.php\n"
20
  "X-Textdomain-Support: yes\n"
21
  "X-Poedit-SearchPath-0: .\n"
22
  "X-Poedit-SearchPathExcluded-0: *.js\n"
23
 
24
- #: acf.php:60
25
  msgid "Advanced Custom Fields"
26
  msgstr "زمینه‌های دلخواه پیشرفته"
27
 
28
- #: acf.php:271 admin/admin.php:61
29
  msgid "Field Groups"
30
  msgstr "گروه‌های زمینه"
31
 
32
- #: acf.php:272
33
  msgid "Field Group"
34
  msgstr "گروه زمینه"
35
 
36
- #: acf.php:273 acf.php:305 admin/admin.php:62 pro/fields/flexible-content.php:500
 
37
  msgid "Add New"
38
  msgstr "افزودن"
39
 
40
- #: acf.php:274
41
  msgid "Add New Field Group"
42
  msgstr "افزودن گروه زمینه جدید"
43
 
44
- #: acf.php:275
45
  msgid "Edit Field Group"
46
  msgstr "ویرایش گروه زمینه"
47
 
48
- #: acf.php:276
49
  msgid "New Field Group"
50
  msgstr "گروه زمینه جدید"
51
 
52
- #: acf.php:277
53
  msgid "View Field Group"
54
  msgstr "مشاهده گروه زمینه"
55
 
56
- #: acf.php:278
57
  msgid "Search Field Groups"
58
  msgstr "جستجوی گروه های زمینه"
59
 
60
- #: acf.php:279
61
  msgid "No Field Groups found"
62
  msgstr "گروه زمینه ای یافت نشد"
63
 
64
- #: acf.php:280
65
  msgid "No Field Groups found in Trash"
66
  msgstr "گروه زمینه ای در زباله دان یافت نشد"
67
 
68
- #: acf.php:303 admin/field-group.php:182 admin/field-group.php:280 admin/field-groups.php:528
69
- #: pro/fields/clone.php:679
 
 
70
  msgid "Fields"
71
  msgstr "زمینه ها"
72
 
73
- #: acf.php:304
74
  msgid "Field"
75
  msgstr "زمینه"
76
 
77
- #: acf.php:306
78
  msgid "Add New Field"
79
  msgstr "زمینه جدید"
80
 
81
- #: acf.php:307
82
  msgid "Edit Field"
83
  msgstr "ویرایش زمینه"
84
 
85
- #: acf.php:308 admin/views/field-group-fields.php:54 admin/views/settings-info.php:111
 
86
  msgid "New Field"
87
  msgstr "زمینه جدید"
88
 
89
- #: acf.php:309
90
  msgid "View Field"
91
  msgstr "نمایش زمینه"
92
 
93
- #: acf.php:310
94
  msgid "Search Fields"
95
  msgstr "جستجوی گروه های زمینه"
96
 
97
- #: acf.php:311
98
  msgid "No Fields found"
99
  msgstr "گروه زمینه ای یافت نشد"
100
 
101
- #: acf.php:312
102
  msgid "No Fields found in Trash"
103
  msgstr "گروه زمینه ای در زباله دان یافت نشد"
104
 
105
- #: acf.php:351 admin/field-group.php:395 admin/field-groups.php:585 admin/views/field-group-options.php:13
106
- msgid "Disabled"
 
107
  msgstr "غیرفعال"
108
 
109
- #: acf.php:356
110
  #, php-format
111
- msgid "Disabled <span class=\"count\">(%s)</span>"
112
- msgid_plural "Disabled <span class=\"count\">(%s)</span>"
113
- msgstr[0] "غیرفعال <span class=\"تعداد\">(%s)</span>"
114
 
115
- #: admin/admin.php:57 admin/views/field-group-options.php:115
116
- msgid "Custom Fields"
117
- msgstr "زمینه های دلخواه"
118
-
119
- #: admin/field-group.php:68 admin/field-group.php:69 admin/field-group.php:71
120
  msgid "Field group updated."
121
  msgstr "گروه زمینه بروز شد"
122
 
123
- #: admin/field-group.php:70
124
  msgid "Field group deleted."
125
  msgstr "گروه زمینه بروز حذف شد"
126
 
127
- #: admin/field-group.php:73
128
  msgid "Field group published."
129
  msgstr "گروه زمینه انتشار یافت."
130
 
131
- #: admin/field-group.php:74
132
  msgid "Field group saved."
133
  msgstr "گروه زمینه ذخیره شد."
134
 
135
- #: admin/field-group.php:75
136
  msgid "Field group submitted."
137
  msgstr "گروه زمینه ارسال شد."
138
 
139
- #: admin/field-group.php:76
140
  msgid "Field group scheduled for."
141
  msgstr "گروه زمینه برنامه ریزی انتشار پیدا کرده برای"
142
 
143
- #: admin/field-group.php:77
144
  msgid "Field group draft updated."
145
  msgstr "پیش نویش گروه زمینه بروز شد."
146
 
147
- #: admin/field-group.php:183
148
  msgid "Location"
149
  msgstr "مکان"
150
 
151
- #: admin/field-group.php:184
 
152
  msgid "Settings"
153
  msgstr "تنظیمات"
154
 
155
- #: admin/field-group.php:274
156
  msgid "Move to trash. Are you sure?"
157
  msgstr "انتقال به زباله دان، آیا شما مطمئنید؟"
158
 
159
- #: admin/field-group.php:275
160
  msgid "checked"
161
  msgstr "انتخاب شده"
162
 
163
- #: admin/field-group.php:276
164
  msgid "No toggle fields available"
165
  msgstr "هیچ زمینه شرط پذیری موجود نیست"
166
 
167
- #: admin/field-group.php:277
168
  msgid "Field group title is required"
169
  msgstr "عنوان گروه زمینه ضروری است"
170
 
171
- #: admin/field-group.php:278 api/api-field-group.php:651
 
172
  msgid "copy"
173
  msgstr "کپی"
174
 
175
- #: admin/field-group.php:279 admin/views/field-group-field-conditional-logic.php:62
176
- #: admin/views/field-group-field-conditional-logic.php:162 admin/views/field-group-locations.php:59
177
- #: admin/views/field-group-locations.php:135 api/api-helpers.php:3952
 
 
 
178
  msgid "or"
179
  msgstr "یا"
180
 
181
- #: admin/field-group.php:281
182
  msgid "Parent fields"
183
  msgstr "زمینه های مادر"
184
 
185
- #: admin/field-group.php:282
186
  msgid "Sibling fields"
187
  msgstr "زمینه های هدف"
188
 
189
- #: admin/field-group.php:283
190
  msgid "Move Custom Field"
191
  msgstr "جابجایی زمینه دلخواه"
192
 
193
- #: admin/field-group.php:284
194
  msgid "This field cannot be moved until its changes have been saved"
195
  msgstr "این زمینه قبل از اینکه ذخیره شود نمی تواند جابجا شود"
196
 
197
- #: admin/field-group.php:285
198
  msgid "Null"
199
  msgstr "خالی (null)"
200
 
201
- #: admin/field-group.php:286 core/input.php:257
202
  msgid "The changes you made will be lost if you navigate away from this page"
203
  msgstr "اگر از صفحه جاری خارج شوید ، تغییرات شما ذخیره نخواهند شد"
204
 
205
- #: admin/field-group.php:287
206
  msgid "The string \"field_\" may not be used at the start of a field name"
207
  msgstr "کلمه متنی \"field_\" نباید در ابتدای نام فیلد استفاده شود."
208
 
209
- #: admin/field-group.php:365
210
  msgid "Field Keys"
211
  msgstr "کایدهای زمینه"
212
 
213
- #: admin/field-group.php:395 admin/views/field-group-options.php:12
 
214
  msgid "Active"
215
  msgstr "فعال"
216
 
217
- #: admin/field-group.php:842
218
- msgid "Front Page"
219
- msgstr "برگه نخست"
220
-
221
- #: admin/field-group.php:843
222
- msgid "Posts Page"
223
- msgstr "برگه ی نوشته ها"
224
-
225
- #: admin/field-group.php:844
226
- msgid "Top Level Page (no parent)"
227
- msgstr "بالاترین سطح برگه(بدون والد)"
228
-
229
- #: admin/field-group.php:845
230
- msgid "Parent Page (has children)"
231
- msgstr "برگه مادر (دارای زیر مجموعه)"
232
-
233
- #: admin/field-group.php:846
234
- msgid "Child Page (has parent)"
235
- msgstr "برگه زیر مجموعه (دارای مادر)"
236
-
237
- #: admin/field-group.php:862
238
- msgid "Default Template"
239
- msgstr "پوسته پیش فرض"
240
-
241
- #: admin/field-group.php:885
242
- msgid "Logged in"
243
- msgstr "وارده شده"
244
-
245
- #: admin/field-group.php:886
246
- msgid "Viewing front end"
247
- msgstr "درحال نمایش سمت کاربر"
248
-
249
- #: admin/field-group.php:887
250
- msgid "Viewing back end"
251
- msgstr "درحال نمایش سمت مدیریت"
252
-
253
- #: admin/field-group.php:906
254
- msgid "Super Admin"
255
- msgstr "مدیرکل"
256
-
257
- #: admin/field-group.php:917 admin/field-group.php:925 admin/field-group.php:939 admin/field-group.php:946
258
- #: admin/field-group.php:963 admin/field-group.php:980 fields/file.php:241 fields/image.php:237
259
- #: pro/fields/gallery.php:676
260
- msgid "All"
261
- msgstr "همه"
262
-
263
- #: admin/field-group.php:926
264
- msgid "Add / Edit"
265
- msgstr "اضافه کردن/ویرایش"
266
-
267
- #: admin/field-group.php:927
268
- msgid "Register"
269
- msgstr "ثبت نام"
270
-
271
- #: admin/field-group.php:1167
272
  msgid "Move Complete."
273
  msgstr "انتقال کامل شد."
274
 
275
- #: admin/field-group.php:1168
276
  #, php-format
277
  msgid "The %s field can now be found in the %s field group"
278
  msgstr "زمینه %s اکنون در گروه زمینه %s قرار گرفته است"
279
 
280
- #: admin/field-group.php:1170
281
  msgid "Close Window"
282
  msgstr "بستن زمینه"
283
 
284
- #: admin/field-group.php:1205
285
  msgid "Please select the destination for this field"
286
  msgstr "مقصد انتقال این زمینه را مشخص کنید"
287
 
288
- #: admin/field-group.php:1212
289
  msgid "Move Field"
290
  msgstr "جابجایی زمینه"
291
 
292
- #: admin/field-groups.php:74
293
  #, php-format
294
  msgid "Active <span class=\"count\">(%s)</span>"
295
  msgid_plural "Active <span class=\"count\">(%s)</span>"
296
  msgstr[0] "فعال <span class=\"تعداد\">(%s)</span>"
297
 
298
- #: admin/field-groups.php:142
299
  #, php-format
300
  msgid "Field group duplicated. %s"
301
  msgstr "گروه زمینه تکثیر شد. %s"
302
 
303
- #: admin/field-groups.php:146
304
  #, php-format
305
  msgid "%s field group duplicated."
306
  msgid_plural "%s field groups duplicated."
307
  msgstr[0] "%s گروه زمینه تکثیر شد"
308
 
309
- #: admin/field-groups.php:228
310
  #, php-format
311
  msgid "Field group synchronised. %s"
312
  msgstr "گروه زمینه هماهنگ شد. %s"
313
 
314
- #: admin/field-groups.php:232
315
  #, php-format
316
  msgid "%s field group synchronised."
317
  msgid_plural "%s field groups synchronised."
318
  msgstr[0] "گروه زمینه %s هماهنگ شده است"
319
 
320
- #: admin/field-groups.php:412 admin/field-groups.php:575
 
321
  msgid "Sync available"
322
  msgstr "هماهنگ سازی موجود است"
323
 
324
- #: admin/field-groups.php:525 api/api-template.php:1077 api/api-template.php:1290
325
- #: pro/fields/gallery.php:370
326
  msgid "Title"
327
  msgstr "عنوان"
328
 
329
- #: admin/field-groups.php:526 admin/views/field-group-options.php:93 admin/views/update-network.php:25
330
- #: admin/views/update-network.php:33 pro/fields/gallery.php:397
 
 
 
331
  msgid "Description"
332
  msgstr "توضیحات"
333
 
334
- #: admin/field-groups.php:527 admin/views/field-group-options.php:5
335
  msgid "Status"
336
  msgstr "وضعیت"
337
 
338
- #: admin/field-groups.php:623 admin/settings-info.php:76 pro/admin/views/settings-updates.php:111
 
 
 
 
 
 
 
339
  msgid "Changelog"
340
  msgstr "تغییرات"
341
 
342
- #: admin/field-groups.php:624
343
  #, php-format
344
  msgid "See what's new in <a href=\"%s\">version %s</a>."
345
  msgstr "مشاهده موارد جدید <a href=\"%s\">نسخه %s</a>."
346
 
347
- #: admin/field-groups.php:626
348
  msgid "Resources"
349
  msgstr "منابع"
350
 
351
- #: admin/field-groups.php:628
352
- msgid "Getting Started"
353
- msgstr "راهنمای شروع"
354
-
355
- #: admin/field-groups.php:629 pro/admin/settings-updates.php:57 pro/admin/views/settings-updates.php:17
356
- msgid "Updates"
357
- msgstr "بروزرسانی ها"
358
-
359
- #: admin/field-groups.php:630
360
- msgid "Field Types"
361
- msgstr "انواع زمینه"
362
-
363
- #: admin/field-groups.php:631
364
- msgid "Functions"
365
- msgstr "توابع"
366
 
367
- #: admin/field-groups.php:632
368
- msgid "Actions"
369
- msgstr "اکشن ها (مربوط به کدنویسی)"
370
 
371
- #: admin/field-groups.php:633 fields/relationship.php:737
372
- msgid "Filters"
373
- msgstr "فیلترها"
374
-
375
- #: admin/field-groups.php:634
376
- msgid "'How to' guides"
377
- msgstr "راهنماهای کوتاه"
378
-
379
- #: admin/field-groups.php:635
380
- msgid "Tutorials"
381
- msgstr "آموزش ها"
382
 
383
- #: admin/field-groups.php:636
384
- msgid "FAQ"
385
- msgstr "پرسش و پاسخ"
386
 
387
- #: admin/field-groups.php:641
388
- msgid "Created by"
389
- msgstr "برنامه نویسی شده توسط"
 
390
 
391
- #: admin/field-groups.php:684
392
  msgid "Duplicate this item"
393
  msgstr "تکثیر این زمینه"
394
 
395
- #: admin/field-groups.php:684 admin/field-groups.php:700 admin/views/field-group-field.php:59
396
- #: pro/fields/flexible-content.php:499
 
 
397
  msgid "Duplicate"
398
  msgstr "تکثیر"
399
 
400
- #: admin/field-groups.php:751
 
 
 
 
 
 
401
  #, php-format
402
  msgid "Select %s"
403
  msgstr "انتخاب %s"
404
 
405
- #: admin/field-groups.php:759
406
  msgid "Synchronise field group"
407
  msgstr "هماهنگ سازی گروه زمینه"
408
 
409
- #: admin/field-groups.php:759 admin/field-groups.php:776
 
410
  msgid "Sync"
411
  msgstr "هماهنگ"
412
 
413
- #: admin/settings-addons.php:51 admin/views/settings-addons.php:9
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
414
  msgid "Add-ons"
415
  msgstr "افزودنی ها"
416
 
417
- #: admin/settings-addons.php:87
418
  msgid "<b>Error</b>. Could not load add-ons list"
419
  msgstr "<b>خطا</b>. لیست افزونه ها قابل خواندن نیست"
420
 
421
- #: admin/settings-info.php:50
422
  msgid "Info"
423
  msgstr "اطلاعات"
424
 
425
- #: admin/settings-info.php:75
426
  msgid "What's New"
427
  msgstr "چه چیز جدید است"
428
 
429
- #: admin/settings-tools.php:50 admin/views/settings-tools-export.php:23 admin/views/settings-tools.php:31
430
- msgid "Tools"
431
- msgstr "ابزارها"
432
 
433
- #: admin/settings-tools.php:147 admin/settings-tools.php:380
 
 
 
 
 
 
 
434
  msgid "No field groups selected"
435
  msgstr "گروه زمینه ای انتخاب نشده است"
436
 
437
- #: admin/settings-tools.php:184 fields/file.php:175
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
438
  msgid "No file selected"
439
  msgstr "هیچ پرونده ای انتخاب نشده"
440
 
441
- #: admin/settings-tools.php:197
442
  msgid "Error uploading file. Please try again"
443
  msgstr "خطا در آپلود فایل. لطفا مجدد بررسی کنید"
444
 
445
- #: admin/settings-tools.php:206
446
  msgid "Incorrect file type"
447
  msgstr "نوع فایل صحیح نیست"
448
 
449
- #: admin/settings-tools.php:223
450
  msgid "Import file empty"
451
  msgstr "فایل وارد شده خالی است"
452
 
453
- #: admin/settings-tools.php:331
454
  #, php-format
455
  msgid "Imported 1 field group"
456
  msgid_plural "Imported %s field groups"
457
  msgstr[0] "تعداد %s گروه زمینه وارد شد"
458
 
459
- #: admin/update-network.php:96 admin/update.php:104 admin/update.php:155
460
- msgid "Upgrade Database"
461
- msgstr "به‌روزرسانی پایگاه داده"
462
-
463
- #: admin/update-network.php:148
464
- msgid "Review sites & upgrade"
465
- msgstr "بازبینی و به‌روزرسانی سایت‌ها"
466
-
467
- #: admin/update.php:220
468
- msgid "Error validating request"
469
- msgstr "خطا در اعتبار سنجی درخواست"
470
-
471
- #: admin/update.php:243 admin/views/update.php:110
472
- msgid "No updates available."
473
- msgstr "به‌روزرسانی موجود نیست."
474
-
475
- #: admin/update.php:260
476
- msgid "Error loading update"
477
- msgstr "خطا در به روز رسانی"
478
-
479
- #: admin/views/field-group-field-conditional-logic.php:29
480
  msgid "Conditional Logic"
481
  msgstr "منطق شرطی"
482
 
483
- #: admin/views/field-group-field-conditional-logic.php:40 admin/views/field-group-field.php:141
484
- #: fields/checkbox.php:244 fields/message.php:144 fields/page_link.php:533 fields/page_link.php:547
485
- #: fields/page_link.php:561 fields/post_object.php:432 fields/post_object.php:446 fields/radio.php:255
486
- #: fields/select.php:469 fields/select.php:483 fields/select.php:497 fields/select.php:511
487
- #: fields/tab.php:130 fields/taxonomy.php:785 fields/taxonomy.php:799 fields/taxonomy.php:813
488
- #: fields/taxonomy.php:827 fields/user.php:399 fields/user.php:413 fields/wysiwyg.php:418
489
- #: pro/admin/views/settings-updates.php:93 pro/fields/clone.php:733 pro/fields/clone.php:751
490
- msgid "Yes"
491
- msgstr "بله"
492
-
493
- #: admin/views/field-group-field-conditional-logic.php:41 admin/views/field-group-field.php:142
494
- #: fields/checkbox.php:245 fields/message.php:145 fields/page_link.php:534 fields/page_link.php:548
495
- #: fields/page_link.php:562 fields/post_object.php:433 fields/post_object.php:447 fields/radio.php:256
496
- #: fields/select.php:470 fields/select.php:484 fields/select.php:498 fields/select.php:512
497
- #: fields/tab.php:131 fields/taxonomy.php:700 fields/taxonomy.php:786 fields/taxonomy.php:800
498
- #: fields/taxonomy.php:814 fields/taxonomy.php:828 fields/user.php:400 fields/user.php:414
499
- #: fields/wysiwyg.php:419 pro/admin/views/settings-updates.php:103 pro/fields/clone.php:734
500
- #: pro/fields/clone.php:752
501
- msgid "No"
502
- msgstr "خیر"
503
-
504
- #: admin/views/field-group-field-conditional-logic.php:62
505
  msgid "Show this field if"
506
  msgstr "نمایش این گروه زمینه اگر"
507
 
508
- #: admin/views/field-group-field-conditional-logic.php:111 admin/views/field-group-locations.php:34
 
509
  msgid "is equal to"
510
  msgstr "برابر شود با"
511
 
512
- #: admin/views/field-group-field-conditional-logic.php:112 admin/views/field-group-locations.php:35
 
513
  msgid "is not equal to"
514
  msgstr "برابر نشود با"
515
 
516
- #: admin/views/field-group-field-conditional-logic.php:149 admin/views/field-group-locations.php:122
 
517
  msgid "and"
518
  msgstr "و"
519
 
520
- #: admin/views/field-group-field-conditional-logic.php:164 admin/views/field-group-locations.php:137
 
521
  msgid "Add rule group"
522
  msgstr "افزودن گروه قانون"
523
 
524
- #: admin/views/field-group-field.php:50 pro/fields/flexible-content.php:346 pro/fields/repeater.php:302
 
 
525
  msgid "Drag to reorder"
526
  msgstr "گرفتن و کشیدن برای مرتب سازی"
527
 
528
- #: admin/views/field-group-field.php:55 admin/views/field-group-field.php:58
 
529
  msgid "Edit field"
530
  msgstr "ویرایش زمینه"
531
 
532
- #: admin/views/field-group-field.php:58 fields/image.php:142 pro/fields/gallery.php:357
 
 
 
 
533
  msgid "Edit"
534
  msgstr "ویرایش"
535
 
536
- #: admin/views/field-group-field.php:59
537
  msgid "Duplicate field"
538
  msgstr "تکثیر زمینه"
539
 
540
- #: admin/views/field-group-field.php:60
541
  msgid "Move field to another group"
542
  msgstr "انتقال زمینه ها به گروه دیگر"
543
 
544
- #: admin/views/field-group-field.php:60
545
  msgid "Move"
546
  msgstr "انتقال"
547
 
548
- #: admin/views/field-group-field.php:61
549
  msgid "Delete field"
550
  msgstr "حذف زمینه"
551
 
552
- #: admin/views/field-group-field.php:61 pro/fields/flexible-content.php:498
 
553
  msgid "Delete"
554
  msgstr "حذف"
555
 
556
- #: admin/views/field-group-field.php:69 fields/oembed.php:225 fields/taxonomy.php:901
557
- msgid "Error"
558
- msgstr "خطا"
559
-
560
- #: fields/oembed.php:220 fields/taxonomy.php:900
561
- msgid "Error."
562
- msgstr "خطا."
563
-
564
- #: admin/views/field-group-field.php:69
565
- msgid "Field type does not exist"
566
- msgstr "نوع زمینه وجود ندارد"
567
-
568
- #: admin/views/field-group-field.php:82
569
  msgid "Field Label"
570
  msgstr "برچسب زمینه"
571
 
572
- #: admin/views/field-group-field.php:83
573
  msgid "This is the name which will appear on the EDIT page"
574
  msgstr "این نامی است که در صفحه \"ویرایش\" نمایش داده خواهد شد."
575
 
576
- #: admin/views/field-group-field.php:95
577
  msgid "Field Name"
578
  msgstr "نام زمینه"
579
 
580
- #: admin/views/field-group-field.php:96
581
  msgid "Single word, no spaces. Underscores and dashes allowed"
582
  msgstr "تک کلمه، بدون فاصله. خط زیرین و خط تیره ها مجازاند"
583
 
584
- #: admin/views/field-group-field.php:108
585
  msgid "Field Type"
586
  msgstr "نوع زمینه"
587
 
588
- #: admin/views/field-group-field.php:122 fields/tab.php:103
589
  msgid "Instructions"
590
  msgstr "دستورالعمل ها"
591
 
592
- #: admin/views/field-group-field.php:123
593
  msgid "Instructions for authors. Shown when submitting data"
594
  msgstr "دستورالعمل هایی برای نویسندگان. هنگام ارسال داده ها نمایش داده می شوند"
595
 
596
- #: admin/views/field-group-field.php:134
597
  msgid "Required?"
598
  msgstr "لازم است؟"
599
 
600
- #: admin/views/field-group-field.php:163
601
  msgid "Wrapper Attributes"
602
  msgstr "مشخصات پوشش فیلد"
603
 
604
- #: admin/views/field-group-field.php:169
605
  msgid "width"
606
  msgstr "عرض"
607
 
608
- #: admin/views/field-group-field.php:183
609
  msgid "class"
610
  msgstr "کلاس"
611
 
612
- #: admin/views/field-group-field.php:196
613
  msgid "id"
614
  msgstr "شناسه"
615
 
616
- #: admin/views/field-group-field.php:208
617
  msgid "Close Field"
618
  msgstr "بستن زمینه"
619
 
620
- #: admin/views/field-group-fields.php:17
621
  msgid "Order"
622
  msgstr "شماره ترتیب"
623
 
624
- #: admin/views/field-group-fields.php:18 fields/checkbox.php:259 fields/radio.php:314
625
- #: fields/select.php:527 pro/fields/flexible-content.php:525
 
 
 
 
626
  msgid "Label"
627
  msgstr "برچسب زمینه"
628
 
629
- #: admin/views/field-group-fields.php:19 fields/taxonomy.php:967 pro/fields/flexible-content.php:538
 
 
630
  msgid "Name"
631
  msgstr "نام"
632
 
633
- #: admin/views/field-group-fields.php:20
 
 
 
 
634
  msgid "Type"
635
  msgstr "نوع زمینه"
636
 
637
- #: admin/views/field-group-fields.php:38
638
- msgid "No fields. Click the <strong>+ Add Field</strong> button to create your first field."
 
 
639
  msgstr ""
640
- "هیچ زمینه ای وجود ندارد. روی دکمه<strong>+ افزودن زمینه</strong> کلیک کنید تا اولین زمینه خود را بسازید."
 
641
 
642
- #: admin/views/field-group-fields.php:44
643
  msgid "+ Add Field"
644
  msgstr "+ افزودن زمینه"
645
 
646
- #: admin/views/field-group-locations.php:5 admin/views/field-group-locations.php:11
647
- msgid "Post"
648
- msgstr "نوشته"
649
-
650
- #: admin/views/field-group-locations.php:6 fields/relationship.php:743
651
- msgid "Post Type"
652
- msgstr "نوع نوشته"
653
-
654
- #: admin/views/field-group-locations.php:7
655
- msgid "Post Status"
656
- msgstr "وضعیت نوشته"
657
-
658
- #: admin/views/field-group-locations.php:8
659
- msgid "Post Format"
660
- msgstr "فرمت نوشته"
661
-
662
- #: admin/views/field-group-locations.php:9
663
- msgid "Post Category"
664
- msgstr "دسته بندی نوشته"
665
-
666
- #: admin/views/field-group-locations.php:10
667
- msgid "Post Taxonomy"
668
- msgstr "طبقه بندی نوشته"
669
-
670
- #: admin/views/field-group-locations.php:13 admin/views/field-group-locations.php:17
671
- msgid "Page"
672
- msgstr "برگه"
673
-
674
- #: admin/views/field-group-locations.php:14
675
- msgid "Page Template"
676
- msgstr "قالب برگه"
677
-
678
- #: admin/views/field-group-locations.php:15
679
- msgid "Page Type"
680
- msgstr "نوع برگه"
681
-
682
- #: admin/views/field-group-locations.php:16
683
- msgid "Page Parent"
684
- msgstr "برگه مادر"
685
-
686
- #: admin/views/field-group-locations.php:19 fields/user.php:36
687
- msgid "User"
688
- msgstr "کاربر"
689
-
690
- #: admin/views/field-group-locations.php:20
691
- msgid "Current User"
692
- msgstr "کاربر فعلی"
693
-
694
- #: admin/views/field-group-locations.php:21
695
- msgid "Current User Role"
696
- msgstr "نقش کاربرفعلی"
697
-
698
- #: admin/views/field-group-locations.php:22
699
- msgid "User Form"
700
- msgstr "فرم کاربر"
701
-
702
- #: admin/views/field-group-locations.php:23
703
- msgid "User Role"
704
- msgstr "نقش کاربر"
705
-
706
- #: admin/views/field-group-locations.php:25 pro/admin/options-page.php:49
707
- msgid "Forms"
708
- msgstr "فرم ها"
709
-
710
- #: admin/views/field-group-locations.php:26
711
- msgid "Attachment"
712
- msgstr "پیوست"
713
-
714
- #: admin/views/field-group-locations.php:27
715
- msgid "Taxonomy Term"
716
- msgstr "آیتم طبقه بندی"
717
-
718
- #: admin/views/field-group-locations.php:28
719
- msgid "Comment"
720
- msgstr "دیدگاه"
721
-
722
- #: admin/views/field-group-locations.php:29
723
- msgid "Widget"
724
- msgstr "ابزارک"
725
-
726
- #: admin/views/field-group-locations.php:41
727
  msgid "Rules"
728
  msgstr "قوانین"
729
 
730
- #: admin/views/field-group-locations.php:42
731
- msgid "Create a set of rules to determine which edit screens will use these advanced custom fields"
 
 
732
  msgstr ""
733
- "مجموعه ای از قوانین را بسازید تا مشخص کنید در کدام صفحه ویرایش ، این زمینه های دلخواه سفارشی نمایش داده "
734
- "شوند."
735
 
736
- #: admin/views/field-group-locations.php:59
737
- msgid "Show this field group if"
738
- msgstr "نمایش این گروه زمینه اگر"
739
-
740
- #: admin/views/field-group-options.php:20
741
  msgid "Style"
742
  msgstr "شیوه نمایش"
743
 
744
- #: admin/views/field-group-options.php:27
745
  msgid "Standard (WP metabox)"
746
  msgstr "استاندارد (دارای متاباکس)"
747
 
748
- #: admin/views/field-group-options.php:28
749
  msgid "Seamless (no metabox)"
750
  msgstr "بدون متاباکس"
751
 
752
- #: admin/views/field-group-options.php:35
753
  msgid "Position"
754
  msgstr "موقعیت"
755
 
756
- #: admin/views/field-group-options.php:42
757
  msgid "High (after title)"
758
  msgstr "بالا (بعد از عنوان)"
759
 
760
- #: admin/views/field-group-options.php:43
761
  msgid "Normal (after content)"
762
  msgstr "معمولی (بعد از ادیتور متن)"
763
 
764
- #: admin/views/field-group-options.php:44
765
  msgid "Side"
766
  msgstr "کنار"
767
 
768
- #: admin/views/field-group-options.php:52
769
  msgid "Label placement"
770
  msgstr "مکان برچسب"
771
 
772
- #: admin/views/field-group-options.php:59 fields/tab.php:117
 
773
  msgid "Top aligned"
774
  msgstr "سمت بالا"
775
 
776
- #: admin/views/field-group-options.php:60 fields/tab.php:118
 
777
  msgid "Left Aligned"
778
  msgstr "سمت چپ"
779
 
780
- #: admin/views/field-group-options.php:67
781
  msgid "Instruction placement"
782
  msgstr "مکان دستورالعمل ها"
783
 
784
- #: admin/views/field-group-options.php:74
785
  msgid "Below labels"
786
  msgstr "زیر برچسب ها"
787
 
788
- #: admin/views/field-group-options.php:75
789
  msgid "Below fields"
790
  msgstr "زیر زمینه ها"
791
 
792
- #: admin/views/field-group-options.php:82
793
  msgid "Order No."
794
  msgstr "شماره ترتیب"
795
 
796
- #: admin/views/field-group-options.php:83
797
  msgid "Field groups with a lower order will appear first"
798
  msgstr "گروه ها با شماره ترتیب کمتر اول دیده می شوند"
799
 
800
- #: admin/views/field-group-options.php:94
801
  msgid "Shown in field group list"
802
  msgstr "نمایش لیست گروه زمینه"
803
 
804
- #: admin/views/field-group-options.php:104
805
  msgid "Hide on screen"
806
  msgstr "مخفی کردن در صفحه"
807
 
808
- #: admin/views/field-group-options.php:105
809
  msgid "<b>Select</b> items to <b>hide</b> them from the edit screen."
810
  msgstr "<b>انتخاب</b> آیتم ها برای <b>پنهان کردن</b> آن ها از صفحه ویرایش."
811
 
812
- #: admin/views/field-group-options.php:105
813
  msgid ""
814
- "If multiple field groups appear on an edit screen, the first field group's options will be used (the "
815
- "one with the lowest order number)"
816
  msgstr ""
817
- "اگر چندین گروه زمینه در یک صفحه ویرایش نمایش داده شود،اولین تنظیمات گروه زمینه استفاده خواهد شد. (یکی "
818
- "با کمترین شماره)"
819
 
820
- #: admin/views/field-group-options.php:112
821
  msgid "Permalink"
822
  msgstr "پیوند یکتا"
823
 
824
- #: admin/views/field-group-options.php:113
825
  msgid "Content Editor"
826
  msgstr "ویرایش گر محتوا(ادیتور اصلی)"
827
 
828
- #: admin/views/field-group-options.php:114
829
  msgid "Excerpt"
830
  msgstr "چکیده"
831
 
832
- #: admin/views/field-group-options.php:116
833
  msgid "Discussion"
834
  msgstr "گفتگو"
835
 
836
- #: admin/views/field-group-options.php:117
837
  msgid "Comments"
838
  msgstr "دیدگاه ها"
839
 
840
- #: admin/views/field-group-options.php:118
841
  msgid "Revisions"
842
  msgstr "بازنگری ها"
843
 
844
- #: admin/views/field-group-options.php:119
845
  msgid "Slug"
846
  msgstr "نامک"
847
 
848
- #: admin/views/field-group-options.php:120
849
  msgid "Author"
850
  msgstr "نویسنده"
851
 
852
- #: admin/views/field-group-options.php:121
853
  msgid "Format"
854
  msgstr "فرمت"
855
 
856
- #: admin/views/field-group-options.php:122
857
  msgid "Page Attributes"
858
  msgstr "صفات برگه"
859
 
860
- #: admin/views/field-group-options.php:123 fields/relationship.php:756
 
861
  msgid "Featured Image"
862
  msgstr "تصویر شاخص"
863
 
864
- #: admin/views/field-group-options.php:124
865
  msgid "Categories"
866
  msgstr "دسته ها"
867
 
868
- #: admin/views/field-group-options.php:125
869
  msgid "Tags"
870
  msgstr "برچسب ها"
871
 
872
- #: admin/views/field-group-options.php:126
873
  msgid "Send Trackbacks"
874
  msgstr "ارسال بازتاب ها"
875
 
876
- #: admin/views/settings-addons.php:23
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
877
  msgid "Download & Install"
878
  msgstr "دانلود و نصب"
879
 
880
- #: admin/views/settings-addons.php:42
881
  msgid "Installed"
882
  msgstr "نصب شده"
883
 
884
- #: admin/views/settings-info.php:9
885
  msgid "Welcome to Advanced Custom Fields"
886
  msgstr "به افزونه زمینه های دلخواه پیشرفته خوش آمدید!"
887
 
888
- #: admin/views/settings-info.php:10
889
  #, php-format
890
- msgid "Thank you for updating! ACF %s is bigger and better than ever before. We hope you like it."
 
 
891
  msgstr ""
892
- "از اینکه به روزرسانی کردید متشکریم! افزونه زمینه دلخواه پیشرفته %s بزرگتر و بهتر از قبل شده است. "
893
- "امیدواریم لذت ببرید."
894
 
895
- #: admin/views/settings-info.php:23
896
  msgid "A smoother custom field experience"
897
  msgstr "احساس بهتر در استفاده از زمینه دلخواه"
898
 
899
- #: admin/views/settings-info.php:28
900
  msgid "Improved Usability"
901
  msgstr "کاربری بهینه شده"
902
 
903
- #: admin/views/settings-info.php:29
904
  msgid ""
905
- "Including the popular Select2 library has improved both usability and speed across a number of field "
906
- "types including post object, page link, taxonomy and select."
 
907
  msgstr ""
908
- "استفاده از کتابخانه محبوب Select2 باعث سرعت در عملکرد و کاربری بهتر در انواع زمینه هاشامل آبجکت نوشته، "
909
- "پیوند(لینک) صفحه ، طبقه بندی و زمینه های انتخاب(Select) شده است"
 
910
 
911
- #: admin/views/settings-info.php:33
912
  msgid "Improved Design"
913
  msgstr "طراحی بهینه شده"
914
 
915
- #: admin/views/settings-info.php:34
916
  msgid ""
917
- "Many fields have undergone a visual refresh to make ACF look better than ever! Noticeable changes are "
918
- "seen on the gallery, relationship and oEmbed (new) fields!"
 
919
  msgstr ""
920
- "بسیاری از زمینه ها از نظر ظاهری باز طراحی شدند تا این افزونه از قبل بهتر شده باشد. تغییرات چشم گیر در "
921
- "گالری و ارتباط و زمینه جدید به نام oEmbed صورت گرفته است."
 
922
 
923
- #: admin/views/settings-info.php:38
924
  msgid "Improved Data"
925
  msgstr "داده ها بهینه شده اند"
926
 
927
- #: admin/views/settings-info.php:39
928
  msgid ""
929
- "Redesigning the data architecture has allowed sub fields to live independently from their parents. This "
930
- "allows you to drag and drop fields in and out of parent fields!"
 
931
  msgstr ""
932
- "بازطراحی معماری داده ها این اجازه را به زمینه های زیرمجموعه داده است که بدون زمینه های والد باقی "
933
- "بمانند. این به شما کمک می کند که زمینه ها را از یک فیلد اصلی خارج یا به آن وارد نمایید !"
 
934
 
935
- #: admin/views/settings-info.php:45
936
  msgid "Goodbye Add-ons. Hello PRO"
937
  msgstr "خداحافظ افزودنی ها و سلام به نسخه حرفه ای"
938
 
939
- #: admin/views/settings-info.php:50
940
  msgid "Introducing ACF PRO"
941
  msgstr "معرفی نسخه حرفه ای"
942
 
943
- #: admin/views/settings-info.php:51
944
- msgid "We're changing the way premium functionality is delivered in an exciting way!"
945
- msgstr "ما در حال تغییر راه عملکردهای پولی افزونه به شیوه ای هیجان انگیز هستیم!"
 
 
946
 
947
- #: admin/views/settings-info.php:52
948
  #, php-format
949
  msgid ""
950
- "All 4 premium add-ons have been combined into a new <a href=\"%s\">Pro version of ACF</a>. With both "
951
- "personal and developer licenses available, premium functionality is more affordable and accessible than "
952
- "ever before!"
953
  msgstr ""
954
- "هر چهار افزدونی پولی یکی شده و تحت عنوان <a href=\"%s\">نسخه حرفه ای (Pro) </a> از افزونه زمینه های "
955
- "دلخواه معرفی شده اند. دو نسخه شخصی و توسعه دهنده موجود است که در هر دو این امکانات بهتر و دسترس تر از "
956
- "قبل موجود است!"
957
 
958
- #: admin/views/settings-info.php:56
959
  msgid "Powerful Features"
960
  msgstr "امکانات قدرتمند"
961
 
962
- #: admin/views/settings-info.php:57
963
  msgid ""
964
- "ACF PRO contains powerful features such as repeatable data, flexible content layouts, a beautiful "
965
- "gallery field and the ability to create extra admin options pages!"
 
966
  msgstr ""
967
- "نسخه حرفه دارای امکانات قدرتمندی نظیر داده های تکرارپذیر، محتوای منعطف، یک زمینه گالری زیبا و امکان "
968
- "ساخت صفحات تنظیمات می باشد !"
969
 
970
- #: admin/views/settings-info.php:58
971
  #, php-format
972
  msgid "Read more about <a href=\"%s\">ACF PRO features</a>."
973
  msgstr "اطلاعات بیشتر در <a href=\"%s\">امکانات نسخه حرفه ای</a>."
974
 
975
- #: admin/views/settings-info.php:62
976
  msgid "Easy Upgrading"
977
  msgstr "به روزرسانی آسان"
978
 
979
- #: admin/views/settings-info.php:63
980
  #, php-format
981
  msgid ""
982
- "To help make upgrading easy, <a href=\"%s\">login to your store account</a> and claim a free copy of "
983
- "ACF PRO!"
984
  msgstr ""
985
- "برای به روزرسانی ساده <a href=\"%s\"> به بخش کاربری خود در فروشگاه وارد شوید </a> و یک نسخه از ویرایش "
986
- "حرفه ای را دانلود کنید!"
987
 
988
- #: admin/views/settings-info.php:64
989
  #, php-format
990
  msgid ""
991
- "We also wrote an <a href=\"%s\">upgrade guide</a> to answer any questions, but if you do have one, "
992
- "please contact our support team via the <a href=\"%s\">help desk</a>"
 
993
  msgstr ""
994
- "همچنین یک <a href=\"%s\"> راهنمای به روزرسانی</a> برای پاسخ به سوالات نوشته ایم ولی اگر هنوز سوالی "
995
- "دارید از <a href=\"%s\">تیم پشتیبانی</a> بپرسید "
996
 
997
- #: admin/views/settings-info.php:72
998
  msgid "Under the Hood"
999
  msgstr "در پشت قضیه"
1000
 
1001
- #: admin/views/settings-info.php:77
1002
  msgid "Smarter field settings"
1003
  msgstr "تنظیمات زمینه ها هوشمندتر شدند"
1004
 
1005
- #: admin/views/settings-info.php:78
1006
  msgid "ACF now saves its field settings as individual post objects"
1007
- msgstr "افزونه اکنون تنظیمات زمینه ها را به عنوان آبجکت ها مختلف نوشته ذخیره می کند"
 
1008
 
1009
- #: admin/views/settings-info.php:82
1010
  msgid "More AJAX"
1011
  msgstr "ایجکس بیشتر"
1012
 
1013
- #: admin/views/settings-info.php:83
1014
  msgid "More fields use AJAX powered search to speed up page loading"
1015
  msgstr "زمینه های بیشتری از جستجوهای ایجکس برای کاهش بار صفحه استفاده می کنند"
1016
 
1017
- #: admin/views/settings-info.php:87
1018
  msgid "Local JSON"
1019
  msgstr "JSON های لوکال"
1020
 
1021
- #: admin/views/settings-info.php:88
1022
  msgid "New auto export to JSON feature improves speed"
1023
  msgstr "امکان جدید خرجی خودکار JSON سرعت را بهبود بخشیده است"
1024
 
1025
- #: admin/views/settings-info.php:94
1026
  msgid "Better version control"
1027
  msgstr "کنترل نسخه بهتر"
1028
 
1029
- #: admin/views/settings-info.php:95
1030
- msgid "New auto export to JSON feature allows field settings to be version controlled"
 
 
1031
  msgstr "اکنون با خروجی جدید JSON امکان کنترل نسخه بهتر را فراهم کردیم"
1032
 
1033
- #: admin/views/settings-info.php:99
1034
  msgid "Swapped XML for JSON"
1035
  msgstr "جابجایی XML با JSON"
1036
 
1037
- #: admin/views/settings-info.php:100
1038
  msgid "Import / Export now uses JSON in favour of XML"
1039
  msgstr "اکنون خروجی و ورودی از JSON استفاده می کند"
1040
 
1041
- #: admin/views/settings-info.php:104
1042
  msgid "New Forms"
1043
  msgstr "فرم های جدید"
1044
 
1045
- #: admin/views/settings-info.php:105
1046
  msgid "Fields can now be mapped to comments, widgets and all user forms!"
1047
- msgstr "گزینه ها اکنون می توانند به نظرات، ابزارک ها و حتی فرم های مربوط به کاربران متصل شوند !"
 
 
1048
 
1049
- #: admin/views/settings-info.php:112
1050
  msgid "A new field for embedding content has been added"
1051
  msgstr "زمینه جدیدی برای جانمایی محتوا اضافه شده است"
1052
 
1053
- #: admin/views/settings-info.php:116
1054
  msgid "New Gallery"
1055
  msgstr "گالری جدید"
1056
 
1057
- #: admin/views/settings-info.php:117
1058
  msgid "The gallery field has undergone a much needed facelift"
1059
  msgstr "گالری دارای بهینه سازی هایی برای ارائه امکانات جدید شده است"
1060
 
1061
- #: admin/views/settings-info.php:121
1062
  msgid "New Settings"
1063
  msgstr "تنظیمات جدید"
1064
 
1065
- #: admin/views/settings-info.php:122
1066
- msgid "Field group settings have been added for label placement and instruction placement"
 
 
1067
  msgstr "تنظیماتی به گروه زمینه برای مکان برچسب ها و توضیحات اضافه شده است"
1068
 
1069
- #: admin/views/settings-info.php:128
1070
  msgid "Better Front End Forms"
1071
  msgstr "فرم های سمت کاربر بهتر شده اند"
1072
 
1073
- #: admin/views/settings-info.php:129
1074
  msgid "acf_form() can now create a new post on submission"
1075
  msgstr "تابع acf_form می تواند در زمان ارسال نوشته تولید کند !"
1076
 
1077
- #: admin/views/settings-info.php:133
1078
  msgid "Better Validation"
1079
  msgstr "خطایابی بهتر"
1080
 
1081
- #: admin/views/settings-info.php:134
1082
  msgid "Form validation is now done via PHP + AJAX in favour of only JS"
1083
- msgstr "خطایابی فرم (validation) اکنون از طریق PHP + AJAX به جای JS انجام می شود"
 
1084
 
1085
- #: admin/views/settings-info.php:138
1086
  msgid "Relationship Field"
1087
  msgstr "زمینه ارتباط"
1088
 
1089
- #: admin/views/settings-info.php:139
1090
- msgid "New Relationship field setting for 'Filters' (Search, Post Type, Taxonomy)"
 
1091
  msgstr "تنظیمات جدید برای زمینه ارتباط و فیلتر کردن اضافه شده است"
1092
 
1093
- #: admin/views/settings-info.php:145
1094
  msgid "Moving Fields"
1095
  msgstr "جابجایی زمینه ها"
1096
 
1097
- #: admin/views/settings-info.php:146
1098
- msgid "New field group functionality allows you to move a field between groups & parents"
1099
- msgstr "عملکرد جدید گروه زمینه ها به شما امکان جابجایی زمینه ها بین گروه ها و بین گروه های والد را می دهد"
 
 
 
 
1100
 
1101
- #: admin/views/settings-info.php:150 fields/page_link.php:36
 
1102
  msgid "Page Link"
1103
  msgstr "پیوند (لینک) برگه/نوشته"
1104
 
1105
- #: admin/views/settings-info.php:151
1106
  msgid "New archives group in page_link field selection"
1107
  msgstr "گروه بندی بایگانی جدید در انتخاب زمینه پیوند صفحه"
1108
 
1109
- #: admin/views/settings-info.php:155
1110
  msgid "Better Options Pages"
1111
  msgstr "صفحه تنظیمات بهتر"
1112
 
1113
- #: admin/views/settings-info.php:156
1114
- msgid "New functions for options page allow creation of both parent and child menu pages"
1115
- msgstr "تنظیمات جدید برای صفحه تنظیمات اجازه ساخت هر دو صفحه منوی والد و زیرمجموعه را می دهد"
1116
-
1117
- #: admin/views/settings-info.php:165
1118
- #, php-format
1119
- msgid "We think you'll love the changes in %s."
1120
- msgstr "فکر می کنیم شما تغییرات در %s را دوست خواهید داشت"
1121
-
1122
- #: admin/views/settings-tools-export.php:27
1123
- msgid "Export Field Groups to PHP"
1124
- msgstr "برون بری گروه های زمینه به PHP"
1125
-
1126
- #: admin/views/settings-tools-export.php:31
1127
- msgid ""
1128
- "The following code can be used to register a local version of the selected field group(s). A local "
1129
- "field group can provide many benefits such as faster load times, version control & dynamic fields/"
1130
- "settings. Simply copy and paste the following code to your theme's functions.php file or include it "
1131
- "within an external file."
1132
- msgstr ""
1133
- "این کد می تواند برای ثبت یک نسخه محلی (لوکال)از گروه زمینه های انتخاب شده استفاده شود. یک نسخه محلی "
1134
- "فواید زیادی دارد، مثلا سرعت لود بالاتر، کنترل نسخه و پویاسازی زمینه ها و تنظیماتشان. به راحتی می توانید "
1135
- "کد زیر را در فایل function.php خود کپی کنید و یا از یک فایل دیگر انرا فراخوانی نمایید."
1136
-
1137
- #: admin/views/settings-tools.php:5
1138
- msgid "Select Field Groups"
1139
- msgstr "انتخاب گروه های زمینه"
1140
-
1141
- #: admin/views/settings-tools.php:35
1142
- msgid "Export Field Groups"
1143
- msgstr "برون بری گروه های زمینه"
1144
-
1145
- #: admin/views/settings-tools.php:38
1146
  msgid ""
1147
- "Select the field groups you would like to export and then select your export method. Use the download "
1148
- "button to export to a .json file which you can then import to another ACF installation. Use the "
1149
- "generate button to export to PHP code which you can place in your theme."
1150
  msgstr ""
1151
- "گروه زمینه هایی که مایل به تهیه خروجی آنها هستید را انتخاب کنید و در ادامه روش خروجی را نیز مشخص کنید. "
1152
- "از دکمه دانلود برای خروجی فایل .json برای وارد کردن در یک سایت دیگر که این افزونه نصب شده است استفاده "
1153
- "کنید. از دکمه تولید می توانید برای ساخت کد PHP برای قراردادن در قالب خود استفاده کنید."
1154
-
1155
- #: admin/views/settings-tools.php:50
1156
- msgid "Download export file"
1157
- msgstr "دانلود فایل خروجی"
1158
-
1159
- #: admin/views/settings-tools.php:51
1160
- msgid "Generate export code"
1161
- msgstr "تولید کد خروجی"
1162
-
1163
- #: admin/views/settings-tools.php:64
1164
- msgid "Import Field Groups"
1165
- msgstr "وارد کردن گروه های زمینه"
1166
-
1167
- #: admin/views/settings-tools.php:67
1168
- msgid ""
1169
- "Select the Advanced Custom Fields JSON file you would like to import. When you click the import button "
1170
- "below, ACF will import the field groups."
1171
- msgstr ""
1172
- "فایل JSON ای که قبلا از این افزونه خروجی گرفته اید را انتخاب کنید تا وارد شود. زمانی که دکمه وارد کردن "
1173
- "را در زیر کلیک کنید، سیستم اقدام به ساخت گروه های زمینه خواهد نمود"
1174
-
1175
- #: admin/views/settings-tools.php:77 fields/file.php:46
1176
- msgid "Select File"
1177
- msgstr "انتخاب پرونده"
1178
-
1179
- #: admin/views/settings-tools.php:86
1180
- msgid "Import"
1181
- msgstr "وارد کردن"
1182
-
1183
- #: admin/views/update-network.php:4
1184
- msgid "Upgrade Sites"
1185
- msgstr "ارتقاء سایت"
1186
-
1187
- #: admin/views/update-network.php:13 admin/views/update.php:8
1188
- msgid "Advanced Custom Fields Database Upgrade"
1189
- msgstr "به‌روزرسانی پایگاه داده زمینه های دلخواه پیشرفته"
1190
-
1191
- #: admin/views/update-network.php:15
1192
- #, php-format
1193
- msgid "The following sites require a DB upgrade. Check the ones you want to update and then click %s."
1194
- msgstr "این سایت ها نیاز به به روز رسانی دارند برای انجام %s کلیک کنید."
1195
-
1196
- #: admin/views/update-network.php:24 admin/views/update-network.php:32
1197
- msgid "Site"
1198
- msgstr "سایت"
1199
-
1200
- #: admin/views/update-network.php:52
1201
- #, php-format
1202
- msgid "Site requires database upgrade from %s to %s"
1203
- msgstr "سایت نیاز به به‌روزرسانی از %s به %s دارد"
1204
-
1205
- #: admin/views/update-network.php:54
1206
- msgid "Site is up to date"
1207
- msgstr "سایت به روز است"
1208
-
1209
- #: admin/views/update-network.php:67 admin/views/update.php:16
1210
- msgid "Database Upgrade complete. <a href=\"%s\">Return to network dashboard</a>"
1211
- msgstr "به روزرسانی دیتابیس انجام شد. <a href=\"%s\">بازگشت به پیشخوان شبکه</a>"
1212
-
1213
- #: admin/views/update-network.php:106 admin/views/update-notice.php:35
1214
- msgid ""
1215
- "It is strongly recommended that you backup your database before proceeding. Are you sure you wish to "
1216
- "run the updater now?"
1217
- msgstr ""
1218
- "قویا توصیه می شود از بانک اطلاعاتی خود قبل از هر کاری پشتیبان تهیه کنید. آیا مایلید به روز رسانی انجام "
1219
- "شود؟"
1220
-
1221
- #: admin/views/update-network.php:162
1222
- msgid "Upgrade complete"
1223
- msgstr "به‌روزرسانی انجام شد"
1224
-
1225
- #: admin/views/update-network.php:166 admin/views/update.php:14
1226
- #, php-format
1227
- msgid "Upgrading data to version %s"
1228
- msgstr "به روز رسانی داده ها به نسحه %s"
1229
-
1230
- #: admin/views/update-notice.php:23
1231
- msgid "Database Upgrade Required"
1232
- msgstr "به روزرسانی دیتابیس لازم است"
1233
 
1234
- #: admin/views/update-notice.php:25
1235
  #, php-format
1236
- msgid "Thank you for updating to %s v%s!"
1237
- msgstr "از شما برای بروزرسانی به آخرین نسخه %s v%s ممنون هستیم!"
1238
-
1239
- #: admin/views/update-notice.php:25
1240
- msgid ""
1241
- "Before you start using the new awesome features, please update your database to the newest version."
1242
- msgstr "قبل از اینکه از تمام امکانات شگفت انگیز جدید استفاده کنید لازم است بانک اطلاعاتی را به روز کنید"
1243
-
1244
- #: admin/views/update.php:12
1245
- msgid "Reading upgrade tasks..."
1246
- msgstr "در حال خواندن مراحل به روزرسانی..."
1247
-
1248
- #: admin/views/update.php:16
1249
- msgid "See what's new"
1250
- msgstr "ببینید چه چیزی جدید است"
1251
 
1252
- #: api/api-helpers.php:944
1253
  msgid "Thumbnail"
1254
  msgstr "تصویر بندانگشتی"
1255
 
1256
- #: api/api-helpers.php:945
1257
  msgid "Medium"
1258
  msgstr "متوسط"
1259
 
1260
- #: api/api-helpers.php:946
1261
  msgid "Large"
1262
  msgstr "بزرگ"
1263
 
1264
- #: api/api-helpers.php:995
1265
  msgid "Full Size"
1266
  msgstr "اندازه کامل"
1267
 
1268
- #: api/api-helpers.php:1207 api/api-helpers.php:1770 pro/fields/clone.php:866
 
1269
  msgid "(no title)"
1270
  msgstr "(بدون عنوان)"
1271
 
1272
- #: api/api-helpers.php:1807 fields/page_link.php:284 fields/post_object.php:283 fields/taxonomy.php:989
1273
- msgid "Parent"
1274
- msgstr "مادر"
1275
-
1276
- #: api/api-helpers.php:3873
1277
  #, php-format
1278
  msgid "Image width must be at least %dpx."
1279
  msgstr "عرض تصویر باید حداقل %d پیکسل باشد."
1280
 
1281
- #: api/api-helpers.php:3878
1282
  #, php-format
1283
  msgid "Image width must not exceed %dpx."
1284
  msgstr "عرض تصویر نباید از %d پیکسل بیشتر باشد."
1285
 
1286
- #: api/api-helpers.php:3894
1287
  #, php-format
1288
  msgid "Image height must be at least %dpx."
1289
  msgstr "ارتفاع فایل باید حداقل %d پیکسل باشد."
1290
 
1291
- #: api/api-helpers.php:3899
1292
  #, php-format
1293
  msgid "Image height must not exceed %dpx."
1294
  msgstr "ارتفاع تصویر نباید از %d پیکسل بیشتر باشد."
1295
 
1296
- #: api/api-helpers.php:3917
1297
  #, php-format
1298
  msgid "File size must be at least %s."
1299
  msgstr "حجم فایل باید حداقل %s باشد."
1300
 
1301
- #: api/api-helpers.php:3922
1302
  #, php-format
1303
  msgid "File size must must not exceed %s."
1304
  msgstr "حجم فایل ها نباید از %s بیشتر باشد."
1305
 
1306
- #: api/api-helpers.php:3956
1307
  #, php-format
1308
  msgid "File type must be %s."
1309
  msgstr "نوع فایل باید %s باشد"
1310
 
1311
- #: api/api-template.php:1092
1312
- msgid "Spam Detected"
1313
- msgstr "اسپم تشخیص داده شد"
1314
-
1315
- #: api/api-template.php:1235 pro/api/api-options-page.php:50 pro/fields/gallery.php:588
1316
- msgid "Update"
1317
- msgstr "بروزرسانی"
1318
-
1319
- #: api/api-template.php:1236
1320
- msgid "Post updated"
1321
- msgstr "نوشته بروز شد."
1322
 
1323
- #: api/api-template.php:1304 core/field.php:133
1324
  msgid "Content"
1325
  msgstr "محتوا"
1326
 
1327
- #: api/api-template.php:1369
1328
- msgid "Validate Email"
1329
- msgstr "اعتبار سنجی ایمیل"
1330
-
1331
- #: core/field.php:132
1332
- msgid "Basic"
1333
- msgstr "پایه"
1334
-
1335
- #: core/field.php:134
1336
  msgid "Choice"
1337
  msgstr "انتخاب"
1338
 
1339
- #: core/field.php:135
1340
  msgid "Relational"
1341
  msgstr "رابطه"
1342
 
1343
- #: core/field.php:136
1344
  msgid "jQuery"
1345
  msgstr "جی کوئری"
1346
 
1347
- #: core/field.php:137 fields/checkbox.php:224 fields/radio.php:293 pro/fields/clone.php:709
1348
- #: pro/fields/flexible-content.php:495 pro/fields/flexible-content.php:544 pro/fields/repeater.php:459
 
 
 
 
 
 
1349
  msgid "Layout"
1350
  msgstr "چیدمان"
1351
 
1352
- #: core/input.php:258
1353
- msgid "Expand Details"
1354
- msgstr "نمایش جزئیات"
1355
-
1356
- #: core/input.php:259
1357
- msgid "Collapse Details"
1358
- msgstr "عدم نمایش جزئیات"
1359
 
1360
- #: core/input.php:260
1361
- msgid "Validation successful"
1362
- msgstr "اعتبار سنجی موفق بود"
1363
 
1364
- #: core/input.php:261 core/validation.php:306 forms/widget.php:234
1365
- msgid "Validation failed"
1366
- msgstr "مشکل در اعتبار سنجی"
1367
 
1368
- #: core/input.php:262
1369
- msgid "1 field requires attention"
1370
- msgstr "یکی از گزینه ها نیاز به بررسی دارد"
1371
 
1372
- #: core/input.php:263
1373
- #, php-format
1374
- msgid "%d fields require attention"
1375
- msgstr "%d گزینه نیاز به بررسی دارد"
1376
 
1377
- #: core/input.php:264
1378
- msgid "Restricted"
1379
- msgstr "ممنوع"
1380
 
1381
- #: core/media.php:54 fields/select.php:249
1382
- msgctxt "verb"
1383
- msgid "Select"
1384
- msgstr "انتخاب"
1385
 
1386
- #: core/media.php:55
1387
- msgctxt "verb"
1388
- msgid "Edit"
1389
- msgstr "ویرایش"
1390
-
1391
- #: core/media.php:56
1392
- msgctxt "verb"
1393
- msgid "Update"
1394
- msgstr "بروزرسانی"
1395
-
1396
- #: core/media.php:57 fields/file.php:49 fields/image.php:54 pro/fields/gallery.php:55
1397
- msgid "Uploaded to this post"
1398
- msgstr "بارگذاری شده در این نوشته"
1399
-
1400
- #: core/validation.php:207
1401
- #, php-format
1402
- msgid "%s value is required"
1403
- msgstr "مقدار %s لازم است"
1404
 
1405
- #: fields/checkbox.php:36 fields/taxonomy.php:767
1406
- msgid "Checkbox"
1407
- msgstr "جعبه انتخاب(چک باکس)"
 
 
1408
 
1409
- #: fields/checkbox.php:142
1410
- msgid "Toggle All"
1411
- msgstr "انتخاب همه"
1412
 
1413
- #: fields/checkbox.php:206 fields/radio.php:241 fields/select.php:446
 
 
 
1414
  msgid "Choices"
1415
  msgstr "انتخاب ها"
1416
 
1417
- #: fields/checkbox.php:207 fields/radio.php:242 fields/select.php:447
 
 
 
1418
  msgid "Enter each choice on a new line."
1419
  msgstr "هر انتخاب را در یک خط جدید وارد کنید."
1420
 
1421
- #: fields/checkbox.php:207 fields/radio.php:242 fields/select.php:447
 
 
 
1422
  msgid "For more control, you may specify both a value and label like this:"
1423
  msgstr "برای کنترل بیشتر، ممکن است هر دو مقدار و برچسب را مانند زیر مشخص کنید:"
1424
 
1425
- #: fields/checkbox.php:207 fields/radio.php:242 fields/select.php:447
 
 
 
1426
  msgid "red : Red"
1427
  msgstr "red : قرمز"
1428
 
1429
- #: fields/checkbox.php:215 fields/color_picker.php:147 fields/email.php:124 fields/number.php:150
1430
- #: fields/radio.php:284 fields/select.php:455 fields/text.php:148 fields/textarea.php:145
1431
- #: fields/true_false.php:115 fields/url.php:117 fields/wysiwyg.php:379
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1432
  msgid "Default Value"
1433
  msgstr "مقدار پیش فرض"
1434
 
1435
- #: fields/checkbox.php:216 fields/select.php:456
1436
- msgid "Enter each default value on a new line"
1437
- msgstr "هر مقدار پیش فرض را در یک خط جدید وارد کنید"
1438
-
1439
- #: fields/checkbox.php:230 fields/radio.php:299
1440
- msgid "Vertical"
1441
- msgstr "عمودی"
 
 
 
 
1442
 
1443
- #: fields/checkbox.php:231 fields/radio.php:300
 
 
1444
  msgid "Horizontal"
1445
  msgstr "افقی"
1446
 
1447
- #: fields/checkbox.php:238
1448
- msgid "Toggle"
1449
- msgstr "انتخاب"
1450
-
1451
- #: fields/checkbox.php:239
1452
- msgid "Prepend an extra checkbox to toggle all choices"
1453
- msgstr "اضافه کردن چک باکس اضافی برای انتخاب همه"
1454
 
1455
- #: fields/checkbox.php:252 fields/file.php:220 fields/image.php:206 fields/radio.php:307
1456
- #: fields/taxonomy.php:836
 
 
 
 
 
1457
  msgid "Return Value"
1458
  msgstr "مقدار بازگشت"
1459
 
1460
- #: fields/checkbox.php:253 fields/file.php:221 fields/image.php:207 fields/radio.php:308
 
 
 
 
 
1461
  msgid "Specify the returned value on front end"
1462
  msgstr "مقدار برگشتی در نمایش نهایی را تعیین کنید"
1463
 
1464
- #: fields/checkbox.php:258 fields/radio.php:313 fields/select.php:526
 
 
 
1465
  msgid "Value"
1466
  msgstr "مقدار"
1467
 
1468
- #: fields/checkbox.php:260 fields/radio.php:315 fields/select.php:528
1469
- msgid "Both (Array)"
1470
- msgstr "هر دو (آرایه)"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1471
 
1472
- #: fields/color_picker.php:36
1473
  msgid "Color Picker"
1474
  msgstr "انتخاب رنگ"
1475
 
1476
- #: fields/color_picker.php:83
1477
  msgid "Clear"
1478
  msgstr "پاکسازی"
1479
 
1480
- #: fields/color_picker.php:84
1481
  msgid "Default"
1482
  msgstr "پیش فرض"
1483
 
1484
- #: fields/color_picker.php:85
1485
  msgid "Select Color"
1486
  msgstr "انتخاب رنگ"
1487
 
1488
- #: fields/color_picker.php:86
1489
  msgid "Current Color"
1490
  msgstr "رنگ فعلی"
1491
 
1492
- #: fields/date_picker.php:36
1493
  msgid "Date Picker"
1494
  msgstr "تاریخ"
1495
 
1496
- #: fields/date_picker.php:44
1497
  msgctxt "Date Picker JS closeText"
1498
  msgid "Done"
1499
  msgstr "انجام شد"
1500
 
1501
- #: fields/date_picker.php:45
1502
  msgctxt "Date Picker JS currentText"
1503
  msgid "Today"
1504
  msgstr "امروز"
1505
 
1506
- #: fields/date_picker.php:46
1507
  msgctxt "Date Picker JS nextText"
1508
  msgid "Next"
1509
  msgstr "بعدی"
1510
 
1511
- #: fields/date_picker.php:47
1512
  msgctxt "Date Picker JS prevText"
1513
  msgid "Prev"
1514
  msgstr "قبلی"
1515
 
1516
- #: fields/date_picker.php:48
1517
  msgctxt "Date Picker JS weekHeader"
1518
  msgid "Wk"
1519
  msgstr "هفته"
1520
 
1521
- #: fields/date_picker.php:195 fields/date_time_picker.php:184 fields/time_picker.php:126
 
 
1522
  msgid "Display Format"
1523
  msgstr "فرمت نمایش"
1524
 
1525
- #: fields/date_picker.php:196 fields/date_time_picker.php:185 fields/time_picker.php:127
 
 
1526
  msgid "The format displayed when editing a post"
1527
  msgstr "قالب در زمان نمایش نوشته دیده خواهد شد"
1528
 
1529
- #: fields/date_picker.php:210 fields/date_time_picker.php:200 fields/post_object.php:455
1530
- #: fields/relationship.php:783 fields/select.php:520 fields/time_picker.php:140
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1531
  msgid "Return Format"
1532
  msgstr "فرمت بازگشت"
1533
 
1534
- #: fields/date_picker.php:211 fields/date_time_picker.php:201 fields/time_picker.php:141
 
 
1535
  msgid "The format returned via template functions"
1536
  msgstr "قالب توسط توابع پوسته نمایش داده خواهد شد"
1537
 
1538
- #: fields/date_picker.php:226 fields/date_time_picker.php:216
 
1539
  msgid "Week Starts On"
1540
  msgstr "اولین روز هفته"
1541
 
1542
- #: fields/date_time_picker.php:36
1543
  msgid "Date Time Picker"
1544
  msgstr "انتخاب زمان"
1545
 
1546
- #: fields/date_time_picker.php:44
1547
  msgctxt "Date Time Picker JS timeOnlyTitle"
1548
  msgid "Choose Time"
1549
  msgstr "انتخاب زمان"
1550
 
1551
- #: fields/date_time_picker.php:45
1552
  msgctxt "Date Time Picker JS timeText"
1553
  msgid "Time"
1554
  msgstr "زمان"
1555
 
1556
- #: fields/date_time_picker.php:46
1557
  msgctxt "Date Time Picker JS hourText"
1558
  msgid "Hour"
1559
  msgstr "ساعت"
1560
 
1561
- #: fields/date_time_picker.php:47
1562
  msgctxt "Date Time Picker JS minuteText"
1563
  msgid "Minute"
1564
  msgstr "دقیقه"
1565
 
1566
- #: fields/date_time_picker.php:48
1567
  msgctxt "Date Time Picker JS secondText"
1568
  msgid "Second"
1569
  msgstr "ثانیه"
1570
 
1571
- #: fields/date_time_picker.php:49
1572
  msgctxt "Date Time Picker JS millisecText"
1573
  msgid "Millisecond"
1574
  msgstr "میلی ثانیه"
1575
 
1576
- #: fields/date_time_picker.php:50
1577
  msgctxt "Date Time Picker JS microsecText"
1578
  msgid "Microsecond"
1579
  msgstr "میکرو ثانیه"
1580
 
1581
- #: fields/date_time_picker.php:51
1582
  msgctxt "Date Time Picker JS timezoneText"
1583
  msgid "Time Zone"
1584
  msgstr "منطقه زمانی"
1585
 
1586
- #: fields/date_time_picker.php:52
1587
  msgctxt "Date Time Picker JS currentText"
1588
  msgid "Now"
1589
  msgstr "الان"
1590
 
1591
- #: fields/date_time_picker.php:53
1592
  msgctxt "Date Time Picker JS closeText"
1593
  msgid "Done"
1594
  msgstr "انجام شد"
1595
 
1596
- #: fields/date_time_picker.php:54
1597
  msgctxt "Date Time Picker JS selectText"
1598
  msgid "Select"
1599
  msgstr "انتخاب"
1600
 
1601
- #: fields/date_time_picker.php:56
1602
  msgctxt "Date Time Picker JS amText"
1603
  msgid "AM"
1604
  msgstr "صبح"
1605
 
1606
- #: fields/date_time_picker.php:57
1607
  msgctxt "Date Time Picker JS amTextShort"
1608
  msgid "A"
1609
  msgstr "صبح"
1610
 
1611
- #: fields/date_time_picker.php:60
1612
  msgctxt "Date Time Picker JS pmText"
1613
  msgid "PM"
1614
  msgstr "عصر"
1615
 
1616
- #: fields/date_time_picker.php:61
1617
  msgctxt "Date Time Picker JS pmTextShort"
1618
  msgid "P"
1619
  msgstr "عصر"
1620
 
1621
- #: fields/email.php:36
1622
  msgid "Email"
1623
  msgstr "پست الکترونیکی"
1624
 
1625
- #: fields/email.php:125 fields/number.php:151 fields/radio.php:285 fields/text.php:149
1626
- #: fields/textarea.php:146 fields/url.php:118 fields/wysiwyg.php:380
1627
- msgid "Appears when creating a new post"
1628
- msgstr "هنگام ایجاد یک نوشته جدید نمایش داده می شود"
1629
-
1630
- #: fields/email.php:133 fields/number.php:159 fields/password.php:137 fields/text.php:157
1631
- #: fields/textarea.php:154 fields/url.php:126
1632
  msgid "Placeholder Text"
1633
  msgstr "نگهدارنده مکان متن"
1634
 
1635
- #: fields/email.php:134 fields/number.php:160 fields/password.php:138 fields/text.php:158
1636
- #: fields/textarea.php:155 fields/url.php:127
 
 
 
 
1637
  msgid "Appears within the input"
1638
  msgstr "در داخل ورودی نمایش داده می شود"
1639
 
1640
- #: fields/email.php:142 fields/number.php:168 fields/password.php:146 fields/text.php:166
 
 
 
 
1641
  msgid "Prepend"
1642
  msgstr "پیشوند"
1643
 
1644
- #: fields/email.php:143 fields/number.php:169 fields/password.php:147 fields/text.php:167
 
 
 
 
1645
  msgid "Appears before the input"
1646
  msgstr "قبل از ورودی نمایش داده می شود"
1647
 
1648
- #: fields/email.php:151 fields/number.php:177 fields/password.php:155 fields/text.php:175
 
 
 
 
1649
  msgid "Append"
1650
  msgstr "پسوند"
1651
 
1652
- #: fields/email.php:152 fields/number.php:178 fields/password.php:156 fields/text.php:176
 
 
 
 
1653
  msgid "Appears after the input"
1654
  msgstr "بعد از ورودی نمایش داده می شود"
1655
 
1656
- #: fields/file.php:36
1657
  msgid "File"
1658
  msgstr "پرونده"
1659
 
1660
- #: fields/file.php:47
1661
  msgid "Edit File"
1662
  msgstr "ویرایش پرونده"
1663
 
1664
- #: fields/file.php:48
1665
  msgid "Update File"
1666
  msgstr "بروزرسانی پرونده"
1667
 
1668
- #: fields/file.php:148
 
 
 
 
 
 
1669
  msgid "File name"
1670
  msgstr "نام فایل"
1671
 
1672
- #: fields/file.php:152 fields/file.php:253 fields/file.php:264 fields/image.php:268 fields/image.php:301
1673
- #: pro/fields/gallery.php:707 pro/fields/gallery.php:740
 
 
 
 
 
1674
  msgid "File size"
1675
  msgstr "اندازه فایل"
1676
 
1677
- #: fields/file.php:175
 
 
 
 
 
 
 
 
1678
  msgid "Add File"
1679
  msgstr "افزودن پرونده"
1680
 
1681
- #: fields/file.php:226
1682
  msgid "File Array"
1683
  msgstr "آرایه فایل"
1684
 
1685
- #: fields/file.php:227
1686
  msgid "File URL"
1687
  msgstr "آدرس پرونده"
1688
 
1689
- #: fields/file.php:228
1690
  msgid "File ID"
1691
  msgstr "شناسه(ID) پرونده"
1692
 
1693
- #: fields/file.php:235 fields/image.php:231 pro/fields/gallery.php:670
 
 
1694
  msgid "Library"
1695
  msgstr "کتابخانه"
1696
 
1697
- #: fields/file.php:236 fields/image.php:232 pro/fields/gallery.php:671
 
 
1698
  msgid "Limit the media library choice"
1699
  msgstr "محدود کردن انتخاب کتابخانه چندرسانه ای"
1700
 
1701
- #: fields/file.php:242 fields/image.php:238 pro/fields/gallery.php:677
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1702
  msgid "Uploaded to post"
1703
  msgstr "بارگذاری شده در نوشته"
1704
 
1705
- #: fields/file.php:249 fields/image.php:245 pro/fields/gallery.php:684
 
 
1706
  msgid "Minimum"
1707
  msgstr "کمترین"
1708
 
1709
- #: fields/file.php:250 fields/file.php:261
 
1710
  msgid "Restrict which files can be uploaded"
1711
  msgstr "محدودیت در آپلود فایل ها"
1712
 
1713
- #: fields/file.php:260 fields/image.php:278 pro/fields/gallery.php:717
 
 
1714
  msgid "Maximum"
1715
  msgstr "بیشترین"
1716
 
1717
- #: fields/file.php:271 fields/image.php:311 pro/fields/gallery.php:750
 
 
1718
  msgid "Allowed file types"
1719
  msgstr "انواع مجاز فایل"
1720
 
1721
- #: fields/file.php:272 fields/image.php:312 pro/fields/gallery.php:751
 
 
1722
  msgid "Comma separated list. Leave blank for all types"
1723
  msgstr "با کامای انگلیسی جدا کرده یا برای عدم محدودیت خالی بگذارید"
1724
 
1725
- #: fields/google-map.php:36
1726
  msgid "Google Map"
1727
  msgstr "نقشه گوگل"
1728
 
1729
- #: fields/google-map.php:51
1730
  msgid "Locating"
1731
  msgstr "مکان یابی"
1732
 
1733
- #: fields/google-map.php:52
1734
  msgid "Sorry, this browser does not support geolocation"
1735
  msgstr "با عرض پوزش، این مرورگر از موقعیت یابی جغرافیایی پشتیبانی نمی کند"
1736
 
1737
- #: fields/google-map.php:133 fields/relationship.php:742
1738
- msgid "Search"
1739
- msgstr "جستجو"
1740
-
1741
- #: fields/google-map.php:134
1742
  msgid "Clear location"
1743
  msgstr "حذف مکان"
1744
 
1745
- #: fields/google-map.php:135
1746
  msgid "Find current location"
1747
  msgstr "پیدا کردن مکان فعلی"
1748
 
1749
- #: fields/google-map.php:138
1750
  msgid "Search for address..."
1751
  msgstr "جستجو برای آدرس . . ."
1752
 
1753
- #: fields/google-map.php:168 fields/google-map.php:179
 
1754
  msgid "Center"
1755
  msgstr "مرکز"
1756
 
1757
- #: fields/google-map.php:169 fields/google-map.php:180
 
1758
  msgid "Center the initial map"
1759
  msgstr "نقشه اولیه را وسط قرار بده"
1760
 
1761
- #: fields/google-map.php:193
1762
  msgid "Zoom"
1763
  msgstr "بزرگنمایی"
1764
 
1765
- #: fields/google-map.php:194
1766
  msgid "Set the initial zoom level"
1767
  msgstr "تعین مقدار بزرگنمایی اولیه"
1768
 
1769
- #: fields/google-map.php:203 fields/image.php:257 fields/image.php:290 fields/oembed.php:275
1770
- #: pro/fields/gallery.php:696 pro/fields/gallery.php:729
 
 
 
 
1771
  msgid "Height"
1772
  msgstr "ارتفاع"
1773
 
1774
- #: fields/google-map.php:204
1775
  msgid "Customise the map height"
1776
  msgstr "سفارشی کردن ارتفاع نقشه"
1777
 
1778
- #: fields/image.php:36
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1779
  msgid "Image"
1780
  msgstr "تصویر"
1781
 
1782
- #: fields/image.php:51
1783
  msgid "Select Image"
1784
  msgstr "انتخاب تصویر"
1785
 
1786
- #: fields/image.php:52 pro/fields/gallery.php:53
 
1787
  msgid "Edit Image"
1788
  msgstr "ویرایش تصویر"
1789
 
1790
- #: fields/image.php:53 pro/fields/gallery.php:54
 
1791
  msgid "Update Image"
1792
  msgstr "بروزرسانی تصویر"
1793
 
1794
- #: fields/image.php:55
1795
  msgid "All images"
1796
  msgstr "تمام تصاویر"
1797
 
1798
- #: fields/image.php:144 pro/fields/gallery.php:358 pro/fields/gallery.php:546
1799
- msgid "Remove"
1800
- msgstr "حذف"
1801
-
1802
- #: fields/image.php:158
1803
  msgid "No image selected"
1804
  msgstr "هیچ تصویری انتخاب نشده"
1805
 
1806
- #: fields/image.php:158
1807
  msgid "Add Image"
1808
  msgstr "افزودن تصویر"
1809
 
1810
- #: fields/image.php:212
1811
  msgid "Image Array"
1812
  msgstr "آرایه تصاویر"
1813
 
1814
- #: fields/image.php:213
1815
  msgid "Image URL"
1816
  msgstr "آدرس تصویر"
1817
 
1818
- #: fields/image.php:214
1819
  msgid "Image ID"
1820
  msgstr "شناسه(ID) تصویر"
1821
 
1822
- #: fields/image.php:221
1823
  msgid "Preview Size"
1824
  msgstr "اندازه پیش نمایش"
1825
 
1826
- #: fields/image.php:222
1827
  msgid "Shown when entering data"
1828
  msgstr "هنگام وارد کردن داده ها نمایش داده می شود"
1829
 
1830
- #: fields/image.php:246 fields/image.php:279 pro/fields/gallery.php:685 pro/fields/gallery.php:718
 
 
 
1831
  msgid "Restrict which images can be uploaded"
1832
  msgstr "محدودیت در آپلود تصاویر"
1833
 
1834
- #: fields/image.php:249 fields/image.php:282 fields/oembed.php:264 pro/fields/gallery.php:688
1835
- #: pro/fields/gallery.php:721
 
 
 
1836
  msgid "Width"
1837
  msgstr "عرض"
1838
 
1839
- #: fields/message.php:36 fields/message.php:116 fields/true_false.php:106
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1840
  msgid "Message"
1841
  msgstr "پیام"
1842
 
1843
- #: fields/message.php:125 fields/textarea.php:182
 
1844
  msgid "New Lines"
1845
  msgstr "خطوط جدید"
1846
 
1847
- #: fields/message.php:126 fields/textarea.php:183
 
1848
  msgid "Controls how new lines are rendered"
1849
  msgstr "تنظیم کنید که خطوط جدید چگونه نمایش داده شوند"
1850
 
1851
- #: fields/message.php:130 fields/textarea.php:187
 
1852
  msgid "Automatically add paragraphs"
1853
  msgstr "پاراگراف ها خودکار اضافه شوند"
1854
 
1855
- #: fields/message.php:131 fields/textarea.php:188
 
1856
  msgid "Automatically add &lt;br&gt;"
1857
  msgstr "اضافه کردن خودکار &lt;br&gt;"
1858
 
1859
- #: fields/message.php:132 fields/textarea.php:189
 
1860
  msgid "No Formatting"
1861
  msgstr "بدون قالب بندی"
1862
 
1863
- #: fields/message.php:139
1864
  msgid "Escape HTML"
1865
  msgstr "حذف HTML"
1866
 
1867
- #: fields/message.php:140
1868
  msgid "Allow HTML markup to display as visible text instead of rendering"
1869
  msgstr "اجازه نمایش کدهای HTML به عنوان متن به جای اعمال آنها"
1870
 
1871
- #: fields/number.php:36
1872
  msgid "Number"
1873
  msgstr "شماره"
1874
 
1875
- #: fields/number.php:186
 
1876
  msgid "Minimum Value"
1877
  msgstr "حداقل مقدار"
1878
 
1879
- #: fields/number.php:195
 
1880
  msgid "Maximum Value"
1881
  msgstr "حداکثر مقدار"
1882
 
1883
- #: fields/number.php:204
 
1884
  msgid "Step Size"
1885
  msgstr "اندازه مرحله"
1886
 
1887
- #: fields/number.php:242
1888
  msgid "Value must be a number"
1889
  msgstr "مقدار باید عددی باشد"
1890
 
1891
- #: fields/number.php:260
1892
  #, php-format
1893
  msgid "Value must be equal to or higher than %d"
1894
  msgstr "مقدار باید مساوی یا بیشتر از %d باشد"
1895
 
1896
- #: fields/number.php:268
1897
  #, php-format
1898
  msgid "Value must be equal to or lower than %d"
1899
  msgstr "مقدار باید کوچکتر یا مساوی %d باشد"
1900
 
1901
- #: fields/oembed.php:36
1902
  msgid "oEmbed"
1903
  msgstr "oEmbed"
1904
 
1905
- #: fields/oembed.php:212
1906
  msgid "Enter URL"
1907
  msgstr "آدرس را وارد کنید"
1908
 
1909
- #: fields/oembed.php:225
 
 
 
 
 
1910
  msgid "No embed found for the given URL."
1911
  msgstr "امکان جاسازی برای آدرس وارد شده یافت نشد."
1912
 
1913
- #: fields/oembed.php:261 fields/oembed.php:272
 
1914
  msgid "Embed Size"
1915
  msgstr "اندازه جانمایی"
1916
 
1917
- #: fields/page_link.php:192
1918
  msgid "Archives"
1919
  msgstr "بایگانی ها"
1920
 
1921
- #: fields/page_link.php:500 fields/post_object.php:399 fields/relationship.php:709
 
 
 
 
 
 
 
 
1922
  msgid "Filter by Post Type"
1923
  msgstr "فیلتر با نوع نوشته"
1924
 
1925
- #: fields/page_link.php:508 fields/post_object.php:407 fields/relationship.php:717
 
 
1926
  msgid "All post types"
1927
  msgstr "تمام انواع نوشته"
1928
 
1929
- #: fields/page_link.php:514 fields/post_object.php:413 fields/relationship.php:723
 
 
1930
  msgid "Filter by Taxonomy"
1931
  msgstr "فیلتر با طبقه بندی"
1932
 
1933
- #: fields/page_link.php:522 fields/post_object.php:421 fields/relationship.php:731
 
 
1934
  msgid "All taxonomies"
1935
  msgstr "تمام طبقه بندی ها"
1936
 
1937
- #: fields/page_link.php:528 fields/post_object.php:427 fields/radio.php:250 fields/select.php:464
1938
- #: fields/taxonomy.php:780 fields/user.php:394
1939
- msgid "Allow Null?"
1940
- msgstr "آیا Null مجاز است؟"
1941
-
1942
- #: fields/page_link.php:542
1943
  msgid "Allow Archives URLs"
1944
  msgstr "اجازه آدرس های آرشیو"
1945
 
1946
- #: fields/page_link.php:556 fields/post_object.php:441 fields/select.php:478 fields/user.php:408
 
 
 
1947
  msgid "Select multiple values?"
1948
  msgstr "آیا چندین مقدار انتخاب شوند؟"
1949
 
1950
- #: fields/password.php:36
1951
  msgid "Password"
1952
  msgstr "رمزعبور"
1953
 
1954
- #: fields/post_object.php:36 fields/post_object.php:460 fields/relationship.php:788
 
 
1955
  msgid "Post Object"
1956
  msgstr "آبجکت یک نوشته"
1957
 
1958
- #: fields/post_object.php:461 fields/relationship.php:789
 
1959
  msgid "Post ID"
1960
  msgstr "شناسه(ID) نوشته"
1961
 
1962
- #: fields/radio.php:36
1963
  msgid "Radio Button"
1964
  msgstr "دکمه رادیویی"
1965
 
1966
- #: fields/radio.php:264
1967
  msgid "Other"
1968
  msgstr "دیگر"
1969
 
1970
- #: fields/radio.php:268
1971
  msgid "Add 'other' choice to allow for custom values"
1972
  msgstr "افزودن گزینه 'دیگر' برای ثبت مقادیر دلخواه"
1973
 
1974
- #: fields/radio.php:274
1975
  msgid "Save Other"
1976
  msgstr "ذخیره دیگر"
1977
 
1978
- #: fields/radio.php:278
1979
  msgid "Save 'other' values to the field's choices"
1980
  msgstr "ذخیره مقادیر دیگر در انتخاب های زمینه"
1981
 
1982
- #: fields/relationship.php:36
 
 
 
 
1983
  msgid "Relationship"
1984
  msgstr "ارتباط"
1985
 
1986
- #: fields/relationship.php:48
1987
  msgid "Minimum values reached ( {min} values )"
1988
  msgstr "مقار به حداقل رسیده است ( {max} )"
1989
 
1990
- #: fields/relationship.php:49
1991
  msgid "Maximum values reached ( {max} values )"
1992
  msgstr "مقادیر به حداکثر رسیده اند ( {max} آیتم )"
1993
 
1994
- #: fields/relationship.php:50
1995
  msgid "Loading"
1996
  msgstr "درحال خواندن"
1997
 
1998
- #: fields/relationship.php:51
1999
  msgid "No matches found"
2000
  msgstr "مطابقتی یافت نشد"
2001
 
2002
- #: fields/relationship.php:590
2003
- msgid "Search..."
2004
- msgstr "جستجو . . ."
2005
-
2006
- #: fields/relationship.php:599
2007
  msgid "Select post type"
2008
  msgstr "انتحاب نوع نوشته"
2009
 
2010
- #: fields/relationship.php:612
2011
  msgid "Select taxonomy"
2012
  msgstr "انتخاب طبقه بندی"
2013
 
2014
- #: fields/relationship.php:744 fields/taxonomy.php:36 fields/taxonomy.php:750
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2015
  msgid "Taxonomy"
2016
  msgstr "طبقه بندی"
2017
 
2018
- #: fields/relationship.php:751
2019
  msgid "Elements"
2020
  msgstr "عناصر"
2021
 
2022
- #: fields/relationship.php:752
2023
  msgid "Selected elements will be displayed in each result"
2024
  msgstr "عناصر انتخاب شده در هر نتیجه نمایش داده خواهند شد"
2025
 
2026
- #: fields/relationship.php:763
2027
  msgid "Minimum posts"
2028
  msgstr "حداقل تعداد نوشته‌ها"
2029
 
2030
- #: fields/relationship.php:772
2031
  msgid "Maximum posts"
2032
  msgstr "حداکثر تعداد نوشته ها"
2033
 
2034
- #: fields/relationship.php:876 pro/fields/gallery.php:823
 
2035
  #, php-format
2036
  msgid "%s requires at least %s selection"
2037
  msgid_plural "%s requires at least %s selections"
2038
  msgstr[0] "%s نیاز دارد به حداقل %s بخش"
2039
 
2040
- #: fields/select.php:36 fields/taxonomy.php:772
 
2041
  msgctxt "noun"
2042
  msgid "Select"
2043
  msgstr "انتخاب"
2044
 
2045
- #: fields/select.php:49
2046
  msgctxt "Select2 JS matches_1"
2047
  msgid "One result is available, press enter to select it."
2048
  msgstr "یک نتیجه موجود است برای انتخاب اینتر کنید"
2049
 
2050
- #: fields/select.php:50
2051
  #, php-format
2052
  msgctxt "Select2 JS matches_n"
2053
  msgid "%d results are available, use up and down arrow keys to navigate."
2054
  msgstr ""
2055
 
2056
- #: fields/select.php:51
2057
  msgctxt "Select2 JS matches_0"
2058
  msgid "No matches found"
2059
  msgstr "مشابهی یافت نشد"
2060
 
2061
- #: fields/select.php:52
2062
  msgctxt "Select2 JS input_too_short_1"
2063
  msgid "Please enter 1 or more characters"
2064
- msgstr ""
2065
 
2066
- #: fields/select.php:53
2067
  #, php-format
2068
  msgctxt "Select2 JS input_too_short_n"
2069
  msgid "Please enter %d or more characters"
2070
  msgstr ""
2071
 
2072
- #: fields/select.php:54
2073
  msgctxt "Select2 JS input_too_long_1"
2074
  msgid "Please delete 1 character"
2075
- msgstr ""
2076
 
2077
- #: fields/select.php:55
2078
  #, php-format
2079
  msgctxt "Select2 JS input_too_long_n"
2080
  msgid "Please delete %d characters"
2081
  msgstr ""
2082
 
2083
- #: fields/select.php:56
2084
  msgctxt "Select2 JS selection_too_long_1"
2085
  msgid "You can only select 1 item"
2086
- msgstr ""
2087
 
2088
- #: fields/select.php:57
2089
  #, php-format
2090
  msgctxt "Select2 JS selection_too_long_n"
2091
  msgid "You can only select %d items"
2092
  msgstr ""
2093
 
2094
- #: fields/select.php:58
2095
  msgctxt "Select2 JS load_more"
2096
  msgid "Loading more results&hellip;"
2097
  msgstr "بارگذاری نتایج بیشتر&hellip;"
2098
 
2099
- #: fields/select.php:59
2100
  msgctxt "Select2 JS searching"
2101
  msgid "Searching&hellip;"
2102
  msgstr "جستجو &hellip;"
2103
 
2104
- #: fields/select.php:60
2105
  msgctxt "Select2 JS load_fail"
2106
  msgid "Loading failed"
2107
  msgstr "خطا در فراخوانی داده ها"
2108
 
2109
- #: fields/select.php:492
 
 
 
 
 
 
2110
  msgid "Stylised UI"
2111
  msgstr "ظاهر بهینه شده"
2112
 
2113
- #: fields/select.php:506
2114
  msgid "Use AJAX to lazy load choices?"
2115
  msgstr "از ایجکس برای خواندن گزینه های استفاده شود؟"
2116
 
2117
- #: fields/select.php:521
2118
  msgid "Specify the value returned"
2119
  msgstr "مقدار بازگشتی را انتخاب کنید"
2120
 
2121
- #: fields/tab.php:36
 
 
 
 
2122
  msgid "Tab"
2123
  msgstr "تب"
2124
 
2125
- #: fields/tab.php:97
2126
- msgid ""
2127
- "The tab field will display incorrectly when added to a Table style repeater field or flexible content "
2128
- "field layout"
2129
- msgstr ""
2130
- "زمینه تب در زمانی که در آن زمینه تکرارشونده و یا زمینه محتوای انعطاف پذیر به کار ببرید درست نمایش داده "
2131
- "نخواهد شد"
2132
-
2133
- #: fields/tab.php:98
2134
- msgid "Use \"Tab Fields\" to better organize your edit screen by grouping fields together."
2135
- msgstr "از (زمینه تب) برای سازماندهی بهتر صفحه ویرایش با گروه بندی زمینه ها زیر تب ها استفاده کنید. "
2136
-
2137
- #: fields/tab.php:99
2138
- msgid ""
2139
- "All fields following this \"tab field\" (or until another \"tab field\" is defined) will be grouped "
2140
- "together using this field's label as the tab heading."
2141
- msgstr ""
2142
- "همه زمینه های زیر این \" زمینه تب \" (یا تا زمینه تب بعدی) با هم گروه بندی می شوند و برچسب زمینه در تب "
2143
- "به نمایش در خواهد آمد"
2144
-
2145
- #: fields/tab.php:113
2146
  msgid "Placement"
2147
  msgstr "جانمایی"
2148
 
2149
- #: fields/tab.php:125
2150
- msgid "End-point"
2151
- msgstr "نقطه پایانی"
 
 
2152
 
2153
- #: fields/tab.php:126
2154
- msgid "Use this field as an end-point and start a new group of tabs"
2155
- msgstr "استفاده از این زمینه به عنوان نقطه پایانی و شروع یک گروه جدید از تب ها"
 
 
2156
 
2157
- #: fields/taxonomy.php:719
2158
  msgid "None"
2159
  msgstr "هیچ"
2160
 
2161
- #: fields/taxonomy.php:751
2162
  msgid "Select the taxonomy to be displayed"
2163
  msgstr "طبقه‌بندی را برای برون بری انتخاب کنید"
2164
 
2165
- #: fields/taxonomy.php:760
2166
  msgid "Appearance"
2167
  msgstr "ظاهر"
2168
 
2169
- #: fields/taxonomy.php:761
2170
  msgid "Select the appearance of this field"
2171
  msgstr "ظاهر این زمینه را مشخص کنید"
2172
 
2173
- #: fields/taxonomy.php:766
2174
  msgid "Multiple Values"
2175
  msgstr "چندین مقدار"
2176
 
2177
- #: fields/taxonomy.php:768
2178
  msgid "Multi Select"
2179
  msgstr "چندین انتخاب"
2180
 
2181
- #: fields/taxonomy.php:770
2182
  msgid "Single Value"
2183
  msgstr "تک مقدار"
2184
 
2185
- #: fields/taxonomy.php:771
2186
  msgid "Radio Buttons"
2187
  msgstr "دکمه های رادیویی"
2188
 
2189
- #: fields/taxonomy.php:794
2190
  msgid "Create Terms"
2191
  msgstr "ساخت آیتم (ترم)"
2192
 
2193
- #: fields/taxonomy.php:795
2194
  msgid "Allow new terms to be created whilst editing"
2195
  msgstr "اجازه به ساخت آیتم‌ها(ترم‌ها) جدید در زمان ویرایش"
2196
 
2197
- #: fields/taxonomy.php:808
2198
  msgid "Save Terms"
2199
  msgstr "ذخیره ترم ها"
2200
 
2201
- #: fields/taxonomy.php:809
2202
- msgid "Connect selected terms to the post"
2203
- msgstr "الصاق آیتم های انتخابی به نوشته"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2204
 
2205
- #: fields/taxonomy.php:822
2206
- msgid "Load Terms"
2207
- msgstr "خواندن ترم ها"
2208
 
2209
- #: fields/taxonomy.php:823
2210
- msgid "Load value from posts terms"
2211
- msgstr "خواندن مقادیر از ترم های نوشته"
2212
 
2213
- #: fields/taxonomy.php:841
2214
- msgid "Term Object"
2215
- msgstr "به صورت آبجکت"
2216
 
2217
- #: fields/taxonomy.php:842
2218
- msgid "Term ID"
2219
- msgstr "شناسه(ID) آیتم(ترم)"
2220
 
2221
- #: fields/taxonomy.php:901
2222
- #, php-format
2223
- msgid "User unable to add new %s"
2224
- msgstr "کاربر قادر به اضافه کردن%s جدید نیست"
2225
 
2226
- #: fields/taxonomy.php:914
2227
- #, php-format
2228
- msgid "%s already exists"
2229
- msgstr "%s هم اکنون موجود است"
2230
 
2231
- #: fields/taxonomy.php:955
2232
- #, php-format
2233
- msgid "%s added"
2234
- msgstr "%s اضافه شد"
2235
 
2236
- #: fields/taxonomy.php:1000
2237
- msgid "Add"
2238
- msgstr "افزودن"
2239
 
2240
- #: fields/text.php:36
2241
- msgid "Text"
2242
- msgstr "متن"
2243
 
2244
- #: fields/text.php:184 fields/textarea.php:163
2245
- msgid "Character Limit"
2246
- msgstr "محدودیت کاراکتر"
2247
 
2248
- #: fields/text.php:185 fields/textarea.php:164
2249
- msgid "Leave blank for no limit"
2250
- msgstr "برای نامحدود بودن این بخش را خالی بگذارید."
2251
 
2252
- #: fields/textarea.php:36
2253
- msgid "Text Area"
2254
- msgstr "باکس متن (متن چند خطی)"
 
2255
 
2256
- #: fields/textarea.php:172
2257
- msgid "Rows"
2258
- msgstr "سطرها"
2259
 
2260
- #: fields/textarea.php:173
2261
- msgid "Sets the textarea height"
2262
- msgstr "تعیین ارتفاع باکس متن"
2263
 
2264
- #: fields/time_picker.php:36
2265
- msgid "Time Picker"
2266
- msgstr "انتخاب زمان"
2267
 
2268
- #: fields/true_false.php:36
2269
- msgid "True / False"
2270
- msgstr "صحیح / غلط"
2271
 
2272
- #: fields/true_false.php:107
2273
- msgid "eg. Show extra content"
2274
- msgstr "به عنوان مثال: نمایش محتوای اضافی"
2275
 
2276
- #: fields/url.php:36
2277
- msgid "Url"
2278
- msgstr "URL"
2279
 
2280
- #: fields/url.php:168
2281
- msgid "Value must be a valid URL"
2282
- msgstr "مقدار باید یک آدرس صحیح باشد"
2283
 
2284
- #: fields/user.php:379
2285
- msgid "Filter by role"
2286
- msgstr "تفکیک با نقش"
2287
 
2288
- #: fields/user.php:387
2289
- msgid "All user roles"
2290
- msgstr "تمام نقش های کاربر"
2291
 
2292
- #: fields/wysiwyg.php:37
2293
- msgid "Wysiwyg Editor"
2294
- msgstr "ویرایشگر دیداری"
2295
 
2296
- #: fields/wysiwyg.php:331
2297
- msgid "Visual"
2298
- msgstr "بصری"
2299
 
2300
- #: fields/wysiwyg.php:332
2301
- msgctxt "Name for the Text editor tab (formerly HTML)"
2302
- msgid "Text"
2303
- msgstr "متن"
2304
 
2305
- #: fields/wysiwyg.php:388
2306
- msgid "Tabs"
2307
- msgstr "تب ها"
2308
 
2309
- #: fields/wysiwyg.php:393
2310
- msgid "Visual & Text"
2311
- msgstr "بصری و متنی"
2312
 
2313
- #: fields/wysiwyg.php:394
2314
- msgid "Visual Only"
2315
- msgstr "فقط بصری"
2316
 
2317
- #: fields/wysiwyg.php:395
2318
- msgid "Text Only"
2319
- msgstr "فقط متن"
2320
 
2321
- #: fields/wysiwyg.php:402
2322
- msgid "Toolbar"
2323
- msgstr "نوار ابزار"
2324
 
2325
- #: fields/wysiwyg.php:412
2326
- msgid "Show Media Upload Buttons?"
2327
- msgstr "آیا دکمه های بارگذاری رسانه نمایش داده شوند؟"
 
2328
 
2329
- #: forms/comment.php:166 forms/post.php:295 pro/admin/options-page.php:416
2330
- msgid "Edit field group"
2331
- msgstr "ویرایش گروه زمینه"
 
2332
 
2333
- #: forms/widget.php:235
2334
  #, php-format
2335
- msgid "1 field requires attention."
2336
- msgid_plural "%d fields require attention."
2337
- msgstr[0] ""
2338
 
2339
  #. Plugin Name of the plugin/theme
2340
- #: pro/acf-pro.php:24
2341
  msgid "Advanced Custom Fields PRO"
2342
  msgstr "زمینه های دلخواه پیشرفته نسخه حرفه ای"
2343
 
2344
- #: pro/acf-pro.php:192
2345
- msgid "Flexible Content requires at least 1 layout"
2346
- msgstr "زمینه محتوای انعطاف پذیر حداقل به یک طرح نیاز دارد"
2347
-
2348
- #: pro/admin/options-page.php:49
2349
- msgid "Options Page"
2350
- msgstr "برگه تنظیمات"
2351
-
2352
- #: pro/admin/options-page.php:85
2353
- msgid "No options pages exist"
2354
- msgstr "هیچ صفحه تنظیماتی یافت نشد"
2355
-
2356
- #: pro/admin/options-page.php:303
2357
- msgid "Options Updated"
2358
- msgstr "تنظیمات به روز شدند"
2359
-
2360
- #: pro/admin/options-page.php:309
2361
  msgid "Publish"
2362
  msgstr "انتشار"
2363
 
2364
- #: pro/admin/options-page.php:315
2365
- msgid "No Custom Field Groups found for this options page. <a href=\"%s\">Create a Custom Field Group</a>"
2366
- msgstr "هیچ گروه زمینه دلخواهی برای این صفحه تنظیمات یافت نشد. <a href=\"%s\">ساخت گروه زمینه دلخواه</a>"
 
 
 
 
 
2367
 
2368
- #: pro/admin/settings-updates.php:87
2369
  msgid "<b>Error</b>. Could not connect to update server"
2370
  msgstr "خطا. امکان اتصال به سرور به روزرسانی الان ممکن نیست"
2371
 
2372
- #: pro/admin/views/settings-updates.php:11
 
 
 
 
 
2373
  msgid "Deactivate License"
2374
  msgstr "غیرفعال سازی لایسنس"
2375
 
2376
- #: pro/admin/views/settings-updates.php:11
2377
  msgid "Activate License"
2378
  msgstr "فعال سازی لایسنس"
2379
 
2380
- #: pro/admin/views/settings-updates.php:21
2381
  msgid "License Information"
2382
  msgstr "اطلاعات لایسنس"
2383
 
2384
- #: pro/admin/views/settings-updates.php:24
2385
  #, php-format
2386
  msgid ""
2387
- "To unlock updates, please enter your license key below. If you don't have a licence key, please see <a "
2388
- "href=\"%s\" target=\"_blank\">details & pricing</a>."
2389
- msgstr "برای به روزرسانی لطفا کد لایسنس را وارد کنید. <a href=\"%s\" target=\"_blank\">قیمت ها</a>."
 
 
 
2390
 
2391
- #: pro/admin/views/settings-updates.php:33
2392
  msgid "License Key"
2393
  msgstr "کلید لایسنس"
2394
 
2395
- #: pro/admin/views/settings-updates.php:65
2396
  msgid "Update Information"
2397
  msgstr "اطلاعات به روز رسانی"
2398
 
2399
- #: pro/admin/views/settings-updates.php:72
2400
  msgid "Current Version"
2401
  msgstr "نسخه فعلی"
2402
 
2403
- #: pro/admin/views/settings-updates.php:80
2404
  msgid "Latest Version"
2405
  msgstr "آخرین نسخه"
2406
 
2407
- #: pro/admin/views/settings-updates.php:88
2408
  msgid "Update Available"
2409
  msgstr "بروزرسانی موجود است"
2410
 
2411
- #: pro/admin/views/settings-updates.php:96
2412
  msgid "Update Plugin"
2413
  msgstr "بروزرسانی افزونه"
2414
 
2415
- #: pro/admin/views/settings-updates.php:98
2416
  msgid "Please enter your license key above to unlock updates"
2417
  msgstr "برای فعالسازی به روزرسانی لایسنس خود را بنویسید"
2418
 
2419
- #: pro/admin/views/settings-updates.php:104
2420
  msgid "Check Again"
2421
  msgstr "بررسی دوباره"
2422
 
2423
- #: pro/admin/views/settings-updates.php:121
2424
  msgid "Upgrade Notice"
2425
  msgstr "نکات به روزرسانی"
2426
 
2427
- #: pro/api/api-options-page.php:22 pro/api/api-options-page.php:23
2428
- msgid "Options"
2429
- msgstr "تنظیمات"
2430
-
2431
- #: pro/core/updates.php:206
2432
- #, php-format
2433
- msgid ""
2434
- "To enable updates, please enter your license key on the <a href=\"%s\">Updates</a> page. If you don't "
2435
- "have a licence key, please see <a href=\"%s\">details & pricing</a>."
2436
- msgstr ""
2437
- "برای به روزرسانی لطفا کد لایسنس را وارد کنید. <a href=\"%s\">بروزرسانی</a>. <a href=\"%s\">قیمت ها</a>"
2438
-
2439
- #: pro/fields/clone.php:36
2440
  msgctxt "noun"
2441
  msgid "Clone"
2442
  msgstr "کپی (هیچ)"
2443
 
2444
- #: pro/fields/clone.php:680
2445
  msgid "Select one or more fields you wish to clone"
2446
  msgstr "انتخاب فیلد دیگری برای کپی"
2447
 
2448
- #: pro/fields/clone.php:695
2449
  msgid "Display"
2450
  msgstr "نمایش"
2451
 
2452
- #: pro/fields/clone.php:696
2453
  msgid "Specify the style used to render the clone field"
2454
  msgstr "مشخص کردن استایل مورد نظر در نمایش دسته فیلدها"
2455
 
2456
- #: pro/fields/clone.php:701
2457
  msgid "Group (displays selected fields in a group within this field)"
2458
  msgstr "گروه ها(نمایش فیلدهای انتخابی در یک گروه با این فیلد)"
2459
 
2460
- #: pro/fields/clone.php:702
2461
  msgid "Seamless (replaces this field with selected fields)"
2462
  msgstr "بدون مانند (جایگزینی این فیلد با فیلدهای انتخابی)"
2463
 
2464
- #: pro/fields/clone.php:710
2465
- msgid "Specify the style used to render the selected fields"
2466
- msgstr "استایل جهت نمایش فیلد انتخابی"
2467
-
2468
- #: pro/fields/clone.php:715 pro/fields/flexible-content.php:555 pro/fields/repeater.php:467
2469
- msgid "Block"
2470
- msgstr "بلوک"
2471
-
2472
- #: pro/fields/clone.php:716 pro/fields/flexible-content.php:554 pro/fields/repeater.php:466
2473
- msgid "Table"
2474
- msgstr "جدول"
2475
-
2476
- #: pro/fields/clone.php:717 pro/fields/flexible-content.php:556 pro/fields/repeater.php:468
2477
- msgid "Row"
2478
- msgstr "سطر"
2479
-
2480
- #: pro/fields/clone.php:723
2481
  #, php-format
2482
  msgid "Labels will be displayed as %s"
2483
  msgstr "برچسب ها نمایش داده شوند به صورت %s"
2484
 
2485
- #: pro/fields/clone.php:726
2486
  msgid "Prefix Field Labels"
2487
  msgstr "پیشوند پرچسب فیلدها"
2488
 
2489
- #: pro/fields/clone.php:741
2490
  #, php-format
2491
  msgid "Values will be saved as %s"
2492
  msgstr "مقادیر ذخیره خواهند شد به صورت %s"
2493
 
2494
- #: pro/fields/clone.php:744
2495
  msgid "Prefix Field Names"
2496
  msgstr "پیشوند نام فایل ها"
2497
 
2498
- #: pro/fields/clone.php:900
 
 
 
 
 
 
 
 
2499
  #, php-format
2500
  msgid "All fields from %s field group"
2501
  msgstr "تمام فیلدها از %s گروه فیلد"
2502
 
2503
- #: pro/fields/flexible-content.php:36
2504
- msgid "Flexible Content"
2505
- msgstr "محتوای انعطاف پذیر"
2506
-
2507
- #: pro/fields/flexible-content.php:42 pro/fields/repeater.php:43
2508
  msgid "Add Row"
2509
  msgstr "سطر جدید"
2510
 
2511
- #: pro/fields/flexible-content.php:45
2512
  msgid "layout"
2513
  msgstr "طرح"
2514
 
2515
- #: pro/fields/flexible-content.php:46
2516
  msgid "layouts"
2517
  msgstr "طرح ها"
2518
 
2519
- #: pro/fields/flexible-content.php:47
2520
  msgid "remove {layout}?"
2521
  msgstr "حذف {layout} ؟"
2522
 
2523
- #: pro/fields/flexible-content.php:48
2524
  msgid "This field requires at least {min} {identifier}"
2525
  msgstr "این زمینه نیازدارد به {min} {identifier}"
2526
 
2527
- #: pro/fields/flexible-content.php:49
2528
  msgid "This field has a limit of {max} {identifier}"
2529
  msgstr "این زمینه محدود است به {max} {identifier}"
2530
 
2531
- #: pro/fields/flexible-content.php:50
2532
  msgid "This field requires at least {min} {label} {identifier}"
2533
  msgstr "این زمینه لازم دارد {min} {label} {identifier}"
2534
 
2535
- #: pro/fields/flexible-content.php:51
2536
  msgid "Maximum {label} limit reached ({max} {identifier})"
2537
  msgstr "حداکثر {label} پرشده است ({max} {identifier})"
2538
 
2539
- #: pro/fields/flexible-content.php:52
2540
  msgid "{available} {label} {identifier} available (max {max})"
2541
  msgstr "{available} {label} {identifier} موجود است (حداکثر {max})"
2542
 
2543
- #: pro/fields/flexible-content.php:53
2544
  msgid "{required} {label} {identifier} required (min {min})"
2545
  msgstr "{required} {label} {identifier} لازم دارد (حداقل {min})"
2546
 
2547
- #: pro/fields/flexible-content.php:220
 
 
 
 
2548
  #, php-format
2549
  msgid "Click the \"%s\" button below to start creating your layout"
2550
  msgstr "روی دکمه \"%s\" دز زیر کلیک کنید تا چیدمان خود را بسازید"
2551
 
2552
- #: pro/fields/flexible-content.php:350
2553
  msgid "Add layout"
2554
  msgstr "طرح جدید"
2555
 
2556
- #: pro/fields/flexible-content.php:353
2557
  msgid "Remove layout"
2558
  msgstr "حذف طرح"
2559
 
2560
- #: pro/fields/flexible-content.php:356 pro/fields/repeater.php:304
 
2561
  msgid "Click to toggle"
2562
  msgstr "کلیک برای انتخاب"
2563
 
2564
- #: pro/fields/flexible-content.php:497
2565
  msgid "Reorder Layout"
2566
  msgstr "ترتیب بندی طرح ها"
2567
 
2568
- #: pro/fields/flexible-content.php:497
2569
  msgid "Reorder"
2570
  msgstr "مرتب سازی"
2571
 
2572
- #: pro/fields/flexible-content.php:498
2573
  msgid "Delete Layout"
2574
  msgstr "حذف طرح"
2575
 
2576
- #: pro/fields/flexible-content.php:499
2577
  msgid "Duplicate Layout"
2578
  msgstr "تکثیر طرح"
2579
 
2580
- #: pro/fields/flexible-content.php:500
2581
  msgid "Add New Layout"
2582
  msgstr "افزودن طرح جدید"
2583
 
2584
- #: pro/fields/flexible-content.php:571
2585
  msgid "Min"
2586
  msgstr "حداقل"
2587
 
2588
- #: pro/fields/flexible-content.php:584
2589
  msgid "Max"
2590
  msgstr "حداکثر"
2591
 
2592
- #: pro/fields/flexible-content.php:612 pro/fields/repeater.php:475
 
2593
  msgid "Button Label"
2594
  msgstr "متن دکمه"
2595
 
2596
- #: pro/fields/flexible-content.php:621
2597
  msgid "Minimum Layouts"
2598
  msgstr "حداقل تعداد طرح ها"
2599
 
2600
- #: pro/fields/flexible-content.php:630
2601
  msgid "Maximum Layouts"
2602
  msgstr "حداکثر تعداد طرح ها"
2603
 
2604
- #: pro/fields/gallery.php:36
2605
- msgid "Gallery"
2606
- msgstr "گالری"
2607
-
2608
- #: pro/fields/gallery.php:52
2609
  msgid "Add Image to Gallery"
2610
  msgstr "افزودن تصویر به گالری"
2611
 
2612
- #: pro/fields/gallery.php:56
2613
  msgid "Maximum selection reached"
2614
  msgstr "بیشترین حد انتخاب شده است"
2615
 
2616
- #: pro/fields/gallery.php:336
2617
  msgid "Length"
2618
  msgstr "طول"
2619
 
2620
- #: pro/fields/gallery.php:379
2621
  msgid "Caption"
2622
  msgstr "متن"
2623
 
2624
- #: pro/fields/gallery.php:388
2625
  msgid "Alt Text"
2626
  msgstr "متن جایگزین"
2627
 
2628
- #: pro/fields/gallery.php:559
2629
  msgid "Add to gallery"
2630
  msgstr "اضافه به گالری"
2631
 
2632
- #: pro/fields/gallery.php:563
2633
  msgid "Bulk actions"
2634
  msgstr "کارهای گروهی"
2635
 
2636
- #: pro/fields/gallery.php:564
2637
  msgid "Sort by date uploaded"
2638
  msgstr "به ترتیب تاریخ آپلود"
2639
 
2640
- #: pro/fields/gallery.php:565
2641
  msgid "Sort by date modified"
2642
  msgstr "به ترتیب تاریخ اعمال تغییرات"
2643
 
2644
- #: pro/fields/gallery.php:566
2645
  msgid "Sort by title"
2646
  msgstr "به ترتیب عنوان"
2647
 
2648
- #: pro/fields/gallery.php:567
2649
  msgid "Reverse current order"
2650
  msgstr "معکوس سازی ترتیب کنونی"
2651
 
2652
- #: pro/fields/gallery.php:585
2653
  msgid "Close"
2654
  msgstr "بستن"
2655
 
2656
- #: pro/fields/gallery.php:639
2657
  msgid "Minimum Selection"
2658
  msgstr "حداقل انتخاب"
2659
 
2660
- #: pro/fields/gallery.php:648
2661
  msgid "Maximum Selection"
2662
  msgstr "حداکثر انتخاب"
2663
 
2664
- #: pro/fields/gallery.php:657
2665
  msgid "Insert"
2666
  msgstr "درج"
2667
 
2668
- #: pro/fields/gallery.php:658
2669
  msgid "Specify where new attachments are added"
2670
  msgstr "مشخص کنید که پیوست ها کجا اضافه شوند"
2671
 
2672
- #: pro/fields/gallery.php:662
2673
  msgid "Append to the end"
2674
  msgstr "افزودن به انتها"
2675
 
2676
- #: pro/fields/gallery.php:663
2677
  msgid "Prepend to the beginning"
2678
  msgstr "افزودن قبل از"
2679
 
2680
- #: pro/fields/repeater.php:36
2681
- msgid "Repeater"
2682
- msgstr "زمینه تکرار کننده"
2683
-
2684
- #: pro/fields/repeater.php:47
2685
  msgid "Minimum rows reached ({min} rows)"
2686
  msgstr "مقادیر به حداکثر رسیده اند ( {min} سطر )"
2687
 
2688
- #: pro/fields/repeater.php:48
2689
  msgid "Maximum rows reached ({max} rows)"
2690
  msgstr "مقادیر به حداکثر رسیده اند ( {max} سطر )"
2691
 
2692
- #: pro/fields/repeater.php:349
2693
  msgid "Add row"
2694
  msgstr "افزودن سطر"
2695
 
2696
- #: pro/fields/repeater.php:350
2697
  msgid "Remove row"
2698
  msgstr "حذف سطر"
2699
 
2700
- #: pro/fields/repeater.php:398
2701
- msgid "Sub Fields"
2702
- msgstr "زمینه های زیرمجموعه"
2703
-
2704
- #: pro/fields/repeater.php:428
2705
  msgid "Collapsed"
2706
  msgstr "جمع شده"
2707
 
2708
- #: pro/fields/repeater.php:429
2709
  msgid "Select a sub field to show when row is collapsed"
2710
  msgstr "یک زمینه زیرمجموعه را انتخاب کنید تا زمان بسته شدن طر نمایش داده شود"
2711
 
2712
- #: pro/fields/repeater.php:439
2713
  msgid "Minimum Rows"
2714
  msgstr "حداقل تعداد سطرها"
2715
 
2716
- #: pro/fields/repeater.php:449
2717
  msgid "Maximum Rows"
2718
  msgstr "حداکثر تعداد سطرها"
2719
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2720
  #. Plugin URI of the plugin/theme
2721
  msgid "https://www.advancedcustomfields.com/"
2722
  msgstr "https://www.advancedcustomfields.com/"
2723
 
2724
- #. Description of the plugin/theme
2725
- msgid "Customise WordPress with powerful, professional and intuitive fields"
2726
- msgstr "شخصی سازی وردپرس با زمینه های قدرتمند، حرفه ای و دیداری"
2727
-
2728
  #. Author of the plugin/theme
2729
  msgid "Elliot Condon"
2730
  msgstr "Elliot Condon"
@@ -2733,6 +3210,93 @@ msgstr "Elliot Condon"
2733
  msgid "http://www.elliotcondon.com/"
2734
  msgstr "http://www.elliotcondon.com/"
2735
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2736
  #~ msgid "See what's new in"
2737
  #~ msgstr "ببینید چه چیزی جدید است"
2738
 
@@ -2742,9 +3306,12 @@ msgstr "http://www.elliotcondon.com/"
2742
  #~ msgid "<b>Success</b>. Import tool added %s field groups: %s"
2743
  #~ msgstr "<b>انجام شد</b> ابزار وارد سازی %s زمینه را وارد کرد: %s"
2744
 
2745
- #~ msgid "<b>Warning</b>. Import tool detected %s field groups already exist and have been ignored: %s"
 
 
2746
  #~ msgstr ""
2747
- #~ "<b>اخطار</b> ابزار وارد سازی تشخصی داد که گروه زمینه %s اکنون موجود می باشد و %s نادیده گرفته شد"
 
2748
 
2749
  #~ msgid "Upgrade ACF"
2750
  #~ msgstr "بروزرسانی "
@@ -2756,11 +3323,11 @@ msgstr "http://www.elliotcondon.com/"
2756
  #~ msgstr "با گرفتن و کشیدن مرتب سازی کنید"
2757
 
2758
  #~ msgid ""
2759
- #~ "The following sites require a DB upgrade. Check the ones you want to update and then click “Upgrade "
2760
- #~ "Database”."
2761
  #~ msgstr ""
2762
- #~ "سایت‌های زیر نیاز به به‌روزرسانی دیتابیس دارند. آن‌هایی که تمایل دارید را انتخاب کنید و دکمه به "
2763
- #~ "روزرسانی را کلیک کنید."
2764
 
2765
  #~ msgid "Upgrading data to"
2766
  #~ msgstr "به روزرسانی داده ها به"
@@ -2805,20 +3372,26 @@ msgstr "http://www.elliotcondon.com/"
2805
  #~ msgstr "لایسنس"
2806
 
2807
  #~ msgid ""
2808
- #~ "To unlock updates, please enter your license key below. If you don't have a licence key, please see"
2809
- #~ msgstr "برای به روزرسانی لطفا لایسنس خود را وارد کنید. اگر لایسنس ندارید اینجا را ببنید:"
 
 
 
2810
 
2811
  #~ msgid "details & pricing"
2812
  #~ msgstr "جزئیات و قیمت"
2813
 
2814
  #~ msgid ""
2815
- #~ "To enable updates, please enter your license key on the <a href=\"%s\">Updates</a> page. If you "
2816
- #~ "don't have a licence key, please see <a href=\"%s\">details & pricing</a>"
 
2817
  #~ msgstr ""
2818
- #~ "برای به روز رسانی لایسنس خود را در قسمت <a href=\"%s\">به روزرسانی ها</a> وارد کنید. اگر لایسنس "
2819
- #~ "ندارید اینجا را ببینید: <a href=\"%s\">جزئیات ئ قیمت</a>"
 
2820
 
2821
- #~ msgid "Please note that all text will first be passed through the wp function "
 
2822
  #~ msgstr "دقت کنید که نکاک متن ها اول از تابع وردپرس عبور خواهند کرد"
2823
 
2824
  #~ msgid "Warning"
@@ -2834,7 +3407,9 @@ msgstr "http://www.elliotcondon.com/"
2834
  #~ msgstr "درون ریزی/برون بری"
2835
 
2836
  #~ msgid "Field groups are created in order from lowest to highest"
2837
- #~ msgstr "گروه های زمینه به ترتیب از کوچکترین شماره تا بزرگترین شماره نمایش داده می شوند"
 
 
2838
 
2839
  #~ msgid "Upgrading data to "
2840
  #~ msgstr "به روز رسانی داده ها به %s"
@@ -2864,13 +3439,15 @@ msgstr "http://www.elliotcondon.com/"
2864
  #~ msgstr "نسخه حرفه ای لازم است"
2865
 
2866
  #~ msgid ""
2867
- #~ "We have detected an issue which requires your attention: This website makes use of premium add-ons "
2868
- #~ "(%s) which are no longer compatible with ACF."
2869
  #~ msgstr ""
2870
- #~ "مشکلی مشاهده شده است که نیاز به توجه شما دارد. این وب سایت مجاز به استفاده از افزودنی های پولی (%s) "
2871
- #~ "می باشد که دیگر سازگار نیستند"
2872
 
2873
- #~ msgid "Don't panic, you can simply roll back the plugin and continue using ACF as you know it!"
 
 
2874
  #~ msgstr "مشکلی نیست. شما می توانید به نسخه ای که به آن عادت دارید برگردید!"
2875
 
2876
  #~ msgid "Roll back to ACF v%s"
@@ -2896,8 +3473,11 @@ msgstr "http://www.elliotcondon.com/"
2896
  #~ msgid "Load & Save Terms to Post"
2897
  #~ msgstr "خواندن و ذخیره دسته(ترم)ها برای نوشته"
2898
 
2899
- #~ msgid "Load value based on the post's terms and update the post's terms on save"
2900
- #~ msgstr "مقدار بر اساس دسته(ترم) نوشته خوانده شود و دسته های نوشته را در هنگام ذخیره به روز رسانی کند"
 
 
 
2901
 
2902
  #~ msgid "Controls how HTML tags are rendered"
2903
  #~ msgstr "کنترل چگونگی نمایش تگ های HTML"
@@ -2966,8 +3546,10 @@ msgstr "http://www.elliotcondon.com/"
2966
  #~ msgid "No ACF groups selected"
2967
  #~ msgstr "هیچ گروه زمینه دلخواه پیشرفته ای انتخاب نشده است."
2968
 
2969
- #~ msgid "Create infinite rows of repeatable data with this versatile interface!"
2970
- #~ msgstr "ایجاد بی نهایت سطر از داده های تکرار شونده به وسیله این زمینه چند منظوره!"
 
 
2971
 
2972
  #~ msgid "Create image galleries in a simple and intuitive interface!"
2973
  #~ msgstr "ایجاد گالری های تصاویر در یک رابط کاربری ساده و دیداری!"
@@ -2983,8 +3565,8 @@ msgstr "http://www.elliotcondon.com/"
2983
 
2984
  #~ msgid "Creates a select field populated with Gravity Forms!"
2985
  #~ msgstr ""
2986
- #~ "زمینه جدید از نوع انتخاب می سازد که می توانید یکی از فرم های GravityForms که ساخته اید را از آن "
2987
- #~ "انتخاب کنید"
2988
 
2989
  #~ msgid "Date & Time Picker"
2990
  #~ msgstr "تاریخ و زمان"
@@ -3005,16 +3587,18 @@ msgstr "http://www.elliotcondon.com/"
3005
  #~ msgstr "افزودنی های افزونه زمینه های دلخواه پیشرفته"
3006
 
3007
  #~ msgid ""
3008
- #~ "The following Add-ons are available to increase the functionality of the Advanced Custom Fields "
3009
- #~ "plugin."
3010
- #~ msgstr "افزودنی های زیر برای افزایش قابلیت های افزونه زمینه های دلخواه پیشرفته قابل استفاده هستند."
 
 
3011
 
3012
  #~ msgid ""
3013
- #~ "Each Add-on can be installed as a separate plugin (receives updates) or included in your theme (does "
3014
- #~ "not receive updates)."
3015
  #~ msgstr ""
3016
- #~ "هر افزودنی می تواند به عنوان یک افزونه جدا ( قابل بروزرسانی) نصب شود و یا در پوسته شما (غیرقابل "
3017
- #~ "بروزرسانی) قرار گیرد."
3018
 
3019
  #~ msgid "Purchase & Install"
3020
  #~ msgstr "خرید و نصب"
@@ -3028,20 +3612,25 @@ msgstr "http://www.elliotcondon.com/"
3028
  #~ msgid "Export to PHP"
3029
  #~ msgstr "برون بری به فرمت PHP"
3030
 
3031
- #~ msgid "ACF will create a .xml export file which is compatible with the native WP import plugin."
 
 
3032
  #~ msgstr ""
3033
- #~ "افزونه زمینه های دلخواه پیشرفته یک پرونده خروجی (.xml) را ایجاد خواهد کرد که با افزونه Wordpress "
3034
- #~ "Importer سازگار است."
3035
 
3036
  #~ msgid ""
3037
- #~ "Imported field groups <b>will</b> appear in the list of editable field groups. This is useful for "
3038
- #~ "migrating fields groups between Wp websites."
3039
  #~ msgstr ""
3040
- #~ "گروه های زمینه درون ریزی شده در لیست گروه های زمینه قابل ویرایش نمایش داده <b>خواهند شد</b>. این روش "
3041
- #~ "برای انتقال گروه های زمینه در بین سایت های وردپرسی مفید است."
 
3042
 
3043
  #~ msgid "Select field group(s) from the list and click \"Export XML\""
3044
- #~ msgstr "گروه زمینه را از لیست انتخاب کنید و سپس روی دکمه ((برون بری به فرمت XML)) کلیک کنید"
 
 
3045
 
3046
  #~ msgid "Save the .xml file when prompted"
3047
  #~ msgstr "فایل .xml را وقتی آماده شد، ذخیره کنید"
@@ -3062,26 +3651,33 @@ msgstr "http://www.elliotcondon.com/"
3062
  #~ msgstr "همین ! از وردپرس لذت ببرید"
3063
 
3064
  #~ msgid "ACF will create the PHP code to include in your theme."
3065
- #~ msgstr "افزونه زمینه های دلخواه پیشرفته کد های PHP برای اضافه کردن در پوسته در اختیاران قرار می دهد"
 
 
3066
 
3067
  #~ msgid ""
3068
- #~ "Registered field groups <b>will not</b> appear in the list of editable field groups. This is useful "
3069
- #~ "for including fields in themes."
3070
  #~ msgstr ""
3071
- #~ "گروه های زمینه ساخته خواهند شد ولی قابل ویرایش <b>نخواهند بود</b>.یعنی در لیست افزونه برای ویرایش "
3072
- #~ "دیده نمی شوند. این روش برای قرار دادن زمینه ها در پوسته ها (برای مشتری) مفید است."
 
3073
 
3074
  #~ msgid ""
3075
- #~ "Please note that if you export and register field groups within the same WP, you will see duplicate "
3076
- #~ "fields on your edit screens. To fix this, please move the original field group to the trash or "
3077
- #~ "remove the code from your functions.php file."
 
3078
  #~ msgstr ""
3079
- #~ "لطفا توجه کنید که اگر از هر دو روش ذکر شما در یک وردپرس به صورت هم زمان استفاده کنید، در صفحه ویرایش "
3080
- #~ "مطالب، دو بار زمینه ها را خواهید دید. واضح است که برای حل این مشکل یا باید زمینه ها را از افزونه حذف "
3081
- #~ "کنید یا کدهای php را از پوسته و احتمالا functions.php حذف کنید."
 
3082
 
3083
  #~ msgid "Select field group(s) from the list and click \"Create PHP\""
3084
- #~ msgstr "گروه های زمینه را از لیست انتخاب کنید و سپس روی دکمه ((برون بری به فرمت PHP)) کلیک کنید"
 
 
3085
 
3086
  #~ msgid "Copy the PHP code generated"
3087
  #~ msgstr "کدهای PHP تولید شده را کپی کنید"
@@ -3089,7 +3685,8 @@ msgstr "http://www.elliotcondon.com/"
3089
  #~ msgid "Paste into your functions.php file"
3090
  #~ msgstr "در فایل functions.php پوسته خود قرار دهید"
3091
 
3092
- #~ msgid "To activate any Add-ons, edit and use the code in the first few lines."
 
3093
  #~ msgstr "برای فعالسازی افزودنی ها،چند سطر اول کدها را ویرایش و استفاده کنید"
3094
 
3095
  #~ msgid "Notes"
@@ -3099,19 +3696,23 @@ msgstr "http://www.elliotcondon.com/"
3099
  #~ msgstr "قرار دادن در پوسته"
3100
 
3101
  #~ msgid ""
3102
- #~ "The Advanced Custom Fields plugin can be included within a theme. To do so, move the ACF plugin "
3103
- #~ "inside your theme and add the following code to your functions.php file:"
 
3104
  #~ msgstr ""
3105
- #~ "افزونه زمینه های دلخواه پیشرفته وردپرس می تواند در داخل یک پوسته قرار بگیرد. برای انجام این کار، "
3106
- #~ "افزونه را به کنار پوسته تان انتقال دهید و کدهای زیر را به پرونده functions.php اضافه کنید:"
 
3107
 
3108
  #~ msgid ""
3109
- #~ "To remove all visual interfaces from the ACF plugin, you can use a constant to enable lite mode. Add "
3110
- #~ "the following code to your functions.php file <b>before</b> the include_once code:"
 
3111
  #~ msgstr ""
3112
- #~ "برای حذف همه رابط های بصری از افزونه زمینه های دلخواه پیشرفته (دیده نشدن افزونه)، می توانید از یک "
3113
- #~ "ثابت (کانستنت) برای فعال سازی حالت سبک (lite) استفاده کنید. کد زیر را به پرونده functions.php خود "
3114
- #~ "<b>قبل از</b> تابع include_once اضافه کنید:"
 
3115
 
3116
  #~ msgid "Back to export"
3117
  #~ msgstr "بازگشت به برون بری"
@@ -3123,12 +3724,13 @@ msgstr "http://www.elliotcondon.com/"
3123
  #~ msgstr "کدهای فعالسازی در افزونه ها افزایش یافته اند!"
3124
 
3125
  #~ msgid ""
3126
- #~ "Add-ons are now activated by downloading and installing individual plugins. Although these plugins "
3127
- #~ "will not be hosted on the wordpress.org repository, each Add-on will continue to receive updates in "
3128
- #~ "the usual way."
3129
  #~ msgstr ""
3130
- #~ "افزودنی ها الان با دریافت و نصب افزونه های جداگانه فعال می شوند. با اینکه این افزونه ها در مخزن "
3131
- #~ "وردپرس پشتیبانی نخواهند شد، هر افزودنی به صورت معمول به روز رسانی را دریافت خواهد کرد."
 
3132
 
3133
  #~ msgid "All previous Add-ons have been successfully installed"
3134
  #~ msgstr "تمام افزونه های قبلی با موفقیت نصب شده اند"
@@ -3139,8 +3741,12 @@ msgstr "http://www.elliotcondon.com/"
3139
  #~ msgid "Download your activated Add-ons"
3140
  #~ msgstr "افزودنی های فعال شده ی خود را دانلود کنید"
3141
 
3142
- #~ msgid "This website does not use premium Add-ons and will not be affected by this change."
3143
- #~ msgstr "این سایت از افزودنی های ویژه استفاده نمی کند و تحت تأثیر این تغییر قرار نخواهد گرفت"
 
 
 
 
3144
 
3145
  #~ msgid "Easier Development"
3146
  #~ msgstr "توسعه آسانتر"
@@ -3158,14 +3764,15 @@ msgstr "http://www.elliotcondon.com/"
3158
  #~ msgstr "زمینه رمزعبور"
3159
 
3160
  #~ msgid ""
3161
- #~ "Creating your own field type has never been easier! Unfortunately, version 3 field types are not "
3162
- #~ "compatible with version 4."
3163
  #~ msgstr ""
3164
- #~ "ساخت نوع زمینه دلخواه برای خودتان هرگز به این آسانی نبوده! متأسفانه، انواع زمینه های نسخه 3 با نسخه "
3165
- #~ "4 سازگار نیستند."
3166
 
3167
  #~ msgid "Migrating your field types is easy, please"
3168
- #~ msgstr "انتقال انواع زمینه ها آسان است. پس لطفا افزونه خود را بروزرسانی کنید."
 
3169
 
3170
  #~ msgid "follow this tutorial"
3171
  #~ msgstr "این آموزش را دنبال کنید"
@@ -3177,8 +3784,11 @@ msgstr "http://www.elliotcondon.com/"
3177
  #~ msgstr "اکشن ها و فیلترها"
3178
 
3179
  #~ msgid ""
3180
- #~ "All actions & filters have received a major facelift to make customizing ACF even easier! Please"
3181
- #~ msgstr "همه اکشن ها و فیلترها دارای تغییرات عمده ای شدند تا دلخواه سازی ACF از قبل آسانتر شود"
 
 
 
3182
 
3183
  #~ msgid "read this guide"
3184
  #~ msgstr "لطفا راهنما را مطالعه فرمایید"
@@ -3199,21 +3809,24 @@ msgstr "http://www.elliotcondon.com/"
3199
  #~ msgstr "تغییرات پایگاه داده"
3200
 
3201
  #~ msgid ""
3202
- #~ "Absolutely <strong>no</strong> changes have been made to the database between versions 3 and 4. This "
3203
- #~ "means you can roll back to version 3 without any issues."
 
3204
  #~ msgstr ""
3205
- #~ "<strong>هیچ تغییری</strong> در پایگاه داده بین نسخه 3 و 4 ایجاد نشده است. این بدین معنی است که شما "
3206
- #~ "می توانید بدون هیچ گونه مسئله ای به نسخه 3 برگردید."
 
3207
 
3208
  #~ msgid "Potential Issues"
3209
  #~ msgstr "مسائل بالقوه"
3210
 
3211
  #~ msgid ""
3212
- #~ "Do to the sizable changes surounding Add-ons, field types and action/filters, your website may not "
3213
- #~ "operate correctly. It is important that you read the full"
 
3214
  #~ msgstr ""
3215
- #~ "با توجه به تغییرات افزودنی ها، انواع زمینه ها و اکشن ها/فیلترها، ممکن است سایت شما به درستی عمل "
3216
- #~ "نکند. پس لازم است راهنمای کامل "
3217
 
3218
  #~ msgid "Migrating from v3 to v4"
3219
  #~ msgstr "مهاجرت از نسخه 3 به نسخه 4 را مطالعه کنید"
@@ -3225,10 +3838,11 @@ msgstr "http://www.elliotcondon.com/"
3225
  #~ msgstr "واقعا مهم!"
3226
 
3227
  #~ msgid ""
3228
- #~ "If you updated the ACF plugin without prior knowledge of such changes, please roll back to the latest"
 
3229
  #~ msgstr ""
3230
- #~ "اگر شما افزونه زمینه های دلخواه پیشرفته وردپرس را بدون آگاهی از آخرین تغییرات بروزرسانی کردید، لطفا "
3231
- #~ "به نسخه قبل برگردید "
3232
 
3233
  #~ msgid "version 3"
3234
  #~ msgstr "نسخه 3"
@@ -3240,11 +3854,12 @@ msgstr "http://www.elliotcondon.com/"
3240
  #~ msgstr "از شما متشکرم"
3241
 
3242
  #~ msgid ""
3243
- #~ "A <strong>BIG</strong> thank you to everyone who has helped test the version 4 beta and for all the "
3244
- #~ "support I have received."
3245
  #~ msgstr ""
3246
- #~ "یک <strong>تشکر بزرگ</strong> از شما و همه کسانی که در تست نسخه 4 بتا به من کمک کردند میکنم. برای "
3247
- #~ "تمام کمک ها و پشتیبانی هایی که دریافت کردم نیز از همه شما متشکرم."
 
3248
 
3249
  #~ msgid "Without you all, this release would not have been possible!"
3250
  #~ msgstr "بدون همه شما انتشار این نسخه امکان پذیر نبود!"
@@ -3259,21 +3874,24 @@ msgstr "http://www.elliotcondon.com/"
3259
  #~ msgstr "بازنگری"
3260
 
3261
  #~ msgid ""
3262
- #~ "Previously, all Add-ons were unlocked via an activation code (purchased from the ACF Add-ons store). "
3263
- #~ "New to v4, all Add-ons act as separate plugins which need to be individually downloaded, installed "
3264
- #~ "and updated."
3265
  #~ msgstr ""
3266
- #~ "پیش از این، قفل همه افزودنی ها از طریق یک کد فعالسازی (خریداری شده از فروشگاه افزودنی ها) باز می "
3267
- #~ "شدند.اما در نسخه 4 همه آنها به صورت افزودنی های جداگانه هستند و باید به صورت جدا دریافت، نصب و "
3268
- #~ "بروزرسانی شوند."
3269
 
3270
- #~ msgid "This page will assist you in downloading and installing each available Add-on."
 
 
3271
  #~ msgstr "این برگه به شما در دریافت و نصب هر افزودنی موجود کمک خواهد کرد."
3272
 
3273
  #~ msgid "Available Add-ons"
3274
  #~ msgstr "افزودنی های موجود"
3275
 
3276
- #~ msgid "The following Add-ons have been detected as activated on this website."
 
3277
  #~ msgstr "افزودنی های زیر به صورت فعال در این سایت شناسایی شده اند"
3278
 
3279
  #~ msgid "Installation"
@@ -3291,11 +3909,18 @@ msgstr "http://www.elliotcondon.com/"
3291
  #~ msgid "Plugins > Add New > Upload"
3292
  #~ msgstr "افزونه ها > افزودن > بارگذاری"
3293
 
3294
- #~ msgid "Use the uploader to browse, select and install your Add-on (.zip file)"
3295
- #~ msgstr "از بارگذار برای انتخاب فایل استفاده کنید. افزودنی خود را (پرونده ZIP) انتخاب و نصب نمایید"
 
 
 
3296
 
3297
- #~ msgid "Once the plugin has been uploaded and installed, click the 'Activate Plugin' link"
3298
- #~ msgstr "هنگامی که یک افزونه دریافت و نصب شده است، روی لینک (( فعال کردن افزونه)) کلیک کنید"
 
 
 
 
3299
 
3300
  #~ msgid "The Add-on is now installed and activated!"
3301
  #~ msgstr "افزودنی در حال حاضر نصب و فعال سازی شده است!"
@@ -3331,7 +3956,8 @@ msgstr "http://www.elliotcondon.com/"
3331
  #~ msgstr "آبجکت تصویر"
3332
 
3333
  #~ msgid "Text &amp; HTML entered here will appear inline with the fields"
3334
- #~ msgstr "متن و کد HTML وارد شده در اینجا در خط همراه با زمینه نمایش داده خواهد شد"
 
3335
 
3336
  #~ msgid "Enter your choices one per line"
3337
  #~ msgstr "انتخاب ها را در هر خط وارد کنید"
@@ -3366,8 +3992,12 @@ msgstr "http://www.elliotcondon.com/"
3366
  #~ msgid "Save format"
3367
  #~ msgstr "فرمت ذخیره"
3368
 
3369
- #~ msgid "This format will determin the value saved to the database and returned via the API"
3370
- #~ msgstr "این فرمت مقدار ذخیره شده در پایگاه داده را مشخص خواهد کرد و از طریق API قابل خواندن است"
 
 
 
 
3371
 
3372
  #~ msgid "\"yymmdd\" is the most versatile save format. Read more about"
3373
  #~ msgstr "\"yymmdd\" بهترین و پر استفاده ترین فرمت ذخیره است. اطلاعات بیشتر"
@@ -3378,8 +4008,12 @@ msgstr "http://www.elliotcondon.com/"
3378
  #~ msgid "This format will be seen by the user when entering a value"
3379
  #~ msgstr "این فرمت توسط کاربر در هنگام وارد کردن یک مقدار دیده خواهد شد"
3380
 
3381
- #~ msgid "\"dd/mm/yy\" or \"mm/dd/yy\" are the most used Display Formats. Read more about"
3382
- #~ msgstr "\"dd/mm/yy\" یا \"mm/dd/yy\" پر استفاده ترین قالب های نمایش تاریخ می باشند. اطلاعات بیشتر"
 
 
 
 
3383
 
3384
  #~ msgid "Field Order"
3385
  #~ msgstr "ترتیب زمینه"
2
  msgstr ""
3
  "Project-Id-Version: Advanced Custom Fields Pro v5.2.9\n"
4
  "Report-Msgid-Bugs-To: http://support.advancedcustomfields.com\n"
5
+ "POT-Creation-Date: 2017-11-23 09:16+0330\n"
6
+ "PO-Revision-Date: 2017-11-23 09:18+0330\n"
7
  "Last-Translator: Elliot Condon <e@elliotcondon.com>\n"
8
  "Language-Team: Kamel Kimiaei Fard <Kamel.Kimiaei.Fard@gmail.com>\n"
9
  "Language: fa\n"
11
  "Content-Type: text/plain; charset=UTF-8\n"
12
  "Content-Transfer-Encoding: 8bit\n"
13
  "Plural-Forms: nplurals=1; plural=0;\n"
14
+ "X-Generator: Poedit 1.8.11\n"
15
  "X-Poedit-SourceCharset: UTF-8\n"
16
+ "X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;"
17
+ "esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;"
18
+ "_nx_noop:3c,1,2;__ngettext_noop:1,2\n"
19
  "X-Poedit-Basepath: ..\n"
20
  "X-Poedit-WPHeader: acf.php\n"
21
  "X-Textdomain-Support: yes\n"
22
  "X-Poedit-SearchPath-0: .\n"
23
  "X-Poedit-SearchPathExcluded-0: *.js\n"
24
 
25
+ #: acf.php:67
26
  msgid "Advanced Custom Fields"
27
  msgstr "زمینه‌های دلخواه پیشرفته"
28
 
29
+ #: acf.php:369 includes/admin/admin.php:117
30
  msgid "Field Groups"
31
  msgstr "گروه‌های زمینه"
32
 
33
+ #: acf.php:370
34
  msgid "Field Group"
35
  msgstr "گروه زمینه"
36
 
37
+ #: acf.php:371 acf.php:403 includes/admin/admin.php:118
38
+ #: pro/fields/class-acf-field-flexible-content.php:557
39
  msgid "Add New"
40
  msgstr "افزودن"
41
 
42
+ #: acf.php:372
43
  msgid "Add New Field Group"
44
  msgstr "افزودن گروه زمینه جدید"
45
 
46
+ #: acf.php:373
47
  msgid "Edit Field Group"
48
  msgstr "ویرایش گروه زمینه"
49
 
50
+ #: acf.php:374
51
  msgid "New Field Group"
52
  msgstr "گروه زمینه جدید"
53
 
54
+ #: acf.php:375
55
  msgid "View Field Group"
56
  msgstr "مشاهده گروه زمینه"
57
 
58
+ #: acf.php:376
59
  msgid "Search Field Groups"
60
  msgstr "جستجوی گروه های زمینه"
61
 
62
+ #: acf.php:377
63
  msgid "No Field Groups found"
64
  msgstr "گروه زمینه ای یافت نشد"
65
 
66
+ #: acf.php:378
67
  msgid "No Field Groups found in Trash"
68
  msgstr "گروه زمینه ای در زباله دان یافت نشد"
69
 
70
+ #: acf.php:401 includes/admin/admin-field-group.php:182
71
+ #: includes/admin/admin-field-group.php:275
72
+ #: includes/admin/admin-field-groups.php:510
73
+ #: pro/fields/class-acf-field-clone.php:807
74
  msgid "Fields"
75
  msgstr "زمینه ها"
76
 
77
+ #: acf.php:402
78
  msgid "Field"
79
  msgstr "زمینه"
80
 
81
+ #: acf.php:404
82
  msgid "Add New Field"
83
  msgstr "زمینه جدید"
84
 
85
+ #: acf.php:405
86
  msgid "Edit Field"
87
  msgstr "ویرایش زمینه"
88
 
89
+ #: acf.php:406 includes/admin/views/field-group-fields.php:41
90
+ #: includes/admin/views/settings-info.php:105
91
  msgid "New Field"
92
  msgstr "زمینه جدید"
93
 
94
+ #: acf.php:407
95
  msgid "View Field"
96
  msgstr "نمایش زمینه"
97
 
98
+ #: acf.php:408
99
  msgid "Search Fields"
100
  msgstr "جستجوی گروه های زمینه"
101
 
102
+ #: acf.php:409
103
  msgid "No Fields found"
104
  msgstr "گروه زمینه ای یافت نشد"
105
 
106
+ #: acf.php:410
107
  msgid "No Fields found in Trash"
108
  msgstr "گروه زمینه ای در زباله دان یافت نشد"
109
 
110
+ #: acf.php:449 includes/admin/admin-field-group.php:390
111
+ #: includes/admin/admin-field-groups.php:567
112
+ msgid "Inactive"
113
  msgstr "غیرفعال"
114
 
115
+ #: acf.php:454
116
  #, php-format
117
+ msgid "Inactive <span class=\"count\">(%s)</span>"
118
+ msgid_plural "Inactive <span class=\"count\">(%s)</span>"
119
+ msgstr[0] "غیرفعال <span class=\"count\">(%s)</span>"
120
 
121
+ #: includes/admin/admin-field-group.php:68
122
+ #: includes/admin/admin-field-group.php:69
123
+ #: includes/admin/admin-field-group.php:71
 
 
124
  msgid "Field group updated."
125
  msgstr "گروه زمینه بروز شد"
126
 
127
+ #: includes/admin/admin-field-group.php:70
128
  msgid "Field group deleted."
129
  msgstr "گروه زمینه بروز حذف شد"
130
 
131
+ #: includes/admin/admin-field-group.php:73
132
  msgid "Field group published."
133
  msgstr "گروه زمینه انتشار یافت."
134
 
135
+ #: includes/admin/admin-field-group.php:74
136
  msgid "Field group saved."
137
  msgstr "گروه زمینه ذخیره شد."
138
 
139
+ #: includes/admin/admin-field-group.php:75
140
  msgid "Field group submitted."
141
  msgstr "گروه زمینه ارسال شد."
142
 
143
+ #: includes/admin/admin-field-group.php:76
144
  msgid "Field group scheduled for."
145
  msgstr "گروه زمینه برنامه ریزی انتشار پیدا کرده برای"
146
 
147
+ #: includes/admin/admin-field-group.php:77
148
  msgid "Field group draft updated."
149
  msgstr "پیش نویش گروه زمینه بروز شد."
150
 
151
+ #: includes/admin/admin-field-group.php:183
152
  msgid "Location"
153
  msgstr "مکان"
154
 
155
+ #: includes/admin/admin-field-group.php:184
156
+ #: includes/admin/tools/class-acf-admin-tool-export.php:295
157
  msgid "Settings"
158
  msgstr "تنظیمات"
159
 
160
+ #: includes/admin/admin-field-group.php:269
161
  msgid "Move to trash. Are you sure?"
162
  msgstr "انتقال به زباله دان، آیا شما مطمئنید؟"
163
 
164
+ #: includes/admin/admin-field-group.php:270
165
  msgid "checked"
166
  msgstr "انتخاب شده"
167
 
168
+ #: includes/admin/admin-field-group.php:271
169
  msgid "No toggle fields available"
170
  msgstr "هیچ زمینه شرط پذیری موجود نیست"
171
 
172
+ #: includes/admin/admin-field-group.php:272
173
  msgid "Field group title is required"
174
  msgstr "عنوان گروه زمینه ضروری است"
175
 
176
+ #: includes/admin/admin-field-group.php:273
177
+ #: includes/api/api-field-group.php:751
178
  msgid "copy"
179
  msgstr "کپی"
180
 
181
+ #: includes/admin/admin-field-group.php:274
182
+ #: includes/admin/views/field-group-field-conditional-logic.php:54
183
+ #: includes/admin/views/field-group-field-conditional-logic.php:154
184
+ #: includes/admin/views/field-group-locations.php:29
185
+ #: includes/admin/views/html-location-group.php:3
186
+ #: includes/api/api-helpers.php:3959
187
  msgid "or"
188
  msgstr "یا"
189
 
190
+ #: includes/admin/admin-field-group.php:276
191
  msgid "Parent fields"
192
  msgstr "زمینه های مادر"
193
 
194
+ #: includes/admin/admin-field-group.php:277
195
  msgid "Sibling fields"
196
  msgstr "زمینه های هدف"
197
 
198
+ #: includes/admin/admin-field-group.php:278
199
  msgid "Move Custom Field"
200
  msgstr "جابجایی زمینه دلخواه"
201
 
202
+ #: includes/admin/admin-field-group.php:279
203
  msgid "This field cannot be moved until its changes have been saved"
204
  msgstr "این زمینه قبل از اینکه ذخیره شود نمی تواند جابجا شود"
205
 
206
+ #: includes/admin/admin-field-group.php:280
207
  msgid "Null"
208
  msgstr "خالی (null)"
209
 
210
+ #: includes/admin/admin-field-group.php:281 includes/input.php:258
211
  msgid "The changes you made will be lost if you navigate away from this page"
212
  msgstr "اگر از صفحه جاری خارج شوید ، تغییرات شما ذخیره نخواهند شد"
213
 
214
+ #: includes/admin/admin-field-group.php:282
215
  msgid "The string \"field_\" may not be used at the start of a field name"
216
  msgstr "کلمه متنی \"field_\" نباید در ابتدای نام فیلد استفاده شود."
217
 
218
+ #: includes/admin/admin-field-group.php:360
219
  msgid "Field Keys"
220
  msgstr "کایدهای زمینه"
221
 
222
+ #: includes/admin/admin-field-group.php:390
223
+ #: includes/admin/views/field-group-options.php:9
224
  msgid "Active"
225
  msgstr "فعال"
226
 
227
+ #: includes/admin/admin-field-group.php:801
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
228
  msgid "Move Complete."
229
  msgstr "انتقال کامل شد."
230
 
231
+ #: includes/admin/admin-field-group.php:802
232
  #, php-format
233
  msgid "The %s field can now be found in the %s field group"
234
  msgstr "زمینه %s اکنون در گروه زمینه %s قرار گرفته است"
235
 
236
+ #: includes/admin/admin-field-group.php:803
237
  msgid "Close Window"
238
  msgstr "بستن زمینه"
239
 
240
+ #: includes/admin/admin-field-group.php:844
241
  msgid "Please select the destination for this field"
242
  msgstr "مقصد انتقال این زمینه را مشخص کنید"
243
 
244
+ #: includes/admin/admin-field-group.php:851
245
  msgid "Move Field"
246
  msgstr "جابجایی زمینه"
247
 
248
+ #: includes/admin/admin-field-groups.php:74
249
  #, php-format
250
  msgid "Active <span class=\"count\">(%s)</span>"
251
  msgid_plural "Active <span class=\"count\">(%s)</span>"
252
  msgstr[0] "فعال <span class=\"تعداد\">(%s)</span>"
253
 
254
+ #: includes/admin/admin-field-groups.php:142
255
  #, php-format
256
  msgid "Field group duplicated. %s"
257
  msgstr "گروه زمینه تکثیر شد. %s"
258
 
259
+ #: includes/admin/admin-field-groups.php:146
260
  #, php-format
261
  msgid "%s field group duplicated."
262
  msgid_plural "%s field groups duplicated."
263
  msgstr[0] "%s گروه زمینه تکثیر شد"
264
 
265
+ #: includes/admin/admin-field-groups.php:227
266
  #, php-format
267
  msgid "Field group synchronised. %s"
268
  msgstr "گروه زمینه هماهنگ شد. %s"
269
 
270
+ #: includes/admin/admin-field-groups.php:231
271
  #, php-format
272
  msgid "%s field group synchronised."
273
  msgid_plural "%s field groups synchronised."
274
  msgstr[0] "گروه زمینه %s هماهنگ شده است"
275
 
276
+ #: includes/admin/admin-field-groups.php:394
277
+ #: includes/admin/admin-field-groups.php:557
278
  msgid "Sync available"
279
  msgstr "هماهنگ سازی موجود است"
280
 
281
+ #: includes/admin/admin-field-groups.php:507 includes/forms/form-front.php:38
282
+ #: pro/fields/class-acf-field-gallery.php:355
283
  msgid "Title"
284
  msgstr "عنوان"
285
 
286
+ #: includes/admin/admin-field-groups.php:508
287
+ #: includes/admin/views/field-group-options.php:96
288
+ #: includes/admin/views/install-network.php:21
289
+ #: includes/admin/views/install-network.php:29
290
+ #: pro/fields/class-acf-field-gallery.php:382
291
  msgid "Description"
292
  msgstr "توضیحات"
293
 
294
+ #: includes/admin/admin-field-groups.php:509
295
  msgid "Status"
296
  msgstr "وضعیت"
297
 
298
+ #. Description of the plugin/theme
299
+ #: includes/admin/admin-field-groups.php:607
300
+ msgid "Customise WordPress with powerful, professional and intuitive fields."
301
+ msgstr "سفارشی کردن وردپرس با زمینه های قدرتمند، حرفه ای و بصری."
302
+
303
+ #: includes/admin/admin-field-groups.php:609
304
+ #: includes/admin/settings-info.php:76
305
+ #: pro/admin/views/html-settings-updates.php:107
306
  msgid "Changelog"
307
  msgstr "تغییرات"
308
 
309
+ #: includes/admin/admin-field-groups.php:614
310
  #, php-format
311
  msgid "See what's new in <a href=\"%s\">version %s</a>."
312
  msgstr "مشاهده موارد جدید <a href=\"%s\">نسخه %s</a>."
313
 
314
+ #: includes/admin/admin-field-groups.php:617
315
  msgid "Resources"
316
  msgstr "منابع"
317
 
318
+ #: includes/admin/admin-field-groups.php:619
319
+ msgid "Website"
320
+ msgstr "وب سایت"
 
 
 
 
 
 
 
 
 
 
 
 
321
 
322
+ #: includes/admin/admin-field-groups.php:620
323
+ msgid "Documentation"
324
+ msgstr "مستندات"
325
 
326
+ #: includes/admin/admin-field-groups.php:621
327
+ msgid "Support"
328
+ msgstr "پشتیبانی"
 
 
 
 
 
 
 
 
329
 
330
+ #: includes/admin/admin-field-groups.php:623
331
+ msgid "Pro"
332
+ msgstr "پیشرفته"
333
 
334
+ #: includes/admin/admin-field-groups.php:628
335
+ #, php-format
336
+ msgid "Thank you for creating with <a href=\"%s\">ACF</a>."
337
+ msgstr "با تشکر از شما برای استفاده از <a href=\"%s\">ACF</a>."
338
 
339
+ #: includes/admin/admin-field-groups.php:667
340
  msgid "Duplicate this item"
341
  msgstr "تکثیر این زمینه"
342
 
343
+ #: includes/admin/admin-field-groups.php:667
344
+ #: includes/admin/admin-field-groups.php:683
345
+ #: includes/admin/views/field-group-field.php:49
346
+ #: pro/fields/class-acf-field-flexible-content.php:556
347
  msgid "Duplicate"
348
  msgstr "تکثیر"
349
 
350
+ #: includes/admin/admin-field-groups.php:700
351
+ #: includes/fields/class-acf-field-google-map.php:112
352
+ #: includes/fields/class-acf-field-relationship.php:656
353
+ msgid "Search"
354
+ msgstr "جستجو"
355
+
356
+ #: includes/admin/admin-field-groups.php:759
357
  #, php-format
358
  msgid "Select %s"
359
  msgstr "انتخاب %s"
360
 
361
+ #: includes/admin/admin-field-groups.php:767
362
  msgid "Synchronise field group"
363
  msgstr "هماهنگ سازی گروه زمینه"
364
 
365
+ #: includes/admin/admin-field-groups.php:767
366
+ #: includes/admin/admin-field-groups.php:797
367
  msgid "Sync"
368
  msgstr "هماهنگ"
369
 
370
+ #: includes/admin/admin-field-groups.php:779
371
+ msgid "Apply"
372
+ msgstr "اعمال"
373
+
374
+ #: includes/admin/admin-field-groups.php:797
375
+ msgid "Bulk Actions"
376
+ msgstr "اعمال گروهی"
377
+
378
+ #: includes/admin/admin-tools.php:116
379
+ #: includes/admin/views/html-admin-tools.php:21
380
+ msgid "Tools"
381
+ msgstr "ابزارها"
382
+
383
+ #: includes/admin/admin.php:113
384
+ #: includes/admin/views/field-group-options.php:118
385
+ msgid "Custom Fields"
386
+ msgstr "زمینه های دلخواه"
387
+
388
+ #: includes/admin/install-network.php:88 includes/admin/install.php:70
389
+ #: includes/admin/install.php:121
390
+ msgid "Upgrade Database"
391
+ msgstr "به‌روزرسانی پایگاه داده"
392
+
393
+ #: includes/admin/install-network.php:140
394
+ msgid "Review sites & upgrade"
395
+ msgstr "بازبینی و به‌روزرسانی سایت‌ها"
396
+
397
+ #: includes/admin/install.php:187
398
+ msgid "Error validating request"
399
+ msgstr "خطا در اعتبار سنجی درخواست"
400
+
401
+ #: includes/admin/install.php:210 includes/admin/views/install.php:105
402
+ msgid "No updates available."
403
+ msgstr "به‌روزرسانی موجود نیست."
404
+
405
+ #: includes/admin/settings-addons.php:51
406
+ #: includes/admin/views/settings-addons.php:3
407
  msgid "Add-ons"
408
  msgstr "افزودنی ها"
409
 
410
+ #: includes/admin/settings-addons.php:87
411
  msgid "<b>Error</b>. Could not load add-ons list"
412
  msgstr "<b>خطا</b>. لیست افزونه ها قابل خواندن نیست"
413
 
414
+ #: includes/admin/settings-info.php:50
415
  msgid "Info"
416
  msgstr "اطلاعات"
417
 
418
+ #: includes/admin/settings-info.php:75
419
  msgid "What's New"
420
  msgstr "چه چیز جدید است"
421
 
422
+ #: includes/admin/tools/class-acf-admin-tool-export.php:33
423
+ msgid "Export Field Groups"
424
+ msgstr "برون بری گروه های زمینه"
425
 
426
+ #: includes/admin/tools/class-acf-admin-tool-export.php:38
427
+ #: includes/admin/tools/class-acf-admin-tool-export.php:342
428
+ #: includes/admin/tools/class-acf-admin-tool-export.php:371
429
+ msgid "Generate PHP"
430
+ msgstr "تولید کد PHP"
431
+
432
+ #: includes/admin/tools/class-acf-admin-tool-export.php:97
433
+ #: includes/admin/tools/class-acf-admin-tool-export.php:135
434
  msgid "No field groups selected"
435
  msgstr "گروه زمینه ای انتخاب نشده است"
436
 
437
+ #: includes/admin/tools/class-acf-admin-tool-export.php:174
438
+ #, php-format
439
+ msgid "Exported 1 field group."
440
+ msgid_plural "Exported %s field groups."
441
+ msgstr[0] "خروجی تعداد %s گروه ایجاد شد"
442
+
443
+ #: includes/admin/tools/class-acf-admin-tool-export.php:241
444
+ #: includes/admin/tools/class-acf-admin-tool-export.php:269
445
+ msgid "Select Field Groups"
446
+ msgstr "انتخاب گروه های زمینه"
447
+
448
+ #: includes/admin/tools/class-acf-admin-tool-export.php:336
449
+ msgid ""
450
+ "Select the field groups you would like to export and then select your export "
451
+ "method. Use the download button to export to a .json file which you can then "
452
+ "import to another ACF installation. Use the generate button to export to PHP "
453
+ "code which you can place in your theme."
454
+ msgstr ""
455
+ "گروه زمینه هایی که مایل به تهیه خروجی آنها هستید را انتخاب کنید و در ادامه "
456
+ "روش خروجی را نیز مشخص کنید. از دکمه دانلود برای خروجی فایل .json برای وارد "
457
+ "کردن در یک سایت دیگر که این افزونه نصب شده است استفاده کنید. از دکمه تولید "
458
+ "می توانید برای ساخت کد PHP برای قراردادن در قالب خود استفاده کنید."
459
+
460
+ #: includes/admin/tools/class-acf-admin-tool-export.php:341
461
+ msgid "Export File"
462
+ msgstr "خروجی فایل"
463
+
464
+ #: includes/admin/tools/class-acf-admin-tool-export.php:414
465
+ msgid ""
466
+ "The following code can be used to register a local version of the selected "
467
+ "field group(s). A local field group can provide many benefits such as faster "
468
+ "load times, version control & dynamic fields/settings. Simply copy and paste "
469
+ "the following code to your theme's functions.php file or include it within "
470
+ "an external file."
471
+ msgstr ""
472
+ "این کد می تواند برای ثبت یک نسخه محلی (لوکال)از گروه زمینه های انتخاب شده "
473
+ "استفاده شود. یک نسخه محلی فواید زیادی دارد، مثلا سرعت لود بالاتر، کنترل نسخه "
474
+ "و پویاسازی زمینه ها و تنظیماتشان. به راحتی می توانید کد زیر را در فایل "
475
+ "function.php خود کپی کنید و یا از یک فایل دیگر انرا فراخوانی نمایید."
476
+
477
+ #: includes/admin/tools/class-acf-admin-tool-export.php:446
478
+ msgid "Copy to clipboard"
479
+ msgstr "درج در حافظه موقت"
480
+
481
+ #: includes/admin/tools/class-acf-admin-tool-import.php:26
482
+ msgid "Import Field Groups"
483
+ msgstr "وارد کردن گروه های زمینه"
484
+
485
+ #: includes/admin/tools/class-acf-admin-tool-import.php:61
486
+ msgid ""
487
+ "Select the Advanced Custom Fields JSON file you would like to import. When "
488
+ "you click the import button below, ACF will import the field groups."
489
+ msgstr ""
490
+ "فایل JSON ای که قبلا از این افزونه خروجی گرفته اید را انتخاب کنید تا وارد "
491
+ "شود. زمانی که دکمه وارد کردن را در زیر کلیک کنید، سیستم اقدام به ساخت گروه "
492
+ "های زمینه خواهد نمود"
493
+
494
+ #: includes/admin/tools/class-acf-admin-tool-import.php:66
495
+ #: includes/fields/class-acf-field-file.php:35
496
+ msgid "Select File"
497
+ msgstr "انتخاب پرونده"
498
+
499
+ #: includes/admin/tools/class-acf-admin-tool-import.php:76
500
+ msgid "Import File"
501
+ msgstr "وارد کردن فایل"
502
+
503
+ #: includes/admin/tools/class-acf-admin-tool-import.php:100
504
+ #: includes/fields/class-acf-field-file.php:159
505
  msgid "No file selected"
506
  msgstr "هیچ پرونده ای انتخاب نشده"
507
 
508
+ #: includes/admin/tools/class-acf-admin-tool-import.php:113
509
  msgid "Error uploading file. Please try again"
510
  msgstr "خطا در آپلود فایل. لطفا مجدد بررسی کنید"
511
 
512
+ #: includes/admin/tools/class-acf-admin-tool-import.php:122
513
  msgid "Incorrect file type"
514
  msgstr "نوع فایل صحیح نیست"
515
 
516
+ #: includes/admin/tools/class-acf-admin-tool-import.php:139
517
  msgid "Import file empty"
518
  msgstr "فایل وارد شده خالی است"
519
 
520
+ #: includes/admin/tools/class-acf-admin-tool-import.php:247
521
  #, php-format
522
  msgid "Imported 1 field group"
523
  msgid_plural "Imported %s field groups"
524
  msgstr[0] "تعداد %s گروه زمینه وارد شد"
525
 
526
+ #: includes/admin/views/field-group-field-conditional-logic.php:28
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
527
  msgid "Conditional Logic"
528
  msgstr "منطق شرطی"
529
 
530
+ #: includes/admin/views/field-group-field-conditional-logic.php:54
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
531
  msgid "Show this field if"
532
  msgstr "نمایش این گروه زمینه اگر"
533
 
534
+ #: includes/admin/views/field-group-field-conditional-logic.php:103
535
+ #: includes/locations.php:247
536
  msgid "is equal to"
537
  msgstr "برابر شود با"
538
 
539
+ #: includes/admin/views/field-group-field-conditional-logic.php:104
540
+ #: includes/locations.php:248
541
  msgid "is not equal to"
542
  msgstr "برابر نشود با"
543
 
544
+ #: includes/admin/views/field-group-field-conditional-logic.php:141
545
+ #: includes/admin/views/html-location-rule.php:80
546
  msgid "and"
547
  msgstr "و"
548
 
549
+ #: includes/admin/views/field-group-field-conditional-logic.php:156
550
+ #: includes/admin/views/field-group-locations.php:31
551
  msgid "Add rule group"
552
  msgstr "افزودن گروه قانون"
553
 
554
+ #: includes/admin/views/field-group-field.php:41
555
+ #: pro/fields/class-acf-field-flexible-content.php:403
556
+ #: pro/fields/class-acf-field-repeater.php:296
557
  msgid "Drag to reorder"
558
  msgstr "گرفتن و کشیدن برای مرتب سازی"
559
 
560
+ #: includes/admin/views/field-group-field.php:45
561
+ #: includes/admin/views/field-group-field.php:48
562
  msgid "Edit field"
563
  msgstr "ویرایش زمینه"
564
 
565
+ #: includes/admin/views/field-group-field.php:48
566
+ #: includes/fields/class-acf-field-file.php:141
567
+ #: includes/fields/class-acf-field-image.php:122
568
+ #: includes/fields/class-acf-field-link.php:139
569
+ #: pro/fields/class-acf-field-gallery.php:342
570
  msgid "Edit"
571
  msgstr "ویرایش"
572
 
573
+ #: includes/admin/views/field-group-field.php:49
574
  msgid "Duplicate field"
575
  msgstr "تکثیر زمینه"
576
 
577
+ #: includes/admin/views/field-group-field.php:50
578
  msgid "Move field to another group"
579
  msgstr "انتقال زمینه ها به گروه دیگر"
580
 
581
+ #: includes/admin/views/field-group-field.php:50
582
  msgid "Move"
583
  msgstr "انتقال"
584
 
585
+ #: includes/admin/views/field-group-field.php:51
586
  msgid "Delete field"
587
  msgstr "حذف زمینه"
588
 
589
+ #: includes/admin/views/field-group-field.php:51
590
+ #: pro/fields/class-acf-field-flexible-content.php:555
591
  msgid "Delete"
592
  msgstr "حذف"
593
 
594
+ #: includes/admin/views/field-group-field.php:67
 
 
 
 
 
 
 
 
 
 
 
 
595
  msgid "Field Label"
596
  msgstr "برچسب زمینه"
597
 
598
+ #: includes/admin/views/field-group-field.php:68
599
  msgid "This is the name which will appear on the EDIT page"
600
  msgstr "این نامی است که در صفحه \"ویرایش\" نمایش داده خواهد شد."
601
 
602
+ #: includes/admin/views/field-group-field.php:77
603
  msgid "Field Name"
604
  msgstr "نام زمینه"
605
 
606
+ #: includes/admin/views/field-group-field.php:78
607
  msgid "Single word, no spaces. Underscores and dashes allowed"
608
  msgstr "تک کلمه، بدون فاصله. خط زیرین و خط تیره ها مجازاند"
609
 
610
+ #: includes/admin/views/field-group-field.php:87
611
  msgid "Field Type"
612
  msgstr "نوع زمینه"
613
 
614
+ #: includes/admin/views/field-group-field.php:98
615
  msgid "Instructions"
616
  msgstr "دستورالعمل ها"
617
 
618
+ #: includes/admin/views/field-group-field.php:99
619
  msgid "Instructions for authors. Shown when submitting data"
620
  msgstr "دستورالعمل هایی برای نویسندگان. هنگام ارسال داده ها نمایش داده می شوند"
621
 
622
+ #: includes/admin/views/field-group-field.php:108
623
  msgid "Required?"
624
  msgstr "لازم است؟"
625
 
626
+ #: includes/admin/views/field-group-field.php:131
627
  msgid "Wrapper Attributes"
628
  msgstr "مشخصات پوشش فیلد"
629
 
630
+ #: includes/admin/views/field-group-field.php:137
631
  msgid "width"
632
  msgstr "عرض"
633
 
634
+ #: includes/admin/views/field-group-field.php:152
635
  msgid "class"
636
  msgstr "کلاس"
637
 
638
+ #: includes/admin/views/field-group-field.php:165
639
  msgid "id"
640
  msgstr "شناسه"
641
 
642
+ #: includes/admin/views/field-group-field.php:177
643
  msgid "Close Field"
644
  msgstr "بستن زمینه"
645
 
646
+ #: includes/admin/views/field-group-fields.php:4
647
  msgid "Order"
648
  msgstr "شماره ترتیب"
649
 
650
+ #: includes/admin/views/field-group-fields.php:5
651
+ #: includes/fields/class-acf-field-button-group.php:198
652
+ #: includes/fields/class-acf-field-checkbox.php:415
653
+ #: includes/fields/class-acf-field-radio.php:306
654
+ #: includes/fields/class-acf-field-select.php:432
655
+ #: pro/fields/class-acf-field-flexible-content.php:582
656
  msgid "Label"
657
  msgstr "برچسب زمینه"
658
 
659
+ #: includes/admin/views/field-group-fields.php:6
660
+ #: includes/fields/class-acf-field-taxonomy.php:964
661
+ #: pro/fields/class-acf-field-flexible-content.php:595
662
  msgid "Name"
663
  msgstr "نام"
664
 
665
+ #: includes/admin/views/field-group-fields.php:7
666
+ msgid "Key"
667
+ msgstr "کلید"
668
+
669
+ #: includes/admin/views/field-group-fields.php:8
670
  msgid "Type"
671
  msgstr "نوع زمینه"
672
 
673
+ #: includes/admin/views/field-group-fields.php:14
674
+ msgid ""
675
+ "No fields. Click the <strong>+ Add Field</strong> button to create your "
676
+ "first field."
677
  msgstr ""
678
+ "هیچ زمینه ای وجود ندارد. روی دکمه<strong>+ افزودن زمینه</strong> کلیک کنید "
679
+ "تا اولین زمینه خود را بسازید."
680
 
681
+ #: includes/admin/views/field-group-fields.php:31
682
  msgid "+ Add Field"
683
  msgstr "+ افزودن زمینه"
684
 
685
+ #: includes/admin/views/field-group-locations.php:9
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
686
  msgid "Rules"
687
  msgstr "قوانین"
688
 
689
+ #: includes/admin/views/field-group-locations.php:10
690
+ msgid ""
691
+ "Create a set of rules to determine which edit screens will use these "
692
+ "advanced custom fields"
693
  msgstr ""
694
+ "مجموعه ای از قوانین را بسازید تا مشخص کنید در کدام صفحه ویرایش ، این زمینه "
695
+ "های دلخواه سفارشی نمایش داده شوند."
696
 
697
+ #: includes/admin/views/field-group-options.php:23
 
 
 
 
698
  msgid "Style"
699
  msgstr "شیوه نمایش"
700
 
701
+ #: includes/admin/views/field-group-options.php:30
702
  msgid "Standard (WP metabox)"
703
  msgstr "استاندارد (دارای متاباکس)"
704
 
705
+ #: includes/admin/views/field-group-options.php:31
706
  msgid "Seamless (no metabox)"
707
  msgstr "بدون متاباکس"
708
 
709
+ #: includes/admin/views/field-group-options.php:38
710
  msgid "Position"
711
  msgstr "موقعیت"
712
 
713
+ #: includes/admin/views/field-group-options.php:45
714
  msgid "High (after title)"
715
  msgstr "بالا (بعد از عنوان)"
716
 
717
+ #: includes/admin/views/field-group-options.php:46
718
  msgid "Normal (after content)"
719
  msgstr "معمولی (بعد از ادیتور متن)"
720
 
721
+ #: includes/admin/views/field-group-options.php:47
722
  msgid "Side"
723
  msgstr "کنار"
724
 
725
+ #: includes/admin/views/field-group-options.php:55
726
  msgid "Label placement"
727
  msgstr "مکان برچسب"
728
 
729
+ #: includes/admin/views/field-group-options.php:62
730
+ #: includes/fields/class-acf-field-tab.php:106
731
  msgid "Top aligned"
732
  msgstr "سمت بالا"
733
 
734
+ #: includes/admin/views/field-group-options.php:63
735
+ #: includes/fields/class-acf-field-tab.php:107
736
  msgid "Left Aligned"
737
  msgstr "سمت چپ"
738
 
739
+ #: includes/admin/views/field-group-options.php:70
740
  msgid "Instruction placement"
741
  msgstr "مکان دستورالعمل ها"
742
 
743
+ #: includes/admin/views/field-group-options.php:77
744
  msgid "Below labels"
745
  msgstr "زیر برچسب ها"
746
 
747
+ #: includes/admin/views/field-group-options.php:78
748
  msgid "Below fields"
749
  msgstr "زیر زمینه ها"
750
 
751
+ #: includes/admin/views/field-group-options.php:85
752
  msgid "Order No."
753
  msgstr "شماره ترتیب"
754
 
755
+ #: includes/admin/views/field-group-options.php:86
756
  msgid "Field groups with a lower order will appear first"
757
  msgstr "گروه ها با شماره ترتیب کمتر اول دیده می شوند"
758
 
759
+ #: includes/admin/views/field-group-options.php:97
760
  msgid "Shown in field group list"
761
  msgstr "نمایش لیست گروه زمینه"
762
 
763
+ #: includes/admin/views/field-group-options.php:107
764
  msgid "Hide on screen"
765
  msgstr "مخفی کردن در صفحه"
766
 
767
+ #: includes/admin/views/field-group-options.php:108
768
  msgid "<b>Select</b> items to <b>hide</b> them from the edit screen."
769
  msgstr "<b>انتخاب</b> آیتم ها برای <b>پنهان کردن</b> آن ها از صفحه ویرایش."
770
 
771
+ #: includes/admin/views/field-group-options.php:108
772
  msgid ""
773
+ "If multiple field groups appear on an edit screen, the first field group's "
774
+ "options will be used (the one with the lowest order number)"
775
  msgstr ""
776
+ "اگر چندین گروه زمینه در یک صفحه ویرایش نمایش داده شود،اولین تنظیمات گروه "
777
+ "زمینه استفاده خواهد شد. (یکی با کمترین شماره)"
778
 
779
+ #: includes/admin/views/field-group-options.php:115
780
  msgid "Permalink"
781
  msgstr "پیوند یکتا"
782
 
783
+ #: includes/admin/views/field-group-options.php:116
784
  msgid "Content Editor"
785
  msgstr "ویرایش گر محتوا(ادیتور اصلی)"
786
 
787
+ #: includes/admin/views/field-group-options.php:117
788
  msgid "Excerpt"
789
  msgstr "چکیده"
790
 
791
+ #: includes/admin/views/field-group-options.php:119
792
  msgid "Discussion"
793
  msgstr "گفتگو"
794
 
795
+ #: includes/admin/views/field-group-options.php:120
796
  msgid "Comments"
797
  msgstr "دیدگاه ها"
798
 
799
+ #: includes/admin/views/field-group-options.php:121
800
  msgid "Revisions"
801
  msgstr "بازنگری ها"
802
 
803
+ #: includes/admin/views/field-group-options.php:122
804
  msgid "Slug"
805
  msgstr "نامک"
806
 
807
+ #: includes/admin/views/field-group-options.php:123
808
  msgid "Author"
809
  msgstr "نویسنده"
810
 
811
+ #: includes/admin/views/field-group-options.php:124
812
  msgid "Format"
813
  msgstr "فرمت"
814
 
815
+ #: includes/admin/views/field-group-options.php:125
816
  msgid "Page Attributes"
817
  msgstr "صفات برگه"
818
 
819
+ #: includes/admin/views/field-group-options.php:126
820
+ #: includes/fields/class-acf-field-relationship.php:670
821
  msgid "Featured Image"
822
  msgstr "تصویر شاخص"
823
 
824
+ #: includes/admin/views/field-group-options.php:127
825
  msgid "Categories"
826
  msgstr "دسته ها"
827
 
828
+ #: includes/admin/views/field-group-options.php:128
829
  msgid "Tags"
830
  msgstr "برچسب ها"
831
 
832
+ #: includes/admin/views/field-group-options.php:129
833
  msgid "Send Trackbacks"
834
  msgstr "ارسال بازتاب ها"
835
 
836
+ #: includes/admin/views/html-location-group.php:3
837
+ msgid "Show this field group if"
838
+ msgstr "نمایش این گروه زمینه اگر"
839
+
840
+ #: includes/admin/views/install-network.php:4
841
+ msgid "Upgrade Sites"
842
+ msgstr "ارتقاء سایت"
843
+
844
+ #: includes/admin/views/install-network.php:9
845
+ #: includes/admin/views/install.php:3
846
+ msgid "Advanced Custom Fields Database Upgrade"
847
+ msgstr "به‌روزرسانی پایگاه داده زمینه های دلخواه پیشرفته"
848
+
849
+ #: includes/admin/views/install-network.php:11
850
+ #, php-format
851
+ msgid ""
852
+ "The following sites require a DB upgrade. Check the ones you want to update "
853
+ "and then click %s."
854
+ msgstr "این سایت ها نیاز به به روز رسانی دارند برای انجام %s کلیک کنید."
855
+
856
+ #: includes/admin/views/install-network.php:20
857
+ #: includes/admin/views/install-network.php:28
858
+ msgid "Site"
859
+ msgstr "سایت"
860
+
861
+ #: includes/admin/views/install-network.php:48
862
+ #, php-format
863
+ msgid "Site requires database upgrade from %s to %s"
864
+ msgstr "سایت نیاز به به‌روزرسانی از %s به %s دارد"
865
+
866
+ #: includes/admin/views/install-network.php:50
867
+ msgid "Site is up to date"
868
+ msgstr "سایت به روز است"
869
+
870
+ #: includes/admin/views/install-network.php:63
871
+ #, php-format
872
+ msgid ""
873
+ "Database Upgrade complete. <a href=\"%s\">Return to network dashboard</a>"
874
+ msgstr ""
875
+ "به روزرسانی دیتابیس انجام شد. <a href=\"%s\">بازگشت به پیشخوان شبکه</a>"
876
+
877
+ #: includes/admin/views/install-network.php:102
878
+ #: includes/admin/views/install-notice.php:42
879
+ msgid ""
880
+ "It is strongly recommended that you backup your database before proceeding. "
881
+ "Are you sure you wish to run the updater now?"
882
+ msgstr ""
883
+ "قویا توصیه می شود از بانک اطلاعاتی خود قبل از هر کاری پشتیبان تهیه کنید. آیا "
884
+ "مایلید به روز رسانی انجام شود؟"
885
+
886
+ #: includes/admin/views/install-network.php:158
887
+ msgid "Upgrade complete"
888
+ msgstr "به‌روزرسانی انجام شد"
889
+
890
+ #: includes/admin/views/install-network.php:162
891
+ #: includes/admin/views/install.php:9
892
+ #, php-format
893
+ msgid "Upgrading data to version %s"
894
+ msgstr "به روز رسانی داده ها به نسحه %s"
895
+
896
+ #: includes/admin/views/install-notice.php:8
897
+ #: pro/fields/class-acf-field-repeater.php:25
898
+ msgid "Repeater"
899
+ msgstr "زمینه تکرار کننده"
900
+
901
+ #: includes/admin/views/install-notice.php:9
902
+ #: pro/fields/class-acf-field-flexible-content.php:25
903
+ msgid "Flexible Content"
904
+ msgstr "محتوای انعطاف پذیر"
905
+
906
+ #: includes/admin/views/install-notice.php:10
907
+ #: pro/fields/class-acf-field-gallery.php:25
908
+ msgid "Gallery"
909
+ msgstr "گالری"
910
+
911
+ #: includes/admin/views/install-notice.php:11
912
+ #: pro/locations/class-acf-location-options-page.php:26
913
+ msgid "Options Page"
914
+ msgstr "برگه تنظیمات"
915
+
916
+ #: includes/admin/views/install-notice.php:26
917
+ msgid "Database Upgrade Required"
918
+ msgstr "به روزرسانی دیتابیس لازم است"
919
+
920
+ #: includes/admin/views/install-notice.php:28
921
+ #, php-format
922
+ msgid "Thank you for updating to %s v%s!"
923
+ msgstr "از شما برای بروزرسانی به آخرین نسخه %s v%s ممنون هستیم!"
924
+
925
+ #: includes/admin/views/install-notice.php:28
926
+ msgid ""
927
+ "Before you start using the new awesome features, please update your database "
928
+ "to the newest version."
929
+ msgstr ""
930
+ "قبل از اینکه از تمام امکانات شگفت انگیز جدید استفاده کنید لازم است بانک "
931
+ "اطلاعاتی را به روز کنید"
932
+
933
+ #: includes/admin/views/install-notice.php:31
934
+ #, php-format
935
+ msgid ""
936
+ "Please also ensure any premium add-ons (%s) have first been updated to the "
937
+ "latest version."
938
+ msgstr ""
939
+
940
+ #: includes/admin/views/install.php:7
941
+ msgid "Reading upgrade tasks..."
942
+ msgstr "در حال خواندن مراحل به روزرسانی..."
943
+
944
+ #: includes/admin/views/install.php:11
945
+ #, php-format
946
+ msgid "Database Upgrade complete. <a href=\"%s\">See what's new</a>"
947
+ msgstr ""
948
+
949
+ #: includes/admin/views/settings-addons.php:17
950
  msgid "Download & Install"
951
  msgstr "دانلود و نصب"
952
 
953
+ #: includes/admin/views/settings-addons.php:36
954
  msgid "Installed"
955
  msgstr "نصب شده"
956
 
957
+ #: includes/admin/views/settings-info.php:3
958
  msgid "Welcome to Advanced Custom Fields"
959
  msgstr "به افزونه زمینه های دلخواه پیشرفته خوش آمدید!"
960
 
961
+ #: includes/admin/views/settings-info.php:4
962
  #, php-format
963
+ msgid ""
964
+ "Thank you for updating! ACF %s is bigger and better than ever before. We "
965
+ "hope you like it."
966
  msgstr ""
967
+ "از اینکه به روزرسانی کردید متشکریم! افزونه زمینه دلخواه پیشرفته %s بزرگتر و "
968
+ "بهتر از قبل شده است. امیدواریم لذت ببرید."
969
 
970
+ #: includes/admin/views/settings-info.php:17
971
  msgid "A smoother custom field experience"
972
  msgstr "احساس بهتر در استفاده از زمینه دلخواه"
973
 
974
+ #: includes/admin/views/settings-info.php:22
975
  msgid "Improved Usability"
976
  msgstr "کاربری بهینه شده"
977
 
978
+ #: includes/admin/views/settings-info.php:23
979
  msgid ""
980
+ "Including the popular Select2 library has improved both usability and speed "
981
+ "across a number of field types including post object, page link, taxonomy "
982
+ "and select."
983
  msgstr ""
984
+ "استفاده از کتابخانه محبوب Select2 باعث سرعت در عملکرد و کاربری بهتر در انواع "
985
+ "زمینه هاشامل آبجکت نوشته، پیوند(لینک) صفحه ، طبقه بندی و زمینه های "
986
+ "انتخاب(Select) شده است"
987
 
988
+ #: includes/admin/views/settings-info.php:27
989
  msgid "Improved Design"
990
  msgstr "طراحی بهینه شده"
991
 
992
+ #: includes/admin/views/settings-info.php:28
993
  msgid ""
994
+ "Many fields have undergone a visual refresh to make ACF look better than "
995
+ "ever! Noticeable changes are seen on the gallery, relationship and oEmbed "
996
+ "(new) fields!"
997
  msgstr ""
998
+ "بسیاری از زمینه ها از نظر ظاهری باز طراحی شدند تا این افزونه از قبل بهتر شده "
999
+ "باشد. تغییرات چشم گیر در گالری و ارتباط و زمینه جدید به نام oEmbed صورت "
1000
+ "گرفته است."
1001
 
1002
+ #: includes/admin/views/settings-info.php:32
1003
  msgid "Improved Data"
1004
  msgstr "داده ها بهینه شده اند"
1005
 
1006
+ #: includes/admin/views/settings-info.php:33
1007
  msgid ""
1008
+ "Redesigning the data architecture has allowed sub fields to live "
1009
+ "independently from their parents. This allows you to drag and drop fields in "
1010
+ "and out of parent fields!"
1011
  msgstr ""
1012
+ "بازطراحی معماری داده ها این اجازه را به زمینه های زیرمجموعه داده است که بدون "
1013
+ "زمینه های والد باقی بمانند. این به شما کمک می کند که زمینه ها را از یک فیلد "
1014
+ "اصلی خارج یا به آن وارد نمایید !"
1015
 
1016
+ #: includes/admin/views/settings-info.php:39
1017
  msgid "Goodbye Add-ons. Hello PRO"
1018
  msgstr "خداحافظ افزودنی ها و سلام به نسخه حرفه ای"
1019
 
1020
+ #: includes/admin/views/settings-info.php:44
1021
  msgid "Introducing ACF PRO"
1022
  msgstr "معرفی نسخه حرفه ای"
1023
 
1024
+ #: includes/admin/views/settings-info.php:45
1025
+ msgid ""
1026
+ "We're changing the way premium functionality is delivered in an exciting way!"
1027
+ msgstr ""
1028
+ "ما در حال تغییر راه عملکردهای پولی افزونه به شیوه ای هیجان انگیز هستیم!"
1029
 
1030
+ #: includes/admin/views/settings-info.php:46
1031
  #, php-format
1032
  msgid ""
1033
+ "All 4 premium add-ons have been combined into a new <a href=\"%s\">Pro "
1034
+ "version of ACF</a>. With both personal and developer licenses available, "
1035
+ "premium functionality is more affordable and accessible than ever before!"
1036
  msgstr ""
1037
+ "هر چهار افزدونی پولی یکی شده و تحت عنوان <a href=\"%s\">نسخه حرفه ای (Pro) </"
1038
+ "a> از افزونه زمینه های دلخواه معرفی شده اند. دو نسخه شخصی و توسعه دهنده "
1039
+ "موجود است که در هر دو این امکانات بهتر و دسترس تر از قبل موجود است!"
1040
 
1041
+ #: includes/admin/views/settings-info.php:50
1042
  msgid "Powerful Features"
1043
  msgstr "امکانات قدرتمند"
1044
 
1045
+ #: includes/admin/views/settings-info.php:51
1046
  msgid ""
1047
+ "ACF PRO contains powerful features such as repeatable data, flexible content "
1048
+ "layouts, a beautiful gallery field and the ability to create extra admin "
1049
+ "options pages!"
1050
  msgstr ""
1051
+ "نسخه حرفه دارای امکانات قدرتمندی نظیر داده های تکرارپذیر، محتوای منعطف، یک "
1052
+ "زمینه گالری زیبا و امکان ساخت صفحات تنظیمات می باشد !"
1053
 
1054
+ #: includes/admin/views/settings-info.php:52
1055
  #, php-format
1056
  msgid "Read more about <a href=\"%s\">ACF PRO features</a>."
1057
  msgstr "اطلاعات بیشتر در <a href=\"%s\">امکانات نسخه حرفه ای</a>."
1058
 
1059
+ #: includes/admin/views/settings-info.php:56
1060
  msgid "Easy Upgrading"
1061
  msgstr "به روزرسانی آسان"
1062
 
1063
+ #: includes/admin/views/settings-info.php:57
1064
  #, php-format
1065
  msgid ""
1066
+ "To help make upgrading easy, <a href=\"%s\">login to your store account</a> "
1067
+ "and claim a free copy of ACF PRO!"
1068
  msgstr ""
1069
+ "برای به روزرسانی ساده <a href=\"%s\"> به بخش کاربری خود در فروشگاه وارد شوید "
1070
+ "</a> و یک نسخه از ویرایش حرفه ای را دانلود کنید!"
1071
 
1072
+ #: includes/admin/views/settings-info.php:58
1073
  #, php-format
1074
  msgid ""
1075
+ "We also wrote an <a href=\"%s\">upgrade guide</a> to answer any questions, "
1076
+ "but if you do have one, please contact our support team via the <a href=\"%s"
1077
+ "\">help desk</a>"
1078
  msgstr ""
1079
+ "همچنین یک <a href=\"%s\"> راهنمای به روزرسانی</a> برای پاسخ به سوالات نوشته "
1080
+ "ایم ولی اگر هنوز سوالی دارید از <a href=\"%s\">تیم پشتیبانی</a> بپرسید "
1081
 
1082
+ #: includes/admin/views/settings-info.php:66
1083
  msgid "Under the Hood"
1084
  msgstr "در پشت قضیه"
1085
 
1086
+ #: includes/admin/views/settings-info.php:71
1087
  msgid "Smarter field settings"
1088
  msgstr "تنظیمات زمینه ها هوشمندتر شدند"
1089
 
1090
+ #: includes/admin/views/settings-info.php:72
1091
  msgid "ACF now saves its field settings as individual post objects"
1092
+ msgstr ""
1093
+ "افزونه اکنون تنظیمات زمینه ها را به عنوان آبجکت ها مختلف نوشته ذخیره می کند"
1094
 
1095
+ #: includes/admin/views/settings-info.php:76
1096
  msgid "More AJAX"
1097
  msgstr "ایجکس بیشتر"
1098
 
1099
+ #: includes/admin/views/settings-info.php:77
1100
  msgid "More fields use AJAX powered search to speed up page loading"
1101
  msgstr "زمینه های بیشتری از جستجوهای ایجکس برای کاهش بار صفحه استفاده می کنند"
1102
 
1103
+ #: includes/admin/views/settings-info.php:81
1104
  msgid "Local JSON"
1105
  msgstr "JSON های لوکال"
1106
 
1107
+ #: includes/admin/views/settings-info.php:82
1108
  msgid "New auto export to JSON feature improves speed"
1109
  msgstr "امکان جدید خرجی خودکار JSON سرعت را بهبود بخشیده است"
1110
 
1111
+ #: includes/admin/views/settings-info.php:88
1112
  msgid "Better version control"
1113
  msgstr "کنترل نسخه بهتر"
1114
 
1115
+ #: includes/admin/views/settings-info.php:89
1116
+ msgid ""
1117
+ "New auto export to JSON feature allows field settings to be version "
1118
+ "controlled"
1119
  msgstr "اکنون با خروجی جدید JSON امکان کنترل نسخه بهتر را فراهم کردیم"
1120
 
1121
+ #: includes/admin/views/settings-info.php:93
1122
  msgid "Swapped XML for JSON"
1123
  msgstr "جابجایی XML با JSON"
1124
 
1125
+ #: includes/admin/views/settings-info.php:94
1126
  msgid "Import / Export now uses JSON in favour of XML"
1127
  msgstr "اکنون خروجی و ورودی از JSON استفاده می کند"
1128
 
1129
+ #: includes/admin/views/settings-info.php:98
1130
  msgid "New Forms"
1131
  msgstr "فرم های جدید"
1132
 
1133
+ #: includes/admin/views/settings-info.php:99
1134
  msgid "Fields can now be mapped to comments, widgets and all user forms!"
1135
+ msgstr ""
1136
+ "گزینه ها اکنون می توانند به نظرات، ابزارک ها و حتی فرم های مربوط به کاربران "
1137
+ "متصل شوند !"
1138
 
1139
+ #: includes/admin/views/settings-info.php:106
1140
  msgid "A new field for embedding content has been added"
1141
  msgstr "زمینه جدیدی برای جانمایی محتوا اضافه شده است"
1142
 
1143
+ #: includes/admin/views/settings-info.php:110
1144
  msgid "New Gallery"
1145
  msgstr "گالری جدید"
1146
 
1147
+ #: includes/admin/views/settings-info.php:111
1148
  msgid "The gallery field has undergone a much needed facelift"
1149
  msgstr "گالری دارای بهینه سازی هایی برای ارائه امکانات جدید شده است"
1150
 
1151
+ #: includes/admin/views/settings-info.php:115
1152
  msgid "New Settings"
1153
  msgstr "تنظیمات جدید"
1154
 
1155
+ #: includes/admin/views/settings-info.php:116
1156
+ msgid ""
1157
+ "Field group settings have been added for label placement and instruction "
1158
+ "placement"
1159
  msgstr "تنظیماتی به گروه زمینه برای مکان برچسب ها و توضیحات اضافه شده است"
1160
 
1161
+ #: includes/admin/views/settings-info.php:122
1162
  msgid "Better Front End Forms"
1163
  msgstr "فرم های سمت کاربر بهتر شده اند"
1164
 
1165
+ #: includes/admin/views/settings-info.php:123
1166
  msgid "acf_form() can now create a new post on submission"
1167
  msgstr "تابع acf_form می تواند در زمان ارسال نوشته تولید کند !"
1168
 
1169
+ #: includes/admin/views/settings-info.php:127
1170
  msgid "Better Validation"
1171
  msgstr "خطایابی بهتر"
1172
 
1173
+ #: includes/admin/views/settings-info.php:128
1174
  msgid "Form validation is now done via PHP + AJAX in favour of only JS"
1175
+ msgstr ""
1176
+ "خطایابی فرم (validation) اکنون از طریق PHP + AJAX به جای JS انجام می شود"
1177
 
1178
+ #: includes/admin/views/settings-info.php:132
1179
  msgid "Relationship Field"
1180
  msgstr "زمینه ارتباط"
1181
 
1182
+ #: includes/admin/views/settings-info.php:133
1183
+ msgid ""
1184
+ "New Relationship field setting for 'Filters' (Search, Post Type, Taxonomy)"
1185
  msgstr "تنظیمات جدید برای زمینه ارتباط و فیلتر کردن اضافه شده است"
1186
 
1187
+ #: includes/admin/views/settings-info.php:139
1188
  msgid "Moving Fields"
1189
  msgstr "جابجایی زمینه ها"
1190
 
1191
+ #: includes/admin/views/settings-info.php:140
1192
+ msgid ""
1193
+ "New field group functionality allows you to move a field between groups & "
1194
+ "parents"
1195
+ msgstr ""
1196
+ "عملکرد جدید گروه زمینه ها به شما امکان جابجایی زمینه ها بین گروه ها و بین "
1197
+ "گروه های والد را می دهد"
1198
 
1199
+ #: includes/admin/views/settings-info.php:144
1200
+ #: includes/fields/class-acf-field-page_link.php:25
1201
  msgid "Page Link"
1202
  msgstr "پیوند (لینک) برگه/نوشته"
1203
 
1204
+ #: includes/admin/views/settings-info.php:145
1205
  msgid "New archives group in page_link field selection"
1206
  msgstr "گروه بندی بایگانی جدید در انتخاب زمینه پیوند صفحه"
1207
 
1208
+ #: includes/admin/views/settings-info.php:149
1209
  msgid "Better Options Pages"
1210
  msgstr "صفحه تنظیمات بهتر"
1211
 
1212
+ #: includes/admin/views/settings-info.php:150
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1213
  msgid ""
1214
+ "New functions for options page allow creation of both parent and child menu "
1215
+ "pages"
 
1216
  msgstr ""
1217
+ "تنظیمات جدید برای صفحه تنظیمات اجازه ساخت هر دو صفحه منوی والد و زیرمجموعه "
1218
+ "را می دهد"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1219
 
1220
+ #: includes/admin/views/settings-info.php:159
1221
  #, php-format
1222
+ msgid "We think you'll love the changes in %s."
1223
+ msgstr "فکر می کنیم شما تغییرات در %s را دوست خواهید داشت"
 
 
 
 
 
 
 
 
 
 
 
 
 
1224
 
1225
+ #: includes/api/api-helpers.php:858
1226
  msgid "Thumbnail"
1227
  msgstr "تصویر بندانگشتی"
1228
 
1229
+ #: includes/api/api-helpers.php:859
1230
  msgid "Medium"
1231
  msgstr "متوسط"
1232
 
1233
+ #: includes/api/api-helpers.php:860
1234
  msgid "Large"
1235
  msgstr "بزرگ"
1236
 
1237
+ #: includes/api/api-helpers.php:909
1238
  msgid "Full Size"
1239
  msgstr "اندازه کامل"
1240
 
1241
+ #: includes/api/api-helpers.php:1250 includes/api/api-helpers.php:1823
1242
+ #: pro/fields/class-acf-field-clone.php:992
1243
  msgid "(no title)"
1244
  msgstr "(بدون عنوان)"
1245
 
1246
+ #: includes/api/api-helpers.php:3880
 
 
 
 
1247
  #, php-format
1248
  msgid "Image width must be at least %dpx."
1249
  msgstr "عرض تصویر باید حداقل %d پیکسل باشد."
1250
 
1251
+ #: includes/api/api-helpers.php:3885
1252
  #, php-format
1253
  msgid "Image width must not exceed %dpx."
1254
  msgstr "عرض تصویر نباید از %d پیکسل بیشتر باشد."
1255
 
1256
+ #: includes/api/api-helpers.php:3901
1257
  #, php-format
1258
  msgid "Image height must be at least %dpx."
1259
  msgstr "ارتفاع فایل باید حداقل %d پیکسل باشد."
1260
 
1261
+ #: includes/api/api-helpers.php:3906
1262
  #, php-format
1263
  msgid "Image height must not exceed %dpx."
1264
  msgstr "ارتفاع تصویر نباید از %d پیکسل بیشتر باشد."
1265
 
1266
+ #: includes/api/api-helpers.php:3924
1267
  #, php-format
1268
  msgid "File size must be at least %s."
1269
  msgstr "حجم فایل باید حداقل %s باشد."
1270
 
1271
+ #: includes/api/api-helpers.php:3929
1272
  #, php-format
1273
  msgid "File size must must not exceed %s."
1274
  msgstr "حجم فایل ها نباید از %s بیشتر باشد."
1275
 
1276
+ #: includes/api/api-helpers.php:3963
1277
  #, php-format
1278
  msgid "File type must be %s."
1279
  msgstr "نوع فایل باید %s باشد"
1280
 
1281
+ #: includes/fields.php:144
1282
+ msgid "Basic"
1283
+ msgstr "پایه"
 
 
 
 
 
 
 
 
1284
 
1285
+ #: includes/fields.php:145 includes/forms/form-front.php:47
1286
  msgid "Content"
1287
  msgstr "محتوا"
1288
 
1289
+ #: includes/fields.php:146
 
 
 
 
 
 
 
 
1290
  msgid "Choice"
1291
  msgstr "انتخاب"
1292
 
1293
+ #: includes/fields.php:147
1294
  msgid "Relational"
1295
  msgstr "رابطه"
1296
 
1297
+ #: includes/fields.php:148
1298
  msgid "jQuery"
1299
  msgstr "جی کوئری"
1300
 
1301
+ #: includes/fields.php:149 includes/fields/class-acf-field-button-group.php:177
1302
+ #: includes/fields/class-acf-field-checkbox.php:384
1303
+ #: includes/fields/class-acf-field-group.php:474
1304
+ #: includes/fields/class-acf-field-radio.php:285
1305
+ #: pro/fields/class-acf-field-clone.php:839
1306
+ #: pro/fields/class-acf-field-flexible-content.php:552
1307
+ #: pro/fields/class-acf-field-flexible-content.php:601
1308
+ #: pro/fields/class-acf-field-repeater.php:450
1309
  msgid "Layout"
1310
  msgstr "چیدمان"
1311
 
1312
+ #: includes/fields.php:326
1313
+ msgid "Field type does not exist"
1314
+ msgstr "نوع زمینه وجود ندارد"
 
 
 
 
1315
 
1316
+ #: includes/fields.php:326
1317
+ msgid "Unknown"
1318
+ msgstr "ناشناخته"
1319
 
1320
+ #: includes/fields/class-acf-field-accordion.php:24
1321
+ msgid "Accordion"
1322
+ msgstr "آکاردئونی"
1323
 
1324
+ #: includes/fields/class-acf-field-accordion.php:99
1325
+ msgid "Open"
1326
+ msgstr "باز"
1327
 
1328
+ #: includes/fields/class-acf-field-accordion.php:100
1329
+ msgid "Display this accordion as open on page load."
1330
+ msgstr "نمایش آکوردئون این به عنوان باز در بارگذاری صفحات."
 
1331
 
1332
+ #: includes/fields/class-acf-field-accordion.php:109
1333
+ msgid "Multi-expand"
1334
+ msgstr "چند گسترش"
1335
 
1336
+ #: includes/fields/class-acf-field-accordion.php:110
1337
+ msgid "Allow this accordion to open without closing others. "
1338
+ msgstr "اجاره به آکاردئون برای باز شدن بدون بستن دیگران"
 
1339
 
1340
+ #: includes/fields/class-acf-field-accordion.php:119
1341
+ #: includes/fields/class-acf-field-tab.php:114
1342
+ msgid "Endpoint"
1343
+ msgstr "نقطه پایانی"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1344
 
1345
+ #: includes/fields/class-acf-field-accordion.php:120
1346
+ msgid ""
1347
+ "Define an endpoint for the previous accordion to stop. This accordion will "
1348
+ "not be visible."
1349
+ msgstr ""
1350
 
1351
+ #: includes/fields/class-acf-field-button-group.php:24
1352
+ msgid "Button Group"
1353
+ msgstr "گروه دکمه ها"
1354
 
1355
+ #: includes/fields/class-acf-field-button-group.php:149
1356
+ #: includes/fields/class-acf-field-checkbox.php:344
1357
+ #: includes/fields/class-acf-field-radio.php:235
1358
+ #: includes/fields/class-acf-field-select.php:368
1359
  msgid "Choices"
1360
  msgstr "انتخاب ها"
1361
 
1362
+ #: includes/fields/class-acf-field-button-group.php:150
1363
+ #: includes/fields/class-acf-field-checkbox.php:345
1364
+ #: includes/fields/class-acf-field-radio.php:236
1365
+ #: includes/fields/class-acf-field-select.php:369
1366
  msgid "Enter each choice on a new line."
1367
  msgstr "هر انتخاب را در یک خط جدید وارد کنید."
1368
 
1369
+ #: includes/fields/class-acf-field-button-group.php:150
1370
+ #: includes/fields/class-acf-field-checkbox.php:345
1371
+ #: includes/fields/class-acf-field-radio.php:236
1372
+ #: includes/fields/class-acf-field-select.php:369
1373
  msgid "For more control, you may specify both a value and label like this:"
1374
  msgstr "برای کنترل بیشتر، ممکن است هر دو مقدار و برچسب را مانند زیر مشخص کنید:"
1375
 
1376
+ #: includes/fields/class-acf-field-button-group.php:150
1377
+ #: includes/fields/class-acf-field-checkbox.php:345
1378
+ #: includes/fields/class-acf-field-radio.php:236
1379
+ #: includes/fields/class-acf-field-select.php:369
1380
  msgid "red : Red"
1381
  msgstr "red : قرمز"
1382
 
1383
+ #: includes/fields/class-acf-field-button-group.php:158
1384
+ #: includes/fields/class-acf-field-page_link.php:513
1385
+ #: includes/fields/class-acf-field-post_object.php:412
1386
+ #: includes/fields/class-acf-field-radio.php:244
1387
+ #: includes/fields/class-acf-field-select.php:386
1388
+ #: includes/fields/class-acf-field-taxonomy.php:793
1389
+ #: includes/fields/class-acf-field-user.php:408
1390
+ msgid "Allow Null?"
1391
+ msgstr "آیا Null مجاز است؟"
1392
+
1393
+ #: includes/fields/class-acf-field-button-group.php:168
1394
+ #: includes/fields/class-acf-field-checkbox.php:375
1395
+ #: includes/fields/class-acf-field-color_picker.php:131
1396
+ #: includes/fields/class-acf-field-email.php:118
1397
+ #: includes/fields/class-acf-field-number.php:127
1398
+ #: includes/fields/class-acf-field-radio.php:276
1399
+ #: includes/fields/class-acf-field-range.php:148
1400
+ #: includes/fields/class-acf-field-select.php:377
1401
+ #: includes/fields/class-acf-field-text.php:119
1402
+ #: includes/fields/class-acf-field-textarea.php:102
1403
+ #: includes/fields/class-acf-field-true_false.php:135
1404
+ #: includes/fields/class-acf-field-url.php:100
1405
+ #: includes/fields/class-acf-field-wysiwyg.php:410
1406
  msgid "Default Value"
1407
  msgstr "مقدار پیش فرض"
1408
 
1409
+ #: includes/fields/class-acf-field-button-group.php:169
1410
+ #: includes/fields/class-acf-field-email.php:119
1411
+ #: includes/fields/class-acf-field-number.php:128
1412
+ #: includes/fields/class-acf-field-radio.php:277
1413
+ #: includes/fields/class-acf-field-range.php:149
1414
+ #: includes/fields/class-acf-field-text.php:120
1415
+ #: includes/fields/class-acf-field-textarea.php:103
1416
+ #: includes/fields/class-acf-field-url.php:101
1417
+ #: includes/fields/class-acf-field-wysiwyg.php:411
1418
+ msgid "Appears when creating a new post"
1419
+ msgstr "هنگام ایجاد یک نوشته جدید نمایش داده می شود"
1420
 
1421
+ #: includes/fields/class-acf-field-button-group.php:183
1422
+ #: includes/fields/class-acf-field-checkbox.php:391
1423
+ #: includes/fields/class-acf-field-radio.php:292
1424
  msgid "Horizontal"
1425
  msgstr "افقی"
1426
 
1427
+ #: includes/fields/class-acf-field-button-group.php:184
1428
+ #: includes/fields/class-acf-field-checkbox.php:390
1429
+ #: includes/fields/class-acf-field-radio.php:291
1430
+ msgid "Vertical"
1431
+ msgstr "عمودی"
 
 
1432
 
1433
+ #: includes/fields/class-acf-field-button-group.php:191
1434
+ #: includes/fields/class-acf-field-checkbox.php:408
1435
+ #: includes/fields/class-acf-field-file.php:204
1436
+ #: includes/fields/class-acf-field-image.php:188
1437
+ #: includes/fields/class-acf-field-link.php:166
1438
+ #: includes/fields/class-acf-field-radio.php:299
1439
+ #: includes/fields/class-acf-field-taxonomy.php:833
1440
  msgid "Return Value"
1441
  msgstr "مقدار بازگشت"
1442
 
1443
+ #: includes/fields/class-acf-field-button-group.php:192
1444
+ #: includes/fields/class-acf-field-checkbox.php:409
1445
+ #: includes/fields/class-acf-field-file.php:205
1446
+ #: includes/fields/class-acf-field-image.php:189
1447
+ #: includes/fields/class-acf-field-link.php:167
1448
+ #: includes/fields/class-acf-field-radio.php:300
1449
  msgid "Specify the returned value on front end"
1450
  msgstr "مقدار برگشتی در نمایش نهایی را تعیین کنید"
1451
 
1452
+ #: includes/fields/class-acf-field-button-group.php:197
1453
+ #: includes/fields/class-acf-field-checkbox.php:414
1454
+ #: includes/fields/class-acf-field-radio.php:305
1455
+ #: includes/fields/class-acf-field-select.php:431
1456
  msgid "Value"
1457
  msgstr "مقدار"
1458
 
1459
+ #: includes/fields/class-acf-field-button-group.php:199
1460
+ #: includes/fields/class-acf-field-checkbox.php:416
1461
+ #: includes/fields/class-acf-field-radio.php:307
1462
+ #: includes/fields/class-acf-field-select.php:433
1463
+ msgid "Both (Array)"
1464
+ msgstr "هر دو (آرایه)"
1465
+
1466
+ #: includes/fields/class-acf-field-checkbox.php:25
1467
+ #: includes/fields/class-acf-field-taxonomy.php:780
1468
+ msgid "Checkbox"
1469
+ msgstr "جعبه انتخاب(چک باکس)"
1470
+
1471
+ #: includes/fields/class-acf-field-checkbox.php:154
1472
+ msgid "Toggle All"
1473
+ msgstr "انتخاب همه"
1474
+
1475
+ #: includes/fields/class-acf-field-checkbox.php:221
1476
+ msgid "Add new choice"
1477
+ msgstr "درج انتخاب جدید"
1478
+
1479
+ #: includes/fields/class-acf-field-checkbox.php:353
1480
+ msgid "Allow Custom"
1481
+ msgstr "اجازه دلخواه"
1482
+
1483
+ #: includes/fields/class-acf-field-checkbox.php:358
1484
+ msgid "Allow 'custom' values to be added"
1485
+ msgstr "اجازه درج مقادیر دلخواه"
1486
+
1487
+ #: includes/fields/class-acf-field-checkbox.php:364
1488
+ msgid "Save Custom"
1489
+ msgstr "ذخیره دلخواه"
1490
+
1491
+ #: includes/fields/class-acf-field-checkbox.php:369
1492
+ msgid "Save 'custom' values to the field's choices"
1493
+ msgstr "ذخیره مقادیر دلخواه در انتخاب های زمینه"
1494
+
1495
+ #: includes/fields/class-acf-field-checkbox.php:376
1496
+ #: includes/fields/class-acf-field-select.php:378
1497
+ msgid "Enter each default value on a new line"
1498
+ msgstr "هر مقدار پیش فرض را در یک خط جدید وارد کنید"
1499
+
1500
+ #: includes/fields/class-acf-field-checkbox.php:398
1501
+ msgid "Toggle"
1502
+ msgstr "انتخاب"
1503
+
1504
+ #: includes/fields/class-acf-field-checkbox.php:399
1505
+ msgid "Prepend an extra checkbox to toggle all choices"
1506
+ msgstr "اضافه کردن چک باکس اضافی برای انتخاب همه"
1507
 
1508
+ #: includes/fields/class-acf-field-color_picker.php:25
1509
  msgid "Color Picker"
1510
  msgstr "انتخاب رنگ"
1511
 
1512
+ #: includes/fields/class-acf-field-color_picker.php:68
1513
  msgid "Clear"
1514
  msgstr "پاکسازی"
1515
 
1516
+ #: includes/fields/class-acf-field-color_picker.php:69
1517
  msgid "Default"
1518
  msgstr "پیش فرض"
1519
 
1520
+ #: includes/fields/class-acf-field-color_picker.php:70
1521
  msgid "Select Color"
1522
  msgstr "انتخاب رنگ"
1523
 
1524
+ #: includes/fields/class-acf-field-color_picker.php:71
1525
  msgid "Current Color"
1526
  msgstr "رنگ فعلی"
1527
 
1528
+ #: includes/fields/class-acf-field-date_picker.php:25
1529
  msgid "Date Picker"
1530
  msgstr "تاریخ"
1531
 
1532
+ #: includes/fields/class-acf-field-date_picker.php:33
1533
  msgctxt "Date Picker JS closeText"
1534
  msgid "Done"
1535
  msgstr "انجام شد"
1536
 
1537
+ #: includes/fields/class-acf-field-date_picker.php:34
1538
  msgctxt "Date Picker JS currentText"
1539
  msgid "Today"
1540
  msgstr "امروز"
1541
 
1542
+ #: includes/fields/class-acf-field-date_picker.php:35
1543
  msgctxt "Date Picker JS nextText"
1544
  msgid "Next"
1545
  msgstr "بعدی"
1546
 
1547
+ #: includes/fields/class-acf-field-date_picker.php:36
1548
  msgctxt "Date Picker JS prevText"
1549
  msgid "Prev"
1550
  msgstr "قبلی"
1551
 
1552
+ #: includes/fields/class-acf-field-date_picker.php:37
1553
  msgctxt "Date Picker JS weekHeader"
1554
  msgid "Wk"
1555
  msgstr "هفته"
1556
 
1557
+ #: includes/fields/class-acf-field-date_picker.php:207
1558
+ #: includes/fields/class-acf-field-date_time_picker.php:181
1559
+ #: includes/fields/class-acf-field-time_picker.php:109
1560
  msgid "Display Format"
1561
  msgstr "فرمت نمایش"
1562
 
1563
+ #: includes/fields/class-acf-field-date_picker.php:208
1564
+ #: includes/fields/class-acf-field-date_time_picker.php:182
1565
+ #: includes/fields/class-acf-field-time_picker.php:110
1566
  msgid "The format displayed when editing a post"
1567
  msgstr "قالب در زمان نمایش نوشته دیده خواهد شد"
1568
 
1569
+ #: includes/fields/class-acf-field-date_picker.php:216
1570
+ #: includes/fields/class-acf-field-date_picker.php:247
1571
+ #: includes/fields/class-acf-field-date_time_picker.php:191
1572
+ #: includes/fields/class-acf-field-date_time_picker.php:208
1573
+ #: includes/fields/class-acf-field-time_picker.php:117
1574
+ #: includes/fields/class-acf-field-time_picker.php:132
1575
+ msgid "Custom:"
1576
+ msgstr "دلخواه:"
1577
+
1578
+ #: includes/fields/class-acf-field-date_picker.php:226
1579
+ msgid "Save Format"
1580
+ msgstr "ذخیره قالب"
1581
+
1582
+ #: includes/fields/class-acf-field-date_picker.php:227
1583
+ msgid "The format used when saving a value"
1584
+ msgstr "قالب استفاده در زمان ذخیره مقدار"
1585
+
1586
+ #: includes/fields/class-acf-field-date_picker.php:237
1587
+ #: includes/fields/class-acf-field-date_time_picker.php:198
1588
+ #: includes/fields/class-acf-field-post_object.php:432
1589
+ #: includes/fields/class-acf-field-relationship.php:697
1590
+ #: includes/fields/class-acf-field-select.php:426
1591
+ #: includes/fields/class-acf-field-time_picker.php:124
1592
  msgid "Return Format"
1593
  msgstr "فرمت بازگشت"
1594
 
1595
+ #: includes/fields/class-acf-field-date_picker.php:238
1596
+ #: includes/fields/class-acf-field-date_time_picker.php:199
1597
+ #: includes/fields/class-acf-field-time_picker.php:125
1598
  msgid "The format returned via template functions"
1599
  msgstr "قالب توسط توابع پوسته نمایش داده خواهد شد"
1600
 
1601
+ #: includes/fields/class-acf-field-date_picker.php:256
1602
+ #: includes/fields/class-acf-field-date_time_picker.php:215
1603
  msgid "Week Starts On"
1604
  msgstr "اولین روز هفته"
1605
 
1606
+ #: includes/fields/class-acf-field-date_time_picker.php:25
1607
  msgid "Date Time Picker"
1608
  msgstr "انتخاب زمان"
1609
 
1610
+ #: includes/fields/class-acf-field-date_time_picker.php:33
1611
  msgctxt "Date Time Picker JS timeOnlyTitle"
1612
  msgid "Choose Time"
1613
  msgstr "انتخاب زمان"
1614
 
1615
+ #: includes/fields/class-acf-field-date_time_picker.php:34
1616
  msgctxt "Date Time Picker JS timeText"
1617
  msgid "Time"
1618
  msgstr "زمان"
1619
 
1620
+ #: includes/fields/class-acf-field-date_time_picker.php:35
1621
  msgctxt "Date Time Picker JS hourText"
1622
  msgid "Hour"
1623
  msgstr "ساعت"
1624
 
1625
+ #: includes/fields/class-acf-field-date_time_picker.php:36
1626
  msgctxt "Date Time Picker JS minuteText"
1627
  msgid "Minute"
1628
  msgstr "دقیقه"
1629
 
1630
+ #: includes/fields/class-acf-field-date_time_picker.php:37
1631
  msgctxt "Date Time Picker JS secondText"
1632
  msgid "Second"
1633
  msgstr "ثانیه"
1634
 
1635
+ #: includes/fields/class-acf-field-date_time_picker.php:38
1636
  msgctxt "Date Time Picker JS millisecText"
1637
  msgid "Millisecond"
1638
  msgstr "میلی ثانیه"
1639
 
1640
+ #: includes/fields/class-acf-field-date_time_picker.php:39
1641
  msgctxt "Date Time Picker JS microsecText"
1642
  msgid "Microsecond"
1643
  msgstr "میکرو ثانیه"
1644
 
1645
+ #: includes/fields/class-acf-field-date_time_picker.php:40
1646
  msgctxt "Date Time Picker JS timezoneText"
1647
  msgid "Time Zone"
1648
  msgstr "منطقه زمانی"
1649
 
1650
+ #: includes/fields/class-acf-field-date_time_picker.php:41
1651
  msgctxt "Date Time Picker JS currentText"
1652
  msgid "Now"
1653
  msgstr "الان"
1654
 
1655
+ #: includes/fields/class-acf-field-date_time_picker.php:42
1656
  msgctxt "Date Time Picker JS closeText"
1657
  msgid "Done"
1658
  msgstr "انجام شد"
1659
 
1660
+ #: includes/fields/class-acf-field-date_time_picker.php:43
1661
  msgctxt "Date Time Picker JS selectText"
1662
  msgid "Select"
1663
  msgstr "انتخاب"
1664
 
1665
+ #: includes/fields/class-acf-field-date_time_picker.php:45
1666
  msgctxt "Date Time Picker JS amText"
1667
  msgid "AM"
1668
  msgstr "صبح"
1669
 
1670
+ #: includes/fields/class-acf-field-date_time_picker.php:46
1671
  msgctxt "Date Time Picker JS amTextShort"
1672
  msgid "A"
1673
  msgstr "صبح"
1674
 
1675
+ #: includes/fields/class-acf-field-date_time_picker.php:49
1676
  msgctxt "Date Time Picker JS pmText"
1677
  msgid "PM"
1678
  msgstr "عصر"
1679
 
1680
+ #: includes/fields/class-acf-field-date_time_picker.php:50
1681
  msgctxt "Date Time Picker JS pmTextShort"
1682
  msgid "P"
1683
  msgstr "عصر"
1684
 
1685
+ #: includes/fields/class-acf-field-email.php:25
1686
  msgid "Email"
1687
  msgstr "پست الکترونیکی"
1688
 
1689
+ #: includes/fields/class-acf-field-email.php:127
1690
+ #: includes/fields/class-acf-field-number.php:136
1691
+ #: includes/fields/class-acf-field-password.php:71
1692
+ #: includes/fields/class-acf-field-text.php:128
1693
+ #: includes/fields/class-acf-field-textarea.php:111
1694
+ #: includes/fields/class-acf-field-url.php:109
 
1695
  msgid "Placeholder Text"
1696
  msgstr "نگهدارنده مکان متن"
1697
 
1698
+ #: includes/fields/class-acf-field-email.php:128
1699
+ #: includes/fields/class-acf-field-number.php:137
1700
+ #: includes/fields/class-acf-field-password.php:72
1701
+ #: includes/fields/class-acf-field-text.php:129
1702
+ #: includes/fields/class-acf-field-textarea.php:112
1703
+ #: includes/fields/class-acf-field-url.php:110
1704
  msgid "Appears within the input"
1705
  msgstr "در داخل ورودی نمایش داده می شود"
1706
 
1707
+ #: includes/fields/class-acf-field-email.php:136
1708
+ #: includes/fields/class-acf-field-number.php:145
1709
+ #: includes/fields/class-acf-field-password.php:80
1710
+ #: includes/fields/class-acf-field-range.php:187
1711
+ #: includes/fields/class-acf-field-text.php:137
1712
  msgid "Prepend"
1713
  msgstr "پیشوند"
1714
 
1715
+ #: includes/fields/class-acf-field-email.php:137
1716
+ #: includes/fields/class-acf-field-number.php:146
1717
+ #: includes/fields/class-acf-field-password.php:81
1718
+ #: includes/fields/class-acf-field-range.php:188
1719
+ #: includes/fields/class-acf-field-text.php:138
1720
  msgid "Appears before the input"
1721
  msgstr "قبل از ورودی نمایش داده می شود"
1722
 
1723
+ #: includes/fields/class-acf-field-email.php:145
1724
+ #: includes/fields/class-acf-field-number.php:154
1725
+ #: includes/fields/class-acf-field-password.php:89
1726
+ #: includes/fields/class-acf-field-range.php:196
1727
+ #: includes/fields/class-acf-field-text.php:146
1728
  msgid "Append"
1729
  msgstr "پسوند"
1730
 
1731
+ #: includes/fields/class-acf-field-email.php:146
1732
+ #: includes/fields/class-acf-field-number.php:155
1733
+ #: includes/fields/class-acf-field-password.php:90
1734
+ #: includes/fields/class-acf-field-range.php:197
1735
+ #: includes/fields/class-acf-field-text.php:147
1736
  msgid "Appears after the input"
1737
  msgstr "بعد از ورودی نمایش داده می شود"
1738
 
1739
+ #: includes/fields/class-acf-field-file.php:25
1740
  msgid "File"
1741
  msgstr "پرونده"
1742
 
1743
+ #: includes/fields/class-acf-field-file.php:36
1744
  msgid "Edit File"
1745
  msgstr "ویرایش پرونده"
1746
 
1747
+ #: includes/fields/class-acf-field-file.php:37
1748
  msgid "Update File"
1749
  msgstr "بروزرسانی پرونده"
1750
 
1751
+ #: includes/fields/class-acf-field-file.php:38
1752
+ #: includes/fields/class-acf-field-image.php:43 includes/media.php:57
1753
+ #: pro/fields/class-acf-field-gallery.php:44
1754
+ msgid "Uploaded to this post"
1755
+ msgstr "بارگذاری شده در این نوشته"
1756
+
1757
+ #: includes/fields/class-acf-field-file.php:130
1758
  msgid "File name"
1759
  msgstr "نام فایل"
1760
 
1761
+ #: includes/fields/class-acf-field-file.php:134
1762
+ #: includes/fields/class-acf-field-file.php:237
1763
+ #: includes/fields/class-acf-field-file.php:248
1764
+ #: includes/fields/class-acf-field-image.php:248
1765
+ #: includes/fields/class-acf-field-image.php:277
1766
+ #: pro/fields/class-acf-field-gallery.php:690
1767
+ #: pro/fields/class-acf-field-gallery.php:719
1768
  msgid "File size"
1769
  msgstr "اندازه فایل"
1770
 
1771
+ #: includes/fields/class-acf-field-file.php:143
1772
+ #: includes/fields/class-acf-field-image.php:124
1773
+ #: includes/fields/class-acf-field-link.php:140 includes/input.php:269
1774
+ #: pro/fields/class-acf-field-gallery.php:343
1775
+ #: pro/fields/class-acf-field-gallery.php:531
1776
+ msgid "Remove"
1777
+ msgstr "حذف"
1778
+
1779
+ #: includes/fields/class-acf-field-file.php:159
1780
  msgid "Add File"
1781
  msgstr "افزودن پرونده"
1782
 
1783
+ #: includes/fields/class-acf-field-file.php:210
1784
  msgid "File Array"
1785
  msgstr "آرایه فایل"
1786
 
1787
+ #: includes/fields/class-acf-field-file.php:211
1788
  msgid "File URL"
1789
  msgstr "آدرس پرونده"
1790
 
1791
+ #: includes/fields/class-acf-field-file.php:212
1792
  msgid "File ID"
1793
  msgstr "شناسه(ID) پرونده"
1794
 
1795
+ #: includes/fields/class-acf-field-file.php:219
1796
+ #: includes/fields/class-acf-field-image.php:213
1797
+ #: pro/fields/class-acf-field-gallery.php:655
1798
  msgid "Library"
1799
  msgstr "کتابخانه"
1800
 
1801
+ #: includes/fields/class-acf-field-file.php:220
1802
+ #: includes/fields/class-acf-field-image.php:214
1803
+ #: pro/fields/class-acf-field-gallery.php:656
1804
  msgid "Limit the media library choice"
1805
  msgstr "محدود کردن انتخاب کتابخانه چندرسانه ای"
1806
 
1807
+ #: includes/fields/class-acf-field-file.php:225
1808
+ #: includes/fields/class-acf-field-image.php:219
1809
+ #: includes/locations/class-acf-location-attachment.php:101
1810
+ #: includes/locations/class-acf-location-comment.php:79
1811
+ #: includes/locations/class-acf-location-nav-menu.php:102
1812
+ #: includes/locations/class-acf-location-taxonomy.php:79
1813
+ #: includes/locations/class-acf-location-user-form.php:87
1814
+ #: includes/locations/class-acf-location-user-role.php:111
1815
+ #: includes/locations/class-acf-location-widget.php:83
1816
+ #: pro/fields/class-acf-field-gallery.php:661
1817
+ msgid "All"
1818
+ msgstr "همه"
1819
+
1820
+ #: includes/fields/class-acf-field-file.php:226
1821
+ #: includes/fields/class-acf-field-image.php:220
1822
+ #: pro/fields/class-acf-field-gallery.php:662
1823
  msgid "Uploaded to post"
1824
  msgstr "بارگذاری شده در نوشته"
1825
 
1826
+ #: includes/fields/class-acf-field-file.php:233
1827
+ #: includes/fields/class-acf-field-image.php:227
1828
+ #: pro/fields/class-acf-field-gallery.php:669
1829
  msgid "Minimum"
1830
  msgstr "کمترین"
1831
 
1832
+ #: includes/fields/class-acf-field-file.php:234
1833
+ #: includes/fields/class-acf-field-file.php:245
1834
  msgid "Restrict which files can be uploaded"
1835
  msgstr "محدودیت در آپلود فایل ها"
1836
 
1837
+ #: includes/fields/class-acf-field-file.php:244
1838
+ #: includes/fields/class-acf-field-image.php:256
1839
+ #: pro/fields/class-acf-field-gallery.php:698
1840
  msgid "Maximum"
1841
  msgstr "بیشترین"
1842
 
1843
+ #: includes/fields/class-acf-field-file.php:255
1844
+ #: includes/fields/class-acf-field-image.php:285
1845
+ #: pro/fields/class-acf-field-gallery.php:727
1846
  msgid "Allowed file types"
1847
  msgstr "انواع مجاز فایل"
1848
 
1849
+ #: includes/fields/class-acf-field-file.php:256
1850
+ #: includes/fields/class-acf-field-image.php:286
1851
+ #: pro/fields/class-acf-field-gallery.php:728
1852
  msgid "Comma separated list. Leave blank for all types"
1853
  msgstr "با کامای انگلیسی جدا کرده یا برای عدم محدودیت خالی بگذارید"
1854
 
1855
+ #: includes/fields/class-acf-field-google-map.php:25
1856
  msgid "Google Map"
1857
  msgstr "نقشه گوگل"
1858
 
1859
+ #: includes/fields/class-acf-field-google-map.php:40
1860
  msgid "Locating"
1861
  msgstr "مکان یابی"
1862
 
1863
+ #: includes/fields/class-acf-field-google-map.php:41
1864
  msgid "Sorry, this browser does not support geolocation"
1865
  msgstr "با عرض پوزش، این مرورگر از موقعیت یابی جغرافیایی پشتیبانی نمی کند"
1866
 
1867
+ #: includes/fields/class-acf-field-google-map.php:113
 
 
 
 
1868
  msgid "Clear location"
1869
  msgstr "حذف مکان"
1870
 
1871
+ #: includes/fields/class-acf-field-google-map.php:114
1872
  msgid "Find current location"
1873
  msgstr "پیدا کردن مکان فعلی"
1874
 
1875
+ #: includes/fields/class-acf-field-google-map.php:117
1876
  msgid "Search for address..."
1877
  msgstr "جستجو برای آدرس . . ."
1878
 
1879
+ #: includes/fields/class-acf-field-google-map.php:147
1880
+ #: includes/fields/class-acf-field-google-map.php:158
1881
  msgid "Center"
1882
  msgstr "مرکز"
1883
 
1884
+ #: includes/fields/class-acf-field-google-map.php:148
1885
+ #: includes/fields/class-acf-field-google-map.php:159
1886
  msgid "Center the initial map"
1887
  msgstr "نقشه اولیه را وسط قرار بده"
1888
 
1889
+ #: includes/fields/class-acf-field-google-map.php:170
1890
  msgid "Zoom"
1891
  msgstr "بزرگنمایی"
1892
 
1893
+ #: includes/fields/class-acf-field-google-map.php:171
1894
  msgid "Set the initial zoom level"
1895
  msgstr "تعین مقدار بزرگنمایی اولیه"
1896
 
1897
+ #: includes/fields/class-acf-field-google-map.php:180
1898
+ #: includes/fields/class-acf-field-image.php:239
1899
+ #: includes/fields/class-acf-field-image.php:268
1900
+ #: includes/fields/class-acf-field-oembed.php:281
1901
+ #: pro/fields/class-acf-field-gallery.php:681
1902
+ #: pro/fields/class-acf-field-gallery.php:710
1903
  msgid "Height"
1904
  msgstr "ارتفاع"
1905
 
1906
+ #: includes/fields/class-acf-field-google-map.php:181
1907
  msgid "Customise the map height"
1908
  msgstr "سفارشی کردن ارتفاع نقشه"
1909
 
1910
+ #: includes/fields/class-acf-field-group.php:25
1911
+ msgid "Group"
1912
+ msgstr "گروه"
1913
+
1914
+ #: includes/fields/class-acf-field-group.php:459
1915
+ #: pro/fields/class-acf-field-repeater.php:389
1916
+ msgid "Sub Fields"
1917
+ msgstr "زمینه های زیرمجموعه"
1918
+
1919
+ #: includes/fields/class-acf-field-group.php:475
1920
+ #: pro/fields/class-acf-field-clone.php:840
1921
+ msgid "Specify the style used to render the selected fields"
1922
+ msgstr "استایل جهت نمایش فیلد انتخابی"
1923
+
1924
+ #: includes/fields/class-acf-field-group.php:480
1925
+ #: pro/fields/class-acf-field-clone.php:845
1926
+ #: pro/fields/class-acf-field-flexible-content.php:612
1927
+ #: pro/fields/class-acf-field-repeater.php:458
1928
+ msgid "Block"
1929
+ msgstr "بلوک"
1930
+
1931
+ #: includes/fields/class-acf-field-group.php:481
1932
+ #: pro/fields/class-acf-field-clone.php:846
1933
+ #: pro/fields/class-acf-field-flexible-content.php:611
1934
+ #: pro/fields/class-acf-field-repeater.php:457
1935
+ msgid "Table"
1936
+ msgstr "جدول"
1937
+
1938
+ #: includes/fields/class-acf-field-group.php:482
1939
+ #: pro/fields/class-acf-field-clone.php:847
1940
+ #: pro/fields/class-acf-field-flexible-content.php:613
1941
+ #: pro/fields/class-acf-field-repeater.php:459
1942
+ msgid "Row"
1943
+ msgstr "سطر"
1944
+
1945
+ #: includes/fields/class-acf-field-image.php:25
1946
  msgid "Image"
1947
  msgstr "تصویر"
1948
 
1949
+ #: includes/fields/class-acf-field-image.php:40
1950
  msgid "Select Image"
1951
  msgstr "انتخاب تصویر"
1952
 
1953
+ #: includes/fields/class-acf-field-image.php:41
1954
+ #: pro/fields/class-acf-field-gallery.php:42
1955
  msgid "Edit Image"
1956
  msgstr "ویرایش تصویر"
1957
 
1958
+ #: includes/fields/class-acf-field-image.php:42
1959
+ #: pro/fields/class-acf-field-gallery.php:43
1960
  msgid "Update Image"
1961
  msgstr "بروزرسانی تصویر"
1962
 
1963
+ #: includes/fields/class-acf-field-image.php:44
1964
  msgid "All images"
1965
  msgstr "تمام تصاویر"
1966
 
1967
+ #: includes/fields/class-acf-field-image.php:140
 
 
 
 
1968
  msgid "No image selected"
1969
  msgstr "هیچ تصویری انتخاب نشده"
1970
 
1971
+ #: includes/fields/class-acf-field-image.php:140
1972
  msgid "Add Image"
1973
  msgstr "افزودن تصویر"
1974
 
1975
+ #: includes/fields/class-acf-field-image.php:194
1976
  msgid "Image Array"
1977
  msgstr "آرایه تصاویر"
1978
 
1979
+ #: includes/fields/class-acf-field-image.php:195
1980
  msgid "Image URL"
1981
  msgstr "آدرس تصویر"
1982
 
1983
+ #: includes/fields/class-acf-field-image.php:196
1984
  msgid "Image ID"
1985
  msgstr "شناسه(ID) تصویر"
1986
 
1987
+ #: includes/fields/class-acf-field-image.php:203
1988
  msgid "Preview Size"
1989
  msgstr "اندازه پیش نمایش"
1990
 
1991
+ #: includes/fields/class-acf-field-image.php:204
1992
  msgid "Shown when entering data"
1993
  msgstr "هنگام وارد کردن داده ها نمایش داده می شود"
1994
 
1995
+ #: includes/fields/class-acf-field-image.php:228
1996
+ #: includes/fields/class-acf-field-image.php:257
1997
+ #: pro/fields/class-acf-field-gallery.php:670
1998
+ #: pro/fields/class-acf-field-gallery.php:699
1999
  msgid "Restrict which images can be uploaded"
2000
  msgstr "محدودیت در آپلود تصاویر"
2001
 
2002
+ #: includes/fields/class-acf-field-image.php:231
2003
+ #: includes/fields/class-acf-field-image.php:260
2004
+ #: includes/fields/class-acf-field-oembed.php:270
2005
+ #: pro/fields/class-acf-field-gallery.php:673
2006
+ #: pro/fields/class-acf-field-gallery.php:702
2007
  msgid "Width"
2008
  msgstr "عرض"
2009
 
2010
+ #: includes/fields/class-acf-field-link.php:25
2011
+ msgid "Link"
2012
+ msgstr "لینک"
2013
+
2014
+ #: includes/fields/class-acf-field-link.php:133
2015
+ msgid "Select Link"
2016
+ msgstr "انتخاب لینک"
2017
+
2018
+ #: includes/fields/class-acf-field-link.php:138
2019
+ msgid "Opens in a new window/tab"
2020
+ msgstr "در پنجره جدید باز شود"
2021
+
2022
+ #: includes/fields/class-acf-field-link.php:172
2023
+ msgid "Link Array"
2024
+ msgstr "آرایه لینک"
2025
+
2026
+ #: includes/fields/class-acf-field-link.php:173
2027
+ msgid "Link URL"
2028
+ msgstr "آدرس لینک"
2029
+
2030
+ #: includes/fields/class-acf-field-message.php:25
2031
+ #: includes/fields/class-acf-field-message.php:101
2032
+ #: includes/fields/class-acf-field-true_false.php:126
2033
  msgid "Message"
2034
  msgstr "پیام"
2035
 
2036
+ #: includes/fields/class-acf-field-message.php:110
2037
+ #: includes/fields/class-acf-field-textarea.php:139
2038
  msgid "New Lines"
2039
  msgstr "خطوط جدید"
2040
 
2041
+ #: includes/fields/class-acf-field-message.php:111
2042
+ #: includes/fields/class-acf-field-textarea.php:140
2043
  msgid "Controls how new lines are rendered"
2044
  msgstr "تنظیم کنید که خطوط جدید چگونه نمایش داده شوند"
2045
 
2046
+ #: includes/fields/class-acf-field-message.php:115
2047
+ #: includes/fields/class-acf-field-textarea.php:144
2048
  msgid "Automatically add paragraphs"
2049
  msgstr "پاراگراف ها خودکار اضافه شوند"
2050
 
2051
+ #: includes/fields/class-acf-field-message.php:116
2052
+ #: includes/fields/class-acf-field-textarea.php:145
2053
  msgid "Automatically add &lt;br&gt;"
2054
  msgstr "اضافه کردن خودکار &lt;br&gt;"
2055
 
2056
+ #: includes/fields/class-acf-field-message.php:117
2057
+ #: includes/fields/class-acf-field-textarea.php:146
2058
  msgid "No Formatting"
2059
  msgstr "بدون قالب بندی"
2060
 
2061
+ #: includes/fields/class-acf-field-message.php:124
2062
  msgid "Escape HTML"
2063
  msgstr "حذف HTML"
2064
 
2065
+ #: includes/fields/class-acf-field-message.php:125
2066
  msgid "Allow HTML markup to display as visible text instead of rendering"
2067
  msgstr "اجازه نمایش کدهای HTML به عنوان متن به جای اعمال آنها"
2068
 
2069
+ #: includes/fields/class-acf-field-number.php:25
2070
  msgid "Number"
2071
  msgstr "شماره"
2072
 
2073
+ #: includes/fields/class-acf-field-number.php:163
2074
+ #: includes/fields/class-acf-field-range.php:157
2075
  msgid "Minimum Value"
2076
  msgstr "حداقل مقدار"
2077
 
2078
+ #: includes/fields/class-acf-field-number.php:172
2079
+ #: includes/fields/class-acf-field-range.php:167
2080
  msgid "Maximum Value"
2081
  msgstr "حداکثر مقدار"
2082
 
2083
+ #: includes/fields/class-acf-field-number.php:181
2084
+ #: includes/fields/class-acf-field-range.php:177
2085
  msgid "Step Size"
2086
  msgstr "اندازه مرحله"
2087
 
2088
+ #: includes/fields/class-acf-field-number.php:219
2089
  msgid "Value must be a number"
2090
  msgstr "مقدار باید عددی باشد"
2091
 
2092
+ #: includes/fields/class-acf-field-number.php:237
2093
  #, php-format
2094
  msgid "Value must be equal to or higher than %d"
2095
  msgstr "مقدار باید مساوی یا بیشتر از %d باشد"
2096
 
2097
+ #: includes/fields/class-acf-field-number.php:245
2098
  #, php-format
2099
  msgid "Value must be equal to or lower than %d"
2100
  msgstr "مقدار باید کوچکتر یا مساوی %d باشد"
2101
 
2102
+ #: includes/fields/class-acf-field-oembed.php:25
2103
  msgid "oEmbed"
2104
  msgstr "oEmbed"
2105
 
2106
+ #: includes/fields/class-acf-field-oembed.php:219
2107
  msgid "Enter URL"
2108
  msgstr "آدرس را وارد کنید"
2109
 
2110
+ #: includes/fields/class-acf-field-oembed.php:234
2111
+ #: includes/fields/class-acf-field-taxonomy.php:898
2112
+ msgid "Error."
2113
+ msgstr "خطا."
2114
+
2115
+ #: includes/fields/class-acf-field-oembed.php:234
2116
  msgid "No embed found for the given URL."
2117
  msgstr "امکان جاسازی برای آدرس وارد شده یافت نشد."
2118
 
2119
+ #: includes/fields/class-acf-field-oembed.php:267
2120
+ #: includes/fields/class-acf-field-oembed.php:278
2121
  msgid "Embed Size"
2122
  msgstr "اندازه جانمایی"
2123
 
2124
+ #: includes/fields/class-acf-field-page_link.php:177
2125
  msgid "Archives"
2126
  msgstr "بایگانی ها"
2127
 
2128
+ #: includes/fields/class-acf-field-page_link.php:269
2129
+ #: includes/fields/class-acf-field-post_object.php:268
2130
+ #: includes/fields/class-acf-field-taxonomy.php:986
2131
+ msgid "Parent"
2132
+ msgstr "مادر"
2133
+
2134
+ #: includes/fields/class-acf-field-page_link.php:485
2135
+ #: includes/fields/class-acf-field-post_object.php:384
2136
+ #: includes/fields/class-acf-field-relationship.php:623
2137
  msgid "Filter by Post Type"
2138
  msgstr "فیلتر با نوع نوشته"
2139
 
2140
+ #: includes/fields/class-acf-field-page_link.php:493
2141
+ #: includes/fields/class-acf-field-post_object.php:392
2142
+ #: includes/fields/class-acf-field-relationship.php:631
2143
  msgid "All post types"
2144
  msgstr "تمام انواع نوشته"
2145
 
2146
+ #: includes/fields/class-acf-field-page_link.php:499
2147
+ #: includes/fields/class-acf-field-post_object.php:398
2148
+ #: includes/fields/class-acf-field-relationship.php:637
2149
  msgid "Filter by Taxonomy"
2150
  msgstr "فیلتر با طبقه بندی"
2151
 
2152
+ #: includes/fields/class-acf-field-page_link.php:507
2153
+ #: includes/fields/class-acf-field-post_object.php:406
2154
+ #: includes/fields/class-acf-field-relationship.php:645
2155
  msgid "All taxonomies"
2156
  msgstr "تمام طبقه بندی ها"
2157
 
2158
+ #: includes/fields/class-acf-field-page_link.php:523
 
 
 
 
 
2159
  msgid "Allow Archives URLs"
2160
  msgstr "اجازه آدرس های آرشیو"
2161
 
2162
+ #: includes/fields/class-acf-field-page_link.php:533
2163
+ #: includes/fields/class-acf-field-post_object.php:422
2164
+ #: includes/fields/class-acf-field-select.php:396
2165
+ #: includes/fields/class-acf-field-user.php:418
2166
  msgid "Select multiple values?"
2167
  msgstr "آیا چندین مقدار انتخاب شوند؟"
2168
 
2169
+ #: includes/fields/class-acf-field-password.php:25
2170
  msgid "Password"
2171
  msgstr "رمزعبور"
2172
 
2173
+ #: includes/fields/class-acf-field-post_object.php:25
2174
+ #: includes/fields/class-acf-field-post_object.php:437
2175
+ #: includes/fields/class-acf-field-relationship.php:702
2176
  msgid "Post Object"
2177
  msgstr "آبجکت یک نوشته"
2178
 
2179
+ #: includes/fields/class-acf-field-post_object.php:438
2180
+ #: includes/fields/class-acf-field-relationship.php:703
2181
  msgid "Post ID"
2182
  msgstr "شناسه(ID) نوشته"
2183
 
2184
+ #: includes/fields/class-acf-field-radio.php:25
2185
  msgid "Radio Button"
2186
  msgstr "دکمه رادیویی"
2187
 
2188
+ #: includes/fields/class-acf-field-radio.php:254
2189
  msgid "Other"
2190
  msgstr "دیگر"
2191
 
2192
+ #: includes/fields/class-acf-field-radio.php:259
2193
  msgid "Add 'other' choice to allow for custom values"
2194
  msgstr "افزودن گزینه 'دیگر' برای ثبت مقادیر دلخواه"
2195
 
2196
+ #: includes/fields/class-acf-field-radio.php:265
2197
  msgid "Save Other"
2198
  msgstr "ذخیره دیگر"
2199
 
2200
+ #: includes/fields/class-acf-field-radio.php:270
2201
  msgid "Save 'other' values to the field's choices"
2202
  msgstr "ذخیره مقادیر دیگر در انتخاب های زمینه"
2203
 
2204
+ #: includes/fields/class-acf-field-range.php:25
2205
+ msgid "Range"
2206
+ msgstr "محدوده"
2207
+
2208
+ #: includes/fields/class-acf-field-relationship.php:25
2209
  msgid "Relationship"
2210
  msgstr "ارتباط"
2211
 
2212
+ #: includes/fields/class-acf-field-relationship.php:37
2213
  msgid "Minimum values reached ( {min} values )"
2214
  msgstr "مقار به حداقل رسیده است ( {max} )"
2215
 
2216
+ #: includes/fields/class-acf-field-relationship.php:38
2217
  msgid "Maximum values reached ( {max} values )"
2218
  msgstr "مقادیر به حداکثر رسیده اند ( {max} آیتم )"
2219
 
2220
+ #: includes/fields/class-acf-field-relationship.php:39
2221
  msgid "Loading"
2222
  msgstr "درحال خواندن"
2223
 
2224
+ #: includes/fields/class-acf-field-relationship.php:40
2225
  msgid "No matches found"
2226
  msgstr "مطابقتی یافت نشد"
2227
 
2228
+ #: includes/fields/class-acf-field-relationship.php:423
 
 
 
 
2229
  msgid "Select post type"
2230
  msgstr "انتحاب نوع نوشته"
2231
 
2232
+ #: includes/fields/class-acf-field-relationship.php:449
2233
  msgid "Select taxonomy"
2234
  msgstr "انتخاب طبقه بندی"
2235
 
2236
+ #: includes/fields/class-acf-field-relationship.php:539
2237
+ msgid "Search..."
2238
+ msgstr "جستجو . . ."
2239
+
2240
+ #: includes/fields/class-acf-field-relationship.php:651
2241
+ msgid "Filters"
2242
+ msgstr "فیلترها"
2243
+
2244
+ #: includes/fields/class-acf-field-relationship.php:657
2245
+ #: includes/locations/class-acf-location-post-type.php:27
2246
+ msgid "Post Type"
2247
+ msgstr "نوع نوشته"
2248
+
2249
+ #: includes/fields/class-acf-field-relationship.php:658
2250
+ #: includes/fields/class-acf-field-taxonomy.php:28
2251
+ #: includes/fields/class-acf-field-taxonomy.php:763
2252
  msgid "Taxonomy"
2253
  msgstr "طبقه بندی"
2254
 
2255
+ #: includes/fields/class-acf-field-relationship.php:665
2256
  msgid "Elements"
2257
  msgstr "عناصر"
2258
 
2259
+ #: includes/fields/class-acf-field-relationship.php:666
2260
  msgid "Selected elements will be displayed in each result"
2261
  msgstr "عناصر انتخاب شده در هر نتیجه نمایش داده خواهند شد"
2262
 
2263
+ #: includes/fields/class-acf-field-relationship.php:677
2264
  msgid "Minimum posts"
2265
  msgstr "حداقل تعداد نوشته‌ها"
2266
 
2267
+ #: includes/fields/class-acf-field-relationship.php:686
2268
  msgid "Maximum posts"
2269
  msgstr "حداکثر تعداد نوشته ها"
2270
 
2271
+ #: includes/fields/class-acf-field-relationship.php:790
2272
+ #: pro/fields/class-acf-field-gallery.php:800
2273
  #, php-format
2274
  msgid "%s requires at least %s selection"
2275
  msgid_plural "%s requires at least %s selections"
2276
  msgstr[0] "%s نیاز دارد به حداقل %s بخش"
2277
 
2278
+ #: includes/fields/class-acf-field-select.php:25
2279
+ #: includes/fields/class-acf-field-taxonomy.php:785
2280
  msgctxt "noun"
2281
  msgid "Select"
2282
  msgstr "انتخاب"
2283
 
2284
+ #: includes/fields/class-acf-field-select.php:38
2285
  msgctxt "Select2 JS matches_1"
2286
  msgid "One result is available, press enter to select it."
2287
  msgstr "یک نتیجه موجود است برای انتخاب اینتر کنید"
2288
 
2289
+ #: includes/fields/class-acf-field-select.php:39
2290
  #, php-format
2291
  msgctxt "Select2 JS matches_n"
2292
  msgid "%d results are available, use up and down arrow keys to navigate."
2293
  msgstr ""
2294
 
2295
+ #: includes/fields/class-acf-field-select.php:40
2296
  msgctxt "Select2 JS matches_0"
2297
  msgid "No matches found"
2298
  msgstr "مشابهی یافت نشد"
2299
 
2300
+ #: includes/fields/class-acf-field-select.php:41
2301
  msgctxt "Select2 JS input_too_short_1"
2302
  msgid "Please enter 1 or more characters"
2303
+ msgstr "یک یا چند حرف وارد کنید"
2304
 
2305
+ #: includes/fields/class-acf-field-select.php:42
2306
  #, php-format
2307
  msgctxt "Select2 JS input_too_short_n"
2308
  msgid "Please enter %d or more characters"
2309
  msgstr ""
2310
 
2311
+ #: includes/fields/class-acf-field-select.php:43
2312
  msgctxt "Select2 JS input_too_long_1"
2313
  msgid "Please delete 1 character"
2314
+ msgstr "یک حرف را حذف کنید"
2315
 
2316
+ #: includes/fields/class-acf-field-select.php:44
2317
  #, php-format
2318
  msgctxt "Select2 JS input_too_long_n"
2319
  msgid "Please delete %d characters"
2320
  msgstr ""
2321
 
2322
+ #: includes/fields/class-acf-field-select.php:45
2323
  msgctxt "Select2 JS selection_too_long_1"
2324
  msgid "You can only select 1 item"
2325
+ msgstr "فقط می توانید یک آیتم را انتخاب کنید"
2326
 
2327
+ #: includes/fields/class-acf-field-select.php:46
2328
  #, php-format
2329
  msgctxt "Select2 JS selection_too_long_n"
2330
  msgid "You can only select %d items"
2331
  msgstr ""
2332
 
2333
+ #: includes/fields/class-acf-field-select.php:47
2334
  msgctxt "Select2 JS load_more"
2335
  msgid "Loading more results&hellip;"
2336
  msgstr "بارگذاری نتایج بیشتر&hellip;"
2337
 
2338
+ #: includes/fields/class-acf-field-select.php:48
2339
  msgctxt "Select2 JS searching"
2340
  msgid "Searching&hellip;"
2341
  msgstr "جستجو &hellip;"
2342
 
2343
+ #: includes/fields/class-acf-field-select.php:49
2344
  msgctxt "Select2 JS load_fail"
2345
  msgid "Loading failed"
2346
  msgstr "خطا در فراخوانی داده ها"
2347
 
2348
+ #: includes/fields/class-acf-field-select.php:255 includes/media.php:54
2349
+ msgctxt "verb"
2350
+ msgid "Select"
2351
+ msgstr "انتخاب"
2352
+
2353
+ #: includes/fields/class-acf-field-select.php:406
2354
+ #: includes/fields/class-acf-field-true_false.php:144
2355
  msgid "Stylised UI"
2356
  msgstr "ظاهر بهینه شده"
2357
 
2358
+ #: includes/fields/class-acf-field-select.php:416
2359
  msgid "Use AJAX to lazy load choices?"
2360
  msgstr "از ایجکس برای خواندن گزینه های استفاده شود؟"
2361
 
2362
+ #: includes/fields/class-acf-field-select.php:427
2363
  msgid "Specify the value returned"
2364
  msgstr "مقدار بازگشتی را انتخاب کنید"
2365
 
2366
+ #: includes/fields/class-acf-field-separator.php:25
2367
+ msgid "Separator"
2368
+ msgstr "جداکننده"
2369
+
2370
+ #: includes/fields/class-acf-field-tab.php:25
2371
  msgid "Tab"
2372
  msgstr "تب"
2373
 
2374
+ #: includes/fields/class-acf-field-tab.php:102
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2375
  msgid "Placement"
2376
  msgstr "جانمایی"
2377
 
2378
+ #: includes/fields/class-acf-field-tab.php:115
2379
+ msgid ""
2380
+ "Define an endpoint for the previous tabs to stop. This will start a new "
2381
+ "group of tabs."
2382
+ msgstr ""
2383
 
2384
+ #: includes/fields/class-acf-field-taxonomy.php:713
2385
+ #, php-format
2386
+ msgctxt "No terms"
2387
+ msgid "No %s"
2388
+ msgstr ""
2389
 
2390
+ #: includes/fields/class-acf-field-taxonomy.php:732
2391
  msgid "None"
2392
  msgstr "هیچ"
2393
 
2394
+ #: includes/fields/class-acf-field-taxonomy.php:764
2395
  msgid "Select the taxonomy to be displayed"
2396
  msgstr "طبقه‌بندی را برای برون بری انتخاب کنید"
2397
 
2398
+ #: includes/fields/class-acf-field-taxonomy.php:773
2399
  msgid "Appearance"
2400
  msgstr "ظاهر"
2401
 
2402
+ #: includes/fields/class-acf-field-taxonomy.php:774
2403
  msgid "Select the appearance of this field"
2404
  msgstr "ظاهر این زمینه را مشخص کنید"
2405
 
2406
+ #: includes/fields/class-acf-field-taxonomy.php:779
2407
  msgid "Multiple Values"
2408
  msgstr "چندین مقدار"
2409
 
2410
+ #: includes/fields/class-acf-field-taxonomy.php:781
2411
  msgid "Multi Select"
2412
  msgstr "چندین انتخاب"
2413
 
2414
+ #: includes/fields/class-acf-field-taxonomy.php:783
2415
  msgid "Single Value"
2416
  msgstr "تک مقدار"
2417
 
2418
+ #: includes/fields/class-acf-field-taxonomy.php:784
2419
  msgid "Radio Buttons"
2420
  msgstr "دکمه های رادیویی"
2421
 
2422
+ #: includes/fields/class-acf-field-taxonomy.php:803
2423
  msgid "Create Terms"
2424
  msgstr "ساخت آیتم (ترم)"
2425
 
2426
+ #: includes/fields/class-acf-field-taxonomy.php:804
2427
  msgid "Allow new terms to be created whilst editing"
2428
  msgstr "اجازه به ساخت آیتم‌ها(ترم‌ها) جدید در زمان ویرایش"
2429
 
2430
+ #: includes/fields/class-acf-field-taxonomy.php:813
2431
  msgid "Save Terms"
2432
  msgstr "ذخیره ترم ها"
2433
 
2434
+ #: includes/fields/class-acf-field-taxonomy.php:814
2435
+ msgid "Connect selected terms to the post"
2436
+ msgstr "الصاق آیتم های انتخابی به نوشته"
2437
+
2438
+ #: includes/fields/class-acf-field-taxonomy.php:823
2439
+ msgid "Load Terms"
2440
+ msgstr "خواندن ترم ها"
2441
+
2442
+ #: includes/fields/class-acf-field-taxonomy.php:824
2443
+ msgid "Load value from posts terms"
2444
+ msgstr "خواندن مقادیر از ترم های نوشته"
2445
+
2446
+ #: includes/fields/class-acf-field-taxonomy.php:838
2447
+ msgid "Term Object"
2448
+ msgstr "به صورت آبجکت"
2449
+
2450
+ #: includes/fields/class-acf-field-taxonomy.php:839
2451
+ msgid "Term ID"
2452
+ msgstr "شناسه(ID) آیتم(ترم)"
2453
+
2454
+ #: includes/fields/class-acf-field-taxonomy.php:898
2455
+ #, php-format
2456
+ msgid "User unable to add new %s"
2457
+ msgstr "کاربر قادر به اضافه کردن%s جدید نیست"
2458
+
2459
+ #: includes/fields/class-acf-field-taxonomy.php:911
2460
+ #, php-format
2461
+ msgid "%s already exists"
2462
+ msgstr "%s هم اکنون موجود است"
2463
+
2464
+ #: includes/fields/class-acf-field-taxonomy.php:952
2465
+ #, php-format
2466
+ msgid "%s added"
2467
+ msgstr "%s اضافه شد"
2468
+
2469
+ #: includes/fields/class-acf-field-taxonomy.php:997
2470
+ msgid "Add"
2471
+ msgstr "افزودن"
2472
+
2473
+ #: includes/fields/class-acf-field-text.php:25
2474
+ msgid "Text"
2475
+ msgstr "متن"
2476
+
2477
+ #: includes/fields/class-acf-field-text.php:155
2478
+ #: includes/fields/class-acf-field-textarea.php:120
2479
+ msgid "Character Limit"
2480
+ msgstr "محدودیت کاراکتر"
2481
+
2482
+ #: includes/fields/class-acf-field-text.php:156
2483
+ #: includes/fields/class-acf-field-textarea.php:121
2484
+ msgid "Leave blank for no limit"
2485
+ msgstr "برای نامحدود بودن این بخش را خالی بگذارید."
2486
+
2487
+ #: includes/fields/class-acf-field-textarea.php:25
2488
+ msgid "Text Area"
2489
+ msgstr "باکس متن (متن چند خطی)"
2490
+
2491
+ #: includes/fields/class-acf-field-textarea.php:129
2492
+ msgid "Rows"
2493
+ msgstr "سطرها"
2494
+
2495
+ #: includes/fields/class-acf-field-textarea.php:130
2496
+ msgid "Sets the textarea height"
2497
+ msgstr "تعیین ارتفاع باکس متن"
2498
+
2499
+ #: includes/fields/class-acf-field-time_picker.php:25
2500
+ msgid "Time Picker"
2501
+ msgstr "انتخاب زمان"
2502
+
2503
+ #: includes/fields/class-acf-field-true_false.php:25
2504
+ msgid "True / False"
2505
+ msgstr "صحیح / غلط"
2506
+
2507
+ #: includes/fields/class-acf-field-true_false.php:79
2508
+ #: includes/fields/class-acf-field-true_false.php:159 includes/input.php:267
2509
+ #: pro/admin/views/html-settings-updates.php:89
2510
+ msgid "Yes"
2511
+ msgstr "بله"
2512
+
2513
+ #: includes/fields/class-acf-field-true_false.php:80
2514
+ #: includes/fields/class-acf-field-true_false.php:169 includes/input.php:268
2515
+ #: pro/admin/views/html-settings-updates.php:99
2516
+ msgid "No"
2517
+ msgstr "خیر"
2518
+
2519
+ #: includes/fields/class-acf-field-true_false.php:127
2520
+ msgid "Displays text alongside the checkbox"
2521
+ msgstr "نمایش متن همراه انتخاب"
2522
+
2523
+ #: includes/fields/class-acf-field-true_false.php:155
2524
+ msgid "On Text"
2525
+ msgstr "با متن"
2526
+
2527
+ #: includes/fields/class-acf-field-true_false.php:156
2528
+ msgid "Text shown when active"
2529
+ msgstr "نمایش متن در زمان فعال بودن"
2530
+
2531
+ #: includes/fields/class-acf-field-true_false.php:165
2532
+ msgid "Off Text"
2533
+ msgstr "بدون متن"
2534
+
2535
+ #: includes/fields/class-acf-field-true_false.php:166
2536
+ msgid "Text shown when inactive"
2537
+ msgstr "نمایش متن در زمان غیر فعال بودن"
2538
+
2539
+ #: includes/fields/class-acf-field-url.php:25
2540
+ msgid "Url"
2541
+ msgstr "URL"
2542
+
2543
+ #: includes/fields/class-acf-field-url.php:151
2544
+ msgid "Value must be a valid URL"
2545
+ msgstr "مقدار باید یک آدرس صحیح باشد"
2546
+
2547
+ #: includes/fields/class-acf-field-user.php:25 includes/locations.php:95
2548
+ msgid "User"
2549
+ msgstr "کاربر"
2550
+
2551
+ #: includes/fields/class-acf-field-user.php:393
2552
+ msgid "Filter by role"
2553
+ msgstr "تفکیک با نقش"
2554
+
2555
+ #: includes/fields/class-acf-field-user.php:401
2556
+ msgid "All user roles"
2557
+ msgstr "تمام نقش های کاربر"
2558
+
2559
+ #: includes/fields/class-acf-field-wysiwyg.php:25
2560
+ msgid "Wysiwyg Editor"
2561
+ msgstr "ویرایشگر دیداری"
2562
+
2563
+ #: includes/fields/class-acf-field-wysiwyg.php:359
2564
+ msgid "Visual"
2565
+ msgstr "بصری"
2566
+
2567
+ #: includes/fields/class-acf-field-wysiwyg.php:360
2568
+ msgctxt "Name for the Text editor tab (formerly HTML)"
2569
+ msgid "Text"
2570
+ msgstr "متن"
2571
+
2572
+ #: includes/fields/class-acf-field-wysiwyg.php:366
2573
+ msgid "Click to initialize TinyMCE"
2574
+ msgstr ""
2575
+
2576
+ #: includes/fields/class-acf-field-wysiwyg.php:419
2577
+ msgid "Tabs"
2578
+ msgstr "تب ها"
2579
+
2580
+ #: includes/fields/class-acf-field-wysiwyg.php:424
2581
+ msgid "Visual & Text"
2582
+ msgstr "بصری و متنی"
2583
+
2584
+ #: includes/fields/class-acf-field-wysiwyg.php:425
2585
+ msgid "Visual Only"
2586
+ msgstr "فقط بصری"
2587
+
2588
+ #: includes/fields/class-acf-field-wysiwyg.php:426
2589
+ msgid "Text Only"
2590
+ msgstr "فقط متن"
2591
+
2592
+ #: includes/fields/class-acf-field-wysiwyg.php:433
2593
+ msgid "Toolbar"
2594
+ msgstr "نوار ابزار"
2595
+
2596
+ #: includes/fields/class-acf-field-wysiwyg.php:443
2597
+ msgid "Show Media Upload Buttons?"
2598
+ msgstr "آیا دکمه های بارگذاری رسانه نمایش داده شوند؟"
2599
+
2600
+ #: includes/fields/class-acf-field-wysiwyg.php:453
2601
+ msgid "Delay initialization?"
2602
+ msgstr "نمایش با تاخیر؟"
2603
+
2604
+ #: includes/fields/class-acf-field-wysiwyg.php:454
2605
+ msgid "TinyMCE will not be initalized until field is clicked"
2606
+ msgstr ""
2607
+
2608
+ #: includes/forms/form-comment.php:166 includes/forms/form-post.php:303
2609
+ #: pro/admin/admin-options-page.php:308
2610
+ msgid "Edit field group"
2611
+ msgstr "ویرایش گروه زمینه"
2612
+
2613
+ #: includes/forms/form-front.php:55
2614
+ msgid "Validate Email"
2615
+ msgstr "اعتبار سنجی ایمیل"
2616
+
2617
+ #: includes/forms/form-front.php:103 pro/fields/class-acf-field-gallery.php:573
2618
+ #: pro/options-page.php:81
2619
+ msgid "Update"
2620
+ msgstr "بروزرسانی"
2621
+
2622
+ #: includes/forms/form-front.php:104
2623
+ msgid "Post updated"
2624
+ msgstr "نوشته بروز شد."
2625
+
2626
+ #: includes/forms/form-front.php:230
2627
+ msgid "Spam Detected"
2628
+ msgstr "اسپم تشخیص داده شد"
2629
+
2630
+ #: includes/input.php:259
2631
+ msgid "Expand Details"
2632
+ msgstr "نمایش جزئیات"
2633
+
2634
+ #: includes/input.php:260
2635
+ msgid "Collapse Details"
2636
+ msgstr "عدم نمایش جزئیات"
2637
+
2638
+ #: includes/input.php:261
2639
+ msgid "Validation successful"
2640
+ msgstr "اعتبار سنجی موفق بود"
2641
+
2642
+ #: includes/input.php:262 includes/validation.php:285
2643
+ #: includes/validation.php:296
2644
+ msgid "Validation failed"
2645
+ msgstr "مشکل در اعتبار سنجی"
2646
+
2647
+ #: includes/input.php:263
2648
+ msgid "1 field requires attention"
2649
+ msgstr "یکی از گزینه ها نیاز به بررسی دارد"
2650
+
2651
+ #: includes/input.php:264
2652
+ #, php-format
2653
+ msgid "%d fields require attention"
2654
+ msgstr "%d گزینه نیاز به بررسی دارد"
2655
+
2656
+ #: includes/input.php:265
2657
+ msgid "Restricted"
2658
+ msgstr "ممنوع"
2659
+
2660
+ #: includes/input.php:266
2661
+ msgid "Are you sure?"
2662
+ msgstr "اطمینان دارید؟"
2663
+
2664
+ #: includes/input.php:270
2665
+ msgid "Cancel"
2666
+ msgstr "لغو"
2667
+
2668
+ #: includes/locations.php:93 includes/locations/class-acf-location-post.php:27
2669
+ msgid "Post"
2670
+ msgstr "نوشته"
2671
+
2672
+ #: includes/locations.php:94 includes/locations/class-acf-location-page.php:27
2673
+ msgid "Page"
2674
+ msgstr "برگه"
2675
+
2676
+ #: includes/locations.php:96
2677
+ msgid "Forms"
2678
+ msgstr "فرم ها"
2679
+
2680
+ #: includes/locations/class-acf-location-attachment.php:27
2681
+ msgid "Attachment"
2682
+ msgstr "پیوست"
2683
+
2684
+ #: includes/locations/class-acf-location-attachment.php:109
2685
+ #, php-format
2686
+ msgid "All %s formats"
2687
+ msgstr ""
2688
+
2689
+ #: includes/locations/class-acf-location-comment.php:27
2690
+ msgid "Comment"
2691
+ msgstr "دیدگاه"
2692
+
2693
+ #: includes/locations/class-acf-location-current-user-role.php:27
2694
+ msgid "Current User Role"
2695
+ msgstr "نقش کاربرفعلی"
2696
 
2697
+ #: includes/locations/class-acf-location-current-user-role.php:110
2698
+ msgid "Super Admin"
2699
+ msgstr "مدیرکل"
2700
 
2701
+ #: includes/locations/class-acf-location-current-user.php:27
2702
+ msgid "Current User"
2703
+ msgstr "کاربر فعلی"
2704
 
2705
+ #: includes/locations/class-acf-location-current-user.php:97
2706
+ msgid "Logged in"
2707
+ msgstr "وارده شده"
2708
 
2709
+ #: includes/locations/class-acf-location-current-user.php:98
2710
+ msgid "Viewing front end"
2711
+ msgstr "درحال نمایش سمت کاربر"
2712
 
2713
+ #: includes/locations/class-acf-location-current-user.php:99
2714
+ msgid "Viewing back end"
2715
+ msgstr "درحال نمایش سمت مدیریت"
 
2716
 
2717
+ #: includes/locations/class-acf-location-nav-menu-item.php:27
2718
+ msgid "Menu Item"
2719
+ msgstr "آیتم منو"
 
2720
 
2721
+ #: includes/locations/class-acf-location-nav-menu.php:27
2722
+ msgid "Menu"
2723
+ msgstr "منو"
 
2724
 
2725
+ #: includes/locations/class-acf-location-nav-menu.php:109
2726
+ msgid "Menu Locations"
2727
+ msgstr "محل منو"
2728
 
2729
+ #: includes/locations/class-acf-location-nav-menu.php:119
2730
+ msgid "Menus"
2731
+ msgstr "منوها"
2732
 
2733
+ #: includes/locations/class-acf-location-page-parent.php:27
2734
+ msgid "Page Parent"
2735
+ msgstr "برگه مادر"
2736
 
2737
+ #: includes/locations/class-acf-location-page-template.php:27
2738
+ msgid "Page Template"
2739
+ msgstr "قالب برگه"
2740
 
2741
+ #: includes/locations/class-acf-location-page-template.php:98
2742
+ #: includes/locations/class-acf-location-post-template.php:151
2743
+ msgid "Default Template"
2744
+ msgstr "پوسته پیش فرض"
2745
 
2746
+ #: includes/locations/class-acf-location-page-type.php:27
2747
+ msgid "Page Type"
2748
+ msgstr "نوع برگه"
2749
 
2750
+ #: includes/locations/class-acf-location-page-type.php:145
2751
+ msgid "Front Page"
2752
+ msgstr "برگه نخست"
2753
 
2754
+ #: includes/locations/class-acf-location-page-type.php:146
2755
+ msgid "Posts Page"
2756
+ msgstr "برگه ی نوشته ها"
2757
 
2758
+ #: includes/locations/class-acf-location-page-type.php:147
2759
+ msgid "Top Level Page (no parent)"
2760
+ msgstr "بالاترین سطح برگه(بدون والد)"
2761
 
2762
+ #: includes/locations/class-acf-location-page-type.php:148
2763
+ msgid "Parent Page (has children)"
2764
+ msgstr "برگه مادر (دارای زیر مجموعه)"
2765
 
2766
+ #: includes/locations/class-acf-location-page-type.php:149
2767
+ msgid "Child Page (has parent)"
2768
+ msgstr "برگه زیر مجموعه (دارای مادر)"
2769
 
2770
+ #: includes/locations/class-acf-location-post-category.php:27
2771
+ msgid "Post Category"
2772
+ msgstr "دسته بندی نوشته"
2773
 
2774
+ #: includes/locations/class-acf-location-post-format.php:27
2775
+ msgid "Post Format"
2776
+ msgstr "فرمت نوشته"
2777
 
2778
+ #: includes/locations/class-acf-location-post-status.php:27
2779
+ msgid "Post Status"
2780
+ msgstr "وضعیت نوشته"
2781
 
2782
+ #: includes/locations/class-acf-location-post-taxonomy.php:27
2783
+ msgid "Post Taxonomy"
2784
+ msgstr "طبقه بندی نوشته"
2785
 
2786
+ #: includes/locations/class-acf-location-post-template.php:27
2787
+ msgid "Post Template"
2788
+ msgstr "قالب نوشته"
2789
 
2790
+ #: includes/locations/class-acf-location-taxonomy.php:27
2791
+ msgid "Taxonomy Term"
2792
+ msgstr "آیتم طبقه بندی"
 
2793
 
2794
+ #: includes/locations/class-acf-location-user-form.php:27
2795
+ msgid "User Form"
2796
+ msgstr "فرم کاربر"
2797
 
2798
+ #: includes/locations/class-acf-location-user-form.php:88
2799
+ msgid "Add / Edit"
2800
+ msgstr "اضافه کردن/ویرایش"
2801
 
2802
+ #: includes/locations/class-acf-location-user-form.php:89
2803
+ msgid "Register"
2804
+ msgstr "ثبت نام"
2805
 
2806
+ #: includes/locations/class-acf-location-user-role.php:27
2807
+ msgid "User Role"
2808
+ msgstr "نقش کاربر"
2809
 
2810
+ #: includes/locations/class-acf-location-widget.php:27
2811
+ msgid "Widget"
2812
+ msgstr "ابزارک"
2813
 
2814
+ #: includes/media.php:55
2815
+ msgctxt "verb"
2816
+ msgid "Edit"
2817
+ msgstr "ویرایش"
2818
 
2819
+ #: includes/media.php:56
2820
+ msgctxt "verb"
2821
+ msgid "Update"
2822
+ msgstr "بروزرسانی"
2823
 
2824
+ #: includes/validation.php:364
2825
  #, php-format
2826
+ msgid "%s value is required"
2827
+ msgstr "مقدار %s لازم است"
 
2828
 
2829
  #. Plugin Name of the plugin/theme
2830
+ #: pro/acf-pro.php:28
2831
  msgid "Advanced Custom Fields PRO"
2832
  msgstr "زمینه های دلخواه پیشرفته نسخه حرفه ای"
2833
 
2834
+ #: pro/admin/admin-options-page.php:200
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2835
  msgid "Publish"
2836
  msgstr "انتشار"
2837
 
2838
+ #: pro/admin/admin-options-page.php:206
2839
+ #, php-format
2840
+ msgid ""
2841
+ "No Custom Field Groups found for this options page. <a href=\"%s\">Create a "
2842
+ "Custom Field Group</a>"
2843
+ msgstr ""
2844
+ "هیچ گروه زمینه دلخواهی برای این صفحه تنظیمات یافت نشد. <a href=\"%s\">ساخت "
2845
+ "گروه زمینه دلخواه</a>"
2846
 
2847
+ #: pro/admin/admin-settings-updates.php:78
2848
  msgid "<b>Error</b>. Could not connect to update server"
2849
  msgstr "خطا. امکان اتصال به سرور به روزرسانی الان ممکن نیست"
2850
 
2851
+ #: pro/admin/admin-settings-updates.php:162
2852
+ #: pro/admin/views/html-settings-updates.php:13
2853
+ msgid "Updates"
2854
+ msgstr "بروزرسانی ها"
2855
+
2856
+ #: pro/admin/views/html-settings-updates.php:7
2857
  msgid "Deactivate License"
2858
  msgstr "غیرفعال سازی لایسنس"
2859
 
2860
+ #: pro/admin/views/html-settings-updates.php:7
2861
  msgid "Activate License"
2862
  msgstr "فعال سازی لایسنس"
2863
 
2864
+ #: pro/admin/views/html-settings-updates.php:17
2865
  msgid "License Information"
2866
  msgstr "اطلاعات لایسنس"
2867
 
2868
+ #: pro/admin/views/html-settings-updates.php:20
2869
  #, php-format
2870
  msgid ""
2871
+ "To unlock updates, please enter your license key below. If you don't have a "
2872
+ "licence key, please see <a href=\"%s\" target=\"_blank\">details & pricing</"
2873
+ "a>."
2874
+ msgstr ""
2875
+ "برای به روزرسانی لطفا کد لایسنس را وارد کنید. <a href=\"%s\" target=\"_blank"
2876
+ "\">قیمت ها</a>."
2877
 
2878
+ #: pro/admin/views/html-settings-updates.php:29
2879
  msgid "License Key"
2880
  msgstr "کلید لایسنس"
2881
 
2882
+ #: pro/admin/views/html-settings-updates.php:61
2883
  msgid "Update Information"
2884
  msgstr "اطلاعات به روز رسانی"
2885
 
2886
+ #: pro/admin/views/html-settings-updates.php:68
2887
  msgid "Current Version"
2888
  msgstr "نسخه فعلی"
2889
 
2890
+ #: pro/admin/views/html-settings-updates.php:76
2891
  msgid "Latest Version"
2892
  msgstr "آخرین نسخه"
2893
 
2894
+ #: pro/admin/views/html-settings-updates.php:84
2895
  msgid "Update Available"
2896
  msgstr "بروزرسانی موجود است"
2897
 
2898
+ #: pro/admin/views/html-settings-updates.php:92
2899
  msgid "Update Plugin"
2900
  msgstr "بروزرسانی افزونه"
2901
 
2902
+ #: pro/admin/views/html-settings-updates.php:94
2903
  msgid "Please enter your license key above to unlock updates"
2904
  msgstr "برای فعالسازی به روزرسانی لایسنس خود را بنویسید"
2905
 
2906
+ #: pro/admin/views/html-settings-updates.php:100
2907
  msgid "Check Again"
2908
  msgstr "بررسی دوباره"
2909
 
2910
+ #: pro/admin/views/html-settings-updates.php:117
2911
  msgid "Upgrade Notice"
2912
  msgstr "نکات به روزرسانی"
2913
 
2914
+ #: pro/fields/class-acf-field-clone.php:25
 
 
 
 
 
 
 
 
 
 
 
 
2915
  msgctxt "noun"
2916
  msgid "Clone"
2917
  msgstr "کپی (هیچ)"
2918
 
2919
+ #: pro/fields/class-acf-field-clone.php:808
2920
  msgid "Select one or more fields you wish to clone"
2921
  msgstr "انتخاب فیلد دیگری برای کپی"
2922
 
2923
+ #: pro/fields/class-acf-field-clone.php:825
2924
  msgid "Display"
2925
  msgstr "نمایش"
2926
 
2927
+ #: pro/fields/class-acf-field-clone.php:826
2928
  msgid "Specify the style used to render the clone field"
2929
  msgstr "مشخص کردن استایل مورد نظر در نمایش دسته فیلدها"
2930
 
2931
+ #: pro/fields/class-acf-field-clone.php:831
2932
  msgid "Group (displays selected fields in a group within this field)"
2933
  msgstr "گروه ها(نمایش فیلدهای انتخابی در یک گروه با این فیلد)"
2934
 
2935
+ #: pro/fields/class-acf-field-clone.php:832
2936
  msgid "Seamless (replaces this field with selected fields)"
2937
  msgstr "بدون مانند (جایگزینی این فیلد با فیلدهای انتخابی)"
2938
 
2939
+ #: pro/fields/class-acf-field-clone.php:853
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2940
  #, php-format
2941
  msgid "Labels will be displayed as %s"
2942
  msgstr "برچسب ها نمایش داده شوند به صورت %s"
2943
 
2944
+ #: pro/fields/class-acf-field-clone.php:856
2945
  msgid "Prefix Field Labels"
2946
  msgstr "پیشوند پرچسب فیلدها"
2947
 
2948
+ #: pro/fields/class-acf-field-clone.php:867
2949
  #, php-format
2950
  msgid "Values will be saved as %s"
2951
  msgstr "مقادیر ذخیره خواهند شد به صورت %s"
2952
 
2953
+ #: pro/fields/class-acf-field-clone.php:870
2954
  msgid "Prefix Field Names"
2955
  msgstr "پیشوند نام فایل ها"
2956
 
2957
+ #: pro/fields/class-acf-field-clone.php:988
2958
+ msgid "Unknown field"
2959
+ msgstr "فیلد ناشناس"
2960
+
2961
+ #: pro/fields/class-acf-field-clone.php:1027
2962
+ msgid "Unknown field group"
2963
+ msgstr "گروه ناشناس"
2964
+
2965
+ #: pro/fields/class-acf-field-clone.php:1031
2966
  #, php-format
2967
  msgid "All fields from %s field group"
2968
  msgstr "تمام فیلدها از %s گروه فیلد"
2969
 
2970
+ #: pro/fields/class-acf-field-flexible-content.php:31
2971
+ #: pro/fields/class-acf-field-repeater.php:174
2972
+ #: pro/fields/class-acf-field-repeater.php:470
 
 
2973
  msgid "Add Row"
2974
  msgstr "سطر جدید"
2975
 
2976
+ #: pro/fields/class-acf-field-flexible-content.php:34
2977
  msgid "layout"
2978
  msgstr "طرح"
2979
 
2980
+ #: pro/fields/class-acf-field-flexible-content.php:35
2981
  msgid "layouts"
2982
  msgstr "طرح ها"
2983
 
2984
+ #: pro/fields/class-acf-field-flexible-content.php:36
2985
  msgid "remove {layout}?"
2986
  msgstr "حذف {layout} ؟"
2987
 
2988
+ #: pro/fields/class-acf-field-flexible-content.php:37
2989
  msgid "This field requires at least {min} {identifier}"
2990
  msgstr "این زمینه نیازدارد به {min} {identifier}"
2991
 
2992
+ #: pro/fields/class-acf-field-flexible-content.php:38
2993
  msgid "This field has a limit of {max} {identifier}"
2994
  msgstr "این زمینه محدود است به {max} {identifier}"
2995
 
2996
+ #: pro/fields/class-acf-field-flexible-content.php:39
2997
  msgid "This field requires at least {min} {label} {identifier}"
2998
  msgstr "این زمینه لازم دارد {min} {label} {identifier}"
2999
 
3000
+ #: pro/fields/class-acf-field-flexible-content.php:40
3001
  msgid "Maximum {label} limit reached ({max} {identifier})"
3002
  msgstr "حداکثر {label} پرشده است ({max} {identifier})"
3003
 
3004
+ #: pro/fields/class-acf-field-flexible-content.php:41
3005
  msgid "{available} {label} {identifier} available (max {max})"
3006
  msgstr "{available} {label} {identifier} موجود است (حداکثر {max})"
3007
 
3008
+ #: pro/fields/class-acf-field-flexible-content.php:42
3009
  msgid "{required} {label} {identifier} required (min {min})"
3010
  msgstr "{required} {label} {identifier} لازم دارد (حداقل {min})"
3011
 
3012
+ #: pro/fields/class-acf-field-flexible-content.php:43
3013
+ msgid "Flexible Content requires at least 1 layout"
3014
+ msgstr "زمینه محتوای انعطاف پذیر حداقل به یک طرح نیاز دارد"
3015
+
3016
+ #: pro/fields/class-acf-field-flexible-content.php:273
3017
  #, php-format
3018
  msgid "Click the \"%s\" button below to start creating your layout"
3019
  msgstr "روی دکمه \"%s\" دز زیر کلیک کنید تا چیدمان خود را بسازید"
3020
 
3021
+ #: pro/fields/class-acf-field-flexible-content.php:406
3022
  msgid "Add layout"
3023
  msgstr "طرح جدید"
3024
 
3025
+ #: pro/fields/class-acf-field-flexible-content.php:407
3026
  msgid "Remove layout"
3027
  msgstr "حذف طرح"
3028
 
3029
+ #: pro/fields/class-acf-field-flexible-content.php:408
3030
+ #: pro/fields/class-acf-field-repeater.php:298
3031
  msgid "Click to toggle"
3032
  msgstr "کلیک برای انتخاب"
3033
 
3034
+ #: pro/fields/class-acf-field-flexible-content.php:554
3035
  msgid "Reorder Layout"
3036
  msgstr "ترتیب بندی طرح ها"
3037
 
3038
+ #: pro/fields/class-acf-field-flexible-content.php:554
3039
  msgid "Reorder"
3040
  msgstr "مرتب سازی"
3041
 
3042
+ #: pro/fields/class-acf-field-flexible-content.php:555
3043
  msgid "Delete Layout"
3044
  msgstr "حذف طرح"
3045
 
3046
+ #: pro/fields/class-acf-field-flexible-content.php:556
3047
  msgid "Duplicate Layout"
3048
  msgstr "تکثیر طرح"
3049
 
3050
+ #: pro/fields/class-acf-field-flexible-content.php:557
3051
  msgid "Add New Layout"
3052
  msgstr "افزودن طرح جدید"
3053
 
3054
+ #: pro/fields/class-acf-field-flexible-content.php:628
3055
  msgid "Min"
3056
  msgstr "حداقل"
3057
 
3058
+ #: pro/fields/class-acf-field-flexible-content.php:641
3059
  msgid "Max"
3060
  msgstr "حداکثر"
3061
 
3062
+ #: pro/fields/class-acf-field-flexible-content.php:668
3063
+ #: pro/fields/class-acf-field-repeater.php:466
3064
  msgid "Button Label"
3065
  msgstr "متن دکمه"
3066
 
3067
+ #: pro/fields/class-acf-field-flexible-content.php:677
3068
  msgid "Minimum Layouts"
3069
  msgstr "حداقل تعداد طرح ها"
3070
 
3071
+ #: pro/fields/class-acf-field-flexible-content.php:686
3072
  msgid "Maximum Layouts"
3073
  msgstr "حداکثر تعداد طرح ها"
3074
 
3075
+ #: pro/fields/class-acf-field-gallery.php:41
 
 
 
 
3076
  msgid "Add Image to Gallery"
3077
  msgstr "افزودن تصویر به گالری"
3078
 
3079
+ #: pro/fields/class-acf-field-gallery.php:45
3080
  msgid "Maximum selection reached"
3081
  msgstr "بیشترین حد انتخاب شده است"
3082
 
3083
+ #: pro/fields/class-acf-field-gallery.php:321
3084
  msgid "Length"
3085
  msgstr "طول"
3086
 
3087
+ #: pro/fields/class-acf-field-gallery.php:364
3088
  msgid "Caption"
3089
  msgstr "متن"
3090
 
3091
+ #: pro/fields/class-acf-field-gallery.php:373
3092
  msgid "Alt Text"
3093
  msgstr "متن جایگزین"
3094
 
3095
+ #: pro/fields/class-acf-field-gallery.php:544
3096
  msgid "Add to gallery"
3097
  msgstr "اضافه به گالری"
3098
 
3099
+ #: pro/fields/class-acf-field-gallery.php:548
3100
  msgid "Bulk actions"
3101
  msgstr "کارهای گروهی"
3102
 
3103
+ #: pro/fields/class-acf-field-gallery.php:549
3104
  msgid "Sort by date uploaded"
3105
  msgstr "به ترتیب تاریخ آپلود"
3106
 
3107
+ #: pro/fields/class-acf-field-gallery.php:550
3108
  msgid "Sort by date modified"
3109
  msgstr "به ترتیب تاریخ اعمال تغییرات"
3110
 
3111
+ #: pro/fields/class-acf-field-gallery.php:551
3112
  msgid "Sort by title"
3113
  msgstr "به ترتیب عنوان"
3114
 
3115
+ #: pro/fields/class-acf-field-gallery.php:552
3116
  msgid "Reverse current order"
3117
  msgstr "معکوس سازی ترتیب کنونی"
3118
 
3119
+ #: pro/fields/class-acf-field-gallery.php:570
3120
  msgid "Close"
3121
  msgstr "بستن"
3122
 
3123
+ #: pro/fields/class-acf-field-gallery.php:624
3124
  msgid "Minimum Selection"
3125
  msgstr "حداقل انتخاب"
3126
 
3127
+ #: pro/fields/class-acf-field-gallery.php:633
3128
  msgid "Maximum Selection"
3129
  msgstr "حداکثر انتخاب"
3130
 
3131
+ #: pro/fields/class-acf-field-gallery.php:642
3132
  msgid "Insert"
3133
  msgstr "درج"
3134
 
3135
+ #: pro/fields/class-acf-field-gallery.php:643
3136
  msgid "Specify where new attachments are added"
3137
  msgstr "مشخص کنید که پیوست ها کجا اضافه شوند"
3138
 
3139
+ #: pro/fields/class-acf-field-gallery.php:647
3140
  msgid "Append to the end"
3141
  msgstr "افزودن به انتها"
3142
 
3143
+ #: pro/fields/class-acf-field-gallery.php:648
3144
  msgid "Prepend to the beginning"
3145
  msgstr "افزودن قبل از"
3146
 
3147
+ #: pro/fields/class-acf-field-repeater.php:36
 
 
 
 
3148
  msgid "Minimum rows reached ({min} rows)"
3149
  msgstr "مقادیر به حداکثر رسیده اند ( {min} سطر )"
3150
 
3151
+ #: pro/fields/class-acf-field-repeater.php:37
3152
  msgid "Maximum rows reached ({max} rows)"
3153
  msgstr "مقادیر به حداکثر رسیده اند ( {max} سطر )"
3154
 
3155
+ #: pro/fields/class-acf-field-repeater.php:343
3156
  msgid "Add row"
3157
  msgstr "افزودن سطر"
3158
 
3159
+ #: pro/fields/class-acf-field-repeater.php:344
3160
  msgid "Remove row"
3161
  msgstr "حذف سطر"
3162
 
3163
+ #: pro/fields/class-acf-field-repeater.php:419
 
 
 
 
3164
  msgid "Collapsed"
3165
  msgstr "جمع شده"
3166
 
3167
+ #: pro/fields/class-acf-field-repeater.php:420
3168
  msgid "Select a sub field to show when row is collapsed"
3169
  msgstr "یک زمینه زیرمجموعه را انتخاب کنید تا زمان بسته شدن طر نمایش داده شود"
3170
 
3171
+ #: pro/fields/class-acf-field-repeater.php:430
3172
  msgid "Minimum Rows"
3173
  msgstr "حداقل تعداد سطرها"
3174
 
3175
+ #: pro/fields/class-acf-field-repeater.php:440
3176
  msgid "Maximum Rows"
3177
  msgstr "حداکثر تعداد سطرها"
3178
 
3179
+ #: pro/locations/class-acf-location-options-page.php:79
3180
+ msgid "No options pages exist"
3181
+ msgstr "هیچ صفحه تنظیماتی یافت نشد"
3182
+
3183
+ #: pro/options-page.php:51
3184
+ msgid "Options"
3185
+ msgstr "تنظیمات"
3186
+
3187
+ #: pro/options-page.php:82
3188
+ msgid "Options Updated"
3189
+ msgstr "تنظیمات به روز شدند"
3190
+
3191
+ #: pro/updates.php:97
3192
+ #, php-format
3193
+ msgid ""
3194
+ "To enable updates, please enter your license key on the <a href=\"%s"
3195
+ "\">Updates</a> page. If you don't have a licence key, please see <a href=\"%s"
3196
+ "\">details & pricing</a>."
3197
+ msgstr ""
3198
+ "برای به روزرسانی لطفا کد لایسنس را وارد کنید. <a href=\"%s\">بروزرسانی</a>. "
3199
+ "<a href=\"%s\">قیمت ها</a>"
3200
+
3201
  #. Plugin URI of the plugin/theme
3202
  msgid "https://www.advancedcustomfields.com/"
3203
  msgstr "https://www.advancedcustomfields.com/"
3204
 
 
 
 
 
3205
  #. Author of the plugin/theme
3206
  msgid "Elliot Condon"
3207
  msgstr "Elliot Condon"
3210
  msgid "http://www.elliotcondon.com/"
3211
  msgstr "http://www.elliotcondon.com/"
3212
 
3213
+ #~ msgid ""
3214
+ #~ "The tab field will display incorrectly when added to a Table style "
3215
+ #~ "repeater field or flexible content field layout"
3216
+ #~ msgstr ""
3217
+ #~ "زمینه تب در زمانی که در آن زمینه تکرارشونده و یا زمینه محتوای انعطاف پذیر "
3218
+ #~ "به کار ببرید درست نمایش داده نخواهد شد"
3219
+
3220
+ #~ msgid ""
3221
+ #~ "Use \"Tab Fields\" to better organize your edit screen by grouping fields "
3222
+ #~ "together."
3223
+ #~ msgstr ""
3224
+ #~ "از (زمینه تب) برای سازماندهی بهتر صفحه ویرایش با گروه بندی زمینه ها زیر "
3225
+ #~ "تب ها استفاده کنید. "
3226
+
3227
+ #~ msgid ""
3228
+ #~ "All fields following this \"tab field\" (or until another \"tab field\" "
3229
+ #~ "is defined) will be grouped together using this field's label as the tab "
3230
+ #~ "heading."
3231
+ #~ msgstr ""
3232
+ #~ "همه زمینه های زیر این \" زمینه تب \" (یا تا زمینه تب بعدی) با هم گروه "
3233
+ #~ "بندی می شوند و برچسب زمینه در تب به نمایش در خواهد آمد"
3234
+
3235
+ #~ msgid "End-point"
3236
+ #~ msgstr "نقطه پایانی"
3237
+
3238
+ #~ msgid "Use this field as an end-point and start a new group of tabs"
3239
+ #~ msgstr ""
3240
+ #~ "استفاده از این زمینه به عنوان نقطه پایانی و شروع یک گروه جدید از تب ها"
3241
+
3242
+ #~ msgid "Disabled"
3243
+ #~ msgstr "غیرفعال"
3244
+
3245
+ #~ msgid "Disabled <span class=\"count\">(%s)</span>"
3246
+ #~ msgid_plural "Disabled <span class=\"count\">(%s)</span>"
3247
+ #~ msgstr[0] "غیرفعال <span class=\"تعداد\">(%s)</span>"
3248
+
3249
+ #~ msgid "Getting Started"
3250
+ #~ msgstr "راهنمای شروع"
3251
+
3252
+ #~ msgid "Field Types"
3253
+ #~ msgstr "انواع زمینه"
3254
+
3255
+ #~ msgid "Functions"
3256
+ #~ msgstr "توابع"
3257
+
3258
+ #~ msgid "Actions"
3259
+ #~ msgstr "اکشن ها (مربوط به کدنویسی)"
3260
+
3261
+ #~ msgid "'How to' guides"
3262
+ #~ msgstr "راهنماهای کوتاه"
3263
+
3264
+ #~ msgid "Tutorials"
3265
+ #~ msgstr "آموزش ها"
3266
+
3267
+ #~ msgid "FAQ"
3268
+ #~ msgstr "پرسش و پاسخ"
3269
+
3270
+ #~ msgid "Created by"
3271
+ #~ msgstr "برنامه نویسی شده توسط"
3272
+
3273
+ #~ msgid "Error loading update"
3274
+ #~ msgstr "خطا در به روز رسانی"
3275
+
3276
+ #~ msgid "Error"
3277
+ #~ msgstr "خطا"
3278
+
3279
+ #~ msgid "Export Field Groups to PHP"
3280
+ #~ msgstr "برون بری گروه های زمینه به PHP"
3281
+
3282
+ #~ msgid "Download export file"
3283
+ #~ msgstr "دانلود فایل خروجی"
3284
+
3285
+ #~ msgid "Generate export code"
3286
+ #~ msgstr "تولید کد خروجی"
3287
+
3288
+ #~ msgid "Import"
3289
+ #~ msgstr "وارد کردن"
3290
+
3291
+ #~ msgid "See what's new"
3292
+ #~ msgstr "ببینید چه چیزی جدید است"
3293
+
3294
+ #~ msgid "eg. Show extra content"
3295
+ #~ msgstr "به عنوان مثال: نمایش محتوای اضافی"
3296
+
3297
+ #~ msgid "Customise WordPress with powerful, professional and intuitive fields"
3298
+ #~ msgstr "شخصی سازی وردپرس با زمینه های قدرتمند، حرفه ای و دیداری"
3299
+
3300
  #~ msgid "See what's new in"
3301
  #~ msgstr "ببینید چه چیزی جدید است"
3302
 
3306
  #~ msgid "<b>Success</b>. Import tool added %s field groups: %s"
3307
  #~ msgstr "<b>انجام شد</b> ابزار وارد سازی %s زمینه را وارد کرد: %s"
3308
 
3309
+ #~ msgid ""
3310
+ #~ "<b>Warning</b>. Import tool detected %s field groups already exist and "
3311
+ #~ "have been ignored: %s"
3312
  #~ msgstr ""
3313
+ #~ "<b>اخطار</b> ابزار وارد سازی تشخصی داد که گروه زمینه %s اکنون موجود می "
3314
+ #~ "باشد و %s نادیده گرفته شد"
3315
 
3316
  #~ msgid "Upgrade ACF"
3317
  #~ msgstr "بروزرسانی "
3323
  #~ msgstr "با گرفتن و کشیدن مرتب سازی کنید"
3324
 
3325
  #~ msgid ""
3326
+ #~ "The following sites require a DB upgrade. Check the ones you want to "
3327
+ #~ "update and then click “Upgrade Database”."
3328
  #~ msgstr ""
3329
+ #~ "سایت‌های زیر نیاز به به‌روزرسانی دیتابیس دارند. آن‌هایی که تمایل دارید را "
3330
+ #~ "انتخاب کنید و دکمه به روزرسانی را کلیک کنید."
3331
 
3332
  #~ msgid "Upgrading data to"
3333
  #~ msgstr "به روزرسانی داده ها به"
3372
  #~ msgstr "لایسنس"
3373
 
3374
  #~ msgid ""
3375
+ #~ "To unlock updates, please enter your license key below. If you don't have "
3376
+ #~ "a licence key, please see"
3377
+ #~ msgstr ""
3378
+ #~ "برای به روزرسانی لطفا لایسنس خود را وارد کنید. اگر لایسنس ندارید اینجا را "
3379
+ #~ "ببنید:"
3380
 
3381
  #~ msgid "details & pricing"
3382
  #~ msgstr "جزئیات و قیمت"
3383
 
3384
  #~ msgid ""
3385
+ #~ "To enable updates, please enter your license key on the <a href=\"%s"
3386
+ #~ "\">Updates</a> page. If you don't have a licence key, please see <a href="
3387
+ #~ "\"%s\">details & pricing</a>"
3388
  #~ msgstr ""
3389
+ #~ "برای به روز رسانی لایسنس خود را در قسمت <a href=\"%s\">به روزرسانی ها</"
3390
+ #~ "a> وارد کنید. اگر لایسنس ندارید اینجا را ببینید: <a href=\"%s\">جزئیات ئ "
3391
+ #~ "قیمت</a>"
3392
 
3393
+ #~ msgid ""
3394
+ #~ "Please note that all text will first be passed through the wp function "
3395
  #~ msgstr "دقت کنید که نکاک متن ها اول از تابع وردپرس عبور خواهند کرد"
3396
 
3397
  #~ msgid "Warning"
3407
  #~ msgstr "درون ریزی/برون بری"
3408
 
3409
  #~ msgid "Field groups are created in order from lowest to highest"
3410
+ #~ msgstr ""
3411
+ #~ "گروه های زمینه به ترتیب از کوچکترین شماره تا بزرگترین شماره نمایش داده می "
3412
+ #~ "شوند"
3413
 
3414
  #~ msgid "Upgrading data to "
3415
  #~ msgstr "به روز رسانی داده ها به %s"
3439
  #~ msgstr "نسخه حرفه ای لازم است"
3440
 
3441
  #~ msgid ""
3442
+ #~ "We have detected an issue which requires your attention: This website "
3443
+ #~ "makes use of premium add-ons (%s) which are no longer compatible with ACF."
3444
  #~ msgstr ""
3445
+ #~ "مشکلی مشاهده شده است که نیاز به توجه شما دارد. این وب سایت مجاز به "
3446
+ #~ "استفاده از افزودنی های پولی (%s) می باشد که دیگر سازگار نیستند"
3447
 
3448
+ #~ msgid ""
3449
+ #~ "Don't panic, you can simply roll back the plugin and continue using ACF "
3450
+ #~ "as you know it!"
3451
  #~ msgstr "مشکلی نیست. شما می توانید به نسخه ای که به آن عادت دارید برگردید!"
3452
 
3453
  #~ msgid "Roll back to ACF v%s"
3473
  #~ msgid "Load & Save Terms to Post"
3474
  #~ msgstr "خواندن و ذخیره دسته(ترم)ها برای نوشته"
3475
 
3476
+ #~ msgid ""
3477
+ #~ "Load value based on the post's terms and update the post's terms on save"
3478
+ #~ msgstr ""
3479
+ #~ "مقدار بر اساس دسته(ترم) نوشته خوانده شود و دسته های نوشته را در هنگام "
3480
+ #~ "ذخیره به روز رسانی کند"
3481
 
3482
  #~ msgid "Controls how HTML tags are rendered"
3483
  #~ msgstr "کنترل چگونگی نمایش تگ های HTML"
3546
  #~ msgid "No ACF groups selected"
3547
  #~ msgstr "هیچ گروه زمینه دلخواه پیشرفته ای انتخاب نشده است."
3548
 
3549
+ #~ msgid ""
3550
+ #~ "Create infinite rows of repeatable data with this versatile interface!"
3551
+ #~ msgstr ""
3552
+ #~ "ایجاد بی نهایت سطر از داده های تکرار شونده به وسیله این زمینه چند منظوره!"
3553
 
3554
  #~ msgid "Create image galleries in a simple and intuitive interface!"
3555
  #~ msgstr "ایجاد گالری های تصاویر در یک رابط کاربری ساده و دیداری!"
3565
 
3566
  #~ msgid "Creates a select field populated with Gravity Forms!"
3567
  #~ msgstr ""
3568
+ #~ "زمینه جدید از نوع انتخاب می سازد که می توانید یکی از فرم های GravityForms "
3569
+ #~ "که ساخته اید را از آن انتخاب کنید"
3570
 
3571
  #~ msgid "Date & Time Picker"
3572
  #~ msgstr "تاریخ و زمان"
3587
  #~ msgstr "افزودنی های افزونه زمینه های دلخواه پیشرفته"
3588
 
3589
  #~ msgid ""
3590
+ #~ "The following Add-ons are available to increase the functionality of the "
3591
+ #~ "Advanced Custom Fields plugin."
3592
+ #~ msgstr ""
3593
+ #~ "افزودنی های زیر برای افزایش قابلیت های افزونه زمینه های دلخواه پیشرفته "
3594
+ #~ "قابل استفاده هستند."
3595
 
3596
  #~ msgid ""
3597
+ #~ "Each Add-on can be installed as a separate plugin (receives updates) or "
3598
+ #~ "included in your theme (does not receive updates)."
3599
  #~ msgstr ""
3600
+ #~ "هر افزودنی می تواند به عنوان یک افزونه جدا ( قابل بروزرسانی) نصب شود و یا "
3601
+ #~ "در پوسته شما (غیرقابل بروزرسانی) قرار گیرد."
3602
 
3603
  #~ msgid "Purchase & Install"
3604
  #~ msgstr "خرید و نصب"
3612
  #~ msgid "Export to PHP"
3613
  #~ msgstr "برون بری به فرمت PHP"
3614
 
3615
+ #~ msgid ""
3616
+ #~ "ACF will create a .xml export file which is compatible with the native WP "
3617
+ #~ "import plugin."
3618
  #~ msgstr ""
3619
+ #~ "افزونه زمینه های دلخواه پیشرفته یک پرونده خروجی (.xml) را ایجاد خواهد کرد "
3620
+ #~ "که با افزونه Wordpress Importer سازگار است."
3621
 
3622
  #~ msgid ""
3623
+ #~ "Imported field groups <b>will</b> appear in the list of editable field "
3624
+ #~ "groups. This is useful for migrating fields groups between Wp websites."
3625
  #~ msgstr ""
3626
+ #~ "گروه های زمینه درون ریزی شده در لیست گروه های زمینه قابل ویرایش نمایش "
3627
+ #~ "داده <b>خواهند شد</b>. این روش برای انتقال گروه های زمینه در بین سایت های "
3628
+ #~ "وردپرسی مفید است."
3629
 
3630
  #~ msgid "Select field group(s) from the list and click \"Export XML\""
3631
+ #~ msgstr ""
3632
+ #~ "گروه زمینه را از لیست انتخاب کنید و سپس روی دکمه ((برون بری به فرمت XML)) "
3633
+ #~ "کلیک کنید"
3634
 
3635
  #~ msgid "Save the .xml file when prompted"
3636
  #~ msgstr "فایل .xml را وقتی آماده شد، ذخیره کنید"
3651
  #~ msgstr "همین ! از وردپرس لذت ببرید"
3652
 
3653
  #~ msgid "ACF will create the PHP code to include in your theme."
3654
+ #~ msgstr ""
3655
+ #~ "افزونه زمینه های دلخواه پیشرفته کد های PHP برای اضافه کردن در پوسته در "
3656
+ #~ "اختیاران قرار می دهد"
3657
 
3658
  #~ msgid ""
3659
+ #~ "Registered field groups <b>will not</b> appear in the list of editable "
3660
+ #~ "field groups. This is useful for including fields in themes."
3661
  #~ msgstr ""
3662
+ #~ "گروه های زمینه ساخته خواهند شد ولی قابل ویرایش <b>نخواهند بود</b>.یعنی در "
3663
+ #~ "لیست افزونه برای ویرایش دیده نمی شوند. این روش برای قرار دادن زمینه ها در "
3664
+ #~ "پوسته ها (برای مشتری) مفید است."
3665
 
3666
  #~ msgid ""
3667
+ #~ "Please note that if you export and register field groups within the same "
3668
+ #~ "WP, you will see duplicate fields on your edit screens. To fix this, "
3669
+ #~ "please move the original field group to the trash or remove the code from "
3670
+ #~ "your functions.php file."
3671
  #~ msgstr ""
3672
+ #~ "لطفا توجه کنید که اگر از هر دو روش ذکر شما در یک وردپرس به صورت هم زمان "
3673
+ #~ "استفاده کنید، در صفحه ویرایش مطالب، دو بار زمینه ها را خواهید دید. واضح "
3674
+ #~ "است که برای حل این مشکل یا باید زمینه ها را از افزونه حذف کنید یا کدهای "
3675
+ #~ "php را از پوسته و احتمالا functions.php حذف کنید."
3676
 
3677
  #~ msgid "Select field group(s) from the list and click \"Create PHP\""
3678
+ #~ msgstr ""
3679
+ #~ "گروه های زمینه را از لیست انتخاب کنید و سپس روی دکمه ((برون بری به فرمت "
3680
+ #~ "PHP)) کلیک کنید"
3681
 
3682
  #~ msgid "Copy the PHP code generated"
3683
  #~ msgstr "کدهای PHP تولید شده را کپی کنید"
3685
  #~ msgid "Paste into your functions.php file"
3686
  #~ msgstr "در فایل functions.php پوسته خود قرار دهید"
3687
 
3688
+ #~ msgid ""
3689
+ #~ "To activate any Add-ons, edit and use the code in the first few lines."
3690
  #~ msgstr "برای فعالسازی افزودنی ها،چند سطر اول کدها را ویرایش و استفاده کنید"
3691
 
3692
  #~ msgid "Notes"
3696
  #~ msgstr "قرار دادن در پوسته"
3697
 
3698
  #~ msgid ""
3699
+ #~ "The Advanced Custom Fields plugin can be included within a theme. To do "
3700
+ #~ "so, move the ACF plugin inside your theme and add the following code to "
3701
+ #~ "your functions.php file:"
3702
  #~ msgstr ""
3703
+ #~ "افزونه زمینه های دلخواه پیشرفته وردپرس می تواند در داخل یک پوسته قرار "
3704
+ #~ "بگیرد. برای انجام این کار، افزونه را به کنار پوسته تان انتقال دهید و "
3705
+ #~ "کدهای زیر را به پرونده functions.php اضافه کنید:"
3706
 
3707
  #~ msgid ""
3708
+ #~ "To remove all visual interfaces from the ACF plugin, you can use a "
3709
+ #~ "constant to enable lite mode. Add the following code to your functions."
3710
+ #~ "php file <b>before</b> the include_once code:"
3711
  #~ msgstr ""
3712
+ #~ "برای حذف همه رابط های بصری از افزونه زمینه های دلخواه پیشرفته (دیده نشدن "
3713
+ #~ "افزونه)، می توانید از یک ثابت (کانستنت) برای فعال سازی حالت سبک (lite) "
3714
+ #~ "استفاده کنید. کد زیر را به پرونده functions.php خود <b>قبل از</b> تابع "
3715
+ #~ "include_once اضافه کنید:"
3716
 
3717
  #~ msgid "Back to export"
3718
  #~ msgstr "بازگشت به برون بری"
3724
  #~ msgstr "کدهای فعالسازی در افزونه ها افزایش یافته اند!"
3725
 
3726
  #~ msgid ""
3727
+ #~ "Add-ons are now activated by downloading and installing individual "
3728
+ #~ "plugins. Although these plugins will not be hosted on the wordpress.org "
3729
+ #~ "repository, each Add-on will continue to receive updates in the usual way."
3730
  #~ msgstr ""
3731
+ #~ "افزودنی ها الان با دریافت و نصب افزونه های جداگانه فعال می شوند. با اینکه "
3732
+ #~ "این افزونه ها در مخزن وردپرس پشتیبانی نخواهند شد، هر افزودنی به صورت "
3733
+ #~ "معمول به روز رسانی را دریافت خواهد کرد."
3734
 
3735
  #~ msgid "All previous Add-ons have been successfully installed"
3736
  #~ msgstr "تمام افزونه های قبلی با موفقیت نصب شده اند"
3741
  #~ msgid "Download your activated Add-ons"
3742
  #~ msgstr "افزودنی های فعال شده ی خود را دانلود کنید"
3743
 
3744
+ #~ msgid ""
3745
+ #~ "This website does not use premium Add-ons and will not be affected by "
3746
+ #~ "this change."
3747
+ #~ msgstr ""
3748
+ #~ "این سایت از افزودنی های ویژه استفاده نمی کند و تحت تأثیر این تغییر قرار "
3749
+ #~ "نخواهد گرفت"
3750
 
3751
  #~ msgid "Easier Development"
3752
  #~ msgstr "توسعه آسانتر"
3764
  #~ msgstr "زمینه رمزعبور"
3765
 
3766
  #~ msgid ""
3767
+ #~ "Creating your own field type has never been easier! Unfortunately, "
3768
+ #~ "version 3 field types are not compatible with version 4."
3769
  #~ msgstr ""
3770
+ #~ "ساخت نوع زمینه دلخواه برای خودتان هرگز به این آسانی نبوده! متأسفانه، "
3771
+ #~ "انواع زمینه های نسخه 3 با نسخه 4 سازگار نیستند."
3772
 
3773
  #~ msgid "Migrating your field types is easy, please"
3774
+ #~ msgstr ""
3775
+ #~ "انتقال انواع زمینه ها آسان است. پس لطفا افزونه خود را بروزرسانی کنید."
3776
 
3777
  #~ msgid "follow this tutorial"
3778
  #~ msgstr "این آموزش را دنبال کنید"
3784
  #~ msgstr "اکشن ها و فیلترها"
3785
 
3786
  #~ msgid ""
3787
+ #~ "All actions & filters have received a major facelift to make customizing "
3788
+ #~ "ACF even easier! Please"
3789
+ #~ msgstr ""
3790
+ #~ "همه اکشن ها و فیلترها دارای تغییرات عمده ای شدند تا دلخواه سازی ACF از "
3791
+ #~ "قبل آسانتر شود"
3792
 
3793
  #~ msgid "read this guide"
3794
  #~ msgstr "لطفا راهنما را مطالعه فرمایید"
3809
  #~ msgstr "تغییرات پایگاه داده"
3810
 
3811
  #~ msgid ""
3812
+ #~ "Absolutely <strong>no</strong> changes have been made to the database "
3813
+ #~ "between versions 3 and 4. This means you can roll back to version 3 "
3814
+ #~ "without any issues."
3815
  #~ msgstr ""
3816
+ #~ "<strong>هیچ تغییری</strong> در پایگاه داده بین نسخه 3 و 4 ایجاد نشده است. "
3817
+ #~ "این بدین معنی است که شما می توانید بدون هیچ گونه مسئله ای به نسخه 3 "
3818
+ #~ "برگردید."
3819
 
3820
  #~ msgid "Potential Issues"
3821
  #~ msgstr "مسائل بالقوه"
3822
 
3823
  #~ msgid ""
3824
+ #~ "Do to the sizable changes surounding Add-ons, field types and action/"
3825
+ #~ "filters, your website may not operate correctly. It is important that you "
3826
+ #~ "read the full"
3827
  #~ msgstr ""
3828
+ #~ "با توجه به تغییرات افزودنی ها، انواع زمینه ها و اکشن ها/فیلترها، ممکن است "
3829
+ #~ "سایت شما به درستی عمل نکند. پس لازم است راهنمای کامل "
3830
 
3831
  #~ msgid "Migrating from v3 to v4"
3832
  #~ msgstr "مهاجرت از نسخه 3 به نسخه 4 را مطالعه کنید"
3838
  #~ msgstr "واقعا مهم!"
3839
 
3840
  #~ msgid ""
3841
+ #~ "If you updated the ACF plugin without prior knowledge of such changes, "
3842
+ #~ "please roll back to the latest"
3843
  #~ msgstr ""
3844
+ #~ "اگر شما افزونه زمینه های دلخواه پیشرفته وردپرس را بدون آگاهی از آخرین "
3845
+ #~ "تغییرات بروزرسانی کردید، لطفا به نسخه قبل برگردید "
3846
 
3847
  #~ msgid "version 3"
3848
  #~ msgstr "نسخه 3"
3854
  #~ msgstr "از شما متشکرم"
3855
 
3856
  #~ msgid ""
3857
+ #~ "A <strong>BIG</strong> thank you to everyone who has helped test the "
3858
+ #~ "version 4 beta and for all the support I have received."
3859
  #~ msgstr ""
3860
+ #~ "یک <strong>تشکر بزرگ</strong> از شما و همه کسانی که در تست نسخه 4 بتا به "
3861
+ #~ "من کمک کردند میکنم. برای تمام کمک ها و پشتیبانی هایی که دریافت کردم نیز "
3862
+ #~ "از همه شما متشکرم."
3863
 
3864
  #~ msgid "Without you all, this release would not have been possible!"
3865
  #~ msgstr "بدون همه شما انتشار این نسخه امکان پذیر نبود!"
3874
  #~ msgstr "بازنگری"
3875
 
3876
  #~ msgid ""
3877
+ #~ "Previously, all Add-ons were unlocked via an activation code (purchased "
3878
+ #~ "from the ACF Add-ons store). New to v4, all Add-ons act as separate "
3879
+ #~ "plugins which need to be individually downloaded, installed and updated."
3880
  #~ msgstr ""
3881
+ #~ "پیش از این، قفل همه افزودنی ها از طریق یک کد فعالسازی (خریداری شده از "
3882
+ #~ "فروشگاه افزودنی ها) باز می شدند.اما در نسخه 4 همه آنها به صورت افزودنی "
3883
+ #~ "های جداگانه هستند و باید به صورت جدا دریافت، نصب و بروزرسانی شوند."
3884
 
3885
+ #~ msgid ""
3886
+ #~ "This page will assist you in downloading and installing each available "
3887
+ #~ "Add-on."
3888
  #~ msgstr "این برگه به شما در دریافت و نصب هر افزودنی موجود کمک خواهد کرد."
3889
 
3890
  #~ msgid "Available Add-ons"
3891
  #~ msgstr "افزودنی های موجود"
3892
 
3893
+ #~ msgid ""
3894
+ #~ "The following Add-ons have been detected as activated on this website."
3895
  #~ msgstr "افزودنی های زیر به صورت فعال در این سایت شناسایی شده اند"
3896
 
3897
  #~ msgid "Installation"
3909
  #~ msgid "Plugins > Add New > Upload"
3910
  #~ msgstr "افزونه ها > افزودن > بارگذاری"
3911
 
3912
+ #~ msgid ""
3913
+ #~ "Use the uploader to browse, select and install your Add-on (.zip file)"
3914
+ #~ msgstr ""
3915
+ #~ "از بارگذار برای انتخاب فایل استفاده کنید. افزودنی خود را (پرونده ZIP) "
3916
+ #~ "انتخاب و نصب نمایید"
3917
 
3918
+ #~ msgid ""
3919
+ #~ "Once the plugin has been uploaded and installed, click the 'Activate "
3920
+ #~ "Plugin' link"
3921
+ #~ msgstr ""
3922
+ #~ "هنگامی که یک افزونه دریافت و نصب شده است، روی لینک (( فعال کردن افزونه)) "
3923
+ #~ "کلیک کنید"
3924
 
3925
  #~ msgid "The Add-on is now installed and activated!"
3926
  #~ msgstr "افزودنی در حال حاضر نصب و فعال سازی شده است!"
3956
  #~ msgstr "آبجکت تصویر"
3957
 
3958
  #~ msgid "Text &amp; HTML entered here will appear inline with the fields"
3959
+ #~ msgstr ""
3960
+ #~ "متن و کد HTML وارد شده در اینجا در خط همراه با زمینه نمایش داده خواهد شد"
3961
 
3962
  #~ msgid "Enter your choices one per line"
3963
  #~ msgstr "انتخاب ها را در هر خط وارد کنید"
3992
  #~ msgid "Save format"
3993
  #~ msgstr "فرمت ذخیره"
3994
 
3995
+ #~ msgid ""
3996
+ #~ "This format will determin the value saved to the database and returned "
3997
+ #~ "via the API"
3998
+ #~ msgstr ""
3999
+ #~ "این فرمت مقدار ذخیره شده در پایگاه داده را مشخص خواهد کرد و از طریق API "
4000
+ #~ "قابل خواندن است"
4001
 
4002
  #~ msgid "\"yymmdd\" is the most versatile save format. Read more about"
4003
  #~ msgstr "\"yymmdd\" بهترین و پر استفاده ترین فرمت ذخیره است. اطلاعات بیشتر"
4008
  #~ msgid "This format will be seen by the user when entering a value"
4009
  #~ msgstr "این فرمت توسط کاربر در هنگام وارد کردن یک مقدار دیده خواهد شد"
4010
 
4011
+ #~ msgid ""
4012
+ #~ "\"dd/mm/yy\" or \"mm/dd/yy\" are the most used Display Formats. Read more "
4013
+ #~ "about"
4014
+ #~ msgstr ""
4015
+ #~ "\"dd/mm/yy\" یا \"mm/dd/yy\" پر استفاده ترین قالب های نمایش تاریخ می "
4016
+ #~ "باشند. اطلاعات بیشتر"
4017
 
4018
  #~ msgid "Field Order"
4019
  #~ msgstr "ترتیب زمینه"
lang/acf-it_IT.mo CHANGED
Binary file
lang/acf-it_IT.po CHANGED
@@ -2,8 +2,8 @@ msgid ""
2
  msgstr ""
3
  "Project-Id-Version: Advanced Custom Fields Pro v5.2.9\n"
4
  "Report-Msgid-Bugs-To: http://support.advancedcustomfields.com\n"
5
- "POT-Creation-Date: 2017-10-11 12:47+0200\n"
6
- "PO-Revision-Date: 2017-10-11 12:47+0200\n"
7
  "Last-Translator: Elliot Condon <e@elliotcondon.com>\n"
8
  "Language-Team: Elliot Condon <e@elliotcondon.com>\n"
9
  "Language: it_IT\n"
@@ -27,109 +27,109 @@ msgstr ""
27
  msgid "Advanced Custom Fields"
28
  msgstr "Campi Personalizzati Avanzati"
29
 
30
- #: acf.php:369 includes/admin/admin.php:117
31
  msgid "Field Groups"
32
  msgstr "Field Group"
33
 
34
- #: acf.php:370
35
  msgid "Field Group"
36
  msgstr "Field Group"
37
 
38
- #: acf.php:371 acf.php:403 includes/admin/admin.php:118
39
  #: pro/fields/class-acf-field-flexible-content.php:557
40
  msgid "Add New"
41
  msgstr "Aggiungi Nuovo"
42
 
43
- #: acf.php:372
44
  msgid "Add New Field Group"
45
  msgstr ""
46
  "Aggiungi Nuovo \n"
47
  "Field Group"
48
 
49
- #: acf.php:373
50
  msgid "Edit Field Group"
51
  msgstr ""
52
  "Modifica \n"
53
  "Field Group"
54
 
55
- #: acf.php:374
56
  msgid "New Field Group"
57
  msgstr ""
58
  "Nuovo \n"
59
  "Field Group"
60
 
61
- #: acf.php:375
62
  msgid "View Field Group"
63
  msgstr ""
64
  "Visualizza \n"
65
  "Field Group"
66
 
67
- #: acf.php:376
68
  msgid "Search Field Groups"
69
  msgstr ""
70
  "Cerca \n"
71
  "Field Group"
72
 
73
- #: acf.php:377
74
  msgid "No Field Groups found"
75
  msgstr ""
76
  "Nessun \n"
77
  "Field Group\n"
78
  " Trovato"
79
 
80
- #: acf.php:378
81
  msgid "No Field Groups found in Trash"
82
  msgstr ""
83
  "Nessun \n"
84
  "Field Group\n"
85
  " trovato nel cestino"
86
 
87
- #: acf.php:401 includes/admin/admin-field-group.php:182
88
  #: includes/admin/admin-field-group.php:275
89
  #: includes/admin/admin-field-groups.php:510
90
  #: pro/fields/class-acf-field-clone.php:807
91
  msgid "Fields"
92
  msgstr "Campi"
93
 
94
- #: acf.php:402
95
  msgid "Field"
96
  msgstr "Campo"
97
 
98
- #: acf.php:404
99
  msgid "Add New Field"
100
  msgstr "Aggiungi Nuovo Campo"
101
 
102
- #: acf.php:405
103
  msgid "Edit Field"
104
  msgstr "Modifica Campo"
105
 
106
- #: acf.php:406 includes/admin/views/field-group-fields.php:41
107
  #: includes/admin/views/settings-info.php:105
108
  msgid "New Field"
109
  msgstr "Nuovo Campo"
110
 
111
- #: acf.php:407
112
  msgid "View Field"
113
  msgstr "Visualizza Campo"
114
 
115
- #: acf.php:408
116
  msgid "Search Fields"
117
  msgstr "Ricerca Campi"
118
 
119
- #: acf.php:409
120
  msgid "No Fields found"
121
  msgstr "Nessun Campo trovato"
122
 
123
- #: acf.php:410
124
  msgid "No Fields found in Trash"
125
  msgstr "Nessun Campo trovato nel cestino"
126
 
127
- #: acf.php:449 includes/admin/admin-field-group.php:390
128
  #: includes/admin/admin-field-groups.php:567
129
  msgid "Inactive"
130
  msgstr "Inattivo"
131
 
132
- #: acf.php:454
133
  #, php-format
134
  msgid "Inactive <span class=\"count\">(%s)</span>"
135
  msgid_plural "Inactive <span class=\"count\">(%s)</span>"
@@ -186,6 +186,7 @@ msgid "Location"
186
  msgstr "Posizione"
187
 
188
  #: includes/admin/admin-field-group.php:184
 
189
  msgid "Settings"
190
  msgstr "Impostazioni"
191
 
@@ -215,7 +216,7 @@ msgstr "copia"
215
  #: includes/admin/views/field-group-field-conditional-logic.php:154
216
  #: includes/admin/views/field-group-locations.php:29
217
  #: includes/admin/views/html-location-group.php:3
218
- #: includes/api/api-helpers.php:3964
219
  msgid "or"
220
  msgstr "o"
221
 
@@ -423,6 +424,13 @@ msgstr "Applica"
423
  msgid "Bulk Actions"
424
  msgstr "Azioni di massa"
425
 
 
 
 
 
 
 
 
426
  #: includes/admin/admin.php:113
427
  #: includes/admin/views/field-group-options.php:118
428
  msgid "Custom Fields"
@@ -462,13 +470,9 @@ msgstr "Informazioni"
462
  msgid "What's New"
463
  msgstr "Cosa c'è di nuovo"
464
 
465
- #: includes/admin/settings-tools.php:50
466
- #: includes/admin/views/settings-tools-export.php:19
467
- #: includes/admin/views/settings-tools.php:31
468
- msgid "Tools"
469
- msgstr "Strumenti"
470
-
471
  #: includes/admin/settings-tools.php:147 includes/admin/settings-tools.php:380
 
 
472
  msgid "No field groups selected"
473
  msgstr ""
474
  "Nessun \n"
@@ -476,29 +480,130 @@ msgstr ""
476
  " selezionato"
477
 
478
  #: includes/admin/settings-tools.php:184
479
- #: includes/fields/class-acf-field-file.php:155
 
480
  msgid "No file selected"
481
  msgstr "Nessun file selezionato"
482
 
483
  #: includes/admin/settings-tools.php:197
 
484
  msgid "Error uploading file. Please try again"
485
  msgstr "Errore caricamento file. Per favore riprova"
486
 
487
  #: includes/admin/settings-tools.php:206
 
488
  msgid "Incorrect file type"
489
  msgstr "Tipo file non corretto"
490
 
491
  #: includes/admin/settings-tools.php:223
 
492
  msgid "Import file empty"
493
  msgstr "File importato vuoto"
494
 
495
  #: includes/admin/settings-tools.php:331
 
496
  #, php-format
497
  msgid "Imported 1 field group"
498
  msgid_plural "Imported %s field groups"
499
  msgstr[0] "Importato 1 field group"
500
  msgstr[1] "Importati %s field groups"
501
 
 
2
  msgstr ""
3
  "Project-Id-Version: Advanced Custom Fields Pro v5.2.9\n"
4
  "Report-Msgid-Bugs-To: http://support.advancedcustomfields.com\n"
5
+ "POT-Creation-Date: 2017-11-22 09:29+0100\n"
6
+ "PO-Revision-Date: 2017-11-22 09:31+0100\n"
7
  "Last-Translator: Elliot Condon <e@elliotcondon.com>\n"
8
  "Language-Team: Elliot Condon <e@elliotcondon.com>\n"
9
  "Language: it_IT\n"
27
  msgid "Advanced Custom Fields"
28
  msgstr "Campi Personalizzati Avanzati"
29
 
30
+ #: acf.php:370 includes/admin/admin.php:117
31
  msgid "Field Groups"
32
  msgstr "Field Group"
33
 
34
+ #: acf.php:371
35
  msgid "Field Group"
36
  msgstr "Field Group"
37
 
38
+ #: acf.php:372 acf.php:404 includes/admin/admin.php:118
39
  #: pro/fields/class-acf-field-flexible-content.php:557
40
  msgid "Add New"
41
  msgstr "Aggiungi Nuovo"
42
 
43
+ #: acf.php:373
44
  msgid "Add New Field Group"
45
  msgstr ""
46
  "Aggiungi Nuovo \n"
47
  "Field Group"
48
 
49
+ #: acf.php:374
50
  msgid "Edit Field Group"
51
  msgstr ""
52
  "Modifica \n"
53
  "Field Group"
54
 
55
+ #: acf.php:375
56
  msgid "New Field Group"
57
  msgstr ""
58
  "Nuovo \n"
59
  "Field Group"
60
 
61
+ #: acf.php:376
62
  msgid "View Field Group"
63
  msgstr ""
64
  "Visualizza \n"
65
  "Field Group"
66
 
67
+ #: acf.php:377
68
  msgid "Search Field Groups"
69
  msgstr ""
70
  "Cerca \n"
71
  "Field Group"
72
 
73
+ #: acf.php:378
74
  msgid "No Field Groups found"
75
  msgstr ""
76
  "Nessun \n"
77
  "Field Group\n"
78
  " Trovato"
79
 
80
+ #: acf.php:379
81
  msgid "No Field Groups found in Trash"
82
  msgstr ""
83
  "Nessun \n"
84
  "Field Group\n"
85
  " trovato nel cestino"
86
 
87
+ #: acf.php:402 includes/admin/admin-field-group.php:182
88
  #: includes/admin/admin-field-group.php:275
89
  #: includes/admin/admin-field-groups.php:510
90
  #: pro/fields/class-acf-field-clone.php:807
91
  msgid "Fields"
92
  msgstr "Campi"
93
 
94
+ #: acf.php:403
95
  msgid "Field"
96
  msgstr "Campo"
97
 
98
+ #: acf.php:405
99
  msgid "Add New Field"
100
  msgstr "Aggiungi Nuovo Campo"
101
 
102
+ #: acf.php:406
103
  msgid "Edit Field"
104
  msgstr "Modifica Campo"
105
 
106
+ #: acf.php:407 includes/admin/views/field-group-fields.php:41
107
  #: includes/admin/views/settings-info.php:105
108
  msgid "New Field"
109
  msgstr "Nuovo Campo"
110
 
111
+ #: acf.php:408
112
  msgid "View Field"
113
  msgstr "Visualizza Campo"
114
 
115
+ #: acf.php:409
116
  msgid "Search Fields"
117
  msgstr "Ricerca Campi"
118
 
119
+ #: acf.php:410
120
  msgid "No Fields found"
121
  msgstr "Nessun Campo trovato"
122
 
123
+ #: acf.php:411
124
  msgid "No Fields found in Trash"
125
  msgstr "Nessun Campo trovato nel cestino"
126
 
127
+ #: acf.php:450 includes/admin/admin-field-group.php:390
128
  #: includes/admin/admin-field-groups.php:567
129
  msgid "Inactive"
130
  msgstr "Inattivo"
131
 
132
+ #: acf.php:455
133
  #, php-format
134
  msgid "Inactive <span class=\"count\">(%s)</span>"
135
  msgid_plural "Inactive <span class=\"count\">(%s)</span>"
186
  msgstr "Posizione"
187
 
188
  #: includes/admin/admin-field-group.php:184
189
+ #: includes/admin/tools/class-acf-admin-tool-export.php:295
190
  msgid "Settings"
191
  msgstr "Impostazioni"
192
 
216
  #: includes/admin/views/field-group-field-conditional-logic.php:154
217
  #: includes/admin/views/field-group-locations.php:29
218
  #: includes/admin/views/html-location-group.php:3
219
+ #: includes/api/api-helpers.php:3965
220
  msgid "or"
221
  msgstr "o"
222
 
424
  msgid "Bulk Actions"
425
  msgstr "Azioni di massa"
426
 
427
+ #: includes/admin/admin-tools.php:116 includes/admin/settings-tools.php:50
428
+ #: includes/admin/views/html-admin-tools.php:21
429
+ #: includes/admin/views/settings-tools-export.php:19
430
+ #: includes/admin/views/settings-tools.php:31
431
+ msgid "Tools"
432
+ msgstr "Strumenti"
433
+
434
  #: includes/admin/admin.php:113
435
  #: includes/admin/views/field-group-options.php:118
436
  msgid "Custom Fields"
470
  msgid "What's New"
471
  msgstr "Cosa c'è di nuovo"
472
 
 
 
 
 
 
 
473
  #: includes/admin/settings-tools.php:147 includes/admin/settings-tools.php:380
474
+ #: includes/admin/tools/class-acf-admin-tool-export.php:97
475
+ #: includes/admin/tools/class-acf-admin-tool-export.php:135
476
  msgid "No field groups selected"
477
  msgstr ""
478
  "Nessun \n"
480
  " selezionato"
481
 
482
  #: includes/admin/settings-tools.php:184
483
+ #: includes/admin/tools/class-acf-admin-tool-import.php:100
484
+ #: includes/fields/class-acf-field-file.php:159
485
  msgid "No file selected"
486
  msgstr "Nessun file selezionato"
487
 
488
  #: includes/admin/settings-tools.php:197
489
+ #: includes/admin/tools/class-acf-admin-tool-import.php:113
490
  msgid "Error uploading file. Please try again"
491
  msgstr "Errore caricamento file. Per favore riprova"
492
 
493
  #: includes/admin/settings-tools.php:206
494
+ #: includes/admin/tools/class-acf-admin-tool-import.php:122
495
  msgid "Incorrect file type"
496
  msgstr "Tipo file non corretto"
497
 
498
  #: includes/admin/settings-tools.php:223
499
+ #: includes/admin/tools/class-acf-admin-tool-import.php:139
500
  msgid "Import file empty"
501
  msgstr "File importato vuoto"
502
 
503
  #: includes/admin/settings-tools.php:331
504
+ #: includes/admin/tools/class-acf-admin-tool-import.php:247
505
  #, php-format
506
  msgid "Imported 1 field group"
507
  msgid_plural "Imported %s field groups"
508
  msgstr[0] "Importato 1 field group"
509
  msgstr[1] "Importati %s field groups"
510
 
511
+ #: includes/admin/t