Your IP : 216.73.216.54


Current Path : /var/www/html/components/com_jvld/models/
Upload File :
Current File : /var/www/html/components/com_jvld/models/files.php

<?php
/**
 * @version		$Id$
 * @package		JV-LinkDirectory
 * @subpackage	com_jvld
 * @copyright	Copyright 2008-2013 JV-Extensions. All rights reserved
 * @license		GNU General Public License version 3 or later
 * @author		JV-Extensions
 * @link		http://www.jv-extensions.com
 */

// No direct access
defined('_JEXEC') or die('Restricted access');

jimport('joomla.application.component.model');

class JvldModelFiles extends JModelLegacy
{
	public function deleteFile()
	{
		try
		{
			$cfg = JvldCfg::getInstance();
			if (!$cfg->get('files_en'))
				throw new Exception(JText::_('COM_JVLD_FEATURED_DISABLED'));

			$input = JFactory::getApplication()->input;

			$lid = $input->getInt('lid', 0);
			$key = $input->getInt('key', 0);

			if (!$lid || !$key)
				throw new Exception(JText::_('COM_JVLD_ERR_INVALID_REQ'));

			$uid = JvldDb::getValue("select uid from #__jvld_links where id = ".(int)$lid);
			if ($uid != JFactory::getUser()->get("id"))
				throw new Exception(JText::_("COM_JVLD_UNAUTHORIZED"));

			$file = JvldDb::getValue("select obname from #__jvld_files where id = ".(int)$key);

			$clsname = "JvldStorage" . \Joomla\String\StringHelper::ucfirst($cfg->get('files_location_type'));
			JvldUtil::deleteFileInStorage(
				new $clsname([
					'srcfile' => $cfg->get('files_location') . DIRECTORY_SEPARATOR . $file,
					'region'  => $cfg->get('files_s3_region'),
					'bucket'  => $cfg->get('files_s3_bucket'),
					'key'     => ($cfg->get('files_s3_folder') != '') ? $cfg->get('files_s3_folder') . '/' . $file : $file,
				])
			);

			JvldDb::update("delete from #__jvld_fileslog where fid = ".(int)$key);
			JvldDb::update("delete from #__jvld_files where id = ".(int)$key);

			JvldMsg::display(JText::_("COM_JVLD_FILE_DELETE_OK"), _JVLD_NEXT_PAGE_GO_TO_URL, JvldPostinit::getRoute('files', $lid));
			return;
		}
		catch (Exception $ex)
		{
			JvldMsg::display($ex->getMessage(), _JVLD_NEXT_PAGE_GO_BACK);
			return;
		}
	}
}