PluginProbe
The Innovative Form Builder – IvyForms / 1.5.1
The Innovative Form Builder – IvyForms v1.5.1
1.5.1 1.5 1.4.1 1.4 trunk 0.1.2 0.2 0.2.1 0.3 0.3.1 0.4 0.5 0.6 0.6.1 0.6.1-backup 0.6.1.1 0.7 0.8 0.8.1 0.8.2 0.9 0.9.1 1.0 1.1 1.1.1 All 27 releases
← All changes | backend/src/Config/repository.php +63 -46 0.4 → 1.5.1 View file →
@@ -3,67 +3,84 @@
3 3 if (! defined('ABSPATH')) {
4 4 exit; // Exit if accessed directly
5 5 }
6 6
7 -use IvyForms\Vendor\DI\Container;
7 +use IvyForms\Repository\FieldOptions\FieldOptionsRepository;
8 +use IvyForms\Repository\FieldOptions\FieldOptionsRepositoryInterface;
9 +use IvyForms\Repository\Form\FormRepository;
10 +use IvyForms\Repository\Form\FormRepositoryInterface;
11 +use IvyForms\Repository\Field\FieldRepository;
12 +use IvyForms\Repository\Field\FieldRepositoryInterface;
13 +use IvyForms\Repository\Notification\NotificationRepository;
14 +use IvyForms\Repository\Notification\NotificationRepositoryInterface;
8 15 use IvyForms\Repository\Confirmation\ConfirmationRepository;
9 16 use IvyForms\Repository\Confirmation\ConfirmationRepositoryInterface;
10 17 use IvyForms\Repository\Entry\EntryRepository;
11 18 use IvyForms\Repository\Entry\EntryRepositoryInterface;
19 +use IvyForms\Repository\EntryField\EntryFieldNameEmailRepository;
20 +use IvyForms\Repository\EntryField\EntryFieldNameEmailRepositoryInterface;
12 21 use IvyForms\Repository\EntryField\EntryFieldRepository;
13 22 use IvyForms\Repository\EntryField\EntryFieldRepositoryInterface;
14 -use IvyForms\Repository\Field\FieldRepository;
15 -use IvyForms\Repository\Field\FieldRepositoryInterface;
16 -use IvyForms\Repository\FieldOptions\FieldOptionsRepository;
17 -use IvyForms\Repository\FieldOptions\FieldOptionsRepositoryInterface;
18 -use IvyForms\Repository\Form\FormRepository;
19 -use IvyForms\Repository\Form\FormRepositoryInterface;
20 -use IvyForms\Repository\Notification\NotificationRepository;
21 -use IvyForms\Repository\Notification\NotificationRepositoryInterface;
23 +use IvyForms\Repository\GoogleSheets\GoogleSheetsRepository;
24 +use IvyForms\Repository\GoogleSheets\GoogleSheetsRepositoryInterface;
25 +use IvyForms\Repository\Payment\OrderRepository;
26 +use IvyForms\Repository\Payment\OrderRepositoryInterface;
27 +use IvyForms\Repository\Payment\PaymentRepository;
28 +use IvyForms\Repository\Payment\PaymentRepositoryInterface;
29 +
30 +use IvyForms\Services\InstallActions\DB\FieldOptions\FieldOptionsTable;
31 +use IvyForms\Services\InstallActions\DB\GoogleSheets\GoogleSheetsTable;
32 +use IvyForms\Services\InstallActions\DB\Form\FormsTable;
33 +use IvyForms\Services\InstallActions\DB\Field\FieldsTable;
34 +use IvyForms\Services\InstallActions\DB\Notification\NotificationsTable;
22 35 use IvyForms\Services\InstallActions\DB\Confirmation\ConfirmationsTable;
23 36 use IvyForms\Services\InstallActions\DB\Entry\EntriesTable;
24 37 use IvyForms\Services\InstallActions\DB\EntryField\EntryFieldsTable;
25 -use IvyForms\Services\InstallActions\DB\Field\FieldsTable;
26 -use IvyForms\Services\InstallActions\DB\Form\FormsTable;
27 -use IvyForms\Services\InstallActions\DB\Notification\NotificationsTable;
28 -use IvyForms\Services\InstallActions\DB\FieldOptions\FieldOptionsTable;
38 +use IvyForms\Services\InstallActions\DB\Payment\OrdersTable;
39 +use IvyForms\Services\InstallActions\DB\Payment\PaymentsTable;
29 40
30 -/** @var Container $container */
31 -// @phpstan-ignore-next-line
32 -$container->set(FormRepositoryInterface::class, static function () {
33 - return new FormRepository(FormsTable::getTableName());
34 -});
41 +return [
35 42
36 -// @phpstan-ignore class.notFound
37 -$container->set(FieldRepositoryInterface::class, static function () {
38 - return new FieldRepository(FieldsTable::getTableName());
39 -});
43 + FormRepositoryInterface::class => function () {
44 + return new FormRepository(FormsTable::getTableName());
45 + },
40 46
41 -// @phpstan-ignore class.notFound
42 -$container->set(NotificationRepositoryInterface::class, static function () {
43 - return new NotificationRepository(NotificationsTable::getTableName());
44 -});
47 + FieldRepositoryInterface::class => function () {
48 + return new FieldRepository(FieldsTable::getTableName());
49 + },
45 50
46 -// @phpstan-ignore class.notFound
47 -$container->set(ConfirmationRepositoryInterface::class, static function () {
48 - return new ConfirmationRepository(ConfirmationsTable::getTableName());
49 -});
51 + NotificationRepositoryInterface::class => function () {
52 + return new NotificationRepository(NotificationsTable::getTableName());
53 + },
50 54
51 -// @phpstan-ignore class.notFound
52 -$container->set(EntryRepositoryInterface::class, static function () {
53 - return new EntryRepository(EntriesTable::getTableName());
54 -});
55 + ConfirmationRepositoryInterface::class => function () {
56 + return new ConfirmationRepository(ConfirmationsTable::getTableName());
57 + },
55 58
56 -// @phpstan-ignore class.notFound
57 -$container->set(EntryFieldRepositoryInterface::class, static function () {
58 - return new EntryFieldRepository(EntryFieldsTable::getTableName());
59 -});
59 + EntryRepositoryInterface::class => function () {
60 + return new EntryRepository(EntriesTable::getTableName());
61 + },
60 62
61 -// @phpstan-ignore class.notFound
62 -$container->set(FieldOptionsRepositoryInterface::class, static function () {
63 - return new FieldOptionsRepository(FieldOptionsTable::getTableName());
64 -});
63 + EntryFieldRepositoryInterface::class => function () {
64 + return new EntryFieldRepository(EntryFieldsTable::getTableName());
65 + },
65 66
66 -// @phpstan-ignore class.notFound
67 -$container->set(FieldOptionsRepository::class, static function () {
68 - return new FieldOptionsRepository(FieldOptionsTable::getTableName());
69 -});
67 + EntryFieldNameEmailRepositoryInterface::class => function () {
68 + return new EntryFieldNameEmailRepository(EntryFieldsTable::getTableName());
69 + },
70 +
71 + FieldOptionsRepositoryInterface::class => function () {
72 + return new FieldOptionsRepository(FieldOptionsTable::getTableName());
73 + },
74 +
75 + GoogleSheetsRepositoryInterface::class => function () {
76 + return new GoogleSheetsRepository(GoogleSheetsTable::getTableName());
77 + },
78 +
79 + PaymentRepositoryInterface::class => function () {
80 + return new PaymentRepository(PaymentsTable::getTableName());
81 + },
82 +
83 + OrderRepositoryInterface::class => function () {
84 + return new OrderRepository(OrdersTable::getTableName());
85 + },
86 +];