/** * add photo * * @param int $pos * @param Object $l_image [large image] * @param Object $s_image [small image] */ function add ($pos, $l_image, $s_image) { $quality = 100; // įterpiamos nuotraukos kokybė $rand = rand(10000000, 99999999); // randome modifier [HACK IE] if (is_null($l_image) || is_null($s_image)) return false; /** tikriname ar toje pozicijoje yra kita nuotrauka, jeigu egzistuoja sukeičiame foto, kitu atveju įdedame naujai */ $photo = $this->mysql->getRow("SELECT `photo_id` FROM `$this->table` WHERE `user_id`='$this->user_id' AND `pos`='$pos'"); // jeigu radome if (!is_null($photo)) { // isaugome nuotraukas imagejpeg($l_image, $this->path.sprintf(PHOTO_LARGE, $this->user_id, $photo['photo_id']), $quality); imagejpeg($s_image, $this->path.sprintf(PHOTO_SMALL, $this->user_id, $photo['photo_id']), $quality); // atnaujiname modify ir patvirtinimą, nes nauja nuotrauka nepatvirtinta [nebent auto patvirtinimas nustatytas] $this->mysql->query("UPDATE `$this->table` SET `modify`='$rand', `confirmed`='$this->confirmed', `add_time`=NOW() WHERE `user_id`='$this->user_id' AND `pos`='$pos'"); } else { // kitu atveju sukuriame naują įraą // jeigu yra auto confirmed, tai tikriname ar jau yra nustatyta pagrindinė nuotrauka if ($this->confirmed == 1) { // tikriname ar yra nustatyta pagrindinė nuotrauka $result = $this->mysql->getRow("SELECT COUNT(*) AS `count` FROM `$this->table` WHERE `user_id`='$this->user_id' AND `main`='1'"); $set_main = ($result['count'] == 0) ? 1 : 0; } else { $set_main = 0; } // įterpiame duomenis $this->mysql->query("INSERT INTO `$this->table` SET `user_id`='$this->user_id', `main`='$set_main', `pos`='$pos', `comment`='', `add_time`=NOW(),`confirmed`='$this->confirmed', `modify`='$rand'"); // isaugome nuotraukas imagejpeg($l_image, $this->path.sprintf(PHOTO_LARGE, $this->user_id, $this->mysql->insertId()), $quality); imagejpeg($s_image, $this->path.sprintf(PHOTO_SMALL, $this->user_id, $this->mysql->insertId()), $quality); } // ivalome atmintį imagedestroy($l_image); imagedestroy($s_image); return true; } /** * activate photo * * @param int $pos * @return boolean */ function activate ($pos) { // tikriname ar tokia nuotrauka egzistuoja if ($this->exists($pos)) { // aktyvuojame nuotrauką $this->mysql->query("UPDATE `{$this->table}` SET `confirmed`='1' WHERE `user_id`='{$this->user_id}' AND `pos`='$pos'"); // tikriname gal tai pirmoji aktyvuota nuotrauka $count = $this->mysql->countRows("SELECT `photo_id` FROM `{$this->table}` WHERE `user_id`='{$this->user_id}' AND `main`='1' AND `confirmed`='1'"); // jeigu neradome jokios nuotraukos kuri būtų patvirtinta ir pagrindinė if ($count == 0) { // padarome pagrindine nuotrauka $this->mysql->query("UPDATE `{$this->table}` SET `main`='1' WHERE `user_id`='{$this->user_id}' AND `pos`='$pos'"); } return true; } else return false; }