Решил в общем так:
case 2: // File
$item_dir_path = UPLOADDIR . 'shop_' . $oShop->id . '/';
$item_dir_path .= Core_File::getNestingDirPath($this->_shopOrder->id, $oShop->Site->nesting_level) . '/order_' . $this->_shopOrder->id . '/';
if (!is_dir($item_dir_path))
{
try
{
Core_File::mkdir($item_dir_path, CHMOD, TRUE);
} catch (Exception $e) {}
}
$kernel = & singleton('kernel');
$ext = $kernel->GetExtension($value['name']);
if ($ext != '')
{
$ext = '.' . $ext;
}
$property_big_file = $item_dir_path . 'order_property_file_' . $iProperty_id . '_' . $this->_shopOrder->id . $ext;
$check=true;
if ($value['name']!='') {
$file_name=$value['name'];
$tmp=$value['tmp_name'];
$trusted_formats=array('gif', 'jpg', 'png', 'bmp', 'eps', 'tif', 'rtf', 'pdf', 'doc', 'docx', 'xls', 'xlsx', 'rar', 'zip', 'tar');
$check_file_name=explode(".",$file_name);
$ext=$check_file_name[count($check_file_name)-1];
if (!in_array($ext,$trusted_formats)) {
die("Разрешены форматы gif, jpg, png, bmp, eps, tif, rtf, pdf, doc, docx, xls, xlsx, rar, zip, tar");
$check=false;
}
if (filesize($tmp)>10000000) {
die("Размер не должен привышать 10Mb");
$check=false;
}
}
if ($check)
{
if (move_uploaded_file($tmp, CMS_FOLDER . $property_big_file)) {
$oProperty_Value->file = basename($property_big_file);
$oProperty_Value->file_name = Core_Type_Conversion::toStr($value['name']);
$oProperty_Value->file_description = '/'.$property_big_file;
$oProperty_Value->save();
}
}
break;
Но стирается все время после обновления системы( Обновляю и возвращаю обратно пока так.