- 1
- 2
- 3
<?if($_POST["is_ajax_post"] != "Y"){?>
<input type="hidden" name="is_ajax_post" id="is_ajax_post" value="Y">
<? } ?>
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+153
<?if($_POST["is_ajax_post"] != "Y"){?>
<input type="hidden" name="is_ajax_post" id="is_ajax_post" value="Y">
<? } ?>
Форма оформления заказа в компоненте sale.order.ajax. Bitrix. Логика.
+153
// Когда-то давно:
// Функция генерирует CSV из массива
private function arrayToCSV($ar) {
$outstream = fopen("php://temp", 'r+');
fputcsv($outstream, $ar, ';', '"');
rewind($outstream);
$csv = fgets($outstream);
fclose($outstream);
return $csv . self::EOL;
}
// Несколько позже:
// Функция генерирует CSV из массива
private function arrayToCSV($ar) {
// а вот флаги вам в дыры, автор парсера со стороны 1С клал на RFC,
// поэтому будьте любезны отложить fputcsv и генерить ручками
$csv = '';
$isFirst = true;
str_replace(array(';', "\n", "\r\n"), array(':', '', ''), $ar);
foreach($ar as $field) {
if($isFirst)
$isFirst = false;
else
$csv .= ';';
$csv .= $field;
}
return $csv . self::EOL;
}
// Наши дни:
// Функция генерирует CSV из массива
private function arrayToCSV($ar) {
// упоротый, штоле? или с автором парсера в 1С переопылился?
return implode(';', str_replace(array(';', "\n", "\r\n"), array(':', '', ''), $ar)) . self::EOL;
}
наблюдаю в версионнике этапы становления говнокода
+153
Блядь, я никак не могу понять - зачем нужны дебильные фреймворки, MVC и прочее?
В чём охуенность освоения MVC, каких-то "интерфейсов" и "моделей", суть которых мне непонятна,
создания нескольких папок, файлов и конфигурации ради одной, довольно простой, функции, когда
её можно спрограммировать десятью-двадцатью строками чистого PHP-кода?
Также я не могу постичь смысл использования анальных шаблонизаторов ("Smarty", "Twig",
и прочая ебатня)...
+153
$db = new DB_Sql();
$db->connect();
$sql = "SELECT distinct(absnum) FROM articles";
$db->query($sql);
while ($db->next_record()){
$is_img_sql[] = $db->f('absnum');
}
$Open = opendir($_SERVER['DOCUMENT_ROOT'].'/img/forall/a/');
while(false !== ($gdir = readdir($Open))){
if($gdir != "." && $gdir != ".."){
$dir[] = $gdir;
}
}
closedir($Open);
foreach ($dir as $fdir){
if(is_dir($_SERVER['DOCUMENT_ROOT'].'/img/forall/a/'.$fdir.'/')){
$Open2 = opendir($_SERVER['DOCUMENT_ROOT'].'/img/forall/a/'.$fdir.'/');
while(false !== ($gdir2 = readdir($Open2))){
if($gdir2 != "." && $gdir2 != ".."){
$tmp = intval($fdir.ereg_replace("\..*","",$gdir2));
if(!in_array($tmp,$is_img_sql)){
$delfile = $_SERVER['DOCUMENT_ROOT'].'/img/forall/a/'.$fdir.'/'.$gdir2;
if (is_file($delfile)){
if (unlink($delfile)){
echo "Файл <b>".$delfile."</b> удален<br>";
}
}
}
}
}
closedir($Open2);
}
}
$Open = opendir($_SERVER['DOCUMENT_ROOT'].'/img/g/');
while(false !== ($gdirg = readdir($Open))){
if($gdirg != "." && $gdirg != ".."){
$dirg[] = $gdirg;
}
}
closedir($Open);
foreach ($dirg as $fdir){
$Open2 = opendir($_SERVER['DOCUMENT_ROOT'].'/img/g/'.$fdir.'/');
while(false !== ($gdir2 = readdir($Open2))){
if($gdir2 != "." && $gdir2 != ".."){
$tmp = intval($fdir.$gdir2.ereg_replace("\..*","",$gdir3));
if(!in_array($tmp,$is_img_sql)){
$delfile = $_SERVER['DOCUMENT_ROOT'].'/img/g/'.$fdir.'/'.$gdir2;
if (is_dir($delfile)){
$Opendel = opendir($delfile);
while(false !== ($gdirdel = readdir($Opendel))){
if($gdirdel != "." && $gdirdel != ".."){
$tpmdel = $delfile."/".$gdirdel;
if (is_file($tpmdel)){
unlink($tpmdel);
}
}
}
if (rmdir($delfile)){
echo "Директория <b>".$delfile."</b> удалена<br>";
}
}
}
}
}
closedir($Open2);
}
$sql = "SELECT distinct(absnum) FROM price";
$db->query($sql);
while ($db->next_record()){
$is_img_price[] = $db->f('absnum');
}
$Open = opendir($_SERVER['DOCUMENT_ROOT'].'/img/forall/p/');
while(false !== ($gdirp = readdir($Open))){
if($gdirp != "." && $gdirp != ".."){
$dirp[] = $gdirp;
}
}
closedir($Open);
foreach ($dirp as $fdir){
$Open2 = opendir($_SERVER['DOCUMENT_ROOT'].'/img/forall/p/'.$fdir.'/');
while(false !== ($gdir2 = readdir($Open2))){
if($gdir2 != "." && $gdir2 != ".."){
$tmp = intval($fdir.ereg_replace("\..*","",$gdir2));
if(!in_array($tmp,$is_img_price)){
$delfile = $_SERVER['DOCUMENT_ROOT'].'/img/forall/p/'.$fdir.'/'.$gdir2;
if (is_file($delfile)){
if (unlink($delfile)){
echo "Файл <b>".$delfile."</b> удален<br>";
}
}
}
}
}
+153
switch ($order[0]['filials_link_type']) {
case 0:
$this->operator_model->send_partner_mail($order_id);
$status = $this->operator_model->send_partner_msg($order_id);
foreach ($status as $value) {
if (!($value)) {
echo "Один из партнеров не получил заказ";
break;
}
}
break;
case 1:
$this->operator_model->send_partner_mail($order_id);
$status = $this->operator_model->send_partner_msg($order_id);
foreach ($status as $value) {
if (!($value)) {
echo "Один из партнеров не получил заказ";
break;
}
}
break;
case 2:
$this->operator_model->send_partner_mail($order_id);
$status = $this->operator_model->send_partner_msg($order_id);
foreach ($status as $value) {
if (!($value)) {
echo "Один из партнеров не получил заказ";
break;
}
}
break;
case 3:
$this->operator_model->send_partner_mail($order_id);
$status = $this->operator_model->send_partner_msg($order_id);
foreach ($status as $value) {
if (!($value)) {
echo "Один из партнеров не получил заказ";
break;
}
}
break;
...
...
}
wtf?? O.o
+153
$db = new Db();
$db->prepare('SELECT `ID`, `Title`, `Date`, `Active` FROM `videos` WHERE `UserID` = :userId AND `is_temporary` = 0 ORDER BY `Date` DESC')
->bindInt(':userId', $userId)
->execute();
$dbResult = $db->fetchAll();
if (empty($dbResult)) return array();
$orderDir = strtoupper($orderDir);
if (!in_array($orderDir, array('DESC', 'ASC'))) $orderDir = 'DESC';
if (empty($filter) && $orderDir == 'DESC') return ArrayHelper::extract($dbResult, 'ID', ArrayHelper::INT);
$db->prepare('CREATE TEMPORARY TABLE `videos_tmp` (
`id` INT(11),
`title` VARCHAR(256),
`date` DATETIME,
`active` VARCHAR(1)
) ENGINE = MEMORY
CHARACTER SET utf8
COLLATE utf8_general_ci')
->execute();
foreach ($dbResult as $row) {
$db->prepare('INSERT INTO `videos_tmp` (`id`, `title`, `date`, `active`) VALUES (:id, :title, :date, :active)')
->bindInt(':id', $row['ID'])
->bindStr(':title', $row['Title'])
->bindStr(':date', $row['Date'])
->bindStr(':active', $row['Active'])
->execute();
}
$sql = 'SELECT `id` FROM `videos_tmp` WHERE 1';
if (isset($filter['active'])) $sql .= ' AND `Active` = :active';
if (isset($filter['search'])) $sql .= ' AND `title` LIKE :search';
if (isset($filter['fromDate'])) $sql .= ' AND `Date` >= :fromDate';
if (isset($filter['toDate'])) $sql .= ' AND `Date` <= :toDate';
$sql .= ' ORDER BY `Date` ' . $orderDir;
$stmt = $db->prepare($sql);
if (isset($filter['active'])) $stmt->bindStr(':active', $filter['active']);
if (isset($filter['search'])) $stmt->bindStr(':search', '%' . $filter['search'] . '%');
if (isset($filter['fromDate'])) $stmt->bindStr(':fromDate', $filter['fromDate']);
if (isset($filter['toDate'])) $stmt->bindStr(':toDate', $filter['toDate']);
$stmt->execute();
$dbResult = $db->fetchAll();
$db->prepare('DROP TABLE `videos_tmp`')->execute();
Извиняюсь, что так много, но какого слоника надо было делать выборку, создавать временную таблицу и делать выборку снова - загадка.
+153
<?php
namespace Custom\Entity;
class slideshow{
const IBLOCK_ID = SLIDER_ON_INDEX_IBLOCK_ID;
static function getLabel($type){
$label = "";
switch($type){
case NEW_OF_DAY_ENUM_ID_PROPERTY_MAIN_ARTICLES_IBLOCK_ID:
$label = '<img class="sticker news_of_day" src="/static/img/labels/news_of_day_l.png"><img class="sticker news_of_day_r" src="/static/img/labels/news_of_day_r.png">';
break;
case HOT_ENUM_ID_PROPERTY_MAIN_ARTICLES_IBLOCK_ID:
$label = '<img class="sticker hot infoBlock rsABlock rsNoDrag" src="/static/img/labels/hot.png">';
break;
case SLUH_ENUM_ID_PROPERTY_MAIN_ARTICLES_IBLOCK_ID:
$label = '<img class="sticker infoBlock infoBlockLeftBlack rsABlock rsNoDrag" src="/static/img/labels/gossip.png">';
break;
case ITEM_ENUM_ID_PROPERTY_MAIN_ARTICLES_IBLOCK_ID:
$label = '<img class="sticker thing_of_week infoBlock rsABlock rsNoDrag" src="/static/img/labels/thing_of_week.png">';
break;
case POPULAR_ENUM_ID_PROPERTY_MAIN_ARTICLES_IBLOCK_ID:
$label = '<img class="sticker most_popular infoBlock rsABlock rsNoDrag" src="/static/img/labels/most_popular.png">';
break;
case CHOOSE_ENUM_ID_PROPERTY_MAIN_ARTICLES_IBLOCK_ID:
$label = '<img class="sticker editors_choice infoBlock" src="/static/img/labels/editors_choice.png">';
break;
case BEST_ENUM_ID_PROPERTY_MAIN_ARTICLES_IBLOCK_ID:
$label = '<img class="sticker the_best infoBlock rsABlock rsNoDrag" src="/static/img/labels/the_best.png">';
break;
case NEW_ENUM_ID_PROPERTY_MAIN_ARTICLES_IBLOCK_ID:
$label = '<img class="sticker new infoBlock rsABlock rsNoDrag" src="/static/img/labels/new.png">';
break;
}
return $label;
}
}
?>
И еще один замечательный пример ChinaCode от "грамотных разработчиков на битриксе, которые знают неймспейсы". Особенно порадовал css-класс rsNoDrag, хотя по большому счету надо было бы данный класс назвать "NoDrugs" и взять на вооружение данным "пейсателям".
+153
public static function translite($string) {
$rus=array(
"A","B","C","D","e","F","G","H","I",
"J","K","L","M","N","O","P","Q","R",
"S","T","U","V","W","X","Y","Z",
"ё","й","ю","ь","ч","щ","ц","у","к",
"е","н","г","ш","з","х","ъ","ф","ы","в",
"а","п","р","о","л","д","ж","э","я","с",
"м","и","т","б","Ё","Й","Ю","Ч","Ь",
"Щ","Ц","У","К","Е","Н","Г","Ш","З",
"Х","Ъ","Ф","Ы","В","А","П","Р","О",
"Л","Д","Ж","Э","Я","С","М","И","Т","Б",
"-"," ","–","?",'"',",",".","«","»","'","!",
"/","\\",":",";","<",">","(",")","[","]",
"{","}","@","#","№","$","%","^","&","*",
"~");
$eng = array(
"a","b","c","d","e","f","g","h","i",
"j","k","l","m","n","o","p","q","r",
"s","t","u","v","w","x","y","z",
"yo","iy","yu","","ch","sh","c","u","k",
"e","n","g","sh","z","h","","f","y","v",
"a","p","r","o","l","d","j","е","ya","s",
"m","i","t","b","yo","iy","yu","ch","",
"sh","c","u","k","e","n","g","sh","z",
"h","","f","y","v","a","p","r","o",
"l","d","j","e","ya","s","m","i","t","b",
"_","_","_","","","","","","","","",
"","","","","","","","","","",
"","","","","","","","","","",
"");
$string = str_replace($rus, $eng, $string);
if(!empty($string)) {
return $string;
}
else return("");
}
Как соответсвует название функции той неведомой херне, которую она делает я так и не понял.
Столько травы у меня нет.
+153
/*где-то в начале: error_reporting(0);*/
class PhocaGalleryFile{
function getCSSFile($id = 0, $fullPath = 0) {
if ((int)$id > 0) {
$db = &Factory::getDBO();
$query = 'SELECT a.filename as filename, a.type as type'
.' FROM #__styles AS a'
.' WHERE a.id = '.(int) $id;
$db->setQuery($query, 0, 1);
$filename = $db->loadObject();
if (isset($filename->filename) && $filename->filename != '') {
if ($fullPath == 1 && isset($filename->type)) {
return self::getCSSPath($filename->type). $filename->filename;
} else {
return $filename->filename;
}
}
}
return false;
}
. . .
}
Поубивал пустые строки (по 2 штуки между каждой строкой кода) и комменты вида:
/* ===============
== This function is geting a CSSFile fron database .....
===============
*/
Гы! Код для заказчика должен выглядеть наукообразно и непонятно.
И обязательно выдавать Notices и Warnings.
+153
<?php
sfConfig::set('show_counters', true);
/**
* Lite
*
* @category Symfony
* @package Plugins
* @subpackage liteSearchsite
* @author
* @since 12.11.2008
* @version $Id: actions.class.php 28664 2011-03-15 13:14:49Z ringtail $
*/
/**
* class liteSearchsiteActions. Функции для работы с поиском
*
* @category Symfony
* @package Plugins
* @subpackage liteSearchsite
* @author Tretyakov Ilya <[email protected]>
* @version $Id: actions.class.php 28664 2011-03-15 13:14:49Z ringtail $
*/
class liteSearchsiteActions extends sfActions
{
protected $searchsite;
protected $search_server = 'http://217.148.52.134:17000/';
/**
* конструктор
*
* @see sfComponent
*/
public function __construct($context, $moduleName, $actionName)
{
$this->searchsite = new liteSearchsite();
parent::__construct($context, $moduleName, $actionName);
}
/**
* Поиск. главная
*
* @param unknown_type $request
*/
public function executeIndex($request)
{
if ($request) {
$page = $request->getParameter('id');
$this->text = htmlspecialchars($request->getParameter('search_text'));
$reqid = $request->getParameter('reqid');
$page = $request->getParameter('p');
$numdoc = $request->getParameter('numdoc');
}
if (!$page) $page = 0;
if (!$this->searchsite->checkServer($this->search_server)) { throw new sfException('Ахтунг!'); }
if (!1) {
$this->search_work = 0;
} else
if ($this->searchsite->uploadXml($this->search_server, $this->text, $reqid, $page, $numdoc)) {
$this->pages_found = $this->searchsite->getCountItem();
$this->start_page = $this->searchsite->getStartPage();
$this->pages_found_word = $this->searchsite->getWordLinks();
$this->reqid = $this->searchsite->getRegId();
$this->pages = $this->searchsite->getPages();
$this->count_results = $this->searchsite->getDifPages();
if ($this->pages) {
$this->nextpagelink = $this->searchsite->getLinkNextPage();
$this->prepagelink = $this->searchsite->getLinkPrePage();
}
$this->search_work = 1;
if (!$this->pages_found) {
$this->no_result = 1;
$this->pages_found = 0;
} else {
$this->no_result = 0;
$this->list = $this->searchsite->getList($page);
//пересчитаем
//$this->pages_found = $this->searchsite->getCountItem();
//$this->searchsite->setCountPages();
//$this->pages_found_word = $this->searchsite->getWordLinks();
//$this->pages = $this->searchsite->getPages();
//$this->count_results = $this->searchsite->getDifPages();
if ($this->pages) {
$this->nextpagelink = $this->searchsite->getLinkNextPage();
$this->prepagelink = $this->searchsite->getLinkPrePage();
}
}
} else {
$this->search_work = 0;
}
}