public function generaMailEntrada($idEntrada, $idS = 1) { $OM = new OptionsModel(); $TEXT = $OM->getOption('BODY_MAIL_ENTRADES', $idS); $EM = new EntradesModel(); $OE = $EM->getEntradaById($idEntrada); $OA = $EM->getActivitatById($OE['idEspectacle']); $TEXT = str_replace('{{NUM_ENTRADES}}', $OE['num_entrades'], $TEXT); $TEXT = str_replace('{{ACTIVITAT}}', $OA['Nom'], $TEXT); $TEXT = str_replace('{{DIA}}', $OA['Dia'], $TEXT); $TEXT = str_replace('{{HORA}}', $OA['Hora'], $TEXT); $TEXT = str_replace('{{NOM_COMPRA}}', $OE['nom_reserva'], $TEXT); \Helpers\MyHelpers\Pdf::generateEntrada($EM->EntradaObject($OE, true)); $URL = self::$URL_ENTRADES . $OE['idEntrada'] . '.pdf'; $this->enviaMail('*****@*****.**', '*****@*****.**', 'Entrada per a un espectacle', $TEXT, $URL); return $this->enviaMail('*****@*****.**', $OE['email_reserva'], 'Entrada per a un espectacle', $TEXT, $URL); }
/** * Carrego les dades bàsiques de les comandes que ha vist l'usuari **/ public function getComandes() { $RET = array(); $LlistatComandes = $this->db->select("\r\n SELECT * \r\n FROM comandes c\r\n LEFT JOIN localitats l ON (l.l_idComanda = c.co_idComanda)\r\n LEFT JOIN sessions s ON (s.s_id = l.l_idSessio)\r\n LEFT JOIN espectacles e ON (e.e_id = s.s_idEspectacle)\r\n where c.co_IdClient = :id AND c.co_estat = 'P' AND l.l_estat = 'O'\r\n ", array('id' => $this->client['c_id'])); foreach ($LlistatComandes as $K => $V) { if (!isset($RET[$V['co_Codi']])) { $RET[$V['co_Codi']] = array(); } $RET[$V['co_Codi']]['Espectacle'] = $V['e_Titol']; $RET[$V['co_Codi']]['Sessio'] = G::getDataText($V['s_DataHora']); $RET[$V['co_Codi']]['Seient'][] = $V['l_zona'] . '-' . $V['l_fila'] . '-' . $V['l_seient']; $RET[$V['co_Codi']]['URL_ENTRADES'] = Pdf::getEntradesWeb($V['co_Codi']); } return $RET; }
/** * Funció que imprimeix les entrades d'una sessió en una sola comanda. **/ function printAllEntrades() { $R = $this->getAjaxData(); //Carrego la sessió que vull imprimir totes les entrades $STO = new SessioTableObject(null, SessioTableObject::FROM_EMPTY); $STO->loadById($R['idSessio']); //per totes les localitats de la sessió, les marco com ocupades i venudes en metàl·lic. //Carrego el teatre $TTO = new TeatreTableObject(null, TeatreTableObject::FROM_EMPTY); $TTO->loadById($STO->sessio['s_idTeatre']); $planol = $TTO->getPlanol(); foreach ($planol['zones'] as $idZ => $Z) { foreach ($Z['files'] as $idF => $F) { //Creo una nova comanda i començo a vendre les entrades $CTO = new ComandaTableObject(null, ComandaTableObject::FROM_EMPTY); $CTO->newComandaId(ComandaTableObject::TIPUS_PAGAMENT_METALIC, ComandaTableObject::TIPUS_LLOCCOMPRA_TAQUILLA, ComandaTableObject::TIPUS_COMANDA_VENTA); //Repassem els seients ( si la línia és en blanc, exist serà false ) $exist = false; foreach ($F['seients'] as $idS => $S) { //Per cada seient, faig una venda. $id = $Z['codi'] . '-' . intval($F['num_fila']) . '-' . intval($S['numero']) . '-' . $STO->getSessioId(); if ($S['numero'] > 0 && $S['tipus'] == 'planol-cercle') { $LTO = new LocalitatTableObject(null, LocalitatTableObject::FROM_EMPTY); $LTO->loadLocalitatByIdString($id); $LTO->updateLocalitat($CTO, LocalitatTableObject::ESTAT_OCUPADA); $LTO->doSave(); $exist = true; } } //Si la línia no és en blanc i hi ha seients la guardem if ($exist) { $CTO->comanda['co_estat'] = ComandaTableObject::TIPUS_ESTAT_PAGAT; $CTO->doMarcarPagatsOK(); $CTO->doSave(); $CTO->loadComanda(); Pdf::generateEntrades($CTO, false); } } } }
public function PrintEntrades() { $R = $this->getAjaxData(); $CTO = new ComandaTableObject(); $CTO->loadComandaByCodi($R['CodiComanda']); if ($CTO->isPagada()) { echo json_encode(Pdf::generateEntrades($CTO, false)); } else { throw new MyException("L'entrada que vol imprimir no existeix o no s'ha reservat correctament."); } }
public function printLlistatEntrades() { $postdata = file_get_contents("php://input"); $request = json_decode($postdata, true); \Helpers\MyHelpers\Pdf::generateLlistatEntrades($request['idEspectacle']); echo json_encode($request['idEspectacle']); }
/** * Funció que envia el mail d'una comanda amb les entrades **/ public static function sendEmailComanda(ComandaTableObject $CTO) { $PAR = Pdf::generateEntrades($CTO); if (!empty($CTO->comanda['co_EmailCompra']) && $CTO->comanda['co_TipusComanda'] == ComandaTableObject::TIPUS_COMANDA_VENTA) { $PAR['Mail']->send(); } }