63 lines
1.8 KiB
PHP
63 lines
1.8 KiB
PHP
<?php
|
|
|
|
namespace External\SprintBundle\Controller;
|
|
|
|
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
|
|
use Symfony\Component\HttpFoundation\Request;
|
|
use Symfony\Component\HttpFoundation\StreamedResponse;
|
|
use Symfony\Component\Routing\Annotation\Route;
|
|
|
|
class ImportController extends AbstractController
|
|
{
|
|
/**
|
|
* @Route("/_sprint/import/")
|
|
*/
|
|
public function syncAction(Request $request, \External\SprintBundle\Import\ImportDatabase $importDatabase): StreamedResponse
|
|
{
|
|
return new StreamedResponse(function () use ($importDatabase, $request) {
|
|
// Clear output buffering
|
|
while (ob_get_level()) {
|
|
ob_end_clean();
|
|
}
|
|
|
|
$importDatabase->import($request);
|
|
});
|
|
}
|
|
|
|
/**
|
|
* @Route("/_sprint/update/")
|
|
*/
|
|
public function updateAction(Request $request, \External\SprintBundle\Import\ImportDatabase $importDatabase): StreamedResponse
|
|
{
|
|
return new StreamedResponse(function () use ($importDatabase, $request) {
|
|
// Clear output buffering
|
|
while (ob_get_level()) {
|
|
ob_end_clean();
|
|
}
|
|
|
|
$importDatabase->update($request);
|
|
});
|
|
}
|
|
|
|
/**
|
|
* @Route("/_sprint/deletecoupons/")
|
|
*/
|
|
public function deleteAction(Request $request, \External\SprintBundle\Import\ImportDatabase $importDatabase): StreamedResponse
|
|
{
|
|
return new StreamedResponse(function () use ($importDatabase, $request) {
|
|
// Clear output buffering
|
|
while (ob_get_level()) {
|
|
ob_end_clean();
|
|
}
|
|
|
|
$importDatabase->deleteCoupons($request);
|
|
});
|
|
}
|
|
|
|
private function log(string $text): void
|
|
{
|
|
echo '['.date('Y-m-d H:i:s').'] '.$text.'<br>';
|
|
flush();
|
|
}
|
|
}
|