Skip to content

Commit d7ebfbe

Browse files
leonardosntHaroenv
authored andcommitted
Deeper copy defaults (#741)
Fix for: #740 (comment)
1 parent 9eaac2a commit d7ebfbe

File tree

1 file changed

+11
-3
lines changed

1 file changed

+11
-3
lines changed

_includes/i18n-as-script.html

+11-3
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,17 @@
88
window.i18n.active_language = {{ vars_active_language.tag | jsonify }};
99

1010
// give defaults
11-
for (var key in i18n_default) {
12-
if (window.i18n.hasOwnProperty(key) === false || window.i18n[key] === null) {
13-
window.i18n[key] = i18n_default[key];
11+
function copyDefaults(from, to) {
12+
for (var key in from) {
13+
if (from[key] !== null && typeof from[key] === 'object') {
14+
copyDefaults(from[key], to[key] || (to[key] = {}));
15+
continue;
16+
}
17+
if (to.hasOwnProperty(key) === false || to[key] === null) {
18+
to[key] = from[key];
19+
}
1420
}
1521
}
22+
23+
copyDefaults(i18n_default, window.i18n);
1624
</script>

0 commit comments

Comments
 (0)