show_comments = 1; else $this->show_comments = 0; $photo_id = intval($photo_id); $photo_result = Database::$content->prepare('SELECT id, gallery, sequence, photo_thumbnail, photo_normal, photo_large, width, height, large_height, large_width, title, subtitle, description, description_formatting, template FROM '.Database::$db_settings['photo_table'].' WHERE id=:id LIMIT 1'); $photo_result->bindValue(':id', $photo_id, PDO::PARAM_INT); $photo_result->execute(); $photo_data = $photo_result->fetch(); if(isset($photo_data['id'])) { // get ids of photos of current gallery: $gallery_result = Database::$content->prepare('SELECT id FROM '.Database::$db_settings['photo_table'].' WHERE gallery=:gallery ORDER BY sequence ASC'); $gallery_result->bindValue(':gallery', $photo_data['gallery'], PDO::PARAM_STR); $gallery_result->execute(); while($gallery_data = $gallery_result->fetch()) { $gallery_items[] = $gallery_data['id']; } $total_photos = count($gallery_items); $current_photo_key = array_search($photo_data['id'], $gallery_items); // get id of first, last, next and previous photo: $first_photo = $gallery_items[0]; $last_photo = $gallery_items[$total_photos-1]; if(isset($gallery_items[$current_photo_key+1])) { $next_photo = $gallery_items[$current_photo_key+1]; } else { $next_photo = $first_photo; } if(isset($gallery_items[$current_photo_key-1])) { $previous_photo = $gallery_items[$current_photo_key-1]; } else { $previous_photo = $last_photo; } if($previous_photo==$photo_id) { $previous_photo = 0; $next_photo = 0; } $this->photo_data['id'] = $photo_id; $this->photo_data['gallery'] = $photo_data['gallery']; $this->photo_data['gallery_items'] = $gallery_items; $this->photo_data['previous_photo'] = $previous_photo; $this->photo_data['next_photo'] = $next_photo; $this->photo_data['total_photos'] = $total_photos; $this->photo_data['photo_number'] = $current_photo_key+1; $this->photo_data['photo_size'] = $photo_size; if($photo_data['photo_large']!='') $this->photo_data['photo_large_available'] = 1; if($photo_size==1 && $photo_data['photo_large']!='') $this->photo_data['photo'] = $photo_data['photo_large']; else $this->photo_data['photo'] = $photo_data['photo_normal']; $this->photo_data['photo_large'] = $photo_data['photo_large']; $this->photo_data['thumbnail'] = $photo_data['photo_thumbnail']; $this->photo_data['title'] = $photo_data['title']; $this->photo_data['subtitle'] = $photo_data['subtitle']; if($photo_data['description_formatting']==1) { $this->photo_data['description'] = auto_html($photo_data['description']); } else { $this->photo_data['description'] = $photo_data['description']; } if(substr(strtolower($this->photo_data['photo']), -4) == '.swf') { $this->photo_data['type'] = 'flash'; if($this->photo_data['photo_size']==1) { $this->photo_data['width'] = intval($photo_data['large_width']); $this->photo_data['height'] = intval($photo_data['large_height']); } else { $this->photo_data['width'] = intval($photo_data['width']); $this->photo_data['height'] = intval($photo_data['height']); } } elseif(substr(strtolower($this->photo_data['photo']), -4) == '.flv') { $this->photo_data['type'] = 'flv'; if($this->photo_data['photo_size']==1) { $this->photo_data['width'] = intval($photo_data['large_width']); $this->photo_data['height'] = intval($photo_data['large_height']); } else { $this->photo_data['width'] = intval($photo_data['width']); $this->photo_data['height'] = intval($photo_data['height']); } } else { $this->photo_data['type'] = 'image'; $photo_info = getimagesize(BASE_PATH.MEDIA_DIR.$this -> photo_data['photo']); $this->photo_data['width'] = $photo_info[0]; $this->photo_data['height'] = $photo_info[1]; } $this->photo_data['template'] = $photo_data['template']; #$this -> photo_data['language_file'] = $photo_data['language_file']; #$this -> photo_data['language_file'] = $language_file; } #return $this->photo_data; } function get_photo_data() { return $this->photo_data; } function show_comments() { return $this->show_comments; } } ?>