00001 <?php 00002 00009 class VoucherSerie_Main extends DynExportBase 00010 { 00016 public $sClassDo = "voucherSerie_generate"; 00017 00023 protected $_oVoucherSerie = null; 00024 00030 protected $_sThisTemplate = "voucherserie_main.tpl"; 00031 00039 public function render() 00040 { 00041 parent::render(); 00042 00043 $soxId = $this->_aViewData["oxid"] = $this->getEditObjectId(); 00044 if ( $soxId != "-1" && isset( $soxId ) ) { 00045 // load object 00046 $oVoucherSerie = oxNew( "oxvoucherserie" ); 00047 $oVoucherSerie->load( $soxId ); 00048 $this->_aViewData["edit"] = $oVoucherSerie; 00049 00050 } 00051 00052 return $this->_sThisTemplate; 00053 } 00054 00060 public function save() 00061 { 00062 parent::save(); 00063 00064 // Parameter Processing 00065 $soxId = $this->getEditObjectId(); 00066 $aSerieParams = oxConfig::getParameter("editval"); 00067 00068 // Voucher Serie Processing 00069 $oVoucherSerie = oxNew( "oxvoucherserie" ); 00070 // if serie already exist use it 00071 if ( $soxId != "-1" ) { 00072 $oVoucherSerie->load( $soxId ); 00073 } else { 00074 $aSerieParams["oxvoucherseries__oxid"] = null; 00075 } 00076 00077 00078 00079 $aSerieParams["oxvoucherseries__oxdiscount"] = abs($aSerieParams["oxvoucherseries__oxdiscount"]); 00080 00081 $oVoucherSerie->assign( $aSerieParams ); 00082 $oVoucherSerie->save(); 00083 00084 // set oxid if inserted 00085 $this->setEditObjectId( $oVoucherSerie->getId() ); 00086 } 00087 00093 public function getStatus() 00094 { 00095 if ( $oSerie = $this->_getVoucherSerie() ) { 00096 return $oSerie->countVouchers(); 00097 } 00098 } 00099 00105 public function prepareExport() 00106 { 00107 } 00108 00109 00115 protected function _getVoucherSerie() 00116 { 00117 if ( $this->_oVoucherSerie == null ) { 00118 $oVoucherSerie = oxNew( "oxvoucherserie" ); 00119 $sId = oxConfig::getParameter( "voucherid" ); 00120 if ( $oVoucherSerie->load( $sId ? $sId : oxSession::getVar( "voucherid" ) ) ) { 00121 $this->_oVoucherSerie = $oVoucherSerie; 00122 } 00123 } 00124 return $this->_oVoucherSerie; 00125 } 00126 00132 public function start() 00133 { 00134 $this->_aViewData['refresh'] = 0; 00135 $this->_aViewData['iStart'] = 0; 00136 $iEnd = $this->prepareExport(); 00137 oxSession::setVar( "iEnd", $iEnd ); 00138 $this->_aViewData['iEnd'] = $iEnd; 00139 00140 // saving export info 00141 oxSession::setVar( "voucherid", oxConfig::getParameter( "voucherid" ) ); 00142 oxSession::setVar( "voucherAmount", abs( (int) oxConfig::getParameter( "voucherAmount" ) ) ); 00143 oxSession::setVar( "randomVoucherNr", oxConfig::getParameter( "randomVoucherNr" ) ); 00144 oxSession::setVar( "voucherNr", oxConfig::getParameter( "voucherNr" ) ); 00145 } 00146 00153 public function getViewId() 00154 { 00155 return oxAdminView::getViewId(); 00156 } 00157 }