1C-Bitrix 25.700.0
Загрузка...
Поиск...
Не найдено
attempt.php
См. документацию.
1<?php
2
3require_once($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/learning/classes/general/attempt.php");
4
6{
7 public static function DoInsert($arInsert, $arFields)
8 {
9 global $DB;
10
11 if ($arInsert[0] == '') // BUG ?
12 return false;
13
14 if (!isset($arFields["DATE_START"]))
15 {
16 $arFields['~DATE_START'] = $DB->CurrentTimeFunction();
17 }
18
19 return $DB->Add('b_learn_attempt', $arFields);
20 }
21
22
23 final protected static function _GetListSQLFormer ($sSelect, $obUserFieldsSql, $bCheckPerm, $USER, $arFilter, $strSqlSearch, &$strSqlFrom)
24 {
26
27 $strSqlFrom = "FROM b_learn_attempt A ".
28 "INNER JOIN b_learn_test T ON A.TEST_ID = T.ID ".
29 "INNER JOIN b_user U ON U.ID = A.STUDENT_ID ".
30 "LEFT JOIN b_learn_course C ON C.ID = T.COURSE_ID ".
31 "LEFT JOIN b_learn_test_mark TM ON A.TEST_ID = TM.TEST_ID ".
32 $obUserFieldsSql->GetJoin("A.ID") .
33 " WHERE
34 (TM.SCORE IS NULL
35 OR TM.SCORE =
36 (SELECT MIN(SCORE)
37 FROM b_learn_test_mark
38 WHERE SCORE >=
39 CASE WHEN A.STATUS = 'F' AND A.MAX_SCORE > 0
40 THEN 1.0*A.SCORE/A.MAX_SCORE*100
41 ELSE 0
42 END
43 AND TEST_ID = A.TEST_ID
44 )
45 ) ";
46
47 if ($oPermParser->IsNeedCheckPerm())
48 $strSqlFrom .= " AND C.LINKED_LESSON_ID IN (" . $oPermParser->SQLForAccessibleLessons() . ") ";
49
50 $strSqlFrom .= $strSqlSearch;
51
52 $strSql =
53 "SELECT DISTINCT ".
54 $sSelect." ".
55 $obUserFieldsSql->GetSelect()." ". $strSqlFrom;
56
57 return ($strSql);
58 }
59}
Определения attempt.php:9
Определения attempt.php:6
static _GetListSQLFormer($sSelect, $obUserFieldsSql, $bCheckPerm, $USER, $arFilter, $strSqlSearch, &$strSqlFrom)
Определения attempt.php:23
static DoInsert($arInsert, $arFields)
Определения attempt.php:7
$arFields
Определения dblapprove.php:5
$_SERVER["DOCUMENT_ROOT"]
Определения cron_frame.php:9
global $DB
Определения cron_frame.php:29
global $USER
Определения csv_new_run.php:40
$arFilter
Определения user_search.php:106