diff options
author | Hugues Hiegel <root@paranoid> | 2015-04-21 12:45:58 +0200 |
---|---|---|
committer | Hugues Hiegel <root@paranoid> | 2015-04-21 12:45:58 +0200 |
commit | ef2e7b3f9d264ec146d4dae257b1e295ab3b462a (patch) | |
tree | 76b4a98d7b3b38f691c4fbee1612197ab6615c2b /plugins/legacy_browser/js/iehacks.js | |
parent | d09b64c6270c638059b003922db508f95d32d555 (diff) |
updates - plugins as a separate git folder
Diffstat (limited to 'plugins/legacy_browser/js/iehacks.js')
-rw-r--r-- | plugins/legacy_browser/js/iehacks.js | 108 |
1 files changed, 0 insertions, 108 deletions
diff --git a/plugins/legacy_browser/js/iehacks.js b/plugins/legacy_browser/js/iehacks.js deleted file mode 100644 index 105b7dabc..000000000 --- a/plugins/legacy_browser/js/iehacks.js +++ /dev/null @@ -1,108 +0,0 @@ - -// Make getElementById() case-sensitive on IE7 -document._getElementById = document.getElementById; -document.getElementById = function(id) -{ - var i = 0, obj = document._getElementById(id); - - if (obj && obj.id != id) - while ((obj = document.all[i]) && obj.id != id) - i++; - - return obj; -} - -// fix missing :last-child selectors -$(document).ready(function() { - if (rcmail && rcmail.env.skin != 'classic') - $('ul.treelist ul').each(function(i, ul) { - $('li:last-child', ul).css('border-bottom', 0); - }); -}); - -// gets cursor position (IE<9) -rcube_webmail.prototype.get_caret_pos = function(obj) -{ - if (document.selection && document.selection.createRange) { - var range = document.selection.createRange(); - if (range.parentElement() != obj) - return 0; - - var gm = range.duplicate(); - if (obj.tagName == 'TEXTAREA') - gm.moveToElementText(obj); - else - gm.expand('textedit'); - - gm.setEndPoint('EndToStart', range); - var p = gm.text.length; - - return p <= obj.value.length ? p : -1; - } - - return obj.value.length; -}; - -// moves cursor to specified position (IE<9) -rcube_webmail.prototype.set_caret_pos = function(obj, pos) -{ - if (obj.createTextRange) { - var range = obj.createTextRange(); - range.collapse(true); - range.moveEnd('character', pos); - range.moveStart('character', pos); - range.select(); - } -}; - -// get selected text from an input field (IE<9) -// http://stackoverflow.com/questions/7186586/how-to-get-the-selected-text-in-textarea-using-jquery-in-internet-explorer-7 -rcube_webmail.prototype.get_input_selection = function(obj) -{ - var start = 0, end = 0, len, - normalizedValue, textInputRange, endRange, - range = document.selection.createRange(); - - if (range && range.parentElement() == obj) { - len = obj.value.length; - normalizedValue = obj.value; //.replace(/\r\n/g, "\n"); - - // create a working TextRange that lives only in the input - textInputRange = obj.createTextRange(); - textInputRange.moveToBookmark(range.getBookmark()); - - // Check if the start and end of the selection are at the very end - // of the input, since moveStart/moveEnd doesn't return what we want - // in those cases - endRange = obj.createTextRange(); - endRange.collapse(false); - - if (textInputRange.compareEndPoints("StartToEnd", endRange) > -1) { - start = end = len; - } - else { - start = -textInputRange.moveStart("character", -len); - start += normalizedValue.slice(0, start).split("\n").length - 1; - - if (textInputRange.compareEndPoints("EndToEnd", endRange) > -1) { - end = len; - } - else { - end = -textInputRange.moveEnd("character", -len); - end += normalizedValue.slice(0, end).split("\n").length - 1; - } - } - } - - return {start: start, end: end, text: normalizedValue.substr(start, end-start)}; -}; - -// For IE<9 we have to do it this way -// otherwise the form will be posted to a new window -rcube_webmail.prototype.async_upload_form_frame = function(name) -{ - document.body.insertAdjacentHTML('BeforeEnd', '<iframe name="' + name + '"' - + ' src="' + rcmail.assets_path('program/resources/blank.gif') + '" style="width:0; height:0; visibility:hidden"></iframe>'); - - return $('iframe[name="' + name + '"]'); -}; |