PluginProbe ʕ •ᴥ•ʔ
Download Manager / trunk
Download Manager vtrunk
3.3.62 3.3.61 3.3.60 3.3.59 3.3.58 3.3.57 3.3.56 trunk 2.1.3 2.3.0 2.5.96 2.5.97 2.6.2 2.6.96 2.8.3 2.9.99 3.0.4 3.1.05 3.1.07 3.1.08 3.1.11 3.1.12 3.1.14 3.1.17 3.1.18 3.1.22 3.1.23 3.1.24 3.1.25 3.1.26 3.1.27 3.1.28 3.2.04 3.2.13 3.2.14 3.2.16 3.2.18 3.2.19 3.2.21 3.2.22 3.2.23 3.2.24 3.2.25 3.2.27 3.2.28 3.2.29 3.2.30 3.2.31 3.2.32 3.2.33 3.2.34 3.2.35 3.2.37 3.2.38 3.2.39 3.2.40 3.2.41 3.2.42 3.2.43 3.2.44 3.2.45 3.2.46 3.2.47 3.2.48 3.2.49 3.2.50 3.2.51 3.2.52 3.2.53 3.2.54 3.2.55 3.2.56 3.2.57 3.2.58 3.2.59 3.2.60 3.2.61 3.2.63 3.2.64 3.2.65 3.2.66 3.2.67 3.2.68 3.2.69 3.2.70 3.2.71 3.2.72 3.2.73 3.2.74 3.2.75 3.2.76 3.2.77 3.2.78 3.2.79 3.2.80 3.2.81 3.2.82 3.2.83 3.2.84 3.2.85 3.2.86 3.2.87 3.2.88 3.2.89 3.2.90 3.2.91 3.2.92 3.2.93 3.2.94 3.2.95 3.2.96 3.2.97 3.2.98 3.2.99 3.3.00 3.3.01 3.3.02 3.3.03 3.3.04 3.3.05 3.3.06 3.3.07 3.3.08 3.3.09 3.3.10 3.3.11 3.3.12 3.3.13 3.3.14 3.3.15 3.3.16 3.3.17 3.3.18 3.3.19 3.3.20 3.3.21 3.3.22 3.3.23 3.3.24 3.3.25 3.3.26 3.3.27 3.3.28 3.3.29 3.3.30 3.3.31 3.3.32 3.3.33 3.3.34 3.3.35 3.3.36 3.3.37 3.3.38 3.3.39 3.3.40 3.3.41 3.3.42 3.3.43 3.3.44 3.3.45 3.3.46 3.3.47 3.3.48 3.3.49 3.3.50 3.3.51 3.3.52 3.3.53 3.3.54 3.3.55
download-manager / src / Admin / views / welcome.php
download-manager / src / Admin / views Last commit date
asset-manager 5 years ago dashboard-widgets 6 months ago metaboxes 1 week ago settings 4 months ago stats 1 week ago templates 1 week ago addons-list.php 1 week ago admin-footer.php 2 months ago admin-head.php 2 years ago edit-store-profile.php 5 years ago iconfinder.php 2 years ago page-header.php 6 months ago settings.php 6 months ago stats.php 6 months ago welcome.php 6 months ago
welcome.php
2273 lines
1 <?php
2 /**
3 * Download Manager - Welcome & Onboarding Page
4 * Modern redesign with setup wizard
5 */
6
7 if (!defined('ABSPATH')) exit;
8
9 // Check if setup is complete
10 $setup_complete = get_option('wpdm_setup_complete', false);
11 $current_step = isset($_GET['step']) ? intval($_GET['step']) : ($setup_complete ? 0 : 1);
12
13 // Handle step submissions
14 if (isset($_POST['wpdm_setup_step']) && wp_verify_nonce($_POST['_wpnonce'], 'wpdm_setup')) {
15 $step = intval($_POST['wpdm_setup_step']);
16
17 switch ($step) {
18 case 2:
19 // Save basic settings
20 if (isset($_POST['wpdm_purl_base'])) {
21 update_option('__wpdm_purl_base', sanitize_text_field($_POST['wpdm_purl_base']));
22 }
23 if (isset($_POST['wpdm_curl_base'])) {
24 update_option('__wpdm_curl_base', sanitize_text_field($_POST['wpdm_curl_base']));
25 }
26 if (isset($_POST['wpdm_color_scheme'])) {
27 $scheme = sanitize_text_field($_POST['wpdm_color_scheme']);
28 if (in_array($scheme, ['light', 'dark', 'system'])) {
29 update_option('__wpdm_color_scheme', $scheme);
30 }
31 }
32 // Dashboard page ID is saved via AJAX when button is clicked
33 $current_step = 3;
34 break;
35
36 case 3:
37 // Save user type preference
38 if (isset($_POST['wpdm_user_type'])) {
39 update_option('__wpdm_user_type', sanitize_text_field($_POST['wpdm_user_type']));
40 }
41 $current_step = 4;
42 break;
43
44 case 4:
45 // Mark setup complete
46 update_option('wpdm_setup_complete', true);
47 $current_step = 5;
48 break;
49 }
50 }
51
52 // Skip setup
53 if (isset($_GET['skip_setup'])) {
54 update_option('wpdm_setup_complete', true);
55 wp_redirect(admin_url('edit.php?post_type=wpdmpro'));
56 exit;
57 }
58
59 // Reset setup (for testing)
60 if (isset($_GET['reset_setup']) && current_user_can('manage_options')) {
61 delete_option('wpdm_setup_complete');
62 wp_redirect(admin_url('index.php?page=wpdm-welcome'));
63 exit;
64 }
65
66 $purl_base = get_option('__wpdm_purl_base', 'download');
67 $curl_base = get_option('__wpdm_curl_base', 'download-category');
68 $color_scheme = get_option('__wpdm_color_scheme', 'light');
69 $dashboard_page = get_option('__wpdm_user_dashboard', 0);
70 $package_count = wp_count_posts('wpdmpro')->publish ?? 0;
71 ?>
72
73 <style>
74 :root {
75 --wpdm-primary: #10b981;
76 --wpdm-primary-dark: #059669;
77 --wpdm-primary-light: #ecfdf5;
78 --wpdm-primary-glow: rgba(16, 185, 129, 0.4);
79 --wpdm-accent: #6366f1;
80 --wpdm-accent-light: #eef2ff;
81 --wpdm-success: #10b981;
82 --wpdm-success-light: #d1fae5;
83 --wpdm-warning: #f59e0b;
84 --wpdm-danger: #ef4444;
85 --wpdm-gray-50: #f8fafc;
86 --wpdm-gray-100: #f1f5f9;
87 --wpdm-gray-200: #e2e8f0;
88 --wpdm-gray-300: #cbd5e1;
89 --wpdm-gray-400: #94a3b8;
90 --wpdm-gray-500: #64748b;
91 --wpdm-gray-600: #475569;
92 --wpdm-gray-700: #334155;
93 --wpdm-gray-800: #1e293b;
94 --wpdm-gray-900: #0f172a;
95 }
96
97 * {
98 box-sizing: border-box;
99 }
100 #wpbody-content{
101 padding: 0 !important;
102 }
103 /* Hide WordPress admin footer on this page */
104 #wpfooter {
105 display: none !important;
106 }
107
108 .wpdm-onboarding {
109 min-height: 100vh;
110 margin: -20px 0 0 -20px;
111 padding: 60px 20px;
112 font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
113 background: linear-gradient(180deg, #f8fafc 0%, #f1f5f9 100%);
114 position: relative;
115 overflow: hidden;
116 }
117
118 /* Subtle decorative elements */
119 .wpdm-onboarding::before {
120 content: '';
121 position: absolute;
122 width: 600px;
123 height: 600px;
124 top: -300px;
125 right: -200px;
126 border-radius: 50%;
127 background: radial-gradient(circle, rgba(16, 185, 129, 0.08) 0%, transparent 70%);
128 pointer-events: none;
129 }
130
131 .wpdm-onboarding::after {
132 content: '';
133 position: absolute;
134 width: 400px;
135 height: 400px;
136 bottom: -200px;
137 left: -100px;
138 border-radius: 50%;
139 background: radial-gradient(circle, rgba(99, 102, 241, 0.06) 0%, transparent 70%);
140 pointer-events: none;
141 }
142
143 .wpdm-onboarding-container {
144 max-width: 680px;
145 margin: 0 auto;
146 position: relative;
147 z-index: 1;
148 }
149
150 /* Header */
151 .wpdm-onboarding-header {
152 text-align: center;
153 margin-bottom: 32px;
154 }
155
156 .wpdm-logo {
157 display: inline-flex;
158 align-items: center;
159 justify-content: center;
160 width: 88px;
161 height: 88px;
162 background: linear-gradient(145deg, #f8fafc 0%, #e2e8f0 100%);
163 border-radius: 20px;
164 box-shadow: 0 4px 12px rgba(9, 65, 104, 0.12), 0 1px 3px rgba(9, 65, 104, 0.08);
165 margin-bottom: 24px;
166 border: 1px solid rgba(60, 128, 228, 0.15);
167 }
168
169 .wpdm-logo svg {
170 width: 56px;
171 height: 56px;
172 }
173
174 .wpdm-onboarding-header h1 {
175 color: var(--wpdm-gray-900);
176 font-size: 32px;
177 font-weight: 700;
178 margin: 0 0 10px;
179 letter-spacing: -0.5px;
180 }
181
182 .wpdm-onboarding-header p {
183 color: var(--wpdm-gray-500);
184 font-size: 17px;
185 margin: 0;
186 }
187
188 /* Progress Steps - Clean design */
189 .wpdm-progress {
190 display: flex;
191 justify-content: center;
192 align-items: center;
193 gap: 0;
194 margin-bottom: 24px;
195 padding: 10px 16px;
196 background: #fff;
197 border: 1px solid var(--wpdm-gray-200);
198 border-radius: 50px;
199 width: fit-content;
200 margin-left: auto;
201 margin-right: auto;
202 }
203
204 .wpdm-progress-step {
205 display: flex;
206 align-items: center;
207 gap: 0;
208 }
209
210 .wpdm-progress-dot {
211 width: 32px;
212 height: 32px;
213 border-radius: 50%;
214 background: var(--wpdm-gray-100);
215 display: flex;
216 align-items: center;
217 justify-content: center;
218 font-size: 13px;
219 font-weight: 600;
220 color: var(--wpdm-gray-400);
221 transition: all 0.15s ease;
222 }
223
224 .wpdm-progress-step.active .wpdm-progress-dot {
225 background: var(--wpdm-primary);
226 color: #fff;
227 }
228
229 .wpdm-progress-step.completed .wpdm-progress-dot {
230 background: var(--wpdm-success);
231 color: #fff;
232 }
233
234 .wpdm-progress-line {
235 width: 40px;
236 height: 2px;
237 background: var(--wpdm-gray-200);
238 margin: 0 4px;
239 transition: background 0.15s ease;
240 }
241
242 .wpdm-progress-step.completed + .wpdm-progress-step .wpdm-progress-line,
243 .wpdm-progress-step.completed .wpdm-progress-line {
244 background: var(--wpdm-success);
245 }
246
247 /* Card - Clean professional design */
248 .wpdm-onboarding-card {
249 background: #fff;
250 border-radius: 6px;
251 border: 1px solid var(--wpdm-gray-200);
252 box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
253 overflow: hidden;
254 max-width: 100%;
255 }
256
257 .wpdm-card-header {
258 background: var(--wpdm-gray-800);
259 padding: 18px 24px;
260 border-bottom: 1px solid var(--wpdm-gray-700);
261 }
262
263 .wpdm-card-header .wpdm-card-title {
264 color: #fff;
265 font-size: 16px;
266 font-weight: 600;
267 margin: 0;
268 display: flex;
269 align-items: center;
270 gap: 10px;
271 }
272
273 .wpdm-card-header .wpdm-card-title svg {
274 width: 20px;
275 height: 20px;
276 opacity: 0.8;
277 }
278
279 .wpdm-card-body {
280 padding: 28px 24px;
281 overflow: hidden;
282 }
283
284 .wpdm-card-subtitle {
285 font-size: 14px;
286 color: var(--wpdm-gray-500);
287 margin: 0 0 24px;
288 line-height: 1.5;
289 }
290
291 /* Form Elements */
292 .wpdm-form-group {
293 margin-bottom: 24px;
294 }
295
296 .wpdm-form-section {
297 padding: 20px;
298 border: 1px solid var(--wpdm-gray-200);
299 border-radius: 6px;
300 background: #fff;
301 }
302
303 .wpdm-form-label {
304 display: block;
305 font-size: 14px;
306 font-weight: 600;
307 color: var(--wpdm-gray-700);
308 margin-bottom: 10px;
309 }
310
311 .wpdm-form-hint {
312 font-size: 13px;
313 color: var(--wpdm-gray-400);
314 margin-top: 8px;
315 }
316
317 .wpdm-form-input {
318 width: 100%;
319 padding: 10px 14px;
320 font-size: 14px;
321 border: 1px solid var(--wpdm-gray-200);
322 border-radius: 4px;
323 background: var(--wpdm-gray-50);
324 color: var(--wpdm-gray-800);
325 transition: all 0.2s;
326 }
327
328 .wpdm-form-input:focus {
329 outline: none;
330 border-color: var(--wpdm-primary);
331 background: #fff;
332 box-shadow: 0 0 0 3px var(--wpdm-primary-light);
333 }
334
335 .wpdm-input-group {
336 display: flex;
337 align-items: center;
338 background: var(--wpdm-gray-50);
339 border: 1px solid var(--wpdm-gray-200);
340 border-radius: 4px;
341 overflow: hidden;
342 transition: all 0.2s;
343 }
344
345 .wpdm-input-group:focus-within {
346 border-color: var(--wpdm-primary);
347 background: #fff;
348 box-shadow: 0 0 0 3px var(--wpdm-primary-light);
349 }
350
351 .wpdm-input-prefix {
352 padding: 10px 0 10px 14px;
353 color: var(--wpdm-gray-400);
354 font-size: 14px;
355 white-space: nowrap;
356 }
357
358 .wpdm-input-group input {
359 flex: 1;
360 padding: 10px 14px 10px 4px;
361 border: none;
362 background: transparent;
363 font-size: 14px;
364 font-weight: 500;
365 color: var(--wpdm-gray-800);
366 }
367
368 .wpdm-input-group input:focus {
369 outline: none;
370 }
371
372 /* Form Row (side by side) */
373 .wpdm-form-row {
374 display: flex;
375 gap: 16px;
376 margin-bottom: 24px;
377 }
378
379 .wpdm-form-row .wpdm-form-section {
380 flex: 1;
381 }
382
383 .wpdm-form-half {
384 flex: 1;
385 margin-bottom: 0;
386 }
387
388 /* Color Scheme Selector */
389 .wpdm-scheme-selector {
390 display: flex;
391 gap: 12px;
392 }
393
394 .wpdm-scheme-option {
395 flex: 1;
396 cursor: pointer;
397 }
398
399 .wpdm-scheme-option input {
400 position: absolute;
401 opacity: 0;
402 pointer-events: none;
403 }
404
405 .wpdm-scheme-card {
406 display: flex;
407 flex-direction: column;
408 align-items: center;
409 gap: 10px;
410 padding: 16px 12px;
411 background: #fff;
412 border: 1px solid var(--wpdm-gray-200);
413 border-radius: 6px;
414 transition: all 0.2s;
415 }
416
417 .wpdm-scheme-option:hover .wpdm-scheme-card {
418 border-color: var(--wpdm-gray-300);
419 }
420
421 .wpdm-scheme-option.selected .wpdm-scheme-card,
422 .wpdm-scheme-option input:checked + .wpdm-scheme-card {
423 border-color: var(--wpdm-primary);
424 background: var(--wpdm-primary-light);
425 }
426
427 .wpdm-scheme-preview {
428 width: 100%;
429 height: 60px;
430 border-radius: 4px;
431 overflow: hidden;
432 border: 1px solid var(--wpdm-gray-200);
433 }
434
435 .wpdm-scheme-light {
436 background: #ffffff;
437 }
438
439 .wpdm-scheme-light .wpdm-scheme-header {
440 height: 16px;
441 background: linear-gradient(90deg, #f1f5f9 0%, #e2e8f0 100%);
442 border-bottom: 1px solid #e2e8f0;
443 }
444
445 .wpdm-scheme-light .wpdm-scheme-content {
446 padding: 10px;
447 }
448
449 .wpdm-scheme-light .wpdm-scheme-line {
450 height: 8px;
451 background: linear-gradient(90deg, #e2e8f0 0%, #f1f5f9 100%);
452 border-radius: 4px;
453 margin-bottom: 8px;
454 }
455
456 .wpdm-scheme-light .wpdm-scheme-line.short {
457 width: 55%;
458 margin-bottom: 0;
459 }
460
461 .wpdm-scheme-dark {
462 background: #1e293b;
463 }
464
465 .wpdm-scheme-dark .wpdm-scheme-header {
466 height: 16px;
467 background: linear-gradient(90deg, #0f172a 0%, #1e293b 100%);
468 border-bottom: 1px solid #334155;
469 }
470
471 .wpdm-scheme-dark .wpdm-scheme-content {
472 padding: 10px;
473 }
474
475 .wpdm-scheme-dark .wpdm-scheme-line {
476 height: 8px;
477 background: linear-gradient(90deg, #334155 0%, #475569 100%);
478 border-radius: 4px;
479 margin-bottom: 8px;
480 }
481
482 .wpdm-scheme-dark .wpdm-scheme-line.short {
483 width: 55%;
484 margin-bottom: 0;
485 }
486
487 .wpdm-scheme-system {
488 display: flex;
489 }
490
491 .wpdm-scheme-half-light,
492 .wpdm-scheme-half-dark {
493 flex: 1;
494 }
495
496 .wpdm-scheme-half-light {
497 background: #ffffff;
498 }
499
500 .wpdm-scheme-half-light .wpdm-scheme-header {
501 height: 16px;
502 background: #f1f5f9;
503 border-bottom: 1px solid #e2e8f0;
504 }
505
506 .wpdm-scheme-half-light .wpdm-scheme-content {
507 padding: 8px;
508 }
509
510 .wpdm-scheme-half-light .wpdm-scheme-line {
511 height: 6px;
512 background: #e2e8f0;
513 border-radius: 3px;
514 }
515
516 .wpdm-scheme-half-dark {
517 background: #1e293b;
518 }
519
520 .wpdm-scheme-half-dark .wpdm-scheme-header {
521 height: 16px;
522 background: #0f172a;
523 border-bottom: 1px solid #334155;
524 }
525
526 .wpdm-scheme-half-dark .wpdm-scheme-content {
527 padding: 8px;
528 }
529
530 .wpdm-scheme-half-dark .wpdm-scheme-line {
531 height: 6px;
532 background: #334155;
533 border-radius: 3px;
534 }
535
536 .wpdm-scheme-label {
537 font-size: 14px;
538 font-weight: 700;
539 color: var(--wpdm-gray-700);
540 }
541
542 /* Dashboard Status - Clean bordered */
543 .wpdm-dashboard-status {
544 display: flex;
545 align-items: center;
546 gap: 14px;
547 padding: 16px;
548 background: #fff;
549 border: 1px solid var(--wpdm-gray-200);
550 border-radius: 6px;
551 }
552
553 .wpdm-dashboard-exists {
554 background: var(--wpdm-primary-light);
555 border-color: var(--wpdm-primary);
556 }
557
558 .wpdm-dashboard-icon {
559 width: 40px;
560 height: 40px;
561 border-radius: 8px;
562 display: flex;
563 align-items: center;
564 justify-content: center;
565 flex-shrink: 0;
566 background: var(--wpdm-primary);
567 color: #fff;
568 }
569
570 .wpdm-dashboard-icon.missing {
571 background: var(--wpdm-gray-100);
572 color: var(--wpdm-gray-500);
573 }
574
575 .wpdm-dashboard-icon svg {
576 width: 20px;
577 height: 20px;
578 }
579
580 .wpdm-dashboard-info {
581 flex: 1;
582 min-width: 0;
583 }
584
585 .wpdm-dashboard-title {
586 display: block;
587 font-size: 14px;
588 font-weight: 600;
589 color: var(--wpdm-gray-800);
590 margin-bottom: 2px;
591 }
592
593 .wpdm-dashboard-meta {
594 display: block;
595 font-size: 12px;
596 color: var(--wpdm-gray-500);
597 }
598
599 .wpdm-btn-small {
600 display: inline-flex;
601 align-items: center;
602 gap: 6px;
603 padding: 8px 14px;
604 font-size: 13px;
605 font-weight: 600;
606 background: #fff;
607 color: var(--wpdm-gray-700);
608 border: 1px solid var(--wpdm-gray-300);
609 border-radius: 4px;
610 cursor: pointer;
611 text-decoration: none;
612 transition: all 0.15s ease;
613 flex-shrink: 0;
614 }
615
616 .wpdm-btn-small:hover {
617 background: var(--wpdm-gray-50);
618 border-color: var(--wpdm-gray-400);
619 color: var(--wpdm-gray-800);
620 }
621
622 .wpdm-btn-small.wpdm-btn-create {
623 background: var(--wpdm-primary);
624 color: #fff;
625 border: none;
626 }
627
628 .wpdm-btn-small.wpdm-btn-create:hover {
629 background: var(--wpdm-primary-dark);
630 color: #fff;
631 }
632
633 .wpdm-btn-small.wpdm-btn-loading {
634 pointer-events: none;
635 opacity: 0.7;
636 }
637
638 /* Buttons - Clean flat design */
639 .wpdm-btn {
640 display: inline-flex;
641 align-items: center;
642 justify-content: center;
643 gap: 8px;
644 padding: 12px 24px;
645 font-size: 14px;
646 font-weight: 600;
647 border-radius: 6px;
648 cursor: pointer;
649 transition: all 0.15s ease;
650 text-decoration: none;
651 border: none;
652 }
653
654 .wpdm-btn-primary {
655 background: var(--wpdm-primary);
656 color: #fff;
657 }
658
659 .wpdm-btn-primary:hover {
660 background: var(--wpdm-primary-dark);
661 color: #fff;
662 }
663
664 .wpdm-btn-secondary {
665 background: #fff;
666 color: var(--wpdm-gray-700);
667 border: 1px solid var(--wpdm-gray-300);
668 }
669
670 .wpdm-btn-secondary:hover {
671 background: var(--wpdm-gray-50);
672 border-color: var(--wpdm-gray-400);
673 color: var(--wpdm-gray-800);
674 }
675
676 .wpdm-btn-success {
677 background: var(--wpdm-success);
678 color: #fff;
679 }
680
681 .wpdm-btn-success:hover {
682 background: #059669;
683 color: #fff;
684 }
685
686 .wpdm-btn svg {
687 width: 16px;
688 height: 16px;
689 }
690
691 .wpdm-card-actions {
692 display: flex;
693 justify-content: space-between;
694 align-items: center;
695 margin-top: 28px;
696 padding-top: 20px;
697 border-top: 1px solid var(--wpdm-gray-200);
698 }
699
700 /* Skip link */
701 .wpdm-skip-link {
702 color: var(--wpdm-gray-400);
703 font-size: 14px;
704 font-weight: 500;
705 text-decoration: none;
706 display: block;
707 text-align: center;
708 margin-top: 24px;
709 transition: all 0.2s;
710 }
711
712 .wpdm-skip-link:hover {
713 color: var(--wpdm-primary);
714 }
715
716 /* Welcome Step Features - Clean bordered cards */
717 .wpdm-features {
718 display: grid;
719 grid-template-columns: repeat(2, 1fr);
720 gap: 12px;
721 margin: 24px 0;
722 }
723
724 .wpdm-feature {
725 display: flex;
726 align-items: flex-start;
727 gap: 12px;
728 padding: 16px;
729 background: #fff;
730 border: 1px solid var(--wpdm-gray-200);
731 border-radius: 6px;
732 transition: border-color 0.15s ease;
733 }
734
735 .wpdm-feature:hover {
736 border-color: var(--wpdm-gray-300);
737 }
738
739 .wpdm-feature-icon {
740 width: 40px;
741 height: 40px;
742 border-radius: 8px;
743 display: flex;
744 align-items: center;
745 justify-content: center;
746 flex-shrink: 0;
747 }
748
749 .wpdm-feature-icon svg {
750 width: 20px;
751 height: 20px;
752 }
753
754 .wpdm-feature-icon.blue {
755 background: #eff6ff;
756 color: #2563eb;
757 }
758
759 .wpdm-feature-icon.green {
760 background: #ecfdf5;
761 color: #059669;
762 }
763
764 .wpdm-feature-icon.purple {
765 background: #f5f3ff;
766 color: #7c3aed;
767 }
768
769 .wpdm-feature-icon.orange {
770 background: #fff7ed;
771 color: #ea580c;
772 }
773
774 .wpdm-feature-title {
775 font-size: 14px;
776 font-weight: 600;
777 color: var(--wpdm-gray-800);
778 margin-bottom: 2px;
779 }
780
781 .wpdm-feature-desc {
782 font-size: 13px;
783 color: var(--wpdm-gray-500);
784 line-height: 1.4;
785 }
786
787 /* Success Step - Clean design */
788 .wpdm-success-icon {
789 width: 80px;
790 height: 80px;
791 background: var(--wpdm-primary-light);
792 border-radius: 50%;
793 display: flex;
794 align-items: center;
795 justify-content: center;
796 margin: 0 auto 24px;
797 border: 2px solid var(--wpdm-primary);
798 }
799
800 .wpdm-success-icon svg {
801 width: 40px;
802 height: 40px;
803 color: var(--wpdm-success);
804 }
805
806 .wpdm-success-title {
807 font-size: 24px;
808 font-weight: 700;
809 color: var(--wpdm-gray-900);
810 text-align: center;
811 margin-bottom: 8px;
812 }
813
814 .wpdm-success-subtitle {
815 font-size: 14px;
816 color: var(--wpdm-gray-500);
817 text-align: center;
818 margin-bottom: 28px;
819 line-height: 1.5;
820 }
821
822 /* Quick Actions - Clean bordered cards */
823 .wpdm-quick-actions {
824 display: grid;
825 grid-template-columns: repeat(2, 1fr);
826 gap: 12px;
827 }
828
829 .wpdm-quick-action {
830 display: flex;
831 align-items: center;
832 gap: 14px;
833 padding: 16px;
834 background: #fff;
835 border-radius: 6px;
836 text-decoration: none;
837 transition: border-color 0.15s ease;
838 border: 1px solid var(--wpdm-gray-200);
839 }
840
841 .wpdm-quick-action:hover {
842 border-color: var(--wpdm-primary);
843 }
844
845 .wpdm-quick-action-icon {
846 width: 44px;
847 height: 44px;
848 border-radius: 8px;
849 display: flex;
850 align-items: center;
851 justify-content: center;
852 flex-shrink: 0;
853 }
854
855 .wpdm-quick-action-icon svg {
856 width: 22px;
857 height: 22px;
858 }
859
860 .wpdm-quick-action-icon.blue {
861 background: #2563eb;
862 color: #fff;
863 }
864
865 .wpdm-quick-action-icon.green {
866 background: #059669;
867 color: #fff;
868 }
869
870 .wpdm-quick-action-icon.purple {
871 background: #7c3aed;
872 color: #fff;
873 }
874
875 .wpdm-quick-action-icon.orange {
876 background: #ea580c;
877 color: #fff;
878 }
879
880 .wpdm-quick-action-title {
881 font-size: 14px;
882 font-weight: 600;
883 color: var(--wpdm-gray-800);
884 margin-bottom: 2px;
885 }
886
887 .wpdm-quick-action-desc {
888 font-size: 12px;
889 color: var(--wpdm-gray-500);
890 }
891
892 /* Stats - Clean bordered cards */
893 .wpdm-stats {
894 display: flex;
895 gap: 12px;
896 margin-bottom: 24px;
897 }
898
899 .wpdm-stat {
900 flex: 1;
901 text-align: center;
902 padding: 20px 16px;
903 background: #fff;
904 border: 1px solid var(--wpdm-gray-200);
905 border-radius: 6px;
906 }
907
908 .wpdm-stat-value {
909 font-size: 28px;
910 font-weight: 700;
911 color: var(--wpdm-gray-900);
912 }
913
914 .wpdm-stat-label {
915 font-size: 12px;
916 font-weight: 500;
917 color: var(--wpdm-gray-500);
918 margin-top: 4px;
919 text-transform: uppercase;
920 letter-spacing: 0.3px;
921 }
922
923 /* User Type Selection - Clean bordered cards */
924 .wpdm-user-types {
925 display: grid;
926 grid-template-columns: repeat(2, 1fr);
927 gap: 12px;
928 margin-bottom: 24px;
929 }
930
931 .wpdm-user-type {
932 position: relative;
933 padding: 20px;
934 background: #fff;
935 border: 1px solid var(--wpdm-gray-200);
936 border-radius: 6px;
937 cursor: pointer;
938 transition: border-color 0.15s ease;
939 }
940
941 .wpdm-user-type:hover {
942 border-color: var(--wpdm-gray-300);
943 }
944
945 .wpdm-user-type.selected {
946 border-color: var(--wpdm-primary);
947 background: var(--wpdm-primary-light);
948 }
949
950 .wpdm-user-type input {
951 position: absolute;
952 opacity: 0;
953 pointer-events: none;
954 }
955
956 .wpdm-user-type-icon {
957 width: 44px;
958 height: 44px;
959 border-radius: 8px;
960 display: flex;
961 align-items: center;
962 justify-content: center;
963 margin-bottom: 12px;
964 }
965
966 .wpdm-user-type-icon svg {
967 width: 22px;
968 height: 22px;
969 }
970
971 .wpdm-user-type-icon.blue { background: #eff6ff; color: #2563eb; }
972 .wpdm-user-type-icon.green { background: #ecfdf5; color: #059669; }
973 .wpdm-user-type-icon.purple { background: #f5f3ff; color: #7c3aed; }
974 .wpdm-user-type-icon.orange { background: #fff7ed; color: #ea580c; }
975
976 .wpdm-user-type.selected .wpdm-user-type-icon.blue { background: #2563eb; color: #fff; }
977 .wpdm-user-type.selected .wpdm-user-type-icon.green { background: #059669; color: #fff; }
978 .wpdm-user-type.selected .wpdm-user-type-icon.purple { background: #7c3aed; color: #fff; }
979 .wpdm-user-type.selected .wpdm-user-type-icon.orange { background: #ea580c; color: #fff; }
980
981 .wpdm-user-type-title {
982 font-size: 15px;
983 font-weight: 600;
984 color: var(--wpdm-gray-800);
985 margin-bottom: 4px;
986 }
987
988 .wpdm-user-type-desc {
989 font-size: 13px;
990 color: var(--wpdm-gray-500);
991 line-height: 1.4;
992 }
993
994 .wpdm-user-type-check {
995 position: absolute;
996 top: 12px;
997 right: 12px;
998 width: 24px;
999 height: 24px;
1000 border-radius: 50%;
1001 background: var(--wpdm-primary);
1002 color: #fff;
1003 display: flex;
1004 align-items: center;
1005 justify-content: center;
1006 opacity: 0;
1007 transform: scale(0.5);
1008 transition: all 0.15s ease;
1009 }
1010
1011 .wpdm-user-type.selected .wpdm-user-type-check {
1012 opacity: 1;
1013 transform: scale(1);
1014 }
1015
1016 .wpdm-user-type-check svg {
1017 width: 14px;
1018 height: 14px;
1019 }
1020
1021 /* Recommended Add-ons */
1022 .wpdm-addons-section {
1023 margin-top: 24px;
1024 padding-top: 24px;
1025 border-top: 1px solid var(--wpdm-gray-200);
1026 overflow: hidden;
1027 }
1028
1029 .wpdm-addons-title {
1030 font-size: 15px;
1031 font-weight: 600;
1032 color: var(--wpdm-gray-800);
1033 margin-bottom: 6px;
1034 }
1035
1036 .wpdm-addons-subtitle {
1037 font-size: 13px;
1038 color: var(--wpdm-gray-500);
1039 margin-bottom: 16px;
1040 }
1041
1042 .wpdm-addons-grid {
1043 display: grid;
1044 grid-template-columns: repeat(2, 1fr);
1045 gap: 10px;
1046 }
1047
1048 .wpdm-addon-card {
1049 display: flex;
1050 align-items: center;
1051 gap: 10px;
1052 padding: 12px;
1053 background: #fff;
1054 border: 1px solid var(--wpdm-gray-200);
1055 border-radius: 6px;
1056 text-decoration: none;
1057 transition: border-color 0.15s ease;
1058 overflow: hidden;
1059 }
1060
1061 .wpdm-addon-card:hover {
1062 border-color: var(--wpdm-primary);
1063 }
1064
1065 .wpdm-addon-icon {
1066 width: 36px;
1067 height: 36px;
1068 border-radius: 8px;
1069 display: flex;
1070 align-items: center;
1071 justify-content: center;
1072 flex-shrink: 0;
1073 background: var(--wpdm-gray-100);
1074 color: var(--wpdm-gray-600);
1075 }
1076
1077 .wpdm-addon-icon svg {
1078 width: 18px;
1079 height: 18px;
1080 }
1081
1082 .wpdm-addon-icon.blue { background: #eff6ff; color: #2563eb; }
1083 .wpdm-addon-icon.green { background: #ecfdf5; color: #059669; }
1084 .wpdm-addon-icon.purple { background: #f5f3ff; color: #7c3aed; }
1085 .wpdm-addon-icon.orange { background: #fff7ed; color: #ea580c; }
1086 .wpdm-addon-icon.pink { background: #fdf2f8; color: #db2777; }
1087 .wpdm-addon-icon.cyan { background: #ecfeff; color: #0891b2; }
1088
1089 .wpdm-addon-info {
1090 flex: 1;
1091 min-width: 0;
1092 overflow: hidden;
1093 }
1094
1095 .wpdm-addon-name {
1096 font-size: 13px;
1097 font-weight: 600;
1098 color: var(--wpdm-gray-800);
1099 margin-bottom: 1px;
1100 white-space: nowrap;
1101 overflow: hidden;
1102 text-overflow: ellipsis;
1103 }
1104
1105 .wpdm-addon-desc {
1106 font-size: 11px;
1107 color: var(--wpdm-gray-500);
1108 white-space: nowrap;
1109 overflow: hidden;
1110 text-overflow: ellipsis;
1111 }
1112
1113 .wpdm-addon-badge {
1114 font-size: 10px;
1115 font-weight: 600;
1116 padding: 3px 6px;
1117 border-radius: 4px;
1118 background: var(--wpdm-primary-light);
1119 color: var(--wpdm-primary-dark);
1120 flex-shrink: 0;
1121 }
1122
1123 /* Pro Promo Section */
1124 .wpdm-pro-promo {
1125 margin-top: 28px;
1126 padding: 24px;
1127 background: linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 100%);
1128 border: 1px solid #bae6fd;
1129 border-radius: 8px;
1130 text-align: left;
1131 }
1132
1133 .wpdm-pro-promo-header {
1134 display: flex;
1135 align-items: center;
1136 gap: 12px;
1137 margin-bottom: 16px;
1138 }
1139
1140 .wpdm-pro-promo-icon {
1141 width: 44px;
1142 height: 44px;
1143 background: linear-gradient(135deg, #0ea5e9 0%, #0284c7 100%);
1144 border-radius: 10px;
1145 display: flex;
1146 align-items: center;
1147 justify-content: center;
1148 color: #fff;
1149 flex-shrink: 0;
1150 }
1151
1152 .wpdm-pro-promo-icon svg {
1153 width: 24px;
1154 height: 24px;
1155 }
1156
1157 .wpdm-pro-promo-title {
1158 font-size: 16px;
1159 font-weight: 700;
1160 color: #0c4a6e;
1161 margin: 0 0 2px;
1162 }
1163
1164 .wpdm-pro-promo-subtitle {
1165 font-size: 13px;
1166 color: #0369a1;
1167 margin: 0;
1168 }
1169
1170 .wpdm-pro-features {
1171 display: grid;
1172 grid-template-columns: repeat(2, 1fr);
1173 gap: 10px;
1174 margin-bottom: 20px;
1175 }
1176
1177 .wpdm-pro-feature {
1178 display: flex;
1179 align-items: center;
1180 gap: 8px;
1181 font-size: 13px;
1182 color: #0c4a6e;
1183 }
1184
1185 .wpdm-pro-feature svg {
1186 width: 16px;
1187 height: 16px;
1188 color: #0ea5e9;
1189 flex-shrink: 0;
1190 }
1191
1192 .wpdm-pro-cta {
1193 display: inline-flex;
1194 align-items: center;
1195 gap: 8px;
1196 padding: 10px 20px;
1197 background: linear-gradient(135deg, #0ea5e9 0%, #0284c7 100%);
1198 color: #fff;
1199 font-size: 14px;
1200 font-weight: 600;
1201 border-radius: 6px;
1202 text-decoration: none;
1203 transition: all 0.15s ease;
1204 }
1205
1206 .wpdm-pro-cta:hover {
1207 background: linear-gradient(135deg, #0284c7 0%, #0369a1 100%);
1208 color: #fff;
1209 }
1210
1211 .wpdm-pro-cta svg {
1212 width: 16px;
1213 height: 16px;
1214 }
1215
1216 @media (max-width: 768px) {
1217 .wpdm-pro-features {
1218 grid-template-columns: 1fr;
1219 }
1220 .wpdm-features,
1221 .wpdm-quick-actions,
1222 .wpdm-user-types,
1223 .wpdm-addons-grid {
1224 grid-template-columns: 1fr;
1225 }
1226
1227 .wpdm-card-body {
1228 padding: 32px 24px;
1229 }
1230
1231 .wpdm-stats {
1232 flex-direction: column;
1233 gap: 12px;
1234 }
1235
1236 .wpdm-form-row {
1237 flex-direction: column;
1238 gap: 0;
1239 }
1240
1241 .wpdm-form-half {
1242 margin-bottom: 24px;
1243 }
1244
1245 .wpdm-scheme-selector {
1246 flex-direction: column;
1247 gap: 12px;
1248 }
1249 }
1250 </style>
1251
1252 <div class="wpdm-onboarding">
1253 <div class="wpdm-onboarding-container">
1254
1255 <!-- Header -->
1256 <div class="wpdm-onboarding-header">
1257 <div class="wpdm-logo">
1258 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 327.3 327.3"><defs><style>.wpdm-logo-arrow{fill:#3c80e4;}.wpdm-logo-circle{fill:#094168;}</style></defs><path class="wpdm-logo-arrow" d="M149.87,180.29l-91.41-91A20,20,0,0,1,58.39,61L64,55.36a20,20,0,0,1,28.29-.07l71.52,71.18,71-71.7a20,20,0,0,1,28.29-.13l5.68,5.62a20,20,0,0,1,.14,28.29l-90.75,91.64A20,20,0,0,1,149.87,180.29Z"/><path class="wpdm-logo-circle" d="M186.66,202.9a32,32,0,0,1-45.29.16L97.58,159.48a78,78,0,1,0,132.49-.41Z"/></svg>
1259 </div>
1260 <h1><?php _e('Welcome to Download Manager', 'download-manager'); ?></h1>
1261 <p><?php _e('Let\'s get your download system set up in just a few steps', 'download-manager'); ?></p>
1262 </div>
1263
1264 <?php if ($current_step > 0 && $current_step < 5): ?>
1265 <!-- Progress Steps -->
1266 <div class="wpdm-progress">
1267 <div class="wpdm-progress-step <?php echo $current_step >= 1 ? ($current_step > 1 ? 'completed' : 'active') : ''; ?>">
1268 <div class="wpdm-progress-dot">
1269 <?php if ($current_step > 1): ?>
1270 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" width="16" height="16">
1271 <polyline points="20 6 9 17 4 12"/>
1272 </svg>
1273 <?php else: ?>
1274 1
1275 <?php endif; ?>
1276 </div>
1277 </div>
1278 <div class="wpdm-progress-step <?php echo $current_step >= 2 ? ($current_step > 2 ? 'completed' : 'active') : ''; ?>">
1279 <div class="wpdm-progress-line"></div>
1280 <div class="wpdm-progress-dot">
1281 <?php if ($current_step > 2): ?>
1282 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" width="16" height="16">
1283 <polyline points="20 6 9 17 4 12"/>
1284 </svg>
1285 <?php else: ?>
1286 2
1287 <?php endif; ?>
1288 </div>
1289 </div>
1290 <div class="wpdm-progress-step <?php echo $current_step >= 3 ? ($current_step > 3 ? 'completed' : 'active') : ''; ?>">
1291 <div class="wpdm-progress-line"></div>
1292 <div class="wpdm-progress-dot">
1293 <?php if ($current_step > 3): ?>
1294 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" width="16" height="16">
1295 <polyline points="20 6 9 17 4 12"/>
1296 </svg>
1297 <?php else: ?>
1298 3
1299 <?php endif; ?>
1300 </div>
1301 </div>
1302 <div class="wpdm-progress-step <?php echo $current_step >= 4 ? ($current_step > 4 ? 'completed' : 'active') : ''; ?>">
1303 <div class="wpdm-progress-line"></div>
1304 <div class="wpdm-progress-dot">
1305 <?php if ($current_step > 4): ?>
1306 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" width="16" height="16">
1307 <polyline points="20 6 9 17 4 12"/>
1308 </svg>
1309 <?php else: ?>
1310 4
1311 <?php endif; ?>
1312 </div>
1313 </div>
1314 </div>
1315 <?php endif; ?>
1316
1317 <!-- Card -->
1318 <div class="wpdm-onboarding-card">
1319 <?php if ($current_step === 1): ?>
1320 <!-- Step 1: Welcome -->
1321 <div class="wpdm-card-header">
1322 <h2 class="wpdm-card-title">
1323 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
1324 <circle cx="12" cy="12" r="10"/>
1325 <path d="M8 14s1.5 2 4 2 4-2 4-2"/>
1326 <line x1="9" y1="9" x2="9.01" y2="9"/>
1327 <line x1="15" y1="9" x2="15.01" y2="9"/>
1328 </svg>
1329 <?php _e('Welcome! Let\'s get started', 'download-manager'); ?>
1330 </h2>
1331 </div>
1332 <div class="wpdm-card-body">
1333 <p class="wpdm-card-subtitle"><?php _e('Download Manager helps you manage, track, and control file downloads on your WordPress site.', 'download-manager'); ?></p>
1334
1335 <div class="wpdm-features">
1336 <div class="wpdm-feature">
1337 <div class="wpdm-feature-icon blue">
1338 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
1339 <path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/>
1340 <polyline points="14 2 14 8 20 8"/>
1341 </svg>
1342 </div>
1343 <div>
1344 <div class="wpdm-feature-title"><?php _e('File Management', 'download-manager'); ?></div>
1345 <div class="wpdm-feature-desc"><?php _e('Upload and organize your files easily', 'download-manager'); ?></div>
1346 </div>
1347 </div>
1348 <div class="wpdm-feature">
1349 <div class="wpdm-feature-icon green">
1350 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
1351 <path d="M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z"/>
1352 </svg>
1353 </div>
1354 <div>
1355 <div class="wpdm-feature-title"><?php _e('Access Control', 'download-manager'); ?></div>
1356 <div class="wpdm-feature-desc"><?php _e('Control who can download your files', 'download-manager'); ?></div>
1357 </div>
1358 </div>
1359 <div class="wpdm-feature">
1360 <div class="wpdm-feature-icon purple">
1361 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
1362 <path d="M3 3v18h18"/>
1363 <path d="M18 17V9"/>
1364 <path d="M13 17V5"/>
1365 <path d="M8 17v-3"/>
1366 </svg>
1367 </div>
1368 <div>
1369 <div class="wpdm-feature-title"><?php _e('Download Analytics', 'download-manager'); ?></div>
1370 <div class="wpdm-feature-desc"><?php _e('Track downloads and user activity', 'download-manager'); ?></div>
1371 </div>
1372 </div>
1373 <div class="wpdm-feature">
1374 <div class="wpdm-feature-icon orange">
1375 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
1376 <rect x="3" y="3" width="18" height="18" rx="2" ry="2"/>
1377 <line x1="3" y1="9" x2="21" y2="9"/>
1378 <line x1="9" y1="21" x2="9" y2="9"/>
1379 </svg>
1380 </div>
1381 <div>
1382 <div class="wpdm-feature-title"><?php _e('Beautiful Templates', 'download-manager'); ?></div>
1383 <div class="wpdm-feature-desc"><?php _e('Display downloads with stunning designs', 'download-manager'); ?></div>
1384 </div>
1385 </div>
1386 </div>
1387
1388 <div class="wpdm-card-actions">
1389 <span></span>
1390 <a href="<?php echo admin_url('index.php?page=wpdm-welcome&step=2'); ?>" class="wpdm-btn wpdm-btn-primary">
1391 <?php _e('Get Started', 'download-manager'); ?>
1392 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
1393 <line x1="5" y1="12" x2="19" y2="12"/>
1394 <polyline points="12 5 19 12 12 19"/>
1395 </svg>
1396 </a>
1397 </div>
1398
1399 </div>
1400 <?php elseif ($current_step === 2): ?>
1401 <!-- Step 2: Basic Settings -->
1402 <div class="wpdm-card-header">
1403 <h2 class="wpdm-card-title">
1404 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
1405 <circle cx="12" cy="12" r="3"/>
1406 <path d="M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 0 1 0 2.83 2 2 0 0 1-2.83 0l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-2 2 2 2 0 0 1-2-2v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 0 1-2.83 0 2 2 0 0 1 0-2.83l.06-.06a1.65 1.65 0 0 0 .33-1.82 1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1-2-2 2 2 0 0 1 2-2h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 0 1 0-2.83 2 2 0 0 1 2.83 0l.06.06a1.65 1.65 0 0 0 1.82.33H9a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 2-2 2 2 0 0 1 2 2v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 0 1 2.83 0 2 2 0 0 1 0 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82V9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 2 2 2 2 0 0 1-2 2h-.09a1.65 1.65 0 0 0-1.51 1z"/>
1407 </svg>
1408 <?php _e('Configure Basic Settings', 'download-manager'); ?>
1409 </h2>
1410 </div>
1411 <div class="wpdm-card-body">
1412 <p class="wpdm-card-subtitle"><?php _e('Set up your URL structure, appearance, and user dashboard.', 'download-manager'); ?></p>
1413
1414 <form method="post">
1415 <?php wp_nonce_field('wpdm_setup'); ?>
1416 <input type="hidden" name="wpdm_setup_step" value="2">
1417
1418 <!-- URL Settings -->
1419 <div class="wpdm-form-row">
1420 <div class="wpdm-form-group wpdm-form-half">
1421 <label class="wpdm-form-label"><?php _e('Package URL Slug', 'download-manager'); ?></label>
1422 <div class="wpdm-input-group">
1423 <span class="wpdm-input-prefix"><?php echo esc_html(wp_parse_url(home_url(), PHP_URL_HOST)); ?>/</span>
1424 <input type="text" name="wpdm_purl_base" value="<?php echo esc_attr($purl_base); ?>" placeholder="download">
1425 </div>
1426 <p class="wpdm-form-hint"><?php _e('Base URL for download pages', 'download-manager'); ?></p>
1427 </div>
1428 <div class="wpdm-form-group wpdm-form-half">
1429 <label class="wpdm-form-label"><?php _e('Category URL Slug', 'download-manager'); ?></label>
1430 <div class="wpdm-input-group">
1431 <span class="wpdm-input-prefix"><?php echo esc_html(wp_parse_url(home_url(), PHP_URL_HOST)); ?>/</span>
1432 <input type="text" name="wpdm_curl_base" value="<?php echo esc_attr($curl_base); ?>" placeholder="download-category">
1433 </div>
1434 <p class="wpdm-form-hint"><?php _e('Base URL for category pages', 'download-manager'); ?></p>
1435 </div>
1436 </div>
1437
1438 <!-- Color Scheme -->
1439 <div class="wpdm-form-group">
1440 <label class="wpdm-form-label"><?php _e('Color Scheme', 'download-manager'); ?></label>
1441 <div class="wpdm-scheme-selector">
1442 <label class="wpdm-scheme-option <?php echo $color_scheme === 'light' ? 'selected' : ''; ?>">
1443 <input type="radio" name="wpdm_color_scheme" value="light" <?php checked($color_scheme, 'light'); ?>>
1444 <div class="wpdm-scheme-card">
1445 <div class="wpdm-scheme-preview wpdm-scheme-light">
1446 <div class="wpdm-scheme-header"></div>
1447 <div class="wpdm-scheme-content">
1448 <div class="wpdm-scheme-line"></div>
1449 <div class="wpdm-scheme-line short"></div>
1450 </div>
1451 </div>
1452 <span class="wpdm-scheme-label"><?php _e('Light', 'download-manager'); ?></span>
1453 </div>
1454 </label>
1455 <label class="wpdm-scheme-option <?php echo $color_scheme === 'dark' ? 'selected' : ''; ?>">
1456 <input type="radio" name="wpdm_color_scheme" value="dark" <?php checked($color_scheme, 'dark'); ?>>
1457 <div class="wpdm-scheme-card">
1458 <div class="wpdm-scheme-preview wpdm-scheme-dark">
1459 <div class="wpdm-scheme-header"></div>
1460 <div class="wpdm-scheme-content">
1461 <div class="wpdm-scheme-line"></div>
1462 <div class="wpdm-scheme-line short"></div>
1463 </div>
1464 </div>
1465 <span class="wpdm-scheme-label"><?php _e('Dark', 'download-manager'); ?></span>
1466 </div>
1467 </label>
1468 <label class="wpdm-scheme-option <?php echo $color_scheme === 'system' ? 'selected' : ''; ?>">
1469 <input type="radio" name="wpdm_color_scheme" value="system" <?php checked($color_scheme, 'system'); ?>>
1470 <div class="wpdm-scheme-card">
1471 <div class="wpdm-scheme-preview wpdm-scheme-system">
1472 <div class="wpdm-scheme-half-light">
1473 <div class="wpdm-scheme-header"></div>
1474 <div class="wpdm-scheme-content">
1475 <div class="wpdm-scheme-line"></div>
1476 </div>
1477 </div>
1478 <div class="wpdm-scheme-half-dark">
1479 <div class="wpdm-scheme-header"></div>
1480 <div class="wpdm-scheme-content">
1481 <div class="wpdm-scheme-line"></div>
1482 </div>
1483 </div>
1484 </div>
1485 <span class="wpdm-scheme-label"><?php _e('System', 'download-manager'); ?></span>
1486 </div>
1487 </label>
1488 </div>
1489 <p class="wpdm-form-hint"><?php _e('Choose how Download Manager appears on the frontend.', 'download-manager'); ?></p>
1490 </div>
1491
1492 <!-- Dashboard Page -->
1493 <div class="wpdm-form-group">
1494 <label class="wpdm-form-label"><?php _e('User Dashboard Page', 'download-manager'); ?></label>
1495 <?php if ($dashboard_page && get_post($dashboard_page)): ?>
1496 <div class="wpdm-dashboard-status wpdm-dashboard-exists">
1497 <div class="wpdm-dashboard-icon">
1498 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
1499 <path d="M22 11.08V12a10 10 0 1 1-5.93-9.14"/>
1500 <polyline points="22 4 12 14.01 9 11.01"/>
1501 </svg>
1502 </div>
1503 <div class="wpdm-dashboard-info">
1504 <span class="wpdm-dashboard-title"><?php echo esc_html(get_the_title($dashboard_page)); ?></span>
1505 <span class="wpdm-dashboard-meta"><?php _e('Dashboard page is ready', 'download-manager'); ?></span>
1506 </div>
1507 <a href="<?php echo esc_url(get_edit_post_link($dashboard_page)); ?>" class="wpdm-btn-small" target="_blank">
1508 <?php _e('Edit', 'download-manager'); ?>
1509 </a>
1510 </div>
1511 <?php else: ?>
1512 <div class="wpdm-dashboard-status wpdm-dashboard-missing" id="wpdm-dashboard-create">
1513 <div class="wpdm-dashboard-icon missing">
1514 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
1515 <rect x="3" y="3" width="18" height="18" rx="2" ry="2"/>
1516 <line x1="3" y1="9" x2="21" y2="9"/>
1517 <line x1="9" y1="21" x2="9" y2="9"/>
1518 </svg>
1519 </div>
1520 <div class="wpdm-dashboard-info">
1521 <span class="wpdm-dashboard-title"><?php _e('No dashboard page yet', 'download-manager'); ?></span>
1522 <span class="wpdm-dashboard-meta"><?php _e('Create a page with [wpdm_user_dashboard] shortcode', 'download-manager'); ?></span>
1523 </div>
1524 <button type="button" class="wpdm-btn-small wpdm-btn-create" id="wpdm-create-dashboard-btn">
1525 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" width="14" height="14">
1526 <line x1="12" y1="5" x2="12" y2="19"/>
1527 <line x1="5" y1="12" x2="19" y2="12"/>
1528 </svg>
1529 <?php _e('Create Page', 'download-manager'); ?>
1530 </button>
1531 </div>
1532 <div class="wpdm-dashboard-status wpdm-dashboard-exists" id="wpdm-dashboard-created" style="display: none;">
1533 <div class="wpdm-dashboard-icon">
1534 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
1535 <path d="M22 11.08V12a10 10 0 1 1-5.93-9.14"/>
1536 <polyline points="22 4 12 14.01 9 11.01"/>
1537 </svg>
1538 </div>
1539 <div class="wpdm-dashboard-info">
1540 <span class="wpdm-dashboard-title" id="wpdm-created-page-title"><?php _e('User Dashboard', 'download-manager'); ?></span>
1541 <span class="wpdm-dashboard-meta"><?php _e('Dashboard page created!', 'download-manager'); ?></span>
1542 </div>
1543 <a href="#" class="wpdm-btn-small" id="wpdm-edit-dashboard-link" target="_blank">
1544 <?php _e('Edit', 'download-manager'); ?>
1545 </a>
1546 </div>
1547 <?php endif; ?>
1548 <p class="wpdm-form-hint"><?php _e('Users can view their downloads, orders, and profile on this page.', 'download-manager'); ?></p>
1549 </div>
1550
1551 <div class="wpdm-card-actions">
1552 <a href="<?php echo admin_url('index.php?page=wpdm-welcome&step=1'); ?>" class="wpdm-btn wpdm-btn-secondary">
1553 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
1554 <line x1="19" y1="12" x2="5" y2="12"/>
1555 <polyline points="12 19 5 12 12 5"/>
1556 </svg>
1557 <?php _e('Back', 'download-manager'); ?>
1558 </a>
1559 <button type="submit" class="wpdm-btn wpdm-btn-primary">
1560 <?php _e('Continue', 'download-manager'); ?>
1561 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
1562 <line x1="5" y1="12" x2="19" y2="12"/>
1563 <polyline points="12 5 19 12 12 19"/>
1564 </svg>
1565 </button>
1566 </div>
1567 </form>
1568
1569 <script>
1570 // Color scheme selector
1571 document.querySelectorAll('.wpdm-scheme-option').forEach(function(option) {
1572 option.addEventListener('click', function() {
1573 document.querySelectorAll('.wpdm-scheme-option').forEach(function(o) {
1574 o.classList.remove('selected');
1575 });
1576 this.classList.add('selected');
1577 });
1578 });
1579
1580 // Create dashboard page
1581 var createBtn = document.getElementById('wpdm-create-dashboard-btn');
1582 if (createBtn) {
1583 createBtn.addEventListener('click', function() {
1584 var btn = this;
1585 var originalText = btn.innerHTML;
1586 btn.classList.add('wpdm-btn-loading');
1587 btn.innerHTML = '<?php _e('Creating...', 'download-manager'); ?>';
1588
1589 var formData = new FormData();
1590 formData.append('action', 'wpdm_create_dashboard_page');
1591 formData.append('_wpnonce', '<?php echo wp_create_nonce('wpdm_create_dashboard'); ?>');
1592
1593 fetch(ajaxurl, {
1594 method: 'POST',
1595 body: formData
1596 })
1597 .then(function(response) { return response.json(); })
1598 .then(function(data) {
1599 if (data.success) {
1600 document.getElementById('wpdm-dashboard-create').style.display = 'none';
1601 document.getElementById('wpdm-dashboard-created').style.display = 'flex';
1602 document.getElementById('wpdm-created-page-title').textContent = data.data.title;
1603 document.getElementById('wpdm-edit-dashboard-link').href = data.data.edit_url;
1604 } else {
1605 btn.classList.remove('wpdm-btn-loading');
1606 btn.innerHTML = originalText;
1607 alert(data.data || '<?php _e('Failed to create page', 'download-manager'); ?>');
1608 }
1609 })
1610 .catch(function() {
1611 btn.classList.remove('wpdm-btn-loading');
1612 btn.innerHTML = originalText;
1613 alert('<?php _e('Failed to create page', 'download-manager'); ?>');
1614 });
1615 });
1616 }
1617 </script>
1618
1619 </div>
1620 <?php elseif ($current_step === 3): ?>
1621 <!-- Step 3: Choose Your Focus -->
1622 <div class="wpdm-card-header">
1623 <h2 class="wpdm-card-title">
1624 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
1625 <path d="M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2"/>
1626 <circle cx="9" cy="7" r="4"/>
1627 <path d="M23 21v-2a4 4 0 0 0-3-3.87"/>
1628 <path d="M16 3.13a4 4 0 0 1 0 7.75"/>
1629 </svg>
1630 <?php _e('How will you use Download Manager?', 'download-manager'); ?>
1631 </h2>
1632 </div>
1633 <div class="wpdm-card-body">
1634 <p class="wpdm-card-subtitle"><?php _e('Select your primary use case to get personalized add-on recommendations.', 'download-manager'); ?></p>
1635
1636 <form method="post" id="wpdm-user-type-form">
1637 <?php wp_nonce_field('wpdm_setup'); ?>
1638 <input type="hidden" name="wpdm_setup_step" value="3">
1639 <input type="hidden" name="wpdm_user_type" id="wpdm_user_type" value="content_creator">
1640
1641 <div class="wpdm-user-types">
1642 <!-- Content Creator -->
1643 <label class="wpdm-user-type selected" data-type="content_creator">
1644 <input type="radio" name="user_type_radio" value="content_creator" checked>
1645 <div class="wpdm-user-type-icon blue">
1646 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
1647 <path d="M12 19l7-7 3 3-7 7-3-3z"/>
1648 <path d="M18 13l-1.5-7.5L2 2l3.5 14.5L13 18l5-5z"/>
1649 <path d="M2 2l7.586 7.586"/>
1650 <circle cx="11" cy="11" r="2"/>
1651 </svg>
1652 </div>
1653 <div class="wpdm-user-type-title"><?php _e('Content Creator', 'download-manager'); ?></div>
1654 <div class="wpdm-user-type-desc"><?php _e('Share documents, PDFs, media files with your audience', 'download-manager'); ?></div>
1655 <div class="wpdm-user-type-check">
1656 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3">
1657 <polyline points="20 6 9 17 4 12"/>
1658 </svg>
1659 </div>
1660 </label>
1661
1662 <!-- Digital Seller -->
1663 <label class="wpdm-user-type" data-type="digital_seller">
1664 <input type="radio" name="user_type_radio" value="digital_seller">
1665 <div class="wpdm-user-type-icon green">
1666 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
1667 <circle cx="9" cy="21" r="1"/>
1668 <circle cx="20" cy="21" r="1"/>
1669 <path d="M1 1h4l2.68 13.39a2 2 0 0 0 2 1.61h9.72a2 2 0 0 0 2-1.61L23 6H6"/>
1670 </svg>
1671 </div>
1672 <div class="wpdm-user-type-title"><?php _e('Digital Seller', 'download-manager'); ?></div>
1673 <div class="wpdm-user-type-desc"><?php _e('Sell software, ebooks, music, or digital products', 'download-manager'); ?></div>
1674 <div class="wpdm-user-type-check">
1675 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3">
1676 <polyline points="20 6 9 17 4 12"/>
1677 </svg>
1678 </div>
1679 </label>
1680
1681 <!-- Developer -->
1682 <label class="wpdm-user-type" data-type="developer">
1683 <input type="radio" name="user_type_radio" value="developer">
1684 <div class="wpdm-user-type-icon purple">
1685 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
1686 <polyline points="16 18 22 12 16 6"/>
1687 <polyline points="8 6 2 12 8 18"/>
1688 </svg>
1689 </div>
1690 <div class="wpdm-user-type-title"><?php _e('Developer', 'download-manager'); ?></div>
1691 <div class="wpdm-user-type-desc"><?php _e('Integrate downloads via API, shortcodes, or custom code', 'download-manager'); ?></div>
1692 <div class="wpdm-user-type-check">
1693 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3">
1694 <polyline points="20 6 9 17 4 12"/>
1695 </svg>
1696 </div>
1697 </label>
1698
1699 <!-- Page Builder User -->
1700 <label class="wpdm-user-type" data-type="page_builder">
1701 <input type="radio" name="user_type_radio" value="page_builder">
1702 <div class="wpdm-user-type-icon orange">
1703 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
1704 <rect x="3" y="3" width="18" height="18" rx="2" ry="2"/>
1705 <line x1="3" y1="9" x2="21" y2="9"/>
1706 <line x1="9" y1="21" x2="9" y2="9"/>
1707 </svg>
1708 </div>
1709 <div class="wpdm-user-type-title"><?php _e('Page Builder User', 'download-manager'); ?></div>
1710 <div class="wpdm-user-type-desc"><?php _e('Use Elementor, Gutenberg, or other page builders', 'download-manager'); ?></div>
1711 <div class="wpdm-user-type-check">
1712 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3">
1713 <polyline points="20 6 9 17 4 12"/>
1714 </svg>
1715 </div>
1716 </label>
1717 </div>
1718
1719 <!-- Recommended Add-ons Section -->
1720 <div class="wpdm-addons-section">
1721 <h3 class="wpdm-addons-title"><?php _e('Recommended Free Add-ons', 'download-manager'); ?></h3>
1722 <p class="wpdm-addons-subtitle"><?php _e('Based on your selection, these add-ons will enhance your experience.', 'download-manager'); ?></p>
1723
1724 <!-- Content Creator Add-ons -->
1725 <div class="wpdm-addons-grid" id="addons-content_creator">
1726 <a href="https://www.wpdownloadmanager.com/download/gutenberg-blocks/" target="_blank" class="wpdm-addon-card">
1727 <div class="wpdm-addon-icon blue">
1728 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
1729 <rect x="3" y="3" width="7" height="7"/><rect x="14" y="3" width="7" height="7"/>
1730 <rect x="14" y="14" width="7" height="7"/><rect x="3" y="14" width="7" height="7"/>
1731 </svg>
1732 </div>
1733 <div class="wpdm-addon-info">
1734 <div class="wpdm-addon-name"><?php _e('Gutenberg Blocks', 'download-manager'); ?></div>
1735 <div class="wpdm-addon-desc"><?php _e('Add downloads using block editor', 'download-manager'); ?></div>
1736 </div>
1737 <span class="wpdm-addon-badge"><?php _e('Free', 'download-manager'); ?></span>
1738 </a>
1739 <a href="https://www.wpdownloadmanager.com/download/wpdm-button-templates/" target="_blank" class="wpdm-addon-card">
1740 <div class="wpdm-addon-icon purple">
1741 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
1742 <rect x="3" y="8" width="18" height="8" rx="2"/>
1743 </svg>
1744 </div>
1745 <div class="wpdm-addon-info">
1746 <div class="wpdm-addon-name"><?php _e('Button Templates', 'download-manager'); ?></div>
1747 <div class="wpdm-addon-desc"><?php _e('Beautiful download button designs', 'download-manager'); ?></div>
1748 </div>
1749 <span class="wpdm-addon-badge"><?php _e('Free', 'download-manager'); ?></span>
1750 </a>
1751 <a href="https://www.wpdownloadmanager.com/download/wpdm-page-templates/" target="_blank" class="wpdm-addon-card">
1752 <div class="wpdm-addon-icon green">
1753 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
1754 <path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/>
1755 <polyline points="14 2 14 8 20 8"/>
1756 </svg>
1757 </div>
1758 <div class="wpdm-addon-info">
1759 <div class="wpdm-addon-name"><?php _e('Page Templates', 'download-manager'); ?></div>
1760 <div class="wpdm-addon-desc"><?php _e('Pre-designed download page layouts', 'download-manager'); ?></div>
1761 </div>
1762 <span class="wpdm-addon-badge"><?php _e('Free', 'download-manager'); ?></span>
1763 </a>
1764 <a href="https://www.wpdownloadmanager.com/download/google-drive-explorer/" target="_blank" class="wpdm-addon-card">
1765 <div class="wpdm-addon-icon cyan">
1766 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
1767 <path d="M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z"/>
1768 </svg>
1769 </div>
1770 <div class="wpdm-addon-info">
1771 <div class="wpdm-addon-name"><?php _e('Google Drive', 'download-manager'); ?></div>
1772 <div class="wpdm-addon-desc"><?php _e('Host files on Google Drive', 'download-manager'); ?></div>
1773 </div>
1774 <span class="wpdm-addon-badge"><?php _e('Free', 'download-manager'); ?></span>
1775 </a>
1776 </div>
1777
1778 <!-- Digital Seller Add-ons -->
1779 <div class="wpdm-addons-grid" id="addons-digital_seller" style="display: none;">
1780 <a href="https://www.wpdownloadmanager.com/download/premium-package-wordpress-digital-store-solution/" target="_blank" class="wpdm-addon-card">
1781 <div class="wpdm-addon-icon green">
1782 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
1783 <line x1="12" y1="1" x2="12" y2="23"/><path d="M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6"/>
1784 </svg>
1785 </div>
1786 <div class="wpdm-addon-info">
1787 <div class="wpdm-addon-name"><?php _e('Premium Package', 'download-manager'); ?></div>
1788 <div class="wpdm-addon-desc"><?php _e('Complete e-commerce solution', 'download-manager'); ?></div>
1789 </div>
1790 <span class="wpdm-addon-badge"><?php _e('Free', 'download-manager'); ?></span>
1791 </a>
1792 <a href="https://www.wpdownloadmanager.com/download/advanced-sales-report/" target="_blank" class="wpdm-addon-card">
1793 <div class="wpdm-addon-icon blue">
1794 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
1795 <path d="M3 3v18h18"/><path d="M18 17V9"/><path d="M13 17V5"/><path d="M8 17v-3"/>
1796 </svg>
1797 </div>
1798 <div class="wpdm-addon-info">
1799 <div class="wpdm-addon-name"><?php _e('Sales Report', 'download-manager'); ?></div>
1800 <div class="wpdm-addon-desc"><?php _e('Advanced sales analytics', 'download-manager'); ?></div>
1801 </div>
1802 <span class="wpdm-addon-badge"><?php _e('Free', 'download-manager'); ?></span>
1803 </a>
1804 <a href="https://www.wpdownloadmanager.com/download/google-tags-for-wordpress-download-manager/" target="_blank" class="wpdm-addon-card">
1805 <div class="wpdm-addon-icon orange">
1806 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
1807 <path d="M20.59 13.41l-7.17 7.17a2 2 0 0 1-2.83 0L2 12V2h10l8.59 8.59a2 2 0 0 1 0 2.82z"/>
1808 <line x1="7" y1="7" x2="7.01" y2="7"/>
1809 </svg>
1810 </div>
1811 <div class="wpdm-addon-info">
1812 <div class="wpdm-addon-name"><?php _e('Google Tags', 'download-manager'); ?></div>
1813 <div class="wpdm-addon-desc"><?php _e('Track conversions with GTM', 'download-manager'); ?></div>
1814 </div>
1815 <span class="wpdm-addon-badge"><?php _e('Free', 'download-manager'); ?></span>
1816 </a>
1817 <a href="https://www.wpdownloadmanager.com/download/gutenberg-blocks/" target="_blank" class="wpdm-addon-card">
1818 <div class="wpdm-addon-icon purple">
1819 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
1820 <rect x="3" y="3" width="7" height="7"/><rect x="14" y="3" width="7" height="7"/>
1821 <rect x="14" y="14" width="7" height="7"/><rect x="3" y="14" width="7" height="7"/>
1822 </svg>
1823 </div>
1824 <div class="wpdm-addon-info">
1825 <div class="wpdm-addon-name"><?php _e('Gutenberg Blocks', 'download-manager'); ?></div>
1826 <div class="wpdm-addon-desc"><?php _e('Add downloads using block editor', 'download-manager'); ?></div>
1827 </div>
1828 <span class="wpdm-addon-badge"><?php _e('Free', 'download-manager'); ?></span>
1829 </a>
1830 </div>
1831
1832 <!-- Developer Add-ons -->
1833 <div class="wpdm-addons-grid" id="addons-developer" style="display: none;">
1834 <a href="https://www.wpdownloadmanager.com/download/wpdm-api/" target="_blank" class="wpdm-addon-card">
1835 <div class="wpdm-addon-icon purple">
1836 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
1837 <polyline points="16 18 22 12 16 6"/><polyline points="8 6 2 12 8 18"/>
1838 </svg>
1839 </div>
1840 <div class="wpdm-addon-info">
1841 <div class="wpdm-addon-name"><?php _e('REST API', 'download-manager'); ?></div>
1842 <div class="wpdm-addon-desc"><?php _e('Full REST API for integration', 'download-manager'); ?></div>
1843 </div>
1844 <span class="wpdm-addon-badge"><?php _e('Free', 'download-manager'); ?></span>
1845 </a>
1846 <a href="https://www.wpdownloadmanager.com/download/wpdm-extended-short-codes/" target="_blank" class="wpdm-addon-card">
1847 <div class="wpdm-addon-icon blue">
1848 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
1849 <path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/>
1850 <polyline points="14 2 14 8 20 8"/><line x1="16" y1="13" x2="8" y2="13"/>
1851 <line x1="16" y1="17" x2="8" y2="17"/><polyline points="10 9 9 9 8 9"/>
1852 </svg>
1853 </div>
1854 <div class="wpdm-addon-info">
1855 <div class="wpdm-addon-name"><?php _e('Extended Shortcodes', 'download-manager'); ?></div>
1856 <div class="wpdm-addon-desc"><?php _e('Advanced shortcode options', 'download-manager'); ?></div>
1857 </div>
1858 <span class="wpdm-addon-badge"><?php _e('Free', 'download-manager'); ?></span>
1859 </a>
1860 <a href="https://www.wpdownloadmanager.com/download/gutenberg-blocks/" target="_blank" class="wpdm-addon-card">
1861 <div class="wpdm-addon-icon green">
1862 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
1863 <rect x="3" y="3" width="7" height="7"/><rect x="14" y="3" width="7" height="7"/>
1864 <rect x="14" y="14" width="7" height="7"/><rect x="3" y="14" width="7" height="7"/>
1865 </svg>
1866 </div>
1867 <div class="wpdm-addon-info">
1868 <div class="wpdm-addon-name"><?php _e('Gutenberg Blocks', 'download-manager'); ?></div>
1869 <div class="wpdm-addon-desc"><?php _e('Block editor components', 'download-manager'); ?></div>
1870 </div>
1871 <span class="wpdm-addon-badge"><?php _e('Free', 'download-manager'); ?></span>
1872 </a>
1873 <a href="https://www.wpdownloadmanager.com/download/advanced-tinymce-button/" target="_blank" class="wpdm-addon-card">
1874 <div class="wpdm-addon-icon orange">
1875 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
1876 <path d="M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7"/>
1877 <path d="M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z"/>
1878 </svg>
1879 </div>
1880 <div class="wpdm-addon-info">
1881 <div class="wpdm-addon-name"><?php _e('TinyMCE Button', 'download-manager'); ?></div>
1882 <div class="wpdm-addon-desc"><?php _e('Classic editor integration', 'download-manager'); ?></div>
1883 </div>
1884 <span class="wpdm-addon-badge"><?php _e('Free', 'download-manager'); ?></span>
1885 </a>
1886 </div>
1887
1888 <!-- Page Builder Add-ons -->
1889 <div class="wpdm-addons-grid" id="addons-page_builder" style="display: none;">
1890 <a href="https://www.wpdownloadmanager.com/download/download-manager-addons-for-elementor/" target="_blank" class="wpdm-addon-card">
1891 <div class="wpdm-addon-icon pink">
1892 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
1893 <rect x="3" y="3" width="18" height="18" rx="2" ry="2"/>
1894 <line x1="3" y1="9" x2="21" y2="9"/><line x1="9" y1="21" x2="9" y2="9"/>
1895 </svg>
1896 </div>
1897 <div class="wpdm-addon-info">
1898 <div class="wpdm-addon-name"><?php _e('Elementor Widgets', 'download-manager'); ?></div>
1899 <div class="wpdm-addon-desc"><?php _e('Native Elementor integration', 'download-manager'); ?></div>
1900 </div>
1901 <span class="wpdm-addon-badge"><?php _e('Free', 'download-manager'); ?></span>
1902 </a>
1903 <a href="https://www.wpdownloadmanager.com/download/gutenberg-blocks/" target="_blank" class="wpdm-addon-card">
1904 <div class="wpdm-addon-icon blue">
1905 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
1906 <rect x="3" y="3" width="7" height="7"/><rect x="14" y="3" width="7" height="7"/>
1907 <rect x="14" y="14" width="7" height="7"/><rect x="3" y="14" width="7" height="7"/>
1908 </svg>
1909 </div>
1910 <div class="wpdm-addon-info">
1911 <div class="wpdm-addon-name"><?php _e('Gutenberg Blocks', 'download-manager'); ?></div>
1912 <div class="wpdm-addon-desc"><?php _e('Native block editor support', 'download-manager'); ?></div>
1913 </div>
1914 <span class="wpdm-addon-badge"><?php _e('Free', 'download-manager'); ?></span>
1915 </a>
1916 <a href="https://www.wpdownloadmanager.com/download/wpdm-button-templates/" target="_blank" class="wpdm-addon-card">
1917 <div class="wpdm-addon-icon purple">
1918 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
1919 <rect x="3" y="8" width="18" height="8" rx="2"/>
1920 </svg>
1921 </div>
1922 <div class="wpdm-addon-info">
1923 <div class="wpdm-addon-name"><?php _e('Button Templates', 'download-manager'); ?></div>
1924 <div class="wpdm-addon-desc"><?php _e('Styled download buttons', 'download-manager'); ?></div>
1925 </div>
1926 <span class="wpdm-addon-badge"><?php _e('Free', 'download-manager'); ?></span>
1927 </a>
1928 <a href="https://www.wpdownloadmanager.com/download/wpdm-page-templates/" target="_blank" class="wpdm-addon-card">
1929 <div class="wpdm-addon-icon green">
1930 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
1931 <path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/>
1932 <polyline points="14 2 14 8 20 8"/>
1933 </svg>
1934 </div>
1935 <div class="wpdm-addon-info">
1936 <div class="wpdm-addon-name"><?php _e('Page Templates', 'download-manager'); ?></div>
1937 <div class="wpdm-addon-desc"><?php _e('Pre-designed layouts', 'download-manager'); ?></div>
1938 </div>
1939 <span class="wpdm-addon-badge"><?php _e('Free', 'download-manager'); ?></span>
1940 </a>
1941 </div>
1942 </div>
1943
1944 <div class="wpdm-card-actions">
1945 <a href="<?php echo admin_url('index.php?page=wpdm-welcome&step=2'); ?>" class="wpdm-btn wpdm-btn-secondary">
1946 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
1947 <line x1="19" y1="12" x2="5" y2="12"/>
1948 <polyline points="12 19 5 12 12 5"/>
1949 </svg>
1950 <?php _e('Back', 'download-manager'); ?>
1951 </a>
1952 <button type="submit" class="wpdm-btn wpdm-btn-primary">
1953 <?php _e('Continue', 'download-manager'); ?>
1954 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
1955 <line x1="5" y1="12" x2="19" y2="12"/>
1956 <polyline points="12 5 19 12 12 19"/>
1957 </svg>
1958 </button>
1959 </div>
1960 </form>
1961
1962 <script>
1963 document.querySelectorAll('.wpdm-user-type').forEach(function(card) {
1964 card.addEventListener('click', function() {
1965 // Remove selected from all
1966 document.querySelectorAll('.wpdm-user-type').forEach(function(c) {
1967 c.classList.remove('selected');
1968 });
1969 // Add selected to clicked
1970 this.classList.add('selected');
1971 // Update hidden input
1972 document.getElementById('wpdm_user_type').value = this.dataset.type;
1973 // Show corresponding add-ons
1974 document.querySelectorAll('.wpdm-addons-grid').forEach(function(grid) {
1975 grid.style.display = 'none';
1976 });
1977 document.getElementById('addons-' + this.dataset.type).style.display = 'grid';
1978 });
1979 });
1980 </script>
1981
1982 </div>
1983 <?php elseif ($current_step === 4): ?>
1984 <!-- Step 4: Create First Package -->
1985 <div class="wpdm-card-header">
1986 <h2 class="wpdm-card-title">
1987 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
1988 <path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/>
1989 <polyline points="14 2 14 8 20 8"/>
1990 <line x1="12" y1="18" x2="12" y2="12"/>
1991 <line x1="9" y1="15" x2="15" y2="15"/>
1992 </svg>
1993 <?php _e('Create Your First Download', 'download-manager'); ?>
1994 </h2>
1995 </div>
1996 <div class="wpdm-card-body">
1997 <p class="wpdm-card-subtitle"><?php _e('You\'re all set! Create your first download package or explore the dashboard.', 'download-manager'); ?></p>
1998
1999 <div class="wpdm-quick-actions" style="margin-bottom: 24px;">
2000 <a href="<?php echo admin_url('post-new.php?post_type=wpdmpro'); ?>" class="wpdm-quick-action">
2001 <div class="wpdm-quick-action-icon blue">
2002 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
2003 <line x1="12" y1="5" x2="12" y2="19"/>
2004 <line x1="5" y1="12" x2="19" y2="12"/>
2005 </svg>
2006 </div>
2007 <div>
2008 <div class="wpdm-quick-action-title"><?php _e('Create Package', 'download-manager'); ?></div>
2009 <div class="wpdm-quick-action-desc"><?php _e('Add your first downloadable file', 'download-manager'); ?></div>
2010 </div>
2011 </a>
2012 <a href="<?php echo admin_url('edit.php?post_type=wpdmpro&page=settings'); ?>" class="wpdm-quick-action">
2013 <div class="wpdm-quick-action-icon purple">
2014 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
2015 <circle cx="12" cy="12" r="3"/>
2016 <path d="M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 0 1 0 2.83 2 2 0 0 1-2.83 0l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-2 2 2 2 0 0 1-2-2v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 0 1-2.83 0 2 2 0 0 1 0-2.83l.06-.06a1.65 1.65 0 0 0 .33-1.82 1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1-2-2 2 2 0 0 1 2-2h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 0 1 0-2.83 2 2 0 0 1 2.83 0l.06.06a1.65 1.65 0 0 0 1.82.33H9a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 2-2 2 2 0 0 1 2 2v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 0 1 2.83 0 2 2 0 0 1 0 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82V9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 2 2 2 2 0 0 1-2 2h-.09a1.65 1.65 0 0 0-1.51 1z"/>
2017 </svg>
2018 </div>
2019 <div>
2020 <div class="wpdm-quick-action-title"><?php _e('More Settings', 'download-manager'); ?></div>
2021 <div class="wpdm-quick-action-desc"><?php _e('Configure advanced options', 'download-manager'); ?></div>
2022 </div>
2023 </a>
2024 </div>
2025
2026 <form method="post">
2027 <?php wp_nonce_field('wpdm_setup'); ?>
2028 <input type="hidden" name="wpdm_setup_step" value="4">
2029
2030 <div class="wpdm-card-actions">
2031 <a href="<?php echo admin_url('index.php?page=wpdm-welcome&step=3'); ?>" class="wpdm-btn wpdm-btn-secondary">
2032 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
2033 <line x1="19" y1="12" x2="5" y2="12"/>
2034 <polyline points="12 19 5 12 12 5"/>
2035 </svg>
2036 <?php _e('Back', 'download-manager'); ?>
2037 </a>
2038 <button type="submit" class="wpdm-btn wpdm-btn-success">
2039 <?php _e('Complete Setup', 'download-manager'); ?>
2040 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
2041 <polyline points="20 6 9 17 4 12"/>
2042 </svg>
2043 </button>
2044 </div>
2045 </form>
2046
2047 </div>
2048 <?php elseif ($current_step === 5): ?>
2049 <!-- Step 5: Success -->
2050 <div class="wpdm-card-body" style="text-align: center; padding: 40px 24px;">
2051 <div class="wpdm-success-icon">
2052 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
2053 <polyline points="20 6 9 17 4 12"/>
2054 </svg>
2055 </div>
2056 <h2 class="wpdm-success-title"><?php _e('You\'re All Set!', 'download-manager'); ?></h2>
2057 <p class="wpdm-success-subtitle"><?php _e('Download Manager is ready to use. Here are some quick actions to get started.', 'download-manager'); ?></p>
2058
2059 <div class="wpdm-quick-actions">
2060 <a href="<?php echo admin_url('post-new.php?post_type=wpdmpro'); ?>" class="wpdm-quick-action">
2061 <div class="wpdm-quick-action-icon blue">
2062 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
2063 <line x1="12" y1="5" x2="12" y2="19"/>
2064 <line x1="5" y1="12" x2="19" y2="12"/>
2065 </svg>
2066 </div>
2067 <div>
2068 <div class="wpdm-quick-action-title"><?php _e('Add New File', 'download-manager'); ?></div>
2069 <div class="wpdm-quick-action-desc"><?php _e('Create your first download', 'download-manager'); ?></div>
2070 </div>
2071 </a>
2072 <a href="<?php echo admin_url('edit.php?post_type=wpdmpro'); ?>" class="wpdm-quick-action">
2073 <div class="wpdm-quick-action-icon green">
2074 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
2075 <rect x="3" y="3" width="7" height="7"/>
2076 <rect x="14" y="3" width="7" height="7"/>
2077 <rect x="14" y="14" width="7" height="7"/>
2078 <rect x="3" y="14" width="7" height="7"/>
2079 </svg>
2080 </div>
2081 <div>
2082 <div class="wpdm-quick-action-title"><?php _e('All Files', 'download-manager'); ?></div>
2083 <div class="wpdm-quick-action-desc"><?php _e('View and manage downloads', 'download-manager'); ?></div>
2084 </div>
2085 </a>
2086 <a href="<?php echo admin_url('edit.php?post_type=wpdmpro&page=settings'); ?>" class="wpdm-quick-action">
2087 <div class="wpdm-quick-action-icon purple">
2088 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
2089 <circle cx="12" cy="12" r="3"/>
2090 <path d="M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 0 1 0 2.83 2 2 0 0 1-2.83 0l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-2 2 2 2 0 0 1-2-2v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 0 1-2.83 0 2 2 0 0 1 0-2.83l.06-.06a1.65 1.65 0 0 0 .33-1.82 1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1-2-2 2 2 0 0 1 2-2h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 0 1 0-2.83 2 2 0 0 1 2.83 0l.06.06a1.65 1.65 0 0 0 1.82.33H9a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 2-2 2 2 0 0 1 2 2v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 0 1 2.83 0 2 2 0 0 1 0 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82V9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 2 2 2 2 0 0 1-2 2h-.09a1.65 1.65 0 0 0-1.51 1z"/>
2091 </svg>
2092 </div>
2093 <div>
2094 <div class="wpdm-quick-action-title"><?php _e('Settings', 'download-manager'); ?></div>
2095 <div class="wpdm-quick-action-desc"><?php _e('Configure plugin options', 'download-manager'); ?></div>
2096 </div>
2097 </a>
2098 <a href="https://www.wpdownloadmanager.com/docs/" target="_blank" class="wpdm-quick-action">
2099 <div class="wpdm-quick-action-icon orange">
2100 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
2101 <path d="M4 19.5A2.5 2.5 0 0 1 6.5 17H20"/>
2102 <path d="M6.5 2H20v20H6.5A2.5 2.5 0 0 1 4 19.5v-15A2.5 2.5 0 0 1 6.5 2z"/>
2103 </svg>
2104 </div>
2105 <div>
2106 <div class="wpdm-quick-action-title"><?php _e('Documentation', 'download-manager'); ?></div>
2107 <div class="wpdm-quick-action-desc"><?php _e('Learn how to use WPDM', 'download-manager'); ?></div>
2108 </div>
2109 </a>
2110 </div>
2111
2112 <p style="margin-top: 24px;">
2113 <a href="<?php echo esc_url(admin_url('index.php?page=wpdm-welcome&reset_setup=1')); ?>" style="color: #6b7280; text-decoration: none; font-size: 13px;">
2114 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" style="width: 14px; height: 14px; vertical-align: middle; margin-right: 4px;">
2115 <path d="M1 4v6h6"/><path d="M23 20v-6h-6"/><path d="M20.49 9A9 9 0 0 0 5.64 5.64L1 10m22 4l-4.64 4.36A9 9 0 0 1 3.51 15"/>
2116 </svg>
2117 <?php _e('Restart Setup Wizard', 'download-manager'); ?>
2118 </a>
2119 </p>
2120
2121 <!-- Pro Promo -->
2122 <div class="wpdm-pro-promo">
2123 <div class="wpdm-pro-promo-header">
2124 <div class="wpdm-pro-promo-icon">
2125 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
2126 <polygon points="12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2"/>
2127 </svg>
2128 </div>
2129 <div>
2130 <h3 class="wpdm-pro-promo-title"><?php _e('Unlock More with Pro', 'download-manager'); ?></h3>
2131 <p class="wpdm-pro-promo-subtitle"><?php _e('Take your downloads to the next level', 'download-manager'); ?></p>
2132 </div>
2133 </div>
2134 <div class="wpdm-pro-features">
2135 <div class="wpdm-pro-feature">
2136 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
2137 <polyline points="20 6 9 17 4 12"/>
2138 </svg>
2139 <?php _e('Multi-file package support', 'download-manager'); ?>
2140 </div>
2141 <div class="wpdm-pro-feature">
2142 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
2143 <polyline points="20 6 9 17 4 12"/>
2144 </svg>
2145 <?php _e('Email & Social lock options', 'download-manager'); ?>
2146 </div>
2147 <div class="wpdm-pro-feature">
2148 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
2149 <polyline points="20 6 9 17 4 12"/>
2150 </svg>
2151 <?php _e('CSV Import/Export', 'download-manager'); ?>
2152 </div>
2153 <div class="wpdm-pro-feature">
2154 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
2155 <polyline points="20 6 9 17 4 12"/>
2156 </svg>
2157 <?php _e('Priority support & Many more...', 'download-manager'); ?>
2158 </div>
2159 </div>
2160 <a href="https://www.wpdownloadmanager.com/pricing/" target="_blank" class="wpdm-pro-cta">
2161 <?php _e('See Pro Features', 'download-manager'); ?>
2162 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
2163 <line x1="5" y1="12" x2="19" y2="12"/>
2164 <polyline points="12 5 19 12 12 19"/>
2165 </svg>
2166 </a>
2167 </div>
2168
2169 </div>
2170 <?php else: ?>
2171 <!-- Dashboard Mode (setup already complete) -->
2172 <div class="wpdm-card-header">
2173 <h2 class="wpdm-card-title">
2174 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
2175 <rect x="3" y="3" width="18" height="18" rx="2" ry="2"/>
2176 <line x1="3" y1="9" x2="21" y2="9"/>
2177 <line x1="9" y1="21" x2="9" y2="9"/>
2178 </svg>
2179 <?php _e('Quick Actions', 'download-manager'); ?>
2180 </h2>
2181 </div>
2182 <div class="wpdm-card-body">
2183 <div class="wpdm-stats">
2184 <div class="wpdm-stat">
2185 <div class="wpdm-stat-value"><?php echo number_format($package_count); ?></div>
2186 <div class="wpdm-stat-label"><?php _e('Packages', 'download-manager'); ?></div>
2187 </div>
2188 <div class="wpdm-stat">
2189 <div class="wpdm-stat-value"><?php echo number_format(get_option('__wpdm_total_downloads', 0)); ?></div>
2190 <div class="wpdm-stat-label"><?php _e('Total Downloads', 'download-manager'); ?></div>
2191 </div>
2192 <div class="wpdm-stat">
2193 <div class="wpdm-stat-value"><?php echo WPDM_VERSION; ?></div>
2194 <div class="wpdm-stat-label"><?php _e('Version', 'download-manager'); ?></div>
2195 </div>
2196 </div>
2197
2198 <p class="wpdm-card-subtitle"><?php _e('Jump to common tasks and settings.', 'download-manager'); ?></p>
2199
2200 <div class="wpdm-quick-actions">
2201 <a href="<?php echo admin_url('post-new.php?post_type=wpdmpro'); ?>" class="wpdm-quick-action">
2202 <div class="wpdm-quick-action-icon blue">
2203 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
2204 <line x1="12" y1="5" x2="12" y2="19"/>
2205 <line x1="5" y1="12" x2="19" y2="12"/>
2206 </svg>
2207 </div>
2208 <div>
2209 <div class="wpdm-quick-action-title"><?php _e('Add New Package', 'download-manager'); ?></div>
2210 <div class="wpdm-quick-action-desc"><?php _e('Create a new download', 'download-manager'); ?></div>
2211 </div>
2212 </a>
2213 <a href="<?php echo admin_url('edit.php?post_type=wpdmpro'); ?>" class="wpdm-quick-action">
2214 <div class="wpdm-quick-action-icon green">
2215 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
2216 <rect x="3" y="3" width="7" height="7"/>
2217 <rect x="14" y="3" width="7" height="7"/>
2218 <rect x="14" y="14" width="7" height="7"/>
2219 <rect x="3" y="14" width="7" height="7"/>
2220 </svg>
2221 </div>
2222 <div>
2223 <div class="wpdm-quick-action-title"><?php _e('All Packages', 'download-manager'); ?></div>
2224 <div class="wpdm-quick-action-desc"><?php _e('View and manage downloads', 'download-manager'); ?></div>
2225 </div>
2226 </a>
2227 <a href="<?php echo admin_url('edit.php?post_type=wpdmpro&page=settings'); ?>" class="wpdm-quick-action">
2228 <div class="wpdm-quick-action-icon purple">
2229 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
2230 <circle cx="12" cy="12" r="3"/>
2231 <path d="M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 0 1 0 2.83 2 2 0 0 1-2.83 0l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-2 2 2 2 0 0 1-2-2v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 0 1-2.83 0 2 2 0 0 1 0-2.83l.06-.06a1.65 1.65 0 0 0 .33-1.82 1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1-2-2 2 2 0 0 1 2-2h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 0 1 0-2.83 2 2 0 0 1 2.83 0l.06.06a1.65 1.65 0 0 0 1.82.33H9a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 2-2 2 2 0 0 1 2 2v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 0 1 2.83 0 2 2 0 0 1 0 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82V9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 2 2 2 2 0 0 1-2 2h-.09a1.65 1.65 0 0 0-1.51 1z"/>
2232 </svg>
2233 </div>
2234 <div>
2235 <div class="wpdm-quick-action-title"><?php _e('Settings', 'download-manager'); ?></div>
2236 <div class="wpdm-quick-action-desc"><?php _e('Configure plugin options', 'download-manager'); ?></div>
2237 </div>
2238 </a>
2239 <a href="https://www.wpdownloadmanager.com/downloads/starter-add-on-bundle/" target="_blank" class="wpdm-quick-action">
2240 <div class="wpdm-quick-action-icon orange">
2241 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
2242 <polygon points="12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2"/>
2243 </svg>
2244 </div>
2245 <div>
2246 <div class="wpdm-quick-action-title"><?php _e('Add-ons', 'download-manager'); ?></div>
2247 <div class="wpdm-quick-action-desc"><?php _e('Extend functionality', 'download-manager'); ?></div>
2248 </div>
2249 </a>
2250 </div>
2251
2252 <p style="margin-top: 24px; text-align: center;">
2253 <a href="<?php echo esc_url(admin_url('index.php?page=wpdm-welcome&reset_setup=1')); ?>" style="color: #6b7280; text-decoration: none; font-size: 13px;">
2254 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" style="width: 14px; height: 14px; vertical-align: middle; margin-right: 4px;">
2255 <path d="M1 4v6h6"/><path d="M23 20v-6h-6"/><path d="M20.49 9A9 9 0 0 0 5.64 5.64L1 10m22 4l-4.64 4.36A9 9 0 0 1 3.51 15"/>
2256 </svg>
2257 <?php _e('Restart Setup Wizard', 'download-manager'); ?>
2258 </a>
2259 </p>
2260
2261 <?php endif; ?>
2262 </div>
2263 </div>
2264
2265 <?php if ($current_step > 0 && $current_step < 5): ?>
2266 <a href="<?php echo admin_url('index.php?page=wpdm-welcome&skip_setup=1'); ?>" class="wpdm-skip-link">
2267 <?php _e('Skip setup and go to dashboard', 'download-manager'); ?>
2268 </a>
2269 <?php endif; ?>
2270
2271 </div>
2272 </div>
2273