Мар 06
Alex VolkovНиочем мото
Незнаю где как погода, но вчера-сегодня у нас открыли мото сезон. Сегодня несколько кружков навернул вот на таком аццком самопале-оппозите, бывшем толи днепре толи урале.Прохладно конечно, но это пустяки ))
Фотка аццкого оппозота

Даже задняя есть ))
P.S. И как назло, сегодня снег пошел, ну ептыть…
Мар 02
Alex VolkovWeb CSS 3, gradient
Скоро, скоро он придет и всем вебмастерам станет жить легче. Тени для текста и круглые уголки уже есть, теперь вот появилась градиентная заливка цветом. Фишка крайне полезная, у многих сайтов есть градиенты, но если раньше надо было колдовать гиф-полосками шириной в 1пиксель, просто широкими картинками в шапку, то теперь можно сделать все легко и просто. Видно только в продвинутых браузерах
#linearBg1 {
height: 100px;
background-color: #1a82f7;
background-image: -moz-linear-gradient(100% 100% 180deg, #2F2727, #1a82f7) !important;
background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#1a82f7), to(#2F2727)) !important;
background-image: url(images/linear_bg_1.png);// fallback image
}
И слева направо
#linearBg2 {
height: 100px;
background-color: #1a82f7; /* fallback color */
background-image: url(images/linear_bg_2.png); /* fallback image */
background-image: -moz-linear-gradient(100% 100% 90deg, #2F2727, #1a82f7);
background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#1a82f7), to(#2F2727));
}
И сверху вниз
#radialBg {
width: 100px;
height: 100px;
background-image: url(images/radial_bg.png);// fallback image
background-position: center center;
background-image: -moz-radial-gradient(center 45deg, circle closest-corner, #2F2727 0%, #1a82f7 100%);
background-image: -webkit-gradient(radial, center center, 10, center center, 80, from(#2F2727), to(#2F2727));
}
И по кругу
Как угодно можно заливку делать.
Совместимость? Ну, для старых браузеров в цсс прописана картинка, если не поймет заливку то выведет ее. Есть и другое решение – по принципу кто не с нами, тот против нас. У кого браузер не понимает таких красот, тому сайт не показывать )) Или вообще завешивать его ))
Вот тут подсмотрел.
Фев 26
Alex VolkovWeb, Скрипты curl, php, radikal
Если нет желания забивать сервер картинками, то данный скриптец поможет. Он грузит картинку с веба (урл) на радикал, возвращает адрес картинки на радикале.
$postdata = "upload=yes&F=&URLF=".$imagelink."&O=yes&M=640&JQ=85&J=yes&IM=7&VM=180&R=0&VE=yes&V=Увеличить&X=&FS=";
$page = FetchUrl("http://www.radikal.ru/action.aspx", $postdata, NULL, NULL, NULL);
preg_match("!id=\"input_link_1\" value=\"(.*?)\"!si", $page, $imageUrl);
$imageUrl = $imageUrl[1];
FetchUrl моя универсальная функция для курла, я ее под все подряд юзаю, поэтому там много левого кода. При желании можно поудалять половину.
function FetchUrl($url, $postvars, $timeout, $ref, $blank){
sleep($timeout);
echo @date("r")." fetching $url\r\n";
$ch = curl_init();
if(isset($postvars)){
echo @date("r")." $postvars\r\n";
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postvars);
}
// curl_setopt($ch, CURLOPT_PROXY, $proxy);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);
// curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_TIMEOUT,15);
curl_setopt($ch, CURLOPT_ENCODING, 'gzip');
curl_setopt($ch, CURLOPT_COOKIEJAR, "c1.txt");
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (X11; U; Linux x86_64; ru; rv:1.9.1.6) Gecko/20091201 SUSE/3.5.6-1.1.1 Firefox/3.5.6 FirePHP/0.3");
curl_setopt($ch, CURLOPT_COOKIEFILE, "c1.txt");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_URL, trim($url));
curl_setopt($ch, CURLOPT_AUTOREFERER, TRUE);
curl_setopt($ch, CURLOPT_REFERER, $ref);
$result = curl_exec($ch);
if($blank == "1"){
$result = preg_replace("/\n/", "", $result);
$result = preg_replace("/\r/", "", $result);
}
curl_close($ch);
return $result;
}
Фев 25
Alex VolkovWeb, Ниочем
Красиво смотрится. Интересно, это для отдельного сайта так сделали или можно настроить для любого?

Фев 20
Alex VolkovWordpress XML-RPC
Полночи бился с этим тупняком.
Суть – есть сайт, две основных категории – Ищу работу и Требуются. В них подкатегории. Подкатегории одинаковые, потому что слесари могут и требоваться и искать работу.
Постим туда через xml-rpc. Например, Иванов Иван, ищет слесаря в свою фирму. Т.е. категория слесарь родителя Требуются. Но при постинге не указывается родитель, указывается только имя категории – слесарь. И постится в тот родитель, который создан раньше. В моем случае Иванов Иван уже не ищет слесаря, а сам хочет им поработать.
Почитал доки по xml-rpc, ничего так и не нашел. Выход нашел, но не очень красивый.
Вот как тут быть?
Фев 15
Alex VolkovWordpress post meta, Wordpress, XML-RPC
Или рожденные в муках познания. XML-RPC как-то не очень дружит с документацией, никаких особо внятных вещей по поводу формата postmeta я так и не нашел. И если как ставить какой-нибудь excerpt еще можно догадаться:
$content_struct['mt_excerpt'] = "string";
то вот до выставления даты можно долго доходить:
$date = gmdate("Ymd\TH:i:s",strtotime("+".rand(0,20)." day +
".rand(0,20)." hour +".rand(0,60)." minute"));
$content_struct['dateCreated'] = new IXR_Date($date);
В примере дата на 20 дней вперед-назад разносится.
Custom fields выставляются так:
$custom_fields = array(
array(
'key' => 'price',
'value' => 'val1'
),
);
$content_struct['custom_fields']= $custom_fields;
Фев 07
Alex VolkovНиочем google
Не успел пост написать, а гугля уже сьел и отранжировал. Атас просто.

Фев 07
Alex VolkovLinux bash, Linux, sys
Вся инфа о процессе лежит тут:
cat /proc/PID/status
Покажет что-то типа этого:
Name: gedit
State: S (sleeping)
Tgid: 787
Pid: 787
PPid: 1
TracerPid: 0
Uid: 500 500 500 500
Gid: 100 100 100 100
FDSize: 64
Groups: 33 100 113
VmPeak: 306596 kB
VmSize: 306592 kB
VmLck: 0 kB
VmHWM: 37748 kB
VmRSS: 37744 kB
VmData: 36448 kB
VmStk: 116 kB
VmExe: 652 kB
VmLib: 22848 kB
VmPTE: 560 kB
Threads: 1
SigQ: 0/15992
SigPnd: 0000000000000000
ShdPnd: 0000000000000000
SigBlk: 0000000000000000
SigIgn: 0000000001001000
SigCgt: 00000001800004f0
CapInh: 0000000000000000
CapPrm: 0000000000000000
CapEff: 0000000000000000
CapBnd: ffffffffffffffff
voluntary_ctxt_switches: 217142
nonvoluntary_ctxt_switches: 222001
Например, надо выдернуть текущее состояние скрипта:
$status = cat /proc/PID/status | grep State | awk {'print $3'}
$status будет (sleeping)
Фев 06
Alex VolkovLinux Linux, mandriva
Клепают мандриву прям по часам, что в том году 7 февраля уже ставил, что в этом году. Молодцы, что тут еще сказать. Глянул чейнджлог, допиливают вовсю третий гном, который походу в spring версии уже будет. Еще усиленно пихают везде Zeitgeist, как по мне так тулза не очень, зачем надо смотреть, что я вчера слушал или какие документы открывал. Десктопный менеджер теперь наутилус, метасити убрали.
Все подробности тут
Фев 04
Alex VolkovWeb c++, facebook, php
Фейсбук решил так свою проблему с нагрузкой – заюзал HipHop и получил расширение нагрузки до 400 миллиардов показов страниц в месяц.
Because of this, it’s been challenging to scale Facebook to over 400 billion PHP-based page views every month.
HipHop ретранслирует пхп в плюсы, потом компилит бинарники.
Все подробности на оффблоге
Может скоро и не надо будет си, на пхп накатал, код ретранслировал и порядок? ))
Older Entries