- 1
- 2
- 3
- 4
- 5
void somefunc(bool val)
{
assert(0 == val || 1 == val);
...
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+83
void somefunc(bool val)
{
assert(0 == val || 1 == val);
...
}
Многоуровневый говнокод. Во первых, индусское сравнение задом наперед. Во вторых, выражение в ассерте всегда истенно. Когда GCC возбухнул по этому поводу, то код был за-#ifdef-ен, но оставлен для других менее умных компиляторов.
−101
def comment_absolute_url(request, pid):
"""
This is a function which return paginated absolute URL for comment.
It replaces default comment.get_absolute_url()
"""
comment = Comment.objects.get(id=pid)
pagination_interval = 25 # will be defined by user settings in future
all_comments = Comment.objects.filter(content_type=comment.content_type, object_pk=comment.object_pk,
is_public=True, is_removed=False)
# I will post it to govnokod.ru, okay? ;)
dummy_counter = int(0)
needed_page = int(dummy_counter / pagination_interval) + 1
for dummy_comment in all_comments:
dummy_counter = dummy_counter + 1
if dummy_comment.id == comment.id:
needed_page = int(dummy_counter / pagination_interval) + 1
# making an URL
if comment.content_type.name == "forum post":
item = ForumPost.objects.get(id=comment.object_pk)
url_prefix = "forum/%s/%i" % (item.forum.url, item.id)
elif comment.content_type.name == "new":
item = New.objects.get(id=comment.object_pk)
url_prefix = "news/%i" % item.id
fixed_url = "/%s/?page=%i#%i" % (url_prefix, needed_page, int(pid))
return fixed_url
В Django есть достаточно няшный comments framework. А ещё там есть такой же няшный paginator. А вот вместе их подружить разработчики django почему-то постеснялись, и поэтому comment.get_absolute_url() нихрена не знает о существовании paginator-а. Эта функция призвана помочь безумному автору сослаться на коммент.
Веселье начинается от dummy_counter-а.
+75
private void viewField(int id) {
try {
List<Fieldmaterials> materials = materialsSession.FieldmaterialsBy(id);
int size = materials.size() - 1;
int i = 0;
JSONWriter json = new JSONStringer().object();
json.key("namefield").array();
while (i <= size) {
Fieldmaterials get = materials.get(i);
json.value(get.getNamefield());
i++;
}
json.endArray();
json.key("typefield").array();
i = 0;
while (i <= size) {
Fieldmaterials get = materials.get(i);
json.value(get.getTypefield());
i++;
}
json.endArray();
json.key("orderfield").array();
i = 0;
while (i <= size) {
Fieldmaterials get = materials.get(i);
json.value(get.getOrderfieldmaterials());
i++;
}
json.endArray().endObject();
} catch (Exception e) {
e.printStackTrace();
}
Не нашел более хорошего способа сериализовать в JSON. Нужно было оформить поля объектов в массивы, что-бы потом удобно разобрать в javascript
+52
$hash = md5($eshopId."::".
$orderId."::".
$_REQUEST["serviceName"]."::".
$_REQUEST["eshopAccount"]."::".
$_REQUEST["recipientAmount"]."::".
$_REQUEST["recipientCurrency"]."::".
$_REQUEST["paymentStatus"]."::".
$_REQUEST["userName"]."::".
$_REQUEST["userEmail"]."::".
$_REQUEST["paymentData"]."::".
$secretKey);
if (strtoupper($_REQUEST["hash"]) != strtoupper($hash)) {
die('Err: wrong hash.');
}
......
я конечно уважаю modx но ето через чур
http://bezumkin.ru/modx/minishop/extra/intellectmoney.html
+56
$where = str_replace("post_status = 'publish'","post_status = 'publish' OR post_status = 'future' OR post_status = 'draft' OR post_status = 'inherit'", $where);
Wordpress. Govnocode is poetry
+128
rotate n xs = b ++ a
where n' = n `mod` (length xs)
(a, b) = splitAt ((length xs) - n') xs
rotateAmount xs = _ra 0 ((length xs) - 1) (listArray (0, ((length xs) - 1)) xs)
where _ra s e ys = if (e - s) == 1
then (if ((ys ! s) < (ys ! e)) then s else e) -- base case
else let h = ys ! s -- first item
l = ys ! e -- last item
mi = s + ((e - s) `div` 2) -- middle index
m = ys ! mi -- middle item
in if (h < l)
then s -- return start index
else if (h > m)
then _ra s mi ys
else _ra mi e ys
A “rotated array” is an array of integers in ascending order, after which for every element i, it has been moved to element (i + n) mod sizeOfList. Write a function that takes a rotated array and, in less-than-linear time, returns n (the amount of rotation). http://techguyinmidtown.com/2008/07/05/my-answers-to-the-microsoft-interview-questions
+70
$device->logicalDevices = $device->getLogicalDevices();
ООП, такой ООП.
+66
$pr = array();
foreach ($params as $k => $v)
$pr[] .= urlencode($k).'='.urldecode($v);
$data = join('&', $pr);
http_build_query() для слабаков! Только велосипеды, только выстрел себе в ногу.
/netcat/admin/nc_adminnotice.class.php
+138
code = _factorCodeMax[factorUnid];
code++;
_factorCodeMax[factorUnid] = code;
return code;
+23
QHash<QByteArray, QSharedPointer<KeywordAnalyzerResult::Statistics> >::const_iterator i = res.result()->constBegin();
Создание STL-style итератора для Qt-ных контейнеров обычно выглядит уродски.