1 // Sidebar collapse |
1 // Sidebar collapse |
2 function enanium_toggle_sidebar(side) |
2 function enanium_toggle_sidebar(side) |
3 { |
3 { |
4 if ( document.getElementById('enanium_sidebar_' + side).style.display == 'none' ) |
4 if ( !document.getElementById('enanium_sidebar_' + side) ) |
5 { |
5 return false; |
6 // show |
6 if ( document.getElementById('enanium_sidebar_' + side).style.display == 'none' ) |
7 document.getElementById('enanium_sidebar_' + side).style.display = 'block'; |
7 { |
8 document.getElementById('enanium_sidebar_' + side + '_hidden').style.display = 'none'; |
8 // show |
9 createCookie(side + '_sidebar', 'open', 365); |
9 document.getElementById('enanium_sidebar_' + side).style.display = 'block'; |
10 } |
10 document.getElementById('enanium_sidebar_' + side + '_hidden').style.display = 'none'; |
11 else |
11 createCookie(side + '_sidebar', 'open', 365); |
12 { |
12 } |
13 // hide |
13 else |
14 document.getElementById('enanium_sidebar_' + side).style.display = 'none'; |
14 { |
15 document.getElementById('enanium_sidebar_' + side + '_hidden').style.display = 'block'; |
15 // hide |
16 createCookie(side + '_sidebar', 'collapsed', 365); |
16 document.getElementById('enanium_sidebar_' + side).style.display = 'none'; |
17 } |
17 document.getElementById('enanium_sidebar_' + side + '_hidden').style.display = 'block'; |
|
18 createCookie(side + '_sidebar', 'collapsed', 365); |
|
19 } |
18 } |
20 } |
19 |
21 |
20 function enanium_toggle_sidebar_right() |
22 function enanium_toggle_sidebar_right() |
21 { |
23 { |
22 enanium_toggle_sidebar('right'); |
24 enanium_toggle_sidebar('right'); |
23 } |
25 } |
24 |
26 |
25 function enanium_toggle_sidebar_left() |
27 function enanium_toggle_sidebar_left() |
26 { |
28 { |
27 enanium_toggle_sidebar('left'); |
29 enanium_toggle_sidebar('left'); |
28 } |
30 } |
29 |
31 |
30 addOnloadHook(function() |
32 addOnloadHook(function() |
31 { |
33 { |
32 if ( readCookie('left_sidebar') == 'collapsed' ) |
34 if ( readCookie('left_sidebar') == 'collapsed' && document.getElementById('enanium_sidebar_left') ) |
33 { |
35 { |
34 document.getElementById('enanium_sidebar_left').style.display = 'none'; |
36 document.getElementById('enanium_sidebar_left').style.display = 'none'; |
35 document.getElementById('enanium_sidebar_left_hidden').style.display = 'block'; |
37 document.getElementById('enanium_sidebar_left_hidden').style.display = 'block'; |
36 } |
38 } |
37 |
39 |
38 if ( readCookie('right_sidebar') == 'collapsed' ) |
40 if ( readCookie('right_sidebar') == 'collapsed' && document.getElementById('enanium_sidebar_right') ) |
39 { |
41 { |
40 document.getElementById('enanium_sidebar_right').style.display = 'none'; |
42 document.getElementById('enanium_sidebar_right').style.display = 'none'; |
41 document.getElementById('enanium_sidebar_right_hidden').style.display = 'block'; |
43 document.getElementById('enanium_sidebar_right_hidden').style.display = 'block'; |
42 } |
44 } |
43 }); |
45 }); |
44 |
46 |
45 // Inline rename |
47 // Inline rename |
46 |
48 |
47 function ajaxRenameInline() |
49 function ajaxRenameInline() |
48 { |
50 { |
49 if ( KILL_SWITCH || IE ) |
51 if ( KILL_SWITCH || IE ) |
50 return false; |
52 return false; |
51 // This trick is _so_ vBulletin... |
53 // This trick is _so_ vBulletin... |
52 elem = document.getElementById('h2PageName'); |
54 elem = document.getElementById('h2PageName'); |
53 if(!elem) return; |
55 if(!elem) return; |
54 elem.style.display = 'none'; |
56 elem.style.display = 'none'; |
55 name = elem.firstChild.nodeValue; |
57 name = elem.firstChild.nodeValue; |
56 textbox = document.createElement('input'); |
58 textbox = document.createElement('input'); |
57 textbox.type = 'text'; |
59 textbox.type = 'text'; |
58 textbox.value = name; |
60 textbox.value = name; |
59 textbox.id = 'pageheading'; |
61 textbox.id = 'pageheading'; |
60 textbox.size = name.length + 7; |
62 textbox.size = name.length + 7; |
61 textbox.onkeyup = function(e) { if(!e) return; if(e.keyCode == 13) ajaxRenameInlineSave(); if(e.keyCode == 27) ajaxRenameInlineCancel(); }; |
63 textbox.onkeyup = function(e) { if(!e) return; if(e.keyCode == 13) ajaxRenameInlineSave(); if(e.keyCode == 27) ajaxRenameInlineCancel(); }; |
62 textbox.oldname = name; |
64 textbox.oldname = name; |
63 elem.parentNode.insertBefore(textbox, elem); |
65 elem.parentNode.insertBefore(textbox, elem); |
64 document.onclick = ajaxRenameInlineCancel; |
66 document.onclick = ajaxRenameInlineCancel; |
65 |
67 |
66 load_component(['l10n', 'fadefilter', 'messagebox']); |
68 load_component(['l10n', 'fadefilter', 'messagebox']); |
67 textbox.focus(); |
69 textbox.focus(); |
68 textbox.select(); |
70 textbox.select(); |
69 } |
71 } |
70 |
72 |
71 function ajaxRenameInlineSave() |
73 function ajaxRenameInlineSave() |
72 { |
74 { |
73 elem1 = document.getElementById('h2PageName'); |
75 elem1 = document.getElementById('h2PageName'); |
74 elem2 = document.getElementById('pageheading'); |
76 elem2 = document.getElementById('pageheading'); |
75 if(!elem1 || !elem2) return; |
77 if(!elem1 || !elem2) return; |
76 value = elem2.value; |
78 value = elem2.value; |
77 elem2.parentNode.removeChild(elem2); // just destroy the thing |
79 elem2.parentNode.removeChild(elem2); // just destroy the thing |
78 elem1.removeChild(elem1.firstChild); |
80 elem1.removeChild(elem1.firstChild); |
79 elem1.appendChild(document.createTextNode(value)); |
81 elem1.appendChild(document.createTextNode(value)); |
80 elem1.style.display = 'block'; |
82 elem1.style.display = 'block'; |
81 if(!value || value=='' || value==elem2.oldname) return; |
83 if(!value || value=='' || value==elem2.oldname) return; |
82 setAjaxLoading(); |
84 setAjaxLoading(); |
83 ajaxPost(stdAjaxPrefix+'&_mode=rename', 'newtitle='+ajaxEscape(value), function() { |
85 ajaxPost(stdAjaxPrefix+'&_mode=rename', 'newtitle='+ajaxEscape(value), function() { |
84 if ( ajax.readyState == 4 ) |
86 if ( ajax.readyState == 4 ) |
85 { |
87 { |
86 unsetAjaxLoading(); |
88 unsetAjaxLoading(); |
87 var response = String(ajax.responseText); |
89 var response = String(ajax.responseText); |
88 if ( !check_json_response(response) ) |
90 if ( !check_json_response(response) ) |
89 { |
91 { |
90 handle_invalid_json(response); |
92 handle_invalid_json(response); |
91 return false; |
93 return false; |
92 } |
94 } |
93 response = parseJSON(response); |
95 response = parseJSON(response); |
94 if ( response.success ) |
96 if ( response.success ) |
95 { |
97 { |
96 new MessageBox( MB_OK|MB_ICONINFORMATION, $lang.get('ajax_rename_success_title'), $lang.get('ajax_rename_success_body', { page_name_new: value }) ); |
98 new MessageBox( MB_OK|MB_ICONINFORMATION, $lang.get('ajax_rename_success_title'), $lang.get('ajax_rename_success_body', { page_name_new: value }) ); |
97 } |
99 } |
98 else |
100 else |
99 { |
101 { |
100 alert(response.error); |
102 alert(response.error); |
101 } |
103 } |
102 } |
104 } |
103 }); |
105 }); |
104 } |
106 } |
105 |
107 |
106 function ajaxRenameInlineCancel(e) |
108 function ajaxRenameInlineCancel(e) |
107 { |
109 { |
108 if ( typeof(e) != 'object' && IE ) |
110 if ( typeof(e) != 'object' && IE ) |
109 e = window.event; |
111 e = window.event; |
110 elem1 = document.getElementById('h2PageName'); |
112 elem1 = document.getElementById('h2PageName'); |
111 elem2 = document.getElementById('pageheading'); |
113 elem2 = document.getElementById('pageheading'); |
112 if(!elem1 || !elem2) return; |
114 if(!elem1 || !elem2) return; |
113 if ( typeof(e) == 'object' && e.target ) |
115 if ( typeof(e) == 'object' && e.target ) |
114 { |
116 { |
115 if(e.target == elem2) |
117 if(e.target == elem2) |
116 return; |
118 return; |
117 } |
119 } |
118 //value = elem2.value; |
120 //value = elem2.value; |
119 elem2.parentNode.removeChild(elem2); // just destroy the thing |
121 elem2.parentNode.removeChild(elem2); // just destroy the thing |
120 //elem1.innerHTML = value; |
122 //elem1.innerHTML = value; |
121 elem1.style.display = 'block'; |
123 elem1.style.display = 'block'; |
122 document.onclick = null; |
124 document.onclick = null; |
123 } |
125 } |
124 |
126 |
125 if ( window.auth_rename ) |
127 if ( window.auth_rename ) |
126 { |
128 { |
127 addOnloadHook(function() |
129 addOnloadHook(function() |
128 { |
130 { |
129 var h2 = document.getElementById('h2PageName'); |
131 var h2 = document.getElementById('h2PageName'); |
130 if ( h2 ) |
132 if ( h2 ) |
131 { |
133 { |
132 h2.ondblclick = function() |
134 h2.ondblclick = function() |
133 { |
135 { |
134 ajaxRenameInline(); |
136 ajaxRenameInline(); |
135 } |
137 } |
136 } |
138 } |
137 }); |
139 }); |
138 } |
140 } |