Exemplo n.º 1
0
 function Edit($Params)
 {
     if (!CSticker::CanDoOperation('sticker_edit')) {
         return;
     }
     global $DB, $USER;
     $arFields = $Params['arFields'];
     if (!CSticker::CheckFields($arFields)) {
         return false;
     }
     $bNew = !isset($arFields['ID']) || $arFields['ID'] <= 0;
     if (!isset($arFields['~DATE_UPDATE'])) {
         $arFields['~DATE_UPDATE'] = $DB->CurrentTimeFunction();
     }
     if (!isset($arFields['MODIFIED_BY'])) {
         $arFields['MODIFIED_BY'] = $USER->GetId();
     }
     if (!isset($arFields['SITE_ID'])) {
         $arFields['SITE_ID'] = $_REQUEST['site_id'];
     }
     if ($bNew) {
         if (!isset($arFields['CREATED_BY'])) {
             $arFields['CREATED_BY'] = $arFields['MODIFIED_BY'];
         }
         if (!isset($arFields['~DATE_CREATE'])) {
             $arFields['~DATE_CREATE'] = $arFields['~DATE_UPDATE'];
         }
         unset($arFields['ID']);
         $ID = $DB->Add("b_sticker", $arFields, array("CONTENT", "MARKER_ADJUST"));
     } else {
         $ID = $arFields['ID'];
         unset($arFields['ID']);
         $strUpdate = $DB->PrepareUpdate("b_sticker", $arFields);
         $strSql = "UPDATE b_sticker SET " . $strUpdate . " WHERE ID=" . IntVal($ID);
         $DB->QueryBind($strSql, array("CONTENT" => $arFields["CONTENT"], "MARKER_ADJUST" => $arFields["MARKER_ADJUST"]), false, "File: " . __FILE__ . "<br>Line: " . __LINE__);
     }
     CSticker::ClearCache();
     return $ID;
 }