mirror of
https://github.com/alchemy-fr/Phraseanet.git
synced 2025-10-08 10:34:34 +00:00

Conflicts: lib/Alchemy/Phrasea/Command/Developer/JavascriptBuilder.php lib/Alchemy/Phrasea/Controller/Prod/Basket.php lib/Alchemy/Phrasea/Core/Provider/TaskManagerServiceProvider.php lib/classes/Exception/Feed/ItemNotFound.php lib/classes/Exception/Feed/PublisherNotFound.php lib/classes/Feed/Abstract.php lib/classes/Feed/Adapter.php lib/classes/Feed/Aggregate.php lib/classes/Feed/Collection.php lib/classes/Feed/CollectionInterface.php lib/classes/Feed/Entry/Adapter.php lib/classes/Feed/Entry/Collection.php lib/classes/Feed/Entry/Interface.php lib/classes/Feed/Entry/Item.php lib/classes/Feed/Entry/ItemInterface.php lib/classes/Feed/Interface.php lib/classes/Feed/Link.php lib/classes/Feed/LinkInterface.php lib/classes/Feed/Publisher/Adapter.php lib/classes/Feed/Publisher/Interface.php lib/classes/Feed/Token.php lib/classes/Feed/TokenAggregate.php lib/classes/Feed/XML/Abstract.php lib/classes/Feed/XML/Atom.php lib/classes/Feed/XML/Cooliris.php lib/classes/Feed/XML/Interface.php lib/classes/Feed/XML/RSS.php lib/classes/Feed/XML/RSS/ImageInterface.php lib/classes/http/request.php lib/classes/module/console/schedulerStart.php lib/classes/module/console/schedulerState.php lib/classes/module/console/schedulerStop.php lib/classes/module/console/taskState.php lib/classes/module/console/tasklist.php lib/classes/module/console/taskrun.php lib/classes/registry.php lib/classes/registryInterface.php lib/classes/set/order.php lib/classes/system/url.php lib/classes/task/Scheduler.php lib/classes/task/appboxAbstract.php lib/classes/task/databoxAbstract.php lib/classes/task/manager.php lib/classes/task/period/RecordMover.php lib/classes/task/period/apibridge.php lib/classes/task/period/archive.php lib/classes/task/period/cindexer.php lib/classes/task/period/emptyColl.php lib/classes/task/period/ftp.php lib/classes/task/period/ftpPull.php lib/classes/task/period/subdef.php lib/classes/task/period/test.php lib/classes/task/period/writemeta.php lib/conf.d/PhraseaFixture/AbstractWZ.php lib/conf.d/PhraseaFixture/Basket/LoadFiveBaskets.php lib/conf.d/PhraseaFixture/Basket/LoadOneBasket.php lib/conf.d/PhraseaFixture/Basket/LoadOneBasketEnv.php lib/conf.d/PhraseaFixture/Lazaret/LoadOneFile.php lib/conf.d/PhraseaFixture/Story/LoadOneStory.php lib/conf.d/PhraseaFixture/UsrLists/ListAbstract.php lib/conf.d/PhraseaFixture/UsrLists/UsrList.php lib/conf.d/PhraseaFixture/UsrLists/UsrListEntry.php lib/conf.d/PhraseaFixture/UsrLists/UsrListOwner.php lib/conf.d/PhraseaFixture/ValidationParticipant/LoadOneParticipant.php lib/conf.d/PhraseaFixture/ValidationParticipant/LoadParticipantWithSession.php lib/conf.d/PhraseaFixture/ValidationSession/LoadOneValidationSession.php
128 lines
2.3 KiB
PHP
128 lines
2.3 KiB
PHP
<?php
|
|
|
|
/*
|
|
* This file is part of Phraseanet
|
|
*
|
|
* (c) 2005-2014 Alchemy
|
|
*
|
|
* For the full copyright and license information, please view the LICENSE
|
|
* file that was distributed with this source code.
|
|
*/
|
|
|
|
use Alchemy\Phrasea\Application;
|
|
|
|
class module_report_sql
|
|
{
|
|
/**
|
|
*
|
|
* @var connection_PDO
|
|
*/
|
|
public $conn;
|
|
|
|
/**
|
|
*
|
|
* @var connection_PDO
|
|
*/
|
|
public $connbas;
|
|
|
|
/**
|
|
*
|
|
* @var module_report_sqlfilter
|
|
*/
|
|
public $filter;
|
|
public $sql;
|
|
public $params;
|
|
public $total_row;
|
|
public $enable_limit;
|
|
public $groupby = false;
|
|
public $on = false;
|
|
|
|
public function __construct(Application $app, module_report $report)
|
|
{
|
|
$this->conn = connection::getPDOConnection($app);
|
|
$this->connbas = connection::getPDOConnection($app, $report->getSbasId());
|
|
$this->filter = new module_report_sqlfilter($app, $report);
|
|
$this->sql = '';
|
|
$this->params = [];
|
|
$this->total_row = 0;
|
|
$this->enable_limit = $report->getEnableLimit();
|
|
}
|
|
|
|
public function setGroupBy($groupby)
|
|
{
|
|
$this->groupby = $groupby;
|
|
|
|
return $this;
|
|
}
|
|
|
|
public function getGroupby()
|
|
{
|
|
return $this->groupby;
|
|
}
|
|
|
|
public function setOn($on)
|
|
{
|
|
$this->on = $on;
|
|
|
|
return $this;
|
|
}
|
|
|
|
public function getOn()
|
|
{
|
|
return $this->on;
|
|
}
|
|
|
|
public function setFilter(module_report_sqlfilter $filter)
|
|
{
|
|
$this->filter = $filter;
|
|
}
|
|
|
|
/**
|
|
*
|
|
* @return module_report_sqlfilter
|
|
*/
|
|
public function getFilters()
|
|
{
|
|
return $this->filter;
|
|
}
|
|
|
|
public function getSql()
|
|
{
|
|
return $this->sql;
|
|
}
|
|
|
|
public function getParams()
|
|
{
|
|
return $this->params;
|
|
}
|
|
|
|
public function getTotalRows()
|
|
{
|
|
return $this->total_row;
|
|
}
|
|
|
|
public function setTotalrows($total)
|
|
{
|
|
$this->total_row = $total;
|
|
}
|
|
|
|
public function getTransQuery($champ)
|
|
{
|
|
$tanslation = $this->filter->getCorFilter();
|
|
if (array_key_exists($champ, $tanslation)) {
|
|
return $tanslation[$champ];
|
|
} else {
|
|
return $champ;
|
|
}
|
|
}
|
|
|
|
/**
|
|
*
|
|
* @return connection_PDO
|
|
*/
|
|
public function getConnBas()
|
|
{
|
|
return $this->connbas;
|
|
}
|
|
}
|