не смешно.filtered ([info]filtered) wrote,
@ 2004-10-03 21:12:00
Previous Entry  Add to memories!  Tell a Friend!  Next Entry
<?php
// За что я ненавижу ПХП
function writeBlock(&$sd, $f, $g = false, $gridIndex = 1) {    // За странное отчаянье в день получки
    global $captions_width, $flIsLast, $flAsT;    // За мысли что приходят не спросившись

    if( $f->type == OTYPE_G && $f->group_type == TYPE_G && $flAsT ) {    // Которых я увы совсем не ждал
        $valuesCount = writeCountSpec($sd, $f);    // За лучший в мире
        for($i = 1; $i <= $valuesCount; $i++) {    // Текстовый редактор
            foreach($f->values as $k => $v)    // Хотя попортил он немало крови
                writeField($sd, $v, $f, $i);    // Но всё равно он лучший, ведь другие
        }    // Не лучше
        ?><input type=hidden name=elmntscnt_<?=$f->id?> id=elmntscnt_<?=$f->id?> value="<?=$_POST['elmntscnt_'.$f->id]?>"><?    // Это обманчивое чувство
        return;    // Что дело лишь в своём с собой согласии
    }    // И можно достучаться до нирваны

    if( $g && $g->group_type == TYPE_G && !$flAsT ) {    // В вонючем свитере склонясь к клавиатуре
        ?><td id=c_<?=$f->id?>_<?=$gridIndex?>><?    // И только силой духа убеждая
    }    // Себя, что дело тут совсем не в коде
    if( $f->type == OTYPE_G ) {    // А в генах. Нет! Они не виноваты, гены
        $captions_width = 1;    // И паши, тани, вани, светы
        $fCnt = count($f->values);    // Что долго в поколениях ебались
        $i = 1;    // Чтобы родить на свет ещё одно созданье
        foreach($f->values as $k => $v) {    // Ленивое, тупое и бездарно
            if( $i == $fCnt )    // Оно желает лучшей жизни
                $flIsLast = true;    // Валяясь на придуманном диване
            else    // Ногою кверху, ноутбук лелея
                $flIsLast = false;    // Стремительно растущим животом
            writeField($sd, $v, $f, 1);    // От пива, шаурмы и просто лени
            $i++;    // Когда могло бы волей подминая
        }    // И втаптывая в пол подобно обратившемуся в пепел
        $left = $f->pos_left + FORM_ALIGN_LEFT;    // Окурку, себя, и неудавшуюся песню
        $width = $f->pos_right - $f->pos_left;    // Сменив на стройный бодренький мотивчик
        if( $f->group_type == TYPE_G ) {    // Шагая просто и непринуждённо
            $class = 'ftc';    // По жизни со штативом из кармана
            $top = $f->pos_top + FORM_ALIGN_TOP + FORM_BTN_HEIGHT * 2;    // Торчащим, и людей других лишь видя
            $height = $f->pos_bottom - $f->pos_top - FORM_BTN_HEIGHT * 2;    // Со стороны их самой лучшей и прекрасной
        }    // Они неизмеримо совершенней
        else {    // Не думая о лишнем и отчасти
            $class = 'fgc';    // Не думая совсем
            $top = $f->pos_top + FORM_ALIGN_TOP;    // Приводят в жизнь свои модели
            $height = $f->pos_bottom - $f->pos_top;    // И чувствуют себя разнообразно
        }    // Пьют пиво, водку и коктейли
    }    // И ездят на прекрасных мерседесах
    else {    // Которых я наверно не постигну
        $varName = 'variable_'.$f->id.($g?'_'.$gridIndex:'');    // Да в них ли счастье?

        if( isset($_POST[$varName]) )    // Или в коде?
            $fValue = $_POST[$varName];    // Или в мыслях?
        else    // Кому они приносят счастье?
            $fValue = $sd[$f->id][$gridIndex]['vl'];    // Пускай их даже миллион и самых умных
        $fValue = writeEscape($fValue);    // В журналах напечатаны претолстых

        if( $g && $g->group_type == TYPE_G && !$flAsT )    // И в книгах напечатаны преумных
            $class = 'fte';    // А книги эти мы не прочитаем
        else {    // За много жизней, будь они у нас в кармане
            $class = 'fi';    // Ведь книги эти ложь для нас и ядовито
            $left = $f->pos_left;    // Они блестят под пылью, фолианты
            $top = $f->pos_top;    // Пропитанные ложью в тот момент, что
            if( !$g || $flAsT ) {    // Из-под пера родились
                $left += FORM_ALIGN_LEFT;    // Ты можешь забивать тупые гвозди
                $top += FORM_ALIGN_TOP;    // В гнилую древесину мирозданья
            }    // Оно тебе не скажет ни спасибо
        }    // Ни поцелует на прощанье перед смертью
        $width = $f->pos_right - $f->pos_left;    // И лишь сожрёт тебя и переварит
        if( $f->type == OTYPE_TA )    // Твой труп, слова, пустые мысли
            $height = $f->pos_bottom - $f->pos_top - $f->fontsize;    // И одуванчик одинокий охраняет
        if( $f->type == OTYPE_DREF )    // Еще одно звено коммуникаций
            $height = $f->pos_bottom - $f->pos_top;    // Почившее
    }    // И голову склоняет дикий тополь
    if( $flAsT && !($f->type == OTYPE_G && $f->group_type == TYPE_T) )    // Перебирает ветви над водою ива
        $top += FORM_CAPTION_HEIGHT;    // Бухают родственники шумною толпою
    writeWhatTag($f, $tagName, $tag, $g);    // Прозрачным ядом утоляя свою веру
    ?><<?=$tagName.$tag?> class=<?=$class?> <?    // Что ты их слышишь и прекрасно понимаешь
    if( $f->type != OTYPE_G ) {    // И лучшего с тобой случиться не могло
        ?>name=<?=$varName?> id=<?=$varName?> onchange="doCalcTotal();" onclick="doCalcTotal();" onkeyup="doCalcTotal();"<?    // За тыщу лет, а то и больше
    }    // Я верю, есть такие люди рядом с нами
    if( $g && $g->group_type == TYPE_G && !$flAsT ) {    // Которые наверное не люди
        ?> onfocus="top.doThisElement(this);"<?    // Которые наверно из металлла
    }    // Как робот хмурый терминатор
    echo ' style="width: '.$width.'px;';    // Они несут небрежно свою ношу
    if( $left !== false )    // В руках подобно золотой цепочке
        echo ' left: '.$left.'px;';    // С тяжёлым-претяжёлым медальоном
    if( $top !== false )    // С изображеньем странным и ужасным
        echo ' top: '.$top.'px;';    // Они следят за нашими движеньями
    if( $height !== false )    // Они следят за мыслью без полёта
        echo ' height: '.$height.'px;';    // Они записывают наши колебанья
    echo '"';    // И лучшее что сделали мы в жизни

    switch( $f->type ) {    // Не думая о том как это круто
    case OTYPE_G:    // Знакомым рассказать и в поезде попутном
        echo '>';    // Из коридора прислонившись к мёрзлым стёклам
        if( $f->group_type == TYPE_G ) {    // Смотря на лунный свет стелящийся брезгливо
            ?><table id=t_<?=$f->id?> class=ft cellspacing=0 cellpadding=0 border=0><?    // На провода степные что бескрайно
        }    // Летят и провисают поминутно
        $valuesCount = writeCountSpec($sd, $f);    // Они существовать не могут без поддержки
        for($i = 1; $i <= $valuesCount; $i++) {    // Они гудят передавая сообщенья
            if( $f->group_type == TYPE_G ) {    // Они лишь передатчик точка-точка
                ?><tr valign=top id=row_<?=$f->id?>_<?=$i?>><?    // И сами ничерта не понимают
            }    // И чувствуют как будто спинным мозгом
            foreach($f->values as $k => $v)    // Что дело их в большом предназначении
                writeField($sd, $v, $f, $i);    // Толкуют о каком-то возрождении
            if( $f->group_type == TYPE_G ) {    // И человеколюбии и человекопоклонении
                ?></tr><?    // А мы их сматываем в толстые катушки
            }    // И отправляем цветметаллы в переплавку
        }    // И может быть в такой метаморфозе
        ?><input type=hidden name=elmntscnt_<?=$f->id?> id=elmntscnt_<?=$f->id?> value="<?=$_POST['elmntscnt_'.$f->id]?>"><?    // Единственное наше утешенье
        if( $f->group_type == TYPE_G ) {    // Как только переплавить, переправить
            ?></table><?    // Однажды сделанное кем-то, но не вечно
        }    // Оно, но вечно время и круговорот всего в природе
        break;    // И глупости, что пишем я и ты.

    case OTYPE_TA:    // автор молчит
        echo '>'.$fValue;    // созерцая
        break;    // оставшиеся строки

    case OTYPE_I:    // думает об их возможном заполнении
        ?> value="<?=$fValue?>"><?    // умными ассоциативными цепочками
        break;    // ему скучно

    case OTYPE_D:    // замёрзли ноги
    case OTYPE_S:    // чай остыл зелёный
        ?>><option value=""></option><?    // код остался тот же
        $c = 1;    // и ничего
        foreach($f->values as $k => $v) {    // для автора
            $optionKey = $f->type == 5?(isset($_POST[$varName])?$k:substr(trim($k), strpos(trim($k), '_') + 1)):$v;    // не изменилось
            ?><option value="<?=writeEscape($f->type == 5?$k:$v, false) ?>"<?=trim($fValue) == trim($optionKey) || ($f->required == 'Y' && count($f->values) == 1)?' selected':''?>><?=writeEscape($v, false)?></option><?    // конечно автор
            if( ++$c % 10 == 0 ) {    // разгребёт эту лапшу
                ?>');    d.writeln('<?    // и перепишет
            }    // и будет ему безусловнейшее счастье
        }    // когда работодатель
        break;    // вложит в руку

    default:    // очередные вожделенные купюры
        echo '>';    // и купит автор

    }    // новое пальто
    echo '</'.$tagName.'>';    // и мотоцикл
    if( $g && $g->group_type == TYPE_G && !$flAsT ) {    // и стиральную машину
        ?></td><?    // и восседаючи верхом
    }    // он понесётся ветренно навстречу
}    // концу
?>



(Post a new comment)


[info]kikimora
2004-10-03 05:49 pm UTC (link)
вот тебя плющит :))))))))))

(Reply to this) (Thread)


[info]filtered
2004-10-03 06:03 pm UTC (link)
Не без того.
Но как иначе? Я две недели заставлял себя написать одну хрень. Потом я наконец взялся за неё и понял, что эту хрень надо по-хорошему целиком переписать, что займёт ещё недели две. Потому что именно в этом месте происходит столкновение двух систем: моей и ведущего программиста, причём обе уходят корнями глубоко в предыдущие версии. Я в глубоком отчаянии, потому что не хочу переписывать этот кусок. Он не умещается у меня в голове.
Другой бы пошёл и напился, или страдал бы молча, у меня вот вырвалось.

(Reply to this) (Parent)(Thread)


[info]kikimora
2004-10-03 06:13 pm UTC (link)
тяжелая работа программист..
у меня образование программист-системотехник :)))
но ушла в дизайн, где очень сильно помогает системотехника

(Reply to this) (Parent)(Thread)


[info]filtered
2004-10-03 06:20 pm UTC (link)
И у меня образование программист-системотехник. Надо было поддаться и бросить это дело сразу после окончания университета, но я всё чего-то тяну.
С другой стороны, и дизайну и фотоделу мне надо учиться. И я буду.
А что, дизайнер разве лёгкая работа...

(Reply to this) (Parent)(Thread)


[info]kikimora
2004-10-03 06:27 pm UTC (link)
:))) так мы братья по разуму (или сестры :))))
Ну дизайнер легкая работа?! хм.. главное уметь воспринимать критику, когда призодит клиент и говорит ВСЁ ГАВНО..
поэтому обычно я работаю через людей, которые всё смягчают!

(Reply to this) (Parent)(Thread)


[info]filtered
2004-10-03 06:30 pm UTC (link)
Ну, видишь ли, у меня всё сложнее в этом плане. Когда я сам рисую дизайн сайта, то это я говорю ВСЁ ГОВНО, а клиентам обычно как-раз нравится. Они ещё удивляются: смотри-ка, программист, а какой сайт нарисовал.

(Reply to this) (Parent)(Thread)


[info]kikimora
2004-10-03 06:36 pm UTC (link)
ну самокритика однозначно должна присутствовать :))))

(Reply to this) (Parent)


[info]mxf
2004-10-03 06:58 pm UTC (link)
не, ну в принципе все гавно под определенным углом зрения.

(Reply to this) (Parent)


[info]filtered
2004-10-03 06:05 pm UTC (link)
Представляете себе программиста, несущегося на стиральной машинке Samsung по бушующему садовому кольцу? И ветер развевает волосы.

(Reply to this) (Thread)


[info]kikimora
2004-10-03 06:16 pm UTC (link)
очень даже живо представило.. только толпиво - каким порошком заправляешься!

(Reply to this) (Parent)(Thread)


[info]filtered
2004-10-03 06:34 pm UTC (link)
Попробую новый необычный порошок.
На самом деле я ничего такого не пробовал, а вот на работе как-то зашёл об этом разговор, и оказалось что у людей такой астральный опыт, что просто диву даёшься.
С другой стороны: ну что надо принять, чтобы написать вот такое?

(Reply to this) (Parent)(Thread)


[info]kikimora
2004-10-03 06:38 pm UTC (link)
да ничего не надо принимать - надо просто иметь воображение и неординарное мышление :)))

(Reply to this) (Parent)(Thread)


[info]filtered
2004-10-03 06:42 pm UTC (link)
Рецепт: Неординарное мышление, 125 гр.

(Reply to this) (Parent)(Thread)


[info]kikimora
2004-10-03 06:51 pm UTC (link)
ну давай теперь издеваться :)))))))))))

(Reply to this) (Parent)


[info]mxf
2004-10-03 06:57 pm UTC (link)
дося — зачем больше платить?! ;-)

(Reply to this) (Parent)(Thread)


[info]kikimora
2004-10-03 07:01 pm UTC (link)
ха-ха :)))) а вот тут умные люди говорят, чтобы не испортить двигатель.. ой барабан... нужно Ариель и добавлять Калгон :)))))))))))))

(Reply to this) (Parent)(Thread)


[info]mxf
2004-10-03 07:03 pm UTC (link)
можно еще в барабан нассать. по приколу 8)

(Reply to this) (Parent)(Thread)


[info]kikimora
2004-10-03 07:05 pm UTC (link)
ну это уже не смешно :(

(Reply to this) (Parent)(Thread)


[info]mxf
2004-10-03 07:09 pm UTC (link)
ну, знаете, когда приспичит — тогда уже не до смеху…

(Reply to this) (Parent)


[info]katjonka
2004-10-04 04:52 am UTC (link)
хороший такой медиа-арт

(Reply to this) (Thread)


[info]filtered
2004-10-04 07:41 am UTC (link)
Какое хорошее слово «медиа-арт», буду знать, спасибо.

(Reply to this) (Parent)(Thread)


[info]katjonka
2004-10-04 09:22 am UTC (link)
приходите еще)

(Reply to this) (Parent)


[info]kukuk
2004-10-04 12:33 pm UTC (link)
Здорово =)
Надо будет пристроить где-нибудь в теле кода десяток-другой строф =)

(Reply to this) (Thread)


[info]filtered
2004-10-04 12:43 pm UTC (link)
Это что. Вынес на сайте все сообщения об ошибках в отдельный файл, всё никак не соберусь переписать в хайку.

(Reply to this) (Parent)


[info]shuriksprivetom
2008-08-25 02:53 am UTC (link)
зачем вам, сударь, переменных
глобальных целых три
иль может
они как мысли
не спросившись
к вам приходят?

и в поиске по смыслам
в хаш-таблице жизни
вам может пригодится итератор

хотя конечно
упорядочить не сможет
он кутерьму, как тот редактор
который вам особо полюбился
но уберечь от преждевременного
End Of File
он в силах

я лишь заметить вам хотел
что меж итераций
для созерцания
на мятые купюры
вы можете купить
немного яда
но не смертельного
а лишь того, что мигом
вас возьмет отсюда
в другого треда
дымный колбэк
покурите
и снова возвращайтесь
и жизнь полегче

и ПэХаПэ
с ХаТээМэЛом
вновь милы


(Reply to this) (Thread)


[info]i_limon
2008-11-16 01:52 pm UTC (link)
ох, красота!

(Reply to this) (Parent)(Thread)


[info]shuriksprivetom
2008-11-16 02:06 pm UTC (link)
спасибо :)

(Reply to this) (Parent)


[info]can3p
2008-10-08 07:28 pm UTC (link)
кроваво-кошмарный код. Неужели такому учат в институте?

(Reply to this)


Create an Account
Forgot your login or password?
Login w/ OpenID
English • Español • Deutsch • Русский…