- 1
- 2
$username=strtolower($this->username);
$user=User::model()->find('LOWER(username)=?',array($username));
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+154
$username=strtolower($this->username);
$user=User::model()->find('LOWER(username)=?',array($username));
чтоб наверняка
http://yiiframework.ru/doc/blog/ru/prototype.auth
+147
<?php
/*
Виджет для формы логина
*/
class UserLogin extends CWidget
{
public function run()
{
$model = new Login;
if(!Yii::app()->user->isGuest)
{
$this->render('loginOut', array('model'=>$model));
} else {
$this->render('loginForm', array('model'=>$model));
}
}
}
/**
* модель логина
*/
class Login extends CFormModel
{
public $login;
public $pass;
public $rememberMe;
private $_identity;
public function rules()
{
return array(
// username and password are required
array('login, pass', 'required', 'message'=>'поле {attribute} не может быть пустым'),
// rememberMe needs to be a boolean
array('rememberMe', 'boolean'),
// password needs to be authenticated
array('pass', 'authenticate'),
);
}
/**
* Declares attribute labels.
*/
public function attributeLabels()
{
return array(
'login'=>'Логин',
'pass'=>'Пароль',
'rememberMe'=>'Запомнить',
);
}
/**
* Authenticates the password.
* This is the 'authenticate' validator as declared in rules().
*/
public function authenticate($pass,$params)
{
$this->_identity=new UserIdentity($this->login,$this->pass);
if(!$this->_identity->authenticate())
$this->addError($pass, empty($params['message'])?'неправильный лоин или пароль':$params['message']);
}
/**
* Logs in the user using the given username and password in the model.
* @return boolean whether login is successful
*/
public function login()
{
if($this->_identity===null)
{
$this->_identity=new UserIdentity($this->login,$this->pass);
$this->_identity->authenticate();
}
if($this->_identity->errorCode===UserIdentity::ERROR_NONE)
{
$duration=$this->rememberMe ? 3600*24*30 : 0; // 30 days
Yii::app()->user->login($this->_identity,$duration);
return true;
} else {
return false;
}
}
}
+104
procedure drawGird( var image1: TImage; needAxisLines: Boolean = True );
var
xP, yP: Integer;
xC, yC: Double;
h, w, tx, ty: Integer;
Text: String;
begin
image1.Canvas.FillRect( image1.ClientRect );
accuracy := 1 / cellSize;
image1.Canvas.Brush.Style := bsClear;
xC := p2cX( 0 );
while forC( xC, p2cX( image1.Width ), accuracy ) do
if floor( xC * cellSize ) mod cellSize = 0 then
begin
xP := c2pX( xC );
image1.Canvas.Pen.Color := clSilver;
image1.Canvas.MoveTo( xP, 0 );
image1.Canvas.LineTo( xP, image1.Height );
if ( needaxislines ) and ( abs( xC ) > 0.5 ) and
( xP > 30 ) and ( xP < image1.Width - 30 ) then
begin
image1.Canvas.Pen.Color := clBlack;
image1.Canvas.MoveTo( xP, c2pY( -0.5 ) );
image1.Canvas.LineTo( xP, c2pY( 0.5 ) );
end;
end;
yC := p2cY( 0 );
while forC( yC, p2cY( image1.Height ), accuracy ) do
if floor( yC * cellSize ) mod cellSize = 0 then
begin
yP := c2pY( yC );
image1.Canvas.Pen.Color := clSilver;
image1.Canvas.MoveTo( 0, yP );
image1.Canvas.LineTo( image1.Width, yP );
if ( needaxislines ) and ( abs( yC ) > 0.5 ) and
( yP > 30 ) and ( yP < image1.Height - 30 ) then
begin
image1.Canvas.Pen.Color := clBlack;
image1.Canvas.MoveTo( c2pX( -0.5 ), yP );
image1.Canvas.LineTo( c2pX( 0.5 ), yP );
end;
end;
xC := p2cX( 0 );
while forC( xC, p2cX( image1.Width ), accuracy ) do
if floor( xC * cellSize ) mod cellSize = 0 then
begin
xP := c2pX( xC );
if ( needaxislines ) and ( abs( xC ) > 1.5 ) and
( xP > 30 ) and ( xP < image1.Width - 30 ) then
begin
image1.Canvas.Pen.Color := clBlack;
Text := IntToStr( floor( xC ) );
h := image1.Canvas.TextHeight( Text ) div 2;
w := image1.Canvas.TextWidth( Text ) div 2;
image1.Canvas.TextOut( xP - w, c2pY( -0.5 ) + ( h + 3 ) *
( ( floor( abs( xC ) ) mod ( ( ( w * 2 + 8 ) div cellSize ) +
1 ) ) ), Text );
end;
end;
yC := p2cY( 0 );
while forC( yC, p2cY( image1.Height ), accuracy ) do
if floor( yC * cellSize ) mod cellSize = 0 then
begin
yP := c2pY( yC );
if ( needaxislines ) and ( abs( yC ) > 1.5 ) and
( yP > 30 ) and ( yP < image1.Height - 30 ) then
begin
image1.Canvas.Pen.Color := clBlack;
Text := IntToStr( floor( yC ) );
h := image1.Canvas.TextHeight( Text ) div 2;
w := image1.Canvas.TextWidth( Text ) div 2;
image1.Canvas.TextOut( c2pX( -0.5 ) - w * 2 - 2, yP - h, Text );
end;
end;
image1.Canvas.Brush.Style := bsSolid;
end;
Сотня строк кода, для того, чтобы нарисовать сетку.
+147
procedure TForm1.GoBtnClick(Sender: TObject);
BEGIN
If GoBtn.Enabled = false then Exit;
GoBtn.Enabled := false;
// Some code
END;
Вот что бывает, когда не продумаешь весь проект до конца.
+160
path = path.path if typeof path "object"
На CoffeeScript написал.
−96
function onUpdate(this)
local a;
a = math.floor( math.random() * 1000);
if(a==68)then
playParticleFx(this,"/particles/spider/spider_lift.psysl",10);
--logWarning("spirder1");
end
if(a==35)then
playParticleFx(this,"/particles/spider/spider_lift_1.psysl",10);
--logWarning("spirder2");
end
if(a==73)then
playParticleFx(this,"/particles/spider/spider_lift_2.psysl",10);
--logWarning("spirder3");
end
end;
Выдержка из Lua-скрипта.
Выпускаем побегать декоративного паучка по случайными интервалам времени.
+153
<!-- позиционирование элементов меню -->
<script language="JavaScript">
var pos = document.getElementById('f_g_b').offsetLeft;
var obj = getElementsByClass('s_g_b',null,'table');
for(i=0;i<obj.length;i++){
obj[i].style.left = pos+"px";
}
var ua = navigator.userAgent;
if ((ua.indexOf('Gecko') != -1)&&(ua.indexOf('Chrome') == -1))
{
obj = getElementsByClass('s_g_t',null,'table');
for(i=0;i<obj.length;i++){
obj[i].style.left = pos+"px";
}
}
</script>
Предыдущий пост цвяточек по сравнению, с использованияем JS вместо css хаков. ППЦ я такого еще не видел.
+162
/*Проверка авторизации*/
if ($action == 'login') {
if (($entlogin && $entpass) <> '') {
$per = "SELECT * FROM ".$sql_dop."users";
if(!mysql_query($per)) {
$page = 'error';
$id = '2,1,1';
}
$result = mysql_query($per);
$qwe = 0;
while ($row = mysql_fetch_row($result)) {
if ($entlogin == $row[1] && md5($entpass) == $row[2]) {
$qwe = 1;
$date = date("d m Y H:i:s");
$mmsec = microtime(msec);
$kod = md5($date.$row[0].$row[1].$row[2].$mmsec);
$does_into_sessions = "INSERT INTO ".$sql_dop."sessions(user,kod) VALUES ('$row[0]','$kod')";
if(!mysql_query($does_into_sessions)) {
error(3,1,1);
}
setcookie('session_code', $kod);
$ubr = 1;
if ($row[10] == 2) {
$urb = 2;
}
if ($row[10] == 3) {
$urb = 2;
}
setcookie('userbar', $urb);
$session_code = $kod;
$page = '';
}
}
} else {
$page = 'error';
$id = '5,0,0';
}
if ($qwe == 0) {
echo "<strong>Ошибка авторизации...</strong>";
echo "<meta http-equiv='refresh' content='1; url=index.php'>";
exit();
}
}
Авторизация от старого программиста
+147
function back_size()
{
var w = document.body.clientWidth;
var h = document.body.clientHeight;
var iw = 1680;
var ih = 1050;
var rw;
var rh;
var c;
c = w/iw;
rw = iw*c;
rh = ih*c;
if(rh<h)
{
c = h/ih;
rw = iw*c;
rh = ih*c;
}
var margleft = (w-rw)/2;
var margtop = (h-rh)/2;
var thisbody = $(body);
thisbody.css("background-size", rw+" "+rh);
thisbody.css("background-position-x", margleft);
thisbody.css("background-position-y", margtop);
}
Моя версия маштобируемого бека..
+172
<script language="JavaScript">
document.write("<div class=\"rolover\">");
document.write("<div id=\"photos\" class=\"galleryview\">");
document.write("<div class=\"panel\">");
document.write("<img class=\"gwu_image\" src=\"root/img/01.jpg\" /> ");
document.write("<div class=\"panel-overlay-block\">");
document.write("</div>");
document.write("<div class=\"panel-overlay\">");
document.write("<h2>Euro2012 in Donetsk...</h2>");
document.write("<p>Donbass arena welcome guests...</a>. More <a href=\"index.php?section_id=478\" target=\"_blank\">here</a>.</p>");
document.write("</div>");
document.write("</div>");
document.write("<div class=\"panel\">");
document.write("<img class=\"gwu_image\" src=\"root/img/02.jpg\" /> ");
....
document.write("<li><img src=\"root/img/frame2-06.jpg\" alt=\"Slide\" title=\"Slide\" /></li>");
document.write("<li><img src=\"root/img/frame2-05.jpg\" alt=\"Slide\" title=\"Slide\" /></li>");
document.write("<li><img src=\"root/img/frame2-07.jpg\" alt=\"Slide\" title=\"Slide\" /></li>");
document.write("<li><img src=\"root/img/frame2-08.jpg\" alt=\"Slide\" title=\"Slide\" /></li>");
document.write("</ul>");
document.write("</div>");
document.write("</div>");
и еще около 300 строк.
Мега реализация галереи от неизвестного творца