Current Path : /var/www/html/clients/kampol.e-nk.ru/tmp/install_53824ddf3a79a/site/models/ |
Current File : /var/www/html/clients/kampol.e-nk.ru/tmp/install_53824ddf3a79a/site/models/upload.php |
<?php // $HeadURL: https://joomgallery.org/svn/joomgallery/JG-3/JG/trunk/components/com_joomgallery/models/upload.php $ // $Id: upload.php 4331 2013-09-08 08:27:42Z erftralle $ /****************************************************************************************\ ** JoomGallery 3 ** ** By: JoomGallery::ProjectTeam ** ** Copyright (C) 2008 - 2013 JoomGallery::ProjectTeam ** ** Based on: JoomGallery 1.0.0 by JoomGallery::ProjectTeam ** ** Released under GNU GPL Public License ** ** License: http://www.gnu.org/copyleft/gpl.html or have a look ** ** at administrator/components/com_joomgallery/LICENSE.TXT ** \****************************************************************************************/ defined('_JEXEC') or die('Direct Access to this location is not allowed.'); /** * JoomGallery frontend upload model * * @package JoomGallery * @since 1.5.5 */ class JoomGalleryModelUpload extends JoomGalleryModel { /** * Constructor * * @return void * @since 1.5.5 */ public function __construct() { parent::__construct(); } /** * Returns the number of images of the current user * * @return int The number of images of the current user * @since 1.5.5 */ public function getImageNumber() { $query = $this->_db->getQuery(true) ->select('COUNT(id)') ->from(_JOOM_TABLE_IMAGES) ->where('owner = '.$this->_user->get('id')); $timespan = $this->_config->get('jg_maxuserimage_timespan'); if($timespan > 0) { $query->where('imgdate > (UTC_TIMESTAMP() - INTERVAL '. $timespan .' DAY)'); } $this->_db->setQuery($query); return $this->_db->loadResult(); } /** * Returns the default user upload category * * @return int The default user upload category * @since 3.0 */ public function getDefaultUserUploadCategory() { $defaultcat = 0; if($this->_config->get('jg_useruploaddefaultcat')) { $cats = $this->_ambit->getCategoryStructure(true); $newestcat = 0; $oldestcat = PHP_INT_MAX; $owncatsonly = $this->_config->get('jg_useruploaddefaultcat') > 2 ? true : false; foreach($cats as $cat) { if(!$owncatsonly || ($owncatsonly && $cat->owner == $this->_user->get('id'))) { if( ( $this->_user->authorise('joom.upload.inown', _JOOM_OPTION.'.category.'.$cat->cid) && $cat->owner && $cat->owner == $this->_user->get('id') ) || $this->_user->authorise('joom.upload', _JOOM_OPTION.'.category.'.$cat->cid) ) { if($cat->cid > $newestcat) { $newestcat = $cat->cid; } if($cat->cid < $oldestcat) { $oldestcat = $cat->cid; } } } } switch($this->_config->get('jg_useruploaddefaultcat')) { case 1: case 3: if($oldestcat < PHP_INT_MAX) { $defaultcat = $oldestcat; } break; case 2: case 4: if($newestcat) { $defaultcat = $newestcat; } break; default: break; } } return $defaultcat; } /** * Returns the redirect URL configured in configuration manager the user should be directed too * after an successful image upload. * * @param string $uploadType Upload type (e.g. single, ajax, java, batch) * @param string $defaultType Upload view to redirect too if no redirect url is configured, defaults to null * @param boolean $xhtml Replace & by & for XML compilance. * @return string The redirect URL * @since 3.0 */ public function getRedirectUrlAfterUpload($uploadType = 'single', $defaultType = null, $xhtml = false) { $url = ''; // Set a redirect according to the correspondent setting in configuration manager switch($this->_config->get('jg_redirect_after_upload')) { case 1: $url = JRoute::_('index.php?view=upload&tab='.$uploadType, $xhtml); break; case 2: $url = JRoute::_('index.php?view=userpanel', $xhtml); break; case 3: $url = JRoute::_('index.php?view=gallery', $xhtml); break; default: if(!empty($defaultType)) { $url = JRoute::_('index.php?view=upload&tab='.$defaultType, $xhtml); } break; } return $url; } }