##// END OF EJS Templates
Fixed: encoding problem when adding non-ASCII issue category in the new issue page (#1286)....
Jean-Philippe Lang -
r1428:62125cad33f8
parent child
Show More
@@ -1,122 +1,122
1 /* redMine - project management software
1 /* redMine - project management software
2 Copyright (C) 2006-2008 Jean-Philippe Lang */
2 Copyright (C) 2006-2008 Jean-Philippe Lang */
3
3
4 function checkAll (id, checked) {
4 function checkAll (id, checked) {
5 var els = Element.descendants(id);
5 var els = Element.descendants(id);
6 for (var i = 0; i < els.length; i++) {
6 for (var i = 0; i < els.length; i++) {
7 if (els[i].disabled==false) {
7 if (els[i].disabled==false) {
8 els[i].checked = checked;
8 els[i].checked = checked;
9 }
9 }
10 }
10 }
11 }
11 }
12
12
13 var fileFieldCount = 1;
13 var fileFieldCount = 1;
14
14
15 function addFileField() {
15 function addFileField() {
16 if (fileFieldCount >= 10) return false
16 if (fileFieldCount >= 10) return false
17 fileFieldCount++;
17 fileFieldCount++;
18 var f = document.createElement("input");
18 var f = document.createElement("input");
19 f.type = "file";
19 f.type = "file";
20 f.name = "attachments[" + fileFieldCount + "][file]";
20 f.name = "attachments[" + fileFieldCount + "][file]";
21 f.size = 30;
21 f.size = 30;
22 var d = document.createElement("input");
22 var d = document.createElement("input");
23 d.type = "text";
23 d.type = "text";
24 d.name = "attachments[" + fileFieldCount + "][description]";
24 d.name = "attachments[" + fileFieldCount + "][description]";
25 d.size = 60;
25 d.size = 60;
26
26
27 p = document.getElementById("attachments_fields");
27 p = document.getElementById("attachments_fields");
28 p.appendChild(document.createElement("br"));
28 p.appendChild(document.createElement("br"));
29 p.appendChild(f);
29 p.appendChild(f);
30 p.appendChild(d);
30 p.appendChild(d);
31 }
31 }
32
32
33 function showTab(name) {
33 function showTab(name) {
34 var f = $$('div#content .tab-content');
34 var f = $$('div#content .tab-content');
35 for(var i=0; i<f.length; i++){
35 for(var i=0; i<f.length; i++){
36 Element.hide(f[i]);
36 Element.hide(f[i]);
37 }
37 }
38 var f = $$('div.tabs a');
38 var f = $$('div.tabs a');
39 for(var i=0; i<f.length; i++){
39 for(var i=0; i<f.length; i++){
40 Element.removeClassName(f[i], "selected");
40 Element.removeClassName(f[i], "selected");
41 }
41 }
42 Element.show('tab-content-' + name);
42 Element.show('tab-content-' + name);
43 Element.addClassName('tab-' + name, "selected");
43 Element.addClassName('tab-' + name, "selected");
44 return false;
44 return false;
45 }
45 }
46
46
47 function setPredecessorFieldsVisibility() {
47 function setPredecessorFieldsVisibility() {
48 relationType = $('relation_relation_type');
48 relationType = $('relation_relation_type');
49 if (relationType && relationType.value == "precedes") {
49 if (relationType && relationType.value == "precedes") {
50 Element.show('predecessor_fields');
50 Element.show('predecessor_fields');
51 } else {
51 } else {
52 Element.hide('predecessor_fields');
52 Element.hide('predecessor_fields');
53 }
53 }
54 }
54 }
55
55
56 function promptToRemote(text, param, url) {
56 function promptToRemote(text, param, url) {
57 value = prompt(text + ':');
57 value = prompt(text + ':');
58 if (value) {
58 if (value) {
59 new Ajax.Request(url + '?' + param + '=' + value, {asynchronous:true, evalScripts:true});
59 new Ajax.Request(url + '?' + param + '=' + encodeURIComponent(value), {asynchronous:true, evalScripts:true});
60 return false;
60 return false;
61 }
61 }
62 }
62 }
63
63
64 function collapseScmEntry(id) {
64 function collapseScmEntry(id) {
65 var els = document.getElementsByClassName(id, 'browser');
65 var els = document.getElementsByClassName(id, 'browser');
66 for (var i = 0; i < els.length; i++) {
66 for (var i = 0; i < els.length; i++) {
67 if (els[i].hasClassName('open')) {
67 if (els[i].hasClassName('open')) {
68 collapseScmEntry(els[i].id);
68 collapseScmEntry(els[i].id);
69 }
69 }
70 Element.hide(els[i]);
70 Element.hide(els[i]);
71 }
71 }
72 $(id).removeClassName('open');
72 $(id).removeClassName('open');
73 }
73 }
74
74
75 function expandScmEntry(id) {
75 function expandScmEntry(id) {
76 var els = document.getElementsByClassName(id, 'browser');
76 var els = document.getElementsByClassName(id, 'browser');
77 for (var i = 0; i < els.length; i++) {
77 for (var i = 0; i < els.length; i++) {
78 Element.show(els[i]);
78 Element.show(els[i]);
79 if (els[i].hasClassName('loaded') && !els[i].hasClassName('collapsed')) {
79 if (els[i].hasClassName('loaded') && !els[i].hasClassName('collapsed')) {
80 expandScmEntry(els[i].id);
80 expandScmEntry(els[i].id);
81 }
81 }
82 }
82 }
83 $(id).addClassName('open');
83 $(id).addClassName('open');
84 }
84 }
85
85
86 function scmEntryClick(id) {
86 function scmEntryClick(id) {
87 el = $(id);
87 el = $(id);
88 if (el.hasClassName('open')) {
88 if (el.hasClassName('open')) {
89 collapseScmEntry(id);
89 collapseScmEntry(id);
90 el.addClassName('collapsed');
90 el.addClassName('collapsed');
91 return false;
91 return false;
92 } else if (el.hasClassName('loaded')) {
92 } else if (el.hasClassName('loaded')) {
93 expandScmEntry(id);
93 expandScmEntry(id);
94 el.removeClassName('collapsed');
94 el.removeClassName('collapsed');
95 return false;
95 return false;
96 }
96 }
97 if (el.hasClassName('loading')) {
97 if (el.hasClassName('loading')) {
98 return false;
98 return false;
99 }
99 }
100 el.addClassName('loading');
100 el.addClassName('loading');
101 return true;
101 return true;
102 }
102 }
103
103
104 function scmEntryLoaded(id) {
104 function scmEntryLoaded(id) {
105 Element.addClassName(id, 'open');
105 Element.addClassName(id, 'open');
106 Element.addClassName(id, 'loaded');
106 Element.addClassName(id, 'loaded');
107 Element.removeClassName(id, 'loading');
107 Element.removeClassName(id, 'loading');
108 }
108 }
109
109
110 /* shows and hides ajax indicator */
110 /* shows and hides ajax indicator */
111 Ajax.Responders.register({
111 Ajax.Responders.register({
112 onCreate: function(){
112 onCreate: function(){
113 if ($('ajax-indicator') && Ajax.activeRequestCount > 0) {
113 if ($('ajax-indicator') && Ajax.activeRequestCount > 0) {
114 Element.show('ajax-indicator');
114 Element.show('ajax-indicator');
115 }
115 }
116 },
116 },
117 onComplete: function(){
117 onComplete: function(){
118 if ($('ajax-indicator') && Ajax.activeRequestCount == 0) {
118 if ($('ajax-indicator') && Ajax.activeRequestCount == 0) {
119 Element.hide('ajax-indicator');
119 Element.hide('ajax-indicator');
120 }
120 }
121 }
121 }
122 });
122 });
General Comments 0
You need to be logged in to leave comments. Login now