					function js_base64_encode(sStr) {
						var sWinChrs = 'АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя'
						var sBase64Chrs  = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'
						var arrBase64  = sBase64Chrs.split('')

						var a = new Array();
						var i = 0;
						for(i=0; i<sStr.length; i++ ) {
							var cch=sStr.charCodeAt(i)
							if (cch>127) {
								cch=sWinChrs.indexOf(sStr.charAt(i))+163; if(cch<163) continue; 
							}
							a.push(cch)
						};
						var s=Array(), lPos = a.length - a.length % 3
						for (i=0; i<lPos; i+=3) {
							var t=(a[i]<<16)+(a[i+1]<<8)+a[i+2]
							s.push(arrBase64[(t>>18)&0x3f]+arrBase64[(t>>12)&0x3f]+arrBase64[(t>>6)&0x3f]+arrBase64[t&0x3f] )
						}
						switch (a.length-lPos) {
							case 1 : var t=a[lPos]<<4; s.push(arrBase64[(t>>6)&0x3f]+arrBase64[t&0x3f]+'=='); break
							case 2 : var t=(a[lPos]<<10)+(a[lPos+1]<<2); s.push(arrBase64[(t>>12)&0x3f]+arrBase64[(t>>6)&0x3f]+arrBase64[t&0x3f]+'='); break
						}
						return s.join('')
					}

					function fs_rename_dlg(s_link, old_name) {
						var sDlgContent = '<div id="umi-dialog">'
											+ '<form method="post" action="' + s_link + '" id="umi-dialog-frm">'
												+ '<input value="' + old_name + '" name="old_name" style="width:98%" type="hidden" />'
												+ '<input value="' + old_name + '" name="new_name" style="width:98%" type="text" id="im_new_folder_name" />'
											+ '</form>'
										+ '</div>';

						Dialog.confirm(sDlgContent, {
							width: 300,
							okLabel: getLabel('js-filemanager-rename'),
							cancelLabel: getLabel('js-filemanager-cancel'),
							title: getLabel('js-filemanager-rename-title'),
							className: 'butterfly',
							onOk: function () {
								$('im_new_folder_name').focus();
								var sName = $F('im_new_folder_name');
								
								if (sName.length) {
									$('umi-dialog-frm').submit();
								}
							}
						});

						return false;
					}

					function fs_md_dlg(s_link) {

						var sDlgContent = '<div id="umi-dialog">'
											+ '<form method="post" action="'+s_link+'" id="umi-dialog-frm">'
												+ '<input name="newdir" style="width:98%" type="text" id="im_new_folder_name" />'
											+ '</form>'
										+ '</div>';

						Dialog.confirm(sDlgContent, {
							width: 300,
							okLabel: getLabel('js-filemanager-create'),
							cancelLabel: getLabel('js-filemanager-cancel'),
							title: getLabel('js-filemanager-create-title'),
							className: 'butterfly',
							onOk: function () {
								$('im_new_folder_name').focus();
								var sName = $F('im_new_folder_name');
								
								if (sName.length) {
									$('umi-dialog-frm').submit();
								}
							}
						});


						return false;
					}
					
					function fs_change_dir() {
						oNewDir = document.getElementById('fs_path');
						if (oNewDir) {
							sNewDir = js_base64_encode('' + oNewDir.value);
							document.location.href = '/admin/filemanager/directory_list/?dir=' + sNewDir;
						}
					}
					
					function fs_add_to_upload(oFileInput) {
						var oReadyUpload = document.getElementById('fs_ready_upload');
						var oNextUploadDiv = document.getElementById('fs_next_upload');
						if (oFileInput && oReadyUpload && oNextUploadDiv) {
							oFileInput.style.visibility = "hidden";
							oFileInput.style.display = "none";
							var oNextFile = document.createElement('DIV');
							oNextFile.innerHTML = oFileInput.value;
							oReadyUpload.appendChild(oNextFile);

							var oNextUpload = document.createElement('INPUT');
							oNextUpload.type = 'file';
							oNextUpload.name = 'fs_upl_files[]';
							oNextUpload.onchange = function() {
								fs_add_to_upload(oNextUpload);
							}

							oNextUploadDiv.appendChild(oNextUpload);
						}
						
					}

