[IMP] handle switch indicating whether the CSV file being imported has headers
bzr revid: xmo@openerp.com-20110923094500-0jn0tb3fgix9j8wg
This commit is contained in:
parent
a7a71dea83
commit
8d0a65ec94
|
@ -1420,7 +1420,7 @@ class Import(View):
|
||||||
|
|
||||||
@openerpweb.httprequest
|
@openerpweb.httprequest
|
||||||
def detect_data(self, req, model, csvfile, csvsep, csvdel, csvcode,
|
def detect_data(self, req, model, csvfile, csvsep, csvdel, csvcode,
|
||||||
csvskip, file_has_headers, jsonp):
|
csvskip, jsonp):
|
||||||
try:
|
try:
|
||||||
data = list(csv.reader(
|
data = list(csv.reader(
|
||||||
csvfile, quotechar=str(csvdel), delimiter=str(csvsep)))
|
csvfile, quotechar=str(csvdel), delimiter=str(csvsep)))
|
||||||
|
@ -1449,7 +1449,7 @@ class Import(View):
|
||||||
|
|
||||||
@openerpweb.httprequest
|
@openerpweb.httprequest
|
||||||
def import_data(self, req, model, csvfile, csvsep, csvdel, csvcode, csvskip,
|
def import_data(self, req, model, csvfile, csvsep, csvdel, csvcode, csvskip,
|
||||||
file_has_headers, jsonp):
|
jsonp):
|
||||||
|
|
||||||
context = req.session.eval_context(req.context)
|
context = req.session.eval_context(req.context)
|
||||||
modle_obj = req.session.model(model)
|
modle_obj = req.session.model(model)
|
||||||
|
|
|
@ -33,7 +33,7 @@ openerp.web.DataImport = openerp.web.Dialog.extend({
|
||||||
this.model = parent.model;
|
this.model = parent.model;
|
||||||
this.fields = [];
|
this.fields = [];
|
||||||
this.all_fields = [];
|
this.all_fields = [];
|
||||||
this.required_fields;
|
this.required_fields = null;
|
||||||
|
|
||||||
var convert_fields = function (root, prefix) {
|
var convert_fields = function (root, prefix) {
|
||||||
prefix = prefix || '';
|
prefix = prefix || '';
|
||||||
|
@ -128,9 +128,10 @@ openerp.web.DataImport = openerp.web.Dialog.extend({
|
||||||
var result_node = this.$element.find("#result");
|
var result_node = this.$element.find("#result");
|
||||||
|
|
||||||
if (results['records']) {
|
if (results['records']) {
|
||||||
|
var with_headers = this.$element.find('#file_has_headers').prop('checked');
|
||||||
result_node.append(QWeb.render('ImportView.result', {
|
result_node.append(QWeb.render('ImportView.result', {
|
||||||
'headers': results.records[0],
|
'headers': with_headers ? results.records[0] : null,
|
||||||
'records': results.records.slice(1)
|
'records': with_headers ? results.records.slice(1) : results.records
|
||||||
}));
|
}));
|
||||||
} else if (results['error']) {
|
} else if (results['error']) {
|
||||||
result_node.append(QWeb.render('ImportView.error', {
|
result_node.append(QWeb.render('ImportView.error', {
|
||||||
|
|
|
@ -1407,8 +1407,7 @@
|
||||||
<td colspan="4">
|
<td colspan="4">
|
||||||
<label for="file_has_headers">Does your file have titles?</label>
|
<label for="file_has_headers">Does your file have titles?</label>
|
||||||
<input type="checkbox" checked="checked"
|
<input type="checkbox" checked="checked"
|
||||||
id="file_has_headers"
|
id="file_has_headers"/>
|
||||||
name="file_has_headers"/>
|
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
|
@ -1435,12 +1434,12 @@
|
||||||
</t>
|
</t>
|
||||||
<table t-name="ImportView.result"
|
<table t-name="ImportView.result"
|
||||||
class="oe_import_grid" width="100%" style="margin: 5px 0;">
|
class="oe_import_grid" width="100%" style="margin: 5px 0;">
|
||||||
<tr class="oe_import_grid-header">
|
<tr t-if="headers" class="oe_import_grid-header">
|
||||||
<td t-foreach="headers" t-as="header" class="oe_import_grid-cell">
|
<td t-foreach="headers" t-as="header" class="oe_import_grid-cell">
|
||||||
<t t-esc="header"/></td>
|
<t t-esc="header"/></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td t-foreach="headers" t-as="header">
|
<td t-foreach="records[0]" t-as="column">
|
||||||
<input class="sel_fields"/>
|
<input class="sel_fields"/>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
Loading…
Reference in New Issue