Current path: home/webdevt/cryptoimpot.fr/module/Application/src/Controller/
?? Go up: /home/webdevt/cryptoimpot.fr/module/Application/src
<?php
namespace Application\Controller;
use Laminas\Mvc\Controller\AbstractActionController;
use Laminas\View\Model\ViewModel;
use Laminas\Mail\Message;
use Laminas\Mime;
use Laminas\Mail\Transport\Sendmail as SendmailTransport;
use Exception;
class ExchangeController extends AbstractActionController {
const ROUTE_ADMIN = 'admin';
const ROUTE_ADMIN_EXCHANGE = 'admin/exchange';
const ROUTE_INFOS = 'exchange/infos';
/**
* @var Doctrine\ORM\EntityManager
protected $em;
public function setEntityManager(EntityManager $em) {
$this->em = $em;
}
public function getEntityManager() {
if (null === $this->em) {
$this->em = $this->getServiceLocator()->get('Doctrine\ORM\EntityManager');
}
return $this->em;
}
public function getServiceManager() {
return $this->serviceManager;
}
public function setServiceManager(Laminas\ServiceManager\ServiceManager $serviceManager) {
$this->serviceManager = $serviceManager;
return $this;
}
*
*/
public function getEntityManager() {
return $this->entityManager;
// if (null === $this->em) {
// $this->em = $this->getServiceLocator()->get('Doctrine\ORM\EntityManager');
// }
// return $this->em;
}
//
// public function getServiceManager() {
// return $this->serviceManager;
// }
//
// public function setServiceManager(Laminas\ServiceManager\ServiceManager $serviceManager) {
// $this->serviceManager = $serviceManager;
// return $this;
// }
/**
* Entity manager.
* @var Doctrine\ORM\EntityManager
*/
private $entityManager;
/**
* Auth manager.
* @var User\Service\AuthManager
*/
private $authManager;
/**
* User manager.
* @var User\Service\UserManager
*/
private $userManager;
/**
* config
* @var array
*/
private $config;
/**
* Constructor.
*/
public function __construct($entityManager, $authManager, $userManager, $config) {
// public function __construct($entityManager, $authManager, $userManager, $config) {
$this->entityManager = $entityManager;
$this->authManager = $authManager;
$this->userManager = $userManager;
$this->config = $config;
}
public function getConfig() {
return $this->config;
}
public function infosAction() {
$exchangeId = $this->params()->fromRoute('exchange', null);
if (empty($exchangeId)) {
return false;
}
$entityManager = $this->getEntityManager();
/* @var $entityManager \Doctrine\ORM\EntityManager */
$mapperExchange = new \Application\Mapper\ExchangeMapper($entityManager);
$exchange = $mapperExchange->findById($exchangeId);
if (empty($exchange)) {
return false;
}
$responseArray = [
'nom' => $exchange->getName(),
'adresse' => $exchange->getAdresse(),
'site' => $exchange->getSite(),
];
$response = $this->getResponse();
$response->getHeaders()->addHeaderLine('Content-Type', 'application/json');
$response->setContent(json_encode($responseArray));
return $response;
}
public function indexAction() {
//echo 'exchange'; exit;
if ($user = $this->currentUser()) {
} else {
return $this->redirect()->toRoute(\Application\Controller\UserController::ROUTE_LOGIN);
}
// if (!$this->access('profile.any.view') &&
// !$this->access('profile.own.view', ['user'=>$user])) {
// return $this->redirect()->toRoute('not-authorized');
// }
/* Array with number item authorize per page */
$config = $this->getConfig();
$configNumber = $config['number_per_page_authorize'];
/* Init query option */
$queryOption = array();
/* Page number default */
$queryOption['page'] = $pageNumber = $this->params()->fromQuery('page', '1');
/* Display Table or List */
$queryOption['display'] = $displayState = $this->params()->fromQuery('display', 'table');
/* Number element display per page */
$nb_element_per_page = $this->params()->fromQuery('nb_element_per_page', '30');
$queryOption['nb_element_per_page'] = $_SESSION['countPerPage'] = in_array($nb_element_per_page, array('30', '60', '90')) ? $nb_element_per_page : '30';
/* List Sort by field */
$sort_by = $this->params()->fromQuery('sort_by', 'datetimeTransaction');
$colTable = array(
'id' => array(
'label' => 'Id',
'class' => 'col-sm-2',
'allowOrder' => true,
),
'logo' => array(
'label' => 'Logo',
'class' => 'col-sm-1',
'allowOrder' => true,
),
'name' => array(
'label' => 'Nom',
'class' => 'col-sm-1',
'allowOrder' => true,
),
// 'type' => array(
// 'label' => 'Type',
// 'class' => 'col-sm-2',
// 'allowOrder' => true,
// ),
// 'pair' => array(
// 'label' => 'Pair',
// 'class' => 'col-sm-2',
// 'allowOrder' => true,
// ),
'enable' => array(
'label' => 'Activé',
'class' => 'col-sm-2',
'allowOrder' => true,
),
'selectable' => array(
'label' => 'Sélection possible',
'class' => 'col-sm-1',
'allowOrder' => true,
),
'view_disabled' => array(
'label' => 'Non affiché',
'class' => 'col-sm-1',
'allowOrder' => true,
),
'api_enabled' => array(
'label' => 'API activé',
'class' => 'col-sm-2',
'allowOrder' => true,
),
'csv_enabled' => array(
'label' => 'CSV activé',
'class' => 'col-sm-2',
'allowOrder' => true,
),
'site' => array(
'label' => 'Site',
'class' => 'col-sm-2',
'allowOrder' => true,
),
// 'action' => array(
// 'label' => 'Action',
// 'class' => 'col-sm-1',
// 'allowOrder' => false,
// ),
);
// $queryOption['sort_by'] = in_array($sort_by, array('id', 'titre', 'contenu', 'dateCreation', 'dateModification', 'statut')) ? $sort_by : 'id';
//$queryOption['sort_by'] = in_array($sort_by, array('id', 'code', 'prescripteur', 'coordinateur', 'dateCreation', 'dateDepot', 'dateDelivrance', 'createdBy', 'statut')) ? $sort_by : 'id';
$queryOption['sort_by'] = 'dateTransaction';
/* List order ASC or DESC */
$sort = $this->params()->fromQuery('sort', 'ASC');
$queryOption['sort'] = in_array($sort, array('ASC', 'DESC')) ? $sort : 'ASC';
/* Form search */
$formSearch = new \Application\Form\SearchForm();
$request = $this->getRequest();
/* @var $request \Laminas\Http\Request */
$filterOption = null;
if ($request->isGet() && is_string($request->getQuery('search'))) {
$data = $request->getQuery()->toArray();
$formSearch->setInputFilter(new \Application\InputFilter\SearchInputFilter());
$formSearch->setData($data);
if ($formSearch->isValid()) {
$queryOption['search'] = $data['search'];
}
}
$orderOption = array(
'sort_by' => $queryOption['sort_by'],
'sort' => $queryOption['sort'],
);
/* Création Paginator */
//$criteria = array('statut' => 1);
$search = '';
if (isset($queryOption['search'])) {
//$criteria = array_merge($criteria, array('contenu' => "%{$queryOption['search']}%"));
$search = $queryOption['search'];
}
$orderBy = array($orderOption['sort_by'] => $orderOption['sort']);
$entityManager = $this->getEntityManager();
/* @var $entityManager \Doctrine\ORM\EntityManager */
$mapperExchange = new \Application\Mapper\ExchangeMapper($entityManager);
$parametersManager = array(
'user' => $user,
'sort_by' => $queryOption['sort_by'],
'sort' => $queryOption['sort'],
'search' => isset($queryOption['search']) ? $queryOption['search'] : null
);
$paginator = $mapperExchange->getList($parametersManager, true);
//$allData = $ledgioMapper->getListByIdUser($user->getId(), $parametersManager, false);
//var_dump($allData);
// var_dump($warningLedgio);
// exit;
////echo 'toto';
// exit;
/* Option affichage paginator */
$paginator->setItemCountPerPage((int) $queryOption['nb_element_per_page']);
$paginator->setCurrentPageNumber((int) $queryOption['page']);
/* Verify current page < to number pages */
/* set is not allow after getting pages */
$numberPages = $paginator->getPages()->pageCount;
if ((int) $queryOption['page'] > $numberPages) {
$queryOption['page'] = '1';
}
$this->layout('layout/layout-ledgio');
return new ViewModel(array(
'numberPages' => $numberPages,
'paginator' => $paginator,
//'warningLedgio' => $warningLedgio,
'queryOption' => $queryOption,
'colTable' => $colTable,
'formSearch' => $formSearch,
));
}
public function apiAction() {
$api = new Binance\API("<api key>", "<secret>");
$history = $api->history("BNBBTC");
print_r($history);
}
public function uploadAction() {
if ($user = $this->currentUser()) {
} else {
return $this->redirect()->toRoute(\Application\Controller\UserController::ROUTE_LOGIN);
}
// Vérification utilisateur bien authentifié
// if ($this->zfcUserAuthentication()->hasIdentity()) {
// $user = $this->zfcUserAuthentication()->getIdentity();
// //var_dump($user);
// } else {
// return $this->redirect()->toRoute('zfcuser', array('action' => 'login'));
// }
// \Doctrine\Common\Util\Debug::dump($user,3);
// $userMapper = new \Application\Mapper\UserMapper($this->getEntityManager());
// $userNew = $userMapper->findById($user->getId());
// \Doctrine\Common\Util\Debug::dump($userNew,3);
//
// var_dump($user === $userNew);
//
// exit;
/*
* Service upload
*/
// $config = $this->getServiceLocator()->get('config');
$config = $this->getConfig();
$uploadPath = $config['upload-path'];
$uploadPath = $uploadPath . DIRECTORY_SEPARATOR . $user->getId() . DIRECTORY_SEPARATOR . 'input' . DIRECTORY_SEPARATOR;
$exchangeName = '';
if (!empty($_REQUEST) && !empty($_REQUEST['exchange-name'])) {
$exchangeName = $_REQUEST['exchange-name'];
}
$exchangeMapper = $this->getEntityManager()->getRepository(\Application\Entity\Exchange::class);
$exchangeFind = $exchangeMapper->findByName($exchangeName);
$responseArray['error'] = [];
$responseArray['error']['messages'] = [];
if (empty($exchangeFind)) {
//var_dump($exchangeName);
$responseArray['error']['messages'][] = array('header' => 'Exchange inconnu', 'body' => 'Veuillez recharger la page', 'footer' => '');
} else {
$responseArray['exchange'] = $exchangeName;
}
//echo 'titi';
if (count($responseArray['error']['messages']) === 0) {
$tmpArray = explode('-', $exchangeName);
if (count($tmpArray) > 1) {
$serviceName = '';
foreach ($tmpArray as $strTmp) {
$serviceName .= ucfirst($strTmp);
}
} else {
$serviceName = ucfirst($exchangeName);
}
$countFile = 0;
$classNameService = '\Application\Service\ExchangeService\\' . ucfirst($serviceName) . 'Service';
//var_dump($classNameService);
//var_dump(class_exists($classNameService)); exit;
if (!class_exists($classNameService)) {
$responseArray['error']['messages'][] = array('header' => 'Service non disponible', 'body' => 'Service ' . $serviceName . ' non disponible', 'footer' => '');
goto returnResponse;
}
$uploadPath = $uploadPath . strtolower($exchangeName) . DIRECTORY_SEPARATOR;
$ServiceUpload = new \Application\Service\UploadHandler($user->getId(), array('upload_dir' => $uploadPath));
$arrayFileUploaded = $ServiceUpload->arrayFileUploaded;
$responseArray = array_merge($responseArray, $ServiceUpload->get(false));
// $responseArray['exchange'] = $exchangeName;
$arrayErrorMessages = $ServiceUpload->arrayErrorMessages;
$serviceExchange = null;
// var_dump($arrayErrorMessages);
// echo 'toto';
// exit;
if (!empty($arrayErrorMessages)) {
foreach ($arrayErrorMessages as $errorMessage) {
$responseArray['error']['messages'][] = array('header' => $errorMessage['header'], 'body' => $errorMessage['body'], 'footer' => $errorMessage['footer']);
}
}
//var_dump($ServiceUpload->get_response());
// var_dump($responseArray);
// exit;
/* */
if (!empty($arrayFileUploaded)) {
$countLineRecorded = 0;
foreach ($arrayFileUploaded as $fileUploaded) {
// try {
//var_dump(class_exists($classNameService));
$serviceExchange = new $classNameService($fileUploaded, $user, $this->getEntityManager());
$countLineRecorded = $countLineRecorded + $serviceExchange->getCountLineRecorded();
//var_dump($serviceExchange); exit;
// } catch (Exception $ex) {
// $responseArray['error']['messages'][] = array('header' => 'Service non disponible', 'body' => 'Service ' . $serviceName . ' non disponible', 'footer' => '');
//
// goto returnResponse;
// }
//var_dump($fileUploaded);
if (!$serviceExchange->isValid()) {
$responseArray['error']['messages'][] = $serviceExchange->getErrorMessage();
// var_dump($responseArray);
// exit;
foreach ($responseArray['files'] as $index => $file) {
// var_dump($file->name);
// var_dump($fileUploaded);
if (strpos($fileUploaded, $file->name) !== false) {
// unset($responseArray['files'][$index]);
$obj = $responseArray['files'][$index];
$obj->error = $responseArray['error'];
//$responseArray['error']['messages'][] = array('header' => $errorMessage['title'], 'body' => $errorMessage['body'], 'footer' => $errorMessage['footer']);
$responseArray['files'][$index] = $obj;
unlink($fileUploaded);
}
}
continue;
} else {
$countFile++;
}
}
$ledgioService = new \Application\Service\LedgioService($user, $this->getEntityManager());
$ledgioService->update();
//echo 'toto'; exit;
}
}
//var_dump($countFile); exit;
if (count($responseArray['error']['messages']) === 0 && $countFile) {
$responseArray['success']['messages'][] = array(
'header' => 'Importation réussie',
'body' => $countFile . ' fichier' . ($countFile > 1 ? 's' : '') . ' importé' . ($countFile > 1 ? 's' : '') . ' avec succès, Nombre total d\'enregistrements ' . ucfirst($exchangeName) . ' : ' . $countLineRecorded,
'footer' => 'Nombre total d\'enregistrements : ' . $ledgioService->countLineRecorded
);
}
// var_dump($responseArray);
// exit;
returnResponse:
$response = $this->getResponse();
$response->getHeaders()->addHeaderLine('Content-Type', 'application/json');
$response->setContent(json_encode($responseArray));
return $response;
//exit;
// return new ViewModel(array(
//// 'listeActualites' => $listeActualites,
//// 'listeOffresEmploi' => $listeOffresEmploi,
//// 'nbIngenieurs' => $config['wdp-front-global']['nbIngenieurs'],
// ));
}
public function uploadOkAction() {
// Vérification utilisateur bien authentifié
if ($this->zfcUserAuthentication()->hasIdentity()) {
$user = $this->zfcUserAuthentication()->getIdentity();
//var_dump($user);
} else {
return $this->redirect()->toRoute('zfcuser', array('action' => 'login'));
}
/*
* Service upload
*/
// $config = $this->getServiceLocator()->get('config');
// $configDoc = $config['wdp-admin']['document'];
// $uploadPath = $configDoc['upload-path'];
$config - $this->getConfig();
$uploadPath = $config['upload-path'];
$uploadPath = $uploadPath . DIRECTORY_SEPARATOR . $user->getId() . DIRECTORY_SEPARATOR . 'input' . DIRECTORY_SEPARATOR;
$exchangeName = '';
//var_dump($_REQUEST);
if (!empty($_REQUEST) && !empty($_REQUEST['exchange-name'])) {
$exchangeName = $_REQUEST['exchange-name'];
}
$responseArray['exchange'] = \Application\Tool\TextTool::strToUrl($exchangeName);
$responseArray['error'] = [];
$responseArray['error']['messages'] = [];
if (empty($exchangeName)) {
//var_dump($exchangeName);
$responseArray['error']['messages'][] = array('header' => 'Exchange inconnu', 'body' => 'Veuillez recharger la page', 'footer' => '');
}
//echo 'titi';
//var_dump(count($responseArray['error']['messages']));
if (count($responseArray['error']['messages']) === 0) {
$uploadPath = $uploadPath . strtolower($exchangeName) . DIRECTORY_SEPARATOR;
$ServiceUpload = new \Application\Service\UploadHandler($user->getId(), array('upload_dir' => $uploadPath));
$arrayFileUploaded = $ServiceUpload->arrayFileUploaded;
$responseArray = array_merge($responseArray, $ServiceUpload->get(false));
$arrayErrorMessages = $ServiceUpload->arrayErrorMessages;
// var_dump($arrayErrorMessages);
// echo 'toto';
// exit;
if (!empty($arrayErrorMessages)) {
foreach ($arrayErrorMessages as $errorMessage) {
$responseArray['error']['messages'][] = array('header' => $errorMessage['header'], 'body' => $errorMessage['body'], 'footer' => $errorMessage['footer']);
}
}
//var_dump($ServiceUpload->get_response());
// var_dump($responseArray);
// exit;
/* */
//var_dump($ServiceUpload->exchangeName);
$tmpArray = explode('-', $exchangeName);
if (count($tmpArray) > 1) {
$serviceName = '';
foreach ($tmpArray as $strTmp) {
$serviceName .= ucfirst($strTmp);
}
} else {
$serviceName = ucfirst($exchangeName);
}
$classNameService = '\Application\Service\\' . ucfirst($serviceName) . 'Service';
//var_dump(count($tmpArray));
$countFile = 0;
foreach ($arrayFileUploaded as $fileUploaded) {
$serviceExchange = new $classNameService($fileUploaded, $user, $this->getEntityManager());
//var_dump($fileUploaded);
if (!$serviceExchange->isValid()) {
$responseArray['error']['messages'][] = $serviceExchange->getErrorMessage();
// var_dump($responseArray);
// exit;
foreach ($responseArray['files'] as $index => $file) {
// var_dump($file->name);
// var_dump($fileUploaded);
if (strpos($fileUploaded, $file->name) !== false) {
// unset($responseArray['files'][$index]);
$obj = $responseArray['files'][$index];
$obj->error = $responseArray['error'];
//$responseArray['error']['messages'][] = array('header' => $errorMessage['title'], 'body' => $errorMessage['body'], 'footer' => $errorMessage['footer']);
$responseArray['files'][$index] = $obj;
unlink($fileUploaded);
}
}
continue;
} else {
$countFile++;
}
$ledgioService = new \Application\Service\LedgioService($user, $this->getEntityManager());
$ledgioService->update();
}
}
if (count($responseArray['error']['messages']) === 0) {
$responseArray['success']['messages'][] = array(
'header' => 'Importation réussie',
'body' => $countFile . ' fichier' . ($countFile > 1 ? 's' : '') . ' importé' . ($countFile > 1 ? 's' : '') . ' avec succès'
);
//$responseArray['success']['message'] = ;
}
// var_dump($responseArray);
// exit;
$response = $this->getResponse();
$response->getHeaders()->addHeaderLine('Content-Type', 'application/json');
$response->setContent(json_encode($responseArray));
return $response;
//exit;
// return new ViewModel(array(
//// 'listeActualites' => $listeActualites,
//// 'listeOffresEmploi' => $listeOffresEmploi,
//// 'nbIngenieurs' => $config['wdp-front-global']['nbIngenieurs'],
// ));
}
public function deleteAction() {
if ($user = $this->currentUser()) {
} else {
return $this->redirect()->toRoute(\Application\Controller\UserController::ROUTE_LOGIN);
}
if ($this->getRequest()->isPost()) {
// Récupération des données du post
$data = array_merge_recursive(
$this->getRequest()->getPost()->toArray()
);
if (empty($data['importId'])) {
$responseArray['error']['messages'][] = array(
'header' => 'Formulaire non valide',
'body' => $message,
'footer' => '');
goto returnResponse;
}
// find source import
$mapperImport = new \Application\Mapper\ImportMapper($this->getEntityManager());
$importInfos = $mapperImport->findById($data['importId']);
if (empty($importInfos) || $importInfos->getUser() != $user) {
$responseArray['error']['messages'][] = array(
'header' => 'Source inconnue',
'body' => 'Cette ressource n\'existe plus',
'footer' => '');
goto returnResponse;
}
$query = $this->getEntityManager()->createQuery("DELETE FROM Application\Entity\Ledgio l WHERE l.user = " . $user->getId() . ' AND l.import = ' . $importInfos->getId());
//var_dump($query);
/* @var $query \Doctrine\ORM\Query */
//if ($query->execute()) {
$query->execute();
if ($importInfos->getSourceType() === 'csv') {
$config = $this->getConfig();
//$configDoc = $config['wdp-admin']['document'];
$importInfos->getName();
$uploadPath = $config['upload-path'];
$uploadPath = $uploadPath . DIRECTORY_SEPARATOR . $user->getId() . DIRECTORY_SEPARATOR . 'input' . DIRECTORY_SEPARATOR;
$uploadPath = $uploadPath . \Application\Tool\TextTool::strToUrl($importInfos->getExchange()->getName()) . DIRECTORY_SEPARATOR;
$uploadPath = $uploadPath . $importInfos->getName();
$unlinkResponse = unlink($uploadPath);
}
// if (is_file($uploadPath)) {
// $rmdirResponse = rmdir($uploadPath);
// }
$mapperImport->delete($importInfos);
$responseArray['id'] = $data['importId'];
$responseArray['success']['messages'][] = array(
'header' => 'Succès',
'body' => 'Les données provenant de ' . $importInfos->getName() . ' ont été supprimées.');
goto returnResponse;
} else {
//$messages = $formDelete->getMessages();
foreach ($messages as $message) {
$responseArray['error']['messages'][] = array(
'header' => 'Formulaire non valide',
'body' => 'Une erreur est survenue.',
'footer' => '');
}
goto returnResponse;
}
returnResponse:
$response = $this->getResponse();
$response->getHeaders()->addHeaderLine('Content-Type', 'application/json');
$response->setContent(json_encode($responseArray));
return $response;
}
public function deleteAllAction() {
// if ($this->zfcUserAuthentication()->hasIdentity()) {
// $user = $this->zfcUserAuthentication()->getIdentity();
// } else {
// return $this->redirect()->toRoute('zfcuser', array('action' => 'login'));
// }
if ($user = $this->currentUser()) {
} else {
return $this->redirect()->toRoute(\Application\Controller\UserController::ROUTE_LOGIN);
}
//$config = $this->getServiceLocator()->get('config');
$config = $this->getConfig();
//$configDoc = $config['wdp-admin']['document'];
$uploadPath = $config['upload-path'];
$uploadPath = $uploadPath . DIRECTORY_SEPARATOR . $user->getId() . DIRECTORY_SEPARATOR . 'input' . DIRECTORY_SEPARATOR;
//var_dump($_POST); exit;
if ($this->getRequest()->isPost()) {
// Récupération des données du post
$data = array_merge_recursive(
$this->getRequest()->getPost()->toArray()
);
//$newExchangeLinker = new \Application\Entity\UserExchangeLinker();
$formDelete = new \Application\Form\ImportationForm\DeleteAllFileByExchangeForm();
$formDelete->setInputFilter(new \Application\InputFilter\ImportationForm\DeleteAllFileByExchangeFormInputFilter());
// $form->setHydrator(new \DoctrineModule\Stdlib\Hydrator\DoctrineObject($entityManager, false))
// ->setObject(new \Application\Entity\UserExchangeLinker())
// ->setInputFilter(new \Application\InputFilter\ExchangeLinkerInputFilter());
//$testEntity->themes;
//var_dump($data);
//$data['statut'] = '1';
//new DoctrineEntity($serviceLocator->get('Doctrine\ORM\EntityManager'))
//$form->bind($newExchangeLinker);
$formDelete->setData($data);
//var_dump($data);
//exit;
$responseArray['error']['messages'] = array();
$responseArray['success']['messages'] = array();
if ($formDelete->isValid()) {
$dataForm = $formDelete->getData();
$exchangeId = (int) $dataForm['exchange'];
// if (empty($exchangeId)) {
// throw new Exception('Exchange inconnu');
// }
if ($exchangeId >= 0) {
$mapperExchange = new \Application\Mapper\ExchangeMapper($this->getEntityManager());
$findExchange = $mapperExchange->findById($exchangeId);
if (empty($findExchange)) {
$responseArray['error']['messages'][] = array(
'header' => 'Données non reconnues',
'body' => 'Impossible de supprimer ces données',
'footer' => ''
);
}
$responseArray['exchange'] = \Application\Tool\TextTool::strToUrl($findExchange->getName());
$uploadPath = $uploadPath . \Application\Tool\TextTool::strToUrl($findExchange->getName()) . DIRECTORY_SEPARATOR;
}
// else {
// $uploadPath = $uploadPath . 'exchange-generique' . DIRECTORY_SEPARATOR;
// }
$ledgioMapper = new \Application\Mapper\LedgioMapper($this->getEntityManager());
$listTrade = $ledgioMapper->findByExchangeAndUser($findExchange, $user);
if (is_dir($uploadPath) || !empty($listTrade)) {
if (is_dir($uploadPath)) {
$objects = scandir($uploadPath);
foreach ($objects as $object) {
if ($object != "." && $object != "..") {
if (!is_dir($uploadPath . "/" . $object)) {
unlink($uploadPath . "/" . $object);
}
}
}
}
$rmdirResponse = rmdir($uploadPath);
if (!empty($listTrade)) {
try {
$query = $this->getEntityManager()->createQuery("DELETE FROM Application\Entity\Ledgio l WHERE l.user = " . $user->getId() . ' AND l.exchange = ' . $findExchange->getId());
//var_dump($query);
/* @var $query \Doctrine\ORM\Query */
//if ($query->execute()) {
$query->execute();
$responseArray['success']['messages'][] = array(
'header' => 'Succès',
'body' => 'Les données de trade de ' . $findExchange->getName() . ' ont été supprimées.');
//}
//var_dump($responseArray);
//exit;
} catch (Exception $e) {
$responseArray['error']['messages'][] = array(
'header' => 'Impossible de supprimer les données',
'body' => 'Impossible de supprimer les données, les données ont peut être déjà été supprimées, recharger la page.');
}
} else {
$responseArray['error']['messages'][] = array(
'header' => 'Impossible de supprimer les données',
'body' => 'Impossible de supprimer les données, les données ont peut être déjà été supprimées, recharger la page.');
//$responseArray['success']['exchange'] = \Application\Tool\TextTool::strToUrl($findExchange->getName());
}
}
} else {
$messages = $formDelete->getMessages();
foreach ($messages as $message) {
$responseArray['error']['messages'][] = array(
'header' => 'Formulaire non valide',
'body' => $message,
'footer' => '');
}
}
}
$response = $this->getResponse();
$response->getHeaders()->addHeaderLine('Content-Type', 'application/json');
$response->setContent(json_encode($responseArray));
return $response;
//exit;
}
public function showAction() {
$this->layout('layout/layout-ledgio');
$exchangeUri = $this->params()->fromQuery('exchange', 'null');
var_dump($exchangeUri);
return new ViewModel(array(
'exchange' => $exchange
));
}
}