Admin Columns - Version 2.1.3

Version Description

  • [Updated] Undo changes from 2.1.2, will be in the next major release
  • [Fixed] Moved assignment of capabilities to plugin activation hook
  • [Fixed] Hook into manage_columns filters later to prevent overwriting from other plugins
  • [Fixed] Filters for column_path
Download this release

Release Info

Developer tschutter
Plugin Icon 128x128 Admin Columns
Version 2.1.3
Comparing to
See all releases

Code changes from version 2.1.2 to 2.1.3

README.md DELETED
File without changes
assets/css/admin-column.css CHANGED
@@ -1,826 +1,1003 @@
1
- #cpac a:focus,
2
- #cpac a:active {
3
- outline: none;
4
- }
5
- /**
6
- * General
7
- * ----------------------------------------------------------------------------
8
- */
9
- #icon-codepress-admin-columns {
10
- background: transparent url('../images/icon.png') no-repeat 0 0;
11
- }
12
- .cpac-settings-link {
13
- float: right;
14
- margin: 12px 14px 5px 0;
15
- background: transparent url('../images/settings.png') no-repeat 0 0;
16
- padding-left: 20px;
17
- text-decoration: none;
18
- display: inline-block;
19
- line-height: 16px;
20
- }
21
- .cpac-settings-link.current {
22
- font-weight: bold;
23
- }
24
- .rtl .cpac-settings-link {
25
- float: left;
26
- margin: 12px 0 5px 14px;
27
- padding-right: 20px;
28
- padding-left: 0;
29
- }
30
- a.help {
31
- background: transparent url('../images/help.png') no-repeat 0 0;
32
- display: inline-block;
33
- width: 16px;
34
- height: 16px;
35
- }
36
- .button.loading {
37
- padding-right: 25px;
38
- position: relative;
39
- }
40
- .rtl .button.loading {
41
- padding-left: 25px;
42
- padding-right: 0;
43
- }
44
- .button.loading span {
45
- position: absolute;
46
- top: 2px;
47
- right: 6px;
48
- background: transparent url('../images/loading.gif') no-repeat right 50%;
49
- width: 16px;
50
- height: 16px;
51
- display: inline-block;
52
- }
53
- .rtl .button.loading span {
54
- left: 6px;
55
- right: auto;
56
- }
57
- /**
58
- * Icons
59
- * ----------------------------------------------------------------------------
60
- */
61
- .icon-yes {
62
- background: transparent url(../images/yes.png) no-repeat 0 0;
63
- width: 16px;
64
- height: 16px;
65
- display: inline-block;
66
- position: relative;
67
- top: 2px;
68
- }
69
- .icon-no {
70
- background: transparent url(../images/no.png) no-repeat 0 0;
71
- width: 16px;
72
- height: 16px;
73
- display: inline-block;
74
- position: relative;
75
- top: 2px;
76
- }
77
- /**
78
- * Header
79
- * ----------------------------------------------------------------------------
80
- */
81
- h2.cpac-nav-tab-wrapper {
82
- margin-bottom: 10px;
83
- }
84
- /**
85
- * Menu
86
- * ----------------------------------------------------------------------------
87
- */
88
- .cpac-menu {
89
- clear: both;
90
- overflow: hidden;
91
- margin-bottom: 10px;
92
- }
93
- .cpac-menu .subsubsub {
94
- white-space: normal;
95
- margin-right: 14px;
96
- width: 100%;
97
- margin: 0 14px 0 0;
98
- }
99
- .cpac-menu .subsubsub li.first {
100
- font-weight: bold;
101
- min-width: 90px;
102
- }
103
- /**
104
- * Structure
105
- * ----------------------------------------------------------------------------
106
- */
107
- .columns-container {
108
- margin-right: 300px;
109
- max-width: 700px;
110
- }
111
- .columns-container .columns-left {
112
- float: left;
113
- width: 100%;
114
- }
115
- .columns-container .columns-right {
116
- float: right;
117
- margin-right: -300px;
118
- width: 280px;
119
- }
120
- .columns-container .columns-right .columns-right-inside.fixed {
121
- position: fixed;
122
- top: 40px;
123
- width: 280px;
124
- }
125
- /**
126
- * UI Sortable Plugin
127
- * ----------------------------------------------------------------------------
128
- */
129
- .ui-sortable-helper {
130
- -webkit-box-shadow: 1px 3px 6px 0px rgba(1, 1, 1, 0.4);
131
- box-shadow: 1px 3px 6px 0px rgba(1, 1, 1, 0.4);
132
- }
133
- .ui-sortable-helper .column-meta {
134
- border-width: 1px;
135
- }
136
- .cpac-placeholder {
137
- visibility: visible !important;
138
- border-top: 1px solid #dfdfdf;
139
- padding: 5px 4px 7px 0;
140
- }
141
- .cpac-placeholder .inner-placeholder {
142
- border: 1px dashed #808080;
143
- background: #eee;
144
- width: 100%;
145
- height: 100%;
146
- }
147
- .cpac-placeholder :first-child {
148
- border: none;
149
- }
150
- /**
151
- * Columns
152
- * ----------------------------------------------------------------------------
153
- */
154
- .columns-left .cpac-boxes .cpac-columns form {
155
- box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
156
- }
157
- /**
158
- * Column
159
- * ----------------------------------------------------------------------------
160
- */
161
- .cpac-column .column-meta {
162
- border-style: solid;
163
- border-color: #dfdfdf;
164
- border-width: 1px 1px 0;
165
- background: #fcfcfc;
166
- }
167
- .cpac-column .column-meta:nth-child(2n) .column-meta {
168
- background: #f9f9f9;
169
- }
170
- .cpac-column .column-meta img {
171
- margin-right: 3px;
172
- }
173
- .cpac-column .column-meta table {
174
- border: none;
175
- background: transparent;
176
- border-radius: 0;
177
- }
178
- .cpac-column .column-meta table tr td {
179
- vertical-align: top;
180
- height: 18px;
181
- border: none;
182
- padding: 11px 8px;
183
- border-width: 1px 0 0;
184
- border-style: solid;
185
- border-color: transparent;
186
- }
187
- .cpac-column .column-meta table tr td.column_sort {
188
- width: 10px;
189
- background: transparent url('../images/drag.png') no-repeat 8px 8px;
190
- cursor: move;
191
- }
192
- .cpac-column .column-meta table tr td.column_label {
193
- width: 55%;
194
- font-weight: bold;
195
- vertical-align: middle;
196
- position: relative;
197
- }
198
- .cpac-column .column-meta table tr td.column_label .inner {
199
- position: relative;
200
- overflow: hidden;
201
- height: 18px;
202
- }
203
- .cpac-column .column-meta table tr td.column_label .inner > a {
204
- color: #5a5a5a;
205
- padding: 0 4px;
206
- }
207
- .cpac-column .column-meta table tr td.column_label .inner > a:hover {
208
- color: #333333;
209
- }
210
- .cpac-column .column-meta table tr td.column_label .inner > a.edit-button,
211
- .cpac-column .column-meta table tr td.column_label .inner > a.remove-button {
212
- display: none;
213
- color: #a00;
214
- text-decoration: none;
215
- text-shadow: none;
216
- font-weight: normal;
217
- margin-left: 5px;
218
- font-size: 12px;
219
- }
220
- .cpac-column .column-meta table tr td.column_label .inner > a.edit-button:hover,
221
- .cpac-column .column-meta table tr td.column_label .inner > a.remove-button:hover {
222
- color: #f00;
223
- }
224
- .cpac-column .column-meta table tr td.column_label .inner > a.edit-button {
225
- color: #0074a2;
226
- }
227
- .cpac-column .column-meta table tr td.column_label .inner > a.edit-button:hover {
228
- color: #2ea2cc;
229
- }
230
- .cpac-column .column-meta table tr td.column_label .inner .meta {
231
- display: inline-block;
232
- float: right;
233
- font-weight: normal;
234
- color: #b2b2b2;
235
- font-size: 12px;
236
- }
237
- .cpac-column .column-meta table tr td.column_label .inner .meta span {
238
- cursor: pointer;
239
- }
240
- .cpac-column .column-meta table tr td.column_label span.vers {
241
- float: left;
242
- }
243
- .cpac-column .column-meta table tr td.column_type {
244
- width: auto;
245
- text-align: right;
246
- vertical-align: middle;
247
- color: #999999;
248
- padding-right: 0;
249
- }
250
- .cpac-column .column-meta table tr td.column_type a {
251
- color: #999999;
252
- }
253
- .cpac-column .column-meta table tr td.column_edit {
254
- width: 38px;
255
- background: transparent url('../images/arrow.png') no-repeat 23px 18px;
256
- cursor: pointer;
257
- }
258
- .cpac-column .column-meta:hover .column_label .inner > a.remove-button {
259
- display: inline-block;
260
- }
261
- .cpac-column .column-meta:hover .column_label .inner > a.edit-button {
262
- display: inline-block;
263
- }
264
- .cpac-column .column-meta span.vers {
265
- padding-top: 2px;
266
- }
267
- .cpac-column .column-meta span.vers .comment-grey-bubble {
268
- background: transparent url("../images/comment-grey-bubble.png") no-repeat 0 0;
269
- height: 12px;
270
- width: 12px;
271
- float: right;
272
- }
273
- .cpac-column .column-form {
274
- display: none;
275
- border-width: 1px 1px 0;
276
- border-style: solid;
277
- border-color: #dfdfdf;
278
- position: relative;
279
- }
280
- .cpac-column .column-form table {
281
- border: none;
282
- background: #fcfcfc;
283
- }
284
- .cpac-column .column-form table tr td {
285
- vertical-align: top;
286
- border: none;
287
- padding: 8px;
288
- background: #ffffff;
289
- border-top: 1px solid #F5F5F5;
290
- }
291
- .cpac-column .column-form table tr td select,
292
- .cpac-column .column-form table tr td input[type=text] {
293
- width: 99.95%;
294
- }
295
- .cpac-column .column-form table tr td select optgroup:nth-child(2n) {
296
- background: #F9F9F9;
297
- }
298
- .cpac-column .column-form table tr td.label {
299
- position: relative;
300
- overflow: visible;
301
- background: #F9F9F9;
302
- background: #f5f5f5;
303
- border-right: 1px solid #E1E1E1;
304
- vertical-align: top;
305
- width: 34%;
306
- border-top: 1px solid #F0F0F0;
307
- }
308
- .cpac-column .column-form table tr td.label label {
309
- font-weight: bold;
310
- color: #333333;
311
- display: block;
312
- position: relative;
313
- }
314
- .cpac-column .column-form table tr td.label p {
315
- color: #666666;
316
- display: block;
317
- font-size: 12px;
318
- font-style: normal;
319
- line-height: 16px;
320
- margin: 0 !important;
321
- }
322
- .cpac-column .column-form table tr td.label p.description {
323
- display: none;
324
- position: absolute;
325
- z-index: 99;
326
- top: 30px;
327
- left: 0;
328
- background: #eaf2fa;
329
- border-radius: 5px;
330
- border: 1px solid #c7d7e2;
331
- padding: 5px 8px !important;
332
- font-weight: normal;
333
- }
334
- .cpac-column .column-form table tr td.label p.description em {
335
- display: block;
336
- color: #999;
337
- }
338
- .cpac-column .column-form table tr td.input label {
339
- padding-left: 10px;
340
- padding-right: 0;
341
- }
342
- .cpac-column .column-form table tr td.input div.msg {
343
- margin-top: 5px;
344
- display: none;
345
- color: #333;
346
- padding: 6px 8px;
347
- background-color: #ffebe8;
348
- border: 1px solid #fff;
349
- -moz-border-radius: 3px;
350
- -webkit-border-radius: 3px;
351
- border-radius: 3px;
352
- }
353
- .cpac-column .column-form table tr.column_width div.description {
354
- font-size: 11px;
355
- width: 12%;
356
- float: left;
357
- text-align: middle;
358
- }
359
- .cpac-column .column-form table tr.column_width div.input-width-range {
360
- float: left;
361
- position: relative;
362
- width: 87%;
363
- margin-top: 4px;
364
- }
365
- .cpac-column .column-form table tr.column_width div.input-width-range .ui-slider-handle {
366
- cursor: ew-resize;
367
- }
368
- .cpac-column .column-form table tr.column_image_size {
369
- border: 10px solid red;
370
- }
371
- .cpac-column .column-form table tr.column_image_size td.input label.custom-size {
372
- display: inline-block;
373
- margin-top: 4px;
374
- margin-bottom: 4px;
375
- }
376
- .cpac-column .column-form table tr.column_image_size td.input label.custom-size input {
377
- margin-right: 3px;
378
- }
379
- .cpac-column .column-form table tr.column_image_size td.input .custom_image_size {
380
- display: inline-block;
381
- }
382
- .cpac-column .column-form table tr.column_image_size td.input .custom_image_size .hidden {
383
- display: none;
384
- }
385
- .cpac-column .column-form table tr.column_image_size td.input .custom_image_size .custom-size-w,
386
- .cpac-column .column-form table tr.column_image_size td.input .custom_image_size .custom-size-h {
387
- margin: 0;
388
- }
389
- .cpac-column .column-form table tr.column_image_size td.input .custom_image_size .custom-size-w.hidden,
390
- .cpac-column .column-form table tr.column_image_size td.input .custom_image_size .custom-size-h.hidden {
391
- display: none;
392
- }
393
- .cpac-column .column-form table tr.column_image_size td.input .custom_image_size .custom-size-w input[type="text"],
394
- .cpac-column .column-form table tr.column_image_size td.input .custom_image_size .custom-size-h input[type="text"] {
395
- margin-right: 3px;
396
- width: 30px !important;
397
- }
398
- .cpac-column .column-form table tr.column_action td {
399
- background: #f9f9f9;
400
- }
401
- .cpac-column .column-form table tr.column_action td p {
402
- margin: 0;
403
- }
404
- .cpac-column .column-form table tr.column_action td p a.remove-button {
405
- color: #a00;
406
- text-decoration: none;
407
- text-shadow: none;
408
- font-weight: normal;
409
- margin-left: 5px;
410
- font-size: 12px;
411
- padding: 0 5px;
412
- }
413
- .cpac-column .column-form table tr.column_action td p a.remove-button:hover {
414
- color: #fff;
415
- background: #f00;
416
- }
417
- .cpac-column .column-form table tr:first-child td {
418
- border-top: none;
419
- }
420
- .cpac-column.loading .column-form > .spinner {
421
- position: absolute;
422
- left: 50%;
423
- top: 50%;
424
- z-index: 200;
425
- margin-left: -10px;
426
- margin-top: -10px;
427
- display: block;
428
- }
429
- .cpac-column.loading .column-form:before {
430
- content: '';
431
- position: absolute;
432
- width: 100%;
433
- height: 100%;
434
- background: #FFF;
435
- z-index: 100;
436
- opacity: 0.5;
437
- }
438
- .cpac-column.opened .column-meta {
439
- background-color: #c7c7c7;
440
- background-image: -ms-linear-gradient(top, #e9e9e9, #c7c7c7);
441
- background-image: -moz-linear-gradient(top, #e9e9e9, #c7c7c7);
442
- background-image: -o-linear-gradient(top, #e9e9e9, #c7c7c7);
443
- background-image: -webkit-gradient(linear, left top, left bottom, from(#e9e9e9), to(#c7c7c7));
444
- background-image: -webkit-linear-gradient(top, #e9e9e9, #c7c7c7);
445
- background-image: linear-gradient(top, #e9e9e9, #c7c7c7);
446
- border-color: #aeaeae;
447
- }
448
- .cpac-column.opened .column-meta table {
449
- background: transparent;
450
- }
451
- .cpac-column.opened .column-meta table td {
452
- border-color: #f8f8f8;
453
- color: #333;
454
- text-shadow: 0 1px 0 #FFFFFF;
455
- }
456
- .cpac-column.opened .column-meta table td a {
457
- color: #333;
458
- text-shadow: 0 1px 0 #FFFFFF;
459
- }
460
- .cpac-column.opened .column-meta table td.column_sort {
461
- background-position: 8px -39px;
462
- }
463
- .cpac-column.opened .column-meta table td.column_label .inner .meta {
464
- color: #808080;
465
- }
466
- .cpac-column.opened .column-meta table td.column_type {
467
- color: #5C5C5C;
468
- }
469
- /**
470
- * Column: Footer
471
- * ----------------------------------------------------------------------------
472
- */
473
- .column-footer {
474
- background: #EAF2FA;
475
- border: 1px solid #c7d7e2;
476
- min-height: 26px;
477
- padding: 8px;
478
- overflow: hidden;
479
- }
480
- .column-footer .order-message {
481
- background: transparent url('../images/order_arrow.png') no-repeat 0 0;
482
- color: #7A9BBE;
483
- float: left;
484
- font-family: Comic Sans MS, sans-serif;
485
- font-size: 11px;
486
- height: 13px;
487
- line-height: 1em;
488
- margin-left: 4px;
489
- padding: 7px 0 0 22px;
490
- text-shadow: 0 1px 0 #FFFFFF;
491
- display: inline-block;
492
- }
493
- .column-footer .button-container {
494
- float: right;
495
- display: inline-block;
496
- margin-top: -5px;
497
- }
498
- .column-footer .button-container a {
499
- display: inline-block;
500
- margin-top: 5px;
501
- }
502
- /**
503
- * Welcome Screen
504
- * ----------------------------------------------------------------------------
505
- */
506
- .cpac-content-body hr {
507
- -moz-border-bottom-colors: none;
508
- -moz-border-left-colors: none;
509
- -moz-border-right-colors: none;
510
- -moz-border-top-colors: none;
511
- background: none repeat scroll 0 0 transparent;
512
- border-color: #dfdfdf -moz-use-text-color -moz-use-text-color;
513
- border-image: none;
514
- border-right: 0 none;
515
- border-style: solid none none;
516
- border-width: 1px 0 0;
517
- clear: both;
518
- margin: 30px 0;
519
- opacity: 0.2;
520
- }
521
- #cpac-welcome.about-wrap div.error {
522
- display: block !important;
523
- }
524
- .cpac-alert {
525
- display: inline-block;
526
- background: none repeat scroll 0 0 #FCF8E3;
527
- border: 1px solid #FBEED5;
528
- border-radius: 4px 4px 4px 4px;
529
- color: #C09853;
530
- margin: 20px 0;
531
- padding: 16px 14px;
532
- text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
533
- }
534
- .cpac-alert p {
535
- margin: 0;
536
- }
537
- .cpac-alert.cpac-alert-success {
538
- background-color: #DFF0D8;
539
- border-color: #D6E9C6;
540
- color: #468847;
541
- }
542
- .cpac-alert.cpac-alert-error {
543
- background-color: #F2DEDE;
544
- border-color: #EED3D7;
545
- color: #B94A48;
546
- }
547
- .cpac-alert a.button-primary {
548
- height: 28px;
549
- line-height: 28px;
550
- display: inline-block;
551
- }
552
- #cpac-download-add-ons-table {
553
- max-width: 600px;
554
- }
555
- .wp-core-ui .button-large {
556
- height: 40px;
557
- line-height: 40px;
558
- font-size: 16px;
559
- padding: 0 15px;
560
- text-shadow: 0 1px 0 rgba(0, 0, 0, 0.5);
561
- }
562
- /**
563
- * Sidebar
564
- * ----------------------------------------------------------------------------
565
- */
566
- .columns-right {
567
- margin-top: 54px;
568
- }
569
- .columns-right .sidebox {
570
- background: none repeat scroll 0 0 #FFFFFF;
571
- border: 1px solid #E1E1E1;
572
- border-radius: 0 0 0 0;
573
- box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
574
- position: relative;
575
- margin-bottom: 14px;
576
- }
577
- .columns-right .sidebox h3 {
578
- padding: 10px;
579
- margin: 0;
580
- }
581
- .columns-right .sidebox h3.title {
582
- font-family: Georgia, "Times New Roman", "Bitstream Charter", Times, serif;
583
- font-size: 15px;
584
- font-weight: normal;
585
- line-height: 1;
586
- margin: 0;
587
- padding: 7px 10px;
588
- background: #f1f1f1;
589
- background-image: -webkit-gradient(linear, left bottom, left top, from(#ececec), to(#f9f9f9));
590
- background-image: -webkit-linear-gradient(bottom, #ececec, #f9f9f9);
591
- background-image: -moz-linear-gradient(bottom, #ececec, #f9f9f9);
592
- background-image: -o-linear-gradient(bottom, #ececec, #f9f9f9);
593
- background-image: linear-gradient(to top, #ececec, #f9f9f9);
594
- border-bottom-color: #dfdfdf;
595
- text-shadow: #fff 0 1px 0;
596
- -webkit-box-shadow: 0 1px 0 #fff;
597
- box-shadow: 0 1px 0 #fff;
598
- border-bottom-style: solid;
599
- border-bottom-width: 1px;
600
- }
601
- .columns-right .sidebox .inside {
602
- padding: 10px;
603
- }
604
- .columns-right .sidebox .inside p {
605
- margin-top: 0;
606
- }
607
- .columns-right .sidebox#form-actions .form-reset {
608
- border-bottom: 1px solid #F5F5F5;
609
- padding: 8px;
610
- }
611
- .columns-right .sidebox#form-actions .reset-column-type {
612
- text-decoration: none;
613
- color: #BC0B0B;
614
- line-height: 25px;
615
- display: inline-block;
616
- }
617
- .columns-right .sidebox#form-actions .form-update {
618
- padding: 8px;
619
- overflow: hidden;
620
- }
621
- .columns-right .sidebox#form-actions .submit-update {
622
- display: block;
623
- width: 100%;
624
- height: 28px;
625
- line-height: 28px;
626
- text-align: center;
627
- }
628
- .columns-right .sidebox#pro-version .cta {
629
- background: transparent url(../images/get_the_addon.png) no-repeat 0 0;
630
- }
631
- .columns-right .sidebox#pro-version .padding-box {
632
- padding: 8px 15px 0;
633
- }
634
- .columns-right .sidebox#pro-version h3 a {
635
- color: #fff;
636
- font-size: 19px;
637
- text-decoration: none;
638
- font-weight: normal;
639
- margin-top: 6px;
640
- }
641
- .columns-right .sidebox#pro-version .inside ul {
642
- margin: 0 0 10px 0;
643
- }
644
- .columns-right .sidebox#pro-version .inside ul li {
645
- margin: 0;
646
- padding: 0;
647
- }
648
- .columns-right .sidebox#pro-version .inside ul li a {
649
- display: inline-block;
650
- height: 24px;
651
- font-size: 19px;
652
- line-height: 24px;
653
- margin-bottom: 1px;
654
- padding: 0 5px;
655
- background: #000;
656
- color: #fff;
657
- text-decoration: none;
658
- }
659
- .columns-right .sidebox#pro-version .inside p {
660
- color: #fff;
661
- font-size: 12px;
662
- }
663
- .columns-right .sidebox#pro-version .inside p a {
664
- color: #fff;
665
- display: inline-block;
666
- background: #a4c518;
667
- padding: 0 2px;
668
- font-size: 15px;
669
- text-decoration: none;
670
- }
671
- /**
672
- * Setting Tab
673
- * ----------------------------------------------------------------------------
674
- */
675
- table.cpac-form-table {
676
- max-width: 1100px;
677
- margin-top: 20px;
678
- }
679
- table.cpac-form-table > tbody > tr > td,
680
- table.cpac-form-table > tbody > tr > th {
681
- vertical-align: top;
682
- }
683
- table.cpac-form-table td.padding-22 {
684
- padding-top: 22px;
685
- }
686
- table.cpac-form-table td .cpac_export .ms-container {
687
- background: transparent url('../images/switch_bw.png') no-repeat 50% 50%;
688
- }
689
- table.cpac-form-table td .cpac_export .ms-container .ms-selectable {
690
- width: 48%;
691
- margin-right: 0;
692
- }
693
- table.cpac-form-table td .cpac_export .ms-container .ms-selection {
694
- float: right;
695
- width: 48%;
696
- }
697
- table.cpac-form-table td .cpac_export .ms-container ul.ms-list {
698
- width: 100%;
699
- }
700
- table.cpac-form-table td .cpac_export .ms-container ul.ms-list li {
701
- margin: 0;
702
- padding-top: 5px;
703
- padding-bottom: 5px;
704
- }
705
- /**
706
- * WP Pointer
707
- * ----------------------------------------------------------------------------
708
- */
709
- .wp-pointer-content {
710
- overflow: hidden;
711
- }
712
- .wp-pointer-content ol {
713
- margin-left: 1.5em;
714
- padding: 0 15px;
715
- }
716
- .wp-pointer-right {
717
- margin-right: 15px;
718
- }
719
- /* =RTL language
720
- -------------------------------------------------------------- */
721
- body.rtl .wp-pointer-right {
722
- margin-left: 15px;
723
- margin-right: 0;
724
- }
725
- body.rtl .wp-pointer-right ol {
726
- margin-right: 1.5em;
727
- margin-left: 0;
728
- }
729
- body.rtl .cpac-menu .subsubsub {
730
- margin-left: 14px;
731
- margin-right: 0;
732
- }
733
- body.rtl .columns-container {
734
- margin-left: 300px;
735
- margin-right: 0;
736
- }
737
- body.rtl .columns-left {
738
- float: right;
739
- }
740
- body.rtl .columns-left .cpac-columns .cpac-column .column-meta img {
741
- margin-left: 3px;
742
- margin-right: 0;
743
- }
744
- body.rtl .columns-left .cpac-columns .cpac-column .column-meta .column_label .inner > a.remove-button {
745
- margin-right: 12px;
746
- margin-left: 0;
747
- }
748
- body.rtl .columns-left .cpac-columns .cpac-column .column-meta .column_label .inner .meta {
749
- float: left;
750
- }
751
- body.rtl .columns-left .cpac-columns .cpac-column .column-meta .column_label span.vers {
752
- float: right;
753
- }
754
- body.rtl .columns-left .cpac-columns .cpac-column .column-meta .column_type {
755
- text-align: left;
756
- padding-left: 0;
757
- padding-right: auto;
758
- }
759
- body.rtl .columns-left .cpac-columns .cpac-column .column-meta span.vers .comment-grey-bubble {
760
- float: left;
761
- }
762
- body.rtl .columns-left .cpac-columns .cpac-column .column-form table tr.column_image_size td.input label input {
763
- margin-left: 3px;
764
- margin-right: 0;
765
- }
766
- body.rtl .columns-left .cpac-columns .cpac-column .column-form table tr td.label p.description {
767
- right: 0;
768
- left: auto;
769
- }
770
- body.rtl .columns-left .cpac-columns .cpac-column .column-form table tr td.label a.more-info {
771
- float: left;
772
- }
773
- body.rtl .columns-left .cpac-columns .cpac-column .column-form div.description {
774
- float: right;
775
- }
776
- body.rtl .columns-left .cpac-columns .cpac-column .column-form div.input-width-range {
777
- float: right;
778
- }
779
- body.rtl .columns-left .cpac-columns .cpac-column .column-form tr td.input label {
780
- padding-left: 10px;
781
- padding-right: 0;
782
- }
783
- body.rtl .columns-left .cpac-columns .cpac-column .column-form a.help {
784
- float: left;
785
- }
786
- body.rtl .columns-left .column-footer .order-message {
787
- float: right;
788
- padding-right: 22px;
789
- padding-left: 0;
790
- background: transparent url('../images/order_arrow-rtl.png') no-repeat right top;
791
- }
792
- body.rtl .columns-left .column-footer .button-container {
793
- float: left;
794
- }
795
- body.rtl .columns-right {
796
- float: left;
797
- margin-left: -300px;
798
- margin-right: 0;
799
- }
800
- body.rtl .cpac-placeholder {
801
- padding: 5px 0 7px 4px;
802
- }
803
- body.rtl .cpac_export .ms-container .ms-selection {
804
- float: left;
805
- }
806
- /* =Responsive
807
- -------------------------------------------------------------- */
808
- @media only screen and (max-width: 900px) {
809
- .columns-container {
810
- margin-right: 0;
811
- }
812
- .columns-container .columns-left {
813
- float: none;
814
- }
815
- .columns-container .columns-right {
816
- float: none;
817
- margin-top: 0;
818
- margin-right: 0;
819
- width: 100%;
820
- }
821
- .columns-container .columns-right .columns-right-inside.fixed {
822
- position: relative;
823
- top: 0;
824
- width: 100%;
825
- }
826
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* =General
2
+ -------------------------------------------------------------- */
3
+ #icon-codepress-admin-columns {
4
+ background: transparent url('../images/icon.png') no-repeat 0 0;
5
+ }
6
+ .cpac-settings-link {
7
+ float: right;
8
+ margin: 12px 14px 5px 0;
9
+ background: transparent url('../images/settings.png') no-repeat 0 0;
10
+ padding-left: 20px;
11
+ text-decoration: none;
12
+ display: inline-block;
13
+ line-height: 16px;
14
+ }
15
+ .rtl .cpac-settings-link {
16
+ float: left;
17
+ margin: 12px 0 5px 14px;
18
+ padding-right: 20px;
19
+ padding-left: 0;
20
+ }
21
+ .cpac-settings-link.current {
22
+ font-weight: bold;
23
+ }
24
+ a.help {
25
+ background: transparent url('../images/help.png') no-repeat 0 0;
26
+ display: inline-block;
27
+ width: 16px;
28
+ height: 16px;
29
+ }
30
+ #cpac a:focus, #cpac a:active {
31
+ outline: none;
32
+ }
33
+ .button.loading {
34
+ padding-right: 25px;
35
+ position: relative;
36
+ }
37
+ .rtl .button.loading {
38
+ padding-left: 25px;
39
+ padding-right: 0;
40
+ }
41
+ .button.loading span {
42
+ position: absolute;
43
+ top: 2px;
44
+ right: 6px;
45
+ background: transparent url('../images/loading.gif') no-repeat right 50%;
46
+ width: 16px;
47
+ height: 16px;
48
+ display: inline-block;
49
+ }
50
+ .rtl .button.loading span {
51
+ left: 6px;
52
+ right: auto;
53
+ }
54
+ /* =Icons
55
+ -------------------------------------------------------------- */
56
+ .icon-yes {
57
+ background: transparent url(../images/yes.png) no-repeat 0 0;
58
+ width: 16px;
59
+ height: 16px;
60
+ display: inline-block;
61
+ position: relative;
62
+ top: 2px;
63
+ }
64
+ .icon-no {
65
+ background: transparent url(../images/no.png) no-repeat 0 0;
66
+ width: 16px;
67
+ height: 16px;
68
+ display: inline-block;
69
+ position: relative;
70
+ top: 2px;
71
+ }
72
+
73
+ /* =Menu
74
+ -------------------------------------------------------------- */
75
+ .cpac-menu {
76
+ clear: both;
77
+ overflow: hidden;
78
+ }
79
+ .cpac-menu .subsubsub {
80
+ white-space: normal;
81
+ margin-right: 14px;
82
+ }
83
+ .rtl .cpac-menu .subsubsub {
84
+ margin-left: 14px;
85
+ margin-right: 0;
86
+ }
87
+
88
+ /* =Structure
89
+ -------------------------------------------------------------- */
90
+ .columns-container {
91
+ margin-right: 300px;
92
+ max-width: 700px;
93
+ }
94
+ .rtl .columns-container {
95
+ margin-left: 300px;
96
+ margin-right: 0;
97
+ }
98
+ .columns-left {
99
+ float: left;
100
+ width: 100%;
101
+ }
102
+ .rtl .columns-left {
103
+ float: right;
104
+ }
105
+ .columns-right {
106
+ float: right;
107
+ margin-right: -300px;
108
+ width: 280px;
109
+ }
110
+ .rtl .columns-right {
111
+ float: left;
112
+ margin-left: -300px;
113
+ margin-right: 0;
114
+ }
115
+ .columns-right-inside.fixed {
116
+ position: fixed;
117
+ top: 40px;
118
+ width: 280px;
119
+ }
120
+
121
+ /* =Columns
122
+ -------------------------------------------------------------- */
123
+ .add-new-h2 {
124
+ color: #828282;
125
+ }
126
+ .cpac-boxes form {
127
+ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
128
+ }
129
+ .ui-sortable-helper {
130
+ -webkit-box-shadow: 1px 3px 6px 0px rgba(1, 1, 1, 0.4);
131
+ box-shadow: 1px 3px 6px 0px rgba(1, 1, 1, 0.4);
132
+ }
133
+ .ui-sortable-helper .column-meta {
134
+ border-width: 1px;
135
+ }
136
+ .cpac-placeholder {
137
+ visibility: visible !important;
138
+ }
139
+
140
+ /* @todo: placeholder styling v2 */
141
+
142
+ .cpac-placeholder {
143
+ border-top: 1px solid #dfdfdf;
144
+ padding: 5px 4px 7px 0;
145
+ }
146
+ .rtl .cpac-placeholder {
147
+ padding: 5px 0 7px 4px;
148
+ }
149
+ .cpac-placeholder .inner-placeholder {
150
+ border: 1px dashed #808080;
151
+ background: #eee;
152
+ width: 100%;
153
+ height: 100%;
154
+ }
155
+ .cpac-columns .cpac-placeholder:first-child {
156
+ border: none;
157
+ }
158
+ .cpac-column.deleting {}
159
+
160
+ /* placeholder styling v1 */
161
+
162
+ /*
163
+ .cpac-placeholder {
164
+ visibility: visible !important;
165
+ background: transparent url('../images/border.png') repeat 0 0;
166
+ padding: 2px;
167
+ }
168
+ .cpac-placeholder .inner-placeholder {
169
+ box-shadow: inset 0 1px 3px rgba(0,0,0,0.1);
170
+ background: #ededed;
171
+ width: 100%;
172
+ height: 100%;
173
+ }
174
+ .ui-sortable-helper .column-meta {
175
+ border-width: 1px;
176
+ }
177
+ */
178
+
179
+
180
+ /* =Column Header
181
+ -------------------------------------------------------------- */
182
+ .table-header {
183
+ border-radius: 3px 3px 0 0;
184
+ border-width: 1px 1px 0;
185
+ }
186
+
187
+ /* =Column Meta
188
+ -------------------------------------------------------------- */
189
+ .column-meta {
190
+ border-style: solid;
191
+ border-color: #dfdfdf;
192
+ border-width: 1px 1px 0;
193
+ background: #fcfcfc;
194
+ }
195
+ .cpac-column:nth-child(2n) .column-meta {
196
+ background: #f9f9f9;
197
+ }
198
+ .column-meta table {
199
+ border: none;
200
+ background: transparent;
201
+ border-radius: 0;
202
+ }
203
+ .column-meta table tr td {
204
+ vertical-align: top;
205
+ height: 18px;
206
+ border: none;
207
+ padding: 11px 8px;
208
+ border-width: 1px 0 0;
209
+ border-style: solid;
210
+ border-color: transparent;
211
+ }
212
+ .column-meta img {
213
+ margin-right: 3px;
214
+ }
215
+ .rtl .column-meta img {
216
+ margin-left: 3px;
217
+ margin-right: 0;
218
+ }
219
+ .column-meta .column_sort {
220
+ width: 10px;
221
+ background: transparent url('../images/drag.png') no-repeat 8px 8px;
222
+ cursor: move;
223
+ }
224
+ .column-meta td.column_label {
225
+ width: 55%;
226
+ font-weight: bold;
227
+ vertical-align: middle;
228
+ position: relative;
229
+ }
230
+ .column-meta .column_label .inner {
231
+ position: relative;
232
+ overflow: hidden;
233
+ height: 18px;
234
+ }
235
+ .column-meta .column_label .inner > a {
236
+ color: #5a5a5a;
237
+ }
238
+ .column-meta .column_label .inner > a:hover {
239
+ color: #333333;
240
+ }
241
+ .column-meta .column_label .inner > a.remove-button {
242
+ display: none;
243
+ color: #BC0B0B;
244
+ text-decoration: none;
245
+ text-shadow: none;
246
+ font-weight: normal;
247
+ margin-left: 12px;
248
+ font-size: 12px;
249
+ }
250
+ .rtl .column-meta .column_label .inner > a.remove-button {
251
+ margin-right: 12px;
252
+ margin-left: 0;
253
+ }
254
+ .column-meta .column_label .inner > a.remove-button:hover {
255
+ background-color: #BC0B0B;
256
+ color: #FFFFFF;
257
+ text-decoration: none;
258
+ }
259
+ .column-meta:hover .column_label .inner > a.remove-button {
260
+ display: inline-block;
261
+ }
262
+ .column-meta .column_label .inner .meta {
263
+ display: inline-block;
264
+ float: right;
265
+ font-weight: normal;
266
+ color: #999999;
267
+ font-size: 12px;
268
+ }
269
+ .rtl .column-meta .column_label .inner .meta {
270
+ float: left;
271
+ }
272
+ .column-meta .column_type {
273
+ width: auto;
274
+ text-align: right;
275
+ vertical-align: middle;
276
+ color: #999999;
277
+ padding-right: 0;
278
+ }
279
+ .rtl .column-meta .column_type {
280
+ text-align: left;
281
+ padding-left: 0;
282
+ padding-right: auto;
283
+ }
284
+ .column-meta .column_edit {
285
+ width: 38px;
286
+ background: transparent url('../images/arrow.png') no-repeat 23px 18px;
287
+ cursor: pointer;
288
+ }
289
+
290
+ /* opened state */
291
+ .cpac-column.opened .column-meta {
292
+ background-color: #c7c7c7;
293
+ background-image: -ms-linear-gradient(top, #e9e9e9, #c7c7c7);
294
+ background-image: -moz-linear-gradient(top, #e9e9e9, #c7c7c7);
295
+ background-image: -o-linear-gradient(top, #e9e9e9, #c7c7c7);
296
+ background-image: -webkit-gradient(linear, left top, left bottom, from(#e9e9e9), to(#c7c7c7));
297
+ background-image: -webkit-linear-gradient(top, #e9e9e9, #c7c7c7);
298
+ background-image: linear-gradient(top, #e9e9e9, #c7c7c7);
299
+ border-color: #aeaeae;
300
+ }
301
+ .cpac-column.opened .column-meta table {
302
+ background: transparent;
303
+ }
304
+ .cpac-column.opened .column-meta td {
305
+ border-color: #f8f8f8;
306
+ }
307
+ .cpac-column.opened .column-meta td,
308
+ .cpac-column.opened .column-meta td a{
309
+ color: #333;
310
+ text-shadow: 0 1px 0 #FFFFFF;
311
+ }
312
+ .cpac-column.opened .column-meta .column_sort {
313
+ background-position: 8px -39px;
314
+ }
315
+ .cpac-column.opened .column-meta .column_type {
316
+ color: #5C5C5C;
317
+ }
318
+ .cpac-column.opened .column-meta .column_label .inner .meta {
319
+ color: #808080;
320
+ }
321
+ tr.column_image_size td.input .custom_image_size {
322
+ display: inline-block;
323
+ }
324
+ tr.column_image_size td.input label {
325
+ display: inline-block;
326
+ margin-top: 4px;
327
+ margin-bottom: 4px;
328
+ }
329
+ tr.column_image_size td.input label input {
330
+ margin-right: 3px;
331
+ }
332
+ .rtl tr.column_image_size td.input label input {
333
+ margin-left: 3px;
334
+ margin-right: 0;
335
+ }
336
+ tr.column_image_size td.input label.custom-size-w,
337
+ tr.column_image_size td.input label.custom-size-h {
338
+ margin: 0;
339
+ }
340
+ tr.column_image_size td.input label.custom-size-w.hidden,
341
+ tr.column_image_size td.input label.custom-size-h.hidden {
342
+ display: none;
343
+ }
344
+ tr.column_image_size td.input label.custom-size-w input,
345
+ tr.column_image_size td.input label.custom-size-h input {
346
+ width: 30px;
347
+ }
348
+ tr.column_image_size.hidden {
349
+ display: none;
350
+ }
351
+
352
+ /* =Column Meta: WP Default columns
353
+ -------------------------------------------------------------- */
354
+ .column-meta span.vers {
355
+ padding-top: 2px;
356
+ }
357
+ .column-meta span.vers .comment-grey-bubble {
358
+ background: transparent url("../images/comment-grey-bubble.png") no-repeat 0 0;
359
+ height: 12px;
360
+ width: 12px;
361
+ float: right;
362
+ }
363
+ .rtl .column-meta span.vers .comment-grey-bubble {
364
+ float: left;
365
+ }
366
+ .column-meta .column_label span.vers {
367
+ float: left;
368
+ }
369
+ .rtl .column-meta .column_label span.vers {
370
+ float: right;
371
+ }
372
+
373
+ /* =Column Form
374
+ -------------------------------------------------------------- */
375
+ .column-form {
376
+ display: none;
377
+ border-width: 1px 1px 0;
378
+ border-style: solid;
379
+ border-color: #dfdfdf;
380
+ }
381
+ .column-form table {
382
+ border: none;
383
+ background: #fcfcfc;
384
+ }
385
+ .column-form tr td {
386
+ vertical-align: top;
387
+ border: none;
388
+ padding: 8px;
389
+ background: #ffffff;
390
+ }
391
+ .column-form tr td.label {
392
+ position: relative;
393
+ overflow: visible;
394
+ background: #F9F9F9;
395
+ background: #f5f5f5;
396
+ border-right: 1px solid #E1E1E1;
397
+ vertical-align: top;
398
+ width: 34%;
399
+ border-top: 1px solid #F0F0F0;
400
+ }
401
+ .column-form tr td {
402
+ border-top: 1px solid #F5F5F5;
403
+ }
404
+ .column-form tr:first-child td {
405
+ border-top: none;
406
+ }
407
+ .column-form tr td.label label {
408
+ font-weight: bold;
409
+ color: #333333;
410
+ display: block;
411
+ position: relative;
412
+ }
413
+ .column-form tr td.label p {
414
+ color: #666666;
415
+ display: block;
416
+ font-size: 12px;
417
+ font-style: normal;
418
+ line-height: 16px;
419
+ margin: 0 !important;
420
+ }
421
+ .column-form tr td.label p.description {
422
+ display: none;
423
+ position: absolute;
424
+ z-index: 99;
425
+ top: 30px;
426
+ left: 0;
427
+ background: #eaf2fa;
428
+ border-radius: 5px;
429
+ border: 1px solid #c7d7e2;
430
+ padding: 5px 8px !important;
431
+ font-weight: normal;
432
+ }
433
+ .column-form tr td.label p.description em {
434
+ display: block;
435
+ color: #999;
436
+ }
437
+ .rtl .column-form tr td.label p.description {
438
+ right: 0;
439
+ left: auto;
440
+ }
441
+ .column-form tr td.label a.more-info {
442
+ display: none;
443
+ width: 14px; height: 14px;
444
+ line-height: 14px;
445
+ font-size: 10px;
446
+ color: #fff;
447
+ text-align: center;
448
+ font-weight: bold;
449
+ background: transparent url(../images/info.png) no-repeat 0 0;
450
+ float: right;
451
+ }
452
+ .rtl .column-form tr td.label a.more-info {
453
+ float: left;
454
+ }
455
+ .column-form tr td select,
456
+ .column-form tr td input[type=text] {
457
+ width: 99.95%; /* excl padding */
458
+ }
459
+ .column-form div.description {
460
+ font-size: 11px;
461
+ width: 12%;
462
+ float: left;
463
+ text-align: middle;
464
+ }
465
+ .rtl .column-form div.description {
466
+ float: right;
467
+ }
468
+ .column-form div.input-width-range {
469
+ float: left;
470
+ position: relative;
471
+ width: 87%;
472
+ margin-top: 4px;
473
+ }
474
+ .rtl .column-form div.input-width-range {
475
+ float: right;
476
+ }
477
+ .column-form div.input-width-range .ui-slider-handle {
478
+ cursor:ew-resize;
479
+ }
480
+ .column-form tr td.input label {
481
+ padding-right: 10px;
482
+ }
483
+ .rtl .column-form tr td.input label {
484
+ padding-left: 10px;
485
+ padding-right: 0;
486
+ }
487
+ .column-form tr td.input p.description {
488
+ /*display: none;*/
489
+ margin-top: 4px;
490
+ color: #888888;
491
+ }
492
+ .column-form a.help {
493
+ vertical-align: middle;
494
+ float: right;
495
+ }
496
+ .rtl .column-form a.help {
497
+ float: left;
498
+ }
499
+ .column-form div.msg {
500
+ margin-top: 5px;
501
+ display: none;
502
+ color: #333;
503
+ padding: 6px 8px;
504
+ background-color: #ffebe8;
505
+ border: 1px solid #fff;
506
+ -moz-border-radius: 3px;
507
+ -webkit-border-radius: 3px;
508
+ border-radius: 3px;
509
+ }
510
+ .column-form select optgroup:nth-child(2n) {
511
+ background: #F9F9F9;
512
+ }
513
+
514
+ /* =Column Footer
515
+ -------------------------------------------------------------- */
516
+ .column-footer {
517
+ background: #EAF2FA;
518
+ border: 1px solid #c7d7e2;
519
+ min-height: 26px;
520
+ padding: 8px;
521
+ overflow: hidden;
522
+ }
523
+ .column-footer .order-message {
524
+ background: transparent url('../images/order_arrow.png') no-repeat 0 0;
525
+ color: #7A9BBE;
526
+ float: left;
527
+ font-family: Comic Sans MS,sans-serif;
528
+ font-size: 11px;
529
+ height: 13px;
530
+ line-height: 1em;
531
+ margin-left: 4px;
532
+ padding: 7px 0 0 22px;
533
+ text-shadow: 0 1px 0 #FFFFFF;
534
+ display: inline-block;
535
+ }
536
+ .rtl .column-footer .order-message {
537
+ float: right;
538
+ padding-right: 22px;
539
+ padding-left: 0;
540
+ background: transparent url('../images/order_arrow-rtl.png') no-repeat right top;
541
+ }
542
+
543
+ /* =Sidebar
544
+ -------------------------------------------------------------- */
545
+ .columns-right {
546
+ margin-top: 52px;
547
+ }
548
+ .sidebox {
549
+ background: none repeat scroll 0 0 #FFFFFF;
550
+ border: 1px solid #E1E1E1;
551
+ border-radius: 0 0 0 0;
552
+ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
553
+ position: relative;
554
+ margin-bottom: 14px;
555
+ }
556
+ .sidebox h3 {
557
+ padding: 10px;
558
+ margin: 0;
559
+ }
560
+ .sidebox h3.title {
561
+ font-family: Georgia,"Times New Roman","Bitstream Charter",Times,serif;
562
+ font-size: 15px;
563
+ font-weight: normal;
564
+ line-height: 1;
565
+ margin: 0;
566
+ padding: 7px 10px;
567
+ background: #f1f1f1;
568
+ background-image: -webkit-gradient(linear, left bottom, left top, from(#ececec), to(#f9f9f9));
569
+ background-image: -webkit-linear-gradient(bottom, #ececec, #f9f9f9);
570
+ background-image: -moz-linear-gradient(bottom, #ececec, #f9f9f9);
571
+ background-image: -o-linear-gradient(bottom, #ececec, #f9f9f9);
572
+ background-image: linear-gradient(to top, #ececec, #f9f9f9);
573
+ border-bottom-color: #dfdfdf;
574
+ text-shadow: #fff 0 1px 0;
575
+ -webkit-box-shadow: 0 1px 0 #fff;
576
+ box-shadow: 0 1px 0 #fff;
577
+ border-bottom-style: solid;
578
+ border-bottom-width: 1px;
579
+ }
580
+ .sidebox .inside {
581
+ padding: 10px;
582
+ }
583
+ .sidebox .inside p {
584
+ margin-top: 0;
585
+ }
586
+ #form-actions .form-reset {
587
+ border-bottom: 1px solid #F5F5F5;
588
+ padding: 8px;
589
+ }
590
+ #form-actions .reset-column-type {
591
+ text-decoration: none;
592
+ color: #BC0B0B;
593
+ line-height: 25px;
594
+ display: inline-block;
595
+ }
596
+ #form-actions .reset-column-type:hover {
597
+ color: #FF0000
598
+ }
599
+ #form-actions .form-update {
600
+ padding: 8px;
601
+ }
602
+ #form-actions .submit-update {
603
+ display: block;
604
+ width: 100%;
605
+ height: 28px;
606
+ line-height: 28px;
607
+ text-align: center;
608
+ }
609
+
610
+ /* =Sidebar: Pro
611
+ --------------------------------*/
612
+ #pro-version .cta {
613
+ background: transparent url(../images/get_the_addon.png) no-repeat 0 0;
614
+ }
615
+ #pro-version .padding-box {
616
+ padding: 8px 15px 0;
617
+ }
618
+ #pro-version a {
619
+ color: red;
620
+ }
621
+ #pro-version h3 a {
622
+ color: #fff;
623
+ font-size: 19px;
624
+ text-decoration: none;
625
+ font-weight: normal;
626
+ margin-top: 6px;
627
+ }
628
+ #pro-version .inside ul {
629
+ margin: 0 0 10px 0;
630
+ }
631
+ #pro-version .inside ul li {
632
+ margin: 0;
633
+ padding: 0;
634
+ }
635
+ #pro-version .inside ul li a {
636
+ display: inline-block;
637
+ height: 24px;
638
+ font-size: 19px;
639
+ line-height: 24px;
640
+ margin-bottom: 1px;
641
+ padding: 0 5px;
642
+ background: #000;
643
+ color: #fff;
644
+ text-decoration: none;
645
+ }
646
+
647
+ #pro-version .inside p {
648
+ color: #fff;
649
+ font-size: 12px;
650
+ }
651
+ #pro-version .inside p a {
652
+ color: #fff;
653
+ display: inline-block;
654
+ background: #a4c518;
655
+ padding: 0 2px;
656
+ font-size: 15px;
657
+ text-decoration: none;
658
+ }
659
+
660
+
661
+ /* =Sidebar: Addons
662
+ --------------------------------*/
663
+ #addon-state {}
664
+ #addon-state .inside {
665
+ overflow: hidden;
666
+ }
667
+ #addon-state ul {
668
+ margin: 0 0 8px;
669
+ }
670
+ #addon-state ul li {
671
+ background: transparent url('../images/checkmark_single.png') no-repeat 0 0;
672
+ padding-left: 25px;
673
+ margin-bottom: 4px;
674
+ }
675
+ .rtl #addon-state ul li {
676
+ padding-right: 25px;
677
+ padding-left: 0;
678
+ }
679
+ #addon-state a.find-more-addons {
680
+ float: right;
681
+ }
682
+ .rtl #addon-state a.find-more-addons {
683
+ float: left;
684
+ }
685
+
686
+ /* =Settings Page
687
+ -------------------------------------------------------------- */
688
+ table.cpac-form-table {
689
+ max-width: 1100px;
690
+ margin-top: 20px;
691
+ }
692
+ .col-25, .col-30, .col-35, .col-65, .col-70, .col-75 {
693
+ float: left;
694
+ }
695
+ .rtl .col-25, .rtl .col-30, .rtl .col-35, .rtl .col-65, .rtl .col-70, .rtl .col-75 {
696
+ float: right;
697
+ }
698
+ .col-25 { width: 25%; }
699
+ .col-30 { width: 30%; }
700
+ .col-35 { width: 35%; }
701
+ .col-65 { width: 65%; }
702
+ .col-70 { width: 70%; }
703
+ .col-75 { width: 75%; }
704
+ table.cpac-form-table > tbody > tr > td,
705
+ table.cpac-form-table > tbody > tr > th {
706
+ vertical-align: top;
707
+ padding-bottom: 20px;
708
+ }
709
+ table.addons tr {
710
+ background: #fff;
711
+ }
712
+ tr td.padding-22 {
713
+ padding-top: 22px;
714
+ }
715
+ .ms-list li {
716
+ margin: 0;
717
+ padding-top: 5px;
718
+ padding-bottom: 5px;
719
+ }
720
+ /* =Column: Button
721
+ -------------------------------------------------------------- */
722
+ .column-form tr.column_action td a.remove-button {
723
+ border-bottom: 1px solid #FF0000;
724
+ color: #FF0000;
725
+ display: inline-block;
726
+ padding: 0 3px;
727
+ text-decoration: none;
728
+ text-shadow: none;
729
+ }
730
+ .column-form tr.column_action td a.remove-button:hover {
731
+ background-color: #FF0000;
732
+ border-bottom-color: #FF0000;
733
+ color: #FFFFFF;
734
+ text-decoration: none;
735
+ }
736
+
737
+ /* =Column: Action
738
+ -------------------------------------------------------------- */
739
+ .column-form tr.column_action td {
740
+ background: #f9f9f9;
741
+ }
742
+
743
+ /* =Column: Footer
744
+ -------------------------------------------------------------- */
745
+ .column-footer .button-container {
746
+ float: right;
747
+ display: inline-block;
748
+ margin-top: -5px;
749
+ }
750
+ .rtl .column-footer .button-container {
751
+ float: left;
752
+ }
753
+ .column-footer .button-container p {
754
+ margin: 4px;
755
+ color: #7A9BBE;
756
+ }
757
+ .column-footer .button-container a {
758
+ display: inline-block;
759
+ margin-top: 5px;
760
+ }
761
+
762
+ /* =Welcome Screen
763
+ -------------------------------------------------------------- */
764
+
765
+ .cpac-content-body hr {
766
+ -moz-border-bottom-colors: none;
767
+ -moz-border-left-colors: none;
768
+ -moz-border-right-colors: none;
769
+ -moz-border-top-colors: none;
770
+ background: none repeat scroll 0 0 transparent;
771
+ border-color: #DFDFDF -moz-use-text-color -moz-use-text-color;
772
+ border-image: none;
773
+ border-right: 0 none;
774
+ border-style: solid none none;
775
+ border-width: 1px 0 0;
776
+ clear: both;
777
+ margin: 30px 0;
778
+ opacity: 0.2;
779
+ }
780
+ #cpac-welcome.about-wrap div.error {
781
+ display: block !important;
782
+ }
783
+ .cpac-alert {
784
+ display: inline-block;
785
+ background: none repeat scroll 0 0 #FCF8E3;
786
+ border: 1px solid #FBEED5;
787
+ border-radius: 4px 4px 4px 4px;
788
+ color: #C09853;
789
+ margin: 20px 0;
790
+ padding: 16px 14px;
791
+ text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
792
+ }
793
+ .cpac-alert p {
794
+ margin: 0;
795
+ }
796
+ .cpac-alert.cpac-alert-success {
797
+ background-color: #DFF0D8;
798
+ border-color: #D6E9C6;
799
+ color: #468847;
800
+ }
801
+ .cpac-alert.cpac-alert-error {
802
+ background-color: #F2DEDE;
803
+ border-color: #EED3D7;
804
+ color: #B94A48;
805
+ }
806
+ .cpac-alert a.button-primary {
807
+
808
+ height: 28px;
809
+ line-height: 28px;
810
+ display: inline-block;
811
+ }
812
+ #cpac-download-add-ons-table {
813
+ max-width: 600px;
814
+ }
815
+ .wp-core-ui .button-large {
816
+ height: 40px;
817
+ line-height: 40px;
818
+ font-size: 16px;
819
+ padding: 0 15px;
820
+ text-shadow: 0 1px 0 rgba(0, 0, 0, 0.5);
821
+ }
822
+
823
+ /* =Import / Export
824
+ -------------------------------------------------------------- */
825
+ #cpac_export_types {
826
+ width: 95%;
827
+ }
828
+ #cpac_export_output {
829
+ display: none;
830
+ }
831
+ #cpac_export_output textarea {
832
+ width: 100%;
833
+ height: 80%;
834
+ }
835
+ #cpac_export_submit {
836
+ display: inline-block;
837
+ margin: 10px 8px;
838
+ padding: 4px 14px;
839
+ height: auto;
840
+ }
841
+ #cpac_import_input {}
842
+ #cpac_import_input textarea {
843
+ width: 100%;
844
+ height: 200px;
845
+ }
846
+ #cpac_import_submit {
847
+ display: inline-block;
848
+ margin: 10px 0;
849
+ }
850
+ .export-message,
851
+ .import-message {
852
+ background-color: #FFFFE0;
853
+ border: 1px solid #E6DB55;
854
+ padding: 4px 6px;
855
+ border-radius: 3px;
856
+ display: none;
857
+ }
858
+ #import-submit {
859
+ margin-top: 10px;
860
+ display: block;
861
+ }
862
+ .cpac_export .ms-container {
863
+ background: transparent url('../images/switch_bw.png') no-repeat 50% 50%;
864
+ }
865
+ .cpac_export .ms-container .ms-selectable {
866
+ width: 48%;
867
+ margin-right: 0;
868
+ }
869
+ .cpac_export .ms-container .ms-selection {
870
+ float: right;
871
+ width: 48%;
872
+ }
873
+ .rtl .cpac_export .ms-container .ms-selection {
874
+ float: left;
875
+ }
876
+ .cpac_export .ms-container ul.ms-list {
877
+ width: 100%;
878
+ }
879
+ a.export-select {
880
+ display: inline-block;
881
+ padding: 8px 8px;
882
+ text-decoration: none;
883
+ }
884
+
885
+ /* =Addons Page
886
+ -------------------------------------------------------------- */
887
+ ul.addons {
888
+ margin-bottom: 0;
889
+ padding: 0;
890
+ overflow: hidden;
891
+ }
892
+ ul.addons li {
893
+ background: none repeat scroll 0 0 #FFFFFF;
894
+ border: 1px solid #E1E1E1;
895
+ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
896
+ position: relative;
897
+ float: left;
898
+ margin: 10px 15px 20px;
899
+
900
+ padding: 13px 13px 30px 13px;
901
+ width: 180px;
902
+ min-height: 300px;
903
+ }
904
+ .rtl ul.addons li {
905
+ float: right;
906
+ }
907
+ ul.addons li h3 {
908
+ font-size: 13px;
909
+ }
910
+ ul.addons li p {
911
+ color: #666666;
912
+ }
913
+ ul.addons li .button {
914
+ bottom: 15px;
915
+ right: 15px;
916
+ position: absolute;
917
+ }
918
+ .rtl ul.addons li .button {
919
+ left: 15px;
920
+ right: auto;
921
+ }
922
+ ul.addons li span.state {
923
+ display: none;
924
+ position: absolute;
925
+ bottom: 0;
926
+ width: 100%;
927
+ text-indent: 29px;
928
+ height: 30px;
929
+ line-height: 30px;
930
+ margin-left: -13px;
931
+ background: #73a8d0 url('../images/checkmark_white.png') no-repeat 6px 7px;
932
+ color: #fff;
933
+ font-weight: bold;
934
+ }
935
+ .rtl ul.addons li span.state {
936
+ margin-right: -13px;
937
+ margin-left: 0;
938
+ }
939
+ ul.addons li img {
940
+ margin: -15px 0 0 -13px;
941
+ }
942
+ .rtl ul.addons li img {
943
+ margin: -15px -13px 0 0;
944
+ }
945
+ ul.addons li.active .button {
946
+ display: none;
947
+ }
948
+ ul.addons li.active span.state {
949
+ display: block;
950
+ }
951
+
952
+ /* =WP Pointer
953
+ -------------------------------------------------------------- */
954
+ .wp-pointer-content {
955
+ overflow: hidden;
956
+ }
957
+ .wp-pointer-content ol {
958
+ margin-left: 1.5em;
959
+ padding: 0 15px;
960
+ }
961
+ .rtl .wp-pointer-content ol {
962
+ margin-right: 1.5em;
963
+ margin-left: 0;
964
+ }
965
+ .wp-pointer-right {
966
+ margin-right: 15px;
967
+ }
968
+ .rtl .wp-pointer-right {
969
+ margin-left: 15px;
970
+ margin-right: 0;
971
+ }
972
+
973
+ /* =Responsive
974
+ -------------------------------------------------------------- */
975
+ @media only screen and (max-width: 850px) {
976
+ .columns-container {
977
+ margin-right: 0;
978
+ }
979
+ .rtl .columns-container {
980
+ margin-left: 0;
981
+ margin-right: auto;
982
+ }
983
+ .columns-right {
984
+ margin-top: 0;
985
+ margin-right: 0;
986
+ width: 100%;
987
+ }
988
+ .rtl .columns-right {
989
+ margin-left: 0;
990
+ margin-right: auto;
991
+ }
992
+ .columns-right-inside.fixed {
993
+ position: relative;
994
+ top: 0;
995
+ width: 100%;
996
+ }
997
+ .columns-right #addon-state {
998
+ display: none;
999
+ }
1000
+ .columns-right #plugin-support {
1001
+ display: none;
1002
+ }
1003
+ }
assets/css/column.css CHANGED
@@ -1,72 +1,76 @@
1
- /* =General
2
- -------------------------------------------------------------- */
3
- .cpac-divider {
4
- display: inline-block;
5
- width: 14px;
6
- height: 12px;
7
- background: transparent url(../images/square.png) no-repeat 50% 7px;
8
- }
9
- span.status-closed {
10
- color: red;
11
- }
12
- .tablenav.top .cpac-edit {
13
- top: 0;
14
- display: inline-block;
15
- vertical-align: bottom;
16
- }
17
- /* =Images Column
18
- -------------------------------------------------------------- */
19
- .cpac-column-value-image {
20
- display: inline-block;
21
- background: transparent;
22
- margin-right: 2px;
23
- overflow: hidden;
24
- }
25
- .rtl .cpac-column-value-image {
26
- margin-left: 2px;
27
- margin-right: 0;
28
- }
29
- .cpac-column-value-image img {
30
- display: block;
31
- margin: 0 auto;
32
- }
33
- .column-column-attachment img {
34
- padding-right: 5px;
35
- padding-bottom: 4px;
36
- }
37
- .rtl .column-column-attachment img {
38
- padding-left: 5px;
39
- padding-right: 0;
40
- }
41
- /* =Color Column
42
- -------------------------------------------------------------- */
43
- div.cpac-color {
44
- line-height: 26px;
45
- }
46
- div.cpac-color span {
47
- display: block;
48
- -webkit-border-radius: 3px;
49
- border-radius: 3px;
50
- color: #ffffff;
51
- float: left;
52
- height: 16px;
53
- line-height: 16px;
54
- margin-right: 12px;
55
- min-width: 30px;
56
- overflow: hidden;
57
- padding: 4px 5px;
58
- font-size: 10px;
59
- font-family: Monaco, Menlo, Consolas, "Courier New", monospace;
60
- min-width: 47px;
61
- text-align: center;
62
- }
63
- .rtl div.cpac-color span {
64
- float: right;
65
- margin-left: 12px;
66
- margin-right: 0;
67
- }
68
- /* =Available Sizes column
69
- -------------------------------------------------------------- */
70
- div.sizes span.not-available {
71
- color: #999;
72
- }
 
 
 
 
1
+ /* =General
2
+ -------------------------------------------------------------- */
3
+ .cpac-divider {
4
+ display: inline-block;
5
+ width: 14px;
6
+ height: 12px;
7
+ background: transparent url(../images/square.png) no-repeat 50% 7px;
8
+ }
9
+ span.status-open {}
10
+ span.status-closed {
11
+ color: red;
12
+ }
13
+ .tablenav.top .cpac-edit {
14
+ top: 0;
15
+ display: inline-block;
16
+ vertical-align: bottom;
17
+ }
18
+
19
+ /* =Images Column
20
+ -------------------------------------------------------------- */
21
+ .cpac-column-value-image {
22
+ display: inline-block;
23
+ background: transparent;
24
+ margin-right: 2px;
25
+ overflow: hidden;
26
+ }
27
+ .rtl .cpac-column-value-image {
28
+ margin-left: 2px;
29
+ margin-right: 0;
30
+ }
31
+ .cpac-column-value-image img {
32
+ display: block;
33
+ margin: 0 auto;
34
+ }
35
+ .column-column-attachment img {
36
+ padding-right: 5px;
37
+ padding-bottom: 4px;
38
+ }
39
+ .rtl .column-column-attachment img {
40
+ padding-left: 5px;
41
+ padding-right: 0;
42
+ }
43
+
44
+ /* =Color Column
45
+ -------------------------------------------------------------- */
46
+ div.cpac-color {
47
+ line-height: 26px;
48
+ }
49
+ div.cpac-color span {
50
+ display: block;
51
+ -webkit-border-radius: 3px;
52
+ border-radius: 3px;
53
+ color: #ffffff;
54
+ float: left;
55
+ height: 16px;
56
+ line-height: 16px;
57
+ margin-right: 12px;
58
+ min-width: 30px;
59
+ overflow: hidden;
60
+ padding: 4px 5px;
61
+ font-size: 10px;
62
+ font-family: Monaco,Menlo,Consolas,"Courier New",monospace;
63
+ min-width: 47px;
64
+ text-align: center;
65
+ }
66
+ .rtl div.cpac-color span {
67
+ float: right;
68
+ margin-left: 12px;
69
+ margin-right: 0;
70
+ }
71
+
72
+ /* =Available Sizes column
73
+ -------------------------------------------------------------- */
74
+ div.sizes span.not-available {
75
+ color: #999;
76
+ }
assets/css/custom-fields.css ADDED
@@ -0,0 +1,2 @@
 
 
1
+ /* =Custom Fields
2
+ -------------------------------------------------------------- */
assets/js/admin-columns.js CHANGED
@@ -7,6 +7,7 @@ jQuery(document).ready(function() {
7
  if ( jQuery('#cpac').length === 0 )
8
  return false;
9
 
 
10
  // General
11
  cpac_pointer();
12
  cpac_submit_form();
@@ -21,11 +22,10 @@ jQuery(document).ready(function() {
21
  cpac_add_column();
22
  cpac_sidebar_scroll();
23
 
24
- // we start by binding the toggle and remove events.
25
- jQuery('.cpac-column').each( function( i, col ) {
26
- jQuery( col ).column_bind_toggle();
27
- jQuery( col ).column_bind_remove();
28
- jQuery( col ).cpac_bind_container_addon_events();
29
  });
30
  });
31
 
@@ -53,20 +53,18 @@ jQuery.fn.column_bind_toggle = function() {
53
 
54
  var column = jQuery(this);
55
 
56
- column.find( 'td.column_type a, td.column_edit, td.column_label a.toggle, td.column_label .edit-button' ).click( function( e ) {
57
- e.preventDefault();
58
-
59
- column.toggleClass( 'opened' ).find( '.column-form' ).slideToggle( 150 );
60
 
61
- if ( ! column.hasClass( 'events-binded' ) ) {
 
 
62
  column.column_bind_events();
63
- }
64
 
65
  column.addClass('events-binded');
66
 
67
  // hook for addons
68
- jQuery( document ).trigger( 'column_init', column );
69
- } );
70
  };
71
 
72
  /*
@@ -83,35 +81,6 @@ jQuery.fn.column_bind_remove = function() {
83
  });
84
  };
85
 
86
- jQuery.fn.cpac_column_refresh = function() {
87
- var el = jQuery( this );
88
-
89
- // Mark column as loading
90
- el.addClass( 'loading' );
91
- el.find( '.column-form' ).prepend( '<span class="spinner" />' );
92
-
93
- // Fetch new form HTML
94
- jQuery.post( ajaxurl, {
95
- action: 'cpac_column_refresh',
96
- column: jQuery( this ).find( 'input.column-name' ).val(),
97
- formdata: jQuery( this ).parents( 'form' ).serialize()
98
- }, function( data ) {
99
- // Replace current form by new form
100
- el.html( data );
101
-
102
- // Bind events
103
- el.column_bind_toggle();
104
- el.column_bind_remove();
105
- el.column_bind_events();
106
-
107
- // Remove "loading" marking from column
108
- el.removeClass( 'loading' ).addClass( 'opened' ).find( '.column-form' ).show();
109
-
110
- // Allow plugins to hook into this event
111
- jQuery( document ).trigger( 'column_change', el );
112
- } );
113
- };
114
-
115
  /*
116
  * Form Events
117
  *
@@ -119,50 +88,58 @@ jQuery.fn.cpac_column_refresh = function() {
119
  */
120
  jQuery.fn.column_bind_events = function() {
121
 
122
- var column = jQuery( this );
123
- var container = column.closest( '.columns-container ');
124
- var storage_model = container.attr( 'data-type' );
 
 
 
125
 
126
- // Current column type
127
- var default_value = column.find( '.column_type select option:selected' ).val();
128
 
129
- column.find( '.column_type select' ).change( function() {
130
- var option = jQuery( 'optgroup', this ).children( ':selected' );
131
  var type = option.val();
132
  var label = option.text();
133
- var msg = jQuery( this ).next( '.msg' ).hide();
134
 
135
- // Find template element for this field type
136
- var template = container.find( '.for-cloning-only .cpac-column[data-type="' + type + '"]' );
137
-
138
- if ( template.length ) {
139
- // Prevent column types that do not allow it to have multiple instances
140
- if ( typeof template.attr( 'data-clone' ) === 'undefined' && jQuery( '.cpac-columns', container ).find( '[data-type="' + type + '"]' ).length ) {
141
- msg.html( cpac_i18n.clone.replace( '%s', '<strong>' + label + '</strong>' ) ).show();
142
 
143
- // Set to default
144
- jQuery(this).find('option').removeAttr('selected');
145
- jQuery(this).find('option[value="' + default_value + '"]').attr('selected', 'selected');
 
146
 
147
- return;
 
 
 
 
148
  }
149
- else {
150
- var clone = template.clone();
151
 
152
- // Open settings
153
- clone.addClass('opened').find('.column-form').show();
154
- clone.find( '.column-meta' ).replaceWith( column.find( '.column-meta' ) );
155
- clone.find( '.column-form' ).replaceWith( column.find( '.column-form' ) );
 
156
 
157
- // Increment clone id
158
- clone.cpac_update_clone_id( storage_model );
159
 
160
- // Load clone
161
- column.replaceWith( clone );
162
- clone.cpac_column_refresh();
163
- }
 
 
 
 
 
 
 
164
  }
165
- } );
166
 
167
  /** change label */
168
  column.find('.column_label .input input').bind( 'keyup change', function() {
@@ -272,7 +249,6 @@ jQuery.fn.cpac_update_clone_id = function( storage_model ) {
272
  // set clone ID
273
  el.attr( 'data-clone', id );
274
  el.find( 'input.clone' ).val( id );
275
- el.find( 'input.column-name' ).val( type + '-' + id );
276
 
277
  // update input names with clone ID
278
  var inputs = el.find( 'input, select, label' );
@@ -502,10 +478,8 @@ function cpac_sortable() {
502
  * @since 1.5
503
  */
504
  function cpac_menu() {
505
-
506
- var menu = jQuery('#cpac div.cpac-menu');
507
  // click
508
- menu.find('a').click( function(e, el) {
509
 
510
  var id = jQuery(this).attr('href');
511
 
@@ -519,72 +493,11 @@ function cpac_menu() {
519
 
520
  // set current
521
  jQuery(this).addClass('current');
522
- var container = jQuery('.columns-container[data-type="' + type + '"]').show();
523
- var columns = container.find( '.cpac-columns' );
524
-
525
- // hook for addons
526
- jQuery( document ).trigger( 'cac_menu_change', columns );
527
  }
528
 
529
  e.preventDefault();
530
  });
531
-
532
- // activate first menu
533
- menu.find('a.current').trigger('click');
534
  }
535
 
536
- /*
537
- * Bind events: triggered after column is init, changed or added
538
- *
539
- */
540
- jQuery( document ).bind('column_init column_change column_add', function( e, column ){
541
- jQuery( column ).cpac_bind_column_addon_events();
542
- jQuery( column ).cpac_bind_container_addon_events();
543
- });
544
-
545
- /*
546
- * Radio Click events
547
- *
548
- */
549
- jQuery.fn.cpac_bind_column_addon_events = function() {
550
-
551
- var column = jQuery( this );
552
- var inputs = column.find('[data-toggle-id] label');
553
-
554
- // Enable editing: radio button
555
- inputs.click( function(){
556
-
557
- var id = jQuery( this ).closest('td.input').data('toggle-id');
558
- var label = column.find('[data-indicator-id="' + id + '"]' ).removeClass( 'on' );
559
- var status = jQuery( 'input', this ).val();
560
-
561
- if ( 'on' == status ) {
562
- label.addClass( 'on' );
563
- }
564
- });
565
- };
566
-
567
- /*
568
- * Indicator Click Events
569
- *
570
- */
571
- jQuery.fn.cpac_bind_container_addon_events = function() {
572
-
573
- var column = jQuery( this );
574
- var indicator = column.find('[data-indicator-id]');
575
 
576
- indicator.unbind('click').click( function() {
577
-
578
- var id = jQuery( this ).data('indicator-id');
579
- var radio = column.find('[data-toggle-id="' + id + '"] input' );
580
-
581
- if ( jQuery( this ).hasClass('on') ) {
582
- jQuery( this ).removeClass('on').addClass('off');
583
- radio.filter('[value=off]').prop('checked', true);
584
- }
585
- else {
586
- jQuery( this ).removeClass('off').addClass('on');
587
- radio.filter('[value=on]').prop('checked', true);
588
- }
589
- });
590
- };
7
  if ( jQuery('#cpac').length === 0 )
8
  return false;
9
 
10
+
11
  // General
12
  cpac_pointer();
13
  cpac_submit_form();
22
  cpac_add_column();
23
  cpac_sidebar_scroll();
24
 
25
+ /** we start by binding the toggle and remove events. */
26
+ jQuery('.cpac-column').each( function(i,col) {
27
+ jQuery(col).column_bind_toggle();
28
+ jQuery(col).column_bind_remove();
 
29
  });
30
  });
31
 
53
 
54
  var column = jQuery(this);
55
 
56
+ column.find('td.column_edit, td.column_label a.toggle' ).click( function(){
 
 
 
57
 
58
+ column.toggleClass('opened').find('.column-form').slideToggle(150);
59
+
60
+ if ( !column.hasClass('events-binded') )
61
  column.column_bind_events();
 
62
 
63
  column.addClass('events-binded');
64
 
65
  // hook for addons
66
+ jQuery(document).trigger( 'column_init', column );
67
+ });
68
  };
69
 
70
  /*
81
  });
82
  };
83
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
84
  /*
85
  * Form Events
86
  *
88
  */
89
  jQuery.fn.column_bind_events = function() {
90
 
91
+ var column = jQuery(this);
92
+ var container = column.closest('.columns-container');
93
+ var storage_model = container.attr('data-type');
94
+
95
+ /** select column type */
96
+ var default_value = column.find('.column_type select option:selected').val();
97
 
98
+ column.find('.column_type select').change( function() {
 
99
 
100
+ var option = jQuery('optgroup', this).children(":selected");
 
101
  var type = option.val();
102
  var label = option.text();
103
+ var msg = jQuery(this).next('.msg').hide();
104
 
105
+ // create clone
106
+ var clone = container.find(".for-cloning-only .cpac-column[data-type='" + type + "']").clone();
107
+ if ( clone.length > 0 ) {
 
 
 
 
108
 
109
+ // column can have only one instance of itself and should not have another instance present?
110
+ if ( 'undefined' === typeof clone.attr('data-clone') ) {
111
+ if ( jQuery( '.cpac-columns', container ).find("[data-type='" + type + "']").length > 0 ) {
112
+ msg.html( cpac_i18n.clone.replace( '%s', '<strong>' + label + '</strong>' ) ).show();
113
 
114
+ // set to default
115
+ jQuery(this).find('option').removeAttr('selected');
116
+ jQuery(this).find('option[value="' + default_value + '"]').attr('selected', 'selected');
117
+ return;
118
+ }
119
  }
 
 
120
 
121
+ // open settings
122
+ clone.addClass('opened').find('.column-form').show();
123
+
124
+ // increment clone id
125
+ clone.cpac_update_clone_id( storage_model );
126
 
127
+ // add to DOM
128
+ column.replaceWith( clone );
129
 
130
+ // rebind toggle events
131
+ clone.column_bind_toggle();
132
+
133
+ // rebind remove events
134
+ clone.column_bind_remove();
135
+
136
+ // rebind all other events
137
+ clone.column_bind_events();
138
+
139
+ // hook for addons
140
+ jQuery(document).trigger( 'column_change', clone );
141
  }
142
+ });
143
 
144
  /** change label */
145
  column.find('.column_label .input input').bind( 'keyup change', function() {
249
  // set clone ID
250
  el.attr( 'data-clone', id );
251
  el.find( 'input.clone' ).val( id );
 
252
 
253
  // update input names with clone ID
254
  var inputs = el.find( 'input, select, label' );
478
  * @since 1.5
479
  */
480
  function cpac_menu() {
 
 
481
  // click
482
+ jQuery('#cpac div.cpac-menu a').click( function(e, el) {
483
 
484
  var id = jQuery(this).attr('href');
485
 
493
 
494
  // set current
495
  jQuery(this).addClass('current');
496
+ jQuery('.columns-container[data-type="' + type + '"]').show();
 
 
 
 
497
  }
498
 
499
  e.preventDefault();
500
  });
 
 
 
501
  }
502
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
503
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/js/admin-columns.min.js DELETED
@@ -1,4 +0,0 @@
1
- /*
2
- * Fires when the dom is ready
3
- *
4
- */function cpac_submit_form(){jQuery(".form-update a.submit-update").click(function(e){e.preventDefault();jQuery(this).closest(".columns-container").find(".cpac-columns form").submit()})}function cpac_add_column(){jQuery("#cpac .add_column").click(function(e){var t=jQuery(this).closest(".columns-container"),n=jQuery(".for-cloning-only .cpac-column",t).first().clone(),r=t.attr("data-type");if(n.length>0){n.cpac_update_clone_id(r);jQuery(".cpac-columns form",t).append(n);n.column_bind_toggle();n.column_bind_remove();n.column_bind_events();n.addClass("opened").find(".column-form").slideDown(150,function(){jQuery("html, body").animate({scrollTop:n.offset().top-58},300)});jQuery(document).trigger("column_add",n)}e.preventDefault()})}function cpac_sidebar_scroll(){if(jQuery(".columns-right-inside").length===0)return;if(jQuery(".columns-right-inside:visible").offset()){var e=jQuery(".columns-right-inside:visible").offset().top-parseFloat(jQuery(".columns-right-inside:visible").css("margin-top").replace(/auto/,0))-70;jQuery(window).scroll(function(t){var n=jQuery(this).scrollTop(),r=jQuery("#cpac").offset().top-parseFloat(jQuery("#cpac").css("margin-top").replace(/auto/,0));n>=e+r?jQuery(".columns-right-inside:visible").addClass("fixed"):jQuery(".columns-right-inside:visible").removeClass("fixed")})}}function cpac_clear_input_defaults(){jQuery.fn.cleardefault=function(){return this.focus(function(){this.value==this.defaultValue&&(this.value="")}).blur(function(){this.value.length||(this.value=this.defaultValue)})};jQuery("#cpac-box-plugin_settings .addons input").cleardefault()}function cpac_help(){jQuery("#cpac a.help").click(function(e){e.preventDefault();var t=jQuery("#contextual-help-wrap");t.parent().show();jQuery('a[href="#tab-panel-cpac-'+jQuery(this).attr("data-help")+'"]',t).trigger("click");t.slideDown("fast",function(){t.focus()})})}function cpac_pointer(){jQuery(".cpac-pointer").each(function(){var e=jQuery(this),t=e.attr("rel"),n=e.attr("data-pos"),r={at:"left top",my:"right top",edge:"right",offset:"0 0"};"right"==n&&(r={at:"right middle",my:"left middle",edge:"left"});e.pointer({content:jQuery("#"+t).html(),position:r,pointerWidth:250,close:function(){e.removeClass("open")},pointerClass:"wp-pointer wp-pointer-"+r.edge});e.click(function(){e.hasClass("open")?e.removeClass("open"):e.addClass("open")});e.hover(function(){jQuery(this).pointer("open")},function(){e.hasClass("open")||jQuery(this).pointer("close")})})}function cpac_sortable(){jQuery("div.cpac-columns").sortable({items:".cpac-column",revert:250,handle:"td.column_sort",placeholder:"cpac-placeholder",forcePlaceholderSize:!0,sort:function(e,t){jQuery(t.placeholder).is(":empty")&&jQuery(t.placeholder).html('<div class="inner-placeholder"></div>')}})}function cpac_menu(){var e=jQuery("#cpac div.cpac-menu");e.find("a").click(function(e,t){var n=jQuery(this).attr("href");if(n){var r=n.replace("#cpac-box-","");jQuery(".cpac-menu a").removeClass("current");jQuery(".columns-container").hide();jQuery(this).addClass("current");var i=jQuery('.columns-container[data-type="'+r+'"]').show(),s=i.find(".cpac-columns");jQuery(document).trigger("cac_menu_change",s)}e.preventDefault()});e.find("a.current").trigger("click")}jQuery(document).ready(function(){if(jQuery("#cpac").length===0)return!1;cpac_pointer();cpac_submit_form();cpac_clear_input_defaults();cpac_sortable();cpac_menu();cpac_help();cpac_add_column();cpac_sidebar_scroll();jQuery(".cpac-column").each(function(e,t){jQuery(t).column_bind_toggle();jQuery(t).column_bind_remove();jQuery(t).cpac_bind_container_addon_events()})});jQuery.fn.column_bind_toggle=function(){var e=jQuery(this);e.find("td.column_type a, td.column_edit, td.column_label a.toggle, td.column_label .edit-button").click(function(t){t.preventDefault();e.toggleClass("opened").find(".column-form").slideToggle(150);e.hasClass("events-binded")||e.column_bind_events();e.addClass("events-binded");jQuery(document).trigger("column_init",e)})};jQuery.fn.column_bind_remove=function(){jQuery(this).find(".remove-button").click(function(e){jQuery(this).closest(".cpac-column").column_remove();e.preventDefault()})};jQuery.fn.cpac_column_refresh=function(){var e=jQuery(this);e.addClass("loading");e.find(".column-form").prepend('<span class="spinner" />');jQuery.post(ajaxurl,{action:"cpac_column_refresh",column:jQuery(this).find("input.column-name").val(),formdata:jQuery(this).parents("form").serialize()},function(t){e.html(t);e.column_bind_toggle();e.column_bind_remove();e.column_bind_events();e.removeClass("loading").addClass("opened").find(".column-form").show();jQuery(document).trigger("column_change",e)})};jQuery.fn.column_bind_events=function(){var e=jQuery(this),t=e.closest(".columns-container "),n=t.attr("data-type"),r=e.find(".column_type select option:selected").val();e.find(".column_type select").change(function(){var i=jQuery("optgroup",this).children(":selected"),s=i.val(),o=i.text(),u=jQuery(this).next(".msg").hide(),a=t.find('.for-cloning-only .cpac-column[data-type="'+s+'"]');if(a.length){if(typeof a.attr("data-clone")=="undefined"&&jQuery(".cpac-columns",t).find('[data-type="'+s+'"]').length){u.html(cpac_i18n.clone.replace("%s","<strong>"+o+"</strong>")).show();jQuery(this).find("option").removeAttr("selected");jQuery(this).find('option[value="'+r+'"]').attr("selected","selected");return}var f=a.clone();f.addClass("opened").find(".column-form").show();f.find(".column-meta").replaceWith(e.find(".column-meta"));f.find(".column-form").replaceWith(e.find(".column-form"));f.cpac_update_clone_id(n);e.replaceWith(f);f.cpac_column_refresh()}});e.find(".column_label .input input").bind("keyup change",function(){var e=jQuery(this).val();jQuery(this).closest(".cpac-column").find("td.column_label .inner > a.toggle").text(e)});e.find(".input-width-range").each(function(){var e=jQuery(this).closest("td").find(".input-width"),t=jQuery(this).closest("td").find(".width-decription"),n=jQuery(e)[0].defaultValue,r=t.attr("title");jQuery(this).slider({range:"min",min:0,max:100,value:n,slide:function(n,i){var s=i.value>0?i.value+"%":r;jQuery(e).val(i.value);jQuery(t).text(s)}})});e.find(".column_image_size label.custom-size").click(function(){var e=jQuery(this).closest(".input");if(jQuery(this).hasClass("image-size-custom")){jQuery(".custom-size-w",e).removeClass("hidden");jQuery(".custom-size-h",e).removeClass("hidden")}else{jQuery(".custom-size-w",e).addClass("hidden");jQuery(".custom-size-h",e).addClass("hidden")}});e.find(".column-form .label label").hover(function(){jQuery(this).find("p.description").show()},function(){jQuery(this).find("p.description").hide()})};jQuery.fn.column_remove=function(){jQuery(this).addClass("deleting").animate({opacity:0,height:0},350,function(e){jQuery(this).remove()})};jQuery.fn.cpac_update_clone_id=function(e){var t=jQuery(this),n=t.attr("data-type"),r=jQuery('.columns-container[data-type="'+e+'"]').find(".cpac-columns"),i=jQuery(r).find('*[data-type="'+n+'"]').not(t),s=jQuery.map(i,function(e,t){return jQuery(e).attr("data-clone")?parseInt(jQuery(e).attr("data-clone"),10):0});s.sort();var o=Math.max.apply(null,s)+1;for(var u=0;u<=o;u++)if(-1===jQuery.inArray(u,s))break;if(0===u)return;t.attr("data-clone",u);t.find("input.clone").val(u);t.find("input.column-name").val(n+"-"+u);var a=t.find("input, select, label");jQuery(a).each(function(e,t){var r=n+"-"+u;jQuery(t).attr("name")&&jQuery(t).attr("name",jQuery(t).attr("name").replace(n,r));jQuery(t).attr("for")&&jQuery(t).attr("for",jQuery(t).attr("for").replace(n,r));jQuery(t).attr("id")&&jQuery(t).attr("id",jQuery(t).attr("id").replace(n,r))})};jQuery(document).bind("column_init column_change column_add",function(e,t){jQuery(t).cpac_bind_column_addon_events();jQuery(t).cpac_bind_container_addon_events()});jQuery.fn.cpac_bind_column_addon_events=function(){var e=jQuery(this),t=e.find("[data-toggle-id] label");t.click(function(){var t=jQuery(this).closest("td.input").data("toggle-id"),n=e.find('[data-indicator-id="'+t+'"]').removeClass("on"),r=jQuery("input",this).val();"on"==r&&n.addClass("on")})};jQuery.fn.cpac_bind_container_addon_events=function(){var e=jQuery(this),t=e.find("[data-indicator-id]");t.unbind("click").click(function(){var t=jQuery(this).data("indicator-id"),n=e.find('[data-toggle-id="'+t+'"] input');if(jQuery(this).hasClass("on")){jQuery(this).removeClass("on").addClass("off");n.filter("[value=off]").prop("checked",!0)}else{jQuery(this).removeClass("off").addClass("on");n.filter("[value=on]").prop("checked",!0)}})};
 
 
 
 
assets/js/custom-fields.js ADDED
@@ -0,0 +1,53 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /*
2
+ * Bind events: triggered by main plugin
3
+ *
4
+ */
5
+ jQuery(document).bind('column_init', function( e, column ){
6
+ jQuery(column).column_bind_custom_field_events();
7
+ });
8
+ jQuery(document).bind('column_change', function( e, clone ){
9
+ jQuery(clone).column_bind_custom_field_events();
10
+ });
11
+ jQuery(document).bind('column_add', function( e, clone ){
12
+ jQuery(clone).column_bind_custom_field_events();
13
+ });
14
+
15
+ /*
16
+ * Form Events
17
+ *
18
+ * @since 2.0.0
19
+ */
20
+ jQuery.fn.column_bind_custom_field_events = function() {
21
+
22
+ jQuery(this).find( '.column_field_type .input select' ).change( function() {
23
+
24
+ var value = jQuery(this).children(":selected").attr('value');
25
+
26
+ // image size
27
+ var image_size = jQuery(this).closest('table').find('.column_image_size').show();
28
+ if( 'image' == value || 'library_id' == value ) {
29
+ image_size.show();
30
+ }
31
+ else {
32
+ image_size.hide();
33
+ }
34
+
35
+ // excerpt length
36
+ var excerpt_length = jQuery(this).closest('table').find('.column_excerpt_length').show();
37
+ if( 'excerpt' == value ) {
38
+ excerpt_length.show();
39
+ }
40
+ else {
41
+ excerpt_length.hide();
42
+ }
43
+
44
+ // date format
45
+ var date_format = jQuery(this).closest('table').find('.column_date_format').show();
46
+ if( 'date' == value ) {
47
+ date_format.show();
48
+ }
49
+ else {
50
+ date_format.hide();
51
+ }
52
+ });
53
+ };
assets/less/admin-column.less DELETED
@@ -1,1028 +0,0 @@
1
- #cpac {
2
-
3
- a:focus,
4
- a:active {
5
- outline: none;
6
- }
7
- }
8
-
9
- /**
10
- * General
11
- * ----------------------------------------------------------------------------
12
- */
13
- #icon-codepress-admin-columns {
14
- background: transparent url('../images/icon.png') no-repeat 0 0;
15
- }
16
- .cpac-settings-link {
17
- float: right;
18
- margin: 12px 14px 5px 0;
19
- background: transparent url('../images/settings.png') no-repeat 0 0;
20
- padding-left: 20px;
21
- text-decoration: none;
22
- display: inline-block;
23
- line-height: 16px;
24
-
25
- &.current {
26
- font-weight: bold;
27
- }
28
- }
29
- .rtl .cpac-settings-link {
30
- float: left;
31
- margin: 12px 0 5px 14px;
32
- padding-right: 20px;
33
- padding-left: 0;
34
- }
35
- a.help {
36
- background: transparent url('../images/help.png') no-repeat 0 0;
37
- display: inline-block;
38
- width: 16px;
39
- height: 16px;
40
- }
41
- .button.loading {
42
- padding-right: 25px;
43
- position: relative;
44
- }
45
- .rtl .button.loading {
46
- padding-left: 25px;
47
- padding-right: 0;
48
- }
49
- .button.loading span {
50
- position: absolute;
51
- top: 2px;
52
- right: 6px;
53
- background: transparent url('../images/loading.gif') no-repeat right 50%;
54
- width: 16px;
55
- height: 16px;
56
- display: inline-block;
57
- }
58
- .rtl .button.loading span {
59
- left: 6px;
60
- right: auto;
61
- }
62
-
63
- /**
64
- * Icons
65
- * ----------------------------------------------------------------------------
66
- */
67
- .icon-yes {
68
- background: transparent url(../images/yes.png) no-repeat 0 0;
69
- width: 16px;
70
- height: 16px;
71
- display: inline-block;
72
- position: relative;
73
- top: 2px;
74
- }
75
- .icon-no {
76
- background: transparent url(../images/no.png) no-repeat 0 0;
77
- width: 16px;
78
- height: 16px;
79
- display: inline-block;
80
- position: relative;
81
- top: 2px;
82
- }
83
-
84
- /**
85
- * Header
86
- * ----------------------------------------------------------------------------
87
- */
88
- h2.cpac-nav-tab-wrapper {
89
- margin-bottom: 10px;
90
- }
91
-
92
- /**
93
- * Menu
94
- * ----------------------------------------------------------------------------
95
- */
96
- .cpac-menu {
97
- clear: both;
98
- overflow: hidden;
99
- margin-bottom: 10px;
100
-
101
- .subsubsub {
102
- white-space: normal;
103
- margin-right: 14px;
104
- width: 100%;
105
- margin: 0 14px 0 0;
106
-
107
- li {
108
-
109
- &.first {
110
- font-weight: bold;
111
- min-width: 90px;
112
- }
113
- }
114
- }
115
- }
116
-
117
- /**
118
- * Structure
119
- * ----------------------------------------------------------------------------
120
- */
121
- .columns-container {
122
- margin-right: 300px;
123
- max-width: 700px;
124
-
125
- .columns-left {
126
- float: left;
127
- width: 100%;
128
- }
129
-
130
- .columns-right {
131
- float: right;
132
- margin-right: -300px;
133
- width: 280px;
134
-
135
- .columns-right-inside.fixed {
136
- position: fixed;
137
- top: 40px;
138
- width: 280px;
139
- }
140
- }
141
- }
142
-
143
- /**
144
- * UI Sortable Plugin
145
- * ----------------------------------------------------------------------------
146
- */
147
- .ui-sortable-helper {
148
- -webkit-box-shadow: 1px 3px 6px 0px rgba(1, 1, 1, 0.4);
149
- box-shadow: 1px 3px 6px 0px rgba(1, 1, 1, 0.4);
150
-
151
- .column-meta {
152
- border-width: 1px;
153
- }
154
- }
155
- .cpac-placeholder {
156
- visibility: visible !important;
157
- border-top: 1px solid #dfdfdf;
158
- padding: 5px 4px 7px 0;
159
-
160
- .inner-placeholder {
161
- border: 1px dashed #808080;
162
- background: #eee;
163
- width: 100%;
164
- height: 100%;
165
- }
166
-
167
- :first-child {
168
- border: none;
169
- }
170
- }
171
-
172
- /**
173
- * Columns
174
- * ----------------------------------------------------------------------------
175
- */
176
- .columns-left {
177
- .cpac-boxes {
178
- .cpac-columns {
179
- form {
180
- box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
181
- }
182
- }
183
- }
184
- }
185
-
186
- /**
187
- * Column
188
- * ----------------------------------------------------------------------------
189
- */
190
- .cpac-column {
191
-
192
- // Column Header
193
- .column-meta {
194
- border-style: solid;
195
- border-color: #dfdfdf;
196
- border-width: 1px 1px 0;
197
- background: #fcfcfc;
198
-
199
- &:nth-child(2n) .column-meta {
200
- background: #f9f9f9;
201
- }
202
-
203
- img {
204
- margin-right: 3px;
205
- }
206
-
207
- table {
208
- border: none;
209
- background: transparent;
210
- border-radius: 0;
211
-
212
- tr {
213
- td {
214
- vertical-align: top;
215
- height: 18px;
216
- border: none;
217
- padding: 11px 8px;
218
- border-width: 1px 0 0;
219
- border-style: solid;
220
- border-color: transparent;
221
-
222
- &.column_sort {
223
- width: 10px;
224
- background: transparent url('../images/drag.png') no-repeat 8px 8px;
225
- cursor: move;
226
- }
227
-
228
- &.column_label {
229
- width: 55%;
230
- font-weight: bold;
231
- vertical-align: middle;
232
- position: relative;
233
-
234
- .inner {
235
- position: relative;
236
- overflow: hidden;
237
- height: 18px;
238
-
239
- > a {
240
- color: #5a5a5a;
241
- padding: 0 4px;
242
-
243
- &:hover {
244
- color: #333333;
245
- }
246
-
247
- &.edit-button,
248
- &.remove-button {
249
- display: none;
250
- color: #a00;
251
- text-decoration: none;
252
- text-shadow: none;
253
- font-weight: normal;
254
- margin-left: 5px;
255
- font-size: 12px;
256
-
257
- &:hover {
258
- color: #f00;
259
- }
260
- }
261
-
262
- &.edit-button {
263
- color: #0074a2;
264
-
265
- &:hover {
266
- color: #2ea2cc;
267
- //background-color: #2ea2cc;
268
- }
269
- }
270
- }
271
-
272
- .meta {
273
- display: inline-block;
274
- float: right;
275
- font-weight: normal;
276
- //color: #999999;
277
- color: #b2b2b2;
278
- //color: #727272;
279
- font-size: 12px;
280
-
281
- span {
282
- cursor: pointer;
283
- }
284
- }
285
- }
286
-
287
- // wp default icon
288
- span.vers {
289
- float: left;
290
- }
291
- }
292
-
293
- &.column_type {
294
- width: auto;
295
- text-align: right;
296
- vertical-align: middle;
297
- color: #999999;
298
- padding-right: 0;
299
-
300
- a {
301
- color: #999999;
302
- }
303
- }
304
-
305
- &.column_edit {
306
- width: 38px;
307
- background: transparent url('../images/arrow.png') no-repeat 23px 18px;
308
- cursor: pointer;
309
- }
310
- } // td
311
- } // tr
312
- } // table
313
-
314
- &:hover {
315
- .column_label .inner > a {
316
- &.remove-button {
317
- display: inline-block;
318
- }
319
- &.edit-button {
320
- display: inline-block;
321
- }
322
- }
323
- }
324
-
325
- // WP Default icons
326
- span.vers {
327
- padding-top: 2px;
328
-
329
- .comment-grey-bubble {
330
- background: transparent url("../images/comment-grey-bubble.png") no-repeat 0 0;
331
- height: 12px;
332
- width: 12px;
333
- float: right;
334
- }
335
- }
336
-
337
- } // .column-meta
338
-
339
- // Column Body
340
- .column-form {
341
- display: none;
342
- border-width: 1px 1px 0;
343
- border-style: solid;
344
- border-color: #dfdfdf;
345
- position: relative;
346
-
347
- table {
348
- border: none;
349
- background: #fcfcfc;
350
-
351
- tr {
352
-
353
- td {
354
- vertical-align: top;
355
- border: none;
356
- padding: 8px;
357
- background: #ffffff;
358
- border-top: 1px solid #F5F5F5;
359
-
360
- select,
361
- input[type=text] {
362
- width: 99.95%; // excl padding
363
- }
364
-
365
- select optgroup:nth-child(2n) {
366
- background: #F9F9F9;
367
- }
368
-
369
- &.label {
370
- position: relative;
371
- overflow: visible;
372
- background: #F9F9F9;
373
- background: #f5f5f5;
374
- border-right: 1px solid #E1E1E1;
375
- vertical-align: top;
376
- width: 34%;
377
- border-top: 1px solid #F0F0F0;
378
-
379
- label {
380
- font-weight: bold;
381
- color: #333333;
382
- display: block;
383
- position: relative;
384
- }
385
-
386
- p {
387
- color: #666666;
388
- display: block;
389
- font-size: 12px;
390
- font-style: normal;
391
- line-height: 16px;
392
- margin: 0 !important;
393
-
394
- &.description {
395
- display: none;
396
- position: absolute;
397
- z-index: 99;
398
- top: 30px;
399
- left: 0;
400
- background: #eaf2fa;
401
- border-radius: 5px;
402
- border: 1px solid #c7d7e2;
403
- padding: 5px 8px !important;
404
- font-weight: normal;
405
-
406
- em {
407
- display: block;
408
- color: #999;
409
- }
410
- }
411
- }
412
- }
413
-
414
- &.input {
415
- label {
416
- padding-left: 10px;
417
- padding-right: 0;
418
- }
419
- div.msg {
420
- margin-top: 5px;
421
- display: none;
422
- color: #333;
423
- padding: 6px 8px;
424
- background-color: #ffebe8;
425
- border: 1px solid #fff;
426
- -moz-border-radius: 3px;
427
- -webkit-border-radius: 3px;
428
- border-radius: 3px;
429
- }
430
- }
431
- }
432
-
433
- &.column_width {
434
- div.description {
435
- font-size: 11px;
436
- width: 12%;
437
- float: left;
438
- text-align: middle;
439
- }
440
- div.input-width-range {
441
- float: left;
442
- position: relative;
443
- width: 87%;
444
- margin-top: 4px;
445
-
446
- .ui-slider-handle {
447
- cursor:ew-resize;
448
- }
449
- }
450
- }
451
-
452
- &.column_image_size {
453
-
454
- border: 10px solid red;
455
- td.label {}
456
- td.input {
457
- label.custom-size {
458
- display: inline-block;
459
- margin-top: 4px;
460
- margin-bottom: 4px;
461
-
462
- input {
463
- margin-right: 3px;
464
- }
465
- }
466
-
467
- .custom_image_size {
468
- display: inline-block;
469
-
470
- .hidden {
471
- display: none;
472
- }
473
-
474
- .custom-size-w,
475
- .custom-size-h {
476
- margin: 0;
477
-
478
- &.hidden {
479
- display: none;
480
- }
481
-
482
- input[type="text"] {
483
- margin-right: 3px;
484
- width: 30px !important;
485
- }
486
- }
487
- }
488
- }
489
- }
490
-
491
- &.column_action {
492
- td {
493
- background: #f9f9f9;
494
-
495
- p {
496
- margin: 0;
497
-
498
- a.remove-button {
499
- color: #a00;
500
- text-decoration: none;
501
- text-shadow: none;
502
- font-weight: normal;
503
- margin-left: 5px;
504
- font-size: 12px;
505
- padding: 0 5px;
506
-
507
- &:hover {
508
- color: #fff;
509
- background: #f00;
510
- }
511
- }
512
- }
513
- }
514
- }
515
-
516
- &:first-child td {
517
- border-top: none;
518
- }
519
- }
520
- }
521
- }
522
-
523
- &.loading .column-form {
524
- > .spinner {
525
- position: absolute;
526
- left: 50%;
527
- top: 50%;
528
- z-index: 200;
529
- margin-left: -10px;
530
- margin-top: -10px;
531
- display: block;
532
- }
533
-
534
- &:before {
535
- content: '';
536
- position: absolute;
537
- width: 100%;
538
- height: 100%;
539
- background: #FFF;
540
- z-index: 100;
541
- opacity: 0.5;
542
- }
543
- }
544
-
545
- // Open state
546
- &.opened {
547
- .column-meta {
548
- background-color: #c7c7c7;
549
- background-image: -ms-linear-gradient(top, #e9e9e9, #c7c7c7);
550
- background-image: -moz-linear-gradient(top, #e9e9e9, #c7c7c7);
551
- background-image: -o-linear-gradient(top, #e9e9e9, #c7c7c7);
552
- background-image: -webkit-gradient(linear, left top, left bottom, from(#e9e9e9), to(#c7c7c7));
553
- background-image: -webkit-linear-gradient(top, #e9e9e9, #c7c7c7);
554
- background-image: linear-gradient(top, #e9e9e9, #c7c7c7);
555
- border-color: #aeaeae;
556
-
557
- table {
558
- background: transparent;
559
-
560
- td {
561
- border-color: #f8f8f8;
562
- color: #333;
563
- text-shadow: 0 1px 0 #FFFFFF;
564
-
565
- a {
566
- color: #333;
567
- text-shadow: 0 1px 0 #FFFFFF;
568
- }
569
-
570
- &.column_sort {
571
- background-position: 8px -39px;
572
- }
573
- &.column_label .inner .meta {
574
- color: #808080;
575
- }
576
- &.column_type {
577
- color: #5C5C5C;
578
- }
579
- }
580
- }
581
- }
582
- }
583
- } // .cpac-columns
584
-
585
- /**
586
- * Column: Footer
587
- * ----------------------------------------------------------------------------
588
- */
589
- .column-footer {
590
- background: #EAF2FA;
591
- border: 1px solid #c7d7e2;
592
- min-height: 26px;
593
- padding: 8px;
594
- overflow: hidden;
595
-
596
- .order-message {
597
- background: transparent url('../images/order_arrow.png') no-repeat 0 0;
598
- color: #7A9BBE;
599
- float: left;
600
- font-family: Comic Sans MS,sans-serif;
601
- font-size: 11px;
602
- height: 13px;
603
- line-height: 1em;
604
- margin-left: 4px;
605
- padding: 7px 0 0 22px;
606
- text-shadow: 0 1px 0 #FFFFFF;
607
- display: inline-block;
608
- }
609
-
610
- .button-container {
611
- float: right;
612
- display: inline-block;
613
- margin-top: -5px;
614
-
615
- a {
616
- display: inline-block;
617
- margin-top: 5px;
618
- }
619
- }
620
- }
621
-
622
- /**
623
- * Welcome Screen
624
- * ----------------------------------------------------------------------------
625
- */
626
-
627
- .cpac-content-body hr {
628
- -moz-border-bottom-colors: none;
629
- -moz-border-left-colors: none;
630
- -moz-border-right-colors: none;
631
- -moz-border-top-colors: none;
632
- background: none repeat scroll 0 0 transparent;
633
- border-color: #DFDFDF -moz-use-text-color -moz-use-text-color;
634
- border-image: none;
635
- border-right: 0 none;
636
- border-style: solid none none;
637
- border-width: 1px 0 0;
638
- clear: both;
639
- margin: 30px 0;
640
- opacity: 0.2;
641
- }
642
- #cpac-welcome.about-wrap div.error {
643
- display: block !important;
644
- }
645
- .cpac-alert {
646
- display: inline-block;
647
- background: none repeat scroll 0 0 #FCF8E3;
648
- border: 1px solid #FBEED5;
649
- border-radius: 4px 4px 4px 4px;
650
- color: #C09853;
651
- margin: 20px 0;
652
- padding: 16px 14px;
653
- text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
654
- }
655
- .cpac-alert p {
656
- margin: 0;
657
- }
658
- .cpac-alert.cpac-alert-success {
659
- background-color: #DFF0D8;
660
- border-color: #D6E9C6;
661
- color: #468847;
662
- }
663
- .cpac-alert.cpac-alert-error {
664
- background-color: #F2DEDE;
665
- border-color: #EED3D7;
666
- color: #B94A48;
667
- }
668
- .cpac-alert a.button-primary {
669
-
670
- height: 28px;
671
- line-height: 28px;
672
- display: inline-block;
673
- }
674
- #cpac-download-add-ons-table {
675
- max-width: 600px;
676
- }
677
- .wp-core-ui .button-large {
678
- height: 40px;
679
- line-height: 40px;
680
- font-size: 16px;
681
- padding: 0 15px;
682
- text-shadow: 0 1px 0 rgba(0, 0, 0, 0.5);
683
- }
684
-
685
- /**
686
- * Sidebar
687
- * ----------------------------------------------------------------------------
688
- */
689
- .columns-right {
690
- margin-top: 54px;
691
-
692
- .sidebox {
693
- background: none repeat scroll 0 0 #FFFFFF;
694
- border: 1px solid #E1E1E1;
695
- border-radius: 0 0 0 0;
696
- box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
697
- position: relative;
698
- margin-bottom: 14px;
699
-
700
- h3 {
701
- padding: 10px;
702
- margin: 0;
703
-
704
- &.title {
705
- font-family: Georgia,"Times New Roman","Bitstream Charter",Times,serif;
706
- font-size: 15px;
707
- font-weight: normal;
708
- line-height: 1;
709
- margin: 0;
710
- padding: 7px 10px;
711
- background: #f1f1f1;
712
- background-image: -webkit-gradient(linear, left bottom, left top, from(#ececec), to(#f9f9f9));
713
- background-image: -webkit-linear-gradient(bottom, #ececec, #f9f9f9);
714
- background-image: -moz-linear-gradient(bottom, #ececec, #f9f9f9);
715
- background-image: -o-linear-gradient(bottom, #ececec, #f9f9f9);
716
- background-image: linear-gradient(to top, #ececec, #f9f9f9);
717
- border-bottom-color: #dfdfdf;
718
- text-shadow: #fff 0 1px 0;
719
- -webkit-box-shadow: 0 1px 0 #fff;
720
- box-shadow: 0 1px 0 #fff;
721
- border-bottom-style: solid;
722
- border-bottom-width: 1px;
723
- }
724
- }
725
-
726
- .inside {
727
- padding: 10px;
728
-
729
- p {
730
- margin-top: 0;
731
- }
732
- }
733
-
734
- &#form-actions {
735
- .form-reset {
736
- border-bottom: 1px solid #F5F5F5;
737
- padding: 8px;
738
- }
739
- .reset-column-type {
740
- text-decoration: none;
741
- color: #BC0B0B;
742
- line-height: 25px;
743
- display: inline-block;
744
- }
745
- .form-update {
746
- padding: 8px;
747
- overflow: hidden;
748
- }
749
- .submit-update {
750
- display: block;
751
- width: 100%;
752
- height: 28px;
753
- line-height: 28px;
754
- text-align: center;
755
- }
756
- }
757
-
758
- &#pro-version {
759
- .cta {
760
- background: transparent url(../images/get_the_addon.png) no-repeat 0 0;
761
- }
762
- .padding-box {
763
- padding: 8px 15px 0;
764
- }
765
- h3 a {
766
- color: #fff;
767
- font-size: 19px;
768
- text-decoration: none;
769
- font-weight: normal;
770
- margin-top: 6px;
771
- }
772
- .inside {
773
- ul {
774
- margin: 0 0 10px 0;
775
-
776
- li {
777
- margin: 0;
778
- padding: 0;
779
-
780
- a {
781
- display: inline-block;
782
- height: 24px;
783
- font-size: 19px;
784
- line-height: 24px;
785
- margin-bottom: 1px;
786
- padding: 0 5px;
787
- background: #000;
788
- color: #fff;
789
- text-decoration: none;
790
- }
791
- }
792
- }
793
-
794
- p {
795
- color: #fff;
796
- font-size: 12px;
797
-
798
- a {
799
- color: #fff;
800
- display: inline-block;
801
- background: #a4c518;
802
- padding: 0 2px;
803
- font-size: 15px;
804
- text-decoration: none;
805
- }
806
- }
807
- }
808
- }
809
- }
810
- }
811
-
812
- /**
813
- * Setting Tab
814
- * ----------------------------------------------------------------------------
815
- */
816
- table.cpac-form-table {
817
- max-width: 1100px;
818
- margin-top: 20px;
819
-
820
- > tbody > tr > td,
821
- > tbody > tr > th {
822
- vertical-align: top;
823
- }
824
-
825
- td.padding-22 {
826
- padding-top: 22px;
827
- }
828
-
829
- td {
830
-
831
- .cpac_export {
832
-
833
- .ms-container {
834
- background: transparent url('../images/switch_bw.png') no-repeat 50% 50%;
835
-
836
- .ms-selectable {
837
- width: 48%;
838
- margin-right: 0;
839
- }
840
- .ms-selection {
841
- float: right;
842
- width: 48%;
843
- }
844
-
845
- ul.ms-list {
846
- width: 100%;
847
-
848
- li {
849
- margin: 0;
850
- padding-top: 5px;
851
- padding-bottom: 5px;
852
- }
853
- }
854
- }
855
- }
856
- }
857
- }
858
-
859
- /**
860
- * WP Pointer
861
- * ----------------------------------------------------------------------------
862
- */
863
- .wp-pointer-content {
864
- overflow: hidden;
865
-
866
- ol {
867
- margin-left: 1.5em;
868
- padding: 0 15px;
869
- }
870
- }
871
- .wp-pointer-right {
872
- margin-right: 15px;
873
- }
874
-
875
- /* =RTL language
876
- -------------------------------------------------------------- */
877
- body.rtl {
878
- .wp-pointer-right {
879
- margin-left: 15px;
880
- margin-right: 0;
881
-
882
- ol {
883
- margin-right: 1.5em;
884
- margin-left: 0;
885
- }
886
- }
887
-
888
- .cpac-menu .subsubsub {
889
- margin-left: 14px;
890
- margin-right: 0;
891
- }
892
-
893
- .columns-container {
894
- margin-left: 300px;
895
- margin-right: 0;
896
- }
897
-
898
- .columns-left {
899
- float: right;
900
-
901
- // Columns
902
- .cpac-columns {
903
- .cpac-column {
904
-
905
- // Column Header
906
- .column-meta {
907
- img {
908
- margin-left: 3px;
909
- margin-right: 0;
910
- }
911
- .column_label {
912
- .inner {
913
- > a.remove-button {
914
- margin-right: 12px;
915
- margin-left: 0;
916
- }
917
-
918
- .meta {
919
- float: left;
920
- }
921
- }
922
-
923
- span.vers {
924
- float: right;
925
- }
926
- }
927
- .column_type {
928
- text-align: left;
929
- padding-left: 0;
930
- padding-right: auto;
931
- }
932
-
933
- span.vers .comment-grey-bubble {
934
- float: left;
935
- }
936
- }
937
-
938
- .column-form {
939
- table tr {
940
- &.column_image_size td.input label input {
941
- margin-left: 3px;
942
- margin-right: 0;
943
- }
944
-
945
- td.label {
946
- p.description {
947
- right: 0;
948
- left: auto;
949
- }
950
- a.more-info {
951
- float: left;
952
- }
953
- }
954
- }
955
-
956
- div.description {
957
- float: right;
958
- }
959
-
960
- div.input-width-range {
961
- float: right;
962
- }
963
-
964
- tr td.input label {
965
- padding-left: 10px;
966
- padding-right: 0;
967
- }
968
-
969
- a.help {
970
- float: left;
971
- }
972
- }
973
- }
974
- }
975
-
976
- // Footer
977
- .column-footer {
978
- .order-message {
979
- float: right;
980
- padding-right: 22px;
981
- padding-left: 0;
982
- background: transparent url('../images/order_arrow-rtl.png') no-repeat right top;
983
- }
984
- .button-container {
985
- float: left;
986
- }
987
- }
988
- }
989
-
990
- .columns-right {
991
- float: left;
992
- margin-left: -300px;
993
- margin-right: 0;
994
- }
995
-
996
- .cpac-placeholder {
997
- padding: 5px 0 7px 4px;
998
- }
999
-
1000
- .cpac_export .ms-container .ms-selection {
1001
- float: left;
1002
- }
1003
- }
1004
-
1005
- /* =Responsive
1006
- -------------------------------------------------------------- */
1007
- @media only screen and (max-width: 900px) {
1008
- .columns-container {
1009
- margin-right: 0;
1010
-
1011
- .columns-left {
1012
- float: none;
1013
- }
1014
-
1015
- .columns-right {
1016
- float: none;
1017
- margin-top: 0;
1018
- margin-right: 0;
1019
- width: 100%;
1020
-
1021
- .columns-right-inside.fixed {
1022
- position: relative;
1023
- top: 0;
1024
- width: 100%;
1025
- }
1026
- }
1027
- }
1028
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/less/column.less DELETED
@@ -1,76 +0,0 @@
1
- /* =General
2
- -------------------------------------------------------------- */
3
- .cpac-divider {
4
- display: inline-block;
5
- width: 14px;
6
- height: 12px;
7
- background: transparent url(../images/square.png) no-repeat 50% 7px;
8
- }
9
- span.status-open {}
10
- span.status-closed {
11
- color: red;
12
- }
13
- .tablenav.top .cpac-edit {
14
- top: 0;
15
- display: inline-block;
16
- vertical-align: bottom;
17
- }
18
-
19
- /* =Images Column
20
- -------------------------------------------------------------- */
21
- .cpac-column-value-image {
22
- display: inline-block;
23
- background: transparent;
24
- margin-right: 2px;
25
- overflow: hidden;
26
- }
27
- .rtl .cpac-column-value-image {
28
- margin-left: 2px;
29
- margin-right: 0;
30
- }
31
- .cpac-column-value-image img {
32
- display: block;
33
- margin: 0 auto;
34
- }
35
- .column-column-attachment img {
36
- padding-right: 5px;
37
- padding-bottom: 4px;
38
- }
39
- .rtl .column-column-attachment img {
40
- padding-left: 5px;
41
- padding-right: 0;
42
- }
43
-
44
- /* =Color Column
45
- -------------------------------------------------------------- */
46
- div.cpac-color {
47
- line-height: 26px;
48
- }
49
- div.cpac-color span {
50
- display: block;
51
- -webkit-border-radius: 3px;
52
- border-radius: 3px;
53
- color: #ffffff;
54
- float: left;
55
- height: 16px;
56
- line-height: 16px;
57
- margin-right: 12px;
58
- min-width: 30px;
59
- overflow: hidden;
60
- padding: 4px 5px;
61
- font-size: 10px;
62
- font-family: Monaco,Menlo,Consolas,"Courier New",monospace;
63
- min-width: 47px;
64
- text-align: center;
65
- }
66
- .rtl div.cpac-color span {
67
- float: right;
68
- margin-left: 12px;
69
- margin-right: 0;
70
- }
71
-
72
- /* =Available Sizes column
73
- -------------------------------------------------------------- */
74
- div.sizes span.not-available {
75
- color: #999;
76
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
classes/column.php CHANGED
@@ -334,19 +334,6 @@ class CPAC_Column {
334
  return $string;
335
  }
336
 
337
- /**
338
- * Get cache ID
339
- *
340
- * @since 2.1.2
341
- *
342
- * @param $id Cache ID
343
- * @return string MD5 Cache ID
344
- */
345
- function get_cache_id( $id ) {
346
-
347
- return md5( $this->storage_model->key . $this->properties->name . $id );
348
- }
349
-
350
  /**
351
  * Set cache objects
352
  *
@@ -360,7 +347,14 @@ class CPAC_Column {
360
  if ( empty( $cache_object ) )
361
  return false;
362
 
363
- set_transient( $this->get_cache_id( $id ), $cache_object );
 
 
 
 
 
 
 
364
  }
365
 
366
  /**
@@ -372,9 +366,8 @@ class CPAC_Column {
372
  * @return false | mixed Returns either false or the cached objects
373
  */
374
  function get_cache( $id ) {
375
- $cache = get_transient( $this->get_cache_id( $id ) );
376
-
377
- if ( empty( $cache ) )
378
  return false;
379
 
380
  return $cache;
@@ -389,7 +382,7 @@ class CPAC_Column {
389
  */
390
  function delete_cache( $id ) {
391
 
392
- delete_transient( $this->get_cache_id( $id ) );
393
  }
394
 
395
  /**
@@ -427,16 +420,9 @@ class CPAC_Column {
427
 
428
  $save_post = $post;
429
  $post = get_post( $post_id );
430
-
431
- setup_postdata( $post );
432
-
433
  $excerpt = get_the_excerpt();
434
  $post = $save_post;
435
 
436
- if ( $post ) {
437
- setup_postdata( $post );
438
- }
439
-
440
  $output = $this->get_shortened_string( $excerpt, $words );
441
 
442
  return $output;
@@ -656,8 +642,8 @@ class CPAC_Column {
656
 
657
  // image size by name
658
  if ( $sizes = $this->get_image_size_by_name( $image_size ) ) {
659
- $width = $sizes['width'];
660
- $height = $sizes['height'];
661
  }
662
 
663
  // maximum dimensions
@@ -878,28 +864,6 @@ class CPAC_Column {
878
  <?php
879
  }
880
 
881
- /**
882
- * Display field Preview Size
883
- *
884
- * @since 2.1.1
885
- */
886
- function display_field_before_after() {
887
- ?>
888
- <tr class="column_before">
889
- <?php $this->label_view( __( "Before", 'cpac' ), __( 'This text will appear before the custom field value.', 'cpac' ), 'before' ); ?>
890
- <td class="input">
891
- <input type="text" class="cpac-before" name="<?php $this->attr_name( 'before' ); ?>" id="<?php $this->attr_id( 'before' ); ?>" value="<?php echo esc_attr( stripslashes( $this->options->before ) ); ?>"/>
892
- </td>
893
- </tr>
894
- <tr class="column_after">
895
- <?php $this->label_view( __( "After", 'cpac' ), __( 'This text will appear after the custom field value.', 'cpac' ), 'after' ); ?>
896
- <td class="input">
897
- <input type="text" class="cpac-after" name="<?php $this->attr_name( 'after' ); ?>" id="<?php $this->attr_id( 'after' ); ?>" value="<?php echo esc_attr( stripslashes( $this->options->after ) ); ?>"/>
898
- </td>
899
- </tr>
900
- <?php
901
- }
902
-
903
  /**
904
  * Get column list
905
  *
@@ -951,7 +915,6 @@ class CPAC_Column {
951
 
952
  ?>
953
  <div class="cpac-column <?php echo $classes; ?>" data-type="<?php echo $this->properties->type; ?>"<?php echo $data_clone; ?>>
954
- <input type="hidden" class="column-name" name="<?php echo $this->attr_name( 'column-name' ); ?>" value="<?php echo esc_attr( $this->properties->name ); ?>" />
955
  <input type="hidden" class="type" name="<?php echo $this->attr_name( 'type' ); ?>" value="<?php echo $this->properties->type; ?>" />
956
  <input type="hidden" class="clone" name="<?php echo $this->attr_name( 'clone' ); ?>" value="<?php echo $this->properties->clone; ?>" />
957
  <div class="column-meta">
@@ -966,14 +929,17 @@ class CPAC_Column {
966
  <?php do_action( 'cac/column/label', $this ); ?>
967
 
968
  </div>
969
- <a class="toggle" href="javascript:;"><?php echo stripslashes( $this->get_label() ); ?></a>
970
- <a class="edit-button" href="javascript:;"><?php _e( 'Edit', 'cpac' ); ?></a>
971
- <a class="remove-button" href="javascript:;"><?php _e( 'Remove', 'cpac' ); ?></a>
 
 
 
972
  </div>
973
  </td>
974
  <td class="column_type">
975
  <div class="inner">
976
- <a href="#"><?php echo stripslashes( $this->properties->label ); ?></a>
977
  </div>
978
  </td>
979
  <td class="column_edit"></td>
@@ -1022,7 +988,6 @@ class CPAC_Column {
1022
  *
1023
  */
1024
  $this->display_settings();
1025
-
1026
  ?>
1027
 
1028
  <?php do_action( 'cac/column/settings_after', $this ); ?>
@@ -1031,6 +996,7 @@ class CPAC_Column {
1031
  <td colspan="2">
1032
  <p>
1033
  <a href="javascript:;" class="remove-button"><?php _e( 'Remove' );?></a>
 
1034
  </p>
1035
  </td>
1036
  </tr>
334
  return $string;
335
  }
336
 
 
 
 
 
 
 
 
 
 
 
 
 
 
337
  /**
338
  * Set cache objects
339
  *
347
  if ( empty( $cache_object ) )
348
  return false;
349
 
350
+ $cache_name = $this->storage_model->key . $this->properties->name . $id;
351
+
352
+ if ( strlen( $cache_name ) > 64 ) {
353
+ trigger_error( 'Cache name too long.' );
354
+ return false;
355
+ }
356
+
357
+ set_transient( $cache_name, $cache_object );
358
  }
359
 
360
  /**
366
  * @return false | mixed Returns either false or the cached objects
367
  */
368
  function get_cache( $id ) {
369
+ $cache = get_transient( $this->storage_model->key . $this->properties->name . $id );
370
+ if( empty( $cache ) )
 
371
  return false;
372
 
373
  return $cache;
382
  */
383
  function delete_cache( $id ) {
384
 
385
+ delete_transient( $this->storage_model->key . $this->properties->name . $id );
386
  }
387
 
388
  /**
420
 
421
  $save_post = $post;
422
  $post = get_post( $post_id );
 
 
 
423
  $excerpt = get_the_excerpt();
424
  $post = $save_post;
425
 
 
 
 
 
426
  $output = $this->get_shortened_string( $excerpt, $words );
427
 
428
  return $output;
642
 
643
  // image size by name
644
  if ( $sizes = $this->get_image_size_by_name( $image_size ) ) {
645
+ $width = $sizes['image_size_w'];
646
+ $height = $sizes['image_size_h'];
647
  }
648
 
649
  // maximum dimensions
864
  <?php
865
  }
866
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
867
  /**
868
  * Get column list
869
  *
915
 
916
  ?>
917
  <div class="cpac-column <?php echo $classes; ?>" data-type="<?php echo $this->properties->type; ?>"<?php echo $data_clone; ?>>
 
918
  <input type="hidden" class="type" name="<?php echo $this->attr_name( 'type' ); ?>" value="<?php echo $this->properties->type; ?>" />
919
  <input type="hidden" class="clone" name="<?php echo $this->attr_name( 'clone' ); ?>" value="<?php echo $this->properties->clone; ?>" />
920
  <div class="column-meta">
929
  <?php do_action( 'cac/column/label', $this ); ?>
930
 
931
  </div>
932
+ <a class="toggle" href="javascript:;">
933
+ <?php echo stripslashes( $this->get_label() ); ?>
934
+ </a>
935
+ <a class="remove-button" href="javacript:;">
936
+ <?php _e( 'Remove', 'cpac' ); ?>
937
+ </a>
938
  </div>
939
  </td>
940
  <td class="column_type">
941
  <div class="inner">
942
+ <?php echo stripslashes( $this->properties->label ); ?>
943
  </div>
944
  </td>
945
  <td class="column_edit"></td>
988
  *
989
  */
990
  $this->display_settings();
 
991
  ?>
992
 
993
  <?php do_action( 'cac/column/settings_after', $this ); ?>
996
  <td colspan="2">
997
  <p>
998
  <a href="javascript:;" class="remove-button"><?php _e( 'Remove' );?></a>
999
+ <!--<span class="description alignright"><?php _e('type','cpac'); ?>: <em><?php echo $this->properties->type; ?></em></span>-->
1000
  </p>
1001
  </td>
1002
  </tr>
classes/column/custom-field.php CHANGED
@@ -250,8 +250,8 @@ class CPAC_Column_Custom_Field extends CPAC_Column {
250
  *
251
  * @since 1.0
252
  */
253
- function hex2rgb( $hex ) {
254
- $hex = str_replace( "#", "", $hex );
255
 
256
  if(strlen($hex) == 3) {
257
  $r = hexdec(substr($hex,0,1).substr($hex,0,1));
@@ -329,11 +329,7 @@ class CPAC_Column_Custom_Field extends CPAC_Column {
329
  */
330
  function get_raw_value( $id, $single = true ) {
331
 
332
- $field_key = $this->get_field_key();
333
-
334
- $raw_value = get_metadata( $this->storage_model->type, $id, $field_key, $single );
335
-
336
- return apply_filters( 'cac/column/meta/raw_value', $raw_value, $id, $field_key, $this );
337
  }
338
 
339
  /**
@@ -349,7 +345,7 @@ class CPAC_Column_Custom_Field extends CPAC_Column {
349
  // get value by meta
350
  $value = $this->get_value_by_meta( $meta, $id );
351
  }
352
-
353
  $value = apply_filters( 'cac/column/meta/value', $value, $id, $this );
354
 
355
  $before = $this->get_before();
@@ -408,6 +404,7 @@ class CPAC_Column_Custom_Field extends CPAC_Column {
408
  *
409
  */
410
  $is_hidden = in_array( $this->options->field_type, array( 'date' ) ) ? false : true;
 
411
  $this->display_field_date_format( $is_hidden );
412
 
413
  /**
@@ -415,6 +412,7 @@ class CPAC_Column_Custom_Field extends CPAC_Column {
415
  *
416
  */
417
  $is_hidden = in_array( $this->options->field_type, array( 'image', 'library_id' ) ) ? false : true;
 
418
  $this->display_field_preview_size( $is_hidden );
419
 
420
  /**
@@ -422,12 +420,28 @@ class CPAC_Column_Custom_Field extends CPAC_Column {
422
  *
423
  */
424
  $is_hidden = in_array( $this->options->field_type, array( 'excerpt' ) ) ? false : true;
 
425
  $this->display_field_excerpt_length( $is_hidden );
426
 
427
  /**
428
  * Before / After
429
  *
430
  */
431
- $this->display_field_before_after();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
432
  }
433
  }
250
  *
251
  * @since 1.0
252
  */
253
+ function hex2rgb($hex) {
254
+ $hex = str_replace("#", "", $hex);
255
 
256
  if(strlen($hex) == 3) {
257
  $r = hexdec(substr($hex,0,1).substr($hex,0,1));
329
  */
330
  function get_raw_value( $id, $single = true ) {
331
 
332
+ return get_metadata( $this->storage_model->type, $id, $this->get_field_key(), $single );
 
 
 
 
333
  }
334
 
335
  /**
345
  // get value by meta
346
  $value = $this->get_value_by_meta( $meta, $id );
347
  }
348
+
349
  $value = apply_filters( 'cac/column/meta/value', $value, $id, $this );
350
 
351
  $before = $this->get_before();
404
  *
405
  */
406
  $is_hidden = in_array( $this->options->field_type, array( 'date' ) ) ? false : true;
407
+
408
  $this->display_field_date_format( $is_hidden );
409
 
410
  /**
412
  *
413
  */
414
  $is_hidden = in_array( $this->options->field_type, array( 'image', 'library_id' ) ) ? false : true;
415
+
416
  $this->display_field_preview_size( $is_hidden );
417
 
418
  /**
420
  *
421
  */
422
  $is_hidden = in_array( $this->options->field_type, array( 'excerpt' ) ) ? false : true;
423
+
424
  $this->display_field_excerpt_length( $is_hidden );
425
 
426
  /**
427
  * Before / After
428
  *
429
  */
430
+ ?>
431
+
432
+ <tr class="column_before">
433
+ <?php $this->label_view( __( "Before", 'cpac' ), __( 'This text will appear before the custom field value.', 'cpac' ), 'before' ); ?>
434
+ <td class="input">
435
+ <input type="text" class="cpac-before" name="<?php $this->attr_name( 'before' ); ?>" id="<?php $this->attr_id( 'before' ); ?>" value="<?php echo esc_attr( stripslashes( $this->options->before ) ); ?>"/>
436
+ </td>
437
+ </tr>
438
+ <tr class="column_after">
439
+ <?php $this->label_view( __( "After", 'cpac' ), __( 'This text will appear after the custom field value.', 'cpac' ), 'after' ); ?>
440
+ <td class="input">
441
+ <input type="text" class="cpac-after" name="<?php $this->attr_name( 'after' ); ?>" id="<?php $this->attr_id( 'after' ); ?>" value="<?php echo esc_attr( stripslashes( $this->options->after ) ); ?>"/>
442
+ </td>
443
+ </tr>
444
+ <?php
445
+
446
  }
447
  }
classes/column/media/available-sizes.php CHANGED
@@ -47,15 +47,12 @@ class CPAC_Column_Media_Available_Sizes extends CPAC_Column {
47
  }
48
 
49
  global $_wp_additional_image_sizes;
 
50
 
51
- if ( ! empty( $_wp_additional_image_sizes ) ) {
52
- unset( $_wp_additional_image_sizes['post-thumbnail'] );
53
-
54
- // image does not have these additional sizes rendered yet
55
- if ( $missing = array_diff( array_keys( $_wp_additional_image_sizes), array_keys( $meta['sizes'] ) ) ) {
56
- foreach ( $missing as $size ) {
57
- $paths[] = "<span title='Missing size: Try regenerate thumbnails with the plugin: Force Regenerate Thumbnails' href='javascript:;' class='not-available'>{$size}</span>";
58
- }
59
  }
60
  }
61
 
47
  }
48
 
49
  global $_wp_additional_image_sizes;
50
+ unset( $_wp_additional_image_sizes['post-thumbnail'] );
51
 
52
+ // image does not have these additional sizes rendered yet
53
+ if ( $missing = array_diff( array_keys( $_wp_additional_image_sizes), array_keys( $meta['sizes'] ) ) ) {
54
+ foreach ( $missing as $size ) {
55
+ $paths[] = "<span title='Missing size: Try regenerate thumbnails with the plugin: Force Regenerate Thumbnails' href='javascript:;' class='not-available'>{$size}</span>";
 
 
 
 
56
  }
57
  }
58
 
classes/column/post/author-name.php CHANGED
@@ -53,31 +53,28 @@ class CPAC_Column_Post_Author_Name extends CPAC_Column {
53
  */
54
  public function get_display_name( $user_id ) {
55
 
 
 
56
  if ( ! $userdata = get_userdata( $user_id ) )
57
  return false;
58
 
59
- $name = '';
60
-
61
  $display_as = $this->options->display_author_as;
62
 
63
- if ( 'first_last_name' == $display_as ) {
64
- $first = ! empty( $userdata->first_name ) ? $userdata->first_name : '';
65
- $last = ! empty( $userdata->last_name ) ? " {$userdata->last_name}" : '';
66
- $name = $first.$last;
67
- }
68
-
69
- elseif ( ! empty( $userdata->{$display_as} ) ) {
70
  $name = $userdata->{$display_as};
71
  }
72
 
73
- // default to display_name
74
- if ( ! $name ) {
75
- $name = $userdata->display_name;
 
76
  }
77
 
78
  return $name;
79
  }
80
 
 
81
  /**
82
  * @see CPAC_Column::get_value()
83
  * @since 2.0.0
@@ -112,6 +109,7 @@ class CPAC_Column_Post_Author_Name extends CPAC_Column {
112
  * @since 2.0.0
113
  */
114
  function display_settings() {
 
115
  ?>
116
 
117
  <tr class="column-author-name">
53
  */
54
  public function get_display_name( $user_id ) {
55
 
56
+ $name = '';
57
+
58
  if ( ! $userdata = get_userdata( $user_id ) )
59
  return false;
60
 
 
 
61
  $display_as = $this->options->display_author_as;
62
 
63
+ // first check variables in userdata
64
+ if ( ! empty( $userdata->{$display_as} ) ) {
 
 
 
 
 
65
  $name = $userdata->{$display_as};
66
  }
67
 
68
+ elseif ( 'first_last_name' == $display_as ) {
69
+ $first = !empty($userdata->first_name) ? $userdata->first_name : '';
70
+ $last = !empty($userdata->last_name) ? " {$userdata->last_name}" : '';
71
+ $name = $first.$last;
72
  }
73
 
74
  return $name;
75
  }
76
 
77
+
78
  /**
79
  * @see CPAC_Column::get_value()
80
  * @since 2.0.0
109
  * @since 2.0.0
110
  */
111
  function display_settings() {
112
+
113
  ?>
114
 
115
  <tr class="column-author-name">
classes/column/post/comment-status.php CHANGED
@@ -17,15 +17,6 @@ class CPAC_Column_Post_Comment_Status extends CPAC_Column {
17
  parent::__construct( $storage_model );
18
  }
19
 
20
- /**
21
- * @see CPAC_Column::apply_conditional()
22
- * @since 2.1.2
23
- */
24
- function apply_conditional() {
25
-
26
- return post_type_supports( $this->storage_model->key, 'comments' );
27
- }
28
-
29
  /**
30
  * @see CPAC_Column::get_value()
31
  * @since 2.0.0
17
  parent::__construct( $storage_model );
18
  }
19
 
 
 
 
 
 
 
 
 
 
20
  /**
21
  * @see CPAC_Column::get_value()
22
  * @since 2.0.0
classes/column/post/featured-image.php CHANGED
@@ -21,15 +21,6 @@ class CPAC_Column_Post_Featured_Image extends CPAC_Column {
21
  parent::__construct( $storage_model );
22
  }
23
 
24
- /**
25
- * @see CPAC_Column::apply_conditional()
26
- * @since 2.1.2
27
- */
28
- function apply_conditional() {
29
-
30
- return post_type_supports( $this->storage_model->key, 'thumbnail' );
31
- }
32
-
33
  /**
34
  * @see CPAC_Column::get_value()
35
  * @since 2.0.0
21
  parent::__construct( $storage_model );
22
  }
23
 
 
 
 
 
 
 
 
 
 
24
  /**
25
  * @see CPAC_Column::get_value()
26
  * @since 2.0.0
classes/column/post/ping-status.php CHANGED
@@ -17,15 +17,6 @@ class CPAC_Column_Post_Ping_Status extends CPAC_Column {
17
  parent::__construct( $storage_model );
18
  }
19
 
20
- /**
21
- * @see CPAC_Column::apply_conditional()
22
- * @since 2.1.2
23
- */
24
- function apply_conditional() {
25
-
26
- return post_type_supports( $this->storage_model->key, 'comments' );
27
- }
28
-
29
  /**
30
  * @see CPAC_Column::get_value()
31
  * @since 2.0.0
17
  parent::__construct( $storage_model );
18
  }
19
 
 
 
 
 
 
 
 
 
 
20
  /**
21
  * @see CPAC_Column::get_value()
22
  * @since 2.0.0
classes/column/taxonomy.php CHANGED
@@ -89,12 +89,6 @@ class CPAC_Column_Taxonomy extends CPAC_Column {
89
  function display_settings() {
90
 
91
  $taxonomies = get_object_taxonomies( $this->get_post_type(), 'objects' );
92
-
93
- foreach ( $taxonomies as $index => $taxonomy ) {
94
- if ( $taxonomy->name == 'post_format' ) {
95
- unset( $taxonomies[ $index ] );
96
- }
97
- }
98
  ?>
99
 
100
  <tr class="column_taxonomy">
89
  function display_settings() {
90
 
91
  $taxonomies = get_object_taxonomies( $this->get_post_type(), 'objects' );
 
 
 
 
 
 
92
  ?>
93
 
94
  <tr class="column_taxonomy">
classes/column/user/registered.php CHANGED
@@ -26,8 +26,7 @@ class CPAC_Column_User_Registered extends CPAC_Column {
26
 
27
  $user_registered = $this->get_raw_value( $user_id );
28
 
29
- // GMT offset is used
30
- return $this->get_date( get_date_from_gmt( $user_registered ), $this->options->date_format );
31
  }
32
 
33
  /**
26
 
27
  $user_registered = $this->get_raw_value( $user_id );
28
 
29
+ return $this->get_date( $user_registered, $this->options->date_format );
 
30
  }
31
 
32
  /**
classes/settings.php CHANGED
@@ -41,8 +41,6 @@ class CPAC_Settings {
41
  // handle addon downloads
42
  add_action( 'admin_init', array( $this, 'handle_download_request' ) );
43
 
44
- add_action( 'wp_ajax_cpac_column_refresh', array( $this, 'ajax_column_refresh' ) );
45
-
46
  // Settings Url's
47
  $this->settings_urls = (object) array(
48
  'admin' => admin_url( 'options-general.php?page=codepress-admin-columns' ),
@@ -53,39 +51,6 @@ class CPAC_Settings {
53
  );
54
  }
55
 
56
- public function ajax_column_refresh() {
57
- if ( ! empty( $_POST['formdata'] ) && ! empty( $_POST['column'] ) ) {
58
- parse_str( $_POST['formdata'], $formdata );
59
- $storagemodel_key = ! empty( $formdata['cpac_key'] ) ? $formdata['cpac_key'] : '';
60
-
61
- if ( $storagemodel_key && ! empty( $formdata[ $storagemodel_key ][ $_POST['column'] ] ) ) {
62
- $columndata = $formdata[ $formdata['cpac_key'] ][ $_POST['column'] ];
63
- $storage_model = $this->cpac->get_storage_model( $formdata['cpac_key'] );
64
- $registered_columns = $storage_model->get_registered_columns();
65
-
66
- if ( in_array( $columndata['type'], array_keys( $registered_columns ) ) ) {
67
- $column = clone $registered_columns[ $columndata['type'] ];
68
- $column->set_clone( $columndata['clone'] );
69
-
70
- foreach ( $columndata as $optionname => $optionvalue ) {
71
- $column->set_options( $optionname, $optionvalue );
72
- }
73
-
74
- $column->sanitize_label();
75
-
76
- $columns = array( $column->properties->name => $column );
77
-
78
- do_action( 'cac/columns', $columns );
79
- do_action( "cac/columns/storage_key={$storagemodel_key}", $columns );
80
-
81
- $column->display();
82
- }
83
- }
84
- }
85
-
86
- exit;
87
- }
88
-
89
  /**
90
  * Admin Menu.
91
  *
@@ -108,6 +73,12 @@ class CPAC_Settings {
108
  // register setting
109
  register_setting( 'cpac-general-settings', 'cpac_general_options' );
110
 
 
 
 
 
 
 
111
  // add cap to options.php
112
  add_filter( 'option_page_capability_cpac-general-settings', array( $this, 'add_capability' ) );
113
  }
@@ -133,6 +104,7 @@ class CPAC_Settings {
133
  wp_enqueue_style( 'wp-pointer' );
134
  wp_enqueue_style( 'jquery-ui-lightness', CPAC_URL . 'assets/ui-theme/jquery-ui-1.8.18.custom.css', array(), CPAC_VERSION, 'all' );
135
  wp_enqueue_style( 'cpac-admin', CPAC_URL . 'assets/css/admin-column.css', array(), CPAC_VERSION, 'all' );
 
136
  }
137
 
138
  /**
@@ -144,7 +116,10 @@ class CPAC_Settings {
144
 
145
  wp_enqueue_script( 'wp-pointer' );
146
  wp_enqueue_script( 'jquery-ui-slider' );
 
 
147
  wp_enqueue_script( 'cpac-admin-columns', CPAC_URL . 'assets/js/admin-columns.js', array( 'jquery', 'dashboard', 'jquery-ui-slider', 'jquery-ui-sortable' ), CPAC_VERSION );
 
148
 
149
  // javascript translations
150
  wp_localize_script( 'cpac-admin-columns', 'cpac_i18n', array(
@@ -160,7 +135,7 @@ class CPAC_Settings {
160
  public function handle_column_request() {
161
 
162
  // only handle updates from the admin columns page
163
- if ( ! ( isset($_GET['page'] ) && in_array( $_GET['page'], array( 'codepress-admin-columns' ) ) && isset( $_REQUEST['cpac_action'] ) ) )
164
  return false;
165
 
166
  // use $_REQUEST because the values are send both over $_GET and $_POST
@@ -533,129 +508,6 @@ class CPAC_Settings {
533
  return true;
534
  }
535
 
536
- /**
537
- * Menu
538
- *
539
- * @since 2.1.2
540
- */
541
- function display_menu_by_type( $menu_type = '', $label = '', $active_item = '' ) {
542
-
543
- $storage_models_by_type = array();
544
-
545
- foreach( $this->cpac->storage_models as $k => $storage_model ) {
546
- if ( $menu_type == $storage_model->menu_type ) {
547
- $storage_models_by_type[ $menu_type ][ $k ] = $storage_model;
548
- }
549
- }
550
-
551
- if ( ! empty( $storage_models_by_type[ $menu_type ] ) ) { $count = 0; ?>
552
- <ul class="subsubsub">
553
- <li class="first"><?php echo $label; ?>: </li>
554
- <?php foreach ( $storage_models_by_type[ $menu_type ] as $storage_model ) : ?>
555
- <li><?php echo $count++ != 0 ? ' | ' : ''; ?><a href="#cpac-box-<?php echo $storage_model->key; ?>" <?php echo $storage_model->is_menu_type_current( $active_item ) ? ' class="current"' : '';?> ><?php echo $storage_model->label; ?></a></li>
556
- <?php endforeach; ?>
557
- </ul>
558
- <?php
559
- }
560
- }
561
-
562
- /**
563
- * General Settings.
564
- *
565
- * @since 1.0.0
566
- */
567
- public function display_settings() {
568
- ?>
569
- <table class="form-table cpac-form-table">
570
- <tbody>
571
-
572
- <tr class="general">
573
- <th scope="row">
574
- <h3><?php _e( 'General Settings', 'cpac' ); ?></h3>
575
- <p><?php _e( 'Customize your Admin Columns settings.', 'cpac' ); ?></p>
576
- </th>
577
- <td class="padding-22">
578
- <div class="cpac_general">
579
- <form method="post" action="options.php">
580
- <?php settings_fields( 'cpac-general-settings' ); ?>
581
- <?php $options = get_option( 'cpac_general_options' ); ?>
582
- <p>
583
- <br/>
584
- </p>
585
- <p>
586
- <label for="show_hidden">
587
- <input name="cpac_general_options[show_hidden]" id="show_hidden" type="checkbox" value="1" <?php checked( isset( $options['show_hidden'] ) ? $options['show_hidden'] : '', '1' ); ?>>
588
- <?php _e( 'Show hidden custom fields. Default is <code>off</code>.', 'cpac' ); ?>
589
- </label>
590
- </p>
591
- <p>
592
- <label for="show_edit_button">
593
- <input name="cpac_general_options[show_edit_button]" id="show_edit_button" type="checkbox" value="1" <?php checked( isset( $options['show_edit_button'] ) ? $options['show_edit_button'] : '', '1' ); ?>>
594
- <?php _e( 'Show "Edit Columns" button on admin screens. Default is <code>off</code>.', 'cpac' ); ?>
595
- </label>
596
- </p>
597
-
598
- <?php do_action( 'cac/settings/general', $options ); ?>
599
-
600
- <p>
601
- <input type="submit" class="button" value="<?php _e( 'Save' ); ?>" />
602
- </p>
603
- </form>
604
- </div>
605
- </td>
606
- </tr><!--.general-->
607
-
608
- <?php
609
-
610
- /** Allow plugins to add their own custom settings to the settings page. */
611
- if ( $groups = apply_filters( 'cac/settings/groups', array() ) ) {
612
-
613
- foreach ( $groups as $id => $group ) {
614
-
615
- $title = isset( $group['title'] ) ? $group['title'] : '';
616
- $description = isset( $group['description'] ) ? $group['description'] : '';
617
-
618
- ?>
619
- <tr>
620
- <th scope="row">
621
- <h3><?php echo $title; ?></h3>
622
- <p><?php echo $description; ?></p>
623
- </th>
624
- <td class="padding-22">
625
- <?php
626
-
627
- /** Use this Hook to add additonal fields to the group */
628
- do_action( "cac/settings/groups/row={$id}" );
629
-
630
- ?>
631
- </td>
632
- </tr>
633
- <?php
634
- }
635
- }
636
-
637
- ?>
638
-
639
- <tr class="restore">
640
- <th scope="row">
641
- <h3><?php _e( 'Restore Settings', 'cpac' ); ?></h3>
642
- <p><?php _e( 'This will delete all column settings and restore the default settings.', 'cpac' ); ?></p>
643
- </th>
644
- <td class="padding-22">
645
- <form method="post" action="">
646
- <?php wp_nonce_field( 'restore-all','_cpac_nonce'); ?>
647
- <input type="hidden" name="cpac_action" value="restore_all" />
648
- <input type="submit" class="button" name="cpac-restore-defaults" value="<?php _e( 'Restore default settings', 'cpac' ) ?>" onclick="return confirm('<?php _e("Warning! ALL saved admin columns data will be deleted. This cannot be undone. \'OK\' to delete, \'Cancel\' to stop", 'cpac' ); ?>');" />
649
- </form>
650
- </td>
651
- </tr><!--.restore-->
652
-
653
- </tbody>
654
- </table>
655
-
656
- <?php
657
- }
658
-
659
  /**
660
  * Column Settings.
661
  *
@@ -666,11 +518,6 @@ class CPAC_Settings {
666
  // Load Welcome screen
667
  if ( $this->welcome_screen() ) return;
668
 
669
- $tabs = array(
670
- 'general' => __( 'Admin Columns', 'cpac' ),
671
- 'settings' => __( 'Settings', 'cpac' )
672
- );
673
-
674
  $current_tab = ( empty( $_GET['tab'] ) ) ? 'general' : sanitize_text_field( urldecode( $_GET['tab'] ) );
675
 
676
  // get first element from post-types
@@ -683,7 +530,12 @@ class CPAC_Settings {
683
  <?php screen_icon( 'codepress-admin-columns' ); ?>
684
 
685
  <h2 class="nav-tab-wrapper cpac-nav-tab-wrapper">
686
- <?php foreach( $tabs as $name => $label ) : ?>
 
 
 
 
 
687
  <a href="<?php echo $this->settings_urls->admin . "&amp;tab={$name}"; ?>" class="nav-tab<?php if( $current_tab == $name ) echo ' nav-tab-active'; ?>"><?php echo $label; ?></a>
688
  <?php endforeach; ?>
689
  </h2>
@@ -691,18 +543,20 @@ class CPAC_Settings {
691
  <?php do_action( 'cpac_messages' ); ?>
692
 
693
  <?php
694
- switch ( $current_tab ) :
695
 
696
  case "general" :
697
  ?>
698
 
699
  <div class="cpac-menu">
700
- <?php $this->display_menu_by_type( 'post', __( 'Posttypes', 'cpac' ), $first ); ?>
701
- <?php $this->display_menu_by_type( 'other', __( 'Others', 'cpac' ) ); ?>
702
- <?php $this->display_menu_by_type( 'taxonomy', __( 'Taxonomies', 'cpac' ) ); ?>
 
 
 
703
  </div>
704
 
705
- <?php $count = 0; ?>
706
  <?php foreach ( $this->cpac->storage_models as $storage_model ) : ?>
707
 
708
  <div class="columns-container" data-type="<?php echo $storage_model->key ?>"<?php echo $storage_model->is_menu_type_current( $first ) ? '' : ' style="display:none"'; ?>>
@@ -724,7 +578,7 @@ class CPAC_Settings {
724
  </h3>
725
  <?php $has_been_stored = $storage_model->get_stored_columns() ? true : false; ?>
726
  <div class="form-update">
727
- <a href="javascript:;" class="button-primary submit-update"><?php echo $has_been_stored ? __( 'Update' ) : __('Save'); ?> <?php echo $storage_model->label; ?></a>
728
  </div>
729
  <?php if ( $has_been_stored ) : ?>
730
  <div class="form-reset">
@@ -756,10 +610,9 @@ class CPAC_Settings {
756
  </div>
757
  </div>
758
 
759
-
760
  <?php
761
  // @todo: add newsletter
762
- /* ?>
763
  <div class="padding-box newsletter">
764
  <form action="http://codepress.us4.list-manage.com/subscribe/post?u=902ae7f162ce5bc38a0bc8a4f&amp;id=183e843a76" method="post" id="mc-embedded-subscribe-form" name="mc-embedded-subscribe-form" target="_blank">
765
  <?php $user = wp_get_current_user(); ?>
@@ -777,9 +630,9 @@ class CPAC_Settings {
777
  <input type="submit" value="Subscribe" name="subscribe" id="mc-embedded-subscribe" class="button">
778
  </form>
779
  </div>
780
- <?php */ ?>
781
- </div><!--pro-version-->
782
- <?php endif; ?>
783
 
784
  <div class="sidebox" id="plugin-support">
785
  <h3><?php _e( 'Support', 'cpac' ); ?></h3>
@@ -791,7 +644,7 @@ class CPAC_Settings {
791
  <?php printf( __("For full documentation, bug reports, feature suggestions and other tips <a href='%s'>visit the Admin Columns website</a>", 'cpac' ), $this->get_url('documentation') ); ?>
792
  </p>
793
  </div>
794
- </div><!--plugin-support-->
795
 
796
  </div><!--.columns-right-inside-->
797
  </div><!--.columns-right-->
@@ -854,4 +707,101 @@ class CPAC_Settings {
854
  </div><!--.wrap-->
855
  <?php
856
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
857
  }
41
  // handle addon downloads
42
  add_action( 'admin_init', array( $this, 'handle_download_request' ) );
43
 
 
 
44
  // Settings Url's
45
  $this->settings_urls = (object) array(
46
  'admin' => admin_url( 'options-general.php?page=codepress-admin-columns' ),
51
  );
52
  }
53
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
54
  /**
55
  * Admin Menu.
56
  *
73
  // register setting
74
  register_setting( 'cpac-general-settings', 'cpac_general_options' );
75
 
76
+ // @ todo_minor REMOVE
77
+ // add capabilty to administrator to manage admin columns
78
+ // note to devs: you can use this to grant other roles this privilidge as well.
79
+ //if ( $role = get_role( 'administrator' ) )
80
+ //$role->add_cap( 'manage_admin_columns' );
81
+
82
  // add cap to options.php
83
  add_filter( 'option_page_capability_cpac-general-settings', array( $this, 'add_capability' ) );
84
  }
104
  wp_enqueue_style( 'wp-pointer' );
105
  wp_enqueue_style( 'jquery-ui-lightness', CPAC_URL . 'assets/ui-theme/jquery-ui-1.8.18.custom.css', array(), CPAC_VERSION, 'all' );
106
  wp_enqueue_style( 'cpac-admin', CPAC_URL . 'assets/css/admin-column.css', array(), CPAC_VERSION, 'all' );
107
+ wp_enqueue_style( 'cpac-custom-fields-css', CPAC_URL . 'assets/css/custom-fields.css', array(), CPAC_VERSION, 'all' );
108
  }
109
 
110
  /**
116
 
117
  wp_enqueue_script( 'wp-pointer' );
118
  wp_enqueue_script( 'jquery-ui-slider' );
119
+
120
+ // columns
121
  wp_enqueue_script( 'cpac-admin-columns', CPAC_URL . 'assets/js/admin-columns.js', array( 'jquery', 'dashboard', 'jquery-ui-slider', 'jquery-ui-sortable' ), CPAC_VERSION );
122
+ wp_enqueue_script( 'cpac-custom-fields-js', CPAC_URL . 'assets/js/custom-fields.js', array( 'jquery' ), CPAC_VERSION );
123
 
124
  // javascript translations
125
  wp_localize_script( 'cpac-admin-columns', 'cpac_i18n', array(
135
  public function handle_column_request() {
136
 
137
  // only handle updates from the admin columns page
138
+ if ( ! ( isset($_GET['page'] ) && in_array( $_GET['page'], array( 'codepress-admin-columns', 'cpac-settings' ) ) && isset( $_REQUEST['cpac_action'] ) ) )
139
  return false;
140
 
141
  // use $_REQUEST because the values are send both over $_GET and $_POST
508
  return true;
509
  }
510
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
511
  /**
512
  * Column Settings.
513
  *
518
  // Load Welcome screen
519
  if ( $this->welcome_screen() ) return;
520
 
 
 
 
 
 
521
  $current_tab = ( empty( $_GET['tab'] ) ) ? 'general' : sanitize_text_field( urldecode( $_GET['tab'] ) );
522
 
523
  // get first element from post-types
530
  <?php screen_icon( 'codepress-admin-columns' ); ?>
531
 
532
  <h2 class="nav-tab-wrapper cpac-nav-tab-wrapper">
533
+ <?php
534
+ $tabs = array(
535
+ 'general' => __( 'Admin Columns', 'cpac' ),
536
+ 'settings' => __( 'Settings', 'cpac' )
537
+ );
538
+ foreach( $tabs as $name => $label ) : ?>
539
  <a href="<?php echo $this->settings_urls->admin . "&amp;tab={$name}"; ?>" class="nav-tab<?php if( $current_tab == $name ) echo ' nav-tab-active'; ?>"><?php echo $label; ?></a>
540
  <?php endforeach; ?>
541
  </h2>
543
  <?php do_action( 'cpac_messages' ); ?>
544
 
545
  <?php
546
+ switch ($current_tab) :
547
 
548
  case "general" :
549
  ?>
550
 
551
  <div class="cpac-menu">
552
+ <ul class="subsubsub">
553
+ <?php $count = 0; ?>
554
+ <?php foreach ( $this->cpac->storage_models as $storage_model ) : ?>
555
+ <li><?php echo $count++ != 0 ? ' | ' : ''; ?><a href="#cpac-box-<?php echo $storage_model->key; ?>" <?php echo $storage_model->is_menu_type_current( $first ) ? ' class="current"' : '';?> ><?php echo $storage_model->label; ?></a></li>
556
+ <?php endforeach; ?>
557
+ </ul>
558
  </div>
559
 
 
560
  <?php foreach ( $this->cpac->storage_models as $storage_model ) : ?>
561
 
562
  <div class="columns-container" data-type="<?php echo $storage_model->key ?>"<?php echo $storage_model->is_menu_type_current( $first ) ? '' : ' style="display:none"'; ?>>
578
  </h3>
579
  <?php $has_been_stored = $storage_model->get_stored_columns() ? true : false; ?>
580
  <div class="form-update">
581
+ <a href="javascript:;" class="button-primary submit-update"><?php echo $has_been_stored ? __( 'Update' ) : __('Publish'); ?> <?php echo $storage_model->label; ?></a>
582
  </div>
583
  <?php if ( $has_been_stored ) : ?>
584
  <div class="form-reset">
610
  </div>
611
  </div>
612
 
 
613
  <?php
614
  // @todo: add newsletter
615
+ if ( false ) : ?>
616
  <div class="padding-box newsletter">
617
  <form action="http://codepress.us4.list-manage.com/subscribe/post?u=902ae7f162ce5bc38a0bc8a4f&amp;id=183e843a76" method="post" id="mc-embedded-subscribe-form" name="mc-embedded-subscribe-form" target="_blank">
618
  <?php $user = wp_get_current_user(); ?>
630
  <input type="submit" value="Subscribe" name="subscribe" id="mc-embedded-subscribe" class="button">
631
  </form>
632
  </div>
633
+ <?php endif; ?>
634
+ </div>
635
+ <?php endif; ?>
636
 
637
  <div class="sidebox" id="plugin-support">
638
  <h3><?php _e( 'Support', 'cpac' ); ?></h3>
644
  <?php printf( __("For full documentation, bug reports, feature suggestions and other tips <a href='%s'>visit the Admin Columns website</a>", 'cpac' ), $this->get_url('documentation') ); ?>
645
  </p>
646
  </div>
647
+ </div><!--.form-actions-->
648
 
649
  </div><!--.columns-right-inside-->
650
  </div><!--.columns-right-->
707
  </div><!--.wrap-->
708
  <?php
709
  }
710
+
711
+ /**
712
+ * General Settings.
713
+ *
714
+ * @since 1.0.0
715
+ */
716
+ public function display_settings() {
717
+ ?>
718
+ <table class="form-table cpac-form-table">
719
+ <tbody>
720
+
721
+ <tr class="general">
722
+ <th scope="row">
723
+ <h3><?php _e( 'General Settings', 'cpac' ); ?></h3>
724
+ <p><?php _e( 'Customize your Admin Columns settings.', 'cpac' ); ?></p>
725
+ </th>
726
+ <td class="padding-22">
727
+ <div class="cpac_general">
728
+ <form method="post" action="options.php">
729
+ <?php settings_fields( 'cpac-general-settings' ); ?>
730
+ <?php $options = get_option( 'cpac_general_options' ); ?>
731
+ <p>
732
+ <br/>
733
+ </p>
734
+ <p>
735
+ <label for="show_hidden">
736
+ <input name="cpac_general_options[show_hidden]" id="show_hidden" type="checkbox" value="1" <?php checked( isset( $options['show_hidden'] ) ? $options['show_hidden'] : '', '1' ); ?>>
737
+ <?php _e( 'Show hidden custom fields. Default is <code>off</code>.', 'cpac' ); ?>
738
+ </label>
739
+ </p>
740
+ <p>
741
+ <label for="show_edit_button">
742
+ <input name="cpac_general_options[show_edit_button]" id="show_edit_button" type="checkbox" value="1" <?php checked( isset( $options['show_edit_button'] ) ? $options['show_edit_button'] : '', '1' ); ?>>
743
+ <?php _e( 'Show "Edit Columns" button on admin screens. Default is <code>off</code>.', 'cpac' ); ?>
744
+ </label>
745
+ </p>
746
+
747
+ <?php do_action( 'cac/settings/general', $options ); ?>
748
+
749
+ <p>
750
+ <input type="submit" class="button" value="<?php _e( 'Save' ); ?>" />
751
+ </p>
752
+ </form>
753
+ </div>
754
+ </td>
755
+ </tr><!--.general-->
756
+
757
+ <?php
758
+
759
+ /** Allow plugins to add their own custom settings to the settings page. */
760
+ if ( $groups = apply_filters( 'cac/settings/groups', array() ) ) {
761
+
762
+ foreach ( $groups as $id => $group ) {
763
+
764
+ $title = isset( $group['title'] ) ? $group['title'] : '';
765
+ $description = isset( $group['description'] ) ? $group['description'] : '';
766
+
767
+ ?>
768
+ <tr>
769
+ <th scope="row">
770
+ <h3><?php echo $title; ?></h3>
771
+ <p><?php echo $description; ?></p>
772
+ </th>
773
+ <td class="padding-22">
774
+ <?php
775
+
776
+ /** Use this Hook to add additonal fields to the group */
777
+ do_action( "cac/settings/groups/row={$id}" );
778
+
779
+ ?>
780
+ </td>
781
+ </tr>
782
+ <?php
783
+ }
784
+ }
785
+
786
+ ?>
787
+
788
+ <tr class="restore">
789
+ <th scope="row">
790
+ <h3><?php _e( 'Restore Settings', 'cpac' ); ?></h3>
791
+ <p><?php _e( 'This will delete all column settings and restore the default settings.', 'cpac' ); ?></p>
792
+ </th>
793
+ <td class="padding-22">
794
+ <form method="post" action="">
795
+ <?php wp_nonce_field( 'restore-all','_cpac_nonce'); ?>
796
+ <input type="hidden" name="cpac_action" value="restore_all" />
797
+ <input type="submit" class="button" name="cpac-restore-defaults" value="<?php _e( 'Restore default settings', 'cpac' ) ?>" onclick="return confirm('<?php _e("Warning! ALL saved admin columns data will be deleted. This cannot be undone. \'OK\' to delete, \'Cancel\' to stop", 'cpac' ); ?>');" />
798
+ </form>
799
+ </td>
800
+ </tr><!--.restore-->
801
+
802
+ </tbody>
803
+ </table>
804
+
805
+ <?php
806
+ }
807
  }
classes/storage_model.php CHANGED
@@ -32,15 +32,6 @@ abstract class CPAC_Storage_Model {
32
  */
33
  public $type;
34
 
35
- /**
36
- * Menu Type
37
- *
38
- * Groups the storage model in the menu.
39
- *
40
- * @since 2.0.0
41
- */
42
- public $menu_type;
43
-
44
  /**
45
  * Page
46
  *
@@ -85,21 +76,6 @@ abstract class CPAC_Storage_Model {
85
  */
86
  abstract function get_default_columns();
87
 
88
- /**
89
- * Construct
90
- *
91
- * @since 2.1.2
92
- */
93
- function __construct() {
94
-
95
- // set columns paths
96
- $this->set_columns_filepath();
97
-
98
- // Populate columns variable.
99
- // This is used for manage_value. By storing these columns we greatly improve performance.
100
- add_action( 'admin_init', array( $this, 'set_columns' ) );
101
- }
102
-
103
  /**
104
  * Checks if menu type is currently viewed
105
  *
@@ -263,47 +239,59 @@ abstract class CPAC_Storage_Model {
263
  *
264
  * @return array Column Classnames | Filepaths
265
  */
266
- public function set_columns_filepath() {
267
 
268
  $columns = array(
269
  'CPAC_Column_Custom_Field' => CPAC_DIR . 'classes/column/custom-field.php',
270
- 'CPAC_Column_Taxonomy' => CPAC_DIR . 'classes/column/taxonomy.php'
271
  );
272
 
273
- // Directory to iterate
274
- $columns_dir = CPAC_DIR . 'classes/column/' . $this->type;
275
-
276
- // check if directory exists
277
- if ( is_dir( $columns_dir ) ) {
278
-
279
- $iterator = new DirectoryIterator( $columns_dir );
280
 
281
- foreach( $iterator as $leaf ) {
282
 
283
- if ( $leaf->isDot() || $leaf->isDir() )
284
- continue;
285
 
286
- // only allow php files, exclude .SVN .DS_STORE and such
287
- if ( substr( $leaf->getFilename(), -4 ) !== '.php' )
288
- continue;
289
 
290
- // build classname from filename
291
- $class_name = 'CPAC_Column_' . ucfirst( $this->type ) . '_' . implode( '_', array_map( 'ucfirst', explode( '-', basename( $leaf->getFilename(), '.php' ) ) ) );
292
 
293
- // classname | filepath
294
- $columns[ $class_name ] = $leaf->getPathname();
295
- }
296
  }
297
 
298
- // cac/columns/custom - filter to register column
 
 
 
 
 
 
 
 
299
  $columns = apply_filters( 'cac/columns/custom', $columns, $this );
300
 
301
- // cac/columns/custom/post_type={$post_type} - filter to register column based on it's posttype
 
 
 
 
 
 
 
 
 
 
 
 
 
302
  $columns = apply_filters( 'cac/columns/custom/post_type=' . $this->key, $columns, $this );
303
 
304
- // cac/columns/custom/type={$type} - filter to register column based on it's content META type
305
- // type can be either a post, user, comment, link or media
306
- $this->columns_filepath = apply_filters( 'cac/columns/custom/type=' . $this->type, $columns, $this );
307
  }
308
 
309
  /**
@@ -383,6 +371,7 @@ abstract class CPAC_Storage_Model {
383
  $columns = array();
384
 
385
  foreach ( $this->columns_filepath as $classname => $path ) {
 
386
  include_once $path;
387
 
388
  if ( ! class_exists( $classname ) )
@@ -424,7 +413,7 @@ abstract class CPAC_Storage_Model {
424
  *
425
  * @since 1.0.0
426
  *
427
- * @param string $key
428
  * @return array Column options
429
  */
430
  public function get_stored_columns() {
@@ -439,14 +428,12 @@ abstract class CPAC_Storage_Model {
439
  * Set Columns
440
  *
441
  * @since 2.0.2
442
- *
443
- * @param bool $ignore_check This will allow (3rd party plugins) to populate columns outside the approved screens.
444
  */
445
- public function set_columns( $ignore_screen_check = false ) {
446
 
447
  // only set columns on allowed screens
448
  // @todo_minor: maybe add exception for AJAX calls
449
- if ( ! $ignore_screen_check && ! $this->is_doing_ajax() && ! $this->is_columns_screen() && ! $this->is_settings_page() )
450
  return;
451
 
452
  $this->custom_columns = $this->get_custom_registered_columns();
@@ -477,6 +464,10 @@ abstract class CPAC_Storage_Model {
477
 
478
  $columns = array();
479
 
 
 
 
 
480
  // get columns
481
  $default_columns = $this->default_columns;
482
  $custom_columns = $this->custom_columns;
@@ -545,9 +536,6 @@ abstract class CPAC_Storage_Model {
545
  }
546
  }
547
 
548
- do_action( "cac/columns", $columns );
549
- do_action( "cac/columns/storage_key={$this->key}", $columns );
550
-
551
  return $columns;
552
  }
553
 
@@ -569,7 +557,7 @@ abstract class CPAC_Storage_Model {
569
  *
570
  * @since 2.0.0
571
  */
572
- public function add_headings( $columns ) {
573
 
574
  // only add headings on overview screens, to prevent deactivating columns in the Storage Model.
575
  if ( ! $this->is_columns_screen() )
@@ -680,7 +668,7 @@ abstract class CPAC_Storage_Model {
680
  */
681
  function is_columns_screen() {
682
 
683
- global $pagenow;
684
 
685
  if ( $this->page . '.php' != $pagenow )
686
  return false;
@@ -693,14 +681,6 @@ abstract class CPAC_Storage_Model {
693
  return false;
694
  }
695
 
696
- // taxonomy
697
- if ( 'taxonomy' == $this->type ) {
698
- $taxonomy = isset( $_GET['taxonomy'] ) ? $_GET['taxonomy'] : '';
699
-
700
- if ( $this->taxonomy != $taxonomy )
701
- return false;
702
- }
703
-
704
  // @todo: current_screen is still empty at this point...
705
  //if ( ! empty( $current_screen->post_type ) && $this->key != $current_screen->post_type )
706
  // return false;
@@ -737,4 +717,4 @@ abstract class CPAC_Storage_Model {
737
  return $options[ $option ];
738
  }
739
 
740
- }
32
  */
33
  public $type;
34
 
 
 
 
 
 
 
 
 
 
35
  /**
36
  * Page
37
  *
76
  */
77
  abstract function get_default_columns();
78
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
79
  /**
80
  * Checks if menu type is currently viewed
81
  *
239
  *
240
  * @return array Column Classnames | Filepaths
241
  */
242
+ protected function set_columns_filepath() {
243
 
244
  $columns = array(
245
  'CPAC_Column_Custom_Field' => CPAC_DIR . 'classes/column/custom-field.php',
246
+ 'CPAC_Column_Taxonomy' => CPAC_DIR . 'classes/column/taxonomy.php'
247
  );
248
 
249
+ $iterator = new DirectoryIterator( CPAC_DIR . 'classes/column/' . $this->type );
 
 
 
 
 
 
250
 
251
+ foreach( $iterator as $leaf ) {
252
 
253
+ if ( $leaf->isDot() || $leaf->isDir() )
254
+ continue;
255
 
256
+ // only allow php files, exclude .SVN .DS_STORE and such
257
+ if ( substr( $leaf->getFilename(), -4 ) !== '.php' )
258
+ continue;
259
 
260
+ // build classname from filename
261
+ $class_name = 'CPAC_Column_' . ucfirst( $this->type ) . '_' . implode( '_', array_map( 'ucfirst', explode( '-', basename( $leaf->getFilename(), '.php' ) ) ) );
262
 
263
+ // classname | filepath
264
+ $columns[ $class_name ] = $leaf->getPathname();
 
265
  }
266
 
267
+ /**
268
+ * Filter the available custom column types
269
+ * Use this to register a custom column type
270
+ *
271
+ * @since 2.0.0
272
+ *
273
+ * @param array $columns Available custom columns ([class_name] => [class file path])
274
+ * @param CPAC_Storage_Model $storage_model Storage model class instance
275
+ */
276
  $columns = apply_filters( 'cac/columns/custom', $columns, $this );
277
 
278
+ /**
279
+ * Filter the available custom column types for a specific type
280
+ *
281
+ * @since 2.0.0
282
+ * @see Filter cac/columns/custom
283
+ */
284
+ $columns = apply_filters( 'cac/columns/custom/type=' . $this->type, $columns, $this );
285
+
286
+ /**
287
+ * Filter the available custom column types for a specific type
288
+ *
289
+ * @since 2.0.0
290
+ * @see Filter cac/columns/custom
291
+ */
292
  $columns = apply_filters( 'cac/columns/custom/post_type=' . $this->key, $columns, $this );
293
 
294
+ $this->columns_filepath = $columns;
 
 
295
  }
296
 
297
  /**
371
  $columns = array();
372
 
373
  foreach ( $this->columns_filepath as $classname => $path ) {
374
+
375
  include_once $path;
376
 
377
  if ( ! class_exists( $classname ) )
413
  *
414
  * @since 1.0.0
415
  *
416
+ * @paran string $key
417
  * @return array Column options
418
  */
419
  public function get_stored_columns() {
428
  * Set Columns
429
  *
430
  * @since 2.0.2
 
 
431
  */
432
+ function set_columns() {
433
 
434
  // only set columns on allowed screens
435
  // @todo_minor: maybe add exception for AJAX calls
436
+ if ( ! $this->is_doing_ajax() && ! $this->is_columns_screen() && ! $this->is_settings_page() )
437
  return;
438
 
439
  $this->custom_columns = $this->get_custom_registered_columns();
464
 
465
  $columns = array();
466
 
467
+ // get columns
468
+ //$default_columns = $this->get_default_registered_columns();
469
+ //$custom_columns = $this->get_custom_registered_columns();
470
+
471
  // get columns
472
  $default_columns = $this->default_columns;
473
  $custom_columns = $this->custom_columns;
536
  }
537
  }
538
 
 
 
 
539
  return $columns;
540
  }
541
 
557
  *
558
  * @since 2.0.0
559
  */
560
+ function add_headings( $columns ) {
561
 
562
  // only add headings on overview screens, to prevent deactivating columns in the Storage Model.
563
  if ( ! $this->is_columns_screen() )
668
  */
669
  function is_columns_screen() {
670
 
671
+ global $pagenow, $current_screen;
672
 
673
  if ( $this->page . '.php' != $pagenow )
674
  return false;
681
  return false;
682
  }
683
 
 
 
 
 
 
 
 
 
684
  // @todo: current_screen is still empty at this point...
685
  //if ( ! empty( $current_screen->post_type ) && $this->key != $current_screen->post_type )
686
  // return false;
717
  return $options[ $option ];
718
  }
719
 
720
+ }
classes/storage_model/comment.php CHANGED
@@ -9,19 +9,21 @@ class CPAC_Storage_Model_Comment extends CPAC_Storage_Model {
9
  */
10
  function __construct() {
11
 
12
- $this->key = 'wp-comments';
13
- $this->label = __( 'Comments' );
14
- $this->type = 'comment';
15
- $this->page = 'edit-comments';
16
- $this->menu_type = 'other';
 
 
 
 
17
 
18
  // headings
19
- add_filter( "manage_{$this->page}_columns", array( $this, 'add_headings' ) );
20
 
21
  // values
22
- add_action( 'manage_comments_custom_column', array( $this, 'manage_value' ), 10, 2 );
23
-
24
- parent::__construct();
25
  }
26
 
27
  /**
@@ -42,7 +44,7 @@ class CPAC_Storage_Model_Comment extends CPAC_Storage_Model {
42
 
43
  // get columns
44
  $table = _get_list_table( 'WP_Comments_List_Table', array( 'screen' => 'comments' ) );
45
- $columns = (array) $table->get_columns();
46
 
47
  return $columns;
48
  }
9
  */
10
  function __construct() {
11
 
12
+ $this->key = 'wp-comments';
13
+ $this->label = __( 'Comments' );
14
+ $this->type = 'comment';
15
+ $this->page = 'edit-comments';
16
+
17
+ $this->set_columns_filepath();
18
+
19
+ // populate columns variable
20
+ add_action( 'admin_init', array( $this, 'set_columns' ) );
21
 
22
  // headings
23
+ add_filter( "manage_{$this->page}_columns", array( $this, 'add_headings' ), 100 );
24
 
25
  // values
26
+ add_action( 'manage_comments_custom_column', array( $this, 'manage_value' ), 100, 2 );
 
 
27
  }
28
 
29
  /**
44
 
45
  // get columns
46
  $table = _get_list_table( 'WP_Comments_List_Table', array( 'screen' => 'comments' ) );
47
+ $columns = $table->get_columns();
48
 
49
  return $columns;
50
  }
classes/storage_model/link.php CHANGED
@@ -13,15 +13,17 @@ class CPAC_Storage_Model_Link extends CPAC_Storage_Model {
13
  $this->label = __( 'Links' );
14
  $this->type = 'link';
15
  $this->page = 'link-manager';
16
- $this->menu_type = 'other';
 
 
 
 
17
 
18
  // headings
19
- add_filter( "manage_{$this->page}_columns", array( $this, 'add_headings' ) );
20
 
21
  // values
22
- add_action( 'manage_link_custom_column', array( $this, 'manage_value' ), 10, 2 );
23
-
24
- parent::__construct();
25
  }
26
 
27
  /**
@@ -41,7 +43,7 @@ class CPAC_Storage_Model_Link extends CPAC_Storage_Model {
41
 
42
  // get columns
43
  $table = _get_list_table( 'WP_Links_List_Table', array( 'screen' => 'link-manager' ) );
44
- $columns = (array) $table->get_columns();
45
 
46
  return $columns;
47
  }
13
  $this->label = __( 'Links' );
14
  $this->type = 'link';
15
  $this->page = 'link-manager';
16
+
17
+ $this->set_columns_filepath();
18
+
19
+ // populate columns variable
20
+ add_action( 'admin_init', array( $this, 'set_columns' ) );
21
 
22
  // headings
23
+ add_filter( "manage_{$this->page}_columns", array( $this, 'add_headings' ), 100 );
24
 
25
  // values
26
+ add_action( 'manage_link_custom_column', array( $this, 'manage_value' ), 100, 2 );
 
 
27
  }
28
 
29
  /**
43
 
44
  // get columns
45
  $table = _get_list_table( 'WP_Links_List_Table', array( 'screen' => 'link-manager' ) );
46
+ $columns = $table->get_columns();
47
 
48
  return $columns;
49
  }
classes/storage_model/media.php CHANGED
@@ -14,16 +14,18 @@ class CPAC_Storage_Model_Media extends CPAC_Storage_Model {
14
  $this->type = 'media';
15
  $this->page = 'upload';
16
  $this->post_type = 'attachment';
17
- $this->menu_type = 'other';
 
 
 
 
18
 
19
  // headings
20
  // Increased the priority to overrule 3th party plugins such as Media Tags
21
- add_filter( "manage_{$this->page}_columns", array( $this, 'add_headings' ), 15 );
22
 
23
  // values
24
- add_action( 'manage_media_custom_column', array( $this, 'manage_value' ), 10, 2 );
25
-
26
- parent::__construct();
27
  }
28
 
29
  /**
@@ -43,7 +45,7 @@ class CPAC_Storage_Model_Media extends CPAC_Storage_Model {
43
 
44
  // get columns
45
  $table = _get_list_table ( 'WP_Media_List_Table', array( 'screen' => 'upload' ) );
46
- $columns = (array) $table->get_columns();
47
 
48
  if ( $this->is_settings_page() )
49
  $columns = array_merge( get_column_headers( 'upload' ), $columns );
14
  $this->type = 'media';
15
  $this->page = 'upload';
16
  $this->post_type = 'attachment';
17
+
18
+ $this->set_columns_filepath();
19
+
20
+ // populate columns variable
21
+ add_action( 'admin_init', array( $this, 'set_columns' ) );
22
 
23
  // headings
24
  // Increased the priority to overrule 3th party plugins such as Media Tags
25
+ add_filter( "manage_{$this->page}_columns", array( $this, 'add_headings' ), 100 );
26
 
27
  // values
28
+ add_action( 'manage_media_custom_column', array( $this, 'manage_value' ), 100, 2 );
 
 
29
  }
30
 
31
  /**
45
 
46
  // get columns
47
  $table = _get_list_table ( 'WP_Media_List_Table', array( 'screen' => 'upload' ) );
48
+ $columns = $table->get_columns();
49
 
50
  if ( $this->is_settings_page() )
51
  $columns = array_merge( get_column_headers( 'upload' ), $columns );
classes/storage_model/post.php CHANGED
@@ -14,22 +14,30 @@ class CPAC_Storage_Model_Post extends CPAC_Storage_Model {
14
  $this->type = 'post';
15
  $this->page = 'edit';
16
  $this->post_type = $post_type;
17
- $this->menu_type = 'post';
 
 
 
 
 
 
 
 
 
 
 
18
 
19
  // Headings
20
 
21
  // Since 3.1
22
- add_filter( "manage_{$post_type}_posts_columns", array( $this, 'add_headings' ), 10, 1 );
23
 
24
  // Deprecated ( as of 3.1 ) Note: This one is still used by woocommerce.
25
- // Priority set to 11 top make sure the WooCommerce headings are overwritten by CAC
26
  // @todo_minor check compatibility issues for this deprecated filter
27
- add_filter( "manage_{$this->page}-{$post_type}_columns", array( $this, 'add_headings' ), 11, 1 );
28
 
29
  // values
30
- add_action( "manage_{$post_type}_posts_custom_column", array( $this, 'manage_value' ), 10, 2 );
31
-
32
- parent::__construct();
33
  }
34
 
35
  /**
@@ -67,8 +75,7 @@ class CPAC_Storage_Model_Post extends CPAC_Storage_Model {
67
  */
68
  public function get_default_columns() {
69
 
70
- if ( ! function_exists('_get_list_table') )
71
- return array();
72
 
73
  //if ( ! $this->is_columns_screen() && ! $this->is_settings_page() )
74
  //return array();
@@ -80,7 +87,7 @@ class CPAC_Storage_Model_Post extends CPAC_Storage_Model {
80
 
81
  // Get the WP default columns
82
  $table = _get_list_table( 'WP_Posts_List_Table', array( 'screen' => $this->key ) );
83
- $columns = (array) $table->get_columns();
84
 
85
  // Get columns that have been set by other plugins. If a plugin use the hook "manage_edit-{$post_type}_columns"
86
  // we know that the columns have been overwritten. Use these columns instead of the WP default ones.
@@ -88,7 +95,7 @@ class CPAC_Storage_Model_Post extends CPAC_Storage_Model {
88
  // We have to make sure this filter only loads on the Admin Columns settings page. To prevent a loop
89
  // when it's being called by CPAC_Storage_Model::add_headings()
90
  if ( $this->is_settings_page() )
91
- $columns = array_merge( get_column_headers( 'edit-' . $this->key ), $columns );
92
 
93
  return array_filter( $columns );
94
  }
14
  $this->type = 'post';
15
  $this->page = 'edit';
16
  $this->post_type = $post_type;
17
+
18
+ // @todo_minor
19
+ // Add parent::__construct and move these two over:
20
+ // $this->set_custom_columns()
21
+ // add_action( 'admin_init', array( $this, 'set_columns' ) );
22
+ // also for the other types
23
+
24
+ $this->set_columns_filepath();
25
+
26
+ // Populate columns variable.
27
+ // This is used for manage_value. By storing these columns we greatly improve performance.
28
+ add_action( 'admin_init', array( $this, 'set_columns' ) );
29
 
30
  // Headings
31
 
32
  // Since 3.1
33
+ add_filter( "manage_{$post_type}_posts_columns", array( $this, 'add_headings' ), 100, 1 );
34
 
35
  // Deprecated ( as of 3.1 ) Note: This one is still used by woocommerce.
 
36
  // @todo_minor check compatibility issues for this deprecated filter
37
+ add_filter( "manage_{$this->page}-{$post_type}_columns", array( $this, 'add_headings' ), 100, 1 );
38
 
39
  // values
40
+ add_action( "manage_{$post_type}_posts_custom_column", array( $this, 'manage_value' ), 100, 2 );
 
 
41
  }
42
 
43
  /**
75
  */
76
  public function get_default_columns() {
77
 
78
+ if ( ! function_exists('_get_list_table') ) return array();
 
79
 
80
  //if ( ! $this->is_columns_screen() && ! $this->is_settings_page() )
81
  //return array();
87
 
88
  // Get the WP default columns
89
  $table = _get_list_table( 'WP_Posts_List_Table', array( 'screen' => $this->key ) );
90
+ $columns = $table->get_columns();
91
 
92
  // Get columns that have been set by other plugins. If a plugin use the hook "manage_edit-{$post_type}_columns"
93
  // we know that the columns have been overwritten. Use these columns instead of the WP default ones.
95
  // We have to make sure this filter only loads on the Admin Columns settings page. To prevent a loop
96
  // when it's being called by CPAC_Storage_Model::add_headings()
97
  if ( $this->is_settings_page() )
98
+ $columns = array_merge( get_column_headers( 'edit-' . $this->key ), $columns );
99
 
100
  return array_filter( $columns );
101
  }
classes/storage_model/user.php CHANGED
@@ -13,15 +13,17 @@ class CPAC_Storage_Model_User extends CPAC_Storage_Model {
13
  $this->label = __( 'Users' );
14
  $this->type = 'user';
15
  $this->page = 'users';
16
- $this->menu_type = 'other';
 
 
 
 
17
 
18
  // headings
19
- add_filter( "manage_{$this->page}_columns", array( $this, 'add_headings' ) );
20
 
21
  // values
22
- add_filter( 'manage_users_custom_column', array( $this, 'manage_value_callback' ), 10, 3 );
23
-
24
- parent::__construct();
25
  }
26
 
27
  /**
@@ -41,11 +43,7 @@ class CPAC_Storage_Model_User extends CPAC_Storage_Model {
41
 
42
  // get columns
43
  $table = _get_list_table( 'WP_Users_List_Table', array( 'screen' => 'users' ) );
44
- $columns = (array) $table->get_columns();
45
-
46
- if ( $this->is_settings_page() ) {
47
- $columns = array_merge( get_column_headers( 'users' ), $columns );
48
- }
49
 
50
  return $columns;
51
  }
13
  $this->label = __( 'Users' );
14
  $this->type = 'user';
15
  $this->page = 'users';
16
+
17
+ $this->set_columns_filepath();
18
+
19
+ // populate columns variable
20
+ add_action( 'admin_init', array( $this, 'set_columns' ) );
21
 
22
  // headings
23
+ add_filter( "manage_{$this->page}_columns", array( $this, 'add_headings' ), 100 );
24
 
25
  // values
26
+ add_filter( 'manage_users_custom_column', array( $this, 'manage_value_callback' ), 100, 3 );
 
 
27
  }
28
 
29
  /**
43
 
44
  // get columns
45
  $table = _get_list_table( 'WP_Users_List_Table', array( 'screen' => 'users' ) );
46
+ $columns = $table->get_columns();
 
 
 
 
47
 
48
  return $columns;
49
  }
classes/upgrade.php CHANGED
@@ -39,7 +39,7 @@ class CPAC_Upgrade {
39
  public function admin_menu() {
40
 
41
  // Don't run on plugin activate
42
- if ( isset( $_GET['action'] ) && 'activate-plugin' === $_GET['action'] ) return;
43
 
44
  // add settings page
45
  $upgrade_page = add_submenu_page( 'options-general.php', __( 'Upgrade', 'cpac' ), __( 'Upgrade', 'cpac' ), 'manage_options', 'cpac-upgrade', array( $this, 'start_upgrade' ) );
39
  public function admin_menu() {
40
 
41
  // Don't run on plugin activate
42
+ if ( isset( $_GET['action'] ) && 'activate-plugin' == $_GET['action'] ) return;
43
 
44
  // add settings page
45
  $upgrade_page = add_submenu_page( 'options-general.php', __( 'Upgrade', 'cpac' ), __( 'Upgrade', 'cpac' ), 'manage_options', 'cpac-upgrade', array( $this, 'start_upgrade' ) );
codepress-admin-columns.php CHANGED
@@ -2,7 +2,7 @@
2
  /*
3
 
4
  Plugin Name: Codepress Admin Columns
5
- Version: 2.1.2
6
  Description: Customize columns on the administration screens for post(types), pages, media, comments, links and users with an easy to use drag-and-drop interface.
7
  Author: Codepress
8
  Author URI: http://www.codepresshq.com
@@ -29,7 +29,7 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
29
 
30
  if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
31
 
32
- define( 'CPAC_VERSION', '2.1.2' ); // current plugin version
33
  define( 'CPAC_UPGRADE_VERSION', '2.0.0' ); // this is the latest version which requires an upgrade
34
  define( 'CPAC_URL', plugin_dir_url( __FILE__ ) );
35
  define( 'CPAC_DIR', plugin_dir_path( __FILE__ ) );
@@ -63,6 +63,9 @@ class CPAC {
63
  */
64
  function __construct() {
65
 
 
 
 
66
  add_action( 'wp_loaded', array( $this, 'init') );
67
  }
68
 
@@ -78,97 +81,24 @@ class CPAC {
78
  // translations
79
  load_plugin_textdomain( 'cpac', false, dirname( plugin_basename( __FILE__ ) ) . '/languages/' );
80
 
81
- // add settings link
82
- add_filter( 'plugin_action_links', array( $this, 'add_settings_link' ), 1, 2 );
83
-
84
- // Settings
85
- include_once CPAC_DIR . 'classes/settings.php';
86
- new CPAC_Settings( $this );
87
-
88
- // Upgrade
89
- require_once CPAC_DIR . 'classes/upgrade.php';
90
- new CPAC_Upgrade( $this );
91
-
92
- // load scripts
93
- $this->init_scripts();
94
 
95
- // add capabilty to roles to manage admin columns
96
- $this->set_capabilities();
97
 
98
  // set storage models
99
  $this->set_storage_models();
100
 
 
 
 
101
  // for third party plugins
102
  do_action( 'cac/loaded', $this );
103
  }
104
 
105
- /**
106
- * Is doing ajax
107
- *
108
- * @since 2.0.5
109
- *
110
- * @return boolean
111
- */
112
- function is_doing_ajax() {
113
-
114
- if ( defined( 'DOING_AJAX' ) && DOING_AJAX )
115
- return true;
116
-
117
- return false;
118
- }
119
-
120
- /**
121
- * Is columns screen
122
- *
123
- * @since 2.1.2
124
- */
125
- function is_columns_screen() {
126
-
127
- global $pagenow;
128
-
129
- if ( ! in_array( $pagenow, array( 'edit.php', 'upload.php', 'link-manager.php', 'edit-comments.php', 'users.php', 'edit-tags.php' ) ) )
130
- return false;
131
-
132
- return true;
133
- }
134
-
135
- /**
136
- * Is CAC screen
137
- *
138
- * @since 2.1.2
139
- */
140
- function is_settings_screen() {
141
-
142
- global $pagenow;
143
-
144
- if ( ! ( 'options-general.php' === $pagenow && isset( $_GET['page'] ) && ( 'codepress-admin-columns' === $_GET['page'] ) ) )
145
- return false;
146
-
147
- return true;
148
- }
149
-
150
- function is_cac_screen() {
151
- return apply_filters( 'cac/is_cac_screen', $this->is_columns_screen() || $this->is_doing_ajax() || $this->is_settings_screen() );
152
- }
153
-
154
- /**
155
- * Init scripts
156
- *
157
- * @since 2.1.1
158
- */
159
- public function init_scripts() {
160
-
161
- add_action( 'admin_head', array( $this, 'global_head_scripts') );
162
-
163
- if ( ! $this->is_columns_screen() )
164
- return;
165
-
166
- // styling & scripts
167
- add_action( 'admin_enqueue_scripts' , array( $this, 'column_styles') );
168
- add_filter( 'admin_body_class', array( $this, 'admin_class' ) );
169
- add_action( 'admin_head', array( $this, 'admin_scripts') );
170
- }
171
-
172
  /**
173
  * Add user capabilities
174
  *
@@ -179,9 +109,8 @@ class CPAC {
179
  public function set_capabilities() {
180
 
181
  // add capabilty to administrator to manage admin columns
182
- if ( $role = get_role( 'administrator' ) ) {
183
  $role->add_cap( 'manage_admin_columns' );
184
- }
185
  }
186
 
187
  /**
@@ -192,10 +121,7 @@ class CPAC {
192
  */
193
  private function set_storage_models() {
194
 
195
- if ( ! $this->is_cac_screen() )
196
- return;
197
-
198
- $storage_models = array();
199
 
200
  // include parent and childs
201
  require_once CPAC_DIR . 'classes/column.php';
@@ -209,28 +135,29 @@ class CPAC {
209
  // add Posts
210
  foreach ( $this->get_post_types() as $post_type ) {
211
  $storage_model = new CPAC_Storage_Model_Post( $post_type );
212
- $storage_models[ $storage_model->key ] = $storage_model;
213
  }
214
 
215
  // add User
216
  $storage_model = new CPAC_Storage_Model_User();
217
- $storage_models[ $storage_model->key ] = $storage_model;
218
 
219
  // add Media
220
  $storage_model = new CPAC_Storage_Model_Media();
221
- $storage_models[ $storage_model->key ] = $storage_model;
222
 
223
  // add Comment
224
  $storage_model = new CPAC_Storage_Model_Comment();
225
- $storage_models[ $storage_model->key ] = $storage_model;
226
 
227
  // add Link
228
  if ( apply_filters( 'pre_option_link_manager_enabled', false ) ) { // as of 3.5 link manager is removed
229
  $storage_model = new CPAC_Storage_Model_Link();
230
- $storage_models[ $storage_model->key ] = $storage_model;
231
  }
232
 
233
- $this->storage_models = apply_filters( 'cac/storage_models', $storage_models );
 
234
  }
235
 
236
  /**
@@ -248,6 +175,25 @@ class CPAC {
248
  return false;
249
  }
250
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
251
  /**
252
  * Get post types - Utility Method
253
  *
@@ -298,7 +244,11 @@ class CPAC {
298
  */
299
  public function column_styles() {
300
 
301
- wp_enqueue_style( 'cpac-columns', CPAC_URL . 'assets/css/column.css', array(), CPAC_VERSION, 'all' );
 
 
 
 
302
  }
303
 
304
  /**
@@ -312,29 +262,30 @@ class CPAC {
312
  * @return string
313
  */
314
  function admin_class( $classes ) {
 
315
 
316
- if ( $this->storage_models ) {
317
- foreach ( $this->storage_models as $storage_model ) {
318
- if ( $storage_model->is_columns_screen() ) {
319
- $classes .= " cp-{$storage_model->key}";
320
- }
321
- }
 
 
 
 
 
 
 
 
 
 
 
322
  }
323
 
324
  return $classes;
325
  }
326
 
327
- /**
328
- * Admin CSS to hide upgrade menu and place icon
329
- *
330
- * @since 1.4.0
331
- */
332
- function global_head_scripts() { ?>
333
- <style type="text/css">
334
- #menu-settings a[href="options-general.php?page=cpac-upgrade"] { display: none; }
335
- </style>
336
- <?php
337
- }
338
 
339
  /**
340
  * Admin CSS for Column width and Settings Icon
@@ -342,14 +293,18 @@ class CPAC {
342
  * @since 1.4.0
343
  */
344
  function admin_scripts() {
 
 
 
 
345
 
346
- $css_column_width = '';
347
- $edit_link = '';
348
 
349
  if ( $this->storage_models ) {
350
  foreach ( $this->storage_models as $storage_model ) {
351
 
352
- if ( ! $storage_model->is_columns_screen() )
353
  continue;
354
 
355
  // CSS: columns width
@@ -363,27 +318,47 @@ class CPAC {
363
  }
364
 
365
  // JS: edit button
366
- $general_options = get_option( 'cpac_general_options' );
367
- if ( current_user_can( 'manage_admin_columns' ) && isset( $general_options['show_edit_button'] ) && '1' === $general_options['show_edit_button'] ) {
 
 
 
 
 
368
  $edit_link = $storage_model->get_edit_link();
369
  }
370
  }
371
  }
 
372
  ?>
373
- <?php if ( $css_column_width ) : ?>
374
  <style type="text/css">
375
  <?php echo $css_column_width; ?>
 
 
 
 
 
 
 
 
 
 
 
 
376
  </style>
377
- <?php endif; ?>
378
- <?php if ( $edit_link ) : ?>
 
 
 
 
379
  <script type="text/javascript">
380
  jQuery(document).ready(function() {
381
  jQuery('.tablenav.top .actions:last').append('<a href="<?php echo $edit_link; ?>" class="cpac-edit add-new-h2"><?php _e( 'Edit columns', 'cpac' ); ?></a>');
382
  });
383
  </script>
384
- <?php endif; ?>
385
-
386
  <?php
 
387
  }
388
  }
389
 
2
  /*
3
 
4
  Plugin Name: Codepress Admin Columns
5
+ Version: 2.1.3
6
  Description: Customize columns on the administration screens for post(types), pages, media, comments, links and users with an easy to use drag-and-drop interface.
7
  Author: Codepress
8
  Author URI: http://www.codepresshq.com
29
 
30
  if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
31
 
32
+ define( 'CPAC_VERSION', '2.1.3' ); // current plugin version
33
  define( 'CPAC_UPGRADE_VERSION', '2.0.0' ); // this is the latest version which requires an upgrade
34
  define( 'CPAC_URL', plugin_dir_url( __FILE__ ) );
35
  define( 'CPAC_DIR', plugin_dir_path( __FILE__ ) );
63
  */
64
  function __construct() {
65
 
66
+ // add capabilty to roles to manage admin columns
67
+ register_activation_hook( __FILE__, array( $this, 'set_capabilities' ) );
68
+
69
  add_action( 'wp_loaded', array( $this, 'init') );
70
  }
71
 
81
  // translations
82
  load_plugin_textdomain( 'cpac', false, dirname( plugin_basename( __FILE__ ) ) . '/languages/' );
83
 
84
+ // styling & scripts
85
+ add_action( 'admin_enqueue_scripts' , array( $this, 'column_styles') );
86
+ add_filter( 'admin_body_class', array( $this, 'admin_class' ) );
87
+ add_action( 'admin_head', array( $this, 'admin_scripts') );
 
 
 
 
 
 
 
 
 
88
 
89
+ // add settings link
90
+ add_filter( 'plugin_action_links', array( $this, 'add_settings_link'), 1, 2);
91
 
92
  // set storage models
93
  $this->set_storage_models();
94
 
95
+ // ini controllers
96
+ $this->init_controllers();
97
+
98
  // for third party plugins
99
  do_action( 'cac/loaded', $this );
100
  }
101
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
102
  /**
103
  * Add user capabilities
104
  *
109
  public function set_capabilities() {
110
 
111
  // add capabilty to administrator to manage admin columns
112
+ if ( $role = get_role( 'administrator' ) )
113
  $role->add_cap( 'manage_admin_columns' );
 
114
  }
115
 
116
  /**
121
  */
122
  private function set_storage_models() {
123
 
124
+ $this->storage_models = array();
 
 
 
125
 
126
  // include parent and childs
127
  require_once CPAC_DIR . 'classes/column.php';
135
  // add Posts
136
  foreach ( $this->get_post_types() as $post_type ) {
137
  $storage_model = new CPAC_Storage_Model_Post( $post_type );
138
+ $this->storage_models[ $storage_model->key ] = $storage_model;
139
  }
140
 
141
  // add User
142
  $storage_model = new CPAC_Storage_Model_User();
143
+ $this->storage_models[ $storage_model->key ] = $storage_model;
144
 
145
  // add Media
146
  $storage_model = new CPAC_Storage_Model_Media();
147
+ $this->storage_models[ $storage_model->key ] = $storage_model;
148
 
149
  // add Comment
150
  $storage_model = new CPAC_Storage_Model_Comment();
151
+ $this->storage_models[ $storage_model->key ] = $storage_model;
152
 
153
  // add Link
154
  if ( apply_filters( 'pre_option_link_manager_enabled', false ) ) { // as of 3.5 link manager is removed
155
  $storage_model = new CPAC_Storage_Model_Link();
156
+ $this->storage_models[ $storage_model->key ] = $storage_model;
157
  }
158
 
159
+ // Hook to add more models
160
+ do_action( 'cac/storage_models', $this->storage_models );
161
  }
162
 
163
  /**
175
  return false;
176
  }
177
 
178
+ /**
179
+ * Init controllers
180
+ *
181
+ * @since 2.0.0
182
+ *
183
+ */
184
+ function init_controllers() {
185
+
186
+ do_action( 'cac/controllers', $this );
187
+
188
+ // Settings
189
+ include_once CPAC_DIR . 'classes/settings.php';
190
+ new CPAC_Settings( $this );
191
+
192
+ // Upgrade
193
+ require_once CPAC_DIR . 'classes/upgrade.php';
194
+ new CPAC_Upgrade( $this );
195
+ }
196
+
197
  /**
198
  * Get post types - Utility Method
199
  *
244
  */
245
  public function column_styles() {
246
 
247
+ global $pagenow;
248
+
249
+ if ( in_array( $pagenow, array( 'edit.php', 'upload.php', 'link-manager.php', 'edit-comments.php', 'users.php' ) ) ) {
250
+ wp_enqueue_style( 'cpac-columns', CPAC_URL . 'assets/css/column.css', array(), CPAC_VERSION, 'all' );
251
+ }
252
  }
253
 
254
  /**
262
  * @return string
263
  */
264
  function admin_class( $classes ) {
265
+ global $current_screen;
266
 
267
+ // we dont need the 'edit-' part
268
+ $screen = str_replace( 'edit-', '', $current_screen->id );
269
+
270
+ // media library exception
271
+ if ( $current_screen->base == 'upload' && $current_screen->id == 'upload' )
272
+ $screen = 'media';
273
+
274
+ // link exception
275
+ if ( $current_screen->base == 'link-manager' && $current_screen->id == 'link-manager' )
276
+ $screen = 'links';
277
+
278
+ // loop the available types
279
+ foreach ( $this->storage_models as $storage_model ) {
280
+
281
+ // match against screen or wp-screen
282
+ if ( $storage_model->key == $screen || $storage_model->key == "wp-{$screen}" )
283
+ $classes .= " cp-{$storage_model->key}";
284
  }
285
 
286
  return $classes;
287
  }
288
 
 
 
 
 
 
 
 
 
 
 
 
289
 
290
  /**
291
  * Admin CSS for Column width and Settings Icon
293
  * @since 1.4.0
294
  */
295
  function admin_scripts() {
296
+ global $pagenow, $current_screen;
297
+
298
+ // CSS column widths
299
+ $css_column_width = '';
300
 
301
+ // JS
302
+ $edit_link = '';
303
 
304
  if ( $this->storage_models ) {
305
  foreach ( $this->storage_models as $storage_model ) {
306
 
307
+ if ( $storage_model->page . '.php' !== $pagenow )
308
  continue;
309
 
310
  // CSS: columns width
318
  }
319
 
320
  // JS: edit button
321
+ if (
322
+ // All types except Posts
323
+ empty( $current_screen->post_type ) ||
324
+ // Posts
325
+ ( ! empty( $current_screen->post_type ) && $storage_model->key == $current_screen->post_type )
326
+ )
327
+ {
328
  $edit_link = $storage_model->get_edit_link();
329
  }
330
  }
331
  }
332
+
333
  ?>
 
334
  <style type="text/css">
335
  <?php echo $css_column_width; ?>
336
+ #adminmenu #toplevel_page_codepress-admin-columns .wp-menu-image {
337
+ background: transparent url("<?php echo CPAC_URL; ?>assets/images/icon_20.png") no-repeat 6px -24px;
338
+ }
339
+ #adminmenu #toplevel_page_codepress-admin-columns:hover .wp-menu-image,
340
+ #adminmenu #toplevel_page_codepress-admin-columns.wp-menu-open .wp-menu-image {
341
+ background-position: 6px 6px;
342
+ }
343
+ #menu-settings a[href="options-general.php?page=cpac-upgrade"],
344
+ #adminmenu #toplevel_page_codepress-admin-columns a[href="admin.php?page=cpac-upgrade"] {
345
+ display: none;
346
+ }
347
+ .cpac-edit { margin-right: 3px; vertical-align: middle; }
348
  </style>
349
+
350
+ <?php
351
+
352
+ $general_options = get_option( 'cpac_general_options' );
353
+
354
+ if ( current_user_can( 'manage_admin_columns' ) && $edit_link && isset( $general_options['show_edit_button'] ) && '1' === $general_options['show_edit_button'] ) : ?>
355
  <script type="text/javascript">
356
  jQuery(document).ready(function() {
357
  jQuery('.tablenav.top .actions:last').append('<a href="<?php echo $edit_link; ?>" class="cpac-edit add-new-h2"><?php _e( 'Edit columns', 'cpac' ); ?></a>');
358
  });
359
  </script>
 
 
360
  <?php
361
+ endif;
362
  }
363
  }
364
 
languages/cpac.mo CHANGED
Binary file
languages/cpac.po CHANGED
@@ -2,8 +2,8 @@ msgid ""
2
  msgstr ""
3
  "Project-Id-Version: Codepress Admin Columns\n"
4
  "Report-Msgid-Bugs-To: \n"
5
- "POT-Creation-Date: 2014-03-11 08:53+0100\n"
6
- "PO-Revision-Date: 2014-03-11 08:53+0100\n"
7
  "Last-Translator: Codepress <info@codepress.nl>\n"
8
  "Language-Team: Codepress <info@codepress.nl>\n"
9
  "MIME-Version: 1.0\n"
@@ -12,1175 +12,1175 @@ msgstr ""
12
  "X-Poedit-KeywordsList: __;_e\n"
13
  "X-Poedit-Basepath: .\n"
14
  "X-Poedit-SourceCharset: UTF-8\n"
15
- "X-Generator: Poedit 1.6.4\n"
16
- "Language: em_GB\n"
17
  "X-Poedit-SearchPath-0: .\n"
18
  "X-Poedit-SearchPath-1: ..\n"
19
 
20
- #: ../classes/column.php:504
 
 
 
 
 
 
 
 
21
  msgid "Thumbnail"
22
  msgstr ""
23
 
24
- #: ../classes/column.php:505
25
  msgid "Medium"
26
  msgstr ""
27
 
28
- #: ../classes/column.php:506
29
  msgid "Large"
30
  msgstr ""
31
 
32
- #: ../classes/column.php:507
33
  msgid "Full"
34
  msgstr ""
35
 
36
- #: ../classes/column.php:799
37
  msgid "Date Format"
38
  msgstr ""
39
 
40
- #: ../classes/column.php:800
41
  msgid "This will determine how the date will be displayed."
42
  msgstr ""
43
 
44
- #: ../classes/column.php:806
45
  msgid "Example:"
46
  msgstr ""
47
 
48
- #: ../classes/column.php:808
49
  #, php-format
50
  msgid ""
51
  "Leave empty for WordPress date format, change your <a href=\"%s\">default "
52
  "date format here</a>."
53
  msgstr ""
54
 
55
- #: ../classes/column.php:809
56
  msgid "Documentation on date and time formatting."
57
  msgstr ""
58
 
59
- #: ../classes/column.php:827
60
  msgid "Excerpt length"
61
  msgstr ""
62
 
63
- #: ../classes/column.php:828
64
  msgid "Number of words"
65
  msgstr ""
66
 
67
- #: ../classes/column.php:850
68
  msgid "Preview size"
69
  msgstr ""
70
 
71
- #: ../classes/column.php:867 ../classes/column.php:946
72
  msgid "Custom"
73
  msgstr ""
74
 
75
- #: ../classes/column.php:870
76
  msgid "width"
77
  msgstr ""
78
 
79
- #: ../classes/column.php:873
80
  msgid "height"
81
  msgstr ""
82
 
83
- #: ../classes/column.php:889
84
- msgid "Before"
85
- msgstr ""
86
-
87
- #: ../classes/column.php:889
88
- msgid "This text will appear before the custom field value."
89
- msgstr ""
90
-
91
- #: ../classes/column.php:895
92
- msgid "After"
93
- msgstr ""
94
-
95
- #: ../classes/column.php:895
96
- msgid "This text will appear after the custom field value."
97
- msgstr ""
98
-
99
- #: ../classes/column.php:947 ../classes/column/custom-field.php:65
100
- #: ../classes/settings.php:247
101
  msgid "Default"
102
  msgstr ""
103
 
104
- #: ../classes/column.php:970 ../classes/column/comment/actions.php:96
105
- #: ../classes/column/link/actions.php:45 ../classes/column/post/actions.php:48
106
- #: ../classes/column/user/actions.php:66
107
- msgid "Edit"
108
- msgstr ""
109
-
110
- #: ../classes/column.php:971 ../classes/column.php:1033
111
  #: ../classes/column/user/actions.php:74
112
  msgid "Remove"
113
  msgstr ""
114
 
115
- #: ../classes/column.php:989
116
  msgid "Type"
117
  msgstr ""
118
 
119
- #: ../classes/column.php:989
120
  msgid "Choose a column type."
121
  msgstr ""
122
 
123
- #: ../classes/column.php:989 ../classes/column/comment/ID.php:12
124
  #: ../classes/column/link/ID.php:12 ../classes/column/media/ID.php:12
125
  #: ../classes/column/post/ID.php:12
126
  msgid "ID"
127
  msgstr ""
128
 
129
- #: ../classes/column.php:999
130
  msgid "Label"
131
  msgstr ""
132
 
133
- #: ../classes/column.php:999
134
  msgid "This is the name which will appear as the column header."
135
  msgstr ""
136
 
137
- #: ../classes/column.php:1006 ../classes/column/media/width.php:12
138
  msgid "Width"
139
  msgstr ""
140
 
141
- #: ../classes/column.php:1008 ../classes/column.php:1009
142
  msgid "default"
143
  msgstr ""
144
 
145
- #: ../classes/column/comment/actions.php:14
146
- #: ../classes/column/link/actions.php:14
147
- #: ../classes/column/media/actions.php:14
148
- #: ../classes/column/post/actions.php:14 ../classes/column/user/actions.php:14
149
- msgid "Actions"
150
  msgstr ""
151
 
152
- #: ../classes/column/comment/actions.php:73
153
- #: ../classes/column/comment/actions.php:78
154
- msgid "Unapprove"
155
  msgstr ""
156
 
157
- #: ../classes/column/comment/actions.php:75
158
- #: ../classes/column/comment/actions.php:77
159
- msgid "Approve"
160
  msgstr ""
161
 
162
- #: ../classes/column/comment/actions.php:86
163
- #: ../classes/column/post/actions.php:53 ../classes/settings.php:732
164
- msgid "Restore"
165
  msgstr ""
166
 
167
- #: ../classes/column/comment/actions.php:90
168
- #: ../classes/column/post/actions.php:57
169
- msgid "Delete Permanently"
170
  msgstr ""
171
 
172
- #: ../classes/column/comment/actions.php:97
173
- #: ../classes/column/post/actions.php:49
174
- msgid "Quick&nbsp;Edit"
175
  msgstr ""
176
 
177
- #: ../classes/column/comment/actions.php:98
178
- msgid "Reply"
 
 
 
179
  msgstr ""
180
 
181
- #: ../classes/column/comment/agent.php:12
182
- msgid "Agent"
183
  msgstr ""
184
 
185
- #: ../classes/column/comment/approved.php:12
186
- #: ../classes/column/post/comment-count.php:31
187
- msgid "Approved"
188
  msgstr ""
189
 
190
- #: ../classes/column/comment/author-avatar.php:12
191
- msgid "Avatar"
 
192
  msgstr ""
193
 
194
- #: ../classes/column/comment/author-email.php:12
195
- msgid "Author email"
196
  msgstr ""
197
 
198
- #: ../classes/column/comment/author-ip.php:12
199
- msgid "Author IP"
 
 
200
  msgstr ""
201
 
202
- #: ../classes/column/comment/author-url.php:12
203
- msgid "Author url"
204
  msgstr ""
205
 
206
- #: ../classes/column/comment/author.php:12
207
- msgid "Author"
 
 
208
  msgstr ""
209
 
210
- #: ../classes/column/comment/date-gmt.php:12
211
- msgid "Date GMT"
 
212
  msgstr ""
213
 
214
- #: ../classes/column/comment/date-gmt.php:25
215
- #: ../classes/column/comment/date.php:25
216
- #, php-format
217
- msgid "Submitted on <a href=\"%1$s\">%2$s at %3$s</a>"
218
  msgstr ""
219
 
220
- #: ../classes/column/comment/date.php:12 ../classes/column/custom-field.php:69
221
- #: ../classes/settings.php:252
222
- msgid "Date"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
223
  msgstr ""
224
 
 
225
  #: ../classes/column/comment/excerpt.php:13
226
- #: ../classes/column/custom-field.php:70 ../classes/column/post/excerpt.php:13
227
- #: ../classes/settings.php:249
228
  msgid "Excerpt"
229
  msgstr ""
230
 
231
- #: ../classes/column/comment/reply-to.php:12
232
- msgid "In Reply To"
233
  msgstr ""
234
 
235
- #: ../classes/column/comment/word-count.php:12
236
- #: ../classes/column/post/word-count.php:12
237
- msgid "Word count"
238
  msgstr ""
239
 
240
- #: ../classes/column/custom-field.php:16
241
- #: ../classes/column/custom-field.php:377 ../classes/settings.php:242
242
- msgid "Custom Field"
243
  msgstr ""
244
 
245
- #: ../classes/column/custom-field.php:66
246
- msgid "Checkmark (true/false)"
247
  msgstr ""
248
 
249
- #: ../classes/column/custom-field.php:67 ../classes/settings.php:256
250
- msgid "Color"
 
 
251
  msgstr ""
252
 
253
- #: ../classes/column/custom-field.php:68 ../classes/settings.php:257
254
- msgid "Counter"
 
255
  msgstr ""
256
 
257
- #: ../classes/column/custom-field.php:71 ../classes/column/link/image.php:12
258
- #: ../classes/settings.php:248
259
- msgid "Image"
 
 
 
260
  msgstr ""
261
 
262
- #: ../classes/column/custom-field.php:72 ../classes/storage_model/media.php:13
263
- msgid "Media Library"
264
  msgstr ""
265
 
266
- #: ../classes/column/custom-field.php:73 ../classes/settings.php:250
267
- msgid "Multiple Values"
268
  msgstr ""
269
 
270
- #: ../classes/column/custom-field.php:74 ../classes/settings.php:251
271
- msgid "Numeric"
272
  msgstr ""
273
 
274
- #: ../classes/column/custom-field.php:75
275
- msgid "Post Title (Post ID's)"
276
  msgstr ""
277
 
278
- #: ../classes/column/custom-field.php:76
279
- msgid "Username (User ID's)"
280
  msgstr ""
281
 
282
- #: ../classes/column/custom-field.php:377
283
- msgid "Select your custom field."
284
  msgstr ""
285
 
286
- #: ../classes/column/custom-field.php:387
287
- msgid "No custom fields available."
288
  msgstr ""
289
 
290
- #: ../classes/column/custom-field.php:394
291
- msgid "Field Type"
292
  msgstr ""
293
 
294
- #: ../classes/column/custom-field.php:394
295
- msgid "This will determine how the value will be displayed."
296
  msgstr ""
297
 
298
- #: ../classes/column/link/actions.php:46
299
- #, php-format
300
  msgid ""
301
- "You are about to delete this link '%s'\n"
302
- " 'Cancel' to stop, 'OK' to delete."
303
  msgstr ""
304
 
305
- #: ../classes/column/link/actions.php:46 ../classes/column/user/actions.php:72
306
- msgid "Delete"
307
  msgstr ""
308
 
309
- #: ../classes/column/link/description.php:12
310
- #: ../classes/column/media/description.php:12
311
- #: ../classes/column/user/description.php:14
312
- msgid "Description"
313
  msgstr ""
314
 
315
- #: ../classes/column/link/length.php:12
316
- msgid "Length"
 
 
317
  msgstr ""
318
 
319
- #: ../classes/column/link/notes.php:13
320
- msgid "Notes"
321
  msgstr ""
322
 
323
- #: ../classes/column/link/owner.php:12
324
- msgid "Owner"
325
  msgstr ""
326
 
327
- #: ../classes/column/link/rss.php:12
328
- msgid "Rss"
329
  msgstr ""
330
 
331
- #: ../classes/column/link/target.php:12
332
- msgid "Target"
333
  msgstr ""
334
 
335
- #: ../classes/column/media/alternate-text.php:12
336
- msgid "Alt"
 
 
 
337
  msgstr ""
338
 
339
- #: ../classes/column/media/available-sizes.php:14
340
- msgid "Available Sizes"
 
341
  msgstr ""
342
 
343
- #: ../classes/column/media/available-sizes.php:37
344
- msgid "full size"
345
  msgstr ""
346
 
347
- #: ../classes/column/media/caption.php:12
348
- #: ../classes/column/media/exif-data.php:36
349
- msgid "Caption"
350
  msgstr ""
351
 
352
- #: ../classes/column/media/dimensions.php:12
353
- msgid "Dimensions"
354
  msgstr ""
355
 
356
- #: ../classes/column/media/exif-data.php:12
357
- msgid "EXIF data"
358
  msgstr ""
359
 
360
- #: ../classes/column/media/exif-data.php:33
361
- msgid "Aperture"
362
  msgstr ""
363
 
364
- #: ../classes/column/media/exif-data.php:34
365
- msgid "Credit"
366
  msgstr ""
367
 
368
- #: ../classes/column/media/exif-data.php:35
369
- msgid "Camera"
 
 
370
  msgstr ""
371
 
372
- #: ../classes/column/media/exif-data.php:37
373
- msgid "Timestamp"
374
  msgstr ""
375
 
376
- #: ../classes/column/media/exif-data.php:38
377
- msgid "Copyright EXIF"
378
  msgstr ""
379
 
380
- #: ../classes/column/media/exif-data.php:39
381
- msgid "Focal Length"
382
  msgstr ""
383
 
384
- #: ../classes/column/media/exif-data.php:40
385
- msgid "ISO"
 
 
 
386
  msgstr ""
387
 
388
- #: ../classes/column/media/exif-data.php:41
389
- msgid "Shutter Speed"
390
  msgstr ""
391
 
392
- #: ../classes/column/media/exif-data.php:42
393
- msgid "Title"
394
  msgstr ""
395
 
396
- #: ../classes/column/media/file-name.php:12
397
- msgid "File name"
 
 
 
398
  msgstr ""
399
 
400
- #: ../classes/column/media/file-size.php:12
401
- msgid "File size"
402
  msgstr ""
403
 
404
- #: ../classes/column/media/full-path.php:12
405
- msgid "Full path"
 
 
406
  msgstr ""
407
 
408
- #: ../classes/column/media/height.php:12
409
- msgid "Height"
410
  msgstr ""
411
 
412
- #: ../classes/column/media/mime-type.php:12
413
- msgid "Mime type"
414
- msgstr ""
415
-
416
- #: ../classes/column/post/actions.php:48
417
- msgid "Edit this item"
418
  msgstr ""
419
 
420
- #: ../classes/column/post/actions.php:49
421
- msgid "Edit this item inline"
422
  msgstr ""
423
 
424
- #: ../classes/column/post/actions.php:53
425
- msgid "Restore this item from the Trash"
426
  msgstr ""
427
 
428
- #: ../classes/column/post/actions.php:55
429
- msgid "Move this item to the Trash"
 
 
430
  msgstr ""
431
 
432
- #: ../classes/column/post/actions.php:55
433
- #: ../classes/column/post/comment-count.php:34
434
- #: ../classes/column/post/status.php:38
435
- msgid "Trash"
436
  msgstr ""
437
 
438
- #: ../classes/column/post/actions.php:57
439
- msgid "Delete this item permanently"
440
  msgstr ""
441
 
442
- #: ../classes/column/post/actions.php:62
443
- #, php-format
444
- msgid "Preview &#8220;%s&#8221;"
445
  msgstr ""
446
 
447
- #: ../classes/column/post/actions.php:62
448
- msgid "Preview"
449
  msgstr ""
450
 
451
- #: ../classes/column/post/actions.php:64
452
- #, php-format
453
- msgid "View &#8220;%s&#8221;"
454
  msgstr ""
455
 
456
- #: ../classes/column/post/actions.php:64 ../classes/storage_model.php:645
457
- msgid "View"
458
  msgstr ""
459
 
460
- #: ../classes/column/post/attachment-count.php:12
461
- msgid "No. of Attachments"
462
  msgstr ""
463
 
464
- #: ../classes/column/post/attachment.php:12
465
- msgid "Attachment"
466
  msgstr ""
467
 
468
- #: ../classes/column/post/author-name.php:12
469
- msgid "Display Author As"
470
  msgstr ""
471
 
472
- #: ../classes/column/post/author-name.php:34
473
- msgid "Display Name"
474
  msgstr ""
475
 
476
- #: ../classes/column/post/author-name.php:35
477
- msgid "First Name"
478
  msgstr ""
479
 
480
- #: ../classes/column/post/author-name.php:36
481
- msgid "Last Name"
 
 
482
  msgstr ""
483
 
484
- #: ../classes/column/post/author-name.php:37
485
- #: ../classes/column/user/nickname.php:14
486
- msgid "Nickname"
487
  msgstr ""
488
 
489
- #: ../classes/column/post/author-name.php:38
490
- msgid "User Login"
 
 
491
  msgstr ""
492
 
493
- #: ../classes/column/post/author-name.php:39
494
- msgid "User Email"
495
  msgstr ""
496
 
497
- #: ../classes/column/post/author-name.php:40 ../classes/column/user/ID.php:14
498
- msgid "User ID"
499
  msgstr ""
500
 
501
- #: ../classes/column/post/author-name.php:41
502
- msgid "First and Last Name"
503
  msgstr ""
504
 
505
- #: ../classes/column/post/author-name.php:118
506
- msgid "This is the format of the author name."
507
  msgstr ""
508
 
509
- #: ../classes/column/post/before-moretag.php:14
510
- msgid "Before More Tag"
 
 
 
511
  msgstr ""
512
 
513
- #: ../classes/column/post/comment-count.php:14
514
- msgid "Comment count"
 
515
  msgstr ""
516
 
517
- #: ../classes/column/post/comment-count.php:30
518
- msgid "Total"
519
  msgstr ""
520
 
521
- #: ../classes/column/post/comment-count.php:32
522
- msgid "Pending"
523
  msgstr ""
524
 
525
- #: ../classes/column/post/comment-count.php:33
526
- msgid "Spam"
527
  msgstr ""
528
 
529
- #: ../classes/column/post/comment-count.php:95
530
- #: ../classes/column/post/comment-status.php:14
531
- msgid "Comment status"
532
  msgstr ""
533
 
534
- #: ../classes/column/post/comment-count.php:95
535
- msgid "Select which comment status you like to display."
536
  msgstr ""
537
 
538
- #: ../classes/column/post/featured-image.php:14
539
- msgid "Featured Image"
 
540
  msgstr ""
541
 
542
- #: ../classes/column/post/formats.php:14
543
- msgid "Post Format"
544
  msgstr ""
545
 
546
- #: ../classes/column/post/modified.php:14
547
- msgid "Last modified"
548
  msgstr ""
549
 
550
- #: ../classes/column/post/order.php:14
551
- msgid "Page Order"
552
  msgstr ""
553
 
554
- #: ../classes/column/post/page-template.php:12
555
- msgid "Page Template"
556
  msgstr ""
557
 
558
- #: ../classes/column/post/parent.php:12
559
- msgid "Parent"
560
  msgstr ""
561
 
562
- #: ../classes/column/post/ping-status.php:14
563
- msgid "Ping status"
 
 
 
564
  msgstr ""
565
 
566
- #: ../classes/column/post/roles.php:14
567
- msgid "Roles"
568
  msgstr ""
569
 
570
- #: ../classes/column/post/slug.php:12
571
- msgid "Slug"
572
  msgstr ""
573
 
574
- #: ../classes/column/post/status.php:14
575
- msgid "Status"
576
  msgstr ""
577
 
578
- #: ../classes/column/post/status.php:32
579
- msgid "Published"
580
  msgstr ""
581
 
582
- #: ../classes/column/post/status.php:33
583
- msgid "Draft"
584
  msgstr ""
585
 
586
- #: ../classes/column/post/status.php:34
587
- msgid "Scheduled"
 
588
  msgstr ""
589
 
590
- #: ../classes/column/post/status.php:35
591
- msgid "Private"
592
  msgstr ""
593
 
594
- #: ../classes/column/post/status.php:36
595
- msgid "Pending Review"
596
  msgstr ""
597
 
598
- #: ../classes/column/post/status.php:37
599
- msgid "Auto Draft"
600
  msgstr ""
601
 
602
- #: ../classes/column/post/sticky.php:14
603
- msgid "Sticky"
604
  msgstr ""
605
 
606
- #: ../classes/column/taxonomy.php:12 ../classes/column/taxonomy.php:101
607
- msgid "Taxonomy"
 
 
608
  msgstr ""
609
 
610
- #: ../classes/column/user/comment-count.php:14
611
- msgid "Comment Count"
612
  msgstr ""
613
 
614
- #: ../classes/column/user/first-name.php:14
615
- msgid "First name"
616
  msgstr ""
617
 
618
- #: ../classes/column/user/last-name.php:14
619
- msgid "Last name"
 
620
  msgstr ""
621
 
622
- #: ../classes/column/user/post-count.php:14
623
- msgid "Post Count"
 
624
  msgstr ""
625
 
626
- #: ../classes/column/user/post-count.php:99
627
- msgid "Post Type"
628
  msgstr ""
629
 
630
- #: ../classes/column/user/registered.php:14
631
- msgid "Registered"
632
  msgstr ""
633
 
634
- #: ../classes/column/user/url.php:14
635
- msgid "Url"
636
  msgstr ""
637
 
638
- #: ../classes/settings.php:99
639
- msgid "Admin Columns Settings"
640
  msgstr ""
641
 
642
- #: ../classes/settings.php:99 ../classes/settings.php:670
643
- #: ../classes/upgrade.php:89
644
- msgid "Admin Columns"
645
  msgstr ""
646
 
647
- #: ../classes/settings.php:151
648
- #, php-format
649
- msgid "%s column is already present and can not be duplicated."
650
  msgstr ""
651
 
652
- #: ../classes/settings.php:207
653
- msgid "Default settings succesfully restored."
654
  msgstr ""
655
 
656
- #: ../classes/settings.php:225 ../classes/settings.php:482
657
- msgid "Overview"
658
  msgstr ""
659
 
660
- #: ../classes/settings.php:228
661
- msgid ""
662
- "This plugin is for adding and removing additional columns to the "
663
- "administration screens for post(types), pages, media library, comments, "
664
- "links and users. Change the column's label and reorder them."
665
  msgstr ""
666
 
667
- #: ../classes/settings.php:231
668
- msgid "Basics"
669
  msgstr ""
670
 
671
- #: ../classes/settings.php:233
672
- msgid "Change order"
673
  msgstr ""
674
 
675
- #: ../classes/settings.php:234
676
- msgid ""
677
- "By dragging the columns you can change the order which they will appear in."
678
  msgstr ""
679
 
680
- #: ../classes/settings.php:235
681
- msgid "Change label"
682
  msgstr ""
683
 
684
- #: ../classes/settings.php:236
685
  msgid ""
686
- "By clicking on the triangle you will see the column options. Here you can "
687
- "change each label of the columns heading."
688
  msgstr ""
689
 
690
- #: ../classes/settings.php:237
691
- msgid "Change column width"
692
  msgstr ""
693
 
694
- #: ../classes/settings.php:238
695
- msgid ""
696
- "By clicking on the triangle you will see the column options. By using the "
697
- "draggable slider you can set the width of the columns in percentages."
698
  msgstr ""
699
 
700
- #: ../classes/settings.php:244
701
- msgid "'Custom Field' column"
702
  msgstr ""
703
 
704
- #: ../classes/settings.php:245
705
- msgid ""
706
- "The custom field colum uses the custom fields from posts and users. There "
707
- "are 10 types which you can set."
708
  msgstr ""
709
 
710
- #: ../classes/settings.php:247
711
- msgid ""
712
- "Value: Can be either a string or array. Arrays will be flattened and values "
713
- "are seperated by a ',' comma."
714
  msgstr ""
715
 
716
- #: ../classes/settings.php:248
717
- msgid ""
718
- "Value: should contain an image URL or Attachment IDs ( seperated by a ',' "
719
- "comma )."
720
  msgstr ""
721
 
722
- #: ../classes/settings.php:249
723
- msgid "Value: This will show the first 20 words of the Post content."
724
  msgstr ""
725
 
726
- #: ../classes/settings.php:250
727
- msgid ""
728
- "Value: should be an array. This will flatten any ( multi dimensional ) array."
729
  msgstr ""
730
 
731
- #: ../classes/settings.php:251
732
- msgid ""
733
- "Value: Integers only.<br/>If you have the 'sorting addon' this will be used "
734
- "for sorting, so you can sort your posts on numeric (custom field) values."
735
  msgstr ""
736
 
737
- #: ../classes/settings.php:252
738
- #, php-format
739
- msgid ""
740
- "Value: Can be unix time stamp or a date format as described in the <a "
741
- "href='%s'>Codex</a>. You can change the outputted date format at the <a "
742
- "href='%s'>general settings</a> page."
743
  msgstr ""
744
 
745
- #: ../classes/settings.php:253
746
- msgid "Post Titles"
747
  msgstr ""
748
 
749
- #: ../classes/settings.php:253
750
- msgid "Value: can be one or more Post ID's (seperated by ',')."
751
  msgstr ""
752
 
753
- #: ../classes/settings.php:254
754
- msgid "Usernames"
 
 
 
755
  msgstr ""
756
 
757
- #: ../classes/settings.php:254
758
- msgid "Value: can be one or more User ID's (seperated by ',')."
 
759
  msgstr ""
760
 
761
- #: ../classes/settings.php:255
762
- msgid "Checkmark"
 
763
  msgstr ""
764
 
765
- #: ../classes/settings.php:255
766
- msgid "Value: should be a 1 (one) or 0 (zero)."
 
767
  msgstr ""
768
 
769
- #: ../classes/settings.php:256
770
- msgid "Value: hex value color, such as #808080."
 
 
771
  msgstr ""
772
 
773
- #: ../classes/settings.php:257
774
- msgid ""
775
- "Value: Can be either a string or array. This will display a count of the "
776
- "number of times the meta key is used by the item."
777
  msgstr ""
778
 
779
- #: ../classes/settings.php:402
780
- msgid "Welcome to Admin Columns"
781
  msgstr ""
782
 
783
- #: ../classes/settings.php:405
784
- msgid "Thank you for updating to the latest version!"
785
  msgstr ""
786
 
787
- #: ../classes/settings.php:406
788
- msgid ""
789
- "Admin Columns is more polished and enjoyable than ever before. We hope you "
790
- "like it."
791
  msgstr ""
792
 
793
- #: ../classes/settings.php:411
794
- msgid "What’s New"
795
  msgstr ""
796
 
797
- #: ../classes/settings.php:412
798
- msgid "Changelog"
799
  msgstr ""
800
 
801
- #: ../classes/settings.php:414
802
- msgid "Download Addons"
803
  msgstr ""
804
 
805
- #: ../classes/settings.php:420
806
- msgid "Addons"
807
  msgstr ""
808
 
809
- #: ../classes/settings.php:422
810
- msgid ""
811
- "Addons are now activated by downloading and installing individual plugins. "
812
- "Although these plugins will not be hosted on the wordpress.org repository, "
813
- "each Add-on will continue to receive updates in the usual way."
814
  msgstr ""
815
 
816
- #: ../classes/settings.php:425
817
- msgid ""
818
- "This website uses the Sortorder Addon. This addon needs to be downloaded."
819
  msgstr ""
820
 
821
- #: ../classes/settings.php:428
822
- msgid "Addons are seperate plugins which need to be downloaded."
 
 
823
  msgstr ""
824
 
825
- #: ../classes/settings.php:428
826
- msgid "Download your Addons"
827
  msgstr ""
828
 
829
- #: ../classes/settings.php:434
830
- msgid "This website does not use add-ons"
 
831
  msgstr ""
832
 
833
- #: ../classes/settings.php:434
834
- msgid "See our website for the Pro-addon."
 
 
 
835
  msgstr ""
836
 
837
- #: ../classes/settings.php:441
838
- msgid "Important"
839
  msgstr ""
840
 
841
- #: ../classes/settings.php:443
842
- msgid "Database Changes"
 
 
843
  msgstr ""
844
 
845
- #: ../classes/settings.php:444
846
- msgid ""
847
- "The database has been changed between versions 1 and 2. But we made sure you "
848
- "can still roll back to version 1x without any issues."
849
  msgstr ""
850
 
851
- #: ../classes/settings.php:447
852
- msgid "Make sure you backup your database and then click"
853
  msgstr ""
854
 
855
- #: ../classes/settings.php:447 ../classes/upgrade.php:97
856
- msgid "Upgrade Database"
857
  msgstr ""
858
 
859
- #: ../classes/settings.php:450
860
- msgid "Potential Issues"
861
  msgstr ""
862
 
863
- #: ../classes/settings.php:451
864
- msgid ""
865
- "Do to the sizable refactoring the code, surounding Addons and action/"
866
- "filters, your website may not operate correctly. It is important that you "
867
- "read the full"
868
  msgstr ""
869
 
870
- #: ../classes/settings.php:451
871
- msgid "Migrating from v1 to v2"
872
  msgstr ""
873
 
874
- #: ../classes/settings.php:451
875
- msgid "guide to view the full list of changes."
876
  msgstr ""
877
 
878
- #: ../classes/settings.php:451
879
- #, php-format
880
- msgid ""
881
- "When you have found a bug please <a href=\"%s\">report them to us</a> so we "
882
- "can fix it in the next release."
883
  msgstr ""
884
 
885
- #: ../classes/settings.php:454
886
- msgid "Important!"
 
887
  msgstr ""
888
 
889
- #: ../classes/settings.php:454
890
- msgid ""
891
- "If you updated the Admin Columns plugin without prior knowledge of such "
892
- "changes, Please roll back to the latest"
893
  msgstr ""
894
 
895
- #: ../classes/settings.php:454
896
- msgid "version 1"
897
  msgstr ""
898
 
899
- #: ../classes/settings.php:454
900
- msgid "of this plugin."
901
  msgstr ""
902
 
903
- #: ../classes/settings.php:460
904
- msgid "Changelog for"
905
  msgstr ""
906
 
907
- #: ../classes/settings.php:475
908
- msgid "Learn more"
909
  msgstr ""
910
 
911
- #: ../classes/settings.php:484
912
- msgid ""
913
- "New to v2, all Addons act as separate plugins which need to be individually "
914
- "downloaded, installed and updated."
915
  msgstr ""
916
 
917
- #: ../classes/settings.php:485
918
- msgid ""
919
- "This page will assist you in downloading and installing each available Addon."
920
  msgstr ""
921
 
922
- #: ../classes/settings.php:486
923
- msgid "Available Addons"
924
  msgstr ""
925
 
926
- #: ../classes/settings.php:491
927
- msgid "Name"
928
  msgstr ""
929
 
930
- #: ../classes/settings.php:492 ../classes/settings.php:500
931
- msgid "Download"
932
  msgstr ""
933
 
934
- #: ../classes/settings.php:498
935
- msgid "Pro Add-on (includes Sortorder add-on)"
936
  msgstr ""
937
 
938
- #: ../classes/settings.php:508
939
- msgid "Installation"
940
  msgstr ""
941
 
942
- #: ../classes/settings.php:510
943
- msgid "For each Add-on available, please perform the following:"
944
  msgstr ""
945
 
946
- #: ../classes/settings.php:512
947
- msgid "Download the Addon plugin (.zip file) to your desktop"
948
  msgstr ""
949
 
950
- #: ../classes/settings.php:513
951
- msgid "Navigate to"
952
  msgstr ""
953
 
954
- #: ../classes/settings.php:513
955
- msgid "Plugins > Add New > Upload"
956
  msgstr ""
957
 
958
- #: ../classes/settings.php:514
959
- msgid "Use the uploader to browse, select and install your Add-on (.zip file)"
960
  msgstr ""
961
 
962
- #: ../classes/settings.php:515
963
- msgid ""
964
- "Once the plugin has been uploaded and installed, click the 'Activate Plugin' "
965
- "link"
966
  msgstr ""
967
 
968
- #: ../classes/settings.php:516
969
- msgid "The Add-on is now installed and activated!"
970
  msgstr ""
971
 
972
- #: ../classes/settings.php:517
973
- #, php-format
974
- msgid ""
975
- "For automatic updates make sure to <a href='%s'>enter your licence key</a>."
976
  msgstr ""
977
 
978
- #: ../classes/settings.php:527
979
- msgid "Start using Admin Columns"
 
 
980
  msgstr ""
981
 
982
- #: ../classes/settings.php:574
983
- msgid "General Settings"
984
  msgstr ""
985
 
986
- #: ../classes/settings.php:575
987
- msgid "Customize your Admin Columns settings."
 
988
  msgstr ""
989
 
990
- #: ../classes/settings.php:588
991
- msgid "Show hidden custom fields. Default is <code>off</code>."
992
  msgstr ""
993
 
994
- #: ../classes/settings.php:594
995
- msgid ""
996
- "Show \"Edit Columns\" button on admin screens. Default is <code>off</code>."
997
  msgstr ""
998
 
999
- #: ../classes/settings.php:601 ../classes/settings.php:727
1000
- msgid "Save"
1001
  msgstr ""
1002
 
1003
- #: ../classes/settings.php:641
1004
- msgid "Restore Settings"
1005
  msgstr ""
1006
 
1007
- #: ../classes/settings.php:642
1008
- msgid "This will delete all column settings and restore the default settings."
1009
  msgstr ""
1010
 
1011
- #: ../classes/settings.php:648
1012
- msgid "Restore default settings"
1013
  msgstr ""
1014
 
1015
- #: ../classes/settings.php:648
1016
- msgid ""
1017
- "Warning! ALL saved admin columns data will be deleted. This cannot be "
1018
- "undone. \\'OK\\' to delete, \\'Cancel\\' to stop"
1019
  msgstr ""
1020
 
1021
- #: ../classes/settings.php:671 ../codepress-admin-columns.php:290
1022
- msgid "Settings"
 
1023
  msgstr ""
1024
 
1025
- #: ../classes/settings.php:700
1026
- msgid "Posttypes"
1027
  msgstr ""
1028
 
1029
- #: ../classes/settings.php:701
1030
- msgid "Others"
1031
  msgstr ""
1032
 
1033
- #: ../classes/settings.php:702
1034
- msgid "Taxonomies"
1035
  msgstr ""
1036
 
1037
- #: ../classes/settings.php:723
1038
- msgid "Store settings"
1039
  msgstr ""
1040
 
1041
- #: ../classes/settings.php:727
1042
- msgid "Update"
1043
  msgstr ""
1044
 
1045
- #: ../classes/settings.php:731
1046
- #, php-format
1047
- msgid ""
1048
- "Warning! The %s columns data will be deleted. This cannot be undone. \\'OK"
1049
- "\\' to delete, \\'Cancel\\' to stop"
1050
  msgstr ""
1051
 
1052
- #: ../classes/settings.php:732
1053
- msgid "columns"
1054
  msgstr ""
1055
 
1056
- #: ../classes/settings.php:745
1057
- msgid "Get the Pro Add-on"
1058
  msgstr ""
1059
 
1060
- #: ../classes/settings.php:749
1061
- msgid "Add Sorting"
1062
  msgstr ""
1063
 
1064
- #: ../classes/settings.php:750
1065
- msgid "Add Filtering"
1066
  msgstr ""
1067
 
1068
- #: ../classes/settings.php:751
1069
- msgid "Add Import/Export"
 
1070
  msgstr ""
1071
 
1072
- #: ../classes/settings.php:754
1073
- #, php-format
1074
- msgid "Check the <a href=\"%s\">Pro Add-on</a> for more details!"
1075
  msgstr ""
1076
 
1077
- #: ../classes/settings.php:785
1078
- msgid "Support"
1079
  msgstr ""
1080
 
1081
- #: ../classes/settings.php:788
1082
- msgid "Check the <strong>Help</strong> section in the top-right screen."
1083
  msgstr ""
1084
 
1085
- #: ../classes/settings.php:791
1086
- #, php-format
1087
- msgid ""
1088
- "For full documentation, bug reports, feature suggestions and other tips <a "
1089
- "href='%s'>visit the Admin Columns website</a>"
1090
  msgstr ""
1091
 
1092
- #: ../classes/settings.php:819
1093
- msgid "Drag and drop to reorder"
1094
  msgstr ""
1095
 
1096
- #: ../classes/settings.php:822
1097
- msgid "Add Column"
1098
  msgstr ""
1099
 
1100
- #: ../classes/storage_model.php:205
1101
- msgid "settings succesfully restored."
1102
  msgstr ""
1103
 
1104
- #: ../classes/storage_model.php:222
1105
- msgid "No columns settings available."
1106
  msgstr ""
1107
 
1108
- #: ../classes/storage_model.php:245
1109
- #, php-format
1110
- msgid "You are trying to store the same settings for %s."
1111
  msgstr ""
1112
 
1113
- #: ../classes/storage_model.php:249
1114
- #, php-format
1115
- msgid "Settings for %s updated succesfully."
1116
  msgstr ""
1117
 
1118
- #: ../classes/storage_model/comment.php:13
1119
- msgid "Comments"
1120
  msgstr ""
1121
 
1122
- #: ../classes/storage_model/link.php:13
1123
- msgid "Links"
1124
  msgstr ""
1125
 
1126
- #: ../classes/storage_model/user.php:13
1127
- msgid "Users"
1128
  msgstr ""
1129
 
1130
- #: ../classes/upgrade.php:45
1131
- msgid "Upgrade"
1132
  msgstr ""
1133
 
1134
- #: ../classes/upgrade.php:90
1135
- msgid "requires a database upgrade"
1136
  msgstr ""
1137
 
1138
- #: ../classes/upgrade.php:93
1139
- msgid "why?"
1140
  msgstr ""
1141
 
1142
- #: ../classes/upgrade.php:94
1143
- msgid "Please"
1144
  msgstr ""
1145
 
1146
- #: ../classes/upgrade.php:95
1147
- msgid "backup your database"
 
1148
  msgstr ""
1149
 
1150
- #: ../classes/upgrade.php:96
1151
- msgid "then click"
1152
  msgstr ""
1153
 
1154
- #: ../classes/upgrade.php:304
1155
- msgid "Migrating Column Settings"
1156
  msgstr ""
1157
 
1158
- #: ../classes/upgrade.php:340
1159
- msgid "No Upgrade Required"
1160
  msgstr ""
1161
 
1162
- #: ../classes/upgrade.php:341
1163
- msgid "Return to welcome screen."
1164
  msgstr ""
1165
 
1166
- #: ../classes/upgrade.php:359
1167
- msgid "Upgrade Complete!"
1168
  msgstr ""
1169
 
1170
- #: ../classes/upgrade.php:359
1171
- msgid "Return to settings."
1172
  msgstr ""
1173
 
1174
- #: ../classes/upgrade.php:360
1175
- msgid "Error"
1176
  msgstr ""
1177
 
1178
- #: ../classes/upgrade.php:361
1179
- msgid ""
1180
- "Sorry. Something went wrong during the upgrade process. Please report this "
1181
- "on the support forum."
1182
  msgstr ""
1183
 
1184
- #: ../codepress-admin-columns.php:381
1185
- msgid "Edit columns"
 
 
 
 
1186
  msgstr ""
2
  msgstr ""
3
  "Project-Id-Version: Codepress Admin Columns\n"
4
  "Report-Msgid-Bugs-To: \n"
5
+ "POT-Creation-Date: 2013-11-14 16:56+0100\n"
6
+ "PO-Revision-Date: 2013-11-14 16:56+0100\n"
7
  "Last-Translator: Codepress <info@codepress.nl>\n"
8
  "Language-Team: Codepress <info@codepress.nl>\n"
9
  "MIME-Version: 1.0\n"
12
  "X-Poedit-KeywordsList: __;_e\n"
13
  "X-Poedit-Basepath: .\n"
14
  "X-Poedit-SourceCharset: UTF-8\n"
15
+ "X-Generator: Poedit 1.5.7\n"
 
16
  "X-Poedit-SearchPath-0: .\n"
17
  "X-Poedit-SearchPath-1: ..\n"
18
 
19
+ #: ../codepress-admin-columns.php:236 ../classes/settings.php:536
20
+ msgid "Settings"
21
+ msgstr ""
22
+
23
+ #: ../codepress-admin-columns.php:357
24
+ msgid "Edit columns"
25
+ msgstr ""
26
+
27
+ #: ../classes/column.php:489
28
  msgid "Thumbnail"
29
  msgstr ""
30
 
31
+ #: ../classes/column.php:490
32
  msgid "Medium"
33
  msgstr ""
34
 
35
+ #: ../classes/column.php:491
36
  msgid "Large"
37
  msgstr ""
38
 
39
+ #: ../classes/column.php:492
40
  msgid "Full"
41
  msgstr ""
42
 
43
+ #: ../classes/column.php:784
44
  msgid "Date Format"
45
  msgstr ""
46
 
47
+ #: ../classes/column.php:785
48
  msgid "This will determine how the date will be displayed."
49
  msgstr ""
50
 
51
+ #: ../classes/column.php:791
52
  msgid "Example:"
53
  msgstr ""
54
 
55
+ #: ../classes/column.php:793
56
  #, php-format
57
  msgid ""
58
  "Leave empty for WordPress date format, change your <a href=\"%s\">default "
59
  "date format here</a>."
60
  msgstr ""
61
 
62
+ #: ../classes/column.php:794
63
  msgid "Documentation on date and time formatting."
64
  msgstr ""
65
 
66
+ #: ../classes/column.php:811
67
  msgid "Excerpt length"
68
  msgstr ""
69
 
70
+ #: ../classes/column.php:812
71
  msgid "Number of words"
72
  msgstr ""
73
 
74
+ #: ../classes/column.php:834
75
  msgid "Preview size"
76
  msgstr ""
77
 
78
+ #: ../classes/column.php:851 ../classes/column.php:908
79
  msgid "Custom"
80
  msgstr ""
81
 
82
+ #: ../classes/column.php:854
83
  msgid "width"
84
  msgstr ""
85
 
86
+ #: ../classes/column.php:857
87
  msgid "height"
88
  msgstr ""
89
 
90
+ #: ../classes/column.php:909 ../classes/settings.php:222
91
+ #: ../classes/column/custom-field.php:70
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
92
  msgid "Default"
93
  msgstr ""
94
 
95
+ #: ../classes/column.php:934 ../classes/column.php:996
 
 
 
 
 
 
96
  #: ../classes/column/user/actions.php:74
97
  msgid "Remove"
98
  msgstr ""
99
 
100
+ #: ../classes/column.php:953
101
  msgid "Type"
102
  msgstr ""
103
 
104
+ #: ../classes/column.php:953
105
  msgid "Choose a column type."
106
  msgstr ""
107
 
108
+ #: ../classes/column.php:953 ../classes/column/comment/ID.php:12
109
  #: ../classes/column/link/ID.php:12 ../classes/column/media/ID.php:12
110
  #: ../classes/column/post/ID.php:12
111
  msgid "ID"
112
  msgstr ""
113
 
114
+ #: ../classes/column.php:963
115
  msgid "Label"
116
  msgstr ""
117
 
118
+ #: ../classes/column.php:963
119
  msgid "This is the name which will appear as the column header."
120
  msgstr ""
121
 
122
+ #: ../classes/column.php:970 ../classes/column/media/width.php:12
123
  msgid "Width"
124
  msgstr ""
125
 
126
+ #: ../classes/column.php:972 ../classes/column.php:973
127
  msgid "default"
128
  msgstr ""
129
 
130
+ #: ../classes/column.php:997
131
+ msgid "type"
 
 
 
132
  msgstr ""
133
 
134
+ #: ../classes/settings.php:64
135
+ msgid "Admin Columns Settings"
 
136
  msgstr ""
137
 
138
+ #: ../classes/settings.php:64 ../classes/settings.php:535
139
+ #: ../classes/upgrade.php:89
140
+ msgid "Admin Columns"
141
  msgstr ""
142
 
143
+ #: ../classes/settings.php:126
144
+ #, php-format
145
+ msgid "%s column is already present and can not be duplicated."
146
  msgstr ""
147
 
148
+ #: ../classes/settings.php:182
149
+ msgid "Default settings succesfully restored."
 
150
  msgstr ""
151
 
152
+ #: ../classes/settings.php:200 ../classes/settings.php:457
153
+ msgid "Overview"
 
154
  msgstr ""
155
 
156
+ #: ../classes/settings.php:203
157
+ msgid ""
158
+ "This plugin is for adding and removing additional columns to the "
159
+ "administration screens for post(types), pages, media library, comments, "
160
+ "links and users. Change the column's label and reorder them."
161
  msgstr ""
162
 
163
+ #: ../classes/settings.php:206
164
+ msgid "Basics"
165
  msgstr ""
166
 
167
+ #: ../classes/settings.php:208
168
+ msgid "Change order"
 
169
  msgstr ""
170
 
171
+ #: ../classes/settings.php:209
172
+ msgid ""
173
+ "By dragging the columns you can change the order which they will appear in."
174
  msgstr ""
175
 
176
+ #: ../classes/settings.php:210
177
+ msgid "Change label"
178
  msgstr ""
179
 
180
+ #: ../classes/settings.php:211
181
+ msgid ""
182
+ "By clicking on the triangle you will see the column options. Here you can "
183
+ "change each label of the columns heading."
184
  msgstr ""
185
 
186
+ #: ../classes/settings.php:212
187
+ msgid "Change column width"
188
  msgstr ""
189
 
190
+ #: ../classes/settings.php:213
191
+ msgid ""
192
+ "By clicking on the triangle you will see the column options. By using the "
193
+ "draggable slider you can set the width of the columns in percentages."
194
  msgstr ""
195
 
196
+ #: ../classes/settings.php:217 ../classes/column/custom-field.php:16
197
+ #: ../classes/column/custom-field.php:379
198
+ msgid "Custom Field"
199
  msgstr ""
200
 
201
+ #: ../classes/settings.php:219
202
+ msgid "'Custom Field' column"
 
 
203
  msgstr ""
204
 
205
+ #: ../classes/settings.php:220
206
+ msgid ""
207
+ "The custom field colum uses the custom fields from posts and users. There "
208
+ "are 10 types which you can set."
209
+ msgstr ""
210
+
211
+ #: ../classes/settings.php:222
212
+ msgid ""
213
+ "Value: Can be either a string or array. Arrays will be flattened and values "
214
+ "are seperated by a ',' comma."
215
+ msgstr ""
216
+
217
+ #: ../classes/settings.php:223 ../classes/column/custom-field.php:76
218
+ #: ../classes/column/link/image.php:12
219
+ msgid "Image"
220
+ msgstr ""
221
+
222
+ #: ../classes/settings.php:223
223
+ msgid ""
224
+ "Value: should contain an image URL or Attachment IDs ( seperated by a ',' "
225
+ "comma )."
226
  msgstr ""
227
 
228
+ #: ../classes/settings.php:224 ../classes/column/custom-field.php:75
229
  #: ../classes/column/comment/excerpt.php:13
230
+ #: ../classes/column/post/excerpt.php:13
 
231
  msgid "Excerpt"
232
  msgstr ""
233
 
234
+ #: ../classes/settings.php:224
235
+ msgid "Value: This will show the first 20 words of the Post content."
236
  msgstr ""
237
 
238
+ #: ../classes/settings.php:225 ../classes/column/custom-field.php:78
239
+ msgid "Multiple Values"
 
240
  msgstr ""
241
 
242
+ #: ../classes/settings.php:225
243
+ msgid ""
244
+ "Value: should be an array. This will flatten any ( multi dimensional ) array."
245
  msgstr ""
246
 
247
+ #: ../classes/settings.php:226 ../classes/column/custom-field.php:79
248
+ msgid "Numeric"
249
  msgstr ""
250
 
251
+ #: ../classes/settings.php:226
252
+ msgid ""
253
+ "Value: Integers only.<br/>If you have the 'sorting addon' this will be used "
254
+ "for sorting, so you can sort your posts on numeric (custom field) values."
255
  msgstr ""
256
 
257
+ #: ../classes/settings.php:227 ../classes/column/custom-field.php:74
258
+ #: ../classes/column/comment/date.php:12
259
+ msgid "Date"
260
  msgstr ""
261
 
262
+ #: ../classes/settings.php:227
263
+ #, php-format
264
+ msgid ""
265
+ "Value: Can be unix time stamp or a date format as described in the <a "
266
+ "href='%s'>Codex</a>. You can change the outputted date format at the <a "
267
+ "href='%s'>general settings</a> page."
268
  msgstr ""
269
 
270
+ #: ../classes/settings.php:228
271
+ msgid "Post Titles"
272
  msgstr ""
273
 
274
+ #: ../classes/settings.php:228
275
+ msgid "Value: can be one or more Post ID's (seperated by ',')."
276
  msgstr ""
277
 
278
+ #: ../classes/settings.php:229
279
+ msgid "Usernames"
280
  msgstr ""
281
 
282
+ #: ../classes/settings.php:229
283
+ msgid "Value: can be one or more User ID's (seperated by ',')."
284
  msgstr ""
285
 
286
+ #: ../classes/settings.php:230
287
+ msgid "Checkmark"
288
  msgstr ""
289
 
290
+ #: ../classes/settings.php:230
291
+ msgid "Value: should be a 1 (one) or 0 (zero)."
292
  msgstr ""
293
 
294
+ #: ../classes/settings.php:231 ../classes/column/custom-field.php:72
295
+ msgid "Color"
296
  msgstr ""
297
 
298
+ #: ../classes/settings.php:231
299
+ msgid "Value: hex value color, such as #808080."
300
  msgstr ""
301
 
302
+ #: ../classes/settings.php:232 ../classes/column/custom-field.php:73
303
+ msgid "Counter"
304
  msgstr ""
305
 
306
+ #: ../classes/settings.php:232
 
307
  msgid ""
308
+ "Value: Can be either a string or array. This will display a count of the "
309
+ "number of times the meta key is used by the item."
310
  msgstr ""
311
 
312
+ #: ../classes/settings.php:377
313
+ msgid "Welcome to Admin Columns"
314
  msgstr ""
315
 
316
+ #: ../classes/settings.php:380
317
+ msgid "Thank you for updating to the latest version!"
 
 
318
  msgstr ""
319
 
320
+ #: ../classes/settings.php:381
321
+ msgid ""
322
+ "Admin Columns is more polished and enjoyable than ever before. We hope you "
323
+ "like it."
324
  msgstr ""
325
 
326
+ #: ../classes/settings.php:386
327
+ msgid "What’s New"
328
  msgstr ""
329
 
330
+ #: ../classes/settings.php:387
331
+ msgid "Changelog"
332
  msgstr ""
333
 
334
+ #: ../classes/settings.php:389
335
+ msgid "Download Addons"
336
  msgstr ""
337
 
338
+ #: ../classes/settings.php:395
339
+ msgid "Addons"
340
  msgstr ""
341
 
342
+ #: ../classes/settings.php:397
343
+ msgid ""
344
+ "Addons are now activated by downloading and installing individual plugins. "
345
+ "Although these plugins will not be hosted on the wordpress.org repository, "
346
+ "each Add-on will continue to receive updates in the usual way."
347
  msgstr ""
348
 
349
+ #: ../classes/settings.php:400
350
+ msgid ""
351
+ "This website uses the Sortorder Addon. This addon needs to be downloaded."
352
  msgstr ""
353
 
354
+ #: ../classes/settings.php:403
355
+ msgid "Addons are seperate plugins which need to be downloaded."
356
  msgstr ""
357
 
358
+ #: ../classes/settings.php:403
359
+ msgid "Download your Addons"
 
360
  msgstr ""
361
 
362
+ #: ../classes/settings.php:409
363
+ msgid "This website does not use add-ons"
364
  msgstr ""
365
 
366
+ #: ../classes/settings.php:409
367
+ msgid "See our website for the Pro-addon."
368
  msgstr ""
369
 
370
+ #: ../classes/settings.php:416
371
+ msgid "Important"
372
  msgstr ""
373
 
374
+ #: ../classes/settings.php:418
375
+ msgid "Database Changes"
376
  msgstr ""
377
 
378
+ #: ../classes/settings.php:419
379
+ msgid ""
380
+ "The database has been changed between versions 1 and 2. But we made sure you "
381
+ "can still roll back to version 1x without any issues."
382
  msgstr ""
383
 
384
+ #: ../classes/settings.php:422
385
+ msgid "Make sure you backup your database and then click"
386
  msgstr ""
387
 
388
+ #: ../classes/settings.php:422 ../classes/upgrade.php:97
389
+ msgid "Upgrade Database"
390
  msgstr ""
391
 
392
+ #: ../classes/settings.php:425
393
+ msgid "Potential Issues"
394
  msgstr ""
395
 
396
+ #: ../classes/settings.php:426
397
+ msgid ""
398
+ "Do to the sizable refactoring the code, surounding Addons and action/"
399
+ "filters, your website may not operate correctly. It is important that you "
400
+ "read the full"
401
  msgstr ""
402
 
403
+ #: ../classes/settings.php:426
404
+ msgid "Migrating from v1 to v2"
405
  msgstr ""
406
 
407
+ #: ../classes/settings.php:426
408
+ msgid "guide to view the full list of changes."
409
  msgstr ""
410
 
411
+ #: ../classes/settings.php:426
412
+ #, php-format
413
+ msgid ""
414
+ "When you have found a bug please <a href=\"%s\">report them to us</a> so we "
415
+ "can fix it in the next release."
416
  msgstr ""
417
 
418
+ #: ../classes/settings.php:429
419
+ msgid "Important!"
420
  msgstr ""
421
 
422
+ #: ../classes/settings.php:429
423
+ msgid ""
424
+ "If you updated the Admin Columns plugin without prior knowledge of such "
425
+ "changes, Please roll back to the latest"
426
  msgstr ""
427
 
428
+ #: ../classes/settings.php:429
429
+ msgid "version 1"
430
  msgstr ""
431
 
432
+ #: ../classes/settings.php:429
433
+ msgid "of this plugin."
 
 
 
 
434
  msgstr ""
435
 
436
+ #: ../classes/settings.php:435
437
+ msgid "Changelog for"
438
  msgstr ""
439
 
440
+ #: ../classes/settings.php:450
441
+ msgid "Learn more"
442
  msgstr ""
443
 
444
+ #: ../classes/settings.php:459
445
+ msgid ""
446
+ "New to v2, all Addons act as separate plugins which need to be individually "
447
+ "downloaded, installed and updated."
448
  msgstr ""
449
 
450
+ #: ../classes/settings.php:460
451
+ msgid ""
452
+ "This page will assist you in downloading and installing each available Addon."
 
453
  msgstr ""
454
 
455
+ #: ../classes/settings.php:461
456
+ msgid "Available Addons"
457
  msgstr ""
458
 
459
+ #: ../classes/settings.php:466
460
+ msgid "Name"
 
461
  msgstr ""
462
 
463
+ #: ../classes/settings.php:467 ../classes/settings.php:475
464
+ msgid "Download"
465
  msgstr ""
466
 
467
+ #: ../classes/settings.php:473
468
+ msgid "Pro Add-on (includes Sortorder add-on)"
 
469
  msgstr ""
470
 
471
+ #: ../classes/settings.php:483
472
+ msgid "Installation"
473
  msgstr ""
474
 
475
+ #: ../classes/settings.php:485
476
+ msgid "For each Add-on available, please perform the following:"
477
  msgstr ""
478
 
479
+ #: ../classes/settings.php:487
480
+ msgid "Download the Addon plugin (.zip file) to your desktop"
481
  msgstr ""
482
 
483
+ #: ../classes/settings.php:488
484
+ msgid "Navigate to"
485
  msgstr ""
486
 
487
+ #: ../classes/settings.php:488
488
+ msgid "Plugins > Add New > Upload"
489
  msgstr ""
490
 
491
+ #: ../classes/settings.php:489
492
+ msgid "Use the uploader to browse, select and install your Add-on (.zip file)"
493
  msgstr ""
494
 
495
+ #: ../classes/settings.php:490
496
+ msgid ""
497
+ "Once the plugin has been uploaded and installed, click the 'Activate Plugin' "
498
+ "link"
499
  msgstr ""
500
 
501
+ #: ../classes/settings.php:491
502
+ msgid "The Add-on is now installed and activated!"
 
503
  msgstr ""
504
 
505
+ #: ../classes/settings.php:492
506
+ #, php-format
507
+ msgid ""
508
+ "For automatic updates make sure to <a href='%s'>enter your licence key</a>."
509
  msgstr ""
510
 
511
+ #: ../classes/settings.php:502
512
+ msgid "Start using Admin Columns"
513
  msgstr ""
514
 
515
+ #: ../classes/settings.php:577
516
+ msgid "Store settings"
517
  msgstr ""
518
 
519
+ #: ../classes/settings.php:581
520
+ msgid "Update"
521
  msgstr ""
522
 
523
+ #: ../classes/settings.php:581
524
+ msgid "Publish"
525
  msgstr ""
526
 
527
+ #: ../classes/settings.php:585
528
+ #, php-format
529
+ msgid ""
530
+ "Warning! The %s columns data will be deleted. This cannot be undone. \\'OK"
531
+ "\\' to delete, \\'Cancel\\' to stop"
532
  msgstr ""
533
 
534
+ #: ../classes/settings.php:586 ../classes/column/comment/actions.php:86
535
+ #: ../classes/column/post/actions.php:53
536
+ msgid "Restore"
537
  msgstr ""
538
 
539
+ #: ../classes/settings.php:586
540
+ msgid "columns"
541
  msgstr ""
542
 
543
+ #: ../classes/settings.php:599
544
+ msgid "Get the Pro Add-on"
545
  msgstr ""
546
 
547
+ #: ../classes/settings.php:603
548
+ msgid "Add Sorting"
549
  msgstr ""
550
 
551
+ #: ../classes/settings.php:604
552
+ msgid "Add Filtering"
 
553
  msgstr ""
554
 
555
+ #: ../classes/settings.php:605
556
+ msgid "Add Import/Export"
557
  msgstr ""
558
 
559
+ #: ../classes/settings.php:608
560
+ #, php-format
561
+ msgid "Check the <a href=\"%s\">Pro Add-on</a> for more details!"
562
  msgstr ""
563
 
564
+ #: ../classes/settings.php:617
565
+ msgid "Subscribe to receive news &amp; updates below."
566
  msgstr ""
567
 
568
+ #: ../classes/settings.php:620 ../classes/column/post/author-name.php:35
569
+ msgid "First Name"
570
  msgstr ""
571
 
572
+ #: ../classes/settings.php:624
573
+ msgid "Your Email"
574
  msgstr ""
575
 
576
+ #: ../classes/settings.php:635
577
+ msgid "Support"
578
  msgstr ""
579
 
580
+ #: ../classes/settings.php:638
581
+ msgid "Check the <strong>Help</strong> section in the top-right screen."
582
  msgstr ""
583
 
584
+ #: ../classes/settings.php:641
585
+ #, php-format
586
+ msgid ""
587
+ "For full documentation, bug reports, feature suggestions and other tips <a "
588
+ "href='%s'>visit the Admin Columns website</a>"
589
  msgstr ""
590
 
591
+ #: ../classes/settings.php:669
592
+ msgid "Drag and drop to reorder"
593
  msgstr ""
594
 
595
+ #: ../classes/settings.php:672
596
+ msgid "Add Column"
597
  msgstr ""
598
 
599
+ #: ../classes/settings.php:720
600
+ msgid "General Settings"
601
  msgstr ""
602
 
603
+ #: ../classes/settings.php:721
604
+ msgid "Customize your Admin Columns settings."
605
  msgstr ""
606
 
607
+ #: ../classes/settings.php:734
608
+ msgid "Show hidden custom fields. Default is <code>off</code>."
609
  msgstr ""
610
 
611
+ #: ../classes/settings.php:740
612
+ msgid ""
613
+ "Show \"Edit Columns\" button on admin screens. Default is <code>off</code>."
614
  msgstr ""
615
 
616
+ #: ../classes/settings.php:747
617
+ msgid "Save"
618
  msgstr ""
619
 
620
+ #: ../classes/settings.php:787
621
+ msgid "Restore Settings"
622
  msgstr ""
623
 
624
+ #: ../classes/settings.php:788
625
+ msgid "This will delete all column settings and restore the default settings."
626
  msgstr ""
627
 
628
+ #: ../classes/settings.php:794
629
+ msgid "Restore default settings"
630
  msgstr ""
631
 
632
+ #: ../classes/settings.php:794
633
+ msgid ""
634
+ "Warning! ALL saved admin columns data will be deleted. This cannot be "
635
+ "undone. \\'OK\\' to delete, \\'Cancel\\' to stop"
636
  msgstr ""
637
 
638
+ #: ../classes/storage_model.php:181
639
+ msgid "settings succesfully restored."
640
  msgstr ""
641
 
642
+ #: ../classes/storage_model.php:198
643
+ msgid "No columns settings available."
644
  msgstr ""
645
 
646
+ #: ../classes/storage_model.php:221
647
+ #, php-format
648
+ msgid "You are trying to store the same settings for %s."
649
  msgstr ""
650
 
651
+ #: ../classes/storage_model.php:225
652
+ #, php-format
653
+ msgid "Settings for %s updated succesfully."
654
  msgstr ""
655
 
656
+ #: ../classes/storage_model.php:604 ../classes/column/post/actions.php:64
657
+ msgid "View"
658
  msgstr ""
659
 
660
+ #: ../classes/upgrade.php:45
661
+ msgid "Upgrade"
662
  msgstr ""
663
 
664
+ #: ../classes/upgrade.php:90
665
+ msgid "requires a database upgrade"
666
  msgstr ""
667
 
668
+ #: ../classes/upgrade.php:93
669
+ msgid "why?"
670
  msgstr ""
671
 
672
+ #: ../classes/upgrade.php:94
673
+ msgid "Please"
 
674
  msgstr ""
675
 
676
+ #: ../classes/upgrade.php:95
677
+ msgid "backup your database"
 
678
  msgstr ""
679
 
680
+ #: ../classes/upgrade.php:96
681
+ msgid "then click"
682
  msgstr ""
683
 
684
+ #: ../classes/upgrade.php:304
685
+ msgid "Migrating Column Settings"
686
  msgstr ""
687
 
688
+ #: ../classes/upgrade.php:340
689
+ msgid "No Upgrade Required"
 
 
 
690
  msgstr ""
691
 
692
+ #: ../classes/upgrade.php:341
693
+ msgid "Return to welcome screen."
694
  msgstr ""
695
 
696
+ #: ../classes/upgrade.php:359
697
+ msgid "Upgrade Complete!"
698
  msgstr ""
699
 
700
+ #: ../classes/upgrade.php:359
701
+ msgid "Return to settings."
 
702
  msgstr ""
703
 
704
+ #: ../classes/upgrade.php:360
705
+ msgid "Error"
706
  msgstr ""
707
 
708
+ #: ../classes/upgrade.php:361
709
  msgid ""
710
+ "Sorry. Something went wrong during the upgrade process. Please report this "
711
+ "on the support forum."
712
  msgstr ""
713
 
714
+ #: ../classes/column/custom-field.php:71
715
+ msgid "Checkmark (true/false)"
716
  msgstr ""
717
 
718
+ #: ../classes/column/custom-field.php:77 ../classes/storage_model/media.php:13
719
+ msgid "Media Library"
 
 
720
  msgstr ""
721
 
722
+ #: ../classes/column/custom-field.php:80
723
+ msgid "Post Title (Post ID's)"
724
  msgstr ""
725
 
726
+ #: ../classes/column/custom-field.php:81
727
+ msgid "Username (User ID's)"
 
 
728
  msgstr ""
729
 
730
+ #: ../classes/column/custom-field.php:379
731
+ msgid "Select your custom field."
 
 
732
  msgstr ""
733
 
734
+ #: ../classes/column/custom-field.php:389
735
+ msgid "No custom fields available."
 
 
736
  msgstr ""
737
 
738
+ #: ../classes/column/custom-field.php:396
739
+ msgid "Field Type"
740
  msgstr ""
741
 
742
+ #: ../classes/column/custom-field.php:396
743
+ msgid "This will determine how the value will be displayed."
 
744
  msgstr ""
745
 
746
+ #: ../classes/column/custom-field.php:439
747
+ msgid "Before"
 
 
748
  msgstr ""
749
 
750
+ #: ../classes/column/custom-field.php:439
751
+ msgid "This text will appear before the custom field value."
 
 
 
 
752
  msgstr ""
753
 
754
+ #: ../classes/column/custom-field.php:445
755
+ msgid "After"
756
  msgstr ""
757
 
758
+ #: ../classes/column/custom-field.php:445
759
+ msgid "This text will appear after the custom field value."
760
  msgstr ""
761
 
762
+ #: ../classes/column/comment/actions.php:14
763
+ #: ../classes/column/link/actions.php:14
764
+ #: ../classes/column/media/actions.php:14
765
+ #: ../classes/column/post/actions.php:14 ../classes/column/user/actions.php:14
766
+ msgid "Actions"
767
  msgstr ""
768
 
769
+ #: ../classes/column/comment/actions.php:73
770
+ #: ../classes/column/comment/actions.php:78
771
+ msgid "Unapprove"
772
  msgstr ""
773
 
774
+ #: ../classes/column/comment/actions.php:75
775
+ #: ../classes/column/comment/actions.php:77
776
+ msgid "Approve"
777
  msgstr ""
778
 
779
+ #: ../classes/column/comment/actions.php:90
780
+ #: ../classes/column/post/actions.php:57
781
+ msgid "Delete Permanently"
782
  msgstr ""
783
 
784
+ #: ../classes/column/comment/actions.php:96
785
+ #: ../classes/column/link/actions.php:45 ../classes/column/post/actions.php:48
786
+ #: ../classes/column/user/actions.php:66
787
+ msgid "Edit"
788
  msgstr ""
789
 
790
+ #: ../classes/column/comment/actions.php:97
791
+ #: ../classes/column/post/actions.php:49
792
+ msgid "Quick&nbsp;Edit"
 
793
  msgstr ""
794
 
795
+ #: ../classes/column/comment/actions.php:98
796
+ msgid "Reply"
797
  msgstr ""
798
 
799
+ #: ../classes/column/comment/agent.php:12
800
+ msgid "Agent"
801
  msgstr ""
802
 
803
+ #: ../classes/column/comment/approved.php:12
804
+ #: ../classes/column/post/comment-count.php:31
805
+ msgid "Approved"
 
806
  msgstr ""
807
 
808
+ #: ../classes/column/comment/author-avatar.php:12
809
+ msgid "Avatar"
810
  msgstr ""
811
 
812
+ #: ../classes/column/comment/author-email.php:12
813
+ msgid "Author email"
814
  msgstr ""
815
 
816
+ #: ../classes/column/comment/author-ip.php:12
817
+ msgid "Author IP"
818
  msgstr ""
819
 
820
+ #: ../classes/column/comment/author-url.php:12
821
+ msgid "Author url"
822
  msgstr ""
823
 
824
+ #: ../classes/column/comment/author.php:12
825
+ msgid "Author"
 
 
 
826
  msgstr ""
827
 
828
+ #: ../classes/column/comment/date-gmt.php:12
829
+ msgid "Date GMT"
 
830
  msgstr ""
831
 
832
+ #: ../classes/column/comment/date-gmt.php:25
833
+ #: ../classes/column/comment/date.php:25
834
+ #, php-format
835
+ msgid "Submitted on <a href=\"%1$s\">%2$s at %3$s</a>"
836
  msgstr ""
837
 
838
+ #: ../classes/column/comment/reply-to.php:12
839
+ msgid "In Reply To"
840
  msgstr ""
841
 
842
+ #: ../classes/column/comment/word-count.php:12
843
+ #: ../classes/column/post/word-count.php:12
844
+ msgid "Word count"
845
  msgstr ""
846
 
847
+ #: ../classes/column/link/actions.php:46
848
+ #, php-format
849
+ msgid ""
850
+ "You are about to delete this link '%s'\n"
851
+ " 'Cancel' to stop, 'OK' to delete."
852
  msgstr ""
853
 
854
+ #: ../classes/column/link/actions.php:46 ../classes/column/user/actions.php:72
855
+ msgid "Delete"
856
  msgstr ""
857
 
858
+ #: ../classes/column/link/description.php:12
859
+ #: ../classes/column/media/description.php:12
860
+ #: ../classes/column/user/description.php:14
861
+ msgid "Description"
862
  msgstr ""
863
 
864
+ #: ../classes/column/link/length.php:12
865
+ msgid "Length"
 
 
866
  msgstr ""
867
 
868
+ #: ../classes/column/link/notes.php:13
869
+ msgid "Notes"
870
  msgstr ""
871
 
872
+ #: ../classes/column/link/owner.php:12
873
+ msgid "Owner"
874
  msgstr ""
875
 
876
+ #: ../classes/column/link/rss.php:12
877
+ msgid "Rss"
878
  msgstr ""
879
 
880
+ #: ../classes/column/link/target.php:12
881
+ msgid "Target"
 
 
 
882
  msgstr ""
883
 
884
+ #: ../classes/column/media/alternate-text.php:12
885
+ msgid "Alt"
886
  msgstr ""
887
 
888
+ #: ../classes/column/media/available-sizes.php:14
889
+ msgid "Available Sizes"
890
  msgstr ""
891
 
892
+ #: ../classes/column/media/available-sizes.php:37
893
+ msgid "full size"
 
 
 
894
  msgstr ""
895
 
896
+ #: ../classes/column/media/caption.php:12
897
+ #: ../classes/column/media/exif-data.php:36
898
+ msgid "Caption"
899
  msgstr ""
900
 
901
+ #: ../classes/column/media/dimensions.php:12
902
+ msgid "Dimensions"
 
 
903
  msgstr ""
904
 
905
+ #: ../classes/column/media/exif-data.php:12
906
+ msgid "EXIF data"
907
  msgstr ""
908
 
909
+ #: ../classes/column/media/exif-data.php:33
910
+ msgid "Aperture"
911
  msgstr ""
912
 
913
+ #: ../classes/column/media/exif-data.php:34
914
+ msgid "Credit"
915
  msgstr ""
916
 
917
+ #: ../classes/column/media/exif-data.php:35
918
+ msgid "Camera"
919
  msgstr ""
920
 
921
+ #: ../classes/column/media/exif-data.php:37
922
+ msgid "Timestamp"
 
 
923
  msgstr ""
924
 
925
+ #: ../classes/column/media/exif-data.php:38
926
+ msgid "Copyright EXIF"
 
927
  msgstr ""
928
 
929
+ #: ../classes/column/media/exif-data.php:39
930
+ msgid "Focal Length"
931
  msgstr ""
932
 
933
+ #: ../classes/column/media/exif-data.php:40
934
+ msgid "ISO"
935
  msgstr ""
936
 
937
+ #: ../classes/column/media/exif-data.php:41
938
+ msgid "Shutter Speed"
939
  msgstr ""
940
 
941
+ #: ../classes/column/media/exif-data.php:42
942
+ msgid "Title"
943
  msgstr ""
944
 
945
+ #: ../classes/column/media/file-name.php:12
946
+ msgid "File name"
947
  msgstr ""
948
 
949
+ #: ../classes/column/media/file-size.php:12
950
+ msgid "File size"
951
  msgstr ""
952
 
953
+ #: ../classes/column/media/full-path.php:12
954
+ msgid "Full path"
955
  msgstr ""
956
 
957
+ #: ../classes/column/media/height.php:12
958
+ msgid "Height"
959
  msgstr ""
960
 
961
+ #: ../classes/column/media/mime-type.php:12
962
+ msgid "Mime type"
963
  msgstr ""
964
 
965
+ #: ../classes/column/post/actions.php:48
966
+ msgid "Edit this item"
967
  msgstr ""
968
 
969
+ #: ../classes/column/post/actions.php:49
970
+ msgid "Edit this item inline"
 
 
971
  msgstr ""
972
 
973
+ #: ../classes/column/post/actions.php:53
974
+ msgid "Restore this item from the Trash"
975
  msgstr ""
976
 
977
+ #: ../classes/column/post/actions.php:55
978
+ msgid "Move this item to the Trash"
 
 
979
  msgstr ""
980
 
981
+ #: ../classes/column/post/actions.php:55
982
+ #: ../classes/column/post/comment-count.php:34
983
+ #: ../classes/column/post/status.php:37
984
+ msgid "Trash"
985
  msgstr ""
986
 
987
+ #: ../classes/column/post/actions.php:57
988
+ msgid "Delete this item permanently"
989
  msgstr ""
990
 
991
+ #: ../classes/column/post/actions.php:62
992
+ #, php-format
993
+ msgid "Preview &#8220;%s&#8221;"
994
  msgstr ""
995
 
996
+ #: ../classes/column/post/actions.php:62
997
+ msgid "Preview"
998
  msgstr ""
999
 
1000
+ #: ../classes/column/post/actions.php:64
1001
+ #, php-format
1002
+ msgid "View &#8220;%s&#8221;"
1003
  msgstr ""
1004
 
1005
+ #: ../classes/column/post/attachment-count.php:12
1006
+ msgid "No. of Attachments"
1007
  msgstr ""
1008
 
1009
+ #: ../classes/column/post/attachment.php:12
1010
+ msgid "Attachment"
1011
  msgstr ""
1012
 
1013
+ #: ../classes/column/post/author-name.php:12
1014
+ msgid "Display Author As"
1015
  msgstr ""
1016
 
1017
+ #: ../classes/column/post/author-name.php:34
1018
+ msgid "Display Name"
1019
  msgstr ""
1020
 
1021
+ #: ../classes/column/post/author-name.php:36
1022
+ msgid "Last Name"
 
 
1023
  msgstr ""
1024
 
1025
+ #: ../classes/column/post/author-name.php:37
1026
+ #: ../classes/column/user/nickname.php:14
1027
+ msgid "Nickname"
1028
  msgstr ""
1029
 
1030
+ #: ../classes/column/post/author-name.php:38
1031
+ msgid "User Login"
1032
  msgstr ""
1033
 
1034
+ #: ../classes/column/post/author-name.php:39
1035
+ msgid "User Email"
1036
  msgstr ""
1037
 
1038
+ #: ../classes/column/post/author-name.php:40 ../classes/column/user/ID.php:14
1039
+ msgid "User ID"
1040
  msgstr ""
1041
 
1042
+ #: ../classes/column/post/author-name.php:41
1043
+ msgid "First and Last Name"
1044
  msgstr ""
1045
 
1046
+ #: ../classes/column/post/author-name.php:116
1047
+ msgid "This is the format of the author name."
1048
  msgstr ""
1049
 
1050
+ #: ../classes/column/post/before-moretag.php:14
1051
+ msgid "Before More Tag"
 
 
 
1052
  msgstr ""
1053
 
1054
+ #: ../classes/column/post/comment-count.php:14
1055
+ msgid "Comment count"
1056
  msgstr ""
1057
 
1058
+ #: ../classes/column/post/comment-count.php:30
1059
+ msgid "Total"
1060
  msgstr ""
1061
 
1062
+ #: ../classes/column/post/comment-count.php:32
1063
+ msgid "Pending"
1064
  msgstr ""
1065
 
1066
+ #: ../classes/column/post/comment-count.php:33
1067
+ msgid "Spam"
1068
  msgstr ""
1069
 
1070
+ #: ../classes/column/post/comment-count.php:95
1071
+ #: ../classes/column/post/comment-status.php:14
1072
+ msgid "Comment status"
1073
  msgstr ""
1074
 
1075
+ #: ../classes/column/post/comment-count.php:95
1076
+ msgid "Select which comment status you like to display."
 
1077
  msgstr ""
1078
 
1079
+ #: ../classes/column/post/featured-image.php:14
1080
+ msgid "Featured Image"
1081
  msgstr ""
1082
 
1083
+ #: ../classes/column/post/formats.php:14
1084
+ msgid "Post Format"
1085
  msgstr ""
1086
 
1087
+ #: ../classes/column/post/modified.php:14
1088
+ msgid "Last modified"
 
 
 
1089
  msgstr ""
1090
 
1091
+ #: ../classes/column/post/order.php:14
1092
+ msgid "Page Order"
1093
  msgstr ""
1094
 
1095
+ #: ../classes/column/post/page-template.php:12
1096
+ msgid "Page Template"
1097
  msgstr ""
1098
 
1099
+ #: ../classes/column/post/parent.php:12
1100
+ msgid "Parent"
1101
  msgstr ""
1102
 
1103
+ #: ../classes/column/post/ping-status.php:14
1104
+ msgid "Ping status"
1105
  msgstr ""
1106
 
1107
+ #: ../classes/column/post/roles.php:14
1108
+ msgid "Roles"
 
1109
  msgstr ""
1110
 
1111
+ #: ../classes/column/post/slug.php:12
1112
+ msgid "Slug"
 
1113
  msgstr ""
1114
 
1115
+ #: ../classes/column/post/status.php:14
1116
+ msgid "Status"
1117
  msgstr ""
1118
 
1119
+ #: ../classes/column/post/status.php:32
1120
+ msgid "Published"
1121
  msgstr ""
1122
 
1123
+ #: ../classes/column/post/status.php:33
1124
+ msgid "Draft"
1125
  msgstr ""
1126
 
1127
+ #: ../classes/column/post/status.php:34
1128
+ msgid "Scheduled"
1129
  msgstr ""
1130
 
1131
+ #: ../classes/column/post/status.php:35
1132
+ msgid "Private"
1133
  msgstr ""
1134
 
1135
+ #: ../classes/column/post/status.php:36
1136
+ msgid "Pending Review"
1137
  msgstr ""
1138
 
1139
+ #: ../classes/column/post/sticky.php:14
1140
+ msgid "Sticky"
1141
  msgstr ""
1142
 
1143
+ #: ../classes/column/post/taxonomy.php:12
1144
+ #: ../classes/column/post/taxonomy.php:74
1145
+ msgid "Taxonomy"
1146
  msgstr ""
1147
 
1148
+ #: ../classes/column/user/comment-count.php:14
1149
+ msgid "Comment Count"
1150
  msgstr ""
1151
 
1152
+ #: ../classes/column/user/first-name.php:14
1153
+ msgid "First name"
1154
  msgstr ""
1155
 
1156
+ #: ../classes/column/user/last-name.php:14
1157
+ msgid "Last name"
1158
  msgstr ""
1159
 
1160
+ #: ../classes/column/user/post-count.php:14
1161
+ msgid "Post Count"
1162
  msgstr ""
1163
 
1164
+ #: ../classes/column/user/post-count.php:99
1165
+ msgid "Post Type"
1166
  msgstr ""
1167
 
1168
+ #: ../classes/column/user/registered.php:14
1169
+ msgid "Registered"
1170
  msgstr ""
1171
 
1172
+ #: ../classes/column/user/url.php:14
1173
+ msgid "Url"
1174
  msgstr ""
1175
 
1176
+ #: ../classes/storage_model/comment.php:13
1177
+ msgid "Comments"
 
 
1178
  msgstr ""
1179
 
1180
+ #: ../classes/storage_model/link.php:13
1181
+ msgid "Links"
1182
+ msgstr ""
1183
+
1184
+ #: ../classes/storage_model/user.php:13
1185
+ msgid "Users"
1186
  msgstr ""
readme.txt CHANGED
@@ -1,10 +1,10 @@
1
  === Codepress Admin Columns ===
2
- Contributors: codepress, tschutter, davidmosterd, Jesper800
3
  Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=ZDZRSYLQ4Z76J
4
  Tags: plugins, wordpress, admin, column, columns, custom columns, custom fields, image, dashboard, sortable, filters, posts, media, users, pages, posttypes, manage columns, wp-admin
5
  Requires at least: 3.5
6
  Tested up to: 3.8.1
7
- Stable tag: 2.1.2
8
 
9
  Customise columns on the administration screens for post(types), pages, media, comments, links and users with an easy to use drag-and-drop interface.
10
 
@@ -220,12 +220,18 @@ Here you will find an overview of filters and examples: http://www.codepresshq.c
220
 
221
  == Changelog ==
222
 
223
- = 2.1.2 =
224
- * [Updated] Added ajax check and improved loading.
225
- * [Updated] Menu is split between posttypes and media, comments and users.
226
- * [Added] WooCommerce 2.1 columns support
227
  * [Fixed] Filters for column_path
228
 
 
 
 
 
 
 
229
  = 2.1.1 =
230
  * [Updated] Added page check to posttype edit screens
231
  * [Updated] taxonomy raw_value outputs term_ids
@@ -289,7 +295,7 @@ Here you will find an overview of filters and examples: http://www.codepresshq.c
289
  * fixed bug: thirdparty columns that were previous loaded through load-edit.php will now use do_action( 'cpac-get-default-columns-{$type}' )
290
 
291
  = 1.4.8 =
292
- * [Fixed] Issue: removed acf posttype placed by Advanced Custom Fields from settings menu
293
  * [Fixed] Issue: removed bbPress posttypes topic, forum and reply from admin columns settings menu
294
  * [Fixed] Issue: license key could not activate properly
295
 
1
  === Codepress Admin Columns ===
2
+ Contributors: codepress, tschutter, davidmosterd, engelen
3
  Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=ZDZRSYLQ4Z76J
4
  Tags: plugins, wordpress, admin, column, columns, custom columns, custom fields, image, dashboard, sortable, filters, posts, media, users, pages, posttypes, manage columns, wp-admin
5
  Requires at least: 3.5
6
  Tested up to: 3.8.1
7
+ Stable tag: 2.1.3
8
 
9
  Customise columns on the administration screens for post(types), pages, media, comments, links and users with an easy to use drag-and-drop interface.
10
 
220
 
221
  == Changelog ==
222
 
223
+ = 2.1.3 =
224
+ * [Updated] Undo changes from 2.1.2, will be in the next major release
225
+ * [Fixed] Moved assignment of capabilities to plugin activation hook
226
+ * [Fixed] Hook into manage_columns filters later to prevent overwriting from other plugins
227
  * [Fixed] Filters for column_path
228
 
229
+ = 2.1.2 =
230
+ [Updated] Added ajax check and improved loading.
231
+ [Updated] Menu is split between posttypes and media, comments and users.
232
+ [Added] WooCommerce 2.1 columns support
233
+ [Fixed] Filters for column_path
234
+
235
  = 2.1.1 =
236
  * [Updated] Added page check to posttype edit screens
237
  * [Updated] taxonomy raw_value outputs term_ids
295
  * fixed bug: thirdparty columns that were previous loaded through load-edit.php will now use do_action( 'cpac-get-default-columns-{$type}' )
296
 
297
  = 1.4.8 =
298
+ * [Fixed] Issue: removed acf posttype placed by Advaced Custom Fields from settings menu
299
  * [Fixed] Issue: removed bbPress posttypes topic, forum and reply from admin columns settings menu
300
  * [Fixed] Issue: license key could not activate properly
301