add fallback mode, if IP is unknown
This commit is contained in:
parent
7d05c18cd0
commit
cb34aa735e
@ -36,6 +36,7 @@ $aLang = array(
|
|||||||
'D3_GEOIP_SET_OPTIONS_CHANGECURR' => 'Währung wechseln, wenn eingestellt',
|
'D3_GEOIP_SET_OPTIONS_CHANGECURR' => 'Währung wechseln, wenn eingestellt',
|
||||||
'D3_GEOIP_SET_OPTIONS_CHANGELANG' => 'Sprache wechseln, wenn eingestellt',
|
'D3_GEOIP_SET_OPTIONS_CHANGELANG' => 'Sprache wechseln, wenn eingestellt',
|
||||||
'D3_GEOIP_SET_OPTIONS_CHANGEURL' => 'URL wechseln, wenn eingestellt',
|
'D3_GEOIP_SET_OPTIONS_CHANGEURL' => 'URL wechseln, wenn eingestellt',
|
||||||
|
'D3_GEOIP_SET_OPTIONS_NOCOUNTRY' => 'Shop verwendet die Einstellung dieses Landes, wenn IP nicht zuzuordnen ist',
|
||||||
'D3_GEOIP_SET_IP' => 'IP-Einstellungen',
|
'D3_GEOIP_SET_IP' => 'IP-Einstellungen',
|
||||||
'D3_GEOIP_SET_IP_TESTIP' => 'statt Kunden-IP immer diese IP-Adresse verwenden',
|
'D3_GEOIP_SET_IP_TESTIP' => 'statt Kunden-IP immer diese IP-Adresse verwenden',
|
||||||
'D3_GEOIP_SET_IP_CHECKIP' => 'diese IP-Adresse prüfen',
|
'D3_GEOIP_SET_IP_CHECKIP' => 'diese IP-Adresse prüfen',
|
||||||
|
@ -252,6 +252,22 @@ td.edittext {
|
|||||||
</dd>
|
</dd>
|
||||||
<div class="spacer"></div>
|
<div class="spacer"></div>
|
||||||
</dl>
|
</dl>
|
||||||
|
<dl>
|
||||||
|
<dt>
|
||||||
|
[{oxmultilang ident="D3_GEOIP_SET_OPTIONS_NOCOUNTRY"}]
|
||||||
|
<input type="hidden" name="value[blUseFallback]" value="0">
|
||||||
|
<input class="edittext ext_edittext" type="checkbox" name="value[blUseFallback]" value='1' [{if $edit->getValue('blUseFallback') == 1}]checked[{/if}]>
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
<select size="5" name="value[sFallbackCountryId]">
|
||||||
|
[{foreach from=$oView->getCountryList() item="oCountry"}]
|
||||||
|
<option value="[{$oCountry->getId()}]" [{if $edit->getValue('sFallbackCountryId') == $oCountry->getId()}] selected[{/if}]>[{$oCountry->oxcountry__oxtitle->value}]</option>
|
||||||
|
[{/foreach}]
|
||||||
|
</select>
|
||||||
|
[{ oxinputhelp ident="D3_GEOIP_SET_OPTIONS_NOCOUNTRY_DESC" }]
|
||||||
|
</dd>
|
||||||
|
<div class="spacer"></div>
|
||||||
|
</dl>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
@ -36,6 +36,7 @@ $aLang = array(
|
|||||||
'D3_GEOIP_SET_OPTIONS_CHANGECURR' => 'Währung wechseln, wenn eingestellt',
|
'D3_GEOIP_SET_OPTIONS_CHANGECURR' => 'Währung wechseln, wenn eingestellt',
|
||||||
'D3_GEOIP_SET_OPTIONS_CHANGELANG' => 'Sprache wechseln, wenn eingestellt',
|
'D3_GEOIP_SET_OPTIONS_CHANGELANG' => 'Sprache wechseln, wenn eingestellt',
|
||||||
'D3_GEOIP_SET_OPTIONS_CHANGEURL' => 'URL wechseln, wenn eingestellt',
|
'D3_GEOIP_SET_OPTIONS_CHANGEURL' => 'URL wechseln, wenn eingestellt',
|
||||||
|
'D3_GEOIP_SET_OPTIONS_NOCOUNTRY' => 'Shop verwendet die Einstellung dieses Landes, wenn IP nicht zuzuordnen ist',
|
||||||
'D3_GEOIP_SET_IP' => 'IP-Einstellungen',
|
'D3_GEOIP_SET_IP' => 'IP-Einstellungen',
|
||||||
'D3_GEOIP_SET_IP_TESTIP' => 'statt Kunden-IP immer diese IP-Adresse verwenden',
|
'D3_GEOIP_SET_IP_TESTIP' => 'statt Kunden-IP immer diese IP-Adresse verwenden',
|
||||||
'D3_GEOIP_SET_IP_CHECKIP' => 'diese IP-Adresse prüfen',
|
'D3_GEOIP_SET_IP_CHECKIP' => 'diese IP-Adresse prüfen',
|
||||||
|
@ -252,6 +252,22 @@ td.edittext {
|
|||||||
</dd>
|
</dd>
|
||||||
<div class="spacer"></div>
|
<div class="spacer"></div>
|
||||||
</dl>
|
</dl>
|
||||||
|
<dl>
|
||||||
|
<dt>
|
||||||
|
[{oxmultilang ident="D3_GEOIP_SET_OPTIONS_NOCOUNTRY"}]
|
||||||
|
<input type="hidden" name="value[blUseFallback]" value="0">
|
||||||
|
<input class="edittext ext_edittext" type="checkbox" name="value[blUseFallback]" value='1' [{if $edit->getValue('blUseFallback') == 1}]checked[{/if}]>
|
||||||
|
</dt>
|
||||||
|
<dd>
|
||||||
|
<select size="5" name="value[sFallbackCountryId]">
|
||||||
|
[{foreach from=$oView->getCountryList() item="oCountry"}]
|
||||||
|
<option value="[{$oCountry->getId()}]" [{if $edit->getValue('sFallbackCountryId') == $oCountry->getId()}] selected[{/if}]>[{$oCountry->oxcountry__oxtitle->value}]</option>
|
||||||
|
[{/foreach}]
|
||||||
|
</select>
|
||||||
|
[{ oxinputhelp ident="D3_GEOIP_SET_OPTIONS_NOCOUNTRY_DESC" }]
|
||||||
|
</dd>
|
||||||
|
<div class="spacer"></div>
|
||||||
|
</dl>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
@ -31,4 +31,19 @@ class d3_cfg_geoipset_main extends d3_cfg_mod_main
|
|||||||
|
|
||||||
return $sTitle;
|
return $sTitle;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function getCountryList()
|
||||||
|
{
|
||||||
|
$oCountryList = oxNew('oxcountrylist');
|
||||||
|
if ($oCountryList->getBaseObject()->isMultilang())
|
||||||
|
{
|
||||||
|
$oCountryList->getBaseObject()->setLanguage(oxLang::getInstance()->getTplLanguage());
|
||||||
|
}
|
||||||
|
$oListObject = $oCountryList->getBaseObject();
|
||||||
|
$sFieldList = $oListObject->getSelectFields();
|
||||||
|
$sQ = "select $sFieldList from " . $oListObject->getViewName();
|
||||||
|
$oCountryList->selectString($sQ);
|
||||||
|
|
||||||
|
return $oCountryList;
|
||||||
|
}
|
||||||
}
|
}
|
@ -1,51 +1,64 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
|
// @copyright © D³ Data Development
|
||||||
|
//
|
||||||
|
// 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 key
|
||||||
|
// is a violation of the license agreement and will be prosecuted by
|
||||||
|
// civil and criminal law.
|
||||||
|
//
|
||||||
|
// http://www.shopmodule.com
|
||||||
|
|
||||||
class d3GeoIP extends oxI18n
|
// AUTOR Daniel Seifert <ds@shopmodule.com>
|
||||||
{
|
|
||||||
/**
|
class d3GeoIP extends oxI18n
|
||||||
* Current class name
|
{
|
||||||
*
|
/**
|
||||||
* @var string
|
* Current class name
|
||||||
*/
|
*
|
||||||
protected $_sClassName = 'd3geoip';
|
* @var string
|
||||||
|
*/
|
||||||
|
protected $_sClassName = 'd3geoip';
|
||||||
|
|
||||||
private $_sModId = 'd3_geoip';
|
private $_sModId = 'd3_geoip';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class constructor, initiates parent constructor (parent::oxI18n()).
|
* Class constructor, initiates parent constructor (parent::oxI18n()).
|
||||||
*
|
*
|
||||||
* @return null
|
* @return null
|
||||||
*/
|
*/
|
||||||
public function __construct()
|
public function __construct()
|
||||||
{
|
{
|
||||||
parent::__construct();
|
parent::__construct();
|
||||||
$this->init('d3geoip');
|
$this->init('d3geoip');
|
||||||
}
|
}
|
||||||
|
|
||||||
public function getUserLocationCountryObject($sIP = false)
|
public function getUserLocationCountryObject($sIP = false)
|
||||||
{
|
{
|
||||||
if (!$this->oCountry)
|
if (!$this->oCountry)
|
||||||
{
|
{
|
||||||
if (!$sIP)
|
if (!$sIP)
|
||||||
$sIP = $this->getIP();
|
$sIP = $this->getIP();
|
||||||
|
|
||||||
$iIPNum = $this->_getNumIp($sIP);
|
$iIPNum = $this->_getNumIp($sIP);
|
||||||
$sISOAlpha = $this->LoadByIPNum($iIPNum);
|
$sISOAlpha = $this->LoadByIPNum($iIPNum);
|
||||||
|
|
||||||
if (!$sISOAlpha)
|
if (!$sISOAlpha)
|
||||||
{
|
{
|
||||||
$this->_getLog()->setLog('error', __CLASS__, __FUNCTION__, __LINE__, 'get ISO by IP failed', $sIP);
|
$this->_getLog()->setLog('error', __CLASS__, __FUNCTION__, __LINE__, 'get ISO by IP failed', $sIP);
|
||||||
$this->oCountry = oxNew('oxcountry');
|
$this->oCountry = $this->getCountryFallBackObject();
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$this->_getLog()->setLog('info', __CLASS__, __FUNCTION__, __LINE__, 'get ISO by IP', $sIP." => ".$sISOAlpha);
|
$this->_getLog()->setLog('info', __CLASS__, __FUNCTION__, __LINE__, 'get ISO by IP', $sIP." => ".$sISOAlpha);
|
||||||
$this->oCountry = $this->getCountryObject($sISOAlpha);
|
$this->oCountry = $this->getCountryObject($sISOAlpha);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return $this->oCountry;
|
return $this->oCountry;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function getIP()
|
public function getIP()
|
||||||
{
|
{
|
||||||
@ -54,108 +67,120 @@ class d3GeoIP extends oxI18n
|
|||||||
else
|
else
|
||||||
return $_SERVER['REMOTE_ADDR'];
|
return $_SERVER['REMOTE_ADDR'];
|
||||||
}
|
}
|
||||||
|
|
||||||
protected function _getNumIp($sIP)
|
protected function _getNumIp($sIP)
|
||||||
|
{
|
||||||
|
$aIP = explode('.',$sIP);
|
||||||
|
$iIP = ($aIP[0] * 16777216) + ($aIP[1] * 65536) + ($aIP[2] * 256) + ($aIP[3] * 1);
|
||||||
|
return $iIP;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function LoadByIPNum($iIPNum)
|
||||||
|
{
|
||||||
|
$sSelect = "SELECT d3iso FROM ".$this->_sClassName." WHERE d3startipnum <= '$iIPNum' AND d3endipnum >= '$iIPNum'";
|
||||||
|
return oxDb::getDb()->getOne($sSelect);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getCountryObject($sISOAlpha)
|
||||||
|
{
|
||||||
|
$oCountry = oxNew('oxcountry');
|
||||||
|
$sSelect = "SELECT oxid FROM ".$oCountry->getViewName()." WHERE OXISOALPHA2 = '".$sISOAlpha."' AND OXACTIVE = '1'";
|
||||||
|
$oCountry->load(oxDb::getDb()->getOne($sSelect));
|
||||||
|
|
||||||
|
return $oCountry;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getCountryFallBackObject()
|
||||||
{
|
{
|
||||||
$aIP = explode('.',$sIP);
|
$oCountry = oxNew('oxcountry');
|
||||||
$iIP = ($aIP[0] * 16777216) + ($aIP[1] * 65536) + ($aIP[2] * 256) + ($aIP[3] * 1);
|
|
||||||
return $iIP;
|
if ($this->_getConfig()->getValue('blUseFallback') && $this->_getConfig()->getValue('sFallbackCountryId'))
|
||||||
}
|
{
|
||||||
|
$oCountry->Load($this->_getConfig()->getValue('sFallbackCountryId'));
|
||||||
public function LoadByIPNum($iIPNum)
|
}
|
||||||
{
|
|
||||||
$sSelect = "SELECT d3iso FROM ".$this->_sClassName." WHERE d3startipnum <= '$iIPNum' AND d3endipnum >= '$iIPNum'";
|
|
||||||
return oxDb::getDb()->getOne($sSelect);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getCountryObject($sISOAlpha)
|
|
||||||
{
|
|
||||||
$oCountry = &oxNew('oxcountry');
|
|
||||||
$sSelect = "SELECT oxid FROM ".$oCountry->getViewName()." WHERE OXISOALPHA2 = '".$sISOAlpha."' AND OXACTIVE = '1'";
|
|
||||||
$oCountry->load(oxDb::getDb()->getOne($sSelect));
|
|
||||||
|
|
||||||
return $oCountry;
|
return $oCountry;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
public function setUserCountry()
|
public function setUserCountry()
|
||||||
{
|
{
|
||||||
if (!$this->getUser()) {
|
if (!$this->getUser()) {
|
||||||
$oCountry = $this->getUserLocationCountryObject();
|
$oCountry = $this->getUserLocationCountryObject();
|
||||||
$oUser = &oxNew('oxuser');
|
$oUser = &oxNew('oxuser');
|
||||||
$oUser->oxuser__oxcountryid = oxNew('oxfield');
|
$oUser->oxuser__oxcountryid = oxNew('oxfield');
|
||||||
$oUser->oxuser__oxcountryid->setValue($oCountry->getId());
|
$oUser->oxuser__oxcountryid->setValue($oCountry->getId());
|
||||||
$this->setUser($oUser);
|
$this->setUser($oUser);
|
||||||
}
|
}
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
*/
|
*/
|
||||||
|
|
||||||
public function setCountryLanguage()
|
public function setCountryLanguage()
|
||||||
{
|
{
|
||||||
$this->performURLSwitch();
|
$this->performURLSwitch();
|
||||||
$this->performShopSwitch();
|
$this->performShopSwitch();
|
||||||
|
|
||||||
if (!$this->_getConfig()->getFieldData('oxactive') || !$this->_getConfig()->getValue('blChangeLang'))
|
if (!$this->_getConfig()->getFieldData('oxactive') || !$this->_getConfig()->getValue('blChangeLang'))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
$oCountry = $this->getUserLocationCountryObject();
|
$oCountry = $this->getUserLocationCountryObject();
|
||||||
|
|
||||||
if (!$this->isAdmin() && oxUtils::getInstance()->isSearchEngine() === false && $this->getSession()->getVar('d3isSetLang') === null && $oCountry->getId() && $oCountry->getFieldData('d3geoiplang') > -1)
|
if (!$this->isAdmin() && oxUtils::getInstance()->isSearchEngine() === false && $this->getSession()->getVar('d3isSetLang') === null && $oCountry->getId() && $oCountry->getFieldData('d3geoiplang') > -1)
|
||||||
{
|
{
|
||||||
$this->_getLog()->setLog('info', __CLASS__, __FUNCTION__, __LINE__, 'set language', $this->getIP().' => '.$oCountry->getFieldData('d3geoiplang'));
|
$this->_getLog()->setLog('info', __CLASS__, __FUNCTION__, __LINE__, 'set language', $this->getIP().' => '.$oCountry->getFieldData('d3geoiplang'));
|
||||||
oxLang::getInstance()->setTplLanguage((int) $oCountry->getFieldData('d3geoiplang'));
|
oxLang::getInstance()->setTplLanguage((int) $oCountry->getFieldData('d3geoiplang'));
|
||||||
oxLang::getInstance()->setBaseLanguage((int) $oCountry->getFieldData('d3geoiplang'));
|
oxLang::getInstance()->setBaseLanguage((int) $oCountry->getFieldData('d3geoiplang'));
|
||||||
$this->getSession()->setVar('d3isSetLang', true);
|
$this->getSession()->setVar('d3isSetLang', true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public function setCountryCurrency()
|
public function setCountryCurrency()
|
||||||
{
|
{
|
||||||
if (!$this->_getConfig()->getFieldData('oxactive') || !$this->_getConfig()->getValue('blChangeCurr'))
|
if (!$this->_getConfig()->getFieldData('oxactive') || !$this->_getConfig()->getValue('blChangeCurr'))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
$oCountry = $this->getUserLocationCountryObject();
|
$oCountry = $this->getUserLocationCountryObject();
|
||||||
|
|
||||||
if (!$this->isAdmin() && oxUtils::getInstance()->isSearchEngine() === false && !$this->getSession()->getVar('d3isSetCurr') && $oCountry->getId() && $oCountry->getFieldData('d3geoipcur') > -1)
|
if (!$this->isAdmin() && oxUtils::getInstance()->isSearchEngine() === false && !$this->getSession()->getVar('d3isSetCurr') && $oCountry->getId() && $oCountry->getFieldData('d3geoipcur') > -1)
|
||||||
{
|
{
|
||||||
$this->_getLog()->setLog('info', __CLASS__, __FUNCTION__, __LINE__, 'set currency', $this->getIP().' => '.$oCountry->getFieldData('d3geoipcur'));
|
$this->_getLog()->setLog('info', __CLASS__, __FUNCTION__, __LINE__, 'set currency', $this->getIP().' => '.$oCountry->getFieldData('d3geoipcur'));
|
||||||
$this->getConfig()->setActShopCurrency((int) $oCountry->getFieldData('d3geoipcur'));
|
$this->getConfig()->setActShopCurrency((int) $oCountry->getFieldData('d3geoipcur'));
|
||||||
$this->getSession()->setVar('d3isSetCurr', true);
|
$this->getSession()->setVar('d3isSetCurr', true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public function performShopSwitch()
|
public function performShopSwitch()
|
||||||
{
|
{
|
||||||
if (!$this->_getConfig()->getFieldData('oxactive') || !$this->_getConfig()->getValue('blChangeShop'))
|
if (!$this->_getConfig()->getFieldData('oxactive') || !$this->_getConfig()->getValue('blChangeShop'))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
$oCountry = $this->getUserLocationCountryObject();
|
$oCountry = $this->getUserLocationCountryObject();
|
||||||
|
|
||||||
$iNewShop = $oCountry->getFieldData('d3geoipshop');
|
$iNewShop = $oCountry->getFieldData('d3geoipshop');
|
||||||
|
|
||||||
$aShopLinks = $this->getShopUrls();
|
$aShopLinks = $this->getShopUrls();
|
||||||
|
|
||||||
if (!$this->isAdmin() && oxUtils::getInstance()->isSearchEngine() === false && $oCountry->getId() && $this->getConfig()->isMall() && $iNewShop > -1 && $iNewShop != $this->getConfig()->getShopId())
|
if (!$this->isAdmin() && oxUtils::getInstance()->isSearchEngine() === false && $oCountry->getId() && $this->getConfig()->isMall() && $iNewShop > -1 && $iNewShop != $this->getConfig()->getShopId())
|
||||||
{
|
{
|
||||||
$oNewConf = new oxConfig();
|
$oNewConf = new oxConfig();
|
||||||
$oNewConf->setShopId($iNewShop);
|
$oNewConf->setShopId($iNewShop);
|
||||||
$oNewConf->init();
|
$oNewConf->init();
|
||||||
|
|
||||||
$this->getConfig()->onShopChange();
|
$this->getConfig()->onShopChange();
|
||||||
|
|
||||||
if (!$this->getSession()->getVar('d3isSetLang') && $oCountry->getFieldData('d3geoiplang') > -1)
|
if (!$this->getSession()->getVar('d3isSetLang') && $oCountry->getFieldData('d3geoiplang') > -1)
|
||||||
$sLangId = $oCountry->getFieldData('d3geoiplang');
|
$sLangId = $oCountry->getFieldData('d3geoiplang');
|
||||||
else
|
else
|
||||||
$sLangId = '';
|
$sLangId = '';
|
||||||
|
|
||||||
$this->_getLog()->setLog('info', __CLASS__, __FUNCTION__, __LINE__, 'change shop', $this->getIP().' => '.$oNewConf->getShopHomeUrl($sLangId));
|
$this->_getLog()->setLog('info', __CLASS__, __FUNCTION__, __LINE__, 'change shop', $this->getIP().' => '.$oNewConf->getShopHomeUrl($sLangId));
|
||||||
|
|
||||||
header("Location: ".$oNewConf->getShopHomeUrl($sLangId));
|
header("Location: ".$oNewConf->getShopHomeUrl($sLangId));
|
||||||
exit();
|
exit();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public function performURLSwitch()
|
public function performURLSwitch()
|
||||||
{
|
{
|
||||||
@ -167,7 +192,7 @@ class d3GeoIP extends oxI18n
|
|||||||
if (!$this->isAdmin() && oxUtils::getInstance()->isSearchEngine() === false && $oCountry->getId() && $oCountry->getFieldData('d3geoipurl') && strlen(trim($oCountry->getFieldData('d3geoipurl'))) > 0)
|
if (!$this->isAdmin() && oxUtils::getInstance()->isSearchEngine() === false && $oCountry->getId() && $oCountry->getFieldData('d3geoipurl') && strlen(trim($oCountry->getFieldData('d3geoipurl'))) > 0)
|
||||||
{
|
{
|
||||||
$sNewUrl = $oCountry->getFieldData('d3geoipurl');
|
$sNewUrl = $oCountry->getFieldData('d3geoipurl');
|
||||||
|
|
||||||
$this->_getLog()->setLog('info', __CLASS__, __FUNCTION__, __LINE__, 'change url', $this->getIP().' => '.$oCountry->getFieldData('d3geoipurl'));
|
$this->_getLog()->setLog('info', __CLASS__, __FUNCTION__, __LINE__, 'change url', $this->getIP().' => '.$oCountry->getFieldData('d3geoipurl'));
|
||||||
|
|
||||||
header("Location: ".$sNewUrl);
|
header("Location: ".$sNewUrl);
|
||||||
@ -175,17 +200,17 @@ class d3GeoIP extends oxI18n
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public function getShopUrls()
|
public function getShopUrls()
|
||||||
{
|
{
|
||||||
$oShoplist = oxNew( 'oxshoplist' );
|
$oShoplist = oxNew( 'oxshoplist' );
|
||||||
$oShoplist->getList();
|
$oShoplist->getList();
|
||||||
$aShopUrls = array();
|
$aShopUrls = array();
|
||||||
foreach ( $oShoplist as $sId => $oShop ) {
|
foreach ( $oShoplist as $sId => $oShop ) {
|
||||||
$aShopUrls[$sId] = $this->getConfig()->getShopConfVar( 'sMallShopURL', $sId );
|
$aShopUrls[$sId] = $this->getConfig()->getShopConfVar( 'sMallShopURL', $sId );
|
||||||
}
|
}
|
||||||
|
|
||||||
return $aShopUrls;
|
return $aShopUrls;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected function _getConfig()
|
protected function _getConfig()
|
||||||
{
|
{
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
INSERT INTO `d3_cfg_mod` (`OXID`, `OXSHOPID`, `OXMODID`, `OXNAME`, `OXACTIVE`, `OXSERIAL`, `OXINSTALLDATE`, `OXVERSION`, `OXSHOPVERSION`, `OXISMODULELOG`, `OXREQUIREMENTS`, `OXVALUE`, `OXVALUE_1`, `OXVALUE_2`, `OXREVISION`, `OXNEWREVISION`) VALUES
|
INSERT INTO `d3_cfg_mod` (`OXID`, `OXSHOPID`, `OXMODID`, `OXNAME`, `OXACTIVE`, `OXSERIAL`, `OXINSTALLDATE`, `OXVERSION`, `OXSHOPVERSION`, `OXISMODULELOG`, `OXREQUIREMENTS`, `OXVALUE`, `OXVALUE_1`, `OXVALUE_2`, `OXREVISION`, `OXNEWREVISION`) VALUES
|
||||||
(MD5(RAND()), 1, 'd3_geoip', 'GeoIP', 1, '', NOW(), '2.0.0', 'EE4', 0, '', '', '', '', 14, 14);
|
(MD5(RAND()), 1, 'd3_geoip', 'GeoIP', 1, '', NOW(), '2.1.0', 'EE4', 0, '', '', '', '', 18, 18);
|
||||||
INSERT INTO `d3_cfg_mod` (`OXID`, `OXSHOPID`, `OXMODID`, `OXNAME`, `OXACTIVE`, `OXSERIAL`, `OXINSTALLDATE`, `OXVERSION`, `OXSHOPVERSION`, `OXISMODULELOG`, `OXREQUIREMENTS`, `OXVALUE`, `OXVALUE_1`, `OXVALUE_2`, `OXREVISION`, `OXNEWREVISION`) VALUES
|
INSERT INTO `d3_cfg_mod` (`OXID`, `OXSHOPID`, `OXMODID`, `OXNAME`, `OXACTIVE`, `OXSERIAL`, `OXINSTALLDATE`, `OXVERSION`, `OXSHOPVERSION`, `OXISMODULELOG`, `OXREQUIREMENTS`, `OXVALUE`, `OXVALUE_1`, `OXVALUE_2`, `OXREVISION`, `OXNEWREVISION`) VALUES
|
||||||
(MD5(RAND()), 2, 'd3_geoip', 'GeoIP', 1, '', NOW(), '2.0.0', 'EE4', 0, '', '', '', '', 14, 14);
|
(MD5(RAND()), 2, 'd3_geoip', 'GeoIP', 1, '', NOW(), '2.1.0', 'EE4', 0, '', '', '', '', 18, 18);
|
||||||
INSERT INTO `d3_cfg_mod` (`OXID`, `OXSHOPID`, `OXMODID`, `OXNAME`, `OXACTIVE`, `OXSERIAL`, `OXINSTALLDATE`, `OXVERSION`, `OXSHOPVERSION`, `OXISMODULELOG`, `OXREQUIREMENTS`, `OXVALUE`, `OXVALUE_1`, `OXVALUE_2`, `OXREVISION`, `OXNEWREVISION`) VALUES
|
INSERT INTO `d3_cfg_mod` (`OXID`, `OXSHOPID`, `OXMODID`, `OXNAME`, `OXACTIVE`, `OXSERIAL`, `OXINSTALLDATE`, `OXVERSION`, `OXSHOPVERSION`, `OXISMODULELOG`, `OXREQUIREMENTS`, `OXVALUE`, `OXVALUE_1`, `OXVALUE_2`, `OXREVISION`, `OXNEWREVISION`) VALUES
|
||||||
(MD5(RAND()), 3, 'd3_geoip', 'GeoIP', 1, '', NOW(), '2.0.0', 'EE4', 0, '', '', '', '', 14, 14);
|
(MD5(RAND()), 3, 'd3_geoip', 'GeoIP', 1, '', NOW(), '2.1.0', 'EE4', 0, '', '', '', '', 18, 18);
|
||||||
|
|
||||||
ALTER TABLE `oxcountry` ADD `D3GEOIPSHOP` VARCHAR( 10 ) NOT NULL DEFAULT '-1',
|
ALTER TABLE `oxcountry` ADD `D3GEOIPSHOP` VARCHAR( 10 ) NOT NULL DEFAULT '-1',
|
||||||
ADD `D3GEOIPLANG` TINYINT( 2 ) NOT NULL DEFAULT '-1',
|
ADD `D3GEOIPLANG` TINYINT( 2 ) NOT NULL DEFAULT '-1',
|
||||||
|
@ -9,4 +9,7 @@ INSERT INTO `d3_cfg_mod` (`OXID`, `OXSHOPID`, `OXMODID`, `OXNAME`, `OXACTIVE`, `
|
|||||||
(MD5(RAND()), 2, 'd3_geoip', 'GeoIP', 1, '', NOW(), '2.0.0', 'EE4', 0, '', '', '', '', 14, 14);
|
(MD5(RAND()), 2, 'd3_geoip', 'GeoIP', 1, '', NOW(), '2.0.0', 'EE4', 0, '', '', '', '', 14, 14);
|
||||||
INSERT INTO `d3_cfg_mod` (`OXID`, `OXSHOPID`, `OXMODID`, `OXNAME`, `OXACTIVE`, `OXSERIAL`, `OXINSTALLDATE`, `OXVERSION`, `OXSHOPVERSION`, `OXISMODULELOG`, `OXREQUIREMENTS`, `OXVALUE`, `OXVALUE_1`, `OXVALUE_2`, `OXREVISION`, `OXNEWREVISION`) VALUES
|
INSERT INTO `d3_cfg_mod` (`OXID`, `OXSHOPID`, `OXMODID`, `OXNAME`, `OXACTIVE`, `OXSERIAL`, `OXINSTALLDATE`, `OXVERSION`, `OXSHOPVERSION`, `OXISMODULELOG`, `OXREQUIREMENTS`, `OXVALUE`, `OXVALUE_1`, `OXVALUE_2`, `OXREVISION`, `OXNEWREVISION`) VALUES
|
||||||
(MD5(RAND()), 3, 'd3_geoip', 'GeoIP', 1, '', NOW(), '2.0.0', 'EE4', 0, '', '', '', '', 14, 14);
|
(MD5(RAND()), 3, 'd3_geoip', 'GeoIP', 1, '', NOW(), '2.0.0', 'EE4', 0, '', '', '', '', 14, 14);
|
||||||
ALTER TABLE `oxcountry` ADD `D3GEOIPURL` VARCHAR( 255 ) NOT NULL;
|
ALTER TABLE `oxcountry` ADD `D3GEOIPURL` VARCHAR( 255 ) NOT NULL;
|
||||||
|
|
||||||
|
# ==== 2.0.0 PE4 => 2.1.0 PE4 ====
|
||||||
|
UPDATE `d3_cfg_mod` SET `OXVERSION` = '2.1.0', `OXREVISION` = '18', `OXNEWREVISION` = '18' WHERE OXMODID = 'd3_geoip';
|
Binary file not shown.
@ -1,5 +1,5 @@
|
|||||||
INSERT INTO `d3_cfg_mod` (`OXID`, `OXSHOPID`, `OXMODID`, `OXNAME`, `OXACTIVE`, `OXSERIAL`, `OXINSTALLDATE`, `OXVERSION`, `OXSHOPVERSION`, `OXISMODULELOG`, `OXREQUIREMENTS`, `OXVALUE`, `OXVALUE_1`, `OXVALUE_2`, `OXREVISION`, `OXNEWREVISION`) VALUES
|
INSERT INTO `d3_cfg_mod` (`OXID`, `OXSHOPID`, `OXMODID`, `OXNAME`, `OXACTIVE`, `OXSERIAL`, `OXINSTALLDATE`, `OXVERSION`, `OXSHOPVERSION`, `OXISMODULELOG`, `OXREQUIREMENTS`, `OXVALUE`, `OXVALUE_1`, `OXVALUE_2`, `OXREVISION`, `OXNEWREVISION`) VALUES
|
||||||
(MD5(RAND()), 'oxbaseshop', 'd3_geoip', 'GeoIP', 1, '', NOW(), '2.0.0', 'PE4', 0, '', '', '', '', 14, 14);
|
(MD5(RAND()), 'oxbaseshop', 'd3_geoip', 'GeoIP', 1, '', NOW(), '2.1.0', 'PE4', 0, '', '', '', '', 18, 18);
|
||||||
|
|
||||||
ALTER TABLE `oxcountry` ADD `D3GEOIPSHOP` VARCHAR( 10 ) NOT NULL DEFAULT '-1',
|
ALTER TABLE `oxcountry` ADD `D3GEOIPSHOP` VARCHAR( 10 ) NOT NULL DEFAULT '-1',
|
||||||
ADD `D3GEOIPLANG` TINYINT( 2 ) NOT NULL DEFAULT '-1',
|
ADD `D3GEOIPLANG` TINYINT( 2 ) NOT NULL DEFAULT '-1',
|
||||||
|
@ -5,4 +5,7 @@ CHANGE `D3ENDIPNUM` `D3ENDIPNUM` INT( 10 ) UNSIGNED NOT NULL
|
|||||||
# ==== 1.1 PE4 => 2.0.0 PE4 ====
|
# ==== 1.1 PE4 => 2.0.0 PE4 ====
|
||||||
INSERT INTO `d3_cfg_mod` (`OXID`, `OXSHOPID`, `OXMODID`, `OXNAME`, `OXACTIVE`, `OXSERIAL`, `OXINSTALLDATE`, `OXVERSION`, `OXSHOPVERSION`, `OXISMODULELOG`, `OXREQUIREMENTS`, `OXVALUE`, `OXVALUE_1`, `OXVALUE_2`, `OXREVISION`, `OXNEWREVISION`) VALUES
|
INSERT INTO `d3_cfg_mod` (`OXID`, `OXSHOPID`, `OXMODID`, `OXNAME`, `OXACTIVE`, `OXSERIAL`, `OXINSTALLDATE`, `OXVERSION`, `OXSHOPVERSION`, `OXISMODULELOG`, `OXREQUIREMENTS`, `OXVALUE`, `OXVALUE_1`, `OXVALUE_2`, `OXREVISION`, `OXNEWREVISION`) VALUES
|
||||||
(MD5(RAND()), 'oxbaseshop', 'd3_geoip', 'GeoIP', 1, '', NOW(), '2.0.0', 'PE4', 0, '', '', '', '', 14, 14);
|
(MD5(RAND()), 'oxbaseshop', 'd3_geoip', 'GeoIP', 1, '', NOW(), '2.0.0', 'PE4', 0, '', '', '', '', 14, 14);
|
||||||
ALTER TABLE `oxcountry` ADD `D3GEOIPURL` VARCHAR( 255 ) NOT NULL;
|
ALTER TABLE `oxcountry` ADD `D3GEOIPURL` VARCHAR( 255 ) NOT NULL;
|
||||||
|
|
||||||
|
# ==== 2.0.0 PE4 => 2.1.0 PE4 ====
|
||||||
|
UPDATE `d3_cfg_mod` SET `OXVERSION` = '2.1.0', `OXREVISION` = '18', `OXNEWREVISION` = '18' WHERE OXMODID = 'd3_geoip';
|
Binary file not shown.
Loading…
Reference in New Issue
Block a user