Skip to content

Commit 6166381

Browse files
committed
Very basic error message
1 parent c66900f commit 6166381

File tree

2 files changed

+21
-1
lines changed

2 files changed

+21
-1
lines changed

csvtogeocoder.css

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -112,3 +112,12 @@ progress {
112112
.csvtogeocoder.active .step4 {
113113
display: block;
114114
}
115+
.csvtogeocoder .error {
116+
background-color: #F64747;
117+
padding: 20px;
118+
text-align: center;
119+
display: none;
120+
}
121+
.csvtogeocoder.error .error {
122+
display: block;
123+
}

csvtogeocoder.js

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,10 @@ var CSVToGeocoder = function (options) {
2424
el.className = (el.className ? el.className + ' ' : '') + name;
2525
};
2626

27+
var removeClass = function (el, name) {
28+
el.className = ((' ' + el.className + ' ').replace(' ' + name + ' ', ' ')).trim();
29+
};
30+
2731
var reader = new FileReader(), file, container, blob, parsed;
2832
if (options.container) {
2933
if (typeof options.container === 'string') container = document.querySelector(options.container);
@@ -51,16 +55,23 @@ var CSVToGeocoder = function (options) {
5155
var helpColumns = createNode('p', {id: 'helpColumns'}, step3, _('Drag or click on a column to select it. You can then drag the selected columns to reorder them.'));
5256
var availableColumns = createNode('ul', {id: 'availableColumns'}, step3);
5357
var chosenColumns = createNode('ul', {id: 'chosenColumns'}, step3);
58+
var errorContainer = createNode('div', {className: 'error'}, container);
5459
var submitButton = createNode('input', {type: 'button', value: _('Geocode'), disabled: 'disabled'}, step3);
5560

5661
var error = function (message) {
57-
console.error(message);
62+
if (options.onError) {
63+
options.onError(message);
64+
} else {
65+
errorContainer.innerHTML = message;
66+
if (!hasClass(container, 'error')) addClass(container, 'error');
67+
}
5868
};
5969
var stop = function (e) {
6070
e.stopPropagation();
6171
e.preventDefault();
6272
};
6373
var submit = function () {
74+
removeClass(container, 'error');
6475
var progressBar = createNode('progress', {}, container);
6576
progressBar.max = 100;
6677
var xhr = new XMLHttpRequest();

0 commit comments

Comments
 (0)