| author | gibus |
| Tue, 31 Jul 2012 16:37:23 +0200 | |
| changeset 453 | 1d314f629611 |
| parent 444 | 9246b0057a75 |
| child 454 | b7a092a52eae |
| permissions | -rw-r--r-- |
| 0 | 1 |
//http://jqueryui.com/demos/dialog/modal-form.html |
2 |
||
3 |
// TODO ? : get from the server |
|
4 |
// extension : label |
|
5 |
gFormats = [{'actions':['print'], 'extension':'html', 'label': gettext('print from the browser')}, |
|
6 |
{'actions':['export'], 'extension':'html', 'label': gettext('download html file (.html)')}, |
|
|
453
1d314f629611
Added export to XML for re-import (nb. without attachements).
gibus
parents:
444
diff
changeset
|
7 |
{'actions':['export'], 'extension':'markdown', 'label': gettext('download markdown file (.mkd)')}, |
|
1d314f629611
Added export to XML for re-import (nb. without attachements).
gibus
parents:
444
diff
changeset
|
8 |
{'actions':['print'], 'extension':'pdf', 'label': gettext('print in PDF format')}, |
|
1d314f629611
Added export to XML for re-import (nb. without attachements).
gibus
parents:
444
diff
changeset
|
9 |
{'actions':['export'], 'extension':'pdf', 'label': gettext('download portable object format file (.pdf)')}, |
|
1d314f629611
Added export to XML for re-import (nb. without attachements).
gibus
parents:
444
diff
changeset
|
10 |
{'actions':['export'], 'extension':'latex', 'label': gettext('download latex file (.tex)')}, |
|
1d314f629611
Added export to XML for re-import (nb. without attachements).
gibus
parents:
444
diff
changeset
|
11 |
{'actions':['export'], 'extension':'odt', 'label': gettext('download open document file (.odt)')}, |
|
1d314f629611
Added export to XML for re-import (nb. without attachements).
gibus
parents:
444
diff
changeset
|
12 |
{'actions':['export'], 'extension':'doc', 'label': gettext('download microsoft word file (.doc)')}, |
|
1d314f629611
Added export to XML for re-import (nb. without attachements).
gibus
parents:
444
diff
changeset
|
13 |
{'actions':['export'], 'extension':'docx', 'label': gettext('download microsoft word 2007 file (.docx)')}, |
|
1d314f629611
Added export to XML for re-import (nb. without attachements).
gibus
parents:
444
diff
changeset
|
14 |
{'actions':['export'], 'extension':'xml', 'label': gettext('download XML file for re-import')}]; |
| 0 | 15 |
|
|
444
9246b0057a75
Exports to epub only with pandoc 1.9 and upper versions.
gibus
parents:
443
diff
changeset
|
16 |
var pandoc_version_ary = sv_pandoc_version.split('.'); |
|
9246b0057a75
Exports to epub only with pandoc 1.9 and upper versions.
gibus
parents:
443
diff
changeset
|
17 |
if (parseInt(pandoc_version_ary[0]) > 1 || (parseInt(pandoc_version_ary[0]) == 1 && parseInt(pandoc_version_ary[1]) > 8)) { |
|
453
1d314f629611
Added export to XML for re-import (nb. without attachements).
gibus
parents:
444
diff
changeset
|
18 |
gFormats.push({'actions':['export'], 'extension':'epub', 'label': gettext('download ebook (.epub)')}); |
|
444
9246b0057a75
Exports to epub only with pandoc 1.9 and upper versions.
gibus
parents:
443
diff
changeset
|
19 |
} |
| 0 | 20 |
|
|
190
faf3a87a7d73
minor FIX : export dialog : wrong 'choose file format' label
rbernard
parents:
0
diff
changeset
|
21 |
gActions = {'print':{'dialogTitle':gettext('Print text'), 'chooseFormatLabel':gettext('How do you want to print?'), 'defaultMethod':'pdf', 'defaultWithColors':"no", 'defaultWhichComments':'all'}, |
| 341 | 22 |
'export':{'dialogTitle':gettext('Export text'), 'chooseFormatLabel':gettext('Choose file format'), 'defaultMethod':'pdf', 'defaultWithColors':"no", 'defaultWhichComments':'all'}} ; |
| 0 | 23 |
gCurrentAction = null ; |
| 341 | 24 |
|
| 0 | 25 |
_populateMethod = function(withColors) { |
| 341 | 26 |
var val = $("#p_method").val(); |
27 |
|
|
28 |
$("#p_method").html(""); |
|
29 |
|
|
30 |
for (var i = 0, ilen = gFormats.length ; i < ilen ; i++) { |
|
31 |
var actions = gFormats[i]['actions'] ; |
|
32 |
for (var j = 0, jlen = gFormats.length ; j < jlen ; j++) { |
|
33 |
if (actions[j] == gCurrentAction) |
|
34 |
$("<option value='" + gFormats[i]['extension'] + "'>" + gFormats[i]['label'] + "</option>").appendTo("#p_method"); |
|
35 |
} |
|
36 |
} |
|
37 |
if (val) |
|
38 |
$("#p_method").val(val); |
|
39 |
else |
|
40 |
$("#p_method").val(gActions[gCurrentAction]['defaultMethod']); |
|
41 |
|
|
| 0 | 42 |
} ; |
43 |
||
44 |
_populateMarkersColorsChoice = function(withColors) { |
|
| 341 | 45 |
var val = $("#p_color").val(); |
46 |
|
|
47 |
$("#p_color").html(""); |
|
48 |
|
|
49 |
$("<option value='0'>" + gettext("using markers only, no background colors") + "</option>").appendTo("#p_color"); |
|
50 |
$("<option value='1'>" + gettext("using markers and background colors") + "</option>").appendTo("#p_color"); |
|
| 0 | 51 |
|
| 341 | 52 |
if (val) |
53 |
$("#p_color").val(val); |
|
54 |
else |
|
55 |
$("#p_color").val(gActions[gCurrentAction]['defaultWithColors']); |
|
| 0 | 56 |
} ; |
57 |
||
58 |
_populateWhichComments = function() { |
|
| 341 | 59 |
var val = $("#p_comments").val(); |
| 0 | 60 |
|
| 341 | 61 |
$("#p_comments").html(""); |
62 |
var all = interpolate(gettext("all (%(nb_comments)s)"), {'nb_comments':frames['text_view_comments'].gDb.getCommentsNb(true)}, true) ; |
|
63 |
var currents = interpolate(gettext("current filtered ones (%(nb_comments)s)"), {'nb_comments':frames['text_view_comments'].gDb.getCommentsNb(false)}, true) ; |
|
64 |
$("<option value='all' >" + all +"</option>").appendTo($("#p_comments")) ; |
|
65 |
$("<option value='none' >" + gettext("none (0)") + "</option>").appendTo($("#p_comments")) ; |
|
66 |
$("<option value='filtered' >" + currents + "</option>").appendTo($("#p_comments")) ; |
|
67 |
|
|
68 |
if (val) |
|
69 |
$("#p_comments").val(val); |
|
70 |
else |
|
71 |
$("#p_comments").val(gActions[gCurrentAction]['defaultWhichComments']); |
|
| 0 | 72 |
} ; |
73 |
||
74 |
_manageMarkersColorsChoice = function() { |
|
| 341 | 75 |
var method = $("#p_method").val(); |
76 |
var which = $("#p_comments").val(); |
|
77 |
|
|
78 |
var disableMarkersColorsChoice ; |
|
79 |
if (gCurrentAction == 'print') |
|
80 |
disableMarkersColorsChoice = ((which == 'none') || (method == 'markdown') || (method == 'html')) ; |
|
81 |
if (gCurrentAction == 'export') |
|
82 |
disableMarkersColorsChoice = ((which == 'none') || (method == 'markdown')) ; |
|
83 |
|
|
84 |
if (disableMarkersColorsChoice) |
|
85 |
$("#p_color").val('no'); |
|
| 0 | 86 |
|
| 341 | 87 |
$("#p_color").attr("disabled", disableMarkersColorsChoice); |
88 |
|
|
| 0 | 89 |
} ; |
90 |
||
91 |
_initPrintDialog = function() { |
|
| 341 | 92 |
$('#p_comments').add($('#p_method')).change(function() { |
93 |
_manageMarkersColorsChoice() ; |
|
94 |
_prepareOpenInNewWindow() ; |
|
95 |
}) ; |
|
| 0 | 96 |
|
| 341 | 97 |
var buttons = {} ; |
98 |
buttons[gettext('Go !')] = function() { |
|
99 |
var whichComments = $("#p_comments").val() ; |
|
100 |
var withColor = $("#p_color").val() ; |
|
101 |
var format = $("#p_method").val() ; |
|
102 |
var download = (gCurrentAction == "export") ? "1" : (format == "html") ? "0" : "1" ; |
|
103 |
var targetUrl = $("#print_export_form").attr('target_action').replace(/FoRmAt/,format).replace(/DoWnLoAd/, download).replace(/WhIcHCoMmEnT/, whichComments).replace(/WiThCoLoR/, withColor) ; |
|
104 |
$("#print_export_form").attr('action', targetUrl) ; |
|
105 |
|
|
106 |
document['print_export_form'].submit(); |
|
107 |
$(this).dialog('close'); |
|
108 |
} ; |
|
109 |
buttons[gettext('Cancel')] = function() { |
|
110 |
$(this).dialog('close'); |
|
111 |
} ; |
|
| 0 | 112 |
|
| 341 | 113 |
|
114 |
$("#dialog_print_export").dialog({ |
|
115 |
bgiframe: true, |
|
116 |
autoOpen: false, |
|
117 |
width: 450, |
|
118 |
/* height: 300, |
|
119 |
autoResize: false,*/ |
|
120 |
modal: true, |
|
121 |
buttons: buttons, |
|
122 |
close: function() { |
|
123 |
; // empty |
|
124 |
} |
|
125 |
}); |
|
| 0 | 126 |
} |
127 |
||
128 |
openPrintDialog = function() { |
|
| 341 | 129 |
_openPrintExportDialog('print') ; |
| 0 | 130 |
} |
131 |
||
132 |
openExportDialog = function() { |
|
| 341 | 133 |
_openPrintExportDialog('export') ; |
| 0 | 134 |
} |
135 |
||
136 |
_prepareOpenInNewWindow = function() { |
|
| 341 | 137 |
var method = $("#p_method").val(); |
138 |
if ((method == "html") && (gCurrentAction == 'print')) |
|
139 |
$("#print_export_form").attr("target", "_blank") ; |
|
140 |
else |
|
141 |
$("#print_export_form").removeAttr("target") ; |
|
| 0 | 142 |
} |
143 |
||
144 |
_openPrintExportDialog = function(action) { |
|
| 341 | 145 |
gCurrentAction = action ; |
146 |
$("#ui-dialog-title-dialog_print_export").html(gActions[gCurrentAction]['dialogTitle']) ; |
|
147 |
$("#how").html(gActions[gCurrentAction]['chooseFormatLabel']) ; |
|
148 |
$("#print_export_action").val(action) ; // TODO check this still usefull |
|
149 |
|
|
150 |
|
|
151 |
_populateWhichComments() ; |
|
152 |
_populateMarkersColorsChoice() ; |
|
153 |
_populateMethod() ; |
|
154 |
|
|
155 |
_manageMarkersColorsChoice() ; |
|
156 |
_prepareOpenInNewWindow() ; |
|
| 0 | 157 |
|
| 341 | 158 |
$('#dialog_print_export').dialog('open'); |
| 0 | 159 |
} |
160 |
||
| 341 | 161 |
/* |
162 |
tips.text(t).effect("highlight",{},1500); |
|
163 |
*/ |