示例#1
0
             }
         }
         $arFields['TEST_DATA']['list'][] = array('type' => $type, 'old_value' => $TEST_DATA['old_value'][$k], 'new_value' => $TEST_DATA['new_value'][$k]);
     }
 } else {
     $errors[] = getMessage('ABTEST_EMPTY_TEST_DATA');
 }
 if (!empty($errors)) {
     $message = new CAdminMessage(array('MESSAGE' => getMessage('ABTEST_TEST_DATA_ERROR'), 'DETAILS' => join('<br>', $errors)));
 }
 if (empty($message)) {
     $arFields['ENABLED'] = 'Y';
     if ($ID > 0) {
         $result = Bitrix\ABTest\ABTestTable::update($ID, $arFields);
         if ($result->isSuccess() && $abtest['ACTIVE'] == 'Y') {
             Bitrix\ABTest\Helper::clearCache($arFields['SITE_ID']);
         }
     } else {
         $arFields['ACTIVE'] = 'N';
         $result = Bitrix\ABTest\ABTestTable::add($arFields);
         $ID = $result->isSuccess() ? $result->getId() : 0;
     }
     if (!$result->isSuccess()) {
         unset($arFields['ENABLED']);
         $message = new CAdminMessage(array('MESSAGE' => getMessage('ABTEST_SAVE_ERROR'), 'DETAILS' => join('<br>', $result->getErrorMessages())));
     } else {
         if (strlen($save) > 0) {
             LocalRedirect('abtest_admin.php?lang=' . LANG);
         } else {
             LocalRedirect($APPLICATION->getCurPage() . '?lang=' . LANG . '&ID=' . $ID);
         }
示例#2
0
                        $lAdmin->addGroupError(getMessage('ABTEST_ONLYONE_WARNING'));
                    }
                } else {
                    if ($abtest['ENABLED'] != 'Y') {
                        $lAdmin->addGroupError(getMessage('ABTEST_START_ERROR'));
                    } else {
                        if (!Bitrix\ABTest\Helper::startTest($ID)) {
                            $lAdmin->addGroupError(getMessage('ABTEST_START_ERROR'));
                        } else {
                            $arActiveTests[$abtest['SITE_ID']] = $abtest;
                        }
                    }
                }
                break;
            case 'stop':
                if (!Bitrix\ABTest\Helper::stopTest($ID)) {
                    $lAdmin->addGroupError(getMessage('ABTEST_STOP_ERROR'));
                }
                break;
        }
    }
}
$arHeaders = array(array('id' => 'TITLE', 'content' => getMessage('ABTEST_TBL_HEADER_TITLE'), 'default' => true, 'sort' => 'name'), array('id' => 'ACTIVE', 'content' => getMessage('ABTEST_TBL_HEADER_STATE'), 'default' => true, 'sort' => 'active'));
$lAdmin->addHeaders($arHeaders);
$result = Bitrix\ABTest\ABTestTable::getList(array('order' => array(strtoupper($by) => $order), 'select' => array('*', 'USER_NAME' => 'USER.NAME', 'USER_LAST_NAME' => 'USER.LAST_NAME', 'USER_SECOND_NAME' => 'USER.SECOND_NAME', 'USER_TITLE' => 'USER.TITLE', 'USER_LOGIN' => 'USER.LOGIN')));
$result = new CAdminResult($result, $sTableID);
$arRows = array();
$arActiveTests = array();
while ($abtest = $result->fetch()) {
    $arRows[] = $abtest;
    if ($abtest['ACTIVE'] == 'Y') {