editor: fallback to original tag/class name in case of lack of defined human friendly...
authorAleksander Łukasz <aleksander.lukasz@nowoczesnapolska.org.pl>
Fri, 13 Dec 2013 15:02:26 +0000 (16:02 +0100)
committerAleksander Łukasz <aleksander.lukasz@nowoczesnapolska.org.pl>
Sun, 15 Dec 2013 21:32:51 +0000 (22:32 +0100)
src/editor/modules/documentCanvas/canvas/widgets.js
src/editor/modules/documentToolbar/documentToolbar.js
src/editor/modules/documentToolbar/template.html
src/editor/modules/nodeBreadCrumbs/nodeBreadCrumbs.js
src/editor/modules/nodeBreadCrumbs/template.html
src/editor/modules/nodeFamilyTree/nodeFamilyTree.js
src/editor/modules/nodePane/nodePane.js
src/editor/modules/nodePane/template.html
src/editor/utils/wlxml.js

index 408d2c0..77dd0fd 100644 (file)
@@ -9,7 +9,7 @@ return {
     labelWidget: function(tag, klass) {
         return $('<span>')
             .addClass('canvas-widget canvas-widget-label')
-            .text(wlxmlUtils.wlxmlTagNames[tag] + (klass ? ' / ' + wlxmlUtils.wlxmlClassNames[klass] : ''));
+            .text(wlxmlUtils.getTagLabel(tag) + (klass ? ' / ' + wlxmlUtils.getClassLabel(klass) : ''));
     },
 
     footnoteHandler: function(clickHandler) {
index 84361ad..6c58555 100644 (file)
@@ -9,7 +9,7 @@ return function(sandbox) {
         currentNode;
 
     var view = {
-        node: $(_.template(template)({tagNames: wlxmlUtils.wlxmlTagNames, classNames: wlxmlUtils.wlxmlClassNames, templates: documentTemplates})),
+        node: $(_.template(template)({wlxmlUtils: wlxmlUtils, templates: documentTemplates})),
         setup: function() {
             var view = this;
             
index 17eecde..7c01fb1 100644 (file)
@@ -7,13 +7,13 @@
         <select class="rng-module-documentToolbar-toolbarOption" data-option="newTag-tag">
             <% var options = ['', 'section', 'header', 'div', 'span', 'aside']; %>
             <% options.forEach(function(option) { %>
-                <option value="<%= option %>" <% if(option==='span') { %>selected<% } %>><%= tagNames[option] %></option>
+                <option value="<%= option %>" <% if(option==='span') { %>selected<% } %>><%= wlxmlUtils.getTagLabel(option) %></option>
             <% }); %>
         </select>
         <select class="rng-module-documentToolbar-toolbarOption" data-option="newTag-class">
             <% var options = ['', 'author', 'title', 'cite', 'cite.code', 'cite.code.xml', 'list.items', 'item', 'uri', 'p', 'footnote', 'todo', 'emp'] %>
             <% options.forEach(function(option) { %>
-                <option value="<%= option.replace(/\./g, '-') %>" <% if(option==='cite') { %>selected<% } %>><%= classNames[option] %></option>
+                <option value="<%= option.replace(/\./g, '-') %>" <% if(option==='cite') { %>selected<% } %>><%= wlxmlUtils.getClassLabel(option) %></option>
             <% }); %>
         </select>
         <button data-name="new-node" data-btn-type="cmd" class="btn btn-mini"><i class="icon-plus"></i></button>
index 00c6197..55f4fab 100644 (file)
@@ -32,7 +32,7 @@ return function(sandbox) {
             this.dom.empty();
             this.currentNodeElement = nodeElement;
             var parents = nodeElement.parents();
-            this.dom.html(template({node: nodeElement, parents: parents, tagNames: wlxmlUtils.wlxmlTagNames, classNames: wlxmlUtils.wlxmlClassNames}));
+            this.dom.html(template({node: nodeElement, parents: parents, utils: wlxmlUtils}));
 
             this.dom.find('li > a[href="#"]').each(function(idx, a) {
                 $(a).data('element', parents[parents.length - 1 - idx]);
index 781ef5c..2f96b2d 100644 (file)
@@ -2,9 +2,9 @@
     <ul class="breadcrumb">
     <% if(node && parents) { %>
         <% for(var i = parents.length - 1; i >= 0; i--) { %>
-            <li><a href="#"> <%= tagNames[parents[i].getTagName()] %><% if(parents[i].getClass()) { %>.<%= classNames[parents[i].getClass()] %> <% } %></a><span class="divider">/</span></li>
+            <li><a href="#"> <%= utils.getTagLabel(parents[i].getTagName()) %><% if(parents[i].getClass()) { %>.<%= utils.getClassLabel(parents[i].getClass()) %> <% } %></a><span class="divider">/</span></li>
         <% } %>
-            <li class="active"><%= tagNames[node.getTagName()] %><% if(node.getClass()) { %>.<%= classNames[node.getClass()] %> <% } %></span></li>
+            <li class="active"><%= utils.getTagLabel(node.getTagName()) %><% if(node.getClass()) { %>.<%= utils.getClassLabel(node.getClass()) %> <% } %></span></li>
     <% } %>
     </ul>
 </div>
\ No newline at end of file
index d6a6290..e2a4eb8 100644 (file)
@@ -65,7 +65,7 @@ return function(sandbox) {
                 items.push(nodeElementParent);
                 parent = {
                     id: items.length - 1,
-                    repr: wlxmlUtils.wlxmlTagNames[nodeElementParent.getTagName()] + (nodeElementParent.getClass() ? ' / ' + wlxmlUtils.wlxmlClassNames[nodeElementParent.getClass()] : '')
+                    repr: wlxmlUtils.getTagLabel(nodeElementParent.getTagName()) + (nodeElementParent.getClass() ? ' / ' + wlxmlUtils.getClassLabel(nodeElementParent.getClass()) : '')
                 };
                 
             }
@@ -91,7 +91,7 @@ return function(sandbox) {
                 } else {
                     contents.push({
                         id: items.length,
-                        repr: wlxmlUtils.wlxmlTagNames[child.getTagName()] + (child.getClass() ? ' / ' + wlxmlUtils.wlxmlClassNames[child.getClass()] : '')
+                        repr: wlxmlUtils.getTagLabel(child.getTagName()) + (child.getClass() ? ' / ' + wlxmlUtils.getClassLabel(child.getClass()) : '')
                     });
                 }
                 items.push(child);
index 80d4b87..b4b3424 100644 (file)
@@ -10,7 +10,7 @@ define([
 
 return function(sandbox) {
     
-    var view = $(_.template(templateSrc)({tagNames: wlxmlUtils.wlxmlTagNames, classNames: wlxmlUtils.wlxmlClassNames})),
+    var view = $(_.template(templateSrc)({utils: wlxmlUtils})),
         currentNode;
     
     view.on('change', 'select', function(e) {
index b9a1254..f2977db 100644 (file)
@@ -6,7 +6,7 @@
             <select class="rng-module-nodePane-tagSelect">
                 <% var options = ['', 'section', 'header', 'div', 'span', 'aside']; %>
                 <% options.forEach(function(option) { %>
-                    <option value="<%= option %>" <% if(option === '') { %>selected<% } %>><%= tagNames[option] %></option>
+                    <option value="<%= option %>" <% if(option === '') { %>selected<% } %>><%= utils.getTagLabel(option) %></option>
                 <% }); %>
             </select>
         </div>
@@ -15,7 +15,7 @@
             <select  class="rng-module-nodePane-classSelect">
                 <% var options = ['', 'author', 'title', 'cite', 'cite.code', 'cite.code.xml', 'list.items', 'list.items.enum', 'item', 'uri', 'p', 'footnote', 'todo', 'emp'] %>
                 <% options.forEach(function(option) { %>
-                    <option value="<%= option.replace(/\./g, '-') %>" <% if(option === '') { %>selected<% } %>><%= classNames[option] %></option>
+                    <option value="<%= option.replace(/\./g, '-') %>" <% if(option === '') { %>selected<% } %>><%= utils.getClassLabel(option) %></option>
                 <% }); %>
             </select>
         </div>
index 5f1b84d..9935655 100644 (file)
@@ -6,17 +6,17 @@ define([
 
 
 
-return {
-    wlxmlTagNames: {
-        '': '',
+var names = {
+    tag: {
+        '': '-',
         section: 'sekcja',
         header: 'nagłówek',
         div: 'blok',
         span: 'tekst',
         aside: 'poboczny'
     },
-    wlxmlClassNames: {
-        '': '',
+    'class': {
+        '': '-',
         author: 'autor',
         title: 'tytuł',
         cite: 'cytat',
@@ -33,4 +33,16 @@ return {
     }
 };
 
+return {
+    getLabel: function(of, name) {
+        return (names[of] && (names[of][name] || name)) || '?';
+    },
+    getTagLabel: function(tagName) {
+        return this.getLabel('tag', tagName);
+    },
+    getClassLabel: function(className) {
+        return this.getLabel('class', className);
+    }
+};
+
 });
\ No newline at end of file