Книги Олега Роя, «Джинглики» в складчину.
Ищу компаньонов в складчине, на покупку электронной версии серии книг Олега Роя «Джинглики». Чем нас больше, тем дешевле обойдется.
Жизнь замечательных грибов
Архив статей и записей написанных Грибовым Павлом
Ищу компаньонов в складчине, на покупку электронной версии серии книг Олега Роя «Джинглики». Чем нас больше, тем дешевле обойдется.
В том случае если необходимо динамически подгрузить на страницу какие-то скрипты, возможно использовать например прообраз следующего кода:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
window.onload=function(){ if (typeof jQuery == 'undefined') { dhtmlLoadScript("https://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"); }; //проверяем, а подгрузился ли juery? var timerId = setInterval(function() { if (typeof jQuery == 'undefined'){ console.log("--еще не догрузился jquery..ждем.."); } else { dhtmlLoadScript("http://ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/jquery-ui.min.js"); console.log("--вроде jquery загрузился, гружу jquery-ui.."); clearInterval(timerId); var timerId2 = setInterval(function() { if (typeof $.ui == 'undefined'){ console.log("--еще не догрузился jquery-ui..ждем.."); } else { clearInterval(timerId2); console.log("--вроде jquery-ui загрузился, инициализирую чат.."); mainchat(); }; },1000); }; }, 1000); }; function dhtmlLoadScript(url){ var e = document.createElement("script"); e.src = url; e.type="text/javascript"; document.getElementsByTagName("head")[0].appendChild(e); } |
в данном случае в целях кроссбраузерности, используется проверка по таймеру, загрузился код или нет, ибо в файрефоксе идет последовательная загрузка кода, а в хроме паралельная. В связи с чем, может возникать ситуация дальнейшего выполнения кода, при еще не подгруженных скриптах.
Довелось побывать на «корпоративе» — 10 лет Яртелесервису. Мероприятие происходило в Углическом районе,Ярославской области. Утром — сплав на байдарках. Потом пейнтбол, волебол, баня, песни у костра до утра. Палатки, комары. В общем романтека. Очень понравилось. Давно так не расслаблялся и не отдыхал.
Формат даты MySQL и Python несколько отличаются, поэтому не получится результат запроса — дату, использовать сразу. Нужно предварительно её отформатировать при помощи функции strptime(дата, формат). Вот пример кода:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
sql="select count(*) as cnt,(now()-interval %s day) as ddy from payments where mod_person=%s and year(pay_date)=year(now()-interval %s day) and month(pay_date)=month(now()-interval %s day) and day(pay_date)=day(now()-interval %s day)"; cursor2=connb.cursor(dictionary=True,buffered=True) cursor2.execute(sql,[days,person_id,days,days,days]); myrow3 = cursor2.fetchone() while myrow3 is not None: cnt=myrow3["cnt"]; ddy=myrow3["ddy"]; ddt=datetime.datetime.strptime(str(ddy),"%Y-%m-%d %H:%M:%S") wd=datetime.datetime.weekday(ddt); if wd==0:dn="Понедельник"; if wd==1:dn="Вторник"; if wd==2:dn="Среда"; if wd==3:dn="Четверг"; if wd==4:dn="Пятница"; if wd==5:dn="Суббота"; if wd==6:dn="Воскресенье"; #Если платежей нет в выходные, тогда АХТУНГ!! if ((cnt==0) and (wd!=5) and (wd!=6)): func.putlog (str(email.encode('utf-8'))+" Внимание! В биллинге нет платежей за "+str(ddy)+" ("+str(wd)+") от "+str(name.encode('utf-8'))+"!!") func.AddMailQwery(noc,'цувцу@цувцув.ru',email,"Внимание! В биллинге нет платежей за "+str(ddy)+" ("+str(wd)+") от "+str(name.encode('utf-8'))+"!!","Внимание! В биллинге нет платежей за "+str(ddy)+" ("+str(wd)+") от "+str(name.encode('utf-8'))+"!!"); #SendMailAttachment($email,$cfg->smtpusername,"Внимание! В биллинге нет платежей за $ddy ($dn) от $name!!!","Внимание! В биллинге нет платежей за $ddy ($dn) от $name!!!"); myrow3 = cursor2.fetchone() |
Для того чтобы показать на странице отформатированный javascript код, нужно воспользоваться следующей уловкой: заменить знаки < и > соотвествующими кодами: < и > . В оезультате вставка должна получиться примерно такой:
1 2 3 4 5 6 7 8 9 10 11 12 |
<pre> <script> (function(){ var hcc = document.createElement("script"); hcc.type ="text/javascript"; hcc.async =true; hcc.src ="http://сайт_чат_сервера/chat_client/chat_client.js"; var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(hcc, s.nextSibling); })(); </script> </pre> |