Пример #1
0
					<td align="center" width="20%"><?php 
echo GetMessage("LEARNING_TEST_MARK");
?>
</td>
					<td align="center" width="50%"><?php 
echo GetMessage("LEARNING_TEST_MARK_MESSAGE");
?>
</td>
					<td align="center" width="10%"><?php 
echo GetMessage("LEARNING_TEST_MARK_DELETE");
?>
</td>
				</tr>
				<?php 
if ($ID) {
    $marks = CLTestMark::GetList(array("score" => "DESC"), array("TEST_ID" => $ID));
    while ($arMarkData = $marks->Fetch()) {
        $s_ID = (int) $arMarkData['ID'];
        $s_SCORE = (int) $arMarkData['SCORE'];
        $s_MARK = htmlspecialcharsbx($arMarkData['MARK']);
        $s_DESCRIPTION = htmlspecialcharsbx($arMarkData['DESCRIPTION']);
        ?>
							<tr>
								<td align="center"><?php 
        echo $s_ID;
        ?>
</td>
								<td align="center">
									<div style="white-space:nowrap;"><?php 
        echo GetMessage("LEARNING_TEST_SCORE_TILL");
        ?>
Пример #2
0
 function Delete($ID)
 {
     global $DB;
     $ID = intval($ID);
     if ($ID < 1) {
         return false;
     }
     CLearnHelper::FireEvent('OnBeforeTestDelete', $ID);
     //Gradebook
     $records = CGradeBook::GetList(array(), array("TEST_ID" => $ID));
     while ($arRecord = $records->Fetch()) {
         if (!CGradeBook::Delete($arRecord["ID"])) {
             return false;
         }
     }
     //Attempts
     $attempts = CTestAttempt::GetList(array(), array("TEST_ID" => $ID));
     while ($arAttempt = $attempts->Fetch()) {
         if (!CTestAttempt::Delete($arAttempt["ID"])) {
             return false;
         }
     }
     //Marks
     $marks = CLTestMark::GetList(array(), array("TEST_ID" => $ID));
     while ($arMark = $marks->Fetch()) {
         if (!CLTestMark::Delete($arMark["ID"])) {
             return false;
         }
     }
     $strSql = "DELETE FROM b_learn_test WHERE ID = " . $ID;
     if (!$DB->Query($strSql, false, "File: " . __FILE__ . "<br>Line: " . __LINE__)) {
         return false;
     }
     CEventLog::add(array('AUDIT_TYPE_ID' => 'LEARNING_REMOVE_ITEM', 'MODULE_ID' => 'learning', 'ITEM_ID' => 'T #' . $ID, 'DESCRIPTION' => 'test removed'));
     CLearnHelper::FireEvent('OnAfterTestDelete', $ID);
     return true;
 }
Пример #3
0
 function GetByPercent($TEST_ID, $PERCENT)
 {
     global $DB;
     $PERCENT = intval($PERCENT);
     if ($PERCENT < 0 || $PERCENT > 100) {
         return false;
     }
     $TEST_ID = intval($TEST_ID);
     if ($TEST_ID <= 0) {
         return false;
     }
     $arFilter = array(">=SCORE" => $PERCENT, "TEST_ID" => $TEST_ID);
     $arOrder = array("SCORE" => "ASC");
     $rsMark = CLTestMark::GetList($arOrder, $arFilter);
     if ($arMark = $rsMark->GetNext()) {
         return $arMark["MARK"];
     } else {
         return false;
     }
 }
Пример #4
0
	/**
	 * <p>Метод удаляет тест с идентификатором ID.</p>
	 *
	 *
	 *
	 *
	 * @param int $ID  Идентификатор теста.
	 *
	 *
	 *
	 * @return bool <p>Метод возвращает <i>true</i> в случае успешного удаления теста, в
	 * противном случае возвращает <i>false</i>.</p><a name="examples"></a>
	 *
	 *
	 * <h4>Example</h4> 
	 * <pre>
	 * &lt;?
	 * if (CModule::IncludeModule("learning"))
	 * {
	 * 
	 *     $TEST_ID = 99;
	 *     $COURSE_ID = 97;
	 * 
	 *     if (CCourse::GetPermission($COURSE_ID) &gt;= 'W')
	 *     {
	 *         @set_time_limit(0);
	 *         $DB-&gt;StartTransaction();
	 *         if (!CTest::Delete($TEST_ID))
	 *         {
	 *             echo "Error!";
	 *             $DB-&gt;Rollback();
	 *         }
	 *         else
	 *             $DB-&gt;Commit();
	 *     }
	 * }
	 * ?&gt;
	 * </pre>
	 *
	 *
	 * @static
	 * @link http://dev.1c-bitrix.ru/api_help/learning/classes/ctest/delete.php
	 * @author Bitrix
	 */
	public static function Delete($ID)
	{
		global $DB;

		$ID = intval($ID);
		if ($ID < 1) return false;

		CLearnHelper::FireEvent('OnBeforeTestDelete', $ID);

		//Gradebook
		$records = CGradeBook::GetList(Array(), Array("TEST_ID" => $ID));
		while($arRecord = $records->Fetch())
		{
			if(!CGradeBook::Delete($arRecord["ID"]))
				return false;
		}

		//Attempts
		$attempts = CTestAttempt::GetList(Array(), Array("TEST_ID" => $ID));
		while($arAttempt = $attempts->Fetch())
		{
			if(!CTestAttempt::Delete($arAttempt["ID"]))
				return false;
		}

		//Marks
		$marks = CLTestMark::GetList(Array(), Array("TEST_ID" => $ID));
		while($arMark = $marks->Fetch())
		{
			if(!CLTestMark::Delete($arMark["ID"]))
				return false;
		}


		$strSql = "DELETE FROM b_learn_test WHERE ID = ".$ID;

		if (!$DB->Query($strSql, false, "File: ".__FILE__."<br>Line: ".__LINE__))
			return false;

		CLearnHelper::FireEvent('OnAfterTestDelete', $ID);

		return true;

	}