Dodanie PanelContainerView oraz postawy HTMLView i XMLView.
[redakcja.git] / project / templates / explorer / editor.html
index 75e62c9..5848b0f 100644 (file)
 {% extends "base.html" %}
 
 {% block extrahead %}
-    <script src="/static/js/jquery.lazyload.js" type="text/javascript" charset="utf-8"></script>
-    <script src="/static/js/codemirror/codemirror.js" type="text/javascript" charset="utf-8"></script>
-    <script src="/static/js/jquery.autoscroll.js" type="text/javascript" charset="utf-8"></script>
-    <script src="/static/js/jquery.wtooltip.js" type="text/javascript" charset="utf-8"></script>
-    <script src="/static/js/jquery.hpanel.js" type="text/javascript" charset="utf-8"></script>
-    <script src="/static/js/jquery.json.js" type="text/javascript" charset="utf-8"></script>
-    <script src="/static/js/jquery.cookie.js" type="text/javascript" charset="utf-8"></script>
-    <script src="/static/js/editor.js" type="text/javascript" charset="utf-8"></script>
+       <script type="text/javascript" charset="utf-8">
+               var fileId = '{{ fileid }}';
+       </script>
+    <link rel="stylesheet" href="{{STATIC_URL}}css/toolbar.css" type="text/css" />
+    <link rel="stylesheet" href="{{STATIC_URL}}css/jquery.modal.css" type="text/css" />
+    <script src="{{STATIC_URL}}js/lib/jquery.lazyload.js" type="text/javascript" charset="utf-8"></script>
+    <script src="{{STATIC_URL}}js/lib/codemirror/codemirror.js" type="text/javascript" charset="utf-8"></script>
+    <script src="{{STATIC_URL}}js/lib/jquery.wtooltip.js" type="text/javascript" charset="utf-8"></script>
+    <script src="{{STATIC_URL}}js/lib/jquery.json.js" type="text/javascript" charset="utf-8"></script>
+    <script src="{{STATIC_URL}}js/lib/jquery.cookie.js" type="text/javascript" charset="utf-8"></script>
+    <script src="{{STATIC_URL}}js/lib/jquery.modal.js" type="text/javascript" charset="utf-8"></script>
+       <script src="{{STATIC_URL}}js/app.js" type="text/javascript" charset="utf-8"></script>
+       <script src="{{STATIC_URL}}js/views/split.js" type="text/javascript" charset="utf-8"></script>
+       <script src="{{STATIC_URL}}js/views/xml.js" type="text/javascript" charset="utf-8"></script>
+       <script src="{{STATIC_URL}}js/views/html.js" type="text/javascript" charset="utf-8"></script>
+       <script src="{{STATIC_URL}}js/views/panel_container.js" type="text/javascript" charset="utf-8"></script>
+    <script src="{{STATIC_URL}}js/editor.js" type="text/javascript" charset="utf-8"></script>
+    <script src="{{STATIC_URL}}js/editor.ui.js" type="text/javascript" charset="utf-8"></script>
+
+       {# JavaScript templates #}
+       <script type="text/html" charset="utf-8" id="panel-container-view-template">
+               <select>
+                       <% for (var i = 0; i < panels.length; i++) { %>
+                       <option value="<%= i %>"><%= panels[i].name %></option>
+                       <% }; %>
+               </select>
+               <div class="content-view"></div>
+       </script>
+       <script type="text/html" charset="utf-8" id="html-view-template">
+               <p>Hej! Jestem widokiem HTML!</p>
+       </script>
+       <script type="text/html" charset="utf-8" id="xml-view-template">
+               <p>Hej! Jestem widokiem XML!</p>
+       </script>
 {% endblock extrahead %}
 
-{% block breadcrumbs %}<a href="{% url file_list %}">Platforma Redakcyjna</a> ❯ plik {{ hash }}{% endblock breadcrumbs %}
+{% block extrabody %}
+    <script type="text/javascript" charset="utf-8">
+    $(function() {
+        {% for scriptlet in scriptlets %}
+        editor.registerScriptlet("{{scriptlet.name}}",
+            function(editor, panel, params) {
+                {{ scriptlet.code|safe }}
+            });
+        {% endfor %}
+     });  
+    </script>
+{% endblock extrabody %}
+
+{% load explorer_tags %}
+
+{% block breadcrumbs %}<a href="{% url file_list %}">Platforma Redakcyjna</a> &gt; {{ fileid|bookname }}{% endblock breadcrumbs %}
 
 {% block header-toolbar %}
-       <button type="button" class="toolbar-button" id="toolbar-button-commit">Commit</button>
-       <button type="button" class="toolbar-button" id="toolbar-button-save" disabled="disabled">Zapisz</button>
+<button type="button" class="requires-save toolbar-button" id="toolbar-button-commit">Merge</button>
+<button type="button" class="requires-save toolbar-button" id="toolbar-button-update"
+        ui:ajax-action="{% url file_update fileid %}">Update</button>
+<button type="button" class="provides-save toolbar-button" id="toolbar-button-save" disabled="disabled">Commit</button>
+<button type="button" class="provides-save toolbar-button" id="toolbar-button-quick-save" disabled="disabled">Quick Save</button>
 {% endblock %}
 
 {% block message-box %}
-    <div class="msg-success" id="save-successful">Zapisano :)</div>
-    <div class="msg-error" id="save-error">Błąd przy zapisie. <span class="errors" /></div>
-    <div class="msg-warning" id="not-implemented">Tej funkcji jeszcze nie ma :(</div>
+    <div class="msg-info" id="save-waiting"><p>Zapisuję dane na serwerze.</p><p class="data"></p></div>
+    <div class="msg-success" id="save-successful"><p>Zapisano :)</p><p class="data"></p></div>
+    <div class="msg-warning" id="save-warn"><p>Zapisano. Uwagi: (</p><p class="data"></p></div>
+    <div class="msg-error" id="save-error"><p>Błąd przy zapisie.</p> <p class="data"></p></div>
+
+    <div class="msg-success" id="generic-yes"><p class="data"></p></div>
+    <div class="msg-info" id="generic-info"><p class="data"></p></div>
+    <div class="msg-error" id="generic-error"><p class="data"></p></div>
+    
+    <div class="msg-warning" id="not-implemented"><p>Tej funkcji jeszcze nie ma :(</p><p class="data"></p></div>
+    
 {% endblock %}
 
 {% block maincontent %}
-        <div id="panels">
-            {% for n in panel_list %}
-            <div class="panel-wrap{% if forloop.last %} last-panel{% endif %}" id="panel-{{n}}">
-                <div class="panel-toolbar">
-                    <label for="select-{{n}}-panel">{{n|capfirst}} panel:</label>
-                    <select name="select-{{n}}-panel" id="panel-{{n}}-select">
-                        <option value="{% url xmleditor_panel hash %}" name="xmleditor">Edytor XML</option>
-                        <option value="{% url htmleditor_panel hash %}" name="htmleditor">Edytor HTML</option>
-                        <option value="{% url gallery_panel hash %}" name="gallery">Galeria skanów</option>
-                        <option value="{% url dceditor_panel hash %}" name="dceditor">Edytor DublinCore</option>
-                    </select>
-                    <strong class="change-notification" style="display: none">Widok nieaktualny!</strong>
-               </div>
-               <div id="panel-{{n}}-content" class="panel-content"></div>
-               <button type="button" class="panel-slider"></button>
+       <div id="splitview">
+               <div id="left-panel-container" class='panel-container'>
+                       <select name="select-left-panel" id="panel-left-select">
+                               {% for panel_type in availble_panels %}
+                               <option value="{% url panel_view path=fileid,name=panel_type.id  %}" p:panel-name="{{ panel_type.id }}">{{panel_type.display_name}}</option>
+                               {% endfor %}
+                       </select>
+                                   <div id="panel-left-content" class="panel-content"></div>                   
+                       <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
+               </div>
+           <div id="right-panel-container" class='panel-container'>
+                       {# <select name="select-right-panel" id="panel-right-select"> #}
+                       {#      {% for panel_type in availble_panels %} #}
+                       {#      <option value="{% url panel_view path=fileid,name=panel_type.id  %}" p:panel-name="{{ panel_type.id }}">{{panel_type.display_name}}</option> #}
+                       {#      {% endfor %} #}
+                       {# </select> #}
+            {# <div id="panel-right-content" class="panel-content"></div> #}
+               <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p></div>
+       </div>
+
+        <div id="commit-dialog" class="jqmWindow">
+            <form action="{% url file_commit fileid %}" method="POST">
+                <label for="message">Commit message:</label>
+                <textarea cols="60" rows="10" name="message" id="commit-dialog-message"></textarea>
+                <p id="commit-dialog-error-empty-message">Wiadomość nie może być pusta.</p>                
+                <fieldset id="commit-dialog-related-issues" 
+                          ui:ajax-src="http://localhost:3000/publications/issues/{{fileid}}">
+                    <legend>Related issues</legend>
+                    <div class="loading-box" style="display: none;">
+                        <p>Loading related issues...</p>
+                    </div>
+                    <div class="container-box">No related issues.</div>
+                </fieldset>
+                <p>
+                   <input type="button" value="Save" id="commit-dialog-save-button" />
+                   <input type="reset" value="Cancel" id="commit-dialog-cancel-button" />
+                </p>
+            </form>
+        </div>
+
+        <div id="split-dialog" class="jqmWindow">
+            <div class="container-box"> </div>
+            <div class="loading-box" style="display: none;">
+                <p>Loading dialog contents...</p>
+                <!-- <p><button type="button" class="dialog-close-button">Close</button></p> -->
+            </div>
+            <div class="fatal-error-box" style="display: none;">
+                <p>Server error, while loading dialog :(</p>
+                <p><button type="button" class="dialog-close-button">Close</button></p>
             </div>
-            {% endfor %}
         </div>
 {% endblock maincontent %}