- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
{
"result":
{
"session":"f759ca20-****-****-****-273ffc13a26d",
"version":"1.0"
},
"status":
{
"error":"ok",
"errorMessage":""
}
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+138
{
"result":
{
"session":"f759ca20-****-****-****-273ffc13a26d",
"version":"1.0"
},
"status":
{
"error":"ok",
"errorMessage":""
}
}
takoy vot error
−89
# Да, да, захардкоженные id!
# .where(id: [id_arrays]) ? Не, не слышал
@cities = [52, 21, 9, 18, 196, 27, 106, 4, 40, 71].collect { |c| City.find(c) }
# Это все в одном экшене, ага.
session[:latitude] = params[:my_latitude]
session[:longitude] = params[:my_longitude]
session[:my_address] = params[:my_address]
session[:fuel] = params[:fuel][:fuel_id]
session[:range] = params[:station][:range]
# А потом кто-нибудь развернет базу из бэкапа без сохранения первичных ключей и все перестанет работать.
@fuels = Fuel.where(:id=>[1, 2, 3, 5])
# Типичный экшен
session[:view_sub_page] = action_name
id = params[:station_chain].split("-")
s_id = id[id.size - 2]
station = Station.where(:id=>s_id)
@fuels_level = AppUtils.calculate_price(station)
@prices = station.last.prices.order("created_at").group_by { |item| item.fuel_id }
@fuel_id = id[id.size - 1].to_i
@station_lists = Station.get_station_detail_map(station, @fuels_level, @fuel_id, @prices)
@station = station.last
@station_logo = ''
@station_logo_chain = ManageStationChain.where(:brand_id=>@station.brand_id).last
@station_logo = PromoLogo.find_by_station_id(@station.id)
@end = @station.address
@fuels = Fuel.where(:id=>[1, 2, 3, 5])
@sub_station = ""
@cities = Station.get_static_cities()
# Какие еще Rails, у меня свой лисопед
def City.find_by_name(name)
city = City.where("name = ?", name).first
if city.nil?
city = City.new
city.name = name
city.save
end
return city
end
# Именно так, в одну строчку. station.open_time и close_time - типа :time в базе
if !station.open_time.nil? and !station.close_time.nil? and (Time.parse(station.open_time.to_s)...Time.parse(station.close_time.to_s)).cover?(Time.now.utc.change(year: 2000, month: 1, day: 1, hour: Time.now.hour, min: Time.now.min, second: 0)) == false
return "PRICE_LEVEL_CLOSE"
end
# Компьютер купил, программировать не купил
# В таблице Points - тысячи записей
def get_points
points = Points.all
render json: {:success => true, :data => {:points => points.as_json(:only => [:action, :points, :points_new])}} and return
end
# И под занавес - код логина
# Гемы? Devise? OAuth? А чой энта?
def login
register = false
url = "https://graph.facebook.com/me/?access_token="+params[:facebook_token]
uri = URI.parse(url)
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
request = Net::HTTP::Get.new(uri.path + "?" + uri.query)
response = http.request(request)
if response.code == "200"
facebook_response = JSON.parse(response.body)
user = User.where("facebook_id = ?", facebook_response["id"]).first
if !user
user = User.new
user.facebook_id = facebook_response["id"]
user.nick = facebook_response["username"]
user.email = facebook_response["email"]
register = true
end
user.email = facebook_response["email"]
user.generate_token
user.save
if register == true
history = History.new
history.user = user
points = Points.where(:action => "REGISTER").first
history.points_action = points
history.points = points.points
user.points+=points.points
user.save
history.save
end
logger.debug("Calculating point");
points = Points.where('action != ?', 'FACEBOOK_INVITES')
logger.debug(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>");
logger.debug("Testing for points");
logger.debug(points.as_json(:only => [:action, :points]))
logger.debug(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>");
if user.disabled == true
render json: {:success => false, :error => {:message => "Invalid facebook token", :error_code => "INVALID_TOKEN"}}, status: :unauthorized and return
else
render json: {:success => true, :data => {:auth_token => user.auth_token, :points => points.as_json(:only => [:action, :points])}} and return#
...
Почему никогда нельзя нанимать индусских программистов. Выдержки из избранного.
−161
my @arr = (1,2,3,4);
foreach (@arr)
{
threads->new(\&doSomething, $_)->join;
}
Цикл на 4...? Запуск потоков.
+165
public static function isOwner()
{
$user = app::getSession();
if ($user->isAuth()){
switch (true){
case ($_GET('action') == 'upload'):
case ($_GET('login') == $user->getUserLogin()):
return true;
break;
default:
return false;
break;
}
}
return false;
}
Проверка является ли пользователь владельцем фотогалереи)))
+51
static void operator()(int atan)
Wat?
+155
require_once 'number.php';
class numberspelling extends number {
//put your code here
private $spelling=array(
'nought'=>array(
'eng'=>'nought',
'ukr'=>'нуль',
'rus'=>'ноль'
),
'ones'=>array(
'eng'=>array("", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"),
'ukr'=>array("", "один", "два", "три", "чотири", "п`ять", "шість", "сім", "вісім", "дев`ять"),
'rus'=>array("", "один", "два", "три", "четыре", "пять", "шесть", "семь", "восемь", "девять")
),
'teens'=>array(
'eng'=>array("ten", "eleven", "twelve", "thirteen", "fourteen", "fifteen", "sixteen", "seventeen", "eighteen", "nineteen"),
'ukr'=>array("десять", "одинадцять", "дванадцять", "тринадцять", "чотирнадцять", "п`ятнадцять", "шістнадцять", "сімнадцять", "вісімнадцять", "дев`ятнадцять"),
'rus'=>array("десять", "одиннадцать", "двенадцать", "тринадцать", "четырнадцать", "пятнадцать", "шестнадцать", "семнадцать", "восемнадцать", "девятнадцать")
),
'ties'=>array(
'eng'=>array("", "ten", "twenty", "thirty", "forty", "fifty", "sixty", "seventy", "eighty", "ninety"),
'ukr'=>array("", "десять", "двадцять", "тридцять", "сорок", "п`ятдесят", "шістдесят", "сімдесят", "вісімдесят", "дев`яносто"),
'rus'=>array("", "десять", "двадцать", "тридцать", "сорок", "пятьдесят", "шестьдесят", "семдесят", "восемдесят", "девяносто")
),
'hundreds'=>array(
'eng'=>array("", "hundred", "two hundred", "three hundred", "four hundred", "five hundred", "six hundred", "seven hundred", "eight hundred", "nine hundred"),
'ukr'=>array("", "сто", "двісті", "триста", "чотириста", "п`ятсот", "шістсот", "сімсот", "вісімсот", "дев`ятсот"),
'rus'=>array("", "сто", "двести", "триста", "четыреста", "пятьсот", "шестьсот", "семьсот", "восемьсот", "девятьсот")
)
);
private $greatnumbersspelling=array(
'thousands'=>array(
'eng'=>array("", "one thousand", "two thousand", "three thousand", "four thousand", "thousand"),
'ukr'=>array("", "одна тисяча", "дві тисячі", "три тисячі", "чотири тисячі", "тисяч"),
'rus'=>array("", "одна тысяча", "две тысячи", "три тысячи", "четыре тысячи", "тысяч")
),
'millions'=>array(
'eng'=>array("", "one million", "two million", "three million", "four million", "million"),
'ukr'=>array("", "один мільйон", "два мільйони", "три мільйони", "чотири мільйони", "мільйонів"),
'rus'=>array("", "один миллион", "два миллиона", "три миллиона", "четыре миллиона", "миллионов")
)
);
private $signspelling=array(
'negative'=>array(
'eng'=>'minus',
'ukr'=>'мінус',
'rus'=>'минус'
),
'positive'=>array(//для удобства изменения кода при необходимости
'eng'=>'',
'ukr'=>'',
'rus'=>''
)
);
private $language;
public function __construct($number, $language) {
parent::__construct($number);
$this->language=$language;
}
public function spell() {
//spelling
$result="";
if($this->sign==-1)
$result=$result.
$this->signspelling['negative'][$this->language]." ";
else $result.=$this->signspelling['positive'][$this->language]." ";
if(isset($this->digits[6])) {//разряд миллионов
for($i=1; $i<5; $i++) {
if($this->digits[6]==$i) {
$result.=$this->greatnumbersspelling['millions'][$this->language][$i]." ";
}
}
if($this->digits[6]>=5) {
$result.=$this->spelling['ones'][$this->language][$this->digits[6]]." ".$this->greatnumbersspelling['millions'][$this->language][5]." ";
}
}
if(isset($this->digits[5])) {//разряд сотен тысяч
$result.=$this->spelling['hundreds'][$this->language][$this->digits[5]]." ";
if(($this->digits[5]!=0)&($this->digits[4]==0)&($this->digits[3]==0)) $result.=$this->greatnumbersspelling['thousands'][$this->language][5]." ";
}
if(isset($this->digits[4])) {//разряд десятков тысяч
if($this->digits[4]>1) {
$result.=$this->spelling['ties'][$this->language][$this->digits[4]]." ";
if($this->digits[3]==0) $result.=$this->greatnumbersspelling['thousands'][$this->language][5]." ";
}
if($this->digits[4]==1) $result.=$this->spelling['teens'][$this->language][$this->digits[3]]." ".$this->greatnumbersspelling['thousands'][$this->language][5]." ";
}
if(isset($this->digits[3])) {//разряд тысяч
for($i=1; $i<5; $i++) {
if($this->digits[3]==$i) {
if(!isset($this->digits[4])||(isset($this->digits[4])&&$this->digits[4]!=1)) $result.=$this->greatnumbersspelling['thousands'][$this->language][$i]." ";
}
}
if($this->digits[3]>=5) {
if(!isset($this->digits[4])||(isset($this->digits[4])&&$this->digits[4]!=1))
$result.=$this->spelling['ones'][$this->language][$this->digits[3]]." ".$this->greatnumbersspelling['thousands'][$this->language][5]." ";
}
}
if(isset($this->digits[2])) {//разряд сотен
$result.=$this->spelling['hundreds'][$this->language][$this->digits[2]]." ";
Часть программы, которая преобразовывает целое число из промежутка [-9999999; 9999999] в текст (разговорный) на трех языках (Russian, Ukrainian, English). Состоит из трех классов. Это класс numberspelling - основной класс программы. Точнее его часть. Остальное - в следующем посте. Именно он преобразует цифру из уже имеющегося массива number в массив в произношение этой цифры на данном языке, в соответствии с её весом (той степенью числа 10, на которую она умножена). Например, если цифра 5 в уже имеющемся массиве стоит под номером 2, то она будет произносится "пятьсот". Напомню, номер элемента в массиве соответствует степени числа 10, на которую надо умножить элемент.
+161
if(upass==uname || upass=='1234' || upass=='12345' || upass=='123456' || upass=='654321' || upass=='pikabu' || upass=='password' || upass=='qwerty' || upass=='qazwsx') {
$('#'+upass2_id+'_err').html('Пароль не должен быть слишком простым или совпадать с логином');
errCnt++;
}
смотрел исходный код по правой кнопки - сайт pikabu.ru
−165
update #tmpTours1 set pricelink = ('<a target="_blank" title="Прайс-лист на ближайшие заезды" href="../pricelist/Complex.aspx?country=' + ltrim(str(cnkey)) + '&tour=' + ltrim(str(tourkey)) + '&dateFrom=' + dbo.mwFirstTourDate(tlkey) + '">' + ltrim(str(tourprice)) + ' ' + tourrate + '</a>')
set @sql = N'select * from #tmpTours1 where tourprice is not null and quota <> case ' + ltrim(str(@quotaYes)) + ' when -1 then -10 else 0 end '
if len(@sort) > 0
set @sql = @sql + ' order by ' + @sort
print @sql
exec sp_executesql @sql
Хранимочки по 1000 строк подобного кода.
+58
if(is_ai_on && !white_move)
{
int tries;
start:
srand (time(NULL));
select_figure:
int figure = rand() % (game_field.figures.size() - 1) + 0;
if(game_field.figures[figure]->IsWhiteFigure()) goto select_figure;
int pos_x;
int pos_y;
tries = 0;
try_move:
try
{
switch(game_field.figures[figure]->GetType())
{
case PawnType:
{
pos_x = rand() % (game_field.figures[figure]->GetPositionX() + 2) + (game_field.figures[figure]->GetPositionX() - 2);
if(pos_x < 0) pos_x = 0;
if(pos_x >= game_field.size) pos_x = game_field.size - 1;
pos_y = game_field.figures[figure]->GetPositionY() + 1;
if(pos_x == game_field.figures[figure]->GetPositionX() &&
pos_y == game_field.figures[figure]->GetPositionY())
{
if(tries < 6)
{
tries++;
goto try_move;
}
else
{
goto select_figure;
}
}
}break;
default:
{
pos_x = rand() % (game_field.figures[figure]->GetPositionX() + 5) + (game_field.figures[figure]->GetPositionX() - 5);
pos_y = rand() % (game_field.figures[figure]->GetPositionY() + 5) + (game_field.figures[figure]->GetPositionY() - 5);
if(pos_x < 0) pos_x = 0;
if(pos_x >= game_field.size) pos_x = game_field.size - 1;
if(pos_y < 0) pos_y = 0;
if(pos_y >= game_field.size) pos_y= game_field.size - 1;
if(pos_x == game_field.figures[figure]->GetPositionX() &&
pos_y == game_field.figures[figure]->GetPositionY())
{
if(tries < 6)
{
tries++;
goto try_move;
}
else
{
goto select_figure;
}
}
}break;
}
game_field.DoMove(figure, pos_x, pos_y, this->white_move);
}
catch(...)
{
if(tries < 6)
{
tries++;
goto try_move;
}
else
{
goto select_figure;
}
}
this->white_move = true;
}
Скайнет - версия 0.0000000000000000000000000000000001
+73
@Override
public void run()
{
_tracks = parseTracks();
double inc = 100 / _tracks.size();
for(Track track : _tracks)
{
track.save(_savePath);
_progress += inc;
}
_progress = 100;
}
Категория "чтоб наверняка".