public function indexAction() { // action body $request = $this->getRequest(); if ($request->isPost()) { $post = $request->getPost(); $required = array('email', 'tytul', 'wiadomosc'); $ile_poprawnych = count($required); $zwroconych = 0; $empty = new Zend_Validate_NotEmpty(); // email $isvalidEmail = new Zend_Validate_EmailAddress(Zend_Validate_Hostname::ALLOW_DNS | Zend_Validate_Hostname::ALLOW_LOCAL); if ($empty->isValid($post['email']) || $isvalidEmail->isValid($post['email'])) { $zwroconych++; } // tytul if ($empty->isValid($post['tytul'])) { $zwroconych++; } // wiadomosc if ($empty->isValid($post['wiadomosc'])) { $zwroconych++; } // pliki $pliki = false; $attachment = array(); $sciezka = TS_Url::realPath(APPLICATION_PATH . '/../public/images/tresci/kontakt/'); $adapter = new Zend_File_Transfer_Adapter_Http(); $adapter->addValidator('Count', false, array('min' => 0, 'max' => 10))->addValidator('Size', false, array('max' => 10485760))->addValidator('Extension', false, array('extension' => 'gif,jpg,png,bmp,swf,tiff,wmv,mp4,mov,avi,swf,wav,mp3,3gp,wma,pdf,rtf,txt,doc,docx,odt'))->setDestination($sciezka); $files = $adapter->getFileInfo(); //$filessize = $adapter->getFileSize(); if (count($files) > 0 && $files['pliki_0_']['name'] != '') { $pliki = true; } if ($pliki) { $ile_poprawnych += count($files); $session = md5(date("Y-m-d H:i:s")); foreach ($files as $fieldname => $fileinfo) { //var_dump($fileinfo); if ($adapter->isUploaded($fileinfo['name']) && $adapter->isValid($fileinfo['name'])) { $ext = pathinfo($fileinfo['name']); $newfilename = TS_Url::getUrl($ext['filename']) . '_' . date('Ymdhs') . '.' . $ext['extension']; $adapter->addFilter('Rename', array('target' => $sciezka . $newfilename, 'overwrite' => true)); $adapter->receive($fieldname); $attachment[] = $sciezka . $newfilename; $UploadPliki = new Application_Model_DbTable_UploadPliki(); $data = array('nazwa' => $newfilename, 'data_dodania' => date("Y-m-d H:i:s"), 'session' => $session); $UploadPliki->createRow($data)->save(); $zwroconych++; } } //var_dump($adapter->getMessages()); } //pliki /**/ //echo $zwroconych . '/' . $ile_poprawnych . '<br>'; if ($zwroconych == $ile_poprawnych) { $Maile = new Application_Model_DbTable_UstawieniaMaile(); switch ($post['do']) { case "dyzurny": $CosCiekawego = new Application_Model_DbTable_CosCiekawego(); $data = array('imie' => $post['imie'], 'nazwisko' => $post['nazwisko'], 'mail' => $post['email'], 'telefon' => $post['telefon'], 'tytul' => $post['tytul'], 'wiadomosc' => $post['wiadomosc'], 'data_dodania' => date("Y-m-d H:i:s"), 'czy_aktywne' => "n", 'wyswietlanie' => "ts"); $idCosCiekawego = $CosCiekawego->createRow($data)->save(); if ($pliki) { //$UploadPliki = new Application_Model_DbTable_UploadPliki(); $select = $UploadPliki->select()->from($UploadPliki, array('id'))->where('session = ?', $session); $uploadowanepliki = $UploadPliki->fetchAll($select); if (count($uploadowanepliki)) { $CosCiekawegoPliki = new Application_Model_DbTable_CosCiekawegoPliki(); foreach ($UploadPliki->fetchAll($select) as $plik) { $data = array('id_cos_ciekawego' => $idCosCiekawego, 'id_pliku' => $plik->id); $CosCiekawegoPliki->createRow($data)->save(); } } } /**/ $mail = $Maile->find(15)->current(); $post['do'] = $mail->wartosc; break; case "redakcja": $mail = $Maile->find(1)->current(); $post['do'] = $mail->wartosc; break; case "reklama": $mail = $Maile->find(7)->current(); $post['do'] = $mail->wartosc; break; case "konkursy": $mail = $Maile->find(16)->current(); $post['do'] = $mail->wartosc; break; case "sport": $mail = $Maile->find(17)->current(); $post['do'] = $mail->wartosc; break; case "kultura": $mail = $Maile->find(18)->current(); $post['do'] = $mail->wartosc; break; default: $mail = $Maile->find(1)->current(); $post['do'] = $mail->wartosc; break; } //$post['do'] = '*****@*****.**'; $mail = new TS_Mail(); $mail_dane = array('to' => $post['do'], 'subject' => "ze strony TS (" . $post['tytul'] . ")", 'view' => array('script' => 'kontakt', 'params' => array('imie' => $post['imie'], 'nazwisko' => $post['nazwisko'], 'telefon' => $post['telefon'], 'email' => $post['email'], 'tytul' => $post['tytul'], 'wiadomosc' => $post['wiadomosc'], 'pliki' => $attachment)), 'attachment' => $attachment); $mail->send($mail_dane); $this->view->post = true; } else { //$this->view->post = $post; //$this->view->file_messages = $adapter->getMessages(); } } else { $this->view->post = false; $this->view->do = $this->getRequest()->getParam('do'); } }
public function dodajAction() { $krok = intval($this->getRequest()->getParam("krok")); $request = $this->_request; switch ($krok) { // 111111 case 1: $this->view->krok = 1; if ($request->getPost()) { // post $post = $request->getPost(); // TS_Functions::pre($post); die; $tabKomunikatow = array(); $wymaganePola = array('tresc'); $wszystkoOK = true; foreach ($post as $zmienna => $wartosc) { if ($wartosc == '' && in_array($zmienna, $wymaganePola)) { $wszystkoOK = false; $tabKomunikatow['tresc'] = "Treść nie może być pusta."; } } if ($post["dr_ramka"] != "" && $post["wypelnienie"] != "") { $ramkaSql = $this->__db1->select()->from(array('r' => 'ts_ogloszenia_kolory_ramki_pl'), array('r.kolor'))->where('id = ?', $post['dr_ramka']); $ramka = $this->__db1->fetchAll($ramkaSql); $wypelnienieSql = $this->__db1->select()->from(array('w' => 'ts_ogloszenia_kolory_wypelnienia_pl'), array('w.kolor'))->where('id = ?', $post['wypelnienie']); $wypelnienie = $this->__db1->fetchAll($wypelnienieSql); if ($wypelnienie[0]["kolor"] == $ramka[0]["kolor"]) { $wszystkoOK = false; $tabKomunikatow['ramka'] = "Kolor ramki nie może być taki sam jak kolor wypełnienia."; } } if ($post["wypelnienie"] != "") { $wypelnienieSql = $this->__db1->select()->from(array('w' => 'ts_ogloszenia_kolory_wypelnienia_pl'), array('w.kolor'))->where('id = ?', $post['wypelnienie']); $wypelnienie = $this->__db1->fetchAll($wypelnienieSql); $tekstSql = $this->__db1->select()->from(array('t' => 'ts_ogloszenia_kolory_tekstu_pl'), array('t.kolor'))->where('id = ?', $post['kolor_tekstu']); $tekst = $this->__db1->fetchAll($tekstSql); if ($wypelnienie[0]["kolor"] == $tekst[0]["kolor"]) { $wszystkoOK = false; $tabKomunikatow['tekst'] = "Kolor tekstu nie może być taki sam jak kolor wypełnienia."; } if ($tekst[0]["kolor"] == "#FFFFFF" && ($wypelnienie[0]["kolor"] == "#808080" || $wypelnienie[0]["kolor"] == "#FFFF00")) { $wszystkoOK = false; $tabKomunikatow['wypelnienie'] = "Jeśli kolor tekstu jest biały to wypełnienie nie może być białe, szare lub żółte."; } } if ($post["wypelnienie"] == "" && $post["kolor_tekstu"] != "") { $tekstSql = $this->__db1->select()->from(array('t' => 'ts_ogloszenia_kolory_tekstu_pl'), array('t.kolor'))->where('id = ?', $post['kolor_tekstu']); $tekst = $this->__db1->fetchAll($tekstSql); if ($tekst[0]["kolor"] == "#FFFFFF") { $wszystkoOK = false; $tabKomunikatow['wypelnienie'] = "Jeśli kolor tekstu jest biały to wypełnienie nie może być białe, szare lub żółte."; } } /**/ if ($wszystkoOK) { // is valid $UstawieniaDB = new Application_Model_DbTable_Ustawienia(); $ustawienia = $UstawieniaDB->find(array(7, 8, 9, 10, 11, 12)); //$ustawienia = $UstawieniaDB->fetchAll($ustawieniaSql); $lxx = ''; $wxx = ''; $txx = ''; $kxx = ''; $sxx = ''; $numer = ''; $kod_DTP = ''; $ramkaSql = $this->__db1->select()->from(array('r' => 'ts_ogloszenia_kolory_ramki_pl'), array('r.kod'))->where('id = ?', $post['dr_ramka']); $ramka = $this->__db1->fetchAll($ramkaSql); $lxx = count($ramka) > 0 ? 'L' . $ramka[0]['kod'] : 'L'; $wypelnienieSql = $this->__db1->select()->from(array('w' => 'ts_ogloszenia_kolory_wypelnienia_pl'), array('w.kod'))->where('id = ?', $post['dr_ramka']); $wypelnienie = $this->__db1->fetchAll($wypelnienieSql); $wxx = count($wypelnienie) > 0 ? 'W' . $wypelnienie[0]['kod'] : 'W'; $tekstSql = $this->__db1->select()->from(array('t' => 'ts_ogloszenia_kolory_tekstu_pl'), array('t.kod'))->where('id = ?', $post['kolor_tekstu']); $tekst = $this->__db1->fetchAll($tekstSql); $txx = count($tekst) > 0 ? 'T' . $tekst[0]['kod'] : 'T'; $kxx = 'K01'; //tymczasowo if ($post['dr_wytluszczony'] == '1' && $post['dr_wersaliki'] == '1') { $kxx = 'K03'; } elseif ($post['dr_wytluszczony'] == '1' && $post['dr_wersaliki'] == '0') { $kxx = 'K01'; } elseif ($post['dr_wytluszczony'] == '0' && $post['dr_wersaliki'] == '1') { $kxx = 'K02'; } elseif ($post['dr_wytluszczony'] == '0' && $post['dr_wersaliki'] == '0') { $kxx = 'K00'; } if ($post['dr_duza_czcionka'] == '1') { $sxx = 'S01'; } else { $sxx = 'S00'; } /**/ // if ($post['publikacja_internet']=='1') { // $ogloszeniaSql = $this->__db1 ->select()->from(array('o'=>'ts_ogloszenia_pl'),array('o.*')); // $ogloszenia = $this->__db1->fetchAll($ogloszeniaSql); // // $numer.'I-'.count($q_ogl[0]["c"]).'-'.$_POST['liczba_emisji'].'p'; // } //foto $sciezka = TS_Url::realPath(APPLICATION_PATH . '/../public/images/tresci/ogloszenia/'); $adapter = new Zend_File_Transfer_Adapter_Http(); $adapter->addValidator('Count', false, array('min' => 0, 'max' => 1))->addValidator('Size', false, array('max' => 10485760))->addValidator('Extension', false, array('extension' => 'gif,jpg,png,bmp'))->setDestination($sciezka); $files = $adapter->getFileInfo(); $newfilename = ''; if (count($adapter->getFileName()) > 0) { foreach ($files as $fieldname => $fileinfo) { if ($adapter->isUploaded($fileinfo['name']) && $adapter->isValid($fileinfo['name'])) { $ext = pathinfo($fileinfo['name']); $newfilename = TS_Url::getUrl($ext['filename']) . '_' . date('Ymdhs') . '.' . $ext['extension']; $adapter->addFilter('Rename', array('target' => $sciezka . $newfilename, 'overwrite' => true)); $adapter->receive($fieldname); TS_Functions::przerobFoto($ustawienia[0]['wartosc'], $ustawienia[1]['wartosc'], $sciezka, $newfilename, $sciezka . 'micro/', $fileinfo['type']); TS_Functions::przerobFoto($ustawienia[2]['wartosc'], $ustawienia[3]['wartosc'], $sciezka, $newfilename, $sciezka . 'mini/', $fileinfo['type']); TS_Functions::przerobFoto($ustawienia[4]['wartosc'], $ustawienia[5]['wartosc'], $sciezka, $newfilename, $sciezka . '', $fileinfo['type']); $_POST['zdjecie'] = $newfilename; $kodDTP = '$' . $lxx . $wxx . $txx . $kxx . $sxx . '$' . str_replace('$_ogl_$', '\\"', $post['tresc']) . '/' . $numer . '/+zdjecie:' . $newfilename . '/'; } } } else { $kodDTP = '$' . $lxx . $wxx . $txx . $kxx . $sxx . '$' . str_replace('$_ogl_$', '\\"', $post['tresc']) . '/' . $numer . '/'; } /**/ $cenaCalkowita = $this->cenaZDodatkami($post); $dat = date("YmdHis"); $post['id_dzial'] = isset($post['id_dzial']) && is_numeric($post['id_dzial']) ? $post['id_dzial'] : 0; $OgloszenieKoszyk = new Application_Model_DbTable_OgloszeniaKoszyk(); $data = array('id_ogloszeniodawcy' => 0, 'kod_DTP' => $kodDTP, 'nr_ogloszenia' => $dat, 'id_kategoria' => $post['id_kategoria'], 'id_dzial' => $post['id_dzial'], 'tresc' => str_replace('$_ogl_$', '\\"', $post['tresc']), 'liczba_znakow' => strlen(utf8_decode($post['tresc'])), 'dr_wytluszczony' => $post['dr_wytluszczony'], 'dr_wersaliki' => $post['dr_wersaliki'], 'dr_duza_czcionka' => $post['dr_duza_czcionka'], 'dr_kolor_tekstu' => $post['kolor_tekstu'], 'dr_ramka' => $post['dr_ramka'], 'dr_wypelnienie_kolor' => $post['wypelnienie'], 'liczba_emisji' => $post['liczba_emisji'], 'zdjecie' => $newfilename, 'publikacja_internet' => $post['publikacja_internet'], 'cena' => $cenaCalkowita); // TS_Functions::pre($data); die; $resultId = $OgloszenieKoszyk->insert($data); $sesOgloszenia = new Zend_Session_Namespace('ogloszenia'); $sesOgloszenia->idOgloszenia = $resultId; $sesOgloszenia->postData = $data; $sesOgloszenia->postDataAll = $post; // TS_Functions::pre($data); //die; // TS_Functions::pre($post); //die; $ogloszenieNumery = array(); $OgloszenieNumeryKoszyk = new Application_Model_DbTable_OgloszeniaNumeryKoszyk(); $OgloszenieNumeryKoszyk->delete(array('id_poz = ?' => $resultId)); // resetowanie w razie powrotu foreach ($post as $zm => $wart) { $zmienna = explode('_', $zm); if ($zmienna[0] == "chnr") { $data = array('id_poz' => $resultId, 'nr_ogloszenia' => intval($wart), 'rok' => intval($zmienna[1])); $OgloszenieNumeryKoszyk->insert($data); array_push($ogloszenieNumery, $data); } } $sesOgloszenia->postDataNumery = $ogloszenieNumery; $this->getHelper('Redirector')->setGotoRoute(array('krok' => 2), 'dodaj-ogloszenie'); } else { // is not valid $this->view->post = $post; $this->view->tabKomunikatow = $tabKomunikatow; $kategorieSelect = $this->__db1->select()->from(array('k' => 'ts_s_kategorie_ogloszen_pl'), array('k.id', 'nazwa' => 'k.nazwa_kat'))->order(array('k.pozycjonowanie DESC', 'nazwa_kat ASC')); $this->view->kategorie = $this->__db1->fetchAll($kategorieSelect); $dzialyDomyslne = $this->__db1->select()->from(array('d' => 'ts_ogloszenia_dzialy_pl'), array('id' => 'd.id_dzial', 'nazwa' => 'd.nazwa_dzial'))->where('d.id_kat = ?', $post['id_kategoria'])->order(array('d.pozycjonowanie DESC', 'd.nazwa_dzial ASC')); $this->view->dzialyDomyslne = $this->__db1->fetchAll($dzialyDomyslne); $cenyDodatkowSelect = $this->__db1->select()->from(array('d' => 'ts_ogloszenia_dodatki_pl'), array('d.cena'))->order(array('d.id')); $cenyDodatkow = $this->__db1->fetchAll($cenyDodatkowSelect); $this->view->cenyDodatkow = ''; foreach ($cenyDodatkow as $cena) { $this->view->cenyDodatkow = $this->view->cenyDodatkow . ',' . $cena['cena']; } $dlugosciSelect = $this->__db1->select()->from(array('d' => 'ts_ogloszenia_ceny_dlugosc_pl'), array('d.dlugosc_max', 'd.cena'))->order(array('d.dlugosc_max DESC')); $dlugosci = $this->__db1->fetchAll($dlugosciSelect); $this->view->dlugosci = ''; $this->view->cenyDlugosci = ''; foreach ($dlugosci as $dlugosc) { $this->view->dlugosci = $this->view->dlugosci . ',' . $dlugosc['dlugosc_max']; $this->view->cenyDlugosci = $this->view->cenyDlugosci . ',' . $dlugosc['cena']; } $rabatySelect = $this->__db1->select()->from(array('d' => 'ts_ogloszenia_rabaty_pl'), array('d.ile_ogloszen_min', 'd.wartosc'))->order(array('d.ile_ogloszen_min DESC')); $rabaty = $this->__db1->fetchAll($rabatySelect); $this->view->ilosce = ''; $this->view->wartoscr = ''; foreach ($rabaty as $rabat) { $this->view->ilosce = $this->view->ilosce . ',' . $rabat['ile_ogloszen_min']; $this->view->wartoscr = $this->view->wartoscr . ',' . $rabat['wartosc']; } $koloryTekstuSelect = $this->__db1->select()->from(array('d' => 'ts_ogloszenia_kolory_tekstu_pl'), array('d.id', 'd.kolor', 'd.nazwa', 'd.domyslny'))->where('czy_wyswietlac="1"')->order(array('d.nazwa')); $this->view->koloryTekstu = $this->__db1->fetchAll($koloryTekstuSelect); $koloryRamkiSelect = $this->__db1->select()->from(array('d' => 'ts_ogloszenia_kolory_ramki_pl'), array('d.id', 'd.kolor', 'd.nazwa', 'd.domyslny'))->where('czy_wyswietlac="1"')->order(array('d.nazwa')); $this->view->koloryRamki = $this->__db1->fetchAll($koloryRamkiSelect); $koloryWypelnienieSelect = $this->__db1->select()->from(array('d' => 'ts_ogloszenia_kolory_wypelnienia_pl'), array('d.id', 'd.kolor', 'd.nazwa', 'd.domyslny'))->where('czy_wyswietlac="1"')->order(array('d.nazwa')); $this->view->koloryWypelnienia = $this->__db1->fetchAll($koloryWypelnienieSelect); // numery do emisji $ogloszeniaPlatnosciSelect = $this->__db1->select()->from(array('d' => 'ts_ogloszenia_platnosci_pl'), array('d.aktualny_numer_www'))->order(array('id ASC')); $ogloszeniaPlatnosci = $this->__db1->fetchAll($ogloszeniaPlatnosciSelect); $aktualnyNumer = $ogloszeniaPlatnosci[0]['aktualny_numer_www']; $aktualnyNumerArray = explode('/', $aktualnyNumer); $this->view->aktualnyNumerWww = $aktualnyNumerArray[0]; //$this->view->numeryRokPoprzedni = TS_Functions::dataWydania(date('Y')-1); $this->view->numeryRokObecny = TS_Functions::dataWydania(date('Y')); $this->view->numeryRokNastepny = TS_Functions::dataWydania(date('Y') + 1); } } else { // post end $sesOgloszenia = new Zend_Session_Namespace('ogloszenia'); if ($this->_getParam('clear')) { $sesOgloszenia->unsetAll(); } else { $this->view->post = $sesOgloszenia->postDataAll; } $kategorieSelect = $this->__db1->select()->from(array('k' => 'ts_s_kategorie_ogloszen_pl'), array('k.id', 'nazwa' => 'k.nazwa_kat'))->order(array('k.pozycjonowanie DESC', 'nazwa_kat ASC')); $this->view->kategorie = $this->__db1->fetchAll($kategorieSelect); if (isset($this->view->post['id_kategoria'])) { $idKategorii = $this->view->post['id_kategoria']; } else { $idKategorii = $this->view->kategorie[0]['id']; } $dzialyDomyslne = $this->__db1->select()->from(array('d' => 'ts_ogloszenia_dzialy_pl'), array('id' => 'd.id_dzial', 'nazwa' => 'd.nazwa_dzial'))->where('d.id_kat = ?', $idKategorii)->order(array('d.pozycjonowanie DESC', 'd.nazwa_dzial ASC')); $this->view->dzialyDomyslne = $this->__db1->fetchAll($dzialyDomyslne); $cenyDodatkowSelect = $this->__db1->select()->from(array('d' => 'ts_ogloszenia_dodatki_pl'), array('d.cena'))->order(array('d.id')); $cenyDodatkow = $this->__db1->fetchAll($cenyDodatkowSelect); $this->view->cenyDodatkow = ''; foreach ($cenyDodatkow as $cena) { $this->view->cenyDodatkow = $this->view->cenyDodatkow . ',' . $cena['cena']; } $dlugosciSelect = $this->__db1->select()->from(array('d' => 'ts_ogloszenia_ceny_dlugosc_pl'), array('d.dlugosc_max', 'd.cena'))->order(array('d.dlugosc_max DESC')); $dlugosci = $this->__db1->fetchAll($dlugosciSelect); $this->view->dlugosci = ''; $this->view->cenyDlugosci = ''; foreach ($dlugosci as $dlugosc) { $this->view->dlugosci = $this->view->dlugosci . ',' . $dlugosc['dlugosc_max']; $this->view->cenyDlugosci = $this->view->cenyDlugosci . ',' . $dlugosc['cena']; } $rabatySelect = $this->__db1->select()->from(array('d' => 'ts_ogloszenia_rabaty_pl'), array('d.ile_ogloszen_min', 'd.wartosc'))->order(array('d.ile_ogloszen_min DESC')); $rabaty = $this->__db1->fetchAll($rabatySelect); $this->view->ilosce = ''; $this->view->wartoscr = ''; foreach ($rabaty as $rabat) { $this->view->ilosce = $this->view->ilosce . ',' . $rabat['ile_ogloszen_min']; $this->view->wartoscr = $this->view->wartoscr . ',' . $rabat['wartosc']; } $koloryTekstuSelect = $this->__db1->select()->from(array('d' => 'ts_ogloszenia_kolory_tekstu_pl'), array('d.id', 'd.kolor', 'd.nazwa', 'd.domyslny'))->where('czy_wyswietlac="1"')->order(array('d.nazwa')); $this->view->koloryTekstu = $this->__db1->fetchAll($koloryTekstuSelect); $koloryRamkiSelect = $this->__db1->select()->from(array('d' => 'ts_ogloszenia_kolory_ramki_pl'), array('d.id', 'd.kolor', 'd.nazwa', 'd.domyslny'))->where('czy_wyswietlac="1"')->order(array('d.nazwa')); $this->view->koloryRamki = $this->__db1->fetchAll($koloryRamkiSelect); $koloryWypelnienieSelect = $this->__db1->select()->from(array('d' => 'ts_ogloszenia_kolory_wypelnienia_pl'), array('d.id', 'd.kolor', 'd.nazwa', 'd.domyslny'))->where('czy_wyswietlac="1"')->order(array('d.nazwa')); $this->view->koloryWypelnienia = $this->__db1->fetchAll($koloryWypelnienieSelect); // numery do emisji $ogloszeniaPlatnosciSelect = $this->__db1->select()->from(array('d' => 'ts_ogloszenia_platnosci_pl'), array('d.aktualny_numer_www'))->order(array('id ASC')); $ogloszeniaPlatnosci = $this->__db1->fetchAll($ogloszeniaPlatnosciSelect); $aktualnyNumer = $ogloszeniaPlatnosci[0]['aktualny_numer_www']; $aktualnyNumerArray = explode('/', $aktualnyNumer); $this->view->aktualnyNumerWww = $aktualnyNumerArray[0]; //$this->view->numeryRokPoprzedni = TS_Functions::dataWydania(date('Y')-1); $this->view->numeryRokObecny = TS_Functions::dataWydania(date('Y')); $this->view->numeryRokNastepny = TS_Functions::dataWydania(date('Y') + 1); } $this->render('dodaj-krok-1'); break; // 222222 // 222222 case 2: $this->view->krok = 2; $sesOgloszenia = new Zend_Session_Namespace('ogloszenia'); $this->view->postData = $sesOgloszenia->postData; $this->view->postDataAll = $sesOgloszenia->postDataAll; $this->view->postDataNumery = $sesOgloszenia->postDataNumery; $kategoriaSelect = $this->__db1->select()->from(array('k' => 'ts_s_kategorie_ogloszen_pl'), array('k.id', 'nazwa' => 'k.nazwa_kat'))->where('k.id = ?', $sesOgloszenia->postData['id_kategoria']); $this->view->kategoria = $this->__db1->fetchRow($kategoriaSelect); $dzialSelect = $this->__db1->select()->from(array('d' => 'ts_ogloszenia_dzialy_pl'), array('id' => 'd.id_dzial', 'nazwa' => 'd.nazwa_dzial'))->where('d.id_dzial = ?', $sesOgloszenia->postData['id_dzial']); $this->view->dzial = $this->__db1->fetchRow($dzialSelect); $kolorTekstuSelect = $this->__db1->select()->from(array('d' => 'ts_ogloszenia_kolory_tekstu_pl'), array('d.id', 'd.nazwa', 'd.kolor'))->where('d.id = ?', $sesOgloszenia->postData['dr_kolor_tekstu']); $this->view->kolorTekstu = $this->__db1->fetchRow($kolorTekstuSelect); $kolorRamkiSelect = $this->__db1->select()->from(array('d' => 'ts_ogloszenia_kolory_ramki_pl'), array('d.id', 'd.nazwa', 'd.kolor'))->where('d.id = ?', $sesOgloszenia->postData['dr_ramka']); $this->view->kolorRamki = $this->__db1->fetchRow($kolorRamkiSelect); $kolorWypelnienieSelect = $this->__db1->select()->from(array('d' => 'ts_ogloszenia_kolory_wypelnienia_pl'), array('d.id', 'd.nazwa', 'd.kolor'))->where('d.id = ?', $sesOgloszenia->postData['dr_wypelnienie_kolor']); $this->view->kolorWypelnienia = $this->__db1->fetchRow($kolorWypelnienieSelect); $this->render('dodaj-krok-2'); break; // 333333 // 333333 case 3: $this->view->krok = 3; $sesOgloszenia = new Zend_Session_Namespace('ogloszenia'); if ($request->getPost()) { // post $post = $request->getPost(); // TS_Functions::pre($post); //die; $tabKomunikatow = array(); $wszystkoOK = true; $emptyValidator = new Zend_Validate_NotEmpty(); $emailValidator = new Zend_Validate_EmailAddress(Zend_Validate_Hostname::ALLOW_DNS | Zend_Validate_Hostname::ALLOW_LOCAL); $nipValidator = new Zend_Validate_Nip(); foreach ($post as $zmienna => $wartosc) { // echo $zmienna.' '.$wartosc.'<br>'; // bez faktury if ($zmienna == 'imie' && !$emptyValidator->isValid($wartosc)) { $wszystkoOK = false; $tabKomunikatow['imie'] = "Podaj imię."; } if ($zmienna == 'nazwisko' && !$emptyValidator->isValid($wartosc)) { $wszystkoOK = false; $tabKomunikatow['nazwisko'] = "Podaj nazwisko."; } if ($zmienna == 'email' && !$emptyValidator->isValid($wartosc)) { $wszystkoOK = false; $tabKomunikatow['email'] = "Podaj email."; } if ($zmienna == 'email' && $emptyValidator->isValid($wartosc) && !$emailValidator->isValid($wartosc)) { $wszystkoOK = false; $tabKomunikatow['email'] = "Nieprawidłowy adres email."; } if ($zmienna == 'telefon' && !$emptyValidator->isValid($wartosc)) { $wszystkoOK = false; $tabKomunikatow['telefon'] = "Podaj telefon."; } // z faktura if ($post['czy_faktura'] && intval($post['czy_faktura']) == 1) { if ($zmienna == 'nr_budynku' && !$emptyValidator->isValid($wartosc)) { $wszystkoOK = false; $tabKomunikatow['nr_budynku'] = "Podaj nr budynku."; } if ($zmienna == 'miejscowosc' && !$emptyValidator->isValid($wartosc)) { $wszystkoOK = false; $tabKomunikatow['miejscowosc'] = "Podaj miejscowosc."; } if ($zmienna == 'kod_pocztowy' && !$emptyValidator->isValid($wartosc)) { $wszystkoOK = false; $tabKomunikatow['kod_pocztowy'] = "Podaj kod pocztowy."; } if ($zmienna == 'nip' && !$emptyValidator->isValid($wartosc)) { $wszystkoOK = false; $tabKomunikatow['nip'] = "Podaj NIP."; } if ($zmienna == 'nip' && $emptyValidator->isValid($wartosc) && !$nipValidator->isValid($wartosc)) { $wszystkoOK = false; $tabKomunikatow['nip'] = "Podaj prawidłowy NIP."; } } } if (!isset($post['regulamin'])) { $wszystkoOK = false; $tabKomunikatow['regulamin'] = "Musisz zaakceptować regulamin."; } if ($wszystkoOK) { $OgloszenieKoszyk = new Application_Model_DbTable_OgloszeniaKoszyk(); $data = array('czy_faktura' => $post['czy_faktura'], 'nazwisko' => $post['nazwisko'], 'email' => $post['email'], 'telefon' => $post['telefon'], 'firma' => $post['firma'], 'nip' => $post['nip'], 'ulica' => $post['ulica'], 'nr_budynku' => $post['nr_budynku'], 'nr_mieszkania' => $post['nr_mieszkania'], 'miejscowosc' => $post['miejscowosc'], 'kod_pocztowy' => $post['kod_pocztowy'], 'sposob_platnosci' => $post['platnosc'], 'czy_faktura' => 1); $OgloszenieKoszyk->update($data, array('id_poz = ?' => $sesOgloszenia->idOgloszenia)); $this->getHelper('Redirector')->setGotoRoute(array('krok' => 4), 'dodaj-ogloszenie'); } else { $this->view->post = $post; $this->view->tabKomunikatow = $tabKomunikatow; } } else { // post end $OgloszenieKoszyk = new Application_Model_DbTable_OgloszeniaKoszyk(); $ogloszeniaKoszykSql = $OgloszenieKoszyk->select()->where('id_poz = ?', $sesOgloszenia->idOgloszenia); $this->view->ogloszenie = $this->__db1->fetchRow($ogloszeniaKoszykSql); } $this->render('dodaj-krok-3'); break; // 444444 // 444444 case 4: $this->view->krok = 4; $sesOgloszenia = new Zend_Session_Namespace('ogloszenia'); $OgloszenieKoszyk = new Application_Model_DbTable_OgloszeniaKoszyk(); $ogloszeniaKoszykSql = $OgloszenieKoszyk->select()->where('id_poz = ?', $sesOgloszenia->idOgloszenia); $ogloszenie = $this->__db1->fetchRow($ogloszeniaKoszykSql); if ($ogloszenie) { if ($ogloszenie['sposob_platnosci'] == 1) { $txt1 = 'przelew bankowy'; $txt2 = 'nie dotyczy'; } else { $txt1 = 'płatność on-line'; $txt2 = 'oczekuje'; } // rabaty i cena ostateczna $rabatySelect = $this->__db1->select()->from(array('r' => 'ts_ogloszenia_rabaty_pl'), array('r.*'))->order('r.ile_ogloszen_min DESC'); $rabaty = $this->__db1->fetchAll($rabatySelect); $rabat = $this->policzRabatZaIloscEmisjiOgl(intval($ogloszenie['liczba_emisji']), $rabaty); $cenaZRabatem = number_format($ogloszenie['cena'] - $ogloszenie['cena'] * $rabat, 2, '.', ''); $OgloszenieZamowienia = new Application_Model_DbTable_OgloszeniaZamowienia(); $dataOgloszeniaZamowienia = array('nr_zamowienia' => md5($sesOgloszenia->idOgloszenia . date('Y-m-d')), 'data_zamowienia' => new Zend_Db_Expr('NOW()'), 'suma_liczba_emisji' => $ogloszenie['liczba_emisji'], 'suma_cena' => $ogloszenie['cena'], 'cena_ost' => $cenaZRabatem, 'sposob_plat' => $txt1, 'status_zam' => "zamówione", 'status_plat' => $txt2, 'tytul_przelewu' => $ogloszenie['nr_ogloszenia'], 'nr_ogloszenia' => $ogloszenie['nr_ogloszenia'], 'faktura' => $ogloszenie['czy_faktura'], 'imie' => $ogloszenie['imie'], 'nazwisko' => $ogloszenie['nazwisko'], 'firma' => addslashes($ogloszenie['firma']), 'nip' => $ogloszenie['nip'], 'ulica' => $ogloszenie['ulica'], 'nr_budynku' => $ogloszenie['nr_budynku'], 'nr_mieszkania' => $ogloszenie['nr_mieszkania'], 'miejscowosc' => $ogloszenie['miejscowosc'], 'kod_pocztowy' => $ogloszenie['kod_pocztowy'], 'poczta' => $ogloszenie['poczta'], 'email' => $ogloszenie['email'], 'telefon' => $ogloszenie['telefon']); $this->view->ogloszenie = $dataOgloszeniaZamowienia; $idOgloszeniaZamowienia = $OgloszenieZamowienia->insert($dataOgloszeniaZamowienia); $sesOgloszenia->idOgloszeniaZamowienia = $idOgloszeniaZamowienia; $this->view->idOgloszeniaZamowienia = $idOgloszeniaZamowienia; $Ogloszenia = new Application_Model_DbTable_Ogloszenia(); $dataOgloszenia = array('id_zamowienia' => $idOgloszeniaZamowienia, 'data_dodania' => new Zend_Db_Expr('NOW()'), 'id_ogloszeniodawcy' => "0", 'kod_DTP' => addslashes($ogloszenie['kod_DTP']), 'nr_ogloszenia' => $ogloszenie['nr_ogloszenia'], 'id_kategoria' => $ogloszenie['id_kategoria'], 'id_dzial' => $ogloszenie['id_dzial'], 'tresc' => addslashes($ogloszenie['tresc']), 'liczba_znakow' => $ogloszenie['liczba_znakow'], 'dr_wytluszczony' => $ogloszenie['dr_wytluszczony'], 'dr_wersaliki' => $ogloszenie['dr_wersaliki'], 'dr_duza_czcionka' => $ogloszenie['dr_duza_czcionka'], 'dr_kolor_tekstu' => $ogloszenie['dr_kolor_tekstu'], 'dr_ramka' => $ogloszenie['dr_ramka'], 'dr_wypelnienie_kolor' => $ogloszenie['dr_wypelnienie_kolor'], 'liczba_emisji' => $ogloszenie['liczba_emisji'], 'publikacja_internet' => $ogloszenie['publikacja_internet'], 'zdjecie' => $ogloszenie['zdjecie'], 'cena' => $ogloszenie['cena']); $idOgloszenia = $Ogloszenia->insert($dataOgloszenia); $sesOgloszenia->idOgloszenia = $idOgloszenia; $OgloszenieNumeryKoszyk = new Application_Model_DbTable_OgloszeniaNumeryKoszyk(); $selectOgloszeniaNumeryKoszyk = $OgloszenieNumeryKoszyk->select('nr_ogloszenia', 'rok')->where('id_poz = ?', $ogloszenie['id_poz']); $numeryKoszyk = $OgloszenieNumeryKoszyk->fetchAll($selectOgloszeniaNumeryKoszyk); $OgloszenieNumery = new Application_Model_DbTable_OgloszeniaNumery(); foreach ($numeryKoszyk as $nrKoszyk) { $dataOgloszeniaNymery = array('id_ogl' => $idOgloszenia, 'nr_ogloszenia' => $nrKoszyk['nr_ogloszenia'], 'rok' => $nrKoszyk['rok']); $OgloszenieNumery->insert($dataOgloszeniaNymery); } $OgloszenieKoszyk = new Application_Model_DbTable_OgloszeniaKoszyk(); // $OgloszenieKoszyk->delete(array('id_poz = ?' => $idOgloszeniaZamowienia)); // $OgloszenieNumeryKoszyk->delete(array('id_poz = ?' => $idOgloszeniaZamowienia)); if ($txt1 == 'przelew bankowy') { $Teksty = new Application_Model_DbTable_Teksty(); $tekstySql = $Teksty->select()->where('id = 101140')->orWhere('id = 101141')->order('id ASC'); $tekstyResults = $Teksty->fetchAll($tekstySql); $mail = new TS_Mail(); $mail->send(array('to' => $ogloszenie['email'], 'subject' => 'Potwierdzenie nadania ogłoszenia', 'view' => array('script' => 'potwierdzenienadaniaogloszenia', 'params' => array('do' => 'user', 'tresc' => $ogloszenie['tresc'], 'liczbaEmisji' => $ogloszenie['liczba_emisji'], 'cenaOstateczna' => $cenaZRabatem, 'sposobPlatnosci' => $txt1, 'nrOgloszenia' => $ogloszenie['nr_ogloszenia'], 'kom1' => $tekstyResults[0]['tekst'], 'kom2' => $tekstyResults[1]['tekst'])))); } if ($ogloszenie['zdjecie'] != "") { $fotoUrl = $this->view->serverUrl() . $this->view->baseUrl() . '/images/tresci/ogloszenia/mini/' . $ogloszenie['zdjecie']; $mail = new TS_Mail(); $mail->send(array('to' => array("*****@*****.**", "*****@*****.**"), 'subject' => 'Potwierdzenie nadania ogłoszenia', 'view' => array('script' => 'potwierdzenienadaniaogloszenia', 'params' => array('do' => 'redakcja', 'tresc' => $ogloszenie['tresc'], 'liczbaEmisji' => $ogloszenie['liczba_emisji'], 'cenaOstateczna' => $cenaZRabatem, 'sposobPlatnosci' => $txt1, 'nrOgloszenia' => $ogloszenie['nr_ogloszenia'], 'email' => $ogloszenie['email'], 'fotoUrl' => $fotoUrl)))); } } // $this->view->ogloszenie = $ogloszenie; $OgloszeniaPlatnosci = new Application_Model_DbTable_OgloszeniaPlatnosci(); $ogloszeniaPlatnosciSql = $OgloszeniaPlatnosci->select()->where('id = 1'); $this->view->ogloszeniaPlatnosci = $OgloszeniaPlatnosci->fetchRow($ogloszeniaPlatnosciSql); $Teksty = new Application_Model_DbTable_Teksty(); $tekstySql = $Teksty->select()->where('id = 101141'); $this->view->teksty = $Teksty->fetchRow($tekstySql); // echo 'cena:'.$ogloszenie['cena'].'<br>'; //die; // echo 'rabat:'.$rabat.'<br>'; //die; // echo 'cenaZRabatem:'.$cenaZRabatem.'<br>'; die; $this->render('dodaj-krok-4'); break; default: throw new Zend_Controller_Action_Exception('Page not found!', 404); break; } }