public function kupwydaniepojedynczepktAction() { // action body $Numer = new Application_Model_DbTable_Numery(); $select = $Numer->fetchRow($Numer->select()->from($Numer, array('id', 'tytul', 'foto'))->where('id = ?', intval($this->getRequest()->getParam("id")))->where('czy_wyswietlac = ?', 1)->where('od_kiedy_wyswietlac <= ?', new Zend_Db_Expr('NOW()'))); // if (count($select) > 0) { $this->view->numer = $select; } else { throw new Zend_Controller_Action_Exception(404); } $auth = Zend_Auth::getInstance(); if (!$auth->hasIdentity()) { $this->view->logowanieduze = new Application_Form_LogowanieDuze(); } else { $this->view->user = TS_Auth::getFullIdentity($auth->getIdentity()); $this->view->postUrl = $this->view->url(array('controller' => 'Wydania', 'action' => 'kupwydaniepojedynczepkt', 'id' => intval($this->getRequest()->getParam("id"))), 'default', TRUE); if ($this->_request->isXmlHttpRequest()) { $this->_helper->layout->disableLayout(); $this->_helper->viewRenderer->setNoRender(true); // $this->getResponse()->setHeader('Content-Type', 'application/json'); $post = $this->_request->getPost(); $return = array('konsumenckie' => true, 'punkty' => true, 'wydaniaLinki' => array()); $ile_poprawnych = count($return) - 1; $zwroconych = 0; // regulamin if ($post['konsumenckie'] == 'false') { $return['konsumenckie'] = false; } else { $zwroconych++; } /**/ // pnkty if ($this->view->user->punkty <= 0) { $return['punkty'] = false; } else { $zwroconych++; } /**/ if ($ile_poprawnych == $zwroconych) { $Numer = new Application_Model_DbTable_Numery(); $Numer->update(array('wersja_elektroniczna_zakupy' => new Zend_Db_Expr('wersja_elektroniczna_zakupy + 1')), array('id = ?' => intval($this->getRequest()->getParam("id")))); $Zakup = new Application_Model_DbTable_WydaniaPrenumerataZakup(); $data = array('id_wydania' => intval($this->getRequest()->getParam("id")), 'id_prenumeratora' => $this->view->user->id, 'data_zakupu' => new Zend_Db_Expr('NOW()')); $id_zakupu = $Zakup->createRow($data)->save(); $User = new Application_Model_DbTable_UzytkownicyWww(); $User->update(array('punkty' => new Zend_Db_Expr('punkty - 1')), array('id = ?' => intval($this->view->user->id))); $WydaniePliki = new Application_Model_DbTable_WydaniaPliki(); $select = $WydaniePliki->select()->where('id_numeru = ?', intval($this->getRequest()->getParam("id"))); //$return['test'] = $select->__toString(); $wydaniapliki = $WydaniePliki->fetchAll($select); $WydaniaPlikiUzyciaPrenumerata = new Application_Model_DbTable_WydaniaPlikiUzyciaPrenumerata(); foreach ($wydaniapliki as $wydaniaplik) { $data = array('id_zakupu' => $id_zakupu, 'id_pliku' => $wydaniaplik['id'], 'liczba_uzyc' => 0); $WydaniaPlikiUzyciaPrenumerata->createRow($data)->save(); } $fullBaseUrl = $this->view->serverUrl() . $this->view->baseUrl(); $mail = new TS_Mail(); $mail_dane = array('to' => $this->view->user->email, 'subject' => 'Pobieranie e-wydania', 'view' => array('script' => 'pobierzwydanieprenumerata', 'params' => array('tytul_numeru' => $Numer->pokazTytul(intval($this->getRequest()->getParam("id"))), 'wydaniapliki' => $wydaniapliki, 'zakup' => $id_zakupu, 'baseUrl' => $fullBaseUrl))); /**/ $mail->send($mail_dane); if (isset($wydaniapliki) && count($wydaniapliki) > 0 && isset($id_zakupu)) { $return['wydaniaLinki'] = $this->generujLinki($wydaniapliki, 'pkt', $id_zakupu); } } echo json_encode($return); } } }
public function pobierzwydanieAction() { // action body $auth = Zend_Auth::getInstance(); if ($auth->hasIdentity()) { $this->view->user = TS_Auth::getFullIdentity($auth->getIdentity()); $Numer = new Application_Model_DbTable_Numery(); $WydaniePliki = new Application_Model_DbTable_WydaniaPliki(); $select = $WydaniePliki->select()->where('id_numeru = ?', intval($this->getRequest()->getParam("zakup"))); $wydaniapliki = $WydaniePliki->fetchAll($select); $WydaniaPlikiUzyciaPrenumerata = new Application_Model_DbTable_WydaniaPlikiUzyciaPrenumerata(); foreach ($wydaniapliki as $wydaniaplik) { $data = array('id_zakupu' => intval($this->getRequest()->getParam("zakup")), 'id_pliku' => $wydaniaplik['id'], 'liczba_uzyc' => 0); $WydaniaPlikiUzyciaPrenumerata->createRow($data)->save(); } $mail = new TS_Mail(); $mail_dane = array('to' => $this->view->user->email, 'subject' => 'Pobieranie e-wydania', 'view' => array('script' => 'pobierzwydanieprenumerata', 'params' => array('tytul_numeru' => $Numer->pokazTytul(intval($this->getRequest()->getParam("zakup"))), 'wydaniapliki' => $wydaniapliki, 'zakup' => intval($this->getRequest()->getParam("zakup"))))); /**/ $mail->send($mail_dane); } else { return $this->_helper->redirector('brakautoryzacji', 'user'); } }