public static function getOptionsList() { $possible_classes = Libs\Rets::getPossibleClasses(); $last_fetch_dates = []; foreach ($possible_classes as $class) { $last_fetch_dates[] = "last_fetch_date_{$class}"; } return array_merge($last_fetch_dates, ["is_processing_in_progress"]); }
<?php // Load Wordpress core require_once __DIR__ . "/../../../../../wp-load.php"; // Set system params date_default_timezone_set(get_option("timezone_string")); // Set params $classes = \Vividcrestrealestate\Core\Libs\Rets::getPossibleClasses(); // Init Lib $Exchange = new \Vividcrestrealestate\Core\Administration\Exchange(); // Fetch properties for all classes if it necessary $current_date = new \Datetime(); foreach ($classes as $class) { $last_fetch_date = new \Datetime(get_option("rets_exchange_last_fetch_date_{$class}", "2000-01-01")); $interval = $current_date->diff($last_fetch_date); if ($interval->format("%d") > 0) { $Exchange->fetchRawData($class); } else { echo date("Y-m-d H:i:s") . " | There is no properties to fetch for class \"{$class}\": Last Fetch Date: " . $last_fetch_date->format("Y-m-d H:i:s") . "; Interval: " . $interval->format("%d") . " days" . PHP_EOL; } } // Process properties $Exchange->processData(200); // Get the messages $messages = array_merge((array) $Exchange->getPositiveMessages(), (array) $Exchange->getNegativeMessages()); // Show messages echo date("Y-m-d H:i:s") . " | " . implode(PHP_EOL . date("Y-m-d H:i:s") . " | ", $messages) . PHP_EOL;