1 | {footer_script} |
---|
2 | var rotateImagesMessage = "{'Images rotation in progress...'|@translate}"; |
---|
3 | var autoRotateOptionText = "{'auto (EXIF orientation tag)'|@translate}"; |
---|
4 | var ri_pwg_token = '{$RI_PWG_TOKEN}'; |
---|
5 | {literal} |
---|
6 | jQuery(document).ready(function() { |
---|
7 | function autoRotateOption() { |
---|
8 | if (jQuery("#rotate_hd").is(':checked')) { |
---|
9 | jQuery("<option/>") |
---|
10 | .attr("id", "autoRotateOption") |
---|
11 | .attr("value", "auto") |
---|
12 | .attr("selected", "selected") |
---|
13 | .text(autoRotateOptionText) |
---|
14 | .appendTo('select[name="rotate_angle"]') |
---|
15 | ; |
---|
16 | } |
---|
17 | else { |
---|
18 | jQuery("#autoRotateOption").remove(); |
---|
19 | } |
---|
20 | } |
---|
21 | |
---|
22 | autoRotateOption(); |
---|
23 | jQuery('#rotate_hd').click(function() { |
---|
24 | autoRotateOption(); |
---|
25 | }); |
---|
26 | |
---|
27 | jQuery('#applyAction').click(function(e) { |
---|
28 | if (elements.length != 0) |
---|
29 | { |
---|
30 | return true; |
---|
31 | } |
---|
32 | else if (jQuery('[name="selectAction"]').val() == 'rotateImg') |
---|
33 | { |
---|
34 | angle = jQuery('select[name="rotate_angle"]').val(); |
---|
35 | rotate_hd = jQuery("#rotate_hd").is(':checked'); |
---|
36 | e.stopPropagation(); |
---|
37 | } |
---|
38 | else |
---|
39 | { |
---|
40 | return true; |
---|
41 | } |
---|
42 | jQuery('.bulkAction').hide(); |
---|
43 | jQuery('#regenerationText').html(rotateImagesMessage); |
---|
44 | var maxRequests=1; |
---|
45 | |
---|
46 | var queuedManager = jQuery.manageAjax.create('queued', { |
---|
47 | queue: true, |
---|
48 | cacheResponse: false, |
---|
49 | maxRequests: maxRequests |
---|
50 | }); |
---|
51 | if (jQuery('input[name="setSelected"]').attr('checked')) |
---|
52 | elements = all_elements; |
---|
53 | else |
---|
54 | jQuery('input[name="selection[]"]').each(function() { |
---|
55 | if (jQuery(this).attr('checked')) { |
---|
56 | elements.push(jQuery(this).val()); |
---|
57 | } |
---|
58 | }); |
---|
59 | progressBar_max = elements.length; |
---|
60 | todo = 0; |
---|
61 | |
---|
62 | jQuery('#applyActionBlock').hide(); |
---|
63 | jQuery('select[name="selectAction"]').hide(); |
---|
64 | jQuery('#regenerationMsg').show(); |
---|
65 | jQuery('#progressBar').progressBar(0, { |
---|
66 | max: progressBar_max, |
---|
67 | textFormat: 'fraction', |
---|
68 | boxImage: 'themes/default/images/progressbar.gif', |
---|
69 | barImage: 'themes/default/images/progressbg_orange.gif' |
---|
70 | }); |
---|
71 | |
---|
72 | for (i=0;i<elements.length;i++) { |
---|
73 | queuedManager.add({ |
---|
74 | type: 'GET', |
---|
75 | url: 'ws.php', |
---|
76 | data: { |
---|
77 | method: "pwg.image.rotate", |
---|
78 | format: 'json', |
---|
79 | angle: angle, |
---|
80 | rotate_hd: rotate_hd, |
---|
81 | pwg_token: ri_pwg_token, |
---|
82 | image_id: elements[i] |
---|
83 | }, |
---|
84 | dataType: 'json', |
---|
85 | success: ( function(data) { progress(++todo, progressBar_max, data['result']) }), |
---|
86 | error: ( function(data) { progress(++todo, progressBar_max, false) }) |
---|
87 | }); |
---|
88 | } |
---|
89 | return false; |
---|
90 | }); |
---|
91 | }); |
---|
92 | {/literal}{/footer_script} |
---|
93 | |
---|
94 | <div id="rotate_image" class="bulkAction"> |
---|
95 | {if $library != 'gd'} |
---|
96 | <p><label> |
---|
97 | <input type="checkbox" name="rotate_hd" id="rotate_hd" checked="checked"> |
---|
98 | <strong>{'Also rotate HD image'|@translate}</strong> |
---|
99 | </label></p> |
---|
100 | {/if} |
---|
101 | <p><label> |
---|
102 | <strong>{'Angle'|@translate}</strong> |
---|
103 | <br> |
---|
104 | <select name="rotate_angle"> |
---|
105 | {foreach from=$angles item=angle} |
---|
106 | <option value="{$angle.value}" {if $saved_angle eq $angle.value}selected="selected"{/if}>{$angle.name}</option> |
---|
107 | {/foreach} |
---|
108 | </select> |
---|
109 | </label></p> |
---|
110 | </div> |
---|