- 1
- 2
- 3
- 4
public static function create(AdGroupVO $vo)
{
UtilLog::debug('FUCK');
...
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+43
public static function create(AdGroupVO $vo)
{
UtilLog::debug('FUCK');
...
+39
// validation
$validationOK=true;
if (!$validationOK) {
print "<meta http-equiv=\"refresh\" content=\"0;URL=error.html\">";
exit;
}
+142
require_once __DIR__ . '/composer' . '/autoload_real.php';
Symfony 2
+41
....
<table border="0" cellspacing="0" cellpadding="1">
<tr>
<td width="45%" valign="top">
<?if($arResult["AUTH"]["new_user_registration"]=="Y"):?>
<b><?echo GetMessage("STOF_2REG")?></b>
<?endif;?>
</td>
<td width="10%"> </td>
<td width="45%" valign="top">
<?if($arResult["AUTH"]["new_user_registration"]=="Y"):?>
<b><?echo GetMessage("STOF_2NEW")?></b>
<?endif;?>
</td>
</tr>
<tr>
....
наткнулся в Битриксе, в шаблоне стандартного компонента sale.order.full
Видимо не судьба одной проверкой <?if($arResult["AUTH"]["new_user_registration"]=="Y"):?> исключить всю строку <tr>...</tr>
+71
<?php
</script>
?>
ПыхапеГовно выдаёт:
?>
Как оказалось, ему асболютно пофиг каким тегом его открывают, и каким закрывают... <script language="php"> echo "blah-blah-blah"; ?> тоже работает...
+56
<?php
/*
@package Widgetkit
* @author YOOtheme http://www.yootheme.com
*/
$sets = array_chunk($widget->items, $settings['items_per_set']);
foreach(array_keys($sets) as $s) {
$nav[] = '<li><span></span></li>';
}
?>
<?php foreach ($sets as $set => $items) : ?>
<ul class="set">
<?php foreach ($items as $item) : ?>
<li>
<div><?php echo $item['navigation']; ?></div>
</li>
<?php endforeach; ?>
</ul>
<?php endforeach; ?>
<?php
?>
И так в 230 файлах.
Садо-мазо, блин!
+48
function ruslat ($string) # Задаём функцию перекодировки кириллицы в транслит.
{
$string = ereg_replace("ж","zh",$string);
$string = ereg_replace("ё","yo",$string);
$string = ereg_replace("й","i",$string);
$string = ereg_replace("ю","yu",$string);
$string = ereg_replace("ь","",$string);
$string = ereg_replace("ч","ch",$string);
$string = ereg_replace("щ","sh",$string);
$string = ereg_replace("ц","c",$string);
$string = ereg_replace("у","u",$string);
$string = ereg_replace("к","k",$string);
$string = ereg_replace("е","e",$string);
$string = ereg_replace("н","n",$string);
$string = ereg_replace("г","g",$string);
$string = ereg_replace("ш","sh",$string);
$string = ereg_replace("з","z",$string);
$string = ereg_replace("х","h",$string);
$string = ereg_replace("ъ","",$string);
$string = ereg_replace("ф","f",$string);
$string = ereg_replace("ы","y",$string);
$string = ereg_replace("в","v",$string);
$string = ereg_replace("а","a",$string);
$string = ereg_replace("п","p",$string);
$string = ereg_replace("р","r",$string);
$string = ereg_replace("о","o",$string);
$string = ereg_replace("л","l",$string);
$string = ereg_replace("д","d",$string);
$string = ereg_replace("э","ye",$string);
$string = ereg_replace("я","ya",$string);
$string = ereg_replace("с","s",$string);
$string = ereg_replace("м","m",$string);
$string = ereg_replace("и","i",$string);
$string = ereg_replace("т","t",$string);
$string = ereg_replace("б","b",$string);
$string = ereg_replace("Ё","yo",$string);
$string = ereg_replace("Й","I",$string);
$string = ereg_replace("Ю","YU",$string);
$string = ereg_replace("Ч","CH",$string);
$string = ereg_replace("Ь","",$string);
$string = ereg_replace("Щ","SH'",$string);
$string = ereg_replace("Ц","C",$string);
$string = ereg_replace("У","U",$string);
$string = ereg_replace("К","K",$string);
$string = ereg_replace("Е","E",$string);
$string = ereg_replace("Н","N",$string);
$string = ereg_replace("Г","G",$string);
$string = ereg_replace("Ш","SH",$string);
$string = ereg_replace("З","Z",$string);
$string = ereg_replace("Х","H",$string);
$string = ereg_replace("Ъ","",$string);
$string = ereg_replace("Ф","F",$string);
$string = ereg_replace("Ы","Y",$string);
$string = ereg_replace("В","V",$string);
$string = ereg_replace("А","A",$string);
$string = ereg_replace("П","P",$string);
$string = ereg_replace("Р","R",$string);
$string = ereg_replace("О","O",$string);
$string = ereg_replace("Л","L",$string);
$string = ereg_replace("Д","D",$string);
$string = ereg_replace("Ж","Zh",$string);
$string = ereg_replace("Э","Ye",$string);
$string = ereg_replace("Я","Ya",$string);
$string = ereg_replace("С","S",$string);
$string = ereg_replace("М","M",$string);
$string = ereg_replace("И","I",$string);
$string = ereg_replace("Т","T",$string);
$string = ereg_replace("Б","B",$string);
return $string;
}
function latrus ($string) # Теперь задаём функцию перекодировки транслита в кириллицу.
{
$string = ereg_replace("zh","ж",$string);
$string = ereg_replace("Zh","Ж",$string);
$string = ereg_replace("yo","ё",$string);
$string = ereg_replace("Yu","Ю",$string);
$string = ereg_replace("Ju","Ю",$string);
$string = ereg_replace("ju","ю",$string);
$string = ereg_replace("yu","ю",$string);
$string = ereg_replace("sh","ш",$string);
$string = ereg_replace("yе","э",$string);
$string = ereg_replace("jа","я",$string);
$string = ereg_replace("yа","я",$string);
$string = ereg_replace("Sh","Ш",$string);
$string = ereg_replace("Ch","Ч",$string);
$string = ereg_replace("ch","ч",$string);
$string = ereg_replace("Yo","Ё",$string);
$string = ereg_replace("Ya","Я",$string);
$string = ereg_replace("Ja","Я",$string);
$string = ereg_replace("Ye","Э",$string);
$string = ereg_replace("i","и",$string);
$string = ereg_replace("'","ь",$string);
$string = ereg_replace("c","ц",$string);
$string = ereg_replace("u","у",$string);
$string = ereg_replace("k","к",$string);
$string = ereg_replace("e","е",$string);
$string = ereg_replace("n","н",$string);
$string = ereg_replace("g","г",$string);
...... OVER9000
Кто писал - не знаю. Это финал, господа. Задача на три строчки:
function translit($string, $back = 0) {
$converter = array('а'=>'a','б'=>'b','в'=>'v','г'=>'g ','д'=>'d','е'=>'e','ё'=>'e','ж'=>'zh',' з'=>'z','и'=>'i','й'=>'y','к'=>'k','л'=> 'l','м'=>'m','н'=>'n','о'=>'o','п'=>'p', 'р'=>'r','с'=>'s','т'=>'t','у'=>'u','ф'= >'f','х'=>'h','ц'=>'c','ч'=>'ch','ш'=>'s h','щ'=>'sch','ь'=>'\'','ы'=>'y','ъ'=>'\ '','э'=>'e','ю'=>'yu','я'=>'ya','А'=>'A' ,'Б'=>'B','В'=>'V','Г'=>'G','Д'=>'D','Е' =>'E','Ё'=>'E','Ж'=>'Zh','З'=>'Z','И'=>' I','Й'=>'Y','К'=>'K','Л'=>'L','М'=>'M',' Н'=>'N','О'=>'O','П'=>'P','Р'=>'R','С'=> 'S','Т'=>'T','У'=>'U','Ф'=>'F','Х'=>'H', 'Ц'=>'C','Ч'=>'Ch','Ш'=>'Sh','Щ'=>'Sch', 'Ь'=>'\'','Ы'=>'Y','Ъ'=>'\'','Э'=>'E','Ю '=>'Yu','Я'=>'Ya',);
if ($back == 1) $converter = array_flip($converter);
return strtr($string, $converter);
}
+60
function GetEndUTCTime($stime) {
$ddd = split('-', $stime);
if ($ddd[1] == '01')
$ddd[1] = '02'; else if ($ddd[1] == '02')
$ddd[1] = '03'; else if ($ddd[1] == '03')
$ddd[1] = '04'; else if ($ddd[1] == '04')
$ddd[1] = '05'; else if ($ddd[1] == '05')
$ddd[1] = '06'; else if ($ddd[1] == '06')
$ddd[1] = '07'; else if ($ddd[1] == '07')
$ddd[1] = '08'; else if ($ddd[1] == '08')
$ddd[1] = '09'; else if ($ddd[1] == '09')
$ddd[1] = '10'; else if ($ddd[1] == '10')
$ddd[1] = '11'; else if ($ddd[1] == '11')
$ddd[1] = '12'; else if ($ddd[1] == '12') {
$ddd[1] = '01';
$ddd[0]++;
} $result = $ddd[0] . '-' . $ddd[1] . '-' . $ddd[2];
return $result;
}
// Returns submitted time in appropriate format (e.g. 2009-04-01T09:43:25.5244704Z)
Документацыя по API SmartMove.
+50
if(!$category = $this->EE->product_model->get_category_by_key($key)){
$this->EE->functions->redirect($this->EE->functions->create_url($this->EE->config->item('site_404')));
exit();
}
// Эти 4 строчки достают все продукт которые относятся к выбранной категории. Дальше веселее ..
// Build our variable data
$vars[0] = array(
'site_id' => $category[0]['site_id'],
'category_id' => $category[0]['category_id'],
'category_image' => $img,
'category_detail' => $category[0]['detail'],
'parent_id' => $category[0]['parent_id'],
'category_title' => $category[0]['title'],
'url_title' => $category[0]['url_title'],
'meta_title' => $category[0]['meta_title'],
'meta_keyword' => $category[0]['meta_keyword'],
'meta_descr' => $category[0]['meta_descr'],
'total_results' => count($category[0]["products"]),
'results' => $category[0]["products"],
'no_results' => array(),
'result_filter_set' => '',
'breadcrumb_parent_categories' => $breadcrumb_parent_categories,
'catalog_guest_flag' => $flag_catalog,
'catalog_price_visible' => $catalog_visible
);
// Filter the results
if(count($category[0]["products"]) != 0)
$vars = $this->_filter_results($vars,$key,true);
// А теперь count($vars['results']) == $this->EE->config->products_per_page;
// И самое веселое -
foreach($vars[0]['results'] as $rst){
$tmp = $this->_get_product($rst["product_id"]);
$results[] = $tmp[0];
}
$vars[0]['results'] = $results;
// Функция _get_product() получает все данные о продукте: отзывы, описание, цена, куча опций. Пара строчек оттуда:
if($product_id == ''){
// Get product by param or dynamically
$product_id = $this->EE->TMPL->fetch_param('product_id');
$url_title = $this->EE->TMPL->fetch_param('url_title');
if($product_id != ''){
$products = $this->EE->product_model->get_products($product_id);
}else{
// get by url key
$key = ($url_title == '') ? $this->EE->uri->segment(2) : $url_title;
if(!$products = $this->EE->product_model->get_product_by_key($key)){
// Not a product page
return false;
}
}
}else{
if(!$products = $this->EE->product_model->get_products($product_id)){
return false;
}
}
// Очень интересен вызов функции get_products(), эта ф-ция вызывается и для продуктов в каталоге и на странице продукта.
// Каждый вызов тянет за собой 25 запросов в базу, если на странице 40 продуктов * 25 = 1000 запросов = ~ 20 секунд на загрузку страницы
кусочек кода который выводит продукты в каталог, взят из eCommerce плагина BrilliantRetail для ExpressionEngine. Плагин кстати говоря стоит 150 баксов, мда )
+53
protected function CreateClass($className, $params) {
switch (count($params)) {
case 0:
return new $className();
break;
case 1:
return new $className($params[0]);
break;
case 2:
return new $className($params[0], $params[1]);
break;
case 3:
return new $className($params[0], $params[1], $params[2]);
break;
case 4:
return new $className($params[0], $params[1], $params[2], $params[3]);
break;
case 5:
return new $className($params[0], $params[1], $params[2], $params[3], $params[4]);
break;
case 6:
return new $className($params[0], $params[1], $params[2], $params[3], $params[4], $params[5]);
break;
case 7:
return new $className($params[0], $params[1], $params[2], $params[3], $params[4], $params[5], $params[6]);
break;
case 8:
return new $className($params[0], $params[1], $params[2], $params[3], $params[4], $params[5], $params[6], $params[7]);
break;
case 9:
return new $className($params[0], $params[1], $params[2], $params[3], $params[4], $params[5], $params[6], $params[7], $params[8]);
break;
case 10:
return new $className($params[0], $params[1], $params[2], $params[3], $params[4], $params[5], $params[6], $params[7], $params[8], $params[9]);
break;
default:
echo "Too many arguments";
return null;
break;
}
}
Продолжение одного нашумевшего блокбастера: Радж и "шоколадная" фабрика.
Исходники взяты из компонента JEvents для Joomla. Файл из папки "icalevent". Думаю что стоит сделать акцент на iCAL, есть в этом что-то особенное.