Этот блог посвящен MS Exchange, Outlook и проблемам, связанным с электронной почтой

А у меня зима в OWA 2007 начинается с 15 декабря :-)

Exchange 2007, OWA 2007

Из года в год я в декабре месяце публикую один и тот же пост про снежинки. Этот год не исключение, правда теперь снежинки падают в OWA 2007 и выглядит это примерно так.

image 

В жизни простых людей не так много счастья. Приходит скажем на работу бухгалтер, а у нее предыдущей ночью муж пришел утром домой под утро, да еще в помаде. Скоро Новый год, а сынишка никак не может выправить тройки по математике в школе, будет трояк в четверти. Коты в подъезде орали всю ночь, да колготки еще порвались. Вот так начинается утро. Наливает она себе кофе, включает компьютер, заходит через  OWA в почту и ОБАНА! Снежинки. Блин, а ведь Новый год уже скоро. Здорово. И все проблемы уходят на задний план, все мысли переключается на Новый год. Пусть не все так радужно, но наверняка подобная ситуация возможна.

В прошлом году у нас в OWA пошел снег 15 декабря и закончился 18 января. :-) А как? А вот так.

1. Открываем на CAS в notepad файл C:\Program Files\Microsoft\Exchange Server\ClientAccess\Owa\auth\logon.aspx.
2. Идем в самый конец файла, ищем строки:

</body>
</html>
<% } %>

и ПОСЛЕ </html> вставляем скрипт:

<SCRIPT LANGUAGE=”JavaScript1.2″>
<!– Begin

var d;
d = new Date();
if ((d.getMonth()==11 && d.getDate() > 14) || (d.getMonth()==0 && d.getDate() < 18)) {

var no = 10; // количество снежинок
var speed = 30; // скорость снежинок
var snowflake = “/owa/8.1.240.5/themes/base/sneg.gif”;

var ns4up = (document.layers) ? 1 : 0;
var ie4up = (document.all) ? 1 : 0;
var dx, xp, yp;
var am, stx, sty;
var i, doc_width = 800, doc_height = 600;
if (ns4up) {
doc_width = self.innerWidth;
doc_height = self.innerHeight;
} else if (ie4up) {

doc_width = document.body.clientWidth;
doc_height = document.body.clientHeight;
}
dx = new Array();
xp = new Array();
yp = new Array();
am = new Array();
stx = new Array();
sty = new Array();
for (i = 0; i < no; ++ i) {
dx[i] = 0;
xp[i] = Math.random()*(doc_width-50);
yp[i] = Math.random()*(doc_height);
am[i] = Math.random()*20;
stx[i] = 0.02 + Math.random()/10;
sty[i] = 0.7 + Math.random();
if (ns4up) {
if (i == 0) {
document.write(”<layer name=\”dot”+ i +”\” left=\”15\” “);
document.write(”top=\”15\” visibility=\”show\”><img src=\”»);
document.write(snowflake + “\” border=\”0\”></layer>”);
} else {
document.write(”<layer name=\”dot”+ i +”\” left=\”15\” “);
document.write(”top=\”15\” visibility=\”show\”><img src=\”»);
document.write(snowflake + “\” border=\”0\”></layer>”);
}
} else if (ie4up) {
if (i == 0) {
document.write(”<div id=\”dot”+ i +”\” style=\”POSITION: “);
document.write(”absolute; Z-INDEX: “+ i +”; VISIBILITY: “);
document.write(”visible; TOP: 15px; LEFT: 15px;\”><img src=\”»);
document.write(snowflake + “\” border=\”0\”></div>”);
} else {
document.write(”<div id=\”dot”+ i +”\” style=\”POSITION: “);
document.write(”absolute; Z-INDEX: “+ i +”; VISIBILITY: “);
document.write(”visible; TOP: 15px; LEFT: 15px;\”><img src=\”»);
document.write(snowflake + “\” border=\”0\”></div>”);
}
}
}
function snowNS() {
for (i = 0; i < no; ++ i) {
yp[i] += sty[i];
if (yp[i] > doc_height-50) {
xp[i] = Math.random()*(doc_width-am[i]-30);
yp[i] = 0;
stx[i] = 0.02 + Math.random()/10;
sty[i] = 0.7 + Math.random();
doc_width = self.innerWidth;
doc_height = self.innerHeight;
}
dx[i] += stx[i];
document.layers[”dot”+i].top = yp[i];
document.layers[”dot”+i].left = xp[i] + am[i]*Math.sin(dx[i]);
}
setTimeout(”snowNS()”, speed);
}
function snowIE() {

for (i = 0; i < no; ++ i) {
yp[i] += sty[i];
if (yp[i] > doc_height-50) {
xp[i] = Math.random()*(doc_width-am[i]-30);
yp[i] = 0;
stx[i] = 0.02 + Math.random()/10;
sty[i] = 0.7 + Math.random();
doc_width = document.body.clientWidth;
doc_height = document.body.clientHeight;
}
dx[i] += stx[i];
document.all[”dot”+i].style.pixelTop = yp[i];
document.all[”dot”+i].style.pixelLeft = xp[i] + am[i]*Math.sin(dx[i]);
}
setTimeout(”snowIE()”, speed);

}
if (ns4up) {
snowNS();
} else if (ie4up) {
snowIE();
}
}
// End –>
</script>

!!! ВНИМАНИЕ. Скрипт нужно взять из файла, а не копировать с этого поста !!!
В скрипте поправьте строку с путем к OWA в зависимости от установленной версии Exchangу 2007.

3. Копируем отсюда  ”Снежинку для OWA”, файл sneg.gif и записываем его в C:\Program Files\Microsoft\Exchange Server\ClientAccess\Owa\8.1.240.5\themes\base\

Вот и все. Модифицируя параметры в начале скрипта можно поменять даты начала и конца запуска скрипта, количество и скорость снежинок.

Счастливого Нового года!

p.s. Joker, да да, вот такие вот у меня «проблемы». Гы-Гы-Гы :-)

Похожие посты:

clock 20 Декабрь 2007, 17:29 comment Комментариев: 16



Комментариев: 16 к “А у меня зима в OWA 2007 начинается с 15 декабря :-)”

  1. Alexey N-ff:

    Загрузка процессора на клиенте – 100%?



  2. Pavel Nagaev:

    Нет, побольше, где-то 120-130 :-)

    Два года уже работает это дело в сети и прикольно слышать от пользователей в конце декабря: «А у нас снег пошел ….. в OWA :-) » А в Новороссийске снег большая редкость :-( .



  3. anton:

    интрересная штука. но жаль не работает у меня почему-то. правда у меня 8.0.730.1 а не 8.1.240.5 но я в коде поменял на своё, но всё равно не работает. как-нибудь бы логи посмотреть этого дела.



  4. Pavel Nagaev:

    Прошу прощения, моя ошибка. Скрипт неправильно отображался моим блогом.
    Поправил пост и выложил скрипт отдельно.



  5. Gusev Denis:

    А под EXch 2003 снежинки пойдёт? ;)



  6. Pavel Nagaev:

    В начале этого поста есть ссылка на пост про снежинки в E2003.



  7. Gusev Denis:

    спасибо. :)



  8. zorion:

    А мы этот скрипт на главную страницу sharepoint 2007 прилепили :-)



  9. Pavel Nagaev:

    Это конечно хорошо, но между нами девочками, меня эти снежинки начинают раздражать через время. :-) Поэтому они только на заглавной страничке.



  10. Joker:

    p.s. Joker, да да, вот такие вот у меня “проблемы”. Гы-Гы-Гы

    А на что ты обиделся? Все нормально, молодец, и со снежинками здорово придумано. :)



  11. Pavel Nagaev:

    Я вот заметил, что в последнее время народ моих шуток не понимает :-) Вообще никто :-) Joker, я никогда ни на кого не обижаюсь, просто серьезно я говорю редко :-)



  12. Anton:

    Я так понимаю данный способо актуален для тех у кого CAS вывешен в инет напрямую. Или через простое правило буликации через ISA. А как поступииь тем у кого CAS выпущен в инет через ISA на основе правила Listener ? Ведь в форме аутентифкации на ISA исползуется другой скрипт язык.



  13. Mikhail:

    Снежинки будут идти только в окне авторизации пользователя, а в самом ящике не будут? =(



  14. Pavel Nagaev:

    Не, делал как-то давно, чтобы и в ящике шли, очень отвлекает.



  15. Anton:

    Павел, как быть тем кто через ISA2006 проходит авторизацию?



  16. Pavel Nagaev:

    Смотреть, как этот скрипт прикрутить на ИСУ



Оставьте отзыв!