*/
require_once dirname(__FILE__) . '/lib/base.php';
+require_once ANSEL_BASE . '/lib/Tags.php';
Horde::addScriptFile('prototype.js', 'horde', true);
$layout = new Horde_Block_Layout_View(
break;
case 'owner':
+ require_once 'Horde/Identity.php';
$num_groups = $ansel_storage->shares->countOwners(PERMS_SHOW, null,
false);
if (is_a($num_groups, 'PEAR_Error')) {
/* Are we watermarking the image? */
if ($watermark) {
+ require_once 'Horde/Identity.php';
$identity = Identity::singleton();
$name = $identity->getValue('fullname');
if (empty($name)) {
$title = sprintf(_("Edit properties :: %s"), $image->filename);
/* Set up the form object. */
+ require_once ANSEL_BASE . '/lib/Forms/Image.php';
$vars = Horde_Variables::getDefaultVariables();
if ($ret == 'gallery') {
$vars->set('actionID', 'saveclose');
}
/* Validate the form object. */
+ require_once ANSEL_BASE . '/lib/Forms/Image.php';
$vars = Horde_Variables::getDefaultVariables();
$vars->set('actionID', 'save');
$renderer = new Horde_Form_Renderer();
exit;
}
/* Set up the form object. */
+ require_once ANSEL_BASE . '/lib/Forms/Watermark.php';
$vars = Horde_Variables::getDefaultVariables();
$vars->set('actionID', 'previewcustomwatermark');
$form = new Ansel_Form_Watermark($vars, _("Watermark"));
* did not receive this file, see http://www.fsf.org/copyleft/gpl.html.
*/
+/** Horde_Share */
+require_once 'Horde/Share.php';
+
+/** Need to bring this in explicitly since we extend the object class */
+require_once 'Horde/Share/sql_hierarchical.php';
+
/**
* Ansel Base Class.
*
$owner, '', null, false);
$fullname = $uprefs->getValue('grouptitle');
if (!$fullname) {
+ require_once 'Horde/Identity.php';
$identity = Identity::singleton('none', $owner);
$fullname = $identity->getValue('fullname');
if (!$fullname) {
{
$type = basename($type);
$class = 'Ansel_GalleryMode_' . $type;
+ require_once dirname(__FILE__) . '/GalleryMode/' . $type . '.php';
$this->_modeHelper = new $class($this);
$this->_modeHelper->init();
}
*/
function getOwner()
{
+ require_once 'Horde/Identity.php';
$identity = Identity::singleton('none', $this->data['share_owner']);
return $identity;
}
function getTile($parent = null, $style = null, $mini = false,
$params = array())
{
+ require_once ANSEL_BASE . '/lib/Tile/Gallery.php';
+
if (!is_null($parent) && is_null($style)) {
$style = $parent->getStyle();
} else {
}
// Don't already have one, must generate it.
+ require_once dirname(__FILE__) . '/ImageView.php';
$params = array('gallery' => $this, 'style' => $gal_style);
$iview = Ansel_ImageView::factory(
$gal_style['default_galleryimage_type'], $params);
return $result;
}
$styleDef = Ansel::getStyleDefinition($style);
+
+ require_once dirname(__FILE__) . '/ImageView.php';
if ($view == 'prettythumb') {
$viewType = $styleDef['thumbstyle'];
} else {
}
if (empty($watermark)) {
+ require_once 'Horde/Identity.php';
$identity = Identity::singleton();
$name = $identity->getValue('fullname');
if (empty($name)) {
}
if ($perms) {
+ require_once 'Horde/Group.php';
$groups = Group::singleton();
$group_list = $groups->getGroupMemberships(Horde_Auth::getAuth());
if (!is_a($group_list, 'PEAR_Error') && count($group_list)) {
if (empty($user)) {
$this->addVariable(_("Use the following return address:"), 'ecard_retaddr', 'text', true);
} else {
+ require_once 'Horde/Identity.php';
$identity = Identity::singleton();
$from_addr = $identity->getDefaultFromAddress();
$vars->set('ecard_retaddr', $from_addr);
*/
function Ansel_GalleryMode_RemoteVimeo($gallery)
{
+ require_once 'Horde/Autoloader.php';
+
// Build a Horde_Service_Vimeo object
// It *requires* a http client object and can make use of a cache object,
$params = array('http_client' => new Horde_Http_Client(),
*/
function _getUserEmail($user = null)
{
+ require_once 'Horde/Identity.php';
+
// Get user email
$identity = Identity::singleton('none', $user);
return $identity->getValue('from_addr');
'ansel', $owner, '', null, false);
$fullname = $uprefs->getValue('grouptitle');
if (!$fullname) {
+ require_once 'Horde/Identity.php';
$identity = &Identity::singleton('none', $owner);
$fullname = $identity->getValue('fullname');
if (!$fullname) {
<?php
/**
+ * Ansel_View for displaying search / tag browsing results.
+ *
+ * Copyright 2006-2009 The Horde Project (http://www.horde.org/)
+ *
+ * @author Michael J. Rubinsky (mrubinsk@horde.org)
+ * @package Ansel
+ */
+
+/** Ansel_View_Abstract */
+require_once ANSEL_BASE . '/lib/Views/Abstract.php';
+
+/**
* The Ansel_View_Results:: class wraps display of images/galleries from
* multiple parent sources..
*
* @author Michael Rubinsky <mrubinsk@horde.org>
* @package Ansel
*/
-class Ansel_View_Results extends Ansel_View_Base
-{
+class Ansel_View_Results extends Ansel_View_Abstract {
+
/**
* Instance of our tag search
*
* @var Ansel_Tag_Search
*/
- protected $_search;
+ var $_search;
/**
* Gallery owner id
*
* @var string
*/
- protected $_owner;
+ var $_owner;
/**
* Contructor - just set some instance variables.
*
* @return Ansel_View_Results
*/
- public function __construct()
+ function Ansel_View_Results()
{
$this->_owner = Horde_Util::getFormData('owner', null);
$this->_search = Ansel_Tags::getSearch(null, $this->_owner);
}
/**
+ * @static
+ *
+ * @return Ansel_View_Results The view object.
+ *
+ * @TODO use exceptions from the constructor instead of static
+ * instance-getting.
+ */
+ function makeView($params = array())
+ {
+ $view = new Ansel_View_Results();
+ if (count($params)) {
+ $view->_params = $params;
+ }
+ return $view;
+ }
+
+ /**
* Return the title for this view.
*
* @return string The title for this view.
*/
- public function getTitle()
+ function getTitle()
{
return (!empty($this->_owner))
? sprintf(_("Searching %s's photos tagged: "), $this->_owner)
*
* @return string The HTML
*/
- public function html()
+ function html()
{
global $conf, $prefs, $registry, $ansel_storage;
return ob_get_clean();
}
- public function viewType()
+ function viewType()
{
return 'Results';
}
- public function getGalleryCrumbData()
- {
- return array();
- }
-
}
* @author Michael J. Rubinsky <mrubinsk@horde.org>
* @package Ansel
*/
-class Ansel_View_Slideshow extends Ansel_View_Base
-{
+
+/** Ansel_View_Abstract */
+require_once ANSEL_BASE . '/lib/Views/Abstract.php';
+
+class Ansel_View_Slideshow extends Ansel_View_Abstract {
+
+ /**
+ * The Ansel_Image object representing the first image selected for view.
+ *
+ * @var Ansel_Image
+ */
+ var $image;
+
/**
* @static
*
* @TODO use exceptions from the constructor instead of static
* instance-getting.
*/
- public function __construct($params = array())
+ function makeView($params = array())
{
- parent::__construct($params);
if (empty($params['image_id'])) {
$image_id = Horde_Util::getFormData('image');
} else {
$image_id = $params['image_id'];
}
$image = $GLOBALS['ansel_storage']->getImage($image_id);
- $this->gallery = $this->getGallery($image->gallery);
- $this->image = $image;
+ if (is_a($image, 'PEAR_Error')) {
+ return $image;
+ }
+
+ $view = new Ansel_View_Slideshow();
+ if (count($params)) {
+ $view->_params = $params;
+ }
+ $view->gallery = $view->getGallery($image->gallery);
+ if (is_a($view->gallery, 'PEAR_Error')) {
+ return $view->gallery;
+ }
+ $view->image = $image;
// Check user age
- if (!$this->gallery->isOldEnough()) {
+ if (!$view->gallery->isOldEnough()) {
$date = Ansel::getDateParameter(
- array('year' => !empty($this->_params['year']) ? $this->_params['year'] : 0,
- 'month' => !empty($this->_params['month']) ? $this->_params['month'] : 0,
- 'day' => !empty($this->_params['day']) ? $this->_params['day'] : 0));
+ array('year' => isset($view->_params['year']) ? $view->_params['year'] : 0,
+ 'month' => isset($view->_params['month']) ? $view->_params['month'] : 0,
+ 'day' => isset($view->_params['day']) ? $view->_params['day'] : 0));
$url = Ansel::getUrlFor('view', array_merge(
- array('gallery' => $this->gallery->id,
+ array('gallery' => $view->gallery->id,
'slug' => empty($params['slug']) ? '' : $params['slug'],
'page' => empty($params['page']) ? 0 : $params['page'],
'view' => 'Slideshow',
$date),
true);
- $params = array('gallery' => $this->gallery->id, 'url' => $url);
+ $params = array('gallery' => $view->gallery->id, 'url' => $url);
header('Location: ' . Horde_Util::addParameter(Horde::applicationUrl('disclamer.php'), $params, null, false));
exit;
}
// Check password
- if ($this->gallery->hasPasswd()) {
+ if ($view->gallery->hasPasswd()) {
$date = Ansel::getDateParameter(
- array('year' => isset($this->_params['year']) ? $this->_params['year'] : 0,
- 'month' => isset($this->_params['month']) ? $this->_params['month'] : 0,
- 'day' => isset($this->_params['day']) ? $this->_params['day'] : 0));
+ array('year' => isset($view->_params['year']) ? $view->_params['year'] : 0,
+ 'month' => isset($view->_params['month']) ? $view->_params['month'] : 0,
+ 'day' => isset($view->_params['day']) ? $view->_params['day'] : 0));
$url = Ansel::getUrlFor('view', array_merge(
- array('gallery' => $this->gallery->id,
+ array('gallery' => $view->gallery->id,
'slug' => empty($params['slug']) ? '' : $params['slug'],
'page' => empty($params['page']) ? 0 : $params['page'],
'view' => 'Slideshow',
$date),
true);
- $params = array('gallery' => $this->gallery->id, 'url' => $url);
+ $params = array('gallery' => $view->gallery->id, 'url' => $url);
header('Location: ' . Horde_Util::addParameter(Horde::applicationUrl('protect.php'), $params, null, false));
exit;
Horde::addScriptFile('effects.js', 'horde', true);
Horde::addScriptFile('stripe.js', 'horde', true);
Horde::addScriptFile('slideshow.js', 'ansel', true);
+
+ return $view;
}
/**
*
* @return string The title.
*/
- public function getTitle()
+ function getTitle()
{
- return $this->resource->filename;
+ return $this->image->filename;
}
/**
*
* @return string The HTML.
*/
- public function html()
+ function html()
{
global $browser, $conf, $prefs, $registry;
+ if (is_a($this->gallery, 'PEAR_Error')) {
+ echo htmlspecialchars($this->gallery->getMessage());
+ return;
+ }
$page = Horde_Util::getFormData('page', 0);
$galleryId = $this->gallery->id;
- $imageId = $this->resource->id;
+ $imageId = $this->image->id;
$galleryOwner = $this->gallery->get('owner');
$style = $this->gallery->getStyle();
return ob_get_clean();
}
- public function viewType()
+ function viewType()
{
return 'Slideshow';
}
* @package Ansel
* @author Chuck Hagenbuch <chuck@horde.org>
*/
-class Ansel_XPPublisher
-{
+class Horde_XPPublisher {
+
/**
* Generates a Windows Registry file that a user can double-click
* to add your provider to their list of Providers for the
* service. Usually displayed at 32x32, will be scaled if it's not
* that size.
*/
- public function sendRegFile($appKey, $displayName, $description, $href, $icon)
+ function sendRegFile($appKey, $displayName, $description, $href, $icon)
{
$browser = Horde_Browser::singleton();
$browser->downloadHeaders('install_registry.reg', 'application/octet-stream');
function _ansel_listTagInfo($tags = null)
{
require_once dirname(__FILE__) . '/base.php';
+ require_once ANSEL_BASE . '/lib/Tags.php';
return Ansel_Tags::listTagInfo($tags);
}
$app = null)
{
require_once dirname(__FILE__) . '/base.php';
+ require_once ANSEL_BASE . '/lib/Tags.php';
if (!is_null($app)) {
$GLOBALS['ansel_storage'] = new Ansel_Storage($app);
if (!is_null($app)) {
$GLOBALS['ansel_storage'] = new Ansel_Storage($app);
}
+
+ require_once ANSEL_BASE . '/lib/Views/' . basename($view) . '.php';
$classname = 'Ansel_View_' . basename($view);
$params['api'] = true;
$params['view'] = $view;
);
require_once dirname(__FILE__) . '/lib/base.php';
+require_once 'Horde/Group.php';
$groups = Group::singleton();
$auth = Horde_Auth::singleton($conf['auth']['driver']);
*/
require_once dirname(__FILE__) . '/lib/base.php';
+require_once 'Horde/Form.php';
$vars = Horde_Variables::getDefaultVariables();
$gallery = $ansel_storage->getGallery($vars->get('gallery'));
*/
require_once dirname(__FILE__) . '/lib/base.php';
+require_once 'Horde/Form.php';
$title = _("Do you really want to report this gallery?");
$gallery_id = (int)Horde_Util::getFormData('gallery');
if (isset($galleries) && count($galleries)) {
$images = $ansel_storage->getRecentImages($galleries);
if (!is_a($images, 'PEAR_Error') && count($images)) {
+ require_once('Horde/Identity.php');
$owner = Identity::singleton('none', $id);
$name = $owner->getValue('fullname');
$author = $owner->getValue('from_addr');
$ansel_authentication = 'none';
require_once dirname(__FILE__) . '/lib/base.php';
+require_once ANSEL_BASE . '/lib/XPPublisher.php';
$cmd = Horde_Util::getFormData('cmd');
if (empty($cmd)) {
- $publisher = new Ansel_XPPublisher();
+ $publisher = new Horde_XPPublisher();
$publisher->sendRegFile(
$registry->getApp() . '-' . $conf['server']['name'],
$registry->get('name'),