- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
bool XIsEmptyString( LPCTSTR str )
{
CString s(str);
s.TrimLeft();
s.TrimRight();
return ( s.IsEmpty() || s == _T("") );
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+56
bool XIsEmptyString( LPCTSTR str )
{
CString s(str);
s.TrimLeft();
s.TrimRight();
return ( s.IsEmpty() || s == _T("") );
}
Кажется разработчика настиг приступ паранойи.
Взято из библиотека XMLite
−170
CREATE TRIGGER TR_Table1 ON Table1
INSTEAD OF INSERT
AS
INSERT INTO Table1
SELECT * FROM INSERTED
Диалект MS SQL
INSTEAD OF INSERT - триггер, отменяющий вставку и передающий список значений, указанных в запросе в псевдотаблице INSERTED.
т.е. автор вместо того чтобы позволить северу вставлять строк решил каждый раз вставлять их лично.
−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#
...
Почему никогда нельзя нанимать индусских программистов. Выдержки из избранного.
+56
` enum SearchFlag
{
IgnoreCase = 0x00000001, ///< Case differences are ignored
- WholeWorlds = 0x00000002 ///< Only whole words are matched
+ WholeWords = 0x00000002 ///< Only whole words are matched
};
очепятка + копи-паста = world domination.
http://lists.freedesktop.org/archives/poppler/2015-January/011251.html
http://cgit.freedesktop.org/poppler/poppler/commit/?id=78abf540057181b708c546aee421f81a1dd5 8331
+156
if ($var==0 && $var3==0 && $var4==0) {
$qr_result = mysql_query("SELECT type_id, image_plan, section_type, house_number, section_number_real, rooms, prod FROM `psp_gen_plan_type` WHERE prod=0 ORDER BY `house_number` ASC" . $db_table_to_show)
or die(mysql_error()); }
elseif ($var!=0 && $var3!=0 && $var4!=0){
$qr_result = mysql_query("SELECT type_id, image_plan, section_type, house_number, section_number_real, rooms, prod FROM `psp_gen_plan_type` WHERE house_number='$var' AND prod=0 AND section_type='$var3' AND rooms='$var4'" . $db_table_to_show)
or die(mysql_error()); }
elseif ($var!=0 && $var3==0 && $var4==0){
$qr_result = mysql_query("SELECT type_id, image_plan, section_type, house_number, section_number_real, rooms, prod FROM `psp_gen_plan_type` WHERE house_number='$var' AND prod=0 ORDER BY `section_number_real` ASC" . $db_table_to_show)
or die(mysql_error()); }
elseif ($var==0 && $var3!=0 && $var4==0){
$qr_result = mysql_query("SELECT type_id, image_plan, section_type, house_number, section_number_real, rooms, prod FROM `psp_gen_plan_type` WHERE section_type='$var3' AND prod=0 ORDER BY `house_number` ASC" . $db_table_to_show)
or die(mysql_error()); }
elseif ($var==0 && $var3==0 && $var4!=0){
$qr_result = mysql_query("SELECT type_id, image_plan, section_type, house_number, section_number_real, rooms, prod FROM `psp_gen_plan_type` where rooms='$var4' AND prod=0 ORDER BY `house_number` ASC" . $db_table_to_show)
or die(mysql_error()); }
elseif ($var!=0 && $var3==0 && $var4!=0){
$qr_result = mysql_query("SELECT type_id, image_plan, section_type, house_number, section_number_real, rooms, prod FROM `psp_gen_plan_type` where house_number='$var' AND prod=0 AND rooms='$var4' ORDER BY `house_number` ASC" . $db_table_to_show)
or die(mysql_error()); }
elseif ($var!=0 && $var3!=0 && $var4==0){
$qr_result = mysql_query("SELECT type_id, image_plan, section_type, house_number, section_number_real, rooms, prod FROM `psp_gen_plan_type` where house_number='$var' AND prod=0 AND section_type='$var3' ORDER BY `section_number_real` ASC " . $db_table_to_show)
or die(mysql_error()); }
elseif ($var==0 && $var3!=0 && $var4!=0){
$qr_result = mysql_query("SELECT type_id, image_plan, section_type, house_number, section_number_real, rooms, prod FROM `psp_gen_plan_type` where rooms='$var4' AND prod=0 AND section_type='$var3' ORDER BY `house_number` ASC " . $db_table_to_show)
or die(mysql_error()); }
Кинули сайт на доработку. Вот с таким вот фильтром.
+156
public function fillRow($row, $table)
{
static $counter;
global $app_list_strings, $locale;
$counter++;
$row['counter'] = $counter;
$row['status_abc_current'] = $row['status_abc_current'];
$row['status_abc_1_quarter_ago'] = $row['status_abc_1_quarter_ago'];
$row['status_abc_2_quarter_ago'] = $row['status_abc_2_quarter_ago'];
$row['status_abc_3_quarter_ago'] = $row['status_abc_3_quarter_ago'];
$row['status_abc_4_quarter_ago'] = $row['status_abc_4_quarter_ago'];
return $row;
}
что-то тут не так
+133
if (dbg)
printf("2\n");
// This is debug mode
+157
function run()
{
var test = [60, 1, 5, 70, 8];
var biggest = 100;
var biggest_index = 0;
for (var i = 0; i < test.length; i++)
{
if (test[i] < test[i + 1])
{
biggest = test[i + 1];
test[biggest - [i + 1]] = [biggest];
}
}
test[test.length] = biggest;
}
run();
таск был найти наибольшего эллемента масива [60, 1, 5, 70, 8]; во что получилось у коллеги новобранца. это был его 20-ты опыт ;)
+133
//......................................
void DlPortWritePortUshort(WORD addr, WORD data) {
DWORD br;
(&addr)[1]=data;
DeviceIoControl(hdriver,IOCTL_WRITE_PORT_USHORT,&addr,4,NULL,0,&br,NULL);
}
DWORD DlPortReadPortUlong(WORD addr) {
DWORD br;
DeviceIoControl(hdriver,IOCTL_READ_PORT_ULONG,&addr,2,&addr,4,&br,NULL);
return *(DWORD*)&addr;
}
void DlPortWritePortUlong(WORD addr, DWORD data) {
DWORD br;
DeviceIoControl(hdriver,IOCTL_WRITE_PORT_ULONG,&addr,8,NULL,0,&br,NULL);
}
//......................................
Кусок очередного форка dll-ки для работы с очередным, мать его, форком драйвера inpout32.sys.
Попался в поисках исправленного драйвера и dll-обёртки для него.
+95
public static class ColorExtension
{
public static bool IsDarkColor(this Color color)
{
return (color.R & 255) + (color.G & 255) + (color.B & 255) < 3*256/2;
}
}
x & 255 = ?, где x типа byte