annotate sites/all/modules/imce/js/imce_set_inline.js @ 9:830c812b520f

added smtp module
author root <root@paio.local>
date Mon, 28 Oct 2013 15:34:27 +0000
parents ff03f76ab3fe
children
rev   line source
danielebarchiesi@0 1 (function($) {
danielebarchiesi@0 2
danielebarchiesi@0 3 var ii = window.imceInline = {};
danielebarchiesi@0 4
danielebarchiesi@0 5 // Drupal behavior
danielebarchiesi@0 6 Drupal.behaviors.imceInline = {attach: function(context, settings) {
danielebarchiesi@0 7 $('div.imce-inline-wrapper', context).not('.processed').addClass('processed').show().find('a').click(function() {
danielebarchiesi@0 8 var i = this.name.indexOf('-IMCE-');
danielebarchiesi@0 9 ii.activeTextarea = $('#'+ this.name.substr(0, i)).get(0);
danielebarchiesi@0 10 ii.activeType = this.name.substr(i+6);
danielebarchiesi@0 11
danielebarchiesi@0 12 if (typeof ii.pop == 'undefined' || ii.pop.closed) {
danielebarchiesi@0 13 ii.pop = window.open(this.href + (this.href.indexOf('?') < 0 ? '?' : '&') +'app=nomatter|imceload@imceInline.load', '', 'width='+ 760 +',height='+ 560 +',resizable=1');
danielebarchiesi@0 14 }
danielebarchiesi@0 15
danielebarchiesi@0 16 ii.pop.focus();
danielebarchiesi@0 17 return false;
danielebarchiesi@0 18 });
danielebarchiesi@0 19 }};
danielebarchiesi@0 20
danielebarchiesi@0 21 //function to be executed when imce loads.
danielebarchiesi@0 22 ii.load = function(win) {
danielebarchiesi@0 23 win.imce.setSendTo(Drupal.t('Insert file'), ii.insert);
danielebarchiesi@0 24 $(window).unload(function() {
danielebarchiesi@0 25 if (ii.pop && !ii.pop.closed) ii.pop.close();
danielebarchiesi@0 26 });
danielebarchiesi@0 27 };
danielebarchiesi@0 28
danielebarchiesi@0 29 //insert html at cursor position
danielebarchiesi@0 30 ii.insertAtCursor = function (field, txt, type) {
danielebarchiesi@0 31 field.focus();
danielebarchiesi@0 32 if ('undefined' != typeof(field.selectionStart)) {
danielebarchiesi@0 33 if (type == 'link' && (field.selectionEnd-field.selectionStart)) {
danielebarchiesi@0 34 txt = txt.split('">')[0] +'">'+ field.value.substring(field.selectionStart, field.selectionEnd) +'</a>';
danielebarchiesi@0 35 }
danielebarchiesi@0 36 field.value = field.value.substring(0, field.selectionStart) + txt + field.value.substring(field.selectionEnd, field.value.length);
danielebarchiesi@0 37 }
danielebarchiesi@0 38 else if (document.selection) {
danielebarchiesi@0 39 if (type == 'link' && document.selection.createRange().text.length) {
danielebarchiesi@0 40 txt = txt.split('">')[0] +'">'+ document.selection.createRange().text +'</a>';
danielebarchiesi@0 41 }
danielebarchiesi@0 42 document.selection.createRange().text = txt;
danielebarchiesi@0 43 }
danielebarchiesi@0 44 else {
danielebarchiesi@0 45 field.value += txt;
danielebarchiesi@0 46 }
danielebarchiesi@0 47 };
danielebarchiesi@0 48
danielebarchiesi@0 49 //sendTo function
danielebarchiesi@0 50 ii.insert = function (file, win) {
danielebarchiesi@0 51 var type = ii.activeType == 'link' ? 'link' : (file.width ? 'image' : 'link');
danielebarchiesi@0 52 var html = type == 'image' ? ('<img src="'+ file.url +'" width="'+ file.width +'" height="'+ file.height +'" alt="'+ file.name +'" />') : ('<a href="'+ file.url +'">'+ file.name +' ('+ file.size +')</a>');
danielebarchiesi@0 53 ii.activeType = null;
danielebarchiesi@0 54 win.blur();
danielebarchiesi@0 55 ii.insertAtCursor(ii.activeTextarea, html, type);
danielebarchiesi@0 56 };
danielebarchiesi@0 57
danielebarchiesi@0 58 })(jQuery);