/** * Displays the participant edit form * * @param string $tpl - The template * * @throws Exception * @return mixed|void */ public function display($tpl = null) { $booking_id = JFactory::getApplication()->input->getInt('booking_id', 0); $model = $this->getModel(); $booking = null; if (!empty($booking_id)) { $booking = $model->getBooking(); } if (!$booking) { $booking = JTable::getInstance('bookings', 'Table'); $event_id = JFactory::getApplication()->input->getInt("event_id", 0); if (!empty($event_id)) { $booking->semid = $event_id; } $booking->uuid = MatukioHelperPayment::getUuid(true); } $db = JFactory::getDbo(); $db->setQuery("SELECT r.id AS value, CONCAT(a.title, ' ', r.begin) AS text FROM #__matukio_recurring AS r LEFT JOIN #__matukio AS a ON r.event_id = a.id "); $events = (array) $db->loadObjectList(); $this->event_select = JHtml::_('select.genericlist', $events, 'event_id', '', 'value', 'text', $booking->semid); $dispatcher = JDispatcher::getInstance(); JPluginHelper::importPlugin("payment"); $gateways = $dispatcher->trigger('onTP_GetInfo', array(MatukioHelperPayment::$matukio_payment_plugins)); $payment = array(); foreach ($gateways as $gway) { $payment[] = array("name" => $gway->id, "title" => $gway->name); } // Booking status $options[] = array("value" => MatukioHelperUtilsBooking::$PENDING, "text" => MatukioHelperUtilsBooking::getBookingStatusName(MatukioHelperUtilsBooking::$PENDING)); $options[] = array("value" => MatukioHelperUtilsBooking::$ACTIVE, "text" => MatukioHelperUtilsBooking::getBookingStatusName(MatukioHelperUtilsBooking::$ACTIVE)); $options[] = array("value" => MatukioHelperUtilsBooking::$WAITLIST, "text" => MatukioHelperUtilsBooking::getBookingStatusName(MatukioHelperUtilsBooking::$WAITLIST)); $options[] = array("value" => MatukioHelperUtilsBooking::$ARCHIVED, "text" => JText::_("COM_MATUKIO_ARCHIVED")); $options[] = array("value" => MatukioHelperUtilsBooking::$DELETED, "text" => JText::_("COM_MATUKIO_DELETED")); $this->status_select = JHtml::_('select.genericlist', $options, 'status', '', 'value', 'text', $booking->status); $marks[] = array("value" => 0, "text" => JText::_("COM_MATUKIO_NONE")); $marks[] = array("value" => 1, "text" => "1"); $marks[] = array("value" => 2, "text" => "2"); $marks[] = array("value" => 3, "text" => "3"); $marks[] = array("value" => 4, "text" => "4"); $marks[] = array("value" => 5, "text" => "5"); $marks[] = array("value" => 6, "text" => "6"); $this->mark_select = JHtml::_('select.genericlist', $marks, 'mark', '', 'value', 'text', $booking->mark); $this->select_checkedin = MatukioHelperInput::getRadioButtonBool("checked_in", "checked_in", $booking->checked_in); $this->booking = $booking; $this->payment = $payment; $this->addToolbar(); parent::display($tpl); }
echo JText::_("COM_MATUKIO_NOT_PAID"); } ?> </td> </tr> <?php } ?> <tr> <td class="key"><?php echo JText::_("COM_MATUKIO_STATUS"); ?> </td> <td> <?php echo MatukioHelperUtilsBooking::getBookingStatusName($this->booking->status); ?> </td> </tr> <?php if (MatukioHelperSettings::getSettings('participant_grading_system', 0) && $this->booking->mark != 0) { ?> <tr> <td class="key"><?php echo JText::_("COM_MATUKIO_YOUR_MARK"); ?> </td> <td> <?php echo $this->booking->mark; ?>
/** * Shows the form * * @param string $tpl - The tmpl * * @return bool|mixed|object */ public function display($tpl = NULL) { $database = JFactory::getDBO(); $my = JFactory::getuser(); $dateid = JFactory::getApplication()->input->getInt('dateid', 1); $catid = JFactory::getApplication()->input->getInt('catid', 0); $search = JFactory::getApplication()->input->get('search', '', 'string'); $limit = JFactory::getApplication()->input->getInt('limit', 5); $limitstart = JFactory::getApplication()->input->getInt('limitstart', 0); $cid = JFactory::getApplication()->input->getInt('cid', 0); $uid = JFactory::getApplication()->input->getInt('uid', 0); $todo = JFactory::getApplication()->input->get('todo', 'print_eventlist'); // print_eventlist, print_booking, print_myevents, print $rows = null; $status = null; $headertext = null; $neudatum = MatukioHelperUtilsDate::getCurrentDate(); if ($limitstart < 0) { $limitstart = 0; } $ttlimit = ""; if ($limit > 0) { $ttlimit = "\nLIMIT {$limitstart}, {$limit}"; } /** * 65O9805443904 = public ?! * 653O875032490 = Meine Angebote * 6530387504345 = Meine Buchungen / Buchungsbestätigung ?! * * 3728763872762 = * csv */ $where = array(); $where[] = "a.pattern = ''"; $where[] = "a.published = '1'"; switch ($todo) { case "print_eventlist": $navioben = explode(" ", MatukioHelperSettings::getSettings('frontend_topnavshowmodules', 'SEM_NUMBER SEM_SEARCH SEM_CATEGORIES SEM_RESET')); break; case "print_booking": $navioben = explode(" ", MatukioHelperSettings::getSettings('frontend_topnavbookingmodules', 'SEM_NUMBER SEM_SEARCH SEM_CATEGORIES SEM_RESET')); break; case "print_myevents": $navioben = explode(" ", MatukioHelperSettings::getSettings('frontend_topnavoffermodules', 'SEM_NUMBER SEM_SEARCH SEM_CATEGORIES SEM_RESET')); break; case "print_teilnehmerliste": $navioben = ""; break; } if ($todo != "print_teilnehmerliste" && $todo != "csvlist" && $todo != "certificate" && $todo != "invoice") { if (in_array('SEM_TYPES', $navioben)) { switch ($dateid) { case "1": $where[] = "a.end > '{$neudatum}'"; break; case "2": $where[] = "a.end <= '{$neudatum}'"; break; } } } switch ($todo) { default: case "print_eventlist": if (!in_array('SEM_TYPES', $navioben)) { $where[] = "r.end > '{$neudatum}'"; } if ((isset($_GET["catid"]) or in_array('SEM_CATEGORIES', $navioben)) and $catid > 0) { $where[] = "a.catid ='{$catid}'"; } $headertext = JTEXT::_('COM_MATUKIO_EVENTS'); if ($cid) { $where[] = "r.id= '{$cid}'"; $headertext = JTEXT::_('COM_MATUKIO_EVENT'); } $database->setQuery("SELECT a.*, r.*, cc.title AS category FROM #__matukio_recurring AS r" . "\nLEFT JOIN #__matukio AS a ON r.event_id = a.id" . "\nLEFT JOIN #__categories AS cc ON cc.id = a.catid" . (count($where) ? "\nWHERE " . implode(' AND ', $where) : "") . "\nAND (r.semnum LIKE'%{$search}%' OR a.teacher LIKE '%{$search}%' OR a.title LIKE '%{$search}%'" . " OR a.shortdesc LIKE '%{$search}%' OR a.description LIKE '%{$search}%')"); $rows = $database->loadObjectList(); // Abzug der Kurse, die wegen Ausbuchung nicht angezeigt werden sollen if (!$cid) { $abid = array(); foreach ($rows as $row) { if ($row->stopbooking == 2) { $gebucht = MatukioHelperUtilsEvents::calculateBookedPlaces($row); if ($row->maxpupil - $gebucht->booked < 1) { $abid[] = $row->id; } } } if (count($abid) > 0) { $abid = implode(',', $abid); $where[] = "r.id NOT IN ({$abid})"; } } $database->setQuery("SELECT a.*, r.*, cc.title AS category FROM #__matukio_recurring AS r" . "\nLEFT JOIN #__matukio AS a ON r.event_id = a.id" . "\nLEFT JOIN #__categories AS cc" . "\nON cc.id = a.catid" . (count($where) ? "\nWHERE " . implode(' AND ', $where) : "") . "\nAND (a.semnum LIKE'%{$search}%' OR a.teacher LIKE '%{$search}%' OR a.title LIKE '%{$search}%' OR a.shortdesc LIKE '%{$search}%' OR a.description LIKE '%{$search}%')" . "\nORDER BY r.begin" . $ttlimit); $rows = $database->loadObjectList(); $status = array(); $paid = array(); $abid = array(); for ($i = 0, $n = count($rows); $i < $n; $i++) { $row =& $rows[$i]; $gebucht = MatukioHelperUtilsEvents::calculateBookedPlaces($row); $gebucht = $gebucht->booked; if (MatukioHelperUtilsDate::getCurrentDate() > $row->booked or $row->maxpupil - $gebucht < 1 and $row->stopbooking == 1 or $my->id == $row->publisher and MatukioHelperSettings::getSettings('booking_ownevents', 1) == 0) { $status[$i] = JTEXT::_('COM_MATUKIO_UNBOOKABLE'); } elseif ($row->maxpupil - $gebucht < 1 && $row->stopbooking == 0) { $status[$i] = JTEXT::_('COM_MATUKIO_BOOKING_ON_WAITLIST'); } elseif ($row->maxpupil - $gebucht < 1 && $row->stopbooking == 2) { $abid[] = $row->id; } else { $status[$i] = JTEXT::_('COM_MATUKIO_NOT_EXCEEDED'); } $database->setQuery("SELECT * FROM #__matukio_bookings WHERE semid='{$row->id}' AND userid='{$my->id}'"); $temp = $database->loadObjectList(); if (count($temp) > 0) { $status[$i] = JTEXT::_('COM_MATUKIO_ALREADY_BOOKED'); if ($temp[0]->paid == 1) { $rows[$i]->fees = $rows[$i]->fees . " - " . JTEXT::_('COM_MATUKIO_PAID'); } } $rows[$i]->codepic = ""; } break; // My bookings ?! // My bookings ?! case "print_booking": $headertext = JTEXT::_('COM_MATUKIO_MY_BOOKINGS') . " - " . $my->name; if (in_array('SEM_CATEGORIES', $navioben) and $catid > 0) { $where[] = "a.catid ='{$catid}'"; } $where[] = "cc.userid = '" . $my->id . "'"; if ($cid) { $where[] = "cc.semid = '" . $cid . "'"; $headertext = JTEXT::_('COM_MATUKIO_BOOKING_CONFIRMATION') . " - " . $my->name; } $database->setQuery("SELECT a.*, r.*, cat.title AS category, cc.bookingdate AS bookingdate, cc.id AS bookid, cc.status AS bookingstatus\r\n\t\t\t\t\tFROM #__matukio_recurring AS r\r\n\t\t\t\t\tLEFT JOIN #__matukio AS a ON r.event_id = a.id\r\n\t\t\t\t\tLEFT JOIN #__matukio_bookings AS cc ON cc.semid = r.id\r\n\t\t\t\t\tLEFT JOIN #__categories AS cat ON cat.id = a.catid" . (count($where) ? "\nWHERE " . implode(' AND ', $where) : "") . "\nAND (r.semnum LIKE'%{$search}%' OR a.teacher LIKE '%{$search}%' OR a.title LIKE '%{$search}%' OR a.shortdesc LIKE '%{$search}%'\r\n OR a.description LIKE '%{$search}%')" . "\nORDER BY r.begin" . $ttlimit); $rows = $database->loadObjectList(); $status = array(); for ($i = 0, $n = count($rows); $i < $n; $i++) { $row =& $rows[$i]; $database->setQuery("SELECT * FROM #__matukio_bookings WHERE semid = '{$row->id}' ORDER BY id"); $temps = $database->loadObjectList(); $status[$i] = MatukioHelperUtilsBooking::getBookingStatusName($row->bookingstatus); $rows[$i]->codepic = $row->bookid; if ($temps[0]->paid == 1) { $rows[$i]->fees = $rows[$i]->fees . " - " . JTEXT::_('COM_MATUKIO_PAID'); } } break; // My events ?! // My events ?! case "print_myevents": if (in_array('SEM_CATEGORIES', $navioben) and $catid > 0) { $where[] = "a.catid ='{$catid}'"; } $where[] = "a.publisher = '" . $my->id . "'"; $database->setQuery("SELECT a.*, r.* cat.title AS category FROM #__matukio_recurring AS r\r\n\t\t\t \t LEFT JOIN #__matukio AS a ON r.eventid = a.id\r\n\t\t\t\t\tLEFT JOIN #__categories AS cat ON cat.id = a.catid" . (count($where) ? "\nWHERE " . implode(' AND ', $where) : "") . "\nAND (r.semnum LIKE'%{$search}%' OR a.teacher LIKE '%{$search}%' OR a.title LIKE '%{$search}%' OR a.shortdesc LIKE '%{$search}%' OR a.description LIKE '%{$search}%')" . "\nORDER BY r.begin" . $ttlimit); $rows = $database->loadObjectList(); $status = array(); $headertext = JTEXT::_('COM_MATUKIO_MY_OFFERS') . " - " . $my->name; for ($i = 0, $n = count($rows); $i < $n; $i++) { $row =& $rows[$i]; $status[$i] = MatukioHelperUtilsBooking::getBookingStatusName($row->bookingstatus); $rows[$i]->codepic = ""; } break; case "print_teilnehmerliste": // TODO implement userchecking $art = JFactory::getApplication()->input->getInt('art', 0); $this->art = $art; if ($art == 1) { $this->setLayout("signaturelist"); } else { $this->setLayout("participants"); } break; case "csvlist": // TODO implement userchecking $art = JFactory::getApplication()->input->getInt('art', 0); $this->art = $art; $this->cid = $cid; $this->setLayout("csv"); break; case "certificate": // TODO implement userchecking $art = JFactory::getApplication()->input->getInt('art', 0); $uid = JFactory::getApplication()->input->getInt('uid', 0); $this->art = $art; $this->uid = $uid; $this->setLayout("certificate"); break; case "invoice": // TODO implement userchecking $art = JFactory::getApplication()->input->getInt('art', 0); $uid = JFactory::getApplication()->input->getInt('uid', 0); $this->art = $art; $this->uid = $uid; $this->setLayout("invoice"); break; } $this->rows = $rows; $this->status = $status; $this->headertext = $headertext; parent::display($tpl); }
/** * Gets the replacements for the event & (booking) * * @param object $event - The event data * @param object $booking - The booking data * @param int $nr - the number * * @return mixed */ public static function getReplaces($event, $booking = null, $nr = null) { $needles = array('event' => (int) $event->id, 'category' => 0); $itemId = MatukioHelperRoute::_findItem($needles)->id; if ($nr != null) { $replaces["MAT_NR"] = $nr; } // Current date $replaces["MAT_DATE"] = JHTML::_('date', '', MatukioHelperSettings::getSettings('date_format_without_time', 'd-m-Y')); // Signature $replaces["MAT_SIGNATURE"] = MatukioHelperSettings::getSettings('mat_signature', 'Please do not answer this E-Mail.'); // Event data $replaces["MAT_EVENT_SEMNUM"] = $event->semnum; // Alias $replaces["MAT_EVENT_NUMBER"] = $event->semnum; $replaces["MAT_EVENT_CATID"] = $event->catid; $replaces["MAT_EVENT_CATEGORY"] = JText::_($event->category); $replaces["MAT_EVENT_TITLE"] = JText::_($event->title); $replaces["MAT_EVENT_TARGET"] = JText::_($event->target); $replaces["MAT_EVENT_SHORTDESC"] = JText::_($event->shortdesc); // TODO change image path $replaces["MAT_EVENT_DESCRIPTION"] = JHTML::_('content.prepare', $event->description); $location = $event->place; // Locations if ($event->place_id > 0) { $locobj = MatukioHelperUtilsEvents::getLocation($event->place_id); $location = $locobj->location; } $replaces["MAT_EVENT_PLACE"] = $location; $replaces["MAT_EVENT_LOCATION"] = $location; $replaces["MAT_EVENT_TEACHER"] = $event->teacher; // Alias $replaces["MAT_EVENT_TUTOR"] = $event->teacher; if ($event->fees > 0) { $replaces["MAT_EVENT_FEES"] = MatukioHelperUtilsEvents::getFormatedCurrency($event->fees, MatukioHelperSettings::_('currency_symbol', '$')); } else { $replaces["MAT_EVENT_FEES"] = JText::_("COM_MATUKIO_FREE"); } $replaces["MAT_EVENT_ORGANIZER_ID"] = $event->publisher; $replaces["MAT_EVENT_ORGANIZER"] = JFactory::getUser($event->publisher)->name; $replaces["MAT_EVENT_MAXPUPIL"] = $event->maxpupil; $replaces["MAT_EVENT_BOOKEDPUPIL"] = $event->bookedpupil; $replaces["MAT_EVENT_BEGIN"] = JHTML::_('date', $event->begin, MatukioHelperSettings::getSettings('date_format', 'd-m-Y, H:i')); $replaces["MAT_EVENT_END"] = JHTML::_('date', $event->end, MatukioHelperSettings::getSettings('date_format', 'd-m-Y, H:i')); $replaces["MAT_EVENT_BOOKED"] = JHTML::_('date', $event->booked, MatukioHelperSettings::getSettings('date_format', 'd-m-Y, H:i')); $replaces["MAT_EVENT_GMAPLOC"] = $event->gmaploc; $replaces["MAT_EVENT_NRBOOKED"] = $event->nrbooked; /* Alias */ $custom10 = explode("|", $event->zusatz10); $custom11 = explode("|", $event->zusatz11); $custom12 = explode("|", $event->zusatz12); $custom13 = explode("|", $event->zusatz13); $custom14 = explode("|", $event->zusatz14); $custom15 = explode("|", $event->zusatz15); $custom16 = explode("|", $event->zusatz16); $custom17 = explode("|", $event->zusatz17); $custom18 = explode("|", $event->zusatz18); $custom19 = explode("|", $event->zusatz19); $custom20 = explode("|", $event->zusatz20); $custom1 = explode("|", $event->zusatz1); $custom2 = explode("|", $event->zusatz2); $custom3 = explode("|", $event->zusatz3); $custom4 = explode("|", $event->zusatz4); $custom5 = explode("|", $event->zusatz5); $custom6 = explode("|", $event->zusatz6); $custom7 = explode("|", $event->zusatz7); $custom8 = explode("|", $event->zusatz8); $custom9 = explode("|", $event->zusatz9); $replaces["MAT_EVENT_CUSTOM10"] = $custom10[0]; $replaces["MAT_EVENT_CUSTOM11"] = $custom11[0]; $replaces["MAT_EVENT_CUSTOM12"] = $custom12[0]; $replaces["MAT_EVENT_CUSTOM13"] = $custom13[0]; $replaces["MAT_EVENT_CUSTOM14"] = $custom14[0]; $replaces["MAT_EVENT_CUSTOM15"] = $custom15[0]; $replaces["MAT_EVENT_CUSTOM16"] = $custom16[0]; $replaces["MAT_EVENT_CUSTOM17"] = $custom17[0]; $replaces["MAT_EVENT_CUSTOM18"] = $custom18[0]; $replaces["MAT_EVENT_CUSTOM19"] = $custom19[0]; $replaces["MAT_EVENT_CUSTOM20"] = $custom20[0]; $replaces["MAT_EVENT_CUSTOM1"] = $custom1[0]; $replaces["MAT_EVENT_CUSTOM2"] = $custom2[0]; $replaces["MAT_EVENT_CUSTOM3"] = $custom3[0]; $replaces["MAT_EVENT_CUSTOM4"] = $custom4[0]; $replaces["MAT_EVENT_CUSTOM5"] = $custom5[0]; $replaces["MAT_EVENT_CUSTOM6"] = $custom6[0]; $replaces["MAT_EVENT_CUSTOM7"] = $custom7[0]; $replaces["MAT_EVENT_CUSTOM8"] = $custom8[0]; $replaces["MAT_EVENT_CUSTOM9"] = $custom9[0]; $replaces["MAT_EVENT_ZUSATZ10"] = $replaces["MAT_EVENT_CUSTOM10"]; $replaces["MAT_EVENT_ZUSATZ11"] = $replaces["MAT_EVENT_CUSTOM11"]; $replaces["MAT_EVENT_ZUSATZ12"] = $replaces["MAT_EVENT_CUSTOM12"]; $replaces["MAT_EVENT_ZUSATZ13"] = $replaces["MAT_EVENT_CUSTOM13"]; $replaces["MAT_EVENT_ZUSATZ14"] = $replaces["MAT_EVENT_CUSTOM14"]; $replaces["MAT_EVENT_ZUSATZ15"] = $replaces["MAT_EVENT_CUSTOM15"]; $replaces["MAT_EVENT_ZUSATZ16"] = $replaces["MAT_EVENT_CUSTOM16"]; $replaces["MAT_EVENT_ZUSATZ17"] = $replaces["MAT_EVENT_CUSTOM17"]; $replaces["MAT_EVENT_ZUSATZ18"] = $replaces["MAT_EVENT_CUSTOM18"]; $replaces["MAT_EVENT_ZUSATZ19"] = $replaces["MAT_EVENT_CUSTOM19"]; $replaces["MAT_EVENT_ZUSATZ20"] = $replaces["MAT_EVENT_CUSTOM20"]; $replaces["MAT_EVENT_ZUSATZ1"] = $replaces["MAT_EVENT_CUSTOM1"]; $replaces["MAT_EVENT_ZUSATZ2"] = $replaces["MAT_EVENT_CUSTOM2"]; $replaces["MAT_EVENT_ZUSATZ3"] = $replaces["MAT_EVENT_CUSTOM3"]; $replaces["MAT_EVENT_ZUSATZ4"] = $replaces["MAT_EVENT_CUSTOM4"]; $replaces["MAT_EVENT_ZUSATZ5"] = $replaces["MAT_EVENT_CUSTOM5"]; $replaces["MAT_EVENT_ZUSATZ6"] = $replaces["MAT_EVENT_CUSTOM6"]; $replaces["MAT_EVENT_ZUSATZ7"] = $replaces["MAT_EVENT_CUSTOM7"]; $replaces["MAT_EVENT_ZUSATZ8"] = $replaces["MAT_EVENT_CUSTOM8"]; $replaces["MAT_EVENT_ZUSATZ9"] = $replaces["MAT_EVENT_CUSTOM9"]; $replaces["MAT_EVENT_ZUSATZ10HINT"] = $event->zusatz10hint; $replaces["MAT_EVENT_ZUSATZ11HINT"] = $event->zusatz11hint; $replaces["MAT_EVENT_ZUSATZ12HINT"] = $event->zusatz12hint; $replaces["MAT_EVENT_ZUSATZ13HINT"] = $event->zusatz13hint; $replaces["MAT_EVENT_ZUSATZ14HINT"] = $event->zusatz14hint; $replaces["MAT_EVENT_ZUSATZ15HINT"] = $event->zusatz15hint; $replaces["MAT_EVENT_ZUSATZ16HINT"] = $event->zusatz16hint; $replaces["MAT_EVENT_ZUSATZ17HINT"] = $event->zusatz17hint; $replaces["MAT_EVENT_ZUSATZ18HINT"] = $event->zusatz18hint; $replaces["MAT_EVENT_ZUSATZ19HINT"] = $event->zusatz19hint; $replaces["MAT_EVENT_ZUSATZ20HINT"] = $event->zusatz20hint; $replaces["MAT_EVENT_ZUSATZ1HINT"] = $event->zusatz1hint; $replaces["MAT_EVENT_ZUSATZ2HINT"] = $event->zusatz2hint; $replaces["MAT_EVENT_ZUSATZ3HINT"] = $event->zusatz3hint; $replaces["MAT_EVENT_ZUSATZ4HINT"] = $event->zusatz4hint; $replaces["MAT_EVENT_ZUSATZ5HINT"] = $event->zusatz5hint; $replaces["MAT_EVENT_ZUSATZ6HINT"] = $event->zusatz6hint; $replaces["MAT_EVENT_ZUSATZ7HINT"] = $event->zusatz7hint; $replaces["MAT_EVENT_ZUSATZ8HINT"] = $event->zusatz8hint; $replaces["MAT_EVENT_ZUSATZ9HINT"] = $event->zusatz9hint; /* ALIAS */ $replaces["MAT_EVENT_CUSTOM10HINT"] = $event->zusatz10hint; $replaces["MAT_EVENT_CUSTOM11HINT"] = $event->zusatz11hint; $replaces["MAT_EVENT_CUSTOM12HINT"] = $event->zusatz12hint; $replaces["MAT_EVENT_CUSTOM13HINT"] = $event->zusatz13hint; $replaces["MAT_EVENT_CUSTOM14HINT"] = $event->zusatz14hint; $replaces["MAT_EVENT_CUSTOM15HINT"] = $event->zusatz15hint; $replaces["MAT_EVENT_CUSTOM16HINT"] = $event->zusatz16hint; $replaces["MAT_EVENT_CUSTOM17HINT"] = $event->zusatz17hint; $replaces["MAT_EVENT_CUSTOM18HINT"] = $event->zusatz18hint; $replaces["MAT_EVENT_CUSTOM19HINT"] = $event->zusatz19hint; $replaces["MAT_EVENT_CUSTOM20HINT"] = $event->zusatz20hint; $replaces["MAT_EVENT_CUSTOM1HINT"] = $event->zusatz1hint; $replaces["MAT_EVENT_CUSTOM2HINT"] = $event->zusatz2hint; $replaces["MAT_EVENT_CUSTOM3HINT"] = $event->zusatz3hint; $replaces["MAT_EVENT_CUSTOM4HINT"] = $event->zusatz4hint; $replaces["MAT_EVENT_CUSTOM5HINT"] = $event->zusatz5hint; $replaces["MAT_EVENT_CUSTOM6HINT"] = $event->zusatz6hint; $replaces["MAT_EVENT_CUSTOM7HINT"] = $event->zusatz7hint; $replaces["MAT_EVENT_CUSTOM8HINT"] = $event->zusatz8hint; $replaces["MAT_EVENT_CUSTOM9HINT"] = $event->zusatz9hint; $replaces["MAT_EVENT_CREATED_BY"] = $event->created_by; $replaces["MAT_EVENT_MODIFIED_BY"] = $event->modified_by; $replaces["MAT_EVENT_CREATED"] = JHTML::_('date', $event->created, MatukioHelperSettings::getSettings('date_format', 'd-m-Y, H:i')); $replaces["MAT_EVENT_WEBINAR"] = $event->webinar; if ($booking != null) { if (empty($booking->sid)) { $booking->sid = $booking->id; } // Booking data $replaces["MAT_BOOKING_ID"] = $booking->sid; $replaces["MAT_BOOKING_NUMBER"] = MatukioHelperUtilsBooking::getBookingId($booking->sid); $replaces["MAT_SIGN"] = "<span> </span>"; $user = JFactory::getUser($booking->userid); $replaces["MAT_BOOKING_USERNAME"] = ""; if ($booking->userid > 0) { $replaces["MAT_BOOKING_USERNAME"] = $user->username; } if (isset($booking->aname)) { $booking->aname = trim($booking->aname); } if (isset($booking->name)) { $booking->name = trim($booking->name); } // Old form if (isset($booking->aname) && !empty($booking->aname)) { $replaces["MAT_BOOKING_NAME"] = $booking->aname; } elseif (isset($booking->name) && !empty($booking->name)) { $replaces["MAT_BOOKING_NAME"] = $booking->name; } if (isset($booking->aemail) && !empty($booking->aemail)) { $replaces["MAT_BOOKING_EMAIL"] = $booking->aemail; } elseif (isset($booking->email) && !empty($booking->email)) { $replaces["MAT_BOOKING_EMAIL"] = $booking->email; } // Fix for empty E-Mail if (empty($replaces["MAT_BOOKING_EMAIL"])) { $replaces["MAT_BOOKING_EMAIL"] = $booking->email; } $replaces["MAT_BOOKING_SID"] = $booking->sid; $replaces["MAT_BOOKING_SEMID"] = $booking->semid; $replaces["MAT_BOOKING_USERID"] = $booking->userid; $replaces["MAT_BOOKING_CERTIFICATED"] = $booking->certificated; $replaces["MAT_EVENT_BOOKINGDATE"] = JHTML::_('date', $booking->bookingdate, MatukioHelperSettings::getSettings('date_format', 'd-m-Y, H:i')); $replaces["MAT_EVENT_UPDATED"] = JHTML::_('date', $booking->updated, MatukioHelperSettings::getSettings('date_format', 'd-m-Y, H:i')); $replaces["MAT_INVOICE_DATE"] = JHTML::_('date', $booking->bookingdate, MatukioHelperSettings::getSettings('date_format_without_time', 'd-m-Y')); if ($booking->payment_brutto > 0) { $replaces["MAT_INVOICE_NUMBER"] = MatukioHelperInvoice::getInvoiceNumber($booking->id, JHTML::_('date', $booking->bookingdate, 'Y')); } else { $replaces["MAT_INVOICE_NUMBER"] = ""; } $replaces["MAT_BOOKING_PAID"] = MatukioHelperUtilsBooking::getBookingPaidName($booking->paid); $replaces["MAT_BOOKING_PAID_NUM"] = $booking->paid; $replaces["MAT_BOOKING_PAYMENT_STATUS"] = $booking->payment_status; $replaces["MAT_BOOKING_PAYMENT_PLUGIN_DATA"] = $booking->payment_plugin_data; $replaces["MAT_BOOKING_NRBOOKED"] = $booking->nrbooked; // Alias $replaces["MAT_BOOKING_BOOKEDNR"] = $booking->nrbooked; $replaces["MAT_BOOKING_ZUSATZ10"] = $booking->zusatz10; $replaces["MAT_BOOKING_ZUSATZ11"] = $booking->zusatz11; $replaces["MAT_BOOKING_ZUSATZ12"] = $booking->zusatz12; $replaces["MAT_BOOKING_ZUSATZ13"] = $booking->zusatz13; $replaces["MAT_BOOKING_ZUSATZ14"] = $booking->zusatz14; $replaces["MAT_BOOKING_ZUSATZ15"] = $booking->zusatz15; $replaces["MAT_BOOKING_ZUSATZ16"] = $booking->zusatz16; $replaces["MAT_BOOKING_ZUSATZ17"] = $booking->zusatz17; $replaces["MAT_BOOKING_ZUSATZ18"] = $booking->zusatz18; $replaces["MAT_BOOKING_ZUSATZ19"] = $booking->zusatz19; $replaces["MAT_BOOKING_ZUSATZ20"] = $booking->zusatz20; $replaces["MAT_BOOKING_ZUSATZ1"] = $booking->zusatz1; $replaces["MAT_BOOKING_ZUSATZ2"] = $booking->zusatz2; $replaces["MAT_BOOKING_ZUSATZ3"] = $booking->zusatz3; $replaces["MAT_BOOKING_ZUSATZ4"] = $booking->zusatz4; $replaces["MAT_BOOKING_ZUSATZ5"] = $booking->zusatz5; $replaces["MAT_BOOKING_ZUSATZ6"] = $booking->zusatz6; $replaces["MAT_BOOKING_ZUSATZ7"] = $booking->zusatz7; $replaces["MAT_BOOKING_ZUSATZ8"] = $booking->zusatz8; $replaces["MAT_BOOKING_ZUSATZ9"] = $booking->zusatz9; /* Alias */ $replaces["MAT_BOOKING_CUSTOM10"] = $booking->zusatz10; $replaces["MAT_BOOKING_CUSTOM11"] = $booking->zusatz11; $replaces["MAT_BOOKING_CUSTOM12"] = $booking->zusatz12; $replaces["MAT_BOOKING_CUSTOM13"] = $booking->zusatz13; $replaces["MAT_BOOKING_CUSTOM14"] = $booking->zusatz14; $replaces["MAT_BOOKING_CUSTOM15"] = $booking->zusatz15; $replaces["MAT_BOOKING_CUSTOM16"] = $booking->zusatz16; $replaces["MAT_BOOKING_CUSTOM17"] = $booking->zusatz17; $replaces["MAT_BOOKING_CUSTOM18"] = $booking->zusatz18; $replaces["MAT_BOOKING_CUSTOM19"] = $booking->zusatz19; $replaces["MAT_BOOKING_CUSTOM20"] = $booking->zusatz20; $replaces["MAT_BOOKING_CUSTOM1"] = $booking->zusatz1; $replaces["MAT_BOOKING_CUSTOM2"] = $booking->zusatz2; $replaces["MAT_BOOKING_CUSTOM3"] = $booking->zusatz3; $replaces["MAT_BOOKING_CUSTOM4"] = $booking->zusatz4; $replaces["MAT_BOOKING_CUSTOM5"] = $booking->zusatz5; $replaces["MAT_BOOKING_CUSTOM6"] = $booking->zusatz6; $replaces["MAT_BOOKING_CUSTOM7"] = $booking->zusatz7; $replaces["MAT_BOOKING_CUSTOM8"] = $booking->zusatz8; $replaces["MAT_BOOKING_CUSTOM9"] = $booking->zusatz9; $replaces["MAT_BOOKING_UUID"] = $booking->uuid; if (!empty($booking->payment_method)) { $replaces["MAT_BOOKING_PAYMENT_METHOD"] = self::getPaymentMethodTitle($booking->payment_method); } else { $replaces["MAT_BOOKING_PAYMENT_METHOD"] = ""; } $replaces["MAT_BOOKING_PAYMENT_METHOD_RAW"] = $booking->payment_method; $replaces["MAT_BOOKING_PAYMENT_NUMBER"] = $booking->payment_number; $replaces["MAT_BOOKING_PAYMENT_NETTO"] = MatukioHelperUtilsEvents::getFormatedCurrency($booking->payment_netto, MatukioHelperSettings::_('currency_symbol', '$')); $replaces["MAT_BOOKING_PAYMENT_NET"] = $replaces["MAT_BOOKING_PAYMENT_NETTO"]; $replaces["MAT_BOOKING_PAYMENT_TAX"] = MatukioHelperUtilsEvents::getFormatedCurrency($booking->payment_tax, MatukioHelperSettings::_('currency_symbol', '$')); $replaces["MAT_BOOKING_PAYMENT_BRUTTO"] = MatukioHelperUtilsEvents::getFormatedCurrency($booking->payment_brutto, MatukioHelperSettings::_('currency_symbol', '$')); $replaces["MAT_BOOKING_PAYMENT_GROSS"] = $replaces["MAT_BOOKING_PAYMENT_BRUTTO"]; $replaces["MAT_BOOKING_COUPON_CODE"] = $booking->coupon_code; $replaces["MAT_BOOKING_STATUS"] = MatukioHelperUtilsBooking::getBookingStatusName($booking->status); /* Mark since 4.5 */ $replaces["MAT_BOOKING_MARK"] = $booking->mark; /* QR Codes */ $replaces["MAT_BOOKING_QRCODE_ID"] = MatukioHelperUtilsBooking::getBookingIdQRCode($booking->sid); $replaces["MAT_BOOKING_QRCODE"] = $replaces["MAT_BOOKING_QRCODE_ID"]; $replaces["MAT_BOOKING_BARCODE"] = MatukioHelperUtilsBooking::getBookingIdBarcode($booking->sid); // Checkin URLs and QR-Codes since 4.5 $checkinurl = JRoute::_("index.php?option=com_matukio&view=booking&task=checkin&uuid=" . $booking->uuid . "&Itemid=" . $itemId, true, -1); $replaces["MAT_BOOKING_CHECKIN_URL"] = $checkinurl; $replaces["MAT_BOOKING_CHECKIN_LINK"] = '<a href="' . $checkinurl . '">' . JText::_("COM_MATUKIO_CHECKIN_BOOKING") . "</a>"; $replaces["MAT_BOOKING_CHECKIN_QRCODE"] = MatukioHelperUtilsBooking::getBookingCheckinQRCode($checkinurl, $booking->sid); if ($event->fees > 0) { $replaces["MAT_BOOKING_FEES_STATUS"] = MatukioHelperUtilsEvents::getFormatedCurrency($booking->payment_brutto, MatukioHelperSettings::_('currency_symbol', '$')) . " (" . MatukioHelperUtilsBooking::getBookingPaidName($booking->paid) . ")"; } else { $replaces["MAT_BOOKING_FEES_STATUS"] = JText::_("COM_MATUKIO_FREE_EVENT"); } // Booking detail page @since 4.1.1 $replaces["MAT_BOOKING_DETAILPAGE_URL"] = JRoute::_("index.php?option=com_matukio&view=booking&uuid=" . $booking->uuid . "&Itemid=" . $itemId, true, -1); $replaces["MAT_BOOKING_DETAILPAGE"] = '<a href="' . JRoute::_("index.php?option=com_matukio&view=booking&uuid=" . $booking->uuid . "&Itemid=" . $itemId, true, -1) . '">' . JText::_("COM_MATUKIO_BOOKING_DETAILS") . "</a>"; $editbookinglink = JRoute::_("index.php?option=com_matukio&view=bookevent&cid=" . $booking->semid . "&uuid=" . $booking->uuid . "&Itemid=" . $itemId, true, -1); if (MatukioHelperSettings::getSettings('oldbookingform', 0) == 1) { $editbookinglink = JRoute::_(MatukioHelperRoute::getEventRoute($event->id, $event->catid, 1, $booking->id, $booking->uuid), true, -1); } $replaces["MAT_BOOKING_EDIT_URL"] = $editbookinglink; $replaces["MAT_BOOKING_EDIT"] = '<a href="' . $editbookinglink . '">' . JText::_("COM_MATUKIO_EDIT_YOUR_BOOKING") . "</a>"; // TODO Different fees } // Event info complete no booking here $replaces["MAT_EVENT_ALL_DETAILS_HTML"] = self::getEmailEventInfoHTML($event); $replaces["MAT_EVENT_ALL_DETAILS_TEXT"] = self::getEmailEventInfoTEXT($event); /* Other things */ $replaces["MAT_BANK_TRANSFER_INFORMATIONS"] = MatukioHelperPayment::getBanktransferInfo(MatukioHelperSettings::getSettings("banktransfer_account", ''), MatukioHelperSettings::getSettings("banktransfer_blz", ''), MatukioHelperSettings::getSettings("banktransfer_bank", ''), MatukioHelperSettings::getSettings("banktransfer_accountholder", ''), MatukioHelperSettings::getSettings("banktransfer_iban", ''), MatukioHelperSettings::getSettings("banktransfer_bic", '')); // CSV $bookingnewname = ""; if ($booking != null) { $replaces["MAT_CSV_BOOKING_DETAILS"] = self::getExportCSVBookingDetails($booking, $event, MatukioHelperSettings::getSettings('export_csv_separator', ';')); if (MatukioHelperSettings::getSettings('oldbookingform', 0) == 1) { // Old booking form if ($booking->userid > 0) { $user = JFactory::getUser($booking->userid); $replaces["MAT_BOOKING_NAME"] = $user->name; $replaces["MAT_BOOKING_EMAIL"] = $user->email; } } else { // New booking form fields $fields = MatukioHelperUtilsBooking::getBookingFields(); $fieldvals = explode(";", $booking->newfields); $value = array(); foreach ($fieldvals as $val) { $tmp = explode("::", $val); if (count($tmp) > 1) { $value[$tmp[0]] = $tmp[1]; } else { $value[$tmp[0]] = ""; } } foreach ($fields as $field) { if (!empty($value[$field->id])) { // Not use the Spacer fields if ($field->type != "spacer" && $field->type != "spacertext") { $replaces["MAT_BOOKING_" . strtoupper($field->field_name)] = $value[$field->id]; } if ($field->field_name == "firstname") { $bookingnewname .= $value[$field->id]; } if ($field->field_name == "lastname") { $bookingnewname .= " " . $value[$field->id]; } } else { // Not use the Spacer fields if ($field->type != "spacer" && $field->type != "spacertext") { $replaces["MAT_BOOKING_" . strtoupper($field->field_name)] = ""; } } } $bookingnewname = trim($bookingnewname); $replaces["MAT_BOOKING_COMMENT"] = $booking->comment; if (empty($replaces["MAT_BOOKING_NAME"])) { if (!empty($bookingnewname)) { $replaces["MAT_BOOKING_NAME"] = $bookingnewname; } else { if ($booking->userid > 0) { $user = JFactory::getUser($booking->userid); $replaces["MAT_BOOKING_NAME"] = $user->name; } } } } if (empty($replaces["MAT_BOOKING_EMAIL"])) { if ($booking->userid > 0) { $user = JFactory::getUser($booking->userid); $replaces["MAT_BOOKING_EMAIL"] = $user->email; } } // Booking complete $replaces["MAT_BOOKING_ALL_DETAILS_HTML"] = self::getEmailBookingInfoHTML($event, $booking, $bookingnewname); $replaces["MAT_BOOKING_ALL_DETAILS_TEXT"] = self::getEmailBookingInfoTEXT($event, $booking, $bookingnewname); } return $replaces; }