Example #1
0
 function Update($ID, $arFields, $arParams = array())
 {
     global $DB;
     $ID = intval($ID);
     if ($ID < 1) {
         return false;
     }
     $bCheckRights = true;
     if (isset($arParams['CHECK_PERMISSIONS']) && $arParams['CHECK_PERMISSIONS'] === 'N') {
         $bCheckRights = false;
     }
     if (CCertification::CheckFields($arFields, $ID, $bCheckRights)) {
         unset($arFields["ID"]);
         unset($arFields["STUDENT_ID"]);
         unset($arFields["COURSE_ID"]);
         $arBinds = array();
         CLearnHelper::FireEvent('OnBeforeCertificateUpdate', $arFields);
         $strUpdate = $DB->PrepareUpdate("b_learn_certification", $arFields, "learning");
         $strSql = "UPDATE b_learn_certification SET " . $strUpdate . " WHERE ID=" . $ID;
         $DB->QueryBind($strSql, $arBinds, false, "File: " . __FILE__ . "<br>Line: " . __LINE__);
         CLearnHelper::FireEvent('OnAfterCertificateUpdate', $arFields);
         return true;
     }
     return false;
 }
Example #2
0
	/**
	 * <p>Метод изменяет параметры сертификата с идентификатором ID.</p>
	 *
	 *
	 *
	 *
	 * @param int $ID  Идентификатор сертификата.
	 *
	 *
	 *
	 * @param array $arFields  Массив Array("поле"=&gt;"значение", ...). Содержит значения <a
	 * href="http://dev.1c-bitrix.ru/api_help/learning/fields.php#certification">всех полей</a>
	 * сертификата. Обязательные поля должны быть заполнены.
	 *
	 *
	 *
	 * @return bool <p>Метод возвращает <i>true</i>, если изменение прошло успешно, при
	 * возникновении ошибки функция вернет <i>false</i>. При возникновении
	 * ошибки в исключениях будет содержаться текст ошибки</p>
	 *
	 *
	 * <h4>Example</h4> 
	 * <pre>
	 * &lt;?
	 * if (CModule::IncludeModule("learning"))
	 * {
	 *     $CERTIFICATE_ID = 15;
	 * 
	 *     $arFields = Array(
	 *         "ACTIVE" =&gt; "N",
	 *         "SUMMARY" =&gt; 290,
	 *         "MAX_SUMMARY" =&gt; 555
	 *     );
	 * 
	 *     $certificate = new CCertification;
	 *     $success =  $certificate-&gt;Update($CERTIFICATE_ID, $arFields);
	 * 
	 *     if($success)
	 *     {
	 *         echo "Ok!";
	 *     }
	 *     else
	 *     {
	 *         if($e = $APPLICATION-&gt;GetException())
	 *             echo "Error: ".$e-&gt;GetString();
	 *     }
	 * }
	 * ?&gt;
	 * </pre>
	 *
	 *
	 *
	 * <h4>See Also</h4> 
	 * <ul> <li> <a href="http://dev.1c-bitrix.ru/api_help/learning/fields.php#certification">Поля</a> </li> <li> <a
	 * href="http://dev.1c-bitrix.ru/api_help/learning/classes/ccertification/index.php">CCertification</a>::<a
	 * href="http://dev.1c-bitrix.ru/api_help/learning/classes/ccertification/add.php">Add</a> </li> </ul><a
	 * name="examples"></a>
	 *
	 *
	 * @static
	 * @link http://dev.1c-bitrix.ru/api_help/learning/classes/ccertification/update.php
	 * @author Bitrix
	 */
	public static function Update($ID, $arFields)
	{
		global $DB;

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

		if (CCertification::CheckFields($arFields, $ID))
		{
			unset($arFields["ID"]);
			unset($arFields["STUDENT_ID"]);
			unset($arFields["COURSE_ID"]);

			$arBinds=Array(
				//""=>$arFields[""]
			);

			CLearnHelper::FireEvent('OnBeforeCertificateUpdate', $arFields);

			$strUpdate = $DB->PrepareUpdate("b_learn_certification", $arFields, "learning");
			$strSql = "UPDATE b_learn_certification SET ".$strUpdate." WHERE ID=".$ID;
			$DB->QueryBind($strSql, $arBinds, false, "File: ".__FILE__."<br>Line: ".__LINE__);

			CLearnHelper::FireEvent('OnAfterCertificateUpdate', $arFields);

			return true;
		}

		return false;
	}