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 00063 // Parameter Processing 00064 $soxId = $this->getEditObjectId(); 00065 $aSerieParams = oxConfig::getParameter("editval"); 00066 00067 // Voucher Serie Processing 00068 $oVoucherSerie = oxNew( "oxvoucherserie" ); 00069 // if serie already exist use it 00070 if ( $soxId != "-1" ) { 00071 $oVoucherSerie->load( $soxId ); 00072 } else { 00073 $aSerieParams["oxvoucherseries__oxid"] = null; 00074 } 00075 00076 00077 $oVoucherSerie->assign( $aSerieParams ); 00078 $oVoucherSerie->save(); 00079 00080 // set oxid if inserted 00081 $this->setEditObjectId( $oVoucherSerie->getId() ); 00082 } 00083 00089 public function getStatus() 00090 { 00091 if ( $oSerie = $this->_getVoucherSerie() ) { 00092 return $oSerie->countVouchers(); 00093 } 00094 } 00095 00101 public function prepareExport() 00102 { 00103 } 00104 00105 00111 protected function _getVoucherSerie() 00112 { 00113 if ( $this->_oVoucherSerie == null ) { 00114 $oVoucherSerie = oxNew( "oxvoucherserie" ); 00115 $sId = oxConfig::getParameter( "voucherid" ); 00116 if ( $oVoucherSerie->load( $sId ? $sId : oxSession::getVar( "voucherid" ) ) ) { 00117 $this->_oVoucherSerie = $oVoucherSerie; 00118 } 00119 } 00120 return $this->_oVoucherSerie; 00121 } 00122 00128 public function start() 00129 { 00130 $this->_aViewData['refresh'] = 0; 00131 $this->_aViewData['iStart'] = 0; 00132 $iEnd = $this->prepareExport(); 00133 oxSession::setVar( "iEnd", $iEnd ); 00134 $this->_aViewData['iEnd'] = $iEnd; 00135 00136 // saving export info 00137 oxSession::setVar( "voucherid", oxConfig::getParameter( "voucherid" ) ); 00138 oxSession::setVar( "voucherAmount", abs( (int) oxConfig::getParameter( "voucherAmount" ) ) ); 00139 oxSession::setVar( "randomVoucherNr", oxConfig::getParameter( "randomVoucherNr" ) ); 00140 oxSession::setVar( "voucherNr", oxConfig::getParameter( "voucherNr" ) ); 00141 } 00142 }