Пример #1
0
    public function avatar()
    {
        if ($_FILES['upload']['name']) {
            $dir = '';
            $outdir = '';
            $filename = explode('.', $_FILES['upload']['name']);
            $raz = $filename[count($filename) - 1];
            if (in_array(strtolower($raz), array('jpeg', 'jpg', 'png', 'gif', 'bmp'))) {
                unset($filename[count($filename) - 1]);
                $filename = implode('', $filename);
                $filenameraz = Funcs::Transliterate($filename) . '.' . $raz;
                $dir = $_SERVER['DOCUMENT_ROOT'] . PHOTO_DIR . 'iuser/';
                $dirfile = $dir . $filenameraz;
                $x = 0;
                $i = 1;
                while ($x == 0) {
                    if (file_exists($dirfile)) {
                        $filenameraz = Funcs::Transliterate($filename) . $i . '.' . $raz;
                        $dirfile = $dir . $filenameraz;
                    } else {
                        $x = 1;
                    }
                    $i++;
                }
                Funcs::resizePicCrop($_FILES['upload']['tmp_name'], $dirfile, 80, 80, $raz);
                chmod($dirfile, 0777);
                if (file_exists($_SERVER['DOCUMENT_ROOT'] . $_SESSION['iuser']['avatar'])) {
                    unlink($_SERVER['DOCUMENT_ROOT'] . $_SESSION['iuser']['avatar']);
                }
                $dirfile = substr($dirfile, strpos($dirfile, PHOTO_DIR), strlen($dirfile));
                $sql = '
					UPDATE {{iusers}} SET avatar=\'' . $dirfile . '\'
					WHERE id=' . $_SESSION['iuser']['id'] . '
				';
                DB::exec($sql);
                User::setSession();
            }
        }
    }