static function GetLogList($arOrder = array(), $arFilter = array())
{
global $DB;
$arFields = array(
'COUPON_ID' => array(
'TABLE_ALIAS' => 'C',
'FIELD_NAME' => 'C.ID',
'FIELD_TYPE' => 'int', //int, double, file, enum, int, string, date, datetime
'JOIN' => false,
),
'COUPON' => array(
'TABLE_ALIAS' => 'L',
'FIELD_NAME' => 'L.COUPON',
'FIELD_TYPE' => 'string', //int, double, file, enum, int, string, date, datetime
'JOIN' => false,
),
'SUCCESS' => array(
'TABLE_ALIAS' => 'L',
'FIELD_NAME' => 'L.SUCCESS',
'FIELD_TYPE' => 'string', //int, double, file, enum, int, string, date, datetime
'JOIN' => false,
),
'USER_ID' => array(
'TABLE_ALIAS' => 'L',
'FIELD_NAME' => 'L.USER_ID',
'FIELD_TYPE' => 'int', //int, double, file, enum, int, string, date, datetime
'JOIN' => false,
),
'TIMESTAMP_X' => array(
'TABLE_ALIAS' => 'L',
'FIELD_NAME' => 'L.TIMESTAMP_X',
'FIELD_TYPE' => 'datetime', //int, double, file, enum, int, string, date, datetime
'JOIN' => false,
),
);
$obQueryWhere = new CSQLWhere;
$obQueryWhere->SetFields($arFields);
$where = $obQueryWhere->GetQuery($arFilter);
$order = '';
if (is_array($arOrder))
{
foreach ($arOrder as $k => $v)
{
if (array_key_exists($k, $arFields))
{
$v = mb_strtoupper($v);
if($v != 'DESC')
{
$v ='ASC';
}
if ($order <> '')
{
$order .= ', ';
}
$order .= $arFields[$k]['FIELD_NAME'] . ' ' . $v;
}
}
}
$strQuery = "SELECT C.ID COUPON_ID, L.COUPON COUPON,
L.USER_ID USER_ID, L.SUCCESS SUCCESS, L.AFTER_COUNT AFTER_COUNT,
L.SESSION_ID SESSION_ID, L.GUEST_ID GUEST_ID,
U.LOGIN LOGIN, U.NAME FIRST_NAME, U.LAST_NAME LAST_NAME,
".$DB->DateToCharFunction('L.TIMESTAMP_X')." TIMESTAMP_X
FROM b_ticket_supercoupons_log L
LEFT JOIN b_ticket_supercoupons C ON (L.COUPON_ID = C.ID)
LEFT JOIN b_user U ON (L.USER_ID IS NOT NULL AND L.USER_ID = U.ID)";
if ($where <> '')
{
$strQuery .= ' WHERE ' . $where;
}
if ($order <> '')
{
$strQuery .= ' ORDER BY ' . $order;
}
return $DB->Query($strQuery, false, "File: ".__FILE__."
Line: ".__LINE__);
}