diff --git a/uhr-de_CH.js b/uhr-de_CH.js
index 874ae1c..5dc89d1 100644
--- a/uhr-de_CH.js
+++ b/uhr-de_CH.js
@@ -28,3 +28,59 @@ var layout = {
]
};
window._uhr.languages['de_CH'] = layout;
+var newLayout = {
+ version: 2,
+ _es_isch: {1:[1,2,4,5,6,7]},
+ _genau: {3:[7,8,9,10,11]},
+ _ab: {4:[4,5]},
+ _vor: {4:[1,2,3]},
+ _haubi: {4:[7,8,9,10,11]},
+ _5: {1:[9,10,11]},
+ _10: {2:[9,10,11]},
+ _15: {2:[1,2,3,4,5,6]},
+ _20: {3:[1,2,3,4,5,6]},
+ language: 'Bärndütsch (nöi)',
+ letters: [
+ 'ESKISCHAFÜF',
+ 'VIERTUBFZÄÄ',
+ 'ZWÄNZGGENAU',
+ 'VORABOHAUBI',
+ 'EISZWÖISFRÜ',
+ 'VIERIFÜFIQT',
+ 'SÄCHSISIBNI',
+ 'ACHTINÜNIEL',
+ 'ZÄNIERBEUFI',
+ 'ZWÜUFINAUHR'
+ ],
+ permanent: this._es_isch,
+ minutes: {
+ 0: this._genau,
+ 1: {},
+ 5: [this._5, this._ab],
+ 10: [this._10, this._ab],
+ 15: [this._15, this._ab],
+ 20: [this._20, this._ab],
+ 25: [this._5, this._vor, this._haubi],
+ 30: [this._haubi],
+ 35: [this._5, this._ab, this._haubi],
+ 40: [this._20, this._vor],
+ 45: [this._15, this._vor],
+ 50: [this._10, this._vor],
+ 55: [this._5, this._vor]
+ },
+ hours: {
+ 0: {10:[1,2,3,4,5,6]},
+ 1: {5:[1,2,3]},
+ 2: {5:[4,5,6,7]},
+ 3: {5:[9,10,11]},
+ 4: {6:[1,2,3,4,5]},
+ 5: {6:[6,7,8,9]},
+ 6: {7:[1,2,3,4,5,6]},
+ 7: {7:[7,8,9,10,11]},
+ 8: {8:[1,2,3,4,5]},
+ 9: {8:[6,7,8,9]},
+ 10: {9:[1,2,3,4]},
+ 11: {9:[8,9,10,11]}
+ }
+};
+window._uhr.languages['de_CH2'] = newLayout;
diff --git a/uhr.js b/uhr.js
index 74f0213..33ebe98 100644
--- a/uhr.js
+++ b/uhr.js
@@ -286,17 +286,37 @@ along with this program. If not, see .
function UhrRenderer(layout, renderarea) {
this.layout = layout;
this.renderarea = renderarea;
+ this._parseLayoutV2 = function() {
+ console.log("attempting to parse layout v2");
+ var letters = [['a'], ['b', 'c',]];
+ return letters;
+ }
}
UhrRenderer.prototype.render = function(uhr, beforeshow) {
var renderer = this;
+ var letters;
+ if (this.layout.version !== undefined) {
+ switch (this.layout.version) {
+ case 2:
+ letters = this._parseLayoutV2();
+ break;
+ default:
+ if (console !== undefined && typeof console.log == 'function') {
+ console.log("Unknown layout version: " + this.layout.version);
+ }
+ return;
+ }
+ } else {
+ letters = renderer.layout.values;
+ }
this.renderarea.fadeOut('fast', function() {
renderer.renderarea.empty();
- for (var y = 0; y < renderer.layout.values.length; y++) {
- for (var x = 0; x < renderer.layout.values[y].length; x++) {
- var letter = renderer.layout.values[y][x];
+ for (var y = 0; y < letters.length; y++) {
+ for (var x = 0; x < letters[y].length; x++) {
+ var letter = letters[y][x];
renderer.renderarea.append(letter.toString());
}
- if (y < renderer.layout.values.length - 1) {
+ if (y < letters.length - 1) {
renderer.renderarea.append('
');
}
}