* @TODO: Change to if (!(class_exists($this->className) && $obj instanceof $this->className)) when going fully PHP5
*/
if (!is_a($imgsetimg, 'xoopsimagesetimg')) {
return false;
}
$sql = sprintf("DELETE FROM %s WHERE imgsetimg_id = %u", $this->db->prefix('imgsetimg'), $imgsetimg->getVar('imgsetimg_id'));
if (!$result = $this->db->query($sql)) {
return false;
}
return true;
}
function getObjects($criteria = null, $id_as_key = false)
{
$ret = array();
$limit = $start = 0;
$sql = 'SELECT DISTINCT i.* FROM '.$this->db->prefix('imgsetimg'). ' i LEFT JOIN '.$this->db->prefix('imgset_tplset_link'). ' l ON l.imgset_id=i.imgsetimg_imgset LEFT JOIN '.$this->db->prefix('imgset').' s ON s.imgset_id=l.imgset_id';
if (isset($criteria) && is_subclass_of($criteria, 'criteriaelement')) {
$sql .= ' '.$criteria->renderWhere();
$sql .= ' ORDER BY imgsetimg_id '.$criteria->getOrder();
$limit = $criteria->getLimit();
$start = $criteria->getStart();
}
$result = $this->db->query($sql, $limit, $start);
if (!$result) {
return $ret;
}
while ($myrow = $this->db->fetchArray($result)) {
$imgsetimg = new XoopsImagesetimg();
$imgsetimg->assignVars($myrow);
if (!$id_as_key) {
$ret[] =& $imgsetimg;
} else {
$ret[$myrow['imgsetimg_id']] =& $imgsetimg;
}
unset($imgsetimg);
}
return $ret;
}
function getCount($criteria = null)
{
$sql = 'SELECT COUNT(i.imgsetimg_id) FROM '.$this->db->prefix('imgsetimg'). ' i LEFT JOIN '.$this->db->prefix('imgset_tplset_link'). ' l ON l.imgset_id=i.imgsetimg_imgset';
if (isset($criteria) && is_subclass_of($criteria, 'criteriaelement')) {
$sql .= ' '.$criteria->renderWhere().' GROUP BY i.imgsetimg_id';
}
if (!$result =& $this->db->query($sql)) {
return 0;
}
list($count) = $this->db->fetchRow($result);
return $count;
}
/**
* Function-Documentation
* @param type $imgset_id documentation
* @param type $id_as_key = false documentation
* @return type documentation
* @author Kazumi Ono <onokazu@xoops.org>
**/
function getByImageset($imgset_id, $id_as_key = false)