<?php
namespace App\Controller;
use App\Entity\BuymaOrder;
use App\Services\BuymaDataManager;
use Facebook\WebDriver\Chrome\ChromeOptions;
use Facebook\WebDriver\Interactions\Touch\WebDriverFlickFromElementAction;
use Facebook\WebDriver\Remote\LocalFileDetector;
use Facebook\WebDriver\WebDriverBy;
use Facebook\WebDriver\WebDriverDimension;
use Facebook\WebDriver\WebDriverSelect;
use Sonata\AdminBundle\Controller\CRUDController;
use Symfony\Component\BrowserKit\Cookie;
use Symfony\Component\HttpFoundation\JsonResponse;
use Symfony\Component\HttpFoundation\RedirectResponse;
use Sonata\DoctrineORMAdminBundle\Datagrid\ProxyQuery;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Panther\Client;
use Symfony\Component\Panther\Cookie\CookieJar;
use Symfony\Component\Panther\DomCrawler\Field\FileFormField;
use Symfony\Component\Panther\DomCrawler\Field\InputFormField;
class BuymaOrderAdminController extends CRUDController
{
private $buymaDataManager;
function __construct(BuymaDataManager $buymaDataManager)
{
$this->buymaDataManager = $buymaDataManager;
}
function loginToBuyma()
{
$this->buymaDataManager->login();
}
function pushProductToBuymaAction()
{
$projectDir = $this->get('kernel')->getProjectDir();
$filename = $projectDir . '/public/uploads/export/test.zip';
$this->buymaDataManager->pushProductsToBuyma($filename);
}
function fetchBuymaOrdersAction(Request $request)
{
$this->buymaDataManager->fetchBuymaOrders();
return new RedirectResponse(
$this->admin->generateUrl('list', [
'filter' => $this->admin->getFilterParameters()
])
);
}
function fetchLatestBuymaOrdersAction(Request $request)
{
$this->buymaDataManager->fetchLatestBuymaOrders();
return new RedirectResponse(
$this->admin->generateUrl('list', [
'filter' => $this->admin->getFilterParameters()
])
);
}
function synchronizeBuymaOrdersAction(Request $request)
{
$this->buymaDataManager->fetchBuymaOrders();
$this->buymaDataManager->fetchLatestBuymaOrders();
return new RedirectResponse(
$this->admin->generateUrl('list', [
'filter' => $this->admin->getFilterParameters()
])
);
}
}