- 1
List(1,2,3) + "X" == "List(1, 2, 3)X"
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+130
List(1,2,3) + "X" == "List(1, 2, 3)X"
Скала
+154
<?php
// define variables and set to empty values
$fNameErr = $lNameErr = $passErr = $pconfErr = $bDayErr = $genderErr = $ageErr = $progErr = $emailErr = $websiteErr = "";
$fname = $lname = $password = $passconfirm = $day = $month = $year = $email = $gender = $age = $plang = $email = $website = "";
$validate = TRUE;
if ($_SERVER["REQUEST_METHOD"] == "POST")
{
$fname = test_input($_POST["fname"]);
$lname = test_input($_POST["lname"]);
$password = test_input($_POST["password"]);
$passconfirm = test_input($_POST["passconfirm"]);
$day = test_input($_POST["day1"]);
$month = test_input($_POST["month1"]);
$year = test_input($_POST["year1"]);
$email = test_input($_POST["email"]);
$website = test_input($_POST["website"]);
}
function test_input($data)
{
$data = trim($data);
$data = stripslashes($data);
$data = htmlspecialchars($data);
return $data;
}
if(!$_POST)
{
$validate = FALSE;
}
if ($_SERVER["REQUEST_METHOD"] == "POST")
{
//validation of forename
if(!empty($_POST["fname"]))
{
if (!preg_match("/^[a-zA-Z '-]*$/", $fname))
{
$fNameErr = "Only letters, - , ' and whitespaces are allowed";
$fname = "";
$validate = FALSE;
}
else
{
$fname = test_input($_POST["fname"]);
}
}
else
{
$fNameErr = "Forename is required";
$validate = FALSE;
}
//validation of surname
if (!empty($_POST["lname"]))
{
if (!preg_match("/^[a-zA-Z '-]*$/", $lname))
{
$lNameErr = "Only letters, - , ' and whitespaces are allowed";
$lname = "";
$validate = FALSE;
}
else
{
$lname = test_input($_POST['lname']);
}
}
else
{
$lNameErr = "Last name is required";
$validate = FALSE;
}
Только начал кодить на пхп, интересно мнение более опытных товарищей - можно ли подобное отнести к говнокоду/ быдлокоду?) просто были уже подобные комментарии относительно этого кода
+159
/**
* Дублирование пароля в поле CONFIRM_PASSWORD.
*/
function removeConfirmPasswordField()
{
$arFields = filter_input(INPUT_POST, 'REGISTER', FILTER_DEFAULT , FILTER_REQUIRE_ARRAY);
if($arFields)
{
$arKeys = array_keys($arFields);
$arNeedKeys = array('PASSWORD', 'CONFIRM_PASSWORD');
if(count(array_intersect($arKeys, $arNeedKeys)) === count($arNeedKeys))
{
$_POST['REGISTER']['CONFIRM_PASSWORD'] = $_POST['REGISTER']['PASSWORD'];
$_REQUEST['REGISTER']['CONFIRM_PASSWORD'] = $_REQUEST['REGISTER']['PASSWORD'];
}
}
}
AddEventHandler('main', 'OnBeforeProlog', 'removeConfirmPasswordField');
Вот таким способом я дублирую значение поля ввода пароля в поле для его подтверждения...
+157
/**
* Checks if the same user added to more than one role
* @private
*/
_checkUsersConficts: function() {
var adminUsers = this._usersGrids[TI.constants.RoleLevels.ADMIN].getStore().getRange().map(function(rec) {
return rec.get(this.COLUMN_EMAIL);
}, this);
var editorUsers = this._usersGrids[TI.constants.RoleLevels.EDITOR].getStore().getRange().map(function(rec) {
return rec.get(this.COLUMN_EMAIL);
}, this);
var readerUsers = this._usersGrids[TI.constants.RoleLevels.READER].getStore().getRange().map(function(rec) {
return rec.get(this.COLUMN_EMAIL);
}, this);
//let's use dumb approach. probably later will have time for some more sophisticated algorithm ¯\_(ツ)_/¯
var conflictAdminEditor = adminUsers.intersect(editorUsers);
var conflictAdminReader = adminUsers.intersect(readerUsers);
var conflictEditorReader = editorUsers.intersect(readerUsers);
return conflictAdminEditor
.concat(conflictAdminReader)
.concat(conflictEditorReader)
.unique();
}
Да чо там, больше ролей не добавлялось уже очень давно и не предполагается.
+159
<button type="submit" method="post" action="/vote-positive" class="like" name="<?=$model->numb_positive?>"></button>
<button type="submit" method="post" action="vote-negative" class="dizlike" name="<?=$model->numb_positive?>"></button>
Попытка обработать нажатие на кнопку - для системы рейтинга.
+56
template<typename T, typename E=emp> class _interlock;
template<typename T> class _interlock
<T,
typename std::enable_if<
std::is_same<
typename std::conditional<
std::is_same<udi,typename std::make_unsigned<T>::type>::value,
udi,
uqi
>::type,
typename std::make_unsigned<T>::type
>::value
>::type
>
{
public:
_interlock
<T,
typename std::enable_if<
std::is_same<
typename std::conditional<
std::is_same<udi,typename std::make_unsigned<T>::type>::value,
udi,
uqi
>::type,
typename std::make_unsigned<T>::type
>::value
>::type
>
(T x=0)
{
number=x;
}
//Возвращается прежнее значение
T operator + (T x)
{
return (T)InterlockedExchangeAdd((_unsign_t*)&number,(_sign_t)x);
}
//Возвращается прежнее значение
T operator - (T x)
{
return (T)InterlockedExchangeAdd((_unsign_t*)&number,-(_sign_t)x);
}
//Чтение
T operator () ()
{
return number;
}
//Замена на x
T operator () (T x)
{
return (T)InterlockedExchange((_unsign_t*)&number,(_unsign_t)x);
}
//Сравнение с y, замена на x, если равны
T operator () (T x, T y)
{
return (T)InterlockedCompareExchange((_unsign_t*)&number,(_unsign_t)x,(_unsign_t)y);
}
T operator ++ ()
{
return (T)InterlockedExchangeAdd((_unsign_t*)&number,1)+1;
}
T operator -- ()
{
return (T)InterlockedExchangeAdd((_unsign_t*)&number,-1)-1;
}
T operator ++ (int)
{
return (T)InterlockedExchangeAdd((_unsign_t*)&number,1);
}
T operator -- (int)
{
return (T)InterlockedExchangeAdd((_unsign_t*)&number,-1);
}
private:
typedef typename std::make_unsigned<T>::type _unsign_t;
typedef typename std::make_signed<T>::type _sign_t;
volatile T number;
};
Функция "ИЛИ" для типов через type_traits для шаблона. А также атомарный: сумматор, счётчик, компаратор с возможностью условной и безусловной замены значения в одном лице. Для типов: udi (unsigned int), sdi (signed int), uqi (unsigned long long), sqi (signed long long). Тип emp = void (от слова empty).
+159
jQuery('#btn-submit-calck').on('click',function () {
var GDO = jQuery('#GDO').val().replace(',', '.');
var GAZ = jQuery('#GAZ').val().replace(',', '.');
var BENZIN = jQuery('#BENZIN').val().replace(',', '.');
var ROZHOD = jQuery('#ROZHOD').val().replace(',', '.');
var PROBEG = jQuery('#PROBEG').val().replace(',', '.');
var RESULT = ((GDO * 100)/((BENZIN-GAZ*1.1)*ROZHOD*PROBEG));
jQuery('#RESULTO').text(Math.round(RESULT));
jQuery('#EKONOM').text(Math.round(((BENZIN-GAZ*1.1)*ROZHOD*PROBEG)/100));
jQuery('#1GOD').text(Math.round((((BENZIN-GAZ*1.1)*ROZHOD*PROBEG)/100)*365));
return false;
});
+74
for (int i = 0; i < blockNodeSize; i++) {
String blockTitle = subBlock.getElementsByClass("b-results__drugs-title").get(i).text();
String blockData = String.valueOf(subBlock.getElementsByTag("dd").get(i))
//.replace("\n", "")
.replace("<dd>", "")
.replace("</dd>", "")
.replace("<p><i>", "")
.replace("</i></p>", ":")
.replace("<p>", "")
.replace("</p>", "")
.replace("</i>", "")
.replace("<br>", "")
.replace("</br>", "\n");
+124
<script src="/js/js.js" type="text/javascript"></script>
Я так и не понял. Что же интересно может делать файл js.js в папке js? Ума не могу приложить :\
+120
http://www.businessinsider.com/the-russian-internet-thinks-putin-is-dead-2015-3
политота