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