Invoice Line company rule
diff --git a/addons/account/static/src/js/account_widgets.js b/addons/account/static/src/js/account_widgets.js
index 8f5786e978f..c60bf4122d6 100644
--- a/addons/account/static/src/js/account_widgets.js
+++ b/addons/account/static/src/js/account_widgets.js
@@ -37,7 +37,7 @@ openerp.account = function (instance) {
// We'll need to get the code of an account selected in a many2one (whose value is the id)
this.map_account_id_code = {};
// The same move line cannot be selected for multiple resolutions
- this.excluded_move_lines_ids = {};
+ this.excluded_move_lines_ids = [];
// Description of the fields to initialize in the "create new line" form
// NB : for presets to work correctly, a field id must be the same string as a preset field
this.create_form_fields = {
@@ -253,59 +253,34 @@ openerp.account = function (instance) {
});
}
},
-
- // Adds move line ids to the list of move lines not to fetch for a given partner
- // This is required because the same move line cannot be selected for multiple reconciliation
- excludeMoveLines: function(source_child, partner_id, line_ids) {
+
+ excludeMoveLines: function(line_ids) {
var self = this;
-
- var excluded_ids = this.excluded_move_lines_ids[partner_id];
- var excluded_move_lines_changed = false;
_.each(line_ids, function(line_id){
- if (excluded_ids.indexOf(line_id) === -1) {
- excluded_ids.push(line_id);
- excluded_move_lines_changed = true;
+ line_id = parseInt(line_id);
+ if (self.excluded_move_lines_ids.indexOf(line_id) === -1) {
+ self.excluded_move_lines_ids.push(line_id);
}
});
- if (! excluded_move_lines_changed)
- return;
-
- // Function that finds if an array of line objects contains at least a line identified by its id
- var contains_lines = function(lines_array, line_ids) {
- for (var i = 0; i < lines_array.length; i++)
- for (var j = 0; j < line_ids.length; j++)
- if (lines_array[i].id === line_ids[j])
- return true;
- return false;
- };
-
- // Update children if needed
+ //update all children view
_.each(self.getChildren(), function(child){
- if (child.partner_id === partner_id && child !== source_child) {
- if (contains_lines(child.get("mv_lines_selected"), line_ids)) {
- child.set("mv_lines_selected", _.filter(child.get("mv_lines_selected"), function(o){ return line_ids.indexOf(o.id) === -1 }));
- } else if (contains_lines(child.mv_lines_deselected, line_ids)) {
- child.mv_lines_deselected = _.filter(child.mv_lines_deselected, function(o){ return line_ids.indexOf(o.id) === -1 });
- child.updateMatches();
- } else if (contains_lines(child.get("mv_lines"), line_ids)) {
- child.updateMatches();
- }
- }
+ child.render();
});
},
-
- unexcludeMoveLines: function(source_child, partner_id, line_ids) {
+
+ unexcludeMoveLines: function(line_ids) {
var self = this;
-
- var initial_excluded_lines_num = this.excluded_move_lines_ids[partner_id].length;
- this.excluded_move_lines_ids[partner_id] = _.difference(this.excluded_move_lines_ids[partner_id], line_ids);
- if (this.excluded_move_lines_ids[partner_id].length === initial_excluded_lines_num)
- return;
-
- // Update children if needed
+ var index = -1;
+ _.each(line_ids, function(line_id){
+ line_id = parseInt(line_id);
+ index = self.excluded_move_lines_ids.indexOf(line_id);
+ if (index > -1) {
+ self.excluded_move_lines_ids.splice(index,1);
+ }
+ });
+ //update all children view
_.each(self.getChildren(), function(child){
- if (child.partner_id === partner_id && child !== source_child && (child.get("mode") === "match" || child.$el.hasClass("no_match")))
- child.updateMatches();
+ child.render();
});
},
@@ -490,9 +465,7 @@ openerp.account = function (instance) {
// Exclude selected move lines
var selected_line_ids = _(context.reconciliation_proposition).map(function(o){ return o.id });
- if (this.getParent().excluded_move_lines_ids[this.partner_id] === undefined)
- this.getParent().excluded_move_lines_ids[this.partner_id] = [];
- this.getParent().excludeMoveLines(this, this.partner_id, selected_line_ids);
+ this.getParent().excludeMoveLines(selected_line_ids);
} else {
this.set("mv_lines_selected", []);
this.st_line = undefined;
@@ -513,7 +486,6 @@ openerp.account = function (instance) {
this.presets = this.getParent().presets;
this.is_valid = true;
this.is_consistent = true; // Used to prevent bad server requests
- this.total_move_lines_num = undefined; // Used for pagers
this.filter = "";
this.set("balance", undefined); // Debit is +, credit is -
@@ -525,12 +497,14 @@ openerp.account = function (instance) {
// NB : mv_lines represent the counterpart that will be created to reconcile existing move lines, so debit and credit are inverted
this.set("mv_lines", []);
this.on("change:mv_lines", this, this.mvLinesChanged);
- this.mv_lines_deselected = []; // deselected lines are displayed on top of the match table
this.on("change:mv_lines_selected", this, this.mvLinesSelectedChanged);
this.set("lines_created", []);
this.set("line_created_being_edited", [{'id': 0}]);
this.on("change:lines_created", this, this.createdLinesChanged);
this.on("change:line_created_being_edited", this, this.createdLinesChanged);
+
+ //all lines associated to current reconciliation
+ this.propositions_lines = undefined;
},
start: function() {
@@ -553,9 +527,6 @@ openerp.account = function (instance) {
self.st_line = data;
self.decorateStatementLine(self.st_line);
self.partner_id = data.partner_id;
- if (self.getParent().excluded_move_lines_ids[self.partner_id] === undefined)
- self.getParent().excluded_move_lines_ids[self.partner_id] = [];
- // load and display move lines
$.when(self.loadReconciliationProposition()).then(function(){
deferred_fetch_data.resolve();
});
@@ -566,6 +537,15 @@ openerp.account = function (instance) {
// Display the widget
return $.when(deferred_fetch_data).then(function(){
+ //load all lines that can be usefull for counterparts
+ var deferred_total_move_lines_num = self.model_bank_statement_line
+ .call("get_move_lines_counterparts_id", [self.st_line.id, []])
+ .then(function(lines){
+ _(lines).each(self.decorateMoveLine.bind(self));
+ self.propositions_lines = lines;
+ });
+ return deferred_total_move_lines_num;
+ }).then(function(){
// Render template
var presets_array = [];
for (var id in self.presets)
@@ -577,10 +557,9 @@ openerp.account = function (instance) {
self.$(".match").slideUp(0);
self.$(".create").slideUp(0);
if (self.st_line.no_match) self.$el.addClass("no_match");
- if (self.context.mode !== "match") self.updateMatches();
+ if (self.context.mode !== "match") self.render();
self.bindPopoverTo(self.$(".line_info_button"));
self.createFormWidgets();
-
// Special case hack : no identified partner
if (self.st_line.has_no_partner) {
self.$el.css("opacity", "0");
@@ -623,7 +602,7 @@ openerp.account = function (instance) {
_.each(self.getChildren(), function(o){ o.destroy() });
self.is_consistent = false;
return $.when(self.$el.animate({opacity: 0}, self.animation_speed)).then(function() {
- self.getParent().unexcludeMoveLines(self, self.partner_id, _.map(self.get("mv_lines_selected"), function(o){ return o.id }));
+ self.getParent().unexcludeMoveLines(_.map(self.get("mv_lines_selected"), function(o){ return o.id }));
$.each(self.$(".bootstrap_popover"), function(){ $(this).popover('destroy') });
self.$el.empty();
self.$el.removeClass("no_partner");
@@ -637,7 +616,6 @@ openerp.account = function (instance) {
self.set("pager_index", 0, {silent: true});
self.set("mv_lines", [], {silent: true});
self.set("mv_lines_selected", [], {silent: true});
- self.mv_lines_deselected = [];
self.set("lines_created", [], {silent: true});
self.set("line_created_being_edited", [{'id': 0}], {silent: true});
// Rebirth
@@ -836,68 +814,35 @@ openerp.account = function (instance) {
if (e.currentTarget.dataset.selected === "true") self.deselectMoveLine(e.currentTarget);
else self.selectMoveLine(e.currentTarget);
},
-
- // Takes a move line from the match view and adds it to the mv_lines_selected array
+
selectMoveLine: function(mv_line) {
var self = this;
var line_id = mv_line.dataset.lineid;
-
- // find the line in mv_lines or mv_lines_deselected
- var line = _.find(self.get("mv_lines"), function(o){ return o.id == line_id });
- if (! line) {
- line = _.find(self.mv_lines_deselected, function(o){ return o.id == line_id });
- self.mv_lines_deselected = _.filter(self.mv_lines_deselected, function(o) { return o.id != line_id });
- }
- // If no line found, the view is probably not up to date to the model (asynchronous fun)
- if (! line) return;
-
- // Warn the user if he's selecting lines from both a payable and a receivable account
- var last_selected_line = _.last(self.get("mv_lines_selected"));
- if (last_selected_line && last_selected_line.account_type != line.account_type) {
- // TODO : web client API
- alert(_.str.sprintf(_t("You are selecting transactions from both a payable and a receivable account.\n\nIn order to proceed, you first need to deselect the %s transactions."), last_selected_line.account_type));
- return;
- }
-
+ var line = _.find(self.propositions_lines, function(o){ return o.id == line_id});
+ $(mv_line).attr('data-selected','true');
+ self.getParent().excludeMoveLines([line_id]);
self.set("mv_lines_selected", self.get("mv_lines_selected").concat(line));
},
-
- // Removes a move line from the mv_lines_selected array
+
deselectMoveLine: function(mv_line) {
var self = this;
var line_id = mv_line.dataset.lineid;
- var line = _.find(self.get("mv_lines_selected"), function(o) { return o.id == line_id });
- // If no line found, the view is probably not up to date to the model (asynchronous fun)
- if (! line) return;
-
- // add the line to mv_lines_deselected and remove it from mv_lines_selected
- self.mv_lines_deselected.unshift(line);
- var mv_lines_selected = _.filter(self.get("mv_lines_selected"), function(o) { return o.id != line_id });
-
- // remove partial reconciliation stuff if necessary
- if (line.partial_reconcile === true) self.unpartialReconcileLine(line);
- if (line.propose_partial_reconcile === true) line.propose_partial_reconcile = false;
-
- self.$el.removeClass("no_match");
- self.set("mode", "match");
- self.set("mv_lines_selected", mv_lines_selected);
+ var line = _.find(self.propositions_lines, function(o){ return o.id == line_id});
+ $(mv_line).attr('data-selected','false');
+ self.getParent().unexcludeMoveLines([line_id]);
+ self.set("mv_lines_selected",_.filter(self.get("mv_lines_selected"), function(o) { return o.id != line_id }));
},
-
/** Matches pagination */
pagerControlLeftHandler: function() {
var self = this;
- if (self.$(".pager_control_left").hasClass("disabled")) { return; /* shouldn't happen, anyway*/ }
- if (self.total_move_lines_num < 0) { return; }
self.set("pager_index", self.get("pager_index")-1 );
},
pagerControlRightHandler: function() {
var self = this;
var new_index = self.get("pager_index")+1;
- if (self.$(".pager_control_right").hasClass("disabled")) { return; /* shouldn't happen, anyway*/ }
- if ((new_index * self.max_move_lines_displayed) >= self.total_move_lines_num) { return; }
self.set("pager_index", new_index );
},
@@ -905,11 +850,9 @@ openerp.account = function (instance) {
var self = this;
self.set("pager_index", 0);
self.filter = self.$(".filter").val();
- window.clearTimeout(self.apply_filter_timeout);
- self.apply_filter_timeout = window.setTimeout(self.proxy('updateMatches'), 200);
+ self.render();
},
-
/** Creating */
initializeCreateForm: function() {
@@ -1041,20 +984,16 @@ openerp.account = function (instance) {
table.empty();
var slice_start = self.get("pager_index") * self.max_move_lines_displayed;
var slice_end = (self.get("pager_index")+1) * self.max_move_lines_displayed;
- _( _.filter(self.mv_lines_deselected, function(o){
- return o.q_label.indexOf(self.filter) !== -1 || (o.ref && o.ref.indexOf(self.filter) !== -1)
- })
- .slice(slice_start, slice_end)).each(function(line){
- var $line = $(QWeb.render("bank_statement_reconciliation_move_line", {line: line, selected: false}));
- self.bindPopoverTo($line.find(".line_info_button"));
- table.append($line);
- nothing_displayed = false;
- });
+
+ var visible = 0
_(self.get("mv_lines")).each(function(line){
- var $line = $(QWeb.render("bank_statement_reconciliation_move_line", {line: line, selected: false}));
- self.bindPopoverTo($line.find(".line_info_button"));
- table.append($line);
- nothing_displayed = false;
+ if (visible >= slice_start && visible < slice_end) {
+ var $line = $(QWeb.render("bank_statement_reconciliation_move_line", {line: line, selected: false}));
+ self.bindPopoverTo($line.find(".line_info_button"));
+ table.append($line);
+ nothing_displayed = false;
+ }
+ visible = visible + 1;
});
if (nothing_displayed)
table.append(QWeb.render("filter_no_match", {filter_str: self.filter}));
@@ -1066,7 +1005,7 @@ openerp.account = function (instance) {
self.$(".pager_control_left").addClass("disabled");
else
self.$(".pager_control_left").removeClass("disabled");
- if (self.total_move_lines_num <= ((self.get("pager_index")+1) * self.max_move_lines_displayed))
+ if (self.get('mv_lines').length <= ((self.get("pager_index")+1) * self.max_move_lines_displayed))
self.$(".pager_control_right").addClass("disabled");
else
self.$(".pager_control_right").removeClass("disabled");
@@ -1136,7 +1075,7 @@ openerp.account = function (instance) {
self.el.dataset.mode = "inactive";
} else if (self.get("mode") === "match") {
- return $.when(self.updateMatches()).then(function() {
+ return $.when(self.render()).then(function() {
if (self.$el.hasClass("no_match")) {
self.set("mode", "inactive");
return;
@@ -1156,18 +1095,14 @@ openerp.account = function (instance) {
pagerChanged: function() {
var self = this;
- self.updateMatches();
+ self.render();
},
mvLinesChanged: function() {
var self = this;
- // If pager_index is out of range, set it to display the last page
- if (self.get("pager_index") !== 0 && self.total_move_lines_num <= (self.get("pager_index") * self.max_move_lines_displayed)) {
- self.set("pager_index", Math.ceil(self.total_move_lines_num/self.max_move_lines_displayed)-1);
- }
// If there is no match to display, disable match view and pass in mode inactive
- if (self.total_move_lines_num + self.mv_lines_deselected.length === 0 && self.filter === "") {
+ if (self.get("mv_lines").length === 0 && self.filter === "") {
self.$el.addClass("no_match");
if (self.get("mode") === "match") {
self.set("mode", "inactive");
@@ -1186,13 +1121,11 @@ openerp.account = function (instance) {
var added_lines_ids = _.map(_.difference(val.newValue, val.oldValue), function(o){ return o.id });
var removed_lines_ids = _.map(_.difference(val.oldValue, val.newValue), function(o){ return o.id });
- self.getParent().excludeMoveLines(self, self.partner_id, added_lines_ids);
- self.getParent().unexcludeMoveLines(self, self.partner_id, removed_lines_ids);
+ self.getParent().excludeMoveLines(added_lines_ids);
+ self.getParent().unexcludeMoveLines(removed_lines_ids);
- $.when(self.updateMatches()).then(function(){
- self.updateAccountingViewMatchedLines();
- self.updateBalance();
- });
+ self.updateAccountingViewMatchedLines();
+ self.updateBalance();
},
// Generic function for updating the line_created_being_edited
@@ -1339,47 +1272,23 @@ openerp.account = function (instance) {
loadReconciliationProposition: function() {
var self = this;
return self.model_bank_statement_line
- .call("get_reconciliation_proposition", [self.st_line.id, self.getParent().excluded_move_lines_ids[self.partner_id]])
+ .call("get_reconciliation_proposition", [self.st_line.id, self.getParent().excluded_move_lines_ids])
.then(function (lines) {
_(lines).each(self.decorateMoveLine.bind(self));
self.set("mv_lines_selected", self.get("mv_lines_selected").concat(lines));
});
},
-
- // Loads move lines according to the widget's state
- updateMatches: function() {
+
+ render: function() {
var self = this;
- var deselected_lines_num = self.mv_lines_deselected.length;
- var move_lines = {};
- var move_lines_num = 0;
- var offset = self.get("pager_index") * self.max_move_lines_displayed - deselected_lines_num;
- if (offset < 0) offset = 0;
- var limit = (self.get("pager_index")+1) * self.max_move_lines_displayed - deselected_lines_num;
- if (limit > self.max_move_lines_displayed) limit = self.max_move_lines_displayed;
- var excluded_ids = _.collect(self.get("mv_lines_selected").concat(self.mv_lines_deselected), function(o){ return o.id });
- excluded_ids = excluded_ids.concat(self.getParent().excluded_move_lines_ids[self.partner_id]);
-
- var deferred_move_lines;
- if (limit > 0) {
- // Load move lines
- deferred_move_lines = self.model_bank_statement_line
- .call("get_move_lines_counterparts_id", [self.st_line.id, excluded_ids, self.filter, offset, limit])
- .then(function (lines) {
- _(lines).each(self.decorateMoveLine.bind(self));
- move_lines = lines;
- });
- }
- // Fetch the number of move lines corresponding to this statement line and this filter
- var deferred_total_move_lines_num = self.model_bank_statement_line
- .call("get_move_lines_counterparts_id", [self.st_line.id, excluded_ids, self.filter, 0, undefined, true])
- .then(function(num){
- move_lines_num = num;
- });
-
- return $.when(deferred_move_lines, deferred_total_move_lines_num).then(function(){
- self.total_move_lines_num = move_lines_num + deselected_lines_num;
- self.set("mv_lines", move_lines);
+ var lines_to_show = [];
+ _.each(self.propositions_lines, function(line){
+ var filter = (line.q_label.toLowerCase().indexOf(self.filter.toLowerCase()) > -1 || line.account_code.toLowerCase().indexOf(self.filter.toLowerCase()) > -1);
+ if (self.getParent().excluded_move_lines_ids.indexOf(line.id) === -1 && filter) {
+ lines_to_show.push(line);
+ }
});
+ self.set("mv_lines", lines_to_show);
},
// Changes the partner_id of the statement_line in the DB and reloads the widget
@@ -1439,8 +1348,6 @@ openerp.account = function (instance) {
var self = this;
if (! self.is_consistent) return;
- self.getParent().unexcludeMoveLines(self, self.partner_id, _.map(self.get("mv_lines_selected"), function(o){ return o.id }));
-
// Prepare data
var mv_line_dicts = [];
_.each(self.get("mv_lines_selected"), function(o) { mv_line_dicts.push(self.prepareSelectedMoveLineForPersisting(o)) });
diff --git a/addons/account/static/src/xml/account_bank_statement_reconciliation.xml b/addons/account/static/src/xml/account_bank_statement_reconciliation.xml
index b5a8492545d..2c410404a4d 100644
--- a/addons/account/static/src/xml/account_bank_statement_reconciliation.xml
+++ b/addons/account/static/src/xml/account_bank_statement_reconciliation.xml
@@ -128,7 +128,7 @@
-
+
diff --git a/addons/account/wizard/account_financial_report.py b/addons/account/wizard/account_financial_report.py
index 721e47193a2..af1c13f5a2c 100644
--- a/addons/account/wizard/account_financial_report.py
+++ b/addons/account/wizard/account_financial_report.py
@@ -30,7 +30,7 @@ class accounting_report(osv.osv_memory):
_columns = {
'enable_filter': fields.boolean('Enable Comparison'),
'account_report_id': fields.many2one('account.financial.report', 'Account Reports', required=True),
- 'label_filter': fields.char('Column Label', size=32, help="This label will be displayed on report to show the balance computed for the given comparison filter."),
+ 'label_filter': fields.char('Column Label', help="This label will be displayed on report to show the balance computed for the given comparison filter."),
'fiscalyear_id_cmp': fields.many2one('account.fiscalyear', 'Fiscal Year', help='Keep empty for all open fiscal year'),
'filter_cmp': fields.selection([('filter_no', 'No Filters'), ('filter_date', 'Date'), ('filter_period', 'Periods')], "Filter by", required=True),
'period_from_cmp': fields.many2one('account.period', 'Start Period'),
diff --git a/addons/account/wizard/account_fiscalyear_close.py b/addons/account/wizard/account_fiscalyear_close.py
index 266b8ccbc50..3e3bbb5fd93 100644
--- a/addons/account/wizard/account_fiscalyear_close.py
+++ b/addons/account/wizard/account_fiscalyear_close.py
@@ -35,7 +35,7 @@ class account_fiscalyear_close(osv.osv_memory):
'New Fiscal Year', required=True),
'journal_id': fields.many2one('account.journal', 'Opening Entries Journal', domain="[('type','=','situation')]", required=True, help='The best practice here is to use a journal dedicated to contain the opening entries of all fiscal years. Note that you should define it with default debit/credit accounts, of type \'situation\' and with a centralized counterpart.'),
'period_id': fields.many2one('account.period', 'Opening Entries Period', required=True),
- 'report_name': fields.char('Name of new entries',size=64, required=True, help="Give name of the new entries"),
+ 'report_name': fields.char('Name of new entries', required=True, help="Give name of the new entries"),
}
_defaults = {
'report_name': lambda self, cr, uid, context: _('End of Fiscal Year Entry'),
diff --git a/addons/account/wizard/account_invoice_refund.py b/addons/account/wizard/account_invoice_refund.py
index 02b046edfcf..d2d408dce68 100644
--- a/addons/account/wizard/account_invoice_refund.py
+++ b/addons/account/wizard/account_invoice_refund.py
@@ -34,7 +34,7 @@ class account_invoice_refund(osv.osv_memory):
'date': fields.date('Date', help='This date will be used as the invoice date for credit note and period will be chosen accordingly!'),
'period': fields.many2one('account.period', 'Force period'),
'journal_id': fields.many2one('account.journal', 'Refund Journal', help='You can select here the journal to use for the credit note that will be created. If you leave that field empty, it will use the same journal as the current invoice.'),
- 'description': fields.char('Reason', size=128, required=True),
+ 'description': fields.char('Reason', required=True),
'filter_refund': fields.selection([('refund', 'Create a draft refund'), ('cancel', 'Cancel: create refund and reconcile'),('modify', 'Modify: create refund, reconcile and create a new draft invoice')], "Refund Method", required=True, help='Refund base on this type. You can not Modify and Cancel if the invoice is already reconciled'),
}
diff --git a/addons/account/wizard/account_reconcile.py b/addons/account/wizard/account_reconcile.py
index fb3b6f18251..804003c975a 100644
--- a/addons/account/wizard/account_reconcile.py
+++ b/addons/account/wizard/account_reconcile.py
@@ -107,7 +107,7 @@ class account_move_line_reconcile_writeoff(osv.osv_memory):
'journal_id': fields.many2one('account.journal','Write-Off Journal', required=True),
'writeoff_acc_id': fields.many2one('account.account','Write-Off account', required=True),
'date_p': fields.date('Date'),
- 'comment': fields.char('Comment', size= 64, required=True),
+ 'comment': fields.char('Comment', required=True),
'analytic_id': fields.many2one('account.analytic.account', 'Analytic Account', domain=[('parent_id', '!=', False)]),
}
_defaults = {
diff --git a/addons/account/wizard/account_subscription_generate.py b/addons/account/wizard/account_subscription_generate.py
index a61f3eee252..e284f1d12b1 100644
--- a/addons/account/wizard/account_subscription_generate.py
+++ b/addons/account/wizard/account_subscription_generate.py
@@ -36,11 +36,11 @@ class account_subscription_generate(osv.osv_memory):
def action_generate(self, cr, uid, ids, context=None):
mod_obj = self.pool.get('ir.model.data')
act_obj = self.pool.get('ir.actions.act_window')
+ sub_line_obj = self.pool.get('account.subscription.line')
moves_created=[]
for data in self.read(cr, uid, ids, context=context):
- cr.execute('select id from account_subscription_line where date<%s and move_id is null', (data['date'],))
- line_ids = map(lambda x: x[0], cr.fetchall())
- moves = self.pool.get('account.subscription.line').move_create(cr, uid, line_ids, context=context)
+ line_ids = sub_line_obj.search(cr, uid, [('date', '<', data['date']), ('move_id', '=', False)], context=context)
+ moves = sub_line_obj.move_create(cr, uid, line_ids, context=context)
moves_created.extend(moves)
result = mod_obj.get_object_reference(cr, uid, 'account', 'action_move_line_form')
id = result and result[1] or False
diff --git a/addons/account/wizard/pos_box.py b/addons/account/wizard/pos_box.py
index ba9b3bd2980..5374fc47d6b 100644
--- a/addons/account/wizard/pos_box.py
+++ b/addons/account/wizard/pos_box.py
@@ -5,7 +5,7 @@ from openerp.tools.translate import _
class CashBox(osv.osv_memory):
_register = False
_columns = {
- 'name' : fields.char('Reason', size=64, required=True),
+ 'name' : fields.char('Reason', required=True),
# Attention, we don't set a domain, because there is a journal_type key
# in the context of the action
'amount' : fields.float('Amount',
@@ -49,7 +49,7 @@ class CashBoxIn(CashBox):
_columns = CashBox._columns.copy()
_columns.update({
- 'ref' : fields.char('Reference', size=32),
+ 'ref' : fields.char('Reference'),
})
def _compute_values_for_statement_line(self, cr, uid, box, record, context=None):
diff --git a/addons/account_analytic_plans/account_analytic_plans.py b/addons/account_analytic_plans/account_analytic_plans.py
index aa9844105e6..a8cb69b0de0 100644
--- a/addons/account_analytic_plans/account_analytic_plans.py
+++ b/addons/account_analytic_plans/account_analytic_plans.py
@@ -70,7 +70,7 @@ class account_analytic_plan(osv.osv):
_name = "account.analytic.plan"
_description = "Analytic Plan"
_columns = {
- 'name': fields.char('Analytic Plan', size=64, required=True, select=True),
+ 'name': fields.char('Analytic Plan', required=True, select=True),
'plan_ids': fields.one2many('account.analytic.plan.line', 'plan_id', 'Analytic Plans'),
}
@@ -81,7 +81,7 @@ class account_analytic_plan_line(osv.osv):
_order = "sequence, id"
_columns = {
'plan_id': fields.many2one('account.analytic.plan','Analytic Plan',required=True),
- 'name': fields.char('Axis Name', size=64, required=True, select=True),
+ 'name': fields.char('Axis Name', required=True, select=True),
'sequence': fields.integer('Sequence'),
'root_analytic_id': fields.many2one('account.analytic.account', 'Root Account', help="Root account of this plan.", required=False),
'min_required': fields.float('Minimum Allowed (%)'),
@@ -97,7 +97,7 @@ class account_analytic_plan_instance(osv.osv):
_name = "account.analytic.plan.instance"
_description = "Analytic Plan Instance"
_columns = {
- 'name': fields.char('Analytic Distribution', size=64),
+ 'name': fields.char('Analytic Distribution'),
'code': fields.char('Distribution Code', size=16),
'journal_id': fields.many2one('account.analytic.journal', 'Analytic Journal' ),
'account_ids': fields.one2many('account.analytic.plan.instance.line', 'plan_id', 'Account Id'),
diff --git a/addons/account_asset/account_asset.py b/addons/account_asset/account_asset.py
index 0ba7182d0d4..36ed9424d5a 100644
--- a/addons/account_asset/account_asset.py
+++ b/addons/account_asset/account_asset.py
@@ -32,7 +32,7 @@ class account_asset_category(osv.osv):
_description = 'Asset category'
_columns = {
- 'name': fields.char('Name', size=64, required=True, select=1),
+ 'name': fields.char('Name', required=True, select=1),
'note': fields.text('Note'),
'account_analytic_id': fields.many2one('account.analytic.account', 'Analytic account'),
'account_asset_id': fields.many2one('account.account', 'Asset Account', required=True, domain=[('type','=','other')]),
@@ -246,7 +246,7 @@ class account_asset_asset(osv.osv):
_columns = {
'account_move_line_ids': fields.one2many('account.move.line', 'asset_id', 'Entries', readonly=True, states={'draft':[('readonly',False)]}),
'entry_count': fields.function(_entry_count, string='# Asset Entries', type='integer'),
- 'name': fields.char('Asset Name', size=64, required=True, readonly=True, states={'draft':[('readonly',False)]}),
+ 'name': fields.char('Asset Name', required=True, readonly=True, states={'draft':[('readonly',False)]}),
'code': fields.char('Reference', size=32, readonly=True, states={'draft':[('readonly',False)]}),
'purchase_value': fields.float('Gross Value', required=True, readonly=True, states={'draft':[('readonly',False)]}),
'currency_id': fields.many2one('res.currency','Currency',required=True, readonly=True, states={'draft':[('readonly',False)]}),
@@ -379,7 +379,7 @@ class account_asset_depreciation_line(osv.osv):
return res
_columns = {
- 'name': fields.char('Depreciation Name', size=64, required=True, select=1),
+ 'name': fields.char('Depreciation Name', required=True, select=1),
'sequence': fields.integer('Sequence', required=True),
'asset_id': fields.many2one('account.asset.asset', 'Asset', required=True, ondelete='cascade'),
'parent_state': fields.related('asset_id', 'state', type='char', string='State of Asset'),
@@ -474,7 +474,7 @@ class account_asset_history(osv.osv):
_name = 'account.asset.history'
_description = 'Asset history'
_columns = {
- 'name': fields.char('History name', size=64, select=1),
+ 'name': fields.char('History name', select=1),
'user_id': fields.many2one('res.users', 'User', required=True),
'date': fields.date('Date', required=True),
'asset_id': fields.many2one('account.asset.asset', 'Asset', required=True),
diff --git a/addons/account_asset/report/account_asset_report.py b/addons/account_asset/report/account_asset_report.py
index 40ab1c778f0..254eef720a3 100644
--- a/addons/account_asset/report/account_asset_report.py
+++ b/addons/account_asset/report/account_asset_report.py
@@ -27,7 +27,7 @@ class asset_asset_report(osv.osv):
_description = "Assets Analysis"
_auto = False
_columns = {
- 'name': fields.char('Year', size=16, required=False, readonly=True),
+ 'name': fields.char('Year', required=False, readonly=True),
'purchase_date': fields.date('Purchase Date', readonly=True),
'depreciation_date': fields.date('Depreciation Date', readonly=True),
'asset_id': fields.many2one('account.asset.asset', string='Asset', readonly=True),
diff --git a/addons/account_asset/wizard/account_asset_change_duration.py b/addons/account_asset/wizard/account_asset_change_duration.py
index f27507ac2b3..35c73473feb 100644
--- a/addons/account_asset/wizard/account_asset_change_duration.py
+++ b/addons/account_asset/wizard/account_asset_change_duration.py
@@ -28,7 +28,7 @@ class asset_modify(osv.osv_memory):
_description = 'Modify Asset'
_columns = {
- 'name': fields.char('Reason', size=64, required=True),
+ 'name': fields.char('Reason', required=True),
'method_number': fields.integer('Number of Depreciations', required=True),
'method_period': fields.integer('Period Length'),
'method_end': fields.date('Ending date'),
diff --git a/addons/account_bank_statement_extensions/account_bank_statement.py b/addons/account_bank_statement_extensions/account_bank_statement.py
index b9e44ee8f9c..0b0386ecf8e 100644
--- a/addons/account_bank_statement_extensions/account_bank_statement.py
+++ b/addons/account_bank_statement_extensions/account_bank_statement.py
@@ -62,7 +62,7 @@ class account_bank_statement_line_global(osv.osv):
_description = 'Batch Payment Info'
_columns = {
- 'name': fields.char('OBI', size=128, required=True, help="Originator to Beneficiary Information"),
+ 'name': fields.char('OBI', required=True, help="Originator to Beneficiary Information"),
'code': fields.char('Code', size=64, required=True),
'parent_id': fields.many2one('account.bank.statement.line.global', 'Parent Code', ondelete='cascade'),
'child_ids': fields.one2many('account.bank.statement.line.global', 'parent_id', 'Child Codes'),
diff --git a/addons/account_budget/account_budget.py b/addons/account_budget/account_budget.py
index 78e85716bbd..bed9085875e 100644
--- a/addons/account_budget/account_budget.py
+++ b/addons/account_budget/account_budget.py
@@ -39,7 +39,7 @@ class account_budget_post(osv.osv):
_description = "Budgetary Position"
_columns = {
'code': fields.char('Code', size=64, required=True),
- 'name': fields.char('Name', size=256, required=True),
+ 'name': fields.char('Name', required=True),
'account_ids': fields.many2many('account.account', 'account_budget_rel', 'budget_id', 'account_id', 'Accounts'),
'crossovered_budget_line': fields.one2many('crossovered.budget.lines', 'general_budget_id', 'Budget Lines'),
'company_id': fields.many2one('res.company', 'Company', required=True),
@@ -56,7 +56,7 @@ class crossovered_budget(osv.osv):
_description = "Budget"
_columns = {
- 'name': fields.char('Name', size=64, required=True, states={'done':[('readonly',True)]}),
+ 'name': fields.char('Name', required=True, states={'done':[('readonly',True)]}),
'code': fields.char('Code', size=16, required=True, states={'done':[('readonly',True)]}),
'creating_user_id': fields.many2one('res.users', 'Responsible User'),
'validating_user_id': fields.many2one('res.users', 'Validate User', readonly=True),
diff --git a/addons/account_check_writing/account_voucher.py b/addons/account_check_writing/account_voucher.py
index 779ff61be44..1e635f3dd53 100644
--- a/addons/account_check_writing/account_voucher.py
+++ b/addons/account_check_writing/account_voucher.py
@@ -36,9 +36,9 @@ class account_voucher(osv.osv):
return journal_pool.search(cr, uid, [('type', '=', ttype)], limit=1)
_columns = {
- 'amount_in_word' : fields.char("Amount in Word" , size=128, readonly=True, states={'draft':[('readonly',False)]}),
+ 'amount_in_word' : fields.char("Amount in Word", readonly=True, states={'draft':[('readonly',False)]}),
'allow_check' : fields.related('journal_id', 'allow_check_writing', type='boolean', string='Allow Check Writing'),
- 'number': fields.char('Number', size=32),
+ 'number': fields.char('Number'),
}
def _amount_to_text(self, cr, uid, amount, currency_id, context=None):
diff --git a/addons/account_followup/account_followup.py b/addons/account_followup/account_followup.py
index ddeb1f380c4..dc00119c0bf 100644
--- a/addons/account_followup/account_followup.py
+++ b/addons/account_followup/account_followup.py
@@ -49,7 +49,7 @@ class followup_line(osv.osv):
_name = 'account_followup.followup.line'
_description = 'Follow-up Criteria'
_columns = {
- 'name': fields.char('Follow-Up Action', size=64, required=True),
+ 'name': fields.char('Follow-Up Action', required=True),
'sequence': fields.integer('Sequence', help="Gives the sequence order when displaying a list of follow-up lines."),
'delay': fields.integer('Due Days', help="The number of days after the due date of the invoice to wait before sending the reminder. Could be negative if you want to send a polite alert beforehand.", required=True),
'followup_id': fields.many2one('account_followup.followup', 'Follow Ups', required=True, ondelete="cascade"),
diff --git a/addons/account_payment/account_payment.py b/addons/account_payment/account_payment.py
index dc001e2e2a3..d2b2786e995 100644
--- a/addons/account_payment/account_payment.py
+++ b/addons/account_payment/account_payment.py
@@ -30,7 +30,7 @@ class payment_mode(osv.osv):
_name= 'payment.mode'
_description= 'Payment Mode'
_columns = {
- 'name': fields.char('Name', size=64, required=True, help='Mode of Payment'),
+ 'name': fields.char('Name', required=True, help='Mode of Payment'),
'bank_id': fields.many2one('res.partner.bank', "Bank account",
required=True,help='Bank Account for the Payment Mode'),
'journal': fields.many2one('account.journal', 'Journal', required=True,
@@ -87,7 +87,7 @@ class payment_order(osv.osv):
_columns = {
'date_scheduled': fields.date('Scheduled Date', states={'done':[('readonly', True)]}, help='Select a date if you have chosen Preferred Date to be fixed.'),
- 'reference': fields.char('Reference', size=128, required=1, states={'done': [('readonly', True)]}),
+ 'reference': fields.char('Reference', required=1, states={'done': [('readonly', True)]}),
'mode': fields.many2one('payment.mode', 'Payment Mode', select=True, required=1, states={'done': [('readonly', True)]}, help='Select the Payment Mode to be applied.'),
'state': fields.selection([
('draft', 'Draft'),
@@ -303,9 +303,9 @@ class payment_line(osv.osv):
return res
_columns = {
- 'name': fields.char('Your Reference', size=64, required=True),
- 'communication': fields.char('Communication', size=64, required=True, help="Used as the message between ordering customer and current company. Depicts 'What do you want to say to the recipient about this order ?'"),
- 'communication2': fields.char('Communication 2', size=64, help='The successor message of Communication.'),
+ 'name': fields.char('Your Reference', required=True),
+ 'communication': fields.char('Communication', required=True, help="Used as the message between ordering customer and current company. Depicts 'What do you want to say to the recipient about this order ?'"),
+ 'communication2': fields.char('Communication 2', help='The successor message of Communication.'),
'move_line_id': fields.many2one('account.move.line', 'Entry line', domain=[('reconcile_id', '=', False), ('account_id.type', '=', 'payable')], help='This Entry Line will be referred for the information of the ordering customer.'),
'amount_currency': fields.float('Amount in Partner Currency', digits=(16, 2),
required=True, help='Payment amount in the partner currency'),
diff --git a/addons/account_sequence/account_sequence.py b/addons/account_sequence/account_sequence.py
index 3b8b2335068..1b60e51e124 100644
--- a/addons/account_sequence/account_sequence.py
+++ b/addons/account_sequence/account_sequence.py
@@ -26,7 +26,7 @@ class account_move(osv.osv):
_inherit = 'account.move'
_columns = {
- 'internal_sequence_number': fields.char('Internal Number', size=64, readonly=True, help='Internal Sequence Number'),
+ 'internal_sequence_number': fields.char('Internal Number', readonly=True, help='Internal Sequence Number'),
}
def post(self, cr, uid, ids, context=None):
diff --git a/addons/account_sequence/account_sequence_installer.py b/addons/account_sequence/account_sequence_installer.py
index 91316a61962..bcf1e14c20f 100644
--- a/addons/account_sequence/account_sequence_installer.py
+++ b/addons/account_sequence/account_sequence_installer.py
@@ -26,9 +26,9 @@ class account_sequence_installer(osv.osv_memory):
_inherit = 'res.config.installer'
_columns = {
- 'name': fields.char('Name',size=64, required=True),
- 'prefix': fields.char('Prefix',size=64, help="Prefix value of the record for the sequence"),
- 'suffix': fields.char('Suffix',size=64, help="Suffix value of the record for the sequence"),
+ 'name': fields.char('Name', required=True),
+ 'prefix': fields.char('Prefix', size=64, help="Prefix value of the record for the sequence"),
+ 'suffix': fields.char('Suffix', size=64, help="Suffix value of the record for the sequence"),
'number_next': fields.integer('Next Number', required=True, help="Next number of this sequence"),
'number_increment': fields.integer('Increment Number', required=True, help="The next number of the sequence will be incremented by this number"),
'padding' : fields.integer('Number padding', required=True, help="OpenERP will automatically adds some '0' on the left of the 'Next Number' to get the required padding size."),
diff --git a/addons/account_test/account_test.py b/addons/account_test/account_test.py
index cc60108bf20..50864cc8b48 100644
--- a/addons/account_test/account_test.py
+++ b/addons/account_test/account_test.py
@@ -43,7 +43,7 @@ class accounting_assert_test(osv.osv):
_order = "sequence"
_columns = {
- 'name': fields.char('Test Name', size=256, required=True, select=True, translate=True),
+ 'name': fields.char('Test Name', required=True, select=True, translate=True),
'desc': fields.text('Test Description', select=True, translate=True),
'code_exec': fields.text('Python code', required=True),
'active': fields.boolean('Active'),
diff --git a/addons/account_voucher/account_voucher.py b/addons/account_voucher/account_voucher.py
index 6adae402e0c..870869ee3dc 100644
--- a/addons/account_voucher/account_voucher.py
+++ b/addons/account_voucher/account_voucher.py
@@ -333,7 +333,7 @@ class account_voucher(osv.osv):
('payment','Payment'),
('receipt','Receipt'),
],'Default Type', readonly=True, states={'draft':[('readonly',False)]}),
- 'name':fields.char('Memo', size=256, readonly=True, states={'draft':[('readonly',False)]}),
+ 'name':fields.char('Memo', readonly=True, states={'draft':[('readonly',False)]}),
'date':fields.date('Date', readonly=True, select=True, states={'draft':[('readonly',False)]}, help="Effective date for accounting entries"),
'journal_id':fields.many2one('account.journal', 'Journal', required=True, readonly=True, states={'draft':[('readonly',False)]}),
'account_id':fields.many2one('account.account', 'Account', required=True, readonly=True, states={'draft':[('readonly',False)]}),
@@ -351,15 +351,15 @@ class account_voucher(osv.osv):
('cancel','Cancelled'),
('proforma','Pro-forma'),
('posted','Posted')
- ], 'Status', readonly=True, size=32, track_visibility='onchange',
+ ], 'Status', readonly=True, track_visibility='onchange',
help=' * The \'Draft\' status is used when a user is encoding a new and unconfirmed Voucher. \
\n* The \'Pro-forma\' when voucher is in Pro-forma status,voucher does not have an voucher number. \
\n* The \'Posted\' status is used when user create voucher,a voucher number is generated and voucher entries are created in account \
\n* The \'Cancelled\' status is used when user cancel voucher.'),
'amount': fields.float('Total', digits_compute=dp.get_precision('Account'), required=True, readonly=True, states={'draft':[('readonly',False)]}),
'tax_amount':fields.float('Tax Amount', digits_compute=dp.get_precision('Account'), readonly=True, states={'draft':[('readonly',False)]}),
- 'reference': fields.char('Ref #', size=64, readonly=True, states={'draft':[('readonly',False)]}, help="Transaction reference number."),
- 'number': fields.char('Number', size=32, readonly=True,),
+ 'reference': fields.char('Ref #', readonly=True, states={'draft':[('readonly',False)]}, help="Transaction reference number."),
+ 'number': fields.char('Number', readonly=True,),
'move_id':fields.many2one('account.move', 'Account Entry'),
'move_ids': fields.related('move_id','line_id', type='one2many', relation='account.move.line', string='Journal Items', readonly=True),
'partner_id':fields.many2one('res.partner', 'Partner', change_default=1, readonly=True, states={'draft':[('readonly',False)]}),
@@ -377,7 +377,7 @@ class account_voucher(osv.osv):
('with_writeoff', 'Reconcile Payment Balance'),
], 'Payment Difference', required=True, readonly=True, states={'draft': [('readonly', False)]}, help="This field helps you to choose what you want to do with the eventual difference between the paid amount and the sum of allocated amounts. You can either choose to keep open this difference on the partner's account, or reconcile it with the payment(s)"),
'writeoff_acc_id': fields.many2one('account.account', 'Counterpart Account', readonly=True, states={'draft': [('readonly', False)]}),
- 'comment': fields.char('Counterpart Comment', size=64, required=True, readonly=True, states={'draft': [('readonly', False)]}),
+ 'comment': fields.char('Counterpart Comment', required=True, readonly=True, states={'draft': [('readonly', False)]}),
'analytic_id': fields.many2one('account.analytic.account','Write-Off Analytic Account', readonly=True, states={'draft': [('readonly', False)]}),
'writeoff_amount': fields.function(_get_writeoff_amount, string='Difference Amount', type='float', readonly=True, help="Computed as the difference between the amount stated in the voucher and the sum of allocation on the voucher lines."),
'payment_rate_currency_id': fields.many2one('res.currency', 'Payment Rate Currency', required=True, readonly=True, states={'draft':[('readonly',False)]}),
@@ -1482,7 +1482,7 @@ class account_voucher_line(osv.osv):
_columns = {
'voucher_id':fields.many2one('account.voucher', 'Voucher', required=1, ondelete='cascade'),
- 'name':fields.char('Description', size=256),
+ 'name':fields.char('Description',),
'account_id':fields.many2one('account.account','Account', required=True),
'partner_id':fields.related('voucher_id', 'partner_id', type='many2one', relation='res.partner', string='Partner'),
'untax_amount':fields.float('Untax Amount'),
diff --git a/addons/analytic/analytic.py b/addons/analytic/analytic.py
index 61e5c1166ea..1d728ba1e7c 100644
--- a/addons/analytic/analytic.py
+++ b/addons/analytic/analytic.py
@@ -171,7 +171,7 @@ class account_analytic_account(osv.osv):
return result
_columns = {
- 'name': fields.char('Account/Contract Name', size=128, required=True, track_visibility='onchange'),
+ 'name': fields.char('Account/Contract Name', required=True, track_visibility='onchange'),
'complete_name': fields.function(_get_full_name, type='char', string='Full Name'),
'code': fields.char('Reference', select=True, track_visibility='onchange'),
'type': fields.selection([('view','Analytic View'), ('normal','Analytic Account'),('contract','Contract or Project'),('template','Template of Contract')], 'Type of Account', required=True,
@@ -314,7 +314,7 @@ class account_analytic_line(osv.osv):
_description = 'Analytic Line'
_columns = {
- 'name': fields.char('Description', size=256, required=True),
+ 'name': fields.char('Description', required=True),
'date': fields.date('Date', required=True, select=True),
'amount': fields.float('Amount', required=True, help='Calculated by multiplying the quantity and the price given in the Product\'s cost price. Always expressed in the company main currency.', digits_compute=dp.get_precision('Account')),
'unit_amount': fields.float('Quantity', help='Specifies the amount of quantity to count.'),
diff --git a/addons/anonymization/anonymization.py b/addons/anonymization/anonymization.py
index c82afde103f..a6d14ec2e05 100644
--- a/addons/anonymization/anonymization.py
+++ b/addons/anonymization/anonymization.py
@@ -54,9 +54,9 @@ class ir_model_fields_anonymization(osv.osv):
_rec_name = 'field_id'
_columns = {
- 'model_name': fields.char('Object Name', size=128, required=True),
+ 'model_name': fields.char('Object Name', required=True),
'model_id': fields.many2one('ir.model', 'Object', ondelete='set null'),
- 'field_name': fields.char('Field Name', size=128, required=True),
+ 'field_name': fields.char('Field Name', required=True),
'field_id': fields.many2one('ir.model.fields', 'Field', ondelete='set null'),
'state': fields.selection(selection=FIELD_STATES, String='Status', required=True, readonly=True),
}
@@ -226,9 +226,9 @@ class ir_model_fields_anonymization_history(osv.osv):
'date': fields.datetime('Date', required=True, readonly=True),
'field_ids': fields.many2many('ir.model.fields.anonymization', 'anonymized_field_to_history_rel', 'field_id', 'history_id', 'Fields', readonly=True),
'state': fields.selection(selection=ANONYMIZATION_HISTORY_STATE, string='Status', required=True, readonly=True),
- 'direction': fields.selection(selection=ANONYMIZATION_DIRECTION, string='Direction', required=True, readonly=True),
+ 'direction': fields.selection(selection=ANONYMIZATION_DIRECTION, string='Direction', size=20, required=True, readonly=True),
'msg': fields.text('Message', readonly=True),
- 'filepath': fields.char(string='File path', size=256, readonly=True),
+ 'filepath': fields.char(string='File path', readonly=True),
}
@@ -253,7 +253,7 @@ class ir_model_fields_anonymize_wizard(osv.osv_memory):
return res
_columns = {
- 'name': fields.char(size=64, string='File Name'),
+ 'name': fields.char(string='File Name'),
'summary': fields.function(_get_summary, type='text', string='Summary'),
'file_export': fields.binary(string='Export'),
'file_import': fields.binary(string='Import', help="This is the file created by the anonymization process. It should have the '.pickle' extention."),
diff --git a/addons/auth_ldap/users_ldap.py b/addons/auth_ldap/users_ldap.py
index 7b3d88af154..e6a7f0f4716 100644
--- a/addons/auth_ldap/users_ldap.py
+++ b/addons/auth_ldap/users_ldap.py
@@ -205,16 +205,16 @@ class CompanyLDAP(osv.osv):
'sequence': fields.integer('Sequence'),
'company': fields.many2one('res.company', 'Company', required=True,
ondelete='cascade'),
- 'ldap_server': fields.char('LDAP Server address', size=64, required=True),
+ 'ldap_server': fields.char('LDAP Server address', required=True),
'ldap_server_port': fields.integer('LDAP Server port', required=True),
- 'ldap_binddn': fields.char('LDAP binddn', size=64,
+ 'ldap_binddn': fields.char('LDAP binddn',
help=("The user account on the LDAP server that is used to query "
"the directory. Leave empty to connect anonymously.")),
- 'ldap_password': fields.char('LDAP password', size=64,
+ 'ldap_password': fields.char('LDAP password',
help=("The password of the user account on the LDAP server that is "
"used to query the directory.")),
- 'ldap_filter': fields.char('LDAP filter', size=256, required=True),
- 'ldap_base': fields.char('LDAP base', size=64, required=True),
+ 'ldap_filter': fields.char('LDAP filter', required=True),
+ 'ldap_base': fields.char('LDAP base', required=True),
'user': fields.many2one('res.users', 'Template User',
help="User to copy when creating new users"),
'create_user': fields.boolean('Create user',
diff --git a/addons/base_action_rule/base_action_rule.py b/addons/base_action_rule/base_action_rule.py
index 6c5e8d4d6cb..1f5fcc58ccf 100644
--- a/addons/base_action_rule/base_action_rule.py
+++ b/addons/base_action_rule/base_action_rule.py
@@ -54,7 +54,7 @@ class base_action_rule(osv.osv):
_order = 'sequence'
_columns = {
- 'name': fields.char('Rule Name', size=64, required=True),
+ 'name': fields.char('Rule Name', required=True),
'model_id': fields.many2one('ir.model', 'Related Document Model',
required=True, domain=[('osv_memory', '=', False)]),
'model': fields.related('model_id', 'model', type="char", size=256, string='Model'),
@@ -156,13 +156,13 @@ class base_action_rule(osv.osv):
""" Return a wrapper around `old_create` calling both `old_create` and
`_process`, in that order.
"""
- def create(cr, uid, vals, context=None):
+ def create(cr, uid, vals, context=None, **kwargs):
# avoid loops or cascading actions
if context and context.get('action'):
return old_create(cr, uid, vals, context=context)
context = dict(context or {}, action=True)
- new_id = old_create(cr, uid, vals, context=context)
+ new_id = old_create(cr, uid, vals, context=context, **kwargs)
# retrieve the action rules to run on creation
action_dom = [('model', '=', model), ('kind', 'in', ['on_create', 'on_create_or_write'])]
@@ -180,10 +180,10 @@ class base_action_rule(osv.osv):
""" Return a wrapper around `old_write` calling both `old_write` and
`_process`, in that order.
"""
- def write(cr, uid, ids, vals, context=None):
+ def write(cr, uid, ids, vals, context=None, **kwargs):
# avoid loops or cascading actions
if context and context.get('action'):
- return old_write(cr, uid, ids, vals, context=context)
+ return old_write(cr, uid, ids, vals, context=context, **kwargs)
context = dict(context or {}, action=True)
ids = [ids] if isinstance(ids, (int, long, str)) else ids
@@ -199,7 +199,7 @@ class base_action_rule(osv.osv):
pre_ids[action] = self._filter(cr, uid, action, action.filter_pre_id, ids, context=context)
# execute write
- old_write(cr, uid, ids, vals, context=context)
+ old_write(cr, uid, ids, vals, context=context, **kwargs)
# check postconditions, and execute actions on the records that satisfy them
for action in actions:
diff --git a/addons/base_action_rule/test_models.py b/addons/base_action_rule/test_models.py
index bc76be05f4a..2a88def6f75 100644
--- a/addons/base_action_rule/test_models.py
+++ b/addons/base_action_rule/test_models.py
@@ -12,7 +12,7 @@ class lead_test(osv.Model):
_name = "base.action.rule.lead.test"
_columns = {
- 'name': fields.char('Subject', size=64, required=True, select=1),
+ 'name': fields.char('Subject', required=True, select=1),
'user_id': fields.many2one('res.users', 'Responsible'),
'state': fields.selection(AVAILABLE_STATES, string="Status", readonly=True),
'active': fields.boolean('Active', required=False),
diff --git a/addons/base_gengo/controller/gengo_callback.py b/addons/base_gengo/controller/gengo_callback.py
index 381ac7b7fe9..44fa9b9390a 100644
--- a/addons/base_gengo/controller/gengo_callback.py
+++ b/addons/base_gengo/controller/gengo_callback.py
@@ -1,22 +1,53 @@
# -*- coding: utf-8 -*-
import openerp
+from openerp import SUPERUSER_ID
from openerp.addons.web import http
from openerp.addons.web.http import request
+from werkzeug.wrappers import BaseResponse as Response
+
import json
+
class website_gengo(http.Controller):
+
+ def get_gengo_key(self, cr):
+ icp = request.registry['ir.config_parameter']
+ return icp.get_param(cr, SUPERUSER_ID, request.registry['base.gengo.translations'].GENGO_KEY, default="")
+
@http.route('/website/gengo_callback', type='http', auth='none')
- def gengo_callback(self,**post):
+ def gengo_callback(self, **post):
cr, uid, context = request.cr, openerp.SUPERUSER_ID, request.context
translation_pool = request.registry['ir.translation']
- if post and post.get('job'):
- job = json.loads(post['job'])
+ if post and post.get('job') and post.get('pgk'):
+ if post.get('pgk') != self.get_gengo_key(cr):
+ return Response("Bad authentication - 403/412", status=412)
+ job = json.loads(post['job'], 'utf-8')
tid = job.get('custom_data', False)
if (job.get('status') == 'approved') and tid:
term = translation_pool.browse(cr, uid, int(tid), context=context)
- if term.job_id <> job.get('job_id'):
- raise 'Error'
- vals = {'state': 'translated', 'value': job.get('body_tgt')}
- translation_pool.write(cr, uid, [int(tid)], vals, context=context)
+ if term.src != job.get('body_src'):
+ return Response("Text Altered - Not saved", status=100)
+ domain = [
+ '|',
+ ('id', "=", int(tid)),
+ '&', '&', '&', '&', '&',
+ ('state', '=', term.state),
+ ('gengo_translation', '=', term.gengo_translation),
+ ('src', "=", term.src),
+ ('type', "=", term.type),
+ ('name', "=", term.name),
+ ('lang', "=", term.lang),
+ #('order_id', "=", term.order_id),
+ ]
+
+ all_ir_tanslations = translation_pool.search(cr, uid, domain, context=context or {})
+
+ if all_ir_tanslations:
+ vals = {'state': 'translated', 'value': job.get('body_tgt')}
+ translation_pool.write(cr, uid, all_ir_tanslations, vals, context=context)
+ return Response("OK", status=200)
+ else:
+ return Response("No terms found", status=104)
+ return Response("Not saved", status=100)
diff --git a/addons/base_gengo/gengo_sync_schedular_data.xml b/addons/base_gengo/gengo_sync_schedular_data.xml
index 91a5c8266d8..e916489e5f7 100644
--- a/addons/base_gengo/gengo_sync_schedular_data.xml
+++ b/addons/base_gengo/gengo_sync_schedular_data.xml
@@ -8,6 +8,7 @@
6
hours
-1
+ 0
@@ -20,6 +21,7 @@
6
hours
-1
+ 0
diff --git a/addons/base_gengo/ir_translation.py b/addons/base_gengo/ir_translation.py
index 306516878cc..142180a3627 100644
--- a/addons/base_gengo/ir_translation.py
+++ b/addons/base_gengo/ir_translation.py
@@ -56,16 +56,18 @@ LANG_CODE_MAPPING = {
'fi_FI': ('fi', 'Finnish')
}
+
class ir_translation(osv.Model):
_name = "ir.translation"
_inherit = "ir.translation"
+
_columns = {
'gengo_comment': fields.text("Comments & Activity Linked to Gengo"),
- 'job_id': fields.char('Gengo Job ID', size=32),
+ 'order_id': fields.char('Gengo Order ID', size=32),
"gengo_translation": fields.selection([('machine', 'Translation By Machine'),
- ('standard', 'Standard'),
- ('pro', 'Pro'),
- ('ultra', 'Ultra')], "Gengo Translation Service Level", help='You can select here the service level you want for an automatic translation using Gengo.'),
+ ('standard', 'Standard'),
+ ('pro', 'Pro'),
+ ('ultra', 'Ultra')], "Gengo Translation Service Level", help='You can select here the service level you want for an automatic translation using Gengo.'),
}
def _get_all_supported_languages(self, cr, uid, context=None):
@@ -83,3 +85,19 @@ class ir_translation(osv.Model):
def _get_gengo_corresponding_language(cr, lang):
return lang in LANG_CODE_MAPPING and LANG_CODE_MAPPING[lang][0] or lang
+
+ def _get_source_query(self, cr, uid, name, types, lang, source, res_id):
+ query, params = super(ir_translation, self)._get_source_query(cr, uid, name, types, lang, source, res_id)
+
+ query += """
+ ORDER BY
+ CASE
+ WHEN gengo_translation=%s then 10
+ WHEN gengo_translation=%s then 20
+ WHEN gengo_translation=%s then 30
+ WHEN gengo_translation=%s then 40
+ ELSE 0
+ END DESC
+ """
+ params += ('machine', 'standard', 'ultra', 'pro',)
+ return (query, params)
diff --git a/addons/base_gengo/wizard/base_gengo_translations.py b/addons/base_gengo/wizard/base_gengo_translations.py
index 08dfb0182ae..4ef13eb7b46 100644
--- a/addons/base_gengo/wizard/base_gengo_translations.py
+++ b/addons/base_gengo/wizard/base_gengo_translations.py
@@ -19,12 +19,13 @@
#
##############################################################################
+import uuid
import logging
import re
import time
from openerp.osv import osv, fields
-from openerp import tools
+from openerp import tools, SUPERUSER_ID
from openerp.tools.translate import _
_logger = logging.getLogger(__name__)
@@ -36,7 +37,9 @@ except ImportError:
GENGO_DEFAULT_LIMIT = 20
+
class base_gengo_translations(osv.osv_memory):
+ GENGO_KEY = "Gengo.UUID"
_name = 'base.gengo.translations'
_columns = {
@@ -46,9 +49,20 @@ class base_gengo_translations(osv.osv_memory):
'lang_id': fields.many2one('res.lang', 'Language', required=True),
'sync_limit': fields.integer("No. of terms to sync"),
}
- _defaults = {'sync_type' : 'both',
- 'sync_limit' : 20
- }
+ _defaults = {
+ 'sync_type': 'both',
+ 'sync_limit': 20
+ }
+
+ def init(self, cr):
+ icp = self.pool['ir.config_parameter']
+ if not icp.get_param(cr, SUPERUSER_ID, self.GENGO_KEY, default=None):
+ icp.set_param(cr, SUPERUSER_ID, self.GENGO_KEY, str(uuid.uuid4()), groups=['base.group_website_designer', 'base.group_website_publisher'])
+
+ def get_gengo_key(self, cr):
+ icp = self.pool['ir.config_parameter']
+ return icp.get_param(cr, SUPERUSER_ID, self.GENGO_KEY, default="Undefined")
+
def gengo_authentication(self, cr, uid, context=None):
'''
This method tries to open a connection with Gengo. For that, it uses the Public and Private
@@ -113,48 +127,68 @@ class base_gengo_translations(osv.osv_memory):
_logger.warning("%s", gengo)
else:
offset = 0
- all_translation_ids = translation_pool.search(cr, uid, [('state', '=', 'inprogress'), ('gengo_translation', 'in', ('machine', 'standard', 'pro', 'ultra')), ('job_id', "!=", False)], context=context)
+ all_translation_ids = translation_pool.search(cr, uid, [('state', '=', 'inprogress'), ('gengo_translation', 'in', ('machine', 'standard', 'pro', 'ultra')), ('order_id', "!=", False)], context=context)
while True:
translation_ids = all_translation_ids[offset:offset + limit]
offset += limit
if not translation_ids:
break
+
+ terms_progress = {
+ 'gengo_order_ids': set(),
+ 'ir_translation_ids': set(),
+ }
translation_terms = translation_pool.browse(cr, uid, translation_ids, context=context)
- gengo_job_id = [term.job_id for term in translation_terms]
- if gengo_job_id:
- gengo_ids = ','.join(gengo_job_id)
+ for term in translation_terms:
+ terms_progress['gengo_order_ids'].add(term.order_id)
+ terms_progress['ir_translation_ids'].add(tools.ustr(term.id))
+
+ for order_id in terms_progress['gengo_order_ids']:
+ order_response = gengo.getTranslationOrderJobs(id=order_id)
+ jobs_approved = order_response.get('response', []).get('order', []).get('jobs_approved', [])
+ gengo_ids = ','.join(jobs_approved)
+
+ if gengo_ids: # Need to check, because getTranslationJobBatch don't catch this case and so call the getTranslationJobs because no ids in url
try:
job_response = gengo.getTranslationJobBatch(id=gengo_ids)
except:
continue
if job_response['opstat'] == 'ok':
for job in job_response['response'].get('jobs', []):
- self._update_terms_job(cr, uid, job, context=context)
+ if job.get('custom_data') in terms_progress['ir_translation_ids']:
+ self._update_terms_job(cr, uid, job, context=context)
return True
def _update_terms_job(self, cr, uid, job, context=None):
translation_pool = self.pool.get('ir.translation')
tid = int(job['custom_data'])
vals = {}
- if job.get('job_id', False):
- vals['job_id'] = job['job_id']
+ if job.get('status', False) in ('queued', 'available', 'pending', 'reviewable'):
vals['state'] = 'inprogress'
- if job.get('status', False) in ('queued','available','pending','reviewable'):
- vals['state'] = 'inprogress'
- if job.get('body_tgt', False) and job.get('status', False)=='approved':
+ if job.get('body_tgt', False) and job.get('status', False) == 'approved':
vals['value'] = job['body_tgt']
if job.get('status', False) in ('approved', 'canceled'):
vals['state'] = 'translated'
if vals:
translation_pool.write(cr, uid, [tid], vals, context=context)
- def _update_terms(self, cr, uid, response, context=None):
+ def _update_terms(self, cr, uid, response, term_ids, context=None):
"""
Update the terms after their translation were requested to Gengo
"""
- for jobs in response.get('jobs', []):
+ translation_pool = self.pool.get('ir.translation')
+
+ vals = {
+ 'order_id': response.get('order_id', ''),
+ 'state': 'inprogress'
+ }
+
+ translation_pool.write(cr, uid, term_ids, vals, context=context)
+ jobs = response.get('jobs', [])
+ if jobs:
for t_id, res in jobs.items():
self._update_terms_job(cr, uid, res, context=context)
+
return
def pack_jobs_request(self, cr, uid, term_ids, context=None):
@@ -164,7 +198,7 @@ class base_gengo_translations(osv.osv_memory):
'term2.id': {...}
}
}'''
-
+ base_url = self.pool.get('ir.config_parameter').get_param(cr, uid, 'web.base.url')
translation_pool = self.pool.get('ir.translation')
jobs = {}
user = self.pool.get('res.users').browse(cr, uid, uid, context=context)
@@ -173,7 +207,7 @@ class base_gengo_translations(osv.osv_memory):
if re.search(r"\w", term.src or ""):
comment = user.company_id.gengo_comment or ''
if term.gengo_comment:
- comment+='\n' + term.gengo_comment
+ comment += '\n' + term.gengo_comment
jobs[time.strftime('%Y%m%d%H%M%S') + '-' + str(term.id)] = {
'type': 'text',
'slug': 'Single :: English to ' + term.lang,
@@ -184,10 +218,9 @@ class base_gengo_translations(osv.osv_memory):
'lc_tgt': translation_pool._get_gengo_corresponding_language(term.lang),
'auto_approve': auto_approve,
'comment': comment,
- 'callback_url': self.pool.get('ir.config_parameter').get_param(cr, uid,'web.base.url') + '/website/gengo_callback'
+ 'callback_url': "%s/website/gengo_callback?pgk=%s&db=%s" % (base_url, self.get_gengo_key(cr), cr.dbname)
}
- return {'jobs': jobs, 'as_group': 1}
-
+ return {'jobs': jobs, 'as_group': 0}
def _send_translation_terms(self, cr, uid, term_ids, context=None):
"""
@@ -200,7 +233,7 @@ class base_gengo_translations(osv.osv_memory):
if request['jobs']:
result = gengo.postTranslationJobs(jobs=request)
if result['opstat'] == 'ok':
- self._update_terms(cr, uid, result['response'], context=context)
+ self._update_terms(cr, uid, result['response'], term_ids, context=context)
else:
_logger.error(gengo)
return True
@@ -218,10 +251,10 @@ class base_gengo_translations(osv.osv_memory):
context = {}
language_pool = self.pool.get('res.lang')
translation_pool = self.pool.get('ir.translation')
- domain = [('state', '=', 'to_translate'), ('gengo_translation', 'in', ('machine', 'standard', 'pro', 'ultra')), ('job_id', "=", False)]
+ domain = [('state', '=', 'to_translate'), ('gengo_translation', 'in', ('machine', 'standard', 'pro', 'ultra')), ('order_id', "=", False)]
if context.get('gengo_language', False):
lc = language_pool.browse(cr, uid, context['gengo_language'], context=context).code
- domain.append( ('lang', '=', lc) )
+ domain.append(('lang', '=', lc))
all_term_ids = translation_pool.search(cr, uid, domain, context=context)
try:
diff --git a/addons/base_import/models.py b/addons/base_import/models.py
index 9f29848ad46..2b683bd8927 100644
--- a/addons/base_import/models.py
+++ b/addons/base_import/models.py
@@ -22,11 +22,11 @@ class ir_import(orm.TransientModel):
_transient_max_hours = 12.0
_columns = {
- 'res_model': fields.char('Model', size=64),
+ 'res_model': fields.char('Model'),
'file': fields.binary(
'File', help="File to check and/or import, raw binary (not base64)"),
- 'file_name': fields.char('File Name', size=None),
- 'file_type': fields.char('File Type', size=None),
+ 'file_name': fields.char('File Name'),
+ 'file_type': fields.char('File Type'),
}
def get_fields(self, cr, uid, model, context=None,
diff --git a/addons/base_import/test_models.py b/addons/base_import/test_models.py
index 0720ae11eda..274f7c84d5f 100644
--- a/addons/base_import/test_models.py
+++ b/addons/base_import/test_models.py
@@ -6,42 +6,42 @@ class char(orm.Model):
_name = name('char')
_columns = {
- 'value': fields.char('unknown', size=None)
+ 'value': fields.char('unknown')
}
class char_required(orm.Model):
_name = name('char.required')
_columns = {
- 'value': fields.char('unknown', size=None, required=True)
+ 'value': fields.char('unknown', required=True)
}
class char_readonly(orm.Model):
_name = name('char.readonly')
_columns = {
- 'value': fields.char('unknown', size=None, readonly=True)
+ 'value': fields.char('unknown', readonly=True)
}
class char_states(orm.Model):
_name = name('char.states')
_columns = {
- 'value': fields.char('unknown', size=None, readonly=True, states={'draft': [('readonly', False)]})
+ 'value': fields.char('unknown', readonly=True, states={'draft': [('readonly', False)]})
}
class char_noreadonly(orm.Model):
_name = name('char.noreadonly')
_columns = {
- 'value': fields.char('unknown', size=None, readonly=True, states={'draft': [('invisible', True)]})
+ 'value': fields.char('unknown', readonly=True, states={'draft': [('invisible', True)]})
}
class char_stillreadonly(orm.Model):
_name = name('char.stillreadonly')
_columns = {
- 'value': fields.char('unknown', size=None, readonly=True, states={'draft': [('readonly', True)]})
+ 'value': fields.char('unknown', readonly=True, states={'draft': [('readonly', True)]})
}
# TODO: complex field (m2m, o2m, m2o)
@@ -95,7 +95,7 @@ class preview_model(orm.Model):
_name = name('preview')
_columns = {
- 'name': fields.char('Name', size=None),
+ 'name': fields.char('Name'),
'somevalue': fields.integer('Some Value', required=True),
'othervalue': fields.integer('Other Variable'),
}
diff --git a/addons/base_report_designer/installer.py b/addons/base_report_designer/installer.py
index 7fddc27f037..0ae5861d61d 100644
--- a/addons/base_report_designer/installer.py
+++ b/addons/base_report_designer/installer.py
@@ -35,8 +35,8 @@ class base_report_designer_installer(osv.osv_memory):
return data
_columns = {
- 'name':fields.char('File name', size=34),
- 'plugin_file':fields.char('OpenObject Report Designer Plug-in', size=256, readonly=True, help="OpenObject Report Designer plug-in file. Save as this file and install this plug-in in OpenOffice."),
+ 'name':fields.char('File name'),
+ 'plugin_file':fields.char('OpenObject Report Designer Plug-in', readonly=True, help="OpenObject Report Designer plug-in file. Save as this file and install this plug-in in OpenOffice."),
'description':fields.text('Description', readonly=True)
}
diff --git a/addons/base_setup/res_config.py b/addons/base_setup/res_config.py
index 955591e8824..546513344bb 100644
--- a/addons/base_setup/res_config.py
+++ b/addons/base_setup/res_config.py
@@ -81,8 +81,7 @@ class base_config_settings(osv.osv_memory):
return self.pool.get("res.font").font_scan(cr, uid, context=context)
# Preferences wizard for Sales & CRM.
-# It is defined here because it is inherited independently in modules sale, crm,
-# plugin_outlook and plugin_thunderbird.
+# It is defined here because it is inherited independently in modules sale, crm.
class sale_config_settings(osv.osv_memory):
_name = 'sale.config.settings'
_inherit = 'res.config.settings'
@@ -91,18 +90,6 @@ class sale_config_settings(osv.osv_memory):
help="""When you create a new contact (person or company), you will be able to load all the data from LinkedIn (photos, address, etc)."""),
'module_crm': fields.boolean('CRM'),
'module_sale' : fields.boolean('SALE'),
- 'module_plugin_thunderbird': fields.boolean('Enable Thunderbird plug-in',
- help='The plugin allows you archive email and its attachments to the selected '
- 'OpenERP objects. You can select a partner, or a lead and '
- 'attach the selected mail as a .eml file in '
- 'the attachment of a selected record. You can create documents for CRM Lead, '
- 'Partner from the selected emails.\n'
- '-This installs the module plugin_thunderbird.'),
- 'module_plugin_outlook': fields.boolean('Enable Outlook plug-in',
- help='The Outlook plugin allows you to select an object that you would like to add '
- 'to your email and its attachments from MS Outlook. You can select a partner, '
- 'or a lead object and archive a selected email into an OpenERP mail message with attachments.\n'
- '-This installs the module plugin_outlook.'),
'module_mass_mailing': fields.boolean(
'Manage mass mailing campaigns',
help='Get access to statistics with your mass mailing, manage campaigns.'),
diff --git a/addons/base_setup/res_config_view.xml b/addons/base_setup/res_config_view.xml
index 1ec7aab7d22..b5fa051a9b6 100644
--- a/addons/base_setup/res_config_view.xml
+++ b/addons/base_setup/res_config_view.xml
@@ -159,26 +159,13 @@
-
+
OpenERP allows to automatically create leads (or others documents)
from incoming emails. You can automatically synchronize emails with OpenERP
using regular POP/IMAP accounts, using a direct email integration script for your
email server, or by manually pushing emails to OpenERP using specific
plugins for your preferred email application.
-
-
-
-
diff --git a/addons/board/board.py b/addons/board/board.py
index fafb0eae290..e1c59cee958 100644
--- a/addons/board/board.py
+++ b/addons/board/board.py
@@ -168,7 +168,7 @@ class board_create(osv.osv_memory):
_description = "Board Creation"
_columns = {
- 'name': fields.char('Board Name', size=64, required=True),
+ 'name': fields.char('Board Name', required=True),
'menu_parent_id': fields.many2one('ir.ui.menu', 'Parent Menu', required=True),
}
diff --git a/addons/calendar/__openerp__.py b/addons/calendar/__openerp__.py
index 0cae2b6faf9..a75d8975e0d 100644
--- a/addons/calendar/__openerp__.py
+++ b/addons/calendar/__openerp__.py
@@ -43,7 +43,6 @@ If you need to manage your meetings, you should install the CRM module.
'security/ir.model.access.csv',
'security/calendar_security.xml',
'calendar_view.xml',
- 'contacts_view.xml',
'calendar_data.xml',
'views/calendar.xml',
],
diff --git a/addons/calendar/calendar.py b/addons/calendar/calendar.py
index b6473a7f1a7..7108a2d1d73 100644
--- a/addons/calendar/calendar.py
+++ b/addons/calendar/calendar.py
@@ -762,7 +762,6 @@ class calendar_event(osv.Model):
res[meeting_id][field] = meeting.start_date if meeting.allday else meeting.start_datetime
elif field == 'stop':
res[meeting_id][field] = meeting.stop_date if meeting.allday else meeting.stop_datetime
-
return res
def _get_rulestring(self, cr, uid, ids, name, arg, context=None):
diff --git a/addons/calendar/contacts_view.xml b/addons/calendar/contacts_view.xml
deleted file mode 100644
index 1d014fea1f6..00000000000
--- a/addons/calendar/contacts_view.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-
-
-
-
- My Coworkers
- calendar.contacts
-
-
-
-
-
-
-
-
- Calendar Contacts
- calendar.contacts
- form
- tree
- [('user_id','=',uid)]
-
-
-
- Click on "create " to select colleagues you want to see meetings.
-
- Your colleagues will appear in the right list to see them in the calendar view. You will easily manage collaboration and meeting with them.
-
-
-
-
-
-
\ No newline at end of file
diff --git a/addons/calendar/static/src/css/calendar.css b/addons/calendar/static/src/css/calendar.css
index a22fa2344ad..7e43b37a317 100644
--- a/addons/calendar/static/src/css/calendar.css
+++ b/addons/calendar/static/src/css/calendar.css
@@ -72,3 +72,13 @@ span.no-wrap {
.cal_tab {
margin: 20 0 20 0;
}
+.openerp .oe_remove_follower {
+ cursor: pointer;
+ position: absolute;
+ right: 0px;
+ line-height: 20px;
+ color: #D3D3D3;
+}
+.openerp .oe_add_input_box > div > input{
+ width: 200px;
+}
\ No newline at end of file
diff --git a/addons/calendar/static/src/js/base_calendar.js b/addons/calendar/static/src/js/base_calendar.js
index 37669840818..a4459157f2d 100644
--- a/addons/calendar/static/src/js/base_calendar.js
+++ b/addons/calendar/static/src/js/base_calendar.js
@@ -1,9 +1,136 @@
openerp.calendar = function(instance) {
- var _t = instance.web._t;
+ var _t = instance.web._t,
+ _lt = instance.web._lt;
var QWeb = instance.web.qweb;
instance.calendar = {};
+function reload_favorite_list(result) {
+ var self = current = result;
+ if (result.view) {
+ self = result.view;
+ }
+ new instance.web.Model("res.users").query(["partner_id"]).filter([["id", "=",self.dataset.context.uid]]).first()
+ .done(
+ function(result) {
+ var sidebar_items = {};
+ var filter_value = result.partner_id[0];
+ var filter_item = {
+ value: filter_value,
+ label: result.partner_id[1] + _lt(" [Me]"),
+ color: self.get_color(filter_value),
+ avatar_model: self.avatar_model,
+ is_checked: true,
+ is_remove: false,
+ };
+
+ sidebar_items[0] = filter_item ;
+ filter_item = {
+ value: -1,
+ label: _lt("Everybody's calendars"),
+ color: self.get_color(-1),
+ avatar_model: self.avatar_model,
+ is_checked: false
+ };
+ sidebar_items[-1] = filter_item ;
+ //Get my coworkers/contacts
+ new instance.web.Model("calendar.contacts").query(["partner_id"]).filter([["user_id", "=",self.dataset.context.uid]]).all().then(function(result) {
+ _.each(result, function(item) {
+ filter_value = item.partner_id[0];
+ filter_item = {
+ value: filter_value,
+ label: item.partner_id[1],
+ color: self.get_color(filter_value),
+ avatar_model: self.avatar_model,
+ is_checked: true
+ };
+ sidebar_items[filter_value] = filter_item ;
+ });
+ self.all_filters = sidebar_items;
+ self.now_filter_ids = $.map(self.all_filters, function(o) { return o.value; });
+
+ self.sidebar.filter.events_loaded(self.all_filters);
+ self.sidebar.filter.set_filters();
+ self.sidebar.filter.set_distroy_filters();
+ self.sidebar.filter.addInputBox();
+ self.sidebar.filter.destroy_filter();
+ }).done(function () {
+ self.$calendar.fullCalendar('refetchEvents');
+ if (current.ir_model_m2o) {
+ current.ir_model_m2o.set_value(false);
+ }
+ });
+ });
+ }
+ instance.web_calendar.CalendarView.include({
+ extraSideBar: function(){
+ this._super();
+ if (this.useContacts){
+ new reload_favorite_list(this);
+ }
+ }
+ });
+
+ instance.web_calendar.SidebarFilter.include({
+ set_distroy_filters: function() {
+ var self = this;
+ // When mouse-enter the favorite list it will show the 'X' for removing partner from the favorite list.
+ if (self.view.useContacts){
+ self.$('.oe_calendar_all_responsibles').on('mouseenter mouseleave', function(e) {
+ self.$('.oe_remove_follower').toggleClass('hidden', e.type == 'mouseleave');
+ });
+ }
+ },
+ addInputBox: function() {
+ var self = this;
+ if (this.dfm)
+ return;
+ this.dfm = new instance.web.form.DefaultFieldManager(self);
+ this.dfm.extend_field_desc({
+ partner_id: {
+ relation: "res.partner",
+ },
+ });
+ this.ir_model_m2o = new instance.web.form.FieldMany2One(self.dfm, {
+ attrs: {
+ class: 'oe_add_input_box',
+ name: "partner_id",
+ type: "many2one",
+ options: '{"no_open": True}',
+ placeholder: _t("Select Favorite Calendar"),
+ },
+ });
+ this.ir_model_m2o.insertAfter($('div.oe_calendar_filter'));
+ this.ir_model_m2o.on('change:value', self, function() {
+ self.add_filter();
+ });
+ },
+ add_filter: function() {
+ var self = this;
+ new instance.web.Model("res.users").query(["partner_id"]).filter([["id", "=",this.view.dataset.context.uid]]).first().done(function(result){
+ $.map(self.ir_model_m2o.display_value, function(element,index) {
+ if (result.partner_id[0] != index){
+ self.ds_message = new instance.web.DataSetSearch(self, 'calendar.contacts');
+ self.ds_message.call("create", [{'partner_id': index}]);
+ }
+ });
+ });
+ new reload_favorite_list(this);
+ },
+ destroy_filter: function(e) {
+ var self= this;
+ this.$(".oe_remove_follower").on('click', function(e) {
+ self.ds_message = new instance.web.DataSetSearch(self, 'calendar.contacts');
+ if (! confirm(_t("Do you really want to delete this filter from favorite?"))) { return false; }
+ var id = $(e.currentTarget)[0].dataset.id;
+ self.ds_message.call('search', [[['partner_id', '=', parseInt(id)]]]).then(function(record){
+ return self.ds_message.unlink(record);
+ }).done(function() {
+ new reload_favorite_list(self);
+ });
+ });
+ },
+ });
instance.web.WebClient = instance.web.WebClient.extend({
diff --git a/addons/calendar/static/src/xml/base_calendar.xml b/addons/calendar/static/src/xml/base_calendar.xml
index 20da2cebf48..0939d65b609 100644
--- a/addons/calendar/static/src/xml/base_calendar.xml
+++ b/addons/calendar/static/src/xml/base_calendar.xml
@@ -73,4 +73,13 @@
+
+
+
+
+ X
+
+
+
+
diff --git a/addons/crm/crm.py b/addons/crm/crm.py
index b114a6e24fe..88933aaf2b9 100644
--- a/addons/crm/crm.py
+++ b/addons/crm/crm.py
@@ -40,7 +40,7 @@ class crm_case_channel(osv.osv):
_description = "Channels"
_order = 'name'
_columns = {
- 'name': fields.char('Channel Name', size=64, required=True),
+ 'name': fields.char('Channel Name', required=True),
'active': fields.boolean('Active'),
}
_defaults = {
@@ -59,7 +59,7 @@ class crm_case_stage(osv.osv):
_order = "sequence"
_columns = {
- 'name': fields.char('Stage Name', size=64, required=True, translate=True),
+ 'name': fields.char('Stage Name', required=True, translate=True),
'sequence': fields.integer('Sequence', help="Used to order stages. Lower is better."),
'probability': fields.float('Probability (%)', required=True, help="This percentage depicts the default/average probability of the Case for this stage to be a success"),
'on_change': fields.boolean('Change Probability Automatically', help="Setting this stage will change the probability automatically on the opportunity."),
@@ -74,7 +74,7 @@ class crm_case_stage(osv.osv):
'type': fields.selection([('lead', 'Lead'),
('opportunity', 'Opportunity'),
('both', 'Both')],
- string='Type', size=16, required=True,
+ string='Type', required=True,
help="This field is used to distinguish stages related to Leads from stages related to Opportunities, or to specify stages available for both types."),
}
@@ -87,13 +87,12 @@ class crm_case_stage(osv.osv):
'case_default': True,
}
-
class crm_case_categ(osv.osv):
""" Category of Case """
_name = "crm.case.categ"
_description = "Category of Case"
_columns = {
- 'name': fields.char('Name', size=64, required=True, translate=True),
+ 'name': fields.char('Name', required=True, translate=True),
'section_id': fields.many2one('crm.case.section', 'Sales Team'),
'object_id': fields.many2one('ir.model', 'Object Name'),
}
@@ -113,7 +112,7 @@ class crm_case_resource_type(osv.osv):
_description = "Campaign"
_rec_name = "name"
_columns = {
- 'name': fields.char('Campaign Name', size=64, required=True, translate=True),
+ 'name': fields.char('Campaign Name', required=True, translate=True),
'section_id': fields.many2one('crm.case.section', 'Sales Team'),
}
@@ -122,7 +121,7 @@ class crm_payment_mode(osv.osv):
_name = "crm.payment.mode"
_description = "CRM Payment Mode"
_columns = {
- 'name': fields.char('Name', size=64, required=True),
+ 'name': fields.char('Name', required=True),
'section_id': fields.many2one('crm.case.section', 'Sales Team'),
}
diff --git a/addons/crm/crm_lead.py b/addons/crm/crm_lead.py
index 0e0b734f72d..8a3bd5f2fbc 100644
--- a/addons/crm/crm_lead.py
+++ b/addons/crm/crm_lead.py
@@ -201,7 +201,7 @@ class crm_lead(format_address, osv.osv):
select=True, help="Linked partner (optional). Usually created when converting the lead."),
'id': fields.integer('ID', readonly=True),
- 'name': fields.char('Subject', size=64, required=True, select=1),
+ 'name': fields.char('Subject', required=True, select=1),
'active': fields.boolean('Active', required=False),
'date_action_last': fields.datetime('Last Action', readonly=1),
'date_action_next': fields.datetime('Next Action', readonly=1),
@@ -228,7 +228,7 @@ class crm_lead(format_address, osv.osv):
'stage_id': fields.many2one('crm.case.stage', 'Stage', track_visibility='onchange', select=True,
domain="['&', ('section_ids', '=', section_id), '|', ('type', '=', type), ('type', '=', 'both')]"),
'user_id': fields.many2one('res.users', 'Salesperson', select=True, track_visibility='onchange'),
- 'referred': fields.char('Referred By', size=64),
+ 'referred': fields.char('Referred By'),
'date_open': fields.datetime('Assigned', readonly=True),
'day_open': fields.function(_compute_day, string='Days to Open', \
multi='day_open', type="float", store=True),
@@ -246,7 +246,7 @@ class crm_lead(format_address, osv.osv):
'phone': fields.char("Phone", size=64),
'date_deadline': fields.date('Expected Closing', help="Estimate of the date on which the opportunity will be won."),
'date_action': fields.date('Next Action Date', select=True),
- 'title_action': fields.char('Next Action', size=64),
+ 'title_action': fields.char('Next Action'),
'color': fields.integer('Color Index'),
'partner_address_name': fields.related('partner_id', 'name', type='char', string='Partner Contact Name', readonly=True),
'partner_address_email': fields.related('partner_id', 'email', type='char', string='Partner Contact Email', readonly=True),
@@ -255,16 +255,16 @@ class crm_lead(format_address, osv.osv):
'user_login': fields.related('user_id', 'login', type='char', string='User Login', readonly=True),
# Fields for address, due to separation from crm and res.partner
- 'street': fields.char('Street', size=128),
- 'street2': fields.char('Street2', size=128),
+ 'street': fields.char('Street'),
+ 'street2': fields.char('Street2'),
'zip': fields.char('Zip', change_default=True, size=24),
- 'city': fields.char('City', size=128),
+ 'city': fields.char('City'),
'state_id': fields.many2one("res.country.state", 'State'),
'country_id': fields.many2one('res.country', 'Country'),
- 'phone': fields.char('Phone', size=64),
- 'fax': fields.char('Fax', size=64),
- 'mobile': fields.char('Mobile', size=64),
- 'function': fields.char('Function', size=128),
+ 'phone': fields.char('Phone'),
+ 'fax': fields.char('Fax'),
+ 'mobile': fields.char('Mobile'),
+ 'function': fields.char('Function'),
'title': fields.many2one('res.partner.title', 'Title'),
'company_id': fields.many2one('res.company', 'Company', select=1),
'payment_mode': fields.many2one('crm.payment.mode', 'Payment Mode', \
@@ -935,8 +935,10 @@ class crm_lead(format_address, osv.osv):
def message_get_reply_to(self, cr, uid, ids, context=None):
""" Override to get the reply_to of the parent project. """
- return [lead.section_id.message_get_reply_to()[0] if lead.section_id else False
- for lead in self.browse(cr, SUPERUSER_ID, ids, context=context)]
+ leads = self.browse(cr, SUPERUSER_ID, ids, context=context)
+ section_ids = set([lead.section_id.id for lead in leads if lead.section_id])
+ aliases = self.pool['crm.case.section'].message_get_reply_to(cr, uid, list(section_ids), context=context)
+ return dict((lead.id, aliases.get(lead.section_id and lead.section_id.id or 0, False)) for lead in leads)
def get_formview_id(self, cr, uid, id, context=None):
obj = self.browse(cr, uid, id, context=context)
diff --git a/addons/crm/crm_phonecall.py b/addons/crm/crm_phonecall.py
index 89a1f799b2b..382102710bb 100644
--- a/addons/crm/crm_phonecall.py
+++ b/addons/crm/crm_phonecall.py
@@ -54,14 +54,14 @@ class crm_phonecall(osv.osv):
'email_from': fields.char('Email', size=128, help="These people will receive email."),
'date_open': fields.datetime('Opened', readonly=True),
# phonecall fields
- 'name': fields.char('Call Summary', size=64, required=True),
+ 'name': fields.char('Call Summary', required=True),
'active': fields.boolean('Active', required=False),
'duration': fields.float('Duration', help='Duration in minutes and seconds.'),
'categ_id': fields.many2one('crm.case.categ', 'Category', \
domain="['|',('section_id','=',section_id),('section_id','=',False),\
('object_id.model', '=', 'crm.phonecall')]"),
- 'partner_phone': fields.char('Phone', size=32),
- 'partner_mobile': fields.char('Mobile', size=32),
+ 'partner_phone': fields.char('Phone'),
+ 'partner_mobile': fields.char('Mobile'),
'priority': fields.selection([('0','Low'), ('1','Normal'), ('2','High')], 'Priority'),
'date_closed': fields.datetime('Closed', readonly=True),
'date': fields.datetime('Date'),
diff --git a/addons/crm/crm_segmentation.py b/addons/crm/crm_segmentation.py
index 6e596b5fb9c..a2ba28b2d7e 100644
--- a/addons/crm/crm_segmentation.py
+++ b/addons/crm/crm_segmentation.py
@@ -30,7 +30,7 @@ class crm_segmentation(osv.osv):
_description = "Partner Segmentation"
_columns = {
- 'name': fields.char('Name', size=64, required=True, help='The name of the segmentation.'),
+ 'name': fields.char('Name', required=True, help='The name of the segmentation.'),
'description': fields.text('Description'),
'categ_id': fields.many2one('res.partner.category', 'Partner Category',\
required=True, help='The partner category that will be \
@@ -115,10 +115,10 @@ class crm_segmentation_line(osv.osv):
_description = "Segmentation line"
_columns = {
- 'name': fields.char('Rule Name', size=64, required=True),
+ 'name': fields.char('Rule Name', required=True),
'segmentation_id': fields.many2one('crm.segmentation', 'Segmentation'),
'expr_name': fields.selection([('sale','Sale Amount'),
- ('purchase','Purchase Amount')], 'Control Variable', size=64, required=True),
+ ('purchase','Purchase Amount')], 'Control Variable', required=True),
'expr_operator': fields.selection([('<','<'),('=','='),('>','>')], 'Operator', required=True),
'expr_value': fields.float('Value', required=True),
'operator': fields.selection([('and','Mandatory Expression'),\
diff --git a/addons/crm/report/crm_lead_report.py b/addons/crm/report/crm_lead_report.py
index 3a0786da5c7..7cb355c74d4 100644
--- a/addons/crm/report/crm_lead_report.py
+++ b/addons/crm/report/crm_lead_report.py
@@ -46,7 +46,7 @@ class crm_lead_report(osv.osv):
_rec_name = 'date_deadline'
_columns = {
- 'date_deadline': fields.date('Exp. Closing', size=10, readonly=True, help="Expected Closing"),
+ 'date_deadline': fields.date('Exp. Closing', readonly=True, help="Expected Closing"),
'create_date': fields.datetime('Creation Date', readonly=True),
'opening_date': fields.date('Assignation Date', readonly=True),
'date_closed': fields.date('Close Date', readonly=True),
diff --git a/addons/crm/report/crm_phonecall_report.py b/addons/crm/report/crm_phonecall_report.py
index 7365e224b22..137bda575b6 100644
--- a/addons/crm/report/crm_phonecall_report.py
+++ b/addons/crm/report/crm_phonecall_report.py
@@ -44,7 +44,7 @@ class crm_phonecall_report(osv.osv):
'section_id':fields.many2one('crm.case.section', 'Section', readonly=True),
'priority': fields.selection([('0','Low'), ('1','Normal'), ('2','High')], 'Priority'),
'nbr': fields.integer('# of Cases', readonly=True),
- 'state': fields.selection(AVAILABLE_STATES, 'Status', size=16, readonly=True),
+ 'state': fields.selection(AVAILABLE_STATES, 'Status', readonly=True),
'create_date': fields.datetime('Create Date', readonly=True, select=True),
'delay_close': fields.float('Delay to close', digits=(16,2),readonly=True, group_operator="avg",help="Number of Days to close the case"),
'duration': fields.float('Duration', digits=(16,2),readonly=True, group_operator="avg"),
diff --git a/addons/crm/res_config_view.xml b/addons/crm/res_config_view.xml
index cc7bb6b2e4a..bf586c8b30e 100644
--- a/addons/crm/res_config_view.xml
+++ b/addons/crm/res_config_view.xml
@@ -33,7 +33,7 @@
-
+
diff --git a/addons/crm/wizard/crm_phonecall_to_phonecall.py b/addons/crm/wizard/crm_phonecall_to_phonecall.py
index 804b3c7cb0f..7e900ad95d9 100644
--- a/addons/crm/wizard/crm_phonecall_to_phonecall.py
+++ b/addons/crm/wizard/crm_phonecall_to_phonecall.py
@@ -29,10 +29,10 @@ class crm_phonecall2phonecall(osv.osv_memory):
_description = 'Phonecall To Phonecall'
_columns = {
- 'name' : fields.char('Call summary', size=64, required=True, select=1),
+ 'name' : fields.char('Call summary', required=True, select=1),
'user_id' : fields.many2one('res.users',"Assign To"),
- 'contact_name':fields.char('Contact', size=64),
- 'phone':fields.char('Phone', size=64),
+ 'contact_name':fields.char('Contact'),
+ 'phone':fields.char('Phone'),
'categ_id': fields.many2one('crm.case.categ', 'Category', \
domain="['|',('section_id','=',False),('section_id','=',section_id),\
('object_id.model', '=', 'crm.phonecall')]"),
diff --git a/addons/crm_claim/crm_claim.py b/addons/crm_claim/crm_claim.py
index e38bf973cdf..cd4e6ad73b2 100644
--- a/addons/crm_claim/crm_claim.py
+++ b/addons/crm_claim/crm_claim.py
@@ -39,7 +39,7 @@ class crm_claim_stage(osv.osv):
_order = "sequence"
_columns = {
- 'name': fields.char('Stage Name', size=64, required=True, translate=True),
+ 'name': fields.char('Stage Name', required=True, translate=True),
'sequence': fields.integer('Sequence', help="Used to order stages. Lower is better."),
'section_ids':fields.many2many('crm.case.section', 'section_claim_stage_rel', 'stage_id', 'section_id', string='Sections',
help="Link between stages and sales teams. When set, this limitate the current stage to the selected sales teams."),
@@ -70,9 +70,9 @@ class crm_claim(osv.osv):
_columns = {
'id': fields.integer('ID', readonly=True),
- 'name': fields.char('Claim Subject', size=128, required=True),
+ 'name': fields.char('Claim Subject', required=True),
'active': fields.boolean('Active'),
- 'action_next': fields.char('Next Action', size=200),
+ 'action_next': fields.char('Next Action'),
'date_action_next': fields.datetime('Next Action Date'),
'description': fields.text('Description'),
'resolution': fields.text('Resolution'),
@@ -87,8 +87,8 @@ class crm_claim(osv.osv):
('object_id.model', '=', 'crm.claim')]"),
'priority': fields.selection([('0','Low'), ('1','Normal'), ('2','High')], 'Priority'),
'type_action': fields.selection([('correction','Corrective Action'),('prevention','Preventive Action')], 'Action Type'),
- 'user_id': fields.many2one('res.users', 'Responsible'),
- 'user_fault': fields.char('Trouble Responsible', size=64),
+ 'user_id': fields.many2one('res.users', 'Responsible', track_visibility='always'),
+ 'user_fault': fields.char('Trouble Responsible'),
'section_id': fields.many2one('crm.case.section', 'Sales Team', \
select=True, help="Responsible sales team."\
" Define Responsible user and Email account for"\
@@ -97,7 +97,7 @@ class crm_claim(osv.osv):
'partner_id': fields.many2one('res.partner', 'Partner'),
'email_cc': fields.text('Watchers Emails', size=252, help="These email addresses will be added to the CC field of all inbound and outbound emails for this record before being sent. Separate multiple email addresses with a comma"),
'email_from': fields.char('Email', size=128, help="Destination email for email gateway."),
- 'partner_phone': fields.char('Phone', size=32),
+ 'partner_phone': fields.char('Phone'),
'stage_id': fields.many2one ('crm.claim.stage', 'Stage', track_visibility='onchange',
domain="['|', ('section_ids', '=', section_id), ('case_default', '=', True)]"),
'cause': fields.text('Root Cause'),
@@ -161,6 +161,13 @@ class crm_claim(osv.osv):
# context: no_log, because subtype already handle this
return super(crm_claim, self).create(cr, uid, vals, context=context)
+ def copy(self, cr, uid, id, default=None, context=None):
+ claim = self.browse(cr, uid, id, context=context)
+ default = dict(default or {},
+ stage_id = self._get_default_stage_id(cr, uid, context=context),
+ name = _('%s (copy)') % claim.name)
+ return super(crm_claim, self).copy(cr, uid, id, default, context=context)
+
# -------------------------------------------------------
# Mail gateway
# -------------------------------------------------------
diff --git a/addons/crm_claim/report/crm_claim_report.py b/addons/crm_claim/report/crm_claim_report.py
index 9628165d27f..4323b7024d3 100644
--- a/addons/crm_claim/report/crm_claim_report.py
+++ b/addons/crm_claim/report/crm_claim_report.py
@@ -37,7 +37,7 @@ class crm_claim_report(osv.osv):
_description = "CRM Claim Report"
_columns = {
- 'name': fields.char('Year', size=64, required=False, readonly=True),
+ 'name': fields.char('Year', required=False, readonly=True),
'user_id':fields.many2one('res.users', 'User', readonly=True),
'section_id':fields.many2one('crm.case.section', 'Section', readonly=True),
'nbr': fields.integer('# of Cases', readonly=True),
diff --git a/addons/crm_helpdesk/crm_helpdesk.py b/addons/crm_helpdesk/crm_helpdesk.py
index faa3ae01041..0fdcfeb4210 100644
--- a/addons/crm_helpdesk/crm_helpdesk.py
+++ b/addons/crm_helpdesk/crm_helpdesk.py
@@ -37,7 +37,7 @@ class crm_helpdesk(osv.osv):
_columns = {
'id': fields.integer('ID', readonly=True),
- 'name': fields.char('Name', size=128, required=True),
+ 'name': fields.char('Name', required=True),
'active': fields.boolean('Active', required=False),
'date_action_last': fields.datetime('Last Action', readonly=1),
'date_action_next': fields.datetime('Next Action', readonly=1),
@@ -70,7 +70,7 @@ class crm_helpdesk(osv.osv):
('open', 'In Progress'),
('pending', 'Pending'),
('done', 'Closed'),
- ('cancel', 'Cancelled')], 'Status', size=16, readonly=True, track_visibility='onchange',
+ ('cancel', 'Cancelled')], 'Status', readonly=True, track_visibility='onchange',
help='The status is set to \'Draft\', when a case is created.\
\nIf the case is in progress the status is set to \'Open\'.\
\nWhen the case is over, the status is set to \'Done\'.\
diff --git a/addons/crm_helpdesk/report/crm_helpdesk_report.py b/addons/crm_helpdesk/report/crm_helpdesk_report.py
index 8b54e30ddd3..1163db948d2 100644
--- a/addons/crm_helpdesk/report/crm_helpdesk_report.py
+++ b/addons/crm_helpdesk/report/crm_helpdesk_report.py
@@ -39,11 +39,11 @@ class crm_helpdesk_report(osv.osv):
_auto = False
_columns = {
- 'name': fields.char('Year', size=64, required=False, readonly=True),
+ 'name': fields.char('Year', required=False, readonly=True),
'user_id':fields.many2one('res.users', 'User', readonly=True),
'section_id':fields.many2one('crm.case.section', 'Section', readonly=True),
'nbr': fields.integer('# of Cases', readonly=True),
- 'state': fields.selection(AVAILABLE_STATES, 'Status', size=16, readonly=True),
+ 'state': fields.selection(AVAILABLE_STATES, 'Status', readonly=True),
'month':fields.selection([('01', 'January'), ('02', 'February'), \
('03', 'March'), ('04', 'April'),\
('05', 'May'), ('06', 'June'), \
diff --git a/addons/crm_partner_assign/crm_partner_assign.py b/addons/crm_partner_assign/crm_partner_assign.py
index 2a81e238bfb..a07c730ba21 100644
--- a/addons/crm_partner_assign/crm_partner_assign.py
+++ b/addons/crm_partner_assign/crm_partner_assign.py
@@ -32,7 +32,7 @@ class res_partner_grade(osv.osv):
_columns = {
'sequence': fields.integer('Sequence'),
'active': fields.boolean('Active'),
- 'name': fields.char('Grade Name', size=32),
+ 'name': fields.char('Grade Name'),
'partner_weight': fields.integer('Grade Weight',
help="Gives the probability to assign a lead to this partner. (0 means no assignation.)"),
}
@@ -47,7 +47,7 @@ class res_partner_activation(osv.osv):
_columns = {
'sequence' : fields.integer('Sequence'),
- 'name' : fields.char('Name', size=32, required=True),
+ 'name' : fields.char('Name', required=True),
}
diff --git a/addons/crm_partner_assign/crm_partner_assign_data.xml b/addons/crm_partner_assign/crm_partner_assign_data.xml
index 284476cb6ee..cffee0a43ad 100644
--- a/addons/crm_partner_assign/crm_partner_assign_data.xml
+++ b/addons/crm_partner_assign/crm_partner_assign_data.xml
@@ -48,7 +48,7 @@
Thanks,
-${ctx['partner_id'].user_id and ctx['partner_id'].user_id.signature or ''}
+${ctx['partner_id'].user_id and ctx['partner_id'].user_id.signature | safe or ''}
% if not ctx['partner_id'].user_id:
PS: It looks like you do not have an account manager assigned to you, please contact us.
diff --git a/addons/crm_partner_assign/report/crm_lead_report.py b/addons/crm_partner_assign/report/crm_lead_report.py
index 572e1796b00..af6d146e1df 100644
--- a/addons/crm_partner_assign/report/crm_lead_report.py
+++ b/addons/crm_partner_assign/report/crm_lead_report.py
@@ -55,7 +55,7 @@ class crm_lead_report_assign(osv.osv):
'priority': fields.selection(crm.AVAILABLE_PRIORITIES, 'Priority'),
'type':fields.selection([
('lead','Lead'),
- ('opportunity','Opportunity'),
+ ('opportunity','Opportunity')
],'Type', help="Type is used to separate Leads and Opportunities"),
}
def init(self, cr):
diff --git a/addons/crm_profiling/crm_profiling.py b/addons/crm_profiling/crm_profiling.py
index 7ae9d146bdd..5b1af306b5f 100644
--- a/addons/crm_profiling/crm_profiling.py
+++ b/addons/crm_profiling/crm_profiling.py
@@ -146,7 +146,7 @@ class question(osv.osv):
_description= "Question"
_columns={
- 'name': fields.char("Question",size=128, required=True),
+ 'name': fields.char("Question", required=True),
'answers_ids': fields.one2many("crm_profiling.answer","question_id","Avalaible Answers",),
}
@@ -159,7 +159,7 @@ class questionnaire(osv.osv):
_description= "Questionnaire"
_columns = {
- 'name': fields.char("Questionnaire",size=128, required=True),
+ 'name': fields.char("Questionnaire", required=True),
'description':fields.text("Description", required=True),
'questions_ids': fields.many2many('crm_profiling.question','profile_questionnaire_quest_rel',\
'questionnaire', 'question', "Questions"),
@@ -171,7 +171,7 @@ class answer(osv.osv):
_name="crm_profiling.answer"
_description="Answer"
_columns={
- "name": fields.char("Answer",size=128, required=True),
+ "name": fields.char("Answer", required=True),
"question_id": fields.many2one('crm_profiling.question',"Question"),
}
diff --git a/addons/decimal_precision/decimal_precision.py b/addons/decimal_precision/decimal_precision.py
index 9af09704b61..eeacab9203e 100644
--- a/addons/decimal_precision/decimal_precision.py
+++ b/addons/decimal_precision/decimal_precision.py
@@ -28,7 +28,7 @@ from openerp.modules.registry import RegistryManager
class decimal_precision(orm.Model):
_name = 'decimal.precision'
_columns = {
- 'name': fields.char('Usage', size=50, select=True, required=True),
+ 'name': fields.char('Usage', select=True, required=True),
'digits': fields.integer('Digits', required=True),
}
_defaults = {
diff --git a/addons/delivery/delivery.py b/addons/delivery/delivery.py
index 873b7e60662..2ab2a10a3de 100644
--- a/addons/delivery/delivery.py
+++ b/addons/delivery/delivery.py
@@ -62,7 +62,7 @@ class delivery_carrier(osv.osv):
return res
_columns = {
- 'name': fields.char('Delivery Method', size=64, required=True),
+ 'name': fields.char('Delivery Method', required=True),
'partner_id': fields.many2one('res.partner', 'Transport Company', required=True, help="The partner that is doing the delivery service."),
'product_id': fields.many2one('product.product', 'Delivery Product', required=True),
'grids_id': fields.one2many('delivery.grid', 'carrier_id', 'Delivery Grids'),
@@ -171,8 +171,8 @@ class delivery_grid(osv.osv):
_name = "delivery.grid"
_description = "Delivery Grid"
_columns = {
- 'name': fields.char('Grid Name', size=64, required=True),
- 'sequence': fields.integer('Sequence', size=64, required=True, help="Gives the sequence order when displaying a list of delivery grid."),
+ 'name': fields.char('Grid Name', required=True),
+ 'sequence': fields.integer('Sequence', required=True, help="Gives the sequence order when displaying a list of delivery grid."),
'carrier_id': fields.many2one('delivery.carrier', 'Carrier', required=True, ondelete='cascade'),
'country_ids': fields.many2many('res.country', 'delivery_grid_country_rel', 'grid_id', 'country_id', 'Countries'),
'state_ids': fields.many2many('res.country.state', 'delivery_grid_state_rel', 'grid_id', 'state_id', 'States'),
@@ -229,8 +229,8 @@ class delivery_grid_line(osv.osv):
_name = "delivery.grid.line"
_description = "Delivery Grid Line"
_columns = {
- 'name': fields.char('Name', size=64, required=True),
- 'sequence': fields.integer('Sequence', size=64, required=True, help="Gives the sequence order when calculating delivery grid."),
+ 'name': fields.char('Name', required=True),
+ 'sequence': fields.integer('Sequence', required=True, help="Gives the sequence order when calculating delivery grid."),
'grid_id': fields.many2one('delivery.grid', 'Grid',required=True, ondelete='cascade'),
'type': fields.selection([('weight','Weight'),('volume','Volume'),\
('wv','Weight * Volume'), ('price','Price'), ('quantity','Quantity')],\
diff --git a/addons/delivery/stock.py b/addons/delivery/stock.py
index 38f8d0769fc..f836a919e9f 100644
--- a/addons/delivery/stock.py
+++ b/addons/delivery/stock.py
@@ -64,7 +64,7 @@ class stock_picking(osv.osv):
'stock.picking': (lambda self, cr, uid, ids, c={}: ids, ['move_lines'], 20),
'stock.move': (_get_picking_line, ['product_id','product_qty','product_uom','product_uos_qty'], 20),
}),
- 'carrier_tracking_ref': fields.char('Carrier Tracking Ref', size=32),
+ 'carrier_tracking_ref': fields.char('Carrier Tracking Ref'),
'number_of_packages': fields.integer('Number of Packages'),
'weight_uom_id': fields.many2one('product.uom', 'Unit of Measure', required=True,readonly="1",help="Unit of measurement for Weight",),
}
diff --git a/addons/document/document.py b/addons/document/document.py
index 9008f32cd20..b67d252db8f 100644
--- a/addons/document/document.py
+++ b/addons/document/document.py
@@ -158,7 +158,7 @@ class document_directory(osv.osv):
_description = 'Directory'
_order = 'name'
_columns = {
- 'name': fields.char('Name', size=64, required=True, select=1),
+ 'name': fields.char('Name', required=True, select=1),
'write_date': fields.datetime('Date Modified', readonly=True),
'write_uid': fields.many2one('res.users', 'Last Modification User', readonly=True),
'create_date': fields.datetime('Date Created', readonly=True),
@@ -172,7 +172,7 @@ class document_directory(osv.osv):
'type': fields.selection([ ('directory','Static Directory'), ('ressource','Folders per resource'), ],
'Type', required=True, select=1, change_default=True,
help="Each directory can either have the type Static or be linked to another resource. A static directory, as with Operating Systems, is the classic directory that can contain a set of files. The directories linked to systems resources automatically possess sub-directories for each of resource types defined in the parent directory."),
- 'domain': fields.char('Domain', size=128, help="Use a domain if you want to apply an automatic filter on visible resources."),
+ 'domain': fields.char('Domain', help="Use a domain if you want to apply an automatic filter on visible resources."),
'ressource_type_id': fields.many2one('ir.model', 'Resource model', change_default=True,
help="Select an object here and there will be one folder per record of that resource."),
'resource_field': fields.many2one('ir.model.fields', 'Name field', help='Field to be used as name on resource directories. If empty, the "name" will be used.'),
@@ -370,8 +370,8 @@ class document_directory_dctx(osv.osv):
_description = 'Directory Dynamic Context'
_columns = {
'dir_id': fields.many2one('document.directory', 'Directory', required=True, ondelete="cascade"),
- 'field': fields.char('Field', size=20, required=True, select=1, help="The name of the field."),
- 'expr': fields.char('Expression', size=64, required=True, help="A python expression used to evaluate the field.\n" + \
+ 'field': fields.char('Field', required=True, select=1, help="The name of the field."),
+ 'expr': fields.char('Expression', required=True, help="A python expression used to evaluate the field.\n" + \
"You can use 'dir_id' for current dir, 'res_id', 'res_model' as a reference to the current record, in dynamic folders"),
}
@@ -379,10 +379,10 @@ class document_directory_content_type(osv.osv):
_name = 'document.directory.content.type'
_description = 'Directory Content Type'
_columns = {
- 'name': fields.char('Content Type', size=64, required=True),
+ 'name': fields.char('Content Type', required=True),
'code': fields.char('Extension', size=4),
'active': fields.boolean('Active'),
- 'mimetype': fields.char('Mime Type',size=32)
+ 'mimetype': fields.char('Mime Type')
}
_defaults = {
'active': lambda *args: 1
@@ -399,7 +399,7 @@ class document_directory_content(osv.osv):
return res
_columns = {
- 'name': fields.char('Content Name', size=64, required=True),
+ 'name': fields.char('Content Name', required=True),
'sequence': fields.integer('Sequence', size=16),
'prefix': fields.char('Prefix', size=16),
'suffix': fields.char('Suffix', size=16),
diff --git a/addons/document/document_view.xml b/addons/document/document_view.xml
index 87da74c5658..4e19478e205 100644
--- a/addons/document/document_view.xml
+++ b/addons/document/document_view.xml
@@ -253,14 +253,6 @@
-
-
ir.actions.act_window
diff --git a/addons/document/report/document_report.py b/addons/document/report/document_report.py
index a4133f46387..654b83f29d0 100644
--- a/addons/document/report/document_report.py
+++ b/addons/document/report/document_report.py
@@ -71,7 +71,7 @@ class report_document_file(osv.osv):
_columns = {
'file_size': fields.integer('File Size', readonly=True),
'nbr':fields.integer('# of Files', readonly=True),
- 'month': fields.char('Month', size=24,readonly=True),
+ 'month': fields.char('Month', size=24, readonly=True),
}
_order = "month"
def init(self, cr):
diff --git a/addons/email_template/email_template.py b/addons/email_template/email_template.py
index 51ebf96e81b..90695bed829 100644
--- a/addons/email_template/email_template.py
+++ b/addons/email_template/email_template.py
@@ -216,7 +216,7 @@ class email_template(osv.osv):
'name': fields.char('Name'),
'model_id': fields.many2one('ir.model', 'Applies to', help="The kind of document with with this template can be used"),
'model': fields.related('model_id', 'model', type='char', string='Related Document Model',
- size=128, select=True, store=True, readonly=True),
+ select=True, store=True, readonly=True),
'lang': fields.char('Language',
help="Optional translation language (ISO code) to select when sending out an email. "
"If not set, the english version will be used. "
diff --git a/addons/email_template/tests/test_mail.py b/addons/email_template/tests/test_mail.py
index beda74d0853..f88d11ec71d 100644
--- a/addons/email_template/tests/test_mail.py
+++ b/addons/email_template/tests/test_mail.py
@@ -237,8 +237,8 @@ class test_message_compose(TestMail):
email_template.send_mail(cr, uid, email_template_id, self.group_pigs_id, force_send=True, context=context)
sent_emails = self._build_email_kwargs_list
email_to_lst = [
- ['b@b.b', 'c@c.c'], ['Administrator '],
- ['Raoul Grosbedon '], ['Bert Tartignole ']]
+ ['b@b.b', 'c@c.c'], ['"Administrator" '],
+ ['"Raoul Grosbedon" '], ['"Bert Tartignole" ']]
self.assertEqual(len(sent_emails), 4, 'email_template: send_mail: 3 valid email recipients + email_to -> should send 4 emails')
for email in sent_emails:
self.assertIn(email['email_to'], email_to_lst, 'email_template: send_mail: wrong email_recipients')
diff --git a/addons/event/event.py b/addons/event/event.py
index a31ec00b8c0..9d7e878688f 100644
--- a/addons/event/event.py
+++ b/addons/event/event.py
@@ -30,8 +30,8 @@ class event_type(osv.osv):
_name = 'event.type'
_description = __doc__
_columns = {
- 'name': fields.char('Event Type', size=64, required=True),
- 'default_reply_to': fields.char('Default Reply-To', size=64,help="The email address of the organizer which is put in the 'Reply-To' of all emails sent automatically at event or registrations confirmation. You can also put your email address of your mail gateway if you use one." ),
+ 'name': fields.char('Event Type', required=True),
+ 'default_reply_to': fields.char('Default Reply-To', size=64, help="The email address of the organizer which is put in the 'Reply-To' of all emails sent automatically at event or registrations confirmation. You can also put your email address of your mail gateway if you use one." ),
'default_email_event': fields.many2one('email.template','Event Confirmation Email', help="It will select this default confirmation event mail value when you choose this event"),
'default_email_registration': fields.many2one('email.template','Registration Confirmation Email', help="It will select this default confirmation registration mail value when you choose this event"),
'default_registration_min': fields.integer('Default Minimum Registration', help="It will select this default minimum value when you choose this event"),
@@ -174,7 +174,7 @@ class event_event(osv.osv):
return [(x, x) for x in pytz.all_timezones]
_columns = {
- 'name': fields.char('Event Name', size=64, required=True, translate=True, readonly=False, states={'done': [('readonly', True)]}),
+ 'name': fields.char('Event Name', required=True, translate=True, readonly=False, states={'done': [('readonly', True)]}),
'user_id': fields.many2one('res.users', 'Responsible User', readonly=False, states={'done': [('readonly', True)]}),
'type': fields.many2one('event.type', 'Type of Event', readonly=False, states={'done': [('readonly', True)]}),
'seats_max': fields.integer('Maximum Avalaible Seats', oldname='register_max', help="You can for each event define a maximum registration level. If you have too much registrations you are not able to confirm your event. (put 0 to ignore this rule )", readonly=True, states={'draft': [('readonly', False)]}),
@@ -299,14 +299,14 @@ class event_registration(osv.osv):
_inherit = ['mail.thread', 'ir.needaction_mixin']
_columns = {
'id': fields.integer('ID'),
- 'origin': fields.char('Source Document', size=124,readonly=True,help="Reference of the sales order which created the registration"),
+ 'origin': fields.char('Source Document', readonly=True,help="Reference of the sales order which created the registration"),
'nb_register': fields.integer('Number of Participants', required=True, readonly=True, states={'draft': [('readonly', False)]}),
'event_id': fields.many2one('event.event', 'Event', required=True, readonly=True, states={'draft': [('readonly', False)]}),
'partner_id': fields.many2one('res.partner', 'Partner', states={'done': [('readonly', True)]}),
'create_date': fields.datetime('Creation Date' , readonly=True),
'date_closed': fields.datetime('Attended Date', readonly=True),
'date_open': fields.datetime('Registration Date', readonly=True),
- 'reply_to': fields.related('event_id','reply_to',string='Reply-to Email', type='char', size=128, readonly=True,),
+ 'reply_to': fields.related('event_id','reply_to',string='Reply-to Email', type='char', readonly=True,),
'log_ids': fields.one2many('mail.message', 'res_id', 'Logs', domain=[('model','=',_name)]),
'event_end_date': fields.related('event_id','date_end', type='datetime', string="Event End Date", readonly=True),
'event_begin_date': fields.related('event_id', 'date_begin', type='datetime', string="Event Start Date", readonly=True),
@@ -316,10 +316,10 @@ class event_registration(osv.osv):
('cancel', 'Cancelled'),
('open', 'Confirmed'),
('done', 'Attended')], 'Status',
- size=16, readonly=True),
+ readonly=True),
'email': fields.char('Email', size=64),
'phone': fields.char('Phone', size=64),
- 'name': fields.char('Name', size=128, select=True),
+ 'name': fields.char('Name', select=True),
}
_defaults = {
'nb_register': 1,
diff --git a/addons/event_sale/event_sale.py b/addons/event_sale/event_sale.py
index 69ad0cb6af6..aeaee98306a 100644
--- a/addons/event_sale/event_sale.py
+++ b/addons/event_sale/event_sale.py
@@ -208,7 +208,7 @@ class event_ticket(osv.osv):
_columns = {
- 'name': fields.char('Name', size=64, required=True, translate=True),
+ 'name': fields.char('Name', required=True, translate=True),
'event_id': fields.many2one('event.event', "Event", required=True, ondelete='cascade'),
'product_id': fields.many2one('product.product', 'Product', required=True, domain=[("event_type_id", "!=", False)]),
'registration_ids': fields.one2many('event.registration', 'event_ticket_id', 'Registrations'),
diff --git a/addons/fetchmail/fetchmail.py b/addons/fetchmail/fetchmail.py
index 5f6379025ae..b4cac75b4a4 100644
--- a/addons/fetchmail/fetchmail.py
+++ b/addons/fetchmail/fetchmail.py
@@ -47,13 +47,13 @@ class fetchmail_server(osv.osv):
_order = 'priority'
_columns = {
- 'name':fields.char('Name', size=256, required=True, readonly=False),
+ 'name':fields.char('Name', required=True, readonly=False),
'active':fields.boolean('Active', required=False),
'state':fields.selection([
('draft', 'Not Confirmed'),
('done', 'Confirmed'),
], 'Status', select=True, readonly=True),
- 'server' : fields.char('Server Name', size=256, readonly=True, help="Hostname or IP of the mail server", states={'draft':[('readonly', False)]}),
+ 'server' : fields.char('Server Name', readonly=True, help="Hostname or IP of the mail server", states={'draft':[('readonly', False)]}),
'port' : fields.integer('Port', readonly=True, states={'draft':[('readonly', False)]}),
'type':fields.selection([
('pop', 'POP Server'),
@@ -66,8 +66,8 @@ class fetchmail_server(osv.osv):
'original':fields.boolean('Keep Original', help="Whether a full original copy of each email should be kept for reference"
"and attached to each processed message. This will usually double the size of your message database."),
'date': fields.datetime('Last Fetch Date', readonly=True),
- 'user' : fields.char('Username', size=256, readonly=True, states={'draft':[('readonly', False)]}),
- 'password' : fields.char('Password', size=1024, readonly=True, states={'draft':[('readonly', False)]}),
+ 'user' : fields.char('Username', readonly=True, states={'draft':[('readonly', False)]}),
+ 'password' : fields.char('Password', readonly=True, states={'draft':[('readonly', False)]}),
'action_id':fields.many2one('ir.actions.server', 'Server Action', help="Optional custom server action to trigger for each incoming mail, "
"on the record that was created or updated by this mail"),
'object_id': fields.many2one('ir.model', "Create a New Record", help="Process each incoming mail as part of a conversation "
@@ -78,7 +78,7 @@ class fetchmail_server(osv.osv):
"lower values mean higher priority"),
'message_ids': fields.one2many('mail.mail', 'fetchmail_server_id', 'Messages', readonly=True),
'configuration' : fields.text('Configuration', readonly=True),
- 'script' : fields.char('Script', readonly=True, size=64),
+ 'script' : fields.char('Script', readonly=True),
}
_defaults = {
'state': "draft",
diff --git a/addons/fleet/fleet.py b/addons/fleet/fleet.py
index 6c5f097d4d1..7dac086bb27 100644
--- a/addons/fleet/fleet.py
+++ b/addons/fleet/fleet.py
@@ -145,7 +145,7 @@ class fleet_vehicle_model(osv.Model):
_columns = {
'name': fields.function(_model_name_get_fnc, type="char", string='Name', store=True),
- 'modelname': fields.char('Model name', size=32, required=True),
+ 'modelname': fields.char('Model name', required=True),
'brand_id': fields.many2one('fleet.vehicle.model.brand', 'Model Brand', required=True, help='Brand of the vehicle'),
'vendors': fields.many2many('res.partner', 'fleet_vehicle_model_vendors', 'model_id', 'partner_id', string='Vendors'),
'image': fields.related('brand_id', 'image', type="binary", string="Logo"),
@@ -170,7 +170,7 @@ class fleet_vehicle_model_brand(osv.Model):
return self.write(cr, uid, [id], {'image': tools.image_resize_image_big(value)}, context=context)
_columns = {
- 'name': fields.char('Brand Name', size=64, required=True),
+ 'name': fields.char('Brand Name', required=True),
'image': fields.binary("Logo",
help="This field holds the image used as logo for the brand, limited to 1024x1024px."),
'image_medium': fields.function(_get_image, fnct_inv=_set_image,
@@ -337,8 +337,8 @@ class fleet_vehicle(osv.Model):
_columns = {
'name': fields.function(_vehicle_name_get_fnc, type="char", string='Name', store=True),
'company_id': fields.many2one('res.company', 'Company'),
- 'license_plate': fields.char('License Plate', size=32, required=True, help='License plate number of the vehicle (ie: plate number for a car)'),
- 'vin_sn': fields.char('Chassis Number', size=32, help='Unique number written on the vehicle motor (VIN/SN number)'),
+ 'license_plate': fields.char('License Plate', required=True, help='License plate number of the vehicle (ie: plate number for a car)'),
+ 'vin_sn': fields.char('Chassis Number', help='Unique number written on the vehicle motor (VIN/SN number)'),
'driver_id': fields.many2one('res.partner', 'Driver', help='Driver of the vehicle'),
'model_id': fields.many2one('fleet.vehicle.model', 'Model', required=True, help='Model of the vehicle'),
'log_fuel': fields.one2many('fleet.vehicle.log.fuel', 'vehicle_id', 'Fuel Logs'),
@@ -350,9 +350,9 @@ class fleet_vehicle(osv.Model):
'fuel_logs_count': fields.function(_count_all, type='integer', string='Fuel Logs', multi=True),
'odometer_count': fields.function(_count_all, type='integer', string='Odometer', multi=True),
'acquisition_date': fields.date('Acquisition Date', required=False, help='Date when the vehicle has been bought'),
- 'color': fields.char('Color', size=32, help='Color of the vehicle'),
+ 'color': fields.char('Color', help='Color of the vehicle'),
'state_id': fields.many2one('fleet.vehicle.state', 'State', help='Current state of the vehicle', ondelete="set null"),
- 'location': fields.char('Location', size=128, help='Location of the vehicle (garage, ...)'),
+ 'location': fields.char('Location', help='Location of the vehicle (garage, ...)'),
'seats': fields.integer('Seats Number', help='Number of seats of the vehicle'),
'doors': fields.integer('Doors Number', help='Number of doors of the vehicle'),
'tag_ids' :fields.many2many('fleet.vehicle.tag', 'fleet_vehicle_vehicle_tag_rel', 'vehicle_tag_id','tag_id', 'Tags'),
@@ -607,7 +607,7 @@ class fleet_vehicle_log_services(osv.Model):
_description = 'Services for vehicles'
_columns = {
'purchaser_id': fields.many2one('res.partner', 'Purchaser', domain="['|',('customer','=',True),('employee','=',True)]"),
- 'inv_ref': fields.char('Invoice Reference', size=64),
+ 'inv_ref': fields.char('Invoice Reference'),
'vendor_id': fields.many2one('res.partner', 'Supplier', domain="[('supplier','=',True)]"),
'cost_amount': fields.related('cost_id', 'amount', string='Amount', type='float', store=True), #we need to keep this field as a related with store=True because the graph view doesn't support (1) to address fields from inherited table and (2) fields that aren't stored in database
'notes': fields.text('Notes'),
@@ -847,5 +847,5 @@ class fleet_contract_state(osv.Model):
_description = 'Contains the different possible status of a leasing contract'
_columns = {
- 'name':fields.char('Contract Status', size=64, required=True),
+ 'name':fields.char('Contract Status', required=True),
}
diff --git a/addons/gamification/models/badge.py b/addons/gamification/models/badge.py
index 74a85c1cf02..fc6dc4179c8 100644
--- a/addons/gamification/models/badge.py
+++ b/addons/gamification/models/badge.py
@@ -280,4 +280,4 @@ class gamification_badge(osv.Model):
'badge_id': res_id,
}
badge_user_obj.create(cr, SUPERUSER_ID, values, context=context)
- return True
\ No newline at end of file
+ return True
diff --git a/addons/google_account/google_account.py b/addons/google_account/google_account.py
index 7ffa4f95f48..4968925bd29 100644
--- a/addons/google_account/google_account.py
+++ b/addons/google_account/google_account.py
@@ -174,10 +174,10 @@ class google_service(osv.osv_memory):
return self.pool.get('ir.config_parameter').get_param(cr, uid, 'web.base.url', default='http://www.openerp.com?NoBaseUrl', context=context)
def get_client_id(self, cr, uid, service, context=None):
- return self.pool.get('ir.config_parameter').get_param(cr, uid, 'google_%s_client_id' % (service,), default=False, context=context)
+ return self.pool.get('ir.config_parameter').get_param(cr, SUPERUSER_ID, 'google_%s_client_id' % (service,), default=False, context=context)
def get_client_secret(self, cr, uid, service, context=None):
- return self.pool.get('ir.config_parameter').get_param(cr, uid, 'google_%s_client_secret' % (service,), default=False, context=context)
+ return self.pool.get('ir.config_parameter').get_param(cr, SUPERUSER_ID, 'google_%s_client_secret' % (service,), default=False, context=context)
def get_uri_oauth(self, a=''): # a = optional action
return "https://accounts.google.com/o/oauth2/%s" % (a,)
diff --git a/addons/google_calendar/res_config.py b/addons/google_calendar/res_config.py
index 78b2a4b6803..ec0f2e4d95b 100644
--- a/addons/google_calendar/res_config.py
+++ b/addons/google_calendar/res_config.py
@@ -13,8 +13,8 @@ class calendar_config_settings(osv.TransientModel):
def set_calset(self,cr,uid,ids,context=None) :
params = self.pool['ir.config_parameter']
myself = self.browse(cr,uid,ids[0],context=context)
- params.set_param(cr, uid, 'google_calendar_client_id', myself.cal_client_id or '', context=None)
- params.set_param(cr, uid, 'google_calendar_client_secret', myself.cal_client_secret or '', context=None)
+ params.set_param(cr, uid, 'google_calendar_client_id', myself.cal_client_id or '', groups=['base.group_system'], context=None)
+ params.set_param(cr, uid, 'google_calendar_client_secret', myself.cal_client_secret or '', groups=['base.group_system'], context=None)
def get_default_all(self,cr,uid,ids,context=None):
diff --git a/addons/google_drive/google_drive.py b/addons/google_drive/google_drive.py
index 81e1a49b785..cd8fc486a89 100644
--- a/addons/google_drive/google_drive.py
+++ b/addons/google_drive/google_drive.py
@@ -192,14 +192,14 @@ class config(osv.Model):
return result
_columns = {
- 'name': fields.char('Template Name', required=True, size=1024),
+ 'name': fields.char('Template Name', required=True),
'model_id': fields.many2one('ir.model', 'Model', ondelete='set null', required=True),
'model': fields.related('model_id', 'model', type='char', string='Model', readonly=True),
'filter_id': fields.many2one('ir.filters', 'Filter', domain="[('model_id', '=', model)]"),
'google_drive_template_url': fields.char('Template URL', required=True, size=1024),
'google_drive_resource_id': fields.function(_resource_get, type="char", string='Resource Id'),
'google_drive_client_id': fields.function(_client_id_get, type="char", string='Google Client '),
- 'name_template': fields.char('Google Drive Name Pattern', size=64, help='Choose how the new google drive will be named, on google side. Eg. gdoc_%(field_name)s', required=True),
+ 'name_template': fields.char('Google Drive Name Pattern', help='Choose how the new google drive will be named, on google side. Eg. gdoc_%(field_name)s', required=True),
'active': fields.boolean('Active'),
}
@@ -235,12 +235,12 @@ class base_config_settings(osv.TransientModel):
_inherit = "base.config.settings"
_columns = {
- 'google_drive_authorization_code': fields.char('Authorization Code', size=124),
+ 'google_drive_authorization_code': fields.char('Authorization Code'),
'google_drive_uri': fields.char('URI', readonly=True, help="The URL to generate the authorization code from Google"),
}
_defaults = {
'google_drive_uri': lambda s, cr, uid, c: s.pool['google.service']._get_google_token_uri(cr, uid, 'drive', scope=s.pool['google.drive.config'].get_google_scope(), context=c),
- 'google_drive_authorization_code': lambda s, cr, uid, c: s.pool['ir.config_parameter'].get_param(cr, uid, 'google_drive_authorization_code', context=c),
+ 'google_drive_authorization_code': lambda s, cr, uid, c: s.pool['ir.config_parameter'].get_param(cr, SUPERUSER_ID, 'google_drive_authorization_code', context=c),
}
def set_google_authorization_code(self, cr, uid, ids, context=None):
@@ -249,5 +249,5 @@ class base_config_settings(osv.TransientModel):
auth_code = config.google_drive_authorization_code
if auth_code and auth_code != ir_config_param.get_param(cr, uid, 'google_drive_authorization_code', context=context):
refresh_token = self.pool['google.service'].generate_refresh_token(cr, uid, 'drive', config.google_drive_authorization_code, context=context)
- ir_config_param.set_param(cr, uid, 'google_drive_authorization_code', auth_code)
- ir_config_param.set_param(cr, uid, 'google_drive_refresh_token', refresh_token)
+ ir_config_param.set_param(cr, uid, 'google_drive_authorization_code', auth_code, groups=['base.group_system'])
+ ir_config_param.set_param(cr, uid, 'google_drive_refresh_token', refresh_token, groups=['base.group_system'])
diff --git a/addons/google_drive/google_drive_data.xml b/addons/google_drive/google_drive_data.xml
index b1f9883c149..f3f916b201b 100644
--- a/addons/google_drive/google_drive_data.xml
+++ b/addons/google_drive/google_drive_data.xml
@@ -5,11 +5,13 @@
google_drive_client_id
598905559630.apps.googleusercontent.com
+
google_drive_client_secret
vTmou73c-njP-1qCxm7qx7QE
+
diff --git a/addons/hr/hr.py b/addons/hr/hr.py
index f4719f572f0..a0016de87a2 100644
--- a/addons/hr/hr.py
+++ b/addons/hr/hr.py
@@ -51,7 +51,7 @@ class hr_employee_category(osv.Model):
_name = "hr.employee.category"
_description = "Employee Category"
_columns = {
- 'name': fields.char("Employee Tag", size=64, required=True),
+ 'name': fields.char("Employee Tag", required=True),
'complete_name': fields.function(_name_get_fnc, type="char", string='Name'),
'parent_id': fields.many2one('hr.employee.category', 'Parent Employee Tag', select=True),
'child_ids': fields.one2many('hr.employee.category', 'parent_id', 'Child Categories'),
@@ -96,7 +96,7 @@ class hr_job(osv.Model):
_description = "Job Position"
_inherit = ['mail.thread', 'ir.needaction_mixin']
_columns = {
- 'name': fields.char('Job Name', size=128, required=True, select=True),
+ 'name': fields.char('Job Name', required=True, select=True),
'expected_employees': fields.function(_get_nbr_employees, string='Total Forecasted Employees',
help='Expected number of employees for this job position after new recruitment.',
store = {
@@ -192,20 +192,20 @@ class hr_employee(osv.osv):
'name_related': fields.related('resource_id', 'name', type='char', string='Name', readonly=True, store=True),
'country_id': fields.many2one('res.country', 'Nationality'),
'birthday': fields.date("Date of Birth"),
- 'ssnid': fields.char('SSN No', size=32, help='Social Security Number'),
- 'sinid': fields.char('SIN No', size=32, help="Social Insurance Number"),
- 'identification_id': fields.char('Identification No', size=32),
- 'otherid': fields.char('Other Id', size=64),
+ 'ssnid': fields.char('SSN No', help='Social Security Number'),
+ 'sinid': fields.char('SIN No', help="Social Insurance Number"),
+ 'identification_id': fields.char('Identification No'),
+ 'otherid': fields.char('Other Id'),
'gender': fields.selection([('male', 'Male'), ('female', 'Female')], 'Gender'),
'marital': fields.selection([('single', 'Single'), ('married', 'Married'), ('widower', 'Widower'), ('divorced', 'Divorced')], 'Marital Status'),
'department_id': fields.many2one('hr.department', 'Department'),
'address_id': fields.many2one('res.partner', 'Working Address'),
'address_home_id': fields.many2one('res.partner', 'Home Address'),
'bank_account_id': fields.many2one('res.partner.bank', 'Bank Account Number', domain="[('partner_id','=',address_home_id)]", help="Employee bank salary account"),
- 'work_phone': fields.char('Work Phone', size=32, readonly=False),
- 'mobile_phone': fields.char('Work Mobile', size=32, readonly=False),
+ 'work_phone': fields.char('Work Phone', readonly=False),
+ 'mobile_phone': fields.char('Work Mobile', readonly=False),
'work_email': fields.char('Work Email', size=240),
- 'work_location': fields.char('Office Location', size=32),
+ 'work_location': fields.char('Office Location'),
'notes': fields.text('Notes'),
'parent_id': fields.many2one('hr.employee', 'Manager'),
'category_ids': fields.many2many('hr.employee.category', 'employee_category_rel', 'emp_id', 'category_id', 'Tags'),
@@ -232,7 +232,7 @@ class hr_employee(osv.osv):
help="Small-sized photo of the employee. It is automatically "\
"resized as a 64x64px image, with aspect ratio preserved. "\
"Use this field anywhere a small image is required."),
- 'passport_id': fields.char('Passport No', size=64),
+ 'passport_id': fields.char('Passport No'),
'color': fields.integer('Color Index'),
'city': fields.related('address_id', 'city', type='char', string='City'),
'login': fields.related('user_id', 'login', type='char', string='Login', readonly=1),
@@ -384,7 +384,7 @@ class hr_department(osv.osv):
_name = "hr.department"
_columns = {
- 'name': fields.char('Department Name', size=64, required=True),
+ 'name': fields.char('Department Name', required=True),
'complete_name': fields.function(_dept_name_get_fnc, type="char", string='Name'),
'company_id': fields.many2one('res.company', 'Company', select=True, required=False),
'parent_id': fields.many2one('hr.department', 'Parent Department', select=True),
diff --git a/addons/hr_applicant_document/views/hr_applicant.xml b/addons/hr_applicant_document/views/hr_applicant.xml
index 706a1b4c754..71607014c85 100644
--- a/addons/hr_applicant_document/views/hr_applicant.xml
+++ b/addons/hr_applicant_document/views/hr_applicant.xml
@@ -16,8 +16,9 @@
Resumes and Letters
ir.attachment
- tree,form
-
+ form
+ kanban,tree,form
+
[('res_model','=','hr.applicant')]
diff --git a/addons/hr_attendance/hr_attendance.py b/addons/hr_attendance/hr_attendance.py
index 5495ebe4d25..a7950fef8d0 100644
--- a/addons/hr_attendance/hr_attendance.py
+++ b/addons/hr_attendance/hr_attendance.py
@@ -30,7 +30,7 @@ class hr_action_reason(osv.osv):
_name = "hr.action.reason"
_description = "Action Reason"
_columns = {
- 'name': fields.char('Reason', size=64, required=True, help='Specifies the reason for Signing In/Signing Out.'),
+ 'name': fields.char('Reason', required=True, help='Specifies the reason for Signing In/Signing Out.'),
'action_type': fields.selection([('sign_in', 'Sign in'), ('sign_out', 'Sign out')], "Action Type"),
}
_defaults = {
diff --git a/addons/hr_attendance/static/src/css/attendance.css b/addons/hr_attendance/static/src/css/attendance.css
new file mode 100644
index 00000000000..2346e2b3a2d
--- /dev/null
+++ b/addons/hr_attendance/static/src/css/attendance.css
@@ -0,0 +1,3 @@
+.oe_systray #oe_attendance_sign_in_out_icon {
+ font-color: white;
+}
\ No newline at end of file
diff --git a/addons/hr_attendance/static/src/css/slider.css b/addons/hr_attendance/static/src/css/slider.css
deleted file mode 100644
index 849cd33a894..00000000000
--- a/addons/hr_attendance/static/src/css/slider.css
+++ /dev/null
@@ -1,33 +0,0 @@
-
-.openerp .oe_attendance_status {
- height: 32px;
- width: 32px;
- display: inline-block;
-}
-.openerp .oe_attendance_signin {
- float: right;
- height: 32px;
- width: 32px;
- background: url(/hr_attendance/static/src/img/emp-out32.png);
- cursor: pointer;
-}
-.openerp .oe_attendance_signin:hover {
- background: url(/hr_attendance/static/src/img/emp-out-disable32.png);
-}
-.openerp .oe_attendance_status.oe_attendance_signed .oe_attendance_signin {
- display: none;
-}
-
-.openerp .oe_attendance_signout {
- float:right;
- height: 32px;
- width: 32px;
- background: url(/hr_attendance/static/src/img/emp-in32.png);
- cursor: pointer;
-}
-.openerp .oe_attendance_signout:hover {
- background: url(/hr_attendance/static/src/img/emp-in-disable32.png);
-}
-.openerp .oe_attendance_status.oe_attendance_nosigned .oe_attendance_signout {
- display: none;
-}
diff --git a/addons/hr_attendance/static/src/img/emp-in-disable32.png b/addons/hr_attendance/static/src/img/emp-in-disable32.png
deleted file mode 100644
index 1968e0de464..00000000000
Binary files a/addons/hr_attendance/static/src/img/emp-in-disable32.png and /dev/null differ
diff --git a/addons/hr_attendance/static/src/img/emp-in32.png b/addons/hr_attendance/static/src/img/emp-in32.png
deleted file mode 100644
index 26e3c01556b..00000000000
Binary files a/addons/hr_attendance/static/src/img/emp-in32.png and /dev/null differ
diff --git a/addons/hr_attendance/static/src/img/emp-out-disable32.png b/addons/hr_attendance/static/src/img/emp-out-disable32.png
deleted file mode 100644
index b7099e44529..00000000000
Binary files a/addons/hr_attendance/static/src/img/emp-out-disable32.png and /dev/null differ
diff --git a/addons/hr_attendance/static/src/img/emp-out32.png b/addons/hr_attendance/static/src/img/emp-out32.png
deleted file mode 100644
index d2a6cbb5013..00000000000
Binary files a/addons/hr_attendance/static/src/img/emp-out32.png and /dev/null differ
diff --git a/addons/hr_attendance/static/src/js/attendance.js b/addons/hr_attendance/static/src/js/attendance.js
index 143e3dd163d..692fdc33f50 100644
--- a/addons/hr_attendance/static/src/js/attendance.js
+++ b/addons/hr_attendance/static/src/js/attendance.js
@@ -14,15 +14,14 @@ openerp.hr_attendance = function (instance) {
start: function() {
var self = this;
var tmp = function() {
- this.$el.toggleClass("oe_attendance_nosigned", ! this.get("signed_in"));
- this.$el.toggleClass("oe_attendance_signed", this.get("signed_in"));
+ var $sign_in_out_icon = this.$('#oe_attendance_sign_in_out_icon');
+ $sign_in_out_icon.toggleClass("fa-sign-in", ! this.get("signed_in"));
+ $sign_in_out_icon.toggleClass("fa-sign-out", this.get("signed_in"));
};
this.on("change:signed_in", this, tmp);
_.bind(tmp, this)();
- this.$(".oe_attendance_signin").click(function() {
- self.do_update_attendance();
- });
- this.$(".oe_attendance_signout").click(function() {
+ this.$(".oe_attendance_sign_in_out").click(function(ev) {
+ ev.preventDefault();
self.do_update_attendance();
});
this.$el.tooltip({
diff --git a/addons/hr_attendance/static/src/xml/attendance.xml b/addons/hr_attendance/static/src/xml/attendance.xml
index 2e71e1195aa..bed10677d2c 100644
--- a/addons/hr_attendance/static/src/xml/attendance.xml
+++ b/addons/hr_attendance/static/src/xml/attendance.xml
@@ -1,13 +1,9 @@
-
+
+
+
+
+
-
-
-
-
-
diff --git a/addons/hr_attendance/views/hr_attendance.xml b/addons/hr_attendance/views/hr_attendance.xml
index f481ec29053..9f229b92abb 100644
--- a/addons/hr_attendance/views/hr_attendance.xml
+++ b/addons/hr_attendance/views/hr_attendance.xml
@@ -5,8 +5,8 @@
-
+
diff --git a/addons/hr_contract/hr_contract.py b/addons/hr_contract/hr_contract.py
index 798ee46832d..8b58c3efd61 100644
--- a/addons/hr_contract/hr_contract.py
+++ b/addons/hr_contract/hr_contract.py
@@ -48,9 +48,9 @@ class hr_employee(osv.osv):
_columns = {
'manager': fields.boolean('Is a Manager'),
'medic_exam': fields.date('Medical Examination Date'),
- 'place_of_birth': fields.char('Place of Birth', size=30),
+ 'place_of_birth': fields.char('Place of Birth'),
'children': fields.integer('Number of Children'),
- 'vehicle': fields.char('Company Vehicle', size=64),
+ 'vehicle': fields.char('Company Vehicle'),
'vehicle_distance': fields.integer('Home-Work Dist.', help="In kilometers"),
'contract_ids': fields.one2many('hr.contract', 'employee_id', 'Contracts'),
'contract_id':fields.function(_get_latest_contract, string='Contract', type='many2one', relation="hr.contract", help='Latest contract of the employee'),
@@ -62,14 +62,14 @@ class hr_contract_type(osv.osv):
_name = 'hr.contract.type'
_description = 'Contract Type'
_columns = {
- 'name': fields.char('Contract Type', size=32, required=True),
+ 'name': fields.char('Contract Type', required=True),
}
class hr_contract(osv.osv):
_name = 'hr.contract'
_description = 'Contract'
_columns = {
- 'name': fields.char('Contract Reference', size=64, required=True),
+ 'name': fields.char('Contract Reference', required=True),
'employee_id': fields.many2one('hr.employee', "Employee", required=True),
'department_id': fields.related('employee_id','department_id', type='many2one', relation='hr.department', string="Department", readonly=True),
'type_id': fields.many2one('hr.contract.type', "Contract Type", required=True),
@@ -82,8 +82,8 @@ class hr_contract(osv.osv):
'wage': fields.float('Wage', digits=(16,2), required=True, help="Basic Salary of the employee"),
'advantages': fields.text('Advantages'),
'notes': fields.text('Notes'),
- 'permit_no': fields.char('Work Permit No', size=256, required=False, readonly=False),
- 'visa_no': fields.char('Visa No', size=64, required=False, readonly=False),
+ 'permit_no': fields.char('Work Permit No', required=False, readonly=False),
+ 'visa_no': fields.char('Visa No', required=False, readonly=False),
'visa_expire': fields.date('Visa Expire Date'),
}
diff --git a/addons/hr_evaluation/hr_evaluation.py b/addons/hr_evaluation/hr_evaluation.py
index b52802cd297..8c054f05726 100644
--- a/addons/hr_evaluation/hr_evaluation.py
+++ b/addons/hr_evaluation/hr_evaluation.py
@@ -33,7 +33,7 @@ class hr_evaluation_plan(osv.Model):
_name = "hr_evaluation.plan"
_description = "Appraisal Plan"
_columns = {
- 'name': fields.char("Appraisal Plan", size=64, required=True),
+ 'name': fields.char("Appraisal Plan", required=True),
'company_id': fields.many2one('res.company', 'Company', required=True),
'phase_ids': fields.one2many('hr_evaluation.plan.phase', 'plan_id', 'Appraisal Phases'),
'month_first': fields.integer('First Appraisal in (months)', help="This number of months will be used to schedule the first evaluation date of the employee when selecting an evaluation plan. "),
diff --git a/addons/hr_expense/hr_expense.py b/addons/hr_expense/hr_expense.py
index 0129e5d5511..d134c0d5102 100644
--- a/addons/hr_expense/hr_expense.py
+++ b/addons/hr_expense/hr_expense.py
@@ -65,7 +65,7 @@ class hr_expense_expense(osv.osv):
}
_columns = {
- 'name': fields.char('Description', size=128, required=True, readonly=True, states={'draft':[('readonly',False)], 'confirm':[('readonly',False)]}),
+ 'name': fields.char('Description', required=True, readonly=True, states={'draft':[('readonly',False)], 'confirm':[('readonly',False)]}),
'id': fields.integer('Sheet ID', readonly=True),
'date': fields.date('Date', select=True, readonly=True, states={'draft':[('readonly',False)], 'confirm':[('readonly',False)]}),
'journal_id': fields.many2one('account.journal', 'Force Journal', help = "The journal used when the expense is done."),
@@ -415,7 +415,7 @@ class hr_expense_line(osv.osv):
return result and result[1] or False
_columns = {
- 'name': fields.char('Expense Note', size=128, required=True),
+ 'name': fields.char('Expense Note', required=True),
'date_value': fields.date('Date', required=True),
'expense_id': fields.many2one('hr.expense.expense', 'Expense', ondelete='cascade', select=True),
'total_amount': fields.function(_amount, string='Total', digits_compute=dp.get_precision('Account')),
@@ -425,7 +425,7 @@ class hr_expense_line(osv.osv):
'uom_id': fields.many2one('product.uom', 'Unit of Measure', required=True),
'description': fields.text('Description'),
'analytic_account': fields.many2one('account.analytic.account','Analytic account'),
- 'ref': fields.char('Reference', size=32),
+ 'ref': fields.char('Reference'),
'sequence': fields.integer('Sequence', select=True, help="Gives the sequence order when displaying a list of expense lines."),
}
_defaults = {
diff --git a/addons/hr_expense/report/hr_expense_report.py b/addons/hr_expense/report/hr_expense_report.py
index b29605a8e31..667d9fba07d 100644
--- a/addons/hr_expense/report/hr_expense_report.py
+++ b/addons/hr_expense/report/hr_expense_report.py
@@ -36,7 +36,7 @@ class hr_expense_report(osv.osv):
'day': fields.char('Day', size=128, readonly=True),
'month':fields.selection([('01','January'), ('02','February'), ('03','March'), ('04','April'),
('05','May'), ('06','June'), ('07','July'), ('08','August'), ('09','September'),
- ('10','October'), ('11','November'), ('12','December')], 'Month',readonly=True),
+ ('10','October'), ('11','November'), ('12','December')], 'Month', readonly=True),
'product_id':fields.many2one('product.product', 'Product', readonly=True),
'journal_id': fields.many2one('account.journal', 'Force Journal', readonly=True),
'product_qty':fields.float('Qty', readonly=True),
diff --git a/addons/hr_holidays/report/hr_holidays_report.py b/addons/hr_holidays/report/hr_holidays_report.py
index 0e5d6fe773c..4f1d260a38f 100644
--- a/addons/hr_holidays/report/hr_holidays_report.py
+++ b/addons/hr_holidays/report/hr_holidays_report.py
@@ -27,10 +27,10 @@ class hr_holidays_remaining_leaves_user(osv.osv):
_description = "Total holidays by type"
_auto = False
_columns = {
- 'name': fields.char('Employee', size=64),
+ 'name': fields.char('Employee'),
'no_of_leaves': fields.integer('Remaining leaves'),
'user_id': fields.many2one('res.users', 'User'),
- 'leave_type': fields.char('Leave Type', size=64),
+ 'leave_type': fields.char('Leave Type'),
}
def init(self, cr):
diff --git a/addons/hr_payroll/hr_payroll.py b/addons/hr_payroll/hr_payroll.py
index 1a34758fb50..37b7e9eed3e 100644
--- a/addons/hr_payroll/hr_payroll.py
+++ b/addons/hr_payroll/hr_payroll.py
@@ -44,7 +44,7 @@ class hr_payroll_structure(osv.osv):
_name = 'hr.payroll.structure'
_description = 'Salary Structure'
_columns = {
- 'name':fields.char('Name', size=256, required=True),
+ 'name':fields.char('Name', required=True),
'code':fields.char('Reference', size=64, required=True),
'company_id':fields.many2one('res.company', 'Company', required=True),
'note': fields.text('Description'),
@@ -160,7 +160,7 @@ class contrib_register(osv.osv):
_columns = {
'company_id':fields.many2one('res.company', 'Company'),
'partner_id':fields.many2one('res.partner', 'Partner'),
- 'name':fields.char('Name', size=256, required=True, readonly=False),
+ 'name':fields.char('Name', required=True, readonly=False),
'register_line_ids':fields.one2many('hr.payslip.line', 'register_id', 'Register Line', readonly=True),
'note': fields.text('Description'),
}
@@ -179,7 +179,7 @@ class hr_salary_rule_category(osv.osv):
_name = 'hr.salary.rule.category'
_description = 'Salary Rule Category'
_columns = {
- 'name':fields.char('Name', size=64, required=True, readonly=False),
+ 'name':fields.char('Name', required=True, readonly=False),
'code':fields.char('Code', size=64, required=True, readonly=False),
'parent_id':fields.many2one('hr.salary.rule.category', 'Parent', help="Linking a salary category to its parent is used only for the reporting purpose."),
'children_ids': fields.one2many('hr.salary.rule.category', 'parent_id', 'Children'),
@@ -214,7 +214,7 @@ class hr_payslip_run(osv.osv):
_name = 'hr.payslip.run'
_description = 'Payslip Batches'
_columns = {
- 'name': fields.char('Name', size=64, required=True, readonly=True, states={'draft': [('readonly', False)]}),
+ 'name': fields.char('Name', required=True, readonly=True, states={'draft': [('readonly', False)]}),
'slip_ids': fields.one2many('hr.payslip', 'payslip_run_id', 'Payslips', required=False, readonly=True, states={'draft': [('readonly', False)]}),
'state': fields.selection([
('draft', 'Draft'),
@@ -267,8 +267,8 @@ class hr_payslip(osv.osv):
_columns = {
'struct_id': fields.many2one('hr.payroll.structure', 'Structure', readonly=True, states={'draft': [('readonly', False)]}, help='Defines the rules that have to be applied to this payslip, accordingly to the contract chosen. If you let empty the field contract, this field isn\'t mandatory anymore and thus the rules applied will be all the rules set on the structure of all contracts of the employee valid for the chosen period'),
- 'name': fields.char('Payslip Name', size=64, required=False, readonly=True, states={'draft': [('readonly', False)]}),
- 'number': fields.char('Reference', size=64, required=False, readonly=True, states={'draft': [('readonly', False)]}),
+ 'name': fields.char('Payslip Name', required=False, readonly=True, states={'draft': [('readonly', False)]}),
+ 'number': fields.char('Reference', required=False, readonly=True, states={'draft': [('readonly', False)]}),
'employee_id': fields.many2one('hr.employee', 'Employee', required=True, readonly=True, states={'draft': [('readonly', False)]}),
'date_from': fields.date('Date From', readonly=True, states={'draft': [('readonly', False)]}, required=True),
'date_to': fields.date('Date To', readonly=True, states={'draft': [('readonly', False)]}, required=True),
@@ -731,7 +731,7 @@ class hr_payslip_worked_days(osv.osv):
_name = 'hr.payslip.worked_days'
_description = 'Payslip Worked Days'
_columns = {
- 'name': fields.char('Description', size=256, required=True),
+ 'name': fields.char('Description', required=True),
'payslip_id': fields.many2one('hr.payslip', 'Pay Slip', required=True, ondelete='cascade', select=True),
'sequence': fields.integer('Sequence', required=True, select=True),
'code': fields.char('Code', size=52, required=True, help="The code that can be used in the salary rules"),
@@ -752,7 +752,7 @@ class hr_payslip_input(osv.osv):
_name = 'hr.payslip.input'
_description = 'Payslip Input'
_columns = {
- 'name': fields.char('Description', size=256, required=True),
+ 'name': fields.char('Description', required=True),
'payslip_id': fields.many2one('hr.payslip', 'Pay Slip', required=True, ondelete='cascade', select=True),
'sequence': fields.integer('Sequence', required=True, select=True),
'code': fields.char('Code', size=52, required=True, help="The code that can be used in the salary rules"),
@@ -770,17 +770,17 @@ class hr_salary_rule(osv.osv):
_name = 'hr.salary.rule'
_columns = {
- 'name':fields.char('Name', size=256, required=True, readonly=False),
+ 'name':fields.char('Name', required=True, readonly=False),
'code':fields.char('Code', size=64, required=True, help="The code of salary rules can be used as reference in computation of other rules. In that case, it is case sensitive."),
'sequence': fields.integer('Sequence', required=True, help='Use to arrange calculation sequence', select=True),
- 'quantity': fields.char('Quantity', size=256, help="It is used in computation for percentage and fixed amount.For e.g. A rule for Meal Voucher having fixed amount of 1€ per worked day can have its quantity defined in expression like worked_days.WORK100.number_of_days."),
+ 'quantity': fields.char('Quantity', help="It is used in computation for percentage and fixed amount.For e.g. A rule for Meal Voucher having fixed amount of 1€ per worked day can have its quantity defined in expression like worked_days.WORK100.number_of_days."),
'category_id':fields.many2one('hr.salary.rule.category', 'Category', required=True),
'active':fields.boolean('Active', help="If the active field is set to false, it will allow you to hide the salary rule without removing it."),
'appears_on_payslip': fields.boolean('Appears on Payslip', help="Used to display the salary rule on payslip."),
'parent_rule_id':fields.many2one('hr.salary.rule', 'Parent Salary Rule', select=True),
'company_id':fields.many2one('res.company', 'Company', required=False),
'condition_select': fields.selection([('none', 'Always True'),('range', 'Range'), ('python', 'Python Expression')], "Condition Based on", required=True),
- 'condition_range':fields.char('Range Based on',size=1024, readonly=False, help='This will be used to compute the % fields values; in general it is on basic, but you can also use categories code fields in lowercase as a variable names (hra, ma, lta, etc.) and the variable basic.'),
+ 'condition_range':fields.char('Range Based on', readonly=False, help='This will be used to compute the % fields values; in general it is on basic, but you can also use categories code fields in lowercase as a variable names (hra, ma, lta, etc.) and the variable basic.'),
'condition_python':fields.text('Python Condition', required=True, readonly=False, help='Applied this rule for calculation if condition is true. You can specify condition like basic > 1000.'),
'condition_range_min': fields.float('Minimum Range', required=False, help="The minimum amount, applied for this rule."),
'condition_range_max': fields.float('Maximum Range', required=False, help="The maximum amount, applied for this rule."),
@@ -792,7 +792,7 @@ class hr_salary_rule(osv.osv):
'amount_fix': fields.float('Fixed Amount', digits_compute=dp.get_precision('Payroll'),),
'amount_percentage': fields.float('Percentage (%)', digits_compute=dp.get_precision('Payroll Rate'), help='For example, enter 50.0 to apply a percentage of 50%'),
'amount_python_compute':fields.text('Python Code'),
- 'amount_percentage_base':fields.char('Percentage based on',size=1024, required=False, readonly=False, help='result will be affected to a variable'),
+ 'amount_percentage_base':fields.char('Percentage based on', required=False, readonly=False, help='result will be affected to a variable'),
'child_ids':fields.one2many('hr.salary.rule', 'parent_rule_id', 'Child Salary Rule'),
'register_id':fields.many2one('hr.contribution.register', 'Contribution Register', help="Eventual third party involved in the salary payment of the employees."),
'input_ids': fields.one2many('hr.rule.input', 'input_id', 'Inputs'),
@@ -911,7 +911,7 @@ class hr_rule_input(osv.osv):
_name = 'hr.rule.input'
_description = 'Salary Rule Input'
_columns = {
- 'name': fields.char('Description', size=256, required=True),
+ 'name': fields.char('Description', required=True),
'code': fields.char('Code', size=52, required=True, help="The code that can be used in the salary rules"),
'input_id': fields.many2one('hr.salary.rule', 'Salary Rule Input', required=True)
}
diff --git a/addons/hr_recruitment/hr_recruitment.py b/addons/hr_recruitment/hr_recruitment.py
index 775b84756ce..832e2ad9e0e 100644
--- a/addons/hr_recruitment/hr_recruitment.py
+++ b/addons/hr_recruitment/hr_recruitment.py
@@ -20,6 +20,8 @@
##############################################################################
from datetime import datetime
+
+from openerp import SUPERUSER_ID
from openerp.osv import fields, osv
from openerp.tools.translate import _
@@ -37,7 +39,7 @@ class hr_recruitment_source(osv.osv):
_name = "hr.recruitment.source"
_description = "Source of Applicants"
_columns = {
- 'name': fields.char('Source Name', size=64, required=True, translate=True),
+ 'name': fields.char('Source Name', required=True, translate=True),
}
class hr_recruitment_stage(osv.osv):
@@ -46,7 +48,7 @@ class hr_recruitment_stage(osv.osv):
_description = "Stage of Recruitment"
_order = 'sequence'
_columns = {
- 'name': fields.char('Name', size=64, required=True, translate=True),
+ 'name': fields.char('Name', required=True, translate=True),
'sequence': fields.integer('Sequence', help="Gives the sequence order when displaying a list of stages."),
'department_id':fields.many2one('hr.department', 'Specific to a Department', help="Stages of the recruitment process may be different per department. If this stage is common to all departments, keep this field empty."),
'requirements': fields.text('Requirements'),
@@ -64,7 +66,7 @@ class hr_recruitment_degree(osv.osv):
_name = "hr.recruitment.degree"
_description = "Degree of Recruitment"
_columns = {
- 'name': fields.char('Name', size=64, required=True, translate=True),
+ 'name': fields.char('Name', required=True, translate=True),
'sequence': fields.integer('Sequence', help="Gives the sequence order when displaying a list of degrees."),
}
_defaults = {
@@ -188,7 +190,7 @@ class hr_applicant(osv.Model):
return res
_columns = {
- 'name': fields.char('Subject / Application Name', size=128, required=True),
+ 'name': fields.char('Subject / Application Name', required=True),
'active': fields.boolean('Active', help="If the active field is set to false, it will allow you to hide the case without removing it."),
'description': fields.text('Description'),
'email_from': fields.char('Email', size=128, help="These people will receive email."),
@@ -211,19 +213,19 @@ class hr_applicant(osv.Model):
'title_action': fields.char('Next Action', size=64),
'priority': fields.selection(AVAILABLE_PRIORITIES, 'Appreciation'),
'job_id': fields.many2one('hr.job', 'Applied Job'),
- 'salary_proposed_extra': fields.char('Proposed Salary Extra', size=100, help="Salary Proposed by the Organisation, extra advantages"),
- 'salary_expected_extra': fields.char('Expected Salary Extra', size=100, help="Salary Expected by Applicant, extra advantages"),
+ 'salary_proposed_extra': fields.char('Proposed Salary Extra', help="Salary Proposed by the Organisation, extra advantages"),
+ 'salary_expected_extra': fields.char('Expected Salary Extra', help="Salary Expected by Applicant, extra advantages"),
'salary_proposed': fields.float('Proposed Salary', help="Salary Proposed by the Organisation"),
'salary_expected': fields.float('Expected Salary', help="Salary Expected by Applicant"),
'availability': fields.integer('Availability', help="The number of days in which the applicant will be available to start working"),
- 'partner_name': fields.char("Applicant's Name", size=64),
+ 'partner_name': fields.char("Applicant's Name"),
'partner_phone': fields.char('Phone', size=32),
'partner_mobile': fields.char('Mobile', size=32),
'type_id': fields.many2one('hr.recruitment.degree', 'Degree'),
'department_id': fields.many2one('hr.department', 'Department'),
'survey': fields.related('job_id', 'survey_id', type='many2one', relation='survey.survey', string='Survey'),
'response_id': fields.many2one('survey.user_input', "Response", ondelete='set null', oldname="response"),
- 'reference': fields.char('Referred By', size=128),
+ 'reference': fields.char('Referred By'),
'source_id': fields.many2one('hr.recruitment.source', 'Source'),
'day_open': fields.function(_compute_day, string='Days to Open', \
multi='day_open', type="float", store=True),
@@ -357,6 +359,13 @@ class hr_applicant(osv.Model):
action['domain'] = str(['&', ('res_model', '=', self._name), ('res_id', 'in', ids)])
return action
+ def message_get_reply_to(self, cr, uid, ids, context=None):
+ """ Override to get the reply_to of the parent project. """
+ applicants = self.browse(cr, SUPERUSER_ID, ids, context=context)
+ job_ids = set([applicant.job_id.id for applicant in applicants if applicant.job_id])
+ aliases = self.pool['project.project'].message_get_reply_to(cr, uid, list(job_ids), context=context)
+ return dict((applicant.id, aliases.get(applicant.job_id and applicant.job_id.id or 0, False)) for applicant in applicants)
+
def message_get_suggested_recipients(self, cr, uid, ids, context=None):
recipients = super(hr_applicant, self).message_get_suggested_recipients(cr, uid, ids, context=context)
for applicant in self.browse(cr, uid, ids, context=context):
@@ -598,7 +607,7 @@ class applicant_category(osv.osv):
_name = "hr.applicant_category"
_description = "Category of applicant"
_columns = {
- 'name': fields.char('Name', size=64, required=True, translate=True),
+ 'name': fields.char('Name', required=True, translate=True),
}
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/hr_recruitment/hr_recruitment_data.xml b/addons/hr_recruitment/hr_recruitment_data.xml
index 5849a67d949..aa08217c788 100644
--- a/addons/hr_recruitment/hr_recruitment_data.xml
+++ b/addons/hr_recruitment/hr_recruitment_data.xml
@@ -33,7 +33,7 @@
If you want more details, feel free to contact us by phone.
Kind regards,
- ${object.user_id and object.user_id.signature or ''}]]>
+ ${object.user_id and object.user_id.signature | safe or ''}]]>
@@ -51,7 +51,7 @@
If I do not answer, please let me a message with some schedules to call you back.
Kind regards,
- ${object.user_id.signature}]]>
+ ${object.user_id.signature | safe}]]>
@@ -148,7 +148,7 @@
Applicant Created
hr.job
-
+
job_id
diff --git a/addons/hr_timesheet/wizard/hr_timesheet_sign_in_out.py b/addons/hr_timesheet/wizard/hr_timesheet_sign_in_out.py
index 3b73920cf7d..662e412e60f 100644
--- a/addons/hr_timesheet/wizard/hr_timesheet_sign_in_out.py
+++ b/addons/hr_timesheet/wizard/hr_timesheet_sign_in_out.py
@@ -28,11 +28,11 @@ class hr_so_project(osv.osv_memory):
_description = 'Sign Out By Project'
_columns = {
'account_id': fields.many2one('account.analytic.account', 'Project / Analytic Account', domain=[('type','=','normal')]),
- 'info': fields.char('Work Description', size=256, required=True),
+ 'info': fields.char('Work Description', required=True),
'date_start': fields.datetime('Starting Date', readonly=True),
'date': fields.datetime('Closing Date'),
'analytic_amount': fields.float('Minimum Analytic Amount'),
- 'name': fields.char('Employee\'s Name', size=32, required=True, readonly=True),
+ 'name': fields.char('Employee\'s Name', required=True, readonly=True),
'state': fields.related('emp_id', 'state', string='Current Status', type='selection', selection=[('present', 'Present'), ('absent', 'Absent')], required=True, readonly=True),
'server_date': fields.datetime('Current Date', required=True, readonly=True),
'emp_id': fields.many2one('hr.employee', 'Employee ID')
@@ -109,7 +109,7 @@ class hr_si_project(osv.osv_memory):
_name = 'hr.sign.in.project'
_description = 'Sign In By Project'
_columns = {
- 'name': fields.char('Employee\'s Name', size=32, readonly=True),
+ 'name': fields.char('Employee\'s Name', readonly=True),
'state': fields.related('emp_id', 'state', string='Current Status', type='selection', selection=[('present', 'Present'), ('absent', 'Absent')], required=True, readonly=True),
'date': fields.datetime('Starting Date'),
'server_date': fields.datetime('Current Date', readonly=True),
diff --git a/addons/hr_timesheet_invoice/hr_timesheet_invoice.py b/addons/hr_timesheet_invoice/hr_timesheet_invoice.py
index 945a6b81d76..a3d96b1ceba 100644
--- a/addons/hr_timesheet_invoice/hr_timesheet_invoice.py
+++ b/addons/hr_timesheet_invoice/hr_timesheet_invoice.py
@@ -29,8 +29,8 @@ class hr_timesheet_invoice_factor(osv.osv):
_description = "Invoice Rate"
_order = 'factor'
_columns = {
- 'name': fields.char('Internal Name', size=128, required=True, translate=True),
- 'customer_name': fields.char('Name', size=128, help="Label for the customer"),
+ 'name': fields.char('Internal Name', required=True, translate=True),
+ 'customer_name': fields.char('Name', help="Label for the customer"),
'factor': fields.float('Discount (%)', required=True, help="Discount in percentage"),
}
_defaults = {
diff --git a/addons/hr_timesheet_invoice/report/hr_timesheet_invoice_report.py b/addons/hr_timesheet_invoice/report/hr_timesheet_invoice_report.py
index 3ea7e209051..aac83b7e598 100644
--- a/addons/hr_timesheet_invoice/report/hr_timesheet_invoice_report.py
+++ b/addons/hr_timesheet_invoice/report/hr_timesheet_invoice_report.py
@@ -27,7 +27,7 @@ class report_timesheet_line(osv.osv):
_description = "Timesheet Line"
_auto = False
_columns = {
- 'name': fields.char('Year',size=64,required=False, readonly=True),
+ 'name': fields.char('Year', required=False, readonly=True),
'user_id': fields.many2one('res.users', 'User', readonly=True),
'date': fields.date('Date', readonly=True),
'day': fields.char('Day', size=128, readonly=True),
@@ -38,7 +38,7 @@ class report_timesheet_line(osv.osv):
'general_account_id': fields.many2one('account.account', 'General Account', readonly=True),
'invoice_id': fields.many2one('account.invoice', 'Invoiced', readonly=True),
'month': fields.selection([('01','January'), ('02','February'), ('03','March'), ('04','April'), ('05','May'), ('06','June'),
- ('07','July'), ('08','August'), ('09','September'), ('10','October'), ('11','November'), ('12','December')],'Month',readonly=True),
+ ('07','July'), ('08','August'), ('09','September'), ('10','October'), ('11','November'), ('12','December')],'Month', readonly=True),
}
_order = 'name desc,user_id desc'
def init(self, cr):
@@ -80,12 +80,12 @@ class report_timesheet_user(osv.osv):
_description = "Timesheet per day"
_auto = False
_columns = {
- 'name': fields.char('Year',size=64,required=False, readonly=True),
+ 'name': fields.char('Year', required=False, readonly=True),
'user_id':fields.many2one('res.users', 'User', readonly=True),
'quantity': fields.float('Time', readonly=True),
'cost': fields.float('Cost', readonly=True),
'month':fields.selection([('01','January'), ('02','February'), ('03','March'), ('04','April'), ('05','May'), ('06','June'),
- ('07','July'), ('08','August'), ('09','September'), ('10','October'), ('11','November'), ('12','December')],'Month',readonly=True),
+ ('07','July'), ('08','August'), ('09','September'), ('10','October'), ('11','November'), ('12','December')],'Month', readonly=True),
}
_order = 'name desc,user_id desc'
def init(self, cr):
@@ -112,12 +112,12 @@ class report_timesheet_account(osv.osv):
_description = "Timesheet per account"
_auto = False
_columns = {
- 'name': fields.char('Year',size=64,required=False, readonly=True),
+ 'name': fields.char('Year', required=False, readonly=True),
'user_id':fields.many2one('res.users', 'User', readonly=True),
'account_id':fields.many2one('account.analytic.account', 'Analytic Account', readonly=True),
'quantity': fields.float('Time', readonly=True),
'month':fields.selection([('01','January'), ('02','February'), ('03','March'), ('04','April'), ('05','May'), ('06','June'),
- ('07','July'), ('08','August'), ('09','September'), ('10','October'), ('11','November'), ('12','December')],'Month',readonly=True),
+ ('07','July'), ('08','August'), ('09','September'), ('10','October'), ('11','November'), ('12','December')],'Month', readonly=True),
}
_order = 'name desc,account_id desc,user_id desc'
@@ -145,12 +145,12 @@ class report_timesheet_account_date(osv.osv):
_description = "Daily timesheet per account"
_auto = False
_columns = {
- 'name': fields.char('Year',size=64,required=False, readonly=True),
+ 'name': fields.char('Year', required=False, readonly=True),
'user_id':fields.many2one('res.users', 'User', readonly=True),
'account_id':fields.many2one('account.analytic.account', 'Analytic Account', readonly=True),
'quantity': fields.float('Time', readonly=True),
'month':fields.selection([('01','January'), ('02','February'), ('03','March'), ('04','April'), ('05','May'), ('06','June'),
- ('07','July'), ('08','August'), ('09','September'), ('10','October'), ('11','November'), ('12','December')],'Month',readonly=True),
+ ('07','July'), ('08','August'), ('09','September'), ('10','October'), ('11','November'), ('12','December')],'Month', readonly=True),
}
_order = 'name desc,account_id desc,user_id desc'
diff --git a/addons/hr_timesheet_invoice/report/report_analytic.py b/addons/hr_timesheet_invoice/report/report_analytic.py
index c620b2f9584..02d164dd884 100644
--- a/addons/hr_timesheet_invoice/report/report_analytic.py
+++ b/addons/hr_timesheet_invoice/report/report_analytic.py
@@ -30,7 +30,7 @@ class report_analytic_account_close(osv.osv):
_auto = False
_columns = {
'name': fields.many2one('account.analytic.account', 'Analytic account', readonly=True),
- 'state': fields.char('Status', size=32, readonly=True),
+ 'state': fields.char('Status', readonly=True),
'partner_id': fields.many2one('res.partner', 'Partner', readonly=True),
'quantity': fields.float('Quantity', readonly=True),
'quantity_max': fields.float('Max. Quantity', readonly=True),
@@ -66,7 +66,7 @@ class report_account_analytic_line_to_invoice(osv.osv):
_description = "Analytic lines to invoice report"
_auto = False
_columns = {
- 'name': fields.char('Year',size=64,required=False, readonly=True),
+ 'name': fields.char('Year', required=False, readonly=True),
'product_id':fields.many2one('product.product', 'Product', readonly=True),
'account_id':fields.many2one('account.analytic.account', 'Analytic account', readonly=True),
'product_uom_id':fields.many2one('product.uom', 'Unit of Measure', readonly=True),
@@ -74,7 +74,7 @@ class report_account_analytic_line_to_invoice(osv.osv):
'sale_price': fields.float('Sale price', readonly=True, digits_compute=dp.get_precision('Product Price')),
'amount': fields.float('Amount', readonly=True, digits_compute=dp.get_precision('Account')),
'month':fields.selection([('01','January'), ('02','February'), ('03','March'), ('04','April'), ('05','May'), ('06','June'),
- ('07','July'), ('08','August'), ('09','September'), ('10','October'), ('11','November'), ('12','December')],'Month',readonly=True),
+ ('07','July'), ('08','August'), ('09','September'), ('10','October'), ('11','November'), ('12','December')],'Month', readonly=True),
}
_order = 'name desc, product_id asc, account_id asc'
diff --git a/addons/hr_timesheet_sheet/hr_timesheet_sheet.py b/addons/hr_timesheet_sheet/hr_timesheet_sheet.py
index 5b0199ace24..425f64062dc 100644
--- a/addons/hr_timesheet_sheet/hr_timesheet_sheet.py
+++ b/addons/hr_timesheet_sheet/hr_timesheet_sheet.py
@@ -147,7 +147,7 @@ class hr_timesheet_sheet(osv.osv):
}
_columns = {
- 'name': fields.char('Note', size=64, select=1,
+ 'name': fields.char('Note', select=1,
states={'confirm':[('readonly', True)], 'done':[('readonly', True)]}),
'employee_id': fields.many2one('hr.employee', 'Employee', required=True),
'user_id': fields.related('employee_id', 'user_id', type="many2one", relation="res.users", store=True, string="User", required=False, readonly=True),#fields.many2one('res.users', 'User', required=True, select=1, states={'confirm':[('readonly', True)], 'done':[('readonly', True)]}),
diff --git a/addons/hr_timesheet_sheet/static/src/js/timesheet.js b/addons/hr_timesheet_sheet/static/src/js/timesheet.js
index c7afd62c8ab..ef1e2f17145 100644
--- a/addons/hr_timesheet_sheet/static/src/js/timesheet.js
+++ b/addons/hr_timesheet_sheet/static/src/js/timesheet.js
@@ -7,6 +7,9 @@ openerp.hr_timesheet_sheet = function(instance) {
events: {
"click .oe_timesheet_weekly_account a": "go_to",
},
+ ignore_fields: function() {
+ return ['line_id'];
+ },
init: function() {
this._super.apply(this, arguments);
var self = this;
@@ -323,11 +326,8 @@ openerp.hr_timesheet_sheet = function(instance) {
generate_o2m_value: function() {
var self = this;
var ops = [];
-
+ var ignored_fields = self.ignore_fields();
_.each(self.accounts, function(account) {
- var auth_keys = _.extend(_.clone(account.account_defaults), {
- name: true, amount:true, unit_amount: true, date: true, account_id:true,
- });
_.each(account.days, function(day) {
_.each(day.lines, function(line) {
if (line.unit_amount !== 0) {
@@ -338,12 +338,8 @@ openerp.hr_timesheet_sheet = function(instance) {
tmp[k] = v[0];
}
});
- // we have to remove some keys, because analytic lines are shitty
- _.each(_.keys(tmp), function(key) {
- if (auth_keys[key] === undefined) {
- tmp[key] = undefined;
- }
- });
+ // we remove line_id as the reference to the _inherits field will no longer exists
+ tmp = _.omit(tmp, ignored_fields);
ops.push(tmp);
}
});
diff --git a/addons/im/static/src/css/im.css b/addons/im/static/src/css/im.css
index b869bdddb44..d383ffac07d 100644
--- a/addons/im/static/src/css/im.css
+++ b/addons/im/static/src/css/im.css
@@ -1,5 +1,5 @@
-.openerp .oe_im {
+.oe_im {
position: fixed;
background-color: #E8EBEF;
width: 220px;
@@ -7,23 +7,21 @@
}
@media print {
- .openerp .oe_im, .openerp .oe_im_chatview {
+ .oe_im, .oe_im_chatview {
visibility: hidden;
}
}
-
/* button */
-
-.openerp .oe_topbar_imbutton {
- cursor: pointer;
+.oe_systray #oe_topbar_im_icon {
+ color: white;
}
-.openerp .oe_topbar_item.oe_topbar_imbutton .oe_e {
+.oe_topbar_item.oe_topbar_imbutton .oe_e {
position: relative;
top: -8px;
}
/* search stuff */
-.openerp .oe_im_frame_header {
+.oe_im_frame_header {
position: relative;
background: #dedede;
background: -moz-linear-gradient(#fcfcfc, #dedede);
@@ -31,7 +29,7 @@
border-bottom: 1px solid border-color !important;
padding: 5px;
}
-.openerp .oe_im_frame_header .oe_im_searchbox {
+.oe_im_frame_header .oe_im_searchbox {
width: 168px;
padding: 1px 21px 1px 19px;
font-size: 13px;
@@ -39,7 +37,7 @@
-webkit-border-radius: 13px;
border-radius: 13px;
}
-.openerp .oe_im_frame_header .oe_im_search_icon {
+.oe_im_frame_header .oe_im_search_icon {
position: absolute;
color: #888;
top: 2px;
@@ -48,7 +46,7 @@
font-family: "entypoRegular" !important;
font-weight: 300 !important;
}
-.openerp .oe_im_frame_header .oe_im_search_clear {
+.oe_im_frame_header .oe_im_search_clear {
display: none;
position: absolute;
right: 11px;
@@ -57,26 +55,26 @@
color: #b6b6b6;
cursor: pointer;
}
-.openerp .oe_im_frame_header .oe_im_search_clear:hover {
+.oe_im_frame_header .oe_im_search_clear:hover {
color: #888;
}
/* users */
-.openerp .oe_im_users {
+.oe_im_users {
padding-bottom: 38px;
}
-.openerp .oe_im_user {
+.oe_im_user {
position: relative;
padding: 2px 6px;
cursor: pointer;
font-size: 13px;
margin-bottom: 3px;
}
-.openerp .oe_im_user:hover {
+.oe_im_user:hover {
background: lightGrey;
}
-.openerp .oe_im_user_clip {
+.oe_im_user_clip {
display: inline-block;
width: 26px;
height: 26px;
@@ -85,11 +83,11 @@
-webkit-box-shadow: 0 0 2px 1px rgba(0, 0, 0, 0.25);
box-shadow: 0 0 2px 1px rgba(0, 0, 0, 0.25);
}
-.openerp .oe_im_user_avatar {
+.oe_im_user_avatar {
width: 26px;
height: auto;
}
-.openerp .oe_im_user_name {
+.oe_im_user_name {
width: 162px;
line-height: 26px;
padding-right: 15px;
@@ -99,7 +97,7 @@
position: relative;
}
-.openerp .oe_im_user_online {
+.oe_im_user_online {
display: none;
position: absolute;
top: 9.5px;
diff --git a/addons/im/static/src/js/im.js b/addons/im/static/src/js/im.js
index 95f29bc5c49..3731c8e80d7 100644
--- a/addons/im/static/src/js/im.js
+++ b/addons/im/static/src/js/im.js
@@ -25,7 +25,7 @@
im.appendTo(instance.client.$el);
var button = new instance.im.ImTopButton(this);
button.on("clicked", im, im.switch_display);
- button.appendTo(instance.webclient.$el.find('.oe_systray'));
+ button.appendTo(window.$('.oe_systray'));
});
return this._super.apply(this, arguments);
},
@@ -36,7 +36,8 @@
events: {
"click": "clicked",
},
- clicked: function() {
+ clicked: function(ev) {
+ ev.preventDefault();
this.trigger("clicked");
},
});
@@ -80,7 +81,7 @@
});
},
calc_box: function() {
- var $topbar = instance.client.$(".navbar"); // .oe_topbar is replaced with .navbar of bootstrap3
+ var $topbar = window.$('#oe_main_menu_navbar'); // .oe_topbar is replaced with .navbar of bootstrap3
var top = $topbar.offset().top + $topbar.height();
top = Math.max(top - $(window).scrollTop(), 0);
this.$el.css("top", top);
diff --git a/addons/im/static/src/xml/im.xml b/addons/im/static/src/xml/im.xml
index 1acb538db4f..0c5e61824e2 100644
--- a/addons/im/static/src/xml/im.xml
+++ b/addons/im/static/src/xml/im.xml
@@ -14,9 +14,11 @@
-
- +
-
+
+
+
+
+
diff --git a/addons/im_livechat/im_livechat.py b/addons/im_livechat/im_livechat.py
index cfc6bb9ce8e..4400670cc93 100644
--- a/addons/im_livechat/im_livechat.py
+++ b/addons/im_livechat/im_livechat.py
@@ -120,14 +120,14 @@ class im_livechat_channel(osv.osv):
return res
_columns = {
- 'name': fields.char(string="Channel Name", size=200, required=True),
+ 'name': fields.char(string="Channel Name", required=True),
'user_ids': fields.many2many('res.users', 'im_livechat_channel_im_user', 'channel_id', 'user_id', string="Users"),
'are_you_inside': fields.function(_are_you_inside, type='boolean', string='Are you inside the matrix?', store=False),
'script': fields.function(_script, type='text', string='Script', store=False),
'web_page': fields.function(_web_page, type='url', string='Web Page', store=False, size="200"),
- 'button_text': fields.char(string="Text of the Button", size=200),
- 'input_placeholder': fields.char(string="Chat Input Placeholder", size=200),
- 'default_message': fields.char(string="Welcome Message", size=200, help="This is an automated 'welcome' message that your visitor will see when they initiate a new chat session."),
+ 'button_text': fields.char(string="Text of the Button"),
+ 'input_placeholder': fields.char(string="Chat Input Placeholder"),
+ 'default_message': fields.char(string="Welcome Message", help="This is an automated 'welcome' message that your visitor will see when they initiate a new chat session."),
# image: all image fields are base64 encoded and PIL-supported
'image': fields.binary("Photo",
help="This field holds the image used as photo for the group, limited to 1024x1024px."),
diff --git a/addons/l10n_be/wizard/l10n_be_account_vat_declaration.py b/addons/l10n_be/wizard/l10n_be_account_vat_declaration.py
index 2ef1a81fef2..5734b7a17ab 100644
--- a/addons/l10n_be/wizard/l10n_be_account_vat_declaration.py
+++ b/addons/l10n_be/wizard/l10n_be_account_vat_declaration.py
@@ -40,10 +40,10 @@ class l10n_be_vat_declaration(osv.osv_memory):
return ''
_columns = {
- 'name': fields.char('File Name', size=32),
+ 'name': fields.char('File Name'),
'period_id': fields.many2one('account.period','Period', required=True),
'tax_code_id': fields.many2one('account.tax.code', 'Tax Code', domain=[('parent_id', '=', False)], required=True),
- 'msg': fields.text('File created', size=64, readonly=True),
+ 'msg': fields.text('File created', readonly=True),
'file_save': fields.binary('Save File'),
'ask_restitution': fields.boolean('Ask Restitution',help='It indicates whether a restitution is to make or not?'),
'ask_payment': fields.boolean('Ask Payment',help='It indicates whether a payment is to make or not?'),
diff --git a/addons/l10n_be/wizard/l10n_be_partner_vat_listing.py b/addons/l10n_be/wizard/l10n_be_partner_vat_listing.py
index 3bdee77956e..8fa11545dee 100644
--- a/addons/l10n_be/wizard/l10n_be_partner_vat_listing.py
+++ b/addons/l10n_be/wizard/l10n_be_partner_vat_listing.py
@@ -33,8 +33,8 @@ from openerp.report import report_sxw
class vat_listing_clients(osv.osv_memory):
_name = 'vat.listing.clients'
_columns = {
- 'name': fields.char('Client Name', size=32),
- 'vat': fields.char('VAT', size=64),
+ 'name': fields.char('Client Name'),
+ 'vat': fields.char('VAT'),
'turnover': fields.float('Base Amount'),
'vat_amount': fields.float('VAT Amount'),
}
@@ -121,7 +121,7 @@ class partner_vat_list(osv.osv_memory):
_name = "partner.vat.list"
_columns = {
'partner_ids': fields.many2many('vat.listing.clients', 'vat_partner_rel', 'vat_id', 'partner_id', 'Clients', help='You can remove clients/partners which you do not want to show in xml file'),
- 'name': fields.char('File Name', size=32),
+ 'name': fields.char('File Name'),
'file_save' : fields.binary('Save File', readonly=True),
'comments': fields.text('Comments'),
}
diff --git a/addons/l10n_be/wizard/l10n_be_vat_intra.py b/addons/l10n_be/wizard/l10n_be_vat_intra.py
index e698973fef4..0629f9fa271 100644
--- a/addons/l10n_be/wizard/l10n_be_vat_intra.py
+++ b/addons/l10n_be/wizard/l10n_be_vat_intra.py
@@ -46,8 +46,8 @@ class partner_vat_intra(osv.osv_memory):
return self.pool.get('res.country').search(cursor, user, [('code', 'in', ['AT', 'BG', 'CY', 'CZ', 'DK', 'EE', 'FI', 'FR', 'DE', 'GR', 'HU', 'IE', 'IT', 'LV', 'LT', 'LU', 'MT', 'NL', 'PL', 'PT', 'RO', 'SK', 'SI', 'ES', 'SE', 'GB'])])
_columns = {
- 'name': fields.char('File Name', size=32),
- 'period_code': fields.char('Period Code',size = 6,required = True, help = '''This is where you have to set the period code for the intracom declaration using the format: ppyyyy
+ 'name': fields.char('File Name'),
+ 'period_code': fields.char('Period Code', size=6, required=True, help='''This is where you have to set the period code for the intracom declaration using the format: ppyyyy
PP can stand for a month: from '01' to '12'.
PP can stand for a trimester: '31','32','33','34'
The first figure means that it is a trimester,
@@ -59,9 +59,9 @@ class partner_vat_intra(osv.osv_memory):
'period_ids': fields.many2many('account.period', 'account_period_rel', 'acc_id', 'period_id', 'Period (s)', help = 'Select here the period(s) you want to include in your intracom declaration'),
'tax_code_id': fields.many2one('account.tax.code', 'Company', domain=[('parent_id', '=', False)], help="Keep empty to use the user's company", required=True),
'test_xml': fields.boolean('Test XML file', help="Sets the XML output as test file"),
- 'mand_id' : fields.char('Reference', size=14, help="Reference given by the Representative of the sending company."),
- 'msg': fields.text('File created', size=14, readonly=True),
- 'no_vat': fields.text('Partner With No VAT', size=14, readonly=True, help="The Partner whose VAT number is not defined and they are not included in XML File."),
+ 'mand_id' : fields.char('Reference', help="Reference given by the Representative of the sending company."),
+ 'msg': fields.text('File created', readonly=True),
+ 'no_vat': fields.text('Partner With No VAT', readonly=True, help="The Partner whose VAT number is not defined and they are not included in XML File."),
'file_save' : fields.binary('Save File', readonly=True),
'country_ids': fields.many2many('res.country', 'vat_country_rel', 'vat_id', 'country_id', 'European Countries'),
'comments': fields.text('Comments'),
@@ -225,7 +225,7 @@ class partner_vat_intra(osv.osv_memory):
data_head = """
- %(company_vat)s
+ %(vatnum)s
%(company_name)s
%(street)s
%(post_code)s
diff --git a/addons/l10n_be_coda/wizard/account_coda_import.py b/addons/l10n_be_coda/wizard/account_coda_import.py
index cac4cce452c..a234dc5b180 100644
--- a/addons/l10n_be_coda/wizard/account_coda_import.py
+++ b/addons/l10n_be_coda/wizard/account_coda_import.py
@@ -35,7 +35,7 @@ class account_coda_import(osv.osv_memory):
_description = 'Import CODA File'
_columns = {
'coda_data': fields.binary('CODA File', required=True),
- 'coda_fname': fields.char('CODA Filename', size=128, required=True),
+ 'coda_fname': fields.char('CODA Filename', required=True),
'note': fields.text('Log'),
}
diff --git a/addons/l10n_be_invoice_bba/invoice.py b/addons/l10n_be_invoice_bba/invoice.py
index 499e6e6c4ac..7ecd348344d 100644
--- a/addons/l10n_be_invoice_bba/invoice.py
+++ b/addons/l10n_be_invoice_bba/invoice.py
@@ -221,7 +221,7 @@ class account_invoice(osv.osv):
return super(account_invoice, self).copy(cr, uid, id, default, context=context)
_columns = {
- 'reference': fields.char('Communication', size=64, help="The partner reference of this invoice."),
+ 'reference': fields.char('Communication', help="The partner reference of this invoice."),
'reference_type': fields.selection(_get_reference_type, 'Communication Type',
required=True),
}
diff --git a/addons/l10n_br/account.py b/addons/l10n_br/account.py
index 1adb6d92baa..490f748bcdc 100644
--- a/addons/l10n_br/account.py
+++ b/addons/l10n_br/account.py
@@ -21,7 +21,7 @@ import openerp
from openerp.osv import fields, osv
TAX_CODE_COLUMNS = {
- 'domain':fields.char('Domain', size=32,
+ 'domain':fields.char('Domain',
help="This field is only used if you develop your own module allowing developers to create specific taxes in a custom domain."),
'tax_discount': fields.boolean('Discount this Tax in Prince',
help="Mark it for (ICMS, PIS, COFINS and others taxes included)."),
diff --git a/addons/l10n_cl/l10n_cl_chart.xml b/addons/l10n_cl/l10n_cl_chart.xml
index 2e2339f212e..e6d7b1d75bd 100644
--- a/addons/l10n_cl/l10n_cl_chart.xml
+++ b/addons/l10n_cl/l10n_cl_chart.xml
@@ -248,7 +248,7 @@
-
+
diff --git a/addons/l10n_es/tax_codes_common.xml b/addons/l10n_es/tax_codes_common.xml
index da07f44a178..35209b954d2 100644
--- a/addons/l10n_es/tax_codes_common.xml
+++ b/addons/l10n_es/tax_codes_common.xml
@@ -279,25 +279,25 @@
- Base adquisiciones intracomunitarias bienes y servicios corrientes
+ Base adquisiciones intracomunitarias bienes y serv. corrientes
[30]
1.0
- Base adquisiciones intracomunitarias bienes y servicios corrientes (4%)
+ Base adquisiciones intracomunitarias bienes y serv. corr. (4%)
--
1.0
- Base adquisiciones intracomunitarias bienes y servicios corrientes (10%)
+ Base adquisiciones intracomunitarias bienes y serv. corr. (10%)
--
1.0
- Base adquisiciones intracomunitarias bienes y servicios corrientes (21%)
+ Base adquisiciones intracomunitarias bienes y serv. corr. (21%)
--
1.0
@@ -427,19 +427,19 @@
1.0
- Cuotas devengadas importaciones bienes y servicios corrientes (4%)
+ Cuotas devengadas importaciones bienes y serv. corr. (4%)
--
1.0
- Cuotas devengadas importaciones bienes y servicios corrientes (10%)
+ Cuotas devengadas importaciones bienes y serv. corr. (10%)
--
1.0
- Cuotas devengadas importaciones bienes y servicios corrientes (21%)
+ Cuotas devengadas importaciones bienes y serv. corr. (21%)
--
1.0
@@ -478,19 +478,19 @@
1.0
- En adquisiciones intracomunitarias bienes y servicios corrientes (4%)
+ En adquisiciones intracomunitarias bienes y serv. corr. (4%)
--
1.0
- En adquisiciones intracomunitarias bienes y servicios corrientes (10%)
+ En adquisiciones intracomunitarias bienes y serv. corr. (10%)
--
1.0
- En adquisiciones intracomunitarias bienes y servicios corrientes (21%)
+ En adquisiciones intracomunitarias bienes y serv. corr. (21%)
--
1.0
@@ -772,4 +772,4 @@
-
\ No newline at end of file
+
diff --git a/addons/l10n_et/data/account.chart.template.csv b/addons/l10n_et/data/account.chart.template.csv
index de24c43bad2..ec85ea9eb6b 100644
--- a/addons/l10n_et/data/account.chart.template.csv
+++ b/addons/l10n_et/data/account.chart.template.csv
@@ -1,2 +1,2 @@
-"id","name","account_root_id:id","tax_code_root_id:id","bank_account_view_id:id","property_account_receivable:id","property_account_payable:id","property_account_expense_categ:id","property_account_income_categ:id"
-"l10n_et","Ethiopia Tax and Account Chart Template","l10n_et0","tc_01","l10n_et2110","l10n_et2211","l10n_et3002","l10n_et2301","l10n_et1100"
+"id","name","account_root_id:id","tax_code_root_id:id","bank_account_view_id:id","property_account_receivable:id","property_account_payable:id","property_account_expense_categ:id","property_account_income_categ:id","currency_id:id"
+"l10n_et","Ethiopia Tax and Account Chart Template","l10n_et0","tc_01","l10n_et2110","l10n_et2211","l10n_et3002","l10n_et2301","l10n_et1100","base.ETB"
diff --git a/addons/l10n_fr/l10n_fr.py b/addons/l10n_fr/l10n_fr.py
index 676121b4292..1173751431f 100644
--- a/addons/l10n_fr/l10n_fr.py
+++ b/addons/l10n_fr/l10n_fr.py
@@ -26,7 +26,7 @@ class l10n_fr_report(osv.osv):
_description = 'Report for l10n_fr'
_columns = {
'code': fields.char('Code', size=64),
- 'name': fields.char('Name', size=128),
+ 'name': fields.char('Name'),
'line_ids': fields.one2many('l10n.fr.line', 'report_id', 'Lines'),
}
_sql_constraints = [
@@ -39,8 +39,8 @@ class l10n_fr_line(osv.osv):
_description = 'Report Lines for l10n_fr'
_columns = {
'code': fields.char('Variable Name', size=64),
- 'definition': fields.char('Definition', size=512),
- 'name': fields.char('Name', size=256),
+ 'definition': fields.char('Definition'),
+ 'name': fields.char('Name'),
'report_id': fields.many2one('l10n.fr.report', 'Report'),
}
_sql_constraints = [
@@ -52,8 +52,8 @@ class res_company(osv.osv):
_inherit = 'res.company'
_columns = {
- 'siret': fields.char('SIRET', size=64),
- 'ape': fields.char('APE', size=64),
+ 'siret': fields.char('SIRET', size=14),
+ 'ape': fields.char('APE'),
}
diff --git a/addons/l10n_fr_hr_payroll/l10n_fr_hr_payroll.py b/addons/l10n_fr_hr_payroll/l10n_fr_hr_payroll.py
index ec17792dacd..7a410069310 100644
--- a/addons/l10n_fr_hr_payroll/l10n_fr_hr_payroll.py
+++ b/addons/l10n_fr_hr_payroll/l10n_fr_hr_payroll.py
@@ -30,8 +30,8 @@ class res_company(osv.osv):
'plafond_secu': fields.float('Plafond de la Securite Sociale', digits_compute=dp.get_precision('Payroll')),
'nombre_employes': fields.integer('Nombre d\'employes'),
'cotisation_prevoyance': fields.float('Cotisation Patronale Prevoyance', digits_compute=dp.get_precision('Payroll')),
- 'org_ss': fields.char('Organisme de securite sociale', size=64),
- 'conv_coll': fields.char('Convention collective', size=64),
+ 'org_ss': fields.char('Organisme de securite sociale'),
+ 'conv_coll': fields.char('Convention collective'),
}
@@ -39,16 +39,16 @@ class hr_contract(osv.osv):
_inherit = 'hr.contract'
_columns = {
- 'qualif': fields.char('Qualification', size=64),
- 'niveau': fields.char('Niveau', size=64),
- 'coef': fields.char('Coefficient', size=64),
+ 'qualif': fields.char('Qualification'),
+ 'niveau': fields.char('Niveau'),
+ 'coef': fields.char('Coefficient'),
}
class hr_payslip(osv.osv):
_inherit = 'hr.payslip'
_columns = {
- 'payment_mode': fields.char('Mode de paiement', size=64),
+ 'payment_mode': fields.char('Mode de paiement'),
}
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/l10n_fr_hr_payroll/report/fiche_paye.py b/addons/l10n_fr_hr_payroll/report/fiche_paye.py
index c6933228687..18eb7f30b8a 100755
--- a/addons/l10n_fr_hr_payroll/report/fiche_paye.py
+++ b/addons/l10n_fr_hr_payroll/report/fiche_paye.py
@@ -31,6 +31,7 @@ class fiche_paye_parser(report_sxw.rml_parse):
def __init__(self, cr, uid, name, context):
super(fiche_paye_parser, self).__init__(cr, uid, name, context)
self.localcontext.update({
+ 'lang': "fr_FR",
'get_payslip_lines': self.get_payslip_lines,
'get_total_by_rule_category': self.get_total_by_rule_category,
'get_employer_line': self.get_employer_line,
diff --git a/addons/l10n_fr_rib/bank.py b/addons/l10n_fr_rib/bank.py
index 1f5264ef5ac..4e144056d32 100644
--- a/addons/l10n_fr_rib/bank.py
+++ b/addons/l10n_fr_rib/bank.py
@@ -99,7 +99,7 @@ class res_bank(osv.osv):
return results
_columns = {
- 'rib_code': fields.char('RIB Bank Code', size=64),
+ 'rib_code': fields.char('RIB Bank Code'),
}
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/l10n_gt/l10n_gt_base.xml b/addons/l10n_gt/l10n_gt_base.xml
index bfc91ddb83e..ab003a83773 100644
--- a/addons/l10n_gt/l10n_gt_base.xml
+++ b/addons/l10n_gt/l10n_gt_base.xml
@@ -5,21 +5,6 @@
open
-
-
-
- GTQ
- Q
- 0.01
- 4
-
-
-
- 11.2020
-
-
-
-
diff --git a/addons/plugin_thunderbird/__init__.py b/addons/l10n_hu/__init__.py
similarity index 84%
rename from addons/plugin_thunderbird/__init__.py
rename to addons/l10n_hu/__init__.py
index e1c886f81fa..37f246eb2f7 100644
--- a/addons/plugin_thunderbird/__init__.py
+++ b/addons/l10n_hu/__init__.py
@@ -1,8 +1,7 @@
-# -*- coding: utf-8 -*-
+# -*- encoding: utf-8 -*-
##############################################################################
#
-# OpenERP, Open Source Management Solution
-# Copyright (C) 2004-2010 Tiny SPRL ().
+# Copyright (C) 2014 InnOpen Group Kft ().
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
@@ -19,4 +18,3 @@
#
##############################################################################
-import plugin_thunderbird
diff --git a/addons/plugin/__openerp__.py b/addons/l10n_hu/__openerp__.py
similarity index 51%
rename from addons/plugin/__openerp__.py
rename to addons/l10n_hu/__openerp__.py
index 7af31450a87..8e2fcb0cfc0 100644
--- a/addons/plugin/__openerp__.py
+++ b/addons/l10n_hu/__openerp__.py
@@ -1,8 +1,7 @@
-# -*- coding: utf-8 -*-
+# -*- encoding: utf-8 -*-
##############################################################################
#
-# OpenERP, Open Source Management Solution
-# Copyright (C) 2004-2010 Tiny SPRL ().
+# Copyright (C) 2014 InnOpen Group Kft ().
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
@@ -21,21 +20,35 @@
{
- 'name': 'CRM Plugins',
+ 'name': 'Hungarian - Accounting',
'version': '1.0',
- 'category': 'Hidden/Dependency',
+ 'category': 'Localization/Account Charts',
'description': """
-The common interface for plug-in.
-=================================
-""",
- 'author': 'OpenERP SA',
- 'website': 'http://www.openerp.com',
- 'depends': ['base'],
- 'data': [],
- 'demo': [],
- 'test': [],
+
+Base module for Hungarian localization
+==========================================
+
+This module consists :
+
+ - Generic Hungarian chart of accounts
+ - Hungarian taxes
+ - Hungarian Bank information
+
+ """,
+ 'author': 'InnOpen Group Kft',
+ 'website': 'http://www.innopen.eu',
+ 'license': 'AGPL-3',
+ 'depends': ['account','account_chart'],
+ 'data': [
+ 'data/account.account.template.csv',
+ 'data/account.tax.code.template.csv',
+ 'data/account.chart.template.csv',
+ 'data/account.tax.template.csv',
+ 'data/account.fiscal.position.template.csv',
+ 'data/account.fiscal.position.tax.template.csv',
+ 'data/res.bank.csv',
+ ],
'installable': True,
'auto_install': False,
- 'images': [],
+ 'application':True,
}
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/l10n_hu/data/account.account.template.csv b/addons/l10n_hu/data/account.account.template.csv
new file mode 100644
index 00000000000..37cf2e1ae5e
--- /dev/null
+++ b/addons/l10n_hu/data/account.account.template.csv
@@ -0,0 +1,277 @@
+"id","code","name","parent_id/id","user_type/id","type","reconcile"
+"chart_hu_0",0,"Magyar főkönyvi kivonat",,"account.data_account_type_view","view","FALSE"
+"chart_hu_1_4","1-4","Mérleg számlák","chart_hu_0","account.data_account_type_view","view","FALSE"
+"chart_hu_1",1,"BEFEKTETETT ESZKÖZÖK","chart_hu_1_4","account.account_type_asset_view1","view","FALSE"
+"chart_hu_11",11,"IMMATERIÁLIS JAVAK","chart_hu_1","account.account_type_asset_view1","view","FALSE"
+"chart_hu_111",111,"Alapítás-átszervezés aktívált értéke","chart_hu_11","account.data_account_type_asset","other","FALSE"
+"chart_hu_112",112,"Kísérleti fejlesztés aktívált értéke","chart_hu_11","account.data_account_type_asset","other","FALSE"
+"chart_hu_113",113,"Vagyoni értékû jogok","chart_hu_11","account.data_account_type_asset","other","FALSE"
+"chart_hu_114",114,"Szellemi termékek","chart_hu_11","account.data_account_type_asset","other","FALSE"
+"chart_hu_115",115,"Üzleti vagy cégérték","chart_hu_11","account.data_account_type_asset","other","FALSE"
+"chart_hu_117",117,"Immateriális javak értékhelyesbítése","chart_hu_11","account.data_account_type_asset","other","FALSE"
+"chart_hu_12",12,"INGATLANOK, KAPCS. VAGYONI ÉRT. JOGOK","chart_hu_1","account.account_type_asset_view1","view","FALSE"
+"chart_hu_121",121,"Földterület","chart_hu_12","account.data_account_type_asset","other","FALSE"
+"chart_hu_122",122,"Telek, telkesítés","chart_hu_12","account.data_account_type_asset","other","FALSE"
+"chart_hu_123",123,"Épületek,épületrészek,tulajdoni hányadok","chart_hu_12","account.data_account_type_asset","other","FALSE"
+"chart_hu_124",124,"Egyéb építmények","chart_hu_12","account.data_account_type_asset","other","FALSE"
+"chart_hu_125",125,"Üzemkörön kivüli ingatlanok, épületek","chart_hu_12","account.data_account_type_asset","other","FALSE"
+"chart_hu_126",126,"Ingatlanhoz kapcs. vagyoni ért. jogok","chart_hu_12","account.data_account_type_asset","other","FALSE"
+"chart_hu_127",127,"Ingatlanok értékhelyesbítése","chart_hu_12","account.data_account_type_asset","other","FALSE"
+"chart_hu_13",13,"MÜSZAKI BERENDEZÉSEK, GÉPEK, JÁRMÜVEK","chart_hu_1","account.account_type_asset_view1","view","FALSE"
+"chart_hu_131",131,"Termelõ gépek, berendezések, gyártóeszk.","chart_hu_13","account.data_account_type_asset","other","FALSE"
+"chart_hu_132",132,"Termelésben résztvevõ jármûvek","chart_hu_13","account.data_account_type_asset","other","FALSE"
+"chart_hu_137",137,"Müszaki gépek,felsz,járm. értékhelyesb.","chart_hu_13","account.data_account_type_asset","other","FALSE"
+"chart_hu_14",14,"EGYÉB BERENDEZÉSEK, FELSZ., JÁRMÜVEK","chart_hu_1","account.account_type_asset_view1","view","FALSE"
+"chart_hu_141",141,"Üzemi berendezések, gépek,felszerelések","chart_hu_14","account.data_account_type_asset","other","FALSE"
+"chart_hu_142",142,"Egyéb jármûvek","chart_hu_14","account.data_account_type_asset","other","FALSE"
+"chart_hu_143",143,"Irodai, igazgatási berendezések","chart_hu_14","account.data_account_type_asset","other","FALSE"
+"chart_hu_144",144,"Üzemkörön kivüli berendezések, felsz.","chart_hu_14","account.data_account_type_asset","other","FALSE"
+"chart_hu_147",147,"Egyéb gépek,felsz,járm. értékhelyesbítés","chart_hu_14","account.data_account_type_asset","other","FALSE"
+"chart_hu_15",15,"TENYÉSZÁLLATOK","chart_hu_1","account.account_type_asset_view1","view","FALSE"
+"chart_hu_151",151,"Tenyészállatok","chart_hu_15","account.data_account_type_asset","other","FALSE"
+"chart_hu_16",16,"BERUHÁZÁSOK, FELúJÍTÁSOK","chart_hu_1","account.account_type_asset_view1","view","FALSE"
+"chart_hu_161",161,"Befejezetlen beruházások","chart_hu_16","account.data_account_type_asset","other","FALSE"
+"chart_hu_162",162,"Felújítások","chart_hu_16","account.data_account_type_asset","other","FALSE"
+"chart_hu_168",168,"Beruházások terven felüli értékcsökk.","chart_hu_16","account.data_account_type_asset","other","FALSE"
+"chart_hu_17",17,"BEFEKTETETT Pü.I ESZKÖZÖK RÉSZESEDÉSEK","chart_hu_1","account.account_type_asset_view1","view","FALSE"
+"chart_hu_171",171,"Tartós részesedés kapcs. vállalkozásban","chart_hu_17","account.data_account_type_asset","other","FALSE"
+"chart_hu_172",172,"Egyéb tartós részesedés","chart_hu_17","account.data_account_type_asset","other","FALSE"
+"chart_hu_177",177,"Részesedések értékhelyesbítése","chart_hu_17","account.data_account_type_asset","other","FALSE"
+"chart_hu_179",179,"Részesedések értékvesztése, visszaírása","chart_hu_17","account.data_account_type_asset","other","FALSE"
+"chart_hu_18",18,"HITELVISZONYT MEGTESTESÍTÖ ÉRTÉKPAPÍROK","chart_hu_1","account.account_type_asset_view1","view","FALSE"
+"chart_hu_181",181,"Államkötvények","chart_hu_18","account.data_account_type_asset","other","FALSE"
+"chart_hu_182",182,"Kapcsolt vállalkozások értékpapírjai","chart_hu_18","account.data_account_type_asset","other","FALSE"
+"chart_hu_183",183,"Egyéb vállalkozások értékpapírjai","chart_hu_18","account.data_account_type_asset","other","FALSE"
+"chart_hu_184",184,"Tartós diszkont értékpapírok","chart_hu_18","account.data_account_type_asset","other","FALSE"
+"chart_hu_189",189,"Értékpapírok értékvesztése, visszaírása","chart_hu_18","account.data_account_type_asset","other","FALSE"
+"chart_hu_19",19,"TARTÓSAN ADOTT KÖLCSÖNÖK","chart_hu_1","account.account_type_asset_view1","view","FALSE"
+"chart_hu_191",191,"Tartósan adott kölcsönök kapcs. váll.","chart_hu_19","account.data_account_type_asset","other","FALSE"
+"chart_hu_192",192,"Tartósan adott kölcsön egyéb rész.váll.","chart_hu_19","account.data_account_type_asset","other","FALSE"
+"chart_hu_193",193,"Egyéb tartósan adott kölcsönök","chart_hu_19","account.data_account_type_asset","other","FALSE"
+"chart_hu_195",195,"Tartós bankbetétek kapcs. váll.-ban","chart_hu_19","account.data_account_type_asset","other","FALSE"
+"chart_hu_196",196,"Tartós bankbetétek egyéb rész. váll.-ban","chart_hu_19","account.data_account_type_asset","other","FALSE"
+"chart_hu_197",197,"Egyéb tartós bankbetétek","chart_hu_19","account.data_account_type_asset","other","FALSE"
+"chart_hu_198",198,"Pénzügyi lízing miatti tartós követelés","chart_hu_19","account.data_account_type_asset","other","FALSE"
+"chart_hu_199",199,"Tartósan adott kölcsönök értékvesztése","chart_hu_19","account.data_account_type_asset","other","FALSE"
+"chart_hu_2",2,"KÉSZLETEK","chart_hu_1_4","account.account_type_asset_view1","view","FALSE"
+"chart_hu_21",21,"ANYAGOK","chart_hu_2","account.account_type_asset_view1","view","FALSE"
+"chart_hu_211",211,"Nyers- és alapanyagok","chart_hu_21","account.data_account_type_asset","other","FALSE"
+"chart_hu_22",22,"ANYAGOK","chart_hu_2","account.account_type_asset_view1","view","FALSE"
+"chart_hu_221",221,"Segédanyagok","chart_hu_22","account.data_account_type_asset","other","FALSE"
+"chart_hu_23",23,"BEFEJEZETLEN TERMELÉS ÉS FÉLKÉSZTERMÉKEK","chart_hu_2","account.account_type_asset_view1","view","FALSE"
+"chart_hu_231",231,"Befejezetlen termelés","chart_hu_23","account.data_account_type_asset","other","FALSE"
+"chart_hu_25",25,"KÉSZTERMÉKEK","chart_hu_2","account.account_type_asset_view1","view","FALSE"
+"chart_hu_251",251,"Késztermékek","chart_hu_25","account.data_account_type_asset","other","FALSE"
+"chart_hu_26",26,"ÁRUK","chart_hu_2","account.account_type_asset_view1","view","FALSE"
+"chart_hu_261",261,"Áruk beszerzési áron","chart_hu_26","account.data_account_type_asset","other","FALSE"
+"chart_hu_27",27,"KÖZVETÍTETT SZOLGÁLTATÁSOK","chart_hu_2","account.account_type_asset_view1","view","FALSE"
+"chart_hu_271",271,"Közvetített szolgáltatások","chart_hu_27","account.data_account_type_asset","other","FALSE"
+"chart_hu_28",28,"BETÉTDÍJAS GÖNGYÖLEGEK","chart_hu_2","account.account_type_asset_view1","view","FALSE"
+"chart_hu_281",281,"Betétdíjas göngyölegek","chart_hu_28","account.data_account_type_asset","other","FALSE"
+"chart_hu_3",3,"KÖVETELÉSEK,PÉNZÜGYI ESZK,AKTÍV IDÖB.ELH","chart_hu_1_4","account.account_type_asset_view1","view","FALSE"
+"chart_hu_31",31,"KÖVETELÉSEK ÁRUSZÁLL.- SZOLGÁLTATÁSBÓL","chart_hu_3","account.account_type_asset_view1","view","FALSE"
+"chart_hu_311",311,"Belföldi követelések","chart_hu_31","account.data_account_type_receivable","receivable","TRUE"
+"chart_hu_316",316,"Külföldi követelések","chart_hu_31","account.data_account_type_receivable","receivable","TRUE"
+"chart_hu_35",35,"ADOTT ELÖLEGEK","chart_hu_3","account.account_type_asset_view1","view","FALSE"
+"chart_hu_351",351,"Adott elõlegek","chart_hu_35","account.data_account_type_asset","other","FALSE"
+"chart_hu_36",36,"EGYÉB KÖVETELÉSEK","chart_hu_3","account.account_type_asset_view1","view","FALSE"
+"chart_hu_361",361,"Munkavállalókkal szembeni követelés","chart_hu_36","account.data_account_type_asset","other","FALSE"
+"chart_hu_368",368,"Különféle egyéb követelések","chart_hu_36","account.data_account_type_asset","other","FALSE"
+"chart_hu_37",37,"ÉRTÉKPAPÍROK","chart_hu_3","account.account_type_asset_view1","view","FALSE"
+"chart_hu_371",371,"Részesedés kapcsolt vállalkozásban","chart_hu_37","account.data_account_type_asset","other","FALSE"
+"chart_hu_372",372,"Egyéb részesedés","chart_hu_37","account.data_account_type_asset","other","FALSE"
+"chart_hu_373",373,"Saját részvények, saját üzletrészek","chart_hu_37","account.data_account_type_asset","other","FALSE"
+"chart_hu_374",374,"Forgatási célú hitelv. m. értékpapírok","chart_hu_37","account.data_account_type_asset","other","FALSE"
+"chart_hu_38",38,"PÉNZESZKÖZÖK","chart_hu_3","account.account_type_asset_view1","view","FALSE"
+"chart_hu_381",381,"Pénztárak","chart_hu_38","account.account_type_asset_view1","view","FALSE"
+"chart_hu_3811",3811,"Pénztár","chart_hu_381","account.data_account_type_cash","Liquidity","FALSE"
+"chart_hu_382",382,"Valuta pénztár","chart_hu_38","account.data_account_type_cash","other","FALSE"
+"chart_hu_384",384,"Elszámolási betétszámla","chart_hu_38","account.account_type_asset_view1","view","FALSE"
+"chart_hu_3841",3841,"Bankszámla","chart_hu_384","account.data_account_type_bank","Liquidity","FALSE"
+"chart_hu_385",385,"Elkülönített betétszámlák","chart_hu_38","account.data_account_type_bank","other","FALSE"
+"chart_hu_386",386,"Deviza betétszámla","chart_hu_38","account.data_account_type_bank","other","FALSE"
+"chart_hu_387",387,"Pénzhelyettesítõ eszk. (utalvány, jegy)","chart_hu_38","account.data_account_type_bank","other","FALSE"
+"chart_hu_389",389,"Átvezetési számla","chart_hu_38","account.data_account_type_bank","other","FALSE"
+"chart_hu_39",39,"AKTÍV IDÖBELI ELHATÁROLÁS","chart_hu_3","account.account_type_asset_view1","view","FALSE"
+"chart_hu_391",391,"Aktív idõbeli elhatárolása","chart_hu_39","account.data_account_type_asset","other","FALSE"
+"chart_hu_4",4,"FORRÁSOK (PASSZÍVÁK)","chart_hu_1_4","account.account_type_liability_view1","view","FALSE"
+"chart_hu_41",41,"SAJÁT TÖKE","chart_hu_4","account.account_type_liability_view1","view","FALSE"
+"chart_hu_411",411,"Jegyzett tõke","chart_hu_41","account.data_account_type_liability","other","FALSE"
+"chart_hu_412",412,"Tõketartalék","chart_hu_41","account.data_account_type_liability","other","FALSE"
+"chart_hu_413",413,"Eredménytartalék","chart_hu_41","account.data_account_type_liability","other","FALSE"
+"chart_hu_414",414,"Lekötött tartalék","chart_hu_41","account.data_account_type_liability","other","FALSE"
+"chart_hu_417",417,"Értékelési tartalék","chart_hu_41","account.data_account_type_liability","other","FALSE"
+"chart_hu_419",419,"Mérleg szerinti eredmény","chart_hu_41","account.data_account_type_liability","other","FALSE"
+"chart_hu_42",42,"CÉLTARTALÉKOK","chart_hu_4","account.account_type_liability_view1","view","FALSE"
+"chart_hu_421",421,"Céltartalék várható kötelezettségre","chart_hu_42","account.data_account_type_liability","other","FALSE"
+"chart_hu_43",43,"HÁTRASOROLT KÖTELEZETTSÉGEK","chart_hu_4","account.account_type_liability_view1","view","FALSE"
+"chart_hu_431",431,"Hátrasorolt kötelezettség","chart_hu_43","account.data_account_type_liability","other","FALSE"
+"chart_hu_44",44,"HOSSZÚ LEJÁRATÚ KÖTELEZETTSÉGEK","chart_hu_4","account.account_type_liability_view1","view","FALSE"
+"chart_hu_441",441,"Hosszú lejáratra kapott kölcsönök","chart_hu_44","account.data_account_type_liability","other","FALSE"
+"chart_hu_442",442,"Átváltoztatható kötvények","chart_hu_44","account.data_account_type_liability","other","FALSE"
+"chart_hu_443",443,"Tartozások kötvénykibocsátásból","chart_hu_44","account.data_account_type_liability","other","FALSE"
+"chart_hu_444",444,"Beruházási és fejlesztési hitelek","chart_hu_44","account.data_account_type_liability","other","FALSE"
+"chart_hu_445",445,"Egyéb hosszú lejáratú hitelek","chart_hu_44","account.data_account_type_liability","other","FALSE"
+"chart_hu_446",446,"Tartós köt. kapcs. vállalkozással sz.","chart_hu_44","account.data_account_type_liability","other","FALSE"
+"chart_hu_447",447,"Tartós köt. egyéb rész. váll. szemben","chart_hu_44","account.data_account_type_liability","other","FALSE"
+"chart_hu_448",448,"Pénzügyi lízinggel kapcsolatos kötelez.","chart_hu_44","account.data_account_type_liability","other","FALSE"
+"chart_hu_449",449,"Egyéb hosszú lej. kötelezettségek","chart_hu_44","account.data_account_type_liability","other","FALSE"
+"chart_hu_45",45,"RÖVID LEJÁRATú KÖTELEZETTSÉGEK","chart_hu_4","account.account_type_liability_view1","view","FALSE"
+"chart_hu_451",451,"Rövid lejáratú kölcsönök","chart_hu_45","account.data_account_type_liability","other","FALSE"
+"chart_hu_452",452,"Rövid lejáratú hitelek","chart_hu_45","account.data_account_type_liability","other","FALSE"
+"chart_hu_453",453,"Vevõktõl kapott elõlegek","chart_hu_45","account.data_account_type_liability","other","FALSE"
+"chart_hu_454",454,"Szállítók","chart_hu_45","account.account_type_liability_view1","view","FALSE"
+"chart_hu_4541",4541,"Belföldi szállítók","chart_hu_454","account.data_account_type_payable","payable","TRUE"
+"chart_hu_4542",4542,"Külföldi szállítók","chart_hu_454","account.data_account_type_payable","payable","TRUE"
+"chart_hu_46",46,"EGYÉB RÖVID LEJÁRATú KÖTELEZETTSÉGEK","chart_hu_4","account.account_type_liability_view1","view","FALSE"
+"chart_hu_461",461,"Társasági adó és osztalékadó elszámolás","chart_hu_46","account.data_account_type_liability","other","FALSE"
+"chart_hu_462",462,"Személyi jövedelemadó elszámolása","chart_hu_46","account.data_account_type_liability","other","FALSE"
+"chart_hu_463",463,"Költségvetési befizetési kötelezettségek","chart_hu_46","account.data_account_type_liability","other","FALSE"
+"chart_hu_464",464,"Költségvetési befizetési köt.teljesítése","chart_hu_46","account.data_account_type_liability","other","FALSE"
+"chart_hu_465",465,"Vám- és Pénzügyõrség elszámolási számla","chart_hu_46","account.data_account_type_liability","other","FALSE"
+"chart_hu_466",466,"Elõzetesen felszámított ált.forgalmi adó","chart_hu_46","account.data_account_type_liability","other","FALSE"
+"chart_hu_467",467,"Fizetendõ általános forgalmi adó","chart_hu_46","account.data_account_type_liability","other","FALSE"
+"chart_hu_468",468,"Áfa pénzügyi elszámolási számla","chart_hu_46","account.data_account_type_liability","other","FALSE"
+"chart_hu_469",469,"Önkormányzati adók elszámolási számla","chart_hu_46","account.data_account_type_liability","other","FALSE"
+"chart_hu_47",47,"RÖVID LEJÁRATú KÖTELEZETTSÉGEK","chart_hu_4","account.account_type_liability_view1","view","FALSE"
+"chart_hu_471",471,"Jövedelem elszámolási számla","chart_hu_47","account.data_account_type_liability","other","FALSE"
+"chart_hu_472",472,"Fel nem vett járandóságok","chart_hu_47","account.data_account_type_liability","other","FALSE"
+"chart_hu_473",473,"Társadalombiztosítási kötelezettség","chart_hu_47","account.data_account_type_liability","other","FALSE"
+"chart_hu_474",474,"Elkülönített alapokkal kapcs. fiz. köt","chart_hu_47","account.data_account_type_liability","other","FALSE"
+"chart_hu_475",475,"Magánnyugdíjpénztárak befiz. kötelezetts","chart_hu_47","account.data_account_type_liability","other","FALSE"
+"chart_hu_476",476,"Egyéb rövid lej.kötelezettség munkaváll.","chart_hu_47","account.data_account_type_liability","other","FALSE"
+"chart_hu_477",477,"Egyéb rövid lejáratú kötelezettség","chart_hu_47","account.data_account_type_liability","other","FALSE"
+"chart_hu_478",478,"Magánszemélytõl levont 4% különadó","chart_hu_47","account.data_account_type_liability","other","FALSE"
+"chart_hu_479",479,"Egyéb befizetési kötelezettségek","chart_hu_47","account.data_account_type_liability","other","FALSE"
+"chart_hu_48",48,"PASSZÍV IDÖBELI ELHATÁROLÁS","chart_hu_4","account.account_type_liability_view1","view","FALSE"
+"chart_hu_481",481,"Bevételek passzív idõbeli elhatárolása","chart_hu_48","account.data_account_type_liability","other","FALSE"
+"chart_hu_482",482,"Költségek,ráford. passzív idõbeli elhat.","chart_hu_48","account.data_account_type_liability","other","FALSE"
+"chart_hu_483",483,"Halasztott bevételek","chart_hu_48","account.data_account_type_liability","other","FALSE"
+"chart_hu_49",49,"ÉVI MÉRLEG SZÁMLÁK","chart_hu_4","account.account_type_liability_view1","view","FALSE"
+"chart_hu_491",491,"Nyitómérleg számla","chart_hu_49","account.data_account_type_liability","other","FALSE"
+"chart_hu_5_9","5-9","Eredmény számlák","chart_hu_0","account.data_account_type_view","view","FALSE"
+"chart_hu_5",5,"KÖLTSÉGNEMEK","chart_hu_5_9","account.data_account_type_expense","view","FALSE"
+"chart_hu_51",51,"ANYAGKÖLTSÉG","chart_hu_5","account.data_account_type_expense","view","FALSE"
+"chart_hu_511",511,"Vásárolt anyagok költségei","chart_hu_51","account.data_account_type_expense","other","FALSE"
+"chart_hu_512",512,"Egy éven belül elhaszn. anyagi eszközök","chart_hu_51","account.data_account_type_expense","other","FALSE"
+"chart_hu_513",513,"Egyéb anyagköltség","chart_hu_51","account.data_account_type_expense","other","FALSE"
+"chart_hu_519",519,"Anyagköltség megtérülés","chart_hu_51","account.data_account_type_expense","other","FALSE"
+"chart_hu_52",52,"IGÉNYBE VETT SZOLGÁLTATÁSOK KÖLTSÉGEI","chart_hu_5","account.data_account_type_expense","view","FALSE"
+"chart_hu_521",521,"Szállítási, rakodási költség","chart_hu_52","account.data_account_type_expense","other","FALSE"
+"chart_hu_522",522,"Bérleti díjak","chart_hu_52","account.data_account_type_expense","other","FALSE"
+"chart_hu_523",523,"Javítási, karbantartási költségek","chart_hu_52","account.data_account_type_expense","other","FALSE"
+"chart_hu_524",524,"Hirdetés, reklám-propaganda költség","chart_hu_52","account.data_account_type_expense","other","FALSE"
+"chart_hu_525",525,"Oktatási, továbbképzési költségek","chart_hu_52","account.data_account_type_expense","other","FALSE"
+"chart_hu_526",526,"Utazási- és kiküldetési költségek","chart_hu_52","account.data_account_type_expense","other","FALSE"
+"chart_hu_527",527,"Postai, távközlési költségek","chart_hu_52","account.data_account_type_expense","other","FALSE"
+"chart_hu_528",528,"Szakkönyv, folyóirat, napilap beszerzés","chart_hu_52","account.data_account_type_expense","other","FALSE"
+"chart_hu_529",529,"Egyéb igénybevett szolgáltatások ktg-ei","chart_hu_52","account.data_account_type_expense","other","FALSE"
+"chart_hu_53",53,"EGYÉB SZOLGÁLTATÁSOK KÖLTSÉGEI","chart_hu_5","account.data_account_type_expense","view","FALSE"
+"chart_hu_531",531,"Hatósági igazgatási díjak (illetékek)","chart_hu_53","account.data_account_type_expense","other","FALSE"
+"chart_hu_532",532,"Pénzügyi szolg-i díjak, bankköltségek","chart_hu_53","account.data_account_type_expense","other","FALSE"
+"chart_hu_533",533,"Biztosítási díjak","chart_hu_53","account.data_account_type_expense","other","FALSE"
+"chart_hu_54",54,"BÉRKÖLTSÉG","chart_hu_5","account.data_account_type_expense","view","FALSE"
+"chart_hu_541",541,"Munkavállalók munkabér költsége","chart_hu_54","account.data_account_type_expense","other","FALSE"
+"chart_hu_542",542,"Megbízási díjak bérköltség terhére","chart_hu_54","account.data_account_type_expense","other","FALSE"
+"chart_hu_543",543,"Tagok személyes közr. ellenértéke","chart_hu_54","account.data_account_type_expense","other","FALSE"
+"chart_hu_544",544,"Egyszerûsített fogl. bérköltsége","chart_hu_54","account.data_account_type_expense","other","FALSE"
+"chart_hu_55",55,"SZEMÉLYI JELLEGû EGYÉB KIFIZETÉSEK","chart_hu_5","account.data_account_type_expense","view","FALSE"
+"chart_hu_551",551,"Személyi jellegû kifizetések","chart_hu_55","account.data_account_type_expense","other","FALSE"
+"chart_hu_552",552,"Jóléti és kulturális költségek","chart_hu_55","account.data_account_type_expense","other","FALSE"
+"chart_hu_553",553,"Természetbeni juttatások","chart_hu_55","account.data_account_type_expense","other","FALSE"
+"chart_hu_554",554,"Egyéb személyi jellegû kifizetések","chart_hu_55","account.data_account_type_expense","other","FALSE"
+"chart_hu_555",555,"Magánnyugdíjpénztári tagdíjak, hozzájár.","chart_hu_55","account.data_account_type_expense","other","FALSE"
+"chart_hu_556",556,"Foglalkoztatót terhelõ táppénz hjárulás","chart_hu_55","account.data_account_type_expense","other","FALSE"
+"chart_hu_557",557,"Kifizetõt terhelõ személyi jövedelemadó","chart_hu_55","account.data_account_type_expense","other","FALSE"
+"chart_hu_56",56,"BÉRJÁRULÉKOK","chart_hu_5","account.data_account_type_expense","view","FALSE"
+"chart_hu_561",561,"Társadalombiztosítási járulék","chart_hu_56","account.data_account_type_expense","other","FALSE"
+"chart_hu_562",562,"Egészségügyi hozzájárulás","chart_hu_56","account.data_account_type_expense","other","FALSE"
+"chart_hu_563",563,"Munkaadói járulék","chart_hu_56","account.data_account_type_expense","other","FALSE"
+"chart_hu_564",564,"Szakképzési hozzájárulás","chart_hu_56","account.data_account_type_expense","other","FALSE"
+"chart_hu_565",565,"Rehabilitációs hozzájárulás","chart_hu_56","account.data_account_type_expense","other","FALSE"
+"chart_hu_566",566,"Egyszerûsített közteherviselési hjár","chart_hu_56","account.data_account_type_expense","other","FALSE"
+"chart_hu_567",567,"Egyszerûsített fogl. közteher","chart_hu_56","account.data_account_type_expense","other","FALSE"
+"chart_hu_568",568,"Közteherjegy","chart_hu_56","account.data_account_type_expense","other","FALSE"
+"chart_hu_57",57,"ÉRTÉKCSÖKKENÉSI LEÍRÁS","chart_hu_5","account.data_account_type_expense","view","FALSE"
+"chart_hu_571",571,"Terv szerinti értékcsökkenés lineáris","chart_hu_57","account.data_account_type_expense","other","FALSE"
+"chart_hu_572",572,"Terv szerinti egyösszegû (kisértékûek)","chart_hu_57","account.data_account_type_expense","other","FALSE"
+"chart_hu_58",58,"AKTÍVÁLT SAJÁT TELJESÍTMÉNYEK ÉRTÉKE","chart_hu_5","account.data_account_type_expense","view","FALSE"
+"chart_hu_581",581,"Saját term. készletek állományváltozása","chart_hu_58","account.data_account_type_expense","other","FALSE"
+"chart_hu_582",582,"Saját elõállítási eszközök aktivált ért.","chart_hu_58","account.data_account_type_expense","other","FALSE"
+"chart_hu_59",59,"KÖLTSÉGNEM ÁTVEZETÉSI SZÁMLA","chart_hu_5","account.data_account_type_expense","view","FALSE"
+"chart_hu_591",591,"Anyagköltség átvezetési szla","chart_hu_59","account.data_account_type_expense","other","FALSE"
+"chart_hu_592",592,"Igénybevett szolg. átvezetési szla","chart_hu_59","account.data_account_type_expense","other","FALSE"
+"chart_hu_593",593,"Egyéb szolgáltatások átvezetési szla","chart_hu_59","account.data_account_type_expense","other","FALSE"
+"chart_hu_594",594,"Bérköltség átvezetési szla","chart_hu_59","account.data_account_type_expense","other","FALSE"
+"chart_hu_595",595,"Személyi jell. kif. átvezetési szla","chart_hu_59","account.data_account_type_expense","other","FALSE"
+"chart_hu_596",596,"Bérjárulékok átvezetési szla","chart_hu_59","account.data_account_type_expense","other","FALSE"
+"chart_hu_597",597,"Értékcsökkenési leírás átvez. szla","chart_hu_59","account.data_account_type_expense","other","FALSE"
+"chart_hu_8",8,"AZ ÉRTÉKESÍTÉS ÖNKÖLTS. ÉS RÁFORDÍTÁSOK","chart_hu_5_9","account.data_account_type_expense","view","FALSE"
+"chart_hu_81",81,"ANYAGJELLEGÛ RÁFORDÍTÁSOK","chart_hu_8","account.data_account_type_expense","view","FALSE"
+"chart_hu_811",811,"Anyagköltség","chart_hu_81","account.data_account_type_expense","other","FALSE"
+"chart_hu_812",812,"Igénybevett szolgáltatások értéke","chart_hu_81","account.data_account_type_expense","other","FALSE"
+"chart_hu_813",813,"Egyéb szolgáltatások értéke","chart_hu_81","account.data_account_type_expense","other","FALSE"
+"chart_hu_814",814,"Eladott áruk beszerzési értéke","chart_hu_81","account.data_account_type_expense","other","FALSE"
+"chart_hu_815",815,"Eladott (közvetített) szolg. értéke","chart_hu_81","account.data_account_type_expense","other","FALSE"
+"chart_hu_82",82,"SZEMÉLYI JELLEGû RÁFORDÍTÁSOK","chart_hu_8","account.data_account_type_expense","view","FALSE"
+"chart_hu_821",821,"Bérköltség","chart_hu_82","account.data_account_type_expense","other","FALSE"
+"chart_hu_822",822,"Személyi jellegü egyéb kifizetések","chart_hu_82","account.data_account_type_expense","other","FALSE"
+"chart_hu_823",823,"Bérjárulékok","chart_hu_82","account.data_account_type_expense","other","FALSE"
+"chart_hu_83",83,"ÉRTÉKCSÖKKENÉSI LEÍRÁS","chart_hu_8","account.data_account_type_expense","view","FALSE"
+"chart_hu_86",86,"EGYÉB RÁFORDÍTÁSOK","chart_hu_8","account.data_account_type_expense","view","FALSE"
+"chart_hu_861",861,"Értékesített eszk.imm.javak nytsz értéke","chart_hu_86","account.data_account_type_expense","other","FALSE"
+"chart_hu_862",862,"Ért.átruházott követelések könyvsz. ért.","chart_hu_86","account.data_account_type_expense","other","FALSE"
+"chart_hu_863",863,"Az üzleti évhez kapcs. ráfordítások","chart_hu_86","account.data_account_type_expense","other","FALSE"
+"chart_hu_864",864,"Utólag adott pü. rendezett engedmény","chart_hu_86","account.data_account_type_expense","other","FALSE"
+"chart_hu_865",865,"Céltartalék képzése","chart_hu_86","account.data_account_type_expense","other","FALSE"
+"chart_hu_866",866,"Elszámolt értékvesztés, tervenf. értékcs","chart_hu_86","account.data_account_type_expense","other","FALSE"
+"chart_hu_867",867,"Adók, illetékek, hozzájárulások","chart_hu_86","account.data_account_type_expense","other","FALSE"
+"chart_hu_869",869,"Különféle egyéb ráfordítások","chart_hu_86","account.data_account_type_expense","other","FALSE"
+"chart_hu_87",87,"PÉNZÜGYI MÜVELETEK RÁFORDÍTÁSAI","chart_hu_8","account.data_account_type_expense","view","FALSE"
+"chart_hu_871",871,"Befektetett püi. eszk. árf.vesztesége","chart_hu_87","account.data_account_type_expense","other","FALSE"
+"chart_hu_872",872,"Fizetendõ kamatok, kamatjell. ráford.","chart_hu_87","account.data_account_type_expense","other","FALSE"
+"chart_hu_874",874,"Részesedések,é.papírok,bankb. értékveszt","chart_hu_87","account.data_account_type_expense","other","FALSE"
+"chart_hu_875",875,"Forgóeszk. értékpapír árf.vesztesége","chart_hu_87","account.data_account_type_expense","other","FALSE"
+"chart_hu_876",876,"Átváltási, értékelési árfolyamveszteség","chart_hu_87","account.data_account_type_expense","other","FALSE"
+"chart_hu_877",877,"Egyéb árfolyamveszteségek, opciós díjak","chart_hu_87","account.data_account_type_expense","other","FALSE"
+"chart_hu_878",878,"Vásárolt köv. kapcs. ráfordítások","chart_hu_87","account.data_account_type_expense","other","FALSE"
+"chart_hu_879",879,"Egyéb pénzügyi ráfordítások","chart_hu_87","account.data_account_type_expense","other","FALSE"
+"chart_hu_88",88,"RENDKIVÜLI RÁFORDÍTÁSOK","chart_hu_8","account.data_account_type_expense","view","FALSE"
+"chart_hu_881",881,"Társaságban bevitt eszk. nytsz. értéke","chart_hu_88","account.data_account_type_expense","other","FALSE"
+"chart_hu_887",887,"Saját üzletrész nyilvántartási értéke","chart_hu_88","account.data_account_type_expense","other","FALSE"
+"chart_hu_888",888,"Tartozásátv. szerz. szerinti összege","chart_hu_88","account.data_account_type_expense","other","FALSE"
+"chart_hu_889",889,"Egyéb vagyoncsökk. rendkívüli ráfordítás","chart_hu_88","account.data_account_type_expense","other","FALSE"
+"chart_hu_89",89,"NYERESÉGET TERHELÖ ADÓK","chart_hu_8","account.data_account_type_expense","view","FALSE"
+"chart_hu_891",891,"Társasági adó","chart_hu_89","account.data_account_type_expense","other","FALSE"
+"chart_hu_892",892,"Társas vállalkozás különadója","chart_hu_89","account.data_account_type_expense","other","FALSE"
+"chart_hu_895",895,"Egyszerüsített vállalkozói adó","chart_hu_89","account.data_account_type_expense","other","FALSE"
+"chart_hu_9",9,"AZ ÉRTÉKESÍTÉS ÁRBEVÉTELE, BEVÉTELEK","chart_hu_5_9","account.data_account_type_income","view","FALSE"
+"chart_hu_91",91,"BELFÖLDI ÉRKÉKESÍTÉS ÁRBEVÉTELE","chart_hu_9","account.data_account_type_income","view","FALSE"
+"chart_hu_911",911,"Belföldi értékesítés árbevétele","chart_hu_91","account.data_account_type_income","other","FALSE"
+"chart_hu_92",92,"BELFÖLDI ÉRTÉKESÍTÉS ÁRBEVÉTELE","chart_hu_9","account.data_account_type_income","view","FALSE"
+"chart_hu_921",921,"Belföldi értékesítés árbevétele","chart_hu_92","account.data_account_type_income","other","FALSE"
+"chart_hu_93",93,"EXPORT ÉRTÉKESÍTÉS ÁRBEVÉTELE","chart_hu_9","account.data_account_type_income","view","FALSE"
+"chart_hu_931",931,"Export értékesítés árbev. EU tagországba","chart_hu_93","account.data_account_type_income","other","FALSE"
+"chart_hu_932",932,"Export értékesítés árbev.nem EU tagorsz.","chart_hu_93","account.data_account_type_income","other","FALSE"
+"chart_hu_96",96,"EGYÉB BEVÉTELEK","chart_hu_9","account.data_account_type_income","view","FALSE"
+"chart_hu_961",961,"Ért.immat. javak, tárgyi eszk.bevétele","chart_hu_96","account.data_account_type_income","other","FALSE"
+"chart_hu_962",962,"Ért,átruházott követelések elism.mértéke","chart_hu_96","account.data_account_type_income","other","FALSE"
+"chart_hu_963",963,"Az üzleti évhez kapcs. egyéb bevételek","chart_hu_96","account.data_account_type_income","other","FALSE"
+"chart_hu_964",964,"Utólag kapott pü. rendezett engedmény","chart_hu_96","account.data_account_type_income","other","FALSE"
+"chart_hu_965",965,"Céltartalék felhasználása","chart_hu_96","account.data_account_type_income","other","FALSE"
+"chart_hu_966",966,"Értékvesztések visszaírása, tervenf.écs.","chart_hu_96","account.data_account_type_income","other","FALSE"
+"chart_hu_967",967,"Visszafiz. köt. nélkül kapott támogatás","chart_hu_96","account.data_account_type_income","other","FALSE"
+"chart_hu_968",968,"Biztosító által visszaig. kártérítés ö.","chart_hu_96","account.data_account_type_income","other","FALSE"
+"chart_hu_969",969,"Különféle egyéb bevételek","chart_hu_96","account.data_account_type_income","other","FALSE"
+"chart_hu_97",97,"PÉNZÜGYI MÜVELETEK BEVÉTELEI","chart_hu_9","account.data_account_type_income","view","FALSE"
+"chart_hu_971",971,"Kapott (járó) osztalék, részesedés","chart_hu_97","account.data_account_type_income","other","FALSE"
+"chart_hu_972",972,"Részesedések ért. árfolyamnyeresége","chart_hu_97","account.data_account_type_income","other","FALSE"
+"chart_hu_973",973,"Befekt. püi.eszk. kamatai, árf.nyeres.","chart_hu_97","account.data_account_type_income","other","FALSE"
+"chart_hu_974",974,"Egyéb kapott kamatok,kamatjell.bevételek","chart_hu_97","account.data_account_type_income","other","FALSE"
+"chart_hu_975",975,"Forgóeszk. értékpapír árfolyamnyeresége","chart_hu_97","account.data_account_type_income","other","FALSE"
+"chart_hu_976",976,"Átváltási, átértékeléskori árf.nyereség","chart_hu_97","account.data_account_type_income","other","FALSE"
+"chart_hu_977",977,"Egyéb árfolyamnyereségek, opciós bev.","chart_hu_97","account.data_account_type_income","other","FALSE"
+"chart_hu_978",978,"Vás. követelésekkel kapcs. bevételek","chart_hu_97","account.data_account_type_income","other","FALSE"
+"chart_hu_979",979,"Egyéb pénzügyi mûveletek bevételei","chart_hu_97","account.data_account_type_income","other","FALSE"
+"chart_hu_98",98,"RENDKIVÜLI BEVÉTELEK","chart_hu_9","account.data_account_type_income","view","FALSE"
+"chart_hu_981",981,"Rendkívüli bevételek","chart_hu_98","account.data_account_type_income","other","FALSE"
diff --git a/addons/l10n_hu/data/account.chart.template.csv b/addons/l10n_hu/data/account.chart.template.csv
new file mode 100644
index 00000000000..fd44d4fd532
--- /dev/null
+++ b/addons/l10n_hu/data/account.chart.template.csv
@@ -0,0 +1,2 @@
+"id","name","code_digits","account_root_id/id","tax_code_root_id/id","bank_account_view_id/id","property_account_receivable/id","property_account_payable/id","property_account_expense_categ/id","property_account_income_categ/id","property_account_expense/id","property_account_income/id","tax_code_root_id/id"
+"hungarian_chart_template","Magyar főkönyvi kivonat",4,"chart_hu_0","tax_code_hu_1000","chart_hu_384","chart_hu_311","chart_hu_4541","chart_hu_81","chart_hu_911","chart_hu_81","chart_hu_911","tax_code_hu_vat"
diff --git a/addons/l10n_hu/data/account.financial.report.csv b/addons/l10n_hu/data/account.financial.report.csv
new file mode 100644
index 00000000000..ff33f7972d0
--- /dev/null
+++ b/addons/l10n_hu/data/account.financial.report.csv
@@ -0,0 +1,43 @@
+"id","display_detail","style_overwrite","account_type_ids/id","account_ids/id","parent_id/id","sign","name","account_report_id/id","sequence","type"
+"l10n_hu.account_financial_report_pl_hu","Display children flat","Main Title 1 (bold, underlined)",,,,"Reverse balance sign","Eredménykimutatás – HU",,30,"View"
+"l10n_hu.account_financial_report_pl_hu_G","Display children flat","Main Title 1 (bold, underlined)",,,"l10n_hu.account_financial_report_pl_hu","Reverse balance sign","Mérleg szerinti eredmény",,10,"View"
+"l10n_hu.account_financial_report_pl_hu_F","Display children flat","Main Title 1 (bold, underlined)",,,"l10n_hu.account_financial_report_pl_hu_G","Reverse balance sign","Adózott eredmény",,12,"View"
+"l10n_hu.account_financial_report_pl_hu_XIII","Display children with hierarchy","Normal Text","account_type_pl_hu_XIII",,"l10n_hu.account_financial_report_pl_hu_G","Reverse balance sign","Osztalék",,11,"Account Type"
+"l10n_hu.account_financial_report_pl_hu_E","Display children flat","Main Title 1 (bold, underlined)",,,"l10n_hu.account_financial_report_pl_hu_F","Reverse balance sign","Adózás előtti eredmény",,14,"View"
+"l10n_hu.account_financial_report_pl_hu_XII","Display children with hierarchy","Normal Text","account_type_pl_hu_XII",,"l10n_hu.account_financial_report_pl_hu_F","Reverse balance sign","Adófizetési kötelezettség",,13,"Account Type"
+"l10n_hu.account_financial_report_pl_hu_D","Display children flat","Title 2 (bold)",,,"l10n_hu.account_financial_report_pl_hu_E","Reverse balance sign","Rendkívüli eredmény",,15,"View"
+"l10n_hu.account_financial_report_pl_hu_X","Display children with hierarchy","Normal Text","account_type_pl_hu_X",,"l10n_hu.account_financial_report_pl_hu_D","Reverse balance sign","Rendkívüli bevételek",,17,"Account Type"
+"l10n_hu.account_financial_report_pl_hu_XI","Display children with hierarchy","Normal Text","account_type_pl_hu_XI",,"l10n_hu.account_financial_report_pl_hu_D","Reverse balance sign","Rendkivüli ráfordítások",,16,"Account Type"
+"l10n_hu.account_financial_report_pl_hu_C","Display children flat","Main Title 1 (bold, underlined)",,,"l10n_hu.account_financial_report_pl_hu_E","Reverse balance sign","Szokásos vállalkozási eredmény",,18,"View"
+"l10n_hu.account_financial_report_pl_hu_A","Display children flat","Main Title 1 (bold, underlined)",,,"l10n_hu.account_financial_report_pl_hu_C","Reverse balance sign","Üzemi (üzleti) tevékenység eredménye",,22,"View"
+"l10n_hu.account_financial_report_pl_hu_B","Display children flat","Title 2 (bold)",,,"l10n_hu.account_financial_report_pl_hu_C","Reverse balance sign","Pénzügyi műveletek eredménye",,19,"View"
+"l10n_hu.account_financial_report_pl_hu_VIII","Display children with hierarchy","Normal Text","account_type_pl_hu_VIII",,"l10n_hu.account_financial_report_pl_hu_B","Reverse balance sign","Pénzügyi műveletek bevételei",,21,"Account Type"
+"l10n_hu.account_financial_report_pl_hu_IX","Display children with hierarchy","Normal Text","account_type_pl_hu_IX",,"l10n_hu.account_financial_report_pl_hu_B","Reverse balance sign","Pénzügyi műveletek ráfordításai ",,20,"Account Type"
+"l10n_hu.account_financial_report_pl_hu_I","Display children with hierarchy","Normal Text","account_type_pl_hu_I",,"l10n_hu.account_financial_report_pl_hu_A","Reverse balance sign","Értékesítés nettó árbevétele ",,1,"Account Type"
+"l10n_hu.account_financial_report_pl_hu_II","Display children with hierarchy","Normal Text","account_type_pl_hu_II",,"l10n_hu.account_financial_report_pl_hu_A","Reverse balance sign","Aktivált saját teljesítmények értéke ",,2,"Account Type"
+"l10n_hu.account_financial_report_pl_hu_III","Display children with hierarchy","Normal Text","account_type_pl_hu_III",,"l10n_hu.account_financial_report_pl_hu_A","Reverse balance sign","Egyéb bevételek",,3,"Account Type"
+"l10n_hu.account_financial_report_pl_hu_IV","Display children with hierarchy","Normal Text","account_type_pl_hu_IV",,"l10n_hu.account_financial_report_pl_hu_A","Reverse balance sign","Anyagjellegű ráfordítások ",,4,"Account Type"
+"l10n_hu.account_financial_report_pl_hu_V","Display children with hierarchy","Normal Text","account_type_pl_hu_V",,"l10n_hu.account_financial_report_pl_hu_A","Reverse balance sign","Személyi jellegű ráfordítások ",,5,"Account Type"
+"l10n_hu.account_financial_report_pl_hu_VI","Display children with hierarchy","Normal Text","account_type_pl_hu_VI",,"l10n_hu.account_financial_report_pl_hu_A","Reverse balance sign","Értékcsökkenési leírás",,6,"Account Type"
+"l10n_hu.account_financial_report_pl_hu_VII","Display children with hierarchy","Normal Text","account_type_pl_hu_VII",,"l10n_hu.account_financial_report_pl_hu_A","Reverse balance sign","Egyéb ráfordítások",,7,"Account Type"
+"l10n_hu.account_financial_report_bs_hu","Display children flat",,,,,"Preserve balance sign","Mérleg – HU",,30,"View"
+"l10n_hu.account_financial_report_bs_hu_AC","Display children with hierarchy","Main Title 1 (bold, underlined)",,,"l10n_hu.account_financial_report_bs_hu","Preserve balance sign","Eszközök Összesen",,100,"View"
+"l10n_hu.account_financial_report_bs_hu_DG","Display children with hierarchy","Main Title 1 (bold, underlined)",,,"l10n_hu.account_financial_report_bs_hu","Reverse balance sign","Források Összesen",,200,"View"
+"l10n_hu.account_financial_report_bs_hu_A","Display children flat","Title 2 (bold)","account_type_bs_hu_A",,"l10n_hu.account_financial_report_bs_hu_AC","Preserve balance sign","Befektetett Eszközök",,110,"View"
+"l10n_hu.account_financial_report_bs_hu_AI","Display children flat","Normal Text","account_type_bs_hu_AI",,"l10n_hu.account_financial_report_bs_hu_A","Preserve balance sign","Immateriális Javak",,10,"Account Type"
+"l10n_hu.account_financial_report_bs_hu_AII","Display children flat","Normal Text","account_type_bs_hu_AII",,"l10n_hu.account_financial_report_bs_hu_A","Preserve balance sign","Tárgyi Eszközök",,10,"Account Type"
+"l10n_hu.account_financial_report_bs_hu_AIII","Display children flat","Normal Text","account_type_bs_hu_AIII",,"l10n_hu.account_financial_report_bs_hu_A","Preserve balance sign","Befektetett Pénzügyi Eszközök",,10,"Account Type"
+"l10n_hu.account_financial_report_bs_hu_B","Display children with hierarchy","Title 2 (bold)","account_type_bs_hu_B",,"l10n_hu.account_financial_report_bs_hu_AC","Preserve balance sign","Forgóeszközök",,120,"View"
+"l10n_hu.account_financial_report_bs_hu_BI","Display children flat","Normal Text","account_type_bs_hu_BI",,"l10n_hu.account_financial_report_bs_hu_B","Preserve balance sign","Készletek",,10,"Account Type"
+"l10n_hu.account_financial_report_bs_hu_BII","Display children flat","Normal Text","account_type_bs_hu_BII",,"l10n_hu.account_financial_report_bs_hu_B","Preserve balance sign","Követelések",,10,"Account Type"
+"l10n_hu.account_financial_report_bs_hu_BIII","Display children flat","Normal Text","account_type_bs_hu_BIII",,"l10n_hu.account_financial_report_bs_hu_B","Preserve balance sign","Értékpapírok",,10,"Account Type"
+"l10n_hu.account_financial_report_bs_hu_BIV","Display children flat","Normal Text","account_type_bs_hu_BIV",,"l10n_hu.account_financial_report_bs_hu_B","Preserve balance sign","Pénzeszközök",,10,"Account Type"
+"l10n_hu.account_financial_report_bs_hu_C","Display children with hierarchy","Title 2 (bold)","account_type_bs_hu_C",,"l10n_hu.account_financial_report_bs_hu_AC","Preserve balance sign","Aktív Időbeli Elhatárolások",,130,"Account Type"
+"l10n_hu.account_financial_report_bs_hu_pl","Display children flat","Title 2 (bold)",,,"l10n_hu.account_financial_report_bs_hu_DG","Reverse balance sign","Számított eredmény","l10n_hu.account_financial_report_pl_hu",201,"Report Value"
+"l10n_hu.account_financial_report_bs_hu_D","Display children with hierarchy","Title 2 (bold)","account_type_bs_hu_D",,"l10n_hu.account_financial_report_bs_hu_DG","Reverse balance sign","Saját Tőke",,210,"Account Type"
+"l10n_hu.account_financial_report_bs_hu_E","Display children with hierarchy","Title 2 (bold)","account_type_bs_hu_E",,"l10n_hu.account_financial_report_bs_hu_DG","Reverse balance sign","Céltartalékok",,220,"Account Type"
+"l10n_hu.account_financial_report_bs_hu_F","Display children with hierarchy","Title 2 (bold)","account_type_bs_hu_F",,"l10n_hu.account_financial_report_bs_hu_DG","Reverse balance sign","Kötelezettségek",,230,"View"
+"l10n_hu.account_financial_report_bs_hu_FI","Display children with hierarchy","Normal Text","account_type_bs_hu_FI",,"l10n_hu.account_financial_report_bs_hu_F","Reverse balance sign","Hátrasorolt Kötelezettségek",,10,"Account Type"
+"l10n_hu.account_financial_report_bs_hu_FII","Display children with hierarchy","Normal Text","account_type_bs_hu_FII",,"l10n_hu.account_financial_report_bs_hu_F","Reverse balance sign","Hosszú Lejáratú Kötelezettségek",,10,"Account Type"
+"l10n_hu.account_financial_report_bs_hu_FIII","Display children with hierarchy","Normal Text","account_type_bs_hu_FIII",,"l10n_hu.account_financial_report_bs_hu_F","Reverse balance sign","Rövid Lejáratú Kötelezettségek",,10,"Account Type"
+"l10n_hu.account_financial_report_bs_hu_G","Display children with hierarchy","Title 2 (bold)","account_type_bs_hu_G",,"l10n_hu.account_financial_report_bs_hu_DG","Reverse balance sign","Passzív Időbeli Elhatárolások",,240,"Account Type"
diff --git a/addons/l10n_hu/data/account.fiscal.position.tax.template.csv b/addons/l10n_hu/data/account.fiscal.position.tax.template.csv
new file mode 100644
index 00000000000..2aa52904f22
--- /dev/null
+++ b/addons/l10n_hu/data/account.fiscal.position.tax.template.csv
@@ -0,0 +1,23 @@
+"id","tax_src_id/id","tax_dest_id/id","position_id/id"
+"fiscal_position_hu_exempt_tax_F27","F27","FA","fiscal_position_hu_exempt"
+"fiscal_position_hu_exempt_tax_F18","F18","FA","fiscal_position_hu_exempt"
+"fiscal_position_hu_exempt_tax_F5","F5","FA","fiscal_position_hu_exempt"
+"fiscal_position_hu_exempt_tax_V27","V27","VA","fiscal_position_hu_exempt"
+"fiscal_position_hu_exempt_tax_V18","V18","VA","fiscal_position_hu_exempt"
+"fiscal_position_hu_exempt_tax_V5","V5","VA","fiscal_position_hu_exempt"
+"fiscal_position_hu_eu_tax_F27","F27","FEU","fiscal_position_hu_eu"
+"fiscal_position_hu_eu_tax_F18","F18","FEU","fiscal_position_hu_eu"
+"fiscal_position_hu_eu_tax_F5","F5","FEU","fiscal_position_hu_eu"
+"fiscal_position_hu_eu_tax_FA","FA","FEU","fiscal_position_hu_eu"
+"fiscal_position_hu_eu_tax_V27","V27","VEU","fiscal_position_hu_eu"
+"fiscal_position_hu_eu_tax_V18","V18","VEU","fiscal_position_hu_eu"
+"fiscal_position_hu_eu_tax_V5","V5","VEU","fiscal_position_hu_eu"
+"fiscal_position_hu_eu_tax_VA","VA","VEU","fiscal_position_hu_eu"
+"fiscal_position_hu_eu_out_tax_F27","F27","FEUO","fiscal_position_hu_eu_out"
+"fiscal_position_hu_eu_out_tax_F18","F18","FEUO","fiscal_position_hu_eu_out"
+"fiscal_position_hu_eu_out_tax_F5","F5","FEUO","fiscal_position_hu_eu_out"
+"fiscal_position_hu_eu_out_tax_FA","FA","FEUO","fiscal_position_hu_eu_out"
+"fiscal_position_hu_eu_out_tax_V27","V27","VEUO","fiscal_position_hu_eu_out"
+"fiscal_position_hu_eu_out_tax_V18","V18","VEUO","fiscal_position_hu_eu_out"
+"fiscal_position_hu_eu_out_tax_V5","V5","VEUO","fiscal_position_hu_eu_out"
+"fiscal_position_hu_eu_out_tax_VA","VA","VEUO","fiscal_position_hu_eu_out"
diff --git a/addons/l10n_hu/data/account.fiscal.position.template.csv b/addons/l10n_hu/data/account.fiscal.position.template.csv
new file mode 100644
index 00000000000..97d35b31c3d
--- /dev/null
+++ b/addons/l10n_hu/data/account.fiscal.position.template.csv
@@ -0,0 +1,4 @@
+"id","chart_template_id/id","name"
+"fiscal_position_hu_exempt","hungarian_chart_template","Alanyi adómentes"
+"fiscal_position_hu_eu","hungarian_chart_template","EU partner"
+"fiscal_position_hu_eu_out","hungarian_chart_template","EU-n kívüli partner"
diff --git a/addons/l10n_hu/data/account.tax.code.template.csv b/addons/l10n_hu/data/account.tax.code.template.csv
new file mode 100644
index 00000000000..04818068104
--- /dev/null
+++ b/addons/l10n_hu/data/account.tax.code.template.csv
@@ -0,0 +1,26 @@
+"id","name","code","parent_id:id","notprintable","sign"
+"tax_code_hu_vat","Általános Forgalmi Adó","ÁFA",,,"1.0"
+"tax_code_hu_vat_base","ÁFA alap","ÁFA – alap","tax_code_hu_vat",,"1.0"
+"tax_code_hu_vat_position","ÁFA fizetndő / visszaigényelhető","ÁFA – fiz/vissz","tax_code_hu_vat",,"1.0"
+"tax_code_hu_1021","Adóalap - Fizetendő ÁFA 18%","06","tax_code_hu_vat_base","FALSE","1.0"
+"tax_code_hu_1011","Adóalap - Fizetendő ÁFA 27%","07","tax_code_hu_vat_base","FALSE","1.0"
+"tax_code_hu_1031","Adóalap - Fizetendő ÁFA 5%","05","tax_code_hu_vat_base","FALSE","1.0"
+"tax_code_hu_1041","Adóalap - Fizetendő ÁFA alanyi adómentes","04","tax_code_hu_vat_base","FALSE","1.0"
+"tax_code_hu_1051","Adóalap - Fizetendő ÁFA EU","02","tax_code_hu_vat_base","FALSE","1.0"
+"tax_code_hu_1061","Adóalap - Fizetendő ÁFA tárgyi adómentes","04","tax_code_hu_vat_base","FALSE","1.0"
+"tax_code_hu_1071","Adóalap - Fizetendő ÁFA Export","01","tax_code_hu_vat_base","FALSE","1.0"
+"tax_code_hu_1081","Adóalap – Fordított ÁFA","29","tax_code_hu_vat_base","FALSE","1.0"
+"tax_code_hu_1221","Adóalap - Visszaigényelhető ÁFA 18%","65","tax_code_hu_vat_base","FALSE","1.0"
+"tax_code_hu_1211","Adóalap - Visszaigényelhető ÁFA 27%","66","tax_code_hu_vat_base","FALSE","1.0"
+"tax_code_hu_1231","Adóalap - Visszaigényelhető ÁFA 5%","64","tax_code_hu_vat_base","FALSE","1.0"
+"tax_code_hu_1240","Adóalap - Visszaigényelhető ÁFA alanyi adómentes","63","tax_code_hu_vat_base","FALSE","1.0"
+"tax_code_hu_1260","Adóalap - Visszaigényelhető ÁFA tárgyi adómentes","63","tax_code_hu_vat_base","FALSE","1.0"
+"tax_code_hu_1250","Adóalap - Visszaigényelhető ÁFA EU","11","tax_code_hu_vat_base","FALSE","1.0"
+"tax_code_hu_1270","Adóalap – Import ÁFA","23","tax_code_hu_vat_base","FALSE","1.0"
+"tax_code_hu_1280","Adóalap – Fordított ÁFA","23","tax_code_hu_vat_base","FALSE","1.0"
+"tax_code_hu_1020","Fizetendő ÁFA 18%","06","tax_code_hu_vat_position","FALSE","1.0"
+"tax_code_hu_1010","Fizetendő ÁFA 27%","07","tax_code_hu_vat_position","FALSE","1.0"
+"tax_code_hu_1030","Fizetendő ÁFA 5%","05","tax_code_hu_vat_position","FALSE","1.0"
+"tax_code_hu_1220","Visszaigényelhető ÁFA 18%","65","tax_code_hu_vat_position","FALSE","-1.0"
+"tax_code_hu_1210","Visszaigényelhető ÁFA 27%","66","tax_code_hu_vat_position","FALSE","-1.0"
+"tax_code_hu_1230","Visszaigényelhető ÁFA 5%","64","tax_code_hu_vat_position","FALSE","-1.0"
diff --git a/addons/l10n_hu/data/account.tax.template.csv b/addons/l10n_hu/data/account.tax.template.csv
new file mode 100644
index 00000000000..8ac513abfbf
--- /dev/null
+++ b/addons/l10n_hu/data/account.tax.template.csv
@@ -0,0 +1,17 @@
+"id","description","chart_template_id/id","type_tax_use","name","type","amount","account_collected_id/id","account_paid_id/id","base_code_id/id","tax_code_id/id","ref_base_code_id/id","ref_tax_code_id/id","tax_sign","base_sign","ref_base_sign","ref_tax_sign","parent_id:id","sequence","price_include"
+"F27","27%","hungarian_chart_template","sale","Fizetendő - 27%","percent",0.27,"chart_hu_467","chart_hu_467","tax_code_hu_1011","tax_code_hu_1010","tax_code_hu_1011","tax_code_hu_1010",1,1,-1,-1,,1,"False"
+"F18","18%","hungarian_chart_template","sale","Fizetendő – 18%","percent",0.18,"chart_hu_467","chart_hu_467","tax_code_hu_1021","tax_code_hu_1020","tax_code_hu_1021","tax_code_hu_1020",1,1,-1,-1,,2,"False"
+"F5","5%","hungarian_chart_template","sale","Fizetendő – 5%","percent",0.05,"chart_hu_467","chart_hu_467","tax_code_hu_1031","tax_code_hu_1030","tax_code_hu_1031","tax_code_hu_1030",1,1,-1,-1,,2,"False"
+"FA","AAM","hungarian_chart_template","sale","Fizetendő – Alanyi Adómentes","percent",0,"chart_hu_467","chart_hu_467","tax_code_hu_1041",,"tax_code_hu_1041",,1,1,-1,-1,,2,"False"
+"FT","TAM","hungarian_chart_template","sale","Fizetendő – Tárgyi Adómentes","percent",0,"chart_hu_467","chart_hu_467","tax_code_hu_1061",,"tax_code_hu_1061",,1,1,-1,-1,,2,"False"
+"FF","FORD","hungarian_chart_template","sale","Fizetendő – Fordított ÁFA","percent",0,"chart_hu_467","chart_hu_467","tax_code_hu_1081",,"tax_code_hu_1081",,1,1,-1,-1,,2,"False"
+"FEUO","Export","hungarian_chart_template","sale","Fizetendő – Export","percent",0,"chart_hu_467","chart_hu_467","tax_code_hu_1071",,"tax_code_hu_1071",,1,1,-1,-1,,2,"False"
+"FEU","EU","hungarian_chart_template","sale","Fizetendő – EU","percent",0,"chart_hu_467","chart_hu_467","tax_code_hu_1051",,"tax_code_hu_1051",,1,1,-1,-1,,2,"False"
+"V18","18%","hungarian_chart_template","purchase","Visszaigényelhető – 18%","percent",0.18,"chart_hu_466","chart_hu_466","tax_code_hu_1221","tax_code_hu_1220","tax_code_hu_1221","tax_code_hu_1220",1,1,-1,-1,,2,"False"
+"V27","27%","hungarian_chart_template","purchase","Visszaigényelhető – 27%","percent",0.27,"chart_hu_466","chart_hu_466","tax_code_hu_1211","tax_code_hu_1210","tax_code_hu_1211","tax_code_hu_1210",1,1,-1,-1,,1,"False"
+"V5","5%","hungarian_chart_template","purchase","Visszaigényelhető – 5%","percent",0.05,"chart_hu_466","chart_hu_466","tax_code_hu_1231","tax_code_hu_1230","tax_code_hu_1231","tax_code_hu_1230",1,1,-1,-1,,2,"False"
+"VA","AAM","hungarian_chart_template","purchase","Visszaigényelhető – Alanyi Adómentes","percent",0,"chart_hu_466","chart_hu_466","tax_code_hu_1240",,"tax_code_hu_1240",,1,1,-1,-1,,2,"False"
+"VT","TAM","hungarian_chart_template","purchase","Visszaigényelhető – Tárgyi Adómentes","percent",0,"chart_hu_466","chart_hu_466","tax_code_hu_1260",,"tax_code_hu_1260",,1,1,-1,-1,,2,"False"
+"VEU","EU","hungarian_chart_template","purchase","Visszaigényelhető – EU","percent",0,"chart_hu_466","chart_hu_466","tax_code_hu_1250",,"tax_code_hu_1250",,1,1,-1,-1,,2,"False"
+"VEUO","Import","hungarian_chart_template","purchase","Visszaigényelhető – Import","percent",0,"chart_hu_466","chart_hu_466","tax_code_hu_1270",,"tax_code_hu_1270",,1,1,-1,-1,,2,"False"
+"VF","FORD","hungarian_chart_template","purchase","Visszaigényelhető – Fordított ÁFA","percent",0,"chart_hu_466","chart_hu_466","tax_code_hu_1280",,"tax_code_hu_1280",,1,1,-1,-1,,2,"False"
diff --git a/addons/l10n_hu/data/res.bank.csv b/addons/l10n_hu/data/res.bank.csv
new file mode 100644
index 00000000000..f1f8703f66c
--- /dev/null
+++ b/addons/l10n_hu/data/res.bank.csv
@@ -0,0 +1,22 @@
+"id","name","bic","country/id","zip","city","street","email","phone","fax"
+"BKCHHUHBXXX","Bank of China (Hungária) Hitelintézet Rt.","BKCHHUHBXXX","base.hu",1051,"Budapest","József Nádor tér 7.","service_hu@bank-of-china.com","+3614299200","+3614299201"
+"BNPAHUHX","BNP Paribas Hungária Bank Rt.","BNPAHUHX","base.hu",1051,"Budapest","Széchenyi István tér 7-8.",,"+3613746300",
+"BUDAHUHB","Budapest Hitel- és Fejlesztési Bank Rt.","BUDAHUHB","base.hu",1138,"Budapest","Váci út 188."," info@budapestbank.hu","+3614506060","+3614506062"
+"CIBHHUHB","CIB Közép-Európai Nemzetközi Bank Zrt.","CIBHHUHB","base.hu",1027,"Budapest","Medve utca 4-14.","cib@cib.hu","+3614231000",
+"CITIHUHX","Citibank Rt.","CITIHUHX","base.hu",1051,"Budapest","Szabadság tér 7.",,"+3613745000","+3613745100"
+"COBAHUHX","Commerzbank Zártkörűen Működő Rt.","COBAHUHX","base.hu",1054,"Budapest","Széchenyi rakpart 8.","info.budapest@commerzbank.com","+3613748100","+3612694574"
+"DEUTHU2B","Deutsche Bank Zártkörűen Működő Rt.","DEUTHU2B","base.hu",1054,"Budapest","Hold utca 27.","db.hungary@db.com","+3613013700","+3612693239"
+"GIBAHUHB","ERSTE Bank Hungary Zrt.","GIBAHUHB","base.hu",1138,"Budapest","Népfürdő u. 24-26.","erste@erstebank.hu","+3640222221","+3612194766"
+"FHKBHUHB","FHB Kereskedelmi Bank Zrt.","FHKBHUHB","base.hu",1082,"Budapest","Üllői út 48."," info@fhb.hu","+3614529100","+3614529200"
+"GNBAHUHB","Gránit Bank Zrt.","GNBAHUHB","base.hu",1095,"Budapest","Lechner Ödön fasor 8.","info@granitbank.hu","+3640100777","+3612355906"
+"INCNHUHB","IC Bank Rt.","INCNHUHB","base.hu",1088,"Budapest","Rákóczi út 1-3."," level@bancopopolare.hu ","+3640200515","+3612666815"
+"INGBHUHB","ING Bank N.V. Magyarországi Fióktelepe","INGBHUHB","base.hu",1068,"Budapest","Dózsa György út 84.","communications.hu@ingbank.com","+362680140","+362680159"
+"OKHBHUHB","K&H Bank Zrt.","OKHBHUHB","base.hu",1095,"Budapest","Lechner Ödön fasor 9."," bank@kh.hu ","+3613289000","+3613289696"
+"HBWEHUHB","MagNet Magyar Közösségi Bank Zrt.","HBWEHUHB","base.hu",1062,"Budapest","Andrássy utca 98.","info@magnetbank.hu","+3614288888","+3614288889"
+"MANEHUHB","Magyar Nemzeti Bank","MANEHUHB","base.hu",1054,"Budapest","Szabadság tér 8-9.","info@mnb.hu","+3614282600","+3614298000"
+"MKKBHUHB","MKB Bank Zrt.","MKKBHUHB","base.hu",1056,"Budapest","Váci utca 38.","telebankar@mkb.hu","+3613278600","+3613278700"
+"OTPVHUHB","OTP Bank Nyrt.","OTPVHUHB","base.hu",1051,"Budapest","Nádor utca 16.",,"+3614735000","+3614735955"
+"UBRTHUHB","RAIFFEISEN Bank Zrt.","UBRTHUHB","base.hu",1054,"Budapest","Akadémia utca 6.",,"+3640484848",
+"MAVOHUHB","Sberbank Magyarország Zrt.","MAVOHUHB","base.hu",1088,"Budapest","Rákóczi út 7.","info@sberbank.hu","+3614114200","+3613286660"
+"TAKBHUHB","TakarékBank Zrt.","TAKBHUHB","base.hu",1122,"Budapest","Pethényi köz 10.","info@tbank.hu","+3612023777",
+"BACXHUHB","UniCredit Bank Hungary Zrt.","BACXHUHB","base.hu",1054,"Budapest","Szabadság tér 5-6.","info@unicreditgroup.hu","+3613011271","+3613534959"
diff --git a/addons/l10n_hu/static/description/icon.png b/addons/l10n_hu/static/description/icon.png
new file mode 100644
index 00000000000..e69de29bb2d
diff --git a/addons/l10n_in_hr_payroll/l10n_in_hr_payroll.py b/addons/l10n_in_hr_payroll/l10n_in_hr_payroll.py
index f0751684dba..b18f2d1f1ae 100644
--- a/addons/l10n_in_hr_payroll/l10n_in_hr_payroll.py
+++ b/addons/l10n_in_hr_payroll/l10n_in_hr_payroll.py
@@ -56,7 +56,7 @@ class payroll_advice(osv.osv):
_name = 'hr.payroll.advice'
_description = 'Bank Advice'
_columns = {
- 'name':fields.char('Name', size=32, readonly=True, required=True, states={'draft': [('readonly', False)]},),
+ 'name':fields.char('Name', readonly=True, required=True, states={'draft': [('readonly', False)]},),
'note': fields.text('Description'),
'date': fields.date('Date', readonly=True, required=True, states={'draft': [('readonly', False)]}, help="Advice Date is used to search Payslips"),
'state':fields.selection([
@@ -64,9 +64,9 @@ class payroll_advice(osv.osv):
('confirm', 'Confirmed'),
('cancel', 'Cancelled'),
], 'Status', select=True, readonly=True),
- 'number':fields.char('Reference', size=16, readonly=True),
+ 'number':fields.char('Reference', readonly=True),
'line_ids':fields.one2many('hr.payroll.advice.line', 'advice_id', 'Employee Salary', states={'draft': [('readonly', False)]}, readonly=True),
- 'chaque_nos':fields.char('Cheque Numbers', size=256),
+ 'chaque_nos':fields.char('Cheque Numbers'),
'neft': fields.boolean('NEFT Transaction', help="Check this box if your company use online transfer for salary"),
'company_id':fields.many2one('res.company', 'Company', required=True, readonly=True, states={'draft': [('readonly', False)]}),
'bank_id':fields.many2one('res.bank', 'Bank', readonly=True, states={'draft': [('readonly', False)]}, help="Select the Bank from which the salary is going to be paid"),
diff --git a/addons/l10n_in_hr_payroll/report/payment_advice_report.py b/addons/l10n_in_hr_payroll/report/payment_advice_report.py
index 32c589d2a90..79f5f1264f4 100644
--- a/addons/l10n_in_hr_payroll/report/payment_advice_report.py
+++ b/addons/l10n_in_hr_payroll/report/payment_advice_report.py
@@ -27,7 +27,7 @@ class payment_advice_report(osv.osv):
_description = "Payment Advice Analysis"
_auto = False
_columns = {
- 'name':fields.char('Name', size=32, readonly=True),
+ 'name':fields.char('Name', readonly=True),
'date': fields.date('Date', readonly=True,),
'year': fields.char('Year', size=4, readonly=True),
'month': fields.selection([('01', 'January'), ('02', 'February'), ('03', 'March'), ('04', 'April'),
@@ -41,14 +41,14 @@ class payment_advice_report(osv.osv):
], 'Status', select=True, readonly=True),
'employee_id': fields.many2one('hr.employee', 'Employee', readonly=True),
'nbr': fields.integer('# Payment Lines', readonly=True),
- 'number':fields.char('Number', size=16, readonly=True),
+ 'number':fields.char('Number', readonly=True),
'bysal': fields.float('By Salary', readonly=True),
'bank_id':fields.many2one('res.bank', 'Bank', readonly=True),
'company_id':fields.many2one('res.company', 'Company', readonly=True),
- 'cheque_nos':fields.char('Cheque Numbers', size=256, readonly=True),
+ 'cheque_nos':fields.char('Cheque Numbers', readonly=True),
'neft': fields.boolean('NEFT Transaction', readonly=True),
'ifsc_code': fields.char('IFSC Code', size=32, readonly=True),
- 'employee_bank_no': fields.char('Employee Bank Account', size=32, required=True),
+ 'employee_bank_no': fields.char('Employee Bank Account', required=True),
}
def init(self, cr):
tools.drop_view_if_exists(cr, 'payment_advice_report')
diff --git a/addons/l10n_in_hr_payroll/report/payslip_report.py b/addons/l10n_in_hr_payroll/report/payslip_report.py
index 2e1a543a80a..ff5732f5700 100644
--- a/addons/l10n_in_hr_payroll/report/payslip_report.py
+++ b/addons/l10n_in_hr_payroll/report/payslip_report.py
@@ -27,7 +27,7 @@ class payslip_report(osv.osv):
_description = "Payslip Analysis"
_auto = False
_columns = {
- 'name':fields.char('Name', size=32, readonly=True),
+ 'name':fields.char('Name', readonly=True),
'date_from': fields.date('Date From', readonly=True,),
'date_to': fields.date('Date To', readonly=True,),
'year': fields.char('Year', size=4, readonly=True),
@@ -42,7 +42,7 @@ class payslip_report(osv.osv):
], 'Status', readonly=True),
'employee_id': fields.many2one('hr.employee', 'Employee', readonly=True),
'nbr': fields.integer('# Payslip lines', readonly=True),
- 'number': fields.char('Number', size=16, readonly=True),
+ 'number': fields.char('Number', readonly=True),
'struct_id': fields.many2one('hr.payroll.structure', 'Structure', readonly=True),
'company_id':fields.many2one('res.company', 'Company', readonly=True),
'paid': fields.boolean('Made Payment Order ? ', readonly=True),
diff --git a/addons/l10n_ma/l10n_ma.py b/addons/l10n_ma/l10n_ma.py
index a2a28a21f82..fe3fad6022f 100644
--- a/addons/l10n_ma/l10n_ma.py
+++ b/addons/l10n_ma/l10n_ma.py
@@ -27,7 +27,7 @@ class l10n_ma_report(osv.osv):
_description = 'Report for l10n_ma_kzc'
_columns = {
'code': fields.char('Code', size=64),
- 'name': fields.char('Name', size=128),
+ 'name': fields.char('Name'),
'line_ids': fields.one2many('l10n.ma.line', 'report_id', 'Lines'),
}
_sql_constraints = [
@@ -39,8 +39,8 @@ class l10n_ma_line(osv.osv):
_description = 'Report Lines for l10n_ma'
_columns = {
'code': fields.char('Variable Name', size=64),
- 'definition': fields.char('Definition', size=512),
- 'name': fields.char('Name', size=256),
+ 'definition': fields.char('Definition'),
+ 'name': fields.char('Name'),
'report_id': fields.many2one('l10n.ma.report', 'Report'),
}
_sql_constraints = [
diff --git a/addons/l10n_multilang/account.py b/addons/l10n_multilang/account.py
index 3f171cfc2de..2a71dd55711 100644
--- a/addons/l10n_multilang/account.py
+++ b/addons/l10n_multilang/account.py
@@ -29,41 +29,41 @@ from openerp.tools.translate import _
class account_account_template(osv.osv):
_inherit = 'account.account.template'
_columns = {
- 'name': fields.char('Name', size=128, required=True, select=True, translate=True),
+ 'name': fields.char('Name', required=True, select=True, translate=True),
}
class account_account(osv.osv):
_inherit = 'account.account'
_columns = {
- 'name': fields.char('Name', size=128, required=True, select=True, translate=True),
+ 'name': fields.char('Name', required=True, select=True, translate=True),
}
class account_tax(osv.osv):
_inherit = 'account.tax'
_columns = {
- 'name': fields.char('Tax Name', size=128, required=True, select=True, translate=True),
+ 'name': fields.char('Tax Name', required=True, select=True, translate=True),
}
class account_tax_template(osv.osv):
_inherit = 'account.tax.template'
_columns = {
- 'name': fields.char('Tax Name', size=128, required=True, select=True, translate=True),
+ 'name': fields.char('Tax Name', required=True, select=True, translate=True),
}
class account_tax_code_template(osv.osv):
_inherit = 'account.tax.code.template'
_columns = {
- 'name': fields.char('Tax Case Name', size=64, required=True, translate=True),
+ 'name': fields.char('Tax Case Name', required=True, translate=True),
}
class account_chart_template(osv.osv):
_inherit = 'account.chart.template'
_columns={
- 'name': fields.char('Name', size=64, required=True, translate=True),
- 'spoken_languages': fields.char('Spoken Languages', size=64, help="State here the languages for which the translations of templates could be loaded at the time of installation of this localization module and copied in the final object when generating them from templates. You must provide the language codes separated by ';'"),
+ 'name': fields.char('Name', required=True, translate=True),
+ 'spoken_languages': fields.char('Spoken Languages', help="State here the languages for which the translations of templates could be loaded at the time of installation of this localization module and copied in the final object when generating them from templates. You must provide the language codes separated by ';'"),
}
_order = 'name'
@@ -71,7 +71,7 @@ class account_chart_template(osv.osv):
class account_fiscal_position(osv.osv):
_inherit = 'account.fiscal.position'
_columns = {
- 'name': fields.char('Fiscal Position', size=64, required=True, translate=True),
+ 'name': fields.char('Fiscal Position', required=True, translate=True),
'note': fields.text('Notes', translate=True),
}
@@ -79,7 +79,7 @@ class account_fiscal_position(osv.osv):
class account_fiscal_position_template(osv.osv):
_inherit = 'account.fiscal.position.template'
_columns = {
- 'name': fields.char('Fiscal Position Template', size=64, required=True, translate=True),
+ 'name': fields.char('Fiscal Position Template', required=True, translate=True),
'note': fields.text('Notes', translate=True),
}
@@ -87,19 +87,19 @@ class account_fiscal_position_template(osv.osv):
class account_journal(osv.osv):
_inherit = 'account.journal'
_columns = {
- 'name': fields.char('Journal Name', size=64, required=True, translate=True),
+ 'name': fields.char('Journal Name', required=True, translate=True),
}
class account_analytic_account(osv.osv):
_inherit = 'account.analytic.account'
_columns = {
- 'name': fields.char('Account Name', size=128, required=True, translate=True),
+ 'name': fields.char('Account Name', required=True, translate=True),
}
class account_analytic_journal(osv.osv):
_inherit = 'account.analytic.journal'
_columns = {
- 'name': fields.char('Journal Name', size=64, required=True, translate=True),
+ 'name': fields.char('Journal Name', required=True, translate=True),
}
diff --git a/addons/l10n_pl/__init__.py b/addons/l10n_pl/__init__.py
index 2e4d3a378c1..8bec2426631 100644
--- a/addons/l10n_pl/__init__.py
+++ b/addons/l10n_pl/__init__.py
@@ -5,6 +5,9 @@
# Copyright (C) 2004-2008 Tiny SPRL (). All Rights Reserved
# $Id$
#
+# l10n_pl module improved for Poland
+# by Grzegorz Grzelak grzegorz.grzelak@openglobe.pl
+#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
diff --git a/addons/l10n_pl/__openerp__.py b/addons/l10n_pl/__openerp__.py
index a14828fe9de..9902e63d092 100644
--- a/addons/l10n_pl/__openerp__.py
+++ b/addons/l10n_pl/__openerp__.py
@@ -23,25 +23,31 @@
{
'name' : 'Poland - Accounting',
'version' : '1.0',
- 'author' : 'Grzegorz Grzelak (Cirrus)',
- 'website': 'http://www.cirrus.pl',
+ 'author' : 'Grzegorz Grzelak (OpenGLOBE)',
+ 'website': 'http://www.openglobe.pl',
'category' : 'Localization/Account Charts',
'description': """
This is the module to manage the accounting chart and taxes for Poland in OpenERP.
==================================================================================
-To jest moduł do tworzenia wzorcowego planu kont i podstawowych ustawień do podatków
-VAT 0%, 7% i 22%. Moduł ustawia też konta do kupna i sprzedaży towarów zakładając,
-że wszystkie towary są w obrocie hurtowym.
+To jest moduł do tworzenia wzorcowego planu kont, podatków, obszarów podatkowych i
+rejestrów podatkowych. Moduł ustawia też konta do kupna i sprzedaży towarów
+zakładając, że wszystkie towary są w obrocie hurtowym.
+
+Niniejszy moduł jest przeznaczony dla odoo 8.0.
+Wewnętrzny numer wersji OpenGLOBE 1.01
""",
'depends' : ['account', 'base_iban', 'base_vat', 'account_chart'],
'demo' : [],
- 'data' : ['account_tax_code.xml','account_chart.xml',
- 'account_tax.xml','l10n_chart_pl_wizard.xml'
+ 'data' : ['account_tax_code.xml',
+ 'account_chart.xml',
+ 'account_tax.xml',
+ 'fiscal_position.xml',
+ 'country_pl.xml',
+ 'l10n_chart_pl_wizard.xml'
],
'auto_install': False,
'installable': True,
- 'images': ['images/config_chart_l10n_pl.jpeg','images/l10n_pl_chart.jpeg'],
}
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/l10n_pl/account_chart.xml b/addons/l10n_pl/account_chart.xml
old mode 100644
new mode 100755
index c2213c801dc..368ceeb00b0
--- a/addons/l10n_pl/account_chart.xml
+++ b/addons/l10n_pl/account_chart.xml
@@ -1,3209 +1,3220 @@
-
-
-
-
-
- Należności
- receivable
- unreconciled
-
-
-
- Zobowiązania
- payable
- unreconciled
-
-
-
- Widok
- view
- none
-
-
-
- Dochody
- income
- none
-
-
-
- Wydatki
- expense
- none
-
-
+
Podatki
tax
unreconciled
-
- Gotówka
- cash
+
+ Rozrachunki
+ settlement
balance
-
- Aktywa
- asset
- balance
-
-
-
- Kapitał własny
- equity
- balance
-
-
-
-
-
-
- 0
- Plan kont
- view
-
-
-
-
- 000000000
-
-
- view
-
- Aktywa Trwałe
-
-
-
- 001000000
-
-
- view
-
- Środki Trwałe
-
-
-
- 001010000
-
-
- other
-
- Grunty własne i prawa wieczystego użytkowania gruntów
-
-
-
- 001020000
-
-
- other
-
- Budynki, lokale i obiekty inżynierii lądowej i wodnej
-
-
-
- 001030000
-
-
- other
-
- Urządzenia techniczne i maszyny
-
-
-
- 001040000
-
-
- other
-
- Środki transportu
-
-
-
- 001050000
-
-
- other
-
- Inne środki trwałe
-
-
-
- 002000000
-
-
- view
-
- Wartości niematerialne i prawne
-
-
-
- 002010000
-
-
- other
-
- Koszty zakończonych prac rozwojowych
-
-
-
- 002020000
-
-
- other
-
- Nabyta wartość firmy
-
-
-
- 002080000
-
-
- other
-
- Inne wartości niematerialne i prawne
-
-
-
- 002090000
-
-
- other
-
- Zaliczki na wartości niematerialne i prawne
-
-
-
- 003000000
-
-
- view
-
- Długoterminowe aktywa finansowe
-
-
-
- 003010000
-
-
- view
-
- W jednostkach powiązanych
-
-
-
- 003010100
-
-
- other
-
- Udziały lub akcje
-
-
-
- 003010200
-
-
- other
-
- Inne papiery wartościowe
-
-
-
- 003010300
-
-
- other
-
- Udzielone pożyczki
-
-
-
- 003010400
-
-
- other
-
- Inne długoterminowe aktywa finansowe
-
-
-
- 003020000
-
-
- view
-
- W pozostałych jednostkach
-
-
-
- 003020100
-
-
- other
-
- Udziały lub akcje
-
-
-
- 003020200
-
-
- other
-
- Inne papiery wartościowe
-
-
-
- 003020300
-
-
- other
-
- Udzielone pożyczki
-
-
-
- 003020400
-
-
- other
-
- Inne długoterminowe aktywa finansowe
-
-
- 003050000
-
-
- view
-
- Odpisy aktualizujące długoterminowe aktywa finansowe
-
-
-
- 003050100
-
-
- other
-
- Udziały lub akcje
-
-
-
- 003050200
-
-
- other
-
- Inne papiery wartościowe
-
-
-
- 003050300
-
-
- other
-
- Udzielone pożyczki
-
-
-
- 003050400
-
-
- other
-
- Inne długoterminowe aktywa finansowe
-
-
-
- 003090000
-
-
- view
-
- Inne inwestycje długoterminowe
-
-
-
- 003090100
-
-
- other
-
- Inne rodzaje długoterminowych aktywów finansowych
-
-
-
- 004000000
-
-
- view
-
- Inwestycje w nieruchomości i prawa
-
-
-
- 004010000
-
-
- other
-
- Nieruchomości
-
-
-
- 004020000
-
-
- other
-
- Wartości niematerialne i prawne
-
-
-
- 005000000
-
-
- view
-
- Długoterminowe rozliczenia międzyokresowe
-
-
-
- 005010000
-
-
- other
-
- Aktywa z tytułu odroczonego podatku dochodowego
-
-
-
- 005020000
-
-
- other
-
- Inne rozliczenia międzyokresowe
-
-
-
- 006000000
-
-
- view
-
- Należności długoterminowe
-
-
-
- 006010000
-
-
- other
-
- Od jednostek powiązanych
-
-
-
- 006020000
-
-
- other
-
- Od pozostałych jednostek
-
-
-
- 007000000
-
-
- view
-
- Odpisy umorzeniowe środków trwałych oraz wartości niematerialnych i prawnych
-
-
-
- 007010000
-
-
- view
-
- Odpisy umorzeniowe środków trwałych
-
-
-
- 007010100
-
-
- other
-
- Odpisy umorzeniowe wartości gruntów i prawa wieczystego użytkowania gruntów
-
-
-
- 007010200
-
-
- other
-
- Odpisy umorzeniowe budynków, lokali i obiektów inżynierii lądowej i wodnej
-
-
-
- 007010300
-
-
- other
-
- Odpisy umorzeniowe urządzeń technicznych i maszyn
-
-
-
- 007010400
-
-
- other
-
- Odpisy umorzeniowe środków transportu
-
-
-
- 007010500
-
-
- other
-
- Odpisy umorzeniowe innych środków trwałych
-
-
-
- 007010900
-
-
- other
-
- Odpisy umorzeniowe ulepszeń obcych środków trwałych
-
-
-
- 007020000
-
-
- view
-
- Odpisy umorzeniowe wartości niematerialnych i prawnych
-
-
-
- 007020100
-
-
- other
-
- Odpisy umorzeniowe zakończonych prac rozwojowych
-
-
-
- 007020200
-
-
- other
-
- Odpisy umorzeniowe wartości firmy
-
-
-
- 007020300
-
-
- other
-
- Odpisy umorzeniowe innych wartości niematerialnych i prawnych
-
-
-
- 007030000
-
-
- view
-
- Odpisy umorzeniowe inwestycji w nieruchomości i prawa
-
-
-
- 007030100
-
-
- other
-
- Odpisy umorzeniowe inwestycji w nieruchomości
-
-
-
- 007030200
-
-
- other
-
- Odpisy umorzeniowe inwestycji w wartości niematerialne i prawne
-
-
-
-
- 008000000
-
-
- view
-
- Środki trwałe w budowie
-
-
-
- 008010000
-
-
- other
-
- Inwestycje budowy środka trwałego
-
-
-
- 008020000
-
-
- other
-
- Ulepszenia środka trwałego
-
-
-
- 008030000
-
-
- other
-
- Nakłady na budowę środka trwałego
-
-
-
- 008040000
-
-
- other
-
- Zaliczki na środki trwałe w budowie
-
-
-
- 008050000
-
-
- other
-
- Ulepszenia obcych środków trwałych
-
-
-
- 009000000
-
-
- view
-
- Odpisy aktualizujące długoterminowe aktywa finansowe
-
-
-
- 009010000
-
-
- other
-
- Odpisy aktualizujące udziały i akcje w obcych jednostkach
-
-
-
- 009020000
-
-
- other
-
- Odpisy aktualizujące lokaty
-
-
-
- 009030000
-
-
- other
-
- Odpisy aktualizujące udzielone pożyczki długoterminowe
-
-
-
- 009090000
-
-
- other
-
- Odpisy aktualizujące inne rodzaje długoterminowych aktywów finansowych
-
-
-
- 100000000
-
-
- view
-
- Środki pieniężne, rachunki bankowe oraz inne krótkoterminowe aktywa finansowe
-
-
-
- 110000000
-
-
- view
-
- Środki pieniężne w kasie
-
-
-
- 110010000
-
-
- other
-
- Kasa krajowych środków pieniężnych
-
-
-
- 110020000
-
-
- other
-
- Kasa zagranicznych środków pieniężnych
-
-
-
- 113000000
-
-
- view
-
- Rachunki i kredyty bankowe
-
-
-
- 113010000
-
-
- view
-
- Rachunek bieżący
-
-
-
- 113020000
-
-
- other
-
- Rachunek środków walutowych
-
-
-
- 113030000
-
-
- other
-
- Rachunki kredytów bankowych
-
-
-
- 113040000
-
-
- other
-
- Rachunek środków wyodrębnionych i zablokowanych
-
-
-
- 113050000
-
-
- view
-
- Inne rachunki bankowe
-
-
-
- 113050100
-
-
- other
-
- Rachunek bankowy wyodrębnionych środków pieniężnych ZFŚS
-
-
-
- 113050200
-
-
- other
-
- Rachunek bankowy lokat terminowych
-
-
-
- 113050300
-
-
- other
-
- Rachunek bankowy akretytywy
-
-
-
- 113090000
-
-
- other
-
- Środki pieniężne w drodze
-
-
-
-
- 114000000
-
-
- view
-
- Krótkoterminowe aktywa finansowe
-
-
-
- 114010000
-
-
- view
-
- Krótkoterminowe aktywa finansowe w jednostkach powiązanych
-
-
-
- 114010100
-
-
- other
-
- Udziały lub akcje
-
-
-
- 114010200
-
-
- other
-
- Inne papiery wartościowe
-
-
-
- 114010300
-
-
- other
-
- Udzielone pożyczki
-
-
-
- 114010400
-
-
- other
-
- Inne krótkoterminowe aktywa finansowe
-
-
-
- 114020000
-
-
- view
-
- Krótkoterminowe aktywa finansowe w pozostałych jednostkach
-
-
-
- 114020100
-
-
- other
-
- Udziały lub akcje
-
-
-
- 114020200
-
-
- other
-
- Inne papiery wartościowe
-
-
-
- 114020400
-
-
- other
-
- Inne krótkoterminowe aktywa finansowe
-
-
-
- 114050000
-
-
- other
-
- Odpisy aktualizujące krótkoterminowe aktywa finansowe
-
-
-
-
- 115000000
-
-
- other
-
- Inne środki pieniężne
-
-
-
- 116000000
-
-
- other
-
- Inne aktywa pieniężne
-
-
-
- 117000000
-
-
- other
-
- Inne inwestycje krótkoterminowe
-
-
-
- 118000000
-
-
- other
-
- Krótkoterminowe rozliczenia międzyokresowe
-
-
-
- 200000000
-
-
- view
-
- Rozrachunki i roszczenia
-
-
-
- 220000000
-
-
- receivable
-
- Rozrachunki z odbiorcami
-
-
-
-
- 221000000
-
-
- payable
-
- Rozrachunki z dostawcami
-
-
-
-
- 222000000
-
-
- view
-
- Rozrachunki publicznoprawne
-
-
-
- 222010000
-
-
- other
-
- Rozrachunki z urzędem skarbowym z tytułu VAT
-
-
-
- 222020000
-
-
- view
-
- VAT naliczony i jego rozliczenie
-
-
-
- 222020100
-
-
- other
-
- Rozliczenie naliczonego VAT-23%
-
-
-
- 222020200
-
-
- other
-
- Rozliczenie naliczonego VAT-8%
-
-
-
- 222020400
-
-
- other
-
- Rozliczenie naliczonego VAT-5%
-
-
-
- 222020300
-
-
- other
-
- Rozliczenie naliczonego VAT-0%
-
-
-
- 222030000
-
-
- view
-
- Rozrachunki z urzędem skarbowym z tytułu VAT należnego
-
-
-
- 222030100
-
-
- other
-
- Rozliczenie należnego VAT-23%
-
-
-
- 222030200
-
-
- other
-
- Rozliczenie należnego VAT-8%
-
-
-
- 222030400
-
-
- other
-
- Rozliczenie należnego VAT-5%
-
-
-
- 222030300
-
-
- other
-
- Rozliczenie należnego VAT-0%
-
-
-
-
- 222040000
-
-
- view
-
- Pozostałe rozrachunki publicznoprawne
-
-
-
- 222040100
-
-
- other
-
- Pozostałe rozrachunki z urzędem skarbowym
-
-
-
- 222040200
-
-
- other
-
- Rozrachunki publicznoprawne z urzędem miasta/gminy
-
-
-
- 222040300
-
-
- other
-
- Rozrachunki publicznoprawne z urzędem celnym
-
-
-
- 222040400
-
-
- other
-
- Rozrachunki publicznoprawne z ZUS
-
-
-
- 222040500
-
-
- other
-
- Rozrachunki publicznoprawne z PFRON
-
-
-
- 223000000
-
-
- view
-
- Rozrachunki z pracownikami
-
-
-
- 223010000
-
-
- other
-
- Rozrachunki z tytułu wynagrodzeń
-
-
-
- 223020000
-
-
- other
-
- Rozrachunki z tytułu pożyczek udzielonych pracownikom
-
-
-
- 223090000
-
-
- other
-
- Inne rozrachunki z pracownikami
-
-
-
- 224000000
-
-
- view
-
- Pozostałe rozrachunki
-
-
-
- 224010000
-
-
- view
-
- Pożyczki
-
-
-
- 224010100
-
-
- other
-
- Pożyczki otrzymane
-
-
-
- 224010200
-
-
- other
-
- Pożyczki udzielone
-
-
-
- 224020000
-
-
- view
-
- Rozliczenie niedoborów i nadwyżek
-
-
-
- 224020100
-
-
- other
-
- Rozliczenie niedoborów
-
-
-
- 224020200
-
-
- other
-
- Rozliczenie nadwyżek
-
-
-
- 224030000
-
-
- view
-
- Rozrachunki związane z kapitałem zakładowym
-
-
-
-
- 224030100
-
-
- other
-
- Rozrachunki z tytułu wpłat na kapitał zakładowy
-
-
-
- 224030200
-
-
- other
-
- Rozrachunki z tytułu wkładów niepieniężnych na kapitał zakładowy
-
-
-
- 224030300
-
-
- other
-
- Rozrachunki z tytułu podwyższenia kapitału ze środków własnych spółki
-
-
-
- 224030400
-
-
- other
-
- Rozrachunki z tytułu umorzenia udziałów własnych
-
-
-
- 224050000
-
-
- other
-
- Rozrachunki wewnątrzzakładowe
-
-
-
- 224060000
-
-
- other
-
- Należności dochodzone na drodze sądowej
-
-
-
-
- 224070000
-
-
- other
-
- Rozrachunki z tytułu dywidend
-
-
-
- 224080000
-
-
- other
-
- Rozrachunki z tytułu dopłat i zwrotu dopłat
-
-
-
- 224090000
-
-
- other
-
- Pozostałe rozrachunki
-
-
-
- 228000000
-
-
- other
-
- Odpisy aktualizujące rozrachunki
-
-
-
- 229000000
-
-
- view
-
- Rozrachunki pozabilansowe
-
-
-
- 229010000
-
-
- other
-
- Należności warunkowe
-
-
-
- 229020000
-
-
- other
-
- Zobowiązania warunkowe
-
-
-
- 229030000
-
-
- other
-
- Weksle obce dyskontowane lub indosowane
-
-
-
- 300000000
-
-
- view
-
- Materiały i towary
-
-
-
- 330000000
-
-
- view
-
- Rozliczenie zakupu
-
-
-
- 330010000
-
-
- other
-
- Rozliczenie zakupu materiałów
-
-
-
- 330020000
-
-
- other
-
- Rozliczenie zakupu towarów
-
-
-
- 330030000
-
-
- other
-
- Rozliczenie zakupu usług obcych
-
-
-
- 330040000
-
-
- other
-
- Rozliczenie zakupu składników aktywów trwałych
-
-
-
-
- 330050000
-
-
- other
-
- Rozliczenie wartości materiałów i towarów w drodze
-
-
-
- 330060000
-
-
- other
-
- Wartości dostaw niefakturowanych
-
-
-
-
- 330070000
-
-
- other
-
- Opłaty manipulacyjne policzone przez Urząd Celny
-
-
-
- 330080000
-
-
- other
-
- Niedobory, szkody i nadwyżki w transporcie
-
-
-
- 330090000
-
-
- other
-
- Reklamacje faktur dostawców
-
-
-
- 331000000
-
-
- view
-
- Materiały i opakowania
-
-
-
- 331010000
-
-
- other
-
- Materiały
-
-
-
- 331060000
-
-
- other
-
- Opakowania
-
-
-
- 331090000
-
-
- other
-
- Materiały w przerobie
-
-
-
- 333000000
-
-
- view
-
- Towary
-
-
-
- 333010000
-
-
- other
-
- Towary w hurcie
-
-
-
- 333020000
-
-
- other
-
- Towary w detalu
-
-
-
- 333030000
-
-
- other
-
- Towary w zakładach gastronomicznych
-
-
-
- 333040000
-
-
- other
-
- Towary skupu
-
-
- 333080000
-
-
- other
-
- Towary poza jednostką
-
-
- 333090000
-
-
- other
-
- Nieruchomości i prawa majątkowe przeznaczone do obrotu
-
-
-
- 334000000
-
-
- view
-
- Odchylenia od cen ewidencyjnych materiałów i towarów
-
-
-
- 334010000
-
-
- other
-
- Odchylenia od cen ewidencyjnych materiałów
-
-
-
- 334020000
-
-
- view
-
- Odchylenia od cen ewidencyjnych towarów
-
-
-
- 334020100
-
-
- other
-
- Odchylenia od cen ewidencyjnych towarów w hurcie
-
-
-
- 334020200
-
-
- other
-
- Odchylenia od cen ewidencyjnych towarów w detalu
-
-
-
- 334020300
-
-
- other
-
- Odchylenia od cen ewidencyjnych towarów w zakładach gastronomicznych
-
-
-
- 334020400
-
-
- other
-
- Odchylenia od cen ewidencyjnych towarów skupu
-
-
-
- 334060000
-
-
- other
-
- Odchylenia od cen ewidencyjnych opakowań
-
-
-
- 334070000
-
-
- other
-
- Odchylenia z tytułu aktualizacji wartości zapasów materiałów i towarów
-
-
-
- 339000000
-
-
- other
-
- Zapasy obce
-
-
-
- 400000000
-
-
- view
-
- Koszty według rodzajów i ich rozliczenie
-
-
-
- 440000000
-
-
- view
-
- Koszty według rodzajów
-
-
-
- 440010000
-
-
- view
-
- Zużycie materiałów i energii
-
-
-
- 440010100
-
-
- other
-
- Zużycie surowców do wytwarzania produktów
-
-
-
- 440010200
-
-
- other
-
- Zużycie energii
-
-
-
- 440010300
-
-
- other
-
- Zużycie paliwa do środków transportu
-
-
-
- 440010400
-
-
- other
-
- Zużycie materiałów biurowych
-
-
-
- 440010900
-
-
- other
-
- Zużycie innych materiałów
-
-
-
- 440020000
-
-
- view
-
- Usługi obce
-
-
-
- 440020100
-
-
- other
-
- Usługi celne
-
-
-
- 440020200
-
-
- other
-
- Usługi telekomunikacyjne
-
-
-
- 440020300
-
-
- other
-
- Usługi pocztowe
-
-
-
-
- 440020400
-
-
- other
-
- Usługi kurierskie i transportowe
-
-
-
-
- 440020500
-
-
- other
-
- Analizy sanitarne
-
-
-
-
- 440020600
-
-
- other
-
- Usługi graficzne i drukarskie
-
-
-
- 440020700
-
-
- other
-
- Usługi remontowe
-
-
-
- 440020900
-
-
- other
-
- Pozostałe usługi
-
-
-
- 440030000
-
-
- view
-
- Podatki i opłaty
-
-
- 440030100
-
-
- other
-
- Podatek od nieruchomości
-
-
-
- 440030200
-
-
- other
-
- Podatek od środków transportowych
-
-
-
- 440030300
-
-
- other
-
- Podatek akcyzowy
-
-
-
- 440030400
-
-
- other
-
- VAT niepodlegający odliczeniu
-
-
-
- 440030500
-
-
- other
-
- Opłaty i prowizje bankowe
-
-
-
- 440030600
-
-
- other
-
- Opłaty sądowe, prawnicze i notarialne
-
-
-
- 440030700
-
-
- other
-
- Opłaty skarbowe
-
-
-
- 440030800
-
-
- other
-
- Koncesje
-
-
-
- 440030900
-
-
- other
-
- Pozostałe podatki i opłaty
-
-
-
- 440040000
-
-
- view
-
- Wynagrodzenia
-
-
-
- 440040100
-
-
- other
-
- Wynagrodzenia pracowników
-
-
-
- 440040200
-
-
- other
-
- Wynagrodzenia osób doraźnie zatrudnionych
-
-
-
- 440050000
-
-
- view
-
- Ubezpieczenia społeczne i inne świadczenia
-
-
-
- 440050100
-
-
- other
-
- Składki na ubezpieczenia społeczne, FP, FGŚP
-
-
-
- 440050200
-
-
- other
-
- Odpisy na zakładowy fundusz świadczeń socjalnych lub świadczenia urlopowe
-
-
-
- 440050900
-
-
- other
-
- Pozostałe świadczenia
-
-
-
-
- 441000000
-
-
- other
-
- Świadczenia na rzecz pracowników
-
-
-
-
- 442000000
-
-
- other
-
- Amortyzacja
-
-
-
-
- 443000000
-
-
- other
-
- Pozostałe koszty rodzajowe
-
-
-
-
- 449000000
-
-
- view
-
- Rozliczenie kosztów
-
-
-
-
- 449010000
-
-
- other
-
- Nie podlegające rozliczeniu w czasie
-
-
-
-
- 449020000
-
-
- other
-
- Przypadające na przyszłe okresy
-
-
-
-
- 449030000
-
-
- other
-
- Koszty zgromadzone
-
-
-
-
- 449040000
-
-
- other
-
- Koszty nie wliczane do wartości sprzedaży
-
-
-
-
- 500000000
-
-
- view
-
- Koszty według typów działalności i ich rozliczenie
-
-
-
- 550000000
-
-
- view
-
- Koszty działalności podstawowej-produkcyjnej
-
-
-
- 550010000
-
-
- other
-
- Rozliczone koszty działalności
-
-
-
- 550020000
-
-
- other
-
- Koszty nie zakończonych długotrwałych usług
-
-
-
- 550030000
-
-
- other
-
- Straty związane z wykonaniem długotrwałych usług
-
-
-
- 5500400000
-
-
- other
-
- Koszty utrzymania hurtowni
-
-
-
- 552000000
-
-
- view
-
- Koszty działalności podstawowej-handlowej
-
-
-
- 552010000
-
-
- other
-
- Koszty utrzymania punktów sprzedaży detalicznej
-
-
-
- 552030000
-
-
- other
-
- Koszty sprzedaży wyrobów
-
-
-
- 553000000
-
-
- view
-
- Koszty działalności pomocniczej
-
-
-
- 553010000
-
-
- other
-
- Świadczenia usług transportowych
-
-
-
- 553020000
-
-
- other
-
- Pozostałe koszty
-
-
-
- 555000000
-
-
- view
-
- Koszty zarządu
-
-
-
- 555010000
-
-
- other
-
- Koszty zarządzania jednostką
-
-
-
- 555020000
-
-
- other
-
- Świadczenia usług na potrzeby reprezentacji i reklamy
-
-
-
- 558000000
-
-
- other
-
- Rozliczenie kosztów działalności
-
-
-
- 600000000
-
-
- view
-
- Produkty i rozliczenia międzyokresowe
-
-
-
- 660000000
-
-
- view
-
- Produkty i półprodukty
-
-
-
- 660010000
-
-
- view
-
- Produkty gotowe
-
-
-
-
- 660010100
-
-
- other
-
- Produkty gotowe w magazynie
-
-
-
-
- 660010200
-
-
- other
-
- Produkty gotowe poza jednostką
-
-
-
- 660020000
-
-
- other
-
- Półprodukty
-
-
-
- 662000000
-
-
- view
-
- Odchylenia od cen ewidencyjnych produktów
-
-
-
- 662010000
-
-
- other
-
- Odchylenia od cen ewidencyjnych produktów
-
-
-
- 662020000
-
-
- other
-
- Odchylenia z tytułu aktualizacji wartości zapasów produktów
-
-
-
- 664000000
-
-
- view
-
- Rozliczenia międzyokresowe kosztów
-
-
-
- 664010000
-
-
- other
-
- Czynne rozliczenia międzyokresowe kosztów
-
-
-
- 664020000
-
-
- other
-
- Bierne rozliczenia międzyokresowe kosztów
-
-
-
- 665000000
-
-
- view
-
- Pozostałe rozliczenia międzyokresowe
-
-
-
- 665010000
-
-
- other
-
- Aktywa z tytułu odroczonego podatku dochodowego
-
-
-
- 665020000
-
-
- other
-
- Inne rozliczenia międzyokresowe
-
-
-
- 700000000
-
-
- view
-
- Przychody i koszty związane z ich osiągnięciem
-
-
-
- 770000000
-
-
- view
-
- Sprzedaż produktów
-
-
-
- 770010000
-
-
- other
-
- Sprzedaż produktów na kraj
-
-
-
- 770020000
-
-
- other
-
- Sprzedaż produktów na eksport
-
-
-
- 770030000
-
-
- other
-
- Sprzedaż usług na kraj
-
-
-
- 770040000
-
-
- other
-
- Sprzedaż usług na eksport
-
-
-
- 770100000
-
-
- view
-
- Koszty sprzedanych produktów
-
-
-
-
- 770110000
-
-
- other
-
- Koszt własny sprzedaży produktów na kraj
-
-
-
- 770120000
-
-
- other
-
- Koszt własny sprzedaży produktów na eksport
-
-
-
- 770130000
-
-
- other
-
- Koszt własny sprzedaży usług na kraj
-
-
-
- 770140000
-
-
- other
-
- Koszt własny sprzedaży usług na eksport
-
-
-
- 773000000
-
-
- view
-
- Sprzedaż towarów
-
-
-
- 773010000
-
-
- other
-
- Sprzedaż hurtowa towarów
-
-
-
- 773020000
-
-
- other
-
- Sprzedaż detaliczna towarów
-
-
-
-
- 773030000
-
-
- other
-
- Sprzedaż wysyłkowa towarów
-
-
-
- 773040000
-
-
- other
-
- Prowizja komisowa
-
-
-
- 773100000
-
-
- view
-
- Wartość sprzedanych towarów w cenach zakupu
-
-
-
-
- 773110000
-
-
- other
-
- Wartość sprzedanych towarów w sprzedaży hurtowej
-
-
-
- 773120000
-
-
- other
-
- Wartość sprzedanych towarów w sprzedaży detalicznej
-
-
-
-
- 773130000
-
-
- other
-
- Wartość sprzedanych towarów w sprzedaży wysyłkowej
-
-
-
- 773140000
-
-
- other
-
- Prowizja komisowa
-
-
-
- 774000000
-
-
- view
-
- Sprzedaż materiałów i opakowań
-
-
-
- 774010000
-
-
- other
-
- Sprzedaż materiałów
-
-
-
- 774020000
-
-
- other
-
- Sprzedaż opakowań
-
-
-
- 774030000
-
-
- other
-
- Sprzedaż odpadów
-
-
-
- 774100000
-
-
- view
-
- Wartość sprzedanych materiałów i opakowań
-
-
-
- 774110000
-
-
- other
-
- Wartość w cenach zakupu sprzedanych materiałów
-
-
-
- 774120000
-
-
- other
-
- Wartość w cenach zakupu sprzedanych opakowań
-
-
-
-
- 774130000
-
-
- other
-
- Wartość w cenach zakupu sprzedanych odpadów
-
-
-
- 775000000
-
-
- view
-
- Przychody finansowe
-
-
-
- 775010000
-
-
- other
-
- Kwoty należne ze sprzedaży aktywów finansowych
-
-
-
- 775020000
-
-
- other
-
- Kwoty należne z tytułu dywidend
-
-
-
- 775030000
-
-
- other
-
- Otrzymane odsetki
-
-
-
- 775040000
-
-
- other
-
- Przychody ze zbycia inwestycji
-
-
-
- 775050000
-
-
- other
-
- Aktualizacja wartości inwestycji-przychody
-
-
-
- 775060000
-
-
- other
-
- Dodatnie różnice kursu walut
-
-
-
- 775070000
-
-
- other
-
- Pozostałe przychody finansowe
-
-
-
-
- 775100000
-
-
- view
-
- Koszty finansowe
-
-
-
- 775110000
-
-
- other
-
- Wartość sprzedanych inwestycji
-
-
-
-
- 775120000
-
-
- other
-
- Odpisy z tytułu utraty wartości inwestycji-koszty
-
-
-
-
- 775130000
-
-
- other
-
- Odsetki zapłacone
-
-
-
- 775140000
-
-
- other
-
- Ujemne różnice kursu walut
-
-
-
- 775190000
-
-
- other
-
- Pozostałe koszty finansowe
-
-
-
- 776000000
-
-
- view
-
- Pozostałe przychody operacyjne
-
-
-
- 776010000
-
-
- other
-
- Przychody ze zbycia niefinansowych aktywów trwałych
-
-
-
- 776020000
-
-
- other
-
- Otrzymane dotacje
-
-
-
- 776030000
-
-
- other
-
- Przychody z usług socjalnych
-
-
-
- 776040000
-
-
- other
-
- Przychody ze wzrostu wartości niefinansowych aktywów trwałych
-
-
-
- 776090000
-
-
- other
-
- Inne pozostałe przychody operacyjne
-
-
-
- 776100000
-
-
- view
-
- Pozostałe koszty operacyjne
-
-
-
- 776110000
-
-
- other
-
- Wartość sprzedanych niefinansowych aktywów trwałych
-
-
-
- 776120000
-
-
- other
-
- Dotacje przekazane
-
-
-
- 776130000
-
-
- other
-
- Odpisy z tytułu utraty wartości aktywów niefinansowych
-
-
-
- 776140000
-
-
- other
-
- Inne pozostałe koszty operacyjne
-
-
-
- 777000000
-
-
- other
-
- Zyski nadzwyczajne
-
-
-
- 777100000
-
-
- other
-
- Straty nadzwyczajne
-
-
-
- 779000000
-
-
- view
-
- Obroty wewnętrzne
-
-
-
- 779010000
-
-
- other
-
- Koszt wyrobów własnej produkcji wydanych do własnych sklepów
-
-
-
- 779020000
-
-
- other
-
- Świadczenia na rzecz środków trwałych w budowie
-
-
-
- 779040000
-
-
- other
-
- Koszt niedoborów produktów
-
-
-
- 779050000
-
-
- other
-
- Koszt zaniechania określonego rodzaju działalności
-
-
-
- 779100000
-
-
- view
-
- Koszt obrotów wewnętrznych
-
-
-
- 779110000
-
-
- other
-
- Koszt wytworzenia wyrobów gotowych wydanych do własnych sklepów
-
-
-
- 779120000
-
-
- other
-
- Koszt wytworzenia świadczeń na rzecz środków trwałych w budowie
-
-
-
- 779130000
-
-
- other
-
- Koszt wytworzenia zakończonych prac rozwojowych
-
-
-
- 779140000
-
-
- other
-
- Koszt wytworzenia produktów uznanych za niedobory
-
-
-
- 779150000
-
-
- other
-
- Koszt zaniechania określonego rodzaju działalności
-
-
-
- 800000000
-
-
- view
-
- Kapitały własne i wynik finansowy
-
-
-
- 880000000
-
-
- other
-
- Kapitał podstawowy
-
-
-
- 881000000
-
-
- view
-
- Pozostałe kapitały i fundusze
-
-
-
- 881100000
-
-
- other
-
- Kapitał zapasowy
-
-
-
- 881200000
-
-
- other
-
- Kapitał rezerwowy
-
-
-
- 881300000
-
-
- other
-
- Kapitał z aktualizacji wyceny
-
-
-
- 881400000
-
-
- other
-
- Kapitały wydzielone w jednostce statutowej i zakładach (oddziałach) samodzielnie sporządzających bilans
-
-
-
- 882000000
-
-
- other
-
- Rozliczenia wyniku finansowego
-
-
-
- 883000000
-
-
- view
-
- Rezerwy
-
-
-
- 883010000
-
-
- other
-
- Rezerwa z tytułu odroczonego podatku dochodowego
-
-
-
- 883020000
-
-
- view
-
- Rezerwa na świadczenia
-
-
-
- 883020100
-
-
- other
-
- Rezerwa długoterminowa na świadczenia emerytalne i podobne
-
-
-
- 888030200
-
-
- other
-
- Rezerwa krótkoterminowa na świadczenia emerytalne i podobne
-
-
-
- 883090000
-
-
- view
-
- Pozostałe rezerwy
-
-
-
- 883090100
-
-
- other
-
- Pozostałe rezerwy długoterminowe
-
-
-
- 883090200
-
-
- other
-
- Pozostałe rezerwy krótkoterminowe
-
-
-
- 884000000
-
-
- view
-
- Rozliczenia międzyokresowe
-
-
-
- 884010000
-
-
- other
-
- Ujemna wartość firmy
-
-
-
- 884020000
-
-
- view
-
- Inne rozliczenia międzyokresowe
-
-
-
- 884020100
-
-
- other
-
- Inne rozliczenia międzyokresowe długoterminowe
-
-
-
- 884020200
-
-
- other
-
- Inne rozliczenia międzyokresowe krótkoterminowe
-
-
-
- 885000000
-
-
- view
-
- Fundusze specjalne
-
-
-
- 885010000
-
-
- other
-
- Zakładowy fundusz świadczeń socjalnych
-
-
-
- 885020000
-
-
- view
-
- Inne fundusze specjalne
-
-
-
- 885020100
-
-
- other
-
- Zakładowy fundusz rehabilitacji osób niepełnosprawnych
-
-
-
- 885020200
-
-
- other
-
- Fundusz nagród
-
-
-
- 885020300
-
-
- other
-
- Fundusz na remont zasobów mieszkaniowych
-
-
-
- 886000000
-
-
- other
-
- Wynik finansowy
-
-
-
- 887000000
-
-
- view
-
- Podatek dochodowy i inne obowiązkowe obciążenia wyniku finansowego
-
-
-
- 887010000
-
-
- other
-
- Podatek dochodowy od osób prawnych
-
-
-
- 887020000
-
-
- other
-
- Inne obowiązkowe obciążenia wyniku finansowego
-
-
-
-
- Polska - Plan kont
-
-
-
-
-
-
-
-
-
-
+
+ Pozabilansowe
+ nonbalance
+ none
+
+
+
+
+
+
+ 0
+ Plan kont
+ view
+
+
+
+
+ Z0-000-000
+
+
+ view
+
+ Aktywa Trwałe
+
+
+
+ 01-000-000
+
+
+ view
+
+ Środki Trwałe
+
+
+
+ 01-010-000
+
+
+ other
+
+ Grunty własne i prawa wieczystego użytkowania gruntów
+
+
+
+ 01-020-000
+
+
+ other
+
+ Budynki, lokale i obiekty inżynierii lądowej i wodnej
+
+
+
+ 01-030-000
+
+
+ other
+
+ Urządzenia techniczne i maszyny
+
+
+
+ 01-040-000
+
+
+ other
+
+ Środki transportu
+
+
+
+ 01-050-000
+
+
+ other
+
+ Inne środki trwałe
+
+
+
+ 02-000-000
+
+
+ view
+
+ Wartości niematerialne i prawne
+
+
+
+ 02-010-000
+
+
+ other
+
+ Koszty zakończonych prac rozwojowych
+
+
+
+ 02-020-000
+
+
+ other
+
+ Nabyta wartość firmy
+
+
+
+ 02-080-000
+
+
+ other
+
+ Inne wartości niematerialne i prawne
+
+
+
+ 02-090-000
+
+
+ other
+
+ Zaliczki na wartości niematerialne i prawne
+
+
+
+ 03-000-000
+
+
+ view
+
+ Długoterminowe aktywa finansowe
+
+
+
+ 03-010-000
+
+
+ view
+
+ W jednostkach powiązanych
+
+
+
+ 03-010-100
+
+
+ other
+
+ Udziały lub akcje
+
+
+
+ 03-010-200
+
+
+ other
+
+ Inne papiery wartościowe
+
+
+
+ 03-010-300
+
+
+ other
+
+ Udzielone pożyczki
+
+
+
+ 03-010-400
+
+
+ other
+
+ Inne długoterminowe aktywa finansowe
+
+
+
+ 03-020-000
+
+
+ view
+
+ W pozostałych jednostkach
+
+
+
+ 03-020-100
+
+
+ other
+
+ Udziały lub akcje
+
+
+
+ 03-020-200
+
+
+ other
+
+ Inne papiery wartościowe
+
+
+
+ 03-020-300
+
+
+ other
+
+ Udzielone pożyczki
+
+
+
+ 03-020-400
+
+
+ other
+
+ Inne długoterminowe aktywa finansowe
+
+
+ 03-050-000
+
+
+ view
+
+ Odpisy aktualizujące długoterminowe aktywa finansowe
+
+
+
+ 03-050-100
+
+
+ other
+
+ Udziały lub akcje
+
+
+
+ 03-050-200
+
+
+ other
+
+ Inne papiery wartościowe
+
+
+
+ 03-050-300
+
+
+ other
+
+ Udzielone pożyczki
+
+
+
+ 03-050-400
+
+
+ other
+
+ Inne długoterminowe aktywa finansowe
+
+
+
+ 03-090-000
+
+
+ view
+
+ Inne inwestycje długoterminowe
+
+
+
+ 03-090-100
+
+
+ other
+
+ Inne rodzaje długoterminowych aktywów finansowych
+
+
+
+ 04-000-000
+
+
+ view
+
+ Inwestycje w nieruchomości i prawa
+
+
+
+ 04-010-000
+
+
+ other
+
+ Nieruchomości
+
+
+
+ 04-020-000
+
+
+ other
+
+ Wartości niematerialne i prawne
+
+
+
+ 05-000-000
+
+
+ view
+
+ Długoterminowe rozliczenia międzyokresowe
+
+
+
+ 05-010-000
+
+
+ other
+
+ Aktywa z tytułu odroczonego podatku dochodowego
+
+
+
+ 05-020-000
+
+
+ other
+
+ Inne rozliczenia międzyokresowe
+
+
+
+ 06-000-000
+
+
+ view
+
+ Należności długoterminowe
+
+
+
+ 06-010-000
+
+
+ other
+
+ Od jednostek powiązanych
+
+
+
+ 06-020-000
+
+
+ other
+
+ Od pozostałych jednostek
+
+
+
+ 07-000-000
+
+
+ view
+
+ Odpisy umorzeniowe środków trwałych oraz wartości niematerialnych i prawnych
+
+
+
+ 07-010-000
+
+
+ view
+
+ Odpisy umorzeniowe środków trwałych
+
+
+
+ 07-010-100
+
+
+ other
+
+ Odpisy umorzeniowe wartości gruntów i prawa wieczystego użytkowania gruntów
+
+
+
+ 07-010-200
+
+
+ other
+
+ Odpisy umorzeniowe budynków, lokali i obiektów inżynierii lądowej i wodnej
+
+
+
+ 07-010-300
+
+
+ other
+
+ Odpisy umorzeniowe urządzeń technicznych i maszyn
+
+
+
+ 07-010-400
+
+
+ other
+
+ Odpisy umorzeniowe środków transportu
+
+
+
+ 07-010-500
+
+
+ other
+
+ Odpisy umorzeniowe innych środków trwałych
+
+
+
+ 07-010-900
+
+
+ other
+
+ Odpisy umorzeniowe ulepszeń obcych środków trwałych
+
+
+
+ 07-020-000
+
+
+ view
+
+ Odpisy umorzeniowe wartości niematerialnych i prawnych
+
+
+
+ 07-020-100
+
+
+ other
+
+ Odpisy umorzeniowe zakończonych prac rozwojowych
+
+
+
+ 07-020-200
+
+
+ other
+
+ Odpisy umorzeniowe wartości firmy
+
+
+
+ 07-020-300
+
+
+ other
+
+ Odpisy umorzeniowe innych wartości niematerialnych i prawnych
+
+
+
+ 07-030-000
+
+
+ view
+
+ Odpisy umorzeniowe inwestycji w nieruchomości i prawa
+
+
+
+ 07-030-100
+
+
+ other
+
+ Odpisy umorzeniowe inwestycji w nieruchomości
+
+
+
+ 07-030-200
+
+
+ other
+
+ Odpisy umorzeniowe inwestycji w wartości niematerialne i prawne
+
+
+
+
+ 08-000-000
+
+
+ view
+
+ Środki trwałe w budowie
+
+
+
+ 08-010-000
+
+
+ other
+
+ Inwestycje budowy środka trwałego
+
+
+
+ 08-020-000
+
+
+ other
+
+ Ulepszenia środka trwałego
+
+
+
+ 08-030-000
+
+
+ other
+
+ Nakłady na budowę środka trwałego
+
+
+
+ 08-040-000
+
+
+ other
+
+ Zaliczki na środki trwałe w budowie
+
+
+
+ 08-050-000
+
+
+ other
+
+ Ulepszenia obcych środków trwałych
+
+
+
+ 09-000-000
+
+
+ view
+
+ Odpisy aktualizujące długoterminowe aktywa finansowe
+
+
+
+ 09-010-000
+
+
+ other
+
+ Odpisy aktualizujące udziały i akcje w obcych jednostkach
+
+
+
+ 09-020-000
+
+
+ other
+
+ Odpisy aktualizujące lokaty
+
+
+
+ 09-030-000
+
+
+ other
+
+ Odpisy aktualizujące udzielone pożyczki długoterminowe
+
+
+
+ 09-090-000
+
+
+ other
+
+ Odpisy aktualizujące inne rodzaje długoterminowych aktywów finansowych
+
+
+
+ Z1-000-000
+
+
+ view
+
+ Środki pieniężne, rachunki bankowe oraz inne krótkoterminowe aktywa finansowe
+
+
+
+ 10-000-000
+
+
+ view
+
+ Środki pieniężne w kasie
+
+
+
+ 10-010-000
+
+
+ other
+
+ Kasa krajowych środków pieniężnych
+
+
+
+ 10-020-000
+
+
+ other
+
+ Kasa zagranicznych środków pieniężnych
+
+
+
+ 11-000-000
+
+
+ view
+
+ Rachunki i kredyty bankowe
+
+
+
+ 11-010-000
+
+
+ view
+
+ Rachunek bieżący
+
+
+
+ 11-020-000
+
+
+ other
+
+ Rachunek środków walutowych
+
+
+
+ 11-030-000
+
+
+ other
+
+ Rachunki kredytów bankowych
+
+
+
+ 11-040-000
+
+
+ other
+
+ Rachunek środków wyodrębnionych i zablokowanych
+
+
+
+ 11-050-000
+
+
+ view
+
+ Inne rachunki bankowe
+
+
+
+ 11-050-100
+
+
+ other
+
+ Rachunek bankowy wyodrębnionych środków pieniężnych ZFŚS
+
+
+
+ 11-050-200
+
+
+ other
+
+ Rachunek bankowy lokat terminowych
+
+
+
+ 11-050-300
+
+
+ other
+
+ Rachunek bankowy akretytywy
+
+
+
+ 11-090-000
+
+
+ other
+
+ Środki pieniężne w drodze
+
+
+
+
+ 12-000-000
+
+
+ view
+
+ Lokaty pieniężne
+
+
+
+ 12-090-000
+
+
+ other
+
+ Inne lokaty pieniężne
+
+
+
+ 13-000-000
+
+
+ view
+
+ Inne środki pieniężne
+
+
+
+ 13-090-000
+
+
+ other
+
+ Pozostałe inne środki pieniężne
+
+
+
+ 14-000-000
+
+
+ other
+
+ Inne aktywa pieniężne
+
+
+
+
+ 15-000-000
+
+
+ view
+
+ Krótkoterminowe aktywa finansowe
+
+
+
+ 15-010-000
+
+
+ view
+
+ Krótkoterminowe aktywa finansowe w jednostkach powiązanych
+
+
+
+ 15-010-100
+
+
+ other
+
+ Udziały lub akcje
+
+
+
+ 15-010-200
+
+
+ other
+
+ Inne papiery wartościowe
+
+
+
+ 15-010-300
+
+
+ other
+
+ Udzielone pożyczki
+
+
+
+ 15-010-400
+
+
+ other
+
+ Inne krótkoterminowe aktywa finansowe
+
+
+
+ 15-020-000
+
+
+ view
+
+ Krótkoterminowe aktywa finansowe w pozostałych jednostkach
+
+
+
+ 15-020-100
+
+
+ other
+
+ Udziały lub akcje
+
+
+
+ 15-020-200
+
+
+ other
+
+ Inne papiery wartościowe
+
+
+
+ 15-020-400
+
+
+ other
+
+ Inne krótkoterminowe aktywa finansowe
+
+
+
+ 15-050-000
+
+
+ other
+
+ Odpisy aktualizujące krótkoterminowe aktywa finansowe
+
+
+
+ 18-000-000
+
+
+ other
+
+ Krótkoterminowe rozliczenia międzyokresowe
+
+
+
+ Z2-000-000
+
+
+ view
+
+ Rozrachunki i roszczenia
+
+
+
+ 20-000-000
+
+
+ receivable
+
+ Rozrachunki z odbiorcami
+
+
+
+
+ 21-000-000
+
+
+ payable
+
+ Rozrachunki z dostawcami
+
+
+
+
+ 22-000-000
+
+
+ view
+
+ Rozrachunki publicznoprawne
+
+
+
+ 22-010-000
+
+
+ other
+
+ Rozrachunki z urzędem skarbowym z tytułu VAT
+
+
+
+ 22-020-000
+
+
+ view
+
+ VAT naliczony i jego rozliczenie
+
+
+
+ 22-020-100
+
+
+ other
+
+ Rozliczenie naliczonego VAT 22%
+
+
+
+ 22-020-200
+
+
+ other
+
+ Rozliczenie naliczonego VAT 7%
+
+
+
+ 22-020-300
+
+
+ other
+
+ Rozliczenie naliczonego VAT 3%
+
+
+
+ 22-020-400
+
+
+ other
+
+ Rozliczenie naliczonego VAT 23%
+
+
+
+ 22-020-500
+
+
+ other
+
+ Rozliczenie naliczonego VAT 8%
+
+
+
+ 22-020-600
+
+
+ other
+
+ Rozliczenie naliczonego VAT 5%
+
+
+
+
+ 22-030-000
+
+
+ view
+
+ Rozrachunki z urzędem skarbowym z tytułu VAT należnego
+
+
+
+ 22-030-100
+
+
+ other
+
+ Rozliczenie należnego VAT 22%
+
+
+
+ 22-030-200
+
+
+ other
+
+ Rozliczenie należnego VAT 7%
+
+
+
+ 22-030-300
+
+
+ other
+
+ Rozliczenie należnego VAT 3%
+
+
+
+ 22-030-400
+
+
+ other
+
+ Rozliczenie należnego VAT 23%
+
+
+
+ 22-030-500
+
+
+ other
+
+ Rozliczenie należnego VAT 8%
+
+
+
+ 22-030-600
+
+
+ other
+
+ Rozliczenie należnego VAT 5%
+
+
+
+
+ 22-040-000
+
+
+ other
+
+ Pozostałe rozrachunki publicznoprawne
+
+
+
+ 22-040-100
+
+
+ other
+
+ Pozostałe rozrachunki z urzędem skarbowym
+
+
+
+ 22-040-200
+
+
+ other
+
+ Rozrachunki publicznoprawne z urzędem miasta/gminy
+
+
+
+ 22-040-300
+
+
+ other
+
+ Rozrachunki publicznoprawne z urzędem celnym
+
+
+
+ 22-040-400
+
+
+ other
+
+ Rozrachunki publicznoprawne z ZUS
+
+
+
+ 22-040-500
+
+
+ other
+
+ Rozrachunki publicznoprawne z PFRON
+
+
+
+ 23-000-000
+
+
+ view
+
+ Rozrachunki z pracownikami
+
+
+
+ 23-010-000
+
+
+ other
+
+ Rozrachunki z tytułu wynagrodzeń
+
+
+
+ 23-020-000
+
+
+ other
+
+ Rozrachunki z tytułu pożyczek udzielonych pracownikom
+
+
+
+ 23-090-000
+
+
+ other
+
+ Inne rozrachunki z pracownikami
+
+
+
+ 24-000-000
+
+
+ view
+
+ Pozostałe rozrachunki
+
+
+
+ 24-010-000
+
+
+ view
+
+ Pożyczki
+
+
+
+ 24-010-100
+
+
+ other
+
+ Pożyczki otrzymane
+
+
+
+ 24-010-200
+
+
+ other
+
+ Pożyczki udzielone
+
+
+
+ 24-020-000
+
+
+ view
+
+ Rozliczenie niedoborów i nadwyżek
+
+
+
+ 24-020-100
+
+
+ other
+
+ Rozliczenie niedoborów
+
+
+
+ 24-020-200
+
+
+ other
+
+ Rozliczenie nadwyżek
+
+
+
+ 24-030-000
+
+
+ view
+
+ Rozrachunki związane z kapitałem zakładowym
+
+
+
+
+ 24-030-100
+
+
+ other
+
+ Rozrachunki z tytułu wpłat na kapitał zakładowy
+
+
+
+ 24-030-200
+
+
+ other
+
+ Rozrachunki z tytułu wkładów niepieniężnych na kapitał zakładowy
+
+
+
+ 24-030-300
+
+
+ other
+
+ Rozrachunki z tytułu podwyższenia kapitału ze środków własnych spółki
+
+
+
+ 24-030-400
+
+
+ other
+
+ Rozrachunki z tytułu umorzenia udziałów własnych
+
+
+
+ 24-050-000
+
+
+ other
+
+ Rozrachunki wewnątrzzakładowe
+
+
+
+ 24-060-000
+
+
+ other
+
+ Należności dochodzone na drodze sądowej
+
+
+
+
+ 24-070-000
+
+
+ other
+
+ Rozrachunki z tytułu dywidend
+
+
+
+ 24-080-000
+
+
+ other
+
+ Rozrachunki z tytułu dopłat i zwrotu dopłat
+
+
+
+ 24-090-000
+
+
+ other
+
+ Pozostałe rozrachunki
+
+
+
+ 28-000-000
+
+
+ other
+
+ Odpisy aktualizujące rozrachunki
+
+
+
+ 29-000-000
+
+
+ view
+
+ Rozrachunki pozabilansowe
+
+
+
+ 29-010-000
+
+
+ other
+
+ Należności warunkowe
+
+
+
+ 29-020-000
+
+
+ other
+
+ Zobowiązania warunkowe
+
+
+
+ 29-030-000
+
+
+ other
+
+ Weksle obce dyskontowane lub indosowane
+
+
+
+ Z3-000-000
+
+
+ view
+
+ Materiały i towary
+
+
+
+ 30-000-000
+
+
+ view
+
+ Rozliczenie zakupu
+
+
+
+ 30-010-000
+
+
+ other
+
+ Rozliczenie zakupu materiałów
+
+
+
+ 30-020-000
+
+
+ other
+
+ Rozliczenie zakupu towarów
+
+
+
+ 30-030-000
+
+
+ other
+
+ Rozliczenie zakupu usług obcych
+
+
+
+ 30-040-000
+
+
+ other
+
+ Rozliczenie zakupu składników aktywów trwałych
+
+
+
+
+ 30-050-000
+
+
+ other
+
+ Rozliczenie wartości materiałów i towarów w drodze
+
+
+
+ 30-060-000
+
+
+ other
+
+ Wartości dostaw niefakturowanych
+
+
+
+
+ 30-070-000
+
+
+ other
+
+ Opłaty manipulacyjne policzone przez Urząd Celny
+
+
+
+ 30-080-000
+
+
+ other
+
+ Niedobory, szkody i nadwyżki w transporcie
+
+
+
+ 30-090-000
+
+
+ other
+
+ Reklamacje faktur dostawców
+
+
+
+ 31-000-000
+
+
+ view
+
+ Materiały i opakowania
+
+
+
+ 31-010-000
+
+
+ other
+
+ Materiały
+
+
+
+ 31-060-000
+
+
+ other
+
+ Opakowania
+
+
+
+ 31-090-000
+
+
+ other
+
+ Materiały w przerobie
+
+
+
+ 33-000-000
+
+
+ view
+
+ Towary
+
+
+
+ 33-010-000
+
+
+ other
+
+ Towary w hurcie
+
+
+
+ 33-020-000
+
+
+ other
+
+ Towary w detalu
+
+
+
+ 33-030-000
+
+
+ other
+
+ Towary w zakładach gastronomicznych
+
+
+
+ 33-040-000
+
+
+ other
+
+ Towary skupu
+
+
+ 33-080-000
+
+
+ other
+
+ Towary poza jednostką
+
+
+ 33-090-000
+
+
+ other
+
+ Nieruchomości i prawa majątkowe przeznaczone do obrotu
+
+
+
+ 34-000-000
+
+
+ view
+
+ Odchylenia od cen ewidencyjnych materiałów i towarów
+
+
+
+ 34-010-000
+
+
+ other
+
+ Odchylenia od cen ewidencyjnych materiałów
+
+
+
+ 34-020-000
+
+
+ view
+
+ Odchylenia od cen ewidencyjnych towarów
+
+
+
+ 34-020-100
+
+
+ other
+
+ Odchylenia od cen ewidencyjnych towarów w hurcie
+
+
+
+ 34-020-200
+
+
+ other
+
+ Odchylenia od cen ewidencyjnych towarów w detalu
+
+
+
+ 34-020-300
+
+
+ other
+
+ Odchylenia od cen ewidencyjnych towarów w zakładach gastronomicznych
+
+
+
+ 34-020-400
+
+
+ other
+
+ Odchylenia od cen ewidencyjnych towarów skupu
+
+
+
+ 34-060-000
+
+
+ other
+
+ Odchylenia od cen ewidencyjnych opakowań
+
+
+
+ 34-070-000
+
+
+ other
+
+ Odchylenia z tytułu aktualizacji wartości zapasów materiałów i towarów
+
+
+
+ 39-000-000
+
+
+ other
+
+ Zapasy obce
+
+
+
+ Z4-000-000
+
+
+ view
+
+ Koszty według rodzajów i ich rozliczenie
+
+
+
+ 40-000-000
+
+
+ view
+
+ Koszty według rodzajów
+
+
+
+ 40-010-000
+
+
+ view
+
+ Zużycie materiałów i energii
+
+
+
+ 40-010-100
+
+
+ other
+
+ Zużycie surowców do wytwarzania produktów
+
+
+
+ 40-010-200
+
+
+ other
+
+ Zużycie energii
+
+
+
+ 40-010-300
+
+
+ other
+
+ Zużycie paliwa do środków transportu
+
+
+
+ 40-010-400
+
+
+ other
+
+ Zużycie materiałów biurowych
+
+
+
+ 40-010-900
+
+
+ other
+
+ Zużycie innych materiałów
+
+
+
+ 40-020-000
+
+
+ view
+
+ Usługi obce
+
+
+
+ 40-020-100
+
+
+ other
+
+ Usługi celne
+
+
+
+ 40-020-200
+
+
+ other
+
+ Usługi telekomunikacyjne
+
+
+
+ 40-020-300
+
+
+ other
+
+ Usługi pocztowe
+
+
+
+
+ 40-020-400
+
+
+ other
+
+ Usługi kurierskie i transportowe
+
+
+
+
+ 40-020-500
+
+
+ other
+
+ Analizy sanitarne
+
+
+
+
+ 40-020-600
+
+
+ other
+
+ Usługi graficzne i drukarskie
+
+
+
+ 40-020-700
+
+
+ other
+
+ Usługi remontowe
+
+
+
+ 40-020-900
+
+
+ other
+
+ Pozostałe usługi
+
+
+
+ 40-030-000
+
+
+ view
+
+ Podatki i opłaty
+
+
+ 40-030-100
+
+
+ other
+
+ Podatek od nieruchomości
+
+
+
+ 40-030-200
+
+
+ other
+
+ Podatek od środków transportowych
+
+
+
+ 40-030-300
+
+
+ other
+
+ Podatek akcyzowy
+
+
+
+ 40-030-400
+
+
+ other
+
+ VAT niepodlegający odliczeniu
+
+
+
+ 40-030-500
+
+
+ other
+
+ Opłaty i prowizje bankowe
+
+
+
+ 40-030-600
+
+
+ other
+
+ Opłaty sądowe, prawnicze i notarialne
+
+
+
+ 40-030-700
+
+
+ other
+
+ Opłaty skarbowe
+
+
+
+ 40-030-800
+
+
+ other
+
+ Koncesje
+
+
+
+ 40-030-900
+
+
+ other
+
+ Pozostałe podatki i opłaty
+
+
+
+ 40-040-000
+
+
+ view
+
+ Wynagrodzenia
+
+
+
+ 40-040-100
+
+
+ other
+
+ Wynagrodzenia pracowników
+
+
+
+ 40-040-200
+
+
+ other
+
+ Wynagrodzenia osób doraźnie zatrudnionych
+
+
+
+ 40-050-000
+
+
+ view
+
+ Ubezpieczenia społeczne i inne świadczenia
+
+
+
+ 40-050-100
+
+
+ other
+
+ Składki na ubezpieczenia społeczne, FP, FGŚP
+
+
+
+ 40-050-200
+
+
+ other
+
+ Odpisy na zakładowy fundusz świadczeń socjalnych lub świadczenia urlopowe
+
+
+
+ 40-050-900
+
+
+ other
+
+ Pozostałe świadczenia
+
+
+
+
+ 41-000-000
+
+
+ other
+
+ Świadczenia na rzecz pracowników
+
+
+
+
+ 42-000-000
+
+
+ other
+
+ Amortyzacja
+
+
+
+
+ 43-000-000
+
+
+ other
+
+ Pozostałe koszty rodzajowe
+
+
+
+
+ 49-000-000
+
+
+ view
+
+ Rozliczenie kosztów
+
+
+
+
+ 49-010-000
+
+
+ other
+
+ Nie podlegające rozliczeniu w czasie
+
+
+
+
+ 49-020-000
+
+
+ other
+
+ Przypadające na przyszłe okresy
+
+
+
+
+ 49-030-000
+
+
+ other
+
+ Koszty zgromadzone
+
+
+
+
+ 49-040-000
+
+
+ other
+
+ Koszty nie wliczane do wartości sprzedaży
+
+
+
+ Z5-000-000
+
+
+ view
+
+ Koszty według typów działalności i ich rozliczenie
+
+
+
+ 50-000-000
+
+
+ view
+
+ Koszty działalności podstawowej-produkcyjnej
+
+
+
+ 50-010-000
+
+
+ other
+
+ Rozliczone koszty działalności
+
+
+
+ 50-020-000
+
+
+ other
+
+ Koszty nie zakończonych długotrwałych usług
+
+
+
+ 50-030-000
+
+
+ other
+
+ Straty związane z wykonaniem długotrwałych usług
+
+
+
+ 50-040-000
+
+
+ other
+
+ Koszty utrzymania hurtowni
+
+
+
+ 52-000-000
+
+
+ view
+
+ Koszty działalności podstawowej-handlowej
+
+
+
+ 52-010-000
+
+
+ other
+
+ Koszty utrzymania punktów sprzedaży detalicznej
+
+
+
+ 52-030-000
+
+
+ other
+
+ Koszty sprzedaży wyrobów
+
+
+
+ 53-000-000
+
+
+ view
+
+ Koszty działalności pomocniczej
+
+
+
+ 53-010-000
+
+
+ other
+
+ Świadczenia usług transportowych
+
+
+
+ 53-020-000
+
+
+ other
+
+ Pozostałe koszty
+
+
+
+ 55-000-000
+
+
+ view
+
+ Koszty zarządu
+
+
+
+ 55-010-000
+
+
+ other
+
+ Koszty zarządzania jednostką
+
+
+
+ 55-020-000
+
+
+ other
+
+ Świadczenia usług na potrzeby reprezentacji i reklamy
+
+
+
+ 58-000-000
+
+
+ other
+
+ Rozliczenie kosztów działalności
+
+
+
+ Z6-000-000
+
+
+ view
+
+ Produkty i rozliczenia międzyokresowe
+
+
+
+ 60-000-000
+
+
+ view
+
+ Produkty i półprodukty
+
+
+
+ 60-010-000
+
+
+ view
+
+ Produkty gotowe
+
+
+
+
+ 60-010-100
+
+
+ other
+
+ Produkty gotowe w magazynie
+
+
+
+
+ 60-010-200
+
+
+ other
+
+ Produkty gotowe poza jednostką
+
+
+
+ 60-020-000
+
+
+ other
+
+ Półprodukty
+
+
+
+ 62-000-000
+
+
+ view
+
+ Odchylenia od cen ewidencyjnych produktów
+
+
+
+ 62-010-000
+
+
+ other
+
+ Odchylenia od cen ewidencyjnych produktów
+
+
+
+ 62-020-000
+
+
+ other
+
+ Odchylenia z tytułu aktualizacji wartości zapasów produktów
+
+
+
+ 64-000-000
+
+
+ view
+
+ Rozliczenia międzyokresowe kosztów
+
+
+
+ 64-010-000
+
+
+ other
+
+ Czynne rozliczenia międzyokresowe kosztów
+
+
+
+ 64-020-000
+
+
+ other
+
+ Bierne rozliczenia międzyokresowe kosztów
+
+
+
+ 65-000-000
+
+
+ view
+
+ Pozostałe rozliczenia międzyokresowe
+
+
+
+ 65-010-000
+
+
+ other
+
+ Aktywa z tytułu odroczonego podatku dochodowego
+
+
+
+ 65-020-000
+
+
+ other
+
+ Inne rozliczenia międzyokresowe
+
+
+
+ Z7-000-000
+
+
+ view
+
+ Przychody i koszty związane z ich osiągnięciem
+
+
+
+ 70-000-000
+
+
+ view
+
+ Sprzedaż produktów
+
+
+
+ 70-010-000
+
+
+ other
+
+ Sprzedaż produktów na kraj
+
+
+
+ 70-020-000
+
+
+ other
+
+ Sprzedaż produktów na eksport
+
+
+
+ 70-030-000
+
+
+ other
+
+ Sprzedaż usług na kraj
+
+
+
+ 70-040-000
+
+
+ other
+
+ Sprzedaż usług na eksport
+
+
+
+ 70-100-000
+
+
+ view
+
+ Koszty sprzedanych produktów
+
+
+
+
+ 70-110-000
+
+
+ other
+
+ Koszt własny sprzedaży produktów na kraj
+
+
+
+ 70-120-000
+
+
+ other
+
+ Koszt własny sprzedaży produktów na eksport
+
+
+
+ 70-130-000
+
+
+ other
+
+ Koszt własny sprzedaży usług na kraj
+
+
+
+ 70-140-000
+
+
+ other
+
+ Koszt własny sprzedaży usług na eksport
+
+
+
+ 73-000-000
+
+
+ view
+
+ Sprzedaż towarów
+
+
+
+ 73-010-000
+
+
+ other
+
+ Sprzedaż hurtowa towarów
+
+
+
+ 73-020-000
+
+
+ other
+
+ Sprzedaż detaliczna towarów
+
+
+
+
+ 73-030-000
+
+
+ other
+
+ Sprzedaż wysyłkowa towarów
+
+
+
+ 73-040-000
+
+
+ other
+
+ Prowizja komisowa
+
+
+
+ 73-100-000
+
+
+ view
+
+ Wartość sprzedanych towarów w cenach zakupu
+
+
+
+
+ 73-110-000
+
+
+ other
+
+ Wartość sprzedanych towarów w sprzedaży hurtowej
+
+
+
+ 73-120-000
+
+
+ other
+
+ Wartość sprzedanych towarów w sprzedaży detalicznej
+
+
+
+
+ 73-130-000
+
+
+ other
+
+ Wartość sprzedanych towarów w sprzedaży wysyłkowej
+
+
+
+ 73-140-000
+
+
+ other
+
+ Prowizja komisowa
+
+
+
+ 74-000-000
+
+
+ view
+
+ Sprzedaż materiałów i opakowań
+
+
+
+ 74-010-000
+
+
+ other
+
+ Sprzedaż materiałów
+
+
+
+ 74-020-000
+
+
+ other
+
+ Sprzedaż opakowań
+
+
+
+ 74-030-000
+
+
+ other
+
+ Sprzedaż odpadów
+
+
+
+ 74-100-000
+
+
+ view
+
+ Wartość sprzedanych materiałów i opakowań
+
+
+
+ 74-110-000
+
+
+ other
+
+ Wartość w cenach zakupu sprzedanych materiałów
+
+
+
+ 74-120-000
+
+
+ other
+
+ Wartość w cenach zakupu sprzedanych opakowań
+
+
+
+ 74-130-000
+
+
+ other
+
+ Wartość w cenach zakupu sprzedanych odpadów
+
+
+
+ 75-000-000
+
+
+ view
+
+ Przychody finansowe
+
+
+
+ 75-010-000
+
+
+ other
+
+ Kwoty należne ze sprzedaży aktywów finansowych
+
+
+
+ 75-020-000
+
+
+ other
+
+ Kwoty należne z tytułu dywidend
+
+
+
+ 75-030-000
+
+
+ other
+
+ Otrzymane odsetki
+
+
+
+ 75-040-000
+
+
+ other
+
+ Przychody ze zbycia inwestycji
+
+
+
+ 75-050-000
+
+
+ other
+
+ Aktualizacja wartości inwestycji-przychody
+
+
+
+ 75-060-000
+
+
+ other
+
+ Dodatnie różnice kursu walut
+
+
+
+ 75-070-000
+
+
+ other
+
+ Pozostałe przychody finansowe
+
+
+
+ 75-100-000
+
+
+ view
+
+ Koszty finansowe
+
+
+
+ 75-110-000
+
+
+ other
+
+ Wartość sprzedanych inwestycji
+
+
+
+ 75-120-000
+
+
+ other
+
+ Odpisy z tytułu utraty wartości inwestycji-koszty
+
+
+
+ 75-130-000
+
+
+ other
+
+ Odsetki zapłacone
+
+
+
+ 75-140-000
+
+
+ other
+
+ Ujemne różnice kursu walut
+
+
+
+ 75-190-000
+
+
+ other
+
+ Pozostałe koszty finansowe
+
+
+
+ 76-000-000
+
+
+ view
+
+ Pozostałe przychody operacyjne
+
+
+
+ 76-010-000
+
+
+ other
+
+ Przychody ze zbycia niefinansowych aktywów trwałych
+
+
+
+ 76-020-000
+
+
+ other
+
+ Otrzymane dotacje
+
+
+
+ 76-030-000
+
+
+ other
+
+ Przychody z usług socjalnych
+
+
+
+ 76-040-000
+
+
+ other
+
+ Przychody ze wzrostu wartości niefinansowych aktywów trwałych
+
+
+
+ 76-090-000
+
+
+ other
+
+ Inne pozostałe przychody operacyjne
+
+
+
+ 76-100-000
+
+
+ view
+
+ Pozostałe koszty operacyjne
+
+
+
+ 76-110-000
+
+
+ other
+
+ Wartość sprzedanych niefinansowych aktywów trwałych
+
+
+
+ 76-120-000
+
+
+ other
+
+ Dotacje przekazane
+
+
+
+ 76-130-000
+
+
+ other
+
+ Odpisy z tytułu utraty wartości aktywów niefinansowych
+
+
+
+ 76-140-000
+
+
+ other
+
+ Inne pozostałe koszty operacyjne
+
+
+
+ 77-000-000
+
+
+ other
+
+ Zyski nadzwyczajne
+
+
+
+ 77-100-000
+
+
+ other
+
+ Straty nadzwyczajne
+
+
+
+ 79-000-000
+
+
+ view
+
+ Obroty wewnętrzne
+
+
+
+ 79-010-000
+
+
+ other
+
+ Koszt wyrobów własnej produkcji wydanych do własnych sklepów
+
+
+
+ 79-020-000
+
+
+ other
+
+ Świadczenia na rzecz środków trwałych w budowie
+
+
+
+ 79-040-000
+
+
+ other
+
+ Koszt niedoborów produktów
+
+
+
+ 79-050-000
+
+
+ other
+
+ Koszt zaniechania określonego rodzaju działalności
+
+
+
+ 79-100-000
+
+
+ view
+
+ Koszt własny obrotów wewnętrznych
+
+
+
+ 79-110-000
+
+
+ other
+
+ Koszt wytworzenia wyrobów gotowych wydanych do własnych sklepów
+
+
+
+ 79-120-000
+
+
+ other
+
+ Koszt wytworzenia świadczeń na rzecz środków trwałych w budowie
+
+
+
+ 79-130-000
+
+
+ other
+
+ Koszt wytworzenia zakończonych prac rozwojowych
+
+
+
+ 79-140-000
+
+
+ other
+
+ Koszt wytworzenia produktów uznanych za niedobory
+
+
+
+ 79-150-000
+
+
+ other
+
+ Koszt zaniechania określonego rodzaju działalności
+
+
+
+ Z8-000-000
+
+
+ view
+
+ Kapitały własne i wynik finansowy
+
+
+
+ 80-000-000
+
+
+ other
+
+ Kapitał podstawowy
+
+
+
+ 81-000-000
+
+
+ view
+
+ Pozostałe kapitały i fundusze
+
+
+
+ 81-100-000
+
+
+ other
+
+ Kapitał zapasowy
+
+
+
+ 81-200-000
+
+
+ other
+
+ Kapitał rezerwowy
+
+
+
+ 81-300-000
+
+
+ other
+
+ Kapitał z aktualizacji wyceny
+
+
+
+ 81-400-000
+
+
+ other
+
+ Kapitały wydzielone w jednostce statutowej i zakładach (oddziałach) samodzielnie sporządzających bilans
+
+
+
+ 82-000-000
+
+
+ other
+
+ Rozliczenia wyniku finansowego
+
+
+
+ 83-000-000
+
+
+ view
+
+ Rezerwy
+
+
+
+ 83-010-000
+
+
+ other
+
+ Rezerwa z tytułu odroczonego podatku dochodowego
+
+
+
+ 83-020-000
+
+
+ view
+
+ Rezerwa na świadczenia
+
+
+
+ 83-020-100
+
+
+ other
+
+ Rezerwa długoterminowa na świadczenia emerytalne i podobne
+
+
+
+ 83-020-200
+
+
+ other
+
+ Rezerwa krótkoterminowa na świadczenia emerytalne i podobne
+
+
+
+ 83-090-000
+
+
+ view
+
+ Pozostałe rezerwy
+
+
+
+ 83-090-100
+
+
+ other
+
+ Pozostałe rezerwy długoterminowe
+
+
+
+ 83-090-200
+
+
+ other
+
+ Pozostałe rezerwy krótkoterminowe
+
+
+
+ 84-000-000
+
+
+ view
+
+ Rozliczenia międzyokresowe
+
+
+
+ 84-010-000
+
+
+ other
+
+ Ujemna wartość firmy
+
+
+
+ 84-020-000
+
+
+ view
+
+ Inne rozliczenia międzyokresowe
+
+
+
+ 84-020-100
+
+
+ other
+
+ Inne rozliczenia międzyokresowe długoterminowe
+
+
+
+ 84-020-200
+
+
+ other
+
+ Inne rozliczenia międzyokresowe krótkoterminowe
+
+
+
+ 85-000-000
+
+
+ view
+
+ Fundusze specjalne
+
+
+
+ 85-010-000
+
+
+ other
+
+ Zakładowy fundusz świadczeń socjalnych
+
+
+
+ 85-020-000
+
+
+ view
+
+ Inne fundusze specjalne
+
+
+
+ 85-020-100
+
+
+ other
+
+ Zakładowy fundusz rehabilitacji osób niepełnosprawnych
+
+
+
+ 85-020-200
+
+
+ other
+
+ Fundusz nagród
+
+
+
+ 85-020-300
+
+
+ other
+
+ Fundusz na remont zasobów mieszkaniowych
+
+
+
+ 86-000-000
+
+
+ other
+
+ Wynik finansowy
+
+
+
+ 87-000-000
+
+
+ view
+
+ Podatek dochodowy i inne obowiązkowe obciążenia wyniku finansowego
+
+
+
+ 87-010-000
+
+
+ other
+
+ Podatek dochodowy od osób prawnych
+
+
+
+ 87-020-000
+
+
+ other
+
+ Inne obowiązkowe obciążenia wyniku finansowego
+
+
+
+
+ Polska - Plan kont
+
+
+
+
+
+
+
+
+
+
-
\ No newline at end of file
+
diff --git a/addons/l10n_pl/account_tax.xml b/addons/l10n_pl/account_tax.xml
old mode 100644
new mode 100755
index de4123708d9..1968cd28fce
--- a/addons/l10n_pl/account_tax.xml
+++ b/addons/l10n_pl/account_tax.xml
@@ -1,126 +1,588 @@
-
-
- VAT-23%(23.0%)
- 0.230000
- percent
- sale
-
-
-
-
-
-
-
-
-
-
-
- VAT-8%(8.0%)
- 0.080000
- percent
- sale
-
-
-
-
-
-
-
-
-
-
-
- VAT-5%(5.0%)
- 0.050000
- percent
- sale
-
-
-
-
-
-
-
-
-
-
-
- VAT-0%(0.0%)
- 0.000000
- percent
- sale
-
-
-
-
-
-
-
-
-
-
-
- VAT naliczony-23%(23.0%)
- 0.230000
- percent
- purchase
-
-
-
-
-
-
-
-
-
-
-
- VAT naliczony-8%(8.0%)
- 0.080000
- percent
- purchase
-
-
-
-
-
-
-
-
-
-
-
- VAT naliczony-5%(5.0%)
- 0.050000
- percent
- purchase
-
-
-
-
-
-
-
-
-
-
-
- VAT naliczony-0%(0.0%)
- 0.000000
- percent
- purchase
-
-
-
-
-
-
-
-
-
+# VAT kraj należny (sprzedaż)
+
+
+
+ VAT-23%
+ V23
+ 0.230000
+ percent
+ sale
+
+
+
+
+
+
+
+
+
+
+
+
+ VAT-22%
+ V22
+ 0.220000
+ percent
+ sale
+
+
+
+
+
+
+
+
+
+
+
+ VAT-8%
+ V8
+ 0.080000
+ percent
+ sale
+
+
+
+
+
+
+
+
+
+
+
+ VAT-7%
+ V7
+ 0.070000
+ percent
+ sale
+
+
+
+
+
+
+
+
+
+
+
+ VAT-5%
+ V5
+ 0.050000
+ percent
+ sale
+
+
+
+
+
+
+
+
+
+
+
+ VAT-3%
+ V3
+ 0.030000
+ percent
+ sale
+
+
+
+
+
+
+
+
+
+
+
+
+ VAT-0%
+ V0
+ 0.000000
+ percent
+ sale
+
+
+
+
+
+
+
+ VAT-ZW
+ VZW
+ 0.000000
+ percent
+ sale
+
+
+
+
+
+
+
+ VAT usł-23%
+ VU23
+ 0.230000
+ percent
+ sale
+
+
+
+
+
+
+
+
+
+
+
+
+
+ VAT usł-22%
+ VU22
+ 0.220000
+ percent
+ sale
+
+
+
+
+
+
+
+
+
+
+
+# VAT kraj naliczony
+
+
+
+ VAT naliczony-23%
+ Z23
+ 0.230000
+ percent
+
+ purchase
+
+
+
+
+
+
+
+
+
+
+
+ VAT naliczony-22%
+ Z22
+ 0.220000
+ percent
+ purchase
+
+
+
+
+
+
+
+
+
+
+
+ VAT naliczony-8%
+ Z8
+ 0.080000
+ percent
+ purchase
+
+
+
+
+
+
+
+
+
+
+
+ VAT naliczony-7%
+ Z7
+ 0.070000
+ percent
+ purchase
+
+
+
+
+
+
+
+
+
+
+
+ VAT naliczony-5%
+ Z5
+ 0.050000
+ percent
+ purchase
+
+
+
+
+
+
+
+
+
+
+
+ VAT naliczony-3%
+ Z3
+ 0.030000
+ percent
+ purchase
+
+
+
+
+
+
+
+
+
+
+
+
+ VAT naliczony-0%
+ Z0
+ 0.000000
+ percent
+ purchase
+
+
+
+
+
+
+
+
+
+ VAT naliczony-ZW
+ ZZW
+ 0.000000
+ percent
+ purchase
+
+
+
+
+
+
+
+
+
+
+ VAT usł nalicz-23%
+ ZU23
+ 0.230000
+ percent
+ purchase
+
+
+
+
+
+
+
+
+
+
+
+ VAT usł nalicz-22%
+ ZU22
+ 0.220000
+ percent
+ purchase
+
+
+
+
+
+
+
+
+
+
+
+# Unia
+#===========================================================
+
+
+
+ Dost tow. unia
+ UDT
+ 0.000000
+ percent
+ sale
+
+
+
+
+
+
+
+ Nab tow unia
+ UNT
+ 0.23
+ percent
+
+ purchase
+
+
+
+
+
+
+
+ Nab tow unia 1
+ UNT1
+
+
+ percent
+
+
+
+
+
+ purchase
+
+
+
+ Nab tow unia 2
+ UNT2
+
+
+ percent
+
+
+
+ purchase
+
+
+
+# Eksport / Import
+#================================================
+
+
+
+ Eksp Tow
+ EXT
+ 0.000000
+ percent
+ sale
+
+
+
+
+
+
+
+ Imp Tow
+ IMT
+ 0.23
+ percent
+
+ purchase
+
+
+
+
+
+
+
+ Imp Tow 1
+ IMT1
+
+
+ percent
+
+
+
+
+
+ purchase
+
+
+
+ Imp Tow 2
+ IMT2
+
+
+ percent
+
+
+
+ purchase
+
+
+
+
+ Eksp Usł
+ EXU
+ 0.000000
+ percent
+ sale
+
+
+
+
+
+
+
+ Świad Usł
+ UDU
+ 0.000000
+ percent
+ sale
+
+
+
+
+
+
+
+ Imp Usł
+ IMU
+ 0.23
+ percent
+
+ purchase
+
+
+
+
+
+
+
+ Imp Usł 1
+ IMU1
+
+
+ percent
+
+
+
+
+
+ purchase
+
+
+
+ Imp Usł 2
+ IMU2
+
+
+ percent
+
+
+
+ purchase
+
+
+
+
+ Nab Usł
+ UNU
+ 0.23
+ percent
+
+ purchase
+
+
+
+
+
+
+
+ Nab Usł 1
+ UNU1
+
+
+ percent
+
+
+
+
+
+ purchase
+
+
+
+ Nab Usł 2
+ UNU2
+
+
+ percent
+
+
+
+ purchase
+
+
+# Leasing pojazdu
+#================================================
+
+
+
+ VAT - leasing pojazdu
+ VLP
+ 1.00
+
+ percent
+
+ all
+
+
+
+
+ VAT - leasing pojazdu 60% x 23%
+ VLP-1
+
+
+ percent
+
+
+
+
+
+
+
+ all
+
+
+
+
+ VAT - leasing pojazdu 40% x 23%
+ VLP-2
+
+
+ percent
+
+
+
+ all
+
+
-
\ No newline at end of file
+
diff --git a/addons/l10n_pl/account_tax_code.xml b/addons/l10n_pl/account_tax_code.xml
old mode 100644
new mode 100755
index f9a375f6c96..d0b5c6dbaf3
--- a/addons/l10n_pl/account_tax_code.xml
+++ b/addons/l10n_pl/account_tax_code.xml
@@ -5,43 +5,391 @@
#
# Tax Code Template Configuration
#
-
- Podatek
-
-
-
- Różnica podatku do zapłacenia
-
-
-
- Podatek należny (Podatek do zapłacenia)
-
-
-
-
- Podatek naliczony (Podatek do odliczenia)
-
-
-
-
-
- Podstawy podatku
-
-
+
+ Rejestr główny
+
-
- Podstawa dla podatku przy sprzedaży
-
-
+# E group
+# =======================================================================================
+
+
+ Podatek - Do przeniesienia
+ E - 55
+ Kwota do przeniesienia na następny okres rozliczeniowy
+
+
+
+
+ Podatek - Nadwyżka naliczonego nad należnym
+ E - 50
+ Nadwyżka podatku naliczonego nad należnym
+
+
+
+
+ Podatek - Do wpłaty do US
+ E - 48
+ Kwota podatku podlegająca wpłacie do urzędu skarbowego
+
+
+
+
+
+ Podatek - Wydatek na kasy rejestrujące
+ E - 46
+ Kwota wydatkowana na zakup kas rejestrujących, do odliczenia w danym okresie rozliczeniowym
+
+
+
+
+
+ Podatek - Objęty zaniechaniem poboru
+ E - 47
+ Kwota podatku objęta zaniechaniem poboru
+
+
+
+
+
+ Podatek - Wydatek na kasy do zwrotu w tym okresie
+ E - 49
+ Kwota wydatkowana na zakup kas rejestrujących, przysługująca do zwrotu w danym okresie rozliczeniowym
+
+
-
- Podstawa dla podatku przy zakupach
-
-
-
+
+ Podatek - Do zwrotu
+ E - 51
+ Kwota do zwrotu na rachunek wskazany przez podatnika
+
+
+
+
+
+ Podatek - Do zwrotu 25 dni
+ E - 52
+ W tym kwota do zwrotu w terminie 25 dni
+
+
+
+
+ Podatek - Do zwrotu 60 dni
+ E - 53
+ W tym kwota do zwrotu w terminie 60 dni
+
+
+
+
+ Podatek - Do zwrotu 180 dni
+ E - 54
+ W tym kwota do zwrotu w terminie 180 dni
+
+
+
+
+# C group
+#================================================================================
+
+
+ Podstawa - Razem C
+ C.RAZEM - 35
+ Poz 35 = suma kwot z poz 10, 11, 13, 15, 17, 19, 21, 22, 23, 25, 27 i 31
+
+
+
+
+
+ Podatek - Razem C
+ C.RAZEM - 36
+ Poz 36 = suma kwot z poz 16, 18, 20, 24, 26, 28, 32, 33, pomniejszona o kwotę z pozycji 34
+
+
+
+
+
+
+
+ Podstawa - Dostawa towarów/usług, kraj, zwolnione
+ C.01 - 10
+ Dostawa towarów oraz świadczenie usług na terytorium kraju, zwolnione od podatku
+
+
+
+
+
+ Podstawa - Dostawa towarów/usług, poza kraj
+ C.02 - 11
+ Dostawa towarów oraz świadczenie usług poza terytorium kraju
+
+
+
+
+
+
+
+ Podstawa - W tym usługi art 100.1.4
+ C.02a - 12
+ W tym świadczenie usług, o których mowa w art 100 ust. 1 pkt 4 ustawy. Do Dostawa towarów oraz świadczenie usług poza terytorium kraju
+
+
+
+
+
+
+ Podstawa - Dostawa towarów/usług, kraj, 0%
+ C.03 - 13
+ Dostawa towarów oraz świadczenie usług na terytorium kraju, opodatkowane stawką 0%
+
+
+
+
+
+ Podstawa - W tym towary art 129
+ C.03a - 14
+ W tym dostawa towarów, o której mowa w art. 129 ustawy. Do Dostawa towarów oraz świadczenie usług na terytorium kraju, opodatkowane stawką 0%
+
+
+
+
+
+ Podstawa - Dostawa towarów/usług, kraj, 3% lub 5%
+ C.04 - 15
+ Dostawa towarów oraz świadczenie usług na terytorium kraju, opodatkowane stawką 3% albo 5%
+
+
+
+
+
+ Podatek - Dostawa towarów/usług, kraj, 3% lub 5%
+ C.04 - 16
+ Dostawa towarów oraz świadczenie usług na terytorium kraju, opodatkowane stawką 3% albo 5%
+
+
+
+
+
+ Podstawa - Dostawa towarów/usług, kraj, 7% lub 8%
+ C.05 - 17
+ Dostawa towarów oraz świadczenie usług na terytorium kraju, opodatkowane stawką 7% albo 8%
+
+
+
+
+
+ Podatek - Dostawa towarów/usług, kraj, 7% lub 8%
+ C.05 - 18
+ Dostawa towarów oraz świadczenie usług na terytorium kraju, opodatkowane stawką 7% albo 8%
+
+
+
+
+
+ Podstawa - Dostawa towarów/usług, kraj, 22% lub 23%
+ C.06 - 19
+ Dostawa towarów oraz świadczenie usług na terytorium kraju, opodatkowane stawką 22% albo 23%
+
+
+
+
+
+ Podatek - Dostawa towarów/usług, kraj, 22% lub 23%
+ C.06 - 20
+ Dostawa towarów oraz świadczenie usług na terytorium kraju, opodatkowane stawką 22% albo 23%
+
+
+
+
+
+ Podstawa - Wew-wspól dostawa towarów
+ C.07 - 21
+ Wewnątrzwspólnotowa dostawa towarów
+
+
+
+
+
+
+ Podstawa - Eksport towarów
+ C.08 - 22
+ Eksport towarów
+
+
+
+
+
+
+ Podstawa - Wewn-wspól. nabycie towarów
+ C.09 - 23
+ Wewnątrzwspólnotowe nabycie towarów
+
+
+
+
+
+ Podatek - Wewn-wspól. nabycie towarów
+ C.09 - 24
+ Wewnątrzwspólnotowe nabycie towarów
+
+
+
+
+
+ Podstawa - Import towarów art. 33a
+ C.10 - 25
+ Import towarów, podlegający rozliczeniu zgodnie z art 33a ustawy
+
+
+
+
+
+ Podatek - Import towarów art. 33a
+ C.10 - 26
+ Import towarów, podlegający rozliczeniu zgodnie z art 33a ustawy
+
+
+
+
+
+ Podstawa - Import usług
+ C.11 - 27
+ Import usług
+
+
+
+
+
+ Podatek - Import usług
+ C.11 - 28
+ Import usług
+
+
+
+
+
+ Podstawa - W tym nabycie wg art 28b
+ C.11a - 29
+ W tym nabycie od podatników podatku od wartości dodanej usług, do których stosuje się art 28b ustawy
+
+
+
+
+
+ Podatek - W tym nabycie wg art 28b
+ C.11a - 30
+ W tym nabycie od podatników podatku od wartości dodanej usług, do których stosuje się art 28b ustawy
+
+
+
+
+
+ Podstawa - Dostawa towarów, podatnik nabywca
+ C.12 - 31
+ Dostawa towarów, dla której podatnikiem jest nabywca
+
+
+
+
+
+ Podatek - Dostawa towarów, podatnik nabywca
+ C.12 - 32
+ Dostawa towarów, dla której podatnikiem jest nabywca
+
+
+
+
+
+ Podatek - Ze spisu z natury art 14.5
+ C.13 - 33
+ Kwota podatku należnego od towarów i usług objętych spisem z natury, o którym mowa w art.14 ust.5 ustawy
+
+
+
+
+
+ Podatek - Wew.wspól. nabycie środk. transp. termin
+ C.14 - 34
+ Kwota podatku należnego od wewnątrzwspólnotowego nabycia środków transportu, wykazanego w poz.34, podlegająca wpłacie w terminie, o którym mowa w art.103 ust.3 w związku z ust.4 ustawy
+
+
+
+
+# D group
+# =======================================================================================
+
+
+ Podstawa - Razem D
+ D.RAZEM - 00
+ Poz nieistniejąca = suma kwot z poz 49 i 51
+
+
+
+
+
+ Podatek - Razem D
+ D.03 - 45
+ Razem kwota podatku naliczonego do odliczenia
+
+
+
+
+
+ Podatek - Nadwyżka z poprzedniej deklaracji
+ D.01 - 37
+ Kwota nadwyżki z poprzedniej deklaracji
+
+
+
+
+ Podatek - Naliczony ze spisu z natury, art.113
+ D.01 - 38
+ Kwota podatku naliczonego wynikającego ze spisu z natury, o którym mowa w art.113 ust.5 ustawy
+
+
+
+
+ Podstawa - Nabycie towarów i usług ś.trwałe
+ D.02 - 39
+ Nabycie towarów i usług zaliczanych u podatnika do środków trwałych
+
+
+
+
+ Podatek - Nabycie towarów i usług ś.trwałe
+ D.02 - 40
+ Nabycie towarów i usług zaliczanych u podatnika do środków trwałych
+
+
+
+
+ Podstawa - Nabycie towarów i usług pozostałych
+ D.02 - 41
+ Nabycie towarów i usług pozostałych
+
+
+
+
+ Podatek - Nabycie towarów i usług pozostałych
+ D.02 - 42
+ Nabycie towarów i usług pozostałych
+
+
+
+
+ Podatek - Korekta naliczonego od nabycia ś.trwałych
+ D.03 - 43
+ Korekta podatku naliczonego od nabycia środków trwałych
+
+
+
+
+ Podatek - Korekta naliczonego od pozostałych nabyć
+ D.03 - 44
+ Korekta podatku naliczonego od pozostałych nabyć
+
+
diff --git a/addons/l10n_pl/country_pl.xml b/addons/l10n_pl/country_pl.xml
new file mode 100644
index 00000000000..0b3d45c6d15
--- /dev/null
+++ b/addons/l10n_pl/country_pl.xml
@@ -0,0 +1,85 @@
+
+
+
+
+ mazowieckie
+ MZ
+
+
+
+ dolnośląskie
+ DS
+
+
+
+ lubelskie
+ LU
+
+
+
+ kujawsko-pomorskie
+ KS
+
+
+
+ lubuskie
+ LB
+
+
+
+ łódzkie
+ LD
+
+
+
+ małopolskie
+ MA
+
+
+
+ opolskie
+ OP
+
+
+
+ podkarpackie
+ PK
+
+
+
+ podlaskie
+ PD
+
+
+
+ pomorskie
+ PM
+
+
+
+ śląskie
+ SL
+
+
+
+ świętokrzyskie
+ SK
+
+
+
+ warmińsko-mazurskie
+ WN
+
+
+
+ wielkopolskie
+ WP
+
+
+
+ zachodniopomorskie
+ ZP
+
+
+
+
diff --git a/addons/l10n_pl/fiscal_position.xml b/addons/l10n_pl/fiscal_position.xml
new file mode 100644
index 00000000000..5dc0cbe953d
--- /dev/null
+++ b/addons/l10n_pl/fiscal_position.xml
@@ -0,0 +1,247 @@
+
+
+
+
+
+
+
+ Kraj
+
+
+
+
+ Wspólnota
+
+
+
+
+ Import/Eksport
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+# Zakup
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+# Eksport / Import
+#====================================================
+
+
+# Sprzedaż
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+# Zakupy
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/addons/l10n_ro/account_chart.xml b/addons/l10n_ro/account_chart.xml
index 169e4bfa206..8f531d1ffbf 100644
--- a/addons/l10n_ro/account_chart.xml
+++ b/addons/l10n_ro/account_chart.xml
@@ -4587,7 +4587,7 @@
-
+
diff --git a/addons/l10n_si/data/account.chart.template.csv b/addons/l10n_si/data/account.chart.template.csv
index c31794da56e..014e0e4307b 100644
--- a/addons/l10n_si/data/account.chart.template.csv
+++ b/addons/l10n_si/data/account.chart.template.csv
@@ -1,3 +1,3 @@
-"id","name","account_root_id/id","tax_code_root_id/id","bank_account_view_id/id","property_account_receivable/id","property_account_payable/id","property_account_expense_categ/id","property_account_income_categ/id"
-"gd_chart","Kontni načrt za gospodarske družbe","gd_acc","gd_taxc","gd_acc_110","gd_acc_120000","gd_acc_220000","gd_acc_702000","gd_acc_762000"
+"id","name","account_root_id/id","tax_code_root_id/id","bank_account_view_id/id","property_account_receivable/id","property_account_payable/id","property_account_expense_categ/id","property_account_income_categ/id","currency_id/id"
+"gd_chart","Kontni načrt za gospodarske družbe","gd_acc","gd_taxc","gd_acc_110","gd_acc_120000","gd_acc_220000","gd_acc_702000","gd_acc_762000","base.EUR"
diff --git a/addons/l10n_syscohada/l10n_syscohada_data.xml b/addons/l10n_syscohada/l10n_syscohada_data.xml
index d4be067bfa2..1add910717c 100644
--- a/addons/l10n_syscohada/l10n_syscohada_data.xml
+++ b/addons/l10n_syscohada/l10n_syscohada_data.xml
@@ -1806,28 +1806,7 @@
-
-
-
- XOF
- CFA
- 1
- 4
-
-
- 655.957
-
-
-
-
-
- %
-
+
+
+
+
+
-
- Sales Application
- sale.config.settings
-
-
-
-
-
-
-
- Install Outlook Plug-In
- ir.actions.act_window
- outlook.installer
-
- form
- form
- new
- {'menu':True}
-
-
-
-
-
-
-
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/CookComputing.XmlRpcV2.dll b/addons/plugin_outlook/static/openerp-outlook-plugin/CookComputing.XmlRpcV2.dll
deleted file mode 100644
index be76352b13d..00000000000
Binary files a/addons/plugin_outlook/static/openerp-outlook-plugin/CookComputing.XmlRpcV2.dll and /dev/null differ
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPClient/Model.cs b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPClient/Model.cs
deleted file mode 100644
index e163b5442a4..00000000000
--- a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPClient/Model.cs
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- OpenERP, Open Source Business Applications
- Copyright (c) 2011 OpenERP S.A.
-
- 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 .
-*/
-
-
-using System;
-using System.Collections;
-using System.Linq;
-
-namespace OpenERPClient
-{
- public class Model
- {
- public string model;
- public string name;
- protected OpenERPConnect openerp_connect;
- public OpenERPConnect Connection
- {
- set
- {
- this.openerp_connect = value;
- }
- get
- {
- return this.openerp_connect;
- }
- }
- public Model()
- {
- }
- public Model(string model)
- {
- /*
- It gives the model name only.
- :param model : madel name
- */
-
- this.model = model;
- }
- public Model(string model, string name)
- {
- /*
- It gives the model names with their descriptions.
- :param model : model name
- :param name : description of model
- */
-
- this.name = name;
- this.model = model;
- }
- public override string ToString()
- {
- /*
- It overrides the name of model into ToString.
-
- :return : String
- */
-
- if (this.name != null) return this.name;
- return this.model;
- }
-
- }
-}
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPClient/OpenERPClient.csproj b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPClient/OpenERPClient.csproj
deleted file mode 100644
index f9ac3e31553..00000000000
--- a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPClient/OpenERPClient.csproj
+++ /dev/null
@@ -1,105 +0,0 @@
-
-
-
- Debug
- AnyCPU
- 9.0.21022
- 2.0
- {8E62B8DF-E3A2-4429-A820-FB8A31C2EB00}
- Library
- Properties
- OpenERPClient
- OpenERPClient
- v3.5
- 512
-
-
-
-
- 3.5
- false
- publish\
- true
- Disk
- false
- Foreground
- 7
- Days
- false
- false
- true
- 0
- 1.0.0.%2a
- false
- true
-
-
- true
- full
- false
- bin\Debug\
- DEBUG;TRACE
- prompt
- 4
- AllRules.ruleset
-
-
- pdbonly
- true
- bin\Release\
- TRACE
- prompt
- 4
- AllRules.ruleset
-
-
-
- ..\CookComputing.XmlRpcV2.dll
-
-
-
- 3.5
-
-
-
- 3.5
-
-
- 3.5
-
-
-
-
-
-
-
-
-
-
-
-
-
- False
- .NET Framework 3.5 SP1 Client Profile
- false
-
-
- False
- .NET Framework 3.5 SP1
- true
-
-
- False
- Windows Installer 3.1
- true
-
-
-
-
-
\ No newline at end of file
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPClient/OpenERPConnect.cs b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPClient/OpenERPConnect.cs
deleted file mode 100644
index f9314adc417..00000000000
--- a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPClient/OpenERPConnect.cs
+++ /dev/null
@@ -1,383 +0,0 @@
-/*
- OpenERP, Open Source Business Applications
- Copyright (c) 2011 OpenERP S.A.
-
- 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 .
-*/
-
-
-using System;
-using System.Windows.Forms;
-using System.Collections;
-using CookComputing.XmlRpc;
-
-namespace OpenERPClient
-{
- public class ServiceUrl : System.Attribute
- {
- string _url;
- public ServiceUrl(string url)
- {
- /*
- It will contain the ServiceUrl.
- :param url : url with server and port.
- */
-
- this._url = url;
- }
- public string Url
- {
- /*
- It will get and return the Url for the connection.
-
- :return : String
- */
-
- get
- {
- return _url;
- }
- }
- public override string ToString()
- {
- /*
- It will override the Tostring and return the _url.
- */
-
- return this._url;
- }
- }
- public enum OpenERPService
- {
- [ServiceUrl("/xmlrpc/object")]
- Object = 1,
- [ServiceUrl("/xmlrpc/db")]
- DB = 2,
- [ServiceUrl("/xmlrpc/common")]
- Common = 3
- }
- public class OpenERPConnect
- {
- int uid;
- string url;
- string dbname;
- string login;
- string pwd;
- bool chkpwd;
- string password;
- public string URL
- {
- /*
- It will get and set the value of the url.
-
- :return : String
- */
-
- get
- {
- return url;
- }
- set
- {
- url = value;
- }
- }
- public string DBName
- {
- /*
- It will get and set the value of the Database Name.
-
- :return : String
- */
-
- get
- {
- return dbname;
- }
- set
- {
- dbname = value;
- }
- }
- public string UserId
- {
- /*
- It will get and set the value of the UserId.
-
- :return : String
- */
-
- get
- {
- return login;
- }
- set
- {
- login = value;
- }
- }
- public string pswrd
- {
- /*
- It will get and set the value of the Password.
-
- :return : String
- */
-
- get
- {
- return password;
- }
- set
- {
- password = value;
- }
- }
-
- public bool rempwd
- {
- /*
- It will get and set the value of the Remember Password.
-
- :return : True or False
- */
-
- get
- {
- return chkpwd;
- }
- set
- {
- chkpwd = value;
- }
- }
-
- public string version;
- XMLRPCClient rpcclient;
-
- public void Open(Enum service)
- {
- /*
- It opens the connetion by the url and service url.
- :param service : enum service.
- */
-
- string url = null;
- Type type = service.GetType();
-
- ServiceUrl[] _urls =
- type.GetField(service.ToString()).GetCustomAttributes(typeof(ServiceUrl),
- false) as ServiceUrl[];
- if (_urls.Length > 0)
- {
- url = _urls[0].Url;
- }
-
- this.Open(url);
-
-
- }
-
- void Open(string service_url)
- {
- /*
- It opens rpcclient by service url.
- :param service_url : service url
- */
-
- this.rpcclient = new XMLRPCClient(this.url + service_url);
-
- }
- void Close()
- {
- /*
- It closes rpcclient.
- */
-
- this.rpcclient = null;
-
- }
- public OpenERPConnect()
- {
- }
- public OpenERPConnect(string url)
- {
- /*
- It will contain the url wit the server and port.
- :param url : url with the server and port.
- */
-
- this.url = url;
- }
- public OpenERPConnect(string url, string dbname, string login, string pwd)
- {
- /*
- It will do the connection with OpenERP server.
- :param url : url with the server and port.
- :param dbname : the list of database.
- :param login : user name.
- :param pwd : password.
- */
-
- this.url = url;
- this.dbname = dbname;
- this.login = login;
- this.pwd = pwd;
- this.version = ServerVersion();
- }
- public Boolean isLoggedIn
- {
- /*
- It will check whether successfully login to OpenERP is done or not.
-
- :return : True or False.
- */
-
- get
- {
- if (this.uid > 0) { return true; }
- return false;
- }
- }
-
- public int Login(string dbname, string userid, string pwd)
- {
- /*
- It will check whether the entered dbname, userid and password are correct or not
- and on that basis it will allow the user for connecting to OpenERP.
- :param dbname : list of database
- :param userid : userid
- :param pwd : password of the user
-
- :return : Integer
- */
-
- this.Open(OpenERPClient.OpenERPService.Common);
- object isLogin = this.rpcclient.Login(dbname, userid, pwd);
- this.uid = 0;
- if (Convert.ToBoolean(isLogin))
- {
- this.uid = Convert.ToInt32(isLogin);
- }
- this.pwd = pwd;
- if (this.uid <= 0)
- {
- MessageBox.Show("Authentication Error!\nBad username and password.", Form.ActiveForm.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
- }
- this.Close();
- return this.uid;
-
- }
- XmlRpcStruct ConvertAs(Hashtable value)
- {
- /*
- It will convert the Hashtable into XmlRpcStruct and vise-versa.
-
- :param value : Hasheable value.
-
- :retutn : Hashtable values and vise versa the XmlRpcStruct value.
- */
-
- XmlRpcStruct new_value;
- new_value = new XmlRpcStruct();
- foreach (string key in value.Keys)
- {
- object res;
- if (value[key] == null)
- {
- res = "";
- }
- if (value[key].GetType() == typeof(Hashtable))
- {
- res = this.ConvertAs((Hashtable)value[key]);
- }
- else
- {
- res = value[key];
- }
- new_value.Add(key, res);
- }
- return new_value;
- }
- object[] ConvertArgs(object[] args)
- {
- /*
- It will convert the arguments which are of type Hashtable into new arguments.
-
- :param args : Objet value of arguments
-
- :return : Object value of arguments.
- */
-
- for (int i = 0; i < args.Length; i++)
- {
- object arg = args[i];
- XmlRpcStruct new_arg;
- if (arg.GetType() == typeof(Hashtable))
- {
- new_arg = this.ConvertAs((Hashtable)arg);
- args[i] = new_arg;
- }
- }
- return args;
- }
- public object Execute(string model, string method, params object[] args)
- {
- /*
- It executes the model name, the method name and also the list of arrays arguments.
- :param model : model name.
- :param method : method name.
- :params args : list of arrays of arguments.
-
- :return : Object
- */
-
- args = this.ConvertArgs(args);
- this.Open(OpenERPClient.OpenERPService.Object);
-
- object res = this.rpcclient.Execute(this.dbname, this.uid, this.pwd, model, method, args);
- this.Close();
- return res;
- }
- public object[] DBList()
- {
- /*
- It will return the list of the database which will be created.
-
- :return : Database List
- */
-
- this.Open(OpenERPClient.OpenERPService.DB);
- object[] res = this.rpcclient.DBList();
- this.Close();
- return res;
- }
- public string ServerVersion()
- {
- /*
- It will give the version of the server which the user is using.
-
- :return : String
- */
-
- this.Open(OpenERPClient.OpenERPService.DB);
- string version = this.rpcclient.ServerVersion();
- this.Close();
- return version;
- }
-
-
- }
-
-}
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPClient/Properties/AssemblyInfo.cs b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPClient/Properties/AssemblyInfo.cs
deleted file mode 100644
index def21a9bf91..00000000000
--- a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPClient/Properties/AssemblyInfo.cs
+++ /dev/null
@@ -1,36 +0,0 @@
-using System.Reflection;
-using System.Runtime.CompilerServices;
-using System.Runtime.InteropServices;
-
-// General Information about an assembly is controlled through the following
-// set of attributes. Change these attribute values to modify the information
-// associated with an assembly.
-[assembly: AssemblyTitle("OpenERPClient")]
-[assembly: AssemblyDescription("")]
-[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("OpenERPClient")]
-[assembly: AssemblyCopyright("Copyright © 2011")]
-[assembly: AssemblyTrademark("")]
-[assembly: AssemblyCulture("")]
-
-// Setting ComVisible to false makes the types in this assembly not visible
-// to COM components. If you need to access a type in this assembly from
-// COM, set the ComVisible attribute to true on that type.
-[assembly: ComVisible(false)]
-
-// The following GUID is for the ID of the typelib if this project is exposed to COM
-[assembly: Guid("0b69b9a4-1bfc-45d5-9788-983fbf57a505")]
-
-// Version information for an assembly consists of the following four values:
-//
-// Major Version
-// Minor Version
-// Build Number
-// Revision
-//
-// You can specify all the values or you can default the Build and Revision Numbers
-// by using the '*' as shown below:
-// [assembly: AssemblyVersion("1.0.*")]
-[assembly: AssemblyVersion("1.0.0.0")]
-[assembly: AssemblyFileVersion("1.0.0.0")]
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPClient/Record.cs b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPClient/Record.cs
deleted file mode 100644
index 4069b43f74c..00000000000
--- a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPClient/Record.cs
+++ /dev/null
@@ -1,69 +0,0 @@
-/*
- OpenERP, Open Source Business Applications
- Copyright (c) 2011 OpenERP S.A.
-
- 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 .
-*/
-
-
-using System.Collections;
-
-namespace OpenERPClient
-{
- public class Record
- {
- public long id;
- public string name;
- public Model model;
- public Hashtable columns;
- public Record(long id, string name, Model model)
- {
- /*
- It gives the record of id, name and model.
- :param id : record id.
- :param name : record name.
- :param model : model name.
- */
-
- this.id = id;
- this.name = name;
- this.model = model;
- }
- public Record(Hashtable columns, Model model)
- {
- /*
- It gives the records in hashtable columns and also model name.
- :param columns : hashtable column values.
- :param model : model name.
- */
-
- this.id = long.Parse(columns["id"].ToString());
- if (columns.ContainsKey("name"))
- {
- this.name = columns["name"].ToString();
- }
- this.model = model;
- this.columns = columns;
- }
- public override string ToString()
- {
- /*
- It will override the Tostring.
- */
-
- if (this.name != null) return this.name;
- return this.id.ToString();
- }
- }
-}
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPClient/XMLRPCClient.cs b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPClient/XMLRPCClient.cs
deleted file mode 100644
index 23768b02b4f..00000000000
--- a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPClient/XMLRPCClient.cs
+++ /dev/null
@@ -1,379 +0,0 @@
-/*
- OpenERP, Open Source Business Applications
- Copyright (c) 2011 OpenERP S.A.
-
- 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 .
-*/
-
-
-using System;
-using System.Text;
-using CookComputing.XmlRpc;
-
-namespace OpenERPClient
-{
- public interface IOpenERPCommon : IXmlRpcProxy
- {
- [XmlRpcMethod("login")]
- object Login(string dbname, string username, string pwd);
-
- }
- public interface IOpenERPObject : IXmlRpcProxy
- {
-
- [XmlRpcMethod("execute")]
- Object Execute(string dbName, long userId, string pwd, string model, string method, params Object[] args);
-
-
-
- }
- public interface IOpenERPDB : IXmlRpcProxy
- {
-
- [XmlRpcMethod("list")]
- Object[] DBList();
-
- [XmlRpcMethod("server_version")]
- string ServerVersion();
-
- }
- public interface Ixmlrpcconnect : IOpenERPCommon, IOpenERPDB, IOpenERPObject
- {
- }
- public class XMLRPCClient : Ixmlrpcconnect
- {
- Ixmlrpcconnect rpcclient = (Ixmlrpcconnect)XmlRpcProxyGen.Create(typeof(Ixmlrpcconnect));
- public XMLRPCClient(string ServiceUrl)
- {
- rpcclient.Url = ServiceUrl;
- }
-
- #region Ixmlrpcconnect Members
-
- public object Login(string dbname, string username, string pwd)
- {
- return rpcclient.Login(dbname, username, pwd);
- }
-
- public object Execute(string dbName, long userId, string pwd, string model, string method, params object[] args)
- {
- return rpcclient.Execute(dbName, userId, pwd, model, method, args);
- }
-
- public object[] DBList()
- {
- return rpcclient.DBList();
- }
-
- public string ServerVersion()
- {
- return rpcclient.ServerVersion();
- }
- #endregion
-
-
- #region IXmlRpcProxy Members
-
- public bool AllowAutoRedirect
- {
- get
- {
- throw new NotImplementedException();
- }
- set
- {
- throw new NotImplementedException();
- }
- }
-
- public System.Security.Cryptography.X509Certificates.X509CertificateCollection ClientCertificates
- {
- get { throw new NotImplementedException(); }
- }
-
- public string ConnectionGroupName
- {
- get
- {
- throw new NotImplementedException();
- }
- set
- {
- throw new NotImplementedException();
- }
- }
-
- public System.Net.CookieContainer CookieContainer
- {
- get { throw new NotImplementedException(); }
- }
-
- public System.Net.ICredentials Credentials
- {
- get
- {
- throw new NotImplementedException();
- }
- set
- {
- throw new NotImplementedException();
- }
- }
-
- public bool EnableCompression
- {
- get
- {
- throw new NotImplementedException();
- }
- set
- {
- throw new NotImplementedException();
- }
- }
-
- public bool Expect100Continue
- {
- get
- {
- throw new NotImplementedException();
- }
- set
- {
- throw new NotImplementedException();
- }
- }
-
- public System.Net.WebHeaderCollection Headers
- {
- get { throw new NotImplementedException(); }
- }
-
- public Guid Id
- {
- get { throw new NotImplementedException(); }
- }
-
- public int Indentation
- {
- get
- {
- throw new NotImplementedException();
- }
- set
- {
- throw new NotImplementedException();
- }
- }
-
- public bool KeepAlive
- {
- get
- {
- throw new NotImplementedException();
- }
- set
- {
- throw new NotImplementedException();
- }
- }
-
- public XmlRpcNonStandard NonStandard
- {
- get
- {
- throw new NotImplementedException();
- }
- set
- {
- throw new NotImplementedException();
- }
- }
-
- public bool PreAuthenticate
- {
- get
- {
- throw new NotImplementedException();
- }
- set
- {
- throw new NotImplementedException();
- }
- }
-
- public Version ProtocolVersion
- {
- get
- {
- throw new NotImplementedException();
- }
- set
- {
- throw new NotImplementedException();
- }
- }
-
- public System.Net.IWebProxy Proxy
- {
- get
- {
- throw new NotImplementedException();
- }
- set
- {
- throw new NotImplementedException();
- }
- }
-
- public System.Net.CookieCollection ResponseCookies
- {
- get { throw new NotImplementedException(); }
- }
-
- public System.Net.WebHeaderCollection ResponseHeaders
- {
- get { throw new NotImplementedException(); }
- }
-
- public int Timeout
- {
- get
- {
- throw new NotImplementedException();
- }
- set
- {
- throw new NotImplementedException();
- }
- }
-
- public string Url
- {
- get
- {
- throw new NotImplementedException();
- }
- set
- {
- throw new NotImplementedException();
- }
- }
-
- public bool UseEmptyParamsTag
- {
- get
- {
- throw new NotImplementedException();
- }
- set
- {
- throw new NotImplementedException();
- }
- }
-
- public bool UseIndentation
- {
- get
- {
- throw new NotImplementedException();
- }
- set
- {
- throw new NotImplementedException();
- }
- }
-
- public bool UseIntTag
- {
- get
- {
- throw new NotImplementedException();
- }
- set
- {
- throw new NotImplementedException();
- }
- }
-
- public bool UseStringTag
- {
- get
- {
- throw new NotImplementedException();
- }
- set
- {
- throw new NotImplementedException();
- }
- }
-
- public string UserAgent
- {
- get
- {
- throw new NotImplementedException();
- }
- set
- {
- throw new NotImplementedException();
- }
- }
-
- public Encoding XmlEncoding
- {
- get
- {
- throw new NotImplementedException();
- }
- set
- {
- throw new NotImplementedException();
- }
- }
-
- public string XmlRpcMethod
- {
- get
- {
- throw new NotImplementedException();
- }
- set
- {
- throw new NotImplementedException();
- }
- }
-
- public string[] SystemListMethods()
- {
- throw new NotImplementedException();
- }
-
- public object[] SystemMethodSignature(string MethodName)
- {
- throw new NotImplementedException();
- }
-
- public string SystemMethodHelp(string MethodName)
- {
- throw new NotImplementedException();
- }
-
- public event XmlRpcRequestEventHandler RequestEvent;
-
- public event XmlRpcResponseEventHandler ResponseEvent;
-
- #endregion
- }
-}
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin.sln b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin.sln
deleted file mode 100644
index ad53769e5b4..00000000000
--- a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin.sln
+++ /dev/null
@@ -1,30 +0,0 @@
-
-Microsoft Visual Studio Solution File, Format Version 11.00
-# Visual Studio 2010
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OpenERPOutlookPlugin", "OpenERPOutlookPlugin\OpenERPOutlookPlugin.csproj", "{F4B2219B-F235-400F-81B4-92F15250BBA4}"
-EndProject
-Project("{54435603-DBB4-11D2-8724-00A0C9A8B90C}") = "OpenERPOutlookPluginSetup", "OpenERPOutlookPluginSetup\OpenERPOutlookPluginSetup.vdproj", "{96333293-0156-4998-9065-42721CEB0368}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OpenERPClient", "OpenERPClient\OpenERPClient.csproj", "{8E62B8DF-E3A2-4429-A820-FB8A31C2EB00}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Any CPU = Debug|Any CPU
- Release|Any CPU = Release|Any CPU
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {F4B2219B-F235-400F-81B4-92F15250BBA4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {F4B2219B-F235-400F-81B4-92F15250BBA4}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {F4B2219B-F235-400F-81B4-92F15250BBA4}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {F4B2219B-F235-400F-81B4-92F15250BBA4}.Release|Any CPU.Build.0 = Release|Any CPU
- {96333293-0156-4998-9065-42721CEB0368}.Debug|Any CPU.ActiveCfg = Debug
- {96333293-0156-4998-9065-42721CEB0368}.Release|Any CPU.ActiveCfg = Release
- {8E62B8DF-E3A2-4429-A820-FB8A31C2EB00}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {8E62B8DF-E3A2-4429-A820-FB8A31C2EB00}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {8E62B8DF-E3A2-4429-A820-FB8A31C2EB00}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {8E62B8DF-E3A2-4429-A820-FB8A31C2EB00}.Release|Any CPU.Build.0 = Release|Any CPU
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/AssemblyInfo.cs b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/AssemblyInfo.cs
deleted file mode 100644
index 6f5be64b3ae..00000000000
--- a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/AssemblyInfo.cs
+++ /dev/null
@@ -1,52 +0,0 @@
-
-using System.Reflection;
-using System.Runtime.CompilerServices;
-
-//
-// General Information about an assembly is controlled through the following
-// set of attributes. Change these attribute values to modify the information
-// associated with an assembly.
-//
-[assembly: AssemblyTitle("")]
-[assembly: AssemblyDescription("")]
-[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("")]
-[assembly: AssemblyCopyright("")]
-[assembly: AssemblyTrademark("")]
-[assembly: AssemblyCulture("")]
-
-//
-// Version information for an assembly consists of the following four values:
-//
-// Major Version
-// Minor Version
-// Revision
-// Build Number
-//
-// You can specify all the value or you can default the Revision and Build Numbers
-// by using the '*' as shown below:
-
-[assembly: AssemblyVersion("1.0.*")]
-
-//
-// In order to sign your assembly you must specify a key to use. Refer to the
-// Microsoft .NET Framework documentation for more information on assembly signing.
-//
-// Use the attributes below to control which key is used for signing.
-//
-// Notes:
-// (*) If no key is specified - the assembly cannot be signed.
-// (*) KeyName refers to a key that has been installed in the Crypto Service
-// Provider (CSP) on your machine.
-// (*) If the key file and a key name attributes are both specified, the
-// following processing occurs:
-// (1) If the KeyName can be found in the CSP - that key is used.
-// (2) If the KeyName does not exist and the KeyFile does exist, the key
-// in the file is installed into the CSP and used.
-// (*) Delay Signing is an advanced option - see the Microsoft .NET Framework
-// documentation for more information on this.
-//
-[assembly: AssemblyDelaySign(false)]
-[assembly: AssemblyKeyFile("")]
-[assembly: AssemblyKeyName("")]
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Cache.cs b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Cache.cs
deleted file mode 100644
index b4e4d25d3f4..00000000000
--- a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Cache.cs
+++ /dev/null
@@ -1,55 +0,0 @@
-/*
- OpenERP, Open Source Business Applications
- Copyright (c) 2011 OpenERP S.A.
-
- 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 .
-*/
-
-
-using System.Collections;
-using OpenERPClient;
-
-namespace OpenERPOutlookPlugin
-{
- static public class Cache
- {
- static private OpenERPOutlookPlugin _openerp;
- static public OpenERPOutlookPlugin OpenERPOutlookPlugin
- {
- get
- {
- return _openerp;
- }
- set
- {
-
- _openerp = value;
- }
- }
- static private Model[] document_models;
- static public Model[] DocumentModelList
- {
- get
- {
- return document_models;
- }
- set
- {
-
- document_models = value;
- }
- }
-
- }
-}
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/ConfigManager.cs b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/ConfigManager.cs
deleted file mode 100644
index 6ce61be577b..00000000000
--- a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/ConfigManager.cs
+++ /dev/null
@@ -1,109 +0,0 @@
-/*
- OpenERP, Open Source Business Applications
- Copyright (c) 2011 OpenERP S.A.
-
- 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 .
-*/
-
-
-using System;
-using System.Collections;
-using System.Drawing;
-using System.Drawing.Imaging;
-using System.IO;
-using System.Windows.Forms;
-using System.Text.RegularExpressions;
-using OpenERPClient;
-
-namespace OpenERPOutlookPlugin
-{
- public class ConfigManager
- {
- string openerp_config_file = "openerp_config.ini";
-
- public void SaveConfigurationSetting()
- {
- string filepath = Tools.GetAppFolderPath();
- OpenERPOutlookPlugin openerp_outlook = Cache.OpenERPOutlookPlugin;
- OpenERPConnect openerp_connect = openerp_outlook.Connection;
- filepath = Path.Combine(filepath, openerp_config_file);
- string[] datas = { "url=" + openerp_connect.URL, "userid=" + openerp_connect.UserId, "dbname=" + openerp_connect.DBName,"rempwd="+openerp_connect.rempwd,"pswrd=" + openerp_connect.pswrd };
- StreamWriter userfile = new StreamWriter(filepath, false);
-
- foreach (string data in datas)
- {
- userfile.WriteLine(data);
- }
- userfile.Close();
-
- }
- public void LoadConfigurationSetting()
- {
-
- string filePath = Tools.GetAppFolderPath();
- filePath = Path.Combine(filePath, this.openerp_config_file);
- OpenERPConnect openerp_connect=null;
- OpenERPOutlookPlugin openerp_outlook=null;
- openerp_outlook = Cache.OpenERPOutlookPlugin;
- if (openerp_outlook == null)
- {
-
- openerp_outlook = new OpenERPOutlookPlugin(openerp_connect);
- }
- openerp_connect = openerp_outlook.Connection;
- if (openerp_connect == null)
- {
- openerp_connect = new OpenERPConnect();
- }
-
- if (File.Exists(filePath))
- {
-
- string line;
-
- using (StreamReader file = new StreamReader(filePath))
- {
- while ((line = file.ReadLine()) != null)
- {
- char[] delimiters = new char[] { '=' };
- string[] parts = line.Split(delimiters, 2);
-
- for (int i = 0; i < parts.Length; i += 2)
- {
- if (parts[i] == "url")
- openerp_connect.URL = parts[i + 1].Trim();
- else if (parts[i] == "userid")
- openerp_connect.UserId = parts[i + 1].Trim();
- else if (parts[i] == "dbname")
- openerp_connect.DBName = parts[i + 1].Trim();
- else if (parts[i] == "pswrd")
- openerp_connect.pswrd = parts[i + 1].Trim();
- else if (parts[i] == "rempwd")
- {
- openerp_connect.rempwd = false;
- if (parts[i + 1].Trim().ToLower() == "true")
- openerp_connect.rempwd = true;
- }
-
- }
- }
- file.Close();
- }
- }
- openerp_outlook.Connection = openerp_connect;
- Cache.OpenERPOutlookPlugin = openerp_outlook;
- }
-
- }
-}
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Connect.cs b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Connect.cs
deleted file mode 100644
index dae4db88aa2..00000000000
--- a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Connect.cs
+++ /dev/null
@@ -1,355 +0,0 @@
-/*
- OpenERP, Open Source Business Applications
- Copyright (c) 2011 OpenERP S.A.
-
- 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 .
-*/
-
-
-
-namespace OpenERPOutlookPlugin
-{
- using System;
- using System.Reflection;
- using System.Runtime.InteropServices;
- using System.Windows.Forms;
- using office = Microsoft.Office.Core;
- using outlook = Microsoft.Office.Interop.Outlook;
- using OpenERPClient;
-
-
-
-
- #region Read me for Add-in installation and setup information.
- // When run, the Add-in wizard prepared the registry for the Add-in.
- // At a later time, if the Add-in becomes unavailable for reasons such as:
- // 1) You moved this project to a computer other than which is was originally created on.
- // 2) You chose 'Yes' when presented with a message asking if you wish to remove the Add-in.
- // 3) Registry corruption.
- // you will need to re-register the Add-in by building the OpenERPOutlookPluginSetup project,
- // right click the project in the Solution Explorer, then choose install.
- #endregion
-
- ///
- /// The object for implementing an Add-in.
- ///
- ///
-
- [GuidAttribute("C86B5760-1254-4F40-BD25-2094A2A678C4"), ProgId("OpenERPOutlookPlugin.Connect")]
- public class Connect : Object, Extensibility.IDTExtensibility2
- {
- ///
- /// Implements the constructor for the Add-in object.
- /// Place your initialization code within this method.
- ///
-
- public Connect()
- {
-
- }
-
- public int cnt_mail = 0;
-
- ///
- /// Implements the OnConnection method of the IDTExtensibility2 interface.
- /// Receives notification that the Add-in is being loaded.
- ///
- ///
- /// Root object of the host application.
- ///
- ///
- /// Describes how the Add-in is being loaded.
- ///
- ///
- /// Object representing this Add-in.
- ///
- ///
- public void OnConnection(object application, Extensibility.ext_ConnectMode connectMode, object addInInst, ref System.Array custom)
- {
- applicationObject = application;
- addInInstance = addInInst;
-
- if (connectMode != Extensibility.ext_ConnectMode.ext_cm_Startup)
- {
- OnStartupComplete(ref custom);
-
- }
- }
-
- ///
- /// Implements the OnDisconnection method of the IDTExtensibility2 interface.
- /// Receives notification that the Add-in is being unloaded.
- ///
- ///
- /// Describes how the Add-in is being unloaded.
- ///
- ///
- /// Array of parameters that are host application specific.
- ///
- ///
- public void OnDisconnection(Extensibility.ext_DisconnectMode disconnectMode, ref System.Array custom)
- {
- if (disconnectMode != Extensibility.ext_DisconnectMode.ext_dm_HostShutdown)
- {
- OnBeginShutdown(ref custom);
- }
- applicationObject = null;
- }
-
- ///
- /// Implements the OnAddInsUpdate method of the IDTExtensibility2 interface.
- /// Receives notification that the collection of Add-ins has changed.
- ///
- ///
- /// Array of parameters that are host application specific.
- ///
- ///
- public void OnAddInsUpdate(ref System.Array custom)
- {
- }
-
- ///
- /// Implements the OnStartupComplete method of the IDTExtensibility2 interface.
- /// Receives notification that the host application has completed loading.
- ///
- ///
- /// Array of parameters that are host application specific.
- ///
- ///
- ///
- private office.CommandBarButton btn_open_partner;
- private office.CommandBarButton btn_open_document;
- private office.CommandBarButton btn_open_configuration_form;
- private office.CommandBars oCommandBars;
- private office.CommandBar menuBar;
- private office.CommandBarPopup newMenuBar;
-
- public int countMail()
- {
- /*
-
- * Gives the number of selected mail.
- * returns: Number of selected mail.
-
- */
- cnt_mail = 0;
- Microsoft.Office.Interop.Outlook.Application app = null;
-
- app = new Microsoft.Office.Interop.Outlook.Application();
- foreach (var selection in app.ActiveExplorer().Selection)
- {
- cnt_mail = app.ActiveExplorer().Selection.Count;
- }
-
- return cnt_mail;
- }
-
- public void OnStartupComplete(ref System.Array custom)
- {
- /*
-
- * When outlook is opened it loads a Menu if Outlook plugin is installed.
- * OpenERP - > Push, Partner ,Documents, Configuration
-
- */
- Microsoft.Office.Interop.Outlook.Application app = null;
- try
- {
- app = new Microsoft.Office.Interop.Outlook.Application();
- object omissing = System.Reflection.Missing.Value;
- menuBar = app.ActiveExplorer().CommandBars.ActiveMenuBar;
- ConfigManager config = new ConfigManager();
- config.LoadConfigurationSetting();
- OpenERPOutlookPlugin openerp_outlook = Cache.OpenERPOutlookPlugin;
- OpenERPConnect openerp_connect = openerp_outlook.Connection;
- try
- {
- if (openerp_connect.URL != null && openerp_connect.DBName != null && openerp_connect.UserId != null && openerp_connect.pswrd != "")
- {
- string decodpwd = Tools.DecryptB64Pwd(openerp_connect.pswrd);
- openerp_connect.Login(openerp_connect.DBName, openerp_connect.UserId, decodpwd);
- }
- }
- catch(Exception )
- {
- MessageBox.Show("Unable to connect remote Server ' " + openerp_connect.URL + " '.", "OpenERP Connection",MessageBoxButtons.OK,MessageBoxIcon.Exclamation);
- }
- newMenuBar = (office.CommandBarPopup)menuBar.Controls.Add(office.MsoControlType.msoControlPopup, omissing, omissing, omissing, true);
- if (newMenuBar != null)
- {
- newMenuBar.Caption = "OpenERP";
- newMenuBar.Tag = "My";
-
- btn_open_partner = (office.CommandBarButton)newMenuBar.Controls.Add(office.MsoControlType.msoControlButton, omissing, omissing, 1, true);
- btn_open_partner.Style = office.MsoButtonStyle.msoButtonIconAndCaption;
- btn_open_partner.Caption = "Contact";
- //Face ID will use to show the ICON in the left side of the menu.
- btn_open_partner.FaceId = 3710;
- newMenuBar.Visible = true;
- btn_open_partner.Click += new Microsoft.Office.Core._CommandBarButtonEvents_ClickEventHandler(this.btn_open_partner_Click);
-
- btn_open_document = (office.CommandBarButton)newMenuBar.Controls.Add(office.MsoControlType.msoControlButton, omissing, omissing, 2, true);
- btn_open_document.Style = office.MsoButtonStyle.msoButtonIconAndCaption;
- btn_open_document.Caption = "Documents";
- //Face ID will use to show the ICON in the left side of the menu.
- btn_open_document.FaceId = 258;
- newMenuBar.Visible = true;
- btn_open_document.Click += new Microsoft.Office.Core._CommandBarButtonEvents_ClickEventHandler(this.btn_open_document_Click);
-
- btn_open_configuration_form = (office.CommandBarButton)newMenuBar.Controls.Add(office.MsoControlType.msoControlButton, omissing, omissing, 3, true);
- btn_open_configuration_form.Style = office.MsoButtonStyle.msoButtonIconAndCaption;
- btn_open_configuration_form.Caption = "Configuration";
- //Face ID will use to show the ICON in the left side of the menu.
- btn_open_configuration_form.FaceId = 5644;
- newMenuBar.Visible = true;
- btn_open_configuration_form.Click += new Microsoft.Office.Core._CommandBarButtonEvents_ClickEventHandler(this.btn_open_configuration_form_Click);
-
- }
-
- }
- catch (Exception)
- {
- object oActiveExplorer;
- oActiveExplorer = applicationObject.GetType().InvokeMember("ActiveExplorer", BindingFlags.GetProperty, null, applicationObject, null);
- oCommandBars = (office.CommandBars)oActiveExplorer.GetType().InvokeMember("CommandBars", BindingFlags.GetProperty, null, oActiveExplorer, null);
- }
-
-
- }
-
- void btn_open_configuration_form_Click(Microsoft.Office.Core.CommandBarButton Ctrl, ref bool CancelDefault)
- {
- frm_openerp_configuration frm_config = new frm_openerp_configuration();
- frm_config.Show();
-
- }
-
-
- public static bool isLoggedIn()
- {
- /*
-
- * This will check that it is connecting with server or not.
- * If wrong server name or port is given then it will throw the message.
- * returns true If conneted with server, otherwise False.
-
- */
- if (Cache.OpenERPOutlookPlugin == null || Cache.OpenERPOutlookPlugin.isLoggedIn == false)
- {
- throw new Exception("OpenERP Server is not connected!\nPlease connect OpenERP Server from Configuration Menu.");
-
- }
- return true;
- }
-
- public static void handleException(Exception e)
- {
- string Title;
- if (Form.ActiveForm != null)
- {
- Title = Form.ActiveForm.Text;
- }
- else
- {
- Title = "OpenERP Addin";
- }
- MessageBox.Show(e.Message, Title, MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
- }
- public static void displayMessage(string message)
- {
- string Title;
- if (Form.ActiveForm != null)
- {
- Title = Form.ActiveForm.Text;
- }
- else
- {
- Title = "OpenERP Addin";
- }
- MessageBox.Show(message, Title, MessageBoxButtons.OK, MessageBoxIcon.Information);
- }
- public void CheckMailCount()
- {
- if (countMail() == 0)
- {
- throw new Exception("No email selected.\nPlease select one email.");
- }
- if (countMail() > 1)
- {
- throw new Exception("Multiple selction is not allowed.\nPlease select only one email.");
- }
-
- }
-
- void btn_open_partner_Click(Microsoft.Office.Core.CommandBarButton Ctrl, ref bool CancelDefault)
- {
- try
- {
- Connect.isLoggedIn();
- this.CheckMailCount();
- if (countMail() == 1)
- {
-
- foreach (outlook.MailItem mailitem in Tools.MailItems())
- {
-
-
- Object[] contact = Cache.OpenERPOutlookPlugin.RedirectPartnerPage(mailitem);
- if ((int)contact[1] > 0)
- {
- Cache.OpenERPOutlookPlugin.RedirectWeb(contact[2]);
- }
- else
- {
- frm_contact contact_form = new frm_contact(mailitem.SenderName, mailitem.SenderEmailAddress);
- contact_form.Show();
- }
-
- }
- }
-
- }
- catch (Exception e)
- {
- Connect.handleException(e);
- }
-
- }
-
- void btn_open_document_Click(Microsoft.Office.Core.CommandBarButton Ctrl, ref bool CancelDefault)
- {
- try
- {
- Connect.isLoggedIn();
- this.CheckMailCount();
- if (countMail() == 1)
- {
- frm_choose_document_opt frm_doc = new frm_choose_document_opt();
- }
- }
- catch (Exception e)
- {
- Connect.handleException(e);
- }
-
- }
-
-
- public void OnBeginShutdown(ref System.Array custom)
- {
- }
- private object applicationObject;
- private object addInInstance;
- }
-}
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/OpenERPOutlookPlugin.cs b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/OpenERPOutlookPlugin.cs
deleted file mode 100644
index e1d45318ee4..00000000000
--- a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/OpenERPOutlookPlugin.cs
+++ /dev/null
@@ -1,238 +0,0 @@
-/*
-
- OpenERP, Open Source Business Applications
- Copyright (c) 2011 OpenERP S.A.
-
- 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 .
-*/
-
-
-using System;
-using System.Collections;
-using System.Linq;
-using OpenERPClient;
-using outlook = Microsoft.Office.Interop.Outlook;
-using System.Windows.Forms;
-namespace OpenERPOutlookPlugin
-{
-
- public class OpenERPOutlookPlugin : Model
- {
- public Boolean isLoggedIn
- {
- /*
-
- * This will check that user is logged in or not and gets the value
- * returns : True if loggedIn, False otherwise.
-
- */
- get
- {
- if (this.Connection != null) { return this.Connection.isLoggedIn; }
- return false;
- }
- }
-
- public OpenERPOutlookPlugin(OpenERPConnect connection)
- {
- this.Connection = connection;
- //this.set_server_method();
- }
-
- public Record[] SearchRecord(string name,string model)
- {
- /*
- * Gives name and model for search record.
- */
- ArrayList object_list = new ArrayList();
- Model parent_model;
- parent_model = new Model(model);
- ArrayList args = new ArrayList();
- args.Add(parent_model.model);
- if (name != null)
- {
- args.Add(name);
- }
- else
- {
- args.Add("");
- }
- object[] objects = (object[])this.openerp_connect.Execute("plugin.handler", "list_document_get", args.ToArray());
- foreach (object obj in objects)
- {
- Hashtable document = new Hashtable();
- object[] names = (object[])obj;
- document.Add("id", names[0].ToString());
- document.Add("name", names[1].ToString());
- object_list.Add(new Record(document,parent_model));
- }
- return (Record[])object_list.ToArray(typeof(Record));
- }
-
- public string Name_get(outlook.MailItem mail)
- {
-
- string email = Tools.GetHeader(mail);
- object doc = this.openerp_connect.Execute("plugin.handler", "document_get", email);
- object[] name = (object[])doc;
- return name[3].ToString();
-
- }
-
- public void RedirectWeb(object web_url)
- {
- /*
- * Will open the url into the web browser.
- */
- System.Diagnostics.Process.Start(web_url.ToString());
- }
-
-
- public object[] RedirectPartnerPage(outlook.MailItem mail)
- {
- /*
-
- * Will Redirect to the web-browser and open partner.
- * If it will not found partner in res.partner (in contact) then
- it will open the contact form to create a partner.
- :Param outlook.MailItem mailItem : Outlook Mail item
- */
- string email_id = mail.SenderEmailAddress.ToString();
- Object[] contact = (Object[])this.openerp_connect.Execute("plugin.handler", "partner_get", email_id);
- return contact;
-
- }
-
- public void Open_Document(outlook.MailItem mail)
- {
- /*
- * To open document attached in a url.returns the model_id and res_id of the document
- :Param outlook.MailItem mail: Outlook mails.
- */
-
- string email = Tools.GetHeader(mail);
- object doc = this.openerp_connect.Execute("plugin.handler", "document_get", email);
- object[] url = (object[])doc;
- this.RedirectWeb(url[2].ToString());
- }
-
- public Boolean PushMail(outlook.MailItem mail, string model, int thread_id)
- {
- /*
-
- * This will push the mail as per the selected items from the list.
- :Param outlook.MailItem mail: selected mail from the outlook.
- :Param string model : Model name to push.
- :Param int thread_id : Thread id of the mail.
- * If mail pushed successfully then it returns true.
- * return False if mail Already Exist.
-
- */
- OpenERPOutlookPlugin openerp_outlook = Cache.OpenERPOutlookPlugin;
- OpenERPConnect openerp_connect = openerp_outlook.Connection;
- ArrayList args = new ArrayList();
- Hashtable vals = new Hashtable();
- string email;
- if (Tools.GetHeader(mail)!= null)
- {
- email = Tools.GetHeader(mail); //TODO: Outlook.MailItem Should be Converted into MIME Message
- }
- else
- {
- email = "";
- }
-
- args.Add(model);
- args.Add(email.ToString());
- args.Add(thread_id);
- Hashtable attachments = Tools.GetAttachments(mail);
- args.Add(mail.Body);
- args.Add(mail.HTMLBody);
- args.Add(attachments);
- object push_mail = this.Connection.Execute("plugin.handler", "push_message_outlook", args.ToArray());
- object[] push = (object[])push_mail;
- if (Convert.ToInt32(push[1]) == 0)
- {
- MessageBox.Show(push[3].ToString());
-
- }
- else
- {
- this.RedirectWeb(push[2].ToString());
- }
- return true;
- }
- public long CreatePartnerRecord(string name)
- {
- /*
-
- * Creates a partner record in res.partner as per the name given in the plugin form.
- :Param String name: Name given to create a partner in the database.
- * Returns a Long value : Partner id.
-
- */
- Record[] partenr_list = this.SearchRecord(name,"res.partner");
- int partner_id = 0;
- foreach (Record partner in partenr_list)
- {
- partner_id = Convert.ToInt16(partner.id);
- }
-
- return partner_id;
- }
- public void CreateContactRecord(int partner_id, string name, string email_id)
- {
- /*
-
- * Creates a Contact record in the res.partner as per the details given in the
- plugin form of openERP outlook Plugin.
- :Param string partner_id : Partner id for which it creates a contact
- :Param string name : Contact name
- :Param string email_id : Email address
-
- */
- Hashtable values = new Hashtable();
- values.Add("name", name);
- values.Add("email", email_id);
- ArrayList args = new ArrayList();
- args.Add(values);
- args.Add(partner_id);
- object[] contact = (object[])this.openerp_connect.Execute("plugin.handler", "contact_create", args.ToArray());
- this.RedirectWeb(contact[2].ToString());
-
- }
-
- public Model[] GetMailModels()
- {
- /*
-
- * function to get objects to display in combo box
- * returns the Array list of models.
-
- */
- ArrayList obj_list = new ArrayList();
- object mail_models = this.Connection.Execute("plugin.handler", "document_type");
- foreach (object model in (object[])mail_models)
- {
- Model open_model;
- string[] models = (string[])model;
- open_model = new Model(models[0], models[1]);
- open_model.Connection = this.Connection;
- obj_list.Add(open_model);
- }
- return (Model[])obj_list.ToArray(typeof(Model));
- }
- }
-
-}
\ No newline at end of file
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/OpenERPOutlookPlugin.csproj b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/OpenERPOutlookPlugin.csproj
deleted file mode 100644
index 6fdd26b35d0..00000000000
--- a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/OpenERPOutlookPlugin.csproj
+++ /dev/null
@@ -1,279 +0,0 @@
-
-
-
- Debug
- AnyCPU
- 9.0.21022
- 2.0
- {F4B2219B-F235-400F-81B4-92F15250BBA4}
- Library
-
-
- false
- OpenERPOutlookPlugin
- OpenERPOutlookPlugin
- v3.5
-
-
-
-
- 3.5
- publish\
- true
- Disk
- false
- Foreground
- 7
- Days
- false
- false
- true
- 0
- 1.0.0.%2a
- false
- false
- true
-
-
- true
- false
- .\bin\Debug\
- false
- DEBUG;TRACE
- 4
- false
- true
- AllRules.ruleset
- AnyCPU
-
-
- false
- true
- .\bin\Release\
- false
- TRACE
- 4
- false
- true
- AllRules.ruleset
-
-
-
- ..\CookComputing.XmlRpcV2.dll
-
-
-
- System.dll
- System
-
-
- 3.5
-
-
- System.Data.dll
- System.Data
-
-
-
- 3.5
-
-
-
-
- System.XML.dll
- System.XML
-
-
-
-
- Code
-
-
-
-
- Form
-
-
- frm_contact.cs
-
-
- Form
-
-
- frm_create_doc.cs
-
-
- Form
-
-
- frm_openerp_connection.cs
-
-
- Form
-
-
- frm_push_mail.cs
-
-
- Form
-
-
- frm_select_partner.cs
-
-
- Form
-
-
- frm_choose_document_opt.cs
-
-
-
- True
- True
- Resources.resx
-
-
-
- Code
-
-
- Form
-
-
- frm_openerp_configuration.cs
-
-
- True
- True
- Settings.settings
-
-
-
-
- frm_contact.cs
- Designer
-
-
- frm_create_doc.cs
- Designer
-
-
- frm_openerp_configuration.cs
- Designer
-
-
- frm_openerp_connection.cs
- Designer
-
-
- frm_push_mail.cs
- Designer
-
-
- frm_select_partner.cs
- Designer
-
-
- frm_choose_document_opt.cs
- Designer
-
-
- ResXFileCodeGenerator
- Resources.Designer.cs
- Designer
-
-
-
-
- SettingsSingleFileGenerator
- Settings.Designer.cs
-
-
-
-
- {2DF8D04C-5BFA-101B-BDE5-00AA0044DE52}
- 2
- 4
- 0
- primary
- False
-
-
- {00062FFF-0000-0000-C000-000000000046}
- 9
- 3
- 0
- primary
- False
-
-
- {00020430-0000-0000-C000-000000000046}
- 2
- 0
- 0
- primary
- False
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- False
- .NET Framework 3.5 SP1 Client Profile
- false
-
-
- False
- .NET Framework 3.5 SP1
- true
-
-
- False
- Windows Installer 3.1
- true
-
-
-
-
- {8E62B8DF-E3A2-4429-A820-FB8A31C2EB00}
- OpenERPClient
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/OpenERPOutlookPlugin.csproj.user b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/OpenERPOutlookPlugin.csproj.user
deleted file mode 100644
index be11fa35423..00000000000
--- a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/OpenERPOutlookPlugin.csproj.user
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
- C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\
- C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\devenv.exe
- Program
-
-
- C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\
- C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\devenv.exe
- Program
-
-
\ No newline at end of file
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Properties/Resources.Designer.cs b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Properties/Resources.Designer.cs
deleted file mode 100644
index 5135996facd..00000000000
--- a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Properties/Resources.Designer.cs
+++ /dev/null
@@ -1,119 +0,0 @@
-//------------------------------------------------------------------------------
-//
-// This code was generated by a tool.
-// Runtime Version:2.0.50727.1433
-//
-// Changes to this file may cause incorrect behavior and will be lost if
-// the code is regenerated.
-//
-//------------------------------------------------------------------------------
-
-namespace OpenERPOutlookPlugin.Properties {
- using System;
-
-
- ///
- /// A strongly-typed resource class, for looking up localized strings, etc.
- ///
- // This class was auto-generated by the StronglyTypedResourceBuilder
- // class via a tool like ResGen or Visual Studio.
- // To add or remove a member, edit your .ResX file then rerun ResGen
- // with the /str option, or rebuild your VS project.
- [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "2.0.0.0")]
- [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
- [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
- internal class Resources {
-
- private static global::System.Resources.ResourceManager resourceMan;
-
- private static global::System.Globalization.CultureInfo resourceCulture;
-
- [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
- internal Resources() {
- }
-
- ///
- /// Returns the cached ResourceManager instance used by this class.
- ///
- [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
- internal static global::System.Resources.ResourceManager ResourceManager {
- get {
- if (object.ReferenceEquals(resourceMan, null)) {
- global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("OpenERPOutlookPlugin.Properties.Resources", typeof(Resources).Assembly);
- resourceMan = temp;
- }
- return resourceMan;
- }
- }
-
- ///
- /// Overrides the current thread's CurrentUICulture property for all
- /// resource lookups using this strongly typed resource class.
- ///
- [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
- internal static global::System.Globalization.CultureInfo Culture {
- get {
- return resourceCulture;
- }
- set {
- resourceCulture = value;
- }
- }
-
- internal static System.Drawing.Bitmap _195737_152643643962_3595480_n {
- get {
- object obj = ResourceManager.GetObject("195737_152643643962_3595480_n", resourceCulture);
- return ((System.Drawing.Bitmap)(obj));
- }
- }
-
- internal static System.Drawing.Bitmap Archive {
- get {
- object obj = ResourceManager.GetObject("Archive", resourceCulture);
- return ((System.Drawing.Bitmap)(obj));
- }
- }
-
- internal static System.Drawing.Bitmap Create {
- get {
- object obj = ResourceManager.GetObject("Create", resourceCulture);
- return ((System.Drawing.Bitmap)(obj));
- }
- }
-
- internal static System.Drawing.Bitmap Error {
- get {
- object obj = ResourceManager.GetObject("Error", resourceCulture);
- return ((System.Drawing.Bitmap)(obj));
- }
- }
-
- internal static System.Drawing.Bitmap MoveDown {
- get {
- object obj = ResourceManager.GetObject("MoveDown", resourceCulture);
- return ((System.Drawing.Bitmap)(obj));
- }
- }
-
- internal static System.Drawing.Bitmap MoveLeft {
- get {
- object obj = ResourceManager.GetObject("MoveLeft", resourceCulture);
- return ((System.Drawing.Bitmap)(obj));
- }
- }
-
- internal static System.Drawing.Bitmap Search {
- get {
- object obj = ResourceManager.GetObject("Search", resourceCulture);
- return ((System.Drawing.Bitmap)(obj));
- }
- }
-
- internal static System.Drawing.Bitmap Success {
- get {
- object obj = ResourceManager.GetObject("Success", resourceCulture);
- return ((System.Drawing.Bitmap)(obj));
- }
- }
- }
-}
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Properties/Resources.resx b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Properties/Resources.resx
deleted file mode 100644
index c43e150f921..00000000000
--- a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Properties/Resources.resx
+++ /dev/null
@@ -1,145 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- text/microsoft-resx
-
-
- 2.0
-
-
- System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
-
- ..\Resources\MoveLeft.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
- ..\Resources\Archive.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
- ..\Resources\Create.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
- ..\Resources\Success.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
- ..\Resources\195737_152643643962_3595480_n.jpg;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
- ..\Resources\Error.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
- ..\Resources\Search.gif;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
- ..\Resources\MoveDown.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
-
\ No newline at end of file
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Properties/Settings.Designer.cs b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Properties/Settings.Designer.cs
deleted file mode 100644
index 125ba326671..00000000000
--- a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Properties/Settings.Designer.cs
+++ /dev/null
@@ -1,26 +0,0 @@
-//------------------------------------------------------------------------------
-//
-// This code was generated by a tool.
-// Runtime Version:2.0.50727.3053
-//
-// Changes to this file may cause incorrect behavior and will be lost if
-// the code is regenerated.
-//
-//------------------------------------------------------------------------------
-
-namespace OpenERPOutlookPlugin.Properties {
-
-
- [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
- [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "9.0.0.0")]
- internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
-
- private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
-
- public static Settings Default {
- get {
- return defaultInstance;
- }
- }
- }
-}
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Properties/Settings.settings b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Properties/Settings.settings
deleted file mode 100644
index 15034e76c4c..00000000000
--- a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Properties/Settings.settings
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
-
-
-
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/195737_152643643962_3595480_n.jpg b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/195737_152643643962_3595480_n.jpg
deleted file mode 100644
index 610defc9232..00000000000
Binary files a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/195737_152643643962_3595480_n.jpg and /dev/null differ
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Account.ico b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Account.ico
deleted file mode 100644
index acea3ab0169..00000000000
Binary files a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Account.ico and /dev/null differ
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Account.png b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Account.png
deleted file mode 100644
index b13f2b0f523..00000000000
Binary files a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Account.png and /dev/null differ
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Archive.png b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Archive.png
deleted file mode 100644
index 5aa6a958d37..00000000000
Binary files a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Archive.png and /dev/null differ
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Case.png b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Case.png
deleted file mode 100644
index 9b950b8ea9d..00000000000
Binary files a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Case.png and /dev/null differ
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Contact.png b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Contact.png
deleted file mode 100644
index 9bd6f9f6059..00000000000
Binary files a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Contact.png and /dev/null differ
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Create.png b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Create.png
deleted file mode 100644
index 1ab240c32cb..00000000000
Binary files a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Create.png and /dev/null differ
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Error.gif b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Error.gif
deleted file mode 100644
index 38c3523781b..00000000000
Binary files a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Error.gif and /dev/null differ
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Invoice.png b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Invoice.png
deleted file mode 100644
index 4551107ec3b..00000000000
Binary files a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Invoice.png and /dev/null differ
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Move.gif b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Move.gif
deleted file mode 100644
index 401bf861213..00000000000
Binary files a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Move.gif and /dev/null differ
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/MoveDown.png b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/MoveDown.png
deleted file mode 100644
index 3761ff1e747..00000000000
Binary files a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/MoveDown.png and /dev/null differ
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/MoveLeft.png b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/MoveLeft.png
deleted file mode 100644
index 031d7532673..00000000000
Binary files a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/MoveLeft.png and /dev/null differ
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/OpenERP_icon.ico b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/OpenERP_icon.ico
deleted file mode 100644
index 8f6dc9edabc..00000000000
Binary files a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/OpenERP_icon.ico and /dev/null differ
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Partner.png b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Partner.png
deleted file mode 100644
index c661339598e..00000000000
Binary files a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Partner.png and /dev/null differ
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Product.png b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Product.png
deleted file mode 100644
index 51451e422ae..00000000000
Binary files a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Product.png and /dev/null differ
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Project.png b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Project.png
deleted file mode 100644
index 0f8ea2af8f5..00000000000
Binary files a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Project.png and /dev/null differ
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Sale.png b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Sale.png
deleted file mode 100644
index 1b0b44f890e..00000000000
Binary files a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Sale.png and /dev/null differ
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Search.gif b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Search.gif
deleted file mode 100644
index b29c3cf1054..00000000000
Binary files a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Search.gif and /dev/null differ
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Success.gif b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Success.gif
deleted file mode 100644
index fb3bff729c5..00000000000
Binary files a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Success.gif and /dev/null differ
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Task.png b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Task.png
deleted file mode 100644
index 52056b1e713..00000000000
Binary files a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/Task.png and /dev/null differ
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/developped_by.png b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/developped_by.png
deleted file mode 100644
index e4004e3d178..00000000000
Binary files a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/developped_by.png and /dev/null differ
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/logo.png b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/logo.png
deleted file mode 100644
index d6dbd9d83d1..00000000000
Binary files a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/logo.png and /dev/null differ
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/openerp.png b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/openerp.png
deleted file mode 100644
index 326798df2ec..00000000000
Binary files a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/openerp.png and /dev/null differ
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/perform.gif b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/perform.gif
deleted file mode 100644
index 16cc3873858..00000000000
Binary files a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/perform.gif and /dev/null differ
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/settings.png b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/settings.png
deleted file mode 100644
index ad0298af667..00000000000
Binary files a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Resources/settings.png and /dev/null differ
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Tools.cs b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Tools.cs
deleted file mode 100644
index 5d102c73dd2..00000000000
--- a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/Tools.cs
+++ /dev/null
@@ -1,173 +0,0 @@
-/*
- OpenERP, Open Source Business Applications
- Copyright (c) 2011 OpenERP S.A.
-
- 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 .
-*/
-
-
-using System;
-using System.Collections;
-using System.Drawing;
-using System.IO;
-using outlook = Microsoft.Office.Interop.Outlook;
-
-
-namespace OpenERPOutlookPlugin
-{
- static public class Tools
- {
- static public outlook.MailItem[] MailItems()
- {
- Microsoft.Office.Interop.Outlook.Application app = null;
- app = new Microsoft.Office.Interop.Outlook.Application();
- ArrayList mailItems = new ArrayList();
- foreach (var selection in app.ActiveExplorer().Selection)
- {
- if (selection is outlook.MailItem)
- {
- mailItems.Add((outlook.MailItem)selection);
- }
- }
- return (outlook.MailItem[])mailItems.ToArray(typeof(outlook.MailItem));
- }
-
- static public string[] SplitURL(string url)
- {
- /*
-
- * Split the url in three parts protocal host and port number.
- :Param string url : url to split.
- * returnts the string array which contains the protocol, host name and port number.
-
- */
- string protocall = "";
- string host = "localhost";
- string port = "8069";
- if (url != "")
- {
- string[] server = url.Split("://".ToCharArray());
- protocall = server[0];
-
- host = server[3];
- port = "";
- if (server.Length > 4) port = server[4];
- }
- return new string[] { protocall, host, port };
-
- }
- static public string JoinURL(string host, string port, bool ssl)
- {
- /*
-
- * Join the url as per the host, port and protocols are given.
- :Param string host : host name
- :Param string port : port number
- :Param boolean ssl : protocol
- * reruns a string url combination of host, port and protocol.
-
- */
- string protocall = "http";
- if (ssl) protocall = "https";
- string url = protocall + "://" + host;
- if (port != "") url += ":" + port;
- return url;
- }
- static public Hashtable GetAttachments(outlook.MailItem mail)
- {
- /*
-
- * Gets the attachments of selected mail of outlook mail items.
- :Param outlook.MailItem mail : gives the selected mail item from the outlook.
- * returns the hashtable (dictionary) value of the attachemts.
- */
- System.IO.FileStream inFile;
- Hashtable attach = new Hashtable();
- string[] strattch = new string[4];
- foreach (outlook.Attachment attach1 in mail.Attachments)
- {
- string filename = Tools.GetAppFolderPath() + attach1.FileName;
- attach1.SaveAsFile(filename);
- inFile = new System.IO.FileStream(filename, System.IO.FileMode.Open, System.IO.FileAccess.Read);
- byte[] datas = new Byte[inFile.Length];
- long bytesRead = inFile.Read(datas, 0, (int)inFile.Length);
- inFile.Close();
- string fdata = System.Convert.ToBase64String(datas);
- attach.Add(attach1.FileName, fdata);
- strattch[0] = attach1.FileName;
- System.IO.File.Delete(filename);
- }
- return attach;
- }
- static public string GetAppFolderPath()
- {
- /*
-
- * Gets the path of Applicaion folder.
- * returns String value of file path.
-
- */
- string filePath = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData);
- filePath = System.IO.Path.Combine(filePath, "OpenERPOutlook");
- if (!Directory.Exists(filePath))
- {
- Directory.CreateDirectory(filePath);
- }
- return filePath;
- }
-
- static public string GetMessageId(outlook.MailItem mail)
- {
- var propertyAccessor = mail.PropertyAccessor;
- string message_id = propertyAccessor.GetProperty("http://schemas.microsoft.com/mapi/proptag/0x1035001E").ToString();
- return message_id;
- }
- static public string GetHeader(outlook.MailItem mail)
- {
- var propertyAccessor = mail.PropertyAccessor;
- //string HEADERS = propertyAccessor.GetProperty("http://schemas.microsoft.com/mapi/string/{3f0a69e0-7f56-11d2-b536-00aa00bbb6e6}/urn:schemas:httpmail:content-disposition-type").ToString();
- string HEADERS = propertyAccessor.GetProperty("http://schemas.microsoft.com/mapi/proptag/0x007D001E").ToString();
- return HEADERS;
-
- }
-
- static public string EncryptB64Pwd(string pwd)
- {
- /*
-
- * Accepts the string password and encrypt it into the base64 format.
- :Param string pwd : A normal string Password.
- * returns the encrypted base64 passwod from the normal string value.
-
- */
- byte[] encbuff = System.Text.Encoding.UTF8.GetBytes(pwd);
- string encodepwd = Convert.ToBase64String(encbuff);
- return "[" + encodepwd + "]";
-
- }
- static public string DecryptB64Pwd(string pwd)
- {
- /*
-
- * Accept the base64 fromat string value and decrypt it to normal string.
- :Param : string pwd : A base64 value password.
- * returns the decrypted string value from the base64 value.
- */
- string pswd = pwd.Substring(1, (pwd.Length - 2));
- byte[] decbuff = Convert.FromBase64String(pswd);
- string decodpwd = System.Text.Encoding.UTF8.GetString(decbuff);
- return decodpwd;
- }
- }
-}
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_choose_document_opt.Designer.cs b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_choose_document_opt.Designer.cs
deleted file mode 100644
index 396ed9ef0f9..00000000000
--- a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_choose_document_opt.Designer.cs
+++ /dev/null
@@ -1,137 +0,0 @@
-namespace OpenERPOutlookPlugin
-{
- partial class frm_choose_document_opt
- {
- ///
- /// Required designer variable.
- ///
- private System.ComponentModel.IContainer components = null;
-
- ///
- /// Clean up any resources being used.
- ///
- /// true if managed resources should be disposed; otherwise, false.
- protected override void Dispose(bool disposing)
- {
- if (disposing && (components != null))
- {
- components.Dispose();
- }
- base.Dispose(disposing);
- }
-
- #region Windows Form Designer generated code
-
- ///
- /// Required method for Designer support - do not modify
- /// the contents of this method with the code editor.
- ///
- private void InitializeComponent()
- {
- System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(frm_choose_document_opt));
- this.btn_doc = new System.Windows.Forms.Button();
- this.btn_cncl = new System.Windows.Forms.Button();
- this.btn_push = new System.Windows.Forms.Button();
- this.btn_newdoc = new System.Windows.Forms.Button();
- this.lbl_docname = new System.Windows.Forms.Label();
- this.SuspendLayout();
- //
- // btn_doc
- //
- this.btn_doc.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btn_doc.Image = global::OpenERPOutlookPlugin.Properties.Resources.Archive;
- this.btn_doc.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
- this.btn_doc.Location = new System.Drawing.Point(31, 146);
- this.btn_doc.Name = "btn_doc";
- this.btn_doc.Size = new System.Drawing.Size(169, 32);
- this.btn_doc.TabIndex = 0;
- this.btn_doc.Text = "&Open an existing Document";
- this.btn_doc.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
- this.btn_doc.UseVisualStyleBackColor = true;
- this.btn_doc.Click += new System.EventHandler(this.btn_doc_Click);
- //
- // btn_cncl
- //
- this.btn_cncl.Anchor = System.Windows.Forms.AnchorStyles.None;
- this.btn_cncl.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btn_cncl.Image = global::OpenERPOutlookPlugin.Properties.Resources.Error;
- this.btn_cncl.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
- this.btn_cncl.Location = new System.Drawing.Point(463, 146);
- this.btn_cncl.Name = "btn_cncl";
- this.btn_cncl.Size = new System.Drawing.Size(105, 32);
- this.btn_cncl.TabIndex = 1;
- this.btn_cncl.Text = "&Cancel";
- this.btn_cncl.UseVisualStyleBackColor = true;
- this.btn_cncl.Click += new System.EventHandler(this.btn_cncl_Click);
- //
- // btn_push
- //
- this.btn_push.Anchor = System.Windows.Forms.AnchorStyles.None;
- this.btn_push.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btn_push.Image = ((System.Drawing.Image)(resources.GetObject("btn_push.Image")));
- this.btn_push.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
- this.btn_push.Location = new System.Drawing.Point(231, 146);
- this.btn_push.Name = "btn_push";
- this.btn_push.Size = new System.Drawing.Size(199, 32);
- this.btn_push.TabIndex = 2;
- this.btn_push.Text = "P&ush to an existing Document";
- this.btn_push.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
- this.btn_push.UseVisualStyleBackColor = true;
- this.btn_push.Click += new System.EventHandler(this.btn_push_Click);
- //
- // btn_newdoc
- //
- this.btn_newdoc.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
- | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.btn_newdoc.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btn_newdoc.Image = global::OpenERPOutlookPlugin.Properties.Resources.Create;
- this.btn_newdoc.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
- this.btn_newdoc.Location = new System.Drawing.Point(31, 146);
- this.btn_newdoc.Name = "btn_newdoc";
- this.btn_newdoc.Size = new System.Drawing.Size(169, 32);
- this.btn_newdoc.TabIndex = 3;
- this.btn_newdoc.Text = "Create a &new Document";
- this.btn_newdoc.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
- this.btn_newdoc.UseVisualStyleBackColor = true;
- this.btn_newdoc.Click += new System.EventHandler(this.btn_newdoc_Click);
- //
- // lbl_docname
- //
- this.lbl_docname.Anchor = System.Windows.Forms.AnchorStyles.Top;
- this.lbl_docname.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
- this.lbl_docname.Font = new System.Drawing.Font("Microsoft Sans Serif", 15F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.lbl_docname.Location = new System.Drawing.Point(12, 20);
- this.lbl_docname.Name = "lbl_docname";
- this.lbl_docname.Size = new System.Drawing.Size(570, 94);
- this.lbl_docname.TabIndex = 7;
- this.lbl_docname.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
- //
- // frm_choose_document_opt
- //
- this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.ClientSize = new System.Drawing.Size(594, 204);
- this.Controls.Add(this.lbl_docname);
- this.Controls.Add(this.btn_newdoc);
- this.Controls.Add(this.btn_push);
- this.Controls.Add(this.btn_cncl);
- this.Controls.Add(this.btn_doc);
- this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Fixed3D;
- this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
- this.MaximizeBox = false;
- this.Name = "frm_choose_document_opt";
- this.Text = "Document";
- this.ResumeLayout(false);
-
- }
-
- #endregion
-
- private System.Windows.Forms.Button btn_doc;
- private System.Windows.Forms.Button btn_cncl;
- private System.Windows.Forms.Button btn_push;
- private System.Windows.Forms.Button btn_newdoc;
- private System.Windows.Forms.Label lbl_docname;
- }
-}
\ No newline at end of file
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_choose_document_opt.cs b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_choose_document_opt.cs
deleted file mode 100644
index e364922844b..00000000000
--- a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_choose_document_opt.cs
+++ /dev/null
@@ -1,98 +0,0 @@
-/*
- OpenERP, Open Source Business Applications
- Copyright (c) 2011 OpenERP S.A.
-
- 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 .
-*/
-
-
-using System;
-using System.Collections.Generic;
-using System.ComponentModel;
-using System.Data;
-using System.Drawing;
-using System.Linq;
-using System.Text;
-using System.Windows.Forms;
-using OpenERPClient;
-using outlook = Microsoft.Office.Interop.Outlook;
-using System.Collections;
-
-namespace OpenERPOutlookPlugin
-{
- public partial class frm_choose_document_opt : Form
- {
- public frm_choose_document_opt()
- {
- InitializeComponent();
- try
- {
- foreach (outlook.MailItem mail in Tools.MailItems())
- {
-
- string name_get = Cache.OpenERPOutlookPlugin.Name_get(mail);
- this.Show();
- if (name_get != "")
- {
- lbl_docname.Text = name_get;
- btn_newdoc.Visible = false;
-
- }
- else
- {
- lbl_docname.Text = mail.Subject;
- btn_doc.Visible = false;
- }
- }
-
- }
- catch (Exception ex)
- {
- Connect.handleException(ex);
- }
-
- }
-
- private void btn_doc_Click(object sender, EventArgs e)
- {
- foreach (outlook.MailItem mailitem in Tools.MailItems())
- {
- Cache.OpenERPOutlookPlugin.Open_Document(mailitem);
-
- }
- this.Close();
- }
-
-
- private void btn_push_Click(object sender, EventArgs e)
- {
- frm_push_mail frm_push_mail = new frm_push_mail();
- frm_push_mail.Show();
- this.Close();
- }
-
- private void btn_cncl_Click(object sender, EventArgs e)
- {
- this.Close();
- }
-
- private void btn_newdoc_Click(object sender, EventArgs e)
- {
- frm_create_doc create_doc = new frm_create_doc();
- create_doc.Show();
- this.Close();
- }
-
- }
-}
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_choose_document_opt.resx b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_choose_document_opt.resx
deleted file mode 100644
index bbe4f00b972..00000000000
--- a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_choose_document_opt.resx
+++ /dev/null
@@ -1,153 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- text/microsoft-resx
-
-
- 2.0
-
-
- System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
-
-
- R0lGODlhEAAQAIMAAG3E8G2t10a17BaL0ymp6kq78SB7uHa75UCr4zSi4R12sxZmpTy08B6Z3n7J8AAA
- ACH/C05FVFNDQVBFMi4wAwEBAAAh+QQBAAAPACwAAAAAEAAQAAAIZwAfCBxIsKDBgwgHBjCQsKCBAwwb
- CjQAAEBEggsNaNQIgIBFhwEOiHTgQAABBg4uPjAQYMCABgROFiggIOVAli9lzhQgAMGCmwcSIBAwc6dP
- jAqSKqV5tKGCnj8lPo0qMQBViVizBgQAOw==
-
-
-
-
- AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAACAgICAAAAKwAAAGw8PDykT09Pu1BQULpAQEChAAAAYgAAAB0AAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAFBQUNAAAAanFxcdygoaH/l5eX/5OTk/+ZmJj/o6Kj/6alpv93d3jbCAgIVwkJ
- CQMAAAAAAAAAAAAAAAAHBwcKIyQkhLCwr/2IiIv+Q0NH/zc4PP9KSlD/b29w/3l5eP+VlJX/srKy/rCw
- sf87OztxEBAQAgAAAAD///8ADQ0NYMfGxf5lZXv+BwdS/hISdv8MDGb/EBBw/wgIUf8rK0D/X19g/4yM
- jP7CwsL+xsbG/ywsLEYAAAAAAAAAFqioqdykpLn+ERGH/hsbo/8vMEj/srK5/4OEpP8cHJr/GRmh/w8P
- Qv9RUVP/nJuc/trZ2f69vb7aAAAAAiQkI1D49/X/YWGp/yUlzv8WFo3/bW1w/9vb2//x8O//oqPH/yUl
- xv8jI87/Dw9C/2loaP/Ly8v/8vLy/3FxcD2jo6OR/////1tbyf8uLuf/HByh/2VlaP/e3t7//f39////
- //9dXc//LS3n/yIi0f8rKzj/pqal//7+/v/W1taEycnJqv////9wcOX/ODj3/ygoz/9ERE3/xMTE//v7
- +//+/v//09Pz/zMz8v80NPn/EBBx/4KCgf/09PT/7e3to9bW1qn/////oqL6/0JC//9BQf//Hx9G/5aW
- lP/u7u7///////////9MTPf/Ojr8/yIivv9hYWv/7u7u//X19aTY2NmI//////Hx/P84OPD/QED7/xkZ
- kf9iYmb/xcXF//r6+v//////fX3n/zc3+/8pKdz/WVlm//Pz8//6+vmIvb29O//////////+jIzV/zMz
- 6P8rK+H/KChP/4yMiv/X19f/+Pj4/42Nyf8pKev/ICDN/3JygP7/////9/f3PgAAAAD5+fnd/////v//
- //9SUqn/JCTH/xUVmv9SUmn/pqaj/8nJxv9LS4H/Hh7P/w4Oj/7KytH+/v7+5QAAAAAAAAAA5OTkNP//
- ///+/v7//////2Fhkv8PD4T/DQ1//yYmXP8xMVz/DAyA/xAQmf9iYob///////z8/DsAAAAAAAAAAAAA
- AAD8/Pxc/v7+//7+/v7////+xcXL/0xMbP8ICEf/AAA+/xISS/6AgJD+//////7+/mgAAAAAAAAAAAAA
- AAAAAAAAAAAAAPv7+zX+/v7m//////7+/v/////+/////v//////////////7P7+/j4AAAAA+fn5AAAA
- AAAAAAAAAAAAAAAAAAD///8AAAAAAP7+/kj+/v6S/v7+s/7+/rT+/v6U/v7+TQAAAAAAAAAAAAAAAAAA
- AAAAAAAA/D8AAPAPAADABwAAwAMAAIABAACAAQAAAAAAAAAAAAAAAAAAAAAAAIABAACAAQAAwAMAAOAH
- AADwDwAA/D8AAA==
-
-
-
\ No newline at end of file
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_contact.cs b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_contact.cs
deleted file mode 100644
index e984c8d711b..00000000000
--- a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_contact.cs
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- OpenERP, Open Source Business Applications
- Copyright (c) 2011 OpenERP S.A.
-
- 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 .
-*/
-
-
-using System;
-using System.Collections;
-using System.Windows.Forms;
-using OpenERPClient;
-
-namespace OpenERPOutlookPlugin
-{
- public partial class frm_contact : Form
- {
-
- public frm_contact()
- {
- InitializeComponent();
- }
-
- public frm_contact(string contact_name, string email_id)
- {
- InitializeComponent();
- txt_contactname_create_contact.Text = contact_name;
- txtemail.Text = email_id;
-
- }
-
- private void btncancel_Click(object sender, EventArgs e)
- {
- this.Close();
- }
-
- private void btnCreate_partner_Click(object sender, EventArgs e)
- {
-
- try
- {
- Cache.OpenERPOutlookPlugin.CreateContactRecord(0, txt_contactname_create_contact.Text, txtemail.Text);
- this.Close();
- }
- catch (Exception ex)
- {
- Connect.handleException(ex);
- }
- }
-
- private void btnCancel_Click(object sender, EventArgs e)
- {
- this.Close();
- }
-
- private void btnLink_partner_Click(object sender, EventArgs e)
- {
- frm_select_partner select_partner = new frm_select_partner();
- select_partner.parent_form = this;
- select_partner.Show();
- this.Close();
- }
-
-
- }
-}
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_contact.designer.cs b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_contact.designer.cs
deleted file mode 100644
index af6c4756875..00000000000
--- a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_contact.designer.cs
+++ /dev/null
@@ -1,166 +0,0 @@
-namespace OpenERPOutlookPlugin
-{
- partial class frm_contact
- {
- ///
- /// Required designer variable.
- ///
- private System.ComponentModel.IContainer components = null;
-
- ///
- /// Clean up any resources being used.
- ///
- /// true if managed resources should be disposed; otherwise, false.
- protected override void Dispose(bool disposing)
- {
- if (disposing && (components != null))
- {
- components.Dispose();
- }
- base.Dispose(disposing);
- }
-
- #region Windows Form Designer generated code
-
- ///
- /// Required method for Designer support - do not modify
- /// the contents of this method with the code editor.
- ///
- private void InitializeComponent()
- {
- System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(frm_contact));
- this.btnCancel = new System.Windows.Forms.Button();
- this.btnCreate_partner = new System.Windows.Forms.Button();
- this.groupBox1 = new System.Windows.Forms.GroupBox();
- this.txtemail = new System.Windows.Forms.TextBox();
- this.lblemail = new System.Windows.Forms.Label();
- this.txt_contactname_create_contact = new System.Windows.Forms.TextBox();
- this.lblname = new System.Windows.Forms.Label();
- this.btnLink_partner = new System.Windows.Forms.Button();
- this.groupBox1.SuspendLayout();
- this.SuspendLayout();
- //
- // btnCancel
- //
- this.btnCancel.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btnCancel.Image = global::OpenERPOutlookPlugin.Properties.Resources.Error;
- this.btnCancel.ImageAlign = System.Drawing.ContentAlignment.BottomLeft;
- this.btnCancel.Location = new System.Drawing.Point(306, 127);
- this.btnCancel.Name = "btnCancel";
- this.btnCancel.Size = new System.Drawing.Size(70, 23);
- this.btnCancel.TabIndex = 14;
- this.btnCancel.Text = "&Cancel ";
- this.btnCancel.TextAlign = System.Drawing.ContentAlignment.TopRight;
- this.btnCancel.UseVisualStyleBackColor = true;
- this.btnCancel.Click += new System.EventHandler(this.btnCancel_Click);
- //
- // btnCreate_partner
- //
- this.btnCreate_partner.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btnCreate_partner.Image = global::OpenERPOutlookPlugin.Properties.Resources.Success;
- this.btnCreate_partner.ImageAlign = System.Drawing.ContentAlignment.TopLeft;
- this.btnCreate_partner.Location = new System.Drawing.Point(189, 127);
- this.btnCreate_partner.Name = "btnCreate_partner";
- this.btnCreate_partner.Size = new System.Drawing.Size(109, 23);
- this.btnCreate_partner.TabIndex = 15;
- this.btnCreate_partner.Text = "Create &Partner";
- this.btnCreate_partner.TextAlign = System.Drawing.ContentAlignment.TopRight;
- this.btnCreate_partner.UseVisualStyleBackColor = true;
- this.btnCreate_partner.Click += new System.EventHandler(this.btnCreate_partner_Click);
- //
- // groupBox1
- //
- this.groupBox1.Controls.Add(this.txtemail);
- this.groupBox1.Controls.Add(this.lblemail);
- this.groupBox1.Controls.Add(this.txt_contactname_create_contact);
- this.groupBox1.Controls.Add(this.lblname);
- this.groupBox1.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.groupBox1.Location = new System.Drawing.Point(12, 9);
- this.groupBox1.Name = "groupBox1";
- this.groupBox1.Size = new System.Drawing.Size(369, 110);
- this.groupBox1.TabIndex = 16;
- this.groupBox1.TabStop = false;
- this.groupBox1.Text = "Address Detail";
- //
- // txtemail
- //
- this.txtemail.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.txtemail.Location = new System.Drawing.Point(97, 66);
- this.txtemail.Name = "txtemail";
- this.txtemail.Size = new System.Drawing.Size(255, 20);
- this.txtemail.TabIndex = 35;
- //
- // lblemail
- //
- this.lblemail.AutoSize = true;
- this.lblemail.Location = new System.Drawing.Point(59, 69);
- this.lblemail.Name = "lblemail";
- this.lblemail.Size = new System.Drawing.Size(41, 13);
- this.lblemail.TabIndex = 34;
- this.lblemail.Text = "Email:";
- //
- // txt_contactname_create_contact
- //
- this.txt_contactname_create_contact.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.txt_contactname_create_contact.Location = new System.Drawing.Point(97, 26);
- this.txt_contactname_create_contact.Name = "txt_contactname_create_contact";
- this.txt_contactname_create_contact.Size = new System.Drawing.Size(255, 20);
- this.txt_contactname_create_contact.TabIndex = 33;
- //
- // lblname
- //
- this.lblname.AutoSize = true;
- this.lblname.Location = new System.Drawing.Point(9, 29);
- this.lblname.Name = "lblname";
- this.lblname.Size = new System.Drawing.Size(91, 13);
- this.lblname.TabIndex = 27;
- this.lblname.Text = "Contact Name:";
- //
- // btnLink_partner
- //
- this.btnLink_partner.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btnLink_partner.Image = global::OpenERPOutlookPlugin.Properties.Resources.Search;
- this.btnLink_partner.ImageAlign = System.Drawing.ContentAlignment.BottomLeft;
- this.btnLink_partner.Location = new System.Drawing.Point(63, 127);
- this.btnLink_partner.Name = "btnLink_partner";
- this.btnLink_partner.Size = new System.Drawing.Size(118, 23);
- this.btnLink_partner.TabIndex = 19;
- this.btnLink_partner.Text = "&Link To Partner";
- this.btnLink_partner.TextAlign = System.Drawing.ContentAlignment.TopRight;
- this.btnLink_partner.UseVisualStyleBackColor = true;
- this.btnLink_partner.Click += new System.EventHandler(this.btnLink_partner_Click);
- //
- // frm_contact
- //
- this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.ClientSize = new System.Drawing.Size(394, 159);
- this.Controls.Add(this.btnLink_partner);
- this.Controls.Add(this.groupBox1);
- this.Controls.Add(this.btnCreate_partner);
- this.Controls.Add(this.btnCancel);
- this.Cursor = System.Windows.Forms.Cursors.Default;
- this.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Fixed3D;
- this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
- this.MaximizeBox = false;
- this.Name = "frm_contact";
- this.Text = "Create Contact";
- this.groupBox1.ResumeLayout(false);
- this.groupBox1.PerformLayout();
- this.ResumeLayout(false);
-
- }
-
- #endregion
-
- private System.Windows.Forms.Button btnCancel;
- private System.Windows.Forms.Button btnCreate_partner;
- private System.Windows.Forms.GroupBox groupBox1;
- private System.Windows.Forms.TextBox txt_contactname_create_contact;
- private System.Windows.Forms.Label lblname;
- private System.Windows.Forms.TextBox txtemail;
- private System.Windows.Forms.Label lblemail;
- private System.Windows.Forms.Button btnLink_partner;
- }
-}
\ No newline at end of file
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_contact.resx b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_contact.resx
deleted file mode 100644
index 9477f7baa89..00000000000
--- a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_contact.resx
+++ /dev/null
@@ -1,180 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- text/microsoft-resx
-
-
- 2.0
-
-
- System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
-
-
- AAABAAEAICAAAAEAGACoDAAAFgAAACgAAAAgAAAAQAAAAAEAGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAxO+0UHsorMtUkJMo6LOY5JN81HsdDLM4/JMdINcBISKJCSpA+RpM9SJo6RJsxPJg2PJ84PKU4OadA
- Pbs7L8lANd8qJNUiJtIZKModMNcUJOIUHu0iJvsaIOUaJsQuQMkXHNcvNOciJsstLNAvItJSQekqG6xQ
- QchYSNKOg/3Cw//Q2f/P1f/S2P/T3P/R2P+iqP+7vv9vct8zM6k0Lbg6NcwcGroyN9oiLs4eLdccKOQg
- KvMkKfYaIuEbJsgnOMkdGuUeHd4+PeseHLxAONI9N7p4edSzt//W1v/k4//h6P/f5v/Dw/+2tf+1t/+0
- tv/Kzv/Y3f/S1f/U2P/Fyf8iKJlOVNMtM8IuM9UjKtgdJd0aI98bJN8nMOUqNN8dKc0pIPMnIOUvK9g5
- N8w4NLWGiObR4P/k9//k7//K0/+JkeRWW8I5N78uKcAvLL4wMrxCR8hTWNKOlP/a4v/Z4//W4v+Ai+cx
- OaooKr4mJ88sLuAjKNsWIMwoMt4yOusZI9QnHO42Le8lIME+Pb2Dg+fk7//o///b9/ff8v+OnN5ET6sx
- NrE3MdIyKdcvKsszNscxOL0uN7YkKqdvduPc6f/Y6v/f8P/F0v9PUMg1MMc0MNY4OOQlK9AdJs4iLN4c
- J90sIucvKdovL7lcX8fm6v/q9v/m/vbl//yQocxRXa8jLp4sML83MeIsJNwnJsoxNckjLrRATNBARNIo
- K6srN4/c7f/a7f/k8//Kzf9pZN0nHrQrJskyNNgkLNMbJdYgK+AxK9wxL8k+RK/N1f/s8v/r9v/Y6uvq
- +/9UW6o2ObMlKbgpK88vKuMqJt0sL801PcwwP8QaJ7MjIsY1MdBDRL54gtDm9//Y6fzq8//AwP9jWdU0
- KMAxLdIwMt4hLtgcLdc3NdsfIauFkODo9P/x+v/p8vzx/f+uteY7OKw2L8wtLtYpK90nKeIpKt4qLs0l
- Lr4iML4yPdUrJ94xKN0yLMc3OKavuuzt+//c5vfv9P/Z0/9rYN8tJsMoKNIjL9UYK9A9Od4hJKS9y//n
- 9//0///x9/z09v+dl+g8LsoyI+InJ98iKd4iKN8kKtspLdIpMM0qNdMcI8wpJucqH+c8L+kzKL5MTaXs
- 8//0///w+v/x8f++uf8vKLM0M9YlL9MkNNoxK9Y2OLrc7P/t///4//f7///28v+EeNw8JtkuHu4kJuMe
- Kd4gKd4iKdwpKdkpKdknK90gJNssKu4iGeUuH+wvIdM9MrCmpOr0/f/r9uz2/P/q7f+XlP8zMcYhKMsf
- LNYmHtc4OsTk8v/x//73/+39//v28P99b9U7JdssHu4gKOAcK9seKd4iJ+ApJOUrIucmIegjIuYwMu8b
- GtwiGOczJOowHsVYS7709P/5//r6//Xy/P/d4P87PbkiJMghJdspI+AvML7b6f/x//79//L+/vj68v+N
- f+Q7J9crIeoeKtwZLtccKtwiJ+IrIeksH+0oHu0iH+YuNOsdItsdGuU3LPgzHt42I7XY0P/6/f/2/+np
- +ejq8/92fN8rLcgqKeMsKuEyNcDc6f/z//////j///779P+Ngds7LM4rJeIcLdcXMNQbLNsiJ+IsIucu
- IOouJOwhHt8lL+AfLNwaIuEtLPI0Juo1I8SajOr49f/1/+z4//Dt+//J0v8vLsAvKt8gJc44QMPj7//w
- +f/8/Pz//P/88v9zabw7L8cpKdscL9QXMNIbLNsiKN8sJeIwJOIzK+QjJdcfK9cdLtsWJt0eJ+MuJ+Y5
- K9B8bNzv5v/z+fT6//Ln9/3k7/8wMrYsJtEcK70yQbXj8P/w9//79P//+P/78P98csU5McQnK9gbL9QX
- MNQbLNkkK9kuKtcyK9IxL88qL9EcKNQYKtsXK94YKNknK9g1L8pjVM3m2f/6+P/6//7j8fff7P9fYdcs
- KsMsN88tOLHb5//z+//////89/n79f+kn+o5NL8nLNUbLtUVL9cbLNsiKtssKtgyK9QsJ8oyM9ceJtcV
- JdwYLuQWLd0hLtYrL8MxK6LWzv/49//w9fbz///q9v+lqP83NrYjHNk7Oszk7f/d7ez9/+T8/9/2+v/e
- 4P8wMKwyN9kLHMcgNukZKeAdJuIrJu0uIek1I+IyJOAlJeMbJuYQKOYQKuIXLtgkNcYmL5fm7v/z/P/1
- /vv2///x9//Y1v9FQKMoHuM3M8+epO/x/f/7/+n9/+T4///f4f8xMqQxOM8WJNAZKt8aKuEaJeEhIOYw
- Je01IeYzI+InJ98bKd8QKuIOKuIVKt8iMc4wOK/Axv/v9v/4/v/4/v/w8//o5/9APY0pKtg4Os5dX77t
- 8P/19f/7+v/69v/t6P9OTrgxNsEoMtYWJdUfLt4bKNgdJNEwMNwzJ9kyKtUlMc0bM8sSMdQSLdwZJecl
- JeM3Lc2Shvzq4//49v/4+v/q7v/s7f8/P40iKtEzOc5BQbXi3v/27v/48P/58v/z7v+OjesuMLQuMtcf
- KN0iKuEcKNQkMckrMcowKtcsK9UkNcYbOMIVNskXMNQgJeUsJOM6Kc6Zhv/u5P/69//2+//t8//h4v9B
- P5gbJdYiKcw3N8GLhOz06//79P/z8f/09f/Pzf80MK0qItMsJu8hIOYgJtcwQssjMLwrJ94pJuAiMssc
- OcAbOMIeNccnLNUzLNBAMrXLvv/4+f/6//vy/frv+P+mpvpAOqkhL+YXIc0xMspEPrXZ0v/49P/6/f/2
- /P/t7v9cWMIsIcswJO4kGugkJt82RNMiMb0nKtklKN4gMsseNsQgNcYlMsouLNI7L8dBM6Ps5f/5//76
- //Hu/Pjs9f90btlIPckhMe8YI9gsLtAyLq+PjNzh4f/4///2//zv9/+lp/VFO80yI98tIe0tJustMNgo
- M8skMssiM8ogNMkiMsskLdUrKNs1JtxALcpNPajy7f/y+/j4//Tt+f/o7f9OQspGM+AUKd8bKdslKNE4
- NcY/OqOsqefz+f/0///v/P/n8f9hYsozLcI6L+MzK+ohHNUtMd4iMc4gMs0iLtQkKdwpIucwIec7JN5F
- LsZrXbv08v/0//3z//7n8v/P0P8tH7swG9sYMdUaLNMpLNs0LdQ6LMBbTsGxrfTv9f/s/P/o/P/T5f89
- S54jKKkwLNI4L/EpIukbINsmLOksJ/gmGvYrFPg6IPZEK99FMrevqPPw9f/k8Prt+//m7v97eOUxI8g0
- IeIaL9EcLNMnKuAwKOEwINI8K8htYdeene3T3//k/P/J5PnK4/82Rp8uM7ciHcwnH+IsLe0aGuIdFO0x
- H/4zHPQqFNE9L71jXL3s8f/e7P/q+//m9P+DiN0xLqw3LNY8LewiLdslLN8pKuYvJ+owH+UwHNk5Kc5F
- Pb+Ume7N3v/d+f/R8P/G3/9FV7A5QcQwM9IqLdwjJd4xKuk8MuosJMUwLqp9hdLa6v/m/f/b9f/j9v+z
- v/9ARLQrKLk5MdwfFc0oKuMoKeUoJeYoIuUsIusyJe0zJeEvJspBQMBMVLG1y//a9P/Y8f/C2f+Ek/o9
- SsRATdEyPsYoL7oyN7hXW8uNmOrF2P/h+P/X8v/d9f+KmuYgKpU4OcVEQeQXEsE8N+wqIOksI+gnIuEg
- H9kiI98tLOgvKuksJ94kIMU8PcsvN6hUYL6Jm+7W6P/E1f/T6P/F5f/R9P/U8P/U6//U5v/d7v/d7//Y
- 6f+zw/9DULg1PMEtL8oSEL0uKuE6NO0nItsxIugyJ+kvKuMlKdshKNsgKd4hJeIhI+AzMegkIcosK8Ex
- Nbk9Q7ouNqdmceFHV7e00P+du+yNpd+brO+uuv+epv9kac8rMKM9QsYeJbgoLc8yNuMsLeMoJ+EiHtsl
- H9w4Ktw1K9wxL90rMd4hL9wZKdoXJdscJt4fI9k8POwnJM41MNM5NNMiGro1Lc5GQNswLbkuKrE2MLdE
- O8hLPNM/L9A0JM8sIdEjIc8wNd4pNNYcKcsVHsUgJdQ0M+0uKeg1KNAuJs0oJ9EnLtkdLtkWKdgWKt0i
- MOYeJ9wZGs4zLuMwJdktIdVFNuwvH9gxIdo8KdxBLd1AK9s9Jdc6H9o7IOI5H+40IO4lH+I3O/EQH8IZ
- Lcg2ROQeJ88eHtYoI+QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
-
-
-
\ No newline at end of file
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_create_doc.Designer.cs b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_create_doc.Designer.cs
deleted file mode 100644
index 88ed53cbe94..00000000000
--- a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_create_doc.Designer.cs
+++ /dev/null
@@ -1,127 +0,0 @@
-namespace OpenERPOutlookPlugin
-{
- partial class frm_create_doc
- {
- ///
- /// Required designer variable.
- ///
- private System.ComponentModel.IContainer components = null;
-
- ///
- /// Clean up any resources being used.
- ///
- /// true if managed resources should be disposed; otherwise, false.
- protected override void Dispose(bool disposing)
- {
- if (disposing && (components != null))
- {
- components.Dispose();
- }
- base.Dispose(disposing);
- }
-
- #region Windows Form Designer generated code
-
- ///
- /// Required method for Designer support - do not modify
- /// the contents of this method with the code editor.
- ///
- private void InitializeComponent()
- {
- System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(frm_create_doc));
- this.grp_create_bx = new System.Windows.Forms.GroupBox();
- this.btn_main_close = new System.Windows.Forms.Button();
- this.cmboboxcreate = new System.Windows.Forms.ComboBox();
- this.btn_create_doc = new System.Windows.Forms.Button();
- this.lbtypedoc = new System.Windows.Forms.Label();
- this.grp_create_bx.SuspendLayout();
- this.SuspendLayout();
- //
- // grp_create_bx
- //
- this.grp_create_bx.Controls.Add(this.btn_main_close);
- this.grp_create_bx.Controls.Add(this.cmboboxcreate);
- this.grp_create_bx.Controls.Add(this.btn_create_doc);
- this.grp_create_bx.Controls.Add(this.lbtypedoc);
- this.grp_create_bx.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.grp_create_bx.Location = new System.Drawing.Point(12, 12);
- this.grp_create_bx.Name = "grp_create_bx";
- this.grp_create_bx.Size = new System.Drawing.Size(438, 104);
- this.grp_create_bx.TabIndex = 0;
- this.grp_create_bx.TabStop = false;
- this.grp_create_bx.Text = "Create Document";
- //
- // btn_main_close
- //
- this.btn_main_close.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btn_main_close.Image = global::OpenERPOutlookPlugin.Properties.Resources.Error;
- this.btn_main_close.ImageAlign = System.Drawing.ContentAlignment.BottomLeft;
- this.btn_main_close.Location = new System.Drawing.Point(353, 63);
- this.btn_main_close.Name = "btn_main_close";
- this.btn_main_close.Size = new System.Drawing.Size(63, 23);
- this.btn_main_close.TabIndex = 9;
- this.btn_main_close.Text = "&Close ";
- this.btn_main_close.TextAlign = System.Drawing.ContentAlignment.TopRight;
- this.btn_main_close.UseVisualStyleBackColor = true;
- this.btn_main_close.Click += new System.EventHandler(this.btn_main_close_Click);
- //
- // cmboboxcreate
- //
- this.cmboboxcreate.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.cmboboxcreate.FormattingEnabled = true;
- this.cmboboxcreate.Items.AddRange(new object[] {
- ""});
- this.cmboboxcreate.Location = new System.Drawing.Point(127, 30);
- this.cmboboxcreate.Name = "cmboboxcreate";
- this.cmboboxcreate.Size = new System.Drawing.Size(289, 21);
- this.cmboboxcreate.TabIndex = 6;
- //
- // btn_create_doc
- //
- this.btn_create_doc.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btn_create_doc.Image = global::OpenERPOutlookPlugin.Properties.Resources.Archive;
- this.btn_create_doc.ImageAlign = System.Drawing.ContentAlignment.BottomLeft;
- this.btn_create_doc.Location = new System.Drawing.Point(279, 63);
- this.btn_create_doc.Name = "btn_create_doc";
- this.btn_create_doc.Size = new System.Drawing.Size(68, 23);
- this.btn_create_doc.TabIndex = 5;
- this.btn_create_doc.Text = "&Create ";
- this.btn_create_doc.TextAlign = System.Drawing.ContentAlignment.TopRight;
- this.btn_create_doc.UseVisualStyleBackColor = true;
- this.btn_create_doc.Click += new System.EventHandler(this.btn_create_doc_Click);
- //
- // lbtypedoc
- //
- this.lbtypedoc.AutoSize = true;
- this.lbtypedoc.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.lbtypedoc.Location = new System.Drawing.Point(6, 33);
- this.lbtypedoc.Name = "lbtypedoc";
- this.lbtypedoc.Size = new System.Drawing.Size(119, 13);
- this.lbtypedoc.TabIndex = 4;
- this.lbtypedoc.Text = "Type of Document :";
- //
- // frm_create_doc
- //
- this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.ClientSize = new System.Drawing.Size(462, 135);
- this.Controls.Add(this.grp_create_bx);
- this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Fixed3D;
- this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
- this.Name = "frm_create_doc";
- this.Text = "Create new Document";
- this.grp_create_bx.ResumeLayout(false);
- this.grp_create_bx.PerformLayout();
- this.ResumeLayout(false);
-
- }
-
- #endregion
-
- private System.Windows.Forms.GroupBox grp_create_bx;
- private System.Windows.Forms.ComboBox cmboboxcreate;
- private System.Windows.Forms.Button btn_create_doc;
- private System.Windows.Forms.Label lbtypedoc;
- private System.Windows.Forms.Button btn_main_close;
- }
-}
\ No newline at end of file
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_create_doc.cs b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_create_doc.cs
deleted file mode 100644
index d35e6524a68..00000000000
--- a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_create_doc.cs
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
- OpenERP, Open Source Business Applications
- Copyright (c) 2011 OpenERP S.A.
-
- 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 .
-*/
-
-
-using System;
-using System.Collections.Generic;
-using System.ComponentModel;
-using System.Data;
-using System.Drawing;
-using System.Linq;
-using System.Text;
-using System.Windows.Forms;
-using OpenERPClient;
-
-namespace OpenERPOutlookPlugin
-{
- public partial class frm_create_doc : Form
- {
- public frm_create_doc()
- {
- InitializeComponent();
-
- foreach (Model model in Cache.OpenERPOutlookPlugin.GetMailModels())
- {
- if (model.ToString() != "")
- {
- cmboboxcreate.Items.Add(model);
- cmboboxcreate.Items.Remove("");
- }
- }
- }
-
- private void btn_create_doc_Click(object sender, EventArgs e)
- {
- try
- {
- if (cmboboxcreate.SelectedItem == null)
- {
- throw new Exception("Please select a document from the document list.");
- }
- else
- {
- frm_push_mail pushmail = new frm_push_mail();
- Model model = (Model)cmboboxcreate.SelectedItem;
- pushmail.push_mail(model.model, 0);
- this.Close();
- }
-
- }
-
- catch (Exception ex)
- {
-
- Connect.handleException(ex);
- }
-
- }
-
- private void btn_main_close_Click(object sender, EventArgs e)
- {
- this.Close();
- }
- }
-}
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_create_doc.resx b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_create_doc.resx
deleted file mode 100644
index 3c294eb0444..00000000000
--- a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_create_doc.resx
+++ /dev/null
@@ -1,145 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- text/microsoft-resx
-
-
- 2.0
-
-
- System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
-
-
- AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAACAgICAAAAKwAAAGw8PDykT09Pu1BQULpAQEChAAAAYgAAAB0AAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAFBQUNAAAAanFxcdygoaH/l5eX/5OTk/+ZmJj/o6Kj/6alpv93d3jbCAgIVwkJ
- CQMAAAAAAAAAAAAAAAAHBwcKIyQkhLCwr/2IiIv+Q0NH/zc4PP9KSlD/b29w/3l5eP+VlJX/srKy/rCw
- sf87OztxEBAQAgAAAAD///8ADQ0NYMfGxf5lZXv+BwdS/hISdv8MDGb/EBBw/wgIUf8rK0D/X19g/4yM
- jP7CwsL+xsbG/ywsLEYAAAAAAAAAFqioqdykpLn+ERGH/hsbo/8vMEj/srK5/4OEpP8cHJr/GRmh/w8P
- Qv9RUVP/nJuc/trZ2f69vb7aAAAAAiQkI1D49/X/YWGp/yUlzv8WFo3/bW1w/9vb2//x8O//oqPH/yUl
- xv8jI87/Dw9C/2loaP/Ly8v/8vLy/3FxcD2jo6OR/////1tbyf8uLuf/HByh/2VlaP/e3t7//f39////
- //9dXc//LS3n/yIi0f8rKzj/pqal//7+/v/W1taEycnJqv////9wcOX/ODj3/ygoz/9ERE3/xMTE//v7
- +//+/v//09Pz/zMz8v80NPn/EBBx/4KCgf/09PT/7e3to9bW1qn/////oqL6/0JC//9BQf//Hx9G/5aW
- lP/u7u7///////////9MTPf/Ojr8/yIivv9hYWv/7u7u//X19aTY2NmI//////Hx/P84OPD/QED7/xkZ
- kf9iYmb/xcXF//r6+v//////fX3n/zc3+/8pKdz/WVlm//Pz8//6+vmIvb29O//////////+jIzV/zMz
- 6P8rK+H/KChP/4yMiv/X19f/+Pj4/42Nyf8pKev/ICDN/3JygP7/////9/f3PgAAAAD5+fnd/////v//
- //9SUqn/JCTH/xUVmv9SUmn/pqaj/8nJxv9LS4H/Hh7P/w4Oj/7KytH+/v7+5QAAAAAAAAAA5OTkNP//
- ///+/v7//////2Fhkv8PD4T/DQ1//yYmXP8xMVz/DAyA/xAQmf9iYob///////z8/DsAAAAAAAAAAAAA
- AAD8/Pxc/v7+//7+/v7////+xcXL/0xMbP8ICEf/AAA+/xISS/6AgJD+//////7+/mgAAAAAAAAAAAAA
- AAAAAAAAAAAAAPv7+zX+/v7m//////7+/v/////+/////v//////////////7P7+/j4AAAAA+fn5AAAA
- AAAAAAAAAAAAAAAAAAD///8AAAAAAP7+/kj+/v6S/v7+s/7+/rT+/v6U/v7+TQAAAAAAAAAAAAAAAAAA
- AAAAAAAA/D8AAPAPAADABwAAwAMAAIABAACAAQAAAAAAAAAAAAAAAAAAAAAAAIABAACAAQAAwAMAAOAH
- AADwDwAA/D8AAA==
-
-
-
\ No newline at end of file
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_openerp_configuration.Designer.cs b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_openerp_configuration.Designer.cs
deleted file mode 100644
index 547cdab9354..00000000000
--- a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_openerp_configuration.Designer.cs
+++ /dev/null
@@ -1,334 +0,0 @@
-namespace OpenERPOutlookPlugin
-{
- partial class frm_openerp_configuration
- {
- ///
- /// Required designer variable.
- ///
- private System.ComponentModel.IContainer components = null;
-
- ///
- /// Clean up any resources being used.
- ///
- /// true if managed resources should be disposed; otherwise, false.
- protected override void Dispose(bool disposing)
- {
- if (disposing && (components != null))
- {
- components.Dispose();
- }
- base.Dispose(disposing);
- }
-
- #region Windows Form Designer generated code
-
- ///
- /// Required method for Designer support - do not modify
- /// the contents of this method with the code editor.
- ///
- private void InitializeComponent()
- {
- System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(frm_openerp_configuration));
- this.btn_main_close = new System.Windows.Forms.Button();
- this.tbabout = new System.Windows.Forms.TabPage();
- this.groupBox3 = new System.Windows.Forms.GroupBox();
- this.pictureBox1 = new System.Windows.Forms.PictureBox();
- this.richTextBox1 = new System.Windows.Forms.RichTextBox();
- this.tbconfigsetting = new System.Windows.Forms.TabPage();
- this.pnconfig = new System.Windows.Forms.Panel();
- this.chkpwd = new System.Windows.Forms.CheckBox();
- this.txt_dbname = new System.Windows.Forms.TextBox();
- this.combo_config_database = new System.Windows.Forms.ComboBox();
- this.btn_openerp_connect = new System.Windows.Forms.Button();
- this.txt_password = new System.Windows.Forms.TextBox();
- this.txt_username = new System.Windows.Forms.TextBox();
- this.btn_open_server_url_form = new System.Windows.Forms.Button();
- this.txt_server_config = new System.Windows.Forms.TextBox();
- this.lbn_password = new System.Windows.Forms.Label();
- this.lbn_username = new System.Windows.Forms.Label();
- this.lbn_dbname = new System.Windows.Forms.Label();
- this.lbn_server = new System.Windows.Forms.Label();
- this.tb1 = new System.Windows.Forms.TabControl();
- this.tbabout.SuspendLayout();
- this.groupBox3.SuspendLayout();
- ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit();
- this.tbconfigsetting.SuspendLayout();
- this.pnconfig.SuspendLayout();
- this.tb1.SuspendLayout();
- this.SuspendLayout();
- //
- // btn_main_close
- //
- this.btn_main_close.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btn_main_close.Image = global::OpenERPOutlookPlugin.Properties.Resources.Error;
- this.btn_main_close.ImageAlign = System.Drawing.ContentAlignment.BottomLeft;
- this.btn_main_close.Location = new System.Drawing.Point(801, 420);
- this.btn_main_close.Name = "btn_main_close";
- this.btn_main_close.Size = new System.Drawing.Size(63, 23);
- this.btn_main_close.TabIndex = 8;
- this.btn_main_close.Text = "Close ";
- this.btn_main_close.TextAlign = System.Drawing.ContentAlignment.TopRight;
- this.btn_main_close.UseVisualStyleBackColor = true;
- this.btn_main_close.Click += new System.EventHandler(this.btn_main_close_Click);
- //
- // tbabout
- //
- this.tbabout.Controls.Add(this.groupBox3);
- this.tbabout.Location = new System.Drawing.Point(4, 22);
- this.tbabout.Name = "tbabout";
- this.tbabout.Padding = new System.Windows.Forms.Padding(3);
- this.tbabout.Size = new System.Drawing.Size(434, 315);
- this.tbabout.TabIndex = 2;
- this.tbabout.Text = "About";
- this.tbabout.UseVisualStyleBackColor = true;
- //
- // groupBox3
- //
- this.groupBox3.Controls.Add(this.pictureBox1);
- this.groupBox3.Controls.Add(this.richTextBox1);
- this.groupBox3.Dock = System.Windows.Forms.DockStyle.Fill;
- this.groupBox3.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.groupBox3.Location = new System.Drawing.Point(3, 3);
- this.groupBox3.Name = "groupBox3";
- this.groupBox3.Size = new System.Drawing.Size(428, 309);
- this.groupBox3.TabIndex = 0;
- this.groupBox3.TabStop = false;
- this.groupBox3.Text = "OpenERP Outlook Plugin";
- //
- // pictureBox1
- //
- this.pictureBox1.Image = ((System.Drawing.Image)(resources.GetObject("pictureBox1.Image")));
- this.pictureBox1.Location = new System.Drawing.Point(109, 92);
- this.pictureBox1.Name = "pictureBox1";
- this.pictureBox1.Size = new System.Drawing.Size(194, 50);
- this.pictureBox1.TabIndex = 1;
- this.pictureBox1.TabStop = false;
- //
- // richTextBox1
- //
- this.richTextBox1.BorderStyle = System.Windows.Forms.BorderStyle.None;
- this.richTextBox1.Dock = System.Windows.Forms.DockStyle.Fill;
- this.richTextBox1.Location = new System.Drawing.Point(3, 16);
- this.richTextBox1.Name = "richTextBox1";
- this.richTextBox1.ReadOnly = true;
- this.richTextBox1.Size = new System.Drawing.Size(422, 290);
- this.richTextBox1.TabIndex = 0;
- this.richTextBox1.Text = resources.GetString("richTextBox1.Text");
- this.richTextBox1.LinkClicked += new System.Windows.Forms.LinkClickedEventHandler(this.richTextBox1_LinkClicked);
- //
- // tbconfigsetting
- //
- this.tbconfigsetting.Controls.Add(this.pnconfig);
- this.tbconfigsetting.Location = new System.Drawing.Point(4, 22);
- this.tbconfigsetting.Name = "tbconfigsetting";
- this.tbconfigsetting.Padding = new System.Windows.Forms.Padding(3);
- this.tbconfigsetting.Size = new System.Drawing.Size(434, 315);
- this.tbconfigsetting.TabIndex = 0;
- this.tbconfigsetting.Text = "Configuration Settings";
- this.tbconfigsetting.UseVisualStyleBackColor = true;
- //
- // pnconfig
- //
- this.pnconfig.Controls.Add(this.chkpwd);
- this.pnconfig.Controls.Add(this.txt_dbname);
- this.pnconfig.Controls.Add(this.combo_config_database);
- this.pnconfig.Controls.Add(this.btn_openerp_connect);
- this.pnconfig.Controls.Add(this.txt_password);
- this.pnconfig.Controls.Add(this.txt_username);
- this.pnconfig.Controls.Add(this.btn_open_server_url_form);
- this.pnconfig.Controls.Add(this.txt_server_config);
- this.pnconfig.Controls.Add(this.lbn_password);
- this.pnconfig.Controls.Add(this.lbn_username);
- this.pnconfig.Controls.Add(this.lbn_dbname);
- this.pnconfig.Controls.Add(this.lbn_server);
- this.pnconfig.Dock = System.Windows.Forms.DockStyle.Fill;
- this.pnconfig.Location = new System.Drawing.Point(3, 3);
- this.pnconfig.Name = "pnconfig";
- this.pnconfig.Size = new System.Drawing.Size(428, 309);
- this.pnconfig.TabIndex = 53;
- //
- // chkpwd
- //
- this.chkpwd.AutoSize = true;
- this.chkpwd.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.chkpwd.Location = new System.Drawing.Point(105, 142);
- this.chkpwd.Name = "chkpwd";
- this.chkpwd.Size = new System.Drawing.Size(143, 17);
- this.chkpwd.TabIndex = 67;
- this.chkpwd.Text = "Remember Password";
- this.chkpwd.UseVisualStyleBackColor = true;
- //
- // txt_dbname
- //
- this.txt_dbname.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.txt_dbname.Location = new System.Drawing.Point(105, 57);
- this.txt_dbname.Name = "txt_dbname";
- this.txt_dbname.Size = new System.Drawing.Size(269, 20);
- this.txt_dbname.TabIndex = 58;
- this.txt_dbname.Visible = false;
- //
- // combo_config_database
- //
- this.combo_config_database.AllowDrop = true;
- this.combo_config_database.Location = new System.Drawing.Point(105, 57);
- this.combo_config_database.Name = "combo_config_database";
- this.combo_config_database.Size = new System.Drawing.Size(269, 21);
- this.combo_config_database.TabIndex = 59;
- //
- // btn_openerp_connect
- //
- this.btn_openerp_connect.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btn_openerp_connect.Image = global::OpenERPOutlookPlugin.Properties.Resources.Success;
- this.btn_openerp_connect.ImageAlign = System.Drawing.ContentAlignment.BottomLeft;
- this.btn_openerp_connect.Location = new System.Drawing.Point(295, 137);
- this.btn_openerp_connect.Name = "btn_openerp_connect";
- this.btn_openerp_connect.Size = new System.Drawing.Size(79, 23);
- this.btn_openerp_connect.TabIndex = 62;
- this.btn_openerp_connect.Text = "C&onnect ";
- this.btn_openerp_connect.TextAlign = System.Drawing.ContentAlignment.TopRight;
- this.btn_openerp_connect.UseVisualStyleBackColor = true;
- this.btn_openerp_connect.Click += new System.EventHandler(this.btn_openerp_connect_Click);
- //
- // txt_password
- //
- this.txt_password.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.txt_password.Location = new System.Drawing.Point(105, 111);
- this.txt_password.Name = "txt_password";
- this.txt_password.PasswordChar = '*';
- this.txt_password.Size = new System.Drawing.Size(269, 20);
- this.txt_password.TabIndex = 61;
- //
- // txt_username
- //
- this.txt_username.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.txt_username.Location = new System.Drawing.Point(105, 84);
- this.txt_username.Name = "txt_username";
- this.txt_username.Size = new System.Drawing.Size(269, 20);
- this.txt_username.TabIndex = 60;
- //
- // btn_open_server_url_form
- //
- this.btn_open_server_url_form.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btn_open_server_url_form.Image = global::OpenERPOutlookPlugin.Properties.Resources.Search;
- this.btn_open_server_url_form.ImageAlign = System.Drawing.ContentAlignment.BottomLeft;
- this.btn_open_server_url_form.Location = new System.Drawing.Point(299, 28);
- this.btn_open_server_url_form.Name = "btn_open_server_url_form";
- this.btn_open_server_url_form.Size = new System.Drawing.Size(75, 23);
- this.btn_open_server_url_form.TabIndex = 57;
- this.btn_open_server_url_form.Text = "C&hange ";
- this.btn_open_server_url_form.TextAlign = System.Drawing.ContentAlignment.TopRight;
- this.btn_open_server_url_form.UseVisualStyleBackColor = true;
- this.btn_open_server_url_form.Click += new System.EventHandler(this.btn_open_server_url_form_Click);
- //
- // txt_server_config
- //
- this.txt_server_config.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.txt_server_config.Location = new System.Drawing.Point(105, 30);
- this.txt_server_config.Name = "txt_server_config";
- this.txt_server_config.ReadOnly = true;
- this.txt_server_config.Size = new System.Drawing.Size(186, 20);
- this.txt_server_config.TabIndex = 56;
- this.txt_server_config.TabStop = false;
- this.txt_server_config.TextChanged += new System.EventHandler(this.txt_server_config_TextChanged);
- //
- // lbn_password
- //
- this.lbn_password.AutoSize = true;
- this.lbn_password.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.lbn_password.Location = new System.Drawing.Point(33, 114);
- this.lbn_password.Name = "lbn_password";
- this.lbn_password.Size = new System.Drawing.Size(69, 13);
- this.lbn_password.TabIndex = 66;
- this.lbn_password.Text = "Password :";
- //
- // lbn_username
- //
- this.lbn_username.AutoSize = true;
- this.lbn_username.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.lbn_username.Location = new System.Drawing.Point(34, 86);
- this.lbn_username.Name = "lbn_username";
- this.lbn_username.Size = new System.Drawing.Size(71, 13);
- this.lbn_username.TabIndex = 65;
- this.lbn_username.Text = "Username :";
- //
- // lbn_dbname
- //
- this.lbn_dbname.AutoSize = true;
- this.lbn_dbname.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.lbn_dbname.Location = new System.Drawing.Point(34, 57);
- this.lbn_dbname.Name = "lbn_dbname";
- this.lbn_dbname.Size = new System.Drawing.Size(69, 13);
- this.lbn_dbname.TabIndex = 64;
- this.lbn_dbname.Text = "Database :";
- //
- // lbn_server
- //
- this.lbn_server.AutoSize = true;
- this.lbn_server.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.lbn_server.Location = new System.Drawing.Point(34, 30);
- this.lbn_server.Name = "lbn_server";
- this.lbn_server.Size = new System.Drawing.Size(72, 13);
- this.lbn_server.TabIndex = 63;
- this.lbn_server.Text = "Server :";
- //
- // tb1
- //
- this.tb1.Controls.Add(this.tbconfigsetting);
- this.tb1.Controls.Add(this.tbabout);
- this.tb1.Dock = System.Windows.Forms.DockStyle.Fill;
- this.tb1.Location = new System.Drawing.Point(0, 0);
- this.tb1.Name = "tb1";
- this.tb1.SelectedIndex = 0;
- this.tb1.Size = new System.Drawing.Size(442, 341);
- this.tb1.TabIndex = 40;
- this.tb1.Tag = "";
- //
- // frm_openerp_configuration
- //
- this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.ClientSize = new System.Drawing.Size(442, 341);
- this.Controls.Add(this.btn_main_close);
- this.Controls.Add(this.tb1);
- this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Fixed3D;
- this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
- this.MaximizeBox = false;
- this.Name = "frm_openerp_configuration";
- this.Text = "OpenERP Configuration";
- this.Load += new System.EventHandler(this.frm_openerp_configuration_Load);
- this.tbabout.ResumeLayout(false);
- this.groupBox3.ResumeLayout(false);
- ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit();
- this.tbconfigsetting.ResumeLayout(false);
- this.pnconfig.ResumeLayout(false);
- this.pnconfig.PerformLayout();
- this.tb1.ResumeLayout(false);
- this.ResumeLayout(false);
-
- }
-
- #endregion
-
- private System.Windows.Forms.Button btn_main_close;
- private System.Windows.Forms.TabPage tbabout;
- private System.Windows.Forms.GroupBox groupBox3;
- private System.Windows.Forms.PictureBox pictureBox1;
- private System.Windows.Forms.RichTextBox richTextBox1;
- private System.Windows.Forms.TabPage tbconfigsetting;
- private System.Windows.Forms.Panel pnconfig;
- private System.Windows.Forms.CheckBox chkpwd;
- private System.Windows.Forms.TextBox txt_dbname;
- private System.Windows.Forms.ComboBox combo_config_database;
- private System.Windows.Forms.Button btn_openerp_connect;
- private System.Windows.Forms.TextBox txt_password;
- private System.Windows.Forms.TextBox txt_username;
- private System.Windows.Forms.Button btn_open_server_url_form;
- private System.Windows.Forms.TextBox txt_server_config;
- private System.Windows.Forms.Label lbn_password;
- private System.Windows.Forms.Label lbn_username;
- private System.Windows.Forms.Label lbn_dbname;
- private System.Windows.Forms.Label lbn_server;
- private System.Windows.Forms.TabControl tb1;
-
- }
-}
\ No newline at end of file
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_openerp_configuration.cs b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_openerp_configuration.cs
deleted file mode 100644
index f5f4909511d..00000000000
--- a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_openerp_configuration.cs
+++ /dev/null
@@ -1,216 +0,0 @@
-/*
- OpenERP, Open Source Business Applications
- Copyright (c) 2011 OpenERP S.A.
-
- 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 .
-*/
-
-
-using System;
-using System.Drawing;
-using System.Windows.Forms;
-using System.Diagnostics;
-using OpenERPClient;
-
-namespace OpenERPOutlookPlugin
-{
-
-
- public partial class frm_openerp_configuration : Form
- {
- public string combodb_val;
- public string url;
- private ConfigManager config_manager;
-
- public frm_openerp_configuration()
- {
- InitializeComponent();
-
- }
-
- void load_dbname_list()
- {
- combo_config_database.Items.Clear();
- OpenERPOutlookPlugin openerp_outlook = Cache.OpenERPOutlookPlugin;
- OpenERPConnect openerp_connect = openerp_outlook.Connection;
- try
- {
- if (openerp_connect.URL != null && openerp_connect.URL != "")
- {
- object[] res_dblist = openerp_connect.DBList();
- foreach (var selection in res_dblist)
- {
- combo_config_database.Items.Add(selection);
- }
- }
- }
- catch
- {
- this.setdblist(openerp_connect.DBName);
- }
- }
- public void setdblist(string dbname)
- {
- txt_dbname.Visible = true;
- txt_dbname.Text = dbname;
- combo_config_database.Visible = false;
- }
- private void frm_openerp_configuration_Load(object sender, EventArgs e)
- {
- try
- {
- this.config_manager = new ConfigManager();
- this.config_manager.LoadConfigurationSetting();
-
-
- OpenERPOutlookPlugin openerp_outlook = Cache.OpenERPOutlookPlugin;
- OpenERPConnect openerp_connect = openerp_outlook.Connection;
- if (this.txt_server_config.Text != "")
- {
- openerp_connect.URL = this.txt_server_config.Text;
- }
- if (openerp_connect.rempwd == true)
- {
- this.txt_password.Text = Tools.DecryptB64Pwd(openerp_connect.pswrd);
- this.chkpwd.Checked = true;
- }
- if (openerp_connect.URL != null)
- {
- this.txt_server_config.Text = openerp_connect.URL;
- this.txt_username.Text = openerp_connect.UserId;
- try
- {
- object[] res_dblist = openerp_connect.DBList();
- foreach (string selection in res_dblist)
- {
- if (openerp_connect.DBName != "" && selection == openerp_connect.DBName)
- this.combo_config_database.SelectedText = openerp_connect.DBName;
-
- }
- this.load_dbname_list();
- }
- catch
- {
- this.setdblist(openerp_connect.DBName);
- }
-
- }
-
-
- }
- catch(Exception ex)
- {
- Connect.handleException(ex);
- }
-
- }
-
- private void btn_main_close_Click(object sender, EventArgs e)
- {
- this.Close();
- }
-
- private void btn_openerp_connect_Click(object sender, EventArgs e)
- {
-
- try
- {
- url = txt_server_config.Text;
- string dbname;
- if (txt_dbname.Visible == true)
- {
- dbname = txt_dbname.Text;
- }
- else
- {
- dbname = combo_config_database.Text;
- }
- OpenERPOutlookPlugin openerp_outlook = Cache.OpenERPOutlookPlugin;
- OpenERPConnect openerp_connect = openerp_outlook.Connection;
- openerp_connect.URL = url;
- openerp_connect.DBName = dbname;
- openerp_connect.UserId = txt_username.Text;
- openerp_connect.rempwd = chkpwd.Checked;
- if (chkpwd.Checked)
- {
- openerp_connect.pswrd = Tools.EncryptB64Pwd(txt_password.Text);
- }
- else
- openerp_connect.pswrd = "";
- if (openerp_connect.Login(openerp_connect.DBName, openerp_connect.UserId, txt_password.Text) != 0)
- {
- openerp_outlook.Connection = openerp_connect;
- Cache.OpenERPOutlookPlugin = openerp_outlook;
- this.config_manager.SaveConfigurationSetting();
-
- Connect.displayMessage("Successfully login to OpenERP.");
- this.Close();
- }
-
- }
- catch (Exception)
- {
- MessageBox.Show("Authentication Error!\nInvalid Database.", Form.ActiveForm.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
- }
-
- }
-
- private void btn_open_server_url_form_Click(object sender, EventArgs e)
- {
- frm_openerp_connection openerp_connection = new frm_openerp_connection(this.txt_server_config);
-
- openerp_connection.Show();
-
- }
-
- private void txt_server_config_TextChanged(object sender, EventArgs e)
- {
- try
- {
- OpenERPOutlookPlugin openerp_outlook = Cache.OpenERPOutlookPlugin;
- OpenERPConnect openerp_connect = openerp_outlook.Connection;
- openerp_connect.URL = txt_server_config.Text;
- this.combo_config_database.Text = "";
- this.txt_dbname.Text = "";
- try
- {
- openerp_connect.DBList();
- this.load_dbname_list();
- if (txt_dbname.Visible)
- txt_dbname.Visible = false;
- combo_config_database.Visible = true;
- }
- catch
- {
- if (combo_config_database.Visible)
- combo_config_database.Visible = false;
- this.txt_dbname.Visible = true;
- }
- this.txt_username.Text = "";
- this.txt_password.Text = "";
- }
- catch (Exception ex)
- {
- Connect.handleException(ex);
- }
- }
-
- private void richTextBox1_LinkClicked(object sender, LinkClickedEventArgs e)
- {
- System.Diagnostics.Process.Start("http://www.openerp.com",e.LinkText);
- }
- }
-
-}
-
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_openerp_configuration.resx b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_openerp_configuration.resx
deleted file mode 100644
index ff190785fec..00000000000
--- a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_openerp_configuration.resx
+++ /dev/null
@@ -1,455 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- text/microsoft-resx
-
-
- 2.0
-
-
- System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
-
-
- iVBORw0KGgoAAAANSUhEUgAAAL4AAAAuCAYAAACWEqPeAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
- YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAFERJREFUeF7tnWus
- VcUVx9vEL37zm59M4web1tKIzxqx1JKQlNaQ2MSm1NpGTUhpKWithlLbWqKmvtAYn41W4rsG0JJiLbX4
- AIpWqYAvRLgCl/cFvPeC78d0fsP5b9eZO3P23oeDveUekp19z95rr1mz5j9r1mP25vPOuc91/3U1MOI0
- APC7R1cHIw0DXdB3J/6IxMCI7PRIs27d/g5d0bvA71r8EYmBEdnprgXsxjRd4Hct/ojEQEc63f/aa65v
- /jy3/eab3NYrZrltf7jK7bz9Vrd78T/d3p07vYE9tCzMypUr3WWXXebGjRvnrrvuutL+PfLII+7KK690
- W7dubaJ9+eWX3VlnneWOOuooN2bMGHfqqad27Dj22GPdueee617zY5PT/6JFi0K7o0aNqt3+ySef7MaO
- HesmTpzopk2b5u67774h/asy7jfecIMbPXq0g187/T/zzDNDP+GzfPny0rGQTG0Df3DjRrfjzj+6jZO+
- 59Yd/1X3xpePceuO+4pbd+LocOb3G6O+5DZO/HaYCP2rV1UWqorCOknT39/vdmzf7vbs2ZOVcf369e7y
- yy8Pg33kkUe6ww47jAKIO/roo91TTz0VngPcDB5gBgiS8aKLLgq0M2bMGML/jjvuCPy43+njxBNOcC++
- +GJLvSPT4YcffkBtowt4HHPMMW7SpElu8eLFDp1WGSP0Cnilz3Z1QPvocfz48e6WW25xu3fvbtl+beDv
- 3bUrAHndSaP3g90Dfdv117g9y5a6gTfecIObNrqBta+73Yv+7nqnTN4/AaDzk4PVoIoyPiua3t5eN3Pm
- zGBxjzjiiHDWwFkZnnvuOYcFTQ0KA3b++ecHqxPfP/vss93s2bPDwE6dOjUAg0lhee/0KyLX2h3wVs8B
- /BUrVrTU+erVq4PF73T76HHDhg2VxvuBBx4I+u+kDOj6iSeeyLZfC/iA+80J4wtr3jt9qhvcti3LfK+3
- oLg8Aj8rwKbJF1RSxsEG/9q1a92ECROyYAa0WCPkuPrqqw9oUAA9fJhAskqySLg/TIxODrp4VQE+EyM3
- qQ9UJqyvdNhqPO+5556OAx/ZWQW0GsftVwb+rgV/Ca5LAPGxX3SAvgo4WSGw9IXl927QlhmXVnq2Cv92
- aACd3I9Wg4sbw7KJRW9Fd8kllwQF4+ak6LB+khPXg5UFl4lryJICPhME4HLgA9c58JflepT5vTng4/sj
- tw4Mgf2Nb3/GGWcE+VpZa4xGmdsxZ86cITxYSVlFiR8wHPbg2uTJk4M86A4Zcu4ausCNbQv4u/+x6FOr
- 7UGP1d83MFAZvLg/co2YAOtPO8Xteebpys+3A+5Wzzz++OMdsbC4CAwAvr2W9QULFjhAwqTRYAAMrFoM
- flYcBiXlJl188cUHpJ/nn38+gCVn8SRLDviPPvpo5fb7+voc7goTOp74rCatAmzkSAEf3fX09FSWYY0P
- 4hmLOFbgN4mI2sAfWL+uCbQErvjvdcC4d8cOt9mvENbl6f35T2vxqNNeK1qsD6BqZcGxtvjdZAqWLFni
- Nm3aFICLlWb55h7KfOihhwJwcZvuuusut3pVcwDPc7fddlvw7ZkcVi4CQLk9TJRYHlakTvW5FZ8c8G1w
- XlUOnkkF6rh4rXjkgF82YVI8Wali8KP/2sDv/dlPmqz9hrO/W3tA8PW333D9p3y81e/55ljH9apK7RQd
- 1omAFuUooGU5BHykJnEN4uzORp/BIiVJGtPKsWzZMnfNNdc47r/00kthoqyKwA89bRLExn2YO3ducLlI
- i8bAnz59+meimxdeeCHp4997772129/m471UvMAkbwf4r776am0Z0GcMfFaPWsB/6z8rmsCKj7/z/voK
- AeCkPguLj7sz5lT31vP/TnYMemIKAuEdt948hGbf4GB4duusy93Gc38QznsTflxK2ft8zLHl4T+7Z8+Z
- 5J75+hi36pzvu76SFezp2de7u79wVAjUY55Y+1c8eAbmz3VPnn6ae+aC82pNaFYM/OX/lcXvJPA3vPlm
- WN3ivpTFGTmL3w7wMSIx8HE7awEfQDWB9ZQTHPn7utY3CXzv5xM7xLz6V77oNnowql3qAJaGeKFpFWrU
- C5C1lVy4W9tvvMH1nHx8qDP0nnic2+TjFQ6u7bxnzpDnSc8y+US36bwfDQH1vmeXh1oF8kIH350PPVhZ
- R7msDgHcEN343Dj5cR26T3B9++23V27T8s0Bvx1XB3cuDnQBHYW6dix+HR+fVRr3M+Xjo5/KwAcob37n
- W01uDsWquqCHPqQ15/ypeRJ97SS362+PFfyCO+Qrv3ai8Te1ALVJOpUgmdoBK4albZUmfcu7Lz3jx4Vs
- FG3Ajwm0+cJpn04wv3KwknCPwD2kYT29bQN623/qF7G8yGX7VaavHPABEKDBgnJOHdxTQEn2qayt1P0c
- 8HHDqvLDMuM+prI7gDGVVbG8c1kdXM+77747HMRQOvhN4Y+MEQU4sjupwJqVB9crVU/IpjP75j5cVGSV
- wmy3ABVA7a1t0+phMjuDvpC0+RcXup6xpzmsqi16bbv26jAABNRkg2SZ9zz1ZBM/XJ7UQO3664KCjsKb
- pdn12MJPge8nNXIO+qILvJCFswU/fQgT2fvrWy79ZYhTSM32fOP0gg8xEFs4qoKmU3n8O++8s3KbVrYc
- 8AEMbgMpS4J6e+gaaUQAl6u6wqOKu5IC/oHWEPR8bgJngR+sobV4+PcP3t+WcgNQPEAs8AEWrgSDgHsj
- S9z/6isFHdYTd4jMEilUwK5BYwsEll88mTAx2IgDtJ0CQMbFNvYX6XncJ55/y7suAvieJc8U2y+CJfcT
- BRpArxVmcMuW8Lf4xKtC2QQYrsA/UOCR6o2TATldHAzgMxlJNuTazAI/uAaN7Qbad9Nu7h3AWUsOP4Cc
- EgqwqV1oCLBZDfp8QGrpY+CTLrX3adNOtjgGCLGCT6nSFn1N9c3WL7D+PMME7Z06pWiLyVVUsz0vTeAy
- wOt+DvhkInAdyg7VCkibVm2zisVvF/ikM3F74g15rWTrJPABPPUR0tCt2swCv9hopr02PiDs9ym7dpSL
- K2PdAbJDgDnmhY+969H5RXWYGEO7PYdYc++327pA7Ibh1+s+LomtPeDS4PYE0PuVJ+eTs8KJx5Zf/ypM
- Pqy7zSBZVyqsCgv/WktHOeBPmTIlVDzxjzdv3pw8uAcNleWbbtofu9Q9cq4OFpuaBe6ODn7j5qSqpMQb
- 1DrKqrQp+XI+PpVw237qb2QiFY2+8PtJK1fRQR74jR2X1t/G5ajCdAhIvVVs8u8JbBMACRvgZl9XAJ/J
- l/XdNUEalWC7IhCc2kAZN0eBKytI8N39c6wSbKjL9Yn4QpVmVixWiDgTZWMX2hlYs6aWjnLAr1PAokaQ
- qhNUGasc8OfNm5ftB1mSGPxY2qVLl9bqu+TrROW2Sl8tTWVXBxC2A/xgXQXmxuoRpyglECuDdYmCj5/I
- scc8cTUs4IgdBG6Au+GsiSHFCHBpGxeobPUa8Dnpwnf3sQ7ZpNiNwb+XuxQyUBX3L9kByAF/uBewCHZj
- d4jMU1WLa3XQycpt1QmQBX7wj01wC/DLwJJqFDDb1CMASuXMeRbAWtpUwBro/MpDarUITE3Kk/tYdbs3
- iIkBaHF/ZPnLFESQixtU1BP8KhEXyYb49zfdWNviDVfg271FKV2xDQGgx+Bn3xFbNcr0WwX4VTJCddqp
- ZPFZ0i148MtTBadWDYf8vS8MFW4OBaMf/zCrFPL0ol3vi2Xk/lP8bUU5+NXe7bF0+OxNfBLFqTKFFbFG
- YzdqqoIcdqw2VjFSrX0+dVrGN77//wp8+pEqWDER6tYUOlm5rar/rMXHMtoKKtY/zoOXNYIFVzqR53E5
- cq8ixkUuAtJUPjyuCaQmkp1sqYlRJjd9V/ALsHGPSLnGz9n9RyF/71OxZbyrAj/1tlZd3gBz4cL9Kdjc
- kfPxyyy++KW2VOPvl+0KHbYWH8FsgQfgAsaqrsI+H3BZf50MDcWh3ACQftx8ycVNhaAUbb8vf8sdIg0Z
- g43AFutcZeWAPylKXBbbL1wpK7ty/FaeQZ9pIa1p3S1b+a26AS9n8SkMkbGIMytlWQ7u8wwb7wAgO0gP
- JvDZq5Tan0Nx6/XX84mDYQ18hKNY05Q2/N1vSq0aG8GKoM9PmJAD94FgqwEgmNQWCeIJ0ocxfcj6NLYJ
- BCuc2QMSb4+Ic/zwDSuMT1fCRwUrtYfLtd5nntTv+D50uFt2SwfpWXhu9fqhiFX1JftOFbByr0XyfkA7
- wK+zO5M0Ymq7Au8DsGOzbKVKvYFF1og99mXPtnu/NO+LFWNQLfi3zJzhCFrjRrG2xAG4NNDj5mjLQZmA
- BM42FsDNssC2e3kCsPwkyPHk6w42fYocTKQ9/1oW0qgUs6grICcFs5gPGaBixSCGSPjutNEUAzUSAewt
- YhKX9Vf32bJ8sN65BTxlwM+9c1tnrw59IahNbV2YNWtWaaqVVSmeOMjObs+qeqxLVwp8GAJ+rCiuThM4
- vSVnoEn74eMWL6A3Xi+s+mWFULgygaJtA8uLS8OZI67gpjrMBrutv/9tc+XZVKFxlXJ8wvYKP0kkA5Mj
- FWuEANpkvZhIcZBdZTDYcHWwvrLAKjB/fnPgH8vEJrJUQYqi0JoaNQk2iuX27OB25Xx+VgS2ZaeeJUYp
- 2+BWRccpmkrA14NYWSz61quuCOlEAMlkIF1IkIklxaLi/9YRCLDZYBJXB8DpgDfpyDp8cbeCK+PlRD7O
- uCHI3ypOwSXj3QEqwQA5N3kHetaHekCoEXijUNW1sXph1yCfLFHlkVfnOnVggXE1Wn1eZIV/jwAaaON2
- AWPZaqG+8DUDKqdUkFPyEwCzs5LVLcYFE5PnOOBhn2cylW1proMzS1sL+O02UvYcAabNy7e7/bmsne79
- +lsaDlWdDQvgU3XV3iDOWOZDVeHdfg2PyTcsgN9UcMKP9+8CdAEyPAByqI5DKfApP7OvWv4ZZ35z2Dwt
- f+u69mHHz0ITl7NtijLslqRwldhhp3bj3LCuW77QiE73OUse5EuV1SU/g237kmsz1oHlq7YEHP1Wu4Vc
- jZfQA69GMMmGM+mQADPWKzxFEwegos9tWoOXfcaOp72OLGpXvHipPt5jLzni9lJy2LbFy/ZNvLhnJ5xo
- +xq64sxzouNsZS/TAbxbAp+trrz7SQDGpika4ysCBCC6xutfMOJrA9Bw5uAaO/yg1U4/rse7/kiL2g1l
- 5MZjKwNY4E2bVDQ1CalKwh++nFWltDJIXs6SR/R6r5SvAKiftAHQ4Udb0Mbvn1odQMMzyGT7qrboCy9b
- S07pq5Cr8eUG7tNHDT6/eRb6WK8MtNWHQEfuXbSpd2YlB7z1TNl4apx51vZJYwQm4GcnKjqR7jQmcdvo
- XOMgWundYiSFQbUpXUKvv8t0ILmzwEcwOgToPv7447D/AqWy+47rfPOEjAF/I/C1114bPs/x0UcfhYMG
- +CQHz3AADGi4ZoEdtjXoTSpe1o42nNkJxN+ffPJJeB65aJuMAu1xtrLQFnSSlzNtQwM9uWPRiw/95Hjn
- nXfCPbIa0H7wwQdNMlsdYF2gpYLJWf1TWzIK5LOtbsSDPDo0Aj6DyDUBP6VXC0DpQzzoV0pm7vN6IulT
- eOvLB2orN57oA9kBoO2TxlDPqx+MNVhBLuR47733Qv/itrnOfatn9UE6zGFQbcoYQ6/xhl8rHZQCn9kI
- kAEBxOyUgynpJ858jYzO0DgvH9AwM5dB0YxFIHhwcC0FfFtsCgWv6L1Y2ibXSzvw1zdaNPjvv/9+kI+z
- 5KOdVsDnWfgBbPVHfKQYeMED2vi7MAKtrCF8NFlSwOejTfDDKskypoAPH+Ri56MFPv2moKSiUkofyK3J
- zLjE7gL34cObSYyH3tEViFLjCeCZIMjEl9XKgC9LnNpVmWo7Bnr8WxjUmMQYRF/QWOCX6aAU+FgGOi5C
- DQYKYlAYdGjkWwn4CGEHn+tYE5QHP2vxrX9PNgc3R++12lWBv1kxZK0AIgOIHDb20IQsAz6fu4OWz+yp
- P3GOWcBH3rj4ItCyyiATfdMKlAL+u+++G+7Tf62iKeCTswaUTJAY+FavKX1wjZWJVVhGwupQKxOARz/Q
- cF/AT42n3Cb6ySdNyoCvVS/+clqu7TLgk/tvhUFkkowydK10YPWRdXVkpZjxgIKZhRAMjlydDz/80DGo
- MBTYaFiugWYiNAyodQV4JrwX67c/UPWlkqqXz2PQAxo+6S1FAVb2uNBp+bKc+c11WU7kxqJzHRk0cMjH
- csxgiw+AgF4TQEswtFquJZdAiy40cRh0+qgB4KztubiCrIpyDaG1Lpj6BQhl1Szw4cWKpFUJax7rAx5Y
- XPqJ1ROwJbP0g+UGUHJ3rKsTj6dcV7WbAv5LDbdMrg4YQa9acYglcm2XAZ+do5ITPhgEi0GeZ6xlpMp0
- UAn4KJCZri/TMog0Hg+YmDE4CKCDQbBLEFY/Bn4M8Nxv+Xo8jxz6TwewJCyhXEchWn24r4nGfVUv7cDx
- v4HwHIDkOVljrinIsv2xskkH3Ie/XB0qsZIHfeh7LkwqaNEloMQtygGfe5JdBiXWa04fapsznze0MtM/
- VidADMBlNGIf3Y6nJrGuSX+SZ553v2LggxHGSDQEt7m2y4Cfw6CNgWT1JWsrHVQCPkQoqRE8FQFrw8IX
- ll7MGgEtyg7/oMNaKtDVc3GgWAX8DYsb+Iofz8FT8hGEafXhnuThvq432g6AaFgx987bb7v3PB+e179G
- XFP8bvxRrI7qC9fhrz7xnNWX4iOAFtMm9FjEU0aXRT+sbFYfDd5BNrXNOV6l6F9Mi9zqq2S142l1zfUP
- 9sdTxT9+v7s/Bixkh0795Tpy5NputFWsZKnfPK9+SX4zPkW/JWsrHahvnEvz+Ja4+3e3qHSoYKALfD/7
- D5XB7Paj+lh2B70L/BGJgf8CyTGQGzlDYYgAAAAASUVORK5CYII=
-
-
-
-
-
-
- This Outlook Plugin For OpenERP Presently (2011-Today) developed By OpenERP SA.
-
-
-
-
-
-
-
-
- For More Information, Please Visit Our Website
-
- http://www.openerp.com/
-
- Copyright 2006-TODAY OpenERP SA ALL Rights Reserved.
-
-
- 39
-
-
-
- AAABAAEAQEAAAAEAGAAoMgAAFgAAACgAAABAAAAAgAAAAAEAGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAD////////////////////////////+/v7+/v79/f37+/v7+/v7+/v7+/v9/f39/f3+/v7+/v7+/v7+
- /v7+/v7+/v7+/v7+/v79/f39/f39/f79/f79/f79/f7+/v79/f3+/v7////9/f38/Pz+/v7+/v7+/v7/
- ///+/v7+/v7+/v7+/v7+/v7////+/v7+/v7+/v79/f3+/v7+/v7+/v7/////////////////////////
- ///////////////////////////////////////////////+/v7////+/v719fXw8PDx8fH09PT7+/v/
- ///////9/f39/f39/f3+/v39/f3+/v7t7u3d3dv8/Pr///7///3///39/f78/f3u7u7q6ur8/P35+fro
- 6en7+/v////+/v7+/v7+/v79/f39/f3+/v7+/v7+/v7+/v7+/v79/f3////////+/v7+/v7/////////
- ///////////////////////////////////////////////////////////////9/f3+/v7U1NRvb29e
- Xl5hYWFycnKTk5O1tbXS0tLo6Oj9/f3////////7/P/u7/7AwdRmZnS2tczV1f/S0//U1f/X2P3a2/OS
- kpC3t7T////AwLqHiIP09PX+/v77+/z9/f39/f3////////+/v7+/v7+/v79/f3////7+/utra3q6ur/
- ///9/f3////////////////////////////////////////////////////////////////////////8
- /Pz+/v6goKAAAAAAAAAAAAAAAAAAAAAHBwcoKChNTU14eHioqKayssePkeJtb+xYWvNCRMpBQok7Pa0u
- MKM+QbJKTNVaW7ZPUJ55e/SrrN1wcYLMzdz////////////////////GxsaOjo78/Pz////9/f38/Pz/
- //+goKAAAAC2trb////7+/v/////////////////////////////////////////////////////////
- ///////////////9/f3+/v7Ly8shISEAAAABAQEAAAAAAAAAAAAAAAAAAAAAAAAQEA4XFyQQEToUFVMV
- FmccHFsRESAEBBcAABIHBhsQETk6O300NsQqLKJAQXw3OcdPUfWIi++5uc2urquSkpJhYWEjIyMVFRX4
- +Pj////7+/v///+6uroMDAxSUlLr6+v////9/f3/////////////////////////////////////////
- ///////////////////////////////9/f39/f34+Phubm4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB
- AQEAAAEAAAAJCQAKChEBAQAAAAAAAAAAAAEAAAABAQALCxUUFCE3OHkuMd0zNegxM50dHkATExgSEhEK
- CgoCAgIAAABjY2X////6+vn////CwsITExNkZGTr6+v////9/f3+/v7/////////////////////////
- ///////////////////////////////////////////////+/v79/f3////S0tIqKioAAAABAQIAAAAA
- AAAAAAAAAAAAAAEAAAAAAAAoKDg5O8EuL4ADAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWFjU+P5YmJjwE
- BAYAAAEAAAACAgIEBAQAAAANDRDl5eX////////GxsYSEhJra2vx8fH7+/v+/v7+/v7+/v7/////////
- ///////////////////////////////////////////////////////////////+/v7+/v39/f3///+4
- uLQXFxgAAAEAAAAAAAEAAAAAAAAAAAASEgw1NnwyNOMjJuUpKo8GBgAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAABAQAAAAAAAAAAAAEBAQEAAAAAAAEAAAEAAAEPDxWBg9vu7v/IyMQPDxBnZ2f29vb7+/v9/f3+/v7+
- /v7////+/v7////////////////////////////////////////////////////////////+/v7////9
- /f7+/v79/f79/f25uv9BRLYiIkALCxYEBBAHBxIUFCMqK2M6PcUrLuodINclKNhoadVCQkUAAAAAAAAB
- AQEBAQEAAAAAAAAAAABHR0hmZmgODg4AAAAAAAAAAAAAAAERESFDRZ0WFh8dHmtNT68TEwhiYmT7+/r+
- /v79/f3+/v7+/v7////+/v7/////////////////////////////////////////////////////////
- ///+/v/////+/v7+/v/9/f38/P6ys/EqLdggI+QwNOI1N8ElJ6csLrQyNNQsL+khJOEaHdVDRt6ys/H/
- ///b29plZWUuLi4VFRUFBQUAAAAAAAAAAACWlpb///+Li4sxMTEjIyQ1NTNNTWQ1N7slKfYyNJcREQMN
- DQshImOho/H5+f7//v3+/v7+/v7+/v7////+/v7/////////////////////////////////////////
- ///////////////////////+/v/+/v79/f79/f7ExfQzNtscINgkJ9chJNojJuIlKOQkJ+MiJd4jJtgY
- G9VgYuPc3Pj////9/f3////////b29uvr6+NjY1nZ2dJSUlra2vf39/////////f39/Gxsbj4+L09P+W
- mPUnKtksLuMzNFwpK3gvM+YjJt2Iiun39/3+/v7+/v7+/v7+/v7////+/v//////////////////////
- ///////////////////////////////+/v////7+/v/9/f79/f7p6ftKTd8ZHNclKNkkJ9olKNkkJ9gk
- J9gjJtclKNgVGdZlaOTo6Pr////8/P3+/v79/f3+/v7////////////5+fno6Ojz8/P////9/f39/f3/
- //////////////7+/v21t/EqLt0tMNQrL90iJdwhJNcdINiAguj7/P39/f3+/v7+/v7+/v/////+/v//
- ///////////////////////////////////////////////////+/v/+/v77+/3///+Bg+kUF9YmKdkk
- J9kkJ9klKNolKNokJ9omKdoZHNdQU+Hf4Pn8/f79/f3+/v7+/v/////+/v7+/v79/f3+/v7+/v79/f3+
- /v7+/v7+/v7+/v7+/v7+/v79/f7+/v79/f7///+/wPMgItkhJNklKNkkJ9kkJ9kYG9eIiur////7+/3+
- /v7+/v/+/v////7///////////////////////////////////////////////////7+/v/9/f7////Q
- 0fcfItgiJdklKNokJ9klKNokJ9kkJ9kkJ9kgI9gxM9vGxvX///79/f3+/v7+/v////7////+/v7////+
- /v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////+/v/+/v7+/v78/P7///+ur/AUGNcmKdokJ9kkJ9km
- KdkWGdaen+7////8/P7+/v7+/v7////+/v7/////////////////////////////////////////////
- ///+/v78/P3///9hY+MUF9YoK9kkJ9klKNokJ9olKNolKNokJ9kgI9mIier+/v79/f7+/v7+/v/////+
- /v/////////////////////////////////////////////////////+/v7////+/v7///77+/7///9/
- gekSFdYnKtkjJtgkJ9klKNoYG9fAwfT////8/P7+/v7+/v7///////7/////////////////////////
- //////////////7+/v/8/P7////X1/gdINglKNkkJ9klKNokJ9klKNokJ9olKNkjJtk9P93Y2fj////+
- /v7+/v7////+/v////////////////////////////////////////////////////////////////7+
- /v/+/v/+/v7+/v7y8/xGSd8ZHNcmKdkjJtkmKdkhJNkxNNvi4/n////9/f7+/v7+/v7/////////////
- ///////////////////////+/v/////+/v78/f7///99f+gUGNYoK9okJ9klKNolKNolKNokJ9kmKdkg
- I9iEhen////+/v79/f7+/v/+/v7/////////////////////////////////////////////////////
- ///////////+/v/////+/v/+/v78/P39/f65uvIgI9kiJdklKNkjJtknKtkcH9heYeP4+P3///79/f7+
- /v7+/v7////////////////////////////////////+/v/9/f7///76+v09QN0gI9glKNolKNokJ9kk
- J9olKNokJ9omKdksL9rQ0fb////8/P3+/v7+/v//////////////////////////////////////////
- ///////////////////////////////+/v/////+/v7+/v79/f7z8/xqbOUZHdclKNklKNojJtgmKdkg
- I9iYmu3////+/v7+/v7////+/v7///////////////////////////////7+/v/9/f7////KzPUhJdgm
- KdokJ9klKNolKNolKNokJ9omKdofIthYWuL///////79/f7+/v7/////////////////////////////
- ///////////////////////////////////////////////////+/v7////9/f/9/f3///6+vvMsL9oh
- JNkkJ9okJ9kkJ9khJNg9QN3W1/f////+/v7+/v7////////////////////////////////////+/v78
- /P3///+Ymu0bHtcnKtokJ9olKNolKNolKNokJ9ooK9oXGteVl+z////8/P3+/v7+/v////7/////////
- ///////////////////////////////////////////////////////////////////////////+/v/9
- /f3+/v7v8PxiZOQeIdgkJ9klKNokJ9klKNkdINh7fej29v39/f7+/v7////+/v7/////////////////
- ///////////+/v7+/v7///91duccH9gnKtokJ9okJ9olKNokJ9okJ9klKNogI9nKy/X////9/f7/////
- ///+/v//////////////////////////////////////////////////////////////////////////
- ///////+/v/////9/f79/f3///+nqO8lKNkkJ9kkJ9okJ9kkJ9khJNgsL9rJyvX////+/v7+/v7/////
- ///////////////////////////+/v7//v7///5bXeIgI9kmKdokJ9olKNolKNokJ9olKNohJNgwM9v3
- 9/3///79/f7+/v//////////////////////////////////////////////////////////////////
- ///////////////////////////+/v/+/v79/f3///7i4vlER94iJdklKNolKNokJ9kmKNkXGdZrbuXy
- 8vz8/P7+/v////7////////////////////////////+/v7///729v1GSN8jJtkkJ9olKNolKNokJ9ok
- J9omKdobHtdRVOD//////v7+/v7////+/v//////////////////////////////////////////////
- ///////////////////////////////////////////////+/v/+/v7+/v7///96fOgfItkmKdkkJ9kk
- J9okJ9ohJNggI9jLy/X+/v79/f3+/v7////+/v/////////////////////+/v7///7w8Pw8P90lKNkk
- J9klKNolKNolKNokJ9onKtoVGNdwc+b////9/f3+/v7/////////////////////////////////////
- ///////////////////////////////////////////////////////////////////+/v78/P7///+3
- ufIjJtknKtkkJ9klKNokJ9knKtkTFtZuceb8/P78/P7+/v7+/v/////////////////////////9/f7/
- ///j5Po5O9wlKNkkJ9olKNolKNolKNokJ9ooK9oQFNaHiOr////7+/7+/v7/////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- //7+/v/9/f7////q6vo6PN0kJtkkJ9olKNklKNolKNogI9kkJ9nf3/n////9/f7+/v////7/////////
- ///////////9/f7////e3/k2OdwkJ9kkJ9olKNolKNokJ9okJ9ooK9oSFtadnu3////7+/7+/v////7/
- ////////////////////////////////////////////////////////////////////////////////
- ///////////////////+/v/+/v7+/v7///9laOQcINgmKdokJ9olKNokJ9knKtoRFNaGiOn////7+/3+
- /v7////+/v/////////////////9/f7////o6Po6PdwlKNkkJ9olKNolKNolKNokJ9onKtoTFtaipO7/
- ///7+/7/////////////////////////////////////////////////////////////////////////
- ///////////////////////////////+/v/////+/v78/P3///+am+0WGtcoK9okJ9olKNokJ9klKNoe
- Idg2Odz09P3///79/f7+/v/////////////////////+/v7///7y8vw9P90lKNkkJ9klKNolKNolKNok
- J9omKdoWGdewsfH////8/P7////+/v//////////////////////////////////////////////////
- ///////////////////////////////////////////////////////////9/f7////Cw/QeIdgmKdok
- J9kkJ9klKNokJ9knKtkWGda5ufL////8/P7///////7////////////////+/v7///739/1HSt8jJtgl
- KNokJ9olKNolKNokJ9omKdoZHNe/wPP////8/P7/////////////////////////////////////////
- ///////////////////////////////////////////////////////////////////////+/v/9/f7/
- ///t7fsrLtoiJdklKNokJ9okJ9kkJ9onKtoXGtZvceX////8/P3+/v7////+/v/////////////+/v7/
- //7///5bXuMgI9kmKdokJ9olKNolKNokJ9omKdoWGdexsvH////8/P7/////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ///+/v/////+/v7///7///9DRd4eIdgmKdokJ9olKNokJ9olKNohJNk5PNz09P3////9/f7/////////
- ///////////+/v7+/v7///9xdOYdINgmKdokJ9olKNolKNokJ9onKtoTFtaio+7////7+/7/////////
- ////////////////////////////////////////////////////////////////////////////////
- ///////////////////////////+/v7+/v7///9kZuQXGtcnKtokJ9okJ9olKNokJ9kmKdogI9jMzfX/
- ///8/P7+/v////7////////////+/v78/P7///+LjesaHdcnKtokJ9olKNokJ9okJ9ooK9oTFtahou7/
- ///7+/7////+/v7/////////////////////////////////////////////////////////////////
- ///////////////////////////////////////////+/v77/P3///9+f+gSFdYoK9okJ9olKNolKNok
- J9onKtobHteZmu3////8/P7///7///////////////7+/v/8/P7///+ztPEeIdgnKtokJ9olKNolKNok
- J9ooK9oQE9aOkOv////7+/7+/v7/////////////////////////////////////////////////////
- //////////////////////////////////////////////////////////////77+/7///+TlOwRFNYo
- K9okJ9olKNolKNokJ9omKdocH9d0dub////+/v7+/v7////////////////////9/f7////h4fkmKdkm
- KdokJ9klKNolKNokJ9ooK9oSFdZ6fOf////8/P3+/v7/////////////////////////////////////
- ///////////////////////////////////////////////////////////////////////+/v7////7
- +/7///+io+8TFtYnKtokJ9okJ9olKNokJ9olKNogI9hVV+H9/f7///7+/v7////////////+/v/////+
- /v7///7///5ISt8eIdgmKdokJ9okJ9okJ9onKtoXG9djZeT////+/v7+/v7/////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ///////////////8/P7///+3uPIXGtcmKdokJ9olKNolKNolKNokJ9okJ9k+Qd3x8fz///79/f7/////
- ///////////////+/v/7+/7///97fegWGdYnKtokJ9okJ9kkJ9omKdoeIdhFSN7///////7+/v7/////
- ////////////////////////////////////////////////////////////////////////////////
- ///////////////////////////////8/P7///+9vvIYG9cmKdokJ9olKNolKNolKNokJ9kkJ9k3Odzg
- 4Pn////9/f7////////////////////////8/P7////Cw/MXGtcmKdkkJ9klKNolKNolKNojJtksLtrx
- 8fz////9/f7////+/v//////////////////////////////////////////////////////////////
- ///////////////////////////////////////////////8/P7///+8vfIYG9cmKdokJ9olKNolKNol
- KNokJ9olKdkwNNvQ0Pb////9/f7////////////////////+/v/9/f7///739/07Pt0dINgmKdokJ9kl
- KNokJ9kmKdogI9jKy/X////8/P7///////7/////////////////////////////////////////////
- ///////////////////////////////////////////////////////////////8/P7///+8vfIYG9cm
- KdokJ9olKNolKNolKNokJ9olKNkvMtvMzfb////9/f7////////////////+/v/////+/v77+/3///+E
- hekRFNYnKtokJ9klKNokJ9ooK9oXGtebne3////8/P7+/v7////+/v//////////////////////////
- ///////////////////////////////////////////////////////////////////////+/v/////8
- /P7///+9vvMYG9cmKdokJ9olKNolKNolKNokJ9olKNkwMtvNzvb////9/f7/////////////////////
- //7+/v/9/f7////X2PcfItgiJdklKNolKNokJ9kmKdodINhpa+T////+/v7+/v7+/v//////////////
- ////////////////////////////////////////////////////////////////////////////////
- ///////////+/v/7+/7///+2t/IXGtcmKdokJ9olKNolKNolKNokJ9olKNkwMtvNzvb////9/f7/////
- ///////////////////+/v/+/v78/P75+v5hY+MUGNYnKtkkJ9klKNolKNojJtk/Qd3w8Pz///79/f7+
- /v////7/////////////////////////////////////////////////////////////////////////
- //////////////////////////7////7+/7///+jpO4TFtYnKtokJ9olKNolKNolKNokJ9olKNkvMtvN
- zfX////9/f7////////////////////+/v/////+/v78/P3+/v6+vvMaHtcjJdklKNokKNokJ9knKtkl
- J9m9vfP////8/P3+/v7/////////////////////////////////////////////////////////////
- ///////////////////////////////////////////+/v77+/3///+MjesQE9YoK9okJ9olKNolKNol
- KNokJ9olKNk1N9za2vj////9/f7///////////////////////////////7+/v/8/P7t7vxWWeIXGtcm
- KdkkJ9kjJtolKNkgItiAgen////+/v79/f7+/v//////////////////////////////////////////
- ///////////////////////////////////////////////////////////+/v79/f3///9vceUVGNYn
- KtokJ9olKNolKNolKNokJ9kkKNk7Pt3t7fv///79/f7////////////////////////////////+/v79
- /f7+/v60tfIiJdkjJtklKNklKNkkJ9oiJdlFR9/j4/r///79/f3+/v7///7/////////////////////
- //////////////////////////////////////////////////////////////////////7////+/v7/
- //7///9IS+AdINcmKdokJ9olKNolKNokJ9olKNoiJdhQUuH7+/7///7+/v7/////////////////////
- //////////7+/v/+/v7+/v7s7PtgYuMcH9ckJ9kkJ9klKNolKNkmKdmoqfD////9/f39/f7////+/v//
- ////////////////////////////////////////////////////////////////////////////////
- ///////+/v79/f7////o6PopLNojJtklKNolKNolKNokJ9kkJ9omKdodINdxc+b////+/v7+/v7/////
- ///////////////////////+/v/////+/v7+/v7///+8vfMuMdoiJdkkJ9klKNokJ9keIdhfYePt7fv/
- /v79/f3+/v//////////////////////////////////////////////////////////////////////
- ///////////////+/v/////+/v78/P3///+vsPEaHdcnKtokJ9klKNolKNolKNokJ9knKtobHteZm+3/
- ///8/P7+/v7////////////////////////////////+/v7////+/v7+/v77+/53eeceIdgmKdkkJ9kk
- J9oiJdknKtm1tvL///79/f79/f/////+/v7/////////////////////////////////////////////
- ///////////////////////////////////+/v/+/v79/f7///9xc+YbHtgnKtokJ9olKNolKNolKNok
- J9kmKdoiJdjQ0Pf////8/P7+/v////7////////////////////////////////+/v7+/v7+/v7////i
- 4vk8P90iJdklKNkkJ9klKNkaHddfYePv8Pz9/f7+/v/+/v7////+/v7/////////////////////////
- /////////////////////////////////////////////////////v/9/f7////l5Pk3OdwkJ9klKNok
- J9olKNokJ9kkJ9omKdoeIdhHSt////7///79/f7+/v//////////////////////////////////////
- ///+/v7+/v79/f7///+ztfEdINgoK9okJ9klKNkjJtkbHtiur/D9/f78/P7///7+/v7////+/v//////
- ///////////////////////////////////////////////////////////+/v/+/v7+/v79/f3///+X
- mO0gI9gmKdkkJ9klKNolKNolKNokJ9koK9oUF9aNj+v////8/P7+/v/////+/v//////////////////
- ///////////////////////+/v7+/v79/f7///+Ag+kTFtYoK9ojJtgmKdkcH9g2Otzo6Pr///79/f7+
- /v/+/v/////+/v/////////////////////////////////////////////////////////+/v/////+
- /v/+/v7///7m5/pHSt8iJdklKNokJ9klKNokJ9klKNolKNojJtkkJ9nm5vr////9/f3+/v7/////////
- //////////////////////////////////////7+/v/+/v/+/v7+/v7///9bXuIXGtcnKtkjJtgoK9kS
- FdZjZeP7+/78/P7+/v7+/v/+/v7///7////////////////////////////////////////////////+
- /v/////+/v79/f/+/v7+/v7///+PkewgJNglKNkkJ9klKNokJ9klKNokJ9knKtkTFtZ5e+f////8/P3+
- /v7////+/v7////////////////////////////////////////+/v/////+/v/+/v79/f7///7u7/xJ
- S+AaHdcmKdkkJ9koK9oRFNaDhOn7+/79/f79/f7+/v7+/v7+/v7////+/v//////////////////////
- ///////////+/v7////+/v/+/v/+/v79/f3+/v7Cw/QyNNsgI9gkJ9klKNokJ9klKNokJ9klKNoeItgr
- Ltrj5Pr///79/f7///////7////////////////////////////////////////////////+/v/////+
- /v7+/v78/P7///7e3vlER98aHdclKNkkJ9kmKdoWGdaOj+v29v3///79/f79/f7///7+/v7////////+
- /v/////////////////+/v/////////+/v7+/v7+/v78/P3+/v7X2PhMT+AaHdclKNkkJ9olKNolKNok
- J9kkJ9kkJ9kWGdecne3////8/P3+/v/+/v7/////////////////////////////////////////////
- ///////////+/v7////+/v7+/v79/f7+//7R0vdKTd8ZHNcmKNklJ9kkJ9kfIth6e+fs7Pv////9/f79
- /f7+/v/////+/v////////////////7///7////+/v/+/v/+/v79/f77+/3////c3PlQUuEZHNclKNkk
- J9kkJ9kkJ9klKNokJ9klKNkWGddjZeTx8fz+/v7+/v7+/v/////+/v//////////////////////////
- ///////////////////////////////+/v7////9/f7+/v79/v7+/v7Z2fhXWeIWGdYmKdklKNojJtkg
- I9hWWOHIyfX///////78/P78/P79/f7+/v7+/v7+/v7+/v/+/v/+/v7+/v79/f78/P7+/v7////HyPVF
- SN8bHtclKNkkJ9kkJ9klKNolKNokJ9kmKdkZHdhCRd7V1vj9/f7+/v7+/v7+/v//////////////////
- //////////////////////////////////////////////////////7+/v/9/f7+/v7+/v7///7r7Ptx
- c+YUF9YjJtkoK9okJ9kgI9gqLdp6fOjk5Pr///////7///78/f38/P78/P78/P78/P78/P39/f7///7/
- ///4+f2PkessL9sgI9glKNkkJ9kkJ9klKNolKNojJtknKtkeIdg1ONzHyPX+/v79/v7+/v7+/v7////+
- /v/////////////////////////////////////////////////////////////////+/v////7+/v/+
- /v7+/v7+/v78/P3///+kpe8iJtgXG9coK9omKdolKNkaHdcoK9pwcubExfT09Pz///7///7/////////
- //////7////l5vqam+0+Qd0bHtgmKdkkJ9kkJ9klKNolKNokJ9kkJ9koK9oeIdgxM9vIyfX////9/f3+
- /v79/f7////+/v7/////////////////////////////////////////////////////////////////
- ///////////+/v7////+/v7+/v79/f77+/3////h4fldX+MaHdggI9gmKdkoK9okJ9kWGtYVGNYyNdxZ
- W+F9fuiUleyZmu2Vlu13eOdPUeAmKdoTFtYfItgnKtkkJ9okJ9klKNolKNokJ9olKNkmKdkaHddKTd/d
- 3vn////8/P3+/v7+/v////7+/v//////////////////////////////////////////////////////
- ///////////////////////////////+/v7////+/v7+/v7+/v78/P7///////61tvJPUeAmKdofItgi
- JdkmKdknKtkfItgXG9cTF9YRFNUQE9UQE9UTFtYYG9chJdgoK9olKNokJ9klKNolKNolKNkjJtkiJdke
- ItgtMNuIiur8/P3////8/P3+/v7+/v/+/v7/////////////////////////////////////////////
- ///////////////////////////////////////////////////+/v7////+/v/+/v/+/v79/f79/f7/
- ///4+P21tvJsbuU8Pt0kJ9kcH9ceIdghJNgkJ9kmKdknKtkoK9ooK9onKtomKdolKNokJ9kjJtkgI9kd
- IdgcH9ghJdg7Pt11d+fT0/f////+/v78/P7+/v7+/v/+/v7////+/v//////////////////////////
- ///////////////////////////////////////////////////////////////////////+/v//////
- ///+/v7////9/f39/f7///7////9/f7T1Pepq/B8fuhVV+E5O90oK9obHtcYG9cXG9cXGtcXGtcXG9cX
- GtcXGtcbHdcpLNlAQt5oauScne3V1vf///7////8/P3+/v7+/v7+/v7////////+/v//////////////
- ////////////////////////////////////////////////////////////////////////////////
- ///////////////+/v7////+/v7+/v7+/v79/f79/f7+/v7///7////5+v3l5fnU1ffCwvSurvCanO2K
- jOp9fuh+f+h9f+iBg+mTleyrrPDDxfTZ2fjv7/v////////+/v79/f79/f3////+/v7////+/v7/////
- ////////////////////////////////////////////////////////////////////////////////
- ///////////////////////////////////////////////+/v7+/v7+/v7+/v79/f79/f39/f79/f7+
- /v7////+/v77+/74+P319f319f319f329v35+f79/f7////+/v78/P79/f7+/v7+/v7+/v7+/v7/////
- ///+/v7/////////////////////////////////////////////////////////////////////////
- ///////////////////////////////////////////////////////////+/v7////////+/v/+/v/+
- /v/+/v7+/v7+/v79/f39/f79/f79/f78/P78/P78/P78/P78/P78/P79/f7+/v79/f7+/v/+/v7///7+
- /v7+/v7////+/v7///////////////////////////////////////////////////8AAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
-
-
-
\ No newline at end of file
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_openerp_connection.Designer.cs b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_openerp_connection.Designer.cs
deleted file mode 100644
index ce88d2e713d..00000000000
--- a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_openerp_connection.Designer.cs
+++ /dev/null
@@ -1,163 +0,0 @@
-namespace OpenERPOutlookPlugin
-{
- partial class frm_openerp_connection
- {
- ///
- /// Required designer variable.
- ///
- private System.ComponentModel.IContainer components = null;
-
- ///
- /// Clean up any resources being used.
- ///
- /// true if managed resources should be disposed; otherwise, false.
- protected override void Dispose(bool disposing)
- {
- if (disposing && (components != null))
- {
- components.Dispose();
- }
- base.Dispose(disposing);
- }
-
- #region Windows Form Designer generated code
-
- ///
- /// Required method for Designer support - do not modify
- /// the contents of this method with the code editor.
- ///
- private void InitializeComponent()
- {
- System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(frm_openerp_connection));
- this.groupBox1 = new System.Windows.Forms.GroupBox();
- this.chkSSL = new System.Windows.Forms.CheckBox();
- this.txt_server_port = new System.Windows.Forms.TextBox();
- this.txt_server_host = new System.Windows.Forms.TextBox();
- this.label3 = new System.Windows.Forms.Label();
- this.label2 = new System.Windows.Forms.Label();
- this.btn_server_ok = new System.Windows.Forms.Button();
- this.btn_server_close = new System.Windows.Forms.Button();
- this.groupBox1.SuspendLayout();
- this.SuspendLayout();
- //
- // groupBox1
- //
- this.groupBox1.Controls.Add(this.chkSSL);
- this.groupBox1.Controls.Add(this.txt_server_port);
- this.groupBox1.Controls.Add(this.txt_server_host);
- this.groupBox1.Controls.Add(this.label3);
- this.groupBox1.Controls.Add(this.label2);
- this.groupBox1.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.groupBox1.Location = new System.Drawing.Point(22, 13);
- this.groupBox1.Name = "groupBox1";
- this.groupBox1.Size = new System.Drawing.Size(202, 123);
- this.groupBox1.TabIndex = 14;
- this.groupBox1.TabStop = false;
- this.groupBox1.Text = "Connection Parameter";
- //
- // chkSSL
- //
- this.chkSSL.AutoSize = true;
- this.chkSSL.Location = new System.Drawing.Point(15, 86);
- this.chkSSL.Name = "chkSSL";
- this.chkSSL.Size = new System.Drawing.Size(89, 17);
- this.chkSSL.TabIndex = 19;
- this.chkSSL.Text = "SSL (https)";
- this.chkSSL.UseVisualStyleBackColor = true;
- this.chkSSL.CheckedChanged += new System.EventHandler(this.chkSSL_CheckedChanged);
- //
- // txt_server_port
- //
- this.txt_server_port.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.txt_server_port.Location = new System.Drawing.Point(58, 60);
- this.txt_server_port.Name = "txt_server_port";
- this.txt_server_port.Size = new System.Drawing.Size(138, 20);
- this.txt_server_port.TabIndex = 18;
- this.txt_server_port.Text = "8069";
- //
- // txt_server_host
- //
- this.txt_server_host.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.txt_server_host.Location = new System.Drawing.Point(58, 34);
- this.txt_server_host.Name = "txt_server_host";
- this.txt_server_host.Size = new System.Drawing.Size(138, 20);
- this.txt_server_host.TabIndex = 17;
- this.txt_server_host.Text = "localhost";
- //
- // label3
- //
- this.label3.AutoSize = true;
- this.label3.Location = new System.Drawing.Point(24, 59);
- this.label3.Name = "label3";
- this.label3.Size = new System.Drawing.Size(34, 13);
- this.label3.TabIndex = 16;
- this.label3.Text = "Port:";
- //
- // label2
- //
- this.label2.AutoSize = true;
- this.label2.Location = new System.Drawing.Point(12, 34);
- this.label2.Name = "label2";
- this.label2.Size = new System.Drawing.Size(48, 13);
- this.label2.TabIndex = 15;
- this.label2.Text = "Server:";
- //
- // btn_server_ok
- //
- this.btn_server_ok.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btn_server_ok.Image = global::OpenERPOutlookPlugin.Properties.Resources.Success;
- this.btn_server_ok.ImageAlign = System.Drawing.ContentAlignment.TopLeft;
- this.btn_server_ok.Location = new System.Drawing.Point(96, 149);
- this.btn_server_ok.Name = "btn_server_ok";
- this.btn_server_ok.Size = new System.Drawing.Size(49, 23);
- this.btn_server_ok.TabIndex = 13;
- this.btn_server_ok.Text = "&OK ";
- this.btn_server_ok.TextAlign = System.Drawing.ContentAlignment.TopRight;
- this.btn_server_ok.UseVisualStyleBackColor = true;
- this.btn_server_ok.Click += new System.EventHandler(this.btn_server_ok_Click);
- //
- // btn_server_close
- //
- this.btn_server_close.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btn_server_close.Image = global::OpenERPOutlookPlugin.Properties.Resources.Error;
- this.btn_server_close.ImageAlign = System.Drawing.ContentAlignment.BottomLeft;
- this.btn_server_close.Location = new System.Drawing.Point(160, 149);
- this.btn_server_close.Name = "btn_server_close";
- this.btn_server_close.Size = new System.Drawing.Size(64, 23);
- this.btn_server_close.TabIndex = 12;
- this.btn_server_close.Text = "&Close ";
- this.btn_server_close.TextAlign = System.Drawing.ContentAlignment.TopRight;
- this.btn_server_close.UseVisualStyleBackColor = true;
- this.btn_server_close.Click += new System.EventHandler(this.btn_server_close_Click);
- //
- // frm_openerp_connection
- //
- this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.ClientSize = new System.Drawing.Size(246, 184);
- this.Controls.Add(this.groupBox1);
- this.Controls.Add(this.btn_server_ok);
- this.Controls.Add(this.btn_server_close);
- this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Fixed3D;
- this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
- this.Name = "frm_openerp_connection";
- this.Text = "OpenERP Connection";
- this.Load += new System.EventHandler(this.frm_openerp_connection_Load);
- this.groupBox1.ResumeLayout(false);
- this.groupBox1.PerformLayout();
- this.ResumeLayout(false);
-
- }
-
- #endregion
-
- private System.Windows.Forms.Button btn_server_ok;
- private System.Windows.Forms.Button btn_server_close;
- private System.Windows.Forms.GroupBox groupBox1;
- private System.Windows.Forms.CheckBox chkSSL;
- private System.Windows.Forms.TextBox txt_server_port;
- private System.Windows.Forms.TextBox txt_server_host;
- private System.Windows.Forms.Label label3;
- private System.Windows.Forms.Label label2;
- }
-}
\ No newline at end of file
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_openerp_connection.cs b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_openerp_connection.cs
deleted file mode 100644
index 5e09fc153a2..00000000000
--- a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_openerp_connection.cs
+++ /dev/null
@@ -1,108 +0,0 @@
-/*
- OpenERP, Open Source Business Applications
- Copyright (c) 2011 OpenERP S.A.
-
- 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 .
-*/
-
-
-using System;
-using System.Windows.Forms;
-using OpenERPClient;
-using System.Net;
-using System.IO;
-using System.Text;
-using System.Security;
-using System.Net;
-using System.Security.Cryptography.X509Certificates;
-using System.Net.Security;
-
-namespace OpenERPOutlookPlugin
-{
- public partial class frm_openerp_connection : Form
- {
- TextBox txtServerURL;
- public frm_openerp_connection()
- {
- InitializeComponent();
- }
- public frm_openerp_connection(TextBox txt)
- {
- InitializeComponent();
- this.txtServerURL = txt;
- }
-
- private void frm_openerp_connection_Load(object sender, EventArgs e)
- {
- if (this.txtServerURL.Text != "")
- {
- string[] url = Tools.SplitURL(this.txtServerURL.Text);
- this.txt_server_port.Text = url[2];
- this.txt_server_host.Text = url[1];
- if (url[0] == "https")
- this.chkSSL.Checked = true;
- else
- this.chkSSL.Checked = false;
- }
- }
-
- public static bool ValidateServerCertificate(
- object sender,
- X509Certificate certificate,
- X509Chain chain,
- SslPolicyErrors sslPolicyErrors)
- {
- // Somehow the cert always has PolicyErrors so I am returning true regardless.
- return true;
- }
-
- private void btn_server_ok_Click(object sender, EventArgs e)
- {
- try
- {
- OpenERPOutlookPlugin openerp_outlook = Cache.OpenERPOutlookPlugin;
- OpenERPConnect openerp_connect = openerp_outlook.Connection;
- string url = Tools.JoinURL(this.txt_server_host.Text, this.txt_server_port.Text, this.chkSSL.Checked);
- this.txtServerURL.Text = url;
- if (this.chkSSL.Checked)
- {
- ServicePointManager.ServerCertificateValidationCallback += new RemoteCertificateValidationCallback(ValidateServerCertificate);
- }
- this.Close();
- }
- catch (Exception ex)
- {
- Connect.handleException(ex);
- }
- }
-
- private void btn_server_close_Click(object sender, EventArgs e)
- {
-
- this.Close();
- }
-
- private void chkSSL_CheckedChanged(object sender, EventArgs e)
- {
- if (this.chkSSL.Checked)
- {
- txt_server_port.Text = "443";
- }
- else
- {
- txt_server_port.Text = "8069";
- }
- }
- }
-}
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_openerp_connection.resx b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_openerp_connection.resx
deleted file mode 100644
index 9477f7baa89..00000000000
--- a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_openerp_connection.resx
+++ /dev/null
@@ -1,180 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- text/microsoft-resx
-
-
- 2.0
-
-
- System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
-
-
- AAABAAEAICAAAAEAGACoDAAAFgAAACgAAAAgAAAAQAAAAAEAGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAxO+0UHsorMtUkJMo6LOY5JN81HsdDLM4/JMdINcBISKJCSpA+RpM9SJo6RJsxPJg2PJ84PKU4OadA
- Pbs7L8lANd8qJNUiJtIZKModMNcUJOIUHu0iJvsaIOUaJsQuQMkXHNcvNOciJsstLNAvItJSQekqG6xQ
- QchYSNKOg/3Cw//Q2f/P1f/S2P/T3P/R2P+iqP+7vv9vct8zM6k0Lbg6NcwcGroyN9oiLs4eLdccKOQg
- KvMkKfYaIuEbJsgnOMkdGuUeHd4+PeseHLxAONI9N7p4edSzt//W1v/k4//h6P/f5v/Dw/+2tf+1t/+0
- tv/Kzv/Y3f/S1f/U2P/Fyf8iKJlOVNMtM8IuM9UjKtgdJd0aI98bJN8nMOUqNN8dKc0pIPMnIOUvK9g5
- N8w4NLWGiObR4P/k9//k7//K0/+JkeRWW8I5N78uKcAvLL4wMrxCR8hTWNKOlP/a4v/Z4//W4v+Ai+cx
- OaooKr4mJ88sLuAjKNsWIMwoMt4yOusZI9QnHO42Le8lIME+Pb2Dg+fk7//o///b9/ff8v+OnN5ET6sx
- NrE3MdIyKdcvKsszNscxOL0uN7YkKqdvduPc6f/Y6v/f8P/F0v9PUMg1MMc0MNY4OOQlK9AdJs4iLN4c
- J90sIucvKdovL7lcX8fm6v/q9v/m/vbl//yQocxRXa8jLp4sML83MeIsJNwnJsoxNckjLrRATNBARNIo
- K6srN4/c7f/a7f/k8//Kzf9pZN0nHrQrJskyNNgkLNMbJdYgK+AxK9wxL8k+RK/N1f/s8v/r9v/Y6uvq
- +/9UW6o2ObMlKbgpK88vKuMqJt0sL801PcwwP8QaJ7MjIsY1MdBDRL54gtDm9//Y6fzq8//AwP9jWdU0
- KMAxLdIwMt4hLtgcLdc3NdsfIauFkODo9P/x+v/p8vzx/f+uteY7OKw2L8wtLtYpK90nKeIpKt4qLs0l
- Lr4iML4yPdUrJ94xKN0yLMc3OKavuuzt+//c5vfv9P/Z0/9rYN8tJsMoKNIjL9UYK9A9Od4hJKS9y//n
- 9//0///x9/z09v+dl+g8LsoyI+InJ98iKd4iKN8kKtspLdIpMM0qNdMcI8wpJucqH+c8L+kzKL5MTaXs
- 8//0///w+v/x8f++uf8vKLM0M9YlL9MkNNoxK9Y2OLrc7P/t///4//f7///28v+EeNw8JtkuHu4kJuMe
- Kd4gKd4iKdwpKdkpKdknK90gJNssKu4iGeUuH+wvIdM9MrCmpOr0/f/r9uz2/P/q7f+XlP8zMcYhKMsf
- LNYmHtc4OsTk8v/x//73/+39//v28P99b9U7JdssHu4gKOAcK9seKd4iJ+ApJOUrIucmIegjIuYwMu8b
- GtwiGOczJOowHsVYS7709P/5//r6//Xy/P/d4P87PbkiJMghJdspI+AvML7b6f/x//79//L+/vj68v+N
- f+Q7J9crIeoeKtwZLtccKtwiJ+IrIeksH+0oHu0iH+YuNOsdItsdGuU3LPgzHt42I7XY0P/6/f/2/+np
- +ejq8/92fN8rLcgqKeMsKuEyNcDc6f/z//////j///779P+Ngds7LM4rJeIcLdcXMNQbLNsiJ+IsIucu
- IOouJOwhHt8lL+AfLNwaIuEtLPI0Juo1I8SajOr49f/1/+z4//Dt+//J0v8vLsAvKt8gJc44QMPj7//w
- +f/8/Pz//P/88v9zabw7L8cpKdscL9QXMNIbLNsiKN8sJeIwJOIzK+QjJdcfK9cdLtsWJt0eJ+MuJ+Y5
- K9B8bNzv5v/z+fT6//Ln9/3k7/8wMrYsJtEcK70yQbXj8P/w9//79P//+P/78P98csU5McQnK9gbL9QX
- MNQbLNkkK9kuKtcyK9IxL88qL9EcKNQYKtsXK94YKNknK9g1L8pjVM3m2f/6+P/6//7j8fff7P9fYdcs
- KsMsN88tOLHb5//z+//////89/n79f+kn+o5NL8nLNUbLtUVL9cbLNsiKtssKtgyK9QsJ8oyM9ceJtcV
- JdwYLuQWLd0hLtYrL8MxK6LWzv/49//w9fbz///q9v+lqP83NrYjHNk7Oszk7f/d7ez9/+T8/9/2+v/e
- 4P8wMKwyN9kLHMcgNukZKeAdJuIrJu0uIek1I+IyJOAlJeMbJuYQKOYQKuIXLtgkNcYmL5fm7v/z/P/1
- /vv2///x9//Y1v9FQKMoHuM3M8+epO/x/f/7/+n9/+T4///f4f8xMqQxOM8WJNAZKt8aKuEaJeEhIOYw
- Je01IeYzI+InJ98bKd8QKuIOKuIVKt8iMc4wOK/Axv/v9v/4/v/4/v/w8//o5/9APY0pKtg4Os5dX77t
- 8P/19f/7+v/69v/t6P9OTrgxNsEoMtYWJdUfLt4bKNgdJNEwMNwzJ9kyKtUlMc0bM8sSMdQSLdwZJecl
- JeM3Lc2Shvzq4//49v/4+v/q7v/s7f8/P40iKtEzOc5BQbXi3v/27v/48P/58v/z7v+OjesuMLQuMtcf
- KN0iKuEcKNQkMckrMcowKtcsK9UkNcYbOMIVNskXMNQgJeUsJOM6Kc6Zhv/u5P/69//2+//t8//h4v9B
- P5gbJdYiKcw3N8GLhOz06//79P/z8f/09f/Pzf80MK0qItMsJu8hIOYgJtcwQssjMLwrJ94pJuAiMssc
- OcAbOMIeNccnLNUzLNBAMrXLvv/4+f/6//vy/frv+P+mpvpAOqkhL+YXIc0xMspEPrXZ0v/49P/6/f/2
- /P/t7v9cWMIsIcswJO4kGugkJt82RNMiMb0nKtklKN4gMsseNsQgNcYlMsouLNI7L8dBM6Ps5f/5//76
- //Hu/Pjs9f90btlIPckhMe8YI9gsLtAyLq+PjNzh4f/4///2//zv9/+lp/VFO80yI98tIe0tJustMNgo
- M8skMssiM8ogNMkiMsskLdUrKNs1JtxALcpNPajy7f/y+/j4//Tt+f/o7f9OQspGM+AUKd8bKdslKNE4
- NcY/OqOsqefz+f/0///v/P/n8f9hYsozLcI6L+MzK+ohHNUtMd4iMc4gMs0iLtQkKdwpIucwIec7JN5F
- LsZrXbv08v/0//3z//7n8v/P0P8tH7swG9sYMdUaLNMpLNs0LdQ6LMBbTsGxrfTv9f/s/P/o/P/T5f89
- S54jKKkwLNI4L/EpIukbINsmLOksJ/gmGvYrFPg6IPZEK99FMrevqPPw9f/k8Prt+//m7v97eOUxI8g0
- IeIaL9EcLNMnKuAwKOEwINI8K8htYdeene3T3//k/P/J5PnK4/82Rp8uM7ciHcwnH+IsLe0aGuIdFO0x
- H/4zHPQqFNE9L71jXL3s8f/e7P/q+//m9P+DiN0xLqw3LNY8LewiLdslLN8pKuYvJ+owH+UwHNk5Kc5F
- Pb+Ume7N3v/d+f/R8P/G3/9FV7A5QcQwM9IqLdwjJd4xKuk8MuosJMUwLqp9hdLa6v/m/f/b9f/j9v+z
- v/9ARLQrKLk5MdwfFc0oKuMoKeUoJeYoIuUsIusyJe0zJeEvJspBQMBMVLG1y//a9P/Y8f/C2f+Ek/o9
- SsRATdEyPsYoL7oyN7hXW8uNmOrF2P/h+P/X8v/d9f+KmuYgKpU4OcVEQeQXEsE8N+wqIOksI+gnIuEg
- H9kiI98tLOgvKuksJ94kIMU8PcsvN6hUYL6Jm+7W6P/E1f/T6P/F5f/R9P/U8P/U6//U5v/d7v/d7//Y
- 6f+zw/9DULg1PMEtL8oSEL0uKuE6NO0nItsxIugyJ+kvKuMlKdshKNsgKd4hJeIhI+AzMegkIcosK8Ex
- Nbk9Q7ouNqdmceFHV7e00P+du+yNpd+brO+uuv+epv9kac8rMKM9QsYeJbgoLc8yNuMsLeMoJ+EiHtsl
- H9w4Ktw1K9wxL90rMd4hL9wZKdoXJdscJt4fI9k8POwnJM41MNM5NNMiGro1Lc5GQNswLbkuKrE2MLdE
- O8hLPNM/L9A0JM8sIdEjIc8wNd4pNNYcKcsVHsUgJdQ0M+0uKeg1KNAuJs0oJ9EnLtkdLtkWKdgWKt0i
- MOYeJ9wZGs4zLuMwJdktIdVFNuwvH9gxIdo8KdxBLd1AK9s9Jdc6H9o7IOI5H+40IO4lH+I3O/EQH8IZ
- Lcg2ROQeJ88eHtYoI+QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
-
-
-
\ No newline at end of file
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_partner.cs b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_partner.cs
deleted file mode 100644
index 37caf4067a3..00000000000
--- a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_partner.cs
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- OpenERP, Open Source Business Applications
- Copyright (c) 2011 OpenERP S.A.
-
- 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 .
-*/
-
-
-using System;
-using System.Windows.Forms;
-using OpenERPClient;
-
-namespace OpenERPOutlookPlugin
-{
- public partial class frm_partner : Form
- {
-
- public frm_partner()
- {
- InitializeComponent();
- }
-
- public Form parent_form = null;
-
- private void btnsave_Click(object sender, EventArgs e)
- {
- try
- {
-
- if (txt_create_partner.Text == "")
- {
- throw new Exception ("You must enter a Partner Name.");
- }
-
- else
- {
-
-
- Record[] partners = Cache.OpenERPOutlookPlugin.SearchPartnerByName(txt_create_partner.Text);
- if (partners != null && partners.Length > 0)
- {
- throw new Exception("Partner already exist.");
- }
- else
- {
- frm_select_partner sel_partner = (frm_select_partner)this.parent_form;
- sel_partner.SelectPartnerText = txt_create_partner.Text;
- sel_partner.search_lst_partner();
- this.Close();
- }
- }
- }
- catch (Exception ex)
- {
-
- Connect.handleException(ex);
- }
-
- }
-
- private void btncncl_Click(object sender, EventArgs e)
- {
- this.Close();
- }
- }
-}
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_partner.designer.cs b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_partner.designer.cs
deleted file mode 100644
index 41861ea5b62..00000000000
--- a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_partner.designer.cs
+++ /dev/null
@@ -1,106 +0,0 @@
-namespace OpenERPOutlookPlugin
-{
- partial class frm_partner
- {
- ///
- /// Required designer variable.
- ///
- private System.ComponentModel.IContainer components = null;
-
- ///
- /// Clean up any resources being used.
- ///
- /// true if managed resources should be disposed; otherwise, false.
- protected override void Dispose(bool disposing)
- {
- if (disposing && (components != null))
- {
- components.Dispose();
- }
- base.Dispose(disposing);
- }
-
- #region Windows Form Designer generated code
-
- ///
- /// Required method for Designer support - do not modify
- /// the contents of this method with the code editor.
- ///
- private void InitializeComponent()
- {
- System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(frm_partner));
- this.txt_create_partner = new System.Windows.Forms.TextBox();
- this.lablname = new System.Windows.Forms.Label();
- this.btncncl = new System.Windows.Forms.Button();
- this.btnsave = new System.Windows.Forms.Button();
- this.SuspendLayout();
- //
- // txt_create_partner
- //
- this.txt_create_partner.Location = new System.Drawing.Point(87, 26);
- this.txt_create_partner.Name = "txt_create_partner";
- this.txt_create_partner.Size = new System.Drawing.Size(185, 20);
- this.txt_create_partner.TabIndex = 0;
- //
- // lablname
- //
- this.lablname.AutoSize = true;
- this.lablname.Location = new System.Drawing.Point(43, 29);
- this.lablname.Name = "lablname";
- this.lablname.Size = new System.Drawing.Size(38, 13);
- this.lablname.TabIndex = 1;
- this.lablname.Text = "Name:";
- //
- // btncncl
- //
- this.btncncl.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btncncl.Image = global::OpenERPOutlookPlugin.Properties.Resources.Error;
- this.btncncl.ImageAlign = System.Drawing.ContentAlignment.BottomLeft;
- this.btncncl.Location = new System.Drawing.Point(205, 75);
- this.btncncl.Name = "btncncl";
- this.btncncl.Size = new System.Drawing.Size(67, 23);
- this.btncncl.TabIndex = 3;
- this.btncncl.Text = "&Cancel";
- this.btncncl.TextAlign = System.Drawing.ContentAlignment.TopRight;
- this.btncncl.UseVisualStyleBackColor = true;
- this.btncncl.Click += new System.EventHandler(this.btncncl_Click);
- //
- // btnsave
- //
- this.btnsave.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btnsave.Image = global::OpenERPOutlookPlugin.Properties.Resources.Success;
- this.btnsave.ImageAlign = System.Drawing.ContentAlignment.TopLeft;
- this.btnsave.Location = new System.Drawing.Point(139, 75);
- this.btnsave.Name = "btnsave";
- this.btnsave.Size = new System.Drawing.Size(60, 23);
- this.btnsave.TabIndex = 2;
- this.btnsave.Text = "&Save ";
- this.btnsave.TextAlign = System.Drawing.ContentAlignment.TopRight;
- this.btnsave.UseVisualStyleBackColor = true;
- this.btnsave.Click += new System.EventHandler(this.btnsave_Click);
- //
- // frm_partner
- //
- this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.ClientSize = new System.Drawing.Size(284, 110);
- this.Controls.Add(this.btncncl);
- this.Controls.Add(this.btnsave);
- this.Controls.Add(this.lablname);
- this.Controls.Add(this.txt_create_partner);
- this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
- this.Name = "frm_partner";
- this.Text = "Create a new Partner";
- this.ResumeLayout(false);
- this.PerformLayout();
-
- }
-
- #endregion
-
- private System.Windows.Forms.TextBox txt_create_partner;
- private System.Windows.Forms.Label lablname;
- private System.Windows.Forms.Button btnsave;
- private System.Windows.Forms.Button btncncl;
- }
-}
\ No newline at end of file
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_partner.resx b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_partner.resx
deleted file mode 100644
index 9477f7baa89..00000000000
--- a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_partner.resx
+++ /dev/null
@@ -1,180 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- text/microsoft-resx
-
-
- 2.0
-
-
- System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
-
-
- AAABAAEAICAAAAEAGACoDAAAFgAAACgAAAAgAAAAQAAAAAEAGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAxO+0UHsorMtUkJMo6LOY5JN81HsdDLM4/JMdINcBISKJCSpA+RpM9SJo6RJsxPJg2PJ84PKU4OadA
- Pbs7L8lANd8qJNUiJtIZKModMNcUJOIUHu0iJvsaIOUaJsQuQMkXHNcvNOciJsstLNAvItJSQekqG6xQ
- QchYSNKOg/3Cw//Q2f/P1f/S2P/T3P/R2P+iqP+7vv9vct8zM6k0Lbg6NcwcGroyN9oiLs4eLdccKOQg
- KvMkKfYaIuEbJsgnOMkdGuUeHd4+PeseHLxAONI9N7p4edSzt//W1v/k4//h6P/f5v/Dw/+2tf+1t/+0
- tv/Kzv/Y3f/S1f/U2P/Fyf8iKJlOVNMtM8IuM9UjKtgdJd0aI98bJN8nMOUqNN8dKc0pIPMnIOUvK9g5
- N8w4NLWGiObR4P/k9//k7//K0/+JkeRWW8I5N78uKcAvLL4wMrxCR8hTWNKOlP/a4v/Z4//W4v+Ai+cx
- OaooKr4mJ88sLuAjKNsWIMwoMt4yOusZI9QnHO42Le8lIME+Pb2Dg+fk7//o///b9/ff8v+OnN5ET6sx
- NrE3MdIyKdcvKsszNscxOL0uN7YkKqdvduPc6f/Y6v/f8P/F0v9PUMg1MMc0MNY4OOQlK9AdJs4iLN4c
- J90sIucvKdovL7lcX8fm6v/q9v/m/vbl//yQocxRXa8jLp4sML83MeIsJNwnJsoxNckjLrRATNBARNIo
- K6srN4/c7f/a7f/k8//Kzf9pZN0nHrQrJskyNNgkLNMbJdYgK+AxK9wxL8k+RK/N1f/s8v/r9v/Y6uvq
- +/9UW6o2ObMlKbgpK88vKuMqJt0sL801PcwwP8QaJ7MjIsY1MdBDRL54gtDm9//Y6fzq8//AwP9jWdU0
- KMAxLdIwMt4hLtgcLdc3NdsfIauFkODo9P/x+v/p8vzx/f+uteY7OKw2L8wtLtYpK90nKeIpKt4qLs0l
- Lr4iML4yPdUrJ94xKN0yLMc3OKavuuzt+//c5vfv9P/Z0/9rYN8tJsMoKNIjL9UYK9A9Od4hJKS9y//n
- 9//0///x9/z09v+dl+g8LsoyI+InJ98iKd4iKN8kKtspLdIpMM0qNdMcI8wpJucqH+c8L+kzKL5MTaXs
- 8//0///w+v/x8f++uf8vKLM0M9YlL9MkNNoxK9Y2OLrc7P/t///4//f7///28v+EeNw8JtkuHu4kJuMe
- Kd4gKd4iKdwpKdkpKdknK90gJNssKu4iGeUuH+wvIdM9MrCmpOr0/f/r9uz2/P/q7f+XlP8zMcYhKMsf
- LNYmHtc4OsTk8v/x//73/+39//v28P99b9U7JdssHu4gKOAcK9seKd4iJ+ApJOUrIucmIegjIuYwMu8b
- GtwiGOczJOowHsVYS7709P/5//r6//Xy/P/d4P87PbkiJMghJdspI+AvML7b6f/x//79//L+/vj68v+N
- f+Q7J9crIeoeKtwZLtccKtwiJ+IrIeksH+0oHu0iH+YuNOsdItsdGuU3LPgzHt42I7XY0P/6/f/2/+np
- +ejq8/92fN8rLcgqKeMsKuEyNcDc6f/z//////j///779P+Ngds7LM4rJeIcLdcXMNQbLNsiJ+IsIucu
- IOouJOwhHt8lL+AfLNwaIuEtLPI0Juo1I8SajOr49f/1/+z4//Dt+//J0v8vLsAvKt8gJc44QMPj7//w
- +f/8/Pz//P/88v9zabw7L8cpKdscL9QXMNIbLNsiKN8sJeIwJOIzK+QjJdcfK9cdLtsWJt0eJ+MuJ+Y5
- K9B8bNzv5v/z+fT6//Ln9/3k7/8wMrYsJtEcK70yQbXj8P/w9//79P//+P/78P98csU5McQnK9gbL9QX
- MNQbLNkkK9kuKtcyK9IxL88qL9EcKNQYKtsXK94YKNknK9g1L8pjVM3m2f/6+P/6//7j8fff7P9fYdcs
- KsMsN88tOLHb5//z+//////89/n79f+kn+o5NL8nLNUbLtUVL9cbLNsiKtssKtgyK9QsJ8oyM9ceJtcV
- JdwYLuQWLd0hLtYrL8MxK6LWzv/49//w9fbz///q9v+lqP83NrYjHNk7Oszk7f/d7ez9/+T8/9/2+v/e
- 4P8wMKwyN9kLHMcgNukZKeAdJuIrJu0uIek1I+IyJOAlJeMbJuYQKOYQKuIXLtgkNcYmL5fm7v/z/P/1
- /vv2///x9//Y1v9FQKMoHuM3M8+epO/x/f/7/+n9/+T4///f4f8xMqQxOM8WJNAZKt8aKuEaJeEhIOYw
- Je01IeYzI+InJ98bKd8QKuIOKuIVKt8iMc4wOK/Axv/v9v/4/v/4/v/w8//o5/9APY0pKtg4Os5dX77t
- 8P/19f/7+v/69v/t6P9OTrgxNsEoMtYWJdUfLt4bKNgdJNEwMNwzJ9kyKtUlMc0bM8sSMdQSLdwZJecl
- JeM3Lc2Shvzq4//49v/4+v/q7v/s7f8/P40iKtEzOc5BQbXi3v/27v/48P/58v/z7v+OjesuMLQuMtcf
- KN0iKuEcKNQkMckrMcowKtcsK9UkNcYbOMIVNskXMNQgJeUsJOM6Kc6Zhv/u5P/69//2+//t8//h4v9B
- P5gbJdYiKcw3N8GLhOz06//79P/z8f/09f/Pzf80MK0qItMsJu8hIOYgJtcwQssjMLwrJ94pJuAiMssc
- OcAbOMIeNccnLNUzLNBAMrXLvv/4+f/6//vy/frv+P+mpvpAOqkhL+YXIc0xMspEPrXZ0v/49P/6/f/2
- /P/t7v9cWMIsIcswJO4kGugkJt82RNMiMb0nKtklKN4gMsseNsQgNcYlMsouLNI7L8dBM6Ps5f/5//76
- //Hu/Pjs9f90btlIPckhMe8YI9gsLtAyLq+PjNzh4f/4///2//zv9/+lp/VFO80yI98tIe0tJustMNgo
- M8skMssiM8ogNMkiMsskLdUrKNs1JtxALcpNPajy7f/y+/j4//Tt+f/o7f9OQspGM+AUKd8bKdslKNE4
- NcY/OqOsqefz+f/0///v/P/n8f9hYsozLcI6L+MzK+ohHNUtMd4iMc4gMs0iLtQkKdwpIucwIec7JN5F
- LsZrXbv08v/0//3z//7n8v/P0P8tH7swG9sYMdUaLNMpLNs0LdQ6LMBbTsGxrfTv9f/s/P/o/P/T5f89
- S54jKKkwLNI4L/EpIukbINsmLOksJ/gmGvYrFPg6IPZEK99FMrevqPPw9f/k8Prt+//m7v97eOUxI8g0
- IeIaL9EcLNMnKuAwKOEwINI8K8htYdeene3T3//k/P/J5PnK4/82Rp8uM7ciHcwnH+IsLe0aGuIdFO0x
- H/4zHPQqFNE9L71jXL3s8f/e7P/q+//m9P+DiN0xLqw3LNY8LewiLdslLN8pKuYvJ+owH+UwHNk5Kc5F
- Pb+Ume7N3v/d+f/R8P/G3/9FV7A5QcQwM9IqLdwjJd4xKuk8MuosJMUwLqp9hdLa6v/m/f/b9f/j9v+z
- v/9ARLQrKLk5MdwfFc0oKuMoKeUoJeYoIuUsIusyJe0zJeEvJspBQMBMVLG1y//a9P/Y8f/C2f+Ek/o9
- SsRATdEyPsYoL7oyN7hXW8uNmOrF2P/h+P/X8v/d9f+KmuYgKpU4OcVEQeQXEsE8N+wqIOksI+gnIuEg
- H9kiI98tLOgvKuksJ94kIMU8PcsvN6hUYL6Jm+7W6P/E1f/T6P/F5f/R9P/U8P/U6//U5v/d7v/d7//Y
- 6f+zw/9DULg1PMEtL8oSEL0uKuE6NO0nItsxIugyJ+kvKuMlKdshKNsgKd4hJeIhI+AzMegkIcosK8Ex
- Nbk9Q7ouNqdmceFHV7e00P+du+yNpd+brO+uuv+epv9kac8rMKM9QsYeJbgoLc8yNuMsLeMoJ+EiHtsl
- H9w4Ktw1K9wxL90rMd4hL9wZKdoXJdscJt4fI9k8POwnJM41MNM5NNMiGro1Lc5GQNswLbkuKrE2MLdE
- O8hLPNM/L9A0JM8sIdEjIc8wNd4pNNYcKcsVHsUgJdQ0M+0uKeg1KNAuJs0oJ9EnLtkdLtkWKdgWKt0i
- MOYeJ9wZGs4zLuMwJdktIdVFNuwvH9gxIdo8KdxBLd1AK9s9Jdc6H9o7IOI5H+40IO4lH+I3O/EQH8IZ
- Lcg2ROQeJ88eHtYoI+QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
-
-
-
\ No newline at end of file
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_push_mail.cs b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_push_mail.cs
deleted file mode 100644
index b3aa195b68c..00000000000
--- a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_push_mail.cs
+++ /dev/null
@@ -1,149 +0,0 @@
-/*
- OpenERP, Open Source Business Applications
- Copyright (c) 2011 OpenERP S.A.
-
- 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 .
-*/
-
-
-using System;
-using System.Collections;
-using System.Drawing;
-using System.Windows.Forms;
-using OpenERPClient;
-using outlook = Microsoft.Office.Interop.Outlook;
-
-namespace OpenERPOutlookPlugin
-{
-
- public partial class frm_push_mail : Form
- {
-
- public frm_push_mail()
- {
-
- InitializeComponent();
- cmboboxcreate.Items.Remove("");
- }
-
- public bool push_mail(string model, int thread_id)
- {
- foreach (outlook.MailItem mailItem in Tools.MailItems())
- {
- Cache.OpenERPOutlookPlugin.PushMail(mailItem, model, thread_id);
-
- }
- return true;
- }
-
- private void btn_attach_mail_to_partner_Click(object sender, EventArgs e)
- {
- try
- {
- if (lstview_object.SelectedItems.Count <= 0)
- {
- throw new Exception("Plese select item from the list to push");
- }
- foreach (ListViewItem lv in lstview_object.SelectedItems)
- {
- this.push_mail(lv.SubItems[1].Name, Convert.ToInt32(lv.Name));
- }
- this.Close();
- }
- catch (Exception ex)
- {
- Connect.handleException(ex);
- }
- }
-
-
- private void frm_push_mail_Load(object sender, EventArgs e)
- {
- try
- {
-
- Model[] document_models = Cache.OpenERPOutlookPlugin.GetMailModels();
- OpenERPOutlookPlugin openerp_outlook = Cache.OpenERPOutlookPlugin;
- OpenERPConnect openerp_connect = openerp_outlook.Connection;
-
- foreach (Model model in document_models)
- {
- ListViewItem item = new ListViewItem();
- item.Name = model.model;
- item.Text = model.name;
- cmboboxcreate.Items.Add(model);
- }
- }
- catch (Exception ex)
- {
- Connect.handleException(ex);
- }
- }
- private void add_item_recordlist(Record record)
- {
- ListViewItem item = new ListViewItem(record.name);
- item.Name = record.id.ToString();
- item.Text = record.name;
- ListViewItem.ListViewSubItem subitem = new ListViewItem.ListViewSubItem();
- subitem.Name = record.model.model;
- subitem.Text = cmboboxcreate.SelectedItem.ToString();
- item.SubItems.Add(subitem);
- lstview_object.Items.Add(item);
- }
-
- void load_data_list()
- {
- lstview_object.Items.Clear();
-
- Model model = (Model)cmboboxcreate.SelectedItem;
- ArrayList condition_list = new ArrayList();
- string name = null;
- if (txt_doc_search.Text != "")
- {
- name = txt_doc_search.Text;
- }
-
- foreach (Record record in Cache.OpenERPOutlookPlugin.SearchRecord(name,model.model))
- {
- this.add_item_recordlist(record);
- }
- if (lstview_object.Items.Count <= 0)
- {
- Connect.displayMessage("No matching Document(s) found.");
- }
- lstview_object.Sort();
- }
-
- private void cmboboxcreate_SelectedIndexChanged(object sender, EventArgs e)
- {
- try
- {
- this.load_data_list();
- }
- catch (Exception ex)
- { Connect.handleException(ex); }
- }
-
- private void btn_search_Click(object sender, EventArgs e)
- {
- try
- {
- this.load_data_list();
- }
- catch
- { Connect.displayMessage("Please Enter Search Text"); }
- }
- }
-}
-
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_push_mail.designer.cs b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_push_mail.designer.cs
deleted file mode 100644
index f6282eed6b7..00000000000
--- a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_push_mail.designer.cs
+++ /dev/null
@@ -1,202 +0,0 @@
-namespace OpenERPOutlookPlugin
-{
- partial class frm_push_mail
- {
- ///
- /// Required designer variable.
- ///
- private System.ComponentModel.IContainer components = null;
-
- ///
- /// Clean up any resources being used.
- ///
- /// true if managed resources should be disposed; otherwise, false.
- protected override void Dispose(bool disposing)
- {
- if (disposing && (components != null))
- {
- components.Dispose();
- }
- base.Dispose(disposing);
- }
-
- #region Windows Form Designer generated code
-
- ///
- /// Required method for Designer support - do not modify
- /// the contents of this method with the code editor.
- ///
- private void InitializeComponent()
- {
- System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(frm_push_mail));
- this.groupBox1 = new System.Windows.Forms.GroupBox();
- this.btn_search = new System.Windows.Forms.Button();
- this.txt_doc_search = new System.Windows.Forms.TextBox();
- this.lbtsrch = new System.Windows.Forms.Label();
- this.cmboboxcreate = new System.Windows.Forms.ComboBox();
- this.lbtypedoc = new System.Windows.Forms.Label();
- this.lstview_object = new System.Windows.Forms.ListView();
- this.colheadname = new System.Windows.Forms.ColumnHeader();
- this.colheadmodelname = new System.Windows.Forms.ColumnHeader();
- this.btn_attach_mail_to_partner = new System.Windows.Forms.Button();
- this.lbldocs = new System.Windows.Forms.Label();
- this.groupBox1.SuspendLayout();
- this.SuspendLayout();
- //
- // groupBox1
- //
- this.groupBox1.Controls.Add(this.btn_search);
- this.groupBox1.Controls.Add(this.txt_doc_search);
- this.groupBox1.Controls.Add(this.lbtsrch);
- this.groupBox1.Controls.Add(this.cmboboxcreate);
- this.groupBox1.Controls.Add(this.lbtypedoc);
- this.groupBox1.Controls.Add(this.lstview_object);
- this.groupBox1.Controls.Add(this.btn_attach_mail_to_partner);
- this.groupBox1.Controls.Add(this.lbldocs);
- this.groupBox1.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.groupBox1.Location = new System.Drawing.Point(13, 12);
- this.groupBox1.Name = "groupBox1";
- this.groupBox1.Size = new System.Drawing.Size(440, 460);
- this.groupBox1.TabIndex = 3;
- this.groupBox1.TabStop = false;
- this.groupBox1.Text = "Link to an Existing Document";
- //
- // btn_search
- //
- this.btn_search.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btn_search.Image = global::OpenERPOutlookPlugin.Properties.Resources.Search;
- this.btn_search.ImageAlign = System.Drawing.ContentAlignment.BottomLeft;
- this.btn_search.Location = new System.Drawing.Point(364, 59);
- this.btn_search.Name = "btn_search";
- this.btn_search.Size = new System.Drawing.Size(70, 23);
- this.btn_search.TabIndex = 15;
- this.btn_search.Text = "&Search ";
- this.btn_search.TextAlign = System.Drawing.ContentAlignment.TopRight;
- this.btn_search.UseVisualStyleBackColor = true;
- this.btn_search.Click += new System.EventHandler(this.btn_search_Click);
- //
- // txt_doc_search
- //
- this.txt_doc_search.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.txt_doc_search.Location = new System.Drawing.Point(104, 59);
- this.txt_doc_search.Name = "txt_doc_search";
- this.txt_doc_search.Size = new System.Drawing.Size(254, 20);
- this.txt_doc_search.TabIndex = 14;
- //
- // lbtsrch
- //
- this.lbtsrch.AutoSize = true;
- this.lbtsrch.Location = new System.Drawing.Point(32, 59);
- this.lbtsrch.Name = "lbtsrch";
- this.lbtsrch.Size = new System.Drawing.Size(51, 13);
- this.lbtsrch.TabIndex = 13;
- this.lbtsrch.Text = "Search:";
- //
- // cmboboxcreate
- //
- this.cmboboxcreate.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.cmboboxcreate.FormattingEnabled = true;
- this.cmboboxcreate.Items.AddRange(new object[] {
- ""});
- this.cmboboxcreate.Location = new System.Drawing.Point(104, 24);
- this.cmboboxcreate.Name = "cmboboxcreate";
- this.cmboboxcreate.Size = new System.Drawing.Size(330, 21);
- this.cmboboxcreate.TabIndex = 12;
- this.cmboboxcreate.SelectedIndexChanged += new System.EventHandler(this.cmboboxcreate_SelectedIndexChanged);
- //
- // lbtypedoc
- //
- this.lbtypedoc.AutoSize = true;
- this.lbtypedoc.Location = new System.Drawing.Point(15, 24);
- this.lbtypedoc.Name = "lbtypedoc";
- this.lbtypedoc.Size = new System.Drawing.Size(68, 13);
- this.lbtypedoc.TabIndex = 11;
- this.lbtypedoc.Text = "Document:";
- //
- // lstview_object
- //
- this.lstview_object.Alignment = System.Windows.Forms.ListViewAlignment.Default;
- this.lstview_object.AllowColumnReorder = true;
- this.lstview_object.BackgroundImageTiled = true;
- this.lstview_object.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
- this.colheadname,
- this.colheadmodelname});
- this.lstview_object.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.lstview_object.FullRowSelect = true;
- this.lstview_object.GridLines = true;
- this.lstview_object.HideSelection = false;
- this.lstview_object.Location = new System.Drawing.Point(9, 110);
- this.lstview_object.Name = "lstview_object";
- this.lstview_object.Size = new System.Drawing.Size(425, 299);
- this.lstview_object.TabIndex = 10;
- this.lstview_object.UseCompatibleStateImageBehavior = false;
- this.lstview_object.View = System.Windows.Forms.View.Details;
- //
- // colheadname
- //
- this.colheadname.Text = "Name";
- this.colheadname.Width = 247;
- //
- // colheadmodelname
- //
- this.colheadmodelname.Text = "Model Name";
- this.colheadmodelname.Width = 400;
- //
- // btn_attach_mail_to_partner
- //
- this.btn_attach_mail_to_partner.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btn_attach_mail_to_partner.Image = global::OpenERPOutlookPlugin.Properties.Resources.Archive;
- this.btn_attach_mail_to_partner.ImageAlign = System.Drawing.ContentAlignment.BottomLeft;
- this.btn_attach_mail_to_partner.Location = new System.Drawing.Point(377, 424);
- this.btn_attach_mail_to_partner.Name = "btn_attach_mail_to_partner";
- this.btn_attach_mail_to_partner.Size = new System.Drawing.Size(57, 23);
- this.btn_attach_mail_to_partner.TabIndex = 4;
- this.btn_attach_mail_to_partner.Text = "P&ush ";
- this.btn_attach_mail_to_partner.TextAlign = System.Drawing.ContentAlignment.TopRight;
- this.btn_attach_mail_to_partner.UseVisualStyleBackColor = true;
- this.btn_attach_mail_to_partner.Click += new System.EventHandler(this.btn_attach_mail_to_partner_Click);
- //
- // lbldocs
- //
- this.lbldocs.AutoSize = true;
- this.lbldocs.Location = new System.Drawing.Point(9, 91);
- this.lbldocs.Name = "lbldocs";
- this.lbldocs.Size = new System.Drawing.Size(74, 13);
- this.lbldocs.TabIndex = 0;
- this.lbldocs.Text = "Documents:";
- //
- // frm_push_mail
- //
- this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.ClientSize = new System.Drawing.Size(467, 484);
- this.Controls.Add(this.groupBox1);
- this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Fixed3D;
- this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
- this.KeyPreview = true;
- this.MaximizeBox = false;
- this.Name = "frm_push_mail";
- this.Text = "Push Mail";
- this.Load += new System.EventHandler(this.frm_push_mail_Load);
- this.groupBox1.ResumeLayout(false);
- this.groupBox1.PerformLayout();
- this.ResumeLayout(false);
-
- }
-
- #endregion
-
- private System.Windows.Forms.GroupBox groupBox1;
- private System.Windows.Forms.ListView lstview_object;
- private System.Windows.Forms.ColumnHeader colheadname;
- private System.Windows.Forms.ColumnHeader colheadmodelname;
- private System.Windows.Forms.Button btn_attach_mail_to_partner;
- private System.Windows.Forms.Label lbldocs;
- private System.Windows.Forms.ComboBox cmboboxcreate;
- private System.Windows.Forms.Label lbtypedoc;
- private System.Windows.Forms.Button btn_search;
- private System.Windows.Forms.TextBox txt_doc_search;
- private System.Windows.Forms.Label lbtsrch;
-
- }
-}
\ No newline at end of file
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_push_mail.resx b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_push_mail.resx
deleted file mode 100644
index 3c294eb0444..00000000000
--- a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_push_mail.resx
+++ /dev/null
@@ -1,145 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- text/microsoft-resx
-
-
- 2.0
-
-
- System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
-
-
- AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAACAgICAAAAKwAAAGw8PDykT09Pu1BQULpAQEChAAAAYgAAAB0AAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAFBQUNAAAAanFxcdygoaH/l5eX/5OTk/+ZmJj/o6Kj/6alpv93d3jbCAgIVwkJ
- CQMAAAAAAAAAAAAAAAAHBwcKIyQkhLCwr/2IiIv+Q0NH/zc4PP9KSlD/b29w/3l5eP+VlJX/srKy/rCw
- sf87OztxEBAQAgAAAAD///8ADQ0NYMfGxf5lZXv+BwdS/hISdv8MDGb/EBBw/wgIUf8rK0D/X19g/4yM
- jP7CwsL+xsbG/ywsLEYAAAAAAAAAFqioqdykpLn+ERGH/hsbo/8vMEj/srK5/4OEpP8cHJr/GRmh/w8P
- Qv9RUVP/nJuc/trZ2f69vb7aAAAAAiQkI1D49/X/YWGp/yUlzv8WFo3/bW1w/9vb2//x8O//oqPH/yUl
- xv8jI87/Dw9C/2loaP/Ly8v/8vLy/3FxcD2jo6OR/////1tbyf8uLuf/HByh/2VlaP/e3t7//f39////
- //9dXc//LS3n/yIi0f8rKzj/pqal//7+/v/W1taEycnJqv////9wcOX/ODj3/ygoz/9ERE3/xMTE//v7
- +//+/v//09Pz/zMz8v80NPn/EBBx/4KCgf/09PT/7e3to9bW1qn/////oqL6/0JC//9BQf//Hx9G/5aW
- lP/u7u7///////////9MTPf/Ojr8/yIivv9hYWv/7u7u//X19aTY2NmI//////Hx/P84OPD/QED7/xkZ
- kf9iYmb/xcXF//r6+v//////fX3n/zc3+/8pKdz/WVlm//Pz8//6+vmIvb29O//////////+jIzV/zMz
- 6P8rK+H/KChP/4yMiv/X19f/+Pj4/42Nyf8pKev/ICDN/3JygP7/////9/f3PgAAAAD5+fnd/////v//
- //9SUqn/JCTH/xUVmv9SUmn/pqaj/8nJxv9LS4H/Hh7P/w4Oj/7KytH+/v7+5QAAAAAAAAAA5OTkNP//
- ///+/v7//////2Fhkv8PD4T/DQ1//yYmXP8xMVz/DAyA/xAQmf9iYob///////z8/DsAAAAAAAAAAAAA
- AAD8/Pxc/v7+//7+/v7////+xcXL/0xMbP8ICEf/AAA+/xISS/6AgJD+//////7+/mgAAAAAAAAAAAAA
- AAAAAAAAAAAAAPv7+zX+/v7m//////7+/v/////+/////v//////////////7P7+/j4AAAAA+fn5AAAA
- AAAAAAAAAAAAAAAAAAD///8AAAAAAP7+/kj+/v6S/v7+s/7+/rT+/v6U/v7+TQAAAAAAAAAAAAAAAAAA
- AAAAAAAA/D8AAPAPAADABwAAwAMAAIABAACAAQAAAAAAAAAAAAAAAAAAAAAAAIABAACAAQAAwAMAAOAH
- AADwDwAA/D8AAA==
-
-
-
\ No newline at end of file
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_select_partner.Designer.cs b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_select_partner.Designer.cs
deleted file mode 100644
index 95c478fbb1e..00000000000
--- a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_select_partner.Designer.cs
+++ /dev/null
@@ -1,141 +0,0 @@
-namespace OpenERPOutlookPlugin
-{
- partial class frm_select_partner
- {
- ///
- /// Required designer variable.
- ///
- private System.ComponentModel.IContainer components = null;
-
- ///
- /// Clean up any resources being used.
- ///
- /// true if managed resources should be disposed; otherwise, false.
- protected override void Dispose(bool disposing)
- {
- if (disposing && (components != null))
- {
- components.Dispose();
- }
- base.Dispose(disposing);
- }
-
- #region Windows Form Designer generated code
-
- ///
- /// Required method for Designer support - do not modify
- /// the contents of this method with the code editor.
- ///
- private void InitializeComponent()
- {
- System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(frm_select_partner));
- this.txt_select_partner = new System.Windows.Forms.TextBox();
- this.groupBox1 = new System.Windows.Forms.GroupBox();
- this.lstbox_select_partner = new System.Windows.Forms.ListBox();
- this.btn_select_partner_select = new System.Windows.Forms.Button();
- this.btn_select_partner_close = new System.Windows.Forms.Button();
- this.btn_select_partner_search = new System.Windows.Forms.Button();
- this.groupBox1.SuspendLayout();
- this.SuspendLayout();
- //
- // txt_select_partner
- //
- this.txt_select_partner.Location = new System.Drawing.Point(19, 20);
- this.txt_select_partner.Name = "txt_select_partner";
- this.txt_select_partner.Size = new System.Drawing.Size(209, 20);
- this.txt_select_partner.TabIndex = 0;
- //
- // groupBox1
- //
- this.groupBox1.Controls.Add(this.lstbox_select_partner);
- this.groupBox1.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.groupBox1.Location = new System.Drawing.Point(13, 51);
- this.groupBox1.Name = "groupBox1";
- this.groupBox1.Size = new System.Drawing.Size(307, 368);
- this.groupBox1.TabIndex = 7;
- this.groupBox1.TabStop = false;
- this.groupBox1.Text = "Partner Name";
- //
- // lstbox_select_partner
- //
- this.lstbox_select_partner.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.lstbox_select_partner.FormattingEnabled = true;
- this.lstbox_select_partner.Location = new System.Drawing.Point(6, 27);
- this.lstbox_select_partner.Name = "lstbox_select_partner";
- this.lstbox_select_partner.Size = new System.Drawing.Size(295, 329);
- this.lstbox_select_partner.TabIndex = 4;
- //
- // btn_select_partner_select
- //
- this.btn_select_partner_select.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btn_select_partner_select.Image = global::OpenERPOutlookPlugin.Properties.Resources.Success;
- this.btn_select_partner_select.ImageAlign = System.Drawing.ContentAlignment.BottomLeft;
- this.btn_select_partner_select.Location = new System.Drawing.Point(192, 432);
- this.btn_select_partner_select.Name = "btn_select_partner_select";
- this.btn_select_partner_select.Size = new System.Drawing.Size(53, 23);
- this.btn_select_partner_select.TabIndex = 6;
- this.btn_select_partner_select.Text = "&Link";
- this.btn_select_partner_select.TextAlign = System.Drawing.ContentAlignment.TopRight;
- this.btn_select_partner_select.UseVisualStyleBackColor = true;
- this.btn_select_partner_select.Click += new System.EventHandler(this.btn_select_partner_select_Click);
- //
- // btn_select_partner_close
- //
- this.btn_select_partner_close.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btn_select_partner_close.Image = global::OpenERPOutlookPlugin.Properties.Resources.Error;
- this.btn_select_partner_close.ImageAlign = System.Drawing.ContentAlignment.BottomLeft;
- this.btn_select_partner_close.Location = new System.Drawing.Point(251, 432);
- this.btn_select_partner_close.Name = "btn_select_partner_close";
- this.btn_select_partner_close.Size = new System.Drawing.Size(64, 23);
- this.btn_select_partner_close.TabIndex = 5;
- this.btn_select_partner_close.Text = "&Close ";
- this.btn_select_partner_close.TextAlign = System.Drawing.ContentAlignment.TopRight;
- this.btn_select_partner_close.UseVisualStyleBackColor = true;
- this.btn_select_partner_close.Click += new System.EventHandler(this.btn_select_partner_close_Click);
- //
- // btn_select_partner_search
- //
- this.btn_select_partner_search.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btn_select_partner_search.Image = ((System.Drawing.Image)(resources.GetObject("btn_select_partner_search.Image")));
- this.btn_select_partner_search.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
- this.btn_select_partner_search.Location = new System.Drawing.Point(245, 19);
- this.btn_select_partner_search.Name = "btn_select_partner_search";
- this.btn_select_partner_search.Size = new System.Drawing.Size(75, 23);
- this.btn_select_partner_search.TabIndex = 1;
- this.btn_select_partner_search.Text = "&Search ";
- this.btn_select_partner_search.TextAlign = System.Drawing.ContentAlignment.TopRight;
- this.btn_select_partner_search.UseVisualStyleBackColor = true;
- this.btn_select_partner_search.Click += new System.EventHandler(this.btn_select_partner_search_Click);
- //
- // frm_select_partner
- //
- this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.ClientSize = new System.Drawing.Size(350, 467);
- this.Controls.Add(this.groupBox1);
- this.Controls.Add(this.btn_select_partner_select);
- this.Controls.Add(this.btn_select_partner_close);
- this.Controls.Add(this.btn_select_partner_search);
- this.Controls.Add(this.txt_select_partner);
- this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Fixed3D;
- this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
- this.MaximizeBox = false;
- this.Name = "frm_select_partner";
- this.Text = "Select Partner";
- this.Load += new System.EventHandler(this.frm_select_partner_Load);
- this.groupBox1.ResumeLayout(false);
- this.ResumeLayout(false);
- this.PerformLayout();
-
- }
-
- #endregion
-
- private System.Windows.Forms.TextBox txt_select_partner;
- private System.Windows.Forms.Button btn_select_partner_search;
- private System.Windows.Forms.Button btn_select_partner_close;
- private System.Windows.Forms.Button btn_select_partner_select;
- private System.Windows.Forms.GroupBox groupBox1;
- private System.Windows.Forms.ListBox lstbox_select_partner;
- }
-}
\ No newline at end of file
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_select_partner.cs b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_select_partner.cs
deleted file mode 100644
index 4e3af054c3e..00000000000
--- a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_select_partner.cs
+++ /dev/null
@@ -1,121 +0,0 @@
-/*
- OpenERP, Open Source Business Applications
- Copyright (c) 2011 OpenERP S.A.
-
- 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 .
-*/
-
-
-using System;
-using System.Collections;
-using System.Windows.Forms;
-using OpenERPClient;
-using outlook = Microsoft.Office.Interop.Outlook;
-
-namespace OpenERPOutlookPlugin
-{
-
- public partial class frm_select_partner : Form
- {
- public frm_select_partner()
- {
- InitializeComponent();
-
- }
- public Form parent_form = null;
-
- private void btn_select_partner_select_Click(object sender, EventArgs e)
- {
- try
- {
- if (lstbox_select_partner.SelectedItem == null)
- {
- throw new Exception("Please select a partner from the list.");
- }
- else
- {
- txt_select_partner.Text = lstbox_select_partner.SelectedItem.ToString();
- int partner_id = (int)Cache.OpenERPOutlookPlugin.CreatePartnerRecord(lstbox_select_partner.SelectedItem.ToString());
- foreach (outlook.MailItem mailItem in Tools.MailItems())
- {
- Cache.OpenERPOutlookPlugin.CreateContactRecord(partner_id, mailItem.SenderName, mailItem.SenderEmailAddress);
- }
- this.Close();
- }
- }
- catch (Exception ex)
- {
- Connect.handleException(ex);
- }
- }
-
- private void btn_select_partner_close_Click(object sender, EventArgs e)
- {
- this.Close();
- }
-
- public void search_lst_partner()
- {
- /*
- * Will search the list of partners as per the given search criteria.
- */
- try
- {
- lstbox_select_partner.Items.Clear();
- foreach (Record oo in Cache.OpenERPOutlookPlugin.SearchRecord(txt_select_partner.Text, "res.partner"))
- {
- lstbox_select_partner.Items.Add(oo.name);
- }
- if (lstbox_select_partner.Items.Count == 0)
- {
- Connect.displayMessage("No matching Partner(s) found.");
- }
- }
- catch (Exception ex)
- {
- Connect.handleException(ex);
- }
- }
-
- private void btn_select_partner_search_Click(object sender, EventArgs e)
- {
- search_lst_partner();
- }
-
- public string SelectPartnerText
- {
- /*
- * Will gets and sets the selected partner from the list of partners.
- */
- get
- {
- return this.txt_select_partner.Text;
- }
- set
- {
- this.txt_select_partner.Text = value;
- }
- }
-
- private void frm_select_partner_Load(object sender, EventArgs e)
- {
- Record[] partenr_list = Cache.OpenERPOutlookPlugin.SearchRecord(null,"res.partner");
-
- foreach (Record partner in partenr_list)
- {
- lstbox_select_partner.Items.Add(partner.name);
- }
- }
- }
-}
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_select_partner.resx b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_select_partner.resx
deleted file mode 100644
index 17f1d222db0..00000000000
--- a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPlugin/frm_select_partner.resx
+++ /dev/null
@@ -1,194 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- text/microsoft-resx
-
-
- 2.0
-
-
- System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
-
-
- R0lGODlhEAAQAPYAAPb29v7+/v39/fr6+t///+P//+T//9zc3IKDkfP//8X3//Pz99P//5Zxf5qqwZiZ
- nc98R5K03KS83aG60bbr/8f5/7C61fX09OXm5rzx/////qzI6sr2/7TO6vr//7vt/9n//7rt/+Xl5LLm
- //2rRKihla683sx6SXp/iuzs9P/+/aC4xd/w+LHl/4+ewuTk5Ih1jpKhucjh7cHAwaGepcfH2bHe+2ps
- ft7f4Pz8/Ih1jZmYot7d3PPy+Nb//9T//4WJm97f38v5/8LE3cD0/8v9///pybnb8fjgv9z///////v7
- +/urRnt7hLnk/9Tk86zg/5mZpn+Ajbvm//j+/7nt///aof/58f/589v//5m75dH//8P3/8L3/2trg8z8
- /4uiwadtSIGMrMaAXZ6hvqKhouz///ysRbvr//39/v/XnZaotvPOmbSwtpl0hv2mOcjO5bu7vry8yd7e
- 7K+tsLC83ZiuzqyEacrW6P///wAAAAAAAAAAAAAAAAAAAAAAACH5BAEAAHkALAAAAAAQABAAAAejgHmC
- g4SFhoILFnYSJjUAh3lpQyw+RB9aZBeGAXBPVE5QI1wRcoY9HRxTIRVCXwoOA4VzRxQtRVkFBCArj4Qp
- GxlVPwYJZgRrvYMBdTZdDAUeSjJAsYNXSHEuaFtJBnheM4QaaiR3TWJgEzE3ZTmDKkZnEA07PG00dAdL
- g1hWTGMwpGDIE0CAgEJs3pzQgeIFJEElwrhBIOKhIBwPogSxyNFQIAA7
-
-
-
-
- AAABAAEAICAAAAEAGACoDAAAFgAAACgAAAAgAAAAQAAAAAEAGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAxO+0UHsorMtUkJMo6LOY5JN81HsdDLM4/JMdINcBISKJCSpA+RpM9SJo6RJsxPJg2PJ84PKU4OadA
- Pbs7L8lANd8qJNUiJtIZKModMNcUJOIUHu0iJvsaIOUaJsQuQMkXHNcvNOciJsstLNAvItJSQekqG6xQ
- QchYSNKOg/3Cw//Q2f/P1f/S2P/T3P/R2P+iqP+7vv9vct8zM6k0Lbg6NcwcGroyN9oiLs4eLdccKOQg
- KvMkKfYaIuEbJsgnOMkdGuUeHd4+PeseHLxAONI9N7p4edSzt//W1v/k4//h6P/f5v/Dw/+2tf+1t/+0
- tv/Kzv/Y3f/S1f/U2P/Fyf8iKJlOVNMtM8IuM9UjKtgdJd0aI98bJN8nMOUqNN8dKc0pIPMnIOUvK9g5
- N8w4NLWGiObR4P/k9//k7//K0/+JkeRWW8I5N78uKcAvLL4wMrxCR8hTWNKOlP/a4v/Z4//W4v+Ai+cx
- OaooKr4mJ88sLuAjKNsWIMwoMt4yOusZI9QnHO42Le8lIME+Pb2Dg+fk7//o///b9/ff8v+OnN5ET6sx
- NrE3MdIyKdcvKsszNscxOL0uN7YkKqdvduPc6f/Y6v/f8P/F0v9PUMg1MMc0MNY4OOQlK9AdJs4iLN4c
- J90sIucvKdovL7lcX8fm6v/q9v/m/vbl//yQocxRXa8jLp4sML83MeIsJNwnJsoxNckjLrRATNBARNIo
- K6srN4/c7f/a7f/k8//Kzf9pZN0nHrQrJskyNNgkLNMbJdYgK+AxK9wxL8k+RK/N1f/s8v/r9v/Y6uvq
- +/9UW6o2ObMlKbgpK88vKuMqJt0sL801PcwwP8QaJ7MjIsY1MdBDRL54gtDm9//Y6fzq8//AwP9jWdU0
- KMAxLdIwMt4hLtgcLdc3NdsfIauFkODo9P/x+v/p8vzx/f+uteY7OKw2L8wtLtYpK90nKeIpKt4qLs0l
- Lr4iML4yPdUrJ94xKN0yLMc3OKavuuzt+//c5vfv9P/Z0/9rYN8tJsMoKNIjL9UYK9A9Od4hJKS9y//n
- 9//0///x9/z09v+dl+g8LsoyI+InJ98iKd4iKN8kKtspLdIpMM0qNdMcI8wpJucqH+c8L+kzKL5MTaXs
- 8//0///w+v/x8f++uf8vKLM0M9YlL9MkNNoxK9Y2OLrc7P/t///4//f7///28v+EeNw8JtkuHu4kJuMe
- Kd4gKd4iKdwpKdkpKdknK90gJNssKu4iGeUuH+wvIdM9MrCmpOr0/f/r9uz2/P/q7f+XlP8zMcYhKMsf
- LNYmHtc4OsTk8v/x//73/+39//v28P99b9U7JdssHu4gKOAcK9seKd4iJ+ApJOUrIucmIegjIuYwMu8b
- GtwiGOczJOowHsVYS7709P/5//r6//Xy/P/d4P87PbkiJMghJdspI+AvML7b6f/x//79//L+/vj68v+N
- f+Q7J9crIeoeKtwZLtccKtwiJ+IrIeksH+0oHu0iH+YuNOsdItsdGuU3LPgzHt42I7XY0P/6/f/2/+np
- +ejq8/92fN8rLcgqKeMsKuEyNcDc6f/z//////j///779P+Ngds7LM4rJeIcLdcXMNQbLNsiJ+IsIucu
- IOouJOwhHt8lL+AfLNwaIuEtLPI0Juo1I8SajOr49f/1/+z4//Dt+//J0v8vLsAvKt8gJc44QMPj7//w
- +f/8/Pz//P/88v9zabw7L8cpKdscL9QXMNIbLNsiKN8sJeIwJOIzK+QjJdcfK9cdLtsWJt0eJ+MuJ+Y5
- K9B8bNzv5v/z+fT6//Ln9/3k7/8wMrYsJtEcK70yQbXj8P/w9//79P//+P/78P98csU5McQnK9gbL9QX
- MNQbLNkkK9kuKtcyK9IxL88qL9EcKNQYKtsXK94YKNknK9g1L8pjVM3m2f/6+P/6//7j8fff7P9fYdcs
- KsMsN88tOLHb5//z+//////89/n79f+kn+o5NL8nLNUbLtUVL9cbLNsiKtssKtgyK9QsJ8oyM9ceJtcV
- JdwYLuQWLd0hLtYrL8MxK6LWzv/49//w9fbz///q9v+lqP83NrYjHNk7Oszk7f/d7ez9/+T8/9/2+v/e
- 4P8wMKwyN9kLHMcgNukZKeAdJuIrJu0uIek1I+IyJOAlJeMbJuYQKOYQKuIXLtgkNcYmL5fm7v/z/P/1
- /vv2///x9//Y1v9FQKMoHuM3M8+epO/x/f/7/+n9/+T4///f4f8xMqQxOM8WJNAZKt8aKuEaJeEhIOYw
- Je01IeYzI+InJ98bKd8QKuIOKuIVKt8iMc4wOK/Axv/v9v/4/v/4/v/w8//o5/9APY0pKtg4Os5dX77t
- 8P/19f/7+v/69v/t6P9OTrgxNsEoMtYWJdUfLt4bKNgdJNEwMNwzJ9kyKtUlMc0bM8sSMdQSLdwZJecl
- JeM3Lc2Shvzq4//49v/4+v/q7v/s7f8/P40iKtEzOc5BQbXi3v/27v/48P/58v/z7v+OjesuMLQuMtcf
- KN0iKuEcKNQkMckrMcowKtcsK9UkNcYbOMIVNskXMNQgJeUsJOM6Kc6Zhv/u5P/69//2+//t8//h4v9B
- P5gbJdYiKcw3N8GLhOz06//79P/z8f/09f/Pzf80MK0qItMsJu8hIOYgJtcwQssjMLwrJ94pJuAiMssc
- OcAbOMIeNccnLNUzLNBAMrXLvv/4+f/6//vy/frv+P+mpvpAOqkhL+YXIc0xMspEPrXZ0v/49P/6/f/2
- /P/t7v9cWMIsIcswJO4kGugkJt82RNMiMb0nKtklKN4gMsseNsQgNcYlMsouLNI7L8dBM6Ps5f/5//76
- //Hu/Pjs9f90btlIPckhMe8YI9gsLtAyLq+PjNzh4f/4///2//zv9/+lp/VFO80yI98tIe0tJustMNgo
- M8skMssiM8ogNMkiMsskLdUrKNs1JtxALcpNPajy7f/y+/j4//Tt+f/o7f9OQspGM+AUKd8bKdslKNE4
- NcY/OqOsqefz+f/0///v/P/n8f9hYsozLcI6L+MzK+ohHNUtMd4iMc4gMs0iLtQkKdwpIucwIec7JN5F
- LsZrXbv08v/0//3z//7n8v/P0P8tH7swG9sYMdUaLNMpLNs0LdQ6LMBbTsGxrfTv9f/s/P/o/P/T5f89
- S54jKKkwLNI4L/EpIukbINsmLOksJ/gmGvYrFPg6IPZEK99FMrevqPPw9f/k8Prt+//m7v97eOUxI8g0
- IeIaL9EcLNMnKuAwKOEwINI8K8htYdeene3T3//k/P/J5PnK4/82Rp8uM7ciHcwnH+IsLe0aGuIdFO0x
- H/4zHPQqFNE9L71jXL3s8f/e7P/q+//m9P+DiN0xLqw3LNY8LewiLdslLN8pKuYvJ+owH+UwHNk5Kc5F
- Pb+Ume7N3v/d+f/R8P/G3/9FV7A5QcQwM9IqLdwjJd4xKuk8MuosJMUwLqp9hdLa6v/m/f/b9f/j9v+z
- v/9ARLQrKLk5MdwfFc0oKuMoKeUoJeYoIuUsIusyJe0zJeEvJspBQMBMVLG1y//a9P/Y8f/C2f+Ek/o9
- SsRATdEyPsYoL7oyN7hXW8uNmOrF2P/h+P/X8v/d9f+KmuYgKpU4OcVEQeQXEsE8N+wqIOksI+gnIuEg
- H9kiI98tLOgvKuksJ94kIMU8PcsvN6hUYL6Jm+7W6P/E1f/T6P/F5f/R9P/U8P/U6//U5v/d7v/d7//Y
- 6f+zw/9DULg1PMEtL8oSEL0uKuE6NO0nItsxIugyJ+kvKuMlKdshKNsgKd4hJeIhI+AzMegkIcosK8Ex
- Nbk9Q7ouNqdmceFHV7e00P+du+yNpd+brO+uuv+epv9kac8rMKM9QsYeJbgoLc8yNuMsLeMoJ+EiHtsl
- H9w4Ktw1K9wxL90rMd4hL9wZKdoXJdscJt4fI9k8POwnJM41MNM5NNMiGro1Lc5GQNswLbkuKrE2MLdE
- O8hLPNM/L9A0JM8sIdEjIc8wNd4pNNYcKcsVHsUgJdQ0M+0uKeg1KNAuJs0oJ9EnLtkdLtkWKdgWKt0i
- MOYeJ9wZGs4zLuMwJdktIdVFNuwvH9gxIdo8KdxBLd1AK9s9Jdc6H9o7IOI5H+40IO4lH+I3O/EQH8IZ
- Lcg2ROQeJ88eHtYoI+QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
-
-
-
\ No newline at end of file
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPluginSetup/OpenERPOutlookPluginSetup.vdproj b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPluginSetup/OpenERPOutlookPluginSetup.vdproj
deleted file mode 100644
index 2ecd6c494cf..00000000000
--- a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPluginSetup/OpenERPOutlookPluginSetup.vdproj
+++ /dev/null
@@ -1,988 +0,0 @@
-"DeployProject"
-{
-"VSVersion" = "3:800"
-"ProjectType" = "8:{978C614F-708E-4E1A-B201-565925725DBA}"
-"IsWebType" = "8:FALSE"
-"ProjectName" = "8:OpenERPOutlookPluginSetup"
-"LanguageId" = "3:1033"
-"CodePage" = "3:1252"
-"UILanguageId" = "3:1033"
-"SccProjectName" = "8:"
-"SccLocalPath" = "8:"
-"SccAuxPath" = "8:"
-"SccProvider" = "8:"
- "Hierarchy"
- {
- "Entry"
- {
- "MsmKey" = "8:_6AC61E6DAA74BD8A62A56739851214E7"
- "OwnerKey" = "8:_D219AD7AB7924D44B7E2945648C76CF7"
- "MsmSig" = "8:_UNDEFINED"
- }
- "Entry"
- {
- "MsmKey" = "8:_7588D46F3D97B108090A11D1415DE5EC"
- "OwnerKey" = "8:_D219AD7AB7924D44B7E2945648C76CF7"
- "MsmSig" = "8:_UNDEFINED"
- }
- "Entry"
- {
- "MsmKey" = "8:_9BA1227571F16B6ABCB102A098A4B13F"
- "OwnerKey" = "8:_6AC61E6DAA74BD8A62A56739851214E7"
- "MsmSig" = "8:_UNDEFINED"
- }
- "Entry"
- {
- "MsmKey" = "8:_9BA1227571F16B6ABCB102A098A4B13F"
- "OwnerKey" = "8:_D219AD7AB7924D44B7E2945648C76CF7"
- "MsmSig" = "8:_UNDEFINED"
- }
- "Entry"
- {
- "MsmKey" = "8:_B66CD6B8E834B37C2AFA64398688811D"
- "OwnerKey" = "8:_D219AD7AB7924D44B7E2945648C76CF7"
- "MsmSig" = "8:_UNDEFINED"
- }
- "Entry"
- {
- "MsmKey" = "8:_B66CD6B8E834B37C2AFA64398688811D"
- "OwnerKey" = "8:_7588D46F3D97B108090A11D1415DE5EC"
- "MsmSig" = "8:_UNDEFINED"
- }
- "Entry"
- {
- "MsmKey" = "8:_D219AD7AB7924D44B7E2945648C76CF7"
- "OwnerKey" = "8:_UNDEFINED"
- "MsmSig" = "8:_UNDEFINED"
- }
- "Entry"
- {
- "MsmKey" = "8:_UNDEFINED"
- "OwnerKey" = "8:_7588D46F3D97B108090A11D1415DE5EC"
- "MsmSig" = "8:_UNDEFINED"
- }
- "Entry"
- {
- "MsmKey" = "8:_UNDEFINED"
- "OwnerKey" = "8:_9BA1227571F16B6ABCB102A098A4B13F"
- "MsmSig" = "8:_UNDEFINED"
- }
- "Entry"
- {
- "MsmKey" = "8:_UNDEFINED"
- "OwnerKey" = "8:_6AC61E6DAA74BD8A62A56739851214E7"
- "MsmSig" = "8:_UNDEFINED"
- }
- "Entry"
- {
- "MsmKey" = "8:_UNDEFINED"
- "OwnerKey" = "8:_B66CD6B8E834B37C2AFA64398688811D"
- "MsmSig" = "8:_UNDEFINED"
- }
- "Entry"
- {
- "MsmKey" = "8:_UNDEFINED"
- "OwnerKey" = "8:_D219AD7AB7924D44B7E2945648C76CF7"
- "MsmSig" = "8:_UNDEFINED"
- }
- }
- "Configurations"
- {
- "Debug"
- {
- "DisplayName" = "8:Debug"
- "IsDebugOnly" = "11:TRUE"
- "IsReleaseOnly" = "11:FALSE"
- "OutputFilename" = "8:Debug\\OpenERPOutlookPluginSetup.msi"
- "PackageFilesAs" = "3:2"
- "PackageFileSize" = "3:-2147483648"
- "CabType" = "3:1"
- "Compression" = "3:2"
- "SignOutput" = "11:FALSE"
- "CertificateFile" = "8:"
- "PrivateKeyFile" = "8:"
- "TimeStampServer" = "8:"
- "InstallerBootstrapper" = "3:2"
- "BootstrapperCfg:{63ACBE69-63AA-4F98-B2B6-99F9E24495F2}"
- {
- "Enabled" = "11:TRUE"
- "PromptEnabled" = "11:TRUE"
- "PrerequisitesLocation" = "2:1"
- "Url" = "8:"
- "ComponentsUrl" = "8:"
- "Items"
- {
- "{EDC2488A-8267-493A-A98E-7D9C3B36CDF3}:Microsoft.Net.Framework.3.5"
- {
- "Name" = "8:.NET Framework 3.5"
- "ProductCode" = "8:Microsoft.Net.Framework.3.5"
- }
- "{EDC2488A-8267-493A-A98E-7D9C3B36CDF3}:Microsoft.Windows.Installer.3.1"
- {
- "Name" = "8:Windows Installer 3.1"
- "ProductCode" = "8:Microsoft.Windows.Installer.3.1"
- }
- }
- }
- }
- "Release"
- {
- "DisplayName" = "8:Release"
- "IsDebugOnly" = "11:FALSE"
- "IsReleaseOnly" = "11:TRUE"
- "OutputFilename" = "8:Release\\OpenERPOutlookPluginSetup.msi"
- "PackageFilesAs" = "3:2"
- "PackageFileSize" = "3:-2147483648"
- "CabType" = "3:1"
- "Compression" = "3:2"
- "SignOutput" = "11:FALSE"
- "CertificateFile" = "8:"
- "PrivateKeyFile" = "8:"
- "TimeStampServer" = "8:"
- "InstallerBootstrapper" = "3:2"
- "BootstrapperCfg:{63ACBE69-63AA-4F98-B2B6-99F9E24495F2}"
- {
- "Enabled" = "11:TRUE"
- "PromptEnabled" = "11:TRUE"
- "PrerequisitesLocation" = "2:1"
- "Url" = "8:"
- "ComponentsUrl" = "8:"
- "Items"
- {
- "{EDC2488A-8267-493A-A98E-7D9C3B36CDF3}:Microsoft.Net.Framework.3.5"
- {
- "Name" = "8:.NET Framework 3.5"
- "ProductCode" = "8:Microsoft.Net.Framework.3.5"
- }
- "{EDC2488A-8267-493A-A98E-7D9C3B36CDF3}:Microsoft.Windows.Installer.3.1"
- {
- "Name" = "8:Windows Installer 3.1"
- "ProductCode" = "8:Microsoft.Windows.Installer.3.1"
- }
- }
- }
- }
- }
- "Deployable"
- {
- "CustomAction"
- {
- }
- "DefaultFeature"
- {
- "Name" = "8:DefaultFeature"
- "Title" = "8:"
- "Description" = "8:"
- }
- "ExternalPersistence"
- {
- "LaunchCondition"
- {
- "{A06ECF26-33A3-4562-8140-9B0E340D4F24}:_BFDD92B2291E48D1A8B52DFCA8631CD4"
- {
- "Name" = "8:.NET Framework"
- "Message" = "8:[VSDNETMSG]"
- "Version" = "8:3.5.21022"
- "AllowLaterVersions" = "11:FALSE"
- "InstallUrl" = "8:http://go.microsoft.com/fwlink/?LinkId=76617"
- }
- }
- }
- "File"
- {
- "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_6AC61E6DAA74BD8A62A56739851214E7"
- {
- "AssemblyRegister" = "3:1"
- "AssemblyIsInGAC" = "11:TRUE"
- "AssemblyAsmDisplayName" = "8:Microsoft.Office.Interop.Outlook, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c"
- "ScatterAssemblies"
- {
- "_6AC61E6DAA74BD8A62A56739851214E7"
- {
- "Name" = "8:Microsoft.Office.Interop.Outlook.dll"
- "Attributes" = "3:512"
- }
- }
- "SourcePath" = "8:Microsoft.Office.Interop.Outlook.dll"
- "TargetName" = "8:"
- "Tag" = "8:"
- "Folder" = "8:_F8355F1930014BA7AC04125197F9FCF8"
- "Condition" = "8:"
- "Transitive" = "11:FALSE"
- "Vital" = "11:TRUE"
- "ReadOnly" = "11:FALSE"
- "Hidden" = "11:FALSE"
- "System" = "11:FALSE"
- "Permanent" = "11:FALSE"
- "SharedLegacy" = "11:FALSE"
- "PackageAs" = "3:1"
- "Register" = "3:1"
- "Exclude" = "11:FALSE"
- "IsDependency" = "11:TRUE"
- "IsolateTo" = "8:"
- }
- "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_7588D46F3D97B108090A11D1415DE5EC"
- {
- "AssemblyRegister" = "3:1"
- "AssemblyIsInGAC" = "11:FALSE"
- "AssemblyAsmDisplayName" = "8:OpenERPClient, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL"
- "ScatterAssemblies"
- {
- "_7588D46F3D97B108090A11D1415DE5EC"
- {
- "Name" = "8:OpenERPClient.dll"
- "Attributes" = "3:512"
- }
- }
- "SourcePath" = "8:OpenERPClient.dll"
- "TargetName" = "8:"
- "Tag" = "8:"
- "Folder" = "8:_F8355F1930014BA7AC04125197F9FCF8"
- "Condition" = "8:"
- "Transitive" = "11:FALSE"
- "Vital" = "11:TRUE"
- "ReadOnly" = "11:FALSE"
- "Hidden" = "11:FALSE"
- "System" = "11:FALSE"
- "Permanent" = "11:FALSE"
- "SharedLegacy" = "11:FALSE"
- "PackageAs" = "3:1"
- "Register" = "3:1"
- "Exclude" = "11:FALSE"
- "IsDependency" = "11:TRUE"
- "IsolateTo" = "8:"
- }
- "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_9BA1227571F16B6ABCB102A098A4B13F"
- {
- "AssemblyRegister" = "3:1"
- "AssemblyIsInGAC" = "11:TRUE"
- "AssemblyAsmDisplayName" = "8:office, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c"
- "ScatterAssemblies"
- {
- "_9BA1227571F16B6ABCB102A098A4B13F"
- {
- "Name" = "8:office.dll"
- "Attributes" = "3:512"
- }
- }
- "SourcePath" = "8:office.dll"
- "TargetName" = "8:"
- "Tag" = "8:"
- "Folder" = "8:_F8355F1930014BA7AC04125197F9FCF8"
- "Condition" = "8:"
- "Transitive" = "11:FALSE"
- "Vital" = "11:TRUE"
- "ReadOnly" = "11:FALSE"
- "Hidden" = "11:FALSE"
- "System" = "11:FALSE"
- "Permanent" = "11:FALSE"
- "SharedLegacy" = "11:FALSE"
- "PackageAs" = "3:1"
- "Register" = "3:1"
- "Exclude" = "11:FALSE"
- "IsDependency" = "11:TRUE"
- "IsolateTo" = "8:"
- }
- "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_B66CD6B8E834B37C2AFA64398688811D"
- {
- "AssemblyRegister" = "3:1"
- "AssemblyIsInGAC" = "11:FALSE"
- "AssemblyAsmDisplayName" = "8:CookComputing.XmlRpcV2, Version=0.0.0.0, Culture=neutral, processorArchitecture=MSIL"
- "ScatterAssemblies"
- {
- "_B66CD6B8E834B37C2AFA64398688811D"
- {
- "Name" = "8:CookComputing.XmlRpcV2.dll"
- "Attributes" = "3:512"
- }
- }
- "SourcePath" = "8:CookComputing.XmlRpcV2.dll"
- "TargetName" = "8:"
- "Tag" = "8:"
- "Folder" = "8:_F8355F1930014BA7AC04125197F9FCF8"
- "Condition" = "8:"
- "Transitive" = "11:FALSE"
- "Vital" = "11:TRUE"
- "ReadOnly" = "11:FALSE"
- "Hidden" = "11:FALSE"
- "System" = "11:FALSE"
- "Permanent" = "11:FALSE"
- "SharedLegacy" = "11:FALSE"
- "PackageAs" = "3:1"
- "Register" = "3:1"
- "Exclude" = "11:FALSE"
- "IsDependency" = "11:TRUE"
- "IsolateTo" = "8:"
- }
- }
- "FileType"
- {
- }
- "Folder"
- {
- "{1525181F-901A-416C-8A58-119130FE478E}:_0AB219A94AD9480C8B328A36290F8500"
- {
- "Name" = "8:#1916"
- "AlwaysCreate" = "11:FALSE"
- "Condition" = "8:"
- "Transitive" = "11:FALSE"
- "Property" = "8:DesktopFolder"
- "Folders"
- {
- }
- }
- "{1525181F-901A-416C-8A58-119130FE478E}:_BE76AEAED62647E882A7E7E462208B6C"
- {
- "Name" = "8:#1919"
- "AlwaysCreate" = "11:FALSE"
- "Condition" = "8:"
- "Transitive" = "11:FALSE"
- "Property" = "8:ProgramMenuFolder"
- "Folders"
- {
- }
- }
- "{3C67513D-01DD-4637-8A68-80971EB9504F}:_F8355F1930014BA7AC04125197F9FCF8"
- {
- "DefaultLocation" = "8:[ProgramFilesFolder][Manufacturer]\\[ProductName]"
- "Name" = "8:#1925"
- "AlwaysCreate" = "11:FALSE"
- "Condition" = "8:"
- "Transitive" = "11:FALSE"
- "Property" = "8:TARGETDIR"
- "Folders"
- {
- }
- }
- }
- "LaunchCondition"
- {
- }
- "Locator"
- {
- }
- "MsiBootstrapper"
- {
- "LangId" = "3:1033"
- "RequiresElevation" = "11:FALSE"
- }
- "Product"
- {
- "Name" = "8:Microsoft Visual Studio"
- "ProductName" = "8:OpenERPOutlookPluginSetup"
- "ProductCode" = "8:{DB110066-1D22-421E-AE6E-008EFC7D9BA3}"
- "PackageCode" = "8:{01C16D46-10C4-4867-9DA7-158EA0851BA2}"
- "UpgradeCode" = "8:{D423841B-05E6-4B05-93A7-3AF0D3F87416}"
- "RestartWWWService" = "11:FALSE"
- "RemovePreviousVersions" = "11:FALSE"
- "DetectNewerInstalledVersion" = "11:TRUE"
- "InstallAllUsers" = "11:FALSE"
- "ProductVersion" = "8:1.0.0"
- "Manufacturer" = "8:OpenERP"
- "ARPHELPTELEPHONE" = "8:"
- "ARPHELPLINK" = "8:"
- "Title" = "8:OpenERPOutlookPluginSetup"
- "Subject" = "8:"
- "ARPCONTACT" = "8:OpenERP"
- "Keywords" = "8:"
- "ARPCOMMENTS" = "8:"
- "ARPURLINFOABOUT" = "8:"
- "ARPPRODUCTICON" = "8:"
- "ARPIconIndex" = "3:0"
- "SearchPath" = "8:"
- "UseSystemSearchPath" = "11:TRUE"
- "TargetPlatform" = "3:0"
- "PreBuildEvent" = "8:"
- "PostBuildEvent" = "8:"
- "RunPostBuildEvent" = "3:0"
- }
- "Registry"
- {
- "HKLM"
- {
- "Keys"
- {
- "{60EA8692-D2D5-43EB-80DC-7906BF13D6EF}:_85BD67F9F053414A885B4BD155C3503A"
- {
- "Name" = "8:Software"
- "Condition" = "8:"
- "AlwaysCreate" = "11:FALSE"
- "DeleteAtUninstall" = "11:FALSE"
- "Transitive" = "11:FALSE"
- "Keys"
- {
- "{60EA8692-D2D5-43EB-80DC-7906BF13D6EF}:_EBCD33B942DF4A239ACC7022DD3FEAA6"
- {
- "Name" = "8:Microsoft"
- "Condition" = "8:"
- "AlwaysCreate" = "11:TRUE"
- "DeleteAtUninstall" = "11:FALSE"
- "Transitive" = "11:FALSE"
- "Keys"
- {
- "{60EA8692-D2D5-43EB-80DC-7906BF13D6EF}:_5B7FCC91FAAA4F64BB7C83492A6F2AF0"
- {
- "Name" = "8:Office"
- "Condition" = "8:"
- "AlwaysCreate" = "11:TRUE"
- "DeleteAtUninstall" = "11:FALSE"
- "Transitive" = "11:FALSE"
- "Keys"
- {
- "{60EA8692-D2D5-43EB-80DC-7906BF13D6EF}:_1064D50BF01A4D51B868E982FC220247"
- {
- "Name" = "8:Outlook"
- "Condition" = "8:"
- "AlwaysCreate" = "11:TRUE"
- "DeleteAtUninstall" = "11:FALSE"
- "Transitive" = "11:FALSE"
- "Keys"
- {
- "{60EA8692-D2D5-43EB-80DC-7906BF13D6EF}:_137204EE56DC497088E348674D3D8B7F"
- {
- "Name" = "8:AddIns"
- "Condition" = "8:"
- "AlwaysCreate" = "11:TRUE"
- "DeleteAtUninstall" = "11:FALSE"
- "Transitive" = "11:FALSE"
- "Keys"
- {
- "{60EA8692-D2D5-43EB-80DC-7906BF13D6EF}:_D274EDB843AA45D79536215DBFA689AE"
- {
- "Name" = "8:OpenERPOutlookPlugin.Connect"
- "Condition" = "8:"
- "AlwaysCreate" = "11:TRUE"
- "DeleteAtUninstall" = "11:FALSE"
- "Transitive" = "11:FALSE"
- "Keys"
- {
- }
- "Values"
- {
- "{ADCFDA98-8FDD-45E4-90BC-E3D20B029870}:_7DAB0B878C2B4AD6961544515CF9F67F"
- {
- "Name" = "8:LoadBehavior"
- "Condition" = "8:"
- "Transitive" = "11:FALSE"
- "ValueTypes" = "3:3"
- "Value" = "3:3"
- }
- "{ADCFDA98-8FDD-45E4-90BC-E3D20B029870}:_E727FA9F9AE4473B86EC5F2749DA6E00"
- {
- "Name" = "8:Description"
- "Condition" = "8:"
- "Transitive" = "11:FALSE"
- "ValueTypes" = "3:1"
- "Value" = "8:OpenERP Outlook Plugin"
- }
- "{ADCFDA98-8FDD-45E4-90BC-E3D20B029870}:_F8A784A42EA24C908396CFE4B36C9F21"
- {
- "Name" = "8:FriendlyName"
- "Condition" = "8:"
- "Transitive" = "11:FALSE"
- "ValueTypes" = "3:1"
- "Value" = "8:OpenERP Outlook Plugin"
- }
- }
- }
- }
- "Values"
- {
- }
- }
- }
- "Values"
- {
- }
- }
- }
- "Values"
- {
- }
- }
- }
- "Values"
- {
- }
- }
- }
- "Values"
- {
- }
- }
- }
- }
- "HKCU"
- {
- "Keys"
- {
- "{60EA8692-D2D5-43EB-80DC-7906BF13D6EF}:_65C75F62BA5342D88380AD586D8CB4A2"
- {
- "Name" = "8:Software"
- "Condition" = "8:"
- "AlwaysCreate" = "11:FALSE"
- "DeleteAtUninstall" = "11:FALSE"
- "Transitive" = "11:FALSE"
- "Keys"
- {
- }
- "Values"
- {
- }
- }
- }
- }
- "HKCR"
- {
- "Keys"
- {
- }
- }
- "HKU"
- {
- "Keys"
- {
- }
- }
- "HKPU"
- {
- "Keys"
- {
- }
- }
- }
- "Sequences"
- {
- }
- "Shortcut"
- {
- }
- "UserInterface"
- {
- "{DF760B10-853B-4699-99F2-AFF7185B4A62}:_05A1A869F1C748A0AA4687CF7DF17408"
- {
- "Name" = "8:#1902"
- "Sequence" = "3:1"
- "Attributes" = "3:3"
- "Dialogs"
- {
- "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_5F37EBB554844174BFF8F45DB2607A7D"
- {
- "Sequence" = "3:100"
- "DisplayName" = "8:Finished"
- "UseDynamicProperties" = "11:TRUE"
- "IsDependency" = "11:FALSE"
- "SourcePath" = "8:\\VsdFinishedDlg.wid"
- "Properties"
- {
- "BannerBitmap"
- {
- "Name" = "8:BannerBitmap"
- "DisplayName" = "8:#1001"
- "Description" = "8:#1101"
- "Type" = "3:8"
- "ContextData" = "8:Bitmap"
- "Attributes" = "3:4"
- "Setting" = "3:1"
- "UsePlugInResources" = "11:TRUE"
- }
- "UpdateText"
- {
- "Name" = "8:UpdateText"
- "DisplayName" = "8:#1058"
- "Description" = "8:#1158"
- "Type" = "3:15"
- "ContextData" = "8:"
- "Attributes" = "3:0"
- "Setting" = "3:1"
- "Value" = "8:#1258"
- "DefaultValue" = "8:#1258"
- "UsePlugInResources" = "11:TRUE"
- }
- }
- }
- }
- }
- "{DF760B10-853B-4699-99F2-AFF7185B4A62}:_2237F99549C04193ADB5655D7E6FD5B4"
- {
- "Name" = "8:#1901"
- "Sequence" = "3:1"
- "Attributes" = "3:2"
- "Dialogs"
- {
- "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_8A6734448CF54465BD37D45C0CFF5000"
- {
- "Sequence" = "3:100"
- "DisplayName" = "8:Progress"
- "UseDynamicProperties" = "11:TRUE"
- "IsDependency" = "11:FALSE"
- "SourcePath" = "8:\\VsdProgressDlg.wid"
- "Properties"
- {
- "BannerBitmap"
- {
- "Name" = "8:BannerBitmap"
- "DisplayName" = "8:#1001"
- "Description" = "8:#1101"
- "Type" = "3:8"
- "ContextData" = "8:Bitmap"
- "Attributes" = "3:4"
- "Setting" = "3:1"
- "UsePlugInResources" = "11:TRUE"
- }
- "ShowProgress"
- {
- "Name" = "8:ShowProgress"
- "DisplayName" = "8:#1009"
- "Description" = "8:#1109"
- "Type" = "3:5"
- "ContextData" = "8:1;True=1;False=0"
- "Attributes" = "3:0"
- "Setting" = "3:0"
- "Value" = "3:1"
- "DefaultValue" = "3:1"
- "UsePlugInResources" = "11:TRUE"
- }
- }
- }
- }
- }
- "{2479F3F5-0309-486D-8047-8187E2CE5BA0}:_4B62B60C5A10485EBB000ABEF6F8B0E1"
- {
- "UseDynamicProperties" = "11:FALSE"
- "IsDependency" = "11:FALSE"
- "SourcePath" = "8:\\VsdUserInterface.wim"
- }
- "{DF760B10-853B-4699-99F2-AFF7185B4A62}:_7355B2D19A0B4B13A75AFF1D63E8FA4E"
- {
- "Name" = "8:#1900"
- "Sequence" = "3:1"
- "Attributes" = "3:1"
- "Dialogs"
- {
- "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_77890D6A5244491A93629AEBF7575094"
- {
- "Sequence" = "3:300"
- "DisplayName" = "8:Confirm Installation"
- "UseDynamicProperties" = "11:TRUE"
- "IsDependency" = "11:FALSE"
- "SourcePath" = "8:\\VsdConfirmDlg.wid"
- "Properties"
- {
- "BannerBitmap"
- {
- "Name" = "8:BannerBitmap"
- "DisplayName" = "8:#1001"
- "Description" = "8:#1101"
- "Type" = "3:8"
- "ContextData" = "8:Bitmap"
- "Attributes" = "3:4"
- "Setting" = "3:1"
- "UsePlugInResources" = "11:TRUE"
- }
- }
- }
- "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_8B76EAAF28A844BBA54D063D07BA2FF8"
- {
- "Sequence" = "3:200"
- "DisplayName" = "8:Installation Folder"
- "UseDynamicProperties" = "11:TRUE"
- "IsDependency" = "11:FALSE"
- "SourcePath" = "8:\\VsdFolderDlg.wid"
- "Properties"
- {
- "BannerBitmap"
- {
- "Name" = "8:BannerBitmap"
- "DisplayName" = "8:#1001"
- "Description" = "8:#1101"
- "Type" = "3:8"
- "ContextData" = "8:Bitmap"
- "Attributes" = "3:4"
- "Setting" = "3:1"
- "UsePlugInResources" = "11:TRUE"
- }
- "InstallAllUsersVisible"
- {
- "Name" = "8:InstallAllUsersVisible"
- "DisplayName" = "8:#1059"
- "Description" = "8:#1159"
- "Type" = "3:5"
- "ContextData" = "8:1;True=1;False=0"
- "Attributes" = "3:0"
- "Setting" = "3:0"
- "Value" = "3:1"
- "DefaultValue" = "3:1"
- "UsePlugInResources" = "11:TRUE"
- }
- }
- }
- "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_A16110FB2319496FA65112471161C0FB"
- {
- "Sequence" = "3:100"
- "DisplayName" = "8:Welcome"
- "UseDynamicProperties" = "11:TRUE"
- "IsDependency" = "11:FALSE"
- "SourcePath" = "8:\\VsdWelcomeDlg.wid"
- "Properties"
- {
- "BannerBitmap"
- {
- "Name" = "8:BannerBitmap"
- "DisplayName" = "8:#1001"
- "Description" = "8:#1101"
- "Type" = "3:8"
- "ContextData" = "8:Bitmap"
- "Attributes" = "3:4"
- "Setting" = "3:1"
- "UsePlugInResources" = "11:TRUE"
- }
- "CopyrightWarning"
- {
- "Name" = "8:CopyrightWarning"
- "DisplayName" = "8:#1002"
- "Description" = "8:#1102"
- "Type" = "3:3"
- "ContextData" = "8:"
- "Attributes" = "3:0"
- "Setting" = "3:1"
- "Value" = "8:#1202"
- "DefaultValue" = "8:#1202"
- "UsePlugInResources" = "11:TRUE"
- }
- "Welcome"
- {
- "Name" = "8:Welcome"
- "DisplayName" = "8:#1003"
- "Description" = "8:#1103"
- "Type" = "3:3"
- "ContextData" = "8:"
- "Attributes" = "3:0"
- "Setting" = "3:1"
- "Value" = "8:#1203"
- "DefaultValue" = "8:#1203"
- "UsePlugInResources" = "11:TRUE"
- }
- }
- }
- }
- }
- "{DF760B10-853B-4699-99F2-AFF7185B4A62}:_8BDB1DC6B45345D6A00F54A75DEF1A6B"
- {
- "Name" = "8:#1900"
- "Sequence" = "3:2"
- "Attributes" = "3:1"
- "Dialogs"
- {
- "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_51562FA73CD74420B54B17BDC66F6983"
- {
- "Sequence" = "3:200"
- "DisplayName" = "8:Installation Folder"
- "UseDynamicProperties" = "11:TRUE"
- "IsDependency" = "11:FALSE"
- "SourcePath" = "8:\\VsdAdminFolderDlg.wid"
- "Properties"
- {
- "BannerBitmap"
- {
- "Name" = "8:BannerBitmap"
- "DisplayName" = "8:#1001"
- "Description" = "8:#1101"
- "Type" = "3:8"
- "ContextData" = "8:Bitmap"
- "Attributes" = "3:4"
- "Setting" = "3:1"
- "UsePlugInResources" = "11:TRUE"
- }
- }
- }
- "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_6E30DC2B3F284C148AE722C0E78228F8"
- {
- "Sequence" = "3:300"
- "DisplayName" = "8:Confirm Installation"
- "UseDynamicProperties" = "11:TRUE"
- "IsDependency" = "11:FALSE"
- "SourcePath" = "8:\\VsdAdminConfirmDlg.wid"
- "Properties"
- {
- "BannerBitmap"
- {
- "Name" = "8:BannerBitmap"
- "DisplayName" = "8:#1001"
- "Description" = "8:#1101"
- "Type" = "3:8"
- "ContextData" = "8:Bitmap"
- "Attributes" = "3:4"
- "Setting" = "3:1"
- "UsePlugInResources" = "11:TRUE"
- }
- }
- }
- "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_A66D47C411F0411780817D51CF722A22"
- {
- "Sequence" = "3:100"
- "DisplayName" = "8:Welcome"
- "UseDynamicProperties" = "11:TRUE"
- "IsDependency" = "11:FALSE"
- "SourcePath" = "8:\\VsdAdminWelcomeDlg.wid"
- "Properties"
- {
- "BannerBitmap"
- {
- "Name" = "8:BannerBitmap"
- "DisplayName" = "8:#1001"
- "Description" = "8:#1101"
- "Type" = "3:8"
- "ContextData" = "8:Bitmap"
- "Attributes" = "3:4"
- "Setting" = "3:1"
- "UsePlugInResources" = "11:TRUE"
- }
- "CopyrightWarning"
- {
- "Name" = "8:CopyrightWarning"
- "DisplayName" = "8:#1002"
- "Description" = "8:#1102"
- "Type" = "3:3"
- "ContextData" = "8:"
- "Attributes" = "3:0"
- "Setting" = "3:1"
- "Value" = "8:#1202"
- "DefaultValue" = "8:#1202"
- "UsePlugInResources" = "11:TRUE"
- }
- "Welcome"
- {
- "Name" = "8:Welcome"
- "DisplayName" = "8:#1003"
- "Description" = "8:#1103"
- "Type" = "3:3"
- "ContextData" = "8:"
- "Attributes" = "3:0"
- "Setting" = "3:1"
- "Value" = "8:#1203"
- "DefaultValue" = "8:#1203"
- "UsePlugInResources" = "11:TRUE"
- }
- }
- }
- }
- }
- "{2479F3F5-0309-486D-8047-8187E2CE5BA0}:_A6A71D2398304B649269B7E50D8A0EC4"
- {
- "UseDynamicProperties" = "11:FALSE"
- "IsDependency" = "11:FALSE"
- "SourcePath" = "8:\\VsdBasicDialogs.wim"
- }
- "{DF760B10-853B-4699-99F2-AFF7185B4A62}:_B854718158D047B6B2E6FE698112EC93"
- {
- "Name" = "8:#1901"
- "Sequence" = "3:2"
- "Attributes" = "3:2"
- "Dialogs"
- {
- "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_BD7FC1FCE04048D986EC3E4F21D525C6"
- {
- "Sequence" = "3:100"
- "DisplayName" = "8:Progress"
- "UseDynamicProperties" = "11:TRUE"
- "IsDependency" = "11:FALSE"
- "SourcePath" = "8:\\VsdAdminProgressDlg.wid"
- "Properties"
- {
- "BannerBitmap"
- {
- "Name" = "8:BannerBitmap"
- "DisplayName" = "8:#1001"
- "Description" = "8:#1101"
- "Type" = "3:8"
- "ContextData" = "8:Bitmap"
- "Attributes" = "3:4"
- "Setting" = "3:1"
- "UsePlugInResources" = "11:TRUE"
- }
- "ShowProgress"
- {
- "Name" = "8:ShowProgress"
- "DisplayName" = "8:#1009"
- "Description" = "8:#1109"
- "Type" = "3:5"
- "ContextData" = "8:1;True=1;False=0"
- "Attributes" = "3:0"
- "Setting" = "3:0"
- "Value" = "3:1"
- "DefaultValue" = "3:1"
- "UsePlugInResources" = "11:TRUE"
- }
- }
- }
- }
- }
- "{DF760B10-853B-4699-99F2-AFF7185B4A62}:_C3C153DE1CA647C6B2075A0C59ABBBA6"
- {
- "Name" = "8:#1902"
- "Sequence" = "3:2"
- "Attributes" = "3:3"
- "Dialogs"
- {
- "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_5E814962060F4BDBAEF5C6BD43D6DE3E"
- {
- "Sequence" = "3:100"
- "DisplayName" = "8:Finished"
- "UseDynamicProperties" = "11:TRUE"
- "IsDependency" = "11:FALSE"
- "SourcePath" = "8:\\VsdAdminFinishedDlg.wid"
- "Properties"
- {
- "BannerBitmap"
- {
- "Name" = "8:BannerBitmap"
- "DisplayName" = "8:#1001"
- "Description" = "8:#1101"
- "Type" = "3:8"
- "ContextData" = "8:Bitmap"
- "Attributes" = "3:4"
- "Setting" = "3:1"
- "UsePlugInResources" = "11:TRUE"
- }
- }
- }
- }
- }
- }
- "MergeModule"
- {
- }
- "ProjectOutput"
- {
- "{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_D219AD7AB7924D44B7E2945648C76CF7"
- {
- "SourcePath" = "8:..\\OpenERPOutlookPlugin\\obj\\Debug\\OpenERPOutlookPlugin.dll"
- "TargetName" = "8:"
- "Tag" = "8:"
- "Folder" = "8:_F8355F1930014BA7AC04125197F9FCF8"
- "Condition" = "8:"
- "Transitive" = "11:FALSE"
- "Vital" = "11:TRUE"
- "ReadOnly" = "11:FALSE"
- "Hidden" = "11:FALSE"
- "System" = "11:FALSE"
- "Permanent" = "11:FALSE"
- "SharedLegacy" = "11:FALSE"
- "PackageAs" = "3:1"
- "Register" = "3:1"
- "Exclude" = "11:FALSE"
- "IsDependency" = "11:FALSE"
- "IsolateTo" = "8:"
- "ProjectOutputGroupRegister" = "3:2"
- "OutputConfiguration" = "8:"
- "OutputGroupCanonicalName" = "8:Built"
- "OutputProjectGuid" = "8:{F4B2219B-F235-400F-81B4-92F15250BBA4}"
- "ShowKeyOutput" = "11:TRUE"
- "ExcludeFilters"
- {
- }
- }
- }
- }
-}
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPluginSetup32.msi b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPluginSetup32.msi
deleted file mode 100644
index 64f54f22a65..00000000000
Binary files a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPluginSetup32.msi and /dev/null differ
diff --git a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPluginSetup64.msi b/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPluginSetup64.msi
deleted file mode 100644
index 3b91dafed55..00000000000
Binary files a/addons/plugin_outlook/static/openerp-outlook-plugin/OpenERPOutlookPluginSetup64.msi and /dev/null differ
diff --git a/addons/plugin_thunderbird/__openerp__.py b/addons/plugin_thunderbird/__openerp__.py
deleted file mode 100644
index 56c9d47cd65..00000000000
--- a/addons/plugin_thunderbird/__openerp__.py
+++ /dev/null
@@ -1,44 +0,0 @@
-# -*- encoding: utf-8 -*-
-##############################################################################
-#
-# OpenERP, Open Source Management Solution
-# Copyright (C) 2004-2010 Tiny SPRL (). All Rights Reserved
-# Copyright (c) 2004 Axelor SPRL. (http://www.axelor.com) All Rights Reserved.
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU 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 General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program. If not, see .
-#
-##############################################################################
-{
- 'name' : 'Thunderbird Plug-In',
- 'version' : '1.0',
- 'author' : ['OpenERP SA', 'Axelor'],
- 'website' : 'http://www.openerp.com/',
- 'depends' : ['base','mail', 'plugin'],
- 'category' : 'Customer Relationship Management',
- 'description': """
-This module is required for the Thuderbird Plug-in to work properly.
-====================================================================
-
-The plugin allows you archive email and its attachments to the selected
-OpenERP objects. You can select a partner, a task, a project, an analytical
-account, or any other object and attach the selected mail as a .eml file in
-the attachment of a selected record. You can create documents for CRM Lead,
-HR Applicant and Project Issue from selected mails.
- """,
- 'demo' : [],
- 'data' : ['plugin_thunderbird.xml'],
- 'auto_install': False,
- 'installable': True,
- 'images': ['images/config_thunderbird.jpeg','images/config_thunderbird_plugin.jpeg','images/thunderbird_document.jpeg'],
-}
diff --git a/addons/plugin_thunderbird/i18n/ar.po b/addons/plugin_thunderbird/i18n/ar.po
deleted file mode 100644
index f47790e3bce..00000000000
--- a/addons/plugin_thunderbird/i18n/ar.po
+++ /dev/null
@@ -1,125 +0,0 @@
-# Arabic translation for openobject-addons
-# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012
-# This file is distributed under the same license as the openobject-addons package.
-# FIRST AUTHOR , 2012.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: openobject-addons\n"
-"Report-Msgid-Bugs-To: FULL NAME \n"
-"POT-Creation-Date: 2012-12-21 17:05+0000\n"
-"PO-Revision-Date: 2012-01-17 03:07+0000\n"
-"Last-Translator: FULL NAME \n"
-"Language-Team: Arabic \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2014-04-22 07:20+0000\n"
-"X-Generator: Launchpad (build 16985)\n"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Restart Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Thunderbird plug-in installation:"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:sale.config.settings:0
-msgid "Download and install the plug-in"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.actions.act_window,name:plugin_thunderbird.action_thunderbird_installer
-#: model:ir.ui.menu,name:plugin_thunderbird.menu_base_config_plugins_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Install Thunderbird Plug-In"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,plugin_file:0
-msgid ""
-"Thunderbird plug-in file. Save this file and install it in Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "title"
-msgstr "الاسم"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Installation and Configuration Steps"
-msgstr "خطوات التثبيت و التهيئة"
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_name:0
-msgid "File name"
-msgstr "اسم الملف"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Click \"Install Now\"."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.model,name:plugin_thunderbird.model_plugin_thunderbird_installer
-msgid "plugin_thunderbird.installer"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_file:0
-#: field:plugin_thunderbird.installer,thunderbird:0
-msgid "Thunderbird Plug-in"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Configure your openerp server."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,thunderbird:0
-msgid ""
-"Allows you to select an object that you would like to add to your email and "
-"its attachments."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Save the Thunderbird plug-in."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Close"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Select the plug-in (the file named openerp_plugin.xpi)."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid ""
-"From the Thunderbird menubar: Tools > Add-ons -> Screwdriver/Wrench Icon -> "
-"Install add-on from file..."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "From the Thunderbird menubar: OpenERP -> Configuration."
-msgstr ""
-
-#~ msgid "Description"
-#~ msgstr "وصف"
-
-#~ msgid "_Close"
-#~ msgstr "إ_غلاق"
-
-#~ msgid "Image"
-#~ msgstr "صورة"
diff --git a/addons/plugin_thunderbird/i18n/bg.po b/addons/plugin_thunderbird/i18n/bg.po
deleted file mode 100644
index a74f35b411f..00000000000
--- a/addons/plugin_thunderbird/i18n/bg.po
+++ /dev/null
@@ -1,128 +0,0 @@
-# Bulgarian translation for openobject-addons
-# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
-# This file is distributed under the same license as the openobject-addons package.
-# FIRST AUTHOR , 2010.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: openobject-addons\n"
-"Report-Msgid-Bugs-To: FULL NAME \n"
-"POT-Creation-Date: 2012-12-21 17:05+0000\n"
-"PO-Revision-Date: 2010-02-16 15:05+0000\n"
-"Last-Translator: Boris \n"
-"Language-Team: Bulgarian \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2014-04-22 07:20+0000\n"
-"X-Generator: Launchpad (build 16985)\n"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Restart Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Thunderbird plug-in installation:"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:sale.config.settings:0
-msgid "Download and install the plug-in"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.actions.act_window,name:plugin_thunderbird.action_thunderbird_installer
-#: model:ir.ui.menu,name:plugin_thunderbird.menu_base_config_plugins_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Install Thunderbird Plug-In"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,plugin_file:0
-msgid ""
-"Thunderbird plug-in file. Save this file and install it in Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "title"
-msgstr "заглавие"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Installation and Configuration Steps"
-msgstr "Стъпки за инсталиране и настройка"
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_name:0
-msgid "File name"
-msgstr "Име на файл"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Click \"Install Now\"."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.model,name:plugin_thunderbird.model_plugin_thunderbird_installer
-msgid "plugin_thunderbird.installer"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_file:0
-#: field:plugin_thunderbird.installer,thunderbird:0
-msgid "Thunderbird Plug-in"
-msgstr "Добавка за Thunderbird"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Configure your openerp server."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,thunderbird:0
-msgid ""
-"Allows you to select an object that you would like to add to your email and "
-"its attachments."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Save the Thunderbird plug-in."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Close"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Select the plug-in (the file named openerp_plugin.xpi)."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid ""
-"From the Thunderbird menubar: Tools > Add-ons -> Screwdriver/Wrench Icon -> "
-"Install add-on from file..."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "From the Thunderbird menubar: OpenERP -> Configuration."
-msgstr ""
-
-#~ msgid "Description"
-#~ msgstr "Описание"
-
-#~ msgid "_Close"
-#~ msgstr "_Затваряне"
-
-#~ msgid "Installation Manual"
-#~ msgstr "Упътване за инсталация"
-
-#~ msgid "Image"
-#~ msgstr "Изображение"
diff --git a/addons/plugin_thunderbird/i18n/ca.po b/addons/plugin_thunderbird/i18n/ca.po
deleted file mode 100644
index 5cfc4fdaad5..00000000000
--- a/addons/plugin_thunderbird/i18n/ca.po
+++ /dev/null
@@ -1,147 +0,0 @@
-# Catalan translation for openobject-addons
-# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
-# This file is distributed under the same license as the openobject-addons package.
-# FIRST AUTHOR , 2011.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: openobject-addons\n"
-"Report-Msgid-Bugs-To: FULL NAME \n"
-"POT-Creation-Date: 2012-12-21 17:05+0000\n"
-"PO-Revision-Date: 2011-12-26 19:12+0000\n"
-"Last-Translator: tfr (Openerp) \n"
-"Language-Team: Catalan \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2014-04-22 07:20+0000\n"
-"X-Generator: Launchpad (build 16985)\n"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Restart Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Thunderbird plug-in installation:"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:sale.config.settings:0
-msgid "Download and install the plug-in"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.actions.act_window,name:plugin_thunderbird.action_thunderbird_installer
-#: model:ir.ui.menu,name:plugin_thunderbird.menu_base_config_plugins_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Install Thunderbird Plug-In"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,plugin_file:0
-msgid ""
-"Thunderbird plug-in file. Save this file and install it in Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "title"
-msgstr "títol"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Installation and Configuration Steps"
-msgstr "Passos d'instal·lació i configuració"
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_name:0
-msgid "File name"
-msgstr "Nom del fitxer"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Click \"Install Now\"."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.model,name:plugin_thunderbird.model_plugin_thunderbird_installer
-msgid "plugin_thunderbird.installer"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_file:0
-#: field:plugin_thunderbird.installer,thunderbird:0
-msgid "Thunderbird Plug-in"
-msgstr "Connector Thunderbird"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Configure your openerp server."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,thunderbird:0
-msgid ""
-"Allows you to select an object that you would like to add to your email and "
-"its attachments."
-msgstr ""
-"Us permet seleccionar un objecte on afegir el vostre correu electrònic i "
-"fitxers adjunts."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Save the Thunderbird plug-in."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Close"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Select the plug-in (the file named openerp_plugin.xpi)."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid ""
-"From the Thunderbird menubar: Tools > Add-ons -> Screwdriver/Wrench Icon -> "
-"Install add-on from file..."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "From the Thunderbird menubar: OpenERP -> Configuration."
-msgstr ""
-
-#~ msgid "Description"
-#~ msgstr "Descripció"
-
-#~ msgid ""
-#~ "Thunderbird plug-in file. Save as this file and install this plug-in in "
-#~ "thunderbird."
-#~ msgstr ""
-#~ "Fitxer del connector Thunderbird. Guardeu aquest fitxer i instal·leu aquest "
-#~ "connector en l'aplicació Thunderbird."
-
-#~ msgid "The documentation file :- how to install Thunderbird Plug-in."
-#~ msgstr "El fitxer de documentació: Com instal·lar el connector Thunderbird."
-
-#~ msgid "_Close"
-#~ msgstr "_Tanca"
-
-#~ msgid "Installation Manual"
-#~ msgstr "Manual d'instal·lació"
-
-#~ msgid "Image"
-#~ msgstr "Imatge"
-
-#~ msgid ""
-#~ "This plug-in allows you to link your e-mail to OpenERP's documents. You can "
-#~ "attach it to any existing one in OpenERP or create a new one."
-#~ msgstr ""
-#~ "Aquest connector permet vincular el vostre correu electrònic amb documents "
-#~ "OpenERP. Podeu adjuntar amb qualsevol element en OpenERP o crear un de nou."
diff --git a/addons/plugin_thunderbird/i18n/cs.po b/addons/plugin_thunderbird/i18n/cs.po
deleted file mode 100644
index 465c9d309f5..00000000000
--- a/addons/plugin_thunderbird/i18n/cs.po
+++ /dev/null
@@ -1,146 +0,0 @@
-# Czech translation for openobject-addons
-# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
-# This file is distributed under the same license as the openobject-addons package.
-# FIRST AUTHOR , 2010.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: openobject-addons\n"
-"Report-Msgid-Bugs-To: FULL NAME \n"
-"POT-Creation-Date: 2012-12-21 17:05+0000\n"
-"PO-Revision-Date: 2012-04-06 06:56+0000\n"
-"Last-Translator: Jiří Hajda \n"
-"Language-Team: Czech \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2014-04-22 07:20+0000\n"
-"X-Generator: Launchpad (build 16985)\n"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Restart Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Thunderbird plug-in installation:"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:sale.config.settings:0
-msgid "Download and install the plug-in"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.actions.act_window,name:plugin_thunderbird.action_thunderbird_installer
-#: model:ir.ui.menu,name:plugin_thunderbird.menu_base_config_plugins_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Install Thunderbird Plug-In"
-msgstr "Instalovat doplněk Thunderbirdu"
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,plugin_file:0
-msgid ""
-"Thunderbird plug-in file. Save this file and install it in Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "title"
-msgstr "nadpis"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Installation and Configuration Steps"
-msgstr "Kroky instalace a nastavení"
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_name:0
-msgid "File name"
-msgstr "Název souboru"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Click \"Install Now\"."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.model,name:plugin_thunderbird.model_plugin_thunderbird_installer
-msgid "plugin_thunderbird.installer"
-msgstr "plugin_thunderbird.installer"
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_file:0
-#: field:plugin_thunderbird.installer,thunderbird:0
-msgid "Thunderbird Plug-in"
-msgstr "Doplněk Thunderbirdu"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Configure your openerp server."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,thunderbird:0
-msgid ""
-"Allows you to select an object that you would like to add to your email and "
-"its attachments."
-msgstr ""
-"Umožní vám vybrat objekt, který chcete přidat do vašeho emailu a jeho příloh."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Save the Thunderbird plug-in."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Close"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Select the plug-in (the file named openerp_plugin.xpi)."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid ""
-"From the Thunderbird menubar: Tools > Add-ons -> Screwdriver/Wrench Icon -> "
-"Install add-on from file..."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "From the Thunderbird menubar: OpenERP -> Configuration."
-msgstr ""
-
-#~ msgid "Description"
-#~ msgstr "Popis"
-
-#~ msgid "_Close"
-#~ msgstr "_Zavřít"
-
-#~ msgid "Installation Manual"
-#~ msgstr "Instalační příručka"
-
-#~ msgid "Image"
-#~ msgstr "Obrázek"
-
-#~ msgid ""
-#~ "This plug-in allows you to link your e-mail to OpenERP's documents. You can "
-#~ "attach it to any existing one in OpenERP or create a new one."
-#~ msgstr ""
-#~ "Doplněk vám umožní spojit váš email k dokumentům OpenERP. Můžete jej "
-#~ "připojit k jakémukoliv existujícímu v OpenERP nebo vytvořit nový."
-
-#~ msgid "The documentation file :- how to install Thunderbird Plug-in."
-#~ msgstr "Dokumentační soubor :- jak instalovat doplněk Thunderbirdu"
-
-#~ msgid ""
-#~ "Thunderbird plug-in file. Save as this file and install this plug-in in "
-#~ "thunderbird."
-#~ msgstr ""
-#~ "Soubor doplňku Thunderbirdu. Uložit toto jako soubor a nainstalujte tento "
-#~ "doplněk do thunderbirdu."
diff --git a/addons/plugin_thunderbird/i18n/da.po b/addons/plugin_thunderbird/i18n/da.po
deleted file mode 100644
index a02905cd56c..00000000000
--- a/addons/plugin_thunderbird/i18n/da.po
+++ /dev/null
@@ -1,128 +0,0 @@
-# Danish translation for openobject-addons
-# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
-# This file is distributed under the same license as the openobject-addons package.
-# FIRST AUTHOR , 2011.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: openobject-addons\n"
-"Report-Msgid-Bugs-To: FULL NAME \n"
-"POT-Creation-Date: 2012-12-21 17:05+0000\n"
-"PO-Revision-Date: 2011-11-09 21:50+0000\n"
-"Last-Translator: OpenERP Danmark / Henning Dinsen \n"
-"Language-Team: Danish \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2014-04-22 07:20+0000\n"
-"X-Generator: Launchpad (build 16985)\n"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Restart Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Thunderbird plug-in installation:"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:sale.config.settings:0
-msgid "Download and install the plug-in"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.actions.act_window,name:plugin_thunderbird.action_thunderbird_installer
-#: model:ir.ui.menu,name:plugin_thunderbird.menu_base_config_plugins_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Install Thunderbird Plug-In"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,plugin_file:0
-msgid ""
-"Thunderbird plug-in file. Save this file and install it in Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "title"
-msgstr "titel"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Installation and Configuration Steps"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_name:0
-msgid "File name"
-msgstr "Filnavn"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Click \"Install Now\"."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.model,name:plugin_thunderbird.model_plugin_thunderbird_installer
-msgid "plugin_thunderbird.installer"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_file:0
-#: field:plugin_thunderbird.installer,thunderbird:0
-msgid "Thunderbird Plug-in"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Configure your openerp server."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,thunderbird:0
-msgid ""
-"Allows you to select an object that you would like to add to your email and "
-"its attachments."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Save the Thunderbird plug-in."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Close"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Select the plug-in (the file named openerp_plugin.xpi)."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid ""
-"From the Thunderbird menubar: Tools > Add-ons -> Screwdriver/Wrench Icon -> "
-"Install add-on from file..."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "From the Thunderbird menubar: OpenERP -> Configuration."
-msgstr ""
-
-#~ msgid "Description"
-#~ msgstr "Beskrivelse:"
-
-#~ msgid "_Close"
-#~ msgstr "_Luk"
-
-#~ msgid "Installation Manual"
-#~ msgstr "Installations manual"
-
-#~ msgid "Image"
-#~ msgstr "Billede"
diff --git a/addons/plugin_thunderbird/i18n/de.po b/addons/plugin_thunderbird/i18n/de.po
deleted file mode 100644
index c2fbe809c7b..00000000000
--- a/addons/plugin_thunderbird/i18n/de.po
+++ /dev/null
@@ -1,154 +0,0 @@
-# German translation for openobject-addons
-# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
-# This file is distributed under the same license as the openobject-addons package.
-#
-# FIRST AUTHOR , 2010.
-# Ferdinand Gassauer , 2010.
-msgid ""
-msgstr ""
-"Project-Id-Version: openobject-addons\n"
-"Report-Msgid-Bugs-To: FULL NAME \n"
-"POT-Creation-Date: 2012-12-21 17:05+0000\n"
-"PO-Revision-Date: 2012-12-18 08:04+0000\n"
-"Last-Translator: Ferdinand \n"
-"Language-Team: German \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2014-04-22 07:20+0000\n"
-"X-Generator: Launchpad (build 16985)\n"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Restart Thunderbird."
-msgstr "Thunderbird neu starten"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Thunderbird plug-in installation:"
-msgstr "Thunderbird Plug-In installation:"
-
-#. module: plugin_thunderbird
-#: view:sale.config.settings:0
-msgid "Download and install the plug-in"
-msgstr "Herunterladen und Installieren des Plug-Ins"
-
-#. module: plugin_thunderbird
-#: model:ir.actions.act_window,name:plugin_thunderbird.action_thunderbird_installer
-#: model:ir.ui.menu,name:plugin_thunderbird.menu_base_config_plugins_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Install Thunderbird Plug-In"
-msgstr "Installiere Thunderbird Plug-In"
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,plugin_file:0
-msgid ""
-"Thunderbird plug-in file. Save this file and install it in Thunderbird."
-msgstr ""
-"Thunderbird Plug-In Datei. Bitte sichern und in Thunderbird installieren."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "title"
-msgstr "Titel"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Installation and Configuration Steps"
-msgstr "Installation und Konfigurationsschritte"
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_name:0
-msgid "File name"
-msgstr "Dateiname"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Click \"Install Now\"."
-msgstr "Klick \"Jetzt Installieren\""
-
-#. module: plugin_thunderbird
-#: model:ir.model,name:plugin_thunderbird.model_plugin_thunderbird_installer
-msgid "plugin_thunderbird.installer"
-msgstr "plugin_thunderbird.installer"
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_file:0
-#: field:plugin_thunderbird.installer,thunderbird:0
-msgid "Thunderbird Plug-in"
-msgstr "Thunderbird Plug-in"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Configure your openerp server."
-msgstr "Konfiguration Ihrese OpenERP Servers"
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,thunderbird:0
-msgid ""
-"Allows you to select an object that you would like to add to your email and "
-"its attachments."
-msgstr ""
-"Ermöglicht die Auswahl eines Objektes das zu EMails oder Anhängen "
-"hinzugefügt wird."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Save the Thunderbird plug-in."
-msgstr "Thunderbird Plug-In sichern"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Close"
-msgstr "Schließen"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Select the plug-in (the file named openerp_plugin.xpi)."
-msgstr "Plug-In auswählen (Dateiname ist openerp_plugin.xpi)"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid ""
-"From the Thunderbird menubar: Tools > Add-ons -> Screwdriver/Wrench Icon -> "
-"Install add-on from file..."
-msgstr ""
-"Vom Thunderbird Menü: Werkzeuge > Add-Ons -> Bearbeiten Ikon -> Installiere "
-"Add-On von Datei"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "From the Thunderbird menubar: OpenERP -> Configuration."
-msgstr "Vom Thunderbird Menü: OpenERP -> Konfiguration"
-
-#~ msgid "Description"
-#~ msgstr "Beschreibung"
-
-#~ msgid ""
-#~ "Thunderbird plug-in file. Save as this file and install this plug-in in "
-#~ "thunderbird."
-#~ msgstr ""
-#~ "Thunderbird Plugin-Datei. Sichern Sie diese und installieren Sie diese in "
-#~ "Thunderbird"
-
-#~ msgid "The documentation file :- how to install Thunderbird Plug-in."
-#~ msgstr ""
-#~ "Die Dokumentationsdatei : Wie wird das Thunderbird Plugin installiert"
-
-#~ msgid "Installation Manual"
-#~ msgstr "Installationhandbuch"
-
-#~ msgid "Image"
-#~ msgstr "Bild / Photo"
-
-#~ msgid ""
-#~ "This plug-in allows you to link your e-mail to OpenERP's documents. You can "
-#~ "attach it to any existing one in OpenERP or create a new one."
-#~ msgstr ""
-#~ "Das Plugin ermöglicht die Verlinkung einer EMail mit beliebigen OpenERP "
-#~ "Belegen. Sie können hierzu entweder\r\n"
-#~ "die EMail zu vorhandenen Objekten abspeichern oder wahlweise neue Objekte "
-#~ "durch eine Email in OpenERP erstellen."
-
-#~ msgid "_Close"
-#~ msgstr "_Schließen"
diff --git a/addons/plugin_thunderbird/i18n/en_GB.po b/addons/plugin_thunderbird/i18n/en_GB.po
deleted file mode 100644
index e03d2b903a6..00000000000
--- a/addons/plugin_thunderbird/i18n/en_GB.po
+++ /dev/null
@@ -1,119 +0,0 @@
-# English (United Kingdom) translation for openobject-addons
-# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
-# This file is distributed under the same license as the openobject-addons package.
-# FIRST AUTHOR , 2010.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: openobject-addons\n"
-"Report-Msgid-Bugs-To: FULL NAME \n"
-"POT-Creation-Date: 2012-12-21 17:05+0000\n"
-"PO-Revision-Date: 2010-04-28 19:32+0000\n"
-"Last-Translator: Luis Miguel D.P. \n"
-"Language-Team: English (United Kingdom) \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2014-04-22 07:20+0000\n"
-"X-Generator: Launchpad (build 16985)\n"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Restart Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Thunderbird plug-in installation:"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:sale.config.settings:0
-msgid "Download and install the plug-in"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.actions.act_window,name:plugin_thunderbird.action_thunderbird_installer
-#: model:ir.ui.menu,name:plugin_thunderbird.menu_base_config_plugins_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Install Thunderbird Plug-In"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,plugin_file:0
-msgid ""
-"Thunderbird plug-in file. Save this file and install it in Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "title"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Installation and Configuration Steps"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_name:0
-msgid "File name"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Click \"Install Now\"."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.model,name:plugin_thunderbird.model_plugin_thunderbird_installer
-msgid "plugin_thunderbird.installer"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_file:0
-#: field:plugin_thunderbird.installer,thunderbird:0
-msgid "Thunderbird Plug-in"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Configure your openerp server."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,thunderbird:0
-msgid ""
-"Allows you to select an object that you would like to add to your email and "
-"its attachments."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Save the Thunderbird plug-in."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Close"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Select the plug-in (the file named openerp_plugin.xpi)."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid ""
-"From the Thunderbird menubar: Tools > Add-ons -> Screwdriver/Wrench Icon -> "
-"Install add-on from file..."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "From the Thunderbird menubar: OpenERP -> Configuration."
-msgstr ""
-
-#~ msgid "Description"
-#~ msgstr "Description"
diff --git a/addons/plugin_thunderbird/i18n/en_US.po b/addons/plugin_thunderbird/i18n/en_US.po
deleted file mode 100644
index 41b9ca52600..00000000000
--- a/addons/plugin_thunderbird/i18n/en_US.po
+++ /dev/null
@@ -1,116 +0,0 @@
-# English (United States) translation for openobject-addons
-# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
-# This file is distributed under the same license as the openobject-addons package.
-# FIRST AUTHOR , 2011.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: openobject-addons\n"
-"Report-Msgid-Bugs-To: FULL NAME \n"
-"POT-Creation-Date: 2012-12-21 17:05+0000\n"
-"PO-Revision-Date: 2011-01-21 08:45+0000\n"
-"Last-Translator: Marco Dieckhoff \n"
-"Language-Team: English (United States) \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2014-04-22 07:20+0000\n"
-"X-Generator: Launchpad (build 16985)\n"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Restart Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Thunderbird plug-in installation:"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:sale.config.settings:0
-msgid "Download and install the plug-in"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.actions.act_window,name:plugin_thunderbird.action_thunderbird_installer
-#: model:ir.ui.menu,name:plugin_thunderbird.menu_base_config_plugins_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Install Thunderbird Plug-In"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,plugin_file:0
-msgid ""
-"Thunderbird plug-in file. Save this file and install it in Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "title"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Installation and Configuration Steps"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_name:0
-msgid "File name"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Click \"Install Now\"."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.model,name:plugin_thunderbird.model_plugin_thunderbird_installer
-msgid "plugin_thunderbird.installer"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_file:0
-#: field:plugin_thunderbird.installer,thunderbird:0
-msgid "Thunderbird Plug-in"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Configure your openerp server."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,thunderbird:0
-msgid ""
-"Allows you to select an object that you would like to add to your email and "
-"its attachments."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Save the Thunderbird plug-in."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Close"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Select the plug-in (the file named openerp_plugin.xpi)."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid ""
-"From the Thunderbird menubar: Tools > Add-ons -> Screwdriver/Wrench Icon -> "
-"Install add-on from file..."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "From the Thunderbird menubar: OpenERP -> Configuration."
-msgstr ""
diff --git a/addons/plugin_thunderbird/i18n/es.po b/addons/plugin_thunderbird/i18n/es.po
deleted file mode 100644
index 28ca558eae9..00000000000
--- a/addons/plugin_thunderbird/i18n/es.po
+++ /dev/null
@@ -1,151 +0,0 @@
-# Spanish translation for openobject-addons
-# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
-# This file is distributed under the same license as the openobject-addons package.
-# FIRST AUTHOR , 2010.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: openobject-addons\n"
-"Report-Msgid-Bugs-To: FULL NAME \n"
-"POT-Creation-Date: 2012-12-21 17:05+0000\n"
-"PO-Revision-Date: 2012-12-12 15:21+0000\n"
-"Last-Translator: Pedro Manuel Baeza \n"
-"Language-Team: Spanish \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2014-04-22 07:20+0000\n"
-"X-Generator: Launchpad (build 16985)\n"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Restart Thunderbird."
-msgstr "Reiniciar Thunderbird."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Thunderbird plug-in installation:"
-msgstr "Instalación del conector de Thunderbird"
-
-#. module: plugin_thunderbird
-#: view:sale.config.settings:0
-msgid "Download and install the plug-in"
-msgstr "Descargar e instalar el conector"
-
-#. module: plugin_thunderbird
-#: model:ir.actions.act_window,name:plugin_thunderbird.action_thunderbird_installer
-#: model:ir.ui.menu,name:plugin_thunderbird.menu_base_config_plugins_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Install Thunderbird Plug-In"
-msgstr "Instalar plug-in de Thunderbird"
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,plugin_file:0
-msgid ""
-"Thunderbird plug-in file. Save this file and install it in Thunderbird."
-msgstr ""
-"Archivo del conector de Thunderbird. Guarde este archivo e instálelo en "
-"Thunderbird."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "title"
-msgstr "título"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Installation and Configuration Steps"
-msgstr "Pasos de instalación y configuración"
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_name:0
-msgid "File name"
-msgstr "Nombre fichero"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Click \"Install Now\"."
-msgstr "Pulse \"Instalar ahora\"."
-
-#. module: plugin_thunderbird
-#: model:ir.model,name:plugin_thunderbird.model_plugin_thunderbird_installer
-msgid "plugin_thunderbird.installer"
-msgstr "Instalador del plug-in de Thunderbird"
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_file:0
-#: field:plugin_thunderbird.installer,thunderbird:0
-msgid "Thunderbird Plug-in"
-msgstr "Conector Thunderbird"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Configure your openerp server."
-msgstr "Configure su servidor OpenERP"
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,thunderbird:0
-msgid ""
-"Allows you to select an object that you would like to add to your email and "
-"its attachments."
-msgstr ""
-"Le permite seleccionar un objeto donde añadir su correo electrónico y sus "
-"archivos adjuntos."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Save the Thunderbird plug-in."
-msgstr "Guardar el conector de Thunderbird."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Close"
-msgstr "Cerrar"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Select the plug-in (the file named openerp_plugin.xpi)."
-msgstr "Seleccione el conector (el archivo llamado openerp_plugin.xpi)."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid ""
-"From the Thunderbird menubar: Tools > Add-ons -> Screwdriver/Wrench Icon -> "
-"Install add-on from file..."
-msgstr ""
-"Desde la barra de menús de Thunderbird: Herramientas -> Complementos -> "
-"Icono destornillador/llave -> Instalar complemento desde archivo..."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "From the Thunderbird menubar: OpenERP -> Configuration."
-msgstr "Desde el menú de Thunderbird: OpenERP -> Configuración."
-
-#~ msgid "Description"
-#~ msgstr "Descripción"
-
-#~ msgid ""
-#~ "Thunderbird plug-in file. Save as this file and install this plug-in in "
-#~ "thunderbird."
-#~ msgstr ""
-#~ "Fichero del conector Thunderbird. Guarde este fichero e instale este "
-#~ "conector en la aplicación Thunderbird."
-
-#~ msgid "The documentation file :- how to install Thunderbird Plug-in."
-#~ msgstr "El fichero de documentación: Como instalar el conector Thunderbird."
-
-#~ msgid "_Close"
-#~ msgstr "_Cerrar"
-
-#~ msgid "Installation Manual"
-#~ msgstr "Manual de instalación"
-
-#~ msgid "Image"
-#~ msgstr "Imagen"
-
-#~ msgid ""
-#~ "This plug-in allows you to link your e-mail to OpenERP's documents. You can "
-#~ "attach it to any existing one in OpenERP or create a new one."
-#~ msgstr ""
-#~ "Este conector permite vincular su correo electrónico con documentos OpenERP. "
-#~ "Puede adjuntarlo con cualquier elemento de OpenERP o crear uno de nuevo."
diff --git a/addons/plugin_thunderbird/i18n/es_CR.po b/addons/plugin_thunderbird/i18n/es_CR.po
deleted file mode 100644
index 3823ce08b4e..00000000000
--- a/addons/plugin_thunderbird/i18n/es_CR.po
+++ /dev/null
@@ -1,148 +0,0 @@
-# Spanish translation for openobject-addons
-# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
-# This file is distributed under the same license as the openobject-addons package.
-# FIRST AUTHOR , 2010.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: openobject-addons\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-12-21 17:05+0000\n"
-"PO-Revision-Date: 2012-02-17 20:56+0000\n"
-"Last-Translator: Freddy Gonzalez \n"
-"Language-Team: Spanish \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2014-04-22 07:20+0000\n"
-"X-Generator: Launchpad (build 16985)\n"
-"Language: es\n"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Restart Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Thunderbird plug-in installation:"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:sale.config.settings:0
-msgid "Download and install the plug-in"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.actions.act_window,name:plugin_thunderbird.action_thunderbird_installer
-#: model:ir.ui.menu,name:plugin_thunderbird.menu_base_config_plugins_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Install Thunderbird Plug-In"
-msgstr "Instalar Thunderbird Plug-In"
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,plugin_file:0
-msgid ""
-"Thunderbird plug-in file. Save this file and install it in Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "title"
-msgstr "título"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Installation and Configuration Steps"
-msgstr "Pasos de instalación y configuración"
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_name:0
-msgid "File name"
-msgstr "Nombre fichero"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Click \"Install Now\"."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.model,name:plugin_thunderbird.model_plugin_thunderbird_installer
-msgid "plugin_thunderbird.installer"
-msgstr "plugin_thunderbird.installer"
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_file:0
-#: field:plugin_thunderbird.installer,thunderbird:0
-msgid "Thunderbird Plug-in"
-msgstr "Conector Thunderbird"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Configure your openerp server."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,thunderbird:0
-msgid ""
-"Allows you to select an object that you would like to add to your email and "
-"its attachments."
-msgstr ""
-"Le permite seleccionar un objeto donde añadir su correo electrónico y sus "
-"archivos adjuntos."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Save the Thunderbird plug-in."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Close"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Select the plug-in (the file named openerp_plugin.xpi)."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid ""
-"From the Thunderbird menubar: Tools > Add-ons -> Screwdriver/Wrench Icon -> "
-"Install add-on from file..."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "From the Thunderbird menubar: OpenERP -> Configuration."
-msgstr ""
-
-#~ msgid "Installation Manual"
-#~ msgstr "Manual de instalación"
-
-#~ msgid "Description"
-#~ msgstr "Descripción"
-
-#~ msgid "Image"
-#~ msgstr "Imagen"
-
-#~ msgid ""
-#~ "This plug-in allows you to link your e-mail to OpenERP's documents. You can "
-#~ "attach it to any existing one in OpenERP or create a new one."
-#~ msgstr ""
-#~ "Este conector permite vincular su correo electrónico con documentos OpenERP. "
-#~ "Puede adjuntarlo con cualquier elemento de OpenERP o crear uno de nuevo."
-
-#~ msgid "The documentation file :- how to install Thunderbird Plug-in."
-#~ msgstr "El fichero de documentación: Como instalar el conector Thunderbird."
-
-#~ msgid "_Close"
-#~ msgstr "_Cerrar"
-
-#~ msgid ""
-#~ "Thunderbird plug-in file. Save as this file and install this plug-in in "
-#~ "thunderbird."
-#~ msgstr ""
-#~ "Fichero del conector Thunderbird. Guarde este fichero e instale este "
-#~ "conector en la aplicación Thunderbird."
diff --git a/addons/plugin_thunderbird/i18n/et.po b/addons/plugin_thunderbird/i18n/et.po
deleted file mode 100644
index 919bd6ffc31..00000000000
--- a/addons/plugin_thunderbird/i18n/et.po
+++ /dev/null
@@ -1,119 +0,0 @@
-# Estonian translation for openobject-addons
-# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
-# This file is distributed under the same license as the openobject-addons package.
-# FIRST AUTHOR , 2010.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: openobject-addons\n"
-"Report-Msgid-Bugs-To: FULL NAME \n"
-"POT-Creation-Date: 2012-12-21 17:05+0000\n"
-"PO-Revision-Date: 2010-05-07 16:33+0000\n"
-"Last-Translator: lyyser \n"
-"Language-Team: Estonian \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2014-04-22 07:20+0000\n"
-"X-Generator: Launchpad (build 16985)\n"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Restart Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Thunderbird plug-in installation:"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:sale.config.settings:0
-msgid "Download and install the plug-in"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.actions.act_window,name:plugin_thunderbird.action_thunderbird_installer
-#: model:ir.ui.menu,name:plugin_thunderbird.menu_base_config_plugins_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Install Thunderbird Plug-In"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,plugin_file:0
-msgid ""
-"Thunderbird plug-in file. Save this file and install it in Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "title"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Installation and Configuration Steps"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_name:0
-msgid "File name"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Click \"Install Now\"."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.model,name:plugin_thunderbird.model_plugin_thunderbird_installer
-msgid "plugin_thunderbird.installer"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_file:0
-#: field:plugin_thunderbird.installer,thunderbird:0
-msgid "Thunderbird Plug-in"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Configure your openerp server."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,thunderbird:0
-msgid ""
-"Allows you to select an object that you would like to add to your email and "
-"its attachments."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Save the Thunderbird plug-in."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Close"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Select the plug-in (the file named openerp_plugin.xpi)."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid ""
-"From the Thunderbird menubar: Tools > Add-ons -> Screwdriver/Wrench Icon -> "
-"Install add-on from file..."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "From the Thunderbird menubar: OpenERP -> Configuration."
-msgstr ""
-
-#~ msgid "Description"
-#~ msgstr "Kirjeldus"
diff --git a/addons/plugin_thunderbird/i18n/eu.po b/addons/plugin_thunderbird/i18n/eu.po
deleted file mode 100644
index 10aea4db5a6..00000000000
--- a/addons/plugin_thunderbird/i18n/eu.po
+++ /dev/null
@@ -1,119 +0,0 @@
-# Basque translation for openobject-addons
-# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
-# This file is distributed under the same license as the openobject-addons package.
-# FIRST AUTHOR , 2010.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: openobject-addons\n"
-"Report-Msgid-Bugs-To: FULL NAME \n"
-"POT-Creation-Date: 2012-12-21 17:05+0000\n"
-"PO-Revision-Date: 2010-10-08 07:34+0000\n"
-"Last-Translator: OpenERP Administrators \n"
-"Language-Team: Basque \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2014-04-22 07:20+0000\n"
-"X-Generator: Launchpad (build 16985)\n"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Restart Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Thunderbird plug-in installation:"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:sale.config.settings:0
-msgid "Download and install the plug-in"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.actions.act_window,name:plugin_thunderbird.action_thunderbird_installer
-#: model:ir.ui.menu,name:plugin_thunderbird.menu_base_config_plugins_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Install Thunderbird Plug-In"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,plugin_file:0
-msgid ""
-"Thunderbird plug-in file. Save this file and install it in Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "title"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Installation and Configuration Steps"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_name:0
-msgid "File name"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Click \"Install Now\"."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.model,name:plugin_thunderbird.model_plugin_thunderbird_installer
-msgid "plugin_thunderbird.installer"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_file:0
-#: field:plugin_thunderbird.installer,thunderbird:0
-msgid "Thunderbird Plug-in"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Configure your openerp server."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,thunderbird:0
-msgid ""
-"Allows you to select an object that you would like to add to your email and "
-"its attachments."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Save the Thunderbird plug-in."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Close"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Select the plug-in (the file named openerp_plugin.xpi)."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid ""
-"From the Thunderbird menubar: Tools > Add-ons -> Screwdriver/Wrench Icon -> "
-"Install add-on from file..."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "From the Thunderbird menubar: OpenERP -> Configuration."
-msgstr ""
-
-#~ msgid "Description"
-#~ msgstr "Deskribapena"
diff --git a/addons/plugin_thunderbird/i18n/fi.po b/addons/plugin_thunderbird/i18n/fi.po
deleted file mode 100644
index aa8d2cf52d9..00000000000
--- a/addons/plugin_thunderbird/i18n/fi.po
+++ /dev/null
@@ -1,146 +0,0 @@
-# Finnish translation for openobject-addons
-# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
-# This file is distributed under the same license as the openobject-addons package.
-# FIRST AUTHOR , 2011.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: openobject-addons\n"
-"Report-Msgid-Bugs-To: FULL NAME \n"
-"POT-Creation-Date: 2012-12-21 17:05+0000\n"
-"PO-Revision-Date: 2011-08-04 09:45+0000\n"
-"Last-Translator: FULL NAME \n"
-"Language-Team: Finnish \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2014-04-22 07:20+0000\n"
-"X-Generator: Launchpad (build 16985)\n"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Restart Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Thunderbird plug-in installation:"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:sale.config.settings:0
-msgid "Download and install the plug-in"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.actions.act_window,name:plugin_thunderbird.action_thunderbird_installer
-#: model:ir.ui.menu,name:plugin_thunderbird.menu_base_config_plugins_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Install Thunderbird Plug-In"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,plugin_file:0
-msgid ""
-"Thunderbird plug-in file. Save this file and install it in Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "title"
-msgstr "otsikko"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Installation and Configuration Steps"
-msgstr "Asennus ja konfigurointivaiheet"
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_name:0
-msgid "File name"
-msgstr "Tiedostonimi"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Click \"Install Now\"."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.model,name:plugin_thunderbird.model_plugin_thunderbird_installer
-msgid "plugin_thunderbird.installer"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_file:0
-#: field:plugin_thunderbird.installer,thunderbird:0
-msgid "Thunderbird Plug-in"
-msgstr "Thunderbird liitännäinen"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Configure your openerp server."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,thunderbird:0
-msgid ""
-"Allows you to select an object that you would like to add to your email and "
-"its attachments."
-msgstr ""
-"Voit valita objektin jonka haluat liittää sähköpostiin ja sen liitteisiin."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Save the Thunderbird plug-in."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Close"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Select the plug-in (the file named openerp_plugin.xpi)."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid ""
-"From the Thunderbird menubar: Tools > Add-ons -> Screwdriver/Wrench Icon -> "
-"Install add-on from file..."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "From the Thunderbird menubar: OpenERP -> Configuration."
-msgstr ""
-
-#~ msgid "Description"
-#~ msgstr "Kuvaus"
-
-#~ msgid ""
-#~ "Thunderbird plug-in file. Save as this file and install this plug-in in "
-#~ "thunderbird."
-#~ msgstr ""
-#~ "Thunderbird liitännäisen tiedosto. Tallenna tämä tiedosto ja asenna se "
-#~ "liitännäiseksi thunderbirdissä."
-
-#~ msgid "The documentation file :- how to install Thunderbird Plug-in."
-#~ msgstr "Dokumentaatio - kuinka asennat thunderbird liitännäisen"
-
-#~ msgid "_Close"
-#~ msgstr "_Sulje"
-
-#~ msgid "Installation Manual"
-#~ msgstr "Asennusohje"
-
-#~ msgid "Image"
-#~ msgstr "kuva"
-
-#~ msgid ""
-#~ "This plug-in allows you to link your e-mail to OpenERP's documents. You can "
-#~ "attach it to any existing one in OpenERP or create a new one."
-#~ msgstr ""
-#~ "Tämä liitännäien sallii sinun linkittää sähköpostisi OpenERP dokumentteihin. "
-#~ "Voit liittää sen mihin tahansa OpenERP:iin tai luoda uuden."
diff --git a/addons/plugin_thunderbird/i18n/fr.po b/addons/plugin_thunderbird/i18n/fr.po
deleted file mode 100644
index 11f64e4b15d..00000000000
--- a/addons/plugin_thunderbird/i18n/fr.po
+++ /dev/null
@@ -1,153 +0,0 @@
-# French translation for openobject-addons
-# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
-# This file is distributed under the same license as the openobject-addons package.
-# FIRST AUTHOR , 2010.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: openobject-addons\n"
-"Report-Msgid-Bugs-To: FULL NAME \n"
-"POT-Creation-Date: 2012-12-21 17:05+0000\n"
-"PO-Revision-Date: 2012-12-21 14:39+0000\n"
-"Last-Translator: Florian Hatat \n"
-"Language-Team: French \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2014-04-22 07:20+0000\n"
-"X-Generator: Launchpad (build 16985)\n"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Restart Thunderbird."
-msgstr "Redémarrer Thunderbird"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Thunderbird plug-in installation:"
-msgstr "Installation du greffon pour Thunderbird :"
-
-#. module: plugin_thunderbird
-#: view:sale.config.settings:0
-msgid "Download and install the plug-in"
-msgstr "Télécharger et installer le greffon"
-
-#. module: plugin_thunderbird
-#: model:ir.actions.act_window,name:plugin_thunderbird.action_thunderbird_installer
-#: model:ir.ui.menu,name:plugin_thunderbird.menu_base_config_plugins_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Install Thunderbird Plug-In"
-msgstr "Installer le greffon pour Thunderbird"
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,plugin_file:0
-msgid ""
-"Thunderbird plug-in file. Save this file and install it in Thunderbird."
-msgstr ""
-"Fichier du greffon pour Thunderbird. Enregistrez ce fichier et installez-le "
-"dans Thunderbird"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "title"
-msgstr "titre"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Installation and Configuration Steps"
-msgstr "Étapes d'installation et de configuration"
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_name:0
-msgid "File name"
-msgstr "Nom du fichier"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Click \"Install Now\"."
-msgstr "Cliquez sur \"Installer maintenant\"."
-
-#. module: plugin_thunderbird
-#: model:ir.model,name:plugin_thunderbird.model_plugin_thunderbird_installer
-msgid "plugin_thunderbird.installer"
-msgstr "plugin_thunderbird.installer"
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_file:0
-#: field:plugin_thunderbird.installer,thunderbird:0
-msgid "Thunderbird Plug-in"
-msgstr "Greffon pour Thunderbird"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Configure your openerp server."
-msgstr "Configurer votre serveur OpenERP"
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,thunderbird:0
-msgid ""
-"Allows you to select an object that you would like to add to your email and "
-"its attachments."
-msgstr ""
-"Vous permet de sélectionner un objet que vous souhaitez ajouter à votre "
-"courriel et ses pièces jointes."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Save the Thunderbird plug-in."
-msgstr "Enregistrer le greffon pour Thunderbird"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Close"
-msgstr "Fermer"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Select the plug-in (the file named openerp_plugin.xpi)."
-msgstr "Sélectionnez le greffon (le fichier nommé \"openerp_plugin.xpi\")."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid ""
-"From the Thunderbird menubar: Tools > Add-ons -> Screwdriver/Wrench Icon -> "
-"Install add-on from file..."
-msgstr ""
-"Depuis le menu Thunderbird : Outils -> Modules complémentaires -> Icône "
-"tournevis/clé à molette -> Installer un module depuis un fichier..."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "From the Thunderbird menubar: OpenERP -> Configuration."
-msgstr "Depuis le menu Thunderbird : OpenERP -> Configuration."
-
-#~ msgid "Description"
-#~ msgstr "Description"
-
-#~ msgid ""
-#~ "Thunderbird plug-in file. Save as this file and install this plug-in in "
-#~ "thunderbird."
-#~ msgstr ""
-#~ "Fichier du module pour Thunderbird. Enregistrer ce fichier sur votre "
-#~ "ordinateur et installer ce module dans Thunderbird."
-
-#~ msgid "The documentation file :- how to install Thunderbird Plug-in."
-#~ msgstr ""
-#~ "Fichier de la documentation : comment installer le module pour Thunderbird."
-
-#~ msgid "_Close"
-#~ msgstr "_Fermer"
-
-#~ msgid "Installation Manual"
-#~ msgstr "Manuel d'installation"
-
-#~ msgid "Image"
-#~ msgstr "Image"
-
-#~ msgid ""
-#~ "This plug-in allows you to link your e-mail to OpenERP's documents. You can "
-#~ "attach it to any existing one in OpenERP or create a new one."
-#~ msgstr ""
-#~ "Ce greffon vous permet de connecter votre courriel aux documents d'OpenERP. "
-#~ "Vous pouvez l'attacher sur n'importe quel objet existant dans OpenERP ou en "
-#~ "créer un nouveau."
diff --git a/addons/plugin_thunderbird/i18n/gl.po b/addons/plugin_thunderbird/i18n/gl.po
deleted file mode 100644
index 2a8015b8057..00000000000
--- a/addons/plugin_thunderbird/i18n/gl.po
+++ /dev/null
@@ -1,147 +0,0 @@
-# Galician translation for openobject-addons
-# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
-# This file is distributed under the same license as the openobject-addons package.
-# FIRST AUTHOR , 2011.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: openobject-addons\n"
-"Report-Msgid-Bugs-To: FULL NAME \n"
-"POT-Creation-Date: 2012-12-21 17:05+0000\n"
-"PO-Revision-Date: 2011-05-10 10:38+0000\n"
-"Last-Translator: FULL NAME \n"
-"Language-Team: Galician \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2014-04-22 07:20+0000\n"
-"X-Generator: Launchpad (build 16985)\n"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Restart Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Thunderbird plug-in installation:"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:sale.config.settings:0
-msgid "Download and install the plug-in"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.actions.act_window,name:plugin_thunderbird.action_thunderbird_installer
-#: model:ir.ui.menu,name:plugin_thunderbird.menu_base_config_plugins_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Install Thunderbird Plug-In"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,plugin_file:0
-msgid ""
-"Thunderbird plug-in file. Save this file and install it in Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "title"
-msgstr "título"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Installation and Configuration Steps"
-msgstr "Pasos da instalación e configuración"
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_name:0
-msgid "File name"
-msgstr "Nome do arquivo"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Click \"Install Now\"."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.model,name:plugin_thunderbird.model_plugin_thunderbird_installer
-msgid "plugin_thunderbird.installer"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_file:0
-#: field:plugin_thunderbird.installer,thunderbird:0
-msgid "Thunderbird Plug-in"
-msgstr "Conector Thunderbird"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Configure your openerp server."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,thunderbird:0
-msgid ""
-"Allows you to select an object that you would like to add to your email and "
-"its attachments."
-msgstr ""
-"Permítelle seleccionar un obxecto ó que desexe engadir o seu correo "
-"electrónico e os arquivos anexos."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Save the Thunderbird plug-in."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Close"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Select the plug-in (the file named openerp_plugin.xpi)."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid ""
-"From the Thunderbird menubar: Tools > Add-ons -> Screwdriver/Wrench Icon -> "
-"Install add-on from file..."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "From the Thunderbird menubar: OpenERP -> Configuration."
-msgstr ""
-
-#~ msgid "Description"
-#~ msgstr "Descrición"
-
-#~ msgid ""
-#~ "Thunderbird plug-in file. Save as this file and install this plug-in in "
-#~ "thunderbird."
-#~ msgstr ""
-#~ "Arquivo do conector Thunderbird. Garde este arquivo e instale este conector "
-#~ "na aplicación Thunderbird."
-
-#~ msgid "The documentation file :- how to install Thunderbird Plug-in."
-#~ msgstr "O arquivo de documentación: Como instalar o conector Thunderbird."
-
-#~ msgid "_Close"
-#~ msgstr "_Pechar"
-
-#~ msgid "Installation Manual"
-#~ msgstr "Manual de instalación"
-
-#~ msgid "Image"
-#~ msgstr "Imaxe"
-
-#~ msgid ""
-#~ "This plug-in allows you to link your e-mail to OpenERP's documents. You can "
-#~ "attach it to any existing one in OpenERP or create a new one."
-#~ msgstr ""
-#~ "Este conector permítelle vincular ó seu correo electrónico con documentos "
-#~ "OpenERP. Pódeo achegar á calquera elemento de OpenERP ou crear un novo."
diff --git a/addons/plugin_thunderbird/i18n/hr.po b/addons/plugin_thunderbird/i18n/hr.po
deleted file mode 100644
index 71b0534ede8..00000000000
--- a/addons/plugin_thunderbird/i18n/hr.po
+++ /dev/null
@@ -1,152 +0,0 @@
-# Croatian translation for openobject-addons
-# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
-# This file is distributed under the same license as the openobject-addons package.
-# FIRST AUTHOR , 2010.
-# Drazen Bosak , 2010.
-msgid ""
-msgstr ""
-"Project-Id-Version: openobject-addons\n"
-"Report-Msgid-Bugs-To: FULL NAME \n"
-"POT-Creation-Date: 2012-12-21 17:05+0000\n"
-"PO-Revision-Date: 2013-01-27 10:13+0000\n"
-"Last-Translator: Davor Bojkić \n"
-"Language-Team: Vinteh\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2014-04-22 07:20+0000\n"
-"X-Generator: Launchpad (build 16985)\n"
-"Language: hr\n"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Restart Thunderbird."
-msgstr "Ponovo pokreni Thunderbird."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Thunderbird plug-in installation:"
-msgstr "Thunderbird plug-in instalacija:"
-
-#. module: plugin_thunderbird
-#: view:sale.config.settings:0
-msgid "Download and install the plug-in"
-msgstr "Preuzmi i instaliraj plug-in"
-
-#. module: plugin_thunderbird
-#: model:ir.actions.act_window,name:plugin_thunderbird.action_thunderbird_installer
-#: model:ir.ui.menu,name:plugin_thunderbird.menu_base_config_plugins_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Install Thunderbird Plug-In"
-msgstr "Instaliraj Thunderbird Plug-In"
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,plugin_file:0
-msgid ""
-"Thunderbird plug-in file. Save this file and install it in Thunderbird."
-msgstr ""
-"Spremanje Thunderbird plug-ina. Spremite ovaj file i instalirajte ga u "
-"Thunderbird."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "title"
-msgstr "Naziv"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Installation and Configuration Steps"
-msgstr "Koraci instalacije i konfiguracije"
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_name:0
-msgid "File name"
-msgstr "Naziv datoteke"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Click \"Install Now\"."
-msgstr "Kliknite \"Install Now\"."
-
-#. module: plugin_thunderbird
-#: model:ir.model,name:plugin_thunderbird.model_plugin_thunderbird_installer
-msgid "plugin_thunderbird.installer"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_file:0
-#: field:plugin_thunderbird.installer,thunderbird:0
-msgid "Thunderbird Plug-in"
-msgstr "Thunderbird Plug-in"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Configure your openerp server."
-msgstr "Podesite svoj OpenERP server"
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,thunderbird:0
-msgid ""
-"Allows you to select an object that you would like to add to your email and "
-"its attachments."
-msgstr ""
-"Dozvoljava vam da odaberete objekt koji želite dodati vašoj elektroničkoj "
-"poruci kao privitak."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Save the Thunderbird plug-in."
-msgstr "Snimi Thunderbird plug-in."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Close"
-msgstr "Zatvori"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Select the plug-in (the file named openerp_plugin.xpi)."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid ""
-"From the Thunderbird menubar: Tools > Add-ons -> Screwdriver/Wrench Icon -> "
-"Install add-on from file..."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "From the Thunderbird menubar: OpenERP -> Configuration."
-msgstr ""
-
-#~ msgid "Description"
-#~ msgstr "Opis"
-
-#~ msgid ""
-#~ "Thunderbird plug-in file. Save as this file and install this plug-in in "
-#~ "thunderbird."
-#~ msgstr ""
-#~ "Thunderbird plug-in datoteka. Snimi kako ovu datoteku i instaliraj ovaj plug-"
-#~ "in u Thunderbird."
-
-#~ msgid "The documentation file :- how to install Thunderbird Plug-in."
-#~ msgstr "Datoteka s dokumentacijom : Kako instalirati Thunderbird Plug-in."
-
-#~ msgid "_Close"
-#~ msgstr "_Zatvori"
-
-#~ msgid "Installation Manual"
-#~ msgstr "Priručnik za instalaciju"
-
-#~ msgid "Image"
-#~ msgstr "Slika"
-
-#~ msgid ""
-#~ "This plug-in allows you to link your e-mail to OpenERP's documents. You can "
-#~ "attach it to any existing one in OpenERP or create a new one."
-#~ msgstr ""
-#~ "This plug-in allows you to link your e-mail to OpenERP's documents. You can "
-#~ "attach it to any existing one in OpenERP or create a new one.\r\n"
-#~ "Ovaj plug-in omogućuje povezivanje vaših el. poruka sa OpenERP dokumentima. "
-#~ "Možete dodjeliti neki postojeći u OpenERP-u ili kreirati novi."
diff --git a/addons/plugin_thunderbird/i18n/hu.po b/addons/plugin_thunderbird/i18n/hu.po
deleted file mode 100644
index 5d3253b59f9..00000000000
--- a/addons/plugin_thunderbird/i18n/hu.po
+++ /dev/null
@@ -1,151 +0,0 @@
-# Translation of OpenERP Server.
-# This file contains the translation of the following modules:
-# * thunderbird
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: OpenERP Server 6.0dev\n"
-"Report-Msgid-Bugs-To: support@openerp.com\n"
-"POT-Creation-Date: 2012-12-21 17:05+0000\n"
-"PO-Revision-Date: 2013-02-09 10:34+0000\n"
-"Last-Translator: krnkris \n"
-"Language-Team: \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2014-04-22 07:20+0000\n"
-"X-Generator: Launchpad (build 16985)\n"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Restart Thunderbird."
-msgstr "Thunderbird ujraindítása."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Thunderbird plug-in installation:"
-msgstr "Thunderbird plug-in telepítés:"
-
-#. module: plugin_thunderbird
-#: view:sale.config.settings:0
-msgid "Download and install the plug-in"
-msgstr "Plug-in letöltés és telepítés"
-
-#. module: plugin_thunderbird
-#: model:ir.actions.act_window,name:plugin_thunderbird.action_thunderbird_installer
-#: model:ir.ui.menu,name:plugin_thunderbird.menu_base_config_plugins_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Install Thunderbird Plug-In"
-msgstr "Thunderbird Plug-In telepítés"
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,plugin_file:0
-msgid ""
-"Thunderbird plug-in file. Save this file and install it in Thunderbird."
-msgstr ""
-"Thunderbird plug-in fájl. Mentse a fájlt és telepítse a Thunderbird-ben."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "title"
-msgstr "cím"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Installation and Configuration Steps"
-msgstr "Telepítás és beállítás lépései"
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_name:0
-msgid "File name"
-msgstr "Fájl neve"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Click \"Install Now\"."
-msgstr "Kattintson erre: \"Telepítés most\"."
-
-#. module: plugin_thunderbird
-#: model:ir.model,name:plugin_thunderbird.model_plugin_thunderbird_installer
-msgid "plugin_thunderbird.installer"
-msgstr "plugin_thunderbird.installer"
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_file:0
-#: field:plugin_thunderbird.installer,thunderbird:0
-msgid "Thunderbird Plug-in"
-msgstr "Thunderbird kiegészítő"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Configure your openerp server."
-msgstr "Állítsa be az openerp szerverét."
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,thunderbird:0
-msgid ""
-"Allows you to select an object that you would like to add to your email and "
-"its attachments."
-msgstr ""
-"Lehetővé teszi, hogy kiválasszon egy objektumot, amit csatolni szeretne a "
-"leveléhez."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Save the Thunderbird plug-in."
-msgstr "Mentse a Thunderbird plug-in-t."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Close"
-msgstr "Bezárás"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Select the plug-in (the file named openerp_plugin.xpi)."
-msgstr "Plug-in kiválasztása (a fájl aminek a neve openerp_plugin.xpi)."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid ""
-"From the Thunderbird menubar: Tools > Add-ons -> Screwdriver/Wrench Icon -> "
-"Install add-on from file..."
-msgstr ""
-"A Thunderbird menüsorából: Eszközök > Kiegészítők -> Csavarhúzó/Villáskulcs "
-"ikon -> Kiegészítők telepítése fájlból..."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "From the Thunderbird menubar: OpenERP -> Configuration."
-msgstr "A Thunderbird menüsorból: OpenERP -> Beállítások."
-
-#~ msgid "Description"
-#~ msgstr "Leírás"
-
-#~ msgid ""
-#~ "Thunderbird plug-in file. Save as this file and install this plug-in in "
-#~ "thunderbird."
-#~ msgstr ""
-#~ "Thunderbird kiegészítő fájl. Mentse le a fájlt, majd telepítse a kiegészítőt "
-#~ "a Thunderbirdben."
-
-#~ msgid "The documentation file :- how to install Thunderbird Plug-in."
-#~ msgstr ""
-#~ "Dokumentációs fájl :- Hogyan kell telepíteni a Thunderbird kiegészítőt."
-
-#~ msgid "_Close"
-#~ msgstr "_Bezárás"
-
-#~ msgid "Installation Manual"
-#~ msgstr "Telepítési útmutató"
-
-#~ msgid "Image"
-#~ msgstr "Kép"
-
-#~ msgid ""
-#~ "This plug-in allows you to link your e-mail to OpenERP's documents. You can "
-#~ "attach it to any existing one in OpenERP or create a new one."
-#~ msgstr ""
-#~ "Ez a plug-in lehetővé teszi, hogy összekapcsoljunk e-maileket OpenERP "
-#~ "dokumentumokkal. Akármelyik OpenERP-ben létező dokumentumhoz tudja csatolni, "
-#~ "vagy létrehozhat újat."
diff --git a/addons/plugin_thunderbird/i18n/is.po b/addons/plugin_thunderbird/i18n/is.po
deleted file mode 100644
index 2af3d14abf4..00000000000
--- a/addons/plugin_thunderbird/i18n/is.po
+++ /dev/null
@@ -1,147 +0,0 @@
-# Icelandic translation for openobject-addons
-# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012
-# This file is distributed under the same license as the openobject-addons package.
-# FIRST AUTHOR , 2012.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: openobject-addons\n"
-"Report-Msgid-Bugs-To: FULL NAME \n"
-"POT-Creation-Date: 2012-12-21 17:05+0000\n"
-"PO-Revision-Date: 2012-09-19 10:08+0000\n"
-"Last-Translator: FULL NAME \n"
-"Language-Team: Icelandic \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2014-04-22 07:20+0000\n"
-"X-Generator: Launchpad (build 16985)\n"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Restart Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Thunderbird plug-in installation:"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:sale.config.settings:0
-msgid "Download and install the plug-in"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.actions.act_window,name:plugin_thunderbird.action_thunderbird_installer
-#: model:ir.ui.menu,name:plugin_thunderbird.menu_base_config_plugins_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Install Thunderbird Plug-In"
-msgstr "Setja inn Thunderbird viðbót"
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,plugin_file:0
-msgid ""
-"Thunderbird plug-in file. Save this file and install it in Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "title"
-msgstr "titill"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Installation and Configuration Steps"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_name:0
-msgid "File name"
-msgstr "Skrárheiti"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Click \"Install Now\"."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.model,name:plugin_thunderbird.model_plugin_thunderbird_installer
-msgid "plugin_thunderbird.installer"
-msgstr "plugin_thunderbird.installer"
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_file:0
-#: field:plugin_thunderbird.installer,thunderbird:0
-msgid "Thunderbird Plug-in"
-msgstr "Thunderbird viðbót"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Configure your openerp server."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,thunderbird:0
-msgid ""
-"Allows you to select an object that you would like to add to your email and "
-"its attachments."
-msgstr ""
-"Gerir þér kleift að velja hlut sem þú vilt bæta við póstinn og viðhengi hans."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Save the Thunderbird plug-in."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Close"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Select the plug-in (the file named openerp_plugin.xpi)."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid ""
-"From the Thunderbird menubar: Tools > Add-ons -> Screwdriver/Wrench Icon -> "
-"Install add-on from file..."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "From the Thunderbird menubar: OpenERP -> Configuration."
-msgstr ""
-
-#~ msgid "_Close"
-#~ msgstr "_Loka"
-
-#~ msgid "Installation Manual"
-#~ msgstr "Uppsetningarhandbók"
-
-#~ msgid "The documentation file :- how to install Thunderbird Plug-in."
-#~ msgstr "Handbókin :- hvernig á að setja inn Thunderbird viðbót."
-
-#~ msgid "Description"
-#~ msgstr "Lýsing"
-
-#~ msgid "Image"
-#~ msgstr "Mynd"
-
-#~ msgid ""
-#~ "This plug-in allows you to link your e-mail to OpenERP's documents. You can "
-#~ "attach it to any existing one in OpenERP or create a new one."
-#~ msgstr ""
-#~ "Þessi viðbót gerir þér kleift að tengja tölvupóst við OpenERP skjöl. Þú "
-#~ "getur viðhengt póstinn við skjöl sem þegar eru til í OpenERP eða búið til "
-#~ "nýtt."
-
-#~ msgid ""
-#~ "Thunderbird plug-in file. Save as this file and install this plug-in in "
-#~ "thunderbird."
-#~ msgstr ""
-#~ "Skrá með Thunderbird viðbót. Vistaðu skrána og settu viðbótina inn í "
-#~ "Thunderbird."
diff --git a/addons/plugin_thunderbird/i18n/it.po b/addons/plugin_thunderbird/i18n/it.po
deleted file mode 100644
index 506d54a462d..00000000000
--- a/addons/plugin_thunderbird/i18n/it.po
+++ /dev/null
@@ -1,151 +0,0 @@
-# Italian translation for openobject-addons
-# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
-# This file is distributed under the same license as the openobject-addons package.
-# FIRST AUTHOR , 2010.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: openobject-addons\n"
-"Report-Msgid-Bugs-To: FULL NAME \n"
-"POT-Creation-Date: 2012-12-21 17:05+0000\n"
-"PO-Revision-Date: 2012-12-09 23:19+0000\n"
-"Last-Translator: Sergio Corato \n"
-"Language-Team: Italian \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2014-04-22 07:20+0000\n"
-"X-Generator: Launchpad (build 16985)\n"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Restart Thunderbird."
-msgstr "Riavvia Thunderbird."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Thunderbird plug-in installation:"
-msgstr "Installazione plug-in Thunderbird:"
-
-#. module: plugin_thunderbird
-#: view:sale.config.settings:0
-msgid "Download and install the plug-in"
-msgstr "Scarica e installa il plug-in"
-
-#. module: plugin_thunderbird
-#: model:ir.actions.act_window,name:plugin_thunderbird.action_thunderbird_installer
-#: model:ir.ui.menu,name:plugin_thunderbird.menu_base_config_plugins_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Install Thunderbird Plug-In"
-msgstr "Installa il plug-in Thunderbird"
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,plugin_file:0
-msgid ""
-"Thunderbird plug-in file. Save this file and install it in Thunderbird."
-msgstr ""
-"File del plug-in Thunderbird. Salvare il file e installarlo in Thunderbird."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "title"
-msgstr "titolo"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Installation and Configuration Steps"
-msgstr "Passi di installazione e configurazione"
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_name:0
-msgid "File name"
-msgstr "Nome file"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Click \"Install Now\"."
-msgstr "Clicca \"Installa adesso\"."
-
-#. module: plugin_thunderbird
-#: model:ir.model,name:plugin_thunderbird.model_plugin_thunderbird_installer
-msgid "plugin_thunderbird.installer"
-msgstr "plugin_thunderbird.installer"
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_file:0
-#: field:plugin_thunderbird.installer,thunderbird:0
-msgid "Thunderbird Plug-in"
-msgstr "Plug-in Thunderbird"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Configure your openerp server."
-msgstr "Configurare il server openerp."
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,thunderbird:0
-msgid ""
-"Allows you to select an object that you would like to add to your email and "
-"its attachments."
-msgstr ""
-"Permette di selezionare un oggetto che è possibile aggiungere all'email e ai "
-"suoi allegati."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Save the Thunderbird plug-in."
-msgstr "Salvare il plug-in Thunderbird."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Close"
-msgstr "Chiudi"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Select the plug-in (the file named openerp_plugin.xpi)."
-msgstr "Selezionare il plug-in (il file si chiama openerp_plugin.xpi)."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid ""
-"From the Thunderbird menubar: Tools > Add-ons -> Screwdriver/Wrench Icon -> "
-"Install add-on from file..."
-msgstr ""
-"Dalla barra del menu di Thunderbird: Strumenti > Componenti aggiuntivi -> "
-"Icona Cacciavite/Chiave -> Installa l'addon da file..."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "From the Thunderbird menubar: OpenERP -> Configuration."
-msgstr "Dalla barra del menu di Thunderbird: OpenERP -> Configurazione."
-
-#~ msgid "Description"
-#~ msgstr "Descrizione"
-
-#~ msgid ""
-#~ "Thunderbird plug-in file. Save as this file and install this plug-in in "
-#~ "thunderbird."
-#~ msgstr ""
-#~ "File plug-in di Thunderbird. Salva il file e installa questo plug-in in "
-#~ "Thunderbird."
-
-#~ msgid "The documentation file :- how to install Thunderbird Plug-in."
-#~ msgstr "File documentazione: come installare il plug-in in Thunderbird."
-
-#~ msgid "_Close"
-#~ msgstr "_Close"
-
-#~ msgid "Installation Manual"
-#~ msgstr "Manuale installazione"
-
-#~ msgid "Image"
-#~ msgstr "Imagine"
-
-#~ msgid ""
-#~ "This plug-in allows you to link your e-mail to OpenERP's documents. You can "
-#~ "attach it to any existing one in OpenERP or create a new one."
-#~ msgstr ""
-#~ "Il plug in permette di collegare le e-mail ai documenti di OpenERP. E' "
-#~ "possibile allegarle a documenti già esistenti di OpenERP oppure crearne di "
-#~ "nuovi"
diff --git a/addons/plugin_thunderbird/i18n/ja.po b/addons/plugin_thunderbird/i18n/ja.po
deleted file mode 100644
index 26b49a09531..00000000000
--- a/addons/plugin_thunderbird/i18n/ja.po
+++ /dev/null
@@ -1,143 +0,0 @@
-# Japanese translation for openobject-addons
-# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012
-# This file is distributed under the same license as the openobject-addons package.
-# FIRST AUTHOR , 2012.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: openobject-addons\n"
-"Report-Msgid-Bugs-To: FULL NAME \n"
-"POT-Creation-Date: 2012-12-21 17:05+0000\n"
-"PO-Revision-Date: 2012-05-31 22:07+0000\n"
-"Last-Translator: Akira Hiyama \n"
-"Language-Team: Japanese \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2014-04-22 07:20+0000\n"
-"X-Generator: Launchpad (build 16985)\n"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Restart Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Thunderbird plug-in installation:"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:sale.config.settings:0
-msgid "Download and install the plug-in"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.actions.act_window,name:plugin_thunderbird.action_thunderbird_installer
-#: model:ir.ui.menu,name:plugin_thunderbird.menu_base_config_plugins_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Install Thunderbird Plug-In"
-msgstr "Thunderbirdプラグインのインストール"
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,plugin_file:0
-msgid ""
-"Thunderbird plug-in file. Save this file and install it in Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "title"
-msgstr "タイトル"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Installation and Configuration Steps"
-msgstr "インストールと設定の手順"
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_name:0
-msgid "File name"
-msgstr "ファイル名"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Click \"Install Now\"."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.model,name:plugin_thunderbird.model_plugin_thunderbird_installer
-msgid "plugin_thunderbird.installer"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_file:0
-#: field:plugin_thunderbird.installer,thunderbird:0
-msgid "Thunderbird Plug-in"
-msgstr "Thunderbirdプラグイン"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Configure your openerp server."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,thunderbird:0
-msgid ""
-"Allows you to select an object that you would like to add to your email and "
-"its attachments."
-msgstr "あなたがEメールに追加したい、添付したいオブジェクトを選択するのが許されます。"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Save the Thunderbird plug-in."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Close"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Select the plug-in (the file named openerp_plugin.xpi)."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid ""
-"From the Thunderbird menubar: Tools > Add-ons -> Screwdriver/Wrench Icon -> "
-"Install add-on from file..."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "From the Thunderbird menubar: OpenERP -> Configuration."
-msgstr ""
-
-#~ msgid "_Close"
-#~ msgstr "閉じる"
-
-#~ msgid "Installation Manual"
-#~ msgstr "インストールマニュアル"
-
-#~ msgid "Description"
-#~ msgstr "説明"
-
-#~ msgid "Image"
-#~ msgstr "画像"
-
-#~ msgid ""
-#~ "This plug-in allows you to link your e-mail to OpenERP's documents. You can "
-#~ "attach it to any existing one in OpenERP or create a new one."
-#~ msgstr ""
-#~ "このプラグインはあなたのEメールをOpenERPのドキュメントにリンクさせることができます。OpenERPの既存あるいは新しく作成したドキュメントを添付で"
-#~ "きます。"
-
-#~ msgid "The documentation file :- how to install Thunderbird Plug-in."
-#~ msgstr "ドキュメントファイル:Thunderbirdプラグインのインストール方法"
-
-#~ msgid ""
-#~ "Thunderbird plug-in file. Save as this file and install this plug-in in "
-#~ "thunderbird."
-#~ msgstr "Thunderbirdプラグインファイル。このファイルを保存し、Thunderbirdの中にこのプラグインをインストールして下さい。"
diff --git a/addons/plugin_thunderbird/i18n/mk.po b/addons/plugin_thunderbird/i18n/mk.po
deleted file mode 100644
index 0cd9a73c539..00000000000
--- a/addons/plugin_thunderbird/i18n/mk.po
+++ /dev/null
@@ -1,118 +0,0 @@
-# Macedonian translation for openobject-addons
-# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013
-# This file is distributed under the same license as the openobject-addons package.
-# FIRST AUTHOR , 2013.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: openobject-addons\n"
-"Report-Msgid-Bugs-To: FULL NAME \n"
-"POT-Creation-Date: 2012-12-21 17:05+0000\n"
-"PO-Revision-Date: 2013-03-01 17:30+0000\n"
-"Last-Translator: FULL NAME \n"
-"Language-Team: Macedonian \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2014-04-22 07:20+0000\n"
-"X-Generator: Launchpad (build 16985)\n"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Restart Thunderbird."
-msgstr "Рестартирај Thunderbird"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Thunderbird plug-in installation:"
-msgstr "Инсталирање на thunderbird додатокот:"
-
-#. module: plugin_thunderbird
-#: view:sale.config.settings:0
-msgid "Download and install the plug-in"
-msgstr "Превземи и инсталирај додаток"
-
-#. module: plugin_thunderbird
-#: model:ir.actions.act_window,name:plugin_thunderbird.action_thunderbird_installer
-#: model:ir.ui.menu,name:plugin_thunderbird.menu_base_config_plugins_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Install Thunderbird Plug-In"
-msgstr "Инсталирај Thunderbird додаток"
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,plugin_file:0
-msgid ""
-"Thunderbird plug-in file. Save this file and install it in Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "title"
-msgstr "наслов"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Installation and Configuration Steps"
-msgstr "Чекори за инсталација и конфигурација"
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_name:0
-msgid "File name"
-msgstr "Име на датотеката"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Click \"Install Now\"."
-msgstr "Кликнете \"Инсталирај сега\""
-
-#. module: plugin_thunderbird
-#: model:ir.model,name:plugin_thunderbird.model_plugin_thunderbird_installer
-msgid "plugin_thunderbird.installer"
-msgstr "plugin_thunderbird.installer"
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_file:0
-#: field:plugin_thunderbird.installer,thunderbird:0
-msgid "Thunderbird Plug-in"
-msgstr "Thunderbird додаток"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Configure your openerp server."
-msgstr "Конфигурирајте го вашиот OpenERP сервер."
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,thunderbird:0
-msgid ""
-"Allows you to select an object that you would like to add to your email and "
-"its attachments."
-msgstr ""
-"Ви дозволува да селектирате објект кој сакате да го додадете на вашата е-"
-"пошта и нејзините прилози."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Save the Thunderbird plug-in."
-msgstr "Зачувај го Thunderbird додатокот"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Close"
-msgstr "Затвори"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Select the plug-in (the file named openerp_plugin.xpi)."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid ""
-"From the Thunderbird menubar: Tools > Add-ons -> Screwdriver/Wrench Icon -> "
-"Install add-on from file..."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "From the Thunderbird menubar: OpenERP -> Configuration."
-msgstr ""
diff --git a/addons/plugin_thunderbird/i18n/mn.po b/addons/plugin_thunderbird/i18n/mn.po
deleted file mode 100644
index 88907d6c2e1..00000000000
--- a/addons/plugin_thunderbird/i18n/mn.po
+++ /dev/null
@@ -1,147 +0,0 @@
-# Mongolian translation for openobject-addons
-# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
-# This file is distributed under the same license as the openobject-addons package.
-# FIRST AUTHOR , 2010.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: openobject-addons\n"
-"Report-Msgid-Bugs-To: FULL NAME \n"
-"POT-Creation-Date: 2012-12-21 17:05+0000\n"
-"PO-Revision-Date: 2010-09-29 08:36+0000\n"
-"Last-Translator: ub121 \n"
-"Language-Team: Mongolian \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2014-04-22 07:20+0000\n"
-"X-Generator: Launchpad (build 16985)\n"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Restart Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Thunderbird plug-in installation:"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:sale.config.settings:0
-msgid "Download and install the plug-in"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.actions.act_window,name:plugin_thunderbird.action_thunderbird_installer
-#: model:ir.ui.menu,name:plugin_thunderbird.menu_base_config_plugins_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Install Thunderbird Plug-In"
-msgstr "Thunderbird залгаас суулгах"
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,plugin_file:0
-msgid ""
-"Thunderbird plug-in file. Save this file and install it in Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "title"
-msgstr "гарчиг"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Installation and Configuration Steps"
-msgstr "Суулгалтын болон Тохиргооны Алхамууд"
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_name:0
-msgid "File name"
-msgstr "Файлын нэр"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Click \"Install Now\"."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.model,name:plugin_thunderbird.model_plugin_thunderbird_installer
-msgid "plugin_thunderbird.installer"
-msgstr "plugin_thunderbird.installer"
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_file:0
-#: field:plugin_thunderbird.installer,thunderbird:0
-msgid "Thunderbird Plug-in"
-msgstr "Thunderbird залгаас"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Configure your openerp server."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,thunderbird:0
-msgid ""
-"Allows you to select an object that you would like to add to your email and "
-"its attachments."
-msgstr ""
-"Имэйлийг хавсралт байдлаар нэмэх обьектийг сонгох боломжоор хангадаг."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Save the Thunderbird plug-in."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Close"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Select the plug-in (the file named openerp_plugin.xpi)."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid ""
-"From the Thunderbird menubar: Tools > Add-ons -> Screwdriver/Wrench Icon -> "
-"Install add-on from file..."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "From the Thunderbird menubar: OpenERP -> Configuration."
-msgstr ""
-
-#~ msgid "Description"
-#~ msgstr "Тодорхойлолт"
-
-#~ msgid "_Close"
-#~ msgstr "_Хаах"
-
-#~ msgid "Installation Manual"
-#~ msgstr "Суулгах Гарын авлага"
-
-#~ msgid "Image"
-#~ msgstr "Зураг"
-
-#~ msgid ""
-#~ "This plug-in allows you to link your e-mail to OpenERP's documents. You can "
-#~ "attach it to any existing one in OpenERP or create a new one."
-#~ msgstr ""
-#~ "Энэ залгаас нь OpenERP баримтуудад имэйлийг холбох боломжийг олгоно. Мөн "
-#~ "OpenERP-д байгаа янз бүрийн баримтуудад холбож өгч болно эсвэл шинээр үүсгэж "
-#~ "болно."
-
-#~ msgid "The documentation file :- how to install Thunderbird Plug-in."
-#~ msgstr "Баримтжуулалтын файл :- Thunderbird залгаасыг хэрхэн суулгах."
-
-#~ msgid ""
-#~ "Thunderbird plug-in file. Save as this file and install this plug-in in "
-#~ "thunderbird."
-#~ msgstr ""
-#~ "Thunderbird залгаас файл. Файл болгож хадгалаад thunderbird залгаас болгож "
-#~ "суулгана."
diff --git a/addons/plugin_thunderbird/i18n/nb.po b/addons/plugin_thunderbird/i18n/nb.po
deleted file mode 100644
index 5d05fa978a3..00000000000
--- a/addons/plugin_thunderbird/i18n/nb.po
+++ /dev/null
@@ -1,146 +0,0 @@
-# Norwegian Bokmal translation for openobject-addons
-# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012
-# This file is distributed under the same license as the openobject-addons package.
-# FIRST AUTHOR , 2012.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: openobject-addons\n"
-"Report-Msgid-Bugs-To: FULL NAME \n"
-"POT-Creation-Date: 2012-12-21 17:05+0000\n"
-"PO-Revision-Date: 2012-09-10 13:45+0000\n"
-"Last-Translator: FULL NAME \n"
-"Language-Team: Norwegian Bokmal \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2014-04-22 07:20+0000\n"
-"X-Generator: Launchpad (build 16985)\n"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Restart Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Thunderbird plug-in installation:"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:sale.config.settings:0
-msgid "Download and install the plug-in"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.actions.act_window,name:plugin_thunderbird.action_thunderbird_installer
-#: model:ir.ui.menu,name:plugin_thunderbird.menu_base_config_plugins_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Install Thunderbird Plug-In"
-msgstr "Installer Thunderbird Plug-in."
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,plugin_file:0
-msgid ""
-"Thunderbird plug-in file. Save this file and install it in Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "title"
-msgstr "tittel"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Installation and Configuration Steps"
-msgstr "Installasjon og Konfigurasjon trinn"
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_name:0
-msgid "File name"
-msgstr "Filnavn"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Click \"Install Now\"."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.model,name:plugin_thunderbird.model_plugin_thunderbird_installer
-msgid "plugin_thunderbird.installer"
-msgstr "plugin_thunderbird.installer"
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_file:0
-#: field:plugin_thunderbird.installer,thunderbird:0
-msgid "Thunderbird Plug-in"
-msgstr "Thunderbird Plug-in"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Configure your openerp server."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,thunderbird:0
-msgid ""
-"Allows you to select an object that you would like to add to your email and "
-"its attachments."
-msgstr ""
-"Lar deg velge et objekt som du ønsker å legge til din e-post og vedlegg."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Save the Thunderbird plug-in."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Close"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Select the plug-in (the file named openerp_plugin.xpi)."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid ""
-"From the Thunderbird menubar: Tools > Add-ons -> Screwdriver/Wrench Icon -> "
-"Install add-on from file..."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "From the Thunderbird menubar: OpenERP -> Configuration."
-msgstr ""
-
-#~ msgid "_Close"
-#~ msgstr "_Lukk"
-
-#~ msgid "Installation Manual"
-#~ msgstr "Installasjons håndbok."
-
-#~ msgid "Description"
-#~ msgstr "Beskrivelse:"
-
-#~ msgid "Image"
-#~ msgstr "Bilde"
-
-#~ msgid ""
-#~ "This plug-in allows you to link your e-mail to OpenERP's documents. You can "
-#~ "attach it to any existing one in OpenERP or create a new one."
-#~ msgstr ""
-#~ "Denne plug-in tillater deg å koble din e-post til OpenERP er dokumenter. Du "
-#~ "kan feste den til enhver eksisterende i OpenERP eller opprette en ny."
-
-#~ msgid "The documentation file :- how to install Thunderbird Plug-in."
-#~ msgstr "Dokumentasjonen fil: - hvordan du installerer Thunderbird Plug-in."
-
-#~ msgid ""
-#~ "Thunderbird plug-in file. Save as this file and install this plug-in in "
-#~ "thunderbird."
-#~ msgstr ""
-#~ "Thunderbird plug-in-filen. Lagre som denne filen og installere denne plugin-"
-#~ "modulen i thunderbird."
diff --git a/addons/plugin_thunderbird/i18n/nl.po b/addons/plugin_thunderbird/i18n/nl.po
deleted file mode 100644
index 3994680b93d..00000000000
--- a/addons/plugin_thunderbird/i18n/nl.po
+++ /dev/null
@@ -1,150 +0,0 @@
-# Dutch translation for openobject-addons
-# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
-# This file is distributed under the same license as the openobject-addons package.
-# FIRST AUTHOR , 2010.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: openobject-addons\n"
-"Report-Msgid-Bugs-To: FULL NAME \n"
-"POT-Creation-Date: 2012-12-21 17:05+0000\n"
-"PO-Revision-Date: 2012-11-25 21:06+0000\n"
-"Last-Translator: Mario Gielissen (Openworx) \n"
-"Language-Team: Dutch \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2014-04-22 07:20+0000\n"
-"X-Generator: Launchpad (build 16985)\n"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Restart Thunderbird."
-msgstr "Herstart Thunderbird."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Thunderbird plug-in installation:"
-msgstr "Thunderbird plug-in installatie:"
-
-#. module: plugin_thunderbird
-#: view:sale.config.settings:0
-msgid "Download and install the plug-in"
-msgstr "Download en installeer de plug-in"
-
-#. module: plugin_thunderbird
-#: model:ir.actions.act_window,name:plugin_thunderbird.action_thunderbird_installer
-#: model:ir.ui.menu,name:plugin_thunderbird.menu_base_config_plugins_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Install Thunderbird Plug-In"
-msgstr "Installeer de Thunderbird Plug-In"
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,plugin_file:0
-msgid ""
-"Thunderbird plug-in file. Save this file and install it in Thunderbird."
-msgstr ""
-"Thunderbird plug-in bestand. Sla dit bestand op en installeer deze in "
-"Thunderbird."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "title"
-msgstr "titel"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Installation and Configuration Steps"
-msgstr "Installatie- en configuratiestappen"
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_name:0
-msgid "File name"
-msgstr "Bestandsnaam"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Click \"Install Now\"."
-msgstr "Klik \"Installeer nu\"."
-
-#. module: plugin_thunderbird
-#: model:ir.model,name:plugin_thunderbird.model_plugin_thunderbird_installer
-msgid "plugin_thunderbird.installer"
-msgstr "plugin_thunderbird.installer"
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_file:0
-#: field:plugin_thunderbird.installer,thunderbird:0
-msgid "Thunderbird Plug-in"
-msgstr "Thunderbird-plugin"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Configure your openerp server."
-msgstr "Stel uw openerp-server in."
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,thunderbird:0
-msgid ""
-"Allows you to select an object that you would like to add to your email and "
-"its attachments."
-msgstr ""
-"Laat u een object selecteren waaraan u uw mail en bijlagen wilt toevoegen."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Save the Thunderbird plug-in."
-msgstr "Sla de Thunderbird plug-in op."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Close"
-msgstr "Afsluiten"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Select the plug-in (the file named openerp_plugin.xpi)."
-msgstr "Selecteer de plug-in (de bestandsnaam heet openerp_plugin.xpi)."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid ""
-"From the Thunderbird menubar: Tools > Add-ons -> Screwdriver/Wrench Icon -> "
-"Install add-on from file..."
-msgstr ""
-"Op de Thunderbird menubalk: Extra > Add-ons -> Schroevedraaier Icon -> Add-"
-"on installeren via bestand..."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "From the Thunderbird menubar: OpenERP -> Configuration."
-msgstr "Op de Thunderbird menubalk: OpenERP - Configuratie."
-
-#~ msgid "Description"
-#~ msgstr "Omschrijving"
-
-#~ msgid ""
-#~ "Thunderbird plug-in file. Save as this file and install this plug-in in "
-#~ "thunderbird."
-#~ msgstr ""
-#~ "Thunderbird plug-in bestand. Sla dit bestand op en installeer deze plug-in "
-#~ "in Thunderbird"
-
-#~ msgid "The documentation file :- how to install Thunderbird Plug-in."
-#~ msgstr "Het documentatiebestand: Hoe de Thunderbird-plugin te installeren."
-
-#~ msgid "_Close"
-#~ msgstr "_Sluiten"
-
-#~ msgid "Installation Manual"
-#~ msgstr "Installatiehandleiding"
-
-#~ msgid "Image"
-#~ msgstr "Afbeelding"
-
-#~ msgid ""
-#~ "This plug-in allows you to link your e-mail to OpenERP's documents. You can "
-#~ "attach it to any existing one in OpenERP or create a new one."
-#~ msgstr ""
-#~ "Deze plug-in laat u uw email koppelen aan OpenERP's documenten. U kunt het "
-#~ "bij elke bestaande in OpenERP bijvoegen en een nieuwe maken."
diff --git a/addons/plugin_thunderbird/i18n/pl.po b/addons/plugin_thunderbird/i18n/pl.po
deleted file mode 100644
index 88e6c93bcdc..00000000000
--- a/addons/plugin_thunderbird/i18n/pl.po
+++ /dev/null
@@ -1,119 +0,0 @@
-# Polish translation for openobject-addons
-# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
-# This file is distributed under the same license as the openobject-addons package.
-# FIRST AUTHOR , 2010.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: openobject-addons\n"
-"Report-Msgid-Bugs-To: FULL NAME \n"
-"POT-Creation-Date: 2012-12-21 17:05+0000\n"
-"PO-Revision-Date: 2010-08-22 05:50+0000\n"
-"Last-Translator: OpenERP Administrators \n"
-"Language-Team: Polish \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2014-04-22 07:20+0000\n"
-"X-Generator: Launchpad (build 16985)\n"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Restart Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Thunderbird plug-in installation:"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:sale.config.settings:0
-msgid "Download and install the plug-in"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.actions.act_window,name:plugin_thunderbird.action_thunderbird_installer
-#: model:ir.ui.menu,name:plugin_thunderbird.menu_base_config_plugins_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Install Thunderbird Plug-In"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,plugin_file:0
-msgid ""
-"Thunderbird plug-in file. Save this file and install it in Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "title"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Installation and Configuration Steps"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_name:0
-msgid "File name"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Click \"Install Now\"."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.model,name:plugin_thunderbird.model_plugin_thunderbird_installer
-msgid "plugin_thunderbird.installer"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_file:0
-#: field:plugin_thunderbird.installer,thunderbird:0
-msgid "Thunderbird Plug-in"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Configure your openerp server."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,thunderbird:0
-msgid ""
-"Allows you to select an object that you would like to add to your email and "
-"its attachments."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Save the Thunderbird plug-in."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Close"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Select the plug-in (the file named openerp_plugin.xpi)."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid ""
-"From the Thunderbird menubar: Tools > Add-ons -> Screwdriver/Wrench Icon -> "
-"Install add-on from file..."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "From the Thunderbird menubar: OpenERP -> Configuration."
-msgstr ""
-
-#~ msgid "Description"
-#~ msgstr "Opis"
diff --git a/addons/plugin_thunderbird/i18n/plugin_thunderbird.pot b/addons/plugin_thunderbird/i18n/plugin_thunderbird.pot
deleted file mode 100644
index 14d28309ff5..00000000000
--- a/addons/plugin_thunderbird/i18n/plugin_thunderbird.pot
+++ /dev/null
@@ -1,110 +0,0 @@
-# Translation of OpenERP Server.
-# This file contains the translation of the following modules:
-# * plugin_thunderbird
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: OpenERP Server 7.0alpha\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-12-21 17:05+0000\n"
-"PO-Revision-Date: 2012-12-21 17:05+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: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Restart Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Thunderbird plug-in installation:"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:sale.config.settings:0
-msgid "Download and install the plug-in"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.actions.act_window,name:plugin_thunderbird.action_thunderbird_installer
-#: model:ir.ui.menu,name:plugin_thunderbird.menu_base_config_plugins_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Install Thunderbird Plug-In"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,plugin_file:0
-msgid "Thunderbird plug-in file. Save this file and install it in Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "title"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Installation and Configuration Steps"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_name:0
-msgid "File name"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Click \"Install Now\"."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.model,name:plugin_thunderbird.model_plugin_thunderbird_installer
-msgid "plugin_thunderbird.installer"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_file:0
-#: field:plugin_thunderbird.installer,thunderbird:0
-msgid "Thunderbird Plug-in"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Configure your openerp server."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,thunderbird:0
-msgid "Allows you to select an object that you would like to add to your email and its attachments."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Save the Thunderbird plug-in."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Close"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Select the plug-in (the file named openerp_plugin.xpi)."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "From the Thunderbird menubar: Tools > Add-ons -> Screwdriver/Wrench Icon -> Install add-on from file..."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "From the Thunderbird menubar: OpenERP -> Configuration."
-msgstr ""
-
diff --git a/addons/plugin_thunderbird/i18n/pt.po b/addons/plugin_thunderbird/i18n/pt.po
deleted file mode 100644
index 8ee40951053..00000000000
--- a/addons/plugin_thunderbird/i18n/pt.po
+++ /dev/null
@@ -1,147 +0,0 @@
-# Portuguese translation for openobject-addons
-# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
-# This file is distributed under the same license as the openobject-addons package.
-# FIRST AUTHOR , 2010.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: openobject-addons\n"
-"Report-Msgid-Bugs-To: FULL NAME \n"
-"POT-Creation-Date: 2012-12-21 17:05+0000\n"
-"PO-Revision-Date: 2011-12-26 19:12+0000\n"
-"Last-Translator: tfr (Openerp) \n"
-"Language-Team: Portuguese \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2014-04-22 07:20+0000\n"
-"X-Generator: Launchpad (build 16985)\n"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Restart Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Thunderbird plug-in installation:"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:sale.config.settings:0
-msgid "Download and install the plug-in"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.actions.act_window,name:plugin_thunderbird.action_thunderbird_installer
-#: model:ir.ui.menu,name:plugin_thunderbird.menu_base_config_plugins_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Install Thunderbird Plug-In"
-msgstr "Instale o Plug-In Thunderbird"
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,plugin_file:0
-msgid ""
-"Thunderbird plug-in file. Save this file and install it in Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "title"
-msgstr "Título"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Installation and Configuration Steps"
-msgstr "Instalação e passos da configuração"
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_name:0
-msgid "File name"
-msgstr "Nome do Ficheiro"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Click \"Install Now\"."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.model,name:plugin_thunderbird.model_plugin_thunderbird_installer
-msgid "plugin_thunderbird.installer"
-msgstr "plugin_thunderbird.installer"
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_file:0
-#: field:plugin_thunderbird.installer,thunderbird:0
-msgid "Thunderbird Plug-in"
-msgstr "Plug-in para o Thunderbird"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Configure your openerp server."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,thunderbird:0
-msgid ""
-"Allows you to select an object that you would like to add to your email and "
-"its attachments."
-msgstr ""
-"Permite selecionar um objeto que pretende adicionar ao email como anexo."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Save the Thunderbird plug-in."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Close"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Select the plug-in (the file named openerp_plugin.xpi)."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid ""
-"From the Thunderbird menubar: Tools > Add-ons -> Screwdriver/Wrench Icon -> "
-"Install add-on from file..."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "From the Thunderbird menubar: OpenERP -> Configuration."
-msgstr ""
-
-#~ msgid "Description"
-#~ msgstr "Descrição"
-
-#~ msgid "The documentation file :- how to install Thunderbird Plug-in."
-#~ msgstr ""
-#~ "Ficheiro de documentação :- como instalar o 'plug-in' para o Thunderbird"
-
-#~ msgid "_Close"
-#~ msgstr "_Fechar"
-
-#~ msgid "Installation Manual"
-#~ msgstr "Manual de Instalação"
-
-#~ msgid "Image"
-#~ msgstr "Imagem"
-
-#~ msgid ""
-#~ "This plug-in allows you to link your e-mail to OpenERP's documents. You can "
-#~ "attach it to any existing one in OpenERP or create a new one."
-#~ msgstr ""
-#~ "Este plug-in permite ligar documentos OpenERP ao seu email. Pode ligar um "
-#~ "email a um objeto OpenERP já existente ou poderá criar um novo."
-
-#~ msgid ""
-#~ "Thunderbird plug-in file. Save as this file and install this plug-in in "
-#~ "thunderbird."
-#~ msgstr ""
-#~ "Ficheiro do plug-in para o Thunderbird. Guarde este ficheiro e instale este "
-#~ "plug-in no Thunderbird."
diff --git a/addons/plugin_thunderbird/i18n/pt_BR.po b/addons/plugin_thunderbird/i18n/pt_BR.po
deleted file mode 100644
index ea017e86a95..00000000000
--- a/addons/plugin_thunderbird/i18n/pt_BR.po
+++ /dev/null
@@ -1,150 +0,0 @@
-# Brazilian Portuguese translation for openobject-addons
-# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
-# This file is distributed under the same license as the openobject-addons package.
-# FIRST AUTHOR , 2010.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: openobject-addons\n"
-"Report-Msgid-Bugs-To: FULL NAME \n"
-"POT-Creation-Date: 2012-12-21 17:05+0000\n"
-"PO-Revision-Date: 2012-12-20 12:59+0000\n"
-"Last-Translator: Fábio Martinelli - http://zupy.com.br "
-"\n"
-"Language-Team: Brazilian Portuguese \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2014-04-22 07:20+0000\n"
-"X-Generator: Launchpad (build 16985)\n"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Restart Thunderbird."
-msgstr "Reiniciar Thunderbird."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Thunderbird plug-in installation:"
-msgstr "Instalação do Plug-in do Thunderbird."
-
-#. module: plugin_thunderbird
-#: view:sale.config.settings:0
-msgid "Download and install the plug-in"
-msgstr "Download e instale o plug-in"
-
-#. module: plugin_thunderbird
-#: model:ir.actions.act_window,name:plugin_thunderbird.action_thunderbird_installer
-#: model:ir.ui.menu,name:plugin_thunderbird.menu_base_config_plugins_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Install Thunderbird Plug-In"
-msgstr "Instalar Plug-in do Thunderbird"
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,plugin_file:0
-msgid ""
-"Thunderbird plug-in file. Save this file and install it in Thunderbird."
-msgstr ""
-"Arquivo plug-in do Thunderbird. Salve este arquivo e instale no Thunderbird."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "title"
-msgstr "Título"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Installation and Configuration Steps"
-msgstr "Instalação e Passos de Configuração"
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_name:0
-msgid "File name"
-msgstr "Nome do arquivo"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Click \"Install Now\"."
-msgstr "Clique \"Instalar Agora\"."
-
-#. module: plugin_thunderbird
-#: model:ir.model,name:plugin_thunderbird.model_plugin_thunderbird_installer
-msgid "plugin_thunderbird.installer"
-msgstr "plugin_thunderbird.installer"
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_file:0
-#: field:plugin_thunderbird.installer,thunderbird:0
-msgid "Thunderbird Plug-in"
-msgstr "Plug-in Thunderbird"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Configure your openerp server."
-msgstr "Configure seu servidor openerp"
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,thunderbird:0
-msgid ""
-"Allows you to select an object that you would like to add to your email and "
-"its attachments."
-msgstr ""
-"Permite que você selecione um objeto para adicionar no seu email com anexos."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Save the Thunderbird plug-in."
-msgstr "Salve o plug-in do Thunderbird."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Close"
-msgstr "Fechar"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Select the plug-in (the file named openerp_plugin.xpi)."
-msgstr "Escolha o plug-in (o arquivo chamado openerp_plugin.xpi)."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid ""
-"From the Thunderbird menubar: Tools > Add-ons -> Screwdriver/Wrench Icon -> "
-"Install add-on from file..."
-msgstr ""
-"No menu do Thunderbird: Tools > Add-ons -> Screwdriver/Wrench Icon -> "
-"Install add-on from file..."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "From the Thunderbird menubar: OpenERP -> Configuration."
-msgstr "Da barra de menu do Thunderbird: OpenERP -> Configuração."
-
-#~ msgid "Description"
-#~ msgstr "Descrição"
-
-#~ msgid ""
-#~ "Thunderbird plug-in file. Save as this file and install this plug-in in "
-#~ "thunderbird."
-#~ msgstr ""
-#~ "Arquivo plug-in do Thunderbird. Salve este arquivo e instale este plug-in no "
-#~ "Thunderbird."
-
-#~ msgid "The documentation file :- how to install Thunderbird Plug-in."
-#~ msgstr "O arquivo de documentação :- como instalar o Plug-in do Thunderbird."
-
-#~ msgid "_Close"
-#~ msgstr "Fe_char"
-
-#~ msgid "Installation Manual"
-#~ msgstr "Manual de instalação"
-
-#~ msgid "Image"
-#~ msgstr "Imagem"
-
-#~ msgid ""
-#~ "This plug-in allows you to link your e-mail to OpenERP's documents. You can "
-#~ "attach it to any existing one in OpenERP or create a new one."
-#~ msgstr ""
-#~ "Este plug-in permite que você relacione o seu email aos documentos do "
-#~ "OpenERP. Você pode anexar em qualquer documento do OpenERP ou criar um novo."
diff --git a/addons/plugin_thunderbird/i18n/ro.po b/addons/plugin_thunderbird/i18n/ro.po
deleted file mode 100644
index e9ae1dc06ea..00000000000
--- a/addons/plugin_thunderbird/i18n/ro.po
+++ /dev/null
@@ -1,152 +0,0 @@
-# Romanian translation for openobject-addons
-# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012
-# This file is distributed under the same license as the openobject-addons package.
-# FIRST AUTHOR , 2012.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: openobject-addons\n"
-"Report-Msgid-Bugs-To: FULL NAME \n"
-"POT-Creation-Date: 2012-12-21 17:05+0000\n"
-"PO-Revision-Date: 2012-01-09 12:02+0000\n"
-"Last-Translator: FULL NAME \n"
-"Language-Team: Romanian \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2014-04-22 07:20+0000\n"
-"X-Generator: Launchpad (build 16985)\n"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Restart Thunderbird."
-msgstr "Reporneste Thunderbird."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Thunderbird plug-in installation:"
-msgstr "Instalarea extensiei Thunderbird:"
-
-#. module: plugin_thunderbird
-#: view:sale.config.settings:0
-msgid "Download and install the plug-in"
-msgstr "Descarca si instaleaza extensia"
-
-#. module: plugin_thunderbird
-#: model:ir.actions.act_window,name:plugin_thunderbird.action_thunderbird_installer
-#: model:ir.ui.menu,name:plugin_thunderbird.menu_base_config_plugins_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Install Thunderbird Plug-In"
-msgstr "Instalati Aplicatia Thunderbird"
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,plugin_file:0
-msgid ""
-"Thunderbird plug-in file. Save this file and install it in Thunderbird."
-msgstr ""
-"Fisierul estensiei Thunderbird. Salvati acest fisier si instalati-l in "
-"Thunderbird."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "title"
-msgstr "titlu"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Installation and Configuration Steps"
-msgstr "Pasii de Instalare si Configurare"
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_name:0
-msgid "File name"
-msgstr "Nume fisier"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Click \"Install Now\"."
-msgstr "Clic \"Instaleaza Acum\"."
-
-#. module: plugin_thunderbird
-#: model:ir.model,name:plugin_thunderbird.model_plugin_thunderbird_installer
-msgid "plugin_thunderbird.installer"
-msgstr "program_de_instalare.aplicatie_thunderbird"
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_file:0
-#: field:plugin_thunderbird.installer,thunderbird:0
-msgid "Thunderbird Plug-in"
-msgstr "Aplicatia Thunderbird"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Configure your openerp server."
-msgstr "Configurati-va serverul openerp."
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,thunderbird:0
-msgid ""
-"Allows you to select an object that you would like to add to your email and "
-"its attachments."
-msgstr ""
-"Va permite sa selectati un obiect pe care doriti sa il atasati la e-mail si "
-"atasamentele lui."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Save the Thunderbird plug-in."
-msgstr "Salvati extensia Thunderbird."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Close"
-msgstr "Inchide"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Select the plug-in (the file named openerp_plugin.xpi)."
-msgstr "Selectati extensia (fisierul denumit openerp_plugin.xpi)."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid ""
-"From the Thunderbird menubar: Tools > Add-ons -> Screwdriver/Wrench Icon -> "
-"Install add-on from file..."
-msgstr ""
-"Din bara de meniu Thunderbird: Unelte > Add-ons > Pictograma "
-"Surubelnita/Cheie -> Instaleaza add-on din fisierul..."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "From the Thunderbird menubar: OpenERP -> Configuration."
-msgstr "Din bara de meniu Thunderbird: OpenERP -> Configurare."
-
-#~ msgid "Description"
-#~ msgstr "Descriere"
-
-#~ msgid "Installation Manual"
-#~ msgstr "Manual de instalare"
-
-#~ msgid "Image"
-#~ msgstr "Imagine"
-
-#~ msgid "_Close"
-#~ msgstr "_Inchideti"
-
-#~ msgid "The documentation file :- how to install Thunderbird Plug-in."
-#~ msgstr "Fisier de documentatie :- cum se instaleaza Extensia Thunderbird."
-
-#~ msgid ""
-#~ "This plug-in allows you to link your e-mail to OpenERP's documents. You can "
-#~ "attach it to any existing one in OpenERP or create a new one."
-#~ msgstr ""
-#~ "Aceasta aplicatie va permite sa va conectati e-mail-urile la documentele "
-#~ "OpenERP. Puteti sa le atasati de orice document existent in OpenERP sau sa "
-#~ "creati unul nou."
-
-#~ msgid ""
-#~ "Thunderbird plug-in file. Save as this file and install this plug-in in "
-#~ "thunderbird."
-#~ msgstr ""
-#~ "Fisier de extensie Thunderbird. Salveaza acest fisier si instaleaza aceasta "
-#~ "extensie in thunderbird."
diff --git a/addons/plugin_thunderbird/i18n/ru.po b/addons/plugin_thunderbird/i18n/ru.po
deleted file mode 100644
index ad508909788..00000000000
--- a/addons/plugin_thunderbird/i18n/ru.po
+++ /dev/null
@@ -1,148 +0,0 @@
-# Russian translation for openobject-addons
-# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
-# This file is distributed under the same license as the openobject-addons package.
-# FIRST AUTHOR , 2010.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: openobject-addons\n"
-"Report-Msgid-Bugs-To: FULL NAME \n"
-"POT-Creation-Date: 2012-12-21 17:05+0000\n"
-"PO-Revision-Date: 2011-12-26 19:12+0000\n"
-"Last-Translator: tfr (Openerp) \n"
-"Language-Team: Russian \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2014-04-22 07:20+0000\n"
-"X-Generator: Launchpad (build 16985)\n"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Restart Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Thunderbird plug-in installation:"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:sale.config.settings:0
-msgid "Download and install the plug-in"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.actions.act_window,name:plugin_thunderbird.action_thunderbird_installer
-#: model:ir.ui.menu,name:plugin_thunderbird.menu_base_config_plugins_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Install Thunderbird Plug-In"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,plugin_file:0
-msgid ""
-"Thunderbird plug-in file. Save this file and install it in Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "title"
-msgstr "заголовок"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Installation and Configuration Steps"
-msgstr "Шаги установки и настойки"
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_name:0
-msgid "File name"
-msgstr "Имя файла"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Click \"Install Now\"."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.model,name:plugin_thunderbird.model_plugin_thunderbird_installer
-msgid "plugin_thunderbird.installer"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_file:0
-#: field:plugin_thunderbird.installer,thunderbird:0
-msgid "Thunderbird Plug-in"
-msgstr "Дополнение для Thunderbird"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Configure your openerp server."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,thunderbird:0
-msgid ""
-"Allows you to select an object that you would like to add to your email and "
-"its attachments."
-msgstr ""
-"Позволяет выбрать объект, который вы хотели бы добавить в электронное письмо "
-"и приложения к нему."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Save the Thunderbird plug-in."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Close"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Select the plug-in (the file named openerp_plugin.xpi)."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid ""
-"From the Thunderbird menubar: Tools > Add-ons -> Screwdriver/Wrench Icon -> "
-"Install add-on from file..."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "From the Thunderbird menubar: OpenERP -> Configuration."
-msgstr ""
-
-#~ msgid "Description"
-#~ msgstr "Описание"
-
-#~ msgid ""
-#~ "Thunderbird plug-in file. Save as this file and install this plug-in in "
-#~ "thunderbird."
-#~ msgstr ""
-#~ "Файл, содержащий дополнение для Thunderbird. Сохраните этот файл и "
-#~ "установите его как дополнение для Thunderbird."
-
-#~ msgid "The documentation file :- how to install Thunderbird Plug-in."
-#~ msgstr "Файл документации: как установить плагин для Thunderbird."
-
-#~ msgid "_Close"
-#~ msgstr "_Закрыть"
-
-#~ msgid "Installation Manual"
-#~ msgstr "Руководство по установке"
-
-#~ msgid "Image"
-#~ msgstr "Изображение"
-
-#~ msgid ""
-#~ "This plug-in allows you to link your e-mail to OpenERP's documents. You can "
-#~ "attach it to any existing one in OpenERP or create a new one."
-#~ msgstr ""
-#~ "Этот плагин позволяет связывать ваши электронные письма с документами "
-#~ "OpenERP. Вы можете прикрепить их к любому существующему документу или "
-#~ "создать новый."
diff --git a/addons/plugin_thunderbird/i18n/sk.po b/addons/plugin_thunderbird/i18n/sk.po
deleted file mode 100644
index 3041d80fa69..00000000000
--- a/addons/plugin_thunderbird/i18n/sk.po
+++ /dev/null
@@ -1,119 +0,0 @@
-# Slovak translation for openobject-addons
-# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
-# This file is distributed under the same license as the openobject-addons package.
-# FIRST AUTHOR , 2010.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: openobject-addons\n"
-"Report-Msgid-Bugs-To: FULL NAME \n"
-"POT-Creation-Date: 2012-12-21 17:05+0000\n"
-"PO-Revision-Date: 2010-03-05 23:50+0000\n"
-"Last-Translator: Peter Kohaut \n"
-"Language-Team: Slovak \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2014-04-22 07:20+0000\n"
-"X-Generator: Launchpad (build 16985)\n"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Restart Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Thunderbird plug-in installation:"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:sale.config.settings:0
-msgid "Download and install the plug-in"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.actions.act_window,name:plugin_thunderbird.action_thunderbird_installer
-#: model:ir.ui.menu,name:plugin_thunderbird.menu_base_config_plugins_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Install Thunderbird Plug-In"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,plugin_file:0
-msgid ""
-"Thunderbird plug-in file. Save this file and install it in Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "title"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Installation and Configuration Steps"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_name:0
-msgid "File name"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Click \"Install Now\"."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.model,name:plugin_thunderbird.model_plugin_thunderbird_installer
-msgid "plugin_thunderbird.installer"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_file:0
-#: field:plugin_thunderbird.installer,thunderbird:0
-msgid "Thunderbird Plug-in"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Configure your openerp server."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,thunderbird:0
-msgid ""
-"Allows you to select an object that you would like to add to your email and "
-"its attachments."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Save the Thunderbird plug-in."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Close"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Select the plug-in (the file named openerp_plugin.xpi)."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid ""
-"From the Thunderbird menubar: Tools > Add-ons -> Screwdriver/Wrench Icon -> "
-"Install add-on from file..."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "From the Thunderbird menubar: OpenERP -> Configuration."
-msgstr ""
-
-#~ msgid "Description"
-#~ msgstr "Popis"
diff --git a/addons/plugin_thunderbird/i18n/sl.po b/addons/plugin_thunderbird/i18n/sl.po
deleted file mode 100644
index 01b4d1f630b..00000000000
--- a/addons/plugin_thunderbird/i18n/sl.po
+++ /dev/null
@@ -1,147 +0,0 @@
-# Slovenian translation for openobject-addons
-# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
-# This file is distributed under the same license as the openobject-addons package.
-# FIRST AUTHOR , 2010.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: openobject-addons\n"
-"Report-Msgid-Bugs-To: FULL NAME \n"
-"POT-Creation-Date: 2012-12-21 17:05+0000\n"
-"PO-Revision-Date: 2010-01-27 14:25+0000\n"
-"Last-Translator: Simon Vidmar \n"
-"Language-Team: Slovenian \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2014-04-22 07:20+0000\n"
-"X-Generator: Launchpad (build 16985)\n"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Restart Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Thunderbird plug-in installation:"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:sale.config.settings:0
-msgid "Download and install the plug-in"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.actions.act_window,name:plugin_thunderbird.action_thunderbird_installer
-#: model:ir.ui.menu,name:plugin_thunderbird.menu_base_config_plugins_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Install Thunderbird Plug-In"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,plugin_file:0
-msgid ""
-"Thunderbird plug-in file. Save this file and install it in Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "title"
-msgstr "naslov"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Installation and Configuration Steps"
-msgstr "Instlaciski in Konfiguraciski Postopki"
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_name:0
-msgid "File name"
-msgstr "Ime datoteke"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Click \"Install Now\"."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.model,name:plugin_thunderbird.model_plugin_thunderbird_installer
-msgid "plugin_thunderbird.installer"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_file:0
-#: field:plugin_thunderbird.installer,thunderbird:0
-msgid "Thunderbird Plug-in"
-msgstr "Thunderbird vtičnik"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Configure your openerp server."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,thunderbird:0
-msgid ""
-"Allows you to select an object that you would like to add to your email and "
-"its attachments."
-msgstr ""
-"Omogoča vam, da izberete predmet, ki bi želeli dodati na svoj email kot "
-"prilogo."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Save the Thunderbird plug-in."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Close"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Select the plug-in (the file named openerp_plugin.xpi)."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid ""
-"From the Thunderbird menubar: Tools > Add-ons -> Screwdriver/Wrench Icon -> "
-"Install add-on from file..."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "From the Thunderbird menubar: OpenERP -> Configuration."
-msgstr ""
-
-#~ msgid "Description"
-#~ msgstr "Opis"
-
-#~ msgid ""
-#~ "Thunderbird plug-in file. Save as this file and install this plug-in in "
-#~ "thunderbird."
-#~ msgstr ""
-#~ "Thunderbird vtičnik datoteka. Shrani datoteko in namesti vtičnik v "
-#~ "thunderbird."
-
-#~ msgid "The documentation file :- how to install Thunderbird Plug-in."
-#~ msgstr "Dokumentaciska datoteka :- kako namestiti Thunderbird vtičnik."
-
-#~ msgid "_Close"
-#~ msgstr "_Zapri"
-
-#~ msgid "Installation Manual"
-#~ msgstr "Navodila za namestitev"
-
-#~ msgid "Image"
-#~ msgstr "Slika"
-
-#~ msgid ""
-#~ "This plug-in allows you to link your e-mail to OpenERP's documents. You can "
-#~ "attach it to any existing one in OpenERP or create a new one."
-#~ msgstr ""
-#~ "Ta vtičnik dovoli povezati vaš poštni naslov z OpenERP dokumeti. Lahko "
-#~ "pripnete v kateri kolio obstoječi v OpenErp ali pa kerirate novega."
diff --git a/addons/plugin_thunderbird/i18n/sr.po b/addons/plugin_thunderbird/i18n/sr.po
deleted file mode 100644
index 0960b40eb43..00000000000
--- a/addons/plugin_thunderbird/i18n/sr.po
+++ /dev/null
@@ -1,119 +0,0 @@
-# Serbian translation for openobject-addons
-# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
-# This file is distributed under the same license as the openobject-addons package.
-# FIRST AUTHOR , 2010.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: openobject-addons\n"
-"Report-Msgid-Bugs-To: FULL NAME \n"
-"POT-Creation-Date: 2012-12-21 17:05+0000\n"
-"PO-Revision-Date: 2010-07-21 07:40+0000\n"
-"Last-Translator: novta \n"
-"Language-Team: Serbian \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2014-04-22 07:20+0000\n"
-"X-Generator: Launchpad (build 16985)\n"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Restart Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Thunderbird plug-in installation:"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:sale.config.settings:0
-msgid "Download and install the plug-in"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.actions.act_window,name:plugin_thunderbird.action_thunderbird_installer
-#: model:ir.ui.menu,name:plugin_thunderbird.menu_base_config_plugins_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Install Thunderbird Plug-In"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,plugin_file:0
-msgid ""
-"Thunderbird plug-in file. Save this file and install it in Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "title"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Installation and Configuration Steps"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_name:0
-msgid "File name"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Click \"Install Now\"."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.model,name:plugin_thunderbird.model_plugin_thunderbird_installer
-msgid "plugin_thunderbird.installer"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_file:0
-#: field:plugin_thunderbird.installer,thunderbird:0
-msgid "Thunderbird Plug-in"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Configure your openerp server."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,thunderbird:0
-msgid ""
-"Allows you to select an object that you would like to add to your email and "
-"its attachments."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Save the Thunderbird plug-in."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Close"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Select the plug-in (the file named openerp_plugin.xpi)."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid ""
-"From the Thunderbird menubar: Tools > Add-ons -> Screwdriver/Wrench Icon -> "
-"Install add-on from file..."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "From the Thunderbird menubar: OpenERP -> Configuration."
-msgstr ""
-
-#~ msgid "Description"
-#~ msgstr "Opis"
diff --git a/addons/plugin_thunderbird/i18n/sr@latin.po b/addons/plugin_thunderbird/i18n/sr@latin.po
deleted file mode 100644
index 2592b84e914..00000000000
--- a/addons/plugin_thunderbird/i18n/sr@latin.po
+++ /dev/null
@@ -1,119 +0,0 @@
-# Serbian translation for openobject-addons
-# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
-# This file is distributed under the same license as the openobject-addons package.
-# FIRST AUTHOR , 2010.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: openobject-addons\n"
-"Report-Msgid-Bugs-To: FULL NAME \n"
-"POT-Creation-Date: 2012-12-21 17:05+0000\n"
-"PO-Revision-Date: 2010-12-23 15:05+0000\n"
-"Last-Translator: Olivier Dony (OpenERP) \n"
-"Language-Team: Serbian \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2014-04-22 07:20+0000\n"
-"X-Generator: Launchpad (build 16985)\n"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Restart Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Thunderbird plug-in installation:"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:sale.config.settings:0
-msgid "Download and install the plug-in"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.actions.act_window,name:plugin_thunderbird.action_thunderbird_installer
-#: model:ir.ui.menu,name:plugin_thunderbird.menu_base_config_plugins_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Install Thunderbird Plug-In"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,plugin_file:0
-msgid ""
-"Thunderbird plug-in file. Save this file and install it in Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "title"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Installation and Configuration Steps"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_name:0
-msgid "File name"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Click \"Install Now\"."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.model,name:plugin_thunderbird.model_plugin_thunderbird_installer
-msgid "plugin_thunderbird.installer"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_file:0
-#: field:plugin_thunderbird.installer,thunderbird:0
-msgid "Thunderbird Plug-in"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Configure your openerp server."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,thunderbird:0
-msgid ""
-"Allows you to select an object that you would like to add to your email and "
-"its attachments."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Save the Thunderbird plug-in."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Close"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Select the plug-in (the file named openerp_plugin.xpi)."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid ""
-"From the Thunderbird menubar: Tools > Add-ons -> Screwdriver/Wrench Icon -> "
-"Install add-on from file..."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "From the Thunderbird menubar: OpenERP -> Configuration."
-msgstr ""
-
-#~ msgid "Description"
-#~ msgstr "Opis"
diff --git a/addons/plugin_thunderbird/i18n/sv.po b/addons/plugin_thunderbird/i18n/sv.po
deleted file mode 100644
index 6e7fb27656a..00000000000
--- a/addons/plugin_thunderbird/i18n/sv.po
+++ /dev/null
@@ -1,147 +0,0 @@
-# Swedish translation for openobject-addons
-# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012
-# This file is distributed under the same license as the openobject-addons package.
-# FIRST AUTHOR , 2012.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: openobject-addons\n"
-"Report-Msgid-Bugs-To: FULL NAME \n"
-"POT-Creation-Date: 2012-12-21 17:05+0000\n"
-"PO-Revision-Date: 2012-06-17 08:28+0000\n"
-"Last-Translator: FULL NAME \n"
-"Language-Team: Swedish \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2014-04-22 07:20+0000\n"
-"X-Generator: Launchpad (build 16985)\n"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Restart Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Thunderbird plug-in installation:"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:sale.config.settings:0
-msgid "Download and install the plug-in"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.actions.act_window,name:plugin_thunderbird.action_thunderbird_installer
-#: model:ir.ui.menu,name:plugin_thunderbird.menu_base_config_plugins_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Install Thunderbird Plug-In"
-msgstr "Installera Thunderbird-insticksprogram"
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,plugin_file:0
-msgid ""
-"Thunderbird plug-in file. Save this file and install it in Thunderbird."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "title"
-msgstr "Titel"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Installation and Configuration Steps"
-msgstr "Installation och konfigureringssteg"
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_name:0
-msgid "File name"
-msgstr "Filnamn"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Click \"Install Now\"."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: model:ir.model,name:plugin_thunderbird.model_plugin_thunderbird_installer
-msgid "plugin_thunderbird.installer"
-msgstr "plugin_thunderbird.installer"
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_file:0
-#: field:plugin_thunderbird.installer,thunderbird:0
-msgid "Thunderbird Plug-in"
-msgstr "Thunderbird-insticksprogram"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Configure your openerp server."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,thunderbird:0
-msgid ""
-"Allows you to select an object that you would like to add to your email and "
-"its attachments."
-msgstr ""
-"Låter dig välja ett objekt som du vill lägga till din e-post och dess "
-"bilagor."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Save the Thunderbird plug-in."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Close"
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Select the plug-in (the file named openerp_plugin.xpi)."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid ""
-"From the Thunderbird menubar: Tools > Add-ons -> Screwdriver/Wrench Icon -> "
-"Install add-on from file..."
-msgstr ""
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "From the Thunderbird menubar: OpenERP -> Configuration."
-msgstr ""
-
-#~ msgid "_Close"
-#~ msgstr "_Stäng"
-
-#~ msgid "Installation Manual"
-#~ msgstr "Installationshandbok"
-
-#~ msgid "Description"
-#~ msgstr "Beskrivning"
-
-#~ msgid "Image"
-#~ msgstr "Bild"
-
-#~ msgid ""
-#~ "This plug-in allows you to link your e-mail to OpenERP's documents. You can "
-#~ "attach it to any existing one in OpenERP or create a new one."
-#~ msgstr ""
-#~ "Detta insticksprogram länkar din e-post till OpenERPs dokumenthantering. Du "
-#~ "kan lägga till e-post till befintliga eller skapa ett nytt dokument."
-
-#~ msgid "The documentation file :- how to install Thunderbird Plug-in."
-#~ msgstr "Dokumentation :- hur man installerar Thunderbird-insticksprogram."
-
-#~ msgid ""
-#~ "Thunderbird plug-in file. Save as this file and install this plug-in in "
-#~ "thunderbird."
-#~ msgstr ""
-#~ "Thunderbird insticksprogramfil. Spara filen och installera insticksprogram i "
-#~ "Thunderbird."
diff --git a/addons/plugin_thunderbird/i18n/tr.po b/addons/plugin_thunderbird/i18n/tr.po
deleted file mode 100644
index bf0f5ee8668..00000000000
--- a/addons/plugin_thunderbird/i18n/tr.po
+++ /dev/null
@@ -1,149 +0,0 @@
-# Turkish translation for openobject-addons
-# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
-# This file is distributed under the same license as the openobject-addons package.
-# FIRST AUTHOR , 2011.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: openobject-addons\n"
-"Report-Msgid-Bugs-To: FULL NAME \n"
-"POT-Creation-Date: 2012-12-21 17:05+0000\n"
-"PO-Revision-Date: 2012-02-09 21:45+0000\n"
-"Last-Translator: Ahmet Altınışık \n"
-"Language-Team: Turkish \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2014-04-22 07:20+0000\n"
-"X-Generator: Launchpad (build 16985)\n"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Restart Thunderbird."
-msgstr "Thunderbird'ü Yeniden Başlatın."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Thunderbird plug-in installation:"
-msgstr "Thunderbird eklenti kurulumu:"
-
-#. module: plugin_thunderbird
-#: view:sale.config.settings:0
-msgid "Download and install the plug-in"
-msgstr "Eklentiyi indir ve kur"
-
-#. module: plugin_thunderbird
-#: model:ir.actions.act_window,name:plugin_thunderbird.action_thunderbird_installer
-#: model:ir.ui.menu,name:plugin_thunderbird.menu_base_config_plugins_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Install Thunderbird Plug-In"
-msgstr "Thunderbird Eklentisini Kur"
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,plugin_file:0
-msgid ""
-"Thunderbird plug-in file. Save this file and install it in Thunderbird."
-msgstr ""
-"Thunderbird eklenti dosyası. Bu dosyayı kaydedin ve Thunderbird'e kurun."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "title"
-msgstr "başlık"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Installation and Configuration Steps"
-msgstr "Yükleme ve Yapılandırma Adımları"
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_name:0
-msgid "File name"
-msgstr "Dosya adı"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Click \"Install Now\"."
-msgstr "\"Şimdi Kur\"a tıkla."
-
-#. module: plugin_thunderbird
-#: model:ir.model,name:plugin_thunderbird.model_plugin_thunderbird_installer
-msgid "plugin_thunderbird.installer"
-msgstr "plugin_thunderbird.installer"
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_file:0
-#: field:plugin_thunderbird.installer,thunderbird:0
-msgid "Thunderbird Plug-in"
-msgstr "Thunderbird Eklentisi"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Configure your openerp server."
-msgstr "Openerp sununucunuzu kurun."
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,thunderbird:0
-msgid ""
-"Allows you to select an object that you would like to add to your email and "
-"its attachments."
-msgstr "İstediğiniz bir nesneyi e-postanıza ve ekine eklemenizi sağlar."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Save the Thunderbird plug-in."
-msgstr "Thunderbird eklentisini kaydet."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Close"
-msgstr "Kapat"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Select the plug-in (the file named openerp_plugin.xpi)."
-msgstr "Eklenti seç (alan adı openerp_plugin.xpi)."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid ""
-"From the Thunderbird menubar: Tools > Add-ons -> Screwdriver/Wrench Icon -> "
-"Install add-on from file..."
-msgstr ""
-"Thunderbird menü çubuğundan: Araçlar > Eklentiler -> Tornavida/Somun "
-"anahtarı ikonu -> Dosyadan eklentiyi kur..."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "From the Thunderbird menubar: OpenERP -> Configuration."
-msgstr "Thunderbird menü çubuğundan: OpenERP -> Yapılandırma."
-
-#~ msgid "Description"
-#~ msgstr "Açıklama"
-
-#~ msgid ""
-#~ "Thunderbird plug-in file. Save as this file and install this plug-in in "
-#~ "thunderbird."
-#~ msgstr ""
-#~ "Thunderbird eklenti dosyası. Dosya olarak saklayın ve eklentiyi thunderbird "
-#~ "e kurun."
-
-#~ msgid "The documentation file :- how to install Thunderbird Plug-in."
-#~ msgstr "Dökümantasyon Dosyası: -Thunderbird eklentisi nasıl kurulur"
-
-#~ msgid "_Close"
-#~ msgstr "_Kapat"
-
-#~ msgid "Installation Manual"
-#~ msgstr "Kurulum Kılavuzu"
-
-#~ msgid "Image"
-#~ msgstr "Resim"
-
-#~ msgid ""
-#~ "This plug-in allows you to link your e-mail to OpenERP's documents. You can "
-#~ "attach it to any existing one in OpenERP or create a new one."
-#~ msgstr ""
-#~ "Bu eklenti e-posta adresinizi OpenERP dökümanlarına eklemenizi sağlar. "
-#~ "Varolan bir belgeye iliştirebileceğiniz gibi yaratacağınız yeni bir belgede "
-#~ "de kullanabilirsiniz."
diff --git a/addons/plugin_thunderbird/i18n/zh_CN.po b/addons/plugin_thunderbird/i18n/zh_CN.po
deleted file mode 100644
index ca8d8af4e14..00000000000
--- a/addons/plugin_thunderbird/i18n/zh_CN.po
+++ /dev/null
@@ -1,143 +0,0 @@
-# Chinese (Simplified) translation for openobject-addons
-# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
-# This file is distributed under the same license as the openobject-addons package.
-# FIRST AUTHOR , 2010.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: openobject-addons\n"
-"Report-Msgid-Bugs-To: FULL NAME \n"
-"POT-Creation-Date: 2012-12-21 17:05+0000\n"
-"PO-Revision-Date: 2012-11-28 13:58+0000\n"
-"Last-Translator: 盈通 ccdos \n"
-"Language-Team: Chinese (Simplified) \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2014-04-22 07:20+0000\n"
-"X-Generator: Launchpad (build 16985)\n"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Restart Thunderbird."
-msgstr "重启Thunderbird。"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Thunderbird plug-in installation:"
-msgstr "Thunderbird 插件安装:"
-
-#. module: plugin_thunderbird
-#: view:sale.config.settings:0
-msgid "Download and install the plug-in"
-msgstr "下载并安装插件"
-
-#. module: plugin_thunderbird
-#: model:ir.actions.act_window,name:plugin_thunderbird.action_thunderbird_installer
-#: model:ir.ui.menu,name:plugin_thunderbird.menu_base_config_plugins_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Install Thunderbird Plug-In"
-msgstr "安装 Thunderbird 插件"
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,plugin_file:0
-msgid ""
-"Thunderbird plug-in file. Save this file and install it in Thunderbird."
-msgstr "Thunderbird 插件的文件file。保存此文件,然后在Thunderbird 中安装。"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "title"
-msgstr "标题"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Installation and Configuration Steps"
-msgstr "安装和设置步骤"
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_name:0
-msgid "File name"
-msgstr "文件名"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Click \"Install Now\"."
-msgstr "单击“现在安装”"
-
-#. module: plugin_thunderbird
-#: model:ir.model,name:plugin_thunderbird.model_plugin_thunderbird_installer
-msgid "plugin_thunderbird.installer"
-msgstr "plugin_thunderbird.installer"
-
-#. module: plugin_thunderbird
-#: field:plugin_thunderbird.installer,plugin_file:0
-#: field:plugin_thunderbird.installer,thunderbird:0
-msgid "Thunderbird Plug-in"
-msgstr "Thunderbird 插件"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Configure your openerp server."
-msgstr "配置你的 openerp 服务器"
-
-#. module: plugin_thunderbird
-#: help:plugin_thunderbird.installer,thunderbird:0
-msgid ""
-"Allows you to select an object that you would like to add to your email and "
-"its attachments."
-msgstr "允许你选择一个你想链接到你电子邮件和它的附件的对象"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Save the Thunderbird plug-in."
-msgstr "保存 Thunderbird 插件。"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Close"
-msgstr "关闭"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "Select the plug-in (the file named openerp_plugin.xpi)."
-msgstr "选择插件(文件名是 openerp_plugin.xpi )。"
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid ""
-"From the Thunderbird menubar: Tools > Add-ons -> Screwdriver/Wrench Icon -> "
-"Install add-on from file..."
-msgstr ""
-"从 Thunderbird 的菜单条:Tools > Add-ons -> Screwdriver/Wrench Icon -> Install "
-"add-on from file..."
-
-#. module: plugin_thunderbird
-#: view:plugin_thunderbird.installer:0
-msgid "From the Thunderbird menubar: OpenERP -> Configuration."
-msgstr "从 Thunderbird 的菜单条 : OpenERP -> Configuration."
-
-#~ msgid "Description"
-#~ msgstr "描述"
-
-#~ msgid ""
-#~ "Thunderbird plug-in file. Save as this file and install this plug-in in "
-#~ "thunderbird."
-#~ msgstr "Thunderbird 插件。存为文件并在 Thunderbird 里安装这个插件。"
-
-#~ msgid "The documentation file :- how to install Thunderbird Plug-in."
-#~ msgstr "文件 :- 如何安装 Thunderbird 插件。"
-
-#~ msgid "_Close"
-#~ msgstr "关闭(_C)"
-
-#~ msgid "Installation Manual"
-#~ msgstr "安装手册"
-
-#~ msgid "Image"
-#~ msgstr "图像"
-
-#~ msgid ""
-#~ "This plug-in allows you to link your e-mail to OpenERP's documents. You can "
-#~ "attach it to any existing one in OpenERP or create a new one."
-#~ msgstr "这插件允许你把你的电子邮件链接到系统的文档到中,你能附属在系统中任何现有的文档或创建一个新的文档。"
diff --git a/addons/plugin_thunderbird/plugin_thunderbird.py b/addons/plugin_thunderbird/plugin_thunderbird.py
deleted file mode 100644
index 71d2aab1022..00000000000
--- a/addons/plugin_thunderbird/plugin_thunderbird.py
+++ /dev/null
@@ -1,45 +0,0 @@
-# -*- coding: utf-8 -*-
-##############################################################################
-#
-# OpenERP, Open Source Management Solution
-# Copyright (C) 2004-2010 Tiny SPRL ().
-#
-# 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 .
-#
-##############################################################################
-
-from openerp.osv import fields, osv
-
-class plugin_thunderbird_installer(osv.osv_memory):
- _name = 'plugin_thunderbird.installer'
- _inherit = 'res.config.installer'
-
- _columns = {
- 'thunderbird': fields.boolean('Thunderbird Plug-in', help="Allows you to select an object that you would like to add to your email and its attachments."),
- 'plugin_name': fields.char('File name', size=64),
- 'plugin_file': fields.char('Thunderbird Plug-in', size=256, readonly=True, help="Thunderbird plug-in file. Save this file and install it in Thunderbird."),
- }
-
- _defaults = {
- 'thunderbird': True,
- 'plugin_name': 'openerp_plugin.xpi',
- }
-
- def default_get(self, cr, uid, fields, context=None):
- res = super(plugin_thunderbird_installer, self).default_get(cr, uid, fields, context)
- base_url = self.pool.get('ir.config_parameter').get_param(cr, uid, 'web.base.url')
- res['plugin_file'] = base_url + '/plugin_thunderbird/static/openerp_plugin.xpi'
- return res
-
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/plugin_thunderbird/plugin_thunderbird.xml b/addons/plugin_thunderbird/plugin_thunderbird.xml
deleted file mode 100644
index 4c435f88398..00000000000
--- a/addons/plugin_thunderbird/plugin_thunderbird.xml
+++ /dev/null
@@ -1,74 +0,0 @@
-
-
-
-
- plugin_thunderbird.installer.view
- plugin_thunderbird.installer
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Thunderbird plug-in installation:
-
- Save the Thunderbird plug-in.
- From the Thunderbird menubar: Tools > Add-ons -> Screwdriver/Wrench Icon -> Install add-on from file...
- Select the plug-in (the file named openerp_plugin.xpi).
- Click "Install Now".
- Restart Thunderbird.
- From the Thunderbird menubar: OpenERP -> Configuration.
- Configure your openerp server.
-
-
-
-
-
-
-
-
-
-
- Install Thunderbird Plug-In
- ir.actions.act_window
- plugin_thunderbird.installer
-
- form
- form
- new
-
-
-
-
- Sales Application
- sale.config.settings
-
-
-
-
-
-
-
-
-
-
-
diff --git a/addons/plugin_thunderbird/static/openerp_plugin.xpi b/addons/plugin_thunderbird/static/openerp_plugin.xpi
deleted file mode 100644
index b1aeb6f9102..00000000000
Binary files a/addons/plugin_thunderbird/static/openerp_plugin.xpi and /dev/null differ
diff --git a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome.manifest b/addons/plugin_thunderbird/static/thunderbird_plugin/chrome.manifest
deleted file mode 100644
index a587ab54181..00000000000
--- a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome.manifest
+++ /dev/null
@@ -1,9 +0,0 @@
-interfaces components/xml-rpc.xpt
-component {4d7d15c0-3747-4f7f-b6b3-792a5ea1a9aa} components/nsXmlRpcClient.js
-contract @mozilla.org/xml-rpc/client;1 {4d7d15c0-3747-4f7f-b6b3-792a5ea1a9aa}
-category profile-after-change @mozilla.org/xml-rpc/client;1
-content openerp_plugin jar:chrome/openerp_plugin.jar!/content/
-overlay chrome://messenger/content/messenger.xul chrome://openerp_plugin/content/overlay.xul
-locale openerp_plugin en-US jar:chrome/openerp_plugin.jar!/locale/en-US/
-skin openerp_plugin classic/1.0 jar:chrome/openerp_plugin.jar!/skin/
-#style chrome://global/content/customizeToolbar.xul chrome://openerp_plugin/skin/overlay.css
diff --git a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin.jar b/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin.jar
deleted file mode 100644
index 64b4e9e04fe..00000000000
Binary files a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin.jar and /dev/null differ
diff --git a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/content/config.xul b/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/content/config.xul
deleted file mode 100644
index 86e55537054..00000000000
--- a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/content/config.xul
+++ /dev/null
@@ -1,86 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- &openerp.paresent;
-
-
-
-
- &develop.value;
-
-
-
- &information.value;
- &openerp.value;
-
- &axelor.value;
- &tinyerp.value;
-
-
- Copyright © 2006-TODAY OpenERP SA All Rights Reserved.
- OpenERP is a trademark of the OpenERP SA Company. OpenERP Web is jointly developed by OpenERP SA & Axelor.
- Licenced under the terms of OpenERP Public License (OEPL) v1.1 (https://tiny.odoo.com/LICENSE.txt)
-
-
-
-
-
diff --git a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/content/config_change.xul b/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/content/config_change.xul
deleted file mode 100644
index 00a4869b68f..00000000000
--- a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/content/config_change.xul
+++ /dev/null
@@ -1,42 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/content/create.xul b/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/content/create.xul
deleted file mode 100644
index d20f54c1b95..00000000000
--- a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/content/create.xul
+++ /dev/null
@@ -1,49 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/content/js/config.js b/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/content/js/config.js
deleted file mode 100644
index f0f2d750bd0..00000000000
--- a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/content/js/config.js
+++ /dev/null
@@ -1,122 +0,0 @@
-function load_config_data() {
- getDbList('DBlist');
- document.getElementById("txturl").value = getServer();
- document.getElementById("txtusername").value = getUsername();
- document.getElementById("txtpassword").value = getPassword();
- document.getElementById("DBlist_text").value = getDbName();
-}
-
-function config_close() {
- window.close("chrome://openerp_plugin/content/config_change.xul", "", "chrome");
- open_window('chrome://openerp_plugin/content/config.xul', 580,500);
-}
-
-//set the value of the configuration fields
-function config_change_load() {
- document.getElementById('txtcurl').value = getPreferenceDefault('server_name', 'localhost')
- document.getElementById('txtcport').value = getPreferenceDefault('serverport', '8069')
-}
-
-
-function config_ok()
-{
- var protocol = document.getElementById("dbprotocol_list").value
- if (document.getElementById('txtcurl').value == '' || document.getElementById('txtcport').value == '') {
- alert("You Must Enter Server Name and a Port!")
- return false;
- }
- setPreference('serverport', document.getElementById('txtcport').value)
- setPreference('server_name', document.getElementById('txtcurl').value)
- setServer(document.getElementById("dbprotocol_list").value+document.getElementById('txtcurl').value +":" + document.getElementById('txtcport').value);
- config_close()
-}
-
-function openConfigChange() {
- window.close("chrome://openerp_plugin/content/config.xul", "", "chrome");
- open_window("chrome://openerp_plugin/content/config_change.xul", 350,200);
-}
-
-//xmlrpc request handler for getting the list of database
-var listDbHandler = {
- onResult: function(client, context, result) {
- netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect UniversalBrowserAccess');
- var arrMethodList = result.QueryInterface(Components.interfaces.nsISupportsArray);
- var count = arrMethodList.Count();
- if (count < 1) {
- setDBList("false");
- return
- }
-
- setDBList("true");
- dbname_saved = getPreference("serverdbname")
-
- var menu1 = document.createElement("menulist");
- menu1.setAttribute("id","DBlist");
- menu1.setAttribute("width","300");
- var menupopup1 = document.createElement("menupopup");
- menu1.appendChild(menupopup1)
-
- // Loop through the results, adding items to the list
- for (i = 0; i < count; i++) {
- var dbname = arrMethodList.QueryElementAt(i, Components.interfaces.nsISupportsCString).data;
- menupopup1.appendChild(createMenuItem(dbname, dbname));
- if (dbname == dbname_saved) {
- index = i
- }
- }
-
- var db_text_field = document.getElementById("DBlist_text");
- db_text_field.parentNode.replaceChild(menu1, db_text_field);
-
- menu1.selectedIndex = index
- },
-
-
- onFault: function (client, ctxt, fault) {
- setDBList("false");
- },
-
- onError: function (client, ctxt, status, errorMsg) {
- setDBList("false");
- }
-};
-//function to get the database list
-function getDbList(argControl) {
- setDBList("false");
- setServerService('xmlrpc/db');
- netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect UniversalBrowserAccess');
- var xmlRpcClient = getXmlRpc();
- var cmbDbList = document.getElementById(argControl);
-
- xmlRpcClient.asyncCall(listDbHandler,cmbDbList,'list',[],0);
- return [];
-}
-
-
-function check_database() {
- if (getDBList()=="false") {
- if (document.getElementById('DBlist_text').value =='') {
- alert("You Must Enter Database Name.");
- return false;
- }
- return document.getElementById('DBlist_text').value;
- }
- else {
- return document.getElementById('DBlist').value;
- }
-
-}
-
-function connection() {
- callback = check_connection(login_success)
- setPreference('serverdbname', check_database())
- setServer(document.getElementById('txturl').value);
- setUsername(document.getElementById('txtusername').value);
- setPassword(document.getElementById('txtpassword').value);
- login()
-}
-//function to check the login information
-function login_success() {
- alert("login successfull");
- window.close("chrome://openerp_plugin/content/config.xul", "", "chrome");
-}
diff --git a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/content/js/create.js b/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/content/js/create.js
deleted file mode 100644
index 9a549137fa6..00000000000
--- a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/content/js/create.js
+++ /dev/null
@@ -1,123 +0,0 @@
-function load_createContact() {
- document.getElementById("txtname").value = getSenderName();
- document.getElementById("txtemail").value = getSenderEmail();
- setPartnerId(0);
-}
-
-//function to create the xmlrpc supported variables for xmlrpc request
-function dictcontact(a,b){
- var temp = xmlRpcClient.createType(xmlRpcClient.ARRAY,{});
- for(i=0;i 1) {
- alert("You must select only one mail to archive");
- return false
- }
- return fun()
- }
- if(getPreference('userid', 'INT') == 0 || getmodule_install() == "no") {
- callback = check_connection(cb)
- login()
- return False
- }
-
- return cb()
-
-}
-
-var openPartnerHandler = {
- onResult: function(client, context, result) {
- res = extract_data(result)
- if(res[RES_ID]==0) {
- open_window("chrome://openerp_plugin/content/create.xul", 550, 250);
- return;
- }
- open_url(res[URL])
-
-
-
- },
- onFault: function (client, ctxt, fault) {
- log_message(fault);
- },
-
- onError: function (client, ctxt, status, errorMsg) {
- log_message(errorMsg)
- }
-
-}
-
-function searchPartner(email)
-{
- setServerService('xmlrpc/object');
- netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect UniversalBrowserAccess');
-
- var xmlRpcClient = getXmlRpc();
- var strDbName = get_rpc_string(xmlRpcClient, getPreference("serverdbname"));
- var struid = get_rpc_int(xmlRpcClient, getPreference('userid', 'INT'));
- var strpass = get_rpc_string(xmlRpcClient, getPreference("password"));
- var strobj = get_rpc_string(xmlRpcClient, 'plugin.handler');
- var strmethod = get_rpc_string(xmlRpcClient, 'partner_get');
- var strname = get_rpc_string(xmlRpcClient, email);
- xmlRpcClient.asyncCall(openPartnerHandler,null,'execute',[ strDbName,struid,strpass,strobj,strmethod,strname ],6);
-}
-
-
-function open_partner()
-{
- //gives the selected email uri
- var messageUri= gDBView.URIForFirstSelectedMessage;
-
-
- var messenger = Components.classes['@mozilla.org/messenger;1'].createInstance(Components.interfaces.nsIMessenger);
-
- //gives the selected email object
- var message = messenger.messageServiceFromURI(messageUri).messageURIToMsgHdr(messageUri);
- //functionality to split the author name and email
- if(message.author.charAt(0) == '"'){
- sendername = message.author.split('"')[1].split('"')[0];
- }
- else if(message.author.indexOf('<')!=-1){
- sendername = message.author.split('<')[0];
- }
- else{
- sendername = message.author;
- }
- if(message.author.indexOf('<')!=-1){
- senderemail = message.author.split('<')[1].split('>')[0];
- }
- else{
- senderemail = message.author;
- }
- setPreference('senderemail', senderemail);
- setPreference('sendername', sendername);
- searchPartner(senderemail);
-}
-
-
-var listDocumentHandler = {
- onResult: function(client, context, result) {
- res = extract_data(result)
-
- if(res[RES_ID]==0) {
- setPreference('statutdoc','create');
- }
- else {
- setPreference('statutdoc', 'open');
- setPreference('urldoc', res[URL]);
- }
- open_window("chrome://openerp_plugin/content/push_dialog.xul", 480, 110);
-
- },
- onFault: function (client, ctxt, fault) {
- log_message(fault);
- },
-
- onError: function (client, ctxt, status, errorMsg) {
- log_message(errorMsg)
- }
-}
-
-function open_document() {
- var prefService = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefService);
-
- //gives the selected email uri
- var messageUri = gDBView.URIForFirstSelectedMessage;
-
- var branchobj = getPref();
-
- setServerService('xmlrpc/object');
- netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect UniversalBrowserAccess');
-
- var xmlRpcClient = getXmlRpc();
- var strDbName = get_rpc_string(xmlRpcClient, branchobj.getCharPref("serverdbname"));
- var struids = get_rpc_int(xmlRpcClient, branchobj.getIntPref('userid'));
- var strpass = get_rpc_string(xmlRpcClient, branchobj.getCharPref("password"));
- var strmethod = get_rpc_string(xmlRpcClient, 'document_get');
-
- var strobj = get_rpc_string(xmlRpcClient, 'plugin.handler');
-
- var eml_string = getMessage(messageUri);
- setPreference('email_text', eml_string);
- var email = get_rpc_string(xmlRpcClient, eml_string);
- xmlRpcClient.asyncCall(listDocumentHandler,null,'execute',[strDbName,struids,strpass,strobj,strmethod, email],6);
-}
diff --git a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/content/js/push.js b/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/content/js/push.js
deleted file mode 100644
index be345b2ab3e..00000000000
--- a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/content/js/push.js
+++ /dev/null
@@ -1,154 +0,0 @@
-//xmlrpc request handler for list of search object exist in database or not.
-var DocumentTypeHandler = {
- onResult: function(client, context, result) {
- netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect UniversalBrowserAccess');
- var modelListRPC = result.QueryInterface(Components.interfaces.nsISupportsArray);
-
- var menu_popup = document.getElementById("model_list");
- for(i = 0; i < modelListRPC.Count(); i++) {
- var temp_array = modelListRPC.QueryElementAt(i, Components.interfaces.nsISupportsArray);
- var model_value = temp_array.QueryElementAt(0, Components.interfaces.nsISupportsCString);
- var model_name = temp_array.QueryElementAt(1, Components.interfaces.nsISupportsCString);
- if(i == 0) {
- var menuitem = document.getElementById("first_model_list");
- menuitem.setAttribute("label", model_name);
- menuitem.setAttribute("value", model_value);
- }
- else {
- menu_popup.appendChild(createMenuItem(model_name, model_value));
- }
-
- }
- },
-
- onFault: function (client, ctxt, fault) {
- log_message("Fault getDocument : " + fault)
- },
-
- onError: function (client, ctxt, status, errorMsg) {
- log_message("Error getDocument : " + errorMsg)
- }
-}
-
-//function to create a new attachment record
-function getDocumentType(){
- setServerService('xmlrpc/object');
- netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect UniversalBrowserAccess');
- var xmlRpcClient = getXmlRpc();
- var strDbName = get_rpc_string(xmlRpcClient, getPreference("serverdbname"));
- var struid = get_rpc_int(xmlRpcClient, getPreference('userid', 'INT'));
- var strpass = get_rpc_string(xmlRpcClient, getPreference("password"));
- var strobj = get_rpc_string(xmlRpcClient, 'plugin.handler');
- var strmethod = get_rpc_string(xmlRpcClient, 'document_type');
- xmlRpcClient.asyncCall(DocumentTypeHandler,null,'execute',[strDbName,struid,strpass,strobj,strmethod], 5);
-}
-
-/**
- * Search Handler : Fill the result of list_document_get in the listbox
- */
-//xmlrpc request handler for getting the search results for the particular selected check box object
-var listSearchCheckboxHandler = {
- onResult: function(client, context, result) {
- netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect UniversalBrowserAccess');
- var arrMethodList = result.QueryInterface(Components.interfaces.nsISupportsArray);
- // Set the number of results
- var count = arrMethodList.Count();
- var close=0;
- clear_search_box('listSearchBox')
- if(count == 0){
- alert("No Records Found");
- return false;
- }
-
- // Loop through the results, adding items to the list
- var cmbSearchList = document.getElementById('listSearchBox');
-
- for (i = 0; i < count; i++) {
- var temp = arrMethodList.QueryElementAt(i, Components.interfaces.nsISupportsArray);
- id = temp.QueryElementAt(0, Components.interfaces.nsISupportsPRInt32);
- name = temp.QueryElementAt(1, Components.interfaces.nsISupportsCString);
- var listItem = document.createElement("listitem");
- cmbSearchList.appendItem(name, id)
- }
- },
-
- onFault: function (client, ctxt, fault) {
- log_message(fault)
- },
-
- onError: function (client, ctxt, status, errorMsg) {
- log_message(errorMsg)
- }
-};
-
-//function to search the records of selected checkbox object
-function searchCheckbox()
-{
- model_name = document.getElementById('menu_model_list').selectedItem.value;
- name = document.getElementById('txtvalueobj').value
-
- setServerService('xmlrpc/object');
- netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect UniversalBrowserAccess');
- var xmlRpcClient = getXmlRpc();
- var cmbSearchList = document.getElementById('listSearchBox');
- var strDbName = get_rpc_string(xmlRpcClient, getPreference("serverdbname"));
- var struid = get_rpc_int(xmlRpcClient, getPreference('userid', 'INT'));
- var strpass = get_rpc_string(xmlRpcClient, getPreference("password"));
- var strmethod = get_rpc_string(xmlRpcClient, 'list_document_get');
- var strobj = get_rpc_string(xmlRpcClient, 'plugin.handler');
- var strmodel = get_rpc_string(xmlRpcClient, model_name);
- var strname = get_rpc_string(xmlRpcClient, name);
-
- xmlRpcClient.asyncCall(listSearchCheckboxHandler,cmbSearchList,'execute',[ strDbName,struid,strpass,strobj,strmethod, strmodel, strname],7);
-}
-
-
-
-//xmlrpc request handler for creating the record of mail
-var pushHandler = {
- onResult: function(client, context, result) {
- res = extract_data(result)
- alert(res[ADDITIONAL_INFORMATION])
- open_url(res[URL]);
- window.close();
- },
-
- onFault: function (client, ctxt, fault) {
- log_message(fault)
- },
-
- onError: function (client, ctxt, status, errorMsg) {
- log_message(errorMsg)
- }
-}
-
-
-function push(op) {
- var model_name = document.getElementById('menu_model_list').selectedItem.value;
- var res_id = 0;
- if(op == "add") {
- var item = document.getElementById('listSearchBox').selectedItem
- if (String(item) == "null") {
- alert("select at least one Document !")
- return
- }
-
- var res_id = item.value;
-
- }
- setServerService('xmlrpc/object');
- netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect UniversalBrowserAccess');
- var xmlRpcClient = getXmlRpc();
-
- var strDbName = get_rpc_string(xmlRpcClient, getPreference("serverdbname"));
- var struid = get_rpc_int(xmlRpcClient, getPreference('userid', 'INT'));
- var strpass = get_rpc_string(xmlRpcClient, getPreference("password"));
- var strmethod = get_rpc_string(xmlRpcClient, 'push_message');
- var strobj = get_rpc_string(xmlRpcClient, 'plugin.handler');
- var stremail = get_rpc_string(xmlRpcClient, getPreference('email_text'));
- var strmodel = get_rpc_string(xmlRpcClient, model_name);
- var strres_id = get_rpc_int(xmlRpcClient, res_id);
- xmlRpcClient.asyncCall(pushHandler,null,'execute',[strDbName,struid,strpass,strobj,strmethod,strmodel, stremail, strres_id],8);
-}
-
-
diff --git a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/content/js/tiny_xmlrpc.js b/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/content/js/tiny_xmlrpc.js
deleted file mode 100644
index 0b26a8ed7cb..00000000000
--- a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/content/js/tiny_xmlrpc.js
+++ /dev/null
@@ -1,421 +0,0 @@
-/************************************************************
-* OpenERP, Open Source Management Solution
-* Copyright (C) 2004-2010 Tiny SPRL ().
-*
-* 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 .
-***************************************************************/
-
-var xmlRpcClient;
-
-//Service name on server like /common,/db etc...
-var strServerService;
-
-
-var uri = new Array();
-var name = new Array();
-var rpc= {
- servers: {},
- addserver: function(name,ip,port,path) {
- netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect UniversalBrowserAccess');
- this.servers[name]= {
- ip: ip,
- port: port,
- path: path,
- avaible: true,
- sock: Components.classes['@mozilla.org/xml-rpc/client;1'].createInstance(Components.interfaces.nsIXmlRpcClient)};
- },
- getany: function(rpcval,n) {
- netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect UniversalBrowserAccess');
- var t = ['PRUint8','PRUint16','PRInt16','PRInt32','PRBool','Char','CString','Float','Double','PRTime','InputStream','Array','Dictionary'];
- for (var i=0; i0)
- for (var i=0; i"+params[0];
- msg+= "\n3. Your server may not be launched or connected to the network.";
- }
- func_out([false,'error '+status,msg]);
- } };
- var p = [];
- for (var i=0; i
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/content/push.xul b/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/content/push.xul
deleted file mode 100644
index b57ad68e11b..00000000000
--- a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/content/push.xul
+++ /dev/null
@@ -1,56 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/content/push_dialog.xul b/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/content/push_dialog.xul
deleted file mode 100644
index 72bc7295ffe..00000000000
--- a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/content/push_dialog.xul
+++ /dev/null
@@ -1,22 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/content/push_new.xul b/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/content/push_new.xul
deleted file mode 100644
index e1d22c875ad..00000000000
--- a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/content/push_new.xul
+++ /dev/null
@@ -1,37 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/content/selectpartner.xul b/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/content/selectpartner.xul
deleted file mode 100644
index db1839ba156..00000000000
--- a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/content/selectpartner.xul
+++ /dev/null
@@ -1,31 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/content/style.css b/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/content/style.css
deleted file mode 100644
index 59972304145..00000000000
--- a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/content/style.css
+++ /dev/null
@@ -1,10 +0,0 @@
-.text-prompt {
- padding-top: .25em;
- text-align: right;
-}
-
-.text-border {
- padding: 1em;
- font-size : 1.2em;
- font-weight: bold;
-}
\ No newline at end of file
diff --git a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/locale/en-US/address.dtd b/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/locale/en-US/address.dtd
deleted file mode 100644
index 3dd37445ada..00000000000
--- a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/locale/en-US/address.dtd
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/locale/en-US/config.dtd b/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/locale/en-US/config.dtd
deleted file mode 100644
index 711190962a6..00000000000
--- a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/locale/en-US/config.dtd
+++ /dev/null
@@ -1,56 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/locale/en-US/config_change.dtd b/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/locale/en-US/config_change.dtd
deleted file mode 100644
index 19558a9f077..00000000000
--- a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/locale/en-US/config_change.dtd
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
-
-
-
diff --git a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/locale/en-US/create.dtd b/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/locale/en-US/create.dtd
deleted file mode 100644
index bb5f2c34be6..00000000000
--- a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/locale/en-US/create.dtd
+++ /dev/null
@@ -1,37 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/locale/en-US/mboximport.properties b/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/locale/en-US/mboximport.properties
deleted file mode 100644
index 33845423f7d..00000000000
--- a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/locale/en-US/mboximport.properties
+++ /dev/null
@@ -1,31 +0,0 @@
-nomboxfile=není mbox souborem
-folderexists=Není možné importovat: složka se stejným názvem již existuje
-fileexists=Není možné importovat: soubor se stejným názvem již existuje
-nowritable=Není možné importovat: nemáte právo zápisu do složky
-exportOK=Export byl úspěšně dokončen
-isNewsgroup=Tato funkce není dostupná: export složky z IMAP účtů nebo diskuzních \nskupin je možný, pouze pokud je nastavené čtení v režimu Offline
-nofolder=Nebyla vybrána žádná cílová složka
-badfolder=Není možné importovat do této složky (typ IMAP nebo diskuzní skupina)
-exportAccount=Export všech složek
-exportFolder=Export složky
-filePickerImport=Výběr souboru k importu
-filePickerExport=Výběr cílové složky
-extensions.{3ed8cc52-86fc-4613-9026-c1ef969da4c3}.description=Umožňuje import a export souborů ve formátu mbox a eml
-virtualfolder=Toto je virtuální složka. Pro export jejich\nzpráv musíte tyto zprávy nejdříve\nzkopírovat do normální složky.
-searchdir=Vyberte složku, ve které budou vyhledány mbox soubory
-confirmimport=Chcete importovat soubor?
-endscan=Konec prohledávání složek
-internalerror=Není možné provést import, protože nastala neznámá chyba
-exportstart=Probíhá export, čekejte prosím...
-exported=Exportovalo se
-msgs=zpráv z
-nosubjectmsg=bez_predmetu
-messsubdir=zprávy
-badfolder2=Není možné importovat do této složky (IMAP nebo diskuzní skupina nebo virtuální složka)
-temp_error=Není možné importovat: nastala chyba při vytváření dočasného souboru
-importEMLstart=Pobíhá import, čekejte prosím...
-numEML=Naimportovány eml soubory:
-CSVseparator=,
-noEML=No eml file found in this directory
-backupWarning=During this operation, the program could be\nunresponsive for some minutes.\nDo you want to go on?\n
-noWaring=Don't show again this warning
diff --git a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/locale/en-US/overlay.dtd b/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/locale/en-US/overlay.dtd
deleted file mode 100644
index e649eb92ced..00000000000
--- a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/locale/en-US/overlay.dtd
+++ /dev/null
@@ -1,18 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/locale/en-US/plugin.dtd b/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/locale/en-US/plugin.dtd
deleted file mode 100644
index cd00045c22a..00000000000
--- a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/locale/en-US/plugin.dtd
+++ /dev/null
@@ -1,31 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/locale/en-US/selectpartner.dtd b/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/locale/en-US/selectpartner.dtd
deleted file mode 100644
index d568b96a4ca..00000000000
--- a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/locale/en-US/selectpartner.dtd
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/skin/Archive.png b/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/skin/Archive.png
deleted file mode 100644
index 5aa6a958d37..00000000000
Binary files a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/skin/Archive.png and /dev/null differ
diff --git a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/skin/Create.png b/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/skin/Create.png
deleted file mode 100644
index 1ab240c32cb..00000000000
Binary files a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/skin/Create.png and /dev/null differ
diff --git a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/skin/Error.gif b/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/skin/Error.gif
deleted file mode 100644
index 38c3523781b..00000000000
Binary files a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/skin/Error.gif and /dev/null differ
diff --git a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/skin/Move.gif b/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/skin/Move.gif
deleted file mode 100644
index 401bf861213..00000000000
Binary files a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/skin/Move.gif and /dev/null differ
diff --git a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/skin/MoveDown.png b/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/skin/MoveDown.png
deleted file mode 100644
index 3761ff1e747..00000000000
Binary files a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/skin/MoveDown.png and /dev/null differ
diff --git a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/skin/MoveLeft.png b/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/skin/MoveLeft.png
deleted file mode 100644
index 031d7532673..00000000000
Binary files a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/skin/MoveLeft.png and /dev/null differ
diff --git a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/skin/Search.gif b/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/skin/Search.gif
deleted file mode 100644
index b29c3cf1054..00000000000
Binary files a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/skin/Search.gif and /dev/null differ
diff --git a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/skin/Success.gif b/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/skin/Success.gif
deleted file mode 100644
index fb3bff729c5..00000000000
Binary files a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/skin/Success.gif and /dev/null differ
diff --git a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/skin/developped_by.png b/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/skin/developped_by.png
deleted file mode 100644
index e4004e3d178..00000000000
Binary files a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/skin/developped_by.png and /dev/null differ
diff --git a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/skin/logo.png b/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/skin/logo.png
deleted file mode 100644
index d6dbd9d83d1..00000000000
Binary files a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/skin/logo.png and /dev/null differ
diff --git a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/skin/openerp.png b/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/skin/openerp.png
deleted file mode 100644
index 326798df2ec..00000000000
Binary files a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/skin/openerp.png and /dev/null differ
diff --git a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/skin/overlay.css b/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/skin/overlay.css
deleted file mode 100644
index 1f71b8fdcbe..00000000000
--- a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/skin/overlay.css
+++ /dev/null
@@ -1,3 +0,0 @@
-menuitem#tiny-plugin {
- color: red !important;
-}
diff --git a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/skin/perform.gif b/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/skin/perform.gif
deleted file mode 100644
index 16cc3873858..00000000000
Binary files a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/skin/perform.gif and /dev/null differ
diff --git a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/skin/settings.png b/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/skin/settings.png
deleted file mode 100644
index ad0298af667..00000000000
Binary files a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/skin/settings.png and /dev/null differ
diff --git a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/skin/tinyerp-icon.ico b/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/skin/tinyerp-icon.ico
deleted file mode 100644
index 0057dc4c879..00000000000
Binary files a/addons/plugin_thunderbird/static/thunderbird_plugin/chrome/openerp_plugin/skin/tinyerp-icon.ico and /dev/null differ
diff --git a/addons/plugin_thunderbird/static/thunderbird_plugin/components/nsXmlRpcClient.js b/addons/plugin_thunderbird/static/thunderbird_plugin/components/nsXmlRpcClient.js
deleted file mode 100644
index cf702b4141f..00000000000
--- a/addons/plugin_thunderbird/static/thunderbird_plugin/components/nsXmlRpcClient.js
+++ /dev/null
@@ -1,1049 +0,0 @@
-/* ***** BEGIN LICENSE BLOCK *****
- * Version: MPL 1.1/GPL 2.0/LGPL 2.1
- *
- * The contents of this file are subject to the Mozilla Public License Version
- * 1.1 (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- * http://www.mozilla.org/MPL/
- *
- * Software distributed under the License is distributed on an "AS IS" basis,
- * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
- * for the specific language governing rights and limitations under the
- * License.
- *
- * The Original Code is Mozilla XML-RPC Client component.
- *
- * The Initial Developer of the Original Code is
- * Digital Creations 2, Inc.
- * Portions created by the Initial Developer are Copyright (C) 2000
- * the Initial Developer. All Rights Reserved.
- *
- * Contributor(s):
- * Martijn Pieters (original author)
- * Samuel Sieb
- *
- * Alternatively, the contents of this file may be used under the terms of
- * either the GNU General Public License Version 2 or later (the "GPL"), or
- * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
- * in which case the provisions of the GPL or the LGPL are applicable instead
- * of those above. If you wish to allow use of your version of this file only
- * under the terms of either the GPL or the LGPL, and not to allow others to
- * use your version of this file under the terms of the MPL, indicate your
- * decision by deleting the provisions above and replace them with the notice
- * and other provisions required by the GPL or the LGPL. If you do not delete
- * the provisions above, a recipient may use your version of this file under
- * the terms of any one of the MPL, the GPL or the LGPL.
- *
- * ***** END LICENSE BLOCK ***** */
-
-/*
- * nsXmlRpcClient XPCOM component
- * Version: $Revision: 1.39 $
- *
- * $Id: nsXmlRpcClient.js,v 1.39 2006/10/24 16:02:01 silver%warwickcompsoc.co.uk Exp $
- */
-
-/*
- * Constants
- */
-Components.utils.import("resource://gre/modules/XPCOMUtils.jsm");
-const XMLRPCCLIENT_CONTRACTID = '@mozilla.org/xml-rpc/client;1';
-const XMLRPCCLIENT_CID =
- Components.ID('{4d7d15c0-3747-4f7f-b6b3-792a5ea1a9aa}');
-const XMLRPCCLIENT_IID = Components.interfaces.nsIXmlRpcClient;
-
-const XMLRPCFAULT_CONTRACTID = '@mozilla.org/xml-rpc/fault;1';
-const XMLRPCFAULT_CID =
- Components.ID('{691cb864-0a7e-448c-98ee-4a7f359cf145}');
-const XMLRPCFAULT_IID = Components.interfaces.nsIXmlRpcFault;
-
-const XMLHTTPREQUEST_CONTRACTID = '@mozilla.org/xmlextras/xmlhttprequest;1';
-
-const NSICHANNEL = Components.interfaces.nsIChannel;
-
-const DEBUG = false;
-const DEBUGPARSE = false;
-
-const DOMNode = Components.interfaces.nsIDOMNode;
-/*
- * Class definitions
- */
-
-/* The nsXmlRpcFault class constructor. */
-function nsXmlRpcFault() {}
-
-/* the nsXmlRpcFault class def */
-nsXmlRpcFault.prototype = {
- faultCode: 0,
- faultString: '',
-
- init: function(faultCode, faultString) {
- this.faultCode = faultCode;
- this.faultString = faultString;
- },
-
- toString: function() {
- return '';
- },
-
- // nsISupports interface
- QueryInterface: function(iid) {
- if (!iid.equals(Components.interfaces.nsISupports) &&
- !iid.equals(XMLRPCFAULT_IID))
- throw Components.results.NS_ERROR_NO_INTERFACE;
- return this;
- }
-};
-
-/* The nsXmlRpcClient class constructor. */
-function nsXmlRpcClient() {}
-
-/* the nsXmlRpcClient class def */
-nsXmlRpcClient.prototype = {
- _serverUrl: null,
- _useAuth: false,
-
- classDescription: "nsXmlRpcClient XPCOM component",
- classID: Components.ID("{4d7d15c0-3747-4f7f-b6b3-792a5ea1a9aa}"),
- contractID: "@mozilla.org/xml-rpc/client;1",
-
- init: function(serverURL) {
- this._serverUrl = serverURL;
- this._encoding = "UTF-8";
- },
-
- setAuthentication: function(username, password){
- if ((typeof username == "string") &&
- (typeof password == "string")){
- this._useAuth = true;
- this._username = username;
- this._password = password;
- }
- },
-
- clearAuthentication: function(){
- this._useAuth = false;
- },
-
- setEncoding: function(encoding){
- this._encoding = encoding;
- },
-
- get serverUrl() { return this._serverUrl; },
-
- // Internal copy of the status
- _status: null,
- _listener: null,
-
- asyncCall: function(listener, context, methodName, methodArgs, count) {
- debug('asyncCall');
- // Check for call in progress.
- if (this._inProgress)
- return;
- //throw Components.Exception('Call in progress!');
-
- // Check for the server URL;
- if (!this._serverUrl)
- throw Components.Exception('Not initialized');
-
- this._inProgress = true;
-
- // Clear state.
- this._foundFault = false;
- this._passwordTried = false;
- this._result = null;
- this._fault = null;
- this._status = null;
- this._responseStatus = null;
- this._responseString = null;
- this._listener = listener;
- this._seenStart = false;
- this._context = context;
-
- debug('Arguments: ' + methodArgs);
-
- // Generate request body
- var xmlWriter = new XMLWriter(this._encoding);
- this._generateRequestBody(xmlWriter, methodName, methodArgs);
-
- var requestBody = xmlWriter.data;
-
- debug('Request: ' + requestBody);
-
- this.xmlhttp = Components.classes[XMLHTTPREQUEST_CONTRACTID]
- .createInstance(Components.interfaces.nsIXMLHttpRequest);
- if (this._useAuth) {
- this.xmlhttp.open('POST', this._serverUrl, true,
- this._username, this._password);
- } else {
- this.xmlhttp.open('POST', this._serverUrl);
- }
- this.xmlhttp.onload = this._onload;
- this.xmlhttp.onerror = this._onerror;
- this.xmlhttp.parent = this;
- this.xmlhttp.setRequestHeader('Content-Type','text/xml');
- this.xmlhttp.send(requestBody);
- var chan = this.xmlhttp.channel.QueryInterface(NSICHANNEL);
- chan.notificationCallbacks = this;
- },
-
- _onload: function(e) {
- var result;
- var parent = e.target.parent;
- parent._inProgress = false;
- parent._responseStatus = e.target.status;
- parent._responseString = e.target.statusText;
- if (!e.target.responseXML) {
- if (e.target.status) {
- try {
- parent._listener.onError(parent, parent._context,
- Components.results.NS_ERROR_FAILURE,
- 'Server returned status ' + e.target.status);
- } catch (ex) {
- debug('Exception in listener.onError: ' + ex);
- }
- } else {
- try {
- parent._listener.onError(parent, parent._context,
- Components.results.NS_ERROR_FAILURE,
- 'Unknown network error');
- } catch (ex) {
- debug('Exception in listener.onError: ' + ex);
- }
- }
- return;
- }
- try {
- e.target.responseXML.normalize();
- result = parent.parse(e.target.responseXML);
- } catch (ex) {
- try {
- parent._listener.onError(parent, parent._context,
- ex.result, ex.message);
- } catch (ex) {
- debug('Exception in listener.onError: ' + ex);
- }
- return;
- }
- if (parent._foundFault) {
- parent._fault = result;
- try {
- parent._listener.onFault(parent, parent._context, result);
- } catch(ex) {
- debug('Exception in listener.onFault: ' + ex);
- }
- } else {
- parent._result = result.value;
- try {
- parent._listener.onResult(parent, parent._context,
- result.value);
- } catch (ex) {
- debug('Exception in listener.onResult: ' + ex);
- }
- }
- },
-
- _onerror: function(e) {
- var parent = e.target.parent;
- parent._inProgress = false;
- try {
- parent._listener.onError(parent, parent._context,
- Components.results.NS_ERROR_FAILURE,
- 'Unknown network error');
- } catch (ex) {
- debug('Exception in listener.onError: ' + ex);
- }
- },
-
- _foundFault: false,
-
- _fault: null,
- _result: null,
- _responseStatus: null,
- _responseString: null,
-
- get fault() { return this._fault; },
- get result() { return this._result; },
- get responseStatus() { return this._responseStatus; },
- get responseString() { return this._responseString; },
-
- /* Convenience. Create an appropriate XPCOM object for a given type */
- INT: 1,
- BOOLEAN: 2,
- STRING: 3,
- DOUBLE: 4,
- DATETIME: 5,
- ARRAY: 6,
- STRUCT: 7,
- BASE64: 8, // Not part of nsIXmlRpcClient interface, internal use.
- createType: function(type, uuid) {
- const SUPPORTSID = '@mozilla.org/supports-';
- switch(type) {
- case this.INT:
- uuid.value = Components.interfaces.nsISupportsPRInt32
- return createInstance(SUPPORTSID + 'PRInt32;1',
- 'nsISupportsPRInt32');
-
- case this.BOOLEAN:
- uuid.value = Components.interfaces.nsISupportsPRBool
- return createInstance(SUPPORTSID + 'PRBool;1',
- 'nsISupportsPRBool');
-
- case this.STRING:
- uuid.value = Components.interfaces.nsISupportsCString
- return createInstance(SUPPORTSID + 'cstring;1',
- 'nsISupportsCString');
-
- case this.DOUBLE:
- uuid.value = Components.interfaces.nsISupportsDouble
- return createInstance(SUPPORTSID + 'double;1',
- 'nsISupportsDouble');
-
- case this.DATETIME:
- uuid.value = Components.interfaces.nsISupportsPRTime
- return createInstance(SUPPORTSID + 'PRTime;1',
- 'nsISupportsPRTime');
-
- case this.ARRAY:
- uuid.value = Components.interfaces.nsISupportsArray
- return createInstance(SUPPORTSID + 'array;1',
- 'nsISupportsArray');
-
- case this.STRUCT:
- uuid.value = Components.interfaces.nsIDictionary
- return createInstance('@mozilla.org/dictionary;1',
- 'nsIDictionary');
-
- default: throw Components.Exception('Unsupported type');
- }
- },
-
- // nsISupports interface
- QueryInterface: function(iid) {
- if (!iid.equals(Components.interfaces.nsISupports) &&
- !iid.equals(XMLRPCCLIENT_IID) &&
- !iid.equals(Components.interfaces.nsIInterfaceRequestor))
- throw Components.results.NS_ERROR_NO_INTERFACE;
- return this;
- },
-
- // nsIInterfaceRequester interface
- getInterface: function(iid, result){
- if (iid.equals(Components.interfaces.nsIAuthPrompt)){
- return this;
- }
- Components.returnCode = Components.results.NS_ERROR_NO_INTERFACE;
- return null;
- },
-
- // nsIAuthPrompt interface
- _passwordTried: false,
- promptUsernameAndPassword: function(dialogTitle, text, passwordRealm,
- savePassword, user, pwd){
-
- if (this._useAuth){
- if (this._passwordTried){
- return false;
- }
- user.value = this._username;
- pwd.value = this._password;
- this._passwordTried = true;
- return true;
- }
- return false;
- },
-
- /* Generate the XML-RPC request body */
- _generateRequestBody: function(writer, methodName, methodArgs) {
- writer.startElement('methodCall');
-
- writer.startElement('methodName');
- writer.write(methodName);
- writer.endElement('methodName');
-
- writer.startElement('params');
- for (var i = 0; i < methodArgs.length; i++) {
- writer.startElement('param');
- this._generateArgumentBody(writer, methodArgs[i]);
- writer.endElement('param');
- }
- writer.endElement('params');
-
- writer.endElement('methodCall');
- },
-
- /* Write out a XML-RPC parameter value */
- _generateArgumentBody: function(writer, obj) {
- writer.startElement('value');
- var sType = this._typeOf(obj);
- switch (sType) {
- case 'PRUint8':
- case 'PRUint16':
- case 'PRInt16':
- case 'PRInt32':
- obj=obj.QueryInterface(Components.interfaces['nsISupports' +
- sType]);
- writer.startElement('i4');
- writer.write(obj.toString());
- writer.endElement('i4');
- break;
-
- case 'PRBool':
- obj=obj.QueryInterface(Components.interfaces.nsISupportsPRBool);
- writer.startElement('boolean');
- writer.write(obj.data ? '1' : '0');
- writer.endElement('boolean');
- break;
-
- case 'Char':
- case 'CString':
- obj=obj.QueryInterface(Components.interfaces['nsISupports' +
- sType]);
- writer.startElement('string');
- writer.write(obj.toString());
- writer.endElement('string');
- break;
-
- case 'Float':
- case 'Double':
- obj=obj.QueryInterface(Components.interfaces['nsISupports' +
- sType]);
- writer.startElement('double');
- writer.write(obj.toString());
- writer.endElement('double');
- break;
-
- case 'PRTime':
- obj = obj.QueryInterface(
- Components.interfaces.nsISupportsPRTime);
- var date = new Date(obj.data)
- writer.startElement('dateTime.iso8601');
- writer.write(iso8601Format(date));
- writer.endElement('dateTime.iso8601');
- break;
-
- case 'InputStream':
- obj = obj.QueryInterface(Components.interfaces.nsIInputStream);
- obj = toScriptableStream(obj);
- writer.startElement('base64');
- streamToBase64(obj, writer);
- writer.endElement('base64');
- break;
-
- case 'Array':
- obj = obj.QueryInterface(
- Components.interfaces.nsISupportsArray);
- writer.startElement('array');
- writer.startElement('data');
- for (var i = 0; i < obj.Count(); i++)
- this._generateArgumentBody(writer, obj.GetElementAt(i));
- writer.endElement('data');
- writer.endElement('array');
- break;
-
- case 'Dictionary':
- obj = obj.QueryInterface(Components.interfaces.nsIDictionary);
- writer.startElement('struct');
- var keys = obj.getKeys({});
- for (var k = 0; k < keys.length; k++) {
- writer.startElement('member');
- writer.startElement('name');
- writer.write(keys[k]);
- writer.endElement('name');
- this._generateArgumentBody(writer, obj.getValue(keys[k]));
- writer.endElement('member');
- }
- writer.endElement('struct');
- break;
-
- default:
- throw Components.Exception('Unsupported argument', null, null,
- obj);
- }
-
- writer.endElement('value');
- },
-
- /* Determine type of a nsISupports primitive, array or dictionary. */
- _typeOf: function(obj) {
- // XPConnect alows JS to pass in anything, because we are a regular
- // JS object to it. So we have to test rigorously.
- if (typeof obj != 'object') return 'Unknown';
-
- // Anything else not nsISupports is not allowed.
- if (typeof obj.QueryInterface != 'function') return 'Unknown';
-
- // Now we will have to eliminate by trying all possebilities.
- try {
- obj.QueryInterface(Components.interfaces.nsISupportsPRUint8);
- return 'PRUint8';
- } catch(e) {}
-
- try {
- obj.QueryInterface(Components.interfaces.nsISupportsPRUint16);
- return 'PRUint16';
- } catch(e) {}
-
- try {
- obj.QueryInterface(Components.interfaces.nsISupportsPRInt16);
- return 'PRInt16';
- } catch(e) {}
-
- try {
- obj.QueryInterface(Components.interfaces.nsISupportsPRInt32);
- return 'PRInt32';
- } catch(e) {}
-
- try {
- obj.QueryInterface(Components.interfaces.nsISupportsPRBool);
- return 'PRBool';
- } catch(e) {}
-
- try {
- obj.QueryInterface(Components.interfaces.nsISupportsChar);
- return 'Char';
- } catch(e) {}
-
- try {
- obj.QueryInterface(Components.interfaces.nsISupportsCString);
- return 'CString';
- } catch(e) {}
-
- try {
- obj.QueryInterface(Components.interfaces.nsISupportsFloat);
- return 'Float';
- } catch(e) {}
-
- try {
- obj.QueryInterface(Components.interfaces.nsISupportsDouble);
- return 'Double';
- } catch(e) {}
-
- try {
- obj.QueryInterface(Components.interfaces.nsISupportsPRTime);
- return 'PRTime';
- } catch(e) {}
-
- try {
- obj.QueryInterface(Components.interfaces.nsIInputStream);
- return 'InputStream';
- } catch(e) {}
-
- try {
- obj.QueryInterface(Components.interfaces.nsISupportsArray);
- return 'Array';
- } catch(e) {}
-
- try {
- obj.QueryInterface(Components.interfaces.nsIDictionary);
- return 'Dictionary';
- } catch(e) {}
-
- // Not a supported type
- return 'Unknown';
- },
-
- // Response parsing state
- _valueStack: [],
- _currValue: null,
- _cdata: null,
-
- parse: function(doc) {
- var node = doc.firstChild;
- var result;
- if (node.nodeType == DOMNode.TEXT_NODE)
- node = node.nextSibling;
- if ((node.nodeType != DOMNode.ELEMENT_NODE) ||
- (node.nodeName != 'methodResponse')) {
- throw Components.Exception('Expecting a methodResponse', null, null,
- doc);
- }
- node = node.firstChild;
- if (node.nodeType == DOMNode.TEXT_NODE)
- node = node.nextSibling;
- if (node.nodeType != DOMNode.ELEMENT_NODE)
- throw Components.Exception('Expecting a params or fault', null,
- null, doc);
- if (node.nodeName == 'params') {
- node = node.firstChild;
- if (node.nodeType == DOMNode.TEXT_NODE)
- node = node.nextSibling;
- if ((node.nodeType != DOMNode.ELEMENT_NODE) ||
- (node.nodeName != 'param')) {
- throw Components.Exception('Expecting a param', null, null,
- doc);
- }
- result = this.parseValue(node.firstChild);
- } else if (node.nodeName == 'fault') {
- this._foundFault = true;
- result = this.parseFault(node.firstChild);
- } else {
- throw Components.Exception('Expecting a params or fault', null,
- null, doc);
- }
- debug('Parse finished');
- return result;
- },
-
- parseValue: function(node) {
- var cValue = new Value();
- if (node && (node.nodeType == DOMNode.TEXT_NODE))
- node = node.nextSibling;
- if (!node || (node.nodeType != DOMNode.ELEMENT_NODE) ||
- (node.nodeName != 'value')) {
- throw Components.Exception('Expecting a value', null, null, node);
- }
- node = node.firstChild;
- if (!node)
- return cValue;
- if (node.nodeType == DOMNode.TEXT_NODE){
- if (!node.nextSibling) {
- cValue.value = node.nodeValue;
- return cValue;
- } else {
- node = node.nextSibling;
- }
- }
- if (node.nodeType != DOMNode.ELEMENT_NODE)
- throw Components.Exception('Expecting a value type', null, null,
- node);
- switch (node.nodeName) {
- case 'string':
- cValue.value = this.parseString(node.firstChild);
- break;
- case 'i4':
- case 'int':
- cValue.type = this.INT;
- cValue.value = this.parseString(node.firstChild);
- break;
- case 'boolean':
- cValue.type = this.BOOLEAN;
- cValue.value = this.parseString(node.firstChild);
- break;
- case 'double':
- cValue.type = this.DOUBLE;
- cValue.value = this.parseString(node.firstChild);
- break;
- case 'dateTime.iso8601':
- cValue.type = this.DATETIME;
- cValue.value = this.parseString(node.firstChild);
- break;
- case 'base64':
- cValue.type = this.BASE64;
- cValue.value = this.parseString(node.firstChild);
- break;
- case 'struct':
- cValue.type = this.STRUCT;
- this.parseStruct(cValue, node.firstChild);
- break;
- case 'array':
- cValue.type = this.ARRAY;
- this.parseArray(cValue, node.firstChild);
- break;
- default:
- throw Components.Exception('Expecting a value type', null, null,
- node);
- }
- return cValue;
- },
-
- parseString: function(node) {
- value = '';
- while (node) {
- if (node.nodeType != DOMNode.TEXT_NODE)
- throw Components.Exception('Expecting a text node', null, null,
- node);
- value += node.nodeValue;
- node = node.nextSibling;
- }
- return value;
- },
-
- parseStruct: function(struct, node) {
- while (node) {
- if (node.nodeType == DOMNode.TEXT_NODE)
- node = node.nextSibling;
- if (!node)
- return;
- if ((node.nodeType != DOMNode.ELEMENT_NODE) ||
- (node.nodeName != 'member')) {
- throw Components.Exception('Expecting a member', null, null,
- node);
- }
- this.parseMember(struct, node.firstChild);
- node = node.nextSibling;
- }
- },
-
- parseMember: function(struct, node) {
- var cValue;
- if (node.nodeType == DOMNode.TEXT_NODE)
- node = node.nextSibling;
- if (!node || (node.nodeType != DOMNode.ELEMENT_NODE) ||
- (node.nodeName != 'name')) {
- throw Components.Exception('Expecting a name', null, null, node);
- }
- struct.name = this.parseString(node.firstChild);
- cValue = this.parseValue(node.nextSibling);
- struct.appendValue(cValue.value);
- },
-
- parseArray: function(array, node) {
- if (node.nodeType == DOMNode.TEXT_NODE)
- node = node.nextSibling;
- if (!node || (node.nodeType != DOMNode.ELEMENT_NODE) ||
- (node.nodeName != 'data')) {
- throw Components.Exception('Expecting array data', null, null, node);
- }
- for (node = node.firstChild; node; node = node.nextSibling) {
- if (node.nodeType == DOMNode.TEXT_NODE)
- continue;
- array.appendValue(this.parseValue(node).value);
- }
- },
-
- parseFault: function(node) {
- var fault = createInstance(XMLRPCFAULT_CONTRACTID, 'nsIXmlRpcFault');
- var cValue = this.parseValue(node);
- if ((cValue.type != this.STRUCT) ||
- (!cValue.value.hasKey('faultCode')) ||
- (!cValue.value.hasKey('faultString'))) {
- throw Components.Exception('Invalid fault', null, null, node);
- }
- fault.init(cValue.value.getValue('faultCode').data,
- cValue.value.getValue('faultString').data);
- return fault;
- }
-};
-
-if (XPCOMUtils.generateNSGetFactory)
- var NSGetFactory = XPCOMUtils.generateNSGetFactory([nsXmlRpcClient]);
-else
- var NSGetModule = XPCOMUtils.generateNSGetModule([nsXmlRpcClient]);
-
-
-/* The XMLWriter class constructor */
-function XMLWriter(encoding) {
- if (!encoding)
- encoding = "UTF-8";
- this.data = '';
-}
-
-/* The XMLWriter class def */
-XMLWriter.prototype = {
- data: '',
-
- startElement: function(element) {
- this.data += '<' + element + '>';
- },
-
- endElement: function(element) {
- this.data += '' + element + '>';
- },
-
- write: function(text) {
- for (var i = 0; i < text.length; i++) {
- var c = text[i];
- switch (c) {
- case '<':
- this.data += '<';
- break;
- case '&':
- this.data += '&';
- break;
- default:
- this.data += c;
- }
- }
- },
-
- markup: function(text) { this.data += text }
-};
-
-/* The Value class contructor */
-function Value() { this.type = this.STRING; };
-
-/* The Value class def */
-Value.prototype = {
- INT: nsXmlRpcClient.prototype.INT,
- BOOLEAN: nsXmlRpcClient.prototype.BOOLEAN,
- STRING: nsXmlRpcClient.prototype.STRING,
- DOUBLE: nsXmlRpcClient.prototype.DOUBLE,
- DATETIME: nsXmlRpcClient.prototype.DATETIME,
- ARRAY: nsXmlRpcClient.prototype.ARRAY,
- STRUCT: nsXmlRpcClient.prototype.STRUCT,
- BASE64: nsXmlRpcClient.prototype.BASE64,
-
- _createType: nsXmlRpcClient.prototype.createType,
-
- name: null,
-
- _value: null,
- get value() { return this._value; },
- set value(val) {
- // accepts [0-9]+ or x[0-9a-fA-F]+ and returns the character.
- function entityTrans(substr, code) {
- return String.fromCharCode("0" + code);
- }
-
- switch (this.type) {
- case this.STRING:
- val = val.replace(/([0-9]+);/g, entityTrans);
- val = val.replace(/(x[0-9a-fA-F]+);/g, entityTrans);
- val = val.replace(/</g, '<');
- val = val.replace(/>/g, '>');
- val = val.replace(/&/g, '&');
- this._value.data = val;
- break;
-
- case this.BOOLEAN:
- this._value.data = (val == 1);
- break;
-
- case this.DATETIME:
- this._value.data = Date.UTC(val.slice(0, 4),
- val.slice(4, 6) - 1, val.slice(6, 8), val.slice(9, 11),
- val.slice(12, 14), val.slice(15));
- break;
-
- case this.BASE64:
- this._value.data = base64ToString(val);
- break;
-
- default:
- this._value.data = val;
- }
- },
-
- _type: null,
- get type() { return this._type; },
- set type(type) {
- this._type = type;
- if (type == this.BASE64)
- this._value = this._createType(this.STRING, {});
- else this._value = this._createType(type, {});
- },
-
- appendValue: function(val) {
- switch (this.type) {
- case this.ARRAY:
- this.value.AppendElement(val);
- break;
-
- case this.STRUCT:
- this.value.setValue(this.name, val);
- break;
- }
- }
-};
-
-/*
- * Objects
- */
-
-/* nsXmlRpcClient Module (for XPCOM registration) */
-var nsXmlRpcClientModule = {
- registerSelf: function(compMgr, fileSpec, location, type) {
- compMgr = compMgr.QueryInterface(Components.interfaces.nsIComponentRegistrar);
-
- compMgr.registerFactoryLocation(XMLRPCCLIENT_CID,
- 'XML-RPC Client JS component',
- XMLRPCCLIENT_CONTRACTID,
- fileSpec,
- location,
- type);
- compMgr.registerFactoryLocation(XMLRPCFAULT_CID,
- 'XML-RPC Fault JS component',
- XMLRPCFAULT_CONTRACTID,
- fileSpec,
- location,
- type);
- },
-
- getClassObject: function(compMgr, cid, iid) {
- if (!cid.equals(XMLRPCCLIENT_CID) && !cid.equals(XMLRPCFAULT_CID))
- throw Components.results.NS_ERROR_NO_INTERFACE;
-
- if (!iid.equals(Components.interfaces.nsIFactory))
- throw Components.results.NS_ERROR_NOT_IMPLEMENTED;
-
- if (cid.equals(XMLRPCCLIENT_CID))
- return nsXmlRpcClientFactory
- else return nsXmlRpcFaultFactory;
- },
-
- canUnload: function(compMgr) { return true; }
-};
-
-/* nsXmlRpcClient Class Factory */
-var nsXmlRpcClientFactory = {
- createInstance: function(outer, iid) {
- if (outer != null)
- throw Components.results.NS_ERROR_NO_AGGREGATION;
-
- if (!iid.equals(XMLRPCCLIENT_IID) &&
- !iid.equals(Components.interfaces.nsISupports))
- throw Components.results.NS_ERROR_INVALID_ARG;
-
- return new nsXmlRpcClient();
- }
-}
-
-/* nsXmlRpcFault Class Factory */
-var nsXmlRpcFaultFactory = {
- createInstance: function(outer, iid) {
- if (outer != null)
- throw Components.results.NS_ERROR_NO_AGGREGATION;
-
- if (!iid.equals(XMLRPCFAULT_IID) &&
- !iid.equals(Components.interfaces.nsISupports))
- throw Components.results.NS_ERROR_INVALID_ARG;
-
- return new nsXmlRpcFault();
- }
-}
-
-/*
- * Functions
- */
-/* module initialisation */
-function NSGetModule(comMgr, fileSpec) { return nsXmlRpcClientModule; }
-
-/* Create an instance of the given ContractID, with given interface */
-function createInstance(contractId, intf) {
- return Components.classes[contractId]
- .createInstance(Components.interfaces[intf]);
-}
-
-/* Get a pointer to a service indicated by the ContractID, with given interface */
-function getService(contractId, intf) {
- return Components.classes[contractId]
- .getService(Components.interfaces[intf]);
-}
-
-/* Convert an inputstream to a scriptable inputstream */
-function toScriptableStream(input) {
- var SIStream = Components.Constructor(
- '@mozilla.org/scriptableinputstream;1',
- 'nsIScriptableInputStream', 'init');
- return new SIStream(input);
-}
-
-/* format a Date object into a iso8601 datetime string, UTC time */
-function iso8601Format(date) {
- var datetime = date.getUTCFullYear();
- var month = String(date.getUTCMonth() + 1);
- datetime += (month.length == 1 ? '0' + month : month);
- var day = date.getUTCDate();
- datetime += (day < 10 ? '0' + day : day);
-
- datetime += 'T';
-
- var hour = date.getUTCHours();
- datetime += (hour < 10 ? '0' + hour : hour) + ':';
- var minutes = date.getUTCMinutes();
- datetime += (minutes < 10 ? '0' + minutes : minutes) + ':';
- var seconds = date.getUTCSeconds();
- datetime += (seconds < 10 ? '0' + seconds : seconds);
-
- return datetime;
-}
-
-/* Convert a stream to Base64, writing it away to a string writer */
-const BASE64CHUNK = 255; // Has to be dividable by 3!!
-function streamToBase64(stream, writer) {
- while (stream.available()) {
- var data = [];
- while (data.length < BASE64CHUNK && stream.available()) {
- var d = stream.read(1).charCodeAt(0);
- // reading a 0 results in NaN, compensate.
- data = data.concat(isNaN(d) ? 0 : d);
- }
- writer.write(toBase64(data));
- }
-}
-
-/* Convert data (an array of integers) to a Base64 string. */
-const toBase64Table = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz' +
- '0123456789+/';
-const base64Pad = '=';
-function toBase64(data) {
- var result = '';
- var length = data.length;
- var i;
- // Convert every three bytes to 4 ascii characters.
- for (i = 0; i < (length - 2); i += 3) {
- result += toBase64Table[data[i] >> 2];
- result += toBase64Table[((data[i] & 0x03) << 4) + (data[i+1] >> 4)];
- result += toBase64Table[((data[i+1] & 0x0f) << 2) + (data[i+2] >> 6)];
- result += toBase64Table[data[i+2] & 0x3f];
- }
-
- // Convert the remaining 1 or 2 bytes, pad out to 4 characters.
- if (length%3) {
- i = length - (length%3);
- result += toBase64Table[data[i] >> 2];
- if ((length%3) == 2) {
- result += toBase64Table[((data[i] & 0x03) << 4) + (data[i+1] >> 4)];
- result += toBase64Table[(data[i+1] & 0x0f) << 2];
- result += base64Pad;
- } else {
- result += toBase64Table[(data[i] & 0x03) << 4];
- result += base64Pad + base64Pad;
- }
- }
-
- return result;
-}
-
-/* Convert Base64 data to a string */
-const toBinaryTable = [
- -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1,
- -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1,
- -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,62, -1,-1,-1,63,
- 52,53,54,55, 56,57,58,59, 60,61,-1,-1, -1, 0,-1,-1,
- -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,10, 11,12,13,14,
- 15,16,17,18, 19,20,21,22, 23,24,25,-1, -1,-1,-1,-1,
- -1,26,27,28, 29,30,31,32, 33,34,35,36, 37,38,39,40,
- 41,42,43,44, 45,46,47,48, 49,50,51,-1, -1,-1,-1,-1
-];
-function base64ToString(data) {
- var result = '';
- var leftbits = 0; // number of bits decoded, but yet to be appended
- var leftdata = 0; // bits decoded, but yet to be appended
-
- // Convert one by one.
- for (var i = 0; i < data.length; i++) {
- var c = toBinaryTable[data.charCodeAt(i) & 0x7f];
- var padding = (data[i] == base64Pad);
- // Skip illegal characters and whitespace
- if (c == -1) continue;
-
- // Collect data into leftdata, update bitcount
- leftdata = (leftdata << 6) | c;
- leftbits += 6;
-
- // If we have 8 or more bits, append 8 bits to the result
- if (leftbits >= 8) {
- leftbits -= 8;
- // Append if not padding.
- if (!padding)
- result += String.fromCharCode((leftdata >> leftbits) & 0xff);
- leftdata &= (1 << leftbits) - 1;
- }
- }
-
- // If there are any bits left, the base64 string was corrupted
- if (leftbits)
- throw Components.Exception('Corrupted base64 string');
-
- return result;
-}
-
-if (DEBUG) debug = function(msg) {
- dump(' -- XML-RPC client -- : ' + msg + '\n');
-};
-else debug = function() {}
-
-// vim:sw=4:sr:sta:et:sts:
diff --git a/addons/plugin_thunderbird/static/thunderbird_plugin/components/xml-rpc.xpt b/addons/plugin_thunderbird/static/thunderbird_plugin/components/xml-rpc.xpt
deleted file mode 100644
index 8e59aa20c85..00000000000
Binary files a/addons/plugin_thunderbird/static/thunderbird_plugin/components/xml-rpc.xpt and /dev/null differ
diff --git a/addons/plugin_thunderbird/static/thunderbird_plugin/defaults/preferences/tiny.js b/addons/plugin_thunderbird/static/thunderbird_plugin/defaults/preferences/tiny.js
deleted file mode 100644
index 9a21e9a6f6c..00000000000
--- a/addons/plugin_thunderbird/static/thunderbird_plugin/defaults/preferences/tiny.js
+++ /dev/null
@@ -1,63 +0,0 @@
- pref("network.protocol-handler.app.http","/usr/bin/firefox");
-pref("network.protocol-handler.app.https","/usr/bin/firefox");
-pref("extensions.tiny.serverurl", "http://localhost");
-pref("extensions.tiny.serverport", "8069");
-pref("extensions.tiny.webserverurl", "http://localhost:8080");
-pref("extensions.tiny.webserverport", "8080");
-pref("extensions.tiny.serverdbname", "terp");
-pref("extensions.tiny.username","admin");
-pref("extensions.tiny.password","admin");
-pref("extensions.tiny.senderemail","");
-pref("extensions.tiny.sendername","");
-pref("extensions.tiny.statutdoc","");// add to have a statut to hidde or not the button
-pref("extensions.tiny.message_label","");// add to message in push dialog
-pref("extensions.tiny.receiveremail","");
-pref("extensions.tiny.subject","");
-pref("extensions.tiny.receiveddate","");
-pref("extensions.tiny.partnerid","");
-pref("extensions.tiny.contactid","");
-pref("extensions.tiny.attachvalue","");
-pref("extensions.tiny.cclist","");
-pref("extensions.tiny.messagebody","");
-pref("extensions.tiny.displayName","");
-pref("extensions.tiny.attachmentdata","");
-pref("extensions.tiny.userid",3);
-pref("extensions.tiny.partnername","");
-pref("extensions.tiny.officeno","");
-pref("extensions.tiny.phoneno","");
-pref("extensions.tiny.address","");
-pref("extensions.tiny.listobject","Partner,Account Invoice,Product,Sale Order,Lead and opportunities");
-pref("extensions.tiny.object","res.partner,account.invoice,product.product,sale.order,crm.lead");
-pref("extensions.tiny.imagename","chrome://openerp_plugin/skin/Partner.png,chrome://openerp_plugin/skin/Invoice.png,chrome://openerp_plugin/skin/Product.png,chrome://openerp_plugin/skin/Sale.png,chrome://openerp_plugin/skin/Case.png");
-pref("extensions.tiny.attachmentlength","");
-pref("extensions.tiny.attachment","");
-pref("extensions.tiny.db_list","false");
-pref("extensions.tiny.connect_server","false");
-pref("extensions.tiny.module_install","yes");
-pref("extensions.tiny.serverprotocol", "false");
-
-
-
-pref("mboximport.export.filenames_toascii", false);
-pref("mboximport.export.overwrite", false);
-pref("mboximport.confirm.before_mbox_import", true);
-pref("mboximport.clipboard.always_just_text", false);
-pref("mboximport.export.HTML_as_displayed", false);
-pref("mboximport.exportEML.filename_format", 0);
-pref("mboximport.delay.clean_statusbar", 5000);
-pref("mboximport.subject.max_length", 50);
-pref("mboximport.author.max_length", 50);
-pref("mboximport.recipients.max_length", 50);
-pref("extensions.{3ed8cc52-86fc-4613-9026-c1ef969da4c3}.description", "chrome://mboximport/locale/mboximport.properties");
-pref("mboximport.export.set_filetime", false);
-pref("mboximport.exportEML.use_dir", false);
-pref("mboximport.exportMBOX.use_dir", false);
-pref("mboximport.exportMSG.use_dir", false);
-pref("mboximport.export.filenames_addtime", false);
-pref("mboximport.export_all.warning1", true);
-pref("mboximport.export_all.warning2", true);
-
-pref("mboximport.exportMSG.dir", "/tmp");
-//For debug in console
-pref("browser.dom.window.dump.enabled", true);
-
diff --git a/addons/plugin_thunderbird/static/thunderbird_plugin/install.js b/addons/plugin_thunderbird/static/thunderbird_plugin/install.js
deleted file mode 100644
index 50e4b301e32..00000000000
--- a/addons/plugin_thunderbird/static/thunderbird_plugin/install.js
+++ /dev/null
@@ -1,105 +0,0 @@
-// constants
-const APP_DISPLAY_NAME = "OpenERP Thunderbird Plugins";
-const APP_NAME = "OpenERP";
-const APP_VERSION = "1.0";
-const WARNING = "WARNING: You need administrator privileges to install OpenERP Thunderbird Plugin. It will be installed in the application directory for all users.";
-const VERSION_ERROR = "This extension can only be installed in a version higher than 2.0";
-const NOT_WRITABLE_ERROR = "This extension requires write access to the application directory to install properly."
-const locales = [
- "en-US",
- null
-];
-
-// Gecko 1.7 doesn't support custom button labels
-var incompatible = (typeof Install.BUTTON_POS_0 == "undefined");
-if (incompatible)
- alert(VERSION_ERROR);
-
-if (!incompatible) {
- // Check whether all directories can be accessed
- var dirList = [
- getFolder("Components"),
- getFolder(getFolder("Program", "defaults"), "pref")
- ];
- for (var i = 0; i < dirList.length; i++)
- if (!File.isWritable(dirList[i]))
- incompatible = true;
-
- if (incompatible)
- alert(NOT_WRITABLE_ERROR);
-}
-
-if (!incompatible && confirm(WARNING, APP_DISPLAY_NAME)) {
- /* Pre-Install Cleanup (for prior versions) */
-
- // List of files to be checked
- var checkFiles = [
- [getFolder("Components"), "nsXmlRpcClient.js"], // Root component
- [getFolder("Components"), "xml-rpc.xpt"], // Component interface
- ];
-
- // Remove any existing files
- initInstall("pre-install", "/rename", "0.0"); // open dummy-install
- for (var i = 0 ; i < checkFiles.length ; i++) {
- var currentDir = checkFiles[i][0];
- var name = checkFiles[i][1];
- var oldFile = getFolder(currentDir, name);
-
- // Find a name to rename the file into
- var newName = name + "-uninstalled";
- for (var n = 1; File.exists(oldFile) && File.exists(getFolder(currentDir, newName)); n++)
- newName = name + n + "-uninstalled";
-
- if (File.exists(oldFile))
- File.rename(oldFile, newName);
- }
- performInstall(); // commit renamed files
-
- /* Main part of the installation */
-
- var chromeType = DELAYED_CHROME;
-
- var files = [
- ["components/nsXmlRpcClient.js", getFolder("Components")],
- ["components/xml-rpc.xpt", getFolder("Components")],
- ["defaults/preferences/tiny.js", getFolder(getFolder("Program", "defaults"), "pref")],
- ];
-
- // initialize our install
- initInstall(APP_NAME, APP_PACKAGE, APP_VERSION);
-
- // Add files
- for (var i = 0; i < files.length; i++)
- addFile(APP_NAME, APP_VERSION, files[i][0], files[i][1], null);
-
- try {
- var err = registerChrome(CONTENT | chromeType, jar, "content/");
- if (err != SUCCESS)
- throw "Chrome registration for content failed (error code " + err + ").";
-
- err = registerChrome(SKIN | chromeType, jar, "skin/classic/");
- if (err != SUCCESS)
- throw "Chrome registration for skin failed (error code " + err + ").";
-
- for (i = 0; i < locales.length; i++) {
- if (!locales[i])
- continue;
-
- err = registerChrome(LOCALE | chromeType, jar, "locale/" + locales[i] + "/");
- if (err != SUCCESS)
- throw "Chrome registration for " + locales[i] + " locale failed (error code " + err + ").";
- }
-
- var err = performInstall();
- if (err != SUCCESS && err != 999)
- throw "Committing installation failed (error code " + err + ").";
-
- alert("OpenERP Thunderbird Plugin " + APP_VERSION + " is now installed.\n" +
- "It will become active after you restart your browser.");
- }
- catch (ex) {
- alert("Installation failed: " + ex + "\n" +
- "You probably don't have the necessary permissions (log in as system administrator).");
- cancelInstall(err);
- }
-}
diff --git a/addons/plugin_thunderbird/static/thunderbird_plugin/install.rdf b/addons/plugin_thunderbird/static/thunderbird_plugin/install.rdf
deleted file mode 100644
index e922f790b1c..00000000000
--- a/addons/plugin_thunderbird/static/thunderbird_plugin/install.rdf
+++ /dev/null
@@ -1,22 +0,0 @@
-
-
-
- thunderbird@openerp.com
- chrome://openerp_plugin/skin/tinyerp-icon.ico
- OpenERP Plugin
- 1.0
- OpenERP Thunderbird Integration
- OpenERP SA
-
- http://openerp.com
-
-
-
- {3550f703-e582-4d05-9a08-453d09bdfdc6}
- 2.0
- 9.*
-
-
-
-
diff --git a/addons/plugin_thunderbird/static/thunderbird_plugin/install.sh b/addons/plugin_thunderbird/static/thunderbird_plugin/install.sh
deleted file mode 100755
index 5ca7a5a934a..00000000000
--- a/addons/plugin_thunderbird/static/thunderbird_plugin/install.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-make clean
-make
-cp ../openerp_plugin.xpi /home/openerp/
diff --git a/addons/plugin_thunderbird/static/thunderbird_plugin/makefile b/addons/plugin_thunderbird/static/thunderbird_plugin/makefile
deleted file mode 100644
index 17ed0319bcc..00000000000
--- a/addons/plugin_thunderbird/static/thunderbird_plugin/makefile
+++ /dev/null
@@ -1,11 +0,0 @@
-all: xpi
-
-jar:
- jar cvf chrome/openerp_plugin.jar -C chrome/openerp_plugin/ .
-
-xpi: jar
- zip -r ../openerp_plugin.xpi *
-
-clean:
- rm ../openerp_plugin.xpi
- rm chrome/openerp_plugin.jar
diff --git a/addons/point_of_sale/controllers/main.py b/addons/point_of_sale/controllers/main.py
index 694f59f386c..9f1887eb361 100644
--- a/addons/point_of_sale/controllers/main.py
+++ b/addons/point_of_sale/controllers/main.py
@@ -46,6 +46,14 @@ html_template = """
+
+
diff --git a/addons/portal/wizard/portal_wizard.py b/addons/portal/wizard/portal_wizard.py
index 3422a41baff..8d446571480 100644
--- a/addons/portal/wizard/portal_wizard.py
+++ b/addons/portal/wizard/portal_wizard.py
@@ -118,7 +118,7 @@ class wizard_user(osv.osv_memory):
_columns = {
'wizard_id': fields.many2one('portal.wizard', string='Wizard', required=True, ondelete='cascade'),
'partner_id': fields.many2one('res.partner', string='Contact', required=True, readonly=True),
- 'email': fields.char(size=240, string='Email'),
+ 'email': fields.char(string='Email', size=240),
'in_portal': fields.boolean('In Portal'),
}
diff --git a/addons/portal_project_issue/security/ir.model.access.csv b/addons/portal_project_issue/security/ir.model.access.csv
index 360e0ccd997..65eff9bed1b 100644
--- a/addons/portal_project_issue/security/ir.model.access.csv
+++ b/addons/portal_project_issue/security/ir.model.access.csv
@@ -1,4 +1,4 @@
id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
access_issues,project_issue,project_issue.model_project_issue,base.group_portal,1,0,0,0
-access_case_section,crm_case_section,crm.model_crm_case_section,base.group_portal,1,0,0,0
+access_case_section,crm_case_section,sales_team.model_crm_case_section,base.group_portal,1,0,0,0
access_issues_public,project_issue,project_issue.model_project_issue,base.group_public,1,0,0,0
\ No newline at end of file
diff --git a/addons/procurement/procurement.py b/addons/procurement/procurement.py
index e45651a30a2..1fc25171e7f 100644
--- a/addons/procurement/procurement.py
+++ b/addons/procurement/procurement.py
@@ -109,7 +109,7 @@ class procurement_order(osv.osv):
_columns = {
'name': fields.text('Description', required=True),
- 'origin': fields.char('Source Document', size=64,
+ 'origin': fields.char('Source Document',
help="Reference of the document that created this Procurement.\n"
"This is automatically completed by OpenERP."),
'company_id': fields.many2one('res.company', 'Company', required=True),
diff --git a/addons/product/pricelist.py b/addons/product/pricelist.py
index 53b099331de..85271dfb307 100644
--- a/addons/product/pricelist.py
+++ b/addons/product/pricelist.py
@@ -53,7 +53,7 @@ class price_type(osv.osv):
_name = "product.price.type"
_description = "Price Type"
_columns = {
- "name" : fields.char("Price Name", size=32, required=True, translate=True, help="Name of this kind of price."),
+ "name" : fields.char("Price Name", required=True, translate=True, help="Name of this kind of price."),
"active" : fields.boolean("Active"),
"field" : fields.selection(_price_field_get, "Product Field", size=32, required=True, help="Associated field in the product form."),
"currency_id" : fields.many2one('res.currency', "Currency", required=True, help="The currency the field is expressed in."),
@@ -72,8 +72,8 @@ class product_pricelist_type(osv.osv):
_name = "product.pricelist.type"
_description = "Pricelist Type"
_columns = {
- 'name': fields.char('Name',size=64, required=True, translate=True),
- 'key': fields.char('Key', size=64, required=True, help="Used in the code to select specific prices based on the context. Keep unchanged."),
+ 'name': fields.char('Name', required=True, translate=True),
+ 'key': fields.char('Key', required=True, help="Used in the code to select specific prices based on the context. Keep unchanged."),
}
@@ -94,7 +94,7 @@ class product_pricelist(osv.osv):
_description = "Pricelist"
_order = 'name'
_columns = {
- 'name': fields.char('Pricelist Name',size=64, required=True, translate=True),
+ 'name': fields.char('Pricelist Name', required=True, translate=True),
'active': fields.boolean('Active', help="If unchecked, it will allow you to hide the pricelist without removing it."),
'type': fields.selection(_pricelist_type_get, 'Pricelist Type', required=True),
'version_id': fields.one2many('product.pricelist.version', 'pricelist_id', 'Pricelist Versions'),
@@ -332,7 +332,7 @@ class product_pricelist_version(osv.osv):
_columns = {
'pricelist_id': fields.many2one('product.pricelist', 'Price List',
required=True, select=True, ondelete='cascade'),
- 'name': fields.char('Name', size=64, required=True, translate=True),
+ 'name': fields.char('Name', required=True, translate=True),
'active': fields.boolean('Active',
help="When a version is duplicated it is set to non active, so that the " \
"dates do not overlaps with original version. You should change the dates " \
@@ -435,7 +435,7 @@ class product_pricelist_item(osv.osv):
return True
_columns = {
- 'name': fields.char('Rule Name', size=64, help="Explicit rule name for this pricelist line."),
+ 'name': fields.char('Rule Name', help="Explicit rule name for this pricelist line."),
'price_version_id': fields.many2one('product.pricelist.version', 'Price List Version', required=True, select=True, ondelete='cascade'),
'product_tmpl_id': fields.many2one('product.template', 'Product Template', ondelete='cascade', help="Specify a template if this rule only applies to one product template. Keep empty otherwise."),
'product_id': fields.many2one('product.product', 'Product', ondelete='cascade', help="Specify a product if this rule only applies to one product. Keep empty otherwise."),
diff --git a/addons/product/product.py b/addons/product/product.py
index 6fa0627db2c..d90165ae022 100644
--- a/addons/product/product.py
+++ b/addons/product/product.py
@@ -816,10 +816,8 @@ class product_product(osv.osv):
uom.id, product.list_price, context['uom'])
else:
res[product.id] = product.list_price
- price_extra = 0.0
- for variant_id in product.attribute_value_ids:
- price_extra += variant_id.price_extra
- res[product.id] = (res[product.id] or 0.0) + price_extra
+ res[product.id] = res[product.id] + product.price_extra
+
return res
def _get_partner_code_name(self, cr, uid, ids, product, partner_id, context=None):
diff --git a/addons/product/product_demo.xml b/addons/product/product_demo.xml
index 112cb581a4b..763c7620b13 100644
--- a/addons/product/product_demo.xml
+++ b/addons/product/product_demo.xml
@@ -135,11 +135,11 @@ HDD SH-1
Memory
- 16 Go
+ 16 GB
- 32 Go
+ 32 GB
diff --git a/addons/product/product_view.xml b/addons/product/product_view.xml
index 6f29d3a188d..963bdd0eea0 100644
--- a/addons/product/product_view.xml
+++ b/addons/product/product_view.xml
@@ -283,15 +283,30 @@
Product Kanban
product.product
- primary
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
@@ -343,7 +358,7 @@
-
+
@@ -361,7 +376,7 @@
diff --git a/addons/project/project.py b/addons/project/project.py
index a9c487be244..f95f3e4517c 100644
--- a/addons/project/project.py
+++ b/addons/project/project.py
@@ -35,7 +35,7 @@ class project_task_type(osv.osv):
_description = 'Task Stage'
_order = 'sequence'
_columns = {
- 'name': fields.char('Stage Name', required=True, size=64, translate=True),
+ 'name': fields.char('Stage Name', required=True, translate=True),
'description': fields.text('Description'),
'sequence': fields.integer('Sequence'),
'case_default': fields.boolean('Default for New Projects',
@@ -1099,8 +1099,10 @@ class task(osv.osv):
def message_get_reply_to(self, cr, uid, ids, context=None):
""" Override to get the reply_to of the parent project. """
- return [task.project_id.message_get_reply_to()[0] if task.project_id else False
- for task in self.browse(cr, uid, ids, context=context)]
+ tasks = self.browse(cr, SUPERUSER_ID, ids, context=context)
+ project_ids = set([task.project_id.id for task in tasks if task.project_id])
+ aliases = self.pool['project.project'].message_get_reply_to(cr, uid, list(project_ids), context=context)
+ return dict((task.id, aliases.get(task.project_id and task.project_id.id or 0, False)) for task in tasks)
def message_new(self, cr, uid, msg, custom_values=None, context=None):
""" Override to updates the document according to the email. """
@@ -1137,7 +1139,7 @@ class project_work(osv.osv):
_name = "project.task.work"
_description = "Project Task Work"
_columns = {
- 'name': fields.char('Work summary', size=128),
+ 'name': fields.char('Work summary'),
'date': fields.datetime('Date', select="1"),
'task_id': fields.many2one('project.task', 'Task', ondelete='cascade', required=True, select="1"),
'hours': fields.float('Time Spent'),
@@ -1353,6 +1355,6 @@ class project_category(osv.osv):
_name = "project.category"
_description = "Category of project's task, issue, ..."
_columns = {
- 'name': fields.char('Name', size=64, required=True, translate=True),
+ 'name': fields.char('Name', required=True, translate=True),
}
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/project/report/project_report.py b/addons/project/report/project_report.py
index e3f2cd6668b..97e52766e5a 100644
--- a/addons/project/report/project_report.py
+++ b/addons/project/report/project_report.py
@@ -28,7 +28,7 @@ class report_project_task_user(osv.osv):
_description = "Tasks by user and project"
_auto = False
_columns = {
- 'name': fields.char('Task Summary', size=128, readonly=True),
+ 'name': fields.char('Task Summary', readonly=True),
'user_id': fields.many2one('res.users', 'Assigned To', readonly=True),
'date_start': fields.date('Assignation Date', readonly=True),
'no_of_days': fields.integer('# of Days', size=128, readonly=True),
@@ -49,7 +49,7 @@ class report_project_task_user(osv.osv):
'delay_endings_days': fields.float('Overpassed Deadline', digits=(16,2), readonly=True),
'nbr': fields.integer('# of tasks', readonly=True),
'priority': fields.selection([('0','Low'), ('1','Normal'), ('2','High')],
- string='Priority', readonly=True),
+ string='Priority', size=1, readonly=True),
'state': fields.selection([('draft', 'Draft'), ('open', 'In Progress'), ('pending', 'Pending'), ('cancelled', 'Cancelled'), ('done', 'Done')],'Status', readonly=True),
'company_id': fields.many2one('res.company', 'Company', readonly=True),
'partner_id': fields.many2one('res.partner', 'Contact', readonly=True),
diff --git a/addons/project/wizard/project_task_delegate.py b/addons/project/wizard/project_task_delegate.py
index 6a26868557e..a0e137eda0d 100644
--- a/addons/project/wizard/project_task_delegate.py
+++ b/addons/project/wizard/project_task_delegate.py
@@ -30,8 +30,8 @@ class project_task_delegate(osv.osv_memory):
_description = 'Task Delegate'
_columns = {
- 'name': fields.char('Delegated Title', size=64, required=True, help="New title of the task delegated to the user"),
- 'prefix': fields.char('Your Task Title', size=64, help="Title for your validation task"),
+ 'name': fields.char('Delegated Title', required=True, help="New title of the task delegated to the user"),
+ 'prefix': fields.char('Your Task Title', help="Title for your validation task"),
'project_id': fields.many2one('project.project', 'Project', help="User you want to delegate this task to"),
'user_id': fields.many2one('res.users', 'Assign To', required=True, help="User you want to delegate this task to"),
'new_task_description': fields.text('New Task Description', help="Reinclude the description of the task in the task of the user"),
diff --git a/addons/project_issue/__openerp__.py b/addons/project_issue/__openerp__.py
index 97b6f736f54..4f7045f6aca 100644
--- a/addons/project_issue/__openerp__.py
+++ b/addons/project_issue/__openerp__.py
@@ -37,7 +37,7 @@ It allows the manager to quickly check the issues, assign them and decide on the
'website': 'http://www.openerp.com',
'images': ['images/issue_analysis.jpeg','images/project_issue.jpeg'],
'depends': [
- 'crm',
+ 'sales_team',
'project',
],
'data': [
diff --git a/addons/project_issue/project_issue.py b/addons/project_issue/project_issue.py
index 6c06f14d5fa..8b7c70e41e1 100644
--- a/addons/project_issue/project_issue.py
+++ b/addons/project_issue/project_issue.py
@@ -23,7 +23,6 @@ from datetime import datetime
from openerp import SUPERUSER_ID
from openerp import tools
-from openerp.addons.crm import crm
from openerp.osv import fields, osv, orm
from openerp.tools import html2plaintext
from openerp.tools.translate import _
@@ -32,7 +31,7 @@ class project_issue_version(osv.Model):
_name = "project.issue.version"
_order = "name desc"
_columns = {
- 'name': fields.char('Version Number', size=32, required=True),
+ 'name': fields.char('Version Number', required=True),
'active': fields.boolean('Active', required=False),
}
_defaults = {
@@ -232,7 +231,7 @@ class project_issue(osv.Model):
return issues
_columns = {
'id': fields.integer('ID', readonly=True),
- 'name': fields.char('Issue', size=128, required=True),
+ 'name': fields.char('Issue', required=True),
'active': fields.boolean('Active', required=False),
'create_date': fields.datetime('Creation Date', readonly=True,select=True),
'write_date': fields.datetime('Update Date', readonly=True),
@@ -259,7 +258,7 @@ class project_issue(osv.Model):
'date_closed': fields.datetime('Closed', readonly=True,select=True),
'date': fields.datetime('Date'),
'date_last_stage_update': fields.datetime('Last Stage Update', select=True),
- 'channel_id': fields.many2one('crm.case.channel', 'Channel', help="Communication channel."),
+ 'channel': fields.char('Channel', help="Communication channel."),
'categ_ids': fields.many2many('project.category', string='Tags'),
'priority': fields.selection([('0','Low'), ('1','Normal'), ('2','High')], 'Priority', select=True),
'version_id': fields.many2one('project.issue.version', 'Version'),
@@ -414,8 +413,10 @@ class project_issue(osv.Model):
def message_get_reply_to(self, cr, uid, ids, context=None):
""" Override to get the reply_to of the parent project. """
- return [issue.project_id.message_get_reply_to()[0] if issue.project_id else False
- for issue in self.browse(cr, uid, ids, context=context)]
+ issues = self.browse(cr, SUPERUSER_ID, ids, context=context)
+ project_ids = set([issue.project_id.id for issue in issues if issue.project_id])
+ aliases = self.pool['project.project'].message_get_reply_to(cr, uid, list(project_ids), context=context)
+ return dict((issue.id, aliases.get(issue.project_id and issue.project_id.id or 0, False)) for issue in issues)
def message_get_suggested_recipients(self, cr, uid, ids, context=None):
recipients = super(project_issue, self).message_get_suggested_recipients(cr, uid, ids, context=context)
diff --git a/addons/project_issue/report/project_issue_report.py b/addons/project_issue/report/project_issue_report.py
index b8778918f87..5ac7b6e48c6 100644
--- a/addons/project_issue/report/project_issue_report.py
+++ b/addons/project_issue/report/project_issue_report.py
@@ -52,7 +52,7 @@ class project_issue_report(osv.osv):
'version_id': fields.many2one('project.issue.version', 'Version'),
'user_id' : fields.many2one('res.users', 'Assigned to',readonly=True),
'partner_id': fields.many2one('res.partner','Contact'),
- 'channel_id': fields.many2one('crm.case.channel', 'Channel',readonly=True),
+ 'channel': fields.char('Channel', readonly=True, help="Communication Channel."),
'task_id': fields.many2one('project.task', 'Task'),
'email': fields.integer('# Emails', size=128, readonly=True),
}
@@ -81,7 +81,7 @@ class project_issue_report(osv.osv):
c.version_id as version_id,
1 as nbr,
c.partner_id,
- c.channel_id,
+ c.channel,
c.task_id,
date_trunc('day',c.create_date) as create_date,
c.day_open as delay_open,
diff --git a/addons/project_issue/security/ir.model.access.csv b/addons/project_issue/security/ir.model.access.csv
index ef4edfdc13a..400e118a6d0 100644
--- a/addons/project_issue/security/ir.model.access.csv
+++ b/addons/project_issue/security/ir.model.access.csv
@@ -5,6 +5,6 @@ access_project_issue_version_project,project_issue_version manager,model_project
access_project_issue_version_project_user,project_issue_version user,model_project_issue_version,project.group_project_user,1,0,0,0
access_resource_calendar_project_manager,resource.calendar.project.manager,resource.model_resource_calendar,project.group_project_manager,1,1,1,1
access_project_issue_report_user,project.issue.report user,model_project_issue_report,project.group_project_user,1,0,0,0
-access_crm_case_section,crm.case.section,crm.model_crm_case_section,project.group_project_user,1,0,0,0
+access_crm_case_section,crm.case.section,sales_team.model_crm_case_section,project.group_project_user,1,0,0,0
access_project_issue_salesman,project.issue,model_project_issue,base.group_sale_salesman,1,0,0,0
access_project_issue_manager,project.issue,model_project_issue,base.group_sale_manager,1,0,0,0
diff --git a/addons/project_timesheet/report/task_report.py b/addons/project_timesheet/report/task_report.py
index 3411a73a239..5f821ca400d 100644
--- a/addons/project_timesheet/report/task_report.py
+++ b/addons/project_timesheet/report/task_report.py
@@ -43,10 +43,10 @@ class report_timesheet_task_user(osv.osv):
return result
_columns = {
- 'name': fields.char('Date',size=64),
- 'year': fields.char('Year',size=64,required=False, readonly=True),
+ 'name': fields.char('Date'),
+ 'year': fields.char('Year', size=4, required=False, readonly=True),
'month':fields.selection([('01','January'), ('02','February'), ('03','March'), ('04','April'), ('05','May'), ('06','June'),
- ('07','July'), ('08','August'), ('09','September'), ('10','October'), ('11','November'), ('12','December')],'Month',readonly=True),
+ ('07','July'), ('08','August'), ('09','September'), ('10','October'), ('11','November'), ('12','December')],'Month', readonly=True),
'user_id': fields.many2one('res.users', 'User',readonly=True),
'timesheet_hrs': fields.function(get_hrs_timesheet, string="Timesheet Hours"),
'task_hrs' : fields.float('Task Hours'),
diff --git a/addons/purchase/purchase.py b/addons/purchase/purchase.py
index 09cc4c301a4..ca618f76948 100644
--- a/addons/purchase/purchase.py
+++ b/addons/purchase/purchase.py
@@ -194,11 +194,11 @@ class purchase_order(osv.osv):
},
}
_columns = {
- 'name': fields.char('Order Reference', size=64, required=True, select=True, help="Unique number of the purchase order, computed automatically when the purchase order is created."),
- 'origin': fields.char('Source Document', size=64,
+ 'name': fields.char('Order Reference', required=True, select=True, help="Unique number of the purchase order, computed automatically when the purchase order is created."),
+ 'origin': fields.char('Source Document',
help="Reference of the document that generated this purchase order request; a sales order or an internal procurement request."
),
- 'partner_ref': fields.char('Supplier Reference', states={'confirmed':[('readonly',True)], 'approved':[('readonly',True)],'done':[('readonly',True)]}, size=64,
+ 'partner_ref': fields.char('Supplier Reference', states={'confirmed':[('readonly',True)], 'approved':[('readonly',True)],'done':[('readonly',True)]},
help="Reference of the sales order or bid sent by your supplier. It's mainly used to do the matching when you receive the products as this reference is usually written on the delivery order sent by your supplier."),
'date_order':fields.date('Order Date', required=True, states={'confirmed':[('readonly',True)], 'approved':[('readonly',True)]}, select=True, help="Date on which this document has been created."),
'date_approve':fields.date('Date Approved', readonly=1, select=True, help="Date on which purchase order has been approved"),
diff --git a/addons/purchase/stock_view.xml b/addons/purchase/stock_view.xml
index 2a514535714..acdecd2d400 100644
--- a/addons/purchase/stock_view.xml
+++ b/addons/purchase/stock_view.xml
@@ -35,13 +35,13 @@
name="view_picking"
class="oe_stat_button"
icon="fa-truck"
- states="approved">
+ attrs="{'invisible': [('shipment_count', '=', 0)]}">
+ attrs="{'invisible': [('invoice_count', '=', 0)]}">
diff --git a/addons/purchase_analytic_plans/purchase_analytic_plans_view.xml b/addons/purchase_analytic_plans/purchase_analytic_plans_view.xml
index d1db411f68c..28ca76e8430 100644
--- a/addons/purchase_analytic_plans/purchase_analytic_plans_view.xml
+++ b/addons/purchase_analytic_plans/purchase_analytic_plans_view.xml
@@ -8,7 +8,7 @@
-
+
diff --git a/addons/purchase_requisition/purchase_requisition.py b/addons/purchase_requisition/purchase_requisition.py
index 5aecc397f25..09fd6d0eff9 100644
--- a/addons/purchase_requisition/purchase_requisition.py
+++ b/addons/purchase_requisition/purchase_requisition.py
@@ -19,9 +19,6 @@
# along with this program. If not, see .
#
##############################################################################
-from datetime import datetime
-from dateutil.relativedelta import relativedelta
-import time
from openerp.osv import fields, osv
from openerp.tools.translate import _
@@ -40,8 +37,8 @@ class purchase_requisition(osv.osv):
return result
_columns = {
- 'name': fields.char('Call for Bids Reference', size=32, required=True),
- 'origin': fields.char('Source Document', size=32),
+ 'name': fields.char('Call for Bids Reference', required=True),
+ 'origin': fields.char('Source Document'),
'ordering_date': fields.date('Scheduled Ordering Date'),
'date_end': fields.datetime('Bid Submission Deadline'),
'schedule_date': fields.date('Scheduled Date', select=True, help="The expected and scheduled date where all the products are received"),
@@ -55,7 +52,7 @@ class purchase_requisition(osv.osv):
'procurement_id': fields.many2one('procurement.order', 'Procurement', ondelete='set null'),
'warehouse_id': fields.many2one('stock.warehouse', 'Warehouse'),
'state': fields.selection([('draft', 'Draft'), ('in_progress', 'Confirmed'), ('open', 'Bid Selection'), ('done', 'PO Created'), ('cancel', 'Cancelled')],
- 'Status', track_visibility='onchange', required=True),
+ 'Status', track_visibility='onchange', required=True),
'multiple_rfq_per_supplier': fields.boolean('Multiple RFQ per supplier'),
'account_analytic_id': fields.many2one('account.analytic.account', 'Analytic Account'),
'picking_type_id': fields.many2one('stock.picking.type', 'Picking Type', required=True),
@@ -63,7 +60,7 @@ class purchase_requisition(osv.osv):
def _get_picking_in(self, cr, uid, context=None):
obj_data = self.pool.get('ir.model.data')
- return obj_data.get_object_reference(cr, uid, 'stock','picking_type_in')[1]
+ return obj_data.get_object_reference(cr, uid, 'stock', 'picking_type_in')[1]
_defaults = {
'state': 'draft',
@@ -85,8 +82,7 @@ class purchase_requisition(osv.osv):
def tender_cancel(self, cr, uid, ids, context=None):
purchase_order_obj = self.pool.get('purchase.order')
- #try to set all associated quotations to cancel state
- purchase_ids = []
+ # try to set all associated quotations to cancel state
for tender in self.browse(cr, uid, ids, context=context):
for purchase_order in tender.purchase_ids:
purchase_order_obj.action_cancel(cr, uid, [purchase_order.id], context=context)
@@ -163,8 +159,11 @@ class purchase_requisition(osv.osv):
date_order = requisition.ordering_date or fields.date.context_today(self, cr, uid, context=context)
qty = product_uom._compute_qty(cr, uid, requisition_line.product_uom_id.id, requisition_line.product_qty, default_uom_po_id)
supplier_pricelist = supplier.property_product_pricelist_purchase and supplier.property_product_pricelist_purchase.id or False
- vals = po_line_obj.onchange_product_id(cr, uid, [], supplier_pricelist, product.id, qty, default_uom_po_id,
- supplier.id, date_order=date_order, fiscal_position_id=supplier.property_account_position, date_planned=requisition_line.schedule_date,
+ vals = po_line_obj.onchange_product_id(
+ cr, uid, [], supplier_pricelist, product.id, qty, default_uom_po_id,
+ supplier.id, date_order=date_order,
+ fiscal_position_id=supplier.property_account_position,
+ date_planned=requisition_line.schedule_date,
name=False, price_unit=False, state='draft', context=context)['value']
vals.update({
'order_id': purchase_id,
@@ -233,8 +232,6 @@ class purchase_requisition(osv.osv):
"""
Generate all purchase order based on selected lines, should only be called on one tender at a time
"""
- if context is None:
- contex = {}
po = self.pool.get('purchase.order')
poline = self.pool.get('purchase.order.line')
id_per_supplier = {}
@@ -267,8 +264,7 @@ class purchase_requisition(osv.osv):
id_per_supplier[po_line.partner_id.id] = [po_line]
#generate po based on supplier and cancel all previous RFQ
- ctx = context.copy()
- ctx['force_requisition_id'] = True
+ ctx = dict(context or {}, force_requisition_id=True)
for supplier, product_line in id_per_supplier.items():
#copy a quotation for this supplier and change order_line then validate it
quotation_id = po.search(cr, uid, [('requisition_id', '=', tender.id), ('partner_id', '=', supplier)], limit=1)[0]
@@ -429,12 +425,9 @@ class procurement_order(osv.osv):
return super(procurement_order, self)._run(cr, uid, procurement, context=context)
def _check(self, cr, uid, procurement, context=None):
- requisition_obj = self.pool.get('purchase.requisition')
if procurement.rule_id and procurement.rule_id.action == 'buy' and procurement.product_id.purchase_requisition:
if procurement.requisition_id.state == 'done':
if any([purchase.shipped for purchase in procurement.requisition_id.purchase_ids]):
return True
return False
return super(procurement_order, self)._check(cr, uid, procurement, context=context)
-
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/report_intrastat/report_intrastat.py b/addons/report_intrastat/report_intrastat.py
index 003aaec8447..c141401393d 100644
--- a/addons/report_intrastat/report_intrastat.py
+++ b/addons/report_intrastat/report_intrastat.py
@@ -40,8 +40,8 @@ class report_intrastat_code(osv.osv):
_name = "report.intrastat.code"
_description = "Intrastat code"
_columns = {
- 'name': fields.char('Intrastat Code', size=16),
- 'description': fields.char('Description', size=64),
+ 'name': fields.char('Intrastat Code'),
+ 'description': fields.char('Description'),
}
@@ -59,11 +59,11 @@ class report_intrastat(osv.osv):
_description = "Intrastat report"
_auto = False
_columns = {
- 'name': fields.char('Year',size=64,required=False, readonly=True),
+ 'name': fields.char('Year', required=False, readonly=True),
'month':fields.selection([('01','January'), ('02','February'), ('03','March'), ('04','April'), ('05','May'), ('06','June'),
- ('07','July'), ('08','August'), ('09','September'), ('10','October'), ('11','November'), ('12','December')],'Month',readonly=True),
+ ('07','July'), ('08','August'), ('09','September'), ('10','October'), ('11','November'), ('12','December')],'Month', readonly=True),
'supply_units':fields.float('Supply Units', readonly=True),
- 'ref':fields.char('Source document',size=64, readonly=True),
+ 'ref':fields.char('Source document', readonly=True),
'code': fields.char('Country code', size=2, readonly=True),
'intrastat_id': fields.many2one('report.intrastat.code', 'Intrastat code', readonly=True),
'weight': fields.float('Weight', readonly=True),
diff --git a/addons/report_intrastat/report_intrastat_view.xml b/addons/report_intrastat/report_intrastat_view.xml
index 574234b1eac..f1147d7f28c 100644
--- a/addons/report_intrastat/report_intrastat_view.xml
+++ b/addons/report_intrastat/report_intrastat_view.xml
@@ -25,14 +25,13 @@
-
- product.normal.form
- product.product
-
+
+ product.template.form
+ product.template
+
-
+
diff --git a/addons/report_intrastat/views/report_intrastatinvoice.xml b/addons/report_intrastat/views/report_intrastatinvoice.xml
index abf4bdd56ba..4da858f6ff5 100644
--- a/addons/report_intrastat/views/report_intrastatinvoice.xml
+++ b/addons/report_intrastat/views/report_intrastatinvoice.xml
@@ -56,7 +56,7 @@
-
+
diff --git a/addons/report_webkit/header.py b/addons/report_webkit/header.py
index 7a290662498..b390de8da7a 100644
--- a/addons/report_webkit/header.py
+++ b/addons/report_webkit/header.py
@@ -40,14 +40,14 @@ class HeaderHTML(osv.osv):
'html' : fields.text('webkit header', help="Set Webkit Report Header"),
'footer_html' : fields.text('webkit footer', help="Set Webkit Report Footer."),
'css' : fields.text('Header CSS'),
- 'name' : fields.char('Name', size=128, required=True),
+ 'name' : fields.char('Name', required=True),
'margin_top' : fields.float('Top Margin (mm)'),
'margin_bottom' : fields.float('Bottom Margin (mm)'),
'margin_left' : fields.float('Left Margin (mm)'),
'margin_right' : fields.float('Right Margin (mm)'),
'orientation' : fields.selection(
[('Landscape','Landscape'),('Portrait', 'Portrait')],
- 'Orientation'
+ 'Orientation',
),
'format': fields.selection(
[
@@ -94,8 +94,8 @@ class HeaderImage(osv.osv):
_columns = {
'company_id' : fields.many2one('res.company', 'Company'),
'img' : fields.binary('Image'),
- 'name' : fields.char('Name', size=128, required =True, help="Name of Image"),
- 'type' : fields.char('Type', size=32, required =True, help="Image type(png,gif,jpeg)")
+ 'name' : fields.char('Name', required =True, help="Name of Image"),
+ 'type' : fields.char('Type', required =True, help="Image type(png,gif,jpeg)")
}
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/resource/resource.py b/addons/resource/resource.py
index 58acc0cd170..41702ec5b0c 100644
--- a/addons/resource/resource.py
+++ b/addons/resource/resource.py
@@ -44,7 +44,7 @@ class resource_calendar(osv.osv):
_description = "Resource Calendar"
_columns = {
- 'name': fields.char("Name", size=64, required=True),
+ 'name': fields.char("Name", required=True),
'company_id': fields.many2one('res.company', 'Company', required=False),
'attendance_ids': fields.one2many('resource.calendar.attendance', 'calendar_id', 'Working Time'),
'manager': fields.many2one('res.users', 'Workgroup Manager'),
@@ -631,7 +631,7 @@ class resource_calendar_attendance(osv.osv):
_description = "Work Detail"
_columns = {
- 'name' : fields.char("Name", size=64, required=True),
+ 'name' : fields.char("Name", required=True),
'dayofweek': fields.selection([('0','Monday'),('1','Tuesday'),('2','Wednesday'),('3','Thursday'),('4','Friday'),('5','Saturday'),('6','Sunday')], 'Day of Week', required=True, select=True),
'date_from' : fields.date('Starting Date'),
'hour_from' : fields.float('Work from', required=True, help="Start and End time of working.", select=True),
@@ -654,7 +654,7 @@ class resource_resource(osv.osv):
_name = "resource.resource"
_description = "Resource Detail"
_columns = {
- 'name' : fields.char("Name", size=64, required=True),
+ 'name' : fields.char("Name", required=True),
'code': fields.char('Code', size=16),
'active' : fields.boolean('Active', help="If the active field is set to False, it will allow you to hide the resource record without removing it."),
'company_id' : fields.many2one('res.company', 'Company'),
@@ -792,7 +792,7 @@ class resource_calendar_leaves(osv.osv):
_name = "resource.calendar.leaves"
_description = "Leave Detail"
_columns = {
- 'name' : fields.char("Name", size=64),
+ 'name' : fields.char("Name"),
'company_id' : fields.related('calendar_id','company_id',type='many2one',relation='res.company',string="Company", store=True, readonly=True),
'calendar_id' : fields.many2one("resource.calendar", "Working Time"),
'date_from' : fields.datetime('Start Date', required=True),
diff --git a/addons/sale/sale.py b/addons/sale/sale.py
index 1f257376331..87ad2d80be0 100644
--- a/addons/sale/sale.py
+++ b/addons/sale/sale.py
@@ -185,10 +185,10 @@ class sale_order(osv.osv):
return None
_columns = {
- 'name': fields.char('Order Reference', size=64, required=True,
+ 'name': fields.char('Order Reference', required=True,
readonly=True, states={'draft': [('readonly', False)], 'sent': [('readonly', False)]}, select=True),
- 'origin': fields.char('Source Document', size=64, help="Reference of the document that generated this sales order request."),
- 'client_order_ref': fields.char('Reference/Description', size=64),
+ 'origin': fields.char('Source Document', help="Reference of the document that generated this sales order request."),
+ 'client_order_ref': fields.char('Reference/Description'),
'state': fields.selection([
('draft', 'Draft Quotation'),
('sent', 'Quotation Sent'),
diff --git a/addons/sale_journal/sale_journal.py b/addons/sale_journal/sale_journal.py
index 6a9ca22490d..076692cbf4a 100644
--- a/addons/sale_journal/sale_journal.py
+++ b/addons/sale_journal/sale_journal.py
@@ -25,7 +25,7 @@ class sale_journal_invoice_type(osv.osv):
_name = 'sale_journal.invoice.type'
_description = 'Invoice Types'
_columns = {
- 'name': fields.char('Invoice Type', size=64, required=True),
+ 'name': fields.char('Invoice Type', required=True),
'active': fields.boolean('Active', help="If the active field is set to False, it will allow you to hide the invoice type without removing it."),
'note': fields.text('Note'),
'invoicing_method': fields.selection([('simple', 'Non grouped'), ('grouped', 'Grouped')], 'Invoicing method', required=True),
diff --git a/addons/share/wizard/share_wizard.py b/addons/share/wizard/share_wizard.py
index 551b08d02cf..f6c1ab4510c 100644
--- a/addons/share/wizard/share_wizard.py
+++ b/addons/share/wizard/share_wizard.py
@@ -160,8 +160,8 @@ class share_wizard(osv.TransientModel):
_columns = {
'action_id': fields.many2one('ir.actions.act_window', 'Action to share', required=True,
help="The action that opens the screen containing the data you wish to share."),
- 'view_type': fields.char('Current View Type', size=32, required=True),
- 'domain': fields.char('Domain', size=256, help="Optional domain for further data filtering"),
+ 'view_type': fields.char('Current View Type', required=True),
+ 'domain': fields.char('Domain', help="Optional domain for further data filtering"),
'user_type': fields.selection(lambda s, *a, **k: s._user_type_selection(*a, **k),'Sharing method', required=True,
help="Select the type of user(s) you would like to share data with."),
'new_users': fields.text("Emails"),
@@ -172,17 +172,17 @@ class share_wizard(osv.TransientModel):
'access_mode': fields.selection([('readonly','Can view'),('readwrite','Can edit')],'Access Mode', required=True,
help="Access rights to be granted on the shared documents."),
'result_line_ids': fields.one2many('share.wizard.result.line', 'share_wizard_id', 'Summary', readonly=True),
- 'share_root_url': fields.function(_share_root_url, string='Share Access URL', type='char', size=512, readonly=True,
+ 'share_root_url': fields.function(_share_root_url, string='Share Access URL', type='char', readonly=True,
help='Main access page for users that are granted shared access'),
- 'name': fields.char('Share Title', size=64, required=True, help="Title for the share (displayed to users as menu and shortcut name)"),
- 'record_name': fields.char('Record name', size=128, help="Name of the shared record, if sharing a precise record"),
+ 'name': fields.char('Share Title', required=True, help="Title for the share (displayed to users as menu and shortcut name)"),
+ 'record_name': fields.char('Record name', help="Name of the shared record, if sharing a precise record"),
'message': fields.text("Personal Message", help="An optional personal message, to be included in the email notification."),
'embed_code': fields.function(_embed_code, type='text', string='Code',
help="Embed this code in your documents to provide a link to the "\
"shared document."),
'embed_option_title': fields.boolean('Display title'),
'embed_option_search': fields.boolean('Display search view'),
- 'embed_url': fields.function(_embed_url, string='Share URL', type='char', size=512, readonly=True),
+ 'embed_url': fields.function(_embed_url, string='Share URL', size=512, type='char', readonly=True),
}
_defaults = {
'view_type': 'page',
diff --git a/addons/stock/controllers/main.py b/addons/stock/controllers/main.py
index dda444c8627..ad8aa8826af 100644
--- a/addons/stock/controllers/main.py
+++ b/addons/stock/controllers/main.py
@@ -36,6 +36,14 @@ html_template = """
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
-
+
-
-
+
-
-
+
-
+
- Process Checkout
+
+ Process Checkout
+
@@ -719,7 +762,7 @@
- Suggested products
+ Suggested products:
@@ -740,16 +783,17 @@
-
-
+
-
@@ -791,11 +835,6 @@
-
-
-
-
-
Shop - Checkout
@@ -820,12 +859,12 @@
Your Name
+
Company Name
-
-
+
+ Country
+
+ Country...
+
+
+
+
+
State / Province
select...
-
-
-
-
-
- Country
-
- Country...
-
-
+
@@ -884,37 +923,28 @@
Shipping Information
- Name (Shipping)
+ Name (Shipping)
- Phone
+ Phone
- Street
+ Street
- City
+ City
- Zip / Postal Code
+ Zip / Postal Code
-
- State / Province
-
- State / Province...
-
-
-
-
-
- Country
+ Country
Country...
@@ -922,27 +952,37 @@
+
+ State / Province
+
+ State / Province...
+
+
+
+
+
+ Return to Cart
Confirm
-
Subtotal:
-
-
Taxes:
-
-
Total To Pay:
-
@@ -957,12 +997,6 @@
-
-
-
-
-
-
Shop - Select Payment Mode
-
@@ -1081,11 +1115,6 @@
-
-
-
-
-
Shop - Confirmed
@@ -1139,18 +1168,18 @@
Total:
-
Taxes:
-
@@ -1158,5 +1187,12 @@
+
+
+
+ New Product
+
+
+
diff --git a/addons/website_sale_options/__init__.py b/addons/website_sale_options/__init__.py
new file mode 100644
index 00000000000..9f86759e32b
--- /dev/null
+++ b/addons/website_sale_options/__init__.py
@@ -0,0 +1,2 @@
+import controllers
+import models
diff --git a/addons/website_sale_options/__openerp__.py b/addons/website_sale_options/__openerp__.py
new file mode 100644
index 00000000000..231fcffa4ce
--- /dev/null
+++ b/addons/website_sale_options/__openerp__.py
@@ -0,0 +1,22 @@
+{
+ 'name': 'eCommerce Optional Products',
+ 'category': 'Website',
+ 'version': '1.0',
+ 'description': """
+OpenERP E-Commerce
+==================
+
+ """,
+ 'author': 'OpenERP SA',
+ 'depends': ['website_sale'],
+ 'data': [
+ 'views/views.xml',
+ 'views/templates.xml',
+ ],
+ 'demo': [
+ 'data/demo.xml',
+ ],
+ 'qweb': ['static/src/xml/*.xml'],
+ 'installable': True,
+ 'application': True,
+}
diff --git a/addons/website_sale_options/controllers/__init__.py b/addons/website_sale_options/controllers/__init__.py
new file mode 100644
index 00000000000..039d9715fab
--- /dev/null
+++ b/addons/website_sale_options/controllers/__init__.py
@@ -0,0 +1 @@
+import main
\ No newline at end of file
diff --git a/addons/website_sale_options/controllers/main.py b/addons/website_sale_options/controllers/main.py
new file mode 100644
index 00000000000..9f4989d7ecf
--- /dev/null
+++ b/addons/website_sale_options/controllers/main.py
@@ -0,0 +1,64 @@
+# -*- coding: utf-8 -*-
+
+from openerp import SUPERUSER_ID
+from openerp.addons.web import http
+from openerp.addons.web.http import request
+from openerp.addons.website_sale.controllers.main import website_sale
+
+class website_sale_options(website_sale):
+
+ @http.route(['/shop/product/
'], type='http', auth="public", website=True)
+ def product(self, product, category='', search='', **kwargs):
+ r = super(website_sale_options, self).product(product, category, search, **kwargs)
+
+ cr, uid, context, pool = request.cr, request.uid, request.context, request.registry
+ template_obj = pool['product.template']
+
+ optional_product_ids = []
+ for p in product.optional_product_ids:
+ ctx = dict(context, active_id=p.id)
+ optional_product_ids.append(template_obj.browse(cr, uid, p.id, context=ctx))
+
+ r.qcontext['optional_product_ids'] = optional_product_ids
+ return r
+
+ @http.route(['/shop/cart/update_option'], type='http', auth="public", methods=['POST'], website=True)
+ def cart_options_update_json(self, product_id, add_qty=1, set_qty=0, goto_shop=None, **kw):
+ cr, uid, context, pool = request.cr, request.uid, request.context, request.registry
+
+ order = request.website.sale_get_order(force_create=1)
+ product = pool['product.product'].browse(cr, uid, int(product_id), context=context)
+
+
+ option_ids = [p.id for tmpl in product.optional_product_ids for p in tmpl.product_variant_ids]
+ optional_product_ids = []
+ for k, v in kw.items():
+ if "optional-product-" in k and int(kw.get(k.replace("product", "add"))) and int(v) in option_ids:
+ optional_product_ids.append(int(v))
+
+ value = {}
+ if add_qty or set_qty:
+ value = order._cart_update(product_id=int(product_id),
+ add_qty=int(add_qty), set_qty=int(set_qty),
+ optional_product_ids=optional_product_ids)
+
+ # options have all time the same quantity
+ for option_id in optional_product_ids:
+ order._cart_update(product_id=option_id,
+ set_qty=value.get('quantity'),
+ linked_line_id=value.get('line_id'))
+
+ return str(order.cart_quantity)
+
+ @http.route(['/shop/modal'], type='json', auth="public", methods=['POST'], website=True)
+ def modal(self, product_id, **kw):
+ cr, uid, context, pool = request.cr, request.uid, request.context, request.registry
+ if not context.get('pricelist'):
+ context['pricelist'] = int(self.get_pricelist())
+
+ product = pool['product.product'].browse(cr, uid, int(product_id), context=context)
+
+ return request.website._render("website_sale_options.modal", {
+ 'product': product,
+ 'get_attribute_value_ids': self.get_attribute_value_ids,
+ })
\ No newline at end of file
diff --git a/addons/website_sale_options/data/demo.xml b/addons/website_sale_options/data/demo.xml
new file mode 100644
index 00000000000..4453315f00f
--- /dev/null
+++ b/addons/website_sale_options/data/demo.xml
@@ -0,0 +1,58 @@
+
+
+
+
+
+
+
+ Duration
+ hidden
+
+
+ 1 year
+
+
+
+ 2 year
+
+
+
+
+ Warranty
+ 20.0
+ -1
+
+ service
+
+
+ Warranty, issued to the purchaser of an article by its manufacturer, promising to repair or replace it if necessary within a specified period of time.
+ W0001
+
+
+
+ W0002
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 18.00
+
+
+
+
+
+
diff --git a/addons/website_sale_options/models/__init__.py b/addons/website_sale_options/models/__init__.py
new file mode 100644
index 00000000000..806ebb7b64f
--- /dev/null
+++ b/addons/website_sale_options/models/__init__.py
@@ -0,0 +1,2 @@
+import product
+import sale_order
\ No newline at end of file
diff --git a/addons/website_sale_options/models/product.py b/addons/website_sale_options/models/product.py
new file mode 100644
index 00000000000..cd84e42a7da
--- /dev/null
+++ b/addons/website_sale_options/models/product.py
@@ -0,0 +1,10 @@
+# -*- coding: utf-8 -*-
+from openerp import tools
+from openerp.osv import osv, fields
+
+class product_template(osv.Model):
+ _inherit = "product.template"
+
+ _columns = {
+ 'optional_product_ids': fields.many2many('product.template','product_optional_rel','src_id','dest_id',string='Optional Products', help="Products to propose when add to cart."),
+ }
\ No newline at end of file
diff --git a/addons/website_sale_options/models/sale_order.py b/addons/website_sale_options/models/sale_order.py
new file mode 100644
index 00000000000..f16feaecc7b
--- /dev/null
+++ b/addons/website_sale_options/models/sale_order.py
@@ -0,0 +1,60 @@
+# -*- coding: utf-8 -*-
+
+from openerp import SUPERUSER_ID
+from openerp.osv import osv, orm, fields
+from openerp.tools.translate import _
+
+
+class sale_order_line(osv.Model):
+ _inherit = "sale.order.line"
+ _columns = {
+ 'linked_line_id': fields.many2one('sale.order.line', 'Linked Order Line', domain="[('order_id','!=',order_id)]", ondelete='cascade'),
+ 'option_line_ids': fields.one2many('sale.order.line', 'linked_line_id', string='Options Linked'),
+ }
+
+class sale_order(osv.Model):
+ _inherit = "sale.order"
+
+ def _cart_find_product_line(self, cr, uid, ids, product_id=None, line_id=None, context=None, **kwargs):
+ line_ids = super(sale_order, self)._cart_find_product_line(cr, uid, ids, product_id, line_id, context=context)
+ if line_id:
+ return line_ids
+ linked_line_id = kwargs.get('linked_line_id')
+ optional_product_ids = kwargs.get('optional_product_ids')
+ for so in self.browse(cr, uid, ids, context=context):
+ domain = [('id', 'in', line_ids)]
+ domain += linked_line_id and [('linked_line_id', '=', linked_line_id)] or [('linked_line_id', '=', False)]
+ if optional_product_ids:
+ domain += [('option_line_ids.product_id', '=', pid) for pid in optional_product_ids]
+ else:
+ domain += [('option_line_ids', '=', False)]
+ return self.pool.get('sale.order.line').search(cr, SUPERUSER_ID, domain, context=context)
+
+ def _cart_update(self, cr, uid, ids, product_id=None, line_id=None, add_qty=0, set_qty=0, context=None, **kwargs):
+ """ Add or set product quantity, add_qty can be negative """
+ value = super(sale_order, self)._cart_update(cr, uid, ids, product_id, line_id, add_qty, set_qty, context=context, **kwargs)
+
+ linked_line_id = kwargs.get('linked_line_id')
+ sol = self.pool.get('sale.order.line')
+ line = sol.browse(cr, SUPERUSER_ID, value.get('line_id'), context=context)
+
+ for so in self.browse(cr, uid, ids, context=context):
+
+ if linked_line_id and linked_line_id in map(int,so.order_line):
+ linked = sol.browse(cr, SUPERUSER_ID, linked_line_id, context=context)
+ line.write({
+ "name": _("%s\nOption for: %s") % (line.name, linked.product_id.name_get()[0][1]),
+ "linked_line_id": linked_line_id
+ }, context=context)
+
+ # select linked product
+ option_ids = [l.id for l in so.order_line if l.linked_line_id.id == line.id]
+
+ if option_ids:
+ # update line
+ sol.write(cr, SUPERUSER_ID, option_ids, {
+ 'product_uom_qty': value.get('quantity')
+ }, context=context)
+
+ value['option_ids'] = option_ids
+ return value
diff --git a/addons/website_sale_options/static/src/css/Makefile b/addons/website_sale_options/static/src/css/Makefile
new file mode 100644
index 00000000000..6753818a302
--- /dev/null
+++ b/addons/website_sale_options/static/src/css/Makefile
@@ -0,0 +1,2 @@
+sass:
+ sass -t expanded --unix-newlines --watch website_sale.sass:website_sale.css&
diff --git a/addons/website_sale_options/static/src/css/website_sale.css b/addons/website_sale_options/static/src/css/website_sale.css
new file mode 100644
index 00000000000..4ba8937020d
--- /dev/null
+++ b/addons/website_sale_options/static/src/css/website_sale.css
@@ -0,0 +1,3 @@
+.css_not_available.js_product > *:nth-child(5) > * {
+ display: none;
+}
diff --git a/addons/website_sale_options/static/src/css/website_sale.sass b/addons/website_sale_options/static/src/css/website_sale.sass
new file mode 100644
index 00000000000..675a8e04fc2
--- /dev/null
+++ b/addons/website_sale_options/static/src/css/website_sale.sass
@@ -0,0 +1,3 @@
+.css_not_available.js_product
+ > *:nth-child(5) > *
+ display: none
\ No newline at end of file
diff --git a/addons/website_sale_options/static/src/js/website_sale.js b/addons/website_sale_options/static/src/js/website_sale.js
new file mode 100644
index 00000000000..c0dba9eed10
--- /dev/null
+++ b/addons/website_sale_options/static/src/js/website_sale.js
@@ -0,0 +1,66 @@
+$(document).ready(function () {
+ $('.oe_website_sale #add_to_cart, .oe_website_sale #products_grid .a-submit')
+ .off('click')
+ .removeClass('a-submit')
+ .click(function (event) {
+ var $form = $(this).closest('form');
+ var quantity = parseFloat($form.find('input[name="add_qty"]').val() || 1);
+ event.preventDefault();
+ openerp.jsonRpc("/shop/modal", 'call', {
+ 'product_id': parseInt($form.find('input[name="product_id"]').val(),10),
+ kwargs: {
+ context: openerp.website.get_context()
+ },
+ }).then(function (modal) {
+ var $modal = $(modal);
+
+ $modal.appendTo($form)
+ .modal()
+ .on('hidden.bs.modal', function () {
+ $(this).remove();
+ });
+
+ $modal.on('click', '.a-submit', function () {
+ var $a = $(this);
+ $form.ajaxSubmit({
+ url: '/shop/cart/update_option',
+ success: function (quantity) {
+ if (!$a.hasClass('js_goto_shop')) {
+ window.location.href = window.location.href.replace(/shop([\/?].*)?$/, "shop/cart");
+ }
+ var $q = $(".my_cart_quantity");
+ $q.parent().parent().removeClass("hidden", !quantity);
+ $q.html(quantity).hide().fadeIn(600);
+ }
+ });
+ $modal.modal('hide');
+ });
+
+ $modal.on("click", "a.js_add, a.js_remove", function (event) {
+ event.preventDefault();
+ var $parent = $(this).parents('.js_product:first');
+ $parent.find("a.js_add, span.js_remove").toggleClass("hidden");
+ $parent.find("input.js_optional_same_quantity").val( $(this).hasClass("js_add") ? 1 : 0 );
+ var $remove = $parent.find(".js_remove");
+ });
+
+ $modal.on("change", "input.js_quantity", function (event) {
+ var qty = parseFloat($(this).val());
+ if (qty === 1) {
+ $(".js_remove .js_items").addClass("hidden");
+ $(".js_remove .js_item").removeClass("hidden");
+ } else {
+ $(".js_remove .js_items").removeClass("hidden").text($(".js_remove .js_items").text().replace(/[0-9.,]+/, qty));
+ $(".js_remove .js_item").addClass("hidden");
+ }
+ });
+
+ $modal.find('input[name="add_qty"]').val(quantity).change();
+ $('ul.js_add_cart_variants').each(function () {
+ $('input.js_variant_change, select.js_variant_change', this).first().trigger('change');
+ });
+ });
+ return false;
+ });
+
+});
diff --git a/addons/website_sale_options/static/src/js/website_sale.test.js b/addons/website_sale_options/static/src/js/website_sale.test.js
new file mode 100644
index 00000000000..e174276122d
--- /dev/null
+++ b/addons/website_sale_options/static/src/js/website_sale.test.js
@@ -0,0 +1,95 @@
+(function () {
+ 'use strict';
+
+ var steps = openerp.Tour.tours.shop_buy_product.steps;
+ for (var k=0; k
+
+
+
+
+
+
+
+
+
+
+
+
+
+ not line.linked_line_id
+
+
+ 'optional_product info' if line.linked_line_id else ''
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Product
+
+ Price
+ Quantity
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Select Your Options:
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Product not available
+
+
+
+ Add to Cart
+
+ 1 Item 5 Items
+ Remove from cart
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/addons/website_sale_options/views/views.xml b/addons/website_sale_options/views/views.xml
new file mode 100644
index 00000000000..dbc43563443
--- /dev/null
+++ b/addons/website_sale_options/views/views.xml
@@ -0,0 +1,17 @@
+
+
+
+
+
+ product.template.product.website.form
+ product.template
+
+
+
+
+
+
+
+
+
+
diff --git a/setup/debian/changelog b/debian/changelog
similarity index 100%
rename from setup/debian/changelog
rename to debian/changelog
diff --git a/setup/debian/compat b/debian/compat
similarity index 100%
rename from setup/debian/compat
rename to debian/compat
diff --git a/setup/debian/control b/debian/control
similarity index 100%
rename from setup/debian/control
rename to debian/control
diff --git a/setup/debian/copyright b/debian/copyright
similarity index 100%
rename from setup/debian/copyright
rename to debian/copyright
diff --git a/setup/debian/openerp-server.conf b/debian/openerp-server.conf
similarity index 100%
rename from setup/debian/openerp-server.conf
rename to debian/openerp-server.conf
diff --git a/setup/debian/openerp.init b/debian/openerp.init
similarity index 100%
rename from setup/debian/openerp.init
rename to debian/openerp.init
diff --git a/setup/debian/openerp.install b/debian/openerp.install
similarity index 100%
rename from setup/debian/openerp.install
rename to debian/openerp.install
diff --git a/setup/debian/openerp.logrotate b/debian/openerp.logrotate
similarity index 100%
rename from setup/debian/openerp.logrotate
rename to debian/openerp.logrotate
diff --git a/setup/debian/openerp.postinst b/debian/openerp.postinst
similarity index 100%
rename from setup/debian/openerp.postinst
rename to debian/openerp.postinst
diff --git a/setup/debian/openerp.postrm b/debian/openerp.postrm
similarity index 100%
rename from setup/debian/openerp.postrm
rename to debian/openerp.postrm
diff --git a/setup/debian/rules b/debian/rules
similarity index 100%
rename from setup/debian/rules
rename to debian/rules
diff --git a/setup/debian/run_all_with_tests.sh b/debian/run_all_with_tests.sh
similarity index 100%
rename from setup/debian/run_all_with_tests.sh
rename to debian/run_all_with_tests.sh
diff --git a/odoo.py b/odoo.py
index ba4178fbbcc..a998c3f8db6 100755
--- a/odoo.py
+++ b/odoo.py
@@ -72,7 +72,6 @@ def cmd_setup_git():
# alias
run('git','config','alias.st','status')
# merge bzr style
- run('git','config','merge.ff','no')
run('git','config','merge.commit','no')
# pull let me choose between merge or rebase only works in git > 2.0, use an alias for 1
run('git','config','pull.ff','only')
@@ -118,9 +117,10 @@ def cmd_setup_git_review():
run('git','config','--add','remote.odoo.fetch','+refs/pull/*:refs/remotes/odoo/pull/*')
def setup_deps_debian(git_dir):
- debian_control_path = os.path.join(git_dir, 'setup/debian/control')
+ debian_control_path = os.path.join(git_dir, 'debian/control')
debian_control = open(debian_control_path).read()
debs = re.findall('python-[0-9a-z]+',debian_control)
+ debs += ["postgresql"]
proc = subprocess.Popen(['sudo','apt-get','install'] + debs, stdin=open('/dev/tty'))
proc.communicate()
diff --git a/openerp/addons/base/base_data.xml b/openerp/addons/base/base_data.xml
index 728f1d43647..5518b5c7621 100644
--- a/openerp/addons/base/base_data.xml
+++ b/openerp/addons/base/base_data.xml
@@ -66,8 +66,8 @@
- --
-Administrator
+ --
+Administrator]]>
diff --git a/openerp/addons/base/ir/ir_actions.py b/openerp/addons/base/ir/ir_actions.py
index 3c84533e716..2de2301c5df 100644
--- a/openerp/addons/base/ir/ir_actions.py
+++ b/openerp/addons/base/ir/ir_actions.py
@@ -47,9 +47,9 @@ class actions(osv.osv):
_table = 'ir_actions'
_order = 'name'
_columns = {
- 'name': fields.char('Name', size=64, required=True),
- 'type': fields.char('Action Type', required=True, size=32),
- 'usage': fields.char('Action Usage', size=32),
+ 'name': fields.char('Name', required=True),
+ 'type': fields.char('Action Type', required=True),
+ 'usage': fields.char('Action Usage'),
'help': fields.text('Action description',
help='Optional help text for the users with a description of the target view, such as its usage and purpose.',
translate=True),
@@ -155,8 +155,8 @@ class ir_actions_report_xml(osv.osv):
_sequence = 'ir_actions_id_seq'
_order = 'name'
_columns = {
- 'type': fields.char('Action Type', size=32, required=True),
- 'name': fields.char('Name', size=64, required=True, translate=True),
+ 'type': fields.char('Action Type', required=True),
+ 'name': fields.char('Name', required=True, translate=True),
'model': fields.char('Model', required=True),
'report_type': fields.selection([('qweb-pdf', 'PDF'),
@@ -172,10 +172,10 @@ class ir_actions_report_xml(osv.osv):
# options
'multi': fields.boolean('On Multiple Doc.', help="If set to true, the action will not be displayed on the right toolbar of a form view."),
'attachment_use': fields.boolean('Reload from Attachment', help='If you check this, then the second time the user prints with same attachment name, it returns the previous report.'),
- 'attachment': fields.char('Save as Attachment Prefix', size=128, help='This is the filename of the attachment used to store the printing result. Keep empty to not save the printed reports. You can use a python expression with the object and time variables.'),
+ 'attachment': fields.char('Save as Attachment Prefix', help='This is the filename of the attachment used to store the printing result. Keep empty to not save the printed reports. You can use a python expression with the object and time variables.'),
# Deprecated rml stuff
- 'usage': fields.char('Action Usage', size=32),
+ 'usage': fields.char('Action Usage'),
'header': fields.boolean('Add RML Header', help="Add or not the corporate RML header"),
'parser': fields.char('Parser Class'),
'auto': fields.boolean('Custom Python Parser'),
@@ -264,24 +264,24 @@ class ir_actions_act_window(osv.osv):
return res
_columns = {
- 'name': fields.char('Action Name', size=64, translate=True),
- 'type': fields.char('Action Type', size=32, required=True),
+ 'name': fields.char('Action Name', translate=True),
+ 'type': fields.char('Action Type', required=True),
'view_id': fields.many2one('ir.ui.view', 'View Ref.', ondelete='cascade'),
'domain': fields.char('Domain Value',
help="Optional domain filtering of the destination data, as a Python expression"),
'context': fields.char('Context Value', required=True,
help="Context dictionary as Python expression, empty by default (Default: {})"),
'res_id': fields.integer('Record ID', help="Database ID of record to open in form view, when ``view_mode`` is set to 'form' only"),
- 'res_model': fields.char('Destination Model', size=64, required=True,
+ 'res_model': fields.char('Destination Model', required=True,
help="Model name of the object to open in the view window"),
- 'src_model': fields.char('Source Model', size=64,
+ 'src_model': fields.char('Source Model',
help="Optional model name of the objects on which this action should be visible"),
'target': fields.selection([('current','Current Window'),('new','New Window'),('inline','Inline Edit'),('inlineview','Inline View')], 'Target Window'),
- 'view_mode': fields.char('View Mode', size=250, required=True,
+ 'view_mode': fields.char('View Mode', required=True,
help="Comma-separated list of allowed view modes, such as 'form', 'tree', 'calendar', etc. (Default: tree,form)"),
'view_type': fields.selection((('tree','Tree'),('form','Form')), string='View Type', required=True,
help="View type: Tree type to use for the tree view, set to 'tree' for a hierarchical tree view, or 'form' for a regular list view"),
- 'usage': fields.char('Action Usage', size=32,
+ 'usage': fields.char('Action Usage',
help="Used to filter menu and home actions from the user form."),
'view_ids': fields.one2many('ir.actions.act_window.view', 'act_window_id', 'Views'),
'views': fields.function(_views_get_fnc, type='binary', string='Views',
@@ -403,8 +403,8 @@ class ir_actions_act_url(osv.osv):
_sequence = 'ir_actions_id_seq'
_order = 'name'
_columns = {
- 'name': fields.char('Action Name', size=64, translate=True),
- 'type': fields.char('Action Type', size=32, required=True),
+ 'name': fields.char('Action Name', translate=True),
+ 'type': fields.char('Action Type', required=True),
'url': fields.text('Action URL',required=True),
'target': fields.selection((
('new', 'New Window'),
@@ -467,7 +467,7 @@ class ir_actions_server(osv.osv):
return self._get_states(cr, uid, context)
_columns = {
- 'name': fields.char('Action Name', required=True, size=64, translate=True),
+ 'name': fields.char('Action Name', required=True, translate=True),
'condition': fields.char('Condition',
help="Condition verified before executing the server action. If it "
"is not verified, the action will not be executed. The condition is "
@@ -483,8 +483,8 @@ class ir_actions_server(osv.osv):
"- 'Write on a Record': update the values of a record\n"
"- 'Execute several actions': define an action that triggers several other server actions\n"
"- 'Send Email': automatically send an email (available in email_template)"),
- 'usage': fields.char('Action Usage', size=32),
- 'type': fields.char('Action Type', size=32, required=True),
+ 'usage': fields.char('Action Usage'),
+ 'type': fields.char('Action Type', required=True),
# Generic
'sequence': fields.integer('Sequence',
help="When dealing with multiple actions, the execution order is "
@@ -1065,7 +1065,7 @@ class ir_actions_todo(osv.osv):
'ir.actions.actions', 'Action', select=True, required=True),
'sequence': fields.integer('Sequence'),
'state': fields.selection(TODO_STATES, string='Status', required=True),
- 'name': fields.char('Name', size=64),
+ 'name': fields.char('Name'),
'type': fields.selection(TODO_TYPES, 'Type', required=True,
help="""Manual: Launched manually.
Automatic: Runs whenever the system is reconfigured.
@@ -1183,14 +1183,14 @@ class ir_actions_act_client(osv.osv):
self.write(cr, uid, id, {'params_store': field_value}, context=context)
_columns = {
- 'name': fields.char('Action Name', required=True, size=64, translate=True),
- 'tag': fields.char('Client action tag', size=64, required=True,
+ 'name': fields.char('Action Name', required=True, translate=True),
+ 'tag': fields.char('Client action tag', required=True,
help="An arbitrary string, interpreted by the client"
" according to its own needs and wishes. There "
"is no central tag repository across clients."),
- 'res_model': fields.char('Destination Model', size=64,
+ 'res_model': fields.char('Destination Model',
help="Optional model, mostly used for needactions."),
- 'context': fields.char('Context Value', size=250, required=True,
+ 'context': fields.char('Context Value', required=True,
help="Context dictionary as Python expression, empty by default (Default: {})"),
'params': fields.function(_get_params, fnct_inv=_set_params,
type='binary',
diff --git a/openerp/addons/base/ir/ir_attachment.py b/openerp/addons/base/ir/ir_attachment.py
index 8478682eb7c..ef4a6b205a7 100644
--- a/openerp/addons/base/ir/ir_attachment.py
+++ b/openerp/addons/base/ir/ir_attachment.py
@@ -60,7 +60,7 @@ class ir_attachment(osv.osv):
if res_name:
field = self._columns.get('res_name',False)
if field and len(res_name) > field.size:
- res_name = res_name[:field.size-3] + '...'
+ res_name = res_name[:30] + '...'
data[attachment.id] = res_name
else:
data[attachment.id] = False
@@ -182,11 +182,11 @@ class ir_attachment(osv.osv):
_name = 'ir.attachment'
_columns = {
- 'name': fields.char('Attachment Name',size=256, required=True),
- 'datas_fname': fields.char('File Name',size=256),
+ 'name': fields.char('Attachment Name', required=True),
+ 'datas_fname': fields.char('File Name'),
'description': fields.text('Description'),
- 'res_name': fields.function(_name_get_resname, type='char', size=128, string='Resource Name', store=True),
- 'res_model': fields.char('Resource Model',size=64, readonly=True, help="The database object this attachment will be attached to"),
+ 'res_name': fields.function(_name_get_resname, type='char', string='Resource Name', store=True),
+ 'res_model': fields.char('Resource Model', readonly=True, help="The database object this attachment will be attached to"),
'res_id': fields.integer('Resource ID', readonly=True, help="The record id this is attached to"),
'create_date': fields.datetime('Date Created', readonly=True),
'create_uid': fields.many2one('res.users', 'Owner', readonly=True),
@@ -196,7 +196,7 @@ class ir_attachment(osv.osv):
'url': fields.char('Url', size=1024),
# al: We keep shitty field names for backward compatibility with document
'datas': fields.function(_data_get, fnct_inv=_data_set, string='File Content', type="binary", nodrop=True),
- 'store_fname': fields.char('Stored Filename', size=256),
+ 'store_fname': fields.char('Stored Filename'),
'db_datas': fields.binary('Database Data'),
'file_size': fields.integer('File Size'),
}
diff --git a/openerp/addons/base/ir/ir_config_parameter.py b/openerp/addons/base/ir/ir_config_parameter.py
index ca5b1112c7a..f9c5c7736df 100644
--- a/openerp/addons/base/ir/ir_config_parameter.py
+++ b/openerp/addons/base/ir/ir_config_parameter.py
@@ -33,11 +33,12 @@ from openerp.tools import misc, config
A dictionary holding some configuration parameters to be initialized when the database is created.
"""
_default_parameters = {
- "database.uuid": lambda: str(uuid.uuid1()),
- "database.create_date": lambda: datetime.datetime.now().strftime(misc.DEFAULT_SERVER_DATETIME_FORMAT),
- "web.base.url": lambda: "http://localhost:%s" % config.get('xmlrpc_port'),
+ "database.uuid": lambda: (str(uuid.uuid1()), []),
+ "database.create_date": lambda: (datetime.datetime.now().strftime(misc.DEFAULT_SERVER_DATETIME_FORMAT), ['base.group_user']),
+ "web.base.url": lambda: ("http://localhost:%s" % config.get('xmlrpc_port'), []),
}
+
class ir_config_parameter(osv.osv):
"""Per-database storage of configuration key-value pairs."""
@@ -45,8 +46,9 @@ class ir_config_parameter(osv.osv):
_rec_name = 'key'
_columns = {
- 'key': fields.char('Key', size=256, required=True, select=1),
+ 'key': fields.char('Key', required=True, select=1),
'value': fields.text('Value', required=True),
+ 'group_ids': fields.many2many('res.groups', 'ir_config_parameter_groups_rel', 'icp_id', 'group_id', string='Groups'),
}
_sql_constraints = [
@@ -62,7 +64,9 @@ class ir_config_parameter(osv.osv):
# force=True skips search and always performs the 'if' body (because ids=False)
ids = not force and self.search(cr, SUPERUSER_ID, [('key','=',key)])
if not ids:
- self.set_param(cr, SUPERUSER_ID, key, func())
+ value, groups = func()
+ self.set_param(cr, SUPERUSER_ID, key, value, groups=groups)
+
def get_param(self, cr, uid, key, default=False, context=None):
"""Retrieve the value for a given key.
@@ -78,24 +82,36 @@ class ir_config_parameter(osv.osv):
param = self.browse(cr, uid, ids[0], context=context)
value = param.value
return value
-
- def set_param(self, cr, uid, key, value, context=None):
+
+ def set_param(self, cr, uid, key, value, groups=[], context=None):
"""Sets the value of a parameter.
-
+
:param string key: The key of the parameter value to set.
:param string value: The value to set.
+ :param list of string groups: List of group (xml_id allowed) to read this key.
:return: the previous value of the parameter or False if it did
not exist.
:rtype: string
"""
ids = self.search(cr, uid, [('key','=',key)], context=context)
+
+ gids = []
+ for group_xml in groups:
+ res_id = self.pool['ir.model.data'].xmlid_to_res_id(cr, uid, group_xml)
+ if res_id:
+ gids.append((4, res_id))
+
+ vals = {'value': value}
+ if gids:
+ vals.update(group_ids=gids)
if ids:
param = self.browse(cr, uid, ids[0], context=context)
old = param.value
- self.write(cr, uid, ids, {'value': value}, context=context)
+ self.write(cr, uid, ids, vals, context=context)
return old
else:
- self.create(cr, uid, {'key': key, 'value': value}, context=context)
+ vals.update(key=key)
+ self.create(cr, uid, vals, context=context)
return False
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/openerp/addons/base/ir/ir_config_parameter_view.xml b/openerp/addons/base/ir/ir_config_parameter_view.xml
index 6b2fb611bb3..643fe6b6bf5 100644
--- a/openerp/addons/base/ir/ir_config_parameter_view.xml
+++ b/openerp/addons/base/ir/ir_config_parameter_view.xml
@@ -16,6 +16,7 @@
+
@@ -27,6 +28,7 @@
+
diff --git a/openerp/addons/base/ir/ir_cron.py b/openerp/addons/base/ir/ir_cron.py
index e0f6e38b5ba..8350972fa27 100644
--- a/openerp/addons/base/ir/ir_cron.py
+++ b/openerp/addons/base/ir/ir_cron.py
@@ -61,7 +61,7 @@ class ir_cron(osv.osv):
_name = "ir.cron"
_order = 'name'
_columns = {
- 'name': fields.char('Name', size=60, required=True),
+ 'name': fields.char('Name', required=True),
'user_id': fields.many2one('res.users', 'User', required=True),
'active': fields.boolean('Active'),
'interval_number': fields.integer('Interval Number',help="Repeat every x."),
@@ -70,8 +70,8 @@ class ir_cron(osv.osv):
'numbercall': fields.integer('Number of Calls', help='How many times the method is called,\na negative number indicates no limit.'),
'doall' : fields.boolean('Repeat Missed', help="Specify if missed occurrences should be executed when the server restarts."),
'nextcall' : fields.datetime('Next Execution Date', required=True, help="Next planned execution date for this job."),
- 'model': fields.char('Object', size=64, help="Model name on which the method to be called is located, e.g. 'res.partner'."),
- 'function': fields.char('Method', size=64, help="Name of the method to be called when this job is processed."),
+ 'model': fields.char('Object', help="Model name on which the method to be called is located, e.g. 'res.partner'."),
+ 'function': fields.char('Method', help="Name of the method to be called when this job is processed."),
'args': fields.text('Arguments', help="Arguments to be passed to the method, e.g. (uid,)."),
'priority': fields.integer('Priority', help='The priority of the job, as an integer: 0 means higher priority, 10 means lower priority.')
}
diff --git a/openerp/addons/base/ir/ir_default.py b/openerp/addons/base/ir/ir_default.py
index 3b82b3aed8e..e8a393d5552 100644
--- a/openerp/addons/base/ir/ir_default.py
+++ b/openerp/addons/base/ir/ir_default.py
@@ -24,12 +24,12 @@ from openerp.osv import fields, osv
class ir_default(osv.osv):
_name = 'ir.default'
_columns = {
- 'field_tbl': fields.char('Object',size=64),
- 'field_name': fields.char('Object Field',size=64),
- 'value': fields.char('Default Value',size=64),
+ 'field_tbl': fields.char('Object'),
+ 'field_name': fields.char('Object Field'),
+ 'value': fields.char('Default Value'),
'uid': fields.many2one('res.users', 'Users'),
- 'page': fields.char('View',size=64),
- 'ref_table': fields.char('Table Ref.',size=64),
+ 'page': fields.char('View'),
+ 'ref_table': fields.char('Table Ref.'),
'ref_id': fields.integer('ID Ref.',size=64),
'company_id': fields.many2one('res.company','Company')
}
diff --git a/openerp/addons/base/ir/ir_exports.py b/openerp/addons/base/ir/ir_exports.py
index c6d188bf02b..745ab7cd233 100644
--- a/openerp/addons/base/ir/ir_exports.py
+++ b/openerp/addons/base/ir/ir_exports.py
@@ -26,8 +26,8 @@ class ir_exports(osv.osv):
_name = "ir.exports"
_order = 'name'
_columns = {
- 'name': fields.char('Export Name', size=128),
- 'resource': fields.char('Resource', size=128, select=True),
+ 'name': fields.char('Export Name'),
+ 'resource': fields.char('Resource', select=True),
'export_fields': fields.one2many('ir.exports.line', 'export_id',
'Export ID'),
}
@@ -37,7 +37,7 @@ class ir_exports_line(osv.osv):
_name = 'ir.exports.line'
_order = 'id'
_columns = {
- 'name': fields.char('Field Name', size=64),
+ 'name': fields.char('Field Name'),
'export_id': fields.many2one('ir.exports', 'Export', select=True, ondelete='cascade'),
}
diff --git a/openerp/addons/base/ir/ir_filters.py b/openerp/addons/base/ir/ir_filters.py
index 418c3073f5e..6364a2492be 100644
--- a/openerp/addons/base/ir/ir_filters.py
+++ b/openerp/addons/base/ir/ir_filters.py
@@ -126,7 +126,7 @@ class ir_filters(osv.osv):
(lower(name), model_id, COALESCE(user_id,-1))""")
_columns = {
- 'name': fields.char('Filter Name', size=64, translate=True, required=True),
+ 'name': fields.char('Filter Name', translate=True, required=True),
'user_id': fields.many2one('res.users', 'User', ondelete='cascade',
help="The user this filter is private to. When left empty the filter is public "
"and available to all users."),
diff --git a/openerp/addons/base/ir/ir_mail_server.py b/openerp/addons/base/ir/ir_mail_server.py
index 4af52bdea41..747f4f1446d 100644
--- a/openerp/addons/base/ir/ir_mail_server.py
+++ b/openerp/addons/base/ir/ir_mail_server.py
@@ -167,8 +167,8 @@ class ir_mail_server(osv.osv):
_name = "ir.mail_server"
_columns = {
- 'name': fields.char('Description', size=64, required=True, select=True),
- 'smtp_host': fields.char('SMTP Server', size=128, required=True, help="Hostname or IP of SMTP server"),
+ 'name': fields.char('Description', required=True, select=True),
+ 'smtp_host': fields.char('SMTP Server', required=True, help="Hostname or IP of SMTP server"),
'smtp_port': fields.integer('SMTP Port', size=5, required=True, help="SMTP Port. Usually 465 for SSL, and 25 or 587 for other cases."),
'smtp_user': fields.char('Username', size=64, help="Optional username for SMTP authentication"),
'smtp_pass': fields.char('Password', size=64, help="Optional password for SMTP authentication"),
diff --git a/openerp/addons/base/ir/ir_model.py b/openerp/addons/base/ir/ir_model.py
index 3101f52f2e0..c759dace9c7 100644
--- a/openerp/addons/base/ir/ir_model.py
+++ b/openerp/addons/base/ir/ir_model.py
@@ -100,7 +100,7 @@ class ir_model(osv.osv):
'model': fields.char('Model', required=True, select=1),
'info': fields.text('Information'),
'field_id': fields.one2many('ir.model.fields', 'model_id', 'Fields', required=True),
- 'state': fields.selection([('manual','Custom Object'),('base','Base Object')],'Type',readonly=True),
+ 'state': fields.selection([('manual','Custom Object'),('base','Base Object')],'Type', readonly=True),
'access_ids': fields.one2many('ir.model.access', 'model_id', 'Access'),
'osv_memory': fields.function(_is_osv_memory, string='Transient Model', type='boolean',
fnct_search=_search_osv_memory,
@@ -1192,7 +1192,7 @@ class wizard_model_menu(osv.osv_memory):
_name = 'wizard.ir.model.menu.create'
_columns = {
'menu_id': fields.many2one('ir.ui.menu', 'Parent Menu', required=True),
- 'name': fields.char('Menu Name', size=64, required=True),
+ 'name': fields.char('Menu Name', required=True),
}
def menu_create(self, cr, uid, ids, context=None):
diff --git a/openerp/addons/base/ir/ir_qweb.py b/openerp/addons/base/ir/ir_qweb.py
index 4ff8ac967c2..9c41fab397a 100644
--- a/openerp/addons/base/ir/ir_qweb.py
+++ b/openerp/addons/base/ir/ir_qweb.py
@@ -762,7 +762,7 @@ class MonetaryConverter(osv.AbstractModel):
if context is None:
context = {}
Currency = self.pool['res.currency']
- display = self.display_currency(cr, uid, options)
+ display_currency = self.display_currency(cr, uid, options['display_currency'], options)
# lang.format mandates a sprintf-style format. These formats are non-
# minimal (they have a default fixed precision instead), and
@@ -773,17 +773,23 @@ class MonetaryConverter(osv.AbstractModel):
# The log10 of the rounding should be the number of digits involved if
# negative, if positive clamp to 0 digits and call it a day.
# nb: int() ~ floor(), we want nearest rounding instead
- precision = int(round(math.log10(display.rounding)))
+ precision = int(round(math.log10(display_currency.rounding)))
fmt = "%.{0}f".format(-precision if precision < 0 else 0)
+ from_amount = record[field_name]
+
+ if options.get('from_currency'):
+ from_currency = self.display_currency(cr, uid, options['from_currency'], options)
+ from_amount = Currency.compute(cr, uid, from_currency.id, display_currency.id, from_amount)
+
lang_code = context.get('lang') or 'en_US'
lang = self.pool['res.lang']
formatted_amount = lang.format(cr, uid, [lang_code],
- fmt, Currency.round(cr, uid, display, record[field_name]),
+ fmt, Currency.round(cr, uid, display_currency, from_amount),
grouping=True, monetary=True)
pre = post = u''
- if display.position == 'before':
+ if display_currency.position == 'before':
pre = u'{symbol} '
else:
post = u' {symbol}'
@@ -792,12 +798,12 @@ class MonetaryConverter(osv.AbstractModel):
formatted_amount,
pre=pre, post=post,
).format(
- symbol=display.symbol,
+ symbol=display_currency.symbol,
))
- def display_currency(self, cr, uid, options):
+ def display_currency(self, cr, uid, currency, options):
return self.qweb_object().eval_object(
- options['display_currency'], options['_qweb_context'])
+ currency, options['_qweb_context'])
TIMEDELTA_UNITS = (
('year', 3600 * 24 * 365),
diff --git a/openerp/addons/base/ir/ir_rule.py b/openerp/addons/base/ir/ir_rule.py
index 96b7da4f590..2ac5893038b 100644
--- a/openerp/addons/base/ir/ir_rule.py
+++ b/openerp/addons/base/ir/ir_rule.py
@@ -72,7 +72,7 @@ class ir_rule(osv.osv):
return not any(rule.model_id.model == self._name for rule in self.browse(cr, uid, ids, context))
_columns = {
- 'name': fields.char('Name', size=128, select=1),
+ 'name': fields.char('Name', select=1),
'active': fields.boolean('Active', help="If you uncheck the active field, it will disable the record rule without deleting it (if you delete a native record rule, it may be re-created when you reload the module."),
'model_id': fields.many2one('ir.model', 'Object',select=1, required=True, ondelete="cascade"),
'global': fields.function(_get_value, string='Global', type='boolean', store=True, help="If no group is specified the rule is global and applied to everyone"),
diff --git a/openerp/addons/base/ir/ir_sequence.py b/openerp/addons/base/ir/ir_sequence.py
index 8ca74cbb797..a990a17f032 100644
--- a/openerp/addons/base/ir/ir_sequence.py
+++ b/openerp/addons/base/ir/ir_sequence.py
@@ -32,7 +32,7 @@ class ir_sequence_type(openerp.osv.osv.osv):
_name = 'ir.sequence.type'
_order = 'name'
_columns = {
- 'name': openerp.osv.fields.char('Name', size=64, required=True),
+ 'name': openerp.osv.fields.char('Name', required=True),
'code': openerp.osv.fields.char('Code', size=32, required=True),
}
@@ -92,8 +92,8 @@ class ir_sequence(openerp.osv.osv.osv):
"and 'No gap'. The later is slower than the former but forbids any"
" gap in the sequence (while they are possible in the former)."),
'active': openerp.osv.fields.boolean('Active'),
- 'prefix': openerp.osv.fields.char('Prefix', size=64, help="Prefix value of the record for the sequence"),
- 'suffix': openerp.osv.fields.char('Suffix', size=64, help="Suffix value of the record for the sequence"),
+ 'prefix': openerp.osv.fields.char('Prefix', help="Prefix value of the record for the sequence"),
+ 'suffix': openerp.osv.fields.char('Suffix', help="Suffix value of the record for the sequence"),
'number_next': openerp.osv.fields.integer('Next Number', required=True, help="Next number of this sequence"),
'number_next_actual': openerp.osv.fields.function(_get_number_next_actual, fnct_inv=_set_number_next_actual, type='integer', required=True, string='Next Number', help='Next number that will be used. This number can be incremented frequently so the displayed value might already be obsolete'),
'number_increment': openerp.osv.fields.integer('Increment Number', required=True, help="The next number of the sequence will be incremented by this number"),
diff --git a/openerp/addons/base/ir/ir_translation.py b/openerp/addons/base/ir/ir_translation.py
index b6a7a722ddb..7952c957caf 100644
--- a/openerp/addons/base/ir/ir_translation.py
+++ b/openerp/addons/base/ir/ir_translation.py
@@ -288,6 +288,31 @@ class ir_translation(osv.osv):
})
return len(ids)
+ def _get_source_query(self, cr, uid, name, types, lang, source, res_id):
+ if source:
+ query = """SELECT value
+ FROM ir_translation
+ WHERE lang=%s
+ AND type in %s
+ AND src=%s"""
+ params = (lang or '', types, tools.ustr(source))
+ if res_id:
+ query += "AND res_id=%s"
+ params += (res_id,)
+ if name:
+ query += " AND name=%s"
+ params += (tools.ustr(name),)
+ else:
+ query = """SELECT value
+ FROM ir_translation
+ WHERE lang=%s
+ AND type in %s
+ AND name=%s"""
+
+ params = (lang or '', types, tools.ustr(name))
+
+ return (query, params)
+
@tools.ormcache(skiparg=3)
def _get_source(self, cr, uid, name, types, lang, source=None, res_id=None):
"""
@@ -310,27 +335,10 @@ class ir_translation(osv.osv):
return tools.ustr(source or '')
if isinstance(types, basestring):
types = (types,)
- if source:
- query = """SELECT value
- FROM ir_translation
- WHERE lang=%s
- AND type in %s
- AND src=%s"""
- params = (lang or '', types, tools.ustr(source))
- if res_id:
- query += "AND res_id=%s"
- params += (res_id,)
- if name:
- query += " AND name=%s"
- params += (tools.ustr(name),)
- cr.execute(query, params)
- else:
- cr.execute("""SELECT value
- FROM ir_translation
- WHERE lang=%s
- AND type in %s
- AND name=%s""",
- (lang or '', types, tools.ustr(name)))
+
+ query, params = self._get_source_query(cr, uid, name, types, lang, source, res_id)
+
+ cr.execute(query, params)
res = cr.fetchone()
trad = res and res[0] or u''
if source and not trad:
diff --git a/openerp/addons/base/ir/ir_ui_menu.py b/openerp/addons/base/ir/ir_ui_menu.py
index 957e0903013..8ace579defb 100644
--- a/openerp/addons/base/ir/ir_ui_menu.py
+++ b/openerp/addons/base/ir/ir_ui_menu.py
@@ -23,6 +23,7 @@
import base64
import re
import threading
+import operator
from openerp.tools.safe_eval import safe_eval as eval
from openerp import tools
import openerp.modules
@@ -32,6 +33,7 @@ from openerp import SUPERUSER_ID
MENU_ITEM_SEPARATOR = "/"
+
class ir_ui_menu(osv.osv):
_name = 'ir.ui.menu'
@@ -338,8 +340,65 @@ class ir_ui_menu(osv.osv):
res[menu.id]['needaction_counter'] = obj._needaction_count(cr, uid, dom, context=context)
return res
+ def get_user_roots(self, cr, uid, context=None):
+ """ Return all root menu ids visible for the user.
+
+ :return: the root menu ids
+ :rtype: list(int)
+ """
+ menu_domain = [('parent_id', '=', False)]
+ return self.search(cr, uid, menu_domain, context=context)
+
+ def load_menus(self, cr, uid, context=None):
+ """ Loads all menu items (all applications and their sub-menus).
+
+ :return: the menu root
+ :rtype: dict('children': menu_nodes)
+ """
+ fields = ['name', 'sequence', 'parent_id', 'action']
+ menu_root_ids = self.get_user_roots(cr, uid, context=context)
+ menu_roots = self.read(cr, uid, menu_root_ids, fields, context=context) if menu_root_ids else []
+ menu_root = {
+ 'id': False,
+ 'name': 'root',
+ 'parent_id': [-1, ''],
+ 'children': menu_roots,
+ 'all_menu_ids': menu_root_ids,
+ }
+ if not menu_roots:
+ return menu_root
+
+ # menus are loaded fully unlike a regular tree view, cause there are a
+ # limited number of items (752 when all 6.1 addons are installed)
+ menu_ids = self.search(cr, uid, [('id', 'child_of', menu_root_ids)], 0, False, False, context=context)
+ menu_items = self.read(cr, uid, menu_ids, fields, context=context)
+ # adds roots at the end of the sequence, so that they will overwrite
+ # equivalent menu items from full menu read when put into id:item
+ # mapping, resulting in children being correctly set on the roots.
+ menu_items.extend(menu_roots)
+ menu_root['all_menu_ids'] = menu_ids # includes menu_root_ids!
+
+ # make a tree using parent_id
+ menu_items_map = dict(
+ (menu_item["id"], menu_item) for menu_item in menu_items)
+ for menu_item in menu_items:
+ if menu_item['parent_id']:
+ parent = menu_item['parent_id'][0]
+ else:
+ parent = False
+ if parent in menu_items_map:
+ menu_items_map[parent].setdefault(
+ 'children', []).append(menu_item)
+
+ # sort by sequence a tree using parent_id
+ for menu_item in menu_items:
+ menu_item.setdefault('children', []).sort(
+ key=operator.itemgetter('sequence'))
+
+ return menu_root
+
_columns = {
- 'name': fields.char('Menu', size=64, required=True, translate=True),
+ 'name': fields.char('Menu', required=True, translate=True),
'sequence': fields.integer('Sequence'),
'child_id': fields.one2many('ir.ui.menu', 'parent_id', 'Child IDs'),
'parent_id': fields.many2one('ir.ui.menu', 'Parent Menu', select=True, ondelete="restrict"),
@@ -352,8 +411,8 @@ class ir_ui_menu(osv.osv):
string='Full Path', type='char', size=128),
'icon': fields.selection(tools.icons, 'Icon', size=64),
'icon_pict': fields.function(_get_icon_pict, type='char', size=32),
- 'web_icon': fields.char('Web Icon File', size=128),
- 'web_icon_hover': fields.char('Web Icon File (hover)', size=128),
+ 'web_icon': fields.char('Web Icon File'),
+ 'web_icon_hover': fields.char('Web Icon File (hover)'),
'web_icon_data': fields.function(_get_image_icon, string='Web Icon Image', type='binary', readonly=True, store=True, multi='icon'),
'web_icon_hover_data': fields.function(_get_image_icon, string='Web Icon Image (hover)', type='binary', readonly=True, store=True, multi='icon'),
'needaction_enabled': fields.function(_get_needaction_enabled,
@@ -362,7 +421,7 @@ class ir_ui_menu(osv.osv):
string='Target model uses the need action mechanism',
help='If the menu entry action is an act_window action, and if this action is related to a model that uses the need_action mechanism, this field is set to true. Otherwise, it is false.'),
'action': fields.function(_action, fnct_inv=_action_inv,
- type='reference', string='Action',
+ type='reference', string='Action', size=21,
selection=[
('ir.actions.report.xml', 'ir.actions.report.xml'),
('ir.actions.act_window', 'ir.actions.act_window'),
diff --git a/openerp/addons/base/ir/ir_ui_view.py b/openerp/addons/base/ir/ir_ui_view.py
index 5ca4b26b046..04b551c1a89 100644
--- a/openerp/addons/base/ir/ir_ui_view.py
+++ b/openerp/addons/base/ir/ir_ui_view.py
@@ -475,7 +475,7 @@ class view(osv.osv):
node.getparent().remove(node)
elif pos == 'attributes':
for child in spec.getiterator('attribute'):
- attribute = (child.get('name'), child.text and child.text.encode('utf8') or None)
+ attribute = (child.get('name'), child.text or None)
if attribute[1]:
node.set(attribute[0], attribute[1])
elif attribute[0] in node.attrib:
diff --git a/openerp/addons/base/ir/ir_ui_view_view.xml b/openerp/addons/base/ir/ir_ui_view_view.xml
index 23c5275cc3b..61b5af9b06d 100644
--- a/openerp/addons/base/ir/ir_ui_view_view.xml
+++ b/openerp/addons/base/ir/ir_ui_view_view.xml
@@ -28,6 +28,15 @@
+
+
+
+
+
+
+
+
+
diff --git a/openerp/addons/base/ir/ir_values.py b/openerp/addons/base/ir/ir_values.py
index 6af09b7ecbb..41d781ac68f 100644
--- a/openerp/addons/base/ir/ir_values.py
+++ b/openerp/addons/base/ir/ir_values.py
@@ -139,8 +139,8 @@ class ir_values(osv.osv):
}
_columns = {
- 'name': fields.char('Name', size=128, required=True),
- 'model': fields.char('Model Name', size=128, select=True, required=True,
+ 'name': fields.char('Name', required=True),
+ 'model': fields.char('Model Name', select=True, required=True,
help="Model to which this entry applies"),
# TODO: model_id and action_id should be read-write function fields
@@ -158,10 +158,10 @@ class ir_values(osv.osv):
type='text',
string='Default value or action reference'),
'key': fields.selection([('action','Action'),('default','Default')],
- 'Type', size=128, select=True, required=True,
+ 'Type', select=True, required=True,
help="- Action: an action attached to one slot of the given model\n"
"- Default: a default value for a model field"),
- 'key2' : fields.char('Qualifier', size=128, select=True,
+ 'key2' : fields.char('Qualifier', select=True,
help="For actions, one of the possible action slots: \n"
" - client_action_multi\n"
" - client_print_multi\n"
diff --git a/openerp/addons/base/module/module.py b/openerp/addons/base/module/module.py
index df673f95b32..d0cb6b18f7b 100644
--- a/openerp/addons/base/module/module.py
+++ b/openerp/addons/base/module/module.py
@@ -97,7 +97,7 @@ class module_category(osv.osv):
return result
_columns = {
- 'name': fields.char("Name", size=128, required=True, translate=True, select=True),
+ 'name': fields.char("Name", required=True, translate=True, select=True),
'parent_id': fields.many2one('ir.module.category', 'Parent Application', select=True),
'child_ids': fields.one2many('ir.module.category', 'parent_id', 'Child Applications'),
'module_nr': fields.function(_module_nbr, string='Number of Modules', type='integer'),
@@ -105,7 +105,7 @@ class module_category(osv.osv):
'description': fields.text("Description", translate=True),
'sequence': fields.integer('Sequence'),
'visible': fields.boolean('Visible'),
- 'xml_id': fields.function(osv.osv.get_external_id, type='char', size=128, string="External ID"),
+ 'xml_id': fields.function(osv.osv.get_external_id, type='char', string="External ID"),
}
_order = 'name'
@@ -255,26 +255,26 @@ class module(osv.osv):
return res
_columns = {
- 'name': fields.char("Technical Name", size=128, readonly=True, required=True, select=True),
+ 'name': fields.char("Technical Name", readonly=True, required=True, select=True),
'category_id': fields.many2one('ir.module.category', 'Category', readonly=True, select=True),
- 'shortdesc': fields.char('Module Name', size=64, readonly=True, translate=True),
- 'summary': fields.char('Summary', size=64, readonly=True, translate=True),
+ 'shortdesc': fields.char('Module Name', readonly=True, translate=True),
+ 'summary': fields.char('Summary', readonly=True, translate=True),
'description': fields.text("Description", readonly=True, translate=True),
'description_html': fields.function(_get_desc, string='Description HTML', type='html', method=True, readonly=True),
- 'author': fields.char("Author", size=128, readonly=True),
- 'maintainer': fields.char('Maintainer', size=128, readonly=True),
+ 'author': fields.char("Author", readonly=True),
+ 'maintainer': fields.char('Maintainer', readonly=True),
'contributors': fields.text('Contributors', readonly=True),
- 'website': fields.char("Website", size=256, readonly=True),
+ 'website': fields.char("Website", readonly=True),
# attention: Incorrect field names !!
# installed_version refers the latest version (the one on disk)
# latest_version refers the installed version (the one in database)
# published_version refers the version available on the repository
'installed_version': fields.function(_get_latest_version, string='Latest Version', type='char'),
- 'latest_version': fields.char('Installed Version', size=64, readonly=True),
- 'published_version': fields.char('Published Version', size=64, readonly=True),
+ 'latest_version': fields.char('Installed Version', readonly=True),
+ 'published_version': fields.char('Published Version', readonly=True),
- 'url': fields.char('URL', size=128, readonly=True),
+ 'url': fields.char('URL', readonly=True),
'sequence': fields.integer('Sequence'),
'dependencies_id': fields.one2many('ir.module.module.dependency', 'module_id', 'Dependencies', readonly=True),
'auto_install': fields.boolean('Automatic Installation',
@@ -303,7 +303,7 @@ class module(osv.osv):
'reports_by_module': fields.function(_get_views, string='Reports', type='text', multi="meta", store=True),
'views_by_module': fields.function(_get_views, string='Views', type='text', multi="meta", store=True),
'application': fields.boolean('Application', readonly=True),
- 'icon': fields.char('Icon URL', size=128),
+ 'icon': fields.char('Icon URL'),
'icon_image': fields.function(_get_icon_image, string='Icon', type="binary"),
}
@@ -771,7 +771,7 @@ class module_dependency(osv.osv):
_columns = {
# The dependency name
- 'name': fields.char('Name', size=128, select=True),
+ 'name': fields.char('Name', select=True),
# The module that depends on it
'module_id': fields.many2one('ir.module.module', 'Module', select=True, ondelete='cascade'),
diff --git a/openerp/addons/base/module/wizard/base_import_language.py b/openerp/addons/base/module/wizard/base_import_language.py
index 0af1279e909..d8757605d64 100644
--- a/openerp/addons/base/module/wizard/base_import_language.py
+++ b/openerp/addons/base/module/wizard/base_import_language.py
@@ -31,7 +31,7 @@ class base_language_import(osv.osv_memory):
_name = "base.language.import"
_description = "Language Import"
_columns = {
- 'name': fields.char('Language Name', size=64 , required=True),
+ 'name': fields.char('Language Name', required=True),
'code': fields.char('ISO Code', size=5, help="ISO Language and Country code, e.g. en_US", required=True),
'data': fields.binary('File', required=True),
'overwrite': fields.boolean('Overwrite Existing Terms',
diff --git a/openerp/addons/base/module/wizard/base_module_upgrade.py b/openerp/addons/base/module/wizard/base_module_upgrade.py
index 365895be7ac..0f8781fcd6f 100644
--- a/openerp/addons/base/module/wizard/base_module_upgrade.py
+++ b/openerp/addons/base/module/wizard/base_module_upgrade.py
@@ -103,17 +103,7 @@ class base_module_upgrade(osv.osv_memory):
openerp.modules.registry.RegistryManager.new(cr.dbname, update_module=True)
- ir_model_data = self.pool.get('ir.model.data')
- __, res_id = ir_model_data.get_object_reference(cr, uid, 'base', 'view_base_module_upgrade_install')
- return {
- 'view_type': 'form',
- 'view_mode': 'form',
- 'res_model': 'base.module.upgrade',
- 'views': [(res_id, 'form')],
- 'view_id': False,
- 'type': 'ir.actions.act_window',
- 'target': 'new',
- }
+ return {'type': 'ir.actions.act_window_close'}
def config(self, cr, uid, ids, context=None):
return self.pool.get('res.config').next(cr, uid, [], context=context)
diff --git a/openerp/addons/base/module/wizard/base_module_upgrade_view.xml b/openerp/addons/base/module/wizard/base_module_upgrade_view.xml
index ae135b8fa90..98d1ee58a63 100644
--- a/openerp/addons/base/module/wizard/base_module_upgrade_view.xml
+++ b/openerp/addons/base/module/wizard/base_module_upgrade_view.xml
@@ -13,7 +13,7 @@
diff --git a/openerp/addons/base/res/ir_property.py b/openerp/addons/base/res/ir_property.py
index 543349c7899..7d4d115220f 100644
--- a/openerp/addons/base/res/ir_property.py
+++ b/openerp/addons/base/res/ir_property.py
@@ -33,9 +33,9 @@ class ir_property(osv.osv):
_name = 'ir.property'
_columns = {
- 'name': fields.char('Name', size=128, select=1),
+ 'name': fields.char('Name', select=1),
- 'res_id': fields.char('Resource', size=128, help="If not set, acts as a default value for new resources", select=1),
+ 'res_id': fields.char('Resource', help="If not set, acts as a default value for new resources", select=1),
'company_id': fields.many2one('res.company', 'Company', select=1),
'fields_id': fields.many2one('ir.model.fields', 'Field', ondelete='cascade', required=True, select=1),
@@ -43,7 +43,7 @@ class ir_property(osv.osv):
'value_integer' : fields.integer('Value'),
'value_text' : fields.text('Value'), # will contain (char, text)
'value_binary' : fields.binary('Value'),
- 'value_reference': fields.char('Value', size=128),
+ 'value_reference': fields.char('Value'),
'value_datetime' : fields.datetime('Value'),
'type' : fields.selection([('char', 'Char'),
diff --git a/openerp/addons/base/res/res_bank.py b/openerp/addons/base/res/res_bank.py
index e8477ec18ff..7b3f8ec3743 100644
--- a/openerp/addons/base/res/res_bank.py
+++ b/openerp/addons/base/res/res_bank.py
@@ -27,17 +27,17 @@ class Bank(osv.osv):
_name = 'res.bank'
_order = 'name'
_columns = {
- 'name': fields.char('Name', size=128, required=True),
- 'street': fields.char('Street', size=128),
- 'street2': fields.char('Street2', size=128),
+ 'name': fields.char('Name', required=True),
+ 'street': fields.char('Street'),
+ 'street2': fields.char('Street2'),
'zip': fields.char('Zip', change_default=True, size=24),
- 'city': fields.char('City', size=128),
+ 'city': fields.char('City'),
'state': fields.many2one("res.country.state", 'Fed. State',
domain="[('country_id', '=', country)]"),
'country': fields.many2one('res.country', 'Country'),
- 'email': fields.char('Email', size=64),
- 'phone': fields.char('Phone', size=64),
- 'fax': fields.char('Fax', size=64),
+ 'email': fields.char('Email'),
+ 'phone': fields.char('Phone'),
+ 'fax': fields.char('Fax'),
'active': fields.boolean('Active'),
'bic': fields.char('Bank Identifier Code', size=64,
help="Sometimes called BIC or Swift."),
@@ -56,7 +56,7 @@ class res_partner_bank_type(osv.osv):
_name = 'res.partner.bank.type'
_order = 'name'
_columns = {
- 'name': fields.char('Name', size=64, required=True, translate=True),
+ 'name': fields.char('Name', required=True, translate=True),
'code': fields.char('Code', size=64, required=True),
'field_ids': fields.one2many('res.partner.bank.type.field', 'bank_type_id', 'Type Fields'),
'format_layout': fields.text('Format Layout', translate=True)
@@ -70,7 +70,7 @@ class res_partner_bank_type_fields(osv.osv):
_name = 'res.partner.bank.type.field'
_order = 'name'
_columns = {
- 'name': fields.char('Field Name', size=64, required=True, translate=True),
+ 'name': fields.char('Field Name', required=True, translate=True),
'bank_type_id': fields.many2one('res.partner.bank.type', 'Bank Type', required=True, ondelete='cascade'),
'required': fields.boolean('Required'),
'readonly': fields.boolean('Readonly'),
@@ -113,15 +113,15 @@ class res_partner_bank(osv.osv):
return value
_columns = {
- 'name': fields.char('Bank Account', size=64), # to be removed in v6.2 ?
+ 'name': fields.char('Bank Account'), # to be removed in v6.2 ?
'acc_number': fields.char('Account Number', size=64, required=True),
'bank': fields.many2one('res.bank', 'Bank'),
'bank_bic': fields.char('Bank Identifier Code', size=16),
- 'bank_name': fields.char('Bank Name', size=32),
- 'owner_name': fields.char('Account Owner Name', size=128),
- 'street': fields.char('Street', size=128),
+ 'bank_name': fields.char('Bank Name'),
+ 'owner_name': fields.char('Account Owner Name'),
+ 'street': fields.char('Street'),
'zip': fields.char('Zip', change_default=True, size=24),
- 'city': fields.char('City', size=128),
+ 'city': fields.char('City'),
'country_id': fields.many2one('res.country', 'Country',
change_default=True),
'state_id': fields.many2one("res.country.state", 'Fed. State',
diff --git a/openerp/addons/base/res/res_company.py b/openerp/addons/base/res/res_company.py
index 64ab5676ca2..b3003199e5d 100644
--- a/openerp/addons/base/res/res_company.py
+++ b/openerp/addons/base/res/res_company.py
@@ -38,14 +38,14 @@ class multi_company_default(osv.osv):
_columns = {
'sequence': fields.integer('Sequence'),
- 'name': fields.char('Name', size=256, required=True, help='Name it to easily find a record'),
+ 'name': fields.char('Name', required=True, help='Name it to easily find a record'),
'company_id': fields.many2one('res.company', 'Main Company', required=True,
help='Company where the user is connected'),
'company_dest_id': fields.many2one('res.company', 'Default Company', required=True,
help='Company to store the current record'),
'object_id': fields.many2one('ir.model', 'Object', required=True,
help='Object affected by this rule'),
- 'expression': fields.char('Expression', size=256, required=True,
+ 'expression': fields.char('Expression', required=True,
help='Expression, must be True to match\nuse context.get or user (browse)'),
'field_id': fields.many2one('ir.model.fields', 'Field', help='Select field property'),
}
@@ -118,7 +118,7 @@ class res_company(osv.osv):
'child_ids': fields.one2many('res.company', 'parent_id', 'Child Companies'),
'partner_id': fields.many2one('res.partner', 'Partner', required=True),
'rml_header': fields.text('RML Header', required=True),
- 'rml_header1': fields.char('Company Tagline', size=200, help="Appears by default on the top right corner of your printed documents (report header)."),
+ 'rml_header1': fields.char('Company Tagline', help="Appears by default on the top right corner of your printed documents (report header)."),
'rml_header2': fields.text('RML Internal Header', required=True),
'rml_header3': fields.text('RML Internal Header for Landscape Reports', required=True),
'rml_footer': fields.text('Report Footer', help="Footer text displayed at the bottom of all reports."),
@@ -134,7 +134,7 @@ class res_company(osv.osv):
'currency_id': fields.many2one('res.currency', 'Currency', required=True),
'currency_ids': fields.one2many('res.currency', 'company_id', 'Currency'),
'user_ids': fields.many2many('res.users', 'res_company_users_rel', 'cid', 'user_id', 'Accepted Users'),
- 'account_no':fields.char('Account No.', size=64),
+ 'account_no':fields.char('Account No.'),
'street': fields.function(_get_address_data, fnct_inv=_set_address_data, size=128, type='char', string="Street", multi='address'),
'street2': fields.function(_get_address_data, fnct_inv=_set_address_data, size=128, type='char', string="Street2", multi='address'),
'zip': fields.function(_get_address_data, fnct_inv=_set_address_data, size=24, type='char', string="Zip", multi='address'),
diff --git a/openerp/addons/base/res/res_country.py b/openerp/addons/base/res/res_country.py
index df507dcbac9..10f82df2ee8 100644
--- a/openerp/addons/base/res/res_country.py
+++ b/openerp/addons/base/res/res_country.py
@@ -43,7 +43,7 @@ class Country(osv.osv):
_name = 'res.country'
_description = 'Country'
_columns = {
- 'name': fields.char('Country Name', size=64,
+ 'name': fields.char('Country Name',
help='The full name of the country.', required=True, translate=True),
'code': fields.char('Country Code', size=2,
help='The ISO country code in two chars.\n'
@@ -90,7 +90,7 @@ class CountryState(osv.osv):
_columns = {
'country_id': fields.many2one('res.country', 'Country',
required=True),
- 'name': fields.char('State Name', size=64, required=True,
+ 'name': fields.char('State Name', required=True,
help='Administrative divisions of a country. E.g. Fed. State, Departement, Canton'),
'code': fields.char('State Code', size=3,
help='The state code in max. three chars.', required=True),
diff --git a/openerp/addons/base/res/res_country_data.xml b/openerp/addons/base/res/res_country_data.xml
index eff97fb0aac..633b4cc42c4 100644
--- a/openerp/addons/base/res/res_country_data.xml
+++ b/openerp/addons/base/res/res_country_data.xml
@@ -283,7 +283,7 @@
Chile
cl
-
+
Cameroon
@@ -1080,7 +1080,7 @@
Poland
pl
-
+
Saint Pierre and Miquelon
@@ -1138,7 +1138,7 @@
Romania
ro
-
+
Serbia
@@ -1353,7 +1353,7 @@
Turkey
tr
-
+
Trinidad and Tobago
@@ -1414,7 +1414,7 @@
Uruguay
uy
-
+
Uzbekistan
diff --git a/openerp/addons/base/res/res_currency.py b/openerp/addons/base/res/res_currency.py
index d92969b564f..628333cffcd 100644
--- a/openerp/addons/base/res/res_currency.py
+++ b/openerp/addons/base/res/res_currency.py
@@ -66,7 +66,7 @@ class res_currency(osv.osv):
_description = "Currency"
_columns = {
# Note: 'code' column was removed as of v6.0, the 'name' should now hold the ISO code.
- 'name': fields.char('Currency', size=32, required=True, help="Currency Code (ISO 4217)"),
+ 'name': fields.char('Currency', size=3, required=True, help="Currency Code (ISO 4217)"),
'symbol': fields.char('Symbol', size=4, help="Currency sign, to be used when printing amounts."),
'rate': fields.function(_current_rate, string='Current Rate', digits=(12,6),
help='The rate of the currency to the currency of rate 1.'),
@@ -239,7 +239,7 @@ class res_currency_rate_type(osv.osv):
_name = "res.currency.rate.type"
_description = "Currency Rate Type"
_columns = {
- 'name': fields.char('Name', size=64, required=True, translate=True),
+ 'name': fields.char('Name', required=True, translate=True),
}
class res_currency_rate(osv.osv):
diff --git a/openerp/addons/base/res/res_currency_data.xml b/openerp/addons/base/res/res_currency_data.xml
index 3bf2c1b4473..77307d056c7 100644
--- a/openerp/addons/base/res/res_currency_data.xml
+++ b/openerp/addons/base/res/res_currency_data.xml
@@ -16,7 +16,6 @@
-
VEF
Bs.F
@@ -41,7 +40,6 @@
-
CHF
CHF
@@ -78,7 +76,6 @@
-
COP
$
@@ -115,7 +112,6 @@
-
HUF
Ft
@@ -462,15 +458,15 @@
- CRC
- 0.01
- 4
- ¢
+ CRC
+ 0.01
+ 4
+ ¢
- 691.3153
-
-
+ 691.3153
+
+
MUR
@@ -491,10 +487,10 @@
4
- 655.957
-
-
-
+ 655.957
+
+
+
XAF
@@ -503,10 +499,10 @@
4
- 655.957
-
-
-
+ 655.957
+
+
+
UGX
@@ -591,7 +587,7 @@
3.32
-
+
AMD
դր.
@@ -603,7 +599,7 @@
506.02
-
+
AWG
Afl.
@@ -615,7 +611,7 @@
0.45
-
+
AZN
m
@@ -627,7 +623,7 @@
0.96
-
+
BSD
B$
@@ -639,7 +635,7 @@
1.23
-
+
BHD
BD
@@ -651,7 +647,7 @@
0.46
-
+
BDT
৳
@@ -663,7 +659,7 @@
100.59
-
+
BBD
Bds$
@@ -675,7 +671,7 @@
2.46
-
+
BYR
BR
@@ -687,7 +683,7 @@
10228.19
-
+
BZD
BZ$
@@ -699,7 +695,7 @@
2.33
-
+
BMD
BD$
@@ -711,7 +707,7 @@
1.23
-
+
BTN
Nu.
@@ -723,7 +719,7 @@
67.81
-
+
BOB
Bs.
@@ -735,7 +731,7 @@
8.50
-
+
BAM
KM
@@ -747,7 +743,7 @@
1.96
-
+
BWP
P
@@ -759,7 +755,7 @@
9.45
-
+
BIF
FBu
@@ -771,7 +767,7 @@
1736.73
-
+
KHR
៛
@@ -783,7 +779,7 @@
5054.53
-
+
KYD
$
@@ -795,7 +791,7 @@
1.007
-
+
KMF
CF
@@ -807,7 +803,7 @@
492.23
-
+
CDF
Fr
@@ -819,7 +815,7 @@
1112.80
-
+
CUP
$
@@ -831,7 +827,7 @@
1.226
-
+
ANG
ƒ
@@ -843,7 +839,7 @@
2.11
-
+
CYP
£
@@ -855,7 +851,7 @@
0.475
-
+
DJF
Fdj
@@ -867,7 +863,7 @@
222.22
-
+
DOP
RD$
@@ -879,8 +875,8 @@
48.09
-
-
+
+
TPE
0.01
@@ -891,7 +887,7 @@
1.2535
-
+
ECS
S/.
@@ -903,7 +899,7 @@
30707.5
-
+
EGP
E£
@@ -915,7 +911,7 @@
7.46
-
+
SVC
¢
@@ -927,7 +923,7 @@
10.74
-
+
ERN
Nfk
@@ -939,7 +935,7 @@
18.89
-
+
ETB
Br
@@ -951,7 +947,7 @@
21.94
-
+
FKP
£
@@ -963,7 +959,7 @@
0.78
-
+
FJD
FJ$
@@ -975,7 +971,7 @@
2.22
-
+
GEL
ლ
@@ -987,7 +983,7 @@
2.018
-
+
GIP
£
@@ -999,7 +995,7 @@
0.786
-
+
QTQ
Q
@@ -1011,7 +1007,7 @@
9.8827
-
+
GNF
FG
@@ -1023,7 +1019,7 @@
8835.85
-
+
GWP
0.01
@@ -1034,7 +1030,7 @@
659.30
-
+
GYD
$
@@ -1046,7 +1042,7 @@
247.31
-
+
HTG
G
@@ -1058,7 +1054,7 @@
51.69
-
+
ISK
kr
@@ -1070,7 +1066,7 @@
158.70
-
+
IRR
﷼
@@ -1082,7 +1078,7 @@
15059.97
-
+
IQD
ع.د
@@ -1094,7 +1090,7 @@
1432.27
-
+
ILS
₪
@@ -1106,7 +1102,7 @@
4.89
-
+
JMD
$
@@ -1118,7 +1114,7 @@
108.94
-
+
JOD
د.ا
@@ -1130,7 +1126,7 @@
0.87
-
+
KZT
лв
@@ -1142,7 +1138,7 @@
184.09
-
+
KES
KSh
@@ -1154,7 +1150,7 @@
103.43
-
+
KWD
د.ك
@@ -1166,7 +1162,7 @@
0.35
-
+
KGS
лв
@@ -1178,7 +1174,7 @@
57.93
-
+
LAK
₭
@@ -1190,7 +1186,7 @@
9847.72
-
+
LBP
ل.ل
@@ -1202,7 +1198,7 @@
1853.94
-
+
LSL
L
@@ -1214,7 +1210,7 @@
10.06
-
+
LRD
L$
@@ -1226,7 +1222,7 @@
90.28
-
+
LYD
ل.د
@@ -1238,7 +1234,7 @@
1.54
-
+
MOP
MOP$
@@ -1250,7 +1246,7 @@
9.81
-
+
MKD
ден
@@ -1262,10 +1258,10 @@
60.29
-
+
MGA
- Ar
+ Ar
0.01
4
@@ -1274,7 +1270,7 @@
2775.86
-
+
MWK
MK
@@ -1286,7 +1282,7 @@
329.79
-
+
MVR
.ރ
@@ -1298,7 +1294,7 @@
18.89
-
+
MRO
UM
@@ -1310,7 +1306,7 @@
362.23
-
+
MDL
L
@@ -1322,7 +1318,7 @@
15.27
-
+
MNT
₮
@@ -1334,7 +1330,7 @@
1643.57
-
+
MAD
د.م.
@@ -1346,7 +1342,7 @@
10.9962499
-
+
BND
$
@@ -1358,7 +1354,7 @@
1.54
-
+
DZD
DZ
@@ -1370,7 +1366,7 @@
99.65
-
+
GHS
GH¢
@@ -1382,7 +1378,7 @@
2.39
-
+
GMD
D
@@ -1394,7 +1390,7 @@
38.89
-
+
ZRZ
Ƶ
@@ -1406,7 +1402,7 @@
1148948.76
-
+
MZN
MT
@@ -1418,7 +1414,7 @@
33.65
-
+
MMK
K
@@ -1430,7 +1426,7 @@
1080.82
-
+
NAD
$
@@ -1442,7 +1438,7 @@
10.06
-
+
NPR
₨
@@ -1454,7 +1450,7 @@
108.33
-
+
ALL
L
@@ -1466,7 +1462,7 @@
138.00
-
+
NIO
C$
@@ -1478,7 +1474,7 @@
28.97
-
+
NGN
₦
@@ -1490,7 +1486,7 @@
196.77
-
+
KPW
₩
@@ -1513,7 +1509,7 @@
460.93
-
+
ZMK
@@ -1540,7 +1536,7 @@
- VEB
+ VUB
Bs
0.01
4
@@ -1573,7 +1569,7 @@
114.024315363
-
+
UZS
@@ -1587,18 +1583,6 @@
2331.3093
-
- UYP
- $U
- 0.01
- 4
-
-
-
-
- 26.91
-
-
AED
د.إ
@@ -1637,7 +1621,7 @@
TRL
- TL
+ TL
0.01
4
@@ -1646,7 +1630,7 @@
2.255
-
+
TND
DT
@@ -1657,7 +1641,7 @@
34.0661408
-
+
TTD
@@ -1705,7 +1689,7 @@
1947.06815
-
+
TJR
@@ -1716,7 +1700,7 @@
5.95
-
+
TWD
@@ -1728,11 +1712,11 @@
36.8329536
-
+
SYP
- £
+ £
0.01
4
@@ -1740,7 +1724,7 @@
78.8338
-
+
SZL
@@ -1753,7 +1737,7 @@
10.07
-
+
SRG
$
@@ -1765,10 +1749,10 @@
3980.29
-
+
SDD
- £Sd
+ £Sd
0.01
4
@@ -1777,7 +1761,7 @@
544.44
-
+
LKR
Rs
@@ -1788,11 +1772,11 @@
163.552526
-
+
SSP
- £
+ £
0.01
4
@@ -1800,11 +1784,11 @@
5.528
-
+
GBP
- £
+ £
0.01
4
before
@@ -1813,11 +1797,11 @@
0.784221994
-
+
SOD
- Sh.
+ Sh.
0.01
4
@@ -1829,7 +1813,7 @@
SBD
- SI$
+ SI$
0.01
4
@@ -1841,7 +1825,7 @@
SLL
- Le
+ Le
0.01
4
@@ -1853,7 +1837,7 @@
SCR
- SR
+ SR
0.01
4
@@ -1865,7 +1849,7 @@
RSD
- din.
+ din.
0.01
4
@@ -1877,7 +1861,7 @@
SAR
- SR
+ SR
0.01
4
@@ -1885,11 +1869,11 @@
4.58898972
-
+
STD
- Db
+ Db
0.01
4
@@ -1897,11 +1881,11 @@
24105.86
-
+
ITL
- ₤
+ ₤
0.01
4
@@ -1913,7 +1897,7 @@
WST
- WS$
+ WS$
0.01
4
@@ -1921,11 +1905,11 @@
2.8628
-
+
SHP
- £
+ £
0.01
4
@@ -1937,7 +1921,7 @@
RWF
- RF
+ RF
0.01
4
@@ -1945,11 +1929,11 @@
752.57
-
+
RUR
- R
+ R
0.01
4
@@ -1961,7 +1945,7 @@
ROL
- L
+ L
0.01
4
@@ -1973,7 +1957,7 @@
QAR
- QR
+ QR
0.01
4
@@ -1985,7 +1969,7 @@
PLZ
- zł
+ zł
0.01
4
@@ -1997,7 +1981,7 @@
PEN
- S/.
+ S/.
0.01
4
@@ -2005,11 +1989,11 @@
3.20731573
-
+
PYG
- ₲
+ ₲
0.01
4
@@ -2017,11 +2001,11 @@
5343.66812
-
+
PGK
- K
+ K
0.01
4
@@ -2029,11 +2013,11 @@
2.5903895
-
+
PKR
- Rs.
+ Rs.
0.01
4
@@ -2041,11 +2025,11 @@
115.97432
-
+
OMR
- ر.ع.
+ ر.ع.
0.01
4
@@ -2057,7 +2041,7 @@
CVE
- $
+ $
0.01
4
@@ -2065,11 +2049,11 @@
0.61
-
+
SKK
- Sk
+ Sk
0.01
4
@@ -2092,7 +2076,7 @@
YUM
- дин.
+ дин.
0.01
4
@@ -2100,7 +2084,31 @@
1.96
-
-
+
+
+
+ GTQ
+ Q
+ 0.01
+ 4
+
+
+
+ 11.2020
+
+
+
+
+
+ XOF
+ CFA
+ 1
+ 4
+
+
+ 655.957
+
+
+
diff --git a/openerp/addons/base/res/res_lang.py b/openerp/addons/base/res/res_lang.py
index 11a115ba009..75ce0066ede 100644
--- a/openerp/addons/base/res/res_lang.py
+++ b/openerp/addons/base/res/res_lang.py
@@ -130,17 +130,17 @@ class lang(osv.osv):
return '%H:%M:%S'
_columns = {
- 'name': fields.char('Name', size=64, required=True),
+ 'name': fields.char('Name', required=True),
'code': fields.char('Locale Code', size=16, required=True, help='This field is used to set/get locales for user'),
'iso_code': fields.char('ISO code', size=16, required=False, help='This ISO code is the name of po files to use for translations'),
'translatable': fields.boolean('Translatable'),
'active': fields.boolean('Active'),
- 'direction': fields.selection([('ltr', 'Left-to-Right'), ('rtl', 'Right-to-Left')], 'Direction',required=True),
- 'date_format':fields.char('Date Format',size=64,required=True),
- 'time_format':fields.char('Time Format',size=64,required=True),
- 'grouping':fields.char('Separator Format',size=64,required=True,help="The Separator Format should be like [,n] where 0 < n :starting from Unit digit.-1 will end the separation. e.g. [3,2,-1] will represent 106500 to be 1,06,500;[1,2,-1] will represent it to be 106,50,0;[3] will represent it as 106,500. Provided ',' as the thousand separator in each case."),
- 'decimal_point':fields.char('Decimal Separator', size=64,required=True),
- 'thousands_sep':fields.char('Thousands Separator',size=64),
+ 'direction': fields.selection([('ltr', 'Left-to-Right'), ('rtl', 'Right-to-Left')], 'Direction', required=True),
+ 'date_format':fields.char('Date Format', required=True),
+ 'time_format':fields.char('Time Format', required=True),
+ 'grouping':fields.char('Separator Format', required=True,help="The Separator Format should be like [,n] where 0 < n :starting from Unit digit.-1 will end the separation. e.g. [3,2,-1] will represent 106500 to be 1,06,500;[1,2,-1] will represent it to be 106,50,0;[3] will represent it as 106,500. Provided ',' as the thousand separator in each case."),
+ 'decimal_point':fields.char('Decimal Separator', required=True),
+ 'thousands_sep':fields.char('Thousands Separator'),
}
_defaults = {
'active': 1,
diff --git a/openerp/addons/base/res/res_partner.py b/openerp/addons/base/res/res_partner.py
index b2792fb254b..acb1a33ea4a 100644
--- a/openerp/addons/base/res/res_partner.py
+++ b/openerp/addons/base/res/res_partner.py
@@ -124,7 +124,7 @@ class res_partner_category(osv.osv):
_description = 'Partner Tags'
_name = 'res.partner.category'
_columns = {
- 'name': fields.char('Category Name', required=True, size=64, translate=True),
+ 'name': fields.char('Category Name', required=True, translate=True),
'parent_id': fields.many2one('res.partner.category', 'Parent Category', select=True, ondelete='cascade'),
'complete_name': fields.function(_name_get_fnc, type="char", string='Full Name'),
'child_ids': fields.one2many('res.partner.category', 'parent_id', 'Child Categories'),
@@ -147,9 +147,9 @@ class res_partner_title(osv.osv):
_name = 'res.partner.title'
_order = 'name'
_columns = {
- 'name': fields.char('Title', required=True, size=46, translate=True),
- 'shortcut': fields.char('Abbreviation', size=16, translate=True),
- 'domain': fields.selection([('partner', 'Partner'), ('contact', 'Contact')], 'Domain', required=True, size=24)
+ 'name': fields.char('Title', required=True, translate=True),
+ 'shortcut': fields.char('Abbreviation', translate=True),
+ 'domain': fields.selection([('partner', 'Partner'), ('contact', 'Contact')], 'Domain', required=True)
}
_defaults = {
'domain': 'contact',
@@ -229,13 +229,13 @@ class res_partner(osv.osv, format_address):
_order = "display_name"
_columns = {
- 'name': fields.char('Name', size=128, required=True, select=True),
+ 'name': fields.char('Name', required=True, select=True),
'display_name': fields.function(_display_name, type='char', string='Name', store=_display_name_store_triggers, select=True),
'date': fields.date('Date', select=1),
'title': fields.many2one('res.partner.title', 'Title'),
'parent_id': fields.many2one('res.partner', 'Related Company', select=True),
'child_ids': fields.one2many('res.partner', 'parent_id', 'Contacts', domain=[('active','=',True)]), # force "active_test" domain to bypass _search() override
- 'ref': fields.char('Contact Reference', size=64, select=1),
+ 'ref': fields.char('Contact Reference', select=1),
'lang': fields.selection(_lang_get, 'Language',
help="If the selected language is loaded in the system, all documents related to this contact will be printed in this language. If not, it will be English."),
'tz': fields.selection(_tz_get, 'Timezone', size=64,
@@ -244,9 +244,9 @@ class res_partner(osv.osv, format_address):
"that is otherwise used to pick and render date and time values: your computer's timezone."),
'tz_offset': fields.function(_get_tz_offset, type='char', size=5, string='Timezone offset', invisible=True),
'user_id': fields.many2one('res.users', 'Salesperson', help='The internal user that is in charge of communicating with this contact if any.'),
- 'vat': fields.char('TIN', size=32, help="Tax Identification Number. Check the box if this contact is subjected to taxes. Used by the some of the legal statements."),
+ 'vat': fields.char('TIN', help="Tax Identification Number. Check the box if this contact is subjected to taxes. Used by the some of the legal statements."),
'bank_ids': fields.one2many('res.partner.bank', 'partner_id', 'Banks'),
- 'website': fields.char('Website', size=64, help="Website of Partner or Company"),
+ 'website': fields.char('Website', help="Website of Partner or Company"),
'comment': fields.text('Notes'),
'category_id': fields.many2many('res.partner.category', id1='partner_id', id2='category_id', string='Tags'),
'credit_limit': fields.float(string='Credit Limit'),
@@ -255,22 +255,24 @@ class res_partner(osv.osv, format_address):
'customer': fields.boolean('Customer', help="Check this box if this contact is a customer."),
'supplier': fields.boolean('Supplier', help="Check this box if this contact is a supplier. If it's not checked, purchase people will not see it when encoding a purchase order."),
'employee': fields.boolean('Employee', help="Check this box if this contact is an Employee."),
- 'function': fields.char('Job Position', size=128),
+ 'function': fields.char('Job Position'),
'type': fields.selection([('default', 'Default'), ('invoice', 'Invoice'),
('delivery', 'Shipping'), ('contact', 'Contact'),
('other', 'Other')], 'Address Type',
help="Used to select automatically the right address according to the context in sales and purchases documents."),
- 'street': fields.char('Street', size=128),
- 'street2': fields.char('Street2', size=128),
- 'zip': fields.char('Zip', change_default=True, size=24),
- 'city': fields.char('City', size=128),
+ 'street': fields.char('Street'),
+ 'street2': fields.char('Street2'),
+ 'zip': fields.char('Zip', size=24, change_default=True),
+ 'city': fields.char('City'),
'state_id': fields.many2one("res.country.state", 'State', ondelete='restrict'),
'country_id': fields.many2one('res.country', 'Country', ondelete='restrict'),
- 'email': fields.char('Email', size=240),
- 'phone': fields.char('Phone', size=64),
- 'fax': fields.char('Fax', size=64),
- 'mobile': fields.char('Mobile', size=64),
- 'birthdate': fields.char('Birthdate', size=64),
+ 'country': fields.related('country_id', type='many2one', relation='res.country', string='Country',
+ deprecated="This field will be removed as of OpenERP 7.1, use country_id instead"),
+ 'email': fields.char('Email'),
+ 'phone': fields.char('Phone'),
+ 'fax': fields.char('Fax'),
+ 'mobile': fields.char('Mobile'),
+ 'birthdate': fields.char('Birthdate'),
'is_company': fields.boolean('Is a Company', help="Check if the contact is a company, otherwise it is a person"),
'use_parent_address': fields.boolean('Use Company Address', help="Select this if you want to set company's address information for this contact"),
# image: all image fields are base64 encoded and PIL-supported
diff --git a/openerp/addons/base/res/res_request.py b/openerp/addons/base/res/res_request.py
index a565f3c7844..5b49ca5aa7e 100644
--- a/openerp/addons/base/res/res_request.py
+++ b/openerp/addons/base/res/res_request.py
@@ -30,8 +30,8 @@ def referencable_models(self, cr, uid, context=None):
class res_request_link(osv.osv):
_name = 'res.request.link'
_columns = {
- 'name': fields.char('Name', size=64, required=True, translate=True),
- 'object': fields.char('Object', size=64, required=True),
+ 'name': fields.char('Name', required=True, translate=True),
+ 'object': fields.char('Object', required=True),
'priority': fields.integer('Priority'),
}
_defaults = {
diff --git a/openerp/addons/base/res/res_users.py b/openerp/addons/base/res/res_users.py
index 8505be0e59e..c814155d1db 100644
--- a/openerp/addons/base/res/res_users.py
+++ b/openerp/addons/base/res/res_users.py
@@ -86,7 +86,7 @@ class res_groups(osv.osv):
return where
_columns = {
- 'name': fields.char('Name', size=64, required=True, translate=True),
+ 'name': fields.char('Name', required=True, translate=True),
'users': fields.many2many('res.users', 'res_groups_users_rel', 'gid', 'uid', 'Users'),
'model_access': fields.one2many('ir.model.access', 'group_id', 'Access Controls'),
'rule_groups': fields.many2many('ir.rule', 'rule_group_rel',
@@ -172,7 +172,7 @@ class res_users(osv.osv):
help="Specify a value only when creating a user or if you're "\
"changing the user's password, otherwise leave empty. After "\
"a change of password, the user has to login again."),
- 'signature': fields.text('Signature'),
+ 'signature': fields.html('Signature'),
'active': fields.boolean('Active'),
'action_id': fields.many2one('ir.actions.actions', 'Home Action', help="If specified, this action will be opened at log on for this user, in addition to the standard menu."),
'groups_id': fields.many2many('res.groups', 'res_groups_users_rel', 'uid', 'gid', 'Groups'),
diff --git a/openerp/addons/base/security/base_security.xml b/openerp/addons/base/security/base_security.xml
index 755e20c3832..962b21e6c77 100644
--- a/openerp/addons/base/security/base_security.xml
+++ b/openerp/addons/base/security/base_security.xml
@@ -98,6 +98,16 @@
['|','|',('company_id.child_ids','child_of',[user.company_id.id]),('company_id','child_of',[user.company_id.id]),('company_id','=',False)]
+
+ ICP read rule
+
+ ['|',('group_ids','in', [g.id for g in user.groups_id]), ('group_ids','=',False)]
+
+
+
+
+
+
multi-company currency rule
diff --git a/openerp/addons/base/workflow/workflow.py b/openerp/addons/base/workflow/workflow.py
index 23ecbea8c13..3fd943c54a8 100644
--- a/openerp/addons/base/workflow/workflow.py
+++ b/openerp/addons/base/workflow/workflow.py
@@ -28,8 +28,8 @@ class workflow(osv.osv):
_table = "wkf"
_order = "name"
_columns = {
- 'name': fields.char('Name', size=64, required=True),
- 'osv': fields.char('Resource Object', size=64, required=True,select=True),
+ 'name': fields.char('Name', required=True),
+ 'osv': fields.char('Resource Object', required=True,select=True),
'on_create': fields.boolean('On Create', select=True),
'activities': fields.one2many('workflow.activity', 'wkf_id', 'Activities'),
}
@@ -71,17 +71,17 @@ class wkf_activity(osv.osv):
_table = "wkf_activity"
_order = "name"
_columns = {
- 'name': fields.char('Name', size=64, required=True),
+ 'name': fields.char('Name', required=True),
'wkf_id': fields.many2one('workflow', 'Workflow', required=True, select=True, ondelete='cascade'),
'split_mode': fields.selection([('XOR', 'Xor'), ('OR','Or'), ('AND','And')], 'Split Mode', size=3, required=True),
'join_mode': fields.selection([('XOR', 'Xor'), ('AND', 'And')], 'Join Mode', size=3, required=True),
- 'kind': fields.selection([('dummy', 'Dummy'), ('function', 'Function'), ('subflow', 'Subflow'), ('stopall', 'Stop All')], 'Kind', size=64, required=True),
+ 'kind': fields.selection([('dummy', 'Dummy'), ('function', 'Function'), ('subflow', 'Subflow'), ('stopall', 'Stop All')], 'Kind', required=True),
'action': fields.text('Python Action'),
'action_id': fields.many2one('ir.actions.server', 'Server Action', ondelete='set null'),
'flow_start': fields.boolean('Flow Start'),
'flow_stop': fields.boolean('Flow Stop'),
'subflow_id': fields.many2one('workflow', 'Subflow'),
- 'signal_send': fields.char('Signal (subflow.*)', size=32),
+ 'signal_send': fields.char('Signal (subflow.*)'),
'out_transitions': fields.one2many('workflow.transition', 'act_from', 'Outgoing Transitions'),
'in_transitions': fields.one2many('workflow.transition', 'act_to', 'Incoming Transitions'),
}
@@ -105,14 +105,14 @@ class wkf_transition(osv.osv):
_name = "workflow.transition"
_rec_name = 'signal'
_columns = {
- 'trigger_model': fields.char('Trigger Object', size=128),
- 'trigger_expr_id': fields.char('Trigger Expression', size=128),
- 'signal': fields.char('Signal (Button Name)', size=64,
+ 'trigger_model': fields.char('Trigger Object'),
+ 'trigger_expr_id': fields.char('Trigger Expression'),
+ 'signal': fields.char('Signal (Button Name)',
help="When the operation of transition comes from a button pressed in the client form, "\
"signal tests the name of the pressed button. If signal is NULL, no button is necessary to validate this transition."),
'group_id': fields.many2one('res.groups', 'Group Required',
help="The group that a user must have to be authorized to validate this transition."),
- 'condition': fields.char('Condition', required=True, size=128,
+ 'condition': fields.char('Condition', required=True,
help="Expression to be satisfied if we want the transition done."),
'act_from': fields.many2one('workflow.activity', 'Source Activity', required=True, select=True, ondelete='cascade',
help="Source activity. When this activity is over, the condition is tested to determine if we can start the ACT_TO activity."),
@@ -147,8 +147,8 @@ class wkf_instance(osv.osv):
'uid': fields.integer('User'), # FIXME no constraint??
'wkf_id': fields.many2one('workflow', 'Workflow', ondelete='cascade', select=True),
'res_id': fields.integer('Resource ID'),
- 'res_type': fields.char('Resource Object', size=64),
- 'state': fields.char('Status', size=32),
+ 'res_type': fields.char('Resource Object'),
+ 'state': fields.char('Status'),
'transition_ids': fields.many2many('workflow.transition', 'wkf_witm_trans', 'inst_id', 'trans_id'),
}
def _auto_init(self, cr, context=None):
@@ -172,7 +172,7 @@ class wkf_workitem(osv.osv):
'wkf_id': fields.related('act_id','wkf_id', type='many2one', relation='workflow', string='Workflow'),
'subflow_id': fields.many2one('workflow.instance', 'Subflow', ondelete="cascade", select=True),
'inst_id': fields.many2one('workflow.instance', 'Instance', required=True, ondelete="cascade", select=True),
- 'state': fields.char('Status', size=64, select=True),
+ 'state': fields.char('Status', select=True),
}
wkf_workitem()
@@ -182,7 +182,7 @@ class wkf_triggers(osv.osv):
_log_access = False
_columns = {
'res_id': fields.integer('Resource ID', size=128),
- 'model': fields.char('Object', size=128),
+ 'model': fields.char('Object'),
'instance_id': fields.many2one('workflow.instance', 'Destination Instance', ondelete="cascade"),
'workitem_id': fields.many2one('workflow.workitem', 'Workitem', required=True, ondelete="cascade"),
}
diff --git a/openerp/addons/test_uninstall/models.py b/openerp/addons/test_uninstall/models.py
index 96a5800917d..73091ccba6b 100644
--- a/openerp/addons/test_uninstall/models.py
+++ b/openerp/addons/test_uninstall/models.py
@@ -11,7 +11,7 @@ class test_uninstall_model(Model):
_name = 'test_uninstall.model'
_columns = {
- 'name': fields.char('Name', size=64),
+ 'name': fields.char('Name'),
'ref': fields.many2one('res.users', string='User'),
'rel': fields.many2many('res.users', string='Users'),
}
diff --git a/openerp/http.py b/openerp/http.py
index fcbd2581350..d8c1874dd79 100644
--- a/openerp/http.py
+++ b/openerp/http.py
@@ -1266,7 +1266,10 @@ class Root(object):
request = self.get_request(httprequest)
def _dispatch_nodb():
- func, arguments = self.nodb_routing_map.bind_to_environ(request.httprequest.environ).match()
+ try:
+ func, arguments = self.nodb_routing_map.bind_to_environ(request.httprequest.environ).match()
+ except werkzeug.exceptions.HTTPException, e:
+ return request._handle_exception(e)
request.set_handler(func, arguments, "none")
result = request.dispatch()
return result
diff --git a/openerp/modules/loading.py b/openerp/modules/loading.py
index 2b9fca6fca9..b8d52416514 100644
--- a/openerp/modules/loading.py
+++ b/openerp/modules/loading.py
@@ -215,7 +215,7 @@ def load_module_graph(cr, graph, status=None, perform_checks=True, skip_modules=
# Set new modules and dependencies
modobj.write(cr, SUPERUSER_ID, [module_id], {'state': 'installed', 'latest_version': ver})
# Update translations for all installed languages
- modobj.update_translations(cr, SUPERUSER_ID, [module_id], None)
+ modobj.update_translations(cr, SUPERUSER_ID, [module_id], None, {'overwrite': openerp.tools.config["overwrite_existing_translations"]})
package.state = 'installed'
for kind in ('init', 'demo', 'update'):
diff --git a/openerp/osv/expression.py b/openerp/osv/expression.py
index d3231c54462..58999e751fd 100644
--- a/openerp/osv/expression.py
+++ b/openerp/osv/expression.py
@@ -1036,34 +1036,30 @@ class expression(object):
unaccent = self._unaccent if sql_operator.endswith('like') else lambda x: x
- trans_left = unaccent('value')
- quote_left = unaccent(_quote(left))
instr = unaccent('%s')
if sql_operator == 'in':
# params will be flatten by to_sql() => expand the placeholders
instr = '(%s)' % ', '.join(['%s'] * len(right))
- subselect = """(SELECT res_id
- FROM ir_translation
- WHERE name = %s
- AND lang = %s
- AND type = %s
- AND {trans_left} {operator} {right}
- ) UNION (
- SELECT id
- FROM "{table}"
- WHERE {left} {operator} {right}
- )
- """.format(trans_left=trans_left, operator=sql_operator,
- right=instr, table=working_model._table, left=quote_left)
+ subselect = """WITH temp_irt_current (id, name) as (
+ SELECT ct.id, coalesce(it.value,ct.{quote_left})
+ FROM {current_table} ct
+ LEFT JOIN ir_translation it ON (it.name = %s and
+ it.lang = %s and
+ it.type = %s and
+ it.res_id = ct.id and
+ it.value != '')
+ )
+ SELECT id FROM temp_irt_current WHERE {name} {operator} {right} order by name
+ """.format(current_table=working_model._table, quote_left=_quote(left), name=unaccent('name'),
+ operator=sql_operator, right=instr)
params = (
working_model._name + ',' + left,
context.get('lang') or 'en_US',
'model',
right,
- right,
)
push(create_substitution_leaf(leaf, ('id', inselect_operator, (subselect, params)), working_model))
diff --git a/openerp/osv/fields.py b/openerp/osv/fields.py
index 0eae4185aeb..89601ad0709 100644
--- a/openerp/osv/fields.py
+++ b/openerp/osv/fields.py
@@ -1556,7 +1556,8 @@ class property(function):
default_val = self._get_default(obj, cr, uid, prop_name, context)
property_create = False
- if isinstance(default_val, openerp.osv.orm.browse_record):
+ if isinstance(default_val, (openerp.osv.orm.browse_record,
+ openerp.osv.orm.browse_null)):
if default_val.id != id_val:
property_create = True
elif default_val != id_val:
diff --git a/openerp/osv/orm.py b/openerp/osv/orm.py
index 4289d6660f8..7fe2cf31a40 100644
--- a/openerp/osv/orm.py
+++ b/openerp/osv/orm.py
@@ -3860,7 +3860,7 @@ class BaseModel(object):
parents_changed = []
parent_order = self._parent_order or self._order
- if self._parent_store and (self._parent_name in vals):
+ if self._parent_store and (self._parent_name in vals) and not context.get('defer_parent_store_computation'):
# The parent_left/right computation may take up to
# 5 seconds. No need to recompute the values if the
# parent is the same.
diff --git a/openerp/report/report_sxw.py b/openerp/report/report_sxw.py
index b4f90126b92..f98261b0833 100644
--- a/openerp/report/report_sxw.py
+++ b/openerp/report/report_sxw.py
@@ -241,8 +241,10 @@ class rml_parse(object):
def _get_lang_dict(self):
pool_lang = self.pool['res.lang']
lang = self.localcontext.get('lang', 'en_US') or 'en_US'
- lang_ids = pool_lang.search(self.cr,self.uid,[('code','=',lang)])[0]
- lang_obj = pool_lang.browse(self.cr,self.uid,lang_ids)
+ lang_ids = pool_lang.search(self.cr,self.uid,[('code','=',lang)])
+ if not lang_ids:
+ lang_ids = pool_lang.search(self.cr,self.uid,[('code','=','en_US')])
+ lang_obj = pool_lang.browse(self.cr,self.uid,lang_ids[0])
self.lang_dict.update({'lang_obj':lang_obj,'date_format':lang_obj.date_format,'time_format':lang_obj.time_format})
self.default_lang[lang] = self.lang_dict.copy()
return True
diff --git a/openerp/service/db.py b/openerp/service/db.py
index de083f5b8ed..33bfc910ebf 100644
--- a/openerp/service/db.py
+++ b/openerp/service/db.py
@@ -156,6 +156,24 @@ def exp_get_progress(id):
exc, tb = a['exception'], a['traceback']
raise Exception, exc, tb
+
+def _drop_conn(cr, db_name):
+ # Try to terminate all other connections that might prevent
+ # dropping the database
+ try:
+ # PostgreSQL 9.2 renamed pg_stat_activity.procpid to pid:
+ # http://www.postgresql.org/docs/9.2/static/release-9-2.html#AEN110389
+ pid_col = 'pid' if cr._cnx.server_version >= 90200 else 'procpid'
+
+ cr.execute("""SELECT pg_terminate_backend(%(pid_col)s)
+ FROM pg_stat_activity
+ WHERE datname = %%s AND
+ %(pid_col)s != pg_backend_pid()""" % {'pid_col': pid_col},
+ (db_name,))
+ except Exception:
+ pass
+
+
def exp_drop(db_name):
if db_name not in exp_list(True):
return False
@@ -164,21 +182,8 @@ def exp_drop(db_name):
db = openerp.sql_db.db_connect('postgres')
with closing(db.cursor()) as cr:
- cr.autocommit(True) # avoid transaction block
- # Try to terminate all other connections that might prevent
- # dropping the database
- try:
- # PostgreSQL 9.2 renamed pg_stat_activity.procpid to pid:
- # http://www.postgresql.org/docs/9.2/static/release-9-2.html#AEN110389
- pid_col = 'pid' if cr._cnx.server_version >= 90200 else 'procpid'
-
- cr.execute("""SELECT pg_terminate_backend(%(pid_col)s)
- FROM pg_stat_activity
- WHERE datname = %%s AND
- %(pid_col)s != pg_backend_pid()""" % {'pid_col': pid_col},
- (db_name,))
- except Exception:
- pass
+ cr.autocommit(True) # avoid transaction block
+ _drop_conn(cr, db_name)
try:
cr.execute('DROP DATABASE "%s"' % db_name)
@@ -335,6 +340,7 @@ def exp_rename(old_name, new_name):
db = openerp.sql_db.db_connect('postgres')
with closing(db.cursor()) as cr:
cr.autocommit(True) # avoid transaction block
+ _drop_conn(cr, old_name)
try:
cr.execute('ALTER DATABASE "%s" RENAME TO "%s"' % (old_name, new_name))
_logger.info('RENAME DB: %s -> %s', old_name, new_name)
diff --git a/openerp/service/server.py b/openerp/service/server.py
index c0dc15caab7..e89284a060a 100644
--- a/openerp/service/server.py
+++ b/openerp/service/server.py
@@ -130,14 +130,14 @@ class AutoReload(object):
self.handler = EventHandler(self)
self.notifier = pyinotify.Notifier(self.wm, self.handler, timeout=0)
mask = pyinotify.IN_MODIFY | pyinotify.IN_CREATE # IN_MOVED_FROM, IN_MOVED_TO ?
- for path in openerp.modules.modules.ad_paths:
+ for path in openerp.modules.module.ad_paths:
_logger.info('Watching addons folder %s', path)
self.wm.add_watch(path, mask, rec=True)
def process_data(self, files):
xml_files = [i for i in files if i.endswith('.xml')]
for i in xml_files:
- for path in openerp.modules.modules.ad_paths:
+ for path in openerp.modules.module.ad_paths:
if i.startswith(path):
# find out wich addons path the file belongs to
# and extract it's module name
@@ -470,7 +470,7 @@ class PreforkServer(CommonServer):
cmd = nargs[0]
cmd = os.path.join(os.path.dirname(cmd), "openerp-gevent")
nargs[0] = cmd
- popen = subprocess.Popen(nargs)
+ popen = subprocess.Popen([sys.executable] + nargs)
self.long_polling_pid = popen.pid
def worker_pop(self, pid):
diff --git a/openerp/tests/common.py b/openerp/tests/common.py
index 1d9841692e7..658ef89423d 100644
--- a/openerp/tests/common.py
+++ b/openerp/tests/common.py
@@ -16,6 +16,8 @@ import unittest2
import urllib2
import xmlrpclib
from datetime import datetime, timedelta
+from shutil import rmtree
+from tempfile import mkdtemp
import werkzeug
@@ -149,8 +151,10 @@ class HttpCase(TransactionCase):
self.session_id = self.session.sid
self.session.db = DB
openerp.http.root.session_store.save(self.session)
+ self.localstorage_path = mkdtemp()
def tearDown(self):
+ rmtree(self.localstorage_path)
self.registry.leave_test_mode()
super(HttpCase, self).tearDown()
@@ -259,7 +263,11 @@ class HttpCase(TransactionCase):
phantomtest = os.path.join(os.path.dirname(__file__), 'phantomtest.js')
# phantom.args[0] == phantomtest path
# phantom.args[1] == options
- cmd = ['phantomjs', jsfile, phantomtest, json.dumps(options)]
+ cmd = [
+ 'phantomjs',
+ '--local-storage-path', self.localstorage_path,
+ jsfile, phantomtest, json.dumps(options)
+ ]
self.phantom_run(cmd, timeout)
def phantom_js(self, url_path, code, ready="window", login=None, timeout=60, **kw):
diff --git a/setup/setup.cfg b/setup.cfg
similarity index 66%
rename from setup/setup.cfg
rename to setup.cfg
index 7693a84fc3a..40062a73157 100644
--- a/setup/setup.cfg
+++ b/setup.cfg
@@ -7,4 +7,4 @@ formats=gztar
formats=rpm
[bdist_rpm]
-install_script=setup_rpm.sh
+install_script=setup/setup_rpm.sh
diff --git a/setup/windows/Makefile b/setup/windows/Makefile
index 603951b6cd0..6378e17401b 100644
--- a/setup/windows/Makefile
+++ b/setup/windows/Makefile
@@ -1,10 +1,9 @@
include Makefile.version
-include Makefile.python
SERVER_DIRECTORY=../server
FILES_DIRECTORY=files
-LAUNCH_PY2EXE=/cygdrive/c/python${PYTHON_VERSION}/python.exe setup.py py2exe
+LAUNCH_PY2EXE=/cygdrive/c/python26/python.exe setup.py py2exe
MAKENSIS_ARGUMENTS=/DVERSION=$(VERSION)
@@ -27,7 +26,7 @@ server_clean:
server: server_clean
(cd $(SERVER_DIRECTORY)/win32 && $(LAUNCH_PY2EXE))
(cd $(SERVER_DIRECTORY) && $(LAUNCH_PY2EXE))
- rm -rf `/usr/bin/find ${SERVER_DIRECTORY}/dist/openerp/addons -maxdepth 1 -mindepth 1 -not -name "web_*" -and -not -name "base" -and -not -name "web" -type d | xargs rm -rf`
+# rm -rf `/usr/bin/find ${SERVER_DIRECTORY}/dist/openerp/addons -maxdepth 1 -mindepth 1 -not -name "web*" -and -not -name "base" -type d | xargs rm -rf`
(cd $(SERVER_DIRECTORY) && $(LAUNCH_MAKENSIS))
cp $(SERVER_DIRECTORY)/openerp-*.exe $(FILES_DIRECTORY)/openerp-server-setup-$(VERSION).exe
diff --git a/setup/windows/contrib.nsh b/setup/windows/contrib.nsh
new file mode 100644
index 00000000000..ba93b6fa5ef
--- /dev/null
+++ b/setup/windows/contrib.nsh
@@ -0,0 +1,329 @@
+# Source: http://nsis.sourceforge.net/CharToASCII
+!include LogicLib.nsh
+
+!ifndef CHAR_TO_ASCII_NSH
+
+!define CharToASCII "!insertmacro CharToASCII"
+
+!macro CharToASCII AsciiCode Character
+ Push "${Character}"
+ Call CharToASCII
+ Pop "${AsciiCode}"
+!macroend
+
+Function CharToASCII
+ Exch $0 ; given character
+ Push $1 ; current character
+ Push $2 ; current Ascii Code
+
+ StrCpy $2 1 ; right from start
+Loop:
+ IntFmt $1 %c $2 ; Get character from current ASCII code
+ ${If} $1 S== $0 ; case sensitive string comparison
+ StrCpy $0 $2
+ Goto Done
+ ${EndIf}
+ IntOp $2 $2 + 1
+ StrCmp $2 255 0 Loop ; ascii from 1 to 255
+ StrCpy $0 0 ; ASCII code wasn't found -> return 0
+Done:
+ Pop $2
+ Pop $1
+ Exch $0
+FunctionEnd
+
+!endif ; CHAR_TO_ASCII_NSH
+
+# Source: http://nsis.sourceforge.net/Base64
+!ifndef BASE64_NSH
+!define BASE64_NSH
+
+!define BASE64_ENCODINGTABLE "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"
+!define BASE64_ENCODINGTABLEURL "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"
+
+!define BASE64_PADDING "="
+
+VAR OCTETVALUE
+VAR BASE64TEMP
+
+!define Base64_Encode "!insertmacro Base64_Encode"
+!define Base64_URLEncode "!insertmacro Base64_URLEncode"
+
+!macro Base64_Encode _cleartext
+ push $R0
+ push $R1
+ push $R2
+ push $0
+ push $1
+ push $2
+ push $3
+ push $4
+ push $5
+ push $6
+ push $7
+ push `${_cleartext}`
+ push `${BASE64_ENCODINGTABLE}`
+ Call Base64_Encode
+ Pop $BASE64TEMP
+ Pop $7
+ Pop $6
+ Pop $5
+ Pop $4
+ Pop $3
+ Pop $2
+ Pop $1
+ Pop $0
+ pop $R2
+ pop $R1
+ pop $R0
+ Push $BASE64TEMP
+!macroend
+
+!macro Base64_URLEncode _cleartext
+ push $R0
+ push $R1
+ push $R2
+ push $0
+ push $1
+ push $2
+ push $3
+ push $4
+ push $5
+ push $6
+ push $7
+ push `${_cleartext}`
+ push `${BASE64_ENCODINGTABLEURL}`
+ Call Base64_Encode
+ Pop $BASE64TEMP
+ Pop $7
+ Pop $6
+ Pop $5
+ Pop $4
+ Pop $3
+ Pop $2
+ Pop $1
+ Pop $0
+ pop $R2
+ pop $R1
+ pop $R0
+ Push $BASE64TEMP
+!macroend
+
+Function Base64_Encode
+ pop $R2 ; Encoding table
+ pop $R0 ; Clear Text
+ StrCpy "$R1" "" # The result
+
+ StrLen $1 "$R0"
+ StrCpy $0 0
+
+ ${WHILE} $0 < $1
+ # Copy 3 characters, and for each character push their value.
+ StrCpy $OCTETVALUE 0
+
+ StrCpy $5 $0
+ StrCpy $4 "$R0" 1 $5
+ ${CharToASCII} $4 "$4"
+
+ IntOp $OCTETVALUE $4 << 16
+
+ IntOp $5 $5 + 1
+ ${IF} $5 < $1
+ StrCpy $4 "$R0" 1 $5
+ ${CharToASCII} $4 "$4"
+
+ IntOp $4 $4 << 8
+ IntOp $OCTETVALUE $OCTETVALUE + $4
+
+ IntOp $5 $5 + 1
+ ${IF} $5 < $1
+ StrCpy $4 "$R0" 1 $5
+ ${CharToASCII} $4 "$4"
+
+ IntOp $OCTETVALUE $OCTETVALUE + $4
+ ${ENDIF}
+ ${ENDIF}
+
+ # Now take the 4 indexes from the encoding table, based on 6bits each of the octet's value.
+ IntOp $4 $OCTETVALUE >> 18
+ IntOp $4 $4 & 63
+ StrCpy $5 "$R2" 1 $4
+ StrCpy $R1 "$R1$5"
+
+ IntOp $4 $OCTETVALUE >> 12
+ IntOp $4 $4 & 63
+ StrCpy $5 "$R2" 1 $4
+ StrCpy $R1 "$R1$5"
+
+ StrCpy $6 $0
+ StrCpy $7 2
+
+ IntOp $6 $6 + 1
+ ${IF} $6 < $1
+ IntOp $4 $OCTETVALUE >> 6
+ IntOp $4 $4 & 63
+ StrCpy $5 "$R2" 1 $4
+ StrCpy $R1 "$R1$5"
+ IntOp $7 $7 - 1
+ ${ENDIF}
+
+ IntOp $6 $6 + 1
+ ${IF} $6 < $1
+ IntOp $4 $OCTETVALUE & 63
+ StrCpy $5 "$R2" 1 $4
+ StrCpy $R1 "$R1$5"
+ IntOp $7 $7 - 1
+ ${ENDIF}
+
+ # If there is any padding required, we now write that here.
+ ${IF} $7 > 0
+ ${WHILE} $7 > 0
+ StrCpy $R1 "$R1${BASE64_PADDING}"
+ IntOp $7 $7 - 1
+ ${ENDWHILE}
+ ${ENDIF}
+
+ IntOp $0 $0 + 3
+ ${ENDWHILE}
+
+ Push "$R1"
+FunctionEnd
+
+
+!define Base64_Decode "!insertmacro Base64_Decode"
+!define Base64_URLDecode "!insertmacro Base64_URLDecode"
+
+!macro Base64_Decode _encodedtext
+ push `${_encodedtext}`
+ push `${BASE64_ENCODINGTABLE}`
+ Call Base64_Decode
+!macroend
+
+!macro Base64_URLDecode _encodedtext
+ push `${_encodedtext}`
+ push `${BASE64_ENCODINGTABLEURL}`
+ Call Base64_Decode
+!macroend
+
+Function base64_Decode
+ ; Stack: strBase64table strEncoded
+ Push $9 ; Stack: $9 strBase64table strEncoded ; $9 = strDecoded
+ Exch 2 ; Stack: strEncoded strBase64table $9
+ Exch ; Stack: strBase64table strEncoded $9
+ Exch $0 ; Stack: $0 strEncoded $9 ; $0 = strBase64table
+ Exch ; Stack: strEncoded $0 $9
+ Exch $1 ; Stack: $1 $0 $9 ; $1 = strEncoded
+
+ Push $2 ; strBase64table.length
+ Push $3 ; strEncoded.length
+ Push $4 ; strBase64table.counter
+ Push $5 ; strEncoded.counter
+ Push $6 ; strBase64table.char
+ Push $7 ; strEncoded.char
+
+ Push $R0 ; 6bit-group.counter
+ Push $R1 ; 6bit-group.a
+ Push $R2 ; 6bit-group.b
+ Push $R3 ; 6bit-group.c
+ Push $R4 ; 6bit-group.d
+
+ Push $R5 ; bit-group.tempVar.a
+ Push $R6 ; bit-group.tempVar.b
+
+ Push $R7 ; 8bit-group.A
+ Push $R8 ; 8bit-group.B
+ Push $R9 ; 8bit-group.C
+
+ StrCpy $9 "" ; Result string
+
+ StrLen $2 "$0" ; Get the length of the base64 table into $2
+ StrLen $3 "$1" ; Get the length of the encoded text into $3
+ IntOp $3 $3 - 1 ; Subtract one as the StrCpy offset is zero-based
+
+ StrCpy $R0 4 ; Initialize the 6bit-group.counter
+
+ ${ForEach} $5 0 $3 + 1 ; Loop over the encoded string
+ StrCpy $7 $1 1 $5 ; Grab the character at the loop counter's index
+
+ ${If} $7 == "${BASE64_PADDING}" ; If it's the padding char
+ Push 0 ; Push value 0 (no impact on decoded string)
+ ${Else} ; Otherwise
+ ${ForEach} $4 0 $2 + 1 ; Loop over the base64 lookup table
+ StrCpy $6 $0 1 $4 ; Grab the character at this loop counter's index
+ ${If} $6 S== $7 ; If that character matches the encoded string character
+ ${ExitFor} ; Exit this loop early
+ ${EndIf}
+ ${Next}
+ Push $4 ; Push the lookup's index to the stack
+ ${EndIf}
+
+ IntOp $R0 $R0 - 1 ; Decrease the 6bit-group counter
+
+ ${If} $R0 = 0 ; If that counter reaches zero
+ ; Pop the index values off the stack to variables
+ Pop $R4
+ Pop $R3
+ Pop $R2
+ Pop $R1
+
+ ; The way the base64 decoding works is like this...
+ ; Normal ASCII has 8 bits, base64 has 6 bits.
+ ; Those 8 bits need to be presented as 6 bits somehow
+ ; Turns out you can easily do that by taking their common multiple: 24
+ ; This results in 3 8bit characters per each 4 6bit characters:
+ ; AAAAAAAA BBBBBBBB CCCCCCCC
+ ; aaaaaabb bbbbcccc ccdddddd
+
+ ; So to go back to AAAAAAAA, you need:
+ ; aaaaaa shifted two bits to the left
+ ; the two left-most bits of bbbbbb,
+ ; which you can do by shifting it four bits to the right
+ IntOp $R5 $R1 << 2
+ IntOp $R6 $R2 >> 4
+ IntOp $R5 $R5 | $R6
+ IntFmt $R7 "%c" $R5 ; IntFmt turns the resulting 8bit value to a character
+
+ ; For BBBBBBBB, you need:
+ ; the four least significant bits of bbbbbb
+ ; which you can get by binary OR'ing with 2^4-1 = 15
+ ; the four most significant bits of cccccc
+ ; which you can get by just shifting it two bits to the right
+ IntOp $R5 $R2 & 15
+ InTop $R5 $R5 << 4
+ IntOp $R6 $R3 >> 2
+ IntOp $R5 $R5 | $R6
+ IntFmt $R8 "%c" $R5
+
+ ; For CCCCCCCC, the procedure is entirely similar.
+ IntOp $R5 $R3 & 3
+ IntOp $R5 $R5 << 6
+ IntOp $R5 $R5 | $R4
+ IntFmt $R9 "%c" $R5
+
+ StrCpy $9 "$9$R7$R8$R9" ; Tack it all onto the result
+ StrCpy $R0 4 ; Reset the 6bit-group counter
+ ${EndIf}
+ ${Next}
+
+ ; Done. Now let's restore the user's variables
+ Pop $R9
+ Pop $R8
+ Pop $R7
+ Pop $R6
+ Pop $R5
+ Pop $R4
+ Pop $R3
+ Pop $R2
+ Pop $R1
+ Pop $R0
+ Pop $7
+ Pop $6
+ Pop $5
+ Pop $4
+ Pop $3
+ Pop $2
+ Pop $1
+ Pop $0
+ Exch $9 ; Stack: strDecoded
+FunctionEnd
+!endif ;BASE64_NSH
\ No newline at end of file