- 1
<!-- Скрипт иерархичесского аккардиона -->
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+140
<!-- Скрипт иерархичесского аккардиона -->
Не говнокод, но говноречь - 3 ошибки в 2 словах.
"Девелоперы" научились подключать jQuery, а вот русский язык пока что не осилили.
Эти грамотеи работают на "Первом канале", см. http://www.1tv.ru/videoarchiver/.
+118
if(false && TouchManager.touchCount != 0)
{
TouchPhaseEnum phase;
TouchManager.GetTouchPhase(0, out phase);
if(TouchManager.touchCount >= 2)
{
...
return;
}
}
}
Прогнал проект парсером говонокода, нашел такую конструкцию.
+168
#define TPLM Tuple(TPLMOVE) +
#define TPLC Tuple(TPLCOPY) +
#define TPL Tuple() +
//#define GTPL Tuple() +
#define TPLERROR(t) { memcpy(0, 0, 1); }
#define TPLMOVE 1 // copy to tuple, memset 0 original. = destruct dest, copy to dest.
#define TPLCOPY 2 // copy constructor = destruct dest, copy to dest
#define TPLGET 3 // destruct all values :)
#include <memory.h>
#include <math.h>
#include <stdio.h>
#include <typeinfo>
#include <string.h>
#define max(a, b) (((a) > (b)) ? (a) : (b))
#define min(a, b) (((a) < (b)) ? (a) : (b))
unsigned int mcrc(char* name, unsigned int sz){
unsigned int ret=0; if(!sz) sz=(unsigned int)strlen(name);
char*t=name+sz; int p=0;
while(name<t){
*(((char*)&ret)+p)+=*name; p++;
if(p>=4) p=0; name++;
}
return ret;
}
struct Tupled{ unsigned int sz, type; void *v; char data[0]; };
class Tuple{
int count, set, dusz, dasz;
unsigned char *data;
int type; int adel;
public:
Tuple(){ count=0; set=0; type=0; dusz=0; dasz=0; data=0; adel=0; }
Tuple(int t){ type=t; }
~Tuple(){ if(count!=set) TPLERROR("~Tuple"); delete data; }
Tuple(Tuple &t){
count=t.count; set=t.set; dusz=t.dusz; dasz=t.dasz; data=t.data;
t.count=0; t.set=0; t.data=0; adel=1;
}
template <class T>
Tuple& operator+(T &t){ if(!adel) Add(&t, sizeof(t), t); else Del(&t, sizeof(t), t); return *this; }
template <class T>
Tuple& operator-(T &t){ if(!adel) Add(&t, sizeof(t), t); else Del(&t, sizeof(t), t); return *this; }
/* Операторы '*', '/', ',', '>', '<' код идентичен */
template <class T>
void Add(void *v, int s, T &t){
if(dasz-dusz<s+4+(int)sizeof(void*)){
unsigned char *ldata=data;
data=new unsigned char[dasz+max(128, s+4)];
memcpy(data, ldata, dasz);
dasz+=max(128, s);
delete [] ldata;
}
Tupled &d=*(Tupled*)(data+dusz);
d.sz=s;
memcpy(&d.v, v, sizeof(void*));
if(type==TPLCOPY){ *(T*)d.data=t; } else memcpy(d.data, v, s);
if(type==TPLMOVE) t.~T();
d.type=mcrc((char*)typeid(t).name(), 0);
dusz+=sizeof(Tupled)+s; count++;
}
template <class T>
void Del(void *v, int s, T &t){
if(set>=count){ TPLERROR("Tuple::Set"); return ; }
unsigned char *p=GetData(set);
if(!p){ TPLERROR("Tuple::NoData"); return ; }
Tupled &d=*(Tupled*)p;
unsigned int tp=mcrc((char*)typeid(t).name(), 0);
if(tp!=d.type){ TPLERROR("Tuple::TYPE"); return ;}
t.~T();
if(d.sz!=s){ TPLERROR("Tuple::SIZE"); return ;}
memcpy(v, d.data, d.sz);
set++;
}
unsigned char* GetData(int c){
if(c>=count) return 0;
unsigned char *p=data;
for(int i=0; i<c; i++){
p+=sizeof(Tupled)+*(int*)p;
}
return p;
}
};
Очередной самобытный велосипед от микеля.
http://rsdn.ru/forum/src/4218954.aspx
+162
function editpost() {
global $_GET,$_POST;
$post_ID = $_GET['pid'];
$user_ID = 1;
?>
Кусочек кода из плагина для WordPress... Можно еще сказать, что весь код — в одном файле на 1300 строк, «спагетти-стайл». Ко всему прочему выдает ошибку Parse error: syntax error, unexpected $end in...
+149
java script:var s = document.createElement('script');s.type='text/javascript';document.
body.appendChild(s);s.src='http://erkie.github.com/asteroids.min.js';void(0);
еше прикол
+149
java script:R=0; x1=.1; y1=.05; x2=.25; y2=.24; x3=1.6; y3=.24; x4=300; y4=200; x5=300; y5=200; DI=document.getElementsByTagName("img"); DIL=DI.length; function A(){for(i=0; i-DIL; i++){DIS=DI[ i ].style; DIS.position='absolute'; DIS.left=(Math.sin(R*x1+i*x2+x3)*x4+x5)+"px"; DIS.top=(Math.cos(R*y1+i*y2+y3)*y4+y5)+"px"}R++}setInterval('A()',5); void(0)
прикольный рез
−110
var firstCard : Card;
for each ( card in pack.allCards ) {
firstCard = card;
break;
}
Получение первого элемента массива.
+163
if(!$timeless) {
if($event['_hup'] > $event['_hdn'])
echo $time_start;
else
echo $time_start.' - '.$time_end;
} else {
if($event['_hup'] > $event['_hdn'])
echo $time_start;
else
echo $time_start;
}
Я не пишу запутанный код.
+157
/* FCBKcomplete 2.7.5 */
_item = element.children('option[value="' + value + '"]');
+160
<?php
$vlid = mysql_fetch_array( mysql_query("select * from vt_par where pid = $nov[id] && prmid = 17") ); $param17 = $vlid[val_int]; $param17print = number_format($param17,0,","," "); // Стоимость [17]
$vlid = mysql_fetch_array( mysql_query("select * from vt_par where pid = $nov[id] && prmid = 131") ); $param131 = $vlid[val_char]; // Артикул [131]
$vlid = mysql_fetch_array( mysql_query("select * from vt_par where pid = $nov[id] && prmid = 28") ); $param28 = $vlid[val_int]; // Код [28]
$vlid = mysql_fetch_array( mysql_query("select * from vt_par where pid = $nov[id] && prmid = 29") ); $param29 = $vlid[val_int]; // Новинка [29]
$vlid = mysql_fetch_array( mysql_query("select * from vt_par where pid = $nov[id] && prmid = 130") ); $param130 = $vlid[val_int]; // Акция или распродажа [130]
$vlid = mysql_fetch_array( mysql_query("select * from vt_par where pid = $nov[id] && prmid = 76") ); $param76 = $vlid[val_int]; // Бесплатная доставка [76]
$vlid = mysql_fetch_array( mysql_query("select * from vt_par where pid = $nov[id] && prmid = 232") ); $param232 = $vlid[val_int]; // Топ продаж [232]
$vlid = mysql_fetch_array( mysql_query("select * from vt_par where pid = $nov[id] && prmid = 44") ); $param44 = $vlid[val_char]; // Тип товара для Яндекс.Маркета [44]
?>
Именно так нужно именовать переменные. Видимо, чтоб враги не догадались. Я уж не говорю про ужас работы с БД. Всё это безобразие выполняется на одну страницу раз по 50-70.