Exemplo n.º 1
0
 public function lastWeekImageVisited($imageId)
 {
     $NUM_OF_DAYS = 7;
     $result = [];
     $query = \db\DAO::getInstance()->prepare("SELECT COUNT(*) AS timeVisited FROM Visits WHERE image_id = {$imageId} AND time = CURDATE() - ?");
     for ($i = 0; $i < $NUM_OF_DAYS; $i++) {
         $query->execute([$i]);
         $result[date("Y-m-d", strtotime("-{$i} days"))] = $query->fetch()->timeVisited;
     }
     return $result = array_reverse($result);
 }
Exemplo n.º 2
0
 public function loadAll($where = null)
 {
     $sql = "SELECT * FROM " . $this->getTable() . " " . $where;
     $statement = DAO::getInstance()->prepare($sql);
     $statement->execute();
     if (1 > $statement->rowCount()) {
         return null;
     }
     $resources = $statement->fetchAll();
     $collection = array();
     $className = get_class($this);
     //$attributes = $this->getColumns();
     foreach ($resources as $singleRow) {
         $model = new $className();
         $model->pk = $singleRow->{$this->getPrimaryKeyColumn()};
         $model->data = $singleRow;
         /*foreach ($attributes as $prop) {
               $model->$prop = $singleRow->{$prop};
           }*/
         $collection[] = $model;
     }
     return $collection;
 }
Exemplo n.º 3
0
 * Date: 10/03/16
 * Time: 10:26
 */
require_once 'Autoloader.php';
session_start();
if (isset($_SESSION['user_id'])) {
    header('Location: index.php');
}
if (!empty($_POST['submitted'])) {
    $formValidation = new \validation_library\FormValidation();
    $rules = array();
    $rules['username'] = '******';
    $rules['password'] = '******';
    $formValidation->set_rules($rules);
    if ($formValidation->validate()) {
        $query = \db\DAO::getInstance()->prepare("SELECT id FROM Users WHERE username = ? AND password = ?");
        try {
            $query->execute([htmlentities($_POST["username"]), sha1($_POST["password"])]);
            //ako je upit djelovao na neki redak
            if ($query->rowCount() > 0) {
                $row = $query->fetch();
                $_SESSION["user_id"] = $row->id;
                header('Location: index.php');
            } else {
                echo "Wrong email or password.";
            }
        } catch (PDOException $e) {
            $errorMessage = "Please, try again or contact admin.";
        }
    } else {
        $formValidation->display_validation_errors();
Exemplo n.º 4
0
 * Time: 14:38
 */
require_once 'Autoloader.php';
session_start();
if (!isset($_SESSION['user_id'])) {
    header('Location: index.php');
    exit;
}
if (!empty($_POST['submitted'])) {
    $rules = array();
    $rules['name'] = 'required|length[100]';
    $rules['description'] = 'length[500]';
    $formValidation = new \validation_library\FormValidation();
    $formValidation->set_rules($rules);
    if ($formValidation->validate()) {
        $query = \db\DAO::getInstance()->prepare("INSERT INTO Galleries(title, user_id,\n        description) VALUES (?,?,?)");
        $query->execute([htmlentities($_POST['name']), $_SESSION['user_id'], htmlentities($_POST['description'])]);
        header('Location: upload.php');
        exit;
    } else {
        $formValidation->display_validation_errors();
    }
}
//page rendering
$page = new html_library\HTMLHtmlElement();
$page->add_child(new html_library\HTMLHeadElement());
$body = new html_library\HTMLBodyElement();
$page->add_child($body);
$form = new \html_library\HTMLFormElement();
$body->add_child($form);
$form->add_attribute(new \html_library\HTMLAttribute('id', 'new_gallery'));
Exemplo n.º 5
0
 $rules['img_tag'] = 'length[500]';
 $formValidation->set_rules($rules);
 if ($formValidation->validate() && validatePicture($_FILES['file']['tmp_name'])) {
     \models\ImgTag::validateTags($_POST['img_tag']);
     $tags = \models\ImgTag::validateTags($_POST['img_tag']);
     if ($tags === false) {
         echo "Every tag must be <= 50 characters";
         header("Refresh: 1");
         exit;
     }
     //add image
     $query = \db\DAO::getInstance()->prepare("INSERT INTO Images(title, user_id,\n        gallery_id, description) VALUES (?,?,?,?)");
     $query->execute([trim(htmlentities($_POST['name'])), $_SESSION['user_id'], trim(htmlentities($_POST['galleryOption'])), trim(htmlentities($_POST['description']))]);
     $id = \db\DAO::getInstance()->lastInsertId();
     //add tags
     $query = \db\DAO::getInstance()->prepare("INSERT INTO Tags(image_id, tag) VALUES ({$id},?)");
     if (!empty($tags)) {
         foreach ($tags as $tag) {
             if (!empty($tag)) {
                 $query->execute([$tag]);
             }
         }
     }
     if (\db\DAO::getConnection()->saveImage($id, $_FILES['file']['tmp_name'])) {
         header('Location: mypictures.php');
         exit;
     } else {
         echo 'Nisam uspio spremiti na disk';
     }
 } else {
     if (!empty($formValidation->validation_errors())) {
Exemplo n.º 6
0
 * Time: 19:08
 */
require_once 'Autoloader.php';
session_start();
// id of photo not set
if (!isset($_GET['id'])) {
    header('Location: index.php');
}
if (!empty($_POST['submitted'])) {
    $rules = array();
    $rules['comment_data'] = 'required|length[500]';
    $validation = new \validation_library\FormValidation();
    $validation->set_rules($rules);
    $allGood = $validation->validate();
    if ($allGood) {
        $query = \db\DAO::getInstance()->prepare("INSERT INTO Comments(image_id, user_id,\n        username, comment_data) VALUES (?,?,?,?)");
        $user = new \models\Korisnik();
        $user->load($_SESSION['user_id']);
        if ($query->execute([$_GET['id'], $_SESSION['user_id'], $user->__get('username'), htmlentities($_POST['comment_data'])])) {
            $page = 'aboutPicture.php?id=' . $_GET['id'];
            header('Location: ' . $page);
            exit;
        } else {
            echo "Username must be unique";
        }
        //  exit;
    } else {
        echo "Comment cannot be empty.";
    }
}
\db\DAO::getConnection()->addVisit($_GET['id']);
Exemplo n.º 7
0
if (!empty($_POST['submitted'])) {
    $rules = array();
    $rules['name'] = 'length[40]';
    $rules['surname'] = 'length[40]';
    $rules['username'] = '******';
    $rules['email'] = 'required|email|length[50]';
    $rules['password'] = '******';
    $rules['confirm_password'] = '******';
    $validation = new \validation_library\FormValidation();
    $validation->set_rules($rules);
    $allGood = $validation->validate();
    if (strcmp($_POST['password'], $_POST['confirm_password']) != 0) {
        $allGood = false;
    }
    if ($allGood) {
        $query = \db\DAO::getInstance()->prepare("INSERT INTO Users(username, name,\n        surname, email, password) VALUES (?,?,?,?,?)");
        if ($query->execute([htmlentities($_POST['username']), htmlentities($_POST['name']), htmlentities($_POST['surname']), htmlentities($_POST['email']), sha1($_POST['password'])])) {
            header('Location: login.php');
            echo "Sve ok";
        } else {
            echo "Username must be unique";
        }
        //  exit;
    } else {
        if (empty($validation->validation_errors())) {
            echo "Password doesn't match";
        } else {
            $validation->display_validation_errors();
        }
    }
}