diff --git a/bt5/erp5_web_ung_theme/SkinTemplateItem/portal_skins/erp5_web_ung_theme/WebSection_deleteObjectList.xml b/bt5/erp5_web_ung_theme/SkinTemplateItem/portal_skins/erp5_web_ung_theme/WebSection_deleteObjectList.xml
index 135e2980716f364e5b550c410f7545bc7609f9ca..a1ca8127c09722b799d5a1c3d8ccf7996a911e83 100644
--- a/bt5/erp5_web_ung_theme/SkinTemplateItem/portal_skins/erp5_web_ung_theme/WebSection_deleteObjectList.xml
+++ b/bt5/erp5_web_ung_theme/SkinTemplateItem/portal_skins/erp5_web_ung_theme/WebSection_deleteObjectList.xml
@@ -57,10 +57,14 @@ website_url = context.absolute_url()\n
 uid_list = context.REQUEST.get("uids")\n
 \n
 if uid_list is not None:\n
-  object_list = portal.portal_catalog(portal_type=portal_type_list, \n
-                                      uid=uid_list)\n
-  id_list = [object.getId() for object in object_list]\n
-  portal.web_page_module.deleteContent(id_list)\n
+  for catalog_object in portal.portal_catalog(portal_type=portal_type_list, \n
+                                      uid=uid_list):\n
+    if catalog_object.getValidationState() == "deleted":\n
+      continue\n
+    object = context.restrictedTraverse(catalog_object.getPath())\n
+    object.delete()\n
+  \n
+    #portal.web_page_module.deleteContent(id_list)\n
 \n
 return context.ERP5Site_redirect(website_url, keep_items={"reset": 1})\n
 </string> </value>
@@ -106,12 +110,9 @@ return context.ERP5Site_redirect(website_url, keep_items={"reset": 1})\n
                             <string>website_url</string>
                             <string>uid_list</string>
                             <string>None</string>
-                            <string>object_list</string>
-                            <string>append</string>
-                            <string>$append0</string>
                             <string>_getiter_</string>
+                            <string>catalog_object</string>
                             <string>object</string>
-                            <string>id_list</string>
                           </tuple>
                         </value>
                     </item>
diff --git a/bt5/erp5_web_ung_theme/bt/change_log b/bt5/erp5_web_ung_theme/bt/change_log
index 829c9d3723b461733ecc1174f2fea46ca79e8d16..57ee68a9e2ec7643ad76cd5efd859c112728c876 100644
--- a/bt5/erp5_web_ung_theme/bt/change_log
+++ b/bt5/erp5_web_ung_theme/bt/change_log
@@ -1,3 +1,6 @@
+2010-12-04 gabriel
+* Refactor script to not delete object completely but only change the state in the first time. The goals is only remove the object completely on the trash section.
+
 2010-11-12 gabriel
 * clean up css to show records number of listbox in toolbar
 
diff --git a/bt5/erp5_web_ung_theme/bt/revision b/bt5/erp5_web_ung_theme/bt/revision
index bd753ccc4b9f3ab7d4f134e4994d77da191b3537..90be1cdd8eeee919ebb35a1efddcfa95776fb98a 100644
--- a/bt5/erp5_web_ung_theme/bt/revision
+++ b/bt5/erp5_web_ung_theme/bt/revision
@@ -1 +1 @@
-94
\ No newline at end of file
+95
\ No newline at end of file