merge rel_2.x changes to trunk
This commit is contained in:
commit
c20ce515f4
26
.gitattributes
vendored
26
.gitattributes
vendored
@ -1,17 +1,29 @@
|
||||
* text=auto !eol
|
||||
changed_full/EE500-/modules/d3/d3usersonline/views/blocks/layout/d3usersonline_sidebar.tpl -text
|
||||
changed_full/PE470-/modules/d3/d3usersonline/views/blocks/layout/d3usersonline_sidebar.tpl -text
|
||||
Sources/Screenshots/Backend.jpg -text
|
||||
Sources/Screenshots/Frontend.jpg -text
|
||||
Sources/UsersOnline-Installation.docx -text
|
||||
copy_this/.noencode -text
|
||||
copy_this/modules/d3/d3usersonline/IntelliSenseHelper.php -text
|
||||
copy_this/modules/d3/d3usersonline/controllers/admin/d3_cfg_usersonline.php -text
|
||||
copy_this/modules/d3/d3usersonline/controllers/admin/d3_cfg_usersonline_licence.php -text
|
||||
copy_this/modules/d3/d3usersonline/controllers/admin/d3_cfg_usersonline_list.php -text
|
||||
copy_this/modules/d3/d3usersonline/controllers/admin/d3_cfg_usersonline_main.php -text
|
||||
copy_this/modules/d3/d3usersonline/controllers/admin/d3_usersonline.php -text
|
||||
copy_this/modules/d3/d3usersonline/controllers/admin/d3_usersonline_list.php -text
|
||||
copy_this/modules/d3/d3usersonline/controllers/admin/d3_usersonline_statistic.php -text
|
||||
copy_this/modules/d3/d3usersonline/menu.xml -text
|
||||
copy_this/modules/d3/d3usersonline/metadata.php -text
|
||||
copy_this/modules/d3/d3usersonline/models/d3usersonline.php -text
|
||||
copy_this/modules/d3/d3usersonline/models/d3usersonline_update.php -text
|
||||
copy_this/modules/d3/d3usersonline/modules/components/d3_oxcmp_utils_usersonline.php -text
|
||||
copy_this/modules/d3/d3usersonline/picture.png -text
|
||||
copy_this/modules/d3/d3usersonline/setup/d3usersonline_update.php -text
|
||||
copy_this/modules/d3/d3usersonline/translations/de/d3usersonline_lang.php -text
|
||||
copy_this/modules/d3/d3usersonline/translations/en/d3usersonline_lang.php -text
|
||||
copy_this/modules/d3/d3usersonline/views/admin/de/d3usersonline_lang.php -text
|
||||
copy_this/modules/d3/d3usersonline/views/admin/en/d3usersonline_lang.php -text
|
||||
copy_this/modules/d3/d3usersonline/views/admin/tpl/d3_cfg_usersonline_main.tpl -text
|
||||
copy_this/modules/d3/d3usersonline/views/admin/tpl/d3_usersonline_statistic.tpl -text
|
||||
copy_this/modules/d3/d3usersonline/views/blocks/layout/d3usersonline_sidebar.tpl -text
|
||||
setup+doku/Installation.pdf -text
|
||||
setup+doku/Precheck/d3precheck.php -text
|
||||
setup+doku/changelog.txt -text
|
||||
setup+doku/d3precheck.php -text
|
||||
source/Re[!!-~]D3[!!-~]Users[!!-~]Online[!!-~]kit[!!-~]Oxid[!!-~]CE[!!-~]4.7.eml -text
|
||||
source/UsersOnline[!!-~]v1.2.1[!!-~]CE4_Kundenversion_4.7.0.zip -text
|
||||
source/UsersOnline-Installation.docx -text
|
||||
|
BIN
Sources/Screenshots/Backend.jpg
Normal file
BIN
Sources/Screenshots/Backend.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 311 KiB |
BIN
Sources/Screenshots/Frontend.jpg
Normal file
BIN
Sources/Screenshots/Frontend.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 610 KiB |
BIN
Sources/UsersOnline-Installation.docx
Normal file
BIN
Sources/UsersOnline-Installation.docx
Normal file
Binary file not shown.
@ -1,49 +0,0 @@
|
||||
[{d3modcfgcheck modid="d3usersonline"}]
|
||||
[{if $oxcmp_user && $oxcmp_user->getFieldData('oxrights') == 'malladmin'}]
|
||||
<div class="box">
|
||||
<h3>[{oxmultilang ident="D3_USERSONLINE_USERSONLINE"}]</h3>
|
||||
<div class="content">
|
||||
<table style="border-style: none; width: 100%;">
|
||||
<tr>
|
||||
<td style="border-bottom: 1px solid silver;">
|
||||
[{oxmultilang ident="D3_USERSONLINE_ALL"}]
|
||||
</td>
|
||||
<td style="border-bottom: 1px solid silver; text-align: right; font-weight: bold;">
|
||||
[{$aUsersOnline.all}]
|
||||
</td>
|
||||
<td style="border-bottom: 1px solid silver; text-align: left;">
|
||||
[{if $aUsersOnline.all == 1}]
|
||||
[{oxmultilang ident="D3_USERSONLINE_USER"}]
|
||||
[{else}]
|
||||
[{oxmultilang ident="D3_USERSONLINE_USERS"}]
|
||||
[{/if}]
|
||||
</td>
|
||||
</tr>
|
||||
[{foreach from=$aUsersOnline.classes item="aClassUser"}]
|
||||
<tr>
|
||||
<td>
|
||||
[{if $aClassUser->classname}]
|
||||
[{$aClassUser->classname|ucfirst}]:
|
||||
[{else}]
|
||||
undefined:
|
||||
[{/if}]
|
||||
</td>
|
||||
<td style="text-align: right; font-weight: bold;">
|
||||
[{$aClassUser->counter}]
|
||||
</td>
|
||||
<td style="text-align: left;">
|
||||
[{if $aClassUser->counter == 1}]
|
||||
[{oxmultilang ident="D3_USERSONLINE_USER"}]
|
||||
[{else}]
|
||||
[{oxmultilang ident="D3_USERSONLINE_USERS"}]
|
||||
[{/if}]
|
||||
</td>
|
||||
</tr>
|
||||
[{/foreach}]
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
[{/if}]
|
||||
[{/d3modcfgcheck}]
|
||||
|
||||
[{$smarty.block.parent}]
|
17
copy_this/modules/d3/d3usersonline/IntelliSenseHelper.php
Normal file
17
copy_this/modules/d3/d3usersonline/IntelliSenseHelper.php
Normal file
@ -0,0 +1,17 @@
|
||||
<?php
|
||||
/**
|
||||
* This Software is the property of Data Development and is protected
|
||||
* by copyright law - it is NOT Freeware.
|
||||
*
|
||||
* Any unauthorized use of this software without a valid license
|
||||
* is a violation of the license agreement and will be prosecuted by
|
||||
* civil and criminal law.
|
||||
*
|
||||
* http://www.shopmodule.com
|
||||
*
|
||||
* @copyright © D³ Data Development, Thomas Dartsch
|
||||
* @author D³ Data Development - Daniel Seifert <ds@shopmodule.com>
|
||||
* @link http://www.oxidmodule.com
|
||||
*/
|
||||
|
||||
class d3_oxcmp_utils_usersonline_parent extends oxcmp_utils {}
|
@ -0,0 +1,28 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* This Software is the property of Data Development and is protected
|
||||
* by copyright law - it is NOT Freeware.
|
||||
* Any unauthorized use of this software without a valid license
|
||||
* is a violation of the license agreement and will be prosecuted by
|
||||
* civil and criminal law.
|
||||
* http://www.shopmodule.com
|
||||
*
|
||||
* @copyright (C) D3 Data Development (Inh. Thomas Dartsch)
|
||||
* @author D3 Data Development - Daniel Seifert <ds@shopmodule.com>
|
||||
* @link http://www.oxidmodule.com
|
||||
*/
|
||||
|
||||
class d3_cfg_usersonline extends d3_cfg_mod_
|
||||
{
|
||||
/**
|
||||
* @return string
|
||||
*/
|
||||
public function render()
|
||||
{
|
||||
$this->addTplParam('sListClass', 'd3_cfg_usersonline_list');
|
||||
$this->addTplParam('sMainClass', 'd3_cfg_usersonline_main');
|
||||
|
||||
return parent::render();
|
||||
}
|
||||
}
|
@ -0,0 +1,25 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* This Software is the property of Data Development and is protected
|
||||
* by copyright law - it is NOT Freeware.
|
||||
* Any unauthorized use of this software without a valid license
|
||||
* is a violation of the license agreement and will be prosecuted by
|
||||
* civil and criminal law.
|
||||
* http://www.shopmodule.com
|
||||
*
|
||||
* @copyright (C) D3 Data Development (Inh. Thomas Dartsch)
|
||||
* @author D3 Data Development - Daniel Seifert <ds@shopmodule.com>
|
||||
* @link http://www.oxidmodule.com
|
||||
*/
|
||||
|
||||
class d3_cfg_usersonline_licence extends d3_cfg_mod_licence
|
||||
{
|
||||
protected $_sModId = 'd3usersonline';
|
||||
|
||||
protected $_hasNewsletterForm = false;
|
||||
|
||||
protected $_sLogType = 2;
|
||||
|
||||
//protected $_sBlogFeed = "http://blog.oxidmodule.com/feeds/categories/46-Angebotsanfrage.rss";
|
||||
}
|
@ -0,0 +1,31 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* This Software is the property of Data Development and is protected
|
||||
* by copyright law - it is NOT Freeware.
|
||||
* Any unauthorized use of this software without a valid license
|
||||
* is a violation of the license agreement and will be prosecuted by
|
||||
* civil and criminal law.
|
||||
* http://www.shopmodule.com
|
||||
*
|
||||
* @copyright (C) D3 Data Development (Inh. Thomas Dartsch)
|
||||
* @author D3 Data Development - Daniel Seifert <ds@shopmodule.com>
|
||||
* @link http://www.oxidmodule.com
|
||||
*/
|
||||
|
||||
class d3_cfg_usersonline_list extends d3_cfg_mod_list
|
||||
{
|
||||
protected $_blD3ShowLangSwitch = false;
|
||||
|
||||
/**
|
||||
* @return null
|
||||
*/
|
||||
public function render()
|
||||
{
|
||||
$sRet = parent::render();
|
||||
|
||||
$this->addTplParam("default_edit", "d3_cfg_usersonline_main");
|
||||
|
||||
return $sRet;
|
||||
}
|
||||
}
|
@ -0,0 +1,29 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* This Software is the property of Data Development and is protected
|
||||
* by copyright law - it is NOT Freeware.
|
||||
* Any unauthorized use of this software without a valid license
|
||||
* is a violation of the license agreement and will be prosecuted by
|
||||
* civil and criminal law.
|
||||
* http://www.shopmodule.com
|
||||
*
|
||||
* @copyright (C) D3 Data Development (Inh. Thomas Dartsch)
|
||||
* @author D3 Data Development - Daniel Seifert <ds@shopmodule.com>
|
||||
* @link http://www.oxidmodule.com
|
||||
*/
|
||||
|
||||
class d3_cfg_usersonline_Main extends d3_cfg_mod_main
|
||||
{
|
||||
protected $_sThisTemplate = 'd3_cfg_usersonline_main.tpl';
|
||||
|
||||
protected $_sModId = 'd3usersonline';
|
||||
|
||||
protected $_blUseModCfgStdObject = true;
|
||||
|
||||
protected $_blHasDebugSwitch = false;
|
||||
|
||||
protected $_blHasTestModeSwitch = false;
|
||||
|
||||
//protected $_sDebugHelpTextIdent = 'D3_INQUIRY_MAIN_DEBUGACTIVE_DESC';
|
||||
}
|
@ -0,0 +1,28 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* This Software is the property of Data Development and is protected
|
||||
* by copyright law - it is NOT Freeware.
|
||||
* Any unauthorized use of this software without a valid license
|
||||
* is a violation of the license agreement and will be prosecuted by
|
||||
* civil and criminal law.
|
||||
* http://www.shopmodule.com
|
||||
*
|
||||
* @copyright (C) D3 Data Development (Inh. Thomas Dartsch)
|
||||
* @author D3 Data Development - Daniel Seifert <ds@shopmodule.com>
|
||||
* @link http://www.oxidmodule.com
|
||||
*/
|
||||
|
||||
class d3_usersonline extends d3_cfg_mod_
|
||||
{
|
||||
/**
|
||||
* @return string
|
||||
*/
|
||||
public function render()
|
||||
{
|
||||
$this->addTplParam('sListClass', 'd3_usersonline_list');
|
||||
$this->addTplParam('sMainClass', 'd3_usersonline_statistic');
|
||||
|
||||
return parent::render();
|
||||
}
|
||||
}
|
@ -0,0 +1,33 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* This Software is the property of Data Development and is protected
|
||||
* by copyright law - it is NOT Freeware.
|
||||
* Any unauthorized use of this software without a valid license
|
||||
* is a violation of the license agreement and will be prosecuted by
|
||||
* civil and criminal law.
|
||||
* http://www.shopmodule.com
|
||||
*
|
||||
* @copyright (C) D3 Data Development (Inh. Thomas Dartsch)
|
||||
* @author D3 Data Development - Daniel Seifert <ds@shopmodule.com>
|
||||
* @link http://www.oxidmodule.com
|
||||
*/
|
||||
|
||||
class d3_usersonline_list extends d3_cfg_mod_list
|
||||
{
|
||||
protected $_blD3ShowLangSwitch = false;
|
||||
|
||||
/**
|
||||
* @return null
|
||||
*/
|
||||
public function render()
|
||||
{
|
||||
$this->_blD3ShowLangSwitch = false;
|
||||
|
||||
$sRet = parent::render();
|
||||
|
||||
$this->addTplParam("default_edit", "d3_usersonline_statistic");
|
||||
|
||||
return $sRet;
|
||||
}
|
||||
}
|
@ -0,0 +1,30 @@
|
||||
<?php
|
||||
/**
|
||||
* This Software is the property of Data Development and is protected
|
||||
* by copyright law - it is NOT Freeware.
|
||||
* Any unauthorized use of this software without a valid license
|
||||
* is a violation of the license agreement and will be prosecuted by
|
||||
* civil and criminal law.
|
||||
* http://www.shopmodule.com
|
||||
*
|
||||
* @copyright (C) D3 Data Development (Inh. Thomas Dartsch)
|
||||
* @author D3 Data Development - Daniel Seifert <ds@shopmodule.com>
|
||||
* @link http://www.oxidmodule.com
|
||||
*/
|
||||
class d3_usersonline_statistic extends d3_cfg_mod_main
|
||||
{
|
||||
protected $_blUseOwnOxid = false;
|
||||
protected $_iExpTime = 600; // (in seconds)
|
||||
protected $_sThisTemplate = 'd3_usersonline_statistic.tpl';
|
||||
|
||||
/**
|
||||
* @return array
|
||||
*/
|
||||
public function getUserCount()
|
||||
{
|
||||
/** @var d3usersonline $oUsersOnline */
|
||||
$oUsersOnline = oxNew('d3usersonline');
|
||||
$oUsersOnline->clearOldItems($this->_iExpTime);
|
||||
return $oUsersOnline->getUserCount();
|
||||
}
|
||||
}
|
14
copy_this/modules/d3/d3usersonline/menu.xml
Normal file
14
copy_this/modules/d3/d3usersonline/menu.xml
Normal file
@ -0,0 +1,14 @@
|
||||
<?xml version="1.0" encoding="ISO-8859-15"?>
|
||||
<OX>
|
||||
<OXMENU id="d3mxd3modules">
|
||||
<MAINMENU id="d3mxusersonline">
|
||||
<SUBMENU id="d3mxusersonline_settings" cl="d3_cfg_usersonline" list="d3_cfg_usersonline_list">
|
||||
<TAB id="d3tbclussersonline_settings_main" cl="d3_cfg_usersonline_main" />
|
||||
<TAB id="d3tbcl_licence" cl="d3_cfg_usersonline_licence" />
|
||||
</SUBMENU>
|
||||
<SUBMENU id="d3mxusersonline_analysis" cl="d3_usersonline" list="d3_usersonline_list">
|
||||
<TAB id="d3tbclusersonline_currvisitors" cl="d3_usersonline_statistic" />
|
||||
</SUBMENU>
|
||||
</MAINMENU>
|
||||
</OXMENU>
|
||||
</OX>
|
@ -30,11 +30,13 @@ $aModule = array(
|
||||
'title' =>
|
||||
(class_exists('d3utils') ? d3utils::getInstance()->getD3Logo() : 'D³') . ' Users Online',
|
||||
'description' => array(
|
||||
'de' => 'Lassen Sie sich anonym im Shop anzeigen, wie viele Benutzer zur Zeit Ihren Shop besuchen und welche Seiten angezeigt werden. Das Modul speichert nicht die IP-Adresse oder sonstige Daten des Nutzers. Damit genügen Sie auch dem deutschen Recht.',
|
||||
'de' => 'Lassen Sie sich anonym im Shop anzeigen, wie viele Benutzer zur Zeit Ihren Shop besuchen und welche '.
|
||||
'Seiten angezeigt werden. Das Modul speichert nicht die IP-Adresse oder sonstige Daten des Nutzers. Damit '.
|
||||
'genügen Sie auch dem deutschen Recht.',
|
||||
'en' => '',
|
||||
),
|
||||
'thumbnail' => 'picture.png',
|
||||
'version' => '2.0.0.2',
|
||||
'version' => '2.0.1.0',
|
||||
'author' => 'D³ Data Development (Inh.: Thomas Dartsch)',
|
||||
'email' => 'support@shopmodule.com',
|
||||
'url' => 'http://www.oxidmodule.com/',
|
||||
@ -43,16 +45,35 @@ $aModule = array(
|
||||
),
|
||||
'files' => array(
|
||||
'd3usersonline' => 'd3/d3usersonline/models/d3usersonline.php',
|
||||
'd3usersonline_update' => 'd3/d3usersonline/models/d3usersonline_update.php',
|
||||
'd3usersonline_update' => 'd3/d3usersonline/setup/d3usersonline_update.php',
|
||||
'd3_cfg_usersonline' => 'd3/d3usersonline/controllers/admin/d3_cfg_usersonline.php',
|
||||
'd3_cfg_usersonline_licence' => 'd3/d3usersonline/controllers/admin/d3_cfg_usersonline_licence.php',
|
||||
'd3_cfg_usersonline_list' => 'd3/d3usersonline/controllers/admin/d3_cfg_usersonline_list.php',
|
||||
'd3_cfg_usersonline_main' => 'd3/d3usersonline/controllers/admin/d3_cfg_usersonline_main.php',
|
||||
'd3_usersonline' => 'd3/d3usersonline/controllers/admin/d3_usersonline.php',
|
||||
'd3_usersonline_list' => 'd3/d3usersonline/controllers/admin/d3_usersonline_list.php',
|
||||
'd3_usersonline_statistic' => 'd3/d3usersonline/controllers/admin/d3_usersonline_statistic.php',
|
||||
),
|
||||
'templates' => array(
|
||||
//'d3_cfg_extsearch_main.tpl' => 'd3/d3_extsearch/views/admin/tpl/d3_cfg_extsearch_main.tpl',
|
||||
'd3_cfg_usersonline_main.tpl' => 'd3/d3usersonline/views/admin/tpl/d3_cfg_usersonline_main.tpl',
|
||||
'd3_usersonline_statistic.tpl' => 'd3/d3usersonline/views/admin/tpl/d3_usersonline_statistic.tpl',
|
||||
),
|
||||
'events' => array(
|
||||
'onActivate' => 'd3install::checkUpdateStart',
|
||||
),
|
||||
'blocks' => array(
|
||||
array('template' => 'layout/sidebar.tpl', 'block' => 'sidebar_categoriestree',
|
||||
'file' => 'views/blocks/layout/d3usersonline_sidebar.tpl'),
|
||||
)
|
||||
array(
|
||||
'template' => 'layout/sidebar.tpl',
|
||||
'block' => 'sidebar_categoriestree',
|
||||
'file' => 'views/blocks/layout/d3usersonline_sidebar.tpl'
|
||||
),
|
||||
),
|
||||
'd3FileRegister' => array(
|
||||
'd3/d3usersonline/IntelliSenseHelper.php',
|
||||
'd3/d3usersonline/metadata.php',
|
||||
'd3/d3usersonline/translations/de/d3usersonline_lang.php',
|
||||
'd3/d3usersonline/translations/en/d3usersonline_lang.php',
|
||||
'd3/d3usersonline/views/admin/de/d3usersonline_lang.php',
|
||||
'd3/d3usersonline/views/admin/en/d3usersonline_lang.php',
|
||||
),
|
||||
);
|
@ -38,7 +38,7 @@ class d3usersonline extends oxbase
|
||||
public function __construct()
|
||||
{
|
||||
parent::__construct();
|
||||
$this->init( 'd3usersonline' );
|
||||
$this->init('d3usersonline');
|
||||
}
|
||||
|
||||
/**
|
||||
@ -48,8 +48,8 @@ class d3usersonline extends oxbase
|
||||
{
|
||||
startProfile(__METHOD__);
|
||||
|
||||
$exptime = time() - $iExpTime;
|
||||
oxDb::getDb()->Execute("delete from ".$this->getViewName()." where timevisit < $exptime");
|
||||
$iExptime = time() - $iExpTime;
|
||||
oxDb::getDb()->Execute("delete from ".$this->getViewName()." where timevisit < $iExptime");
|
||||
|
||||
stopProfile(__METHOD__);
|
||||
}
|
||||
@ -61,15 +61,14 @@ class d3usersonline extends oxbase
|
||||
{
|
||||
startProfile(__METHOD__);
|
||||
|
||||
$sSelect = "select count(oxid) AS counter, oxclass from ".$this->getViewName()." GROUP BY oxclass ORDER BY counter desc";
|
||||
$sSelect = "select count(oxid) AS counter, oxclass from ".
|
||||
$this->getViewName()." GROUP BY oxclass ORDER BY counter desc";
|
||||
$aRecords = oxDb::getDb(oxDb::FETCH_MODE_ASSOC)->getArray($sSelect);
|
||||
|
||||
$iAllCounter = 0;
|
||||
$aUserClasses = array();
|
||||
if ($aRecords && is_array($aRecords) && count($aRecords))
|
||||
{
|
||||
foreach ($aRecords as $aRecord)
|
||||
{
|
||||
if ($aRecords && is_array($aRecords) && count($aRecords)) {
|
||||
foreach ($aRecords as $aRecord) {
|
||||
$aRecord = array_change_key_case($aRecord, CASE_UPPER);
|
||||
|
||||
$oTmp = new stdClass;
|
||||
@ -130,50 +129,43 @@ class d3usersonline extends oxbase
|
||||
$this->_getIpData('_httpComingFrom', 'HTTP_COMING_FROM');
|
||||
|
||||
// Gets the default ip sent by the user
|
||||
if (!empty($this->_remoteAddr))
|
||||
if (!empty($this->_remoteAddr)) {
|
||||
$sDirectIp = $this->_remoteAddr;
|
||||
}
|
||||
|
||||
// Gets the proxy ip sent by the user
|
||||
if (!empty($this->_httpXForwardedFor))
|
||||
if (!empty($this->_httpXForwardedFor)) {
|
||||
$sProxyIp = $this->_httpXForwardedFor;
|
||||
else if (!empty($this->_httpXForwarded))
|
||||
} elseif (!empty($this->_httpXForwarded)) {
|
||||
$sProxyIp = $this->_httpXForwarded;
|
||||
else if (!empty($this->_httpForwardedFor))
|
||||
} elseif (!empty($this->_httpForwardedFor)) {
|
||||
$sProxyIp = $this->_httpForwardedFor;
|
||||
else if (!empty($this->_httpForwarded))
|
||||
} elseif (!empty($this->_httpForwarded)) {
|
||||
$sProxyIp = $this->_httpForwarded;
|
||||
else if (!empty($this->_httpVia))
|
||||
} elseif (!empty($this->_httpVia)) {
|
||||
$sProxyIp = $this->_httpVia;
|
||||
else if (!empty($this->_httpXComingFrom))
|
||||
} elseif (!empty($this->_httpXComingFrom)) {
|
||||
$sProxyIp = $this->_httpXComingFrom;
|
||||
else if (!empty($this->_httpComingFrom))
|
||||
} elseif (!empty($this->_httpComingFrom)) {
|
||||
$sProxyIp = $this->_httpComingFrom;
|
||||
}
|
||||
|
||||
// Returns the true IP if it has been found, else ...
|
||||
if (empty($sProxyIp))
|
||||
{
|
||||
if (empty($sProxyIp)) {
|
||||
// True IP without proxy
|
||||
return $sDirectIp;
|
||||
}
|
||||
else
|
||||
{
|
||||
} else {
|
||||
$blIsIp = preg_match('@^([0-9]{1,3}.){3,3}[0-9]{1,3}@', $sProxyIp, $aMatches);
|
||||
|
||||
if ($blIsIp && (count($aMatches) > 0))
|
||||
{
|
||||
if ($blIsIp && (count($aMatches) > 0)) {
|
||||
// True IP behind a proxy
|
||||
return $aMatches[0];
|
||||
}
|
||||
else
|
||||
{
|
||||
if (empty($this->_httpClientIp))
|
||||
{
|
||||
} else {
|
||||
if (empty($this->_httpClientIp)) {
|
||||
// Can't define IP: there is a proxy but we don't have
|
||||
// information about the true IP
|
||||
return "(unbekannt) " . $sProxyIp;
|
||||
}
|
||||
else
|
||||
{
|
||||
} else {
|
||||
// better than nothing
|
||||
return $this->_httpClientIp;
|
||||
}
|
||||
@ -187,14 +179,14 @@ class d3usersonline extends oxbase
|
||||
*/
|
||||
protected function _getIpData($sTargetVarName, $sDataName)
|
||||
{
|
||||
if (empty($this->{$sTargetVarName}))
|
||||
{
|
||||
if (!empty($_SERVER) && isset($_SERVER[$sDataName]))
|
||||
if (empty($this->{$sTargetVarName})) {
|
||||
if (!empty($_SERVER) && isset($_SERVER[$sDataName])) {
|
||||
$this->{$sTargetVarName} = $_SERVER[$sDataName];
|
||||
else if (!empty($_ENV) && isset($_ENV[$sDataName]))
|
||||
} elseif (!empty($_ENV) && isset($_ENV[$sDataName])) {
|
||||
$this->{$sTargetVarName} = $_ENV[$sDataName];
|
||||
else if (@getenv($sDataName))
|
||||
} elseif (@getenv($sDataName)) {
|
||||
$this->{$sTargetVarName} = getenv($sDataName);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -30,16 +30,14 @@ class d3_oxcmp_utils_usersonline extends d3_oxcmp_utils_usersonline_parent
|
||||
{
|
||||
$sRet = parent::render();
|
||||
|
||||
if (d3_cfg_mod::get($this->_sD3UsersOnlineModId)->isActive())
|
||||
{
|
||||
if (d3_cfg_mod::get($this->_sD3UsersOnlineModId)->isActive()) {
|
||||
/** @var d3usersonline $oUsersOnline */
|
||||
$oUsersOnline = oxNew('d3usersonline');
|
||||
$oUsersOnline->clearOldItems($this->_iExpTime);
|
||||
$oUsersOnline->setActTimeVisit();
|
||||
|
||||
$oUser = $this->getUser();
|
||||
if ($oUser && strtolower($oUser->getFieldData('oxrights')) == 'malladmin')
|
||||
{
|
||||
if ($oUser && strtolower($oUser->getFieldData('oxrights')) == 'malladmin') {
|
||||
/** @var oxview $oActView */
|
||||
$oActView = $this->getParent();
|
||||
$oActView->addTplParam('aUsersOnline', $oUsersOnline->getUserCount());
|
||||
@ -48,4 +46,4 @@ class d3_oxcmp_utils_usersonline extends d3_oxcmp_utils_usersonline_parent
|
||||
|
||||
return $sRet;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -22,14 +22,14 @@ class d3usersonline_update extends d3install_updatebase
|
||||
{
|
||||
public $sModKey = 'd3usersonline';
|
||||
public $sModName = 'Users Online';
|
||||
public $sModVersion = '2.0.0.2';
|
||||
public $sModRevision = '28';
|
||||
public $sBaseConf = 'Z5yR2NUcFoyV3BHTVFTZDZ5bFByMmtkTDh5YjFMUW5JV0QrZ0dTeEliMVJTREFSTzRkRTAySEJzblEwU
|
||||
GFXMjNMM0RCQXA0NzNEaXA2anJ0Y2dlRWNNM3l3UlB2M0ZoQlFwMkhsM1QwVjh1K0hmdTMzU0wyT3lKe
|
||||
k84UTQ2d0phQzlRcWdxOUZQNzIyVFlERHdUZm5YeENPanFlVTUxclJnZWtaTENOKzhuYkpvQ1N3eDBYO
|
||||
EEvRnFqQ2FzUXVCQnQ2QkJVOXBYSVNLOExnK3RTb2c1OTdzaE55N0d6ZnM5VFd4TE1oR09oZ0ZoK0RhL
|
||||
29tZ0pLWGhDWFpXK1ZncXpPOTZ2OTBSdEQzdnYyUTduZy96N1JYeGlrQ3JvNlplVEg1aHVEY2hJRTFha
|
||||
k09';
|
||||
public $sModVersion = '2.0.1.0';
|
||||
public $sModRevision = '39';
|
||||
public $sBaseConf = 'esySjhjTE5Va2RmRXhYWHlFVTluQkhzUGMzZEhWWUtLS2ZyYm5Fb1BCQWlONjBiRmtnMmZjaVpqbWF3M
|
||||
DRzRDRKRTlRbktRTmkwMmNiTjd5bTRHd2pjZkI3MGx5bGdGZjJyNU1mbFM2NzQ4bW5FWGEraUg1QWlMd
|
||||
kZqSHFkNkdPZ05XbzdNa0tlWGNmUWNIOVFaMEdvZzROU05TZEp3UFdPRDZRdHdPbFZYdFZrcmR5UHRDV
|
||||
GdVVTV3Y1RCd1JRMGJuZ1JHVWpxYWM4Q0o1czkvakk4SE8zdngwaWI4aFRPQ0ZPa2JKVHRGWTlpTnJBM
|
||||
WwzTnVBSUtDdVA2cTgzRzJhODRXTFZDeUJLaUpSNzQ5OThmVFF6eldYbEI2bUVRSlBNRGtXdWg2T0VwS
|
||||
Ws9';
|
||||
public $sRequirements = '';
|
||||
public $sBaseValue = '';
|
||||
|
||||
@ -46,40 +46,48 @@ k09';
|
||||
'do' => 'fixFields'),
|
||||
array('check' => 'checkIndizes',
|
||||
'do' => 'fixIndizes'),
|
||||
array('check' => 'hasOldModuleFiles',
|
||||
'do' => 'deleteOldModuleFiles'),
|
||||
array('check' => 'hasUnregisteredFiles',
|
||||
'do' => 'showUnregisteredFiles'),
|
||||
array('check' => 'checkModCfgSameRevision',
|
||||
'do' => 'updateModCfgSameRevision'),
|
||||
);
|
||||
|
||||
public $aOldModuleFiles = array(
|
||||
'd3/d3usersonline/models/d3usersonline_update.php',
|
||||
);
|
||||
|
||||
public $aFields = array(
|
||||
'OXID' => array(
|
||||
'sTableName' => 'd3usersonline',
|
||||
'sFieldName' => 'OXID',
|
||||
'sType' => 'char(32)',
|
||||
'blNull' => FALSE,
|
||||
'sDefault' => FALSE,
|
||||
'blNull' => false,
|
||||
'sDefault' => false,
|
||||
'sComment' => '',
|
||||
'sExtra' => '',
|
||||
'blMultilang' => FALSE,
|
||||
'blMultilang' => false,
|
||||
),
|
||||
'TIMEVISIT' => array(
|
||||
'sTableName' => 'd3usersonline',
|
||||
'sFieldName' => 'TIMEVISIT',
|
||||
'sType' => 'INT(11)',
|
||||
'blNull' => FALSE,
|
||||
'blNull' => false,
|
||||
'sDefault' => '0',
|
||||
'sComment' => '',
|
||||
'sExtra' => '',
|
||||
'blMultilang' => FALSE,
|
||||
'blMultilang' => false,
|
||||
),
|
||||
'OXCLASS' => array(
|
||||
'sTableName' => 'd3usersonline',
|
||||
'sFieldName' => 'OXCLASS',
|
||||
'sType' => 'VARCHAR(32)',
|
||||
'blNull' => FALSE,
|
||||
'sDefault' => FALSE,
|
||||
'blNull' => false,
|
||||
'sDefault' => false,
|
||||
'sComment' => '',
|
||||
'sExtra' => '',
|
||||
'blMultilang' => FALSE,
|
||||
'blMultilang' => false,
|
||||
),
|
||||
);
|
||||
|
||||
@ -106,25 +114,25 @@ k09';
|
||||
'sTableName' => 'd3usersonline',
|
||||
'mOldFieldNames' => array('id', 'ID'), // is case sensitive
|
||||
'sFieldName' => 'OXID',
|
||||
'blMultilang' => FALSE,
|
||||
'blMultilang' => false,
|
||||
),
|
||||
'VISITOR' => array(
|
||||
'sTableName' => 'd3usersonline',
|
||||
'mOldFieldNames' => array('visitor'), // is case sensitive
|
||||
'sFieldName' => 'VISITOR',
|
||||
'blMultilang' => FALSE,
|
||||
'blMultilang' => false,
|
||||
),
|
||||
'TIMEVISIT' => array(
|
||||
'sTableName' => 'd3usersonline',
|
||||
'mOldFieldNames' => array('timevisit'), // is case sensitive
|
||||
'sFieldName' => 'TIMEVISIT',
|
||||
'blMultilang' => FALSE,
|
||||
'blMultilang' => false,
|
||||
),
|
||||
'OXCLASS' => array(
|
||||
'sTableName' => 'd3usersonline',
|
||||
'mOldFieldNames' => array('oxclass'), // is case sensitive
|
||||
'sFieldName' => 'OXCLASS',
|
||||
'blMultilang' => FALSE,
|
||||
'blMultilang' => false,
|
||||
),
|
||||
);
|
||||
|
||||
@ -132,14 +140,14 @@ k09';
|
||||
'VISITOR' => array(
|
||||
'sTableName' => 'd3usersonline',
|
||||
'sFieldName' => 'VISITOR',
|
||||
'blMultilang' => FALSE,
|
||||
'blMultilang' => false,
|
||||
),
|
||||
);
|
||||
|
||||
protected $_aRefreshMetaModuleIds = array('d3usersonline');
|
||||
|
||||
/**
|
||||
* @return bool TRUE, if table is missing
|
||||
* @return bool true, if table is missing
|
||||
*/
|
||||
public function checkUsersOnlineTableExist()
|
||||
{
|
||||
@ -151,13 +159,10 @@ k09';
|
||||
*/
|
||||
public function updateUsersOnlineTableExist()
|
||||
{
|
||||
$blRet = TRUE;
|
||||
$blRet = true;
|
||||
|
||||
if ($this->checkUsersOnlineTableExist())
|
||||
{
|
||||
$aRet = $this->_addTable('d3usersonline', $this->aFields, $this->aIndizes, 'users online', 'MyISAM');
|
||||
$blRet = $aRet['blRet'];
|
||||
$this->_setActionLog('SQL', $aRet['sql'], __METHOD__);
|
||||
if ($this->checkUsersOnlineTableExist()) {
|
||||
$blRet = $this->_addTable2('d3usersonline', $this->aFields, $this->aIndizes, 'users online', 'MyISAM');
|
||||
}
|
||||
|
||||
return $blRet;
|
||||
@ -168,9 +173,8 @@ k09';
|
||||
*/
|
||||
public function checkModCfgItemExist()
|
||||
{
|
||||
$blRet = FALSE;
|
||||
foreach ($this->_getShopList() as $oShop)
|
||||
{
|
||||
$blRet = false;
|
||||
foreach ($this->getShopList() as $oShop) {
|
||||
/** @var $oShop oxshop */
|
||||
$aWhere = array(
|
||||
'oxmodid' => $this->sModKey,
|
||||
@ -180,8 +184,7 @@ k09';
|
||||
|
||||
$blRet = $this->_checkTableItemNotExist('d3_cfg_mod', $aWhere);
|
||||
|
||||
if ($blRet)
|
||||
{
|
||||
if ($blRet) {
|
||||
return $blRet;
|
||||
}
|
||||
}
|
||||
@ -194,12 +197,10 @@ k09';
|
||||
*/
|
||||
public function updateModCfgItemExist()
|
||||
{
|
||||
$blRet = FALSE;
|
||||
$blRet = false;
|
||||
|
||||
if ($this->checkModCfgItemExist())
|
||||
{
|
||||
foreach ($this->_getShopList() as $oShop)
|
||||
{
|
||||
if ($this->checkModCfgItemExist()) {
|
||||
foreach ($this->getShopList() as $oShop) {
|
||||
/** @var $oShop oxshop */
|
||||
$aWhere = array(
|
||||
'oxmodid' => $this->sModKey,
|
||||
@ -207,86 +208,98 @@ k09';
|
||||
'oxnewrevision' => $this->sModRevision,
|
||||
);
|
||||
|
||||
if ($this->_checkTableItemNotExist('d3_cfg_mod', $aWhere))
|
||||
{
|
||||
if ($this->_checkTableItemNotExist('d3_cfg_mod', $aWhere)) {
|
||||
// update don't use this property
|
||||
unset($aWhere['oxnewrevision']);
|
||||
|
||||
$aInsertFields = array(
|
||||
'OXID' => array (
|
||||
'content' => "md5('" . $this->sModKey . " " . $oShop->getId() . " de')",
|
||||
'force_update' => TRUE,
|
||||
'use_quote' => FALSE,
|
||||
'force_update' => true,
|
||||
'use_quote' => false,
|
||||
),
|
||||
'OXSHOPID' => array (
|
||||
'content' => $oShop->getId(),
|
||||
'force_update' => TRUE,
|
||||
'use_quote' => TRUE,
|
||||
'force_update' => true,
|
||||
'use_quote' => true,
|
||||
),
|
||||
'OXMODID' => array (
|
||||
'content' => $this->sModKey,
|
||||
'force_update' => TRUE,
|
||||
'use_quote' => TRUE,
|
||||
'force_update' => true,
|
||||
'use_quote' => true,
|
||||
),
|
||||
'OXNAME' => array (
|
||||
'content' => $this->sModName,
|
||||
'force_update' => TRUE,
|
||||
'use_quote' => TRUE,
|
||||
'force_update' => true,
|
||||
'use_quote' => true,
|
||||
),
|
||||
'OXACTIVE' => array (
|
||||
'content' => "0",
|
||||
'force_update' => FALSE,
|
||||
'use_quote' => FALSE,
|
||||
'force_update' => false,
|
||||
'use_quote' => false,
|
||||
),
|
||||
'OXBASECONFIG' => array (
|
||||
'content' => $this->sBaseConf,
|
||||
'force_update' => TRUE,
|
||||
'use_quote' => TRUE,
|
||||
'force_update' => true,
|
||||
'use_quote' => true,
|
||||
),
|
||||
'OXSERIAL' => array (
|
||||
'content' => "",
|
||||
'force_update' => FALSE,
|
||||
'use_quote' => TRUE,
|
||||
'force_update' => false,
|
||||
'use_quote' => true,
|
||||
),
|
||||
'OXINSTALLDATE' => array (
|
||||
'content' => "NOW()",
|
||||
'force_update' => TRUE,
|
||||
'use_quote' => FALSE,
|
||||
'force_update' => true,
|
||||
'use_quote' => false,
|
||||
),
|
||||
'OXVERSION' => array (
|
||||
'content' => $this->sModVersion,
|
||||
'force_update' => TRUE,
|
||||
'use_quote' => TRUE,
|
||||
'force_update' => true,
|
||||
'use_quote' => true,
|
||||
),
|
||||
'OXSHOPVERSION' => array (
|
||||
'content' => oxRegistry::getConfig()->getEdition(),
|
||||
'force_update' => TRUE,
|
||||
'use_quote' => TRUE,
|
||||
'force_update' => true,
|
||||
'use_quote' => true,
|
||||
),
|
||||
'OXREQUIREMENTS' => array (
|
||||
'content' => $this->sRequirements,
|
||||
'force_update' => TRUE,
|
||||
'use_quote' => TRUE,
|
||||
'force_update' => true,
|
||||
'use_quote' => true,
|
||||
),
|
||||
'OXVALUE' => array(
|
||||
'content' => $this->sBaseValue,
|
||||
'force_update' => FALSE,
|
||||
'use_quote' => TRUE,
|
||||
'force_update' => false,
|
||||
'use_quote' => true,
|
||||
),
|
||||
'OXNEWREVISION' => array(
|
||||
'content' => $this->sModRevision,
|
||||
'force_update' => TRUE,
|
||||
'use_quote' => TRUE,
|
||||
'force_update' => true,
|
||||
'use_quote' => true,
|
||||
)
|
||||
);
|
||||
$aRet = $this->_updateTableItem('d3_cfg_mod', $aInsertFields, $aWhere);
|
||||
$blRet = $aRet['blRet'];
|
||||
|
||||
$this->_setActionLog('SQL', $aRet['sql'], __METHOD__);
|
||||
$this->_setUpdateBreak(FALSE);
|
||||
$blRet = $this->_updateTableItem2('d3_cfg_mod', $aInsertFields, $aWhere);
|
||||
$this->setUpdateBreak(false);
|
||||
}
|
||||
}
|
||||
}
|
||||
return $blRet;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @return bool
|
||||
*/
|
||||
public function hasUnregisteredFiles()
|
||||
{
|
||||
return $this->_hasUnregisteredFiles($this->sModKey, array('d3FileRegister', 'blocks'));
|
||||
}
|
||||
|
||||
/**
|
||||
* @return bool
|
||||
*/
|
||||
public function showUnregisteredFiles()
|
||||
{
|
||||
return $this->_showUnregisteredFiles($this->sModKey, array('d3FileRegister', 'blocks'));
|
||||
}
|
||||
}
|
@ -0,0 +1,38 @@
|
||||
<?php
|
||||
/**
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
* @author D3 Data Development - Daniel Seifert <support@shopmodule.com>
|
||||
* @link http://www.oxidmodule.com
|
||||
*/
|
||||
|
||||
$sLangName = 'Deutsch';
|
||||
$iLangNr = 0;
|
||||
// -------------------------------
|
||||
// RESOURCE IDENTITFIER = STRING
|
||||
// -------------------------------
|
||||
$aLang = array(
|
||||
'charset' => 'ISO-8859-15',
|
||||
|
||||
'd3mxusersonline' => 'Benutzer online',
|
||||
'd3mxusersonline_settings' => 'Einstellungen',
|
||||
'd3tbclussersonline_settings_main' => 'Grundeinstellungen',
|
||||
'd3mxusersonline_analysis' => 'Auswertungen',
|
||||
'd3tbclusersonline_currvisitors' => 'aktuelle Besucher',
|
||||
'D3USERSONLINE_NOTACTIVE' => 'Modul ist nicht aktiv',
|
||||
'D3_USERSONLINE_USERSONLINE' => 'Benutzer online',
|
||||
'D3_USERSONLINE_USER' => 'Benutzer',
|
||||
'D3_USERSONLINE_USERS' => 'Benutzer',
|
||||
'D3_USERSONLINE_ALL' => 'gesamt',
|
||||
);
|
@ -0,0 +1,38 @@
|
||||
<?php
|
||||
/**
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
* @author D3 Data Development - Daniel Seifert <support@shopmodule.com>
|
||||
* @link http://www.oxidmodule.com
|
||||
*/
|
||||
|
||||
$sLangName = 'Deutsch';
|
||||
$iLangNr = 0;
|
||||
// -------------------------------
|
||||
// RESOURCE IDENTITFIER = STRING
|
||||
// -------------------------------
|
||||
$aLang = array(
|
||||
'charset' => 'ISO-8859-15',
|
||||
|
||||
'd3mxusersonline' => 'Users Online',
|
||||
'd3mxusersonline_settings' => 'Settings',
|
||||
'd3tbclussersonline_settings_main' => 'Main Settings',
|
||||
'd3mxusersonline_analysis' => 'Analysis',
|
||||
'd3tbclusersonline_currvisitors' => 'current visitors',
|
||||
'D3USERSONLINE_NOTACTIVE' => "Module isn't active",
|
||||
'D3_USERSONLINE_USERSONLINE' => 'Users online',
|
||||
'D3_USERSONLINE_USER' => 'user',
|
||||
'D3_USERSONLINE_USERS' => 'users',
|
||||
'D3_USERSONLINE_ALL' => 'all',
|
||||
);
|
@ -0,0 +1,154 @@
|
||||
[{include file="headitem.tpl" title="d3tbclussersonline_settings_main"|oxmultilangassign}]
|
||||
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
[{if $updatelist == 1}]
|
||||
UpdateList('[{$oxid}]');
|
||||
[{/if}]
|
||||
|
||||
function UpdateList( sID)
|
||||
{
|
||||
var oSearch = parent.list.document.getElementById("search");
|
||||
oSearch.oxid.value=sID;
|
||||
oSearch.fnc.value='';
|
||||
oSearch.submit();
|
||||
}
|
||||
|
||||
function EditThis( sID)
|
||||
{
|
||||
var oTransfer = document.getElementById("transfer");
|
||||
oTransfer.oxid.value=sID;
|
||||
oTransfer.cl.value='';
|
||||
oTransfer.submit();
|
||||
|
||||
var oSearch = parent.list.document.getElementById("search");
|
||||
oSearch.actedit.value = 0;
|
||||
oSearch.oxid.value=sID;
|
||||
oSearch.submit();
|
||||
}
|
||||
|
||||
function _groupExp(el) {
|
||||
var _cur = el.parentNode;
|
||||
|
||||
if (_cur.className == "exp") _cur.className = "";
|
||||
else _cur.className = "exp";
|
||||
}
|
||||
|
||||
-->
|
||||
</script>
|
||||
|
||||
<style type="text/css">
|
||||
<!--
|
||||
fieldset {
|
||||
border: 1px inset black;
|
||||
background-color: #F0F0F0;
|
||||
}
|
||||
|
||||
legend {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.groupExp dl dt {
|
||||
font-weight: normal;
|
||||
width: 55%;
|
||||
padding-left: 10px;
|
||||
}
|
||||
|
||||
.groupExp.highlighted {
|
||||
background-color: #CD0210;
|
||||
}
|
||||
|
||||
.groupExp.highlighted a.rc b {
|
||||
color: white;
|
||||
}
|
||||
|
||||
.groupExp.highlighted .exp a.rc b {
|
||||
color: black;
|
||||
}
|
||||
|
||||
.groupExp.highlighted .exp {
|
||||
background-color: #F0F0F0;
|
||||
}
|
||||
|
||||
.ext_edittext {
|
||||
padding: 2px;
|
||||
}
|
||||
|
||||
td.edittext {
|
||||
white-space: normal;
|
||||
}
|
||||
|
||||
.confinput {
|
||||
width: 300px;
|
||||
height: 70px;
|
||||
}
|
||||
|
||||
-->
|
||||
</style>
|
||||
|
||||
[{if $readonly}]
|
||||
[{assign var="readonly" value="readonly disabled"}]
|
||||
[{else}]
|
||||
[{assign var="readonly" value=""}]
|
||||
[{/if}]
|
||||
|
||||
<form name="transfer" id="transfer" action="[{$oViewConf->getSelfLink()}]" method="post">
|
||||
[{$oViewConf->getHiddenSid()}]
|
||||
<input type="hidden" name="oxid" value="[{$oxid}]">
|
||||
<input type="hidden" name="cl" value="[{$oViewConf->getActiveClassName()}]">
|
||||
<input type="hidden" name="actshop" value="[{$shop->id}]">
|
||||
<input type="hidden" name="editlanguage" value="[{$editlanguage}]">
|
||||
</form>
|
||||
|
||||
<form name="myedit" id="myedit" action="[{$oViewConf->getSelfLink()}]" method="post">
|
||||
[{$oViewConf->getHiddenSid()}]
|
||||
<input type="hidden" name="cl" value="[{$oViewConf->getActiveClassName()}]">
|
||||
<input type="hidden" name="fnc" value="save">
|
||||
<input type="hidden" name="oxid" value="[{$oxid}]">
|
||||
<input type="hidden" name="editval[oxid]" value="[{$oxid}]">
|
||||
|
||||
<table border="0" width="98%">
|
||||
<tr>
|
||||
<td valign="top" class="edittext">
|
||||
|
||||
[{include file="d3_cfg_mod_active.tpl"}]
|
||||
|
||||
[{if $oView->getValueStatus() == 'error'}]
|
||||
<hr>
|
||||
<b>[{oxmultilang ident="D3_CFG_MOD_GENERAL_NOCONFIG_DESC"}]</b>
|
||||
<br>
|
||||
<br>
|
||||
<span class="d3modcfg_btn fixed icon status_attention">
|
||||
<input type="submit" value="[{oxmultilang ident="D3_CFG_MOD_GENERAL_NOCONFIG_BTN"}]">
|
||||
<span></span>
|
||||
</span>
|
||||
[{else}]
|
||||
<table width="100%">
|
||||
<tr>
|
||||
<td class="edittext ext_edittext" align="left">
|
||||
<br>
|
||||
<span class="d3modcfg_btn icon status_ok">
|
||||
<input type="submit" name="save" value="[{oxmultilang ident="D3_INQUIRY_MAIN_SAVE"}]">
|
||||
<span></span>
|
||||
</span>
|
||||
<br><br>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
[{/if}]
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
|
||||
[{include file="d3_cfg_mod_inc.tpl"}]
|
||||
|
||||
<script type="text/javascript">
|
||||
if (parent.parent) {
|
||||
parent.parent.sShopTitle = "[{$actshopobj->oxshops__oxname->getRawValue()|oxaddslashes}]";
|
||||
parent.parent.sMenuItem = "[{oxmultilang ident="d3mxusersonline"}]";
|
||||
parent.parent.sMenuSubItem = "[{oxmultilang ident="d3mxusersonline_settings"}]";
|
||||
parent.parent.sWorkArea = "[{$_act}]";
|
||||
parent.parent.setTitle();
|
||||
}
|
||||
</script>
|
@ -0,0 +1,161 @@
|
||||
[{include file="headitem.tpl" title="d3tbclussersonline_settings_main"|oxmultilangassign}]
|
||||
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
[{if $updatelist == 1}]
|
||||
UpdateList('[{$oxid}]');
|
||||
[{/if}]
|
||||
|
||||
function UpdateList( sID)
|
||||
{
|
||||
var oSearch = parent.list.document.getElementById("search");
|
||||
oSearch.oxid.value=sID;
|
||||
oSearch.fnc.value='';
|
||||
oSearch.submit();
|
||||
}
|
||||
|
||||
function EditThis( sID)
|
||||
{
|
||||
var oTransfer = document.getElementById("transfer");
|
||||
oTransfer.oxid.value=sID;
|
||||
oTransfer.cl.value='';
|
||||
oTransfer.submit();
|
||||
|
||||
var oSearch = parent.list.document.getElementById("search");
|
||||
oSearch.actedit.value = 0;
|
||||
oSearch.oxid.value=sID;
|
||||
oSearch.submit();
|
||||
}
|
||||
|
||||
function _groupExp(el) {
|
||||
var _cur = el.parentNode;
|
||||
|
||||
if (_cur.className == "exp") _cur.className = "";
|
||||
else _cur.className = "exp";
|
||||
}
|
||||
|
||||
-->
|
||||
</script>
|
||||
|
||||
<style type="text/css">
|
||||
<!--
|
||||
fieldset {
|
||||
border: 1px inset black;
|
||||
background-color: #F0F0F0;
|
||||
}
|
||||
|
||||
legend {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.groupExp dl dt {
|
||||
font-weight: normal;
|
||||
width: 55%;
|
||||
padding-left: 10px;
|
||||
}
|
||||
|
||||
.groupExp.highlighted {
|
||||
background-color: #CD0210;
|
||||
}
|
||||
|
||||
.groupExp.highlighted a.rc b {
|
||||
color: white;
|
||||
}
|
||||
|
||||
.groupExp.highlighted .exp a.rc b {
|
||||
color: black;
|
||||
}
|
||||
|
||||
.groupExp.highlighted .exp {
|
||||
background-color: #F0F0F0;
|
||||
}
|
||||
|
||||
.ext_edittext {
|
||||
padding: 2px;
|
||||
}
|
||||
|
||||
td.edittext {
|
||||
white-space: normal;
|
||||
}
|
||||
|
||||
.confinput {
|
||||
width: 300px;
|
||||
height: 70px;
|
||||
}
|
||||
|
||||
-->
|
||||
</style>
|
||||
|
||||
[{if $readonly}]
|
||||
[{assign var="readonly" value="readonly disabled"}]
|
||||
[{else}]
|
||||
[{assign var="readonly" value=""}]
|
||||
[{/if}]
|
||||
|
||||
<form name="transfer" id="transfer" action="[{$oViewConf->getSelfLink()}]" method="post">
|
||||
[{$oViewConf->getHiddenSid()}]
|
||||
<input type="hidden" name="oxid" value="[{$oxid}]">
|
||||
<input type="hidden" name="cl" value="[{$oViewConf->getActiveClassName()}]">
|
||||
<input type="hidden" name="actshop" value="[{$shop->id}]">
|
||||
<input type="hidden" name="editlanguage" value="[{$editlanguage}]">
|
||||
</form>
|
||||
|
||||
[{d3modcfgcheck modid="d3usersonline"}][{/d3modcfgcheck}]
|
||||
[{if $mod_d3usersonline}]
|
||||
[{assign var="aUsersOnline" value=$oView->getUserCount()}]
|
||||
<h3>[{oxmultilang ident="D3_USERSONLINE_USERSONLINE"}]</h3>
|
||||
<div class="content">
|
||||
<table style="border-style: none; width: 100%;">
|
||||
<tr>
|
||||
<td style="border-bottom: 1px solid silver;">
|
||||
[{oxmultilang ident="D3_USERSONLINE_ALL"}]
|
||||
</td>
|
||||
<td style="border-bottom: 1px solid silver; text-align: right; font-weight: bold;">
|
||||
[{$aUsersOnline.all}]
|
||||
</td>
|
||||
<td style="border-bottom: 1px solid silver; text-align: left;">
|
||||
[{if $aUsersOnline.all == 1}]
|
||||
[{oxmultilang ident="D3_USERSONLINE_USER"}]
|
||||
[{else}]
|
||||
[{oxmultilang ident="D3_USERSONLINE_USERS"}]
|
||||
[{/if}]
|
||||
</td>
|
||||
</tr>
|
||||
[{foreach from=$aUsersOnline.classes item="aClassUser"}]
|
||||
<tr>
|
||||
<td>
|
||||
[{if $aClassUser->classname}]
|
||||
[{$aClassUser->classname|ucfirst}]:
|
||||
[{else}]
|
||||
undefined:
|
||||
[{/if}]
|
||||
</td>
|
||||
<td style="text-align: right; font-weight: bold;">
|
||||
[{$aClassUser->counter}]
|
||||
</td>
|
||||
<td style="text-align: left;">
|
||||
[{if $aClassUser->counter == 1}]
|
||||
[{oxmultilang ident="D3_USERSONLINE_USER"}]
|
||||
[{else}]
|
||||
[{oxmultilang ident="D3_USERSONLINE_USERS"}]
|
||||
[{/if}]
|
||||
</td>
|
||||
</tr>
|
||||
[{/foreach}]
|
||||
</table>
|
||||
</div>
|
||||
[{else}]
|
||||
[{oxmultilang ident="D3USERSONLINE_NOTACTIVE"}]
|
||||
[{/if}]
|
||||
|
||||
[{include file="d3_cfg_mod_inc.tpl"}]
|
||||
|
||||
<script type="text/javascript">
|
||||
if (parent.parent) {
|
||||
parent.parent.sShopTitle = "[{$actshopobj->oxshops__oxname->getRawValue()|oxaddslashes}]";
|
||||
parent.parent.sMenuItem = "[{oxmultilang ident="d3mxusersonline"}]";
|
||||
parent.parent.sMenuSubItem = "[{oxmultilang ident="d3mxusersonline_settings"}]";
|
||||
parent.parent.sWorkArea = "[{$_act}]";
|
||||
parent.parent.setTitle();
|
||||
}
|
||||
</script>
|
@ -1,4 +1,5 @@
|
||||
[{d3modcfgcheck modid="d3usersonline"}]
|
||||
[{d3modcfgcheck modid="d3usersonline"}][{/d3modcfgcheck}]
|
||||
[{if $mod_d3usersonline}]
|
||||
[{if $oxcmp_user && $oxcmp_user->getFieldData('oxrights') == 'malladmin'}]
|
||||
<div class="box">
|
||||
<h3>[{oxmultilang ident="D3_USERSONLINE_USERSONLINE"}]</h3>
|
||||
@ -44,6 +45,6 @@
|
||||
</div>
|
||||
</div>
|
||||
[{/if}]
|
||||
[{/d3modcfgcheck}]
|
||||
[{/if}]
|
||||
|
||||
[{$smarty.block.parent}]
|
Binary file not shown.
2107
setup+doku/Precheck/d3precheck.php
Normal file
2107
setup+doku/Precheck/d3precheck.php
Normal file
File diff suppressed because it is too large
Load Diff
@ -1,3 +1,8 @@
|
||||
=> 2.0.1.0
|
||||
- Statistik steht auch im Adminbereich zur Verfügung
|
||||
- automatische Installation aktualisiert
|
||||
- Modulstruktur angepasst
|
||||
|
||||
=> 2.0.0.2
|
||||
- Datenbankstruktur in automatischer Installation korrigiert
|
||||
|
||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Binary file not shown.
Loading…
Reference in New Issue
Block a user