$children = $album->getChildrenVisible(); $cCount = count($children); for ($i = $begin; $i < $begin + $end; $i++) { if ($i >= $cCount) { continue; } $MG_media[] = array('type' => 0, 'obj' => $children[$i]); $total_media++; } $begin = $begin - $cCount; if ($begin < 0) { $begin = 0; } $end = $end - $total_media; } else { $cCount = $album->getChildcount(); } $sql = MG_buildMediaSql(array('album_id' => $album_id, 'sortorder' => $sortOrder, 'offset' => $begin, 'limit' => $end)); $result = DB_query($sql); $mediaRows = 0; while ($row = DB_fetchArray($result)) { $MG_media[] = array('type' => 1, 'obj' => new Media($row, $album_id)); $total_media++; $mediaRows++; } if ($album->albums_first == 0) { if ($begin + $mediaRows >= $album->media_count) { $startingPoint = $begin - $album->media_count; if ($startingPoint < 0) { $startingPoint = 0; }