Index: trunk/kernel/include/item.php =================================================================== diff -u -r3162 -r3179 --- trunk/kernel/include/item.php (.../item.php) (revision 3162) +++ trunk/kernel/include/item.php (.../item.php) (revision 3179) @@ -1111,7 +1111,10 @@ function StripDisallowed($string) { - $not_allowed = Array(' ', '\\', '/', ':', '*', '?', '"', '<', '>', '|'); + $not_allowed = Array( ' ', '\\', '/', ':', '*', '?', '"', '<', '>', '|', + '~', '!', '@', '#', '$', '%', '^', '&', '(', ')', + '+', '=', '-', '{', '}', ']', '[', "'", ';', '.', ','); + $string = str_replace($not_allowed, '_', $string); $string = preg_replace('/(_+)/', '_', $string); Index: trunk/globals.php =================================================================== diff -u -r3148 -r3179 --- trunk/globals.php (.../globals.php) (revision 3148) +++ trunk/globals.php (.../globals.php) (revision 3179) @@ -1658,7 +1658,7 @@ // if update var count is zero, then do nothing if( !is_array($update) || count($update) == 0 ) return ''; - + // ensure that we have no empty values in enviroment variable foreach($update as $vl_key => $vl_value) { if(!$vl_value) $update[$vl_key] = '0'; // unset($update[$vl_key]); @@ -1670,7 +1670,9 @@ $ret = Array(); foreach($var_list as $var_name) { - $ret[] = GetEnvVar($prefix, $var_name); + $value = GetEnvVar($prefix, $var_name); + if(!$value && $var_name == 'id') $value = '0'; + $ret[] = $value; } // Removing all var_list_udpate Index: trunk/core/units/general/cat_dbitem.php =================================================================== diff -u -r3162 -r3179 --- trunk/core/units/general/cat_dbitem.php (.../cat_dbitem.php) (revision 3162) +++ trunk/core/units/general/cat_dbitem.php (.../cat_dbitem.php) (revision 3179) @@ -201,7 +201,10 @@ */ function stripDisallowed($string) { - $not_allowed = Array(' ', '\\', '/', ':', '*', '?', '"', '<', '>', '|'); + $not_allowed = Array( ' ', '\\', '/', ':', '*', '?', '"', '<', '>', '|', + '~', '!', '@', '#', '$', '%', '^', '&', '(', ')', + '+', '=', '-', '{', '}', ']', '[', "'", ';', '.', ','); + $string = str_replace($not_allowed, '_', $string); $string = preg_replace('/(_+)/', '_', $string); Index: trunk/kernel/units/general/cat_dbitem.php =================================================================== diff -u -r3162 -r3179 --- trunk/kernel/units/general/cat_dbitem.php (.../cat_dbitem.php) (revision 3162) +++ trunk/kernel/units/general/cat_dbitem.php (.../cat_dbitem.php) (revision 3179) @@ -201,7 +201,10 @@ */ function stripDisallowed($string) { - $not_allowed = Array(' ', '\\', '/', ':', '*', '?', '"', '<', '>', '|'); + $not_allowed = Array( ' ', '\\', '/', ':', '*', '?', '"', '<', '>', '|', + '~', '!', '@', '#', '$', '%', '^', '&', '(', ')', + '+', '=', '-', '{', '}', ']', '[', "'", ';', '.', ','); + $string = str_replace($not_allowed, '_', $string); $string = preg_replace('/(_+)/', '_', $string); Index: trunk/core/units/general/main_event_handler.php =================================================================== diff -u -r3174 -r3179 --- trunk/core/units/general/main_event_handler.php (.../main_event_handler.php) (revision 3174) +++ trunk/core/units/general/main_event_handler.php (.../main_event_handler.php) (revision 3179) @@ -52,7 +52,7 @@ $processed_params[$var_name] = isset( $url_params[$var_name] ) ? $url_params[$var_name] : $this->Application->GetVar($var_name); if ( isset($url_params[$var_name]) ) unset( $url_params[$var_name] ); } - + $ret = ''; $default_language_id = $this->Application->GetDefaultLanguageId(); if( $processed_params['m_lang'] != $default_language_id ) Index: trunk/kernel/include/category.php =================================================================== diff -u -r3174 -r3179 --- trunk/kernel/include/category.php (.../category.php) (revision 3174) +++ trunk/kernel/include/category.php (.../category.php) (revision 3179) @@ -40,7 +40,10 @@ function StripDisallowed($string) { - $not_allowed = Array(' ', '\\', '/', ':', '*', '?', '"', '<', '>', '|'); + $not_allowed = Array( ' ', '\\', '/', ':', '*', '?', '"', '<', '>', '|', + '~', '!', '@', '#', '$', '%', '^', '&', '(', ')', + '+', '=', '-', '{', '}', ']', '[', "'", ';', '.', ','); + $string = str_replace($not_allowed, '_', $string); $string = preg_replace('/(_+)/', '_', $string); Index: trunk/admin/category/addcategory.php =================================================================== diff -u -r3154 -r3179 --- trunk/admin/category/addcategory.php (.../addcategory.php) (revision 3154) +++ trunk/admin/category/addcategory.php (.../addcategory.php) (revision 3179) @@ -182,14 +182,14 @@