- 1
- 2
- 3
typedef class foo_c{
...
} foo_t;
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+4
typedef class foo_c{
...
} foo_t;
Почему мне хочется использовать такой синтаксис?
0
public function getDialogs($offset = 0) {
$offset = (int) $offset;
$to_id = $_SESSION['user_id'];
if(!$to_id) {
return false;
}
$get_dialogs = $this->database->prepare("SELECT * FROM `messages` WHERE `to_id` = :to_id GROUP BY `from_id` LIMIT :offset, :max_posts");
$get_dialogs->bindParam(':to_id', $to_id, PDO::PARAM_INT);
$get_dialogs->bindParam(':offset', $offset, PDO::PARAM_INT);
$get_dialogs->bindParam(':max_posts', $this->max_dialogs, PDO::PARAM_INT);
$get_dialogs->execute();
$post_owners = array();
while ($row = $get_dialogs->fetch(PDO::FETCH_ASSOC)) {
$owner_id = $row['from_id'];
if($post_owners[$owner_id]) {
$row['owner_name'] = $post_owners[$owner_id];
} else {
$owner_name = $this->user->getInitials($owner_id);
$post_owners[$owner_id] = $owner_name;
$row['owner_name'] = $owner_name;
}
$row['date'] = $this->common->parseTimestamp($row['date_created']);
$arr[] = $row;
}
return $arr;
}
получение сообщений
+1
<?php
class Controller_Messages extends Controller {
function __construct() {
$this->log = new Log;
if(!defined('SECURITY_CONST')) {
$this->log->log('[controller_messages.php:'.__LINE__.'] SECURITY_CONST is undefined');
exit;
}
$this->user = new User;
$this->lang = new Lang;
$this->view = new View;
$this->model = new Model_Messages;
if(!$this->user->isAuth()) {
header('Location: /not_auth');
}
$this->user_lang = $this->user->getLang();
$this->lang->setLang($this->user_lang);
}
Открыл исходник и тут такое....
+2
<?if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();
foreach ($arResult["ITEMS"] as $key => $arItem)
{
$res = CIBlockSection::GetList(array(), array("ID" => $arItem['IBLOCK_SECTION_ID']), false, array("SECTION_PAGE_URL", "NAME"));
if($ar_res = $res->GetNext())
$arResult["ITEMS"][$key]["SECTION_URL"] = '<a href="'.$ar_res["SECTION_PAGE_URL"] .'">'.$ar_res["NAME"].'</a>';
$arResult["ITEMS"][$key]["SECTION_URI"] = $ar_res['SECTION_PAGE_URL'];
$arResult["ITEMS"][$key]["SECTION_NAME"] = $ar_res['NAME'];
if(is_array($arItem["PREVIEW_PICTURE"]))
{
$arFileTmp = CFile::ResizeImageGet(
$arItem["PREVIEW_PICTURE"],
array("width" => $arParams["DISPLAY_IMG_WIDTH"], "height" => $arParams["DISPLAY_IMG_HEIGHT"]),
BX_RESIZE_IMAGE_EXACT,
true
);
$arResult['ITEMS'][$key]['PREVIEW_PICTURE']['SRC'] = $arFileTmp['src'];
}
$arResult['ITEMS'][$key]["NAME"] = TruncateText($arResult['ITEMS'][$key]["NAME"],45);
$arResult['ITEMS'][$key]["PREVIEW_TEXT"] = TruncateText($arResult['ITEMS'][$key]["PREVIEW_TEXT"],80);
}
?>
Я программист 1C-bitrix и с каждой новой итерацией я делаю новый запрос к инфоблоку.
+2
if (_viewModel.ShowColumnChooser && _viewModel.UseDefaultColumnChooser)
//...
else {
if (!_viewModel.ShowColumnChooser)
return;
//...
}
Сэмпл платного фреймворка Syncfusion. Да, на этом коде они объясняют, как использовать их классы. А в поддержке отвечают сплошные косноязычные Раджеши Кутрапалли.
+4
phases.Where(phase => phase == null || phase.Trim().Length == 0)
Нашёл в своём проекте, эта строка прошла code review. phase - это строка.
+5
type asynchronizer struct {
payload interface{}
}
func (as *asynchronizer) MarshalJSON() ([]byte, error) {
insert := []byte("\"async\":true,")
if as.payload == nil {
as.payload = struct{}{}
}
raw, err := json.Marshal(as.payload)
if err != nil {
return raw, err
}
if raw[1] == '}' {
insert = insert[:len(insert)-2]
}
return append(append(raw[0:1], insert...), raw[1:]...), nil
}
Чем дальше в лес, тем больше Го напоминает ПХП.
0
WriteBuffer = enc.GetBytes("$ FETCH " + number + " BODY[HEADER]\r\n");
netStream.Write(WriteBuffer, 0, WriteBuffer.Length);
ListMessage = strReader.ReadLine();
//...
while ((ListMessage.IndexOf("$ OK ") == -1) && (ListMessage.IndexOf("$ BAD ") == -1))
{
//Типа там читаем всякие заголовки и прочие бла-бла
if (ListMessage.IndexOf("filename=") > -1)
{
temp = ListMessage.Replace("filename=", "");
temp = temp.Trim();
file_name = temp;
is_file = 1; temp = ""; is_att = 1;
}
//...
ListMessage = strReader.ReadLine();
continue;
}
//...
WriteBuffer = enc.GetBytes("$ FETCH " + number + " BODY[TEXT]\r\n");
netStream.Write(WriteBuffer, 0, WriteBuffer.Length);
ListMessage = strReader.ReadLine();
temp = "";
end_file = 0;
body = "";
if (ListMessage.IndexOf("$ BAD ") == -1) ListMessage = strReader.ReadLine();
if (ListMessage == "")
is_body = 0;
else
is_body = 1;
while ((ListMessage.IndexOf("$ OK ") == -1) && (ListMessage.IndexOf("$ BAD ") == -1))
{
if (is_body == 1)
{
if (ListMessage == "")
is_body = 0;
else
body = body + ListMessage;
}
if ((is_att == 1) && (end_file == 0))
{
if (is_file == 1)
{
if (ListMessage.IndexOf("--") > -1)
end_file = 1;
else
temp = temp + ListMessage;
}
if (ListMessage == "")
{
is_file = 1;
}
}
if (ListMessage.IndexOf("Content-Disposition: attachment;") > -1)
{
is_att = 1;
}
//...
ListMessage = strReader.ReadLine();
continue;
}
if (is_att==0)
{
//А тут ничего интересного, просто декодирование из Base64 и сохранение в файл
}
Следите за булями (точнее, их суррогатами).
ЗЫ: да, я уже выкладывал кусок из того же модуля, и там уже были некоторые куски, которые попали и сюда тоже.
+1
Что за мемчик про вореции?
Желательно со ссылками на лурк.
+4
class Panel
{
// ...
friend class Panel;
// ...
}
Нашёл такое в хедерах VGUI1 -- игрового тулкита от Valve для Gold Source.
Объясните, умные люди, зачем?