]> git.openstreetmap.org Git - osqa.git/blob - forum/skins/default/templates/question_edit.html
fixes problem with always showing alert dialog in chrome. Still working out non...
[osqa.git] / forum / skins / default / templates / question_edit.html
1 {% extends "base.html" %}
2 <!-- question_edit.html -->
3 {% load i18n %}
4 {% load extra_tags %}
5 {% block title %}{% spaceless %}{% trans "Edit question" %}{% endspaceless %}{% endblock %}
6 {% block forejs %}
7         <script type='text/javascript' src='{% media  "/media/js/wmd/showdown.js" %}'></script>
8         <script type='text/javascript' src='{% media  "/media/js/wmd/wmd.js" %}'></script>
9         <link rel="stylesheet" type="text/css" href="{% media  "/media/js/wmd/wmd.css" %}" />
10         <script type="text/javascript">
11                 //todo move javascript out        
12         $().ready(function(){
13             $("#nav_questions").attr('className',"on");
14             $('#editor').TextAreaResizer();
15             
16
17             //toggle preview of editor
18             var display = true;
19             var txt = "[{% trans "hide preview" %}]";
20             $('#pre-collapse').text(txt);
21             $('#pre-collapse').bind('click', function(){
22                 txt = display ? "[{% trans "show preview" %}]" : "[{% trans "hide preview" %}]";
23                 display = !display;
24                 $('#previewer').toggle();
25                 $('#pre-collapse').text(txt);
26             });
27             
28             //Tags autocomplete action
29                 $("#id_tags").autocomplete("/matching_tags/", {
30                         matchContains: true,
31                 max: 20,
32                 multiple: true,
33                 multipleSeparator: " ",
34                 highlightItem: true,
35                 scroll: true,
36                 scrollHeight: 300,
37                         /*formatItem: function(row, i, max) {
38                                 return row.n + " ("+ row.c +")";
39                         },
40                 formatResult: function(row, i, max){
41                     return row.n;
42                 }*/
43                 formatItem: function(row, i, max, value) {
44                     return row[1].split(".")[0] + " (" + row[1].split(".")[1] + ")";
45                 },
46
47                 formatResult: function(row, i, max, value){
48                     return row[0];
49                 }
50                 
51             });         
52
53             $('#id_revision').unbind().change(function(){
54                 $("#select_revision").click();
55             });
56
57             init = $("textarea#editor")[0].value;
58
59             title = $("input#id_title")[0].value;
60             body = $("textarea#editor")[0].value;
61             tag = $("input#id_tags")[0].value;
62         });
63
64         function submitClicked(e) {
65             if(!is_chrome) {
66                 $("input.submit")[0].disabled=true;
67                 $("input.submit")[1].disabled=true;
68             }
69             window.removeEventListener('beforeunload', beforeUnload, true);
70         }
71
72         function beforeUnload(e) {
73             var is_chrome = navigator.userAgent.toLowerCase().indexOf('chrome') > -1;
74
75             if($("input#id_title")[0].value != title || $("textarea#editor")[0].value != body || $("input#id_tags")[0].value != tag) {
76                  if(is_chrome) {
77                      return "You sure you want to leave?  Your work will be lost.";
78                  } else {
79                      yourWorkWillBeLost(e);
80                  }
81             }
82         }
83         window.addEventListener('beforeunload', beforeUnload, true);
84
85         var init = "";
86         var title = "";
87         var body = "";
88         var tag = "";
89         </script>
90 {% endblock %}
91         
92 {% block content %}
93 <div id="main-bar" class="headNormal">
94     {% trans "Edit question" %} [<a href="{{ question.get_absolute_url }}">{% trans "back" %}</a>]
95 </div>
96 <div id="main-body" class="ask-body">
97     <div id="askform">
98         <form id="fmedit" action="{% url edit_question question.id %}" method="post" >
99             <label for="id_revision" ><strong>{% trans "revision" %}:</strong></label> <br/> 
100             {% if revision_form.revision.errors %}{{ revision_form.revision.errors.as_ul }}{% endif %}
101             <div style="vertical-align:middle">
102             {{ revision_form.revision }} <input type="submit" style="display:none" id="select_revision" name="select_revision" 
103                                                                                         value="{% trans "select revision"%}">
104             </div> 
105             <div class="form-item">
106                 <label for="id_title" ><strong>{{ form.title.label_tag }}:</strong></label> <span class="form-error"></span><br/> 
107                 {{ form.title }} {{ form.title.errors }}  
108                 <div class="title-desc">
109                     {{ form.title.help_text }}
110                 </div>     
111             </div>
112             <div class="form-item">
113                 <div id="wmd-button-bar" class="wmd-panel"></div>
114                 {{ form.text }}
115                 <span class="form-error"></span>
116                 <div class="preview-toggle">
117                     <table width="100%">
118                         <tr>
119                             <td>
120                                 <span id="pre-collapse" title="{% trans "Toggle the real time Markdown editor preview" %}">{% trans "toggle preview" %}</span>
121                             </td>
122                             {% if settings.WIKI_ON %}
123                             <td style="text-align:right;">
124                                 {{ form.wiki }} <span style="color:#000;cursor:help" title="{{form.wiki.help_text}}">{{ form.wiki.label_tag }} </span>
125                             </td>
126                             {% endif %}
127                         </tr>
128                     
129                     </table>   
130                 </div>
131                 <div id="previewer" class="wmd-preview"></div>
132             </div>
133             <div class="form-item">
134                 <strong>{{ form.tags.label_tag }}:</strong> <span class="form-error"></span><br/>
135                 {{ form.tags }}  {{ form.tags.errors }}
136                 <div class="title-desc">
137                     {{ form.tags.help_text }}
138                 </div>
139             </div>
140             <strong>{{ form.summary.label_tag }}</strong> <br/>
141             {{ form.summary }}  {{ form.summary.errors }}
142             <div class="title-desc">
143                 {{ form.summary.help_text }}
144             </div>
145             <div class="error" ></div>
146             <input type="submit" value="{% trans "Save edit" %}" class="submit" onclick="submitClicked(event)" />
147             <input type="button" value="{% trans "Cancel" %}" class="submit" onclick="history.back(-1);submitClicked(event)" />
148         </form>
149     </div>
150 </div>
151 {% endblock %}
152
153 {% block sidebar %}
154 {% include "question_edit_tips.html" %}
155 {% endblock %}
156
157 {% block endjs %}
158 {% endblock %}
159 <!-- end question_edit.html -->