12     protected $_aSkipMultiline = array(
'aHomeCountry', 
'iShopID_TrustedShops', 
'aTsUser', 
'aTsPassword');
 
   16         "bool"   => 
'confbools',
 
   19         "aarr"   => 
'confaarrs',
 
   20         "select" => 
'confselects',
 
   37         if ($soxId != 
"-1" && isset($soxId)) {
 
   39             $this->_aViewData[
"edit"] = $oShop = $this->
_getEditShop($soxId);
 
   43                 $this->_aViewData[
"defcat"] = null;
 
   44                 if ($oShop->oxshops__oxdefcat->value) {
 
   45                     $oCat = 
oxNew(
"oxCategory");
 
   46                     if ($oCat->load($oShop->oxshops__oxdefcat->value)) {
 
   47                         $this->_aViewData[
"defcat"] = $oCat;
 
   53                 $this->_aViewData[
"updateViews"] = 1;
 
   58                 $oShopDefaultCategoryAjax = 
oxNew(
'shop_default_category_ajax');
 
   59                 $this->_aViewData[
'oxajax'] = $oShopDefaultCategoryAjax->getColumns();
 
   61                 return "popups/shop_default_category.tpl";
 
   67         $aConfVars = $aDbVariables[
'vars'];
 
   68         $aConfVars[
'str'][
'sVersion'] = 
$myConfig->getConfigParam(
'sVersion');
 
   70         $this->_aViewData[
"var_constraints"] = $aDbVariables[
'constraints'];
 
   71         $this->_aViewData[
"var_grouping"] = $aDbVariables[
'grouping'];
 
   72         foreach ($this->_aConfParams as $sType => $sParam) {
 
   73             $this->_aViewData[$sParam] = $aConfVars[$sType];
 
   77         $oCountryList = 
oxNew(
"oxCountryList");
 
   79         if (isset($aConfVars[
'arr'][
"aHomeCountry"]) && count($aConfVars[
'arr'][
"aHomeCountry"]) && count($oCountryList)) {
 
   80             foreach ($oCountryList as $sCountryId => $oCountry) {
 
   81                 if (in_array($oCountry->oxcountry__oxid->value, $aConfVars[
'arr'][
"aHomeCountry"])) {
 
   82                     $oCountryList[$sCountryId]->selected = 
"1";
 
   87         $this->_aViewData[
"countrylist"] = $oCountryList;
 
   90         $this->_aViewData[
"blCurlIsActive"] = (!function_exists(
'curl_init')) ? 
false : 
true;
 
  117         $configValidator = 
oxNew(
'oxNoJsValidator');
 
  118         foreach ($this->_aConfParams as $sType => $sParam) {
 
  120             if (is_array($aConfVars)) {
 
  121                 foreach ($aConfVars as $sName => $sValue) {
 
  122                     $oldValue = 
$myConfig->getConfigParam($sName);
 
  123                     if ($sValue !== $oldValue) {
 
  124                         $sValueToValidate = is_array($sValue) ? join(
', ', $sValue) : $sValue;
 
  125                         if (!$configValidator->isValid($sValueToValidate)) {
 
  126                             $error = 
oxNew(
'oxDisplayError');
 
  127                             $error->setFormatParameters(htmlspecialchars($sValueToValidate));
 
  128                             $error->setMessage(
"SHOP_CONFIG_ERROR_INVALID_VALUE");
 
  155         $oShop = 
oxNew(
"oxshop");
 
  156         if ($oShop->load($this->getEditObjectId())) {
 
  184         $aVarConstraints = array();
 
  185         $aGrouping = array();
 
  188             "select cfg.oxvarname, 
  190                     DECODE( cfg.oxvarvalue, " . $oDb->quote(
$myConfig->getConfigParam(
'sConfigKey')) . 
") as oxvarvalue, 
  191                         disp.oxvarconstraint, 
  194                     left join oxconfigdisplay as disp 
  195                         on cfg.oxmodule=disp.oxcfgmodule and cfg.oxvarname=disp.oxcfgvarname 
  196                 where cfg.oxshopid = '$sShopId' 
  197                     and cfg.oxmodule=" . $oDb->quote($sModule) . 
" 
  198                 order by disp.oxpos, cfg.oxvarname" 
  201         if ($rs != 
false && $rs->recordCount() > 0) {
 
  203                 list($sName, $sType, $sValue, $sConstraint, $sGrouping) = $rs->fields;
 
  207                     if (!isset($aGrouping[$sGrouping])) {
 
  208                         $aGrouping[$sGrouping] = array($sName => $sType);
 
  210                         $aGrouping[$sGrouping][$sName] = $sType;
 
  218             'vars'        => $aConfVars,
 
  219             'constraints' => $aVarConstraints,
 
  220             'grouping'    => $aGrouping,
 
  236                 return array_map(
'trim', explode(
'|', $sConstraint));
 
  254                 return implode(
'|', array_map(
'trim', $sConstraint));
 
  276                 $mData = ($sValue == 
"true" || $sValue == 
"1");
 
  283                 $mData = $oStr->htmlentities($sValue);
 
  284                 if (in_array($sName, $this->_aParseFloat)) {
 
  285                     $mData = str_replace(
',', 
'.', $mData);
 
  290                 if (in_array($sName, $this->_aSkipMultiline)) {
 
  291                     $mData = unserialize($sValue);
 
  298                 if (in_array($sName, $this->_aSkipMultiline)) {
 
  299                     $mData = unserialize($sValue);
 
  329                 if (in_array($sName, $this->_aParseFloat)) {
 
  330                     $sData = str_replace(
',', 
'.', $sData);
 
  335                 if (!is_array($mValue)) {
 
  358         if (is_array($aInput)) {
 
  359             $sVal = implode(
"\n", $aInput);
 
  374         $aArr = explode(
"\n", $sMultiline);
 
  375         if (is_array($aArr)) {
 
  376             foreach ($aArr as $sKey => $sVal) {
 
  377                 $aArr[$sKey] = trim($sVal);
 
  378                 if ($aArr[$sKey] == 
"") {
 
  396         if (is_array($aInput)) {
 
  398             foreach ($aInput as $sKey => $sVal) {
 
  402                 $sMultiline .= $sKey . 
" => " . $sVal;
 
  420         $aLines = explode(
"\n", $sMultiline);
 
  421         foreach ($aLines as $sLine) {
 
  422             $sLine = trim($sLine);
 
  423             if ($sLine != 
"" && $oStr->preg_match(
"/(.+)=>(.+)/", $sLine, $aRegs)) {
 
  424                 $sKey = trim($aRegs[1]);
 
  425                 $sVal = trim($aRegs[2]);
 
  426                 if ($sKey != 
"" && $sVal != 
"") {
 
  427                     $aArr[$sKey] = $sVal;