Skip to content

Commit

Permalink
4.0.4
Browse files Browse the repository at this point in the history
  • Loading branch information
PhocaCz committed Sep 27, 2022
1 parent 38e6033 commit 06bb17f
Show file tree
Hide file tree
Showing 35 changed files with 1,304 additions and 1,221 deletions.
2 changes: 1 addition & 1 deletion README.MD
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,7 @@ Phoca Download is download manager for Joomla! CMS. It includes component, modul

## Version (Joomla! 4.x)

4.0.3
4.0.4



Expand Down
7 changes: 6 additions & 1 deletion admin/config.xml
Original file line number Diff line number Diff line change
Expand Up @@ -568,6 +568,11 @@
<option value="3">COM_PHOCADOWNLOAD_YES_UPLOADS_DOWNLOADS</option>
</field>

<field name="store_ip" type="list" class="btn-group btn-group-yesno" default="0" label="COM_PHOCADOWNLOAD_FIELD_STORE_IP_ADDRESS_LABEL" description="COM_PHOCADOWNLOAD_FIELD_STORE_IP_ADDRESS_DESC">
<option value="0">COM_PHOCADOWNLOAD_NO</option>
<option value="1">COM_PHOCADOWNLOAD_YES</option>
</field>


<field name="delete_existing_files" default="0" type="list" label="COM_PHOCADOWNLOAD_FIELD_DELETE_EXISTING_FILES_LABEL" description="COM_PHOCADOWNLOAD_FIELD_DELETE_EXISTING_FILES_DESC" >
<option value="1">COM_PHOCADOWNLOAD_YES</option>
Expand Down Expand Up @@ -610,7 +615,7 @@


<fieldset name="permissions" description="JCONFIG_PERMISSIONS_DESC" label="JCONFIG_PERMISSIONS_LABEL">
<field name="rules" type="rules" component="com_phocacart" filter="rules" validate="rules" label="COM_PHOCADOWNLOAD_FIELD_JCONFIG_PERMISSIONS_LABEL" section="component"/>
<field name="rules" type="rules" component="com_phocadownload" filter="rules" validate="rules" label="COM_PHOCADOWNLOAD_FIELD_JCONFIG_PERMISSIONS_LABEL" section="component"/>
</fieldset>

</fields>
Expand Down
4 changes: 2 additions & 2 deletions admin/install/sql/mysql/install.utf8.sql
Original file line number Diff line number Diff line change
Expand Up @@ -82,8 +82,8 @@ CREATE TABLE IF NOT EXISTS `#__phocadownload` (
`version` varchar(255) NOT NULL default '',
`directlink` tinyint(1) NOT NULL default '0',
`date` datetime NOT NULL,
`publish_up` datetime NOT NULL default '0000-00-00 00:00:00',
`publish_down` datetime NOT NULL default '0000-00-00 00:00:00',
`publish_up` datetime NOT NULL,
`publish_down` datetime NOT NULL,
`hits` int(11) NOT NULL default '0',
`textonly` tinyint(1) NOT NULL default '0',
`published` tinyint(1) NOT NULL default '0',
Expand Down
3 changes: 3 additions & 0 deletions admin/language/en-GB/en-GB.com_phocadownload.ini
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,9 @@
;


;[4.0.4]
COM_PHOCADOWNLOAD_FIELD_STORE_IP_ADDRESS_LABEL="Store IP Address"
COM_PHOCADOWNLOAD_FIELD_STORE_IP_ADDRESS_DESC="Store or not to store IP Address. If yes, IP address can be stored in logs, displayed in emails, etc. If you do not want to store the IP address anywhere, choose no."

;[4.0.2]
COM_PHOCADOWNLOAD_SAVE_WARNING="Alias already existed so a number was added at the end. You can re-edit the item to customize the alias."
Expand Down
2 changes: 1 addition & 1 deletion admin/libraries/phocadownload/log/log.php
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ public static function log($fileid, $type = 1) {
$data['fileid'] = (int)$fileid;
$data['catid'] = 0;// Don't stored catid, bind the catid while displaying log
$data['userid'] = (int)$user->id;
$data['ip'] = $_SERVER["REMOTE_ADDR"];
$data['ip'] = PhocaDownloadUtils::getIp();
$data['page'] = $uri->toString();
$data['params'] = '';

Expand Down
8 changes: 4 additions & 4 deletions admin/libraries/phocadownload/mail/mail.php
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,9 @@
*/

defined( '_JEXEC' ) or die( 'Restricted access' );
use Joomla\CMS\Factory;
use Joomla\CMS\Language\Text;
use Joomla\CMS\HTML\HTMLHelper;
use Joomla\CMS\Factory;
use Joomla\CMS\Language\Text;
use Joomla\CMS\HTML\HTMLHelper;

class PhocaDownloadMail
{
Expand Down Expand Up @@ -67,7 +67,7 @@ public static function sendMail ( $id, $fileName, $method = 1 ) {
$message = $title . "\n\n"
. Text::_( 'COM_PHOCADOWNLOAD_WEBSITE' ) . ': '. $sitename . "\n"
. Text::_( 'COM_PHOCADOWNLOAD_DATE' ) . ': '. $date . "\n"
. 'IP: ' . $_SERVER["REMOTE_ADDR"]. "\n\n"
. 'IP: ' . PhocaDownloadUtils::getIp(). "\n\n"
. Text::_( 'COM_PHOCADOWNLOAD_MESSAGE' ) . ': '."\n"
. "\n\n"
. $messageText
Expand Down
25 changes: 25 additions & 0 deletions admin/libraries/phocadownload/utils/utils.php
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
*/
defined( '_JEXEC' ) or die( 'Restricted access' );

use Joomla\CMS\Component\ComponentHelper;
use Joomla\CMS\Filesystem\Folder;
use Joomla\CMS\Installer\Installer;
use Joomla\CMS\Factory;
Expand Down Expand Up @@ -210,5 +212,28 @@ public static function filterValue($string, $type = 'html') {
}

}

public static function getIp() {


$params = ComponentHelper::getParams('com_phocadownload');
$store_ip = $params->get( 'store_ip', 0 );

if ($store_ip == 0) {
return '';
}

$ip = false;
if(isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] != getenv('SERVER_ADDR')) {
$ip = $_SERVER['REMOTE_ADDR'];
} else {
$ip = getenv('HTTP_X_FORWARDED_FOR');
}
if (!$ip) {
$ip = $_SERVER['REMOTE_ADDR'];
}

return $ip;
}
}
?>
2 changes: 1 addition & 1 deletion admin/views/phocadownloaddownloads/view.html.php
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ function addToolbar() {

$bar = Toolbar::getInstance('toolbar');

$dhtml = '<button class="btn btn-small" onclick="javascript:if(document.adminForm.boxchecked.value==0){alert(\''.Text::_('COM_PHOCADOWNLOAD_SELECT_ITEM_RESET').'\');}else{if(confirm(\''.Text::_('COM_PHOCADOWNLOAD_WARNING_RESET_DOWNLOADS').'\')){submitbutton(\''.$this->t['tasks'].'.reset\');}}" ><i class="icon-reset" title="'.Text::_('COM_PHOCADOWNLOAD_RESET').'"></i> '.Text::_('COM_PHOCADOWNLOAD_RESET').'</button>';
$dhtml = '<button class="btn btn-small" onclick="javascript:if(document.adminForm.boxchecked.value==0){alert(\''.Text::_('COM_PHOCADOWNLOAD_SELECT_ITEM_RESET').'\');}else{if(confirm(\''.Text::_('COM_PHOCADOWNLOAD_WARNING_RESET_DOWNLOADS').'\')){Joomla.submitbutton(\''.$this->t['tasks'].'.reset\');}}" ><i class="icon-reset" title="'.Text::_('COM_PHOCADOWNLOAD_RESET').'"></i> '.Text::_('COM_PHOCADOWNLOAD_RESET').'</button>';
$bar->appendButton('Custom', $dhtml);
ToolbarHelper::divider();
//JToolbarHelper::custom('phocadownloaduserstat.reset', 'reset.png', '', 'COM_PHOCADOWNLOAD_RESET' , false);
Expand Down
166 changes: 84 additions & 82 deletions admin/views/phocadownloadlinkcat/tmpl/default.php
Original file line number Diff line number Diff line change
@@ -1,102 +1,104 @@
<?php
/* @package Joomla
* @copyright Copyright (C) Open Source Matters. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
* @extension Phoca Extension
* @copyright Copyright (C) Jan Pavelka www.phoca.cz
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
*/
defined('_JEXEC') or die('Restricted access');

use Joomla\CMS\HTML\HTMLHelper;
use Joomla\CMS\Language\Text;
JHtml::_('behavior.tooltip');

//JHtml::_('behavior.tooltip');
?>
<script type="text/javascript">
//<![CDATA[
function insertLink() {

if (!Joomla.getOptions('xtd-phocadownload')) {
return false;
}

function insertLink() {
var title = document.getElementById("title").value;
if (title != '') {
title = "|text="+title;
}
var target = document.getElementById("target").value;
if (target != '') {
target = "|target="+target;
}
var categoryIdOutput;
var categoryid = document.getElementById("catid").value;
if (categoryid != '' && parseInt(categoryid) > 0) {
categoryIdOutput = "|id="+categoryid;
} else {
categoryIdOutput = '';
}
var _Joomla$getOptions = Joomla.getOptions('xtd-phocadownload'), editor = _Joomla$getOptions.editor;

if (categoryIdOutput != '' && parseInt(categoryid) > 0) {
var tag = "{phocadownload view=category"+categoryIdOutput+title+target+"}";
window.parent.jInsertEditorText(tag, '<?php echo $this->t['ename']; ?>');
//window.parent.document.getElementById('sbox-window').close();
window.parent.SqueezeBox.close();
return false;
} else {
alert("<?php echo Text::_( 'COM_PHOCADOWNLOAD_YOU_MUST_SELECT_CATEGORY', true ); ?>");
return false;
}
}
//]]>
</script>
var title = document.getElementById("title").value;
if (title != '') {
title = "|text=" + title;
}
var target = document.getElementById("target").value;
if (target != '') {
target = "|target=" + target;
}
var categoryIdOutput;
var categoryid = document.getElementById("catid").value;
if (categoryid != '' && parseInt(categoryid) > 0) {
categoryIdOutput = "|id=" + categoryid;
} else {
categoryIdOutput = '';
}

<div id="phocadownload-links">
<fieldset class="adminform">
<legend><?php echo Text::_( 'COM_PHOCADOWNLOAD_CATEGORY' ); ?></legend>
<form name="adminForm" id="adminForm">
<table class="admintable" width="100%">
if (categoryIdOutput != '' && parseInt(categoryid) > 0) {
var tag = "{phocadownload view=category" + categoryIdOutput + title + target + "}";
window.parent.Joomla.editors.instances[editor].replaceSelection(tag);

if (window.parent.Joomla.Modal) {
window.parent.Joomla.Modal.getCurrent().close();
}

<tr >
<td class="key" align="right" >
<label for="title">
<?php echo Text::_( 'COM_PHOCADOWNLOAD_CATEGORY' ); ?>
</label>
</td>
<td>
<?php echo $this->t['lists']['catid'];?>
</td>
</tr>

return false;
} else {
alert("<?php echo Text::_('COM_PHOCADOWNLOAD_YOU_MUST_SELECT_CATEGORY', true); ?>");
return false;
}
}
</script>

<tr >
<td class="key" align="right">
<label for="title">
<?php echo Text::_( 'COM_PHOCADOWNLOAD_TITLE' ); ?>
</label>
</td>
<td>
<input type="text" id="title" name="title" />
</td>
</tr>
<tr >
<td class="key" align="right">
<label for="target">
<?php echo Text::_( 'COM_PHOCADOWNLOAD_TARGET' ); ?>
</label>
</td>
<td>
<select name="target" id="target">
<option value="s" selected="selected"><?php echo Text::_( 'COM_PHOCADOWNLOAD_TARGET_SELF' ); ?></option>
<option value="b"><?php echo Text::_( 'COM_PHOCADOWNLOAD_TARGET_BLANK' ); ?></option>
<option value="t"><?php echo Text::_( 'COM_PHOCADOWNLOAD_TARGET_TOP' ); ?></option>
<option value="p"><?php echo Text::_( 'COM_PHOCADOWNLOAD_TARGET_PARENT' ); ?></option>
</select>
</td>
</tr>
<div id="phocadownload-links">
<fieldset class="adminform options-menu options-form">
<legend><?php echo Text::_('COM_PHOCADOWNLOAD_CATEGORY'); ?></legend>
<form name="adminForm" id="adminForm">
<div class="control-group">
<div class="control-label">
<label for="title">
<?php echo Text::_('COM_PHOCADOWNLOAD_CATEGORY'); ?>
</label>
</div>
<div class="controls">
<?php echo $this->t['lists']['catid']; ?>
</div>
</div>
<div class="control-group">
<div class="control-label">
<label for="title">
<?php echo Text::_('COM_PHOCADOWNLOAD_TITLE'); ?>
</label>
</div>
<div class="controls">
<input type="text" id="title" name="title" class="form-control"/>
</div>
</div>
<div class="control-group">
<div class="control-label">
<label for="target">
<?php echo Text::_('COM_PHOCADOWNLOAD_TARGET'); ?>
</label>
<
</div>

<tr>
<td>&nbsp;</td>
<td align="right"><button class="btn btn-primary plg-button-insert " onclick="insertLink();return false;"><span class="icon-ok"></span> <?php echo Text::_( 'COM_PHOCADOWNLOAD_INSERT_CODE' ); ?></button></td>
</tr>
</table>
</form>
</fieldset>
<div style="text-align:left;"><span class="icon-16-edb-back"><a style="text-decoration:underline" href="<?php echo $this->t['backlink'];?>"><?php echo Text::_('COM_PHOCADOWNLOAD_BACK')?></a></span></div>
<div class="controls">
<select name="target" id="target" class="form-select">
<option value="s" selected="selected"><?php echo Text::_('COM_PHOCADOWNLOAD_TARGET_SELF'); ?></option>
<option value="b"><?php echo Text::_('COM_PHOCADOWNLOAD_TARGET_BLANK'); ?></option>
<option value="t"><?php echo Text::_('COM_PHOCADOWNLOAD_TARGET_TOP'); ?></option>
<option value="p"><?php echo Text::_('COM_PHOCADOWNLOAD_TARGET_PARENT'); ?></option>
</select>
</div>
</div>
<div class="btn-box-submit">
<button class="btn btn-primary plg-button-insert " onclick="insertLink();return false;"><span class="icon-ok"></span> <?php echo Text::_('COM_PHOCADOWNLOAD_INSERT_CODE'); ?></button>
</div>
</form>
</fieldset>
<div class="btn-box-back"><a class="btn btn-light" href="<?php echo $this->t['backlink']; ?>"><span class="icon-arrow-left"></span> <?php echo Text::_('COM_PHOCADOWNLOAD_BACK') ?></a></div>
</div>
14 changes: 10 additions & 4 deletions admin/views/phocadownloadlinkcat/view.html.php
Original file line number Diff line number Diff line change
Expand Up @@ -33,19 +33,25 @@ function display($tpl = null) {

}

$editor = $app->input->getCmd('editor', '');
if (!empty($editor)) {
$this->document->addScriptOptions('xtd-phocadownload', array('editor' => $editor));
}

$document = Factory::getDocument();
$uri = Uri::getInstance();
HTMLHelper::stylesheet( 'media/com_phocadownload/css/administrator/phocadownload.css' );
HTMLHelper::stylesheet( 'media/plg_editors-xtd_phocadownload/css/phocadownload.css' );

$eName = Factory::getApplication()->input->get('e_name');
$eName = Factory::getApplication()->input->get('editor');
$this->t['ename'] = preg_replace( '#[^A-Z0-9\-\_\[\]]#i', '', $eName );
$this->t['backlink'] = $tUri.'index.php?option=com_phocadownload&amp;view=phocadownloadlinks&amp;tmpl=component&amp;e_name='.$this->t['ename'];
$this->t['backlink'] = $tUri.'index.php?option=com_phocadownload&amp;view=phocadownloadlinks&amp;tmpl=component&amp;editor='.$this->t['ename'];

$model = $this->getModel();

// build list of categories
//$javascript = 'class="form-control" size="1" onchange="submitform( );"';
$javascript = 'class="form-control" size="1"';
$attr = 'class="form-select" size="1"';
$filter_catid = '';

$query = 'SELECT a.title AS text, a.id AS value, a.parent_id as parentid'
Expand All @@ -60,7 +66,7 @@ function display($tpl = null) {
$text = '';
$tree = PhocaDownloadCategory::CategoryTreeOption($phocadownloads, $tree, 0, $text, -1);
array_unshift($tree, HTMLHelper::_('select.option', '0', '- '.Text::_('COM_PHOCADOWNLOAD_SELECT_CATEGORY').' -', 'value', 'text'));
$lists['catid'] = HTMLHelper::_( 'select.genericlist', $tree, 'catid', $javascript , 'value', 'text', $filter_catid );
$lists['catid'] = HTMLHelper::_( 'select.genericlist', $tree, 'catid', $attr , 'value', 'text', $filter_catid );
//-----------------------------------------------------------------------

//$this->assignRef('lists', $lists);
Expand Down
Loading

0 comments on commit 06bb17f

Please sign in to comment.