Example #1
0
            CForumSmile::Update($ID, $arFields);
        } else {
            $ID = CForumSmile::Add($arFields);
        }
        if ($e = $GLOBALS["APPLICATION"]->GetException()) {
            $arError[] = array("id" => "", "text" => $e->getString());
            if (!empty($_FILES["IMAGE"]["tmp_name"]) && isset($sUploadDir)) {
                @unlink($sUploadDir . $fileName);
                unset($arFields["IMAGE"]);
            }
        } else {
            BXClearCache(true, "/" . LANG . "/forum/smilesList/");
            BXClearCache(true, "/" . LANG . "/forum/iconsList/");
            BXClearCache(true, "/" . LANG . "/forum/smiles/");
            if (!empty($arSmile)) {
                $res = CForumSmile::GetByID($ID);
                if ($arSmile["IMAGE"] != $res["IMAGE"]) {
                    @unlink($_SERVER["DOCUMENT_ROOT"] . BX_ROOT . "/images/forum/" . ($arSmile["TYPE"] == "I" ? "icon" : "smile") . "/" . $arSmile["IMAGE"]);
                } elseif ($arSmile["TYPE"] != $res["TYPE"]) {
                    CopyDirFiles($_SERVER["DOCUMENT_ROOT"] . BX_ROOT . "/images/forum/" . ($arSmile["TYPE"] == "I" ? "icon" : "smile") . "/" . $arSmile["IMAGE"], $_SERVER["DOCUMENT_ROOT"] . BX_ROOT . "/images/forum/" . ($res["TYPE"] == "I" ? "icon" : "smile") . "/" . $arSmile["IMAGE"], false, false, true, "");
                }
            }
            LocalRedirect(strlen($save) > 0 ? "forum_smile.php?lang=" . LANG . "&" . GetFilterParams("filter_", false) : "forum_smile_edit.php?lang=" . LANG . "&ID=" . $ID . "&" . GetFilterParams("filter_", false));
        }
    }
    $e = new CAdminException($arError);
    $message = new CAdminMessage($ID > 0 ? GetMessage("ERROR_EDIT_SMILE") : GetMessage("ERROR_ADD_SMILE"), $e);
    $bInitVars = true;
}
/********************************************************************
				/Action
Example #2
0
 if ($_REQUEST['action_target'] == 'selected') {
     $arID = array();
     $dbResultList = CForumSmile::GetList(array($by => $order), $arFilter);
     while ($arResult = $dbResultList->Fetch()) {
         $arID[] = $arResult['ID'];
     }
 }
 foreach ($arID as $ID) {
     if (strlen($ID) <= 0) {
         continue;
     }
     switch ($_REQUEST['action']) {
         case "delete":
             @set_time_limit(0);
             $DB->StartTransaction();
             $arOldSmile = CForumSmile::GetByID($ID);
             if (!CForumSmile::Delete($ID)) {
                 $DB->Rollback();
                 if ($ex = $APPLICATION->GetException()) {
                     $lAdmin->AddGroupError($ex->GetString(), $ID);
                 } else {
                     $lAdmin->AddGroupError(GetMessage("ERROR_DEL_SMILE"), $ID);
                 }
             } else {
                 if ($arOldSmile) {
                     $strDirNameOld = $_SERVER["DOCUMENT_ROOT"] . "/bitrix/images/forum/";
                     if ($arOldSmile["TYPE"] == "I") {
                         $strDirNameOld .= "icon";
                     } else {
                         $strDirNameOld .= "smile";
                     }