Ejemplo n.º 1
0
                 if (strlen($arFieldsV["VALUE"]) > 0 && strlen($arFieldsV["NAME"]) > 0) {
                     if (!CSaleOrderPropsVariant::Add($arFieldsV)) {
                         $strError1 .= GetMessage("ERROR_ADD_VARIANT") . " (" . $arFieldsV["VALUE"] . ", " . $arFieldsV["NAME"] . ", " . $arFieldsV["SORT"] . ", " . $arFieldsV["DESCRIPTION"] . ").<br>";
                     }
                 }
             } elseif ($CF_DEL == "Y") {
                 CSaleOrderPropsVariant::Delete($CF_ID);
             } else {
                 if (strlen($arFieldsV["VALUE"]) <= 0) {
                     $strError1 .= GetMessage("ERROR_EMPTY_VAR_CODE") . " (" . $arFieldsV["NAME"] . ").<br>";
                 }
                 if (strlen($arFieldsV["NAME"]) <= 0) {
                     $strError1 .= GetMessage("ERROR_EMPTY_VAR_NAME") . " (" . $arFieldsV["VALUE"] . ").<br>";
                 }
                 if (strlen($strError1) <= 0) {
                     if (!CSaleOrderPropsVariant::Update($CF_ID, $arFieldsV)) {
                         $strError .= GetMessage("ERROR_EDIT_VARIANT") . " (" . $arFieldsV["VALUE"] . ", " . $arFieldsV["NAME"] . ", " . $arFieldsV["SORT"] . ", " . $arFieldsV["DESCRIPTION"] . ").<br>";
                     }
                 }
             }
             $strError .= $strError1;
         }
     } else {
         CSaleOrderPropsVariant::DeleteAll($ID);
     }
 }
 if (strlen($strError) > 0) {
     $bInitVars = True;
 }
 if (strlen($save) > 0 && strlen($strError) <= 0) {
     LocalRedirect("sale_order_props.php?lang=" . LANG . GetFilterParams("filter_", false));
Ejemplo n.º 2
0
 if ($property['TYPE'] == 'ENUM') {
     $index = 0;
     foreach ($variants as $key => $row) {
         if ($row['DELETE']) {
             if ($row['ID']) {
                 CSaleOrderPropsVariant::Delete($row['ID']);
             }
             // TODO modernize
             unset($variants[$key]);
         } else {
             ++$index;
             $variantId = $row['ID'];
             $row = array_intersect_key($row, $variantSettings);
             if ($variantId) {
                 unset($row['ID']);
                 if (!CSaleOrderPropsVariant::Update($variantId, $row)) {
                     $errors[] = Loc::getMessage('ERROR_EDIT_VARIANT') . " {$index}";
                 }
             } else {
                 $row['ORDER_PROPS_ID'] = $propertyId;
                 if ($variantId = CSaleOrderPropsVariant::Add($row)) {
                     $variants[$key]['ID'] = $variantId;
                 } else {
                     $errors[] = Loc::getMessage('ERROR_ADD_VARIANT') . " {$index}";
                 }
             }
         }
     }
 } elseif ($existentProperty && $existentProperty['TYPE'] == 'ENUM') {
     CSaleOrderPropsVariant::DeleteAll($propertyId);
 }