- 1
- 2
- 3
<?php
namespace application;
header('Content-Type: text/html; charset=windows-1251');
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+163
<?php
namespace application;
header('Content-Type: text/html; charset=windows-1251');
Кто-то любит BDSM, а кто-то windows-1251
+160
function displayFilterElements(typeList){
_filter.form.elements["name1"].closest("tr").hidden = (typeList === "Type1") ? false : true;
_filter.form.elements["name2"].closest("tr").hidden = (typeList === "Type1") ? false : true;
_filter.form.elements["nam3"].closest("tr").hidden = (typeList === "Type1") ? false : true;
_filter.form.elements["name4"].closest("tr").hidden = (typeList === "Type1") ? false : true;
_filter.form.elements["name5"].closest("tr").hidden = (typeList === "Type1") ? false : true;
_filter.form.elements["name6"].closest("tr").hidden = (typeList === "Type1") ? false : true;
_filter.form.elements["name7"].closest("tr").hidden = (typeList === "Type1") ? false : true;
_filter.form.elements["name8"].closest("tr").hidden = (typeList === "Type2") ? false : true;
_filter.form.elements["name9"].closest("tr").hidden = (typeList === "Type2") ? false : true;
_filter.form.elements["name10"].closest("tr").hidden = (typeList === "Type2") ? false : true;
_filter.form.elements["name11"].closest("tr").hidden = (typeList === "Type2") ? false : true;
_filter.form.elements["name12"].closest("tr").hidden = (typeList === "Type2") ? false : true;
_filter.form.elements["name13"].closest("tr").hidden = (typeList === "Type2") ? false : true;
_filter.form.elements["name14"].closest("tr").hidden = (typeList === "Type2") ? false : true;
_filter.form.elements["name15"].closest("tr").hidden = (typeList === "Type2") ? false : true;
_filter.form.elements["name16"].closest("tr").hidden = (typeList === "Type2") ? false : true;
_filter.form.elements["name17"].closest("tr").hidden = (typeList === "Type2") ? false : true;
_filter.form.elements["name18"].closest("tr").hidden = (typeList === "Type2") ? false : true;
_filter.form.elements["name19"].closest("tr").hidden = (typeList === "Type2") ? false : true;
_filter.form.elements["name20"].closest("tr").hidden = (typeList === "Type2") ? false : true;
_filter.form.elements["name21"].closest("tr").hidden = (typeList === "Type2") ? false : true;
_filter.form.elements["name22"].closest("tr").hidden = (typeList === "Type2") ? false : true;
_filter.form.elements["name23"].closest("tr").hidden = (typeList === "Type2") ? false : true;
_filter.form.elements["name24"].closest("tr").hidden = (typeList === "Type2") ? false : true;
_filter.form.elements["name25"].closest("tr").hidden = (typeList === "Type2") ? false : true;
_filter.form.elements["name26"].closest("tr").hidden = (typeList === "Type2") ? false : true;
_filter.form.elements["name27"].closest("tr").hidden = (typeList === "Type2") ? false : true;
_filter.form.elements["name28"].closest("tr").hidden = (typeList === "Type3") ? true : false;
_filter.form.elements["name29"].closest("tr").hidden = (typeList === "Type3") ? false : true;
};
function stateFilterElements(){
let select = false;
["name1", "name2", "name3", "name4", "name5", "name6", "name7", "name8", "name9", "name10", "name11", "name12", "name13"].forEach(function(fieldName){
if ($.query.hashJSON.has(fieldName))
select = true;
});
return select;
}
Получил в доработку модуль сотрудника. Идентификаторы изменены для публикации, не в них суть.
+131
Я даже не могу сказать, что не так с "PHP", потому что… Окей. Представьте себе, эмм, коробку с инструментами.
Набор инструментов. Выглядит нормально, инструменты как инструменты.
Вы берёте отвёртку и видите крестовину с тремя лепестками.
Окей, не очень полезно для вас, но может когда-нибудь понадобиться.
Берёте молоток и ужасаетесь тому, что он раздвоен с двух сторон.
Он, конечно, всё ещё пригоден, я имею ввиду, что вы можете забивать гвозди серединой бойка, держась за ручку наоборот.
Берёте плоскогубцы, у которых нет зазубрин; они плоские и гладкие.
Не так полезно, как могло бы быть, но ими всё ещё можно выкручивать болты.
И так далее. Все инструменты чем-то странные и вывернутые, но не настолько, чтобы
быть совсем бесполезными. И во всём наборе нет конкретной проблемы; в нём есть все инструменты.
Теперь представьте себе миллионы плотников, использующих такой вот набор
инструментов и говорящих вам: «А что не так с этими инструментами? Я никогда не использовал ничего другого и они отлично работают!».
И плотники показывают вам, построенные ими дома с пятиугольными комнатами и крышей кверху ногами.
Вы стучитесь в дверь, она просто падает внутрь и они орут на вас за то, что вы сломали их дверь.
Вот что не так с "PHP".
Время баянчиков.
+138
#define poff acurp + curp * (nSQs+2) /*probs: offset*/
long psum() {return c(poff+ 1);} long pmax() {return c(poff+2);}
long pn (long n) {return c(poff+2+n); }
void setp (long n, long x){set (poff+2+n, x);} /*prob changes:*/
void setmax (long x){set (poff+2, x);} /*metasearching*/
void setsum (long x){set (poff+1, x);}
long get2ndmax() {long n= poff+2, x=pmax(), m=n, s=0,end=n+nSQs;
do {n++;} while (c(n) != x); /*find 2nd-highest <=pmax*/
do {m++; if (s < c(m) && m !=n) s= c(m);}/*jue tncheck?*/
while (s < x && m < end); return s;}
void addtoSQ(long i, long val) {long x; /*increase prob of ith SQ*/
if (val < 1 || i >nSQs || i<1) return; /*not possible!*/
x = psum()+val;if (x > maxint) return; /*has max normalizer*/
setsum (x); /*normalizer +*/ x = pn(i)+val; setp(i, x);
if (x > pmax()) setmax (x);} /*maximal SQprob has increased */
void subofSQ(long i, long val) {long x; /*decrease prob of ith SQ*/
if (val < 1 || i >nSQs || i<1) return; /*not possible!*/
x = pn(i)-val; if (x < 0) return;/*no neg probabilities!*/
setsum (psum()- val); setp(i,x);/*don't check if =0!*/
if (x + val == pmax()) setmax (get2ndmax());} /*change of max*/
void incSQ() {long i= top(); addtoSQ(i,1);} /*top, not pop!*/
void decSQ() {long i= top(), x,y,z; /*decrem prob of the SQ*/
if (i> nSQs || i< 1) return;/*no such search Q number known*/
x = pn(i); if (x==0) return; /*SQ: already 0*/
y = psum(); z = pmax();
if (x == 1 && y <= z+1) stop /*leave at least 2 SQs*/
if (x == z) setmax (get2ndmax()); /*change of max*/
setp(i, x-1); setsum (y-1);} /*normalizer -1*/
long upSQ; /*SQ probability:enumerator += upSQ: increase*/
void oldSQ() {long a=pop()+ndecl, n,i; if(a<0||a> oldp)stop/*bad*/
n=old[a].size; a=old[a].start;/*all SQs of old nondecl: +upSQ*/
tncheck n+=a; for(i=a;i<n;i++)addtoSQ(SQ[q[i].Q], upSQ);}
void setpat() {long i= pop(); /*instantiate my search pattern*/
if (i<0 || i > patp) stop /*no such search pattern exists*/
set (acurp,i);}/*next SQ-search defined via new probabilities!*/
void pupat() {long i = apatp; /*push search pattern*/
if (i>maxpat) stop i++; set(apatp,i); /*not too many?*/
cpabn (poff+1, acurp + 1 + i *(2+ nSQs), 2 + nSQs,
acurp + 1, aendpats); }
void popat() {long i= apatp; if(i==0) stop
set(apatp,i-1); push(i); } /*pop search pattern*/
Полный исходник http://www.idsia.ch/~juergen/oopscode.c
+131
private static List<Vessel> boosterVesselList = new List<Vessel>();
/// <summary>
/// Вернуть судно по строковому обозначению судна
/// </summary>
private static Vessel GetVesselByIdString(string vesselStrId)
{
Vessel findVessel = null;
// Просмотр в ускоряющем списке
foreach (Vessel boostVessel in boosterVesselList)
{
if (boostVessel.Name == vesselStrId)
{
findVessel = boostVessel;
break;
}
}
// Если в списке не нашли, ищем в БД
if (findVessel == null)
{
findVessel = VesselBusinessLogic.GetItemByName(vesselStrId);
if (findVessel == null)
{
findVessel = new Vessel
{
Id = -1,
Name = vesselStrId
};
findVessel.Id = PublicFunctions.AddOrUpdate(findVessel);
boosterVesselList.Add(findVessel);
}
}
return findVessel;
}
Это один из методов класса для работы с морскими судами. Я пока не совсем понял как так и зачем так. Боже мой.... мама, роди меня обратно. Комментарии оригинальные.
+138
void print_tetral(int i){
switch(i){
case 1:
printf(" January February March\n");
printf("Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su\n");
break;
case 2:
printf(" April May June\n");
printf("Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su\n");
break;
case 3:
printf(" July August September\n");
printf("Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su\n");
break;
case 4:
printf(" October November December\n");
printf("Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su\n");
break;
default:
break;
}
}
+132
int weeks_in_month(int month, int year){
int weeks=1, first, i=0; //i - числа месяца
first = weekday(1, 1, 1, 1, 1, month, year);
i += 8 - first;
while(i <= days_in_month(month, year)){
++weeks;
i += 7;
}
return weeks;
}
+132
void calendar(int year){
int i, j, k, frst=1, week, length, day = 0;
printf(" ");
if(year < 1000) printf(" ");
printf("%d\n\n", year);
int first[3]; // число начала недели (первая неделя - любой день недели, следющие - понедельник)
for(i = 1; i <= 4; ++i){
print_tetral(i);
first[1] = weekday(1, 1, 1, 1, 1, i*3-2, year);
first[2] = weekday(1, 1, 1, 1, 1, i*3-1, year);
first[3] = weekday(1, 1, 1, 1, 1, i*3, year);
length = max(weeks_in_month(i*3-2, year), \
weeks_in_month(i*3-1, year), \
weeks_in_month(i*3, year));
for(week = 0; week < length; ++week){
for(j = 1; j <= 3; ++j){
frst = first[j];
if(week > 0) frst = 1;
if(week == 0)
for(k = 1; k < first[j]; ++k)
printf(" ");
k = frst;
day = 0;
while(k <= 7 && day < days_in_month(i*3-3+j, year) && week < weeks_in_month(i*3-3+j, year)){
day = 7*week + k - first[j] + 1;
if(day > days_in_month(i*3-3+j, year)) break;
if(day < 10) printf(" %d ", day);
else if(day >= 10) printf("%d ", day);
++k;
}
if(week == length - 1 || day >= days_in_month(i*3-3+j, year))
for(; k <= 7; ++k)
printf(" ");
printf(" ");
}
printf("\n");
}
printf("\n");
}
}
Печатаем календарь.
+130
int days_in_month(int month, int year){
if(month == 2){
if(is_leap_year(year)) return 29;
else return 28;
}
if(month < 8){
if(month % 2 == 1) return 31;
else return 30;
}
if(month > 7){
if(month % 2 == 1) return 30;
else return 31;
}
return 0;
}
Количество дней в месяце. Моя первая кучка. Не судите строго ^_^
+128
HTML:
<div id="calendar">
<div class="day">
<span class="num_job">5</span>
<span class="num_day">1</span>
<span class="name_day">пн</span>
<br/>
<span class="month">янв</span>
<span class="importance"></span>
</div>
<div class="day">
<span class="num_job">12</span>
<span class="num_day">2</span>
<span class="name_day">вт</span>
<br/>
<span class="month">янв</span>
<span class="importance"></span>
</div>
</div>
CSS:
body{
background: #ddd;
width: 1064px;
margin: 0 auto;
}
#calendar{
width: 1064px;
margin: 0 auto;
/* height: 500px;*/
display: inline-block;
background: #fff;
}
.day{
background: #f1f6f7;
border: 1px solid #dddbdb;
width: 130px;
height: 130px;
float: left;
margin: 10px;
}
.day:hover{
background: #6EB1BE;
cursor: pointer;
}
.day:hover .num_day, .day:hover .month, .day:hover .name_day{
color: #fff;
}
.day:hover .num_job{
color: #6EB1BE;
background: #fff;
}
.num_day{
font-family: Arial;
font-size: 72px;
font-weight: bold;
color: #1e99f7;
position: relative;
top: -15px;
left: 15px;
letter-spacing: -6px;
}
.month, .name_day{
position: relative;
font-family: Arial;
font-size: 24px;
color: #1e99f7;
}
.month{
top: -25px;
left: 37px;
}
.name_day{
font-size: 11px;
top: -12px;
left: 15px;
}
.num_job{
background: #1e99f7;
color: #fff;
display: block;
width: 25px;
height: 25px;
line-height: 25px;
text-align: center;
border-radius: 100%;
font-family: Arial;
font-size: 17px;
font-weight: bold;
position: relative;
top: 5px;
left: 100px;
}
Вот я сверстал календарик. Подойдёт ли такой код для рабочего варианта? Что добавить? Что убрать? Как будет лучше?