Rodney Enciso Arias před 8 roky
revize
6a47f9adf2

+ 15 - 0
README.rst

@@ -0,0 +1,15 @@
+Clean your OpenERP database from remnants of modules, models, columns and
+tables left by uninstalled modules (prior to 7.0) or a homebrew database
+upgrade to a new major version of OpenERP.
+
+After installation of this module, go to the Settings menu -> Technical ->
+Database cleanup. Go through the modules, models, columns and tables
+entries under this menu (in that order) and find out if there is orphaned data
+in your database. You can either delete entries by line, or sweep all entries
+in one big step (if you are *really* confident).
+
+Caution! This module is potentially harmful and can *easily* destroy the
+integrity of your data. Do not use if you are not entirely comfortable
+with the technical details of the OpenERP data model of *all* the modules
+that have ever been installed on your database, and do not purge any module,
+model, column or table if you do not know exactly what you are doing.

+ 1 - 0
__init__.py

@@ -0,0 +1 @@
+from . import model

binární
__init__.pyc


+ 38 - 0
__openerp__.py

@@ -0,0 +1,38 @@
+# -*- coding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution
+#    This module copyright (C) 2014 Therp BV (<http://therp.nl>).
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU Affero General Public License as
+#    published by the Free Software Foundation, either version 3 of the
+#    License, or (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU Affero General Public License for more details.
+#
+#    You should have received a copy of the GNU Affero General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+
+{
+    'name': 'Database cleanup',
+    'version': '8.0.0.1.0',
+    'author': "Therp BV,Odoo Community Association (OCA)",
+    'depends': ['base'],
+    'license': 'AGPL-3',
+    'category': 'Tools',
+    'data': [
+        'view/purge_menus.xml',
+        'view/purge_modules.xml',
+        'view/purge_models.xml',
+        'view/purge_columns.xml',
+        'view/purge_tables.xml',
+        'view/purge_data.xml',
+        'view/menu.xml',
+        ],
+}

+ 279 - 0
i18n/database_cleanup.pot

@@ -0,0 +1,279 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+#	* database_cleanup
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Odoo Server 8.0\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2015-08-11 06:45+0000\n"
+"PO-Revision-Date: 2015-08-11 06:45+0000\n"
+"Last-Translator: <>\n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Plural-Forms: \n"
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.column,purge_line_ids:0
+msgid "Columns to purge"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,create_uid:0
+#: field:cleanup.purge.line.data,create_uid:0
+#: field:cleanup.purge.line.model,create_uid:0
+#: field:cleanup.purge.line.module,create_uid:0
+#: field:cleanup.purge.line.table,create_uid:0
+#: field:cleanup.purge.wizard.column,create_uid:0
+#: field:cleanup.purge.wizard.data,create_uid:0
+#: field:cleanup.purge.wizard.model,create_uid:0
+#: field:cleanup.purge.wizard.module,create_uid:0
+#: field:cleanup.purge.wizard.table,create_uid:0
+msgid "Created by"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,create_date:0
+#: field:cleanup.purge.line.data,create_date:0
+#: field:cleanup.purge.line.model,create_date:0
+#: field:cleanup.purge.line.module,create_date:0
+#: field:cleanup.purge.line.table,create_date:0
+#: field:cleanup.purge.wizard.column,create_date:0
+#: field:cleanup.purge.wizard.data,create_date:0
+#: field:cleanup.purge.wizard.model,create_date:0
+#: field:cleanup.purge.wizard.module,create_date:0
+#: field:cleanup.purge.wizard.table,create_date:0
+msgid "Created on"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.data,data_id:0
+msgid "Data entry"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.data,purge_line_ids:0
+msgid "Data to purge"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_database_cleanup
+msgid "Database cleanup"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,id:0
+#: field:cleanup.purge.line.column,id:0
+#: field:cleanup.purge.line.data,id:0
+#: field:cleanup.purge.line.model,id:0
+#: field:cleanup.purge.line.module,id:0
+#: field:cleanup.purge.line.table,id:0
+#: field:cleanup.purge.wizard,id:0
+#: field:cleanup.purge.wizard.column,id:0
+#: field:cleanup.purge.wizard.data,id:0
+#: field:cleanup.purge.wizard.model,id:0
+#: field:cleanup.purge.wizard.module,id:0
+#: field:cleanup.purge.wizard.table,id:0
+msgid "ID"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,write_uid:0
+#: field:cleanup.purge.line.data,write_uid:0
+#: field:cleanup.purge.line.model,write_uid:0
+#: field:cleanup.purge.line.module,write_uid:0
+#: field:cleanup.purge.line.table,write_uid:0
+#: field:cleanup.purge.wizard.column,write_uid:0
+#: field:cleanup.purge.wizard.data,write_uid:0
+#: field:cleanup.purge.wizard.model,write_uid:0
+#: field:cleanup.purge.wizard.module,write_uid:0
+#: field:cleanup.purge.wizard.table,write_uid:0
+msgid "Last Updated by"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,write_date:0
+#: field:cleanup.purge.line.data,write_date:0
+#: field:cleanup.purge.line.model,write_date:0
+#: field:cleanup.purge.line.module,write_date:0
+#: field:cleanup.purge.line.table,write_date:0
+#: field:cleanup.purge.wizard.column,write_date:0
+#: field:cleanup.purge.wizard.data,write_date:0
+#: field:cleanup.purge.wizard.model,write_date:0
+#: field:cleanup.purge.wizard.module,write_date:0
+#: field:cleanup.purge.wizard.table,write_date:0
+msgid "Last Updated on"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,model_id:0
+msgid "Model"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.model,name:database_cleanup.model_ir_model
+msgid "Models"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.model,purge_line_ids:0
+msgid "Models to purge"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.module,purge_line_ids:0
+msgid "Modules to purge"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,name:0
+#: field:cleanup.purge.line.column,name:0
+#: field:cleanup.purge.line.data,name:0
+#: field:cleanup.purge.line.model,name:0
+#: field:cleanup.purge.line.module,name:0
+#: field:cleanup.purge.line.table,name:0
+#: field:cleanup.purge.wizard,name:0
+#: field:cleanup.purge.wizard.column,name:0
+#: field:cleanup.purge.wizard.data,name:0
+#: field:cleanup.purge.wizard.model,name:0
+#: field:cleanup.purge.wizard.module,name:0
+#: field:cleanup.purge.wizard.table,name:0
+msgid "Name"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,wizard_id:0
+#: field:cleanup.purge.line.data,wizard_id:0
+#: field:cleanup.purge.line.model,wizard_id:0
+#: field:cleanup.purge.line.module,wizard_id:0
+#: field:cleanup.purge.line.table,wizard_id:0
+msgid "Purge Wizard"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+msgid "Purge all columns"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+msgid "Purge all data"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+msgid "Purge all models"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+msgid "Purge all modules"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+msgid "Purge all tables"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_columns
+msgid "Purge columns"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+msgid "Purge data"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_data
+msgid "Purge data entries that refer to missing resources"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_models
+msgid "Purge models"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_modules
+msgid "Purge modules"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_columns
+msgid "Purge obsolete columns"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_data
+msgid "Purge obsolete data entries"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_models
+msgid "Purge obsolete models"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_modules
+msgid "Purge obsolete modules"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_tables
+msgid "Purge obsolete tables"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_tables
+msgid "Purge tables"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+msgid "Purge this column"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+msgid "Purge this data"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+msgid "Purge this model"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+msgid "Purge this module"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+msgid "Purge this table"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,purged:0
+#: field:cleanup.purge.line.column,purged:0
+#: field:cleanup.purge.line.data,purged:0
+#: field:cleanup.purge.line.model,purged:0
+#: field:cleanup.purge.line.module,purged:0
+#: field:cleanup.purge.line.table,purged:0
+msgid "Purged"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.table,purge_line_ids:0
+msgid "Tables to purge"
+msgstr ""
+

+ 370 - 0
i18n/de.po

@@ -0,0 +1,370 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * database_cleanup
+# 
+# Translators:
+# Rudolf Schnapka <rs@techno-flex.de>, 2016
+msgid ""
+msgstr ""
+"Project-Id-Version: server-tools (8.0)\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2016-01-19 14:44+0000\n"
+"PO-Revision-Date: 2016-01-26 10:53+0000\n"
+"Last-Translator: Rudolf Schnapka <rs@techno-flex.de>\n"
+"Language-Team: German (http://www.transifex.com/oca/OCA-server-tools-8-0/language/de/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Language: de\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.column,purge_line_ids:0
+msgid "Columns to purge"
+msgstr "Zu löschende Spalten"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,create_uid:0
+#: field:cleanup.purge.line.data,create_uid:0
+#: field:cleanup.purge.line.menu,create_uid:0
+#: field:cleanup.purge.line.model,create_uid:0
+#: field:cleanup.purge.line.module,create_uid:0
+#: field:cleanup.purge.line.table,create_uid:0
+#: field:cleanup.purge.wizard.column,create_uid:0
+#: field:cleanup.purge.wizard.data,create_uid:0
+#: field:cleanup.purge.wizard.menu,create_uid:0
+#: field:cleanup.purge.wizard.model,create_uid:0
+#: field:cleanup.purge.wizard.module,create_uid:0
+#: field:cleanup.purge.wizard.table,create_uid:0
+msgid "Created by"
+msgstr "Erstellt von"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,create_date:0
+#: field:cleanup.purge.line.data,create_date:0
+#: field:cleanup.purge.line.menu,create_date:0
+#: field:cleanup.purge.line.model,create_date:0
+#: field:cleanup.purge.line.module,create_date:0
+#: field:cleanup.purge.line.table,create_date:0
+#: field:cleanup.purge.wizard.column,create_date:0
+#: field:cleanup.purge.wizard.data,create_date:0
+#: field:cleanup.purge.wizard.menu,create_date:0
+#: field:cleanup.purge.wizard.model,create_date:0
+#: field:cleanup.purge.wizard.module,create_date:0
+#: field:cleanup.purge.wizard.table,create_date:0
+msgid "Created on"
+msgstr "Erstellt am:"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.data,data_id:0
+msgid "Data entry"
+msgstr "Dateneingabe"
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.data,purge_line_ids:0
+msgid "Data to purge"
+msgstr "Zu löschende Daten"
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_database_cleanup
+msgid "Database cleanup"
+msgstr "Datenbankbereinigung"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,id:0 field:cleanup.purge.line.column,id:0
+#: field:cleanup.purge.line.data,id:0 field:cleanup.purge.line.menu,id:0
+#: field:cleanup.purge.line.model,id:0 field:cleanup.purge.line.module,id:0
+#: field:cleanup.purge.line.table,id:0 field:cleanup.purge.wizard,id:0
+#: field:cleanup.purge.wizard.column,id:0 field:cleanup.purge.wizard.data,id:0
+#: field:cleanup.purge.wizard.menu,id:0 field:cleanup.purge.wizard.model,id:0
+#: field:cleanup.purge.wizard.module,id:0
+#: field:cleanup.purge.wizard.table,id:0
+msgid "ID"
+msgstr "ID"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,write_uid:0
+#: field:cleanup.purge.line.data,write_uid:0
+#: field:cleanup.purge.line.menu,write_uid:0
+#: field:cleanup.purge.line.model,write_uid:0
+#: field:cleanup.purge.line.module,write_uid:0
+#: field:cleanup.purge.line.table,write_uid:0
+#: field:cleanup.purge.wizard.column,write_uid:0
+#: field:cleanup.purge.wizard.data,write_uid:0
+#: field:cleanup.purge.wizard.menu,write_uid:0
+#: field:cleanup.purge.wizard.model,write_uid:0
+#: field:cleanup.purge.wizard.module,write_uid:0
+#: field:cleanup.purge.wizard.table,write_uid:0
+msgid "Last Updated by"
+msgstr "Zuletzt aktualisiert von"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,write_date:0
+#: field:cleanup.purge.line.data,write_date:0
+#: field:cleanup.purge.line.menu,write_date:0
+#: field:cleanup.purge.line.model,write_date:0
+#: field:cleanup.purge.line.module,write_date:0
+#: field:cleanup.purge.line.table,write_date:0
+#: field:cleanup.purge.wizard.column,write_date:0
+#: field:cleanup.purge.wizard.data,write_date:0
+#: field:cleanup.purge.wizard.menu,write_date:0
+#: field:cleanup.purge.wizard.model,write_date:0
+#: field:cleanup.purge.wizard.module,write_date:0
+#: field:cleanup.purge.wizard.table,write_date:0
+msgid "Last Updated on"
+msgstr "Zuletzt aktualisiert am"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.menu,menu_id:0
+msgid "Menu entry"
+msgstr "Menüeintrag"
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.menu,purge_line_ids:0
+msgid "Menus to purge"
+msgstr "Zu löschende Menüs"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,model_id:0
+msgid "Model"
+msgstr "Modell"
+
+#. module: database_cleanup
+#: model:ir.model,name:database_cleanup.model_ir_model
+msgid "Models"
+msgstr "Modelle"
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.model,purge_line_ids:0
+msgid "Models to purge"
+msgstr "Zu löschende Modelle"
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.module,purge_line_ids:0
+msgid "Modules to purge"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,name:0 field:cleanup.purge.line.column,name:0
+#: field:cleanup.purge.line.data,name:0 field:cleanup.purge.line.menu,name:0
+#: field:cleanup.purge.line.model,name:0
+#: field:cleanup.purge.line.module,name:0
+#: field:cleanup.purge.line.table,name:0 field:cleanup.purge.wizard,name:0
+#: field:cleanup.purge.wizard.column,name:0
+#: field:cleanup.purge.wizard.data,name:0
+#: field:cleanup.purge.wizard.menu,name:0
+#: field:cleanup.purge.wizard.model,name:0
+#: field:cleanup.purge.wizard.module,name:0
+#: field:cleanup.purge.wizard.table,name:0
+msgid "Name"
+msgstr "Name"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_menus.py:74
+#, python-format
+msgid "No dangling menu entries found"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_modules.py:122
+#, python-format
+msgid "No modules found to purge"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_columns.py:148
+#, python-format
+msgid "No orphaned columns found"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_data.py:99
+#, python-format
+msgid "No orphaned data entries found"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_models.py:148
+#, python-format
+msgid "No orphaned models found"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_tables.py:131
+#, python-format
+msgid "No orphaned tables found"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_columns.py:147
+#: code:addons/database_cleanup/model/purge_data.py:98
+#: code:addons/database_cleanup/model/purge_menus.py:73
+#: code:addons/database_cleanup/model/purge_models.py:147
+#: code:addons/database_cleanup/model/purge_modules.py:121
+#: code:addons/database_cleanup/model/purge_tables.py:130
+#, python-format
+msgid "Nothing to do"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,wizard_id:0
+#: field:cleanup.purge.line.data,wizard_id:0
+#: field:cleanup.purge.line.menu,wizard_id:0
+#: field:cleanup.purge.line.model,wizard_id:0
+#: field:cleanup.purge.line.module,wizard_id:0
+#: field:cleanup.purge.line.table,wizard_id:0
+msgid "Purge Wizard"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+msgid "Purge all columns"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+msgid "Purge all data"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.menu:database_cleanup.purge_menus_view
+msgid "Purge all menus"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+msgid "Purge all models"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+msgid "Purge all modules"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+msgid "Purge all tables"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_columns.py:86
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_columns
+#, python-format
+msgid "Purge columns"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_data.py:60
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+#, python-format
+msgid "Purge data"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_data
+msgid "Purge data entries that refer to missing resources"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_menus.py:52
+#: model:ir.actions.server,name:database_cleanup.action_purge_menus
+#, python-format
+msgid "Purge menus"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_models.py:133
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_models
+#, python-format
+msgid "Purge models"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_modules.py:104
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_modules
+#, python-format
+msgid "Purge modules"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_columns
+msgid "Purge obsolete columns"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_data
+msgid "Purge obsolete data entries"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_menus
+msgid "Purge obsolete menu entries"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_models
+msgid "Purge obsolete models"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_modules
+msgid "Purge obsolete modules"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_tables
+msgid "Purge obsolete tables"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_tables.py:92
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_tables
+#, python-format
+msgid "Purge tables"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+msgid "Purge this column"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+msgid "Purge this data"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.menu:database_cleanup.purge_menus_view
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+msgid "Purge this model"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+msgid "Purge this module"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+msgid "Purge this table"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,purged:0 field:cleanup.purge.line.column,purged:0
+#: field:cleanup.purge.line.data,purged:0
+#: field:cleanup.purge.line.menu,purged:0
+#: field:cleanup.purge.line.model,purged:0
+#: field:cleanup.purge.line.module,purged:0
+#: field:cleanup.purge.line.table,purged:0
+msgid "Purged"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.table,purge_line_ids:0
+msgid "Tables to purge"
+msgstr ""

+ 440 - 0
i18n/en.po

@@ -0,0 +1,440 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * database_cleanup
+# 
+# Translators:
+msgid ""
+msgstr ""
+"Project-Id-Version: server-tools (8.0)\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2016-05-06 02:41+0000\n"
+"PO-Revision-Date: 2016-05-04 19:17+0000\n"
+"Last-Translator: OCA Transbot <transbot@odoo-community.org>\n"
+"Language-Team: English (http://www.transifex.com/oca/OCA-server-tools-8-0/language/en/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Language: en\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.column,purge_line_ids:0
+msgid "Columns to purge"
+msgstr "Columns to purge"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,create_uid:0
+#: field:cleanup.purge.line.data,create_uid:0
+#: field:cleanup.purge.line.menu,create_uid:0
+#: field:cleanup.purge.line.model,create_uid:0
+#: field:cleanup.purge.line.module,create_uid:0
+#: field:cleanup.purge.line.table,create_uid:0
+#: field:cleanup.purge.wizard.column,create_uid:0
+#: field:cleanup.purge.wizard.data,create_uid:0
+#: field:cleanup.purge.wizard.menu,create_uid:0
+#: field:cleanup.purge.wizard.model,create_uid:0
+#: field:cleanup.purge.wizard.module,create_uid:0
+#: field:cleanup.purge.wizard.table,create_uid:0
+msgid "Created by"
+msgstr "Created by"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,create_date:0
+#: field:cleanup.purge.line.data,create_date:0
+#: field:cleanup.purge.line.menu,create_date:0
+#: field:cleanup.purge.line.model,create_date:0
+#: field:cleanup.purge.line.module,create_date:0
+#: field:cleanup.purge.line.table,create_date:0
+#: field:cleanup.purge.wizard.column,create_date:0
+#: field:cleanup.purge.wizard.data,create_date:0
+#: field:cleanup.purge.wizard.menu,create_date:0
+#: field:cleanup.purge.wizard.model,create_date:0
+#: field:cleanup.purge.wizard.module,create_date:0
+#: field:cleanup.purge.wizard.table,create_date:0
+msgid "Created on"
+msgstr "Created on"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.data,data_id:0
+msgid "Data entry"
+msgstr "Data entry"
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.data,purge_line_ids:0
+msgid "Data to purge"
+msgstr "Data to purge"
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_database_cleanup
+msgid "Database cleanup"
+msgstr "Database cleanup"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,display_name:0
+#: field:cleanup.purge.line.column,display_name:0
+#: field:cleanup.purge.line.data,display_name:0
+#: field:cleanup.purge.line.menu,display_name:0
+#: field:cleanup.purge.line.model,display_name:0
+#: field:cleanup.purge.line.module,display_name:0
+#: field:cleanup.purge.line.table,display_name:0
+#: field:cleanup.purge.wizard,display_name:0
+#: field:cleanup.purge.wizard.column,display_name:0
+#: field:cleanup.purge.wizard.data,display_name:0
+#: field:cleanup.purge.wizard.menu,display_name:0
+#: field:cleanup.purge.wizard.model,display_name:0
+#: field:cleanup.purge.wizard.module,display_name:0
+#: field:cleanup.purge.wizard.table,display_name:0
+msgid "Display Name"
+msgstr "Display Name"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,id:0 field:cleanup.purge.line.column,id:0
+#: field:cleanup.purge.line.data,id:0 field:cleanup.purge.line.menu,id:0
+#: field:cleanup.purge.line.model,id:0 field:cleanup.purge.line.module,id:0
+#: field:cleanup.purge.line.table,id:0 field:cleanup.purge.wizard,id:0
+#: field:cleanup.purge.wizard.column,id:0 field:cleanup.purge.wizard.data,id:0
+#: field:cleanup.purge.wizard.menu,id:0 field:cleanup.purge.wizard.model,id:0
+#: field:cleanup.purge.wizard.module,id:0
+#: field:cleanup.purge.wizard.table,id:0
+msgid "ID"
+msgstr "ID"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,__last_update:0
+#: field:cleanup.purge.line.column,__last_update:0
+#: field:cleanup.purge.line.data,__last_update:0
+#: field:cleanup.purge.line.menu,__last_update:0
+#: field:cleanup.purge.line.model,__last_update:0
+#: field:cleanup.purge.line.module,__last_update:0
+#: field:cleanup.purge.line.table,__last_update:0
+#: field:cleanup.purge.wizard,__last_update:0
+#: field:cleanup.purge.wizard.column,__last_update:0
+#: field:cleanup.purge.wizard.data,__last_update:0
+#: field:cleanup.purge.wizard.menu,__last_update:0
+#: field:cleanup.purge.wizard.model,__last_update:0
+#: field:cleanup.purge.wizard.module,__last_update:0
+#: field:cleanup.purge.wizard.table,__last_update:0
+msgid "Last Modified on"
+msgstr "Last Modified on"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,write_uid:0
+#: field:cleanup.purge.line.data,write_uid:0
+#: field:cleanup.purge.line.menu,write_uid:0
+#: field:cleanup.purge.line.model,write_uid:0
+#: field:cleanup.purge.line.module,write_uid:0
+#: field:cleanup.purge.line.table,write_uid:0
+#: field:cleanup.purge.wizard.column,write_uid:0
+#: field:cleanup.purge.wizard.data,write_uid:0
+#: field:cleanup.purge.wizard.menu,write_uid:0
+#: field:cleanup.purge.wizard.model,write_uid:0
+#: field:cleanup.purge.wizard.module,write_uid:0
+#: field:cleanup.purge.wizard.table,write_uid:0
+msgid "Last Updated by"
+msgstr "Last Updated by"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,write_date:0
+#: field:cleanup.purge.line.data,write_date:0
+#: field:cleanup.purge.line.menu,write_date:0
+#: field:cleanup.purge.line.model,write_date:0
+#: field:cleanup.purge.line.module,write_date:0
+#: field:cleanup.purge.line.table,write_date:0
+#: field:cleanup.purge.wizard.column,write_date:0
+#: field:cleanup.purge.wizard.data,write_date:0
+#: field:cleanup.purge.wizard.menu,write_date:0
+#: field:cleanup.purge.wizard.model,write_date:0
+#: field:cleanup.purge.wizard.module,write_date:0
+#: field:cleanup.purge.wizard.table,write_date:0
+msgid "Last Updated on"
+msgstr "Last Updated on"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.menu,menu_id:0
+msgid "Menu entry"
+msgstr "Menu entry"
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.menu,purge_line_ids:0
+msgid "Menus to purge"
+msgstr "Menus to purge"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,model_id:0
+msgid "Model"
+msgstr "Model"
+
+#. module: database_cleanup
+#: model:ir.model,name:database_cleanup.model_ir_model
+msgid "Models"
+msgstr "Models"
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.model,purge_line_ids:0
+msgid "Models to purge"
+msgstr "Models to purge"
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.module,purge_line_ids:0
+msgid "Modules to purge"
+msgstr "Modules to purge"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,name:0 field:cleanup.purge.line.column,name:0
+#: field:cleanup.purge.line.data,name:0 field:cleanup.purge.line.menu,name:0
+#: field:cleanup.purge.line.model,name:0
+#: field:cleanup.purge.line.module,name:0
+#: field:cleanup.purge.line.table,name:0 field:cleanup.purge.wizard,name:0
+#: field:cleanup.purge.wizard.column,name:0
+#: field:cleanup.purge.wizard.data,name:0
+#: field:cleanup.purge.wizard.menu,name:0
+#: field:cleanup.purge.wizard.model,name:0
+#: field:cleanup.purge.wizard.module,name:0
+#: field:cleanup.purge.wizard.table,name:0
+msgid "Name"
+msgstr "Name"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_menus.py:74
+#, python-format
+msgid "No dangling menu entries found"
+msgstr "No dangling menu entries found"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_modules.py:122
+#, python-format
+msgid "No modules found to purge"
+msgstr "No modules found to purge"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_columns.py:148
+#, python-format
+msgid "No orphaned columns found"
+msgstr "No orphaned columns found"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_data.py:99
+#, python-format
+msgid "No orphaned data entries found"
+msgstr "No orphaned data entries found"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_models.py:148
+#, python-format
+msgid "No orphaned models found"
+msgstr "No orphaned models found"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_tables.py:131
+#, python-format
+msgid "No orphaned tables found"
+msgstr "No orphaned tables found"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_columns.py:147
+#: code:addons/database_cleanup/model/purge_data.py:98
+#: code:addons/database_cleanup/model/purge_menus.py:73
+#: code:addons/database_cleanup/model/purge_models.py:147
+#: code:addons/database_cleanup/model/purge_modules.py:121
+#: code:addons/database_cleanup/model/purge_tables.py:130
+#, python-format
+msgid "Nothing to do"
+msgstr "Nothing to do"
+
+#. module: database_cleanup
+#: model:ir.actions.server,name:database_cleanup.action_purge_column_line
+#: model:ir.actions.server,name:database_cleanup.action_purge_data_line
+#: model:ir.actions.server,name:database_cleanup.action_purge_menu_line
+#: model:ir.actions.server,name:database_cleanup.action_purge_model_line
+#: model:ir.actions.server,name:database_cleanup.action_purge_module_line
+#: model:ir.actions.server,name:database_cleanup.action_purge_table_line
+msgid "Purge"
+msgstr "Purge"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,wizard_id:0
+#: field:cleanup.purge.line.data,wizard_id:0
+#: field:cleanup.purge.line.menu,wizard_id:0
+#: field:cleanup.purge.line.model,wizard_id:0
+#: field:cleanup.purge.line.module,wizard_id:0
+#: field:cleanup.purge.line.table,wizard_id:0
+msgid "Purge Wizard"
+msgstr "Purge Wizard"
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+msgid "Purge all columns"
+msgstr "Purge all columns"
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+msgid "Purge all data"
+msgstr "Purge all data"
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.menu:database_cleanup.purge_menus_view
+msgid "Purge all menus"
+msgstr "Purge all menus"
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+msgid "Purge all models"
+msgstr "Purge all models"
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+msgid "Purge all modules"
+msgstr "Purge all modules"
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+msgid "Purge all tables"
+msgstr "Purge all tables"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_columns.py:86
+#: view:cleanup.purge.line.column:database_cleanup.purge_column_line_tree
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_columns
+#, python-format
+msgid "Purge columns"
+msgstr "Purge columns"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_data.py:60
+#: view:cleanup.purge.line.data:database_cleanup.purge_data_line_tree
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+#, python-format
+msgid "Purge data"
+msgstr "Purge data"
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_data
+msgid "Purge data entries that refer to missing resources"
+msgstr "Purge data entries that refer to missing resources"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_menus.py:52
+#: model:ir.actions.server,name:database_cleanup.action_purge_menus
+#, python-format
+msgid "Purge menus"
+msgstr "Purge menus"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_models.py:133
+#: view:cleanup.purge.line.model:database_cleanup.purge_model_line_tree
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_models
+#, python-format
+msgid "Purge models"
+msgstr "Purge models"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_modules.py:104
+#: view:cleanup.purge.line.module:database_cleanup.purge_module_line_tree
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_modules
+#, python-format
+msgid "Purge modules"
+msgstr "Purge modules"
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_columns
+msgid "Purge obsolete columns"
+msgstr "Purge obsolete columns"
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_data
+msgid "Purge obsolete data entries"
+msgstr "Purge obsolete data entries"
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_menus
+msgid "Purge obsolete menu entries"
+msgstr "Purge obsolete menu entries"
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_models
+msgid "Purge obsolete models"
+msgstr "Purge obsolete models"
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_modules
+msgid "Purge obsolete modules"
+msgstr "Purge obsolete modules"
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_tables
+msgid "Purge obsolete tables"
+msgstr "Purge obsolete tables"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_tables.py:92
+#: view:cleanup.purge.line.table:database_cleanup.purge_table_line_tree
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_tables
+#, python-format
+msgid "Purge tables"
+msgstr "Purge tables"
+
+#. module: database_cleanup
+#: view:cleanup.purge.line.column:database_cleanup.purge_column_line_tree
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+msgid "Purge this column"
+msgstr "Purge this column"
+
+#. module: database_cleanup
+#: view:cleanup.purge.line.data:database_cleanup.purge_data_line_tree
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+msgid "Purge this data"
+msgstr "Purge this data"
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.menu:database_cleanup.purge_menus_view
+msgid "Purge this menu"
+msgstr "Purge this menu"
+
+#. module: database_cleanup
+#: view:cleanup.purge.line.menu:database_cleanup.purge_menu_line_tree
+#: view:cleanup.purge.line.model:database_cleanup.purge_model_line_tree
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+msgid "Purge this model"
+msgstr "Purge this model"
+
+#. module: database_cleanup
+#: view:cleanup.purge.line.module:database_cleanup.purge_module_line_tree
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+msgid "Purge this module"
+msgstr "Purge this module"
+
+#. module: database_cleanup
+#: view:cleanup.purge.line.table:database_cleanup.purge_table_line_tree
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+msgid "Purge this table"
+msgstr "Purge this table"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,purged:0 field:cleanup.purge.line.column,purged:0
+#: field:cleanup.purge.line.data,purged:0
+#: field:cleanup.purge.line.menu,purged:0
+#: field:cleanup.purge.line.model,purged:0
+#: field:cleanup.purge.line.module,purged:0
+#: field:cleanup.purge.line.table,purged:0
+msgid "Purged"
+msgstr "Purged"
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+#: view:cleanup.purge.wizard.menu:database_cleanup.purge_menus_view
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+msgid "Select lines"
+msgstr "Select lines"
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.table,purge_line_ids:0
+msgid "Tables to purge"
+msgstr "Tables to purge"

+ 452 - 0
i18n/es.po

@@ -0,0 +1,452 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * database_cleanup
+# 
+# Translators:
+# Ahmet Altınışık <aaltinisik@altinkaya.com.tr>, 2016
+# Antonio Trueba, 2016
+# Carles Antoli <carlesantoli@hotmail.com>, 2015
+# Christophe CHAUVET <christophe.chauvet@gmail.com>, 2015
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2013-2014
+# Giacomo <giacomo.spettoli@gmail.com>, 2015
+# Hotellook, 2014
+# Matjaž Mozetič <m.mozetic@matmoz.si>, 2015-2016
+# Miku Laitinen <miku.laitinen@gmail.com>, 2015
+# Pedro M. Baeza <pedro.baeza@gmail.com>, 2015
+# Rudolf Schnapka <rs@techno-flex.de>, 2015-2016
+# Rudolf Schnapka <schnapkar@golive-saar.de>, 2015
+msgid ""
+msgstr ""
+"Project-Id-Version: server-tools (8.0)\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2016-05-28 02:41+0000\n"
+"PO-Revision-Date: 2016-05-27 15:24+0000\n"
+"Last-Translator: OCA Transbot <transbot@odoo-community.org>\n"
+"Language-Team: Spanish (http://www.transifex.com/oca/OCA-server-tools-8-0/language/es/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Language: es\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.column,purge_line_ids:0
+msgid "Columns to purge"
+msgstr "Columnas para purgar"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,create_uid:0
+#: field:cleanup.purge.line.data,create_uid:0
+#: field:cleanup.purge.line.menu,create_uid:0
+#: field:cleanup.purge.line.model,create_uid:0
+#: field:cleanup.purge.line.module,create_uid:0
+#: field:cleanup.purge.line.table,create_uid:0
+#: field:cleanup.purge.wizard.column,create_uid:0
+#: field:cleanup.purge.wizard.data,create_uid:0
+#: field:cleanup.purge.wizard.menu,create_uid:0
+#: field:cleanup.purge.wizard.model,create_uid:0
+#: field:cleanup.purge.wizard.module,create_uid:0
+#: field:cleanup.purge.wizard.table,create_uid:0
+msgid "Created by"
+msgstr "Creado por"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,create_date:0
+#: field:cleanup.purge.line.data,create_date:0
+#: field:cleanup.purge.line.menu,create_date:0
+#: field:cleanup.purge.line.model,create_date:0
+#: field:cleanup.purge.line.module,create_date:0
+#: field:cleanup.purge.line.table,create_date:0
+#: field:cleanup.purge.wizard.column,create_date:0
+#: field:cleanup.purge.wizard.data,create_date:0
+#: field:cleanup.purge.wizard.menu,create_date:0
+#: field:cleanup.purge.wizard.model,create_date:0
+#: field:cleanup.purge.wizard.module,create_date:0
+#: field:cleanup.purge.wizard.table,create_date:0
+msgid "Created on"
+msgstr "Creado en"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.data,data_id:0
+msgid "Data entry"
+msgstr "Entrada de datos"
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.data,purge_line_ids:0
+msgid "Data to purge"
+msgstr "Datos para purgar"
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_database_cleanup
+msgid "Database cleanup"
+msgstr "Limpieza de la base de datos"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,display_name:0
+#: field:cleanup.purge.line.column,display_name:0
+#: field:cleanup.purge.line.data,display_name:0
+#: field:cleanup.purge.line.menu,display_name:0
+#: field:cleanup.purge.line.model,display_name:0
+#: field:cleanup.purge.line.module,display_name:0
+#: field:cleanup.purge.line.table,display_name:0
+#: field:cleanup.purge.wizard,display_name:0
+#: field:cleanup.purge.wizard.column,display_name:0
+#: field:cleanup.purge.wizard.data,display_name:0
+#: field:cleanup.purge.wizard.menu,display_name:0
+#: field:cleanup.purge.wizard.model,display_name:0
+#: field:cleanup.purge.wizard.module,display_name:0
+#: field:cleanup.purge.wizard.table,display_name:0
+msgid "Display Name"
+msgstr "Nombre a mostrar"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,id:0 field:cleanup.purge.line.column,id:0
+#: field:cleanup.purge.line.data,id:0 field:cleanup.purge.line.menu,id:0
+#: field:cleanup.purge.line.model,id:0 field:cleanup.purge.line.module,id:0
+#: field:cleanup.purge.line.table,id:0 field:cleanup.purge.wizard,id:0
+#: field:cleanup.purge.wizard.column,id:0 field:cleanup.purge.wizard.data,id:0
+#: field:cleanup.purge.wizard.menu,id:0 field:cleanup.purge.wizard.model,id:0
+#: field:cleanup.purge.wizard.module,id:0
+#: field:cleanup.purge.wizard.table,id:0
+msgid "ID"
+msgstr "ID"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,__last_update:0
+#: field:cleanup.purge.line.column,__last_update:0
+#: field:cleanup.purge.line.data,__last_update:0
+#: field:cleanup.purge.line.menu,__last_update:0
+#: field:cleanup.purge.line.model,__last_update:0
+#: field:cleanup.purge.line.module,__last_update:0
+#: field:cleanup.purge.line.table,__last_update:0
+#: field:cleanup.purge.wizard,__last_update:0
+#: field:cleanup.purge.wizard.column,__last_update:0
+#: field:cleanup.purge.wizard.data,__last_update:0
+#: field:cleanup.purge.wizard.menu,__last_update:0
+#: field:cleanup.purge.wizard.model,__last_update:0
+#: field:cleanup.purge.wizard.module,__last_update:0
+#: field:cleanup.purge.wizard.table,__last_update:0
+msgid "Last Modified on"
+msgstr "Última actualización por"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,write_uid:0
+#: field:cleanup.purge.line.data,write_uid:0
+#: field:cleanup.purge.line.menu,write_uid:0
+#: field:cleanup.purge.line.model,write_uid:0
+#: field:cleanup.purge.line.module,write_uid:0
+#: field:cleanup.purge.line.table,write_uid:0
+#: field:cleanup.purge.wizard.column,write_uid:0
+#: field:cleanup.purge.wizard.data,write_uid:0
+#: field:cleanup.purge.wizard.menu,write_uid:0
+#: field:cleanup.purge.wizard.model,write_uid:0
+#: field:cleanup.purge.wizard.module,write_uid:0
+#: field:cleanup.purge.wizard.table,write_uid:0
+msgid "Last Updated by"
+msgstr "Última actualización de"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,write_date:0
+#: field:cleanup.purge.line.data,write_date:0
+#: field:cleanup.purge.line.menu,write_date:0
+#: field:cleanup.purge.line.model,write_date:0
+#: field:cleanup.purge.line.module,write_date:0
+#: field:cleanup.purge.line.table,write_date:0
+#: field:cleanup.purge.wizard.column,write_date:0
+#: field:cleanup.purge.wizard.data,write_date:0
+#: field:cleanup.purge.wizard.menu,write_date:0
+#: field:cleanup.purge.wizard.model,write_date:0
+#: field:cleanup.purge.wizard.module,write_date:0
+#: field:cleanup.purge.wizard.table,write_date:0
+msgid "Last Updated on"
+msgstr "Última actualización en"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.menu,menu_id:0
+msgid "Menu entry"
+msgstr "Entrada de menú"
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.menu,purge_line_ids:0
+msgid "Menus to purge"
+msgstr "Menús para purgar"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,model_id:0
+msgid "Model"
+msgstr "Modelo"
+
+#. module: database_cleanup
+#: model:ir.model,name:database_cleanup.model_ir_model
+msgid "Models"
+msgstr "Modelos"
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.model,purge_line_ids:0
+msgid "Models to purge"
+msgstr "Modelos para purgar"
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.module,purge_line_ids:0
+msgid "Modules to purge"
+msgstr "Módulos para purgar"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,name:0 field:cleanup.purge.line.column,name:0
+#: field:cleanup.purge.line.data,name:0 field:cleanup.purge.line.menu,name:0
+#: field:cleanup.purge.line.model,name:0
+#: field:cleanup.purge.line.module,name:0
+#: field:cleanup.purge.line.table,name:0 field:cleanup.purge.wizard,name:0
+#: field:cleanup.purge.wizard.column,name:0
+#: field:cleanup.purge.wizard.data,name:0
+#: field:cleanup.purge.wizard.menu,name:0
+#: field:cleanup.purge.wizard.model,name:0
+#: field:cleanup.purge.wizard.module,name:0
+#: field:cleanup.purge.wizard.table,name:0
+msgid "Name"
+msgstr "Nombre"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_menus.py:74
+#, python-format
+msgid "No dangling menu entries found"
+msgstr "No encontradas entradas de menú colgando"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_modules.py:122
+#, python-format
+msgid "No modules found to purge"
+msgstr "No se han encontrado módulos para purgar"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_columns.py:148
+#, python-format
+msgid "No orphaned columns found"
+msgstr "No encontradas columnas huérfanas"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_data.py:99
+#, python-format
+msgid "No orphaned data entries found"
+msgstr "No encontradas entradas de datos huérfanos"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_models.py:148
+#, python-format
+msgid "No orphaned models found"
+msgstr "No encontrados modelos huérfanos"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_tables.py:131
+#, python-format
+msgid "No orphaned tables found"
+msgstr "No encontradas tablas huérfanas"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_columns.py:147
+#: code:addons/database_cleanup/model/purge_data.py:98
+#: code:addons/database_cleanup/model/purge_menus.py:73
+#: code:addons/database_cleanup/model/purge_models.py:147
+#: code:addons/database_cleanup/model/purge_modules.py:121
+#: code:addons/database_cleanup/model/purge_tables.py:130
+#, python-format
+msgid "Nothing to do"
+msgstr "Nada que hacer"
+
+#. module: database_cleanup
+#: model:ir.actions.server,name:database_cleanup.action_purge_column_line
+#: model:ir.actions.server,name:database_cleanup.action_purge_data_line
+#: model:ir.actions.server,name:database_cleanup.action_purge_menu_line
+#: model:ir.actions.server,name:database_cleanup.action_purge_model_line
+#: model:ir.actions.server,name:database_cleanup.action_purge_module_line
+#: model:ir.actions.server,name:database_cleanup.action_purge_table_line
+msgid "Purge"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,wizard_id:0
+#: field:cleanup.purge.line.data,wizard_id:0
+#: field:cleanup.purge.line.menu,wizard_id:0
+#: field:cleanup.purge.line.model,wizard_id:0
+#: field:cleanup.purge.line.module,wizard_id:0
+#: field:cleanup.purge.line.table,wizard_id:0
+msgid "Purge Wizard"
+msgstr "Asistente de Purga"
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+msgid "Purge all columns"
+msgstr "Purgar todas las columnas"
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+msgid "Purge all data"
+msgstr "Purgar todas los datos"
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.menu:database_cleanup.purge_menus_view
+msgid "Purge all menus"
+msgstr "Purgar todos los menús"
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+msgid "Purge all models"
+msgstr "Purgar todos los modelos"
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+msgid "Purge all modules"
+msgstr "Purgar todos los módulos"
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+msgid "Purge all tables"
+msgstr "Purgar todas las tablas"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_columns.py:86
+#: view:cleanup.purge.line.column:database_cleanup.purge_column_line_tree
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_columns
+#, python-format
+msgid "Purge columns"
+msgstr "Purgar columnas"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_data.py:60
+#: view:cleanup.purge.line.data:database_cleanup.purge_data_line_tree
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+#, python-format
+msgid "Purge data"
+msgstr "Purgar datos"
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_data
+msgid "Purge data entries that refer to missing resources"
+msgstr "Purgar entradas de datos que se refieren a recursos perdidos"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_menus.py:52
+#: model:ir.actions.server,name:database_cleanup.action_purge_menus
+#, python-format
+msgid "Purge menus"
+msgstr "Purgar menús"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_models.py:133
+#: view:cleanup.purge.line.model:database_cleanup.purge_model_line_tree
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_models
+#, python-format
+msgid "Purge models"
+msgstr "Purgar modelos"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_modules.py:104
+#: view:cleanup.purge.line.module:database_cleanup.purge_module_line_tree
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_modules
+#, python-format
+msgid "Purge modules"
+msgstr "Purgar módulos"
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_columns
+msgid "Purge obsolete columns"
+msgstr "Purgar columnas obsoletas"
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_data
+msgid "Purge obsolete data entries"
+msgstr "Purgar entradas de datos obsoletos"
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_menus
+msgid "Purge obsolete menu entries"
+msgstr "Purgar entradas de menú obsoletas"
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_models
+msgid "Purge obsolete models"
+msgstr "Purgar modelos obsoletos"
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_modules
+msgid "Purge obsolete modules"
+msgstr "Purgar módulos obsoletos"
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_tables
+msgid "Purge obsolete tables"
+msgstr "Purgar tablas obsoletos"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_tables.py:92
+#: view:cleanup.purge.line.table:database_cleanup.purge_table_line_tree
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_tables
+#, python-format
+msgid "Purge tables"
+msgstr "Purgar tablas"
+
+#. module: database_cleanup
+#: view:cleanup.purge.line.column:database_cleanup.purge_column_line_tree
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+msgid "Purge this column"
+msgstr "Purgar esta columna"
+
+#. module: database_cleanup
+#: view:cleanup.purge.line.data:database_cleanup.purge_data_line_tree
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+msgid "Purge this data"
+msgstr "Purgar este dato"
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.menu:database_cleanup.purge_menus_view
+msgid "Purge this menu"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.line.menu:database_cleanup.purge_menu_line_tree
+#: view:cleanup.purge.line.model:database_cleanup.purge_model_line_tree
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+msgid "Purge this model"
+msgstr "Purgar este modelo"
+
+#. module: database_cleanup
+#: view:cleanup.purge.line.module:database_cleanup.purge_module_line_tree
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+msgid "Purge this module"
+msgstr "Purgar este módulo"
+
+#. module: database_cleanup
+#: view:cleanup.purge.line.table:database_cleanup.purge_table_line_tree
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+msgid "Purge this table"
+msgstr "Purgar esta tabla"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,purged:0 field:cleanup.purge.line.column,purged:0
+#: field:cleanup.purge.line.data,purged:0
+#: field:cleanup.purge.line.menu,purged:0
+#: field:cleanup.purge.line.model,purged:0
+#: field:cleanup.purge.line.module,purged:0
+#: field:cleanup.purge.line.table,purged:0
+msgid "Purged"
+msgstr "Purgado"
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+#: view:cleanup.purge.wizard.menu:database_cleanup.purge_menus_view
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+msgid "Select lines"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.table,purge_line_ids:0
+msgid "Tables to purge"
+msgstr "Tablas para purgar"

+ 449 - 0
i18n/fi.po

@@ -0,0 +1,449 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * database_cleanup
+# 
+# Translators:
+# Ahmet Altınışık <aaltinisik@altinkaya.com.tr>, 2015
+# Antonio Trueba, 2016
+# Armando Vulcano Junior <vulcano@uol.com.br>, 2015
+# Carles Antoli <carlesantoli@hotmail.com>, 2015
+# Christophe CHAUVET <christophe.chauvet@gmail.com>, 2015
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2014
+# Hotellook, 2014
+# Matjaž Mozetič <m.mozetic@matmoz.si>, 2015-2016
+# Rudolf Schnapka <schnapkar@golive-saar.de>, 2015
+msgid ""
+msgstr ""
+"Project-Id-Version: server-tools (8.0)\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2016-06-09 18:30+0000\n"
+"PO-Revision-Date: 2016-06-06 13:35+0000\n"
+"Last-Translator: Jarmo Kortetjärvi <jarmo.kortetjarvi@gmail.com>\n"
+"Language-Team: Finnish (http://www.transifex.com/oca/OCA-server-tools-8-0/language/fi/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Language: fi\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.column,purge_line_ids:0
+msgid "Columns to purge"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,create_uid:0
+#: field:cleanup.purge.line.data,create_uid:0
+#: field:cleanup.purge.line.menu,create_uid:0
+#: field:cleanup.purge.line.model,create_uid:0
+#: field:cleanup.purge.line.module,create_uid:0
+#: field:cleanup.purge.line.table,create_uid:0
+#: field:cleanup.purge.wizard.column,create_uid:0
+#: field:cleanup.purge.wizard.data,create_uid:0
+#: field:cleanup.purge.wizard.menu,create_uid:0
+#: field:cleanup.purge.wizard.model,create_uid:0
+#: field:cleanup.purge.wizard.module,create_uid:0
+#: field:cleanup.purge.wizard.table,create_uid:0
+msgid "Created by"
+msgstr "Luonut"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,create_date:0
+#: field:cleanup.purge.line.data,create_date:0
+#: field:cleanup.purge.line.menu,create_date:0
+#: field:cleanup.purge.line.model,create_date:0
+#: field:cleanup.purge.line.module,create_date:0
+#: field:cleanup.purge.line.table,create_date:0
+#: field:cleanup.purge.wizard.column,create_date:0
+#: field:cleanup.purge.wizard.data,create_date:0
+#: field:cleanup.purge.wizard.menu,create_date:0
+#: field:cleanup.purge.wizard.model,create_date:0
+#: field:cleanup.purge.wizard.module,create_date:0
+#: field:cleanup.purge.wizard.table,create_date:0
+msgid "Created on"
+msgstr "Luotu"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.data,data_id:0
+msgid "Data entry"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.data,purge_line_ids:0
+msgid "Data to purge"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_database_cleanup
+msgid "Database cleanup"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,display_name:0
+#: field:cleanup.purge.line.column,display_name:0
+#: field:cleanup.purge.line.data,display_name:0
+#: field:cleanup.purge.line.menu,display_name:0
+#: field:cleanup.purge.line.model,display_name:0
+#: field:cleanup.purge.line.module,display_name:0
+#: field:cleanup.purge.line.table,display_name:0
+#: field:cleanup.purge.wizard,display_name:0
+#: field:cleanup.purge.wizard.column,display_name:0
+#: field:cleanup.purge.wizard.data,display_name:0
+#: field:cleanup.purge.wizard.menu,display_name:0
+#: field:cleanup.purge.wizard.model,display_name:0
+#: field:cleanup.purge.wizard.module,display_name:0
+#: field:cleanup.purge.wizard.table,display_name:0
+msgid "Display Name"
+msgstr "Nimi"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,id:0 field:cleanup.purge.line.column,id:0
+#: field:cleanup.purge.line.data,id:0 field:cleanup.purge.line.menu,id:0
+#: field:cleanup.purge.line.model,id:0 field:cleanup.purge.line.module,id:0
+#: field:cleanup.purge.line.table,id:0 field:cleanup.purge.wizard,id:0
+#: field:cleanup.purge.wizard.column,id:0 field:cleanup.purge.wizard.data,id:0
+#: field:cleanup.purge.wizard.menu,id:0 field:cleanup.purge.wizard.model,id:0
+#: field:cleanup.purge.wizard.module,id:0
+#: field:cleanup.purge.wizard.table,id:0
+msgid "ID"
+msgstr "ID"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,__last_update:0
+#: field:cleanup.purge.line.column,__last_update:0
+#: field:cleanup.purge.line.data,__last_update:0
+#: field:cleanup.purge.line.menu,__last_update:0
+#: field:cleanup.purge.line.model,__last_update:0
+#: field:cleanup.purge.line.module,__last_update:0
+#: field:cleanup.purge.line.table,__last_update:0
+#: field:cleanup.purge.wizard,__last_update:0
+#: field:cleanup.purge.wizard.column,__last_update:0
+#: field:cleanup.purge.wizard.data,__last_update:0
+#: field:cleanup.purge.wizard.menu,__last_update:0
+#: field:cleanup.purge.wizard.model,__last_update:0
+#: field:cleanup.purge.wizard.module,__last_update:0
+#: field:cleanup.purge.wizard.table,__last_update:0
+msgid "Last Modified on"
+msgstr "Viimeksi muokattu"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,write_uid:0
+#: field:cleanup.purge.line.data,write_uid:0
+#: field:cleanup.purge.line.menu,write_uid:0
+#: field:cleanup.purge.line.model,write_uid:0
+#: field:cleanup.purge.line.module,write_uid:0
+#: field:cleanup.purge.line.table,write_uid:0
+#: field:cleanup.purge.wizard.column,write_uid:0
+#: field:cleanup.purge.wizard.data,write_uid:0
+#: field:cleanup.purge.wizard.menu,write_uid:0
+#: field:cleanup.purge.wizard.model,write_uid:0
+#: field:cleanup.purge.wizard.module,write_uid:0
+#: field:cleanup.purge.wizard.table,write_uid:0
+msgid "Last Updated by"
+msgstr "Viimeksi päivittänyt"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,write_date:0
+#: field:cleanup.purge.line.data,write_date:0
+#: field:cleanup.purge.line.menu,write_date:0
+#: field:cleanup.purge.line.model,write_date:0
+#: field:cleanup.purge.line.module,write_date:0
+#: field:cleanup.purge.line.table,write_date:0
+#: field:cleanup.purge.wizard.column,write_date:0
+#: field:cleanup.purge.wizard.data,write_date:0
+#: field:cleanup.purge.wizard.menu,write_date:0
+#: field:cleanup.purge.wizard.model,write_date:0
+#: field:cleanup.purge.wizard.module,write_date:0
+#: field:cleanup.purge.wizard.table,write_date:0
+msgid "Last Updated on"
+msgstr "Viimeksi päivitetty"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.menu,menu_id:0
+msgid "Menu entry"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.menu,purge_line_ids:0
+msgid "Menus to purge"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,model_id:0
+msgid "Model"
+msgstr "Mall"
+
+#. module: database_cleanup
+#: model:ir.model,name:database_cleanup.model_ir_model
+msgid "Models"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.model,purge_line_ids:0
+msgid "Models to purge"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.module,purge_line_ids:0
+msgid "Modules to purge"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,name:0 field:cleanup.purge.line.column,name:0
+#: field:cleanup.purge.line.data,name:0 field:cleanup.purge.line.menu,name:0
+#: field:cleanup.purge.line.model,name:0
+#: field:cleanup.purge.line.module,name:0
+#: field:cleanup.purge.line.table,name:0 field:cleanup.purge.wizard,name:0
+#: field:cleanup.purge.wizard.column,name:0
+#: field:cleanup.purge.wizard.data,name:0
+#: field:cleanup.purge.wizard.menu,name:0
+#: field:cleanup.purge.wizard.model,name:0
+#: field:cleanup.purge.wizard.module,name:0
+#: field:cleanup.purge.wizard.table,name:0
+msgid "Name"
+msgstr "Nimi"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_menus.py:74
+#, python-format
+msgid "No dangling menu entries found"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_modules.py:122
+#, python-format
+msgid "No modules found to purge"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_columns.py:148
+#, python-format
+msgid "No orphaned columns found"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_data.py:99
+#, python-format
+msgid "No orphaned data entries found"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_models.py:148
+#, python-format
+msgid "No orphaned models found"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_tables.py:131
+#, python-format
+msgid "No orphaned tables found"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_columns.py:147
+#: code:addons/database_cleanup/model/purge_data.py:98
+#: code:addons/database_cleanup/model/purge_menus.py:73
+#: code:addons/database_cleanup/model/purge_models.py:147
+#: code:addons/database_cleanup/model/purge_modules.py:121
+#: code:addons/database_cleanup/model/purge_tables.py:130
+#, python-format
+msgid "Nothing to do"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.actions.server,name:database_cleanup.action_purge_column_line
+#: model:ir.actions.server,name:database_cleanup.action_purge_data_line
+#: model:ir.actions.server,name:database_cleanup.action_purge_menu_line
+#: model:ir.actions.server,name:database_cleanup.action_purge_model_line
+#: model:ir.actions.server,name:database_cleanup.action_purge_module_line
+#: model:ir.actions.server,name:database_cleanup.action_purge_table_line
+msgid "Purge"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,wizard_id:0
+#: field:cleanup.purge.line.data,wizard_id:0
+#: field:cleanup.purge.line.menu,wizard_id:0
+#: field:cleanup.purge.line.model,wizard_id:0
+#: field:cleanup.purge.line.module,wizard_id:0
+#: field:cleanup.purge.line.table,wizard_id:0
+msgid "Purge Wizard"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+msgid "Purge all columns"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+msgid "Purge all data"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.menu:database_cleanup.purge_menus_view
+msgid "Purge all menus"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+msgid "Purge all models"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+msgid "Purge all modules"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+msgid "Purge all tables"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_columns.py:86
+#: view:cleanup.purge.line.column:database_cleanup.purge_column_line_tree
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_columns
+#, python-format
+msgid "Purge columns"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_data.py:60
+#: view:cleanup.purge.line.data:database_cleanup.purge_data_line_tree
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+#, python-format
+msgid "Purge data"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_data
+msgid "Purge data entries that refer to missing resources"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_menus.py:52
+#: model:ir.actions.server,name:database_cleanup.action_purge_menus
+#, python-format
+msgid "Purge menus"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_models.py:133
+#: view:cleanup.purge.line.model:database_cleanup.purge_model_line_tree
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_models
+#, python-format
+msgid "Purge models"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_modules.py:104
+#: view:cleanup.purge.line.module:database_cleanup.purge_module_line_tree
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_modules
+#, python-format
+msgid "Purge modules"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_columns
+msgid "Purge obsolete columns"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_data
+msgid "Purge obsolete data entries"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_menus
+msgid "Purge obsolete menu entries"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_models
+msgid "Purge obsolete models"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_modules
+msgid "Purge obsolete modules"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_tables
+msgid "Purge obsolete tables"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_tables.py:92
+#: view:cleanup.purge.line.table:database_cleanup.purge_table_line_tree
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_tables
+#, python-format
+msgid "Purge tables"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.line.column:database_cleanup.purge_column_line_tree
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+msgid "Purge this column"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.line.data:database_cleanup.purge_data_line_tree
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+msgid "Purge this data"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.menu:database_cleanup.purge_menus_view
+msgid "Purge this menu"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.line.menu:database_cleanup.purge_menu_line_tree
+#: view:cleanup.purge.line.model:database_cleanup.purge_model_line_tree
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+msgid "Purge this model"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.line.module:database_cleanup.purge_module_line_tree
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+msgid "Purge this module"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.line.table:database_cleanup.purge_table_line_tree
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+msgid "Purge this table"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,purged:0 field:cleanup.purge.line.column,purged:0
+#: field:cleanup.purge.line.data,purged:0
+#: field:cleanup.purge.line.menu,purged:0
+#: field:cleanup.purge.line.model,purged:0
+#: field:cleanup.purge.line.module,purged:0
+#: field:cleanup.purge.line.table,purged:0
+msgid "Purged"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+#: view:cleanup.purge.wizard.menu:database_cleanup.purge_menus_view
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+msgid "Select lines"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.table,purge_line_ids:0
+msgid "Tables to purge"
+msgstr ""

+ 451 - 0
i18n/fr.po

@@ -0,0 +1,451 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * database_cleanup
+# 
+# Translators:
+# Ahmet Altınışık <aaltinisik@altinkaya.com.tr>, 2016
+# Antonio Trueba, 2016
+# Christophe CHAUVET <christophe.chauvet@gmail.com>, 2016
+# Christophe CHAUVET <christophe.chauvet@gmail.com>, 2015
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2012
+# Hotellook, 2014
+# Isabelle RICHARD <isabellerichard89@gmail.com>, 2015
+# Jarmo Kortetjärvi <jarmo.kortetjarvi@gmail.com>, 2016
+# LS Development <ls.development.nc@gmail.com>, 2016
+# Matjaž Mozetič <m.mozetic@matmoz.si>, 2015
+# Rudolf Schnapka <schnapkar@golive-saar.de>, 2015
+msgid ""
+msgstr ""
+"Project-Id-Version: server-tools (8.0)\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2016-05-12 14:33+0000\n"
+"PO-Revision-Date: 2016-05-08 17:05+0000\n"
+"Last-Translator: Christophe CHAUVET <christophe.chauvet@gmail.com>\n"
+"Language-Team: French (http://www.transifex.com/oca/OCA-server-tools-8-0/language/fr/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Language: fr\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.column,purge_line_ids:0
+msgid "Columns to purge"
+msgstr "Colonnes à purger"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,create_uid:0
+#: field:cleanup.purge.line.data,create_uid:0
+#: field:cleanup.purge.line.menu,create_uid:0
+#: field:cleanup.purge.line.model,create_uid:0
+#: field:cleanup.purge.line.module,create_uid:0
+#: field:cleanup.purge.line.table,create_uid:0
+#: field:cleanup.purge.wizard.column,create_uid:0
+#: field:cleanup.purge.wizard.data,create_uid:0
+#: field:cleanup.purge.wizard.menu,create_uid:0
+#: field:cleanup.purge.wizard.model,create_uid:0
+#: field:cleanup.purge.wizard.module,create_uid:0
+#: field:cleanup.purge.wizard.table,create_uid:0
+msgid "Created by"
+msgstr "Créé par"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,create_date:0
+#: field:cleanup.purge.line.data,create_date:0
+#: field:cleanup.purge.line.menu,create_date:0
+#: field:cleanup.purge.line.model,create_date:0
+#: field:cleanup.purge.line.module,create_date:0
+#: field:cleanup.purge.line.table,create_date:0
+#: field:cleanup.purge.wizard.column,create_date:0
+#: field:cleanup.purge.wizard.data,create_date:0
+#: field:cleanup.purge.wizard.menu,create_date:0
+#: field:cleanup.purge.wizard.model,create_date:0
+#: field:cleanup.purge.wizard.module,create_date:0
+#: field:cleanup.purge.wizard.table,create_date:0
+msgid "Created on"
+msgstr "Date"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.data,data_id:0
+msgid "Data entry"
+msgstr "Date d'entrée"
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.data,purge_line_ids:0
+msgid "Data to purge"
+msgstr "Date de purge"
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_database_cleanup
+msgid "Database cleanup"
+msgstr "Nettoyage de base de données"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,display_name:0
+#: field:cleanup.purge.line.column,display_name:0
+#: field:cleanup.purge.line.data,display_name:0
+#: field:cleanup.purge.line.menu,display_name:0
+#: field:cleanup.purge.line.model,display_name:0
+#: field:cleanup.purge.line.module,display_name:0
+#: field:cleanup.purge.line.table,display_name:0
+#: field:cleanup.purge.wizard,display_name:0
+#: field:cleanup.purge.wizard.column,display_name:0
+#: field:cleanup.purge.wizard.data,display_name:0
+#: field:cleanup.purge.wizard.menu,display_name:0
+#: field:cleanup.purge.wizard.model,display_name:0
+#: field:cleanup.purge.wizard.module,display_name:0
+#: field:cleanup.purge.wizard.table,display_name:0
+msgid "Display Name"
+msgstr "Nom affiché"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,id:0 field:cleanup.purge.line.column,id:0
+#: field:cleanup.purge.line.data,id:0 field:cleanup.purge.line.menu,id:0
+#: field:cleanup.purge.line.model,id:0 field:cleanup.purge.line.module,id:0
+#: field:cleanup.purge.line.table,id:0 field:cleanup.purge.wizard,id:0
+#: field:cleanup.purge.wizard.column,id:0 field:cleanup.purge.wizard.data,id:0
+#: field:cleanup.purge.wizard.menu,id:0 field:cleanup.purge.wizard.model,id:0
+#: field:cleanup.purge.wizard.module,id:0
+#: field:cleanup.purge.wizard.table,id:0
+msgid "ID"
+msgstr "ID"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,__last_update:0
+#: field:cleanup.purge.line.column,__last_update:0
+#: field:cleanup.purge.line.data,__last_update:0
+#: field:cleanup.purge.line.menu,__last_update:0
+#: field:cleanup.purge.line.model,__last_update:0
+#: field:cleanup.purge.line.module,__last_update:0
+#: field:cleanup.purge.line.table,__last_update:0
+#: field:cleanup.purge.wizard,__last_update:0
+#: field:cleanup.purge.wizard.column,__last_update:0
+#: field:cleanup.purge.wizard.data,__last_update:0
+#: field:cleanup.purge.wizard.menu,__last_update:0
+#: field:cleanup.purge.wizard.model,__last_update:0
+#: field:cleanup.purge.wizard.module,__last_update:0
+#: field:cleanup.purge.wizard.table,__last_update:0
+msgid "Last Modified on"
+msgstr "Dernière modification le"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,write_uid:0
+#: field:cleanup.purge.line.data,write_uid:0
+#: field:cleanup.purge.line.menu,write_uid:0
+#: field:cleanup.purge.line.model,write_uid:0
+#: field:cleanup.purge.line.module,write_uid:0
+#: field:cleanup.purge.line.table,write_uid:0
+#: field:cleanup.purge.wizard.column,write_uid:0
+#: field:cleanup.purge.wizard.data,write_uid:0
+#: field:cleanup.purge.wizard.menu,write_uid:0
+#: field:cleanup.purge.wizard.model,write_uid:0
+#: field:cleanup.purge.wizard.module,write_uid:0
+#: field:cleanup.purge.wizard.table,write_uid:0
+msgid "Last Updated by"
+msgstr "Dernière mise à jour par"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,write_date:0
+#: field:cleanup.purge.line.data,write_date:0
+#: field:cleanup.purge.line.menu,write_date:0
+#: field:cleanup.purge.line.model,write_date:0
+#: field:cleanup.purge.line.module,write_date:0
+#: field:cleanup.purge.line.table,write_date:0
+#: field:cleanup.purge.wizard.column,write_date:0
+#: field:cleanup.purge.wizard.data,write_date:0
+#: field:cleanup.purge.wizard.menu,write_date:0
+#: field:cleanup.purge.wizard.model,write_date:0
+#: field:cleanup.purge.wizard.module,write_date:0
+#: field:cleanup.purge.wizard.table,write_date:0
+msgid "Last Updated on"
+msgstr "Dernière mise à jour le"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.menu,menu_id:0
+msgid "Menu entry"
+msgstr "Entrée manuelle"
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.menu,purge_line_ids:0
+msgid "Menus to purge"
+msgstr "Menus à purger"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,model_id:0
+msgid "Model"
+msgstr "Modèle"
+
+#. module: database_cleanup
+#: model:ir.model,name:database_cleanup.model_ir_model
+msgid "Models"
+msgstr "Modèles"
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.model,purge_line_ids:0
+msgid "Models to purge"
+msgstr "Modèles à purger"
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.module,purge_line_ids:0
+msgid "Modules to purge"
+msgstr "Modules à purger"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,name:0 field:cleanup.purge.line.column,name:0
+#: field:cleanup.purge.line.data,name:0 field:cleanup.purge.line.menu,name:0
+#: field:cleanup.purge.line.model,name:0
+#: field:cleanup.purge.line.module,name:0
+#: field:cleanup.purge.line.table,name:0 field:cleanup.purge.wizard,name:0
+#: field:cleanup.purge.wizard.column,name:0
+#: field:cleanup.purge.wizard.data,name:0
+#: field:cleanup.purge.wizard.menu,name:0
+#: field:cleanup.purge.wizard.model,name:0
+#: field:cleanup.purge.wizard.module,name:0
+#: field:cleanup.purge.wizard.table,name:0
+msgid "Name"
+msgstr "Nom"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_menus.py:74
+#, python-format
+msgid "No dangling menu entries found"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_modules.py:122
+#, python-format
+msgid "No modules found to purge"
+msgstr "Pas de module à purger trouvé"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_columns.py:148
+#, python-format
+msgid "No orphaned columns found"
+msgstr "Pas de colonnes orphelines trouvées"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_data.py:99
+#, python-format
+msgid "No orphaned data entries found"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_models.py:148
+#, python-format
+msgid "No orphaned models found"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_tables.py:131
+#, python-format
+msgid "No orphaned tables found"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_columns.py:147
+#: code:addons/database_cleanup/model/purge_data.py:98
+#: code:addons/database_cleanup/model/purge_menus.py:73
+#: code:addons/database_cleanup/model/purge_models.py:147
+#: code:addons/database_cleanup/model/purge_modules.py:121
+#: code:addons/database_cleanup/model/purge_tables.py:130
+#, python-format
+msgid "Nothing to do"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.actions.server,name:database_cleanup.action_purge_column_line
+#: model:ir.actions.server,name:database_cleanup.action_purge_data_line
+#: model:ir.actions.server,name:database_cleanup.action_purge_menu_line
+#: model:ir.actions.server,name:database_cleanup.action_purge_model_line
+#: model:ir.actions.server,name:database_cleanup.action_purge_module_line
+#: model:ir.actions.server,name:database_cleanup.action_purge_table_line
+msgid "Purge"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,wizard_id:0
+#: field:cleanup.purge.line.data,wizard_id:0
+#: field:cleanup.purge.line.menu,wizard_id:0
+#: field:cleanup.purge.line.model,wizard_id:0
+#: field:cleanup.purge.line.module,wizard_id:0
+#: field:cleanup.purge.line.table,wizard_id:0
+msgid "Purge Wizard"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+msgid "Purge all columns"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+msgid "Purge all data"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.menu:database_cleanup.purge_menus_view
+msgid "Purge all menus"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+msgid "Purge all models"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+msgid "Purge all modules"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+msgid "Purge all tables"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_columns.py:86
+#: view:cleanup.purge.line.column:database_cleanup.purge_column_line_tree
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_columns
+#, python-format
+msgid "Purge columns"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_data.py:60
+#: view:cleanup.purge.line.data:database_cleanup.purge_data_line_tree
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+#, python-format
+msgid "Purge data"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_data
+msgid "Purge data entries that refer to missing resources"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_menus.py:52
+#: model:ir.actions.server,name:database_cleanup.action_purge_menus
+#, python-format
+msgid "Purge menus"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_models.py:133
+#: view:cleanup.purge.line.model:database_cleanup.purge_model_line_tree
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_models
+#, python-format
+msgid "Purge models"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_modules.py:104
+#: view:cleanup.purge.line.module:database_cleanup.purge_module_line_tree
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_modules
+#, python-format
+msgid "Purge modules"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_columns
+msgid "Purge obsolete columns"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_data
+msgid "Purge obsolete data entries"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_menus
+msgid "Purge obsolete menu entries"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_models
+msgid "Purge obsolete models"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_modules
+msgid "Purge obsolete modules"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_tables
+msgid "Purge obsolete tables"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_tables.py:92
+#: view:cleanup.purge.line.table:database_cleanup.purge_table_line_tree
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_tables
+#, python-format
+msgid "Purge tables"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.line.column:database_cleanup.purge_column_line_tree
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+msgid "Purge this column"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.line.data:database_cleanup.purge_data_line_tree
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+msgid "Purge this data"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.menu:database_cleanup.purge_menus_view
+msgid "Purge this menu"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.line.menu:database_cleanup.purge_menu_line_tree
+#: view:cleanup.purge.line.model:database_cleanup.purge_model_line_tree
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+msgid "Purge this model"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.line.module:database_cleanup.purge_module_line_tree
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+msgid "Purge this module"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.line.table:database_cleanup.purge_table_line_tree
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+msgid "Purge this table"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,purged:0 field:cleanup.purge.line.column,purged:0
+#: field:cleanup.purge.line.data,purged:0
+#: field:cleanup.purge.line.menu,purged:0
+#: field:cleanup.purge.line.model,purged:0
+#: field:cleanup.purge.line.module,purged:0
+#: field:cleanup.purge.line.table,purged:0
+msgid "Purged"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+#: view:cleanup.purge.wizard.menu:database_cleanup.purge_menus_view
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+msgid "Select lines"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.table,purge_line_ids:0
+msgid "Tables to purge"
+msgstr ""

+ 369 - 0
i18n/fr_CA.po

@@ -0,0 +1,369 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * database_cleanup
+# 
+# Translators:
+msgid ""
+msgstr ""
+"Project-Id-Version: server-tools (8.0)\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2015-09-29 11:14+0000\n"
+"PO-Revision-Date: 2015-09-18 13:54+0000\n"
+"Last-Translator: <>\n"
+"Language-Team: French (Canada) (http://www.transifex.com/oca/OCA-server-tools-8-0/language/fr_CA/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Language: fr_CA\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.column,purge_line_ids:0
+msgid "Columns to purge"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,create_uid:0
+#: field:cleanup.purge.line.data,create_uid:0
+#: field:cleanup.purge.line.menu,create_uid:0
+#: field:cleanup.purge.line.model,create_uid:0
+#: field:cleanup.purge.line.module,create_uid:0
+#: field:cleanup.purge.line.table,create_uid:0
+#: field:cleanup.purge.wizard.column,create_uid:0
+#: field:cleanup.purge.wizard.data,create_uid:0
+#: field:cleanup.purge.wizard.menu,create_uid:0
+#: field:cleanup.purge.wizard.model,create_uid:0
+#: field:cleanup.purge.wizard.module,create_uid:0
+#: field:cleanup.purge.wizard.table,create_uid:0
+msgid "Created by"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,create_date:0
+#: field:cleanup.purge.line.data,create_date:0
+#: field:cleanup.purge.line.menu,create_date:0
+#: field:cleanup.purge.line.model,create_date:0
+#: field:cleanup.purge.line.module,create_date:0
+#: field:cleanup.purge.line.table,create_date:0
+#: field:cleanup.purge.wizard.column,create_date:0
+#: field:cleanup.purge.wizard.data,create_date:0
+#: field:cleanup.purge.wizard.menu,create_date:0
+#: field:cleanup.purge.wizard.model,create_date:0
+#: field:cleanup.purge.wizard.module,create_date:0
+#: field:cleanup.purge.wizard.table,create_date:0
+msgid "Created on"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.data,data_id:0
+msgid "Data entry"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.data,purge_line_ids:0
+msgid "Data to purge"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_database_cleanup
+msgid "Database cleanup"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,id:0 field:cleanup.purge.line.column,id:0
+#: field:cleanup.purge.line.data,id:0 field:cleanup.purge.line.menu,id:0
+#: field:cleanup.purge.line.model,id:0 field:cleanup.purge.line.module,id:0
+#: field:cleanup.purge.line.table,id:0 field:cleanup.purge.wizard,id:0
+#: field:cleanup.purge.wizard.column,id:0 field:cleanup.purge.wizard.data,id:0
+#: field:cleanup.purge.wizard.menu,id:0 field:cleanup.purge.wizard.model,id:0
+#: field:cleanup.purge.wizard.module,id:0
+#: field:cleanup.purge.wizard.table,id:0
+msgid "ID"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,write_uid:0
+#: field:cleanup.purge.line.data,write_uid:0
+#: field:cleanup.purge.line.menu,write_uid:0
+#: field:cleanup.purge.line.model,write_uid:0
+#: field:cleanup.purge.line.module,write_uid:0
+#: field:cleanup.purge.line.table,write_uid:0
+#: field:cleanup.purge.wizard.column,write_uid:0
+#: field:cleanup.purge.wizard.data,write_uid:0
+#: field:cleanup.purge.wizard.menu,write_uid:0
+#: field:cleanup.purge.wizard.model,write_uid:0
+#: field:cleanup.purge.wizard.module,write_uid:0
+#: field:cleanup.purge.wizard.table,write_uid:0
+msgid "Last Updated by"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,write_date:0
+#: field:cleanup.purge.line.data,write_date:0
+#: field:cleanup.purge.line.menu,write_date:0
+#: field:cleanup.purge.line.model,write_date:0
+#: field:cleanup.purge.line.module,write_date:0
+#: field:cleanup.purge.line.table,write_date:0
+#: field:cleanup.purge.wizard.column,write_date:0
+#: field:cleanup.purge.wizard.data,write_date:0
+#: field:cleanup.purge.wizard.menu,write_date:0
+#: field:cleanup.purge.wizard.model,write_date:0
+#: field:cleanup.purge.wizard.module,write_date:0
+#: field:cleanup.purge.wizard.table,write_date:0
+msgid "Last Updated on"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.menu,menu_id:0
+msgid "Menu entry"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.menu,purge_line_ids:0
+msgid "Menus to purge"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,model_id:0
+msgid "Model"
+msgstr "Modèle"
+
+#. module: database_cleanup
+#: model:ir.model,name:database_cleanup.model_ir_model
+msgid "Models"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.model,purge_line_ids:0
+msgid "Models to purge"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.module,purge_line_ids:0
+msgid "Modules to purge"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,name:0 field:cleanup.purge.line.column,name:0
+#: field:cleanup.purge.line.data,name:0 field:cleanup.purge.line.menu,name:0
+#: field:cleanup.purge.line.model,name:0
+#: field:cleanup.purge.line.module,name:0
+#: field:cleanup.purge.line.table,name:0 field:cleanup.purge.wizard,name:0
+#: field:cleanup.purge.wizard.column,name:0
+#: field:cleanup.purge.wizard.data,name:0
+#: field:cleanup.purge.wizard.menu,name:0
+#: field:cleanup.purge.wizard.model,name:0
+#: field:cleanup.purge.wizard.module,name:0
+#: field:cleanup.purge.wizard.table,name:0
+msgid "Name"
+msgstr "Nom"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_menus.py:74
+#, python-format
+msgid "No dangling menu entries found"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_modules.py:122
+#, python-format
+msgid "No modules found to purge"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_columns.py:148
+#, python-format
+msgid "No orphaned columns found"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_data.py:99
+#, python-format
+msgid "No orphaned data entries found"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_models.py:148
+#, python-format
+msgid "No orphaned models found"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_tables.py:131
+#, python-format
+msgid "No orphaned tables found"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_columns.py:147
+#: code:addons/database_cleanup/model/purge_data.py:98
+#: code:addons/database_cleanup/model/purge_menus.py:73
+#: code:addons/database_cleanup/model/purge_models.py:147
+#: code:addons/database_cleanup/model/purge_modules.py:121
+#: code:addons/database_cleanup/model/purge_tables.py:130
+#, python-format
+msgid "Nothing to do"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,wizard_id:0
+#: field:cleanup.purge.line.data,wizard_id:0
+#: field:cleanup.purge.line.menu,wizard_id:0
+#: field:cleanup.purge.line.model,wizard_id:0
+#: field:cleanup.purge.line.module,wizard_id:0
+#: field:cleanup.purge.line.table,wizard_id:0
+msgid "Purge Wizard"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+msgid "Purge all columns"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+msgid "Purge all data"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.menu:database_cleanup.purge_menus_view
+msgid "Purge all menus"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+msgid "Purge all models"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+msgid "Purge all modules"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+msgid "Purge all tables"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_columns.py:86
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_columns
+#, python-format
+msgid "Purge columns"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_data.py:60
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+#, python-format
+msgid "Purge data"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_data
+msgid "Purge data entries that refer to missing resources"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_menus.py:52
+#: model:ir.actions.server,name:database_cleanup.action_purge_menus
+#, python-format
+msgid "Purge menus"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_models.py:133
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_models
+#, python-format
+msgid "Purge models"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_modules.py:104
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_modules
+#, python-format
+msgid "Purge modules"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_columns
+msgid "Purge obsolete columns"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_data
+msgid "Purge obsolete data entries"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_menus
+msgid "Purge obsolete menu entries"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_models
+msgid "Purge obsolete models"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_modules
+msgid "Purge obsolete modules"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_tables
+msgid "Purge obsolete tables"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_tables.py:92
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_tables
+#, python-format
+msgid "Purge tables"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+msgid "Purge this column"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+msgid "Purge this data"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.menu:database_cleanup.purge_menus_view
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+msgid "Purge this model"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+msgid "Purge this module"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+msgid "Purge this table"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,purged:0 field:cleanup.purge.line.column,purged:0
+#: field:cleanup.purge.line.data,purged:0
+#: field:cleanup.purge.line.menu,purged:0
+#: field:cleanup.purge.line.model,purged:0
+#: field:cleanup.purge.line.module,purged:0
+#: field:cleanup.purge.line.table,purged:0
+msgid "Purged"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.table,purge_line_ids:0
+msgid "Tables to purge"
+msgstr ""

+ 405 - 0
i18n/it.po

@@ -0,0 +1,405 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * database_cleanup
+# 
+# Translators:
+# Paolo Valier, 2016
+msgid ""
+msgstr ""
+"Project-Id-Version: server-tools (8.0)\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2016-03-17 15:37+0000\n"
+"PO-Revision-Date: 2016-03-13 09:47+0000\n"
+"Last-Translator: Paolo Valier\n"
+"Language-Team: Italian (http://www.transifex.com/oca/OCA-server-tools-8-0/language/it/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Language: it\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.column,purge_line_ids:0
+msgid "Columns to purge"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,create_uid:0
+#: field:cleanup.purge.line.data,create_uid:0
+#: field:cleanup.purge.line.menu,create_uid:0
+#: field:cleanup.purge.line.model,create_uid:0
+#: field:cleanup.purge.line.module,create_uid:0
+#: field:cleanup.purge.line.table,create_uid:0
+#: field:cleanup.purge.wizard.column,create_uid:0
+#: field:cleanup.purge.wizard.data,create_uid:0
+#: field:cleanup.purge.wizard.menu,create_uid:0
+#: field:cleanup.purge.wizard.model,create_uid:0
+#: field:cleanup.purge.wizard.module,create_uid:0
+#: field:cleanup.purge.wizard.table,create_uid:0
+msgid "Created by"
+msgstr "Creato da"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,create_date:0
+#: field:cleanup.purge.line.data,create_date:0
+#: field:cleanup.purge.line.menu,create_date:0
+#: field:cleanup.purge.line.model,create_date:0
+#: field:cleanup.purge.line.module,create_date:0
+#: field:cleanup.purge.line.table,create_date:0
+#: field:cleanup.purge.wizard.column,create_date:0
+#: field:cleanup.purge.wizard.data,create_date:0
+#: field:cleanup.purge.wizard.menu,create_date:0
+#: field:cleanup.purge.wizard.model,create_date:0
+#: field:cleanup.purge.wizard.module,create_date:0
+#: field:cleanup.purge.wizard.table,create_date:0
+msgid "Created on"
+msgstr "Creato il"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.data,data_id:0
+msgid "Data entry"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.data,purge_line_ids:0
+msgid "Data to purge"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_database_cleanup
+msgid "Database cleanup"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,id:0 field:cleanup.purge.line.column,id:0
+#: field:cleanup.purge.line.data,id:0 field:cleanup.purge.line.menu,id:0
+#: field:cleanup.purge.line.model,id:0 field:cleanup.purge.line.module,id:0
+#: field:cleanup.purge.line.table,id:0 field:cleanup.purge.wizard,id:0
+#: field:cleanup.purge.wizard.column,id:0 field:cleanup.purge.wizard.data,id:0
+#: field:cleanup.purge.wizard.menu,id:0 field:cleanup.purge.wizard.model,id:0
+#: field:cleanup.purge.wizard.module,id:0
+#: field:cleanup.purge.wizard.table,id:0
+msgid "ID"
+msgstr "ID"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,write_uid:0
+#: field:cleanup.purge.line.data,write_uid:0
+#: field:cleanup.purge.line.menu,write_uid:0
+#: field:cleanup.purge.line.model,write_uid:0
+#: field:cleanup.purge.line.module,write_uid:0
+#: field:cleanup.purge.line.table,write_uid:0
+#: field:cleanup.purge.wizard.column,write_uid:0
+#: field:cleanup.purge.wizard.data,write_uid:0
+#: field:cleanup.purge.wizard.menu,write_uid:0
+#: field:cleanup.purge.wizard.model,write_uid:0
+#: field:cleanup.purge.wizard.module,write_uid:0
+#: field:cleanup.purge.wizard.table,write_uid:0
+msgid "Last Updated by"
+msgstr "Ultimo aggiornamento da"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,write_date:0
+#: field:cleanup.purge.line.data,write_date:0
+#: field:cleanup.purge.line.menu,write_date:0
+#: field:cleanup.purge.line.model,write_date:0
+#: field:cleanup.purge.line.module,write_date:0
+#: field:cleanup.purge.line.table,write_date:0
+#: field:cleanup.purge.wizard.column,write_date:0
+#: field:cleanup.purge.wizard.data,write_date:0
+#: field:cleanup.purge.wizard.menu,write_date:0
+#: field:cleanup.purge.wizard.model,write_date:0
+#: field:cleanup.purge.wizard.module,write_date:0
+#: field:cleanup.purge.wizard.table,write_date:0
+msgid "Last Updated on"
+msgstr "Ultimo aggiornamento il"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.menu,menu_id:0
+msgid "Menu entry"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.menu,purge_line_ids:0
+msgid "Menus to purge"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,model_id:0
+msgid "Model"
+msgstr "Modello"
+
+#. module: database_cleanup
+#: model:ir.model,name:database_cleanup.model_ir_model
+msgid "Models"
+msgstr "Modelli"
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.model,purge_line_ids:0
+msgid "Models to purge"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.module,purge_line_ids:0
+msgid "Modules to purge"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,name:0 field:cleanup.purge.line.column,name:0
+#: field:cleanup.purge.line.data,name:0 field:cleanup.purge.line.menu,name:0
+#: field:cleanup.purge.line.model,name:0
+#: field:cleanup.purge.line.module,name:0
+#: field:cleanup.purge.line.table,name:0 field:cleanup.purge.wizard,name:0
+#: field:cleanup.purge.wizard.column,name:0
+#: field:cleanup.purge.wizard.data,name:0
+#: field:cleanup.purge.wizard.menu,name:0
+#: field:cleanup.purge.wizard.model,name:0
+#: field:cleanup.purge.wizard.module,name:0
+#: field:cleanup.purge.wizard.table,name:0
+msgid "Name"
+msgstr "Nome"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_menus.py:74
+#, python-format
+msgid "No dangling menu entries found"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_modules.py:122
+#, python-format
+msgid "No modules found to purge"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_columns.py:148
+#, python-format
+msgid "No orphaned columns found"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_data.py:99
+#, python-format
+msgid "No orphaned data entries found"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_models.py:148
+#, python-format
+msgid "No orphaned models found"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_tables.py:131
+#, python-format
+msgid "No orphaned tables found"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_columns.py:147
+#: code:addons/database_cleanup/model/purge_data.py:98
+#: code:addons/database_cleanup/model/purge_menus.py:73
+#: code:addons/database_cleanup/model/purge_models.py:147
+#: code:addons/database_cleanup/model/purge_modules.py:121
+#: code:addons/database_cleanup/model/purge_tables.py:130
+#, python-format
+msgid "Nothing to do"
+msgstr "Niente da fare"
+
+#. module: database_cleanup
+#: model:ir.actions.server,name:database_cleanup.action_purge_column_line
+#: model:ir.actions.server,name:database_cleanup.action_purge_data_line
+#: model:ir.actions.server,name:database_cleanup.action_purge_menu_line
+#: model:ir.actions.server,name:database_cleanup.action_purge_model_line
+#: model:ir.actions.server,name:database_cleanup.action_purge_module_line
+#: model:ir.actions.server,name:database_cleanup.action_purge_table_line
+msgid "Purge"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,wizard_id:0
+#: field:cleanup.purge.line.data,wizard_id:0
+#: field:cleanup.purge.line.menu,wizard_id:0
+#: field:cleanup.purge.line.model,wizard_id:0
+#: field:cleanup.purge.line.module,wizard_id:0
+#: field:cleanup.purge.line.table,wizard_id:0
+msgid "Purge Wizard"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+msgid "Purge all columns"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+msgid "Purge all data"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.menu:database_cleanup.purge_menus_view
+msgid "Purge all menus"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+msgid "Purge all models"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+msgid "Purge all modules"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+msgid "Purge all tables"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_columns.py:86
+#: view:cleanup.purge.line.column:database_cleanup.purge_column_line_tree
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_columns
+#, python-format
+msgid "Purge columns"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_data.py:60
+#: view:cleanup.purge.line.data:database_cleanup.purge_data_line_tree
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+#, python-format
+msgid "Purge data"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_data
+msgid "Purge data entries that refer to missing resources"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_menus.py:52
+#: model:ir.actions.server,name:database_cleanup.action_purge_menus
+#, python-format
+msgid "Purge menus"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_models.py:133
+#: view:cleanup.purge.line.model:database_cleanup.purge_model_line_tree
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_models
+#, python-format
+msgid "Purge models"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_modules.py:104
+#: view:cleanup.purge.line.module:database_cleanup.purge_module_line_tree
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_modules
+#, python-format
+msgid "Purge modules"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_columns
+msgid "Purge obsolete columns"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_data
+msgid "Purge obsolete data entries"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_menus
+msgid "Purge obsolete menu entries"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_models
+msgid "Purge obsolete models"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_modules
+msgid "Purge obsolete modules"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_tables
+msgid "Purge obsolete tables"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_tables.py:92
+#: view:cleanup.purge.line.table:database_cleanup.purge_table_line_tree
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_tables
+#, python-format
+msgid "Purge tables"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.line.column:database_cleanup.purge_column_line_tree
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+msgid "Purge this column"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.line.data:database_cleanup.purge_data_line_tree
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+msgid "Purge this data"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.menu:database_cleanup.purge_menus_view
+msgid "Purge this menu"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.line.menu:database_cleanup.purge_menu_line_tree
+#: view:cleanup.purge.line.model:database_cleanup.purge_model_line_tree
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+msgid "Purge this model"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.line.module:database_cleanup.purge_module_line_tree
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+msgid "Purge this module"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.line.table:database_cleanup.purge_table_line_tree
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+msgid "Purge this table"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,purged:0 field:cleanup.purge.line.column,purged:0
+#: field:cleanup.purge.line.data,purged:0
+#: field:cleanup.purge.line.menu,purged:0
+#: field:cleanup.purge.line.model,purged:0
+#: field:cleanup.purge.line.module,purged:0
+#: field:cleanup.purge.line.table,purged:0
+msgid "Purged"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+#: view:cleanup.purge.wizard.menu:database_cleanup.purge_menus_view
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+msgid "Select lines"
+msgstr "Seleziona righe"
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.table,purge_line_ids:0
+msgid "Tables to purge"
+msgstr ""

+ 447 - 0
i18n/pt_BR.po

@@ -0,0 +1,447 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * database_cleanup
+# 
+# Translators:
+# Ahmet Altınışık <aaltinisik@altinkaya.com.tr>, 2015-2016
+# Antonio Trueba, 2016
+# Armando Vulcano Junior <vulcano@uol.com.br>, 2015
+# Christophe CHAUVET <christophe.chauvet@gmail.com>, 2015
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2013-2014
+# Matjaž Mozetič <m.mozetic@matmoz.si>, 2016
+# Paolo Valier, 2016
+msgid ""
+msgstr ""
+"Project-Id-Version: server-tools (8.0)\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2016-05-12 14:33+0000\n"
+"PO-Revision-Date: 2016-05-11 16:42+0000\n"
+"Last-Translator: OCA Transbot <transbot@odoo-community.org>\n"
+"Language-Team: Portuguese (Brazil) (http://www.transifex.com/oca/OCA-server-tools-8-0/language/pt_BR/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Language: pt_BR\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.column,purge_line_ids:0
+msgid "Columns to purge"
+msgstr "Colunas para excluir"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,create_uid:0
+#: field:cleanup.purge.line.data,create_uid:0
+#: field:cleanup.purge.line.menu,create_uid:0
+#: field:cleanup.purge.line.model,create_uid:0
+#: field:cleanup.purge.line.module,create_uid:0
+#: field:cleanup.purge.line.table,create_uid:0
+#: field:cleanup.purge.wizard.column,create_uid:0
+#: field:cleanup.purge.wizard.data,create_uid:0
+#: field:cleanup.purge.wizard.menu,create_uid:0
+#: field:cleanup.purge.wizard.model,create_uid:0
+#: field:cleanup.purge.wizard.module,create_uid:0
+#: field:cleanup.purge.wizard.table,create_uid:0
+msgid "Created by"
+msgstr "Criado por"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,create_date:0
+#: field:cleanup.purge.line.data,create_date:0
+#: field:cleanup.purge.line.menu,create_date:0
+#: field:cleanup.purge.line.model,create_date:0
+#: field:cleanup.purge.line.module,create_date:0
+#: field:cleanup.purge.line.table,create_date:0
+#: field:cleanup.purge.wizard.column,create_date:0
+#: field:cleanup.purge.wizard.data,create_date:0
+#: field:cleanup.purge.wizard.menu,create_date:0
+#: field:cleanup.purge.wizard.model,create_date:0
+#: field:cleanup.purge.wizard.module,create_date:0
+#: field:cleanup.purge.wizard.table,create_date:0
+msgid "Created on"
+msgstr "Criado em"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.data,data_id:0
+msgid "Data entry"
+msgstr "Entrada de dados"
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.data,purge_line_ids:0
+msgid "Data to purge"
+msgstr "Dados para excluir"
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_database_cleanup
+msgid "Database cleanup"
+msgstr "Limpeza do Banco de Dados"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,display_name:0
+#: field:cleanup.purge.line.column,display_name:0
+#: field:cleanup.purge.line.data,display_name:0
+#: field:cleanup.purge.line.menu,display_name:0
+#: field:cleanup.purge.line.model,display_name:0
+#: field:cleanup.purge.line.module,display_name:0
+#: field:cleanup.purge.line.table,display_name:0
+#: field:cleanup.purge.wizard,display_name:0
+#: field:cleanup.purge.wizard.column,display_name:0
+#: field:cleanup.purge.wizard.data,display_name:0
+#: field:cleanup.purge.wizard.menu,display_name:0
+#: field:cleanup.purge.wizard.model,display_name:0
+#: field:cleanup.purge.wizard.module,display_name:0
+#: field:cleanup.purge.wizard.table,display_name:0
+msgid "Display Name"
+msgstr "Nome para Mostrar"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,id:0 field:cleanup.purge.line.column,id:0
+#: field:cleanup.purge.line.data,id:0 field:cleanup.purge.line.menu,id:0
+#: field:cleanup.purge.line.model,id:0 field:cleanup.purge.line.module,id:0
+#: field:cleanup.purge.line.table,id:0 field:cleanup.purge.wizard,id:0
+#: field:cleanup.purge.wizard.column,id:0 field:cleanup.purge.wizard.data,id:0
+#: field:cleanup.purge.wizard.menu,id:0 field:cleanup.purge.wizard.model,id:0
+#: field:cleanup.purge.wizard.module,id:0
+#: field:cleanup.purge.wizard.table,id:0
+msgid "ID"
+msgstr "Identificação"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,__last_update:0
+#: field:cleanup.purge.line.column,__last_update:0
+#: field:cleanup.purge.line.data,__last_update:0
+#: field:cleanup.purge.line.menu,__last_update:0
+#: field:cleanup.purge.line.model,__last_update:0
+#: field:cleanup.purge.line.module,__last_update:0
+#: field:cleanup.purge.line.table,__last_update:0
+#: field:cleanup.purge.wizard,__last_update:0
+#: field:cleanup.purge.wizard.column,__last_update:0
+#: field:cleanup.purge.wizard.data,__last_update:0
+#: field:cleanup.purge.wizard.menu,__last_update:0
+#: field:cleanup.purge.wizard.model,__last_update:0
+#: field:cleanup.purge.wizard.module,__last_update:0
+#: field:cleanup.purge.wizard.table,__last_update:0
+msgid "Last Modified on"
+msgstr "Última atualização em"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,write_uid:0
+#: field:cleanup.purge.line.data,write_uid:0
+#: field:cleanup.purge.line.menu,write_uid:0
+#: field:cleanup.purge.line.model,write_uid:0
+#: field:cleanup.purge.line.module,write_uid:0
+#: field:cleanup.purge.line.table,write_uid:0
+#: field:cleanup.purge.wizard.column,write_uid:0
+#: field:cleanup.purge.wizard.data,write_uid:0
+#: field:cleanup.purge.wizard.menu,write_uid:0
+#: field:cleanup.purge.wizard.model,write_uid:0
+#: field:cleanup.purge.wizard.module,write_uid:0
+#: field:cleanup.purge.wizard.table,write_uid:0
+msgid "Last Updated by"
+msgstr "Última atualização por"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,write_date:0
+#: field:cleanup.purge.line.data,write_date:0
+#: field:cleanup.purge.line.menu,write_date:0
+#: field:cleanup.purge.line.model,write_date:0
+#: field:cleanup.purge.line.module,write_date:0
+#: field:cleanup.purge.line.table,write_date:0
+#: field:cleanup.purge.wizard.column,write_date:0
+#: field:cleanup.purge.wizard.data,write_date:0
+#: field:cleanup.purge.wizard.menu,write_date:0
+#: field:cleanup.purge.wizard.model,write_date:0
+#: field:cleanup.purge.wizard.module,write_date:0
+#: field:cleanup.purge.wizard.table,write_date:0
+msgid "Last Updated on"
+msgstr "Última atualização em"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.menu,menu_id:0
+msgid "Menu entry"
+msgstr "Entrada do Menu"
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.menu,purge_line_ids:0
+msgid "Menus to purge"
+msgstr "Menus para excluir"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,model_id:0
+msgid "Model"
+msgstr "Modelo"
+
+#. module: database_cleanup
+#: model:ir.model,name:database_cleanup.model_ir_model
+msgid "Models"
+msgstr "Modelos"
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.model,purge_line_ids:0
+msgid "Models to purge"
+msgstr "Modelos para excluir"
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.module,purge_line_ids:0
+msgid "Modules to purge"
+msgstr "Módulos para excluir"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,name:0 field:cleanup.purge.line.column,name:0
+#: field:cleanup.purge.line.data,name:0 field:cleanup.purge.line.menu,name:0
+#: field:cleanup.purge.line.model,name:0
+#: field:cleanup.purge.line.module,name:0
+#: field:cleanup.purge.line.table,name:0 field:cleanup.purge.wizard,name:0
+#: field:cleanup.purge.wizard.column,name:0
+#: field:cleanup.purge.wizard.data,name:0
+#: field:cleanup.purge.wizard.menu,name:0
+#: field:cleanup.purge.wizard.model,name:0
+#: field:cleanup.purge.wizard.module,name:0
+#: field:cleanup.purge.wizard.table,name:0
+msgid "Name"
+msgstr "Nome"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_menus.py:74
+#, python-format
+msgid "No dangling menu entries found"
+msgstr "Nenhuma entrada de menu pendente encontrada"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_modules.py:122
+#, python-format
+msgid "No modules found to purge"
+msgstr "Nenhum módulo encontrado para excluir"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_columns.py:148
+#, python-format
+msgid "No orphaned columns found"
+msgstr "Nenhuma coluna orfã encontrada"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_data.py:99
+#, python-format
+msgid "No orphaned data entries found"
+msgstr "Nenhuma entrada de dados orfã encontrada"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_models.py:148
+#, python-format
+msgid "No orphaned models found"
+msgstr "Nenhum modelo orfão encontrado"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_tables.py:131
+#, python-format
+msgid "No orphaned tables found"
+msgstr "Nenhuma tabela orfã encontrada"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_columns.py:147
+#: code:addons/database_cleanup/model/purge_data.py:98
+#: code:addons/database_cleanup/model/purge_menus.py:73
+#: code:addons/database_cleanup/model/purge_models.py:147
+#: code:addons/database_cleanup/model/purge_modules.py:121
+#: code:addons/database_cleanup/model/purge_tables.py:130
+#, python-format
+msgid "Nothing to do"
+msgstr "nada a fazer"
+
+#. module: database_cleanup
+#: model:ir.actions.server,name:database_cleanup.action_purge_column_line
+#: model:ir.actions.server,name:database_cleanup.action_purge_data_line
+#: model:ir.actions.server,name:database_cleanup.action_purge_menu_line
+#: model:ir.actions.server,name:database_cleanup.action_purge_model_line
+#: model:ir.actions.server,name:database_cleanup.action_purge_module_line
+#: model:ir.actions.server,name:database_cleanup.action_purge_table_line
+msgid "Purge"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,wizard_id:0
+#: field:cleanup.purge.line.data,wizard_id:0
+#: field:cleanup.purge.line.menu,wizard_id:0
+#: field:cleanup.purge.line.model,wizard_id:0
+#: field:cleanup.purge.line.module,wizard_id:0
+#: field:cleanup.purge.line.table,wizard_id:0
+msgid "Purge Wizard"
+msgstr "Assistente de exclusão"
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+msgid "Purge all columns"
+msgstr "Excluir todas as colunas"
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+msgid "Purge all data"
+msgstr "Excluir todos os dados"
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.menu:database_cleanup.purge_menus_view
+msgid "Purge all menus"
+msgstr "Excluir todos os menus"
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+msgid "Purge all models"
+msgstr "Excluir todos os modelos"
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+msgid "Purge all modules"
+msgstr "Excluir todos os módulos"
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+msgid "Purge all tables"
+msgstr "Excluir todas as tabelas"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_columns.py:86
+#: view:cleanup.purge.line.column:database_cleanup.purge_column_line_tree
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_columns
+#, python-format
+msgid "Purge columns"
+msgstr "Excluir colunas"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_data.py:60
+#: view:cleanup.purge.line.data:database_cleanup.purge_data_line_tree
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+#, python-format
+msgid "Purge data"
+msgstr "Excluir dados"
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_data
+msgid "Purge data entries that refer to missing resources"
+msgstr "Excluir entrada de dados que se referem a recursos faltantes"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_menus.py:52
+#: model:ir.actions.server,name:database_cleanup.action_purge_menus
+#, python-format
+msgid "Purge menus"
+msgstr "Excluir menus"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_models.py:133
+#: view:cleanup.purge.line.model:database_cleanup.purge_model_line_tree
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_models
+#, python-format
+msgid "Purge models"
+msgstr "Excluir modelos"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_modules.py:104
+#: view:cleanup.purge.line.module:database_cleanup.purge_module_line_tree
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_modules
+#, python-format
+msgid "Purge modules"
+msgstr "Excluir módulos"
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_columns
+msgid "Purge obsolete columns"
+msgstr "Excluir colunas obsoletas"
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_data
+msgid "Purge obsolete data entries"
+msgstr "Excluir entrada de dados obsoletas"
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_menus
+msgid "Purge obsolete menu entries"
+msgstr "Excluir entradas de menu obsoletas"
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_models
+msgid "Purge obsolete models"
+msgstr "Excluir modelos obsoletos"
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_modules
+msgid "Purge obsolete modules"
+msgstr "Excluir módulos obsoletos"
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_tables
+msgid "Purge obsolete tables"
+msgstr "Excluir tabelas obsoletas"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_tables.py:92
+#: view:cleanup.purge.line.table:database_cleanup.purge_table_line_tree
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_tables
+#, python-format
+msgid "Purge tables"
+msgstr "Excluir tabelas"
+
+#. module: database_cleanup
+#: view:cleanup.purge.line.column:database_cleanup.purge_column_line_tree
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+msgid "Purge this column"
+msgstr "Excluir esta coluna"
+
+#. module: database_cleanup
+#: view:cleanup.purge.line.data:database_cleanup.purge_data_line_tree
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+msgid "Purge this data"
+msgstr "Excluir este dado"
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.menu:database_cleanup.purge_menus_view
+msgid "Purge this menu"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.line.menu:database_cleanup.purge_menu_line_tree
+#: view:cleanup.purge.line.model:database_cleanup.purge_model_line_tree
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+msgid "Purge this model"
+msgstr "Excluir este modelo"
+
+#. module: database_cleanup
+#: view:cleanup.purge.line.module:database_cleanup.purge_module_line_tree
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+msgid "Purge this module"
+msgstr "Excluir este módulo"
+
+#. module: database_cleanup
+#: view:cleanup.purge.line.table:database_cleanup.purge_table_line_tree
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+msgid "Purge this table"
+msgstr "Excluir esta tabela"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,purged:0 field:cleanup.purge.line.column,purged:0
+#: field:cleanup.purge.line.data,purged:0
+#: field:cleanup.purge.line.menu,purged:0
+#: field:cleanup.purge.line.model,purged:0
+#: field:cleanup.purge.line.module,purged:0
+#: field:cleanup.purge.line.table,purged:0
+msgid "Purged"
+msgstr "Excluído"
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+#: view:cleanup.purge.wizard.menu:database_cleanup.purge_menus_view
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+msgid "Select lines"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.table,purge_line_ids:0
+msgid "Tables to purge"
+msgstr "Tabelas para excluir"

+ 369 - 0
i18n/ru.po

@@ -0,0 +1,369 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * database_cleanup
+# 
+# Translators:
+msgid ""
+msgstr ""
+"Project-Id-Version: server-tools (8.0)\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2015-09-29 11:14+0000\n"
+"PO-Revision-Date: 2015-09-18 13:54+0000\n"
+"Last-Translator: <>\n"
+"Language-Team: Russian (http://www.transifex.com/oca/OCA-server-tools-8-0/language/ru/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Language: ru\n"
+"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.column,purge_line_ids:0
+msgid "Columns to purge"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,create_uid:0
+#: field:cleanup.purge.line.data,create_uid:0
+#: field:cleanup.purge.line.menu,create_uid:0
+#: field:cleanup.purge.line.model,create_uid:0
+#: field:cleanup.purge.line.module,create_uid:0
+#: field:cleanup.purge.line.table,create_uid:0
+#: field:cleanup.purge.wizard.column,create_uid:0
+#: field:cleanup.purge.wizard.data,create_uid:0
+#: field:cleanup.purge.wizard.menu,create_uid:0
+#: field:cleanup.purge.wizard.model,create_uid:0
+#: field:cleanup.purge.wizard.module,create_uid:0
+#: field:cleanup.purge.wizard.table,create_uid:0
+msgid "Created by"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,create_date:0
+#: field:cleanup.purge.line.data,create_date:0
+#: field:cleanup.purge.line.menu,create_date:0
+#: field:cleanup.purge.line.model,create_date:0
+#: field:cleanup.purge.line.module,create_date:0
+#: field:cleanup.purge.line.table,create_date:0
+#: field:cleanup.purge.wizard.column,create_date:0
+#: field:cleanup.purge.wizard.data,create_date:0
+#: field:cleanup.purge.wizard.menu,create_date:0
+#: field:cleanup.purge.wizard.model,create_date:0
+#: field:cleanup.purge.wizard.module,create_date:0
+#: field:cleanup.purge.wizard.table,create_date:0
+msgid "Created on"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.data,data_id:0
+msgid "Data entry"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.data,purge_line_ids:0
+msgid "Data to purge"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_database_cleanup
+msgid "Database cleanup"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,id:0 field:cleanup.purge.line.column,id:0
+#: field:cleanup.purge.line.data,id:0 field:cleanup.purge.line.menu,id:0
+#: field:cleanup.purge.line.model,id:0 field:cleanup.purge.line.module,id:0
+#: field:cleanup.purge.line.table,id:0 field:cleanup.purge.wizard,id:0
+#: field:cleanup.purge.wizard.column,id:0 field:cleanup.purge.wizard.data,id:0
+#: field:cleanup.purge.wizard.menu,id:0 field:cleanup.purge.wizard.model,id:0
+#: field:cleanup.purge.wizard.module,id:0
+#: field:cleanup.purge.wizard.table,id:0
+msgid "ID"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,write_uid:0
+#: field:cleanup.purge.line.data,write_uid:0
+#: field:cleanup.purge.line.menu,write_uid:0
+#: field:cleanup.purge.line.model,write_uid:0
+#: field:cleanup.purge.line.module,write_uid:0
+#: field:cleanup.purge.line.table,write_uid:0
+#: field:cleanup.purge.wizard.column,write_uid:0
+#: field:cleanup.purge.wizard.data,write_uid:0
+#: field:cleanup.purge.wizard.menu,write_uid:0
+#: field:cleanup.purge.wizard.model,write_uid:0
+#: field:cleanup.purge.wizard.module,write_uid:0
+#: field:cleanup.purge.wizard.table,write_uid:0
+msgid "Last Updated by"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,write_date:0
+#: field:cleanup.purge.line.data,write_date:0
+#: field:cleanup.purge.line.menu,write_date:0
+#: field:cleanup.purge.line.model,write_date:0
+#: field:cleanup.purge.line.module,write_date:0
+#: field:cleanup.purge.line.table,write_date:0
+#: field:cleanup.purge.wizard.column,write_date:0
+#: field:cleanup.purge.wizard.data,write_date:0
+#: field:cleanup.purge.wizard.menu,write_date:0
+#: field:cleanup.purge.wizard.model,write_date:0
+#: field:cleanup.purge.wizard.module,write_date:0
+#: field:cleanup.purge.wizard.table,write_date:0
+msgid "Last Updated on"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.menu,menu_id:0
+msgid "Menu entry"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.menu,purge_line_ids:0
+msgid "Menus to purge"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,model_id:0
+msgid "Model"
+msgstr "Модель"
+
+#. module: database_cleanup
+#: model:ir.model,name:database_cleanup.model_ir_model
+msgid "Models"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.model,purge_line_ids:0
+msgid "Models to purge"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.module,purge_line_ids:0
+msgid "Modules to purge"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,name:0 field:cleanup.purge.line.column,name:0
+#: field:cleanup.purge.line.data,name:0 field:cleanup.purge.line.menu,name:0
+#: field:cleanup.purge.line.model,name:0
+#: field:cleanup.purge.line.module,name:0
+#: field:cleanup.purge.line.table,name:0 field:cleanup.purge.wizard,name:0
+#: field:cleanup.purge.wizard.column,name:0
+#: field:cleanup.purge.wizard.data,name:0
+#: field:cleanup.purge.wizard.menu,name:0
+#: field:cleanup.purge.wizard.model,name:0
+#: field:cleanup.purge.wizard.module,name:0
+#: field:cleanup.purge.wizard.table,name:0
+msgid "Name"
+msgstr "Название"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_menus.py:74
+#, python-format
+msgid "No dangling menu entries found"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_modules.py:122
+#, python-format
+msgid "No modules found to purge"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_columns.py:148
+#, python-format
+msgid "No orphaned columns found"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_data.py:99
+#, python-format
+msgid "No orphaned data entries found"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_models.py:148
+#, python-format
+msgid "No orphaned models found"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_tables.py:131
+#, python-format
+msgid "No orphaned tables found"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_columns.py:147
+#: code:addons/database_cleanup/model/purge_data.py:98
+#: code:addons/database_cleanup/model/purge_menus.py:73
+#: code:addons/database_cleanup/model/purge_models.py:147
+#: code:addons/database_cleanup/model/purge_modules.py:121
+#: code:addons/database_cleanup/model/purge_tables.py:130
+#, python-format
+msgid "Nothing to do"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,wizard_id:0
+#: field:cleanup.purge.line.data,wizard_id:0
+#: field:cleanup.purge.line.menu,wizard_id:0
+#: field:cleanup.purge.line.model,wizard_id:0
+#: field:cleanup.purge.line.module,wizard_id:0
+#: field:cleanup.purge.line.table,wizard_id:0
+msgid "Purge Wizard"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+msgid "Purge all columns"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+msgid "Purge all data"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.menu:database_cleanup.purge_menus_view
+msgid "Purge all menus"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+msgid "Purge all models"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+msgid "Purge all modules"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+msgid "Purge all tables"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_columns.py:86
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_columns
+#, python-format
+msgid "Purge columns"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_data.py:60
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+#, python-format
+msgid "Purge data"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_data
+msgid "Purge data entries that refer to missing resources"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_menus.py:52
+#: model:ir.actions.server,name:database_cleanup.action_purge_menus
+#, python-format
+msgid "Purge menus"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_models.py:133
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_models
+#, python-format
+msgid "Purge models"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_modules.py:104
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_modules
+#, python-format
+msgid "Purge modules"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_columns
+msgid "Purge obsolete columns"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_data
+msgid "Purge obsolete data entries"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_menus
+msgid "Purge obsolete menu entries"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_models
+msgid "Purge obsolete models"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_modules
+msgid "Purge obsolete modules"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_tables
+msgid "Purge obsolete tables"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_tables.py:92
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_tables
+#, python-format
+msgid "Purge tables"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+msgid "Purge this column"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+msgid "Purge this data"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.menu:database_cleanup.purge_menus_view
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+msgid "Purge this model"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+msgid "Purge this module"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+msgid "Purge this table"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,purged:0 field:cleanup.purge.line.column,purged:0
+#: field:cleanup.purge.line.data,purged:0
+#: field:cleanup.purge.line.menu,purged:0
+#: field:cleanup.purge.line.model,purged:0
+#: field:cleanup.purge.line.module,purged:0
+#: field:cleanup.purge.line.table,purged:0
+msgid "Purged"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.table,purge_line_ids:0
+msgid "Tables to purge"
+msgstr ""

+ 447 - 0
i18n/sl.po

@@ -0,0 +1,447 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * database_cleanup
+# 
+# Translators:
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2012,2014
+# Hotellook, 2014
+# Jarmo Kortetjärvi <jarmo.kortetjarvi@gmail.com>, 2016
+# Matjaž Mozetič <m.mozetic@matmoz.si>, 2015-2016
+# Paolo Valier, 2016
+# Rudolf Schnapka <rs@techno-flex.de>, 2016
+# SaFi J. <safi2266@gmail.com>, 2015
+msgid ""
+msgstr ""
+"Project-Id-Version: server-tools (8.0)\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2016-05-06 02:41+0000\n"
+"PO-Revision-Date: 2016-05-05 05:57+0000\n"
+"Last-Translator: Matjaž Mozetič <m.mozetic@matmoz.si>\n"
+"Language-Team: Slovenian (http://www.transifex.com/oca/OCA-server-tools-8-0/language/sl/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Language: sl\n"
+"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.column,purge_line_ids:0
+msgid "Columns to purge"
+msgstr "Stolpci za očiščenje"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,create_uid:0
+#: field:cleanup.purge.line.data,create_uid:0
+#: field:cleanup.purge.line.menu,create_uid:0
+#: field:cleanup.purge.line.model,create_uid:0
+#: field:cleanup.purge.line.module,create_uid:0
+#: field:cleanup.purge.line.table,create_uid:0
+#: field:cleanup.purge.wizard.column,create_uid:0
+#: field:cleanup.purge.wizard.data,create_uid:0
+#: field:cleanup.purge.wizard.menu,create_uid:0
+#: field:cleanup.purge.wizard.model,create_uid:0
+#: field:cleanup.purge.wizard.module,create_uid:0
+#: field:cleanup.purge.wizard.table,create_uid:0
+msgid "Created by"
+msgstr "Ustvaril"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,create_date:0
+#: field:cleanup.purge.line.data,create_date:0
+#: field:cleanup.purge.line.menu,create_date:0
+#: field:cleanup.purge.line.model,create_date:0
+#: field:cleanup.purge.line.module,create_date:0
+#: field:cleanup.purge.line.table,create_date:0
+#: field:cleanup.purge.wizard.column,create_date:0
+#: field:cleanup.purge.wizard.data,create_date:0
+#: field:cleanup.purge.wizard.menu,create_date:0
+#: field:cleanup.purge.wizard.model,create_date:0
+#: field:cleanup.purge.wizard.module,create_date:0
+#: field:cleanup.purge.wizard.table,create_date:0
+msgid "Created on"
+msgstr "Ustvarjeno"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.data,data_id:0
+msgid "Data entry"
+msgstr "Podatkovni vnos"
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.data,purge_line_ids:0
+msgid "Data to purge"
+msgstr "Podatki za očiščenje"
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_database_cleanup
+msgid "Database cleanup"
+msgstr "Čiščenje podatkovne baze"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,display_name:0
+#: field:cleanup.purge.line.column,display_name:0
+#: field:cleanup.purge.line.data,display_name:0
+#: field:cleanup.purge.line.menu,display_name:0
+#: field:cleanup.purge.line.model,display_name:0
+#: field:cleanup.purge.line.module,display_name:0
+#: field:cleanup.purge.line.table,display_name:0
+#: field:cleanup.purge.wizard,display_name:0
+#: field:cleanup.purge.wizard.column,display_name:0
+#: field:cleanup.purge.wizard.data,display_name:0
+#: field:cleanup.purge.wizard.menu,display_name:0
+#: field:cleanup.purge.wizard.model,display_name:0
+#: field:cleanup.purge.wizard.module,display_name:0
+#: field:cleanup.purge.wizard.table,display_name:0
+msgid "Display Name"
+msgstr "Prikazni naziv"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,id:0 field:cleanup.purge.line.column,id:0
+#: field:cleanup.purge.line.data,id:0 field:cleanup.purge.line.menu,id:0
+#: field:cleanup.purge.line.model,id:0 field:cleanup.purge.line.module,id:0
+#: field:cleanup.purge.line.table,id:0 field:cleanup.purge.wizard,id:0
+#: field:cleanup.purge.wizard.column,id:0 field:cleanup.purge.wizard.data,id:0
+#: field:cleanup.purge.wizard.menu,id:0 field:cleanup.purge.wizard.model,id:0
+#: field:cleanup.purge.wizard.module,id:0
+#: field:cleanup.purge.wizard.table,id:0
+msgid "ID"
+msgstr "ID"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,__last_update:0
+#: field:cleanup.purge.line.column,__last_update:0
+#: field:cleanup.purge.line.data,__last_update:0
+#: field:cleanup.purge.line.menu,__last_update:0
+#: field:cleanup.purge.line.model,__last_update:0
+#: field:cleanup.purge.line.module,__last_update:0
+#: field:cleanup.purge.line.table,__last_update:0
+#: field:cleanup.purge.wizard,__last_update:0
+#: field:cleanup.purge.wizard.column,__last_update:0
+#: field:cleanup.purge.wizard.data,__last_update:0
+#: field:cleanup.purge.wizard.menu,__last_update:0
+#: field:cleanup.purge.wizard.model,__last_update:0
+#: field:cleanup.purge.wizard.module,__last_update:0
+#: field:cleanup.purge.wizard.table,__last_update:0
+msgid "Last Modified on"
+msgstr "Zadnjič spremenjeno"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,write_uid:0
+#: field:cleanup.purge.line.data,write_uid:0
+#: field:cleanup.purge.line.menu,write_uid:0
+#: field:cleanup.purge.line.model,write_uid:0
+#: field:cleanup.purge.line.module,write_uid:0
+#: field:cleanup.purge.line.table,write_uid:0
+#: field:cleanup.purge.wizard.column,write_uid:0
+#: field:cleanup.purge.wizard.data,write_uid:0
+#: field:cleanup.purge.wizard.menu,write_uid:0
+#: field:cleanup.purge.wizard.model,write_uid:0
+#: field:cleanup.purge.wizard.module,write_uid:0
+#: field:cleanup.purge.wizard.table,write_uid:0
+msgid "Last Updated by"
+msgstr "Zadnjič posodobil"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,write_date:0
+#: field:cleanup.purge.line.data,write_date:0
+#: field:cleanup.purge.line.menu,write_date:0
+#: field:cleanup.purge.line.model,write_date:0
+#: field:cleanup.purge.line.module,write_date:0
+#: field:cleanup.purge.line.table,write_date:0
+#: field:cleanup.purge.wizard.column,write_date:0
+#: field:cleanup.purge.wizard.data,write_date:0
+#: field:cleanup.purge.wizard.menu,write_date:0
+#: field:cleanup.purge.wizard.model,write_date:0
+#: field:cleanup.purge.wizard.module,write_date:0
+#: field:cleanup.purge.wizard.table,write_date:0
+msgid "Last Updated on"
+msgstr "Zadnjič posodobljeno"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.menu,menu_id:0
+msgid "Menu entry"
+msgstr "Menijski vnos"
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.menu,purge_line_ids:0
+msgid "Menus to purge"
+msgstr "Meniji za očiščenje"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,model_id:0
+msgid "Model"
+msgstr "Model"
+
+#. module: database_cleanup
+#: model:ir.model,name:database_cleanup.model_ir_model
+msgid "Models"
+msgstr "Modeli"
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.model,purge_line_ids:0
+msgid "Models to purge"
+msgstr "Modeli za očiščenje"
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.module,purge_line_ids:0
+msgid "Modules to purge"
+msgstr "Moduli za očiščenje"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,name:0 field:cleanup.purge.line.column,name:0
+#: field:cleanup.purge.line.data,name:0 field:cleanup.purge.line.menu,name:0
+#: field:cleanup.purge.line.model,name:0
+#: field:cleanup.purge.line.module,name:0
+#: field:cleanup.purge.line.table,name:0 field:cleanup.purge.wizard,name:0
+#: field:cleanup.purge.wizard.column,name:0
+#: field:cleanup.purge.wizard.data,name:0
+#: field:cleanup.purge.wizard.menu,name:0
+#: field:cleanup.purge.wizard.model,name:0
+#: field:cleanup.purge.wizard.module,name:0
+#: field:cleanup.purge.wizard.table,name:0
+msgid "Name"
+msgstr "Naziv"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_menus.py:74
+#, python-format
+msgid "No dangling menu entries found"
+msgstr "Noben odvečen meni ni najden"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_modules.py:122
+#, python-format
+msgid "No modules found to purge"
+msgstr "Ni najdenih modulov za očiščenje"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_columns.py:148
+#, python-format
+msgid "No orphaned columns found"
+msgstr "Noben opuščen stolpec ni najden"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_data.py:99
+#, python-format
+msgid "No orphaned data entries found"
+msgstr "Noben opuščen podatkovni vnos ni najden"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_models.py:148
+#, python-format
+msgid "No orphaned models found"
+msgstr "Noben opuščen model ni najden"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_tables.py:131
+#, python-format
+msgid "No orphaned tables found"
+msgstr "Nobena opuščena tabela ni najdena"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_columns.py:147
+#: code:addons/database_cleanup/model/purge_data.py:98
+#: code:addons/database_cleanup/model/purge_menus.py:73
+#: code:addons/database_cleanup/model/purge_models.py:147
+#: code:addons/database_cleanup/model/purge_modules.py:121
+#: code:addons/database_cleanup/model/purge_tables.py:130
+#, python-format
+msgid "Nothing to do"
+msgstr "Ni kaj narediti"
+
+#. module: database_cleanup
+#: model:ir.actions.server,name:database_cleanup.action_purge_column_line
+#: model:ir.actions.server,name:database_cleanup.action_purge_data_line
+#: model:ir.actions.server,name:database_cleanup.action_purge_menu_line
+#: model:ir.actions.server,name:database_cleanup.action_purge_model_line
+#: model:ir.actions.server,name:database_cleanup.action_purge_module_line
+#: model:ir.actions.server,name:database_cleanup.action_purge_table_line
+msgid "Purge"
+msgstr "Očisti"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,wizard_id:0
+#: field:cleanup.purge.line.data,wizard_id:0
+#: field:cleanup.purge.line.menu,wizard_id:0
+#: field:cleanup.purge.line.model,wizard_id:0
+#: field:cleanup.purge.line.module,wizard_id:0
+#: field:cleanup.purge.line.table,wizard_id:0
+msgid "Purge Wizard"
+msgstr "Čarovnik za očiščenje"
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+msgid "Purge all columns"
+msgstr "Očiščenje vseh stolpcev"
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+msgid "Purge all data"
+msgstr "Očiščenje vseh podatkov"
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.menu:database_cleanup.purge_menus_view
+msgid "Purge all menus"
+msgstr "Očiščenje vseh menijev"
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+msgid "Purge all models"
+msgstr "Očiščenje vseh modelov"
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+msgid "Purge all modules"
+msgstr "Očiščenje vseh modulov"
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+msgid "Purge all tables"
+msgstr "Očiščenje vseh tabel"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_columns.py:86
+#: view:cleanup.purge.line.column:database_cleanup.purge_column_line_tree
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_columns
+#, python-format
+msgid "Purge columns"
+msgstr "Očiščenje stolpcev"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_data.py:60
+#: view:cleanup.purge.line.data:database_cleanup.purge_data_line_tree
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+#, python-format
+msgid "Purge data"
+msgstr "Očiščenje podatkov"
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_data
+msgid "Purge data entries that refer to missing resources"
+msgstr "Očiščenje podatkovnih vnosov, ki se sklicujejo na manjkajoče vire"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_menus.py:52
+#: model:ir.actions.server,name:database_cleanup.action_purge_menus
+#, python-format
+msgid "Purge menus"
+msgstr "Očiščenje menijev"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_models.py:133
+#: view:cleanup.purge.line.model:database_cleanup.purge_model_line_tree
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_models
+#, python-format
+msgid "Purge models"
+msgstr "Očiščenje modelov"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_modules.py:104
+#: view:cleanup.purge.line.module:database_cleanup.purge_module_line_tree
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_modules
+#, python-format
+msgid "Purge modules"
+msgstr "Očiščenje modulov"
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_columns
+msgid "Purge obsolete columns"
+msgstr "Očiščenje opuščenih stolpcev"
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_data
+msgid "Purge obsolete data entries"
+msgstr "Očiščenje opuščenih podatkovnih vnosov"
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_menus
+msgid "Purge obsolete menu entries"
+msgstr "Očiščenje opuščenih menijskih vnosov"
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_models
+msgid "Purge obsolete models"
+msgstr "Očiščenje opuščenih modelov"
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_modules
+msgid "Purge obsolete modules"
+msgstr "Očiščenje opuščenih modulov"
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_tables
+msgid "Purge obsolete tables"
+msgstr "Očiščenje opuščenih tabel"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_tables.py:92
+#: view:cleanup.purge.line.table:database_cleanup.purge_table_line_tree
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_tables
+#, python-format
+msgid "Purge tables"
+msgstr "Očiščenje tabel"
+
+#. module: database_cleanup
+#: view:cleanup.purge.line.column:database_cleanup.purge_column_line_tree
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+msgid "Purge this column"
+msgstr "Očisti ta stolpec"
+
+#. module: database_cleanup
+#: view:cleanup.purge.line.data:database_cleanup.purge_data_line_tree
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+msgid "Purge this data"
+msgstr "Očisti ta podatek"
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.menu:database_cleanup.purge_menus_view
+msgid "Purge this menu"
+msgstr "Očisti ta meni"
+
+#. module: database_cleanup
+#: view:cleanup.purge.line.menu:database_cleanup.purge_menu_line_tree
+#: view:cleanup.purge.line.model:database_cleanup.purge_model_line_tree
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+msgid "Purge this model"
+msgstr "Očisti ta model"
+
+#. module: database_cleanup
+#: view:cleanup.purge.line.module:database_cleanup.purge_module_line_tree
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+msgid "Purge this module"
+msgstr "Očisti ta modul"
+
+#. module: database_cleanup
+#: view:cleanup.purge.line.table:database_cleanup.purge_table_line_tree
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+msgid "Purge this table"
+msgstr "Očisti to tabelo"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,purged:0 field:cleanup.purge.line.column,purged:0
+#: field:cleanup.purge.line.data,purged:0
+#: field:cleanup.purge.line.menu,purged:0
+#: field:cleanup.purge.line.model,purged:0
+#: field:cleanup.purge.line.module,purged:0
+#: field:cleanup.purge.line.table,purged:0
+msgid "Purged"
+msgstr "Očiščeno"
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+#: view:cleanup.purge.wizard.menu:database_cleanup.purge_menus_view
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+msgid "Select lines"
+msgstr "Izberi postavke"
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.table,purge_line_ids:0
+msgid "Tables to purge"
+msgstr "Tabele za očiščenje"

+ 405 - 0
i18n/tr.po

@@ -0,0 +1,405 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * database_cleanup
+# 
+# Translators:
+# Ahmet Altınışık <aaltinisik@altinkaya.com.tr>, 2016
+msgid ""
+msgstr ""
+"Project-Id-Version: server-tools (8.0)\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2016-03-12 02:05+0000\n"
+"PO-Revision-Date: 2016-03-07 17:52+0000\n"
+"Last-Translator: OCA Transbot <transbot@odoo-community.org>\n"
+"Language-Team: Turkish (http://www.transifex.com/oca/OCA-server-tools-8-0/language/tr/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Language: tr\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.column,purge_line_ids:0
+msgid "Columns to purge"
+msgstr "Silinecek Kolonlar"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,create_uid:0
+#: field:cleanup.purge.line.data,create_uid:0
+#: field:cleanup.purge.line.menu,create_uid:0
+#: field:cleanup.purge.line.model,create_uid:0
+#: field:cleanup.purge.line.module,create_uid:0
+#: field:cleanup.purge.line.table,create_uid:0
+#: field:cleanup.purge.wizard.column,create_uid:0
+#: field:cleanup.purge.wizard.data,create_uid:0
+#: field:cleanup.purge.wizard.menu,create_uid:0
+#: field:cleanup.purge.wizard.model,create_uid:0
+#: field:cleanup.purge.wizard.module,create_uid:0
+#: field:cleanup.purge.wizard.table,create_uid:0
+msgid "Created by"
+msgstr "Oluşturan"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,create_date:0
+#: field:cleanup.purge.line.data,create_date:0
+#: field:cleanup.purge.line.menu,create_date:0
+#: field:cleanup.purge.line.model,create_date:0
+#: field:cleanup.purge.line.module,create_date:0
+#: field:cleanup.purge.line.table,create_date:0
+#: field:cleanup.purge.wizard.column,create_date:0
+#: field:cleanup.purge.wizard.data,create_date:0
+#: field:cleanup.purge.wizard.menu,create_date:0
+#: field:cleanup.purge.wizard.model,create_date:0
+#: field:cleanup.purge.wizard.module,create_date:0
+#: field:cleanup.purge.wizard.table,create_date:0
+msgid "Created on"
+msgstr "Oluşturuldu"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.data,data_id:0
+msgid "Data entry"
+msgstr "Veri girişi"
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.data,purge_line_ids:0
+msgid "Data to purge"
+msgstr "Silinecek Veriler"
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_database_cleanup
+msgid "Database cleanup"
+msgstr "Veritabanı temizliği"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,id:0 field:cleanup.purge.line.column,id:0
+#: field:cleanup.purge.line.data,id:0 field:cleanup.purge.line.menu,id:0
+#: field:cleanup.purge.line.model,id:0 field:cleanup.purge.line.module,id:0
+#: field:cleanup.purge.line.table,id:0 field:cleanup.purge.wizard,id:0
+#: field:cleanup.purge.wizard.column,id:0 field:cleanup.purge.wizard.data,id:0
+#: field:cleanup.purge.wizard.menu,id:0 field:cleanup.purge.wizard.model,id:0
+#: field:cleanup.purge.wizard.module,id:0
+#: field:cleanup.purge.wizard.table,id:0
+msgid "ID"
+msgstr "ID"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,write_uid:0
+#: field:cleanup.purge.line.data,write_uid:0
+#: field:cleanup.purge.line.menu,write_uid:0
+#: field:cleanup.purge.line.model,write_uid:0
+#: field:cleanup.purge.line.module,write_uid:0
+#: field:cleanup.purge.line.table,write_uid:0
+#: field:cleanup.purge.wizard.column,write_uid:0
+#: field:cleanup.purge.wizard.data,write_uid:0
+#: field:cleanup.purge.wizard.menu,write_uid:0
+#: field:cleanup.purge.wizard.model,write_uid:0
+#: field:cleanup.purge.wizard.module,write_uid:0
+#: field:cleanup.purge.wizard.table,write_uid:0
+msgid "Last Updated by"
+msgstr "Son güncellendi"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,write_date:0
+#: field:cleanup.purge.line.data,write_date:0
+#: field:cleanup.purge.line.menu,write_date:0
+#: field:cleanup.purge.line.model,write_date:0
+#: field:cleanup.purge.line.module,write_date:0
+#: field:cleanup.purge.line.table,write_date:0
+#: field:cleanup.purge.wizard.column,write_date:0
+#: field:cleanup.purge.wizard.data,write_date:0
+#: field:cleanup.purge.wizard.menu,write_date:0
+#: field:cleanup.purge.wizard.model,write_date:0
+#: field:cleanup.purge.wizard.module,write_date:0
+#: field:cleanup.purge.wizard.table,write_date:0
+msgid "Last Updated on"
+msgstr "Son güncellenme"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.menu,menu_id:0
+msgid "Menu entry"
+msgstr "Menü ögesi"
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.menu,purge_line_ids:0
+msgid "Menus to purge"
+msgstr "Silinecek menüler"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,model_id:0
+msgid "Model"
+msgstr "Alan"
+
+#. module: database_cleanup
+#: model:ir.model,name:database_cleanup.model_ir_model
+msgid "Models"
+msgstr "Modeller"
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.model,purge_line_ids:0
+msgid "Models to purge"
+msgstr "Silinecek modeller"
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.module,purge_line_ids:0
+msgid "Modules to purge"
+msgstr "Silinecek modüller"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,name:0 field:cleanup.purge.line.column,name:0
+#: field:cleanup.purge.line.data,name:0 field:cleanup.purge.line.menu,name:0
+#: field:cleanup.purge.line.model,name:0
+#: field:cleanup.purge.line.module,name:0
+#: field:cleanup.purge.line.table,name:0 field:cleanup.purge.wizard,name:0
+#: field:cleanup.purge.wizard.column,name:0
+#: field:cleanup.purge.wizard.data,name:0
+#: field:cleanup.purge.wizard.menu,name:0
+#: field:cleanup.purge.wizard.model,name:0
+#: field:cleanup.purge.wizard.module,name:0
+#: field:cleanup.purge.wizard.table,name:0
+msgid "Name"
+msgstr "Adı"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_menus.py:74
+#, python-format
+msgid "No dangling menu entries found"
+msgstr "Sarkan menü ögesi bununmadı"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_modules.py:122
+#, python-format
+msgid "No modules found to purge"
+msgstr "Silinecek modül bulunamadı"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_columns.py:148
+#, python-format
+msgid "No orphaned columns found"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_data.py:99
+#, python-format
+msgid "No orphaned data entries found"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_models.py:148
+#, python-format
+msgid "No orphaned models found"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_tables.py:131
+#, python-format
+msgid "No orphaned tables found"
+msgstr "Hiç yetim tablo bulunamadı"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_columns.py:147
+#: code:addons/database_cleanup/model/purge_data.py:98
+#: code:addons/database_cleanup/model/purge_menus.py:73
+#: code:addons/database_cleanup/model/purge_models.py:147
+#: code:addons/database_cleanup/model/purge_modules.py:121
+#: code:addons/database_cleanup/model/purge_tables.py:130
+#, python-format
+msgid "Nothing to do"
+msgstr "Yapılacak birşey yok"
+
+#. module: database_cleanup
+#: model:ir.actions.server,name:database_cleanup.action_purge_column_line
+#: model:ir.actions.server,name:database_cleanup.action_purge_data_line
+#: model:ir.actions.server,name:database_cleanup.action_purge_menu_line
+#: model:ir.actions.server,name:database_cleanup.action_purge_model_line
+#: model:ir.actions.server,name:database_cleanup.action_purge_module_line
+#: model:ir.actions.server,name:database_cleanup.action_purge_table_line
+msgid "Purge"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,wizard_id:0
+#: field:cleanup.purge.line.data,wizard_id:0
+#: field:cleanup.purge.line.menu,wizard_id:0
+#: field:cleanup.purge.line.model,wizard_id:0
+#: field:cleanup.purge.line.module,wizard_id:0
+#: field:cleanup.purge.line.table,wizard_id:0
+msgid "Purge Wizard"
+msgstr "Silme Sihirbazı"
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+msgid "Purge all columns"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+msgid "Purge all data"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.menu:database_cleanup.purge_menus_view
+msgid "Purge all menus"
+msgstr "Bütün menüleri sil"
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+msgid "Purge all models"
+msgstr "tüm modelleri sil"
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+msgid "Purge all modules"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+msgid "Purge all tables"
+msgstr "Tüm tabloları sil"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_columns.py:86
+#: view:cleanup.purge.line.column:database_cleanup.purge_column_line_tree
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_columns
+#, python-format
+msgid "Purge columns"
+msgstr "Kolonları sil"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_data.py:60
+#: view:cleanup.purge.line.data:database_cleanup.purge_data_line_tree
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+#, python-format
+msgid "Purge data"
+msgstr "Veriyi Sil"
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_data
+msgid "Purge data entries that refer to missing resources"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_menus.py:52
+#: model:ir.actions.server,name:database_cleanup.action_purge_menus
+#, python-format
+msgid "Purge menus"
+msgstr "Menüleri Sil"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_models.py:133
+#: view:cleanup.purge.line.model:database_cleanup.purge_model_line_tree
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_models
+#, python-format
+msgid "Purge models"
+msgstr "Modelleri Sil"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_modules.py:104
+#: view:cleanup.purge.line.module:database_cleanup.purge_module_line_tree
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_modules
+#, python-format
+msgid "Purge modules"
+msgstr "Modülleri sil"
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_columns
+msgid "Purge obsolete columns"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_data
+msgid "Purge obsolete data entries"
+msgstr "Eski veri girişlerini sil"
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_menus
+msgid "Purge obsolete menu entries"
+msgstr "Eski menü ögelerini sil"
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_models
+msgid "Purge obsolete models"
+msgstr "Eskimiş modelleri sil"
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_modules
+msgid "Purge obsolete modules"
+msgstr "Eskimiş modülleri sil"
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_tables
+msgid "Purge obsolete tables"
+msgstr "Eskimiş tabloları sil"
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_tables.py:92
+#: view:cleanup.purge.line.table:database_cleanup.purge_table_line_tree
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_tables
+#, python-format
+msgid "Purge tables"
+msgstr "Tabloları sil"
+
+#. module: database_cleanup
+#: view:cleanup.purge.line.column:database_cleanup.purge_column_line_tree
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+msgid "Purge this column"
+msgstr "Bu kolonu sil"
+
+#. module: database_cleanup
+#: view:cleanup.purge.line.data:database_cleanup.purge_data_line_tree
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+msgid "Purge this data"
+msgstr "Bu veriyi sil"
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.menu:database_cleanup.purge_menus_view
+msgid "Purge this menu"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.line.menu:database_cleanup.purge_menu_line_tree
+#: view:cleanup.purge.line.model:database_cleanup.purge_model_line_tree
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+msgid "Purge this model"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.line.module:database_cleanup.purge_module_line_tree
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+msgid "Purge this module"
+msgstr "Bu modülü sil"
+
+#. module: database_cleanup
+#: view:cleanup.purge.line.table:database_cleanup.purge_table_line_tree
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+msgid "Purge this table"
+msgstr "Bu tabloyu sil"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,purged:0 field:cleanup.purge.line.column,purged:0
+#: field:cleanup.purge.line.data,purged:0
+#: field:cleanup.purge.line.menu,purged:0
+#: field:cleanup.purge.line.model,purged:0
+#: field:cleanup.purge.line.module,purged:0
+#: field:cleanup.purge.line.table,purged:0
+msgid "Purged"
+msgstr "Silinmiş"
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+#: view:cleanup.purge.wizard.menu:database_cleanup.purge_menus_view
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+msgid "Select lines"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.table,purge_line_ids:0
+msgid "Tables to purge"
+msgstr "Silinecek tablolar"

+ 404 - 0
i18n/zh_CN.po

@@ -0,0 +1,404 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * database_cleanup
+# 
+# Translators:
+msgid ""
+msgstr ""
+"Project-Id-Version: server-tools (8.0)\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2016-04-14 07:02+0000\n"
+"PO-Revision-Date: 2015-09-18 13:54+0000\n"
+"Last-Translator: <>\n"
+"Language-Team: Chinese (China) (http://www.transifex.com/oca/OCA-server-tools-8-0/language/zh_CN/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Language: zh_CN\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.column,purge_line_ids:0
+msgid "Columns to purge"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,create_uid:0
+#: field:cleanup.purge.line.data,create_uid:0
+#: field:cleanup.purge.line.menu,create_uid:0
+#: field:cleanup.purge.line.model,create_uid:0
+#: field:cleanup.purge.line.module,create_uid:0
+#: field:cleanup.purge.line.table,create_uid:0
+#: field:cleanup.purge.wizard.column,create_uid:0
+#: field:cleanup.purge.wizard.data,create_uid:0
+#: field:cleanup.purge.wizard.menu,create_uid:0
+#: field:cleanup.purge.wizard.model,create_uid:0
+#: field:cleanup.purge.wizard.module,create_uid:0
+#: field:cleanup.purge.wizard.table,create_uid:0
+msgid "Created by"
+msgstr "创建者"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,create_date:0
+#: field:cleanup.purge.line.data,create_date:0
+#: field:cleanup.purge.line.menu,create_date:0
+#: field:cleanup.purge.line.model,create_date:0
+#: field:cleanup.purge.line.module,create_date:0
+#: field:cleanup.purge.line.table,create_date:0
+#: field:cleanup.purge.wizard.column,create_date:0
+#: field:cleanup.purge.wizard.data,create_date:0
+#: field:cleanup.purge.wizard.menu,create_date:0
+#: field:cleanup.purge.wizard.model,create_date:0
+#: field:cleanup.purge.wizard.module,create_date:0
+#: field:cleanup.purge.wizard.table,create_date:0
+msgid "Created on"
+msgstr "创建时间"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.data,data_id:0
+msgid "Data entry"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.data,purge_line_ids:0
+msgid "Data to purge"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_database_cleanup
+msgid "Database cleanup"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,id:0 field:cleanup.purge.line.column,id:0
+#: field:cleanup.purge.line.data,id:0 field:cleanup.purge.line.menu,id:0
+#: field:cleanup.purge.line.model,id:0 field:cleanup.purge.line.module,id:0
+#: field:cleanup.purge.line.table,id:0 field:cleanup.purge.wizard,id:0
+#: field:cleanup.purge.wizard.column,id:0 field:cleanup.purge.wizard.data,id:0
+#: field:cleanup.purge.wizard.menu,id:0 field:cleanup.purge.wizard.model,id:0
+#: field:cleanup.purge.wizard.module,id:0
+#: field:cleanup.purge.wizard.table,id:0
+msgid "ID"
+msgstr "ID"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,write_uid:0
+#: field:cleanup.purge.line.data,write_uid:0
+#: field:cleanup.purge.line.menu,write_uid:0
+#: field:cleanup.purge.line.model,write_uid:0
+#: field:cleanup.purge.line.module,write_uid:0
+#: field:cleanup.purge.line.table,write_uid:0
+#: field:cleanup.purge.wizard.column,write_uid:0
+#: field:cleanup.purge.wizard.data,write_uid:0
+#: field:cleanup.purge.wizard.menu,write_uid:0
+#: field:cleanup.purge.wizard.model,write_uid:0
+#: field:cleanup.purge.wizard.module,write_uid:0
+#: field:cleanup.purge.wizard.table,write_uid:0
+msgid "Last Updated by"
+msgstr "最后更新者"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,write_date:0
+#: field:cleanup.purge.line.data,write_date:0
+#: field:cleanup.purge.line.menu,write_date:0
+#: field:cleanup.purge.line.model,write_date:0
+#: field:cleanup.purge.line.module,write_date:0
+#: field:cleanup.purge.line.table,write_date:0
+#: field:cleanup.purge.wizard.column,write_date:0
+#: field:cleanup.purge.wizard.data,write_date:0
+#: field:cleanup.purge.wizard.menu,write_date:0
+#: field:cleanup.purge.wizard.model,write_date:0
+#: field:cleanup.purge.wizard.module,write_date:0
+#: field:cleanup.purge.wizard.table,write_date:0
+msgid "Last Updated on"
+msgstr "上次更新日期"
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.menu,menu_id:0
+msgid "Menu entry"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.menu,purge_line_ids:0
+msgid "Menus to purge"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,model_id:0
+msgid "Model"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.model,name:database_cleanup.model_ir_model
+msgid "Models"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.model,purge_line_ids:0
+msgid "Models to purge"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.module,purge_line_ids:0
+msgid "Modules to purge"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,name:0 field:cleanup.purge.line.column,name:0
+#: field:cleanup.purge.line.data,name:0 field:cleanup.purge.line.menu,name:0
+#: field:cleanup.purge.line.model,name:0
+#: field:cleanup.purge.line.module,name:0
+#: field:cleanup.purge.line.table,name:0 field:cleanup.purge.wizard,name:0
+#: field:cleanup.purge.wizard.column,name:0
+#: field:cleanup.purge.wizard.data,name:0
+#: field:cleanup.purge.wizard.menu,name:0
+#: field:cleanup.purge.wizard.model,name:0
+#: field:cleanup.purge.wizard.module,name:0
+#: field:cleanup.purge.wizard.table,name:0
+msgid "Name"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_menus.py:74
+#, python-format
+msgid "No dangling menu entries found"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_modules.py:122
+#, python-format
+msgid "No modules found to purge"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_columns.py:148
+#, python-format
+msgid "No orphaned columns found"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_data.py:99
+#, python-format
+msgid "No orphaned data entries found"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_models.py:148
+#, python-format
+msgid "No orphaned models found"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_tables.py:131
+#, python-format
+msgid "No orphaned tables found"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_columns.py:147
+#: code:addons/database_cleanup/model/purge_data.py:98
+#: code:addons/database_cleanup/model/purge_menus.py:73
+#: code:addons/database_cleanup/model/purge_models.py:147
+#: code:addons/database_cleanup/model/purge_modules.py:121
+#: code:addons/database_cleanup/model/purge_tables.py:130
+#, python-format
+msgid "Nothing to do"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.actions.server,name:database_cleanup.action_purge_column_line
+#: model:ir.actions.server,name:database_cleanup.action_purge_data_line
+#: model:ir.actions.server,name:database_cleanup.action_purge_menu_line
+#: model:ir.actions.server,name:database_cleanup.action_purge_model_line
+#: model:ir.actions.server,name:database_cleanup.action_purge_module_line
+#: model:ir.actions.server,name:database_cleanup.action_purge_table_line
+msgid "Purge"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line.column,wizard_id:0
+#: field:cleanup.purge.line.data,wizard_id:0
+#: field:cleanup.purge.line.menu,wizard_id:0
+#: field:cleanup.purge.line.model,wizard_id:0
+#: field:cleanup.purge.line.module,wizard_id:0
+#: field:cleanup.purge.line.table,wizard_id:0
+msgid "Purge Wizard"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+msgid "Purge all columns"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+msgid "Purge all data"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.menu:database_cleanup.purge_menus_view
+msgid "Purge all menus"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+msgid "Purge all models"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+msgid "Purge all modules"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+msgid "Purge all tables"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_columns.py:86
+#: view:cleanup.purge.line.column:database_cleanup.purge_column_line_tree
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_columns
+#, python-format
+msgid "Purge columns"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_data.py:60
+#: view:cleanup.purge.line.data:database_cleanup.purge_data_line_tree
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+#, python-format
+msgid "Purge data"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_data
+msgid "Purge data entries that refer to missing resources"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_menus.py:52
+#: model:ir.actions.server,name:database_cleanup.action_purge_menus
+#, python-format
+msgid "Purge menus"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_models.py:133
+#: view:cleanup.purge.line.model:database_cleanup.purge_model_line_tree
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_models
+#, python-format
+msgid "Purge models"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_modules.py:104
+#: view:cleanup.purge.line.module:database_cleanup.purge_module_line_tree
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_modules
+#, python-format
+msgid "Purge modules"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_columns
+msgid "Purge obsolete columns"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_data
+msgid "Purge obsolete data entries"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_menus
+msgid "Purge obsolete menu entries"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_models
+msgid "Purge obsolete models"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_modules
+msgid "Purge obsolete modules"
+msgstr ""
+
+#. module: database_cleanup
+#: model:ir.ui.menu,name:database_cleanup.menu_purge_tables
+msgid "Purge obsolete tables"
+msgstr ""
+
+#. module: database_cleanup
+#: code:addons/database_cleanup/model/purge_tables.py:92
+#: view:cleanup.purge.line.table:database_cleanup.purge_table_line_tree
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+#: model:ir.actions.server,name:database_cleanup.action_purge_tables
+#, python-format
+msgid "Purge tables"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.line.column:database_cleanup.purge_column_line_tree
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+msgid "Purge this column"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.line.data:database_cleanup.purge_data_line_tree
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+msgid "Purge this data"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.menu:database_cleanup.purge_menus_view
+msgid "Purge this menu"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.line.menu:database_cleanup.purge_menu_line_tree
+#: view:cleanup.purge.line.model:database_cleanup.purge_model_line_tree
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+msgid "Purge this model"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.line.module:database_cleanup.purge_module_line_tree
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+msgid "Purge this module"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.line.table:database_cleanup.purge_table_line_tree
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+msgid "Purge this table"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.line,purged:0 field:cleanup.purge.line.column,purged:0
+#: field:cleanup.purge.line.data,purged:0
+#: field:cleanup.purge.line.menu,purged:0
+#: field:cleanup.purge.line.model,purged:0
+#: field:cleanup.purge.line.module,purged:0
+#: field:cleanup.purge.line.table,purged:0
+msgid "Purged"
+msgstr ""
+
+#. module: database_cleanup
+#: view:cleanup.purge.wizard.column:database_cleanup.purge_columns_view
+#: view:cleanup.purge.wizard.data:database_cleanup.purge_data_view
+#: view:cleanup.purge.wizard.menu:database_cleanup.purge_menus_view
+#: view:cleanup.purge.wizard.model:database_cleanup.purge_models_view
+#: view:cleanup.purge.wizard.module:database_cleanup.purge_modules_view
+#: view:cleanup.purge.wizard.table:database_cleanup.purge_tables_view
+msgid "Select lines"
+msgstr ""
+
+#. module: database_cleanup
+#: field:cleanup.purge.wizard.table,purge_line_ids:0
+msgid "Tables to purge"
+msgstr ""

+ 7 - 0
model/__init__.py

@@ -0,0 +1,7 @@
+from . import purge_wizard
+from . import purge_modules
+from . import purge_models
+from . import purge_columns
+from . import purge_tables
+from . import purge_data
+from . import purge_menus

binární
model/__init__.pyc


+ 155 - 0
model/purge_columns.py

@@ -0,0 +1,155 @@
+# -*- coding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution
+#    This module copyright (C) 2014 Therp BV (<http://therp.nl>).
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU Affero General Public License as
+#    published by the Free Software Foundation, either version 3 of the
+#    License, or (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU Affero General Public License for more details.
+#
+#    You should have received a copy of the GNU Affero General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+
+from openerp.osv import orm, fields
+from openerp.tools.translate import _
+
+
+class CleanupPurgeLineColumn(orm.TransientModel):
+    _inherit = 'cleanup.purge.line'
+    _name = 'cleanup.purge.line.column'
+
+    _columns = {
+        'model_id': fields.many2one(
+            'ir.model', 'Model',
+            required=True, ondelete='CASCADE'),
+        'wizard_id': fields.many2one(
+            'cleanup.purge.wizard.column', 'Purge Wizard', readonly=True),
+        }
+
+    def purge(self, cr, uid, ids, context=None):
+        """
+        Unlink columns upon manual confirmation.
+        """
+        for line in self.browse(cr, uid, ids, context=context):
+            if line.purged:
+                continue
+
+            model_pool = self.pool[line.model_id.model]
+
+            # Check whether the column actually still exists.
+            # Inheritance such as stock.picking.in from stock.picking
+            # can lead to double attempts at removal
+            cr.execute(
+                'SELECT count(attname) FROM pg_attribute '
+                'WHERE attrelid = '
+                '( SELECT oid FROM pg_class WHERE relname = %s ) '
+                'AND attname = %s',
+                (model_pool._table, line.name))
+            if not cr.fetchone()[0]:
+                continue
+
+            self.logger.info(
+                'Dropping column %s from table %s',
+                line.name, model_pool._table)
+            cr.execute(
+                """
+                ALTER TABLE "%s" DROP COLUMN "%s"
+                """ % (model_pool._table, line.name))
+            line.write({'purged': True})
+            cr.commit()
+        return True
+
+
+class CleanupPurgeWizardColumn(orm.TransientModel):
+    _inherit = 'cleanup.purge.wizard'
+    _name = 'cleanup.purge.wizard.column'
+
+    # List of known columns in use without corresponding fields
+    # Format: {table: [fields]}
+    blacklist = {
+        'wkf_instance': ['uid'],  # lp:1277899
+        }
+
+    def default_get(self, cr, uid, fields, context=None):
+        res = super(CleanupPurgeWizardColumn, self).default_get(
+            cr, uid, fields, context=context)
+        if 'name' in fields:
+            res['name'] = _('Purge columns')
+        return res
+
+    def get_orphaned_columns(self, cr, uid, model_pools, context=None):
+        """
+        From openobject-server/openerp/osv/orm.py
+        Iterate on the database columns to identify columns
+        of fields which have been removed
+        """
+
+        columns = list(set([
+            column for model_pool in model_pools
+            for column in model_pool._columns
+            if not (isinstance(model_pool._columns[column],
+                               fields.function) and
+                    not model_pool._columns[column].store)
+            ]))
+        columns += orm.MAGIC_COLUMNS
+        columns += self.blacklist.get(model_pools[0]._table, [])
+
+        cr.execute("SELECT a.attname"
+                   "  FROM pg_class c, pg_attribute a"
+                   " WHERE c.relname=%s"
+                   "   AND c.oid=a.attrelid"
+                   "   AND a.attisdropped=%s"
+                   "   AND pg_catalog.format_type(a.atttypid, a.atttypmod)"
+                   "        NOT IN ('cid', 'tid', 'oid', 'xid')"
+                   "   AND a.attname NOT IN %s",
+                   (model_pools[0]._table, False, tuple(columns))),
+        return [column[0] for column in cr.fetchall()]
+
+    def find(self, cr, uid, context=None):
+        """
+        Search for columns that are not in the corresponding model.
+
+        Group models by table to prevent false positives for columns
+        that are only in some of the models sharing the same table.
+        Example of this is 'sale_id' not being a field of stock.picking.in
+        """
+        res = []
+        model_pool = self.pool['ir.model']
+        model_ids = model_pool.search(cr, uid, [], context=context)
+
+        # mapping of tables to tuples (model id, [pool1, pool2, ...])
+        table2model = {}
+
+        for model in model_pool.browse(cr, uid, model_ids, context=context):
+            model_pool = self.pool.get(model.model)
+            if not model_pool or not model_pool._auto:
+                continue
+            table2model.setdefault(
+                model_pool._table, (model.id, []))[1].append(model_pool)
+
+        for table, model_spec in table2model.iteritems():
+            for column in self.get_orphaned_columns(
+                    cr, uid, model_spec[1], context=context):
+                res.append((0, 0, {
+                            'name': column,
+                            'model_id': model_spec[0]}))
+        if not res:
+            raise orm.except_orm(
+                _('Nothing to do'),
+                _('No orphaned columns found'))
+        return res
+
+    _columns = {
+        'purge_line_ids': fields.one2many(
+            'cleanup.purge.line.column',
+            'wizard_id', 'Columns to purge'),
+        }

binární
model/purge_columns.pyc


+ 106 - 0
model/purge_data.py

@@ -0,0 +1,106 @@
+# -*- coding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution
+#    This module copyright (C) 2014 Therp BV (<http://therp.nl>).
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU Affero General Public License as
+#    published by the Free Software Foundation, either version 3 of the
+#    License, or (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU Affero General Public License for more details.
+#
+#    You should have received a copy of the GNU Affero General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+
+from openerp.osv import orm, fields
+from openerp.tools.translate import _
+
+
+class CleanupPurgeLineData(orm.TransientModel):
+    _inherit = 'cleanup.purge.line'
+    _name = 'cleanup.purge.line.data'
+
+    _columns = {
+        'data_id': fields.many2one(
+            'ir.model.data', 'Data entry',
+            ondelete='SET NULL'),
+        'wizard_id': fields.many2one(
+            'cleanup.purge.wizard.data', 'Purge Wizard', readonly=True),
+        }
+
+    def purge(self, cr, uid, ids, context=None):
+        """
+        Unlink data entries upon manual confirmation.
+        """
+        data_ids = []
+        for line in self.browse(cr, uid, ids, context=context):
+            if line.purged or not line.data_id:
+                continue
+            data_ids.append(line.data_id.id)
+            self.logger.info('Purging data entry: %s', line.name)
+        self.pool['ir.model.data'].unlink(cr, uid, data_ids, context=context)
+        return self.write(cr, uid, ids, {'purged': True}, context=context)
+
+
+class CleanupPurgeWizardData(orm.TransientModel):
+    _inherit = 'cleanup.purge.wizard'
+    _name = 'cleanup.purge.wizard.data'
+
+    def default_get(self, cr, uid, fields, context=None):
+        res = super(CleanupPurgeWizardData, self).default_get(
+            cr, uid, fields, context=context)
+        if 'name' in fields:
+            res['name'] = _('Purge data')
+        return res
+
+    def find(self, cr, uid, context=None):
+        """
+        Collect all rows from ir_model_data that refer
+        to a nonexisting model, or to a nonexisting
+        row in the model's table.
+        """
+        res = []
+        data_pool = self.pool['ir.model.data']
+        data_ids = []
+        unknown_models = []
+        cr.execute("""SELECT DISTINCT(model) FROM ir_model_data""")
+        for (model,) in cr.fetchall():
+            if not model:
+                continue
+            if not self.pool.get(model):
+                unknown_models.append(model)
+                continue
+            cr.execute(
+                """
+                SELECT id FROM ir_model_data
+                WHERE model = %%s
+                AND res_id IS NOT NULL
+                AND NOT EXISTS (
+                    SELECT id FROM %s WHERE id=ir_model_data.res_id)
+                """ % self.pool[model]._table, (model,))
+            data_ids += [data_row[0] for data_row in cr.fetchall()]
+        data_ids += data_pool.search(
+            cr, uid, [('model', 'in', unknown_models)], context=context)
+        for data in data_pool.browse(cr, uid, data_ids, context=context):
+            res.append((0, 0, {
+                        'data_id': data.id,
+                        'name': "%s.%s, object of type %s" % (
+                            data.module, data.name, data.model)}))
+        if not res:
+            raise orm.except_orm(
+                _('Nothing to do'),
+                _('No orphaned data entries found'))
+        return res
+
+    _columns = {
+        'purge_line_ids': fields.one2many(
+            'cleanup.purge.line.data',
+            'wizard_id', 'Data to purge'),
+        }

binární
model/purge_data.pyc


+ 81 - 0
model/purge_menus.py

@@ -0,0 +1,81 @@
+# -*- coding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution
+#    This module copyright (C) 2015 Therp BV (<http://therp.nl>).
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU Affero General Public License as
+#    published by the Free Software Foundation, either version 3 of the
+#    License, or (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU Affero General Public License for more details.
+#
+#    You should have received a copy of the GNU Affero General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+from openerp.osv import orm, fields
+from openerp.tools.translate import _
+
+
+class CleanupPurgeLineMenu(orm.TransientModel):
+    _inherit = 'cleanup.purge.line'
+    _name = 'cleanup.purge.line.menu'
+
+    _columns = {
+        'wizard_id': fields.many2one(
+            'cleanup.purge.wizard.menu', 'Purge Wizard', readonly=True),
+        'menu_id': fields.many2one('ir.ui.menu', 'Menu entry'),
+    }
+
+    def purge(self, cr, uid, ids, context=None):
+        self.pool['ir.ui.menu'].unlink(
+            cr, uid,
+            [this.menu_id.id for this in self.browse(cr, uid, ids,
+                                                     context=context)],
+            context=context)
+        return self.write(cr, uid, ids, {'purged': True}, context=context)
+
+
+class CleanupPurgeWizardMenu(orm.TransientModel):
+    _inherit = 'cleanup.purge.wizard'
+    _name = 'cleanup.purge.wizard.menu'
+
+    def default_get(self, cr, uid, fields, context=None):
+        res = super(CleanupPurgeWizardMenu, self).default_get(
+            cr, uid, fields, context=context)
+        if 'name' in fields:
+            res['name'] = _('Purge menus')
+        return res
+
+    def find(self, cr, uid, context=None):
+        """
+        Search for models that cannot be instantiated.
+        """
+        res = []
+        for menu in self.pool['ir.ui.menu'].browse(
+                cr, uid, self.pool['ir.ui.menu'].search(
+                    cr, uid, [], context=dict(
+                        context or {}, active_test=False))):
+            if not menu.action or menu.action.type != 'ir.actions.act_window':
+                continue
+            if not self.pool.get(menu.action.res_model):
+                res.append((0, 0, {
+                    'name': menu.complete_name,
+                    'menu_id': menu.id,
+                }))
+        if not res:
+            raise orm.except_orm(
+                _('Nothing to do'),
+                _('No dangling menu entries found'))
+        return res
+
+    _columns = {
+        'purge_line_ids': fields.one2many(
+            'cleanup.purge.line.menu',
+            'wizard_id', 'Menus to purge'),
+    }

binární
model/purge_menus.pyc


+ 155 - 0
model/purge_models.py

@@ -0,0 +1,155 @@
+# -*- coding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution
+#    This module copyright (C) 2014 Therp BV (<http://therp.nl>).
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU Affero General Public License as
+#    published by the Free Software Foundation, either version 3 of the
+#    License, or (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU Affero General Public License for more details.
+#
+#    You should have received a copy of the GNU Affero General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+
+from openerp.osv import orm, fields
+from openerp.tools.translate import _
+from openerp.addons.base.ir.ir_model import MODULE_UNINSTALL_FLAG
+
+
+class IrModel(orm.Model):
+    _inherit = 'ir.model'
+
+    def _drop_table(self, cr, uid, ids, context=None):
+        # Allow to skip this step during model unlink
+        # The super method crashes if the model cannot be instantiated
+        if context and context.get('no_drop_table'):
+            return True
+        return super(IrModel, self)._drop_table(cr, uid, ids, context=context)
+
+    def _inherited_models(self, cr, uid, ids, field_name, arg, context=None):
+        """this function crashes for undefined models"""
+        result = dict((i, []) for i in ids)
+        existing_model_ids = [
+            this.id for this in self.browse(cr, uid, ids, context=context)
+            if self.pool.get(this.model)
+        ]
+        super_result = super(IrModel, self)._inherited_models(
+            cr, uid, existing_model_ids, field_name, arg, context=context)
+        result.update(super_result)
+        return result
+
+    def _register_hook(self, cr):
+        # patch the function field instead of overwriting it
+        if self._columns['inherited_model_ids']._fnct !=\
+                self._inherited_models.__func__:
+            self._columns['inherited_model_ids']._fnct =\
+                self._inherited_models.__func__
+        return super(IrModel, self)._register_hook(cr)
+
+
+class CleanupPurgeLineModel(orm.TransientModel):
+    _inherit = 'cleanup.purge.line'
+    _name = 'cleanup.purge.line.model'
+
+    _columns = {
+        'wizard_id': fields.many2one(
+            'cleanup.purge.wizard.model', 'Purge Wizard', readonly=True),
+        }
+
+    def purge(self, cr, uid, ids, context=None):
+        """
+        Unlink models upon manual confirmation.
+        """
+        model_pool = self.pool['ir.model']
+        attachment_pool = self.pool['ir.attachment']
+        constraint_pool = self.pool['ir.model.constraint']
+        fields_pool = self.pool['ir.model.fields']
+        relation_pool = self.pool['ir.model.relation']
+
+        local_context = (context or {}).copy()
+        local_context.update({
+            MODULE_UNINSTALL_FLAG: True,
+            'no_drop_table': True,
+            })
+
+        for line in self.browse(cr, uid, ids, context=context):
+            cr.execute(
+                "SELECT id, model from ir_model WHERE model = %s",
+                (line.name,))
+            row = cr.fetchone()
+            if row:
+                self.logger.info('Purging model %s', row[1])
+                attachment_ids = attachment_pool.search(
+                    cr, uid, [('res_model', '=', line.name)], context=context)
+                if attachment_ids:
+                    cr.execute(
+                        "UPDATE ir_attachment SET res_model = FALSE "
+                        "WHERE id in %s",
+                        (tuple(attachment_ids), ))
+                constraint_ids = constraint_pool.search(
+                    cr, uid, [('model', '=', line.name)], context=context)
+                if constraint_ids:
+                    constraint_pool.unlink(
+                        cr, uid, constraint_ids, context=context)
+                relation_ids = fields_pool.search(
+                    cr, uid, [('relation', '=', row[1])], context=context)
+                for relation in relation_ids:
+                    try:
+                        # Fails if the model on the target side
+                        # cannot be instantiated
+                        fields_pool.unlink(cr, uid, [relation],
+                                           context=local_context)
+                    except KeyError:
+                        pass
+                    except AttributeError:
+                        pass
+                relation_ids = relation_pool.search(
+                    cr, uid, [('model', '=', line.name)], context=context)
+                for relation in relation_ids:
+                    relation_pool.unlink(cr, uid, [relation],
+                                         context=local_context)
+                model_pool.unlink(cr, uid, [row[0]], context=local_context)
+                line.write({'purged': True})
+                cr.commit()
+        return True
+
+
+class CleanupPurgeWizardModel(orm.TransientModel):
+    _inherit = 'cleanup.purge.wizard'
+    _name = 'cleanup.purge.wizard.model'
+
+    def default_get(self, cr, uid, fields, context=None):
+        res = super(CleanupPurgeWizardModel, self).default_get(
+            cr, uid, fields, context=context)
+        if 'name' in fields:
+            res['name'] = _('Purge models')
+        return res
+
+    def find(self, cr, uid, context=None):
+        """
+        Search for models that cannot be instantiated.
+        """
+        res = []
+        cr.execute("SELECT model from ir_model")
+        for (model,) in cr.fetchall():
+            if not self.pool.get(model):
+                res.append((0, 0, {'name': model}))
+        if not res:
+            raise orm.except_orm(
+                _('Nothing to do'),
+                _('No orphaned models found'))
+        return res
+
+    _columns = {
+        'purge_line_ids': fields.one2many(
+            'cleanup.purge.line.model',
+            'wizard_id', 'Models to purge'),
+        }

binární
model/purge_models.pyc


+ 129 - 0
model/purge_modules.py

@@ -0,0 +1,129 @@
+# -*- coding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution
+#    This module copyright (C) 2014 Therp BV (<http://therp.nl>).
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU Affero General Public License as
+#    published by the Free Software Foundation, either version 3 of the
+#    License, or (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU Affero General Public License for more details.
+#
+#    You should have received a copy of the GNU Affero General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+
+from openerp import pooler
+from openerp.osv import orm, fields
+from openerp.modules.module import get_module_path
+from openerp.tools.translate import _
+from openerp.addons.base.ir.ir_model import MODULE_UNINSTALL_FLAG
+
+
+class IrModelConstraint(orm.Model):
+    _inherit = 'ir.model.constraint'
+
+    def _module_data_uninstall(self, cr, uid, ids, context=None):
+        """this function crashes for constraints on undefined models"""
+        for this in self.browse(cr, uid, ids, context=context):
+            if not self.pool.get(this.model.model):
+                ids.remove(this.id)
+                this.unlink()
+        return super(IrModelConstraint, self)._module_data_uninstall(
+            cr, uid, ids, context=context)
+
+
+class IrModelData(orm.Model):
+    _inherit = 'ir.model.data'
+
+    def _module_data_uninstall(self, cr, uid, modules_to_remove, context=None):
+        """this function crashes for xmlids on undefined models or fields
+        referring to undefined models"""
+        if context is None:
+            context = {}
+        ids = self.search(cr, uid, [('module', 'in', modules_to_remove)])
+        for this in self.browse(cr, uid, ids, context=context):
+            if this.model == 'ir.model.fields':
+                ctx = context.copy()
+                ctx[MODULE_UNINSTALL_FLAG] = True
+                field = self.pool[this.model].browse(
+                    cr, uid, this.res_id, context=ctx)
+                if not self.pool.get(field.model):
+                    this.unlink()
+                    continue
+            if not self.pool.get(this.model):
+                this.unlink()
+        return super(IrModelData, self)._module_data_uninstall(
+            cr, uid, modules_to_remove, context=context)
+
+
+class CleanupPurgeLineModule(orm.TransientModel):
+    _inherit = 'cleanup.purge.line'
+    _name = 'cleanup.purge.line.module'
+
+    _columns = {
+        'wizard_id': fields.many2one(
+            'cleanup.purge.wizard.module', 'Purge Wizard', readonly=True),
+        }
+
+    def purge(self, cr, uid, ids, context=None):
+        """
+        Uninstall modules upon manual confirmation, then reload
+        the database.
+        """
+        module_pool = self.pool['ir.module.module']
+        lines = self.browse(cr, uid, ids, context=context)
+        module_names = [line.name for line in lines if not line.purged]
+        module_ids = module_pool.search(
+            cr, uid, [('name', 'in', module_names)], context=context)
+        if not module_ids:
+            return True
+        self.logger.info('Purging modules %s', ', '.join(module_names))
+        module_pool.write(
+            cr, uid, module_ids, {'state': 'to remove'}, context=context)
+        cr.commit()
+        _db, _pool = pooler.restart_pool(cr.dbname, update_module=True)
+        module_pool.unlink(cr, uid, module_ids, context=context)
+        return self.write(cr, uid, ids, {'purged': True}, context=context)
+
+
+class CleanupPurgeWizardModule(orm.TransientModel):
+    _inherit = 'cleanup.purge.wizard'
+    _name = 'cleanup.purge.wizard.module'
+
+    def default_get(self, cr, uid, fields, context=None):
+        res = super(CleanupPurgeWizardModule, self).default_get(
+            cr, uid, fields, context=context)
+        if 'name' in fields:
+            res['name'] = _('Purge modules')
+        return res
+
+    def find(self, cr, uid, context=None):
+        module_pool = self.pool['ir.module.module']
+        module_ids = module_pool.search(cr, uid, [], context=context)
+        res = []
+        for module in module_pool.browse(cr, uid, module_ids, context=context):
+            if get_module_path(module.name):
+                continue
+            if module.state == 'uninstalled':
+                module_pool.unlink(cr, uid, module.id, context=context)
+                continue
+            res.append((0, 0, {'name': module.name}))
+
+        if not res:
+            raise orm.except_orm(
+                _('Nothing to do'),
+                _('No modules found to purge'))
+        return res
+
+    _columns = {
+        'purge_line_ids': fields.one2many(
+            'cleanup.purge.line.module',
+            'wizard_id', 'Modules to purge'),
+        }

binární
model/purge_modules.pyc


+ 138 - 0
model/purge_tables.py

@@ -0,0 +1,138 @@
+# -*- coding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution
+#    This module copyright (C) 2014 Therp BV (<http://therp.nl>).
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU Affero General Public License as
+#    published by the Free Software Foundation, either version 3 of the
+#    License, or (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU Affero General Public License for more details.
+#
+#    You should have received a copy of the GNU Affero General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+
+from openerp.osv import orm, fields
+from openerp.tools.translate import _
+
+
+class CleanupPurgeLineTable(orm.TransientModel):
+    _inherit = 'cleanup.purge.line'
+    _name = 'cleanup.purge.line.table'
+
+    _columns = {
+        'wizard_id': fields.many2one(
+            'cleanup.purge.wizard.table', 'Purge Wizard', readonly=True),
+        }
+
+    def purge(self, cr, uid, ids, context=None):
+        """
+        Unlink tables upon manual confirmation.
+        """
+        lines = self.browse(cr, uid, ids, context=context)
+        tables = [line.name for line in lines]
+        for line in lines:
+            if line.purged:
+                continue
+
+            # Retrieve constraints on the tables to be dropped
+            # This query is referenced in numerous places
+            # on the Internet but credits probably go to Tom Lane
+            # in this post http://www.postgresql.org/\
+            # message-id/22895.1226088573@sss.pgh.pa.us
+            # Only using the constraint name and the source table,
+            # but I'm leaving the rest in for easier debugging
+            cr.execute(
+                """
+                SELECT conname, confrelid::regclass, af.attname AS fcol,
+                    conrelid::regclass, a.attname AS col
+                FROM pg_attribute af, pg_attribute a,
+                    (SELECT conname, conrelid, confrelid,conkey[i] AS conkey,
+                         confkey[i] AS confkey
+                     FROM (select conname, conrelid, confrelid, conkey,
+                       confkey, generate_series(1,array_upper(conkey,1)) AS i
+                       FROM pg_constraint WHERE contype = 'f') ss) ss2
+                WHERE af.attnum = confkey AND af.attrelid = confrelid AND
+                a.attnum = conkey AND a.attrelid = conrelid
+                AND confrelid::regclass = '%s'::regclass;
+                """ % line.name)
+
+            for constraint in cr.fetchall():
+                if constraint[3] in tables:
+                    self.logger.info(
+                        'Dropping constraint %s on table %s (to be dropped)',
+                        constraint[0], constraint[3])
+                    cr.execute(
+                        "ALTER TABLE %s DROP CONSTRAINT %s" % (
+                            constraint[3], constraint[0]))
+
+            self.logger.info(
+                'Dropping table %s', line.name)
+            cr.execute("DROP TABLE \"%s\"" % (line.name,))
+            line.write({'purged': True})
+            cr.commit()
+        return True
+
+
+class CleanupPurgeWizardTable(orm.TransientModel):
+    _inherit = 'cleanup.purge.wizard'
+    _name = 'cleanup.purge.wizard.table'
+
+    def default_get(self, cr, uid, fields, context=None):
+        res = super(CleanupPurgeWizardTable, self).default_get(
+            cr, uid, fields, context=context)
+        if 'name' in fields:
+            res['name'] = _('Purge tables')
+        return res
+
+    def find(self, cr, uid, context=None):
+        """
+        Search for tables that cannot be instantiated.
+        Ignore views for now.
+        """
+        model_ids = self.pool['ir.model'].search(cr, uid, [], context=context)
+        # Start out with known tables with no model
+        known_tables = ['wkf_witm_trans']
+        for model in self.pool['ir.model'].browse(
+                cr, uid, model_ids, context=context):
+
+            model_pool = self.pool.get(model.model)
+            if not model_pool:
+                continue
+            known_tables.append(model_pool._table)
+            known_tables += [
+                column._sql_names(model_pool)[0]
+                for column in model_pool._columns.values()
+                if (column._type == 'many2many' and
+                    hasattr(column, '_rel'))  # unstored function fields of
+                                              # type m2m don't have _rel
+                ]
+
+        # Cannot pass table names as a psycopg argument
+        known_tables_repr = ",".join(
+            [("'%s'" % table) for table in known_tables])
+        cr.execute(
+            """
+            SELECT table_name FROM information_schema.tables
+            WHERE table_schema = 'public' AND table_type = 'BASE TABLE'
+            AND table_name NOT IN (%s)""" % known_tables_repr)
+
+        res = [(0, 0, {'name': row[0]}) for row in cr.fetchall()]
+        if not res:
+            raise orm.except_orm(
+                _('Nothing to do'),
+                _('No orphaned tables found'))
+        return res
+
+    _columns = {
+        'purge_line_ids': fields.one2many(
+            'cleanup.purge.line.table',
+            'wizard_id', 'Tables to purge'),
+        }

binární
model/purge_tables.pyc


+ 87 - 0
model/purge_wizard.py

@@ -0,0 +1,87 @@
+# -*- coding: utf-8 -*-
+##############################################################################
+#
+#    OpenERP, Open Source Management Solution
+#    This module copyright (C) 2014 Therp BV (<http://therp.nl>).
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU Affero General Public License as
+#    published by the Free Software Foundation, either version 3 of the
+#    License, or (at your option) any later version.
+#
+#    This program is distributed in the hope that it will be useful,
+#    but WITHOUT ANY WARRANTY; without even the implied warranty of
+#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#    GNU Affero General Public License for more details.
+#
+#    You should have received a copy of the GNU Affero General Public License
+#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+##############################################################################
+
+import logging
+from openerp.osv import orm, fields
+
+
+class CleanupPurgeLine(orm.AbstractModel):
+    """ Abstract base class for the purge wizard lines """
+    _name = 'cleanup.purge.line'
+    _order = 'name'
+    _columns = {
+        'name': fields.char('Name', size=256, readonly=True),
+        'purged': fields.boolean('Purged', readonly=True),
+        }
+
+    logger = logging.getLogger('openerp.addons.database_cleanup')
+
+    def purge(self, cr, uid, ids, context=None):
+        raise NotImplementedError
+
+
+class PurgeWizard(orm.AbstractModel):
+    """ Abstract base class for the purge wizards """
+    _name = 'cleanup.purge.wizard'
+
+    def default_get(self, cr, uid, fields, context=None):
+        res = super(PurgeWizard, self).default_get(
+            cr, uid, fields, context=context)
+        if 'purge_line_ids' in fields:
+            res['purge_line_ids'] = self.find(cr, uid, context=None)
+        return res
+
+    def find(self, cr, uid, ids, context=None):
+        raise NotImplementedError
+
+    def purge_all(self, cr, uid, ids, context=None):
+        line_pool = self.pool[self._columns['purge_line_ids']._obj]
+        for wizard in self.browse(cr, uid, ids, context=context):
+            line_pool.purge(
+                cr, uid, [line.id for line in wizard.purge_line_ids],
+                context=context)
+        return True
+
+    def get_wizard_action(self, cr, uid, context=None):
+        wizard_id = self.create(cr, uid, {}, context=context)
+        return {
+            'type': 'ir.actions.act_window',
+            'views': [(False, 'form')],
+            'res_model': self._name,
+            'res_id': wizard_id,
+            'flags': {
+                'action_buttons': False,
+                'sidebar': False,
+            },
+        }
+
+    def select_lines(self, cr, uid, ids, context=None):
+        return {
+            'type': 'ir.actions.act_window',
+            'name': 'Select lines to purge',
+            'views': [(False, 'tree'), (False, 'form')],
+            'res_model': self._columns['purge_line_ids']._obj,
+            'domain': [('wizard_id', 'in', ids)],
+        }
+
+    _columns = {
+        'name': fields.char('Name', size=64, readonly=True),
+        }

binární
model/purge_wizard.pyc


binární
static/description/icon.png


+ 55 - 0
view/menu.xml

@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="utf-8"?>
+<openerp>
+    <data>
+
+        <record model="ir.ui.menu" id="menu_database_cleanup">
+            <field name="name">Database cleanup</field>
+            <field name="sequence" eval="10" />
+            <!-- attach to Settings -> Technical -->
+            <field name="parent_id" ref="base.menu_custom"/>
+        </record>
+
+        <record model="ir.ui.menu" id="menu_purge_modules">
+            <field name="name">Purge obsolete modules</field>
+            <field name="sequence" eval="10" />
+            <field name="action" ref="action_purge_modules" />
+            <field name="parent_id" ref="menu_database_cleanup"/>
+        </record>
+
+        <record model="ir.ui.menu" id="menu_purge_models">
+            <field name="name">Purge obsolete models</field>
+            <field name="sequence" eval="20" />
+            <field name="action" ref="action_purge_models" />
+            <field name="parent_id" ref="menu_database_cleanup"/>
+        </record>
+
+        <record model="ir.ui.menu" id="menu_purge_columns">
+            <field name="name">Purge obsolete columns</field>
+            <field name="sequence" eval="30" />
+            <field name="action" ref="action_purge_columns" />
+            <field name="parent_id" ref="menu_database_cleanup"/>
+        </record>
+
+        <record model="ir.ui.menu" id="menu_purge_tables">
+            <field name="name">Purge obsolete tables</field>
+            <field name="sequence" eval="40" />
+            <field name="action" ref="action_purge_tables" />
+            <field name="parent_id" ref="menu_database_cleanup"/>
+        </record>
+
+        <record model="ir.ui.menu" id="menu_purge_data">
+            <field name="name">Purge obsolete data entries</field>
+            <field name="sequence" eval="50" />
+            <field name="action" ref="action_purge_data" />
+            <field name="parent_id" ref="menu_database_cleanup"/>
+        </record>
+
+        <record model="ir.ui.menu" id="menu_purge_menus">
+            <field name="name">Purge obsolete menu entries</field>
+            <field name="sequence" eval="60" />
+            <field name="action" ref="action_purge_menus" />
+            <field name="parent_id" ref="menu_database_cleanup"/>
+        </record>
+
+    </data>
+</openerp>

+ 71 - 0
view/purge_columns.xml

@@ -0,0 +1,71 @@
+<?xml version="1.0" encoding="utf-8"?>
+<openerp>
+    <data>
+
+        <record id="purge_columns_view" model="ir.ui.view">
+            <field name="name">Form view for purge columns wizard</field>
+            <field name="model">cleanup.purge.wizard.column</field>
+            <field name="arch" type="xml">
+                <form string="Purge columns" version="7.0">
+                    <h1>
+                        <field name="name"/>
+                    </h1>
+                    <button type="object" name="purge_all" string="Purge all columns" />
+                    <button type="object" name="select_lines" string="Select lines" />
+                    <field name="purge_line_ids" colspan="4" nolabel="1">
+                        <form string="Purge columns">
+                            <group>
+                                <field name="name" />
+                                <field name="model_id" />
+                                <field name="purged" invisible="0" />
+                            </group>
+                            <footer>
+                                <button type="object" name="purge"
+                                        icon="gtk-cancel" string="Purge this column"
+                                        attrs="{'invisible': [('purged', '=', True)]}"/>
+                            </footer>
+                        </form>
+                    </field>
+                </form>
+            </field>
+        </record>
+
+        <record id="action_purge_columns" model="ir.actions.server">
+            <field name="name">Purge columns</field>
+            <field name="type">ir.actions.server</field>
+            <field name="state">code</field>
+            <field name="model_id" ref="database_cleanup.model_cleanup_purge_wizard_column" />
+            <field name="code">action = self.get_wizard_action(cr, uid, context=context)</field>
+        </record>
+
+        <record id="purge_column_line_tree" model="ir.ui.view">
+            <field name="model">cleanup.purge.line.column</field>
+            <field name="arch" type="xml">
+                <tree string="Purge columns">
+                    <field name="name" />
+                    <field name="model_id" />
+                    <field name="purged" invisible="0" />
+                    <button type="object" name="purge"
+                        icon="gtk-cancel" string="Purge this column"
+                        attrs="{'invisible': [('purged', '=', True)]}"/>
+                </tree>
+            </field>
+        </record>
+
+        <record id="action_purge_column_line" model="ir.actions.server">
+            <field name="name">Purge</field>
+            <field name="type">ir.actions.server</field>
+            <field name="state">code</field>
+            <field name="model_id" ref="database_cleanup.model_cleanup_purge_line_column" />
+            <field name="code">self.purge(cr, uid, context.get('active_ids', []), context)</field>
+        </record>
+
+        <record id="action_purge_column_line_value" model="ir.values">
+            <field name="name">Purge</field>
+            <field name="key">action</field>
+            <field name="key2">client_action_multi</field>
+            <field name="model">cleanup.purge.line.column</field>
+            <field name="value" eval="'ir.actions.server,%d' % ref('database_cleanup.action_purge_column_line')" />
+        </record>
+    </data>
+</openerp>

+ 71 - 0
view/purge_data.xml

@@ -0,0 +1,71 @@
+<?xml version="1.0" encoding="utf-8"?>
+<openerp>
+    <data>
+
+        <record id="purge_data_view" model="ir.ui.view">
+            <field name="name">Form view for purge data wizard</field>
+            <field name="model">cleanup.purge.wizard.data</field>
+            <field name="arch" type="xml">
+                <form string="Purge data entries that refer to missing resources" version="7.0">
+                    <h1>
+                        <field name="name"/>
+                    </h1>
+                    <button type="object" name="purge_all" string="Purge all data" />
+                    <button type="object" name="select_lines" string="Select lines" />
+                    <field name="purge_line_ids" colspan="4" nolabel="1">
+                        <form string="Purge data">
+                            <group>
+                                <field name="name" />
+                                <field name="data_id" />
+                                <field name="purged" invisible="0" />
+                            </group>
+                            <footer>
+                                <button type="object" name="purge"
+                                        icon="gtk-cancel" string="Purge this data"
+                                        attrs="{'invisible': [('purged', '=', True)]}"/>
+                            </footer>
+                        </form>
+                    </field>
+                </form>
+            </field>
+        </record>
+
+        <record id="action_purge_data" model="ir.actions.server">
+            <field name="name">Purge data entries that refer to missing resources</field>
+            <field name="type">ir.actions.server</field>
+            <field name="state">code</field>
+            <field name="model_id" ref="database_cleanup.model_cleanup_purge_wizard_data" />
+            <field name="code">action = self.get_wizard_action(cr, uid, context=context)</field>
+        </record>
+
+        <record id="purge_data_line_tree" model="ir.ui.view">
+            <field name="model">cleanup.purge.line.data</field>
+            <field name="arch" type="xml">
+                <tree string="Purge data">
+                    <field name="name" />
+                    <field name="data_id" />
+                    <field name="purged" invisible="0" />
+                    <button type="object" name="purge"
+                        icon="gtk-cancel" string="Purge this data"
+                        attrs="{'invisible': [('purged', '=', True)]}"/>
+                </tree>
+            </field>
+        </record>
+
+        <record id="action_purge_data_line" model="ir.actions.server">
+            <field name="name">Purge</field>
+            <field name="type">ir.actions.server</field>
+            <field name="state">code</field>
+            <field name="model_id" ref="database_cleanup.model_cleanup_purge_line_data" />
+            <field name="code">self.purge(cr, uid, context.get('active_ids', []), context)</field>
+        </record>
+
+        <record id="action_purge_data_line_value" model="ir.values">
+            <field name="name">Purge</field>
+            <field name="key">action</field>
+            <field name="key2">client_action_multi</field>
+            <field name="model">cleanup.purge.line.data</field>
+            <field name="value" eval="'ir.actions.server,%d' % ref('database_cleanup.action_purge_data_line')" />
+        </record>
+    </data>
+</openerp>

+ 69 - 0
view/purge_menus.xml

@@ -0,0 +1,69 @@
+<?xml version="1.0" encoding="utf-8"?>
+<openerp>
+    <data>
+        <record id="purge_menus_view" model="ir.ui.view">
+            <field name="name">Form view for purge menus wizard</field>
+            <field name="model">cleanup.purge.wizard.menu</field>
+            <field name="arch" type="xml">
+                <form>
+                    <h1>
+                        <field name="name"/>
+                    </h1>
+                    <button type="object" name="purge_all" string="Purge all menus" />
+                    <button type="object" name="select_lines" string="Select lines" />
+                    <field name="purge_line_ids">
+                        <form>
+                            <group>
+                                <field name="name" />
+                                <field name="purged" invisible="0" />
+                            </group>
+                            <footer>
+                                <button type="object" name="purge"
+                                    icon="gtk-cancel" string="Purge this menu"
+                                    attrs="{'invisible': [('purged', '=', True)]}"/>
+                            </footer>
+                        </form>
+                    </field>
+                </form>
+            </field>
+        </record>
+
+        <record id="action_purge_menus" model="ir.actions.server">
+            <field name="name">Purge menus</field>
+            <field name="type">ir.actions.server</field>
+            <field name="state">code</field>
+            <field name="model_id" ref="database_cleanup.model_cleanup_purge_wizard_menu" />
+            <field name="code">action = self.get_wizard_action(cr, uid, context=context)</field>
+        </record>
+
+        <record id="purge_menu_line_tree" model="ir.ui.view">
+            <field name="model">cleanup.purge.line.menu</field>
+            <field name="arch" type="xml">
+                <tree>
+                    <field name="name" />
+                    <field name="purged" invisible="0" />
+                    <button type="object" name="purge"
+                        icon="gtk-cancel" string="Purge this model"
+                        attrs="{'invisible': [('purged', '=', True)]}"/>
+                </tree>
+            </field>
+        </record>
+
+        <record id="action_purge_menu_line" model="ir.actions.server">
+            <field name="name">Purge</field>
+            <field name="type">ir.actions.server</field>
+            <field name="state">code</field>
+            <field name="model_id" ref="database_cleanup.model_cleanup_purge_line_menu" />
+            <field name="code">self.purge(cr, uid, context.get('active_ids', []), context)</field>
+        </record>
+
+        <record id="action_purge_menu_line_value" model="ir.values">
+            <field name="name">Purge</field>
+            <field name="key">action</field>
+            <field name="key2">client_action_multi</field>
+            <field name="model">cleanup.purge.line.menu</field>
+            <field name="value" eval="'ir.actions.server,%d' % ref('database_cleanup.action_purge_menu_line')" />
+        </record>
+
+    </data>
+</openerp>

+ 70 - 0
view/purge_models.xml

@@ -0,0 +1,70 @@
+<?xml version="1.0" encoding="utf-8"?>
+<openerp>
+    <data>
+
+        <record id="purge_models_view" model="ir.ui.view">
+            <field name="name">Form view for purge models wizard</field>
+            <field name="model">cleanup.purge.wizard.model</field>
+            <field name="arch" type="xml">
+                <form string="Purge models" version="7.0">
+                    <h1>
+                        <field name="name"/>
+                    </h1>
+                    <button type="object" name="purge_all" string="Purge all models" />
+                    <button type="object" name="select_lines" string="Select lines" />
+                    <field name="purge_line_ids" colspan="4" nolabel="1">
+                        <form string="Purge models">
+                            <group>
+                                <field name="name" />
+                                <field name="purged" invisible="0" />
+                            </group>
+                            <footer>
+                                <button type="object" name="purge"
+                                        icon="gtk-cancel" string="Purge this model"
+                                        attrs="{'invisible': [('purged', '=', True)]}"/>
+                            </footer>
+                        </form>
+                    </field>
+                </form>
+            </field>
+        </record>
+
+        <record id="action_purge_models" model="ir.actions.server">
+            <field name="name">Purge models</field>
+            <field name="type">ir.actions.server</field>
+            <field name="state">code</field>
+            <field name="model_id" ref="database_cleanup.model_cleanup_purge_wizard_model" />
+            <field name="code">action = self.get_wizard_action(cr, uid, context=context)</field>
+        </record>
+
+        <record id="purge_model_line_tree" model="ir.ui.view">
+            <field name="model">cleanup.purge.line.model</field>
+            <field name="arch" type="xml">
+                <tree string="Purge models">
+                    <field name="name" />
+                    <field name="purged" invisible="0" />
+                    <button type="object" name="purge"
+                        icon="gtk-cancel" string="Purge this model"
+                        attrs="{'invisible': [('purged', '=', True)]}"/>
+                </tree>
+            </field>
+        </record>
+
+        <record id="action_purge_model_line" model="ir.actions.server">
+            <field name="name">Purge</field>
+            <field name="type">ir.actions.server</field>
+            <field name="state">code</field>
+            <field name="model_id" ref="database_cleanup.model_cleanup_purge_line_model" />
+            <field name="code">self.purge(cr, uid, context.get('active_ids', []), context)</field>
+        </record>
+
+        <record id="action_purge_model_line_value" model="ir.values">
+            <field name="name">Purge</field>
+            <field name="key">action</field>
+            <field name="key2">client_action_multi</field>
+            <field name="model">cleanup.purge.line.model</field>
+            <field name="value" eval="'ir.actions.server,%d' % ref('database_cleanup.action_purge_model_line')" />
+        </record>
+
+    </data>
+</openerp>

+ 70 - 0
view/purge_modules.xml

@@ -0,0 +1,70 @@
+<?xml version="1.0" encoding="utf-8"?>
+<openerp>
+    <data>
+
+        <record id="purge_modules_view" model="ir.ui.view">
+            <field name="name">Form view for purge modules wizard</field>
+            <field name="model">cleanup.purge.wizard.module</field>
+            <field name="arch" type="xml">
+                <form string="Purge modules" version="7.0">
+                    <h1>
+                        <field name="name"/>
+                    </h1>
+                    <button type="object" name="purge_all" string="Purge all modules" />
+                    <button type="object" name="select_lines" string="Select lines" />
+                    <field name="purge_line_ids" colspan="4" nolabel="1">
+                        <form string="Purge modules">
+                            <group>
+                                <field name="name" />
+                                <field name="purged" invisible="0" />
+                            </group>
+                            <footer>
+                                <button type="object" name="purge"
+                                        icon="gtk-cancel" string="Purge this module"
+                                        attrs="{'invisible': [('purged', '=', True)]}"/>
+                            </footer>
+                        </form>
+                    </field>
+                </form>
+            </field>
+        </record>
+
+        <record id="action_purge_modules" model="ir.actions.server">
+            <field name="name">Purge modules</field>
+            <field name="type">ir.actions.server</field>
+            <field name="state">code</field>
+            <field name="model_id" ref="database_cleanup.model_cleanup_purge_wizard_module" />
+            <field name="code">action = self.get_wizard_action(cr, uid, context=context)</field>
+        </record>
+
+        <record id="purge_module_line_tree" model="ir.ui.view">
+            <field name="model">cleanup.purge.line.module</field>
+            <field name="arch" type="xml">
+                <tree string="Purge modules">
+                    <field name="name" />
+                    <field name="purged" invisible="0" />
+                    <button type="object" name="purge"
+                        icon="gtk-cancel" string="Purge this module"
+                        attrs="{'invisible': [('purged', '=', True)]}"/>
+                </tree>
+            </field>
+        </record>
+
+        <record id="action_purge_module_line" model="ir.actions.server">
+            <field name="name">Purge</field>
+            <field name="type">ir.actions.server</field>
+            <field name="state">code</field>
+            <field name="model_id" ref="database_cleanup.model_cleanup_purge_line_module" />
+            <field name="code">self.purge(cr, uid, context.get('active_ids', []), context)</field>
+        </record>
+
+        <record id="action_purge_module_line_value" model="ir.values">
+            <field name="name">Purge</field>
+            <field name="key">action</field>
+            <field name="key2">client_action_multi</field>
+            <field name="model">cleanup.purge.line.module</field>
+            <field name="value" eval="'ir.actions.server,%d' % ref('database_cleanup.action_purge_module_line')" />
+        </record>
+
+    </data>
+</openerp>

+ 65 - 0
view/purge_tables.xml

@@ -0,0 +1,65 @@
+<?xml version="1.0" encoding="utf-8"?>
+<openerp>
+    <data>
+
+        <record id="purge_tables_view" model="ir.ui.view">
+            <field name="name">Form view for purge tables wizard</field>
+            <field name="model">cleanup.purge.wizard.table</field>
+            <field name="arch" type="xml">
+                <form string="Purge tables" version="7.0">
+                    <h1>
+                        <field name="name"/>
+                    </h1>
+                    <button type="object" name="purge_all" string="Purge all tables" />
+                    <button type="object" name="select_lines" string="Select lines" />
+                    <field name="purge_line_ids" colspan="4" nolabel="1">
+                        <tree string="Purge tables">
+                            <field name="name" />
+                            <field name="purged" invisible="0" />
+                            <button type="object" name="purge"
+                                    icon="gtk-cancel" string="Purge this table"
+                                    attrs="{'invisible': [('purged', '=', True)]}"/>
+                        </tree>
+                    </field>
+                </form>
+            </field>
+        </record>
+
+        <record id="action_purge_tables" model="ir.actions.server">
+            <field name="name">Purge tables</field>
+            <field name="type">ir.actions.server</field>
+            <field name="state">code</field>
+            <field name="model_id" ref="database_cleanup.model_cleanup_purge_wizard_table" />
+            <field name="code">action = self.get_wizard_action(cr, uid, context=context)</field>
+        </record>
+
+        <record id="purge_table_line_tree" model="ir.ui.view">
+            <field name="model">cleanup.purge.line.table</field>
+            <field name="arch" type="xml">
+                <tree string="Purge tables">
+                    <field name="name" />
+                    <field name="purged" invisible="0" />
+                    <button type="object" name="purge"
+                        icon="gtk-cancel" string="Purge this table"
+                        attrs="{'invisible': [('purged', '=', True)]}"/>
+                </tree>
+            </field>
+        </record>
+
+        <record id="action_purge_table_line" model="ir.actions.server">
+            <field name="name">Purge</field>
+            <field name="type">ir.actions.server</field>
+            <field name="state">code</field>
+            <field name="model_id" ref="database_cleanup.model_cleanup_purge_line_table" />
+            <field name="code">self.purge(cr, uid, context.get('active_ids', []), context)</field>
+        </record>
+
+        <record id="action_purge_table_line_value" model="ir.values">
+            <field name="name">Purge</field>
+            <field name="key">action</field>
+            <field name="key2">client_action_multi</field>
+            <field name="model">cleanup.purge.line.table</field>
+            <field name="value" eval="'ir.actions.server,%d' % ref('database_cleanup.action_purge_table_line')" />
+        </record>
+    </data>
+</openerp>