primo commit

This commit is contained in:
2024-12-17 17:34:10 +01:00
commit e650f8df99
16435 changed files with 2451012 additions and 0 deletions

View File

@ -0,0 +1 @@
<!DOCTYPE html><title></title>

View File

@ -0,0 +1,282 @@
<?php
/**
* @package JEM
* @copyright (C) 2013-2024 joomlaeventmanager.net
* @copyright (C) 2005-2009 Christoph Lukes
* @license https://www.gnu.org/licenses/gpl-3.0 GNU/GPL
*/
defined('_JEXEC') or die;
use Joomla\CMS\Button\FeaturedButton;
use Joomla\CMS\Router\Route;
use Joomla\CMS\HTML\HTMLHelper;
use Joomla\CMS\Language\Text;
use Joomla\CMS\Object\CMSObject;
HTMLHelper::addIncludePath(JPATH_COMPONENT.'/helpers/html');
$user = JemFactory::getUser();
$userId = $user->get('id');
$listOrder = $this->escape($this->state->get('list.ordering'));
$listDirn = $this->escape($this->state->get('list.direction'));
$canOrder = $user->authorise('core.edit.state', 'com_jem.category');
$saveOrder = $listOrder=='a.ordering';
$params = (isset($this->state->params)) ? $this->state->params : new CMSObject();
$settings = $this->settings;
$wa = $this->document->getWebAssetManager();
$wa->useScript('table.columns');
?>
<script>
$(document).ready(function() {
var h = <?php echo $settings->get('highlight','0'); ?>;
switch(h)
{
case 0:
break;
case 1:
highlightevents();
break;
}
});
</script>
<form action="<?php echo Route::_('index.php?option=com_jem&view=events'); ?>" method="post" name="adminForm" id="adminForm">
<div id="j-main-container" class="j-main-container">
<fieldset id="filter-bar" class=" mb-3">
<div class="row">
<div class="col-md-1">
<div class="row">
<div class="wauto-minwmax">
<div class="input-group">
<?php echo $this->lists['filter']; ?>
</div>
</div>
</div>
</div>
<div class="col-md-10">
<div class="row mb-12">
<div class="col-md-3">
<div class="input-group">
<input type="text" name="filter_search" id="filter_search" class="form-control" aria-describedby="filter_search-desc" placeholder="<?php echo Text::_('COM_JEM_SEARCH');?>" value="<?php echo $this->escape($this->state->get('filter_search')); ?>" inputmode="search" onChange="document.adminForm.submit();" >
<button type="submit" class="filter-search-bar__button btn btn-primary" aria-label="Search">
<span class="filter-search-bar__button-icon icon-search" aria-hidden="true"></span>
</button>
<button type="button" class="btn btn-primary" onclick="document.getElementById('filter_search').value='';this.form.submit();"><?php echo Text::_('JSEARCH_FILTER_CLEAR'); ?></button>
</div>
</div>
<div class="col-md-2">
<?php echo HTMLHelper::_('calendar', $this->state->get('filter_begin'), 'filter_begin', 'filter_begin', '%Y-%m-%d' , array('size'=>10, 'onchange'=>"this.form.fireEvent('submit');this.form.submit()",'placeholder'=>Text::_('COM_JEM_EVENTS_FILTER_STARTDATE')));?>
</div>
<div class="col-md-2">
<?php echo HTMLHelper::_('calendar', $this->state->get('filter_end'), 'filter_end', 'filter_end', '%Y-%m-%d' , array('size'=>10, 'onchange'=>"this.form.fireEvent('submit');this.form.submit()",'placeholder'=>Text::_('COM_JEM_EVENTS_FILTER_ENDDATE') ));?>
</div>
<div class="col-md-1 wauto-minwmax">
<select name="filter_state" class="inputbox form-select wauto-minwmax" onchange="this.form.submit()">
<option value=""><?php echo Text::_('JOPTION_SELECT_PUBLISHED');?></option>
<?php echo HTMLHelper::_('select.options', HTMLHelper::_('jgrid.publishedOptions'), 'value', 'text', $this->state->get('filter_state'), true);?>
</select>
</div>
<div class="col-md-2 wauto-minwmax">
<select name="filter_access" class="inputbox form-select wauto-minwmax" onchange="this.form.submit()">
<option value=""><?php echo Text::_('JOPTION_SELECT_ACCESS');?></option>
<?php echo HTMLHelper::_('select.options', HTMLHelper::_('access.assetgroups'), 'value', 'text', $this->state->get('filter.access'));?>
</select>
</div>
</div>
</div>
<div class="col-md-1">
<div class="row">
<div class="wauto-minwmax">
<div class=" float-end">
<?php echo $this->pagination->getLimitBox(); ?>
</div>
</div>
</div>
</div>
</div>
</fieldset>
<div class="clr"> </div>
<div class="table">
<table class="table table-striped itemList" id="eventList">
<thead>
<tr>
<th width="1%" class="center"><input type="checkbox" name="checkall-toggle" value="" title="<?php echo Text::_('JGLOBAL_CHECK_ALL'); ?>" onclick="Joomla.checkAll(this)" /></th>
<th class="nowrap"><?php echo HTMLHelper::_('grid.sort', 'COM_JEM_DATE', 'a.dates', $listDirn, $listOrder ); ?></th>
<th><?php echo HTMLHelper::_('grid.sort', 'COM_JEM_STARTTIME_SHORT', 'a.times', $listDirn, $listOrder ); ?></th>
<th class="nowrap"><?php echo HTMLHelper::_('grid.sort', 'COM_JEM_EVENT_TITLE', 'a.title', $listDirn, $listOrder ); ?></th>
<th><?php echo HTMLHelper::_('grid.sort', 'COM_JEM_VENUE', 'loc.venue', $listDirn, $listOrder ); ?></th>
<th><?php echo Text::_('COM_JEM_CATEGORIES'); ?></th>
<th width="1%"><?php echo HTMLHelper::_('grid.sort', 'JFEATURED', 'a.featured', $listDirn, $listOrder, NULL, 'desc'); ?></th>
<th width="1%" class="center nowrap"><?php echo Text::_('JSTATUS'); ?></th>
<th class="nowrap"><?php echo Text::_('COM_JEM_AUTHOR'); ?></th>
<th class="center"><?php echo HTMLHelper::_('grid.sort', 'COM_JEM_HITS', 'a.hits', $listDirn, $listOrder ); ?></th>
<th width="1%" class="center nowrap"><?php echo Text::_('COM_JEM_REGISTERED_USERS_SHORT'); ?></th>
<th width="9%" class="center"><?php echo HTMLHelper::_('grid.sort', 'JGRID_HEADING_ACCESS', 'a.access', $listDirn, $listOrder); ?></th>
<th width="1%" class="center nowrap"><?php echo HTMLHelper::_('grid.sort', 'COM_JEM_ID', 'a.id', $listDirn, $listOrder ); ?></th>
</tr>
</thead>
<tbody id="search_in_here">
<?php
foreach ($this->items as $i => $row) :
//Prepare date
$displaydate = JemOutput::formatShortDateTime($row->dates, null, $row->enddates, null, $this->jemsettings->showtime);
// Insert a break between date and enddate if possible
$displaydate = str_replace(" - ", " -<br />", $displaydate);
//Prepare time
if (!$row->times) {
$displaytime = '-';
} else {
$displaytime = JemOutput::formattime($row->times);
}
$ordering = ($listOrder == 'ordering');
$canCreate = $user->authorise('core.create');
$canEdit = $user->authorise('core.edit');
$canCheckin = $user->authorise('core.manage', 'com_checkin') || $row->checked_out == $userId || $row->checked_out == 0;
$canChange = $user->authorise('core.edit.state') && $canCheckin;
$venuelink = 'index.php?option=com_jem&amp;task=venue.edit&amp;id='.$row->locid;
$published = HTMLHelper::_('jgrid.published', $row->published, $i, 'events.');
?>
<tr class="row<?php echo $i % 2; ?>">
<td class="center"><?php echo HTMLHelper::_('grid.id', $i, $row->id); ?></td>
<td class="startdate">
<?php if ($row->checked_out) : ?>
<?php echo HTMLHelper::_('jgrid.checkedout', $i, $row->editor, $row->checked_out_time, 'events.', $canCheckin); ?>
<?php endif; ?>
<?php if ($canEdit) : ?>
<a href="<?php echo Route::_('index.php?option=com_jem&task=event.edit&id='.(int) $row->id); ?>">
<?php echo $displaydate; ?>
</a>
<?php else : ?>
<?php echo $displaydate; ?>
<?php endif; ?>
</td>
<td class="starttime"><?php echo $displaytime; ?></td>
<td class="eventtitle">
<?php if ($canEdit) : ?>
<a href="<?php echo Route::_('index.php?option=com_jem&task=event.edit&id='.(int) $row->id); ?>">
<?php echo $this->escape($row->title) . JemOutput::recurrenceicon($row); ?>
</a>
<?php else : ?>
<?php echo $this->escape($row->title) . JemOutput::recurrenceicon($row); ?>
<?php endif; ?>
<br />
<?php if (\Joomla\String\StringHelper::strlen($row->alias) > 25) : ?>
<?php echo \Joomla\String\StringHelper::substr( $this->escape($row->alias), 0 , 25).'...'; ?>
<?php else : ?>
<?php echo $this->escape($row->alias); ?>
<?php endif; ?>
</td>
<td class="venue">
<?php if ($row->venue) : ?>
<?php if ( $row->vchecked_out && ( $row->vchecked_out != $this->user->get('id') ) ) : ?>
<?php echo $this->escape($row->venue); ?>
<?php else : ?>
<span <?php echo JEMOutput::tooltip(Text::_('COM_JEM_EDIT_VENUE'), $row->venue, 'editlinktip'); ?>>
<a href="<?php echo $venuelink; ?>">
<?php echo $this->escape($row->venue); ?>
</a>
</span>
<?php endif; ?>
<?php else : ?>
<?php echo '-'; ?>
<?php endif; ?>
</td>
<td class="category">
<?php echo implode(", ", JemOutput::getCategoryList($row->categories, $this->jemsettings->catlinklist,true)); ?>
</td>
<td class="center">
<?php //echo HTMLHelper::_('jemhtml.featured', $i, $row->featured, $canChange);
$options = [
'task_prefix' => 'events.',
'disabled' => !$canChange,
'id' => 'featured-' . $row->id
];
echo (new FeaturedButton())
->render((int) $row->featured, $i, $options);
?>
</td>
<td class="center"><?php echo $published; ?></td>
<td>
<?php
$created = HTMLHelper::_('date',$row->created,Text::_('DATE_FORMAT_LC5'));
$image = HTMLHelper::_('image','com_jem/icon-16-info.png',NULL,NULL,true );
$overlib = Text::_('COM_JEM_CREATED_AT').': '.$created.'<br />';
$overlib .= Text::_('COM_JEM_AUTHOR').'</strong>: ' . $row->author.'<br />';
$overlib .= Text::_('COM_JEM_EMAIL').'</strong>: ' . $row->email.'<br />';
if ($row->author_ip != '') {
$overlib .= Text::_('COM_JEM_WITH_IP').': '.$row->author_ip.'<br />';
}
if (!empty($row->modified)) {
$overlib .= '<br />'.Text::_('COM_JEM_EDITED_AT').': '. HTMLHelper::_('date',$row->modified,Text::_('DATE_FORMAT_LC5') ) .'<br />'. Text::_('COM_JEM_GLOBAL_MODIFIEDBY').': '.$row->modified_by;
}
?>
<span <?php echo JEMOutput::tooltip(Text::_('COM_JEM_EVENTS_STATS'), $overlib, 'editlinktip'); ?>
<a href="<?php echo 'index.php?option=com_users&amp;task=edit&amp;hidemainmenu=1&amp;cid[]='.$row->created_by; ?>"><?php echo $row->author; ?></a></span>
</td>
<td class="center"><?php echo $row->hits; ?></td>
<td class="center">
<?php
if ($this->jemsettings->showfroregistra || ($row->registra & 1)) {
$linkreg = 'index.php?option=com_jem&amp;view=attendees&amp;eventid='.$row->id;
$count = $row->regCount+$row->reserved;
if ($row->maxplaces)
{
$count .= '/'.$row->maxplaces;
if ($row->waitinglist && $row->waiting) {
$count .= '+'.$row->waiting;
}
}
if (!empty($row->unregCount)) {
$count .= '-'.(int)$row->unregCount;
}
if (!empty($row->invited)) {
$count .= ','.(int)$row->invited .'?';
}
?>
<a href="<?php echo $linkreg; ?>" title="<?php echo Text::_('COM_JEM_EVENTS_MANAGEATTENDEES'); ?>">
<?php echo $count; ?>
</a>
<?php } else { ?>
<?php echo HTMLHelper::_('image', 'com_jem/publish_r.png', NULL, NULL, true); ?>
<?php } ?>
</td>
<td class="center">
<?php echo $this->escape($row->access_level); ?>
</td>
<td class="center">
<?php echo (int) $row->id; ?>
</td>
</tr>
<?php endforeach; ?>
</tbody>
</table>
<div class="ms-auto mb-4 me-0">
<?php echo (method_exists($this->pagination, 'getPaginationLinks') ? $this->pagination->getPaginationLinks(null) : $this->pagination->getListFooter()); ?>
</div>
</div>
</div>
<?php //if (isset($this->sidebar)) : ?>
<?php //endif; ?>
<div>
<input type="hidden" name="task" value="" />
<input type="hidden" name="boxchecked" value="0" />
<input type="hidden" name="filter_order" value="<?php echo $listOrder; ?>" />
<input type="hidden" name="filter_order_Dir" value="<?php echo $listDirn; ?>" />
<?php echo HTMLHelper::_('form.token'); ?>
</div>
</form>

View File

@ -0,0 +1 @@
<!DOCTYPE html><title></title>

View File

@ -0,0 +1,151 @@
<?php
/**
* @package JEM
* @copyright (C) 2013-2024 joomlaeventmanager.net
* @copyright (C) 2005-2009 Christoph Lukes
* @license https://www.gnu.org/licenses/gpl-3.0 GNU/GPL
*/
defined('_JEXEC') or die;
use Joomla\CMS\HTML\HTMLHelper;
use Joomla\CMS\Language\Text;
use Joomla\CMS\Factory;
use Joomla\CMS\Toolbar\ToolbarHelper;
use Joomla\CMS\Uri\Uri;
/**
* Events-View
*/
class JemViewEvents extends JemAdminView
{
protected $items;
protected $pagination;
protected $state;
public function display($tpl = null)
{
$app = Factory::getApplication();
$document = $app->getDocument();
$user = JemFactory::getUser();
$settings = JemHelper::globalattribs();
$jemsettings = JemAdmin::config();
$uri = Uri::getInstance();
$url = $uri->root();
// Initialise variables.
$this->items = $this->get('Items');
$this->pagination = $this->get('Pagination');
$this->state = $this->get('State');
// Retrieving params
$params = $this->state->get('params');
// highlighter
$highlighter = $settings->get('highlight','0');
// Check for errors.
$errors = $this->get('Errors');
if (is_array($errors) && count($errors)) {
Factory::getApplication()->enqueueMessage(implode("\n", $errors), 'error');
return false;
}
// Load css
// HTMLHelper::_('stylesheet', 'com_jem/backend.css', array(), true);
$wa = Factory::getApplication()->getDocument()->getWebAssetManager();
$wa->registerStyle('jem.backend', 'com_jem/backend.css')->useStyle('jem.backend');
// Load Scripts
$this->document->addScript('https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js');
if ($highlighter) {
$this->document->addScript($url.'media/com_jem/js/highlighter.js');
$style = '
.red, .red a {
color:red;}
';
$this->document->addStyleDeclaration($style);
}
// add filter selection for the search
$filters = array();
$filters[] = HTMLHelper::_('select.option', '1', Text::_('COM_JEM_EVENT_TITLE'));
$filters[] = HTMLHelper::_('select.option', '2', Text::_('COM_JEM_VENUE'));
$filters[] = HTMLHelper::_('select.option', '3', Text::_('COM_JEM_CITY'));
$filters[] = HTMLHelper::_('select.option', '4', Text::_('COM_JEM_CATEGORY'));
$filters[] = HTMLHelper::_('select.option', '5', Text::_('COM_JEM_STATE'));
$filters[] = HTMLHelper::_('select.option', '6', Text::_('COM_JEM_COUNTRY'));
$filters[] = HTMLHelper::_('select.option', '7', Text::_('JALL'));
$lists['filter'] = HTMLHelper::_('select.genericlist', $filters, 'filter_type', array('size'=>'1','class'=>'inputbox form-select m-0','onChange'=>"this.form.submit()"), 'value', 'text', $this->state->get('filter_type'));
//assign data to template
$this->lists = $lists;
$this->user = $user;
$this->jemsettings = $jemsettings;
$this->settings = $settings;
// add toolbar
$this->addToolbar();
parent::display($tpl);
}
/**
* Add Toolbar
*/
protected function addToolbar()
{
ToolBarHelper::title(Text::_('COM_JEM_EVENTS'), 'events');
/* retrieving the allowed actions for the user */
$canDo = JemHelperBackend::getActions(0);
/* create */
if (($canDo->get('core.create'))) {
ToolBarHelper::addNew('event.add');
}
/* edit */
if (($canDo->get('core.edit'))) {
ToolBarHelper::editList('event.edit');
ToolBarHelper::divider();
}
/* state */
if ($canDo->get('core.edit.state')) {
if ($this->state->get('filter_state') != 2) {
ToolBarHelper::publishList('events.publish', 'JTOOLBAR_PUBLISH', true);
ToolBarHelper::unpublishList('events.unpublish', 'JTOOLBAR_UNPUBLISH', true);
ToolBarHelper::custom('events.featured', 'featured.png', 'featured_f2.png', 'JFEATURED', true);
}
if ($this->state->get('filter_state') != -1) {
ToolBarHelper::divider();
if ($this->state->get('filter_state') != 2) {
ToolBarHelper::archiveList('events.archive');
} elseif ($this->state->get('filter_state') == 2) {
ToolBarHelper::unarchiveList('events.publish');
}
}
}
if ($canDo->get('core.edit.state')) {
ToolBarHelper::checkin('events.checkin');
}
if ($this->state->get('filter_state') == -2 && $canDo->get('core.delete')) {
ToolBarHelper::deleteList('COM_JEM_CONFIRM_DELETE', 'events.delete', 'JTOOLBAR_EMPTY_TRASH');
} elseif ($canDo->get('core.edit.state')) {
ToolBarHelper::trash('events.trash');
}
ToolBarHelper::divider();
ToolBarHelper::help('listevents', true, 'https://www.joomlaeventmanager.net/documentation/manual/backend/events');
}
}
?>