PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 3.8.0
GiveWP – Donation Plugin and Fundraising Platform v3.8.0
4.16.2 4.16.1 4.16.0 4.15.5 4.15.4 4.15.3 4.15.2 4.15.1 4.15.0 2.3.0 2.3.1 2.3.2 2.30.0 2.31.0 2.31.1 2.32.0 2.33.0 2.33.1 2.33.2 2.33.3 2.33.4 2.33.5 2.4.0 2.4.1 2.4.2 2.4.3 2.4.4 2.4.5 2.4.6 2.4.7 2.5.0 2.5.1 2.5.10 2.5.11 2.5.12 2.5.13 2.5.2 2.5.3 2.5.4 2.5.5 2.5.6 2.5.7 2.5.8 2.5.9 2.6.0 2.6.1 2.6.2 2.6.3 2.7.0 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.8.0 2.8.1 2.9.0 2.9.1 2.9.2 2.9.3 2.9.4 2.9.5 2.9.6 2.9.7 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.1.0 3.1.1 3.1.2 3.10.0 3.11.0 3.12.0 3.12.1 3.12.2 3.12.3 3.13.0 3.14.0 3.14.1 3.14.2 3.15.0 3.15.1 3.16.0 3.16.1 3.16.2 3.16.3 3.16.4 3.16.5 3.17.0 3.17.1 3.17.2 3.18.0 3.19.0 3.19.1 3.19.2 3.19.3 3.19.4 3.2.0 3.2.1 3.2.2 3.20.0 3.21.0 3.21.1 3.22.0 3.22.1 3.22.2 3.3.0 3.3.1 3.4.0 3.4.1 3.4.2 3.5.0 3.5.1 3.6.0 3.6.1 3.6.2 3.7.0 3.8.0 3.9.0 4.0.0 4.1.0 4.1.1 4.10.0 4.10.1 4.11.0 4.12.0 4.13.0 4.13.1 4.13.2 4.14.0 4.14.1 4.14.2 4.14.3 4.14.4 4.14.5 4.14.6 4.2.0 4.2.1 4.3.0 4.3.1 4.3.2 4.4.0 4.5.0 4.6.1 4.7.0 4.7.1 4.8.0 4.8.1 4.9.0 trunk 1.9.0 2.0.0 2.0.1 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.10.0 2.10.1 2.10.2 2.10.3 2.10.4 2.11.0 2.11.1 2.11.2 2.11.3 2.12.0 2.12.1 2.12.2 2.12.3 2.13.0 2.13.1 2.13.2 2.13.3 2.13.4 2.14.0 2.15.0 2.16.0 2.16.1 2.17.0 2.17.1 2.17.3 2.18.0 2.18.1 2.19.1 2.19.2 2.19.3 2.19.4 2.19.5 2.19.6 2.19.7 2.19.8 2.2.0 2.2.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.6 2.20.0 2.20.1 2.20.2 2.21.0 2.21.1 2.21.2 2.21.3 2.21.4 2.22.0 2.22.1 2.22.2 2.22.3 2.23.0 2.23.1 2.23.2 2.24.0 2.24.1 2.24.2 2.25.0 2.25.1 2.25.2 2.25.3 2.26.0 2.27.0 2.27.1 2.27.2 2.27.3 2.28.0 2.29.0 2.29.1 2.29.2
give / src / TestData / Commands / LogsSeedCommand.php
give / src / TestData / Commands Last commit date
DonationSeedCommand.php 4 years ago DonationStatusCommand.php 4 years ago DonorSeedCommand.php 4 years ago FormSeedCommand.php 4 years ago LogsSeedCommand.php 4 years ago PageSeedCommand.php 4 years ago
LogsSeedCommand.php
91 lines
1 <?php
2
3 namespace Give\TestData\Commands;
4
5 use Give\Log\LogFactory;
6 use Give\TestData\Factories\LogFactory as TestDataLogFactory;
7 use WP_CLI;
8
9 /**
10 * Class LogsSeedCommand
11 * @package Give\TestData\Commands
12 *
13 * A WP-CLI command for seeding logs.
14 */
15 class LogsSeedCommand
16 {
17
18 /**
19 * @var TestDataLogFactory
20 */
21 private $testDataLogFactory;
22
23 public function __construct(TestDataLogFactory $testDataLogFactory)
24 {
25 $this->testDataLogFactory = $testDataLogFactory;
26 }
27
28 /**
29 * Generates GiveWP test logs
30 *
31 * [--count=<count>]
32 * : Number of logs to generate
33 * default: 10
34 *
35 * [--type=<type>]
36 * : Log type
37 * default: random
38 *
39 * [--category=<category>]
40 * : Log category
41 * default: Core
42 *
43 * [--source=<source>]
44 * : Log source
45 * default: Core
46 *
47 * [--preview=<preview>]
48 * : Preview generated data
49 * default: false
50 *
51 * ## EXAMPLES
52 *
53 * wp give test-demonstration-page --preview=true
54 *
55 * @when after_wp_load
56 */
57 public function __invoke($args, $assocArgs)
58 {
59 $count = WP_CLI\Utils\get_flag_value($assocArgs, 'count', $default = 10);
60 $type = WP_CLI\Utils\get_flag_value($assocArgs, 'type', $default = 'random');
61 $category = WP_CLI\Utils\get_flag_value($assocArgs, 'category', $default = 'Core');
62 $source = WP_CLI\Utils\get_flag_value($assocArgs, 'source', $default = 'Core');
63 $preview = WP_CLI\Utils\get_flag_value($assocArgs, 'preview', $default = false);
64
65 $this->testDataLogFactory->setLogType($type);
66 $this->testDataLogFactory->setLogCategory($category);
67 $this->testDataLogFactory->setLogSource($source);
68
69 $logs = $this->testDataLogFactory->make($count);
70
71 if ($preview) {
72 WP_CLI\Utils\format_items(
73 'table',
74 [$logs],
75 array_keys($this->testDataLogFactory->definition())
76 );
77 } else {
78 $progress = WP_CLI\Utils\make_progress_bar('Generating logs', 1);
79
80 foreach ($logs as $data) {
81 $log = LogFactory::makeFromArray($data);
82 $log->save();
83
84 $progress->tick();
85 }
86
87 $progress->finish();
88 }
89 }
90 }
91