X-Git-Url: http://git.ithinksw.org/extjs.git/blobdiff_plain/c930e9176a5a85509c5b0230e2bff5c22a591432..e9397f91ede62d446aed37d23256e8938fc4c335:/examples/image-organizer/php/classes/Images.php?ds=sidebyside diff --git a/examples/image-organizer/php/classes/Images.php b/examples/image-organizer/php/classes/Images.php index 42967e6a..227d5fc6 100644 --- a/examples/image-organizer/php/classes/Images.php +++ b/examples/image-organizer/php/classes/Images.php @@ -1,104 +1,104 @@ -tags; - $album = $data->album; - $qry = 'select i.filename as filename, i.url as url, i.id as id from Images i'; - $where = array(); - if ($tags) { - for ($i = 0;$i < sizeof($tags);$i++) { - $qry .= ' INNER JOIN Images_Tags it'.$i.' ON i.id = it'.$i.'.image_id'; - array_push($where,' it'.$i.'.tag_id = "'.$tags[$i].'"'); - } - } - if ($album) { - $qry .= ' INNER JOIN Albums a ON i.album_id = a.id'; - array_push($where, ' a.id ="'.$album.'"'); - } - if ($where) { - $qry .= ' WHERE'.join(" AND", $where); - } - $res = $db->query($qry); - return $res->fetchAll(); -// return $qry; - } - - function upload($data, $files){ - $name = $files["Filedata"]["name"]; - $db = new SQLiteDatabase("sql/imgorg.db"); - $db->queryExec('INSERT INTO Images (filename, url) VALUES("'.$name.'","images/'.$name.'")'); - $q = $db->query('SELECT * FROM Images WHERE filename = "'.$name.'"'); - move_uploaded_file($files["Filedata"]["tmp_name"],"../images/".$name); - - return array( - 'data' => $files["Filedata"], - 'res' => $q->fetchObject() - //, - //'test' => $phm->getImageQuality() - ); - } - - function addToAlbum($data) { - $images = $data->images; - $album = $data->album; - $db = new SQLiteDatabase("sql/imgorg.db"); - for ($i = 0;$i < sizeof($images);$i++) { -// $db->queryExec('INSERT INTO Albums_Images (image_id, album_id) VALUES ("'.$images[$i].'","'.$album.'")'); - $db->queryExec('UPDATE Images SET album_id = "'.$album.'" WHERE id ="'.$images[$i].'"'); - } - return array('success' => true, 'images' => $images, 'album' => $album); - } - - function tagImage($data) { - $images = $data->images; - $tag = $data->tag; - $db = new SQLiteDatabase("sql/imgorg.db"); - // if it is a known tag the id is sent, otherwise a new string is, so we need to insert - if (!is_numeric($tag)) { - $db->queryExec('INSERT INTO Tags (text) VALUES ("'.$tag.'")'); - $q = $db->query('SELECT id FROM Tags WHERE text = "'.$tag.'"'); - $tag = $q->fetchObject()->id; - } - for ($i = 0;$i < sizeof($images);$i++) { - $db->queryExec('INSERT INTO Images_Tags (image_id, tag_id) VALUES ("'.$images[$i].'","'.$tag.'")'); - } - return array('success' => true, 'images' => $images, 'tag' => $tag); - } - - function rename($data) { - $db = new SQLiteDatabase("sql/imgorg.db"); - $image = $data->image; - $name = $data->name; - $url = $data->url; - $urls = split('/',$url); - array_pop($urls); - $newUrl = (join('/',$urls)).'/'.$name; - - $db->queryExec('UPDATE Images SET url = "'.$newUrl.'", filename = "'.$name.'" WHERE id = "'.$image.'"'); - rename('../'.$url, '../'.$newUrl); - - return array('image' => $image, 'name' => $name, 'url' => $newUrl); - } - - function remove($data) { - $db = new SQLiteDatabase("sql/imgorg.db"); - $images = $data->images; - for ($i = 0;$i < sizeof($images);$i++) { - $res = $db->query('SELECT url FROM Images where id ="'.$images[$i].'"'); - $url = $res->fetchObject()->url; - unlink('../'.$url); - $db->queryExec('DELETE FROM Images WHERE id ="'.$images[$i].'"'); - $db->queryExec('DELETE FROM Images_Tags WHERE image_id ="'.$images[$i].'"'); - } - } - - function getInfo($data) { - $db = new SQLiteDatabase("sql/imgorg.db"); - $image = $data->image; - $q = $db->query('SELECT url FROM Images WHERE id = "'.$image.'"'); - $path = $q->fetchObject()->url; - $ret = exif_read_data('../'.$path); - return $ret; - } -} +tags; + $album = $data->album; + $qry = 'select i.filename as filename, i.url as url, i.id as id from Images i'; + $where = array(); + if ($tags) { + for ($i = 0;$i < sizeof($tags);$i++) { + $qry .= ' INNER JOIN Images_Tags it'.$i.' ON i.id = it'.$i.'.image_id'; + array_push($where,' it'.$i.'.tag_id = "'.$tags[$i].'"'); + } + } + if ($album) { + $qry .= ' INNER JOIN Albums a ON i.album_id = a.id'; + array_push($where, ' a.id ="'.$album.'"'); + } + if ($where) { + $qry .= ' WHERE'.join(" AND", $where); + } + $res = $db->query($qry); + return $res->fetchAll(); +// return $qry; + } + + function upload($data, $files){ + $name = $files["Filedata"]["name"]; + $db = new SQLiteDatabase("sql/imgorg.db"); + $db->queryExec('INSERT INTO Images (filename, url) VALUES("'.$name.'","images/'.$name.'")'); + $q = $db->query('SELECT * FROM Images WHERE filename = "'.$name.'"'); + move_uploaded_file($files["Filedata"]["tmp_name"],"../images/".$name); + + return array( + 'data' => $files["Filedata"], + 'res' => $q->fetchObject() + //, + //'test' => $phm->getImageQuality() + ); + } + + function addToAlbum($data) { + $images = $data->images; + $album = $data->album; + $db = new SQLiteDatabase("sql/imgorg.db"); + for ($i = 0;$i < sizeof($images);$i++) { +// $db->queryExec('INSERT INTO Albums_Images (image_id, album_id) VALUES ("'.$images[$i].'","'.$album.'")'); + $db->queryExec('UPDATE Images SET album_id = "'.$album.'" WHERE id ="'.$images[$i].'"'); + } + return array('success' => true, 'images' => $images, 'album' => $album); + } + + function tagImage($data) { + $images = $data->images; + $tag = $data->tag; + $db = new SQLiteDatabase("sql/imgorg.db"); + // if it is a known tag the id is sent, otherwise a new string is, so we need to insert + if (!is_numeric($tag)) { + $db->queryExec('INSERT INTO Tags (text) VALUES ("'.$tag.'")'); + $q = $db->query('SELECT id FROM Tags WHERE text = "'.$tag.'"'); + $tag = $q->fetchObject()->id; + } + for ($i = 0;$i < sizeof($images);$i++) { + $db->queryExec('INSERT INTO Images_Tags (image_id, tag_id) VALUES ("'.$images[$i].'","'.$tag.'")'); + } + return array('success' => true, 'images' => $images, 'tag' => $tag); + } + + function rename($data) { + $db = new SQLiteDatabase("sql/imgorg.db"); + $image = $data->image; + $name = $data->name; + $url = $data->url; + $urls = split('/',$url); + array_pop($urls); + $newUrl = (join('/',$urls)).'/'.$name; + + $db->queryExec('UPDATE Images SET url = "'.$newUrl.'", filename = "'.$name.'" WHERE id = "'.$image.'"'); + rename('../'.$url, '../'.$newUrl); + + return array('image' => $image, 'name' => $name, 'url' => $newUrl); + } + + function remove($data) { + $db = new SQLiteDatabase("sql/imgorg.db"); + $images = $data->images; + for ($i = 0;$i < sizeof($images);$i++) { + $res = $db->query('SELECT url FROM Images where id ="'.$images[$i].'"'); + $url = $res->fetchObject()->url; + unlink('../'.$url); + $db->queryExec('DELETE FROM Images WHERE id ="'.$images[$i].'"'); + $db->queryExec('DELETE FROM Images_Tags WHERE image_id ="'.$images[$i].'"'); + } + } + + function getInfo($data) { + $db = new SQLiteDatabase("sql/imgorg.db"); + $image = $data->image; + $q = $db->query('SELECT url FROM Images WHERE id = "'.$image.'"'); + $path = $q->fetchObject()->url; + $ret = exif_read_data('../'.$path); + return $ret; + } +}