Submit
Path:
~
/
home
/
getwphos
/
www
/
almajd14
/
wp-content
/
plugins
/
woocommerce
/
src
/
Admin
/
RemoteSpecs
/
RuleProcessors
/
File Content:
ContextPluginsRuleProcessor.php
<?php declare( strict_types = 1 ); namespace Automattic\WooCommerce\Admin\RemoteSpecs\RuleProcessors; /** * Rule processor for context_plugins rules. * * Processes the following rule: * { * "type": "context_plugins", * "name": "name of a property in the plugin object", * "value": "value to match", * "operation": "operation" * } */ class ContextPluginsRuleProcessor implements RuleProcessorInterface { /** * The list of plugin objects. * * Plugin object is unmodified object from https://woocommerce.com/wp-json/wccom/obw-free-extensions/4.0/extensions.json * * Example: * { * "id": "WooCommerce Shipping", * "description": "description", * "is_visible": true, * "is_built_by_wc": true, * "key": "woocommerce-shipping", * } * * @var array a list of plugins. */ private array $plugins; /** * Constructor. * * @param array $plugins a list of plugins. */ public function __construct( array $plugins ) { $this->plugins = $plugins; } /** * Performs a comparison operation against the option value. * * @param object $rule The specific rule being processed by this rule processor. * @param object $stored_state Stored state. * * @return bool The result of the operation. */ public function process( $rule, $stored_state ) { foreach ( $this->plugins as $plugin ) { if ( ! isset( $plugin->{$rule->name} ) ) { continue; } if ( ComparisonOperation::compare( $plugin->{$rule->name}, $rule->value, $rule->operation ) ) { return true; } } return false; } /** * Validates the rule. * * @param object $rule The rule to validate. * * @return bool Pass/fail. */ public function validate( $rule ) { if ( ! isset( $rule->name ) || ! isset( $rule->value ) || ! isset( $rule->operation ) ) { return false; } return true; } }
Submit
FILE
FOLDER
Name
Size
Permission
Action
Transformers
---
0755
BaseLocationCountryRuleProcessor.php
2029 bytes
0644
BaseLocationStateRuleProcessor.php
1261 bytes
0644
ComparisonOperation.php
2460 bytes
0644
ContextPluginsRuleProcessor.php
1870 bytes
0644
EvaluateAndGetStatus.php
1892 bytes
0644
EvaluateOverrides.php
2421 bytes
0644
EvaluationLogger.php
2100 bytes
0644
FailRuleProcessor.php
691 bytes
0644
GetRuleProcessor.php
2093 bytes
0644
GetRuleProcessorForContext.php
1073 bytes
0644
IsEcommerceRuleProcessor.php
1139 bytes
0644
IsWooExpressRuleProcessor.php
1920 bytes
0644
NotRuleProcessor.php
1344 bytes
0644
NoteStatusRuleProcessor.php
1324 bytes
0644
OnboardingProfileRuleProcessor.php
1447 bytes
0644
OptionRuleProcessor.php
3198 bytes
0644
OrRuleProcessor.php
1514 bytes
0644
OrderCountRuleProcessor.php
1342 bytes
0644
OrdersProvider.php
705 bytes
0644
PassRuleProcessor.php
777 bytes
0644
PluginVersionRuleProcessor.php
2227 bytes
0644
PluginsActivatedRuleProcessor.php
1875 bytes
0644
ProductCountRuleProcessor.php
1668 bytes
0644
PublishAfterTimeRuleProcessor.php
1502 bytes
0644
PublishBeforeTimeRuleProcessor.php
1508 bytes
0644
RuleEvaluator.php
2505 bytes
0644
RuleProcessorInterface.php
659 bytes
0644
StoredStateRuleProcessor.php
1256 bytes
0644
StoredStateSetupForProducts.php
3692 bytes
0644
TotalPaymentsVolumeProcessor.php
2536 bytes
0644
WCAdminActiveForProvider.php
505 bytes
0644
WCAdminActiveForRuleProcessor.php
2026 bytes
0644
WooCommerceAdminUpdatedRuleProcessor.php
974 bytes
0644
N4ST4R_ID | Naxtarrr