[ Index ] |
PHP Cross Reference of vtigercrm-6.1.0 |
[Summary view] [Print] [Text view]
1 <?php 2 3 /** This file is part of KCFinder project 4 * 5 * @desc Toolbar functionality 6 * @package KCFinder 7 * @version 2.21 8 * @author Pavel Tzonkov <[email protected]> 9 * @copyright 2010 KCFinder Project 10 * @license http://www.opensource.org/licenses/gpl-2.0.php GPLv2 11 * @license http://www.opensource.org/licenses/lgpl-2.1.php LGPLv2 12 * @link http://kcfinder.sunhater.com 13 */?> 14 15 browser.initToolbar = function() { 16 $('#toolbar a').click(function() { 17 browser.hideDialog(); 18 }); 19 20 if (!_.kuki.isSet('displaySettings')) 21 _.kuki.set('displaySettings', 'off'); 22 23 if (_.kuki.get('displaySettings') == 'on') { 24 $('#toolbar a[href="kcact:settings"]').addClass('selected'); 25 $('#settings').css('display', 'block'); 26 browser.resize(); 27 } 28 29 $('#toolbar a[href="kcact:settings"]').click(function () { 30 if ($('#settings').css('display') == 'none') { 31 $(this).addClass('selected'); 32 _.kuki.set('displaySettings', 'on'); 33 $('#settings').css('display', 'block'); 34 browser.fixFilesHeight(); 35 } else { 36 $(this).removeClass('selected'); 37 _.kuki.set('displaySettings', 'off'); 38 $('#settings').css('display', 'none'); 39 browser.fixFilesHeight(); 40 } 41 return false; 42 }); 43 44 $('#toolbar a[href="kcact:refresh"]').click(function() { 45 browser.refresh(); 46 return false; 47 }); 48 49 if (window.opener || this.opener.TinyMCE || $('iframe', window.parent.document).get(0)) 50 $('#toolbar a[href="kcact:maximize"]').click(function() { 51 browser.maximize(this); 52 return false; 53 }); 54 else 55 $('#toolbar a[href="kcact:maximize"]').css('display', 'none'); 56 57 $('#toolbar a[href="kcact:about"]').click(function() { 58 var html = '<div class="box about">' + 59 '<div class="title"><a href="http://kcfinder.sunhater.com" target="_blank">KCFinder</a> v2.21</div>' + 60 '<div>Licenses: GPLv2 & LGPLv2</div>' + 61 '<div>Copyright ©2010 Pavel Tzonkov</div>' + 62 '<button>' + _.htmlValue(browser.label("OK")) + '</button>' + 63 '</div>'; 64 $('#dialog').html(html); 65 browser.showDialog(); 66 $('#dialog button').get(0).focus(); 67 var close = function() { 68 browser.hideDialog(); 69 browser.unshadow(); 70 } 71 $('#dialog button').click(close); 72 $('#dialog button').keypress(function(e) { 73 if (e.keyCode == 27) close(); 74 }); 75 $('#dialog').unbind(); 76 return false; 77 }); 78 79 this.initUploadButton(); 80 }; 81 82 browser.initUploadButton = function() { 83 var btn = $('#toolbar a[href="kcact:upload"]'); 84 if (this.readonly) { 85 btn.css('display', 'none'); 86 return; 87 } 88 var top = btn.get(0).offsetTop; 89 var width = btn.outerWidth(); 90 var height = btn.outerHeight(); 91 $('#toolbar').prepend('<div id="upload" style="top:' + top + 'px;width:' + width + 'px;height:' + height + 'px">' + 92 '<form enctype="multipart/form-data" method="post" target="uploadResponse" action="' + browser.baseGetData('upload') + '">' + 93 '<input type="file" name="upload" onchange="browser.uploadFile(this.form)" style="height:' + height + 'px" />' + 94 '<input type="hidden" name="dir" value="" />' + 95 '</form>' + 96 '</div>'); 97 $('#upload input').css('margin-left', "-" + ($('#upload input').outerWidth() - width) + "px"); 98 $('#upload').mouseover(function() { 99 $('#toolbar a[href="kcact:upload"]').addClass('hover'); 100 }); 101 $('#upload').mouseout(function() { 102 $('#toolbar a[href="kcact:upload"]').removeClass('hover'); 103 }); 104 }; 105 106 browser.uploadFile = function(form) { 107 if (!this.dirWritable) { 108 alert(this.label("Cannot write to upload folder.")); 109 $('#upload').detach(); 110 browser.initUploadButton(); 111 return; 112 } 113 form.elements[1].value = browser.dir; 114 $('<iframe id="uploadResponse" name="uploadResponse" src="javascript:;"></iframe>').prependTo(document.body); 115 $('#loading').html(this.label("Uploading file...")); 116 $('#loading').css('display', 'inline'); 117 form.submit(); 118 $('#uploadResponse').load(function() { 119 var response = $(this).contents().find('body').html(); 120 $('#loading').css('display', 'none'); 121 if (response.length && response.substr(0, 1) != '/') 122 alert(response); 123 else 124 browser.refresh(response.substr(1, response.length - 1)); 125 $('#upload').detach(); 126 setTimeout(function() { 127 $('#uploadResponse').detach(); 128 }, 1); 129 browser.initUploadButton(); 130 }); 131 }; 132 133 browser.maximize = function(button) { 134 if (window.opener) { 135 window.moveTo(0, 0); 136 width = screen.availWidth; 137 height = screen.availHeight; 138 if ($.browser.opera) 139 height -= 50; 140 window.resizeTo(width, height); 141 142 } else if (browser.opener.TinyMCE) { 143 var win, ifr, id; 144 145 $('iframe', window.parent.document).each(function() { 146 if (/^mce_\d+_ifr$/.test($(this).attr('id'))) { 147 id = parseInt($(this).attr('id').replace(/^mce_(\d+)_ifr$/, "$1")); 148 win = $('#mce_' + id, window.parent.document); 149 ifr = $('#mce_' + id + '_ifr', window.parent.document); 150 } 151 }); 152 153 if ($(button).hasClass('selected')) { 154 $(button).removeClass('selected'); 155 win.css('left', browser.maximizeMCE.left + 'px'); 156 win.css('top', browser.maximizeMCE.top + 'px'); 157 win.css('width', browser.maximizeMCE.width + 'px'); 158 win.css('height', browser.maximizeMCE.height + 'px'); 159 ifr.css('width', browser.maximizeMCE.width - browser.maximizeMCE.Hspace + 'px'); 160 ifr.css('height', browser.maximizeMCE.height - browser.maximizeMCE.Vspace + 'px'); 161 162 } else { 163 $(button).addClass('selected') 164 browser.maximizeMCE = { 165 width: _.nopx(win.css('width')), 166 height: _.nopx(win.css('height')), 167 left: win.position().left, 168 top: win.position().top, 169 Hspace: _.nopx(win.css('width')) - _.nopx(ifr.css('width')), 170 Vspace: _.nopx(win.css('height')) - _.nopx(ifr.css('height')) 171 }; 172 var width = $(window.parent).width(); 173 var height = $(window.parent).height(); 174 win.css('left', $(window.parent).scrollLeft() + 'px'); 175 win.css('top', $(window.parent).scrollTop() + 'px'); 176 win.css('width', width + 'px'); 177 win.css('height', height + 'px'); 178 ifr.css('width', width - browser.maximizeMCE.Hspace + 'px'); 179 ifr.css('height', height - browser.maximizeMCE.Vspace + 'px'); 180 } 181 182 } else if ($('iframe', window.parent.document).get(0)) { 183 var ifrm = $('iframe[name="' + window.name + '"]', window.parent.document); 184 var parent = ifrm.parent(); 185 var width, height; 186 if ($(button).hasClass('selected')) { 187 $(button).removeClass('selected'); 188 if (browser.maximizeThread) { 189 clearInterval(browser.maximizeThread); 190 browser.maximizeThread = null; 191 } 192 if (browser.maximizeW) browser.maximizeW = null; 193 if (browser.maximizeH) browser.maximizeH = null; 194 $.each($('*', window.parent.document).get(), function(i, e) { 195 e.style.display = browser.maximizeDisplay[i]; 196 }); 197 ifrm.css('display', browser.maximizeCSS.display); 198 ifrm.css('position', browser.maximizeCSS.position); 199 ifrm.css('left', browser.maximizeCSS.left); 200 ifrm.css('top', browser.maximizeCSS.top); 201 ifrm.css('width', browser.maximizeCSS.width); 202 ifrm.css('height', browser.maximizeCSS.height); 203 $(window.parent).scrollLeft(browser.maximizeLest); 204 $(window.parent).scrollTop(browser.maximizeTop); 205 206 } else { 207 $(button).addClass('selected'); 208 browser.maximizeCSS = { 209 display: ifrm.css('display'), 210 position: ifrm.css('position'), 211 left: ifrm.css('left'), 212 top: ifrm.css('top'), 213 width: ifrm.outerWidth() + 'px', 214 height: ifrm.outerHeight() + 'px' 215 }; 216 browser.maximizeTop = $(window.parent).scrollTop(); 217 browser.maximizeLeft = $(window.parent).scrollLeft(); 218 browser.maximizeDisplay = []; 219 $.each($('*', window.parent.document).get(), function(i, e) { 220 browser.maximizeDisplay[i] = $(e).css('display'); 221 $(e).css('display', 'none'); 222 }); 223 224 ifrm.css('display', 'block'); 225 ifrm.parents().css('display', 'block'); 226 var resize = function() { 227 width = $(window.parent).width(); 228 height = $(window.parent).height(); 229 if (!browser.maximizeW || (browser.maximizeW != width) || 230 !browser.maximizeH || (browser.maximizeH != height) 231 ) { 232 browser.maximizeW = width; 233 browser.maximizeH = height; 234 ifrm.css('width', width + 'px'); 235 ifrm.css('height', height + 'px'); 236 browser.resize(); 237 } 238 } 239 ifrm.css('position', 'absolute'); 240 if ((ifrm.offset().left == ifrm.position().left) && 241 (ifrm.offset().top == ifrm.position().top) 242 ) { 243 ifrm.css('left', '0'); 244 ifrm.css('top', '0'); 245 } else { 246 ifrm.css('left', - ifrm.offset().left +'px'); 247 ifrm.css('top', - ifrm.offset().top + 'px'); 248 } 249 resize(); 250 browser.maximizeThread = setInterval(resize, 250); 251 } 252 } 253 }; 254 255 browser.refresh = function(selected) { 256 this.fadeFiles(); 257 $.ajax({ 258 type: 'POST', 259 url: browser.baseGetData('chDir'), 260 data: {dir:browser.dir}, 261 async: false, 262 success: function(xml) { 263 if (browser.errors(xml)) return; 264 var files = xml.getElementsByTagName('file'); 265 var dirWritable = 266 xml.getElementsByTagName('files')[0].getAttribute('dirWritable'); 267 browser.dirWritable = (dirWritable == 'yes'); 268 browser.loadFiles(files); 269 browser.orderFiles(null, selected); 270 browser.statusDir(); 271 }, 272 error: function(request, error) { 273 $('#files > div').css({opacity:'', filter:''}); 274 $('#files').html(browser.label("Unknown error.")); 275 } 276 }); 277 };
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
Generated: Fri Nov 28 20:08:37 2014 | Cross-referenced by PHPXref 0.7.1 |