HEX
Server: Apache
System: Linux efa57bbe-abb1-400d-2985-3b056fbc2701.secureserver.net 6.1.147-1.el9.elrepo.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Jul 24 12:33:32 EDT 2025 x86_64
User: root (0)
PHP: 8.0.30.4
Disabled: NONE
Upload Files
File: //var/chroot/var/www/wp-content/mu-plugins/vendor/godaddy/mwc-core/src/Payments/Poynt/Sync/Pull.php
<?php

namespace GoDaddy\WordPress\MWC\Core\Payments\Poynt\Sync;

use DateTime;
use Exception;
use GoDaddy\WordPress\MWC\Common\Sync\Jobs\SyncJob;

/**
 * The Poynt products pull sync handler.
 *
 * Holds configuration details about the pull settings, and allows initiating a product sync from Poynt to WooCommerce.
 */
class Pull extends AbstractSyncHandler
{
    /** @var string name */
    protected static $name = 'pull';

    /**
     * Starts the pull sync handler.
     *
     * @return SyncJob|null
     * @throws Exception
     */
    public static function start()
    {
        if (static::isSyncing()) {
            return null;
        }

        $job = SyncJob::create([
            'owner'      => 'poynt',
            'objectType' => 'product',
        ]);

        as_schedule_single_action(
            (new DateTime('now'))->getTimestamp(),
            'mwc_pull_poynt_objects',
            [
                'jobId' => $job->getId(),
            ]
        );

        static::setIsSyncing(true);

        return $job;
    }
}