Index: trunk/kernel/frontaction.php =================================================================== diff -u -r955 -r959 --- trunk/kernel/frontaction.php (.../frontaction.php) (revision 955) +++ trunk/kernel/frontaction.php (.../frontaction.php) (revision 959) @@ -592,77 +592,96 @@ $objSession->SetVariable("Perpage_Category",$_POST["cat_perpage"]); break; case "m_add_cat_confirm": -// phpinfo(INFO_VARIABLES); - $perm = 0; - $CategoryId=$objCatList->CurrentCategoryID(); - if ($objSession->HasCatPermission("CATEGORY.ADD.PENDING")) - $perm = 2; - if ($objSession->HasCatPermission("CATEGORY.ADD")) - $perm = 1; - if ($perm == 0) - { - $MissingCount++; - $FormError["m_addcat"]["name"] = language("lu_ferror_no_access"); - } - else - { - $MissingCount = SetMissingDataErrors("m_addcat"); - if(is_array($_FILES)) - { - foreach($_FILES as $field => $file) - { - $allowed = TRUE; - if(strlen($_POST["imagetypes"][$field])) - { - $types = explode(",",strtolower($_POST["imagetypes"][$field])); - if(is_array($types)) - { - if(count($types)>0) - { - $path_parts = pathinfo($file["name"]); - $ext = $path_parts["extension"]; - $allowed = in_array($ext,$types); - if(!$allowed) - { - $MissingCount++; - $FormError["m_addcat"][$field] = language("lu_ferror_wrongtype"); - } - } - } - } - $maxsize = (int)$_POST["maxsize"][$field]; - if($maxsize>0 && $allowed && $file["size"]>$maxsize) - { - $allowed = FALSE; - $MissingCount++; - $FormError["m_addcat"][$field] = language("lu_ferror_toolarge"); - } - } - } - if($MissingCount==0) - { - $CreatedOn = date("U"); - $_POST=inp_striptags($_POST); - $name = $_POST["name"]; - $desc = $_POST["description"]; - $metadesc = $_POST["meta_description"]; - $keywords = $_POST["meta_keywords"]; - $parent = $objCatList->CurrentCategoryID(); - $cat =& $objCatList->Add($parent, $name, $desc, $CreatedOn, - 0, $perm, 2, 2, 2, 0, $keywords,$metadesc); - $cat->UpdateCachedPath(); - $cat->Update(); - $cat->UpdateACL(); - $objCatList->UpdateMissingCacheData(); + $perm = 0; + $CategoryId=$objCatList->CurrentCategoryID(); + if ($objSession->HasCatPermission("CATEGORY.ADD.PENDING")) + $perm = 2; + if ($objSession->HasCatPermission("CATEGORY.ADD")) + $perm = 1; + if ($perm == 0) + { + $MissingCount++; + $FormError["m_addcat"]["name"] = language("lu_ferror_no_access"); + } + else + { + $MissingCount = SetMissingDataErrors("m_addcat"); + if(is_array($_FILES)) + { + foreach($_FILES as $field => $file) + { + $allowed = TRUE; + if(strlen($_POST["imagetypes"][$field])) + { + $types = explode(",",strtolower($_POST["imagetypes"][$field])); + if(is_array($types)) + { + if(count($types)>0) + { + $path_parts = pathinfo($file["name"]); + $ext = $path_parts["extension"]; + $allowed = in_array($ext,$types); + if(!$allowed) + { + $MissingCount++; + $FormError["m_addcat"][$field] = language("lu_ferror_wrongtype"); + } + } + } + } + $maxsize = (int)$_POST["maxsize"][$field]; + if($maxsize>0 && $allowed && $file["size"]>$maxsize) + { + $allowed = FALSE; + $MissingCount++; + $FormError["m_addcat"][$field] = language("lu_ferror_toolarge"); + } + } + } + if($MissingCount==0) + { + $CreatedOn = date("U"); + $_POST=inp_striptags($_POST); + $name = $_POST["name"]; + $desc = $_POST["description"]; + $metadesc = $_POST["meta_description"]; + $keywords = $_POST["meta_keywords"]; + $parent = $objCatList->CurrentCategoryID(); + $cat =& $objCatList->Add($parent, $name, $desc, $CreatedOn, + 0, $perm, 2, 2, 2, 0, $keywords,$metadesc); - if(strlen($_GET["Confirm"])) - { - $var_list["t"] = $_GET["Confirm"]; - } - else - $var_list["t"] = $_GET["DestTemplate"]; - } - } + $CatResourceId= $cat->Get('ResourceId'); + $objCustomFields = new clsCustomFieldList($cat->type); + $field_list = $objCustomFields->Query_CustomField('Type='.$cat->type); + for($i=0;$i<$objCustomFields->NumItems(); $i++) + { + $field = & $objCustomFields->GetItemRefByIndex($i); + $fieldid= $field->Get('CustomFieldId'); + $fname = $field->Get('FieldName'); + if(isset($_POST[$fname])) + { + $objCustomDataList->SetFieldValue($fieldid,$CatResourceId,$_POST[$fname]); + } + elseif(isset($_POST[strtolower($fname)])) + { + $objCustomDataList->SetFieldValue($fieldid,$CatResourceId,$_POST[strtolower($fname)]); + } + } + $objCustomDataList->SaveData(); + + $cat->UpdateCachedPath(); + $cat->Update(); + $cat->UpdateACL(); + $objCatList->UpdateMissingCacheData(); + + if(strlen($_GET["Confirm"])) + { + $var_list["t"] = $_GET["Confirm"]; + } + else + $var_list["t"] = $_GET["DestTemplate"]; + } + } break; case "m_front_review_add": if($objSession->InSpamControl($_POST["ItemId"]))