| @@ -1,7 +1,8 @@ | ||
| 1 | 1 | <?php |
| 2 | 2 | |
| 3 | 3 | use SyncBasalam\JobManager; |
| 4 | +use SyncBasalam\Services\VendorSyncPolicy; | |
| 4 | 5 | use SyncBasalam\Utilities\ProductMetaKey; |
| 5 | 6 | |
| 6 | 7 | defined('ABSPATH') || exit; |
| 7 | 8 | |
| @@ -6,10 +7,17 @@ | ||
| 6 | 7 | defined('ABSPATH') || exit; |
| 7 | 8 | |
| 8 | 9 | global $wpdb; |
| 9 | 10 | |
| 11 | +$vendorSyncState = syncBasalamContainer()->get(VendorSyncPolicy::class)->getFrontendState(); | |
| 12 | +$vendorSyncMode = $vendorSyncState['mode']; | |
| 13 | +$vendorCanCreate = !empty($vendorSyncState['can_create']); | |
| 14 | +$vendorCanUpdate = !empty($vendorSyncState['can_update']); | |
| 15 | +$vendorUpdateIsLimited = $vendorSyncMode === VendorSyncPolicy::MODE_INACTIVE_LIMITED; | |
| 16 | + | |
| 10 | 17 | $count_of_published_woocommerce_products = wp_count_posts('product')->publish; |
| 11 | 18 | $productIdMetaKey = ProductMetaKey::basalamProductId(); |
| 19 | +// phpcs:ignore WordPress.DB.DirectDatabaseQuery.DirectQuery, WordPress.DB.DirectDatabaseQuery.NoCaching -- Direct count on core postmeta table; no object cache for this aggregate. | |
| 12 | 20 | $count_of_synced_basalam_products = intval($wpdb->get_var($wpdb->prepare("SELECT COUNT(*) FROM {$wpdb->postmeta} WHERE meta_key = %s", $productIdMetaKey))); |
| 13 | 21 | |
| 14 | 22 | $job_manager = new JobManager(); |
| 15 | 23 | |