function (ev, force) {
curNotifier.q_shown.push(ev);
var thumbEl = '';
if (ev.type == 'video_process_ready') {
thumbEl = '';
} else {
thumbEl = '<img src="'+Notifier.fixPhoto(ev.author_photo)+'" alt="'+Notifier.fixPhoto(ev.author_photo)+'">';
}
var typeClassName = 'notifier_type_' + ev.type;
ev.baloonWrapEl = ce('div', {
className: 'notifier_baloon_wrap',
innerHTML: '' + ev.title + '' + (ev.author_photo && ('' + (ev.author_link && ('<a href="'%20+%20ev.author_link%20+%20'">')) + thumbEl + (ev.author_link && '</a>') + '')) + (ev.add_photo && ('<img src="'%20+%20ev.add_photo%20+%20'" alt="'%20+%20ev.add_photo%20+%20'">')) + '' + ev.text + ''
});
ev.baloonEl = ev.baloonWrapEl.firstChild;
ev.closeEl = geByClass1('notifier_close_wrap', ev.baloonEl);
addEvent(ev.baloonEl, 'mouseover mouseout', function (e) {
ev.over = (e.type == 'mouseover');
if (ev.over) {
Notifier.freezeEvents();
} else {
Notifier.unfreezeEvents();
}
});
addEvent(ev.baloonEl, 'mousedown click', function (e) {
e = (e.originalEvent || e) || window.event;
var btn = e.which, nohide = false;
if (browser.msie) {
btn = e.button == 1 ? 1 : (e.button == 2 ? 3 : 2)
}
if (btn == 1 && (e.ctrlKey || browser.mac && e.metaKey)) {
btn = 2;
if (browser.mac) nohide = true;
}
if ((e.target || e.srcElement).tagName == 'A') {
switch (btn) {
case 1: // left button
// setTimeout(function () {Notifier.hideEvent(ev);}, 100);
break;
case 3: // right
break;
}
return;
}
switch (btn) {
case 1: //left button
eval(ev.onclick);
Notifier.hideEvent(ev);
break;
case 2: // middle
var wnd = window.open(ev.link, '_blank');
try {wnd.blur(); window.focus();} catch (e) {}
if (!nohide) Notifier.hideEvent(ev); // else it will be hidden by context menu
break;
case 3: // right
if (browser.mozilla) {
return;
}
}
return cancelEvent(e);
});
addEvent(ev.baloonEl, 'contextmenu', function (e) {
setTimeout(function () {
Notifier.hideEvent(ev, false, false, true);
}, 10);
return cancelEvent(e);
});
addEvent(ev.closeEl, 'mousedown click', function (e) {
Notifier.hideEvent(ev, false, false, true);
return cancelEvent(e);
});
ev.startFading = function () {
ev.fading = animate(ev.baloonEl, {opacity: 0}, 1000, Notifier.hideEvent.bind(Notifier).pbind(ev, false));
if (ev.over) {
ev.fading.stop();
}
}
curNotifier.cont.insertBefore(ev.baloonWrapEl, curNotifier.cont.firstChild);
var h = ev.baloonWrapEl.offsetHeight;
re(ev.baloonWrapEl);
curNotifier.cont.appendChild(ev.baloonWrapEl);
setStyle(curNotifier.cont, {bottom: -h});
setStyle(ev.baloonWrapEl, {visibility: 'visible'});
animate(curNotifier.cont, {bottom: 0}, 200);
if (!curNotifier.idle_manager.is_idle || force) {
ev.fadeTO = setTimeout(ev.startFading, hasAccessibilityMode() ? 35000 : 7000);
}
}