14 array(
'oxartnum',
'oxarticles', 1, 0, 0 ),
15 array(
'oxtitle',
'oxarticles', 1, 1, 0 ),
16 array(
'oxean',
'oxarticles', 1, 0, 0 ),
17 array(
'oxmpn',
'oxarticles', 0, 0, 0 ),
18 array(
'oxprice',
'oxarticles', 0, 0, 0 ),
19 array(
'oxstock',
'oxarticles', 0, 0, 0 ),
20 array(
'oxid',
'oxarticles', 0, 0, 1 )
22 'container2' => array(
23 array(
'oxartnum',
'oxarticles', 1, 0, 0 ),
24 array(
'oxtitle',
'oxarticles', 1, 1, 0 ),
25 array(
'oxean',
'oxarticles', 1, 0, 0 ),
26 array(
'oxmpn',
'oxarticles', 0, 0, 0 ),
27 array(
'oxprice',
'oxarticles', 0, 0, 0 ),
28 array(
'oxstock',
'oxarticles', 0, 0, 0 ),
29 array(
'oxitmartid',
'oxdiscount', 0, 0, 1 )
47 $sOxid = $oConfig->getRequestParameter(
'oxid' );
48 $sSynchOxid = $oConfig->getRequestParameter(
'synchoxid' );
51 if ( !$sOxid && $sSynchOxid ) {
52 $sQAdd =
" from $sArticleTable where 1 ";
53 $sQAdd .= $oConfig->getConfigParam(
'blVariantsSelection' )?
'':
"and $sArticleTable.oxparentid = '' ";
56 if ( $sSynchOxid && $sOxid != $sSynchOxid ) {
57 $sQAdd =
" from $sO2CView left join $sArticleTable on ";
58 $sQAdd .= $oConfig->getConfigParam(
'blVariantsSelection' )?
"($sArticleTable.oxid=$sO2CView.oxobjectid or $sArticleTable.oxparentid=$sO2CView.oxobjectid)":
" $sArticleTable.oxid=$sO2CView.oxobjectid ";
59 $sQAdd .=
" where $sO2CView.oxcatnid = ".$oDb->quote( $sOxid ).
" and $sArticleTable.oxid is not null ";
64 $sQAdd =
" from $sDiscTable left join $sArticleTable on $sArticleTable.oxid=$sDiscTable.oxitmartid ";
65 $sQAdd .=
" where $sDiscTable.oxid = ".$oDb->quote( $sOxid ).
" and $sDiscTable.oxitmartid != '' ";
69 if ( $sSynchOxid && $sSynchOxid != $sOxid) {
71 $sSubSelect .=
" select $sArticleTable.oxid from $sDiscTable, $sArticleTable where $sArticleTable.oxid=$sDiscTable.oxitmartid ";
72 $sSubSelect .=
" and $sDiscTable.oxid = ".$oDb->quote( $sSynchOxid );
74 if ( stristr( $sQAdd,
'where' ) ===
false )
78 $sQAdd .=
" $sArticleTable.oxid not in ( $sSubSelect ) ";
91 $soxId = $this->
getConfig()->getRequestParameter(
'oxid');
92 $aChosenArt = $this->
_getActionIds(
'oxdiscount.oxitmartid' );
93 if ( is_array( $aChosenArt ) ) {
94 $sQ =
"update oxdiscount set oxitmartid = '' where oxid = ? and oxitmartid = ?";
95 oxDb::getDb()->execute( $sQ, array( $soxId, reset( $aChosenArt ) ) );
107 $soxId = $this->
getConfig()->getRequestParameter(
'synchoxid');
108 if ( $soxId && $soxId !=
"-1" && is_array( $aChosenArt ) ) {
109 $sQ =
"update oxdiscount set oxitmartid = ? where oxid = ?";
110 oxDb::getDb()->execute( $sQ, array( reset( $aChosenArt ), $soxId ) );
128 foreach ( $aVisiblecols as $iCnt => $aCol ) {
134 $sCol = $aCol[3] ? $aCol[0] : $aCol[0];
136 if ( $oConfig->getConfigParam(
'blVariantsSelection' ) && $aCol[0] ==
'oxtitle' ) {
137 $sVarSelect =
"$sViewTable.oxvarselect".$sLangTag;
138 $sQ .=
" IF( $sViewTable.$sCol != '', $sViewTable.$sCol, CONCAT((select oxart.$sCol from $sViewTable as oxart where oxart.oxid = $sViewTable.oxparentid),', ',$sVarSelect)) as _" . $iCnt;
140 $sQ .= $sViewTable .
'.' . $sCol .
' as _' . $iCnt;
147 foreach ( $aIdentCols as $iCnt => $aCol ) {
152 $sCol = $aCol[3] ? $aCol[0] : $aCol[0];
153 $sQ .= $this->
_getViewName( $aCol[1] ) .
'.' . $sCol .
' as _' . $iCnt;