function perch_gallery_album_field($slug, $field, $return = false) { $slug = rtrim($slug, '/'); $API = new PerchAPI(1.0, 'perch_gallery'); $Albums = new PerchGallery_Albums($API); $Album = $Albums->find_by_slug($slug); $r = false; $encode = true; if (is_object($Album)) { $field = $Album->{$field}(); if (is_array($field)) { if (isset($field['processed'])) { $r = $field['processed']; $encode = false; } elseif (isset($field['_default'])) { $r = $field['_default']; } else { $r = $field; } } else { $r = $field; } } if ($return) { return $r; } if ($encode) { $HTML = $API->get('HTML'); echo $HTML->encode($r); } else { echo $r; } }
function perch_gallery_album_details($slug, $opts = array(), $return = false) { $default_opts = array('template' => 'album.html', 'skip-template' => false); $opts = array_merge($default_opts, $opts); if ($opts['skip-template']) { $return = true; } $API = new PerchAPI(1.0, 'perch_gallery'); $Albums = new PerchGallery_Albums($API); $Album = $Albums->find_by_slug($slug); if (is_object($Album)) { if ($opts['skip-template']) { return $Album->to_array(); } $Template = $API->get('Template'); $Template->set('gallery/' . $opts['template'], 'gallery'); $r = $Template->render($Album); if ($return) { return $r; } echo $r; return; } return false; }