Example #1
0
 public function process()
 {
     global $db;
     $sql = 'INSERT INTO venues (title, lat, lng, organizer, country) VALUES (:title, :lat, :lng, :organizer, :country) ';
     $stmt = $db->prepare($sql);
     $stmt->bindValue(':title', $this->getElementValue('title'));
     $stmt->bindValue(':lat', $this->getElementValue('lat'));
     $stmt->bindValue(':lng', $this->getElementValue('lng'));
     $stmt->bindValue(':country', $this->getElementValue('country'));
     if (Session::hasPriv('NEW_VENUE')) {
         $stmt->bindValue(':organizer', $this->getElementValue('organizer'));
     } else {
         $stmt->bindValue('organizer', Session::getUser()->getData('organization'));
     }
     $stmt->execute();
     Logger::messageDebug('Venue ' . $this->getElementValue('title') . ' created by: ' . Session::getUser()->getUsername(), LocalEventType::CREATE_VENUE);
     redirect('account.php', 'Venue created.');
 }
Example #2
0
 public function __construct()
 {
     parent::__construct('formEditUser', 'Edit User');
     $user = $this->getUser();
     $this->addElementReadOnly('Username', $user['username']);
     $this->addElement(Element::factory('text', 'email', 'Email Address', $user['email']));
     $this->getElement('email')->setMinMaxLengths(0, 64);
     $this->addElement(Element::factory('text', 'usernameSteam', 'Steam Username', $user['usernameSteam'], 'Plaese do include your Steam username - its a good way for us to get in contact.'));
     $this->getElement('usernameSteam')->setMinMaxLengths(0, 64);
     $this->addElement(Element::factory('hidden', 'uid', null, $user['id']));
     if (Session::hasPriv('EDIT_USER')) {
         $this->addElement(Element::factory('html', null, null, 'Admin fields'));
         $this->addElement($this->getGroupSelectionElement($user['group']));
         $this->addElement(FormHelpers::getOrganizerList(true));
         $this->getElement('organizer')->setValue($user['organization']);
         $this->addElement(Element::factory('password', 'password', 'New Password'));
         $this->getElement('password')->setOptional(true);
     }
     $this->addButtons(Form::BTN_SUBMIT);
 }
 public function __construct()
 {
     parent::__construct('formEditOrganizer', 'Edit Organizer');
     $organizer = fetchOrganizer($_REQUEST['formEditOrganizer-id']);
     if (Session::getUser()->hasPriv('PUBLISH_ORGANIZERS')) {
         $this->addElement(Element::factory('checkbox', 'published', 'Published', $organizer['published']));
     }
     $this->addElement(Element::factory('text', 'title', 'Title', $organizer['title']));
     $this->addElement(Element::factory('hidden', 'id', null, $organizer['id']));
     $this->addElement(Element::factory('text', 'websiteUrl', 'Website', $organizer['websiteUrl']));
     $this->addElement(Element::factory('date', 'assumedStale', 'Assumed stale since', $organizer['assumedStale']));
     $this->addElement(Element::factory('text', 'steamGroupUrl', 'Steam group URL', htmlify($organizer['steamGroupUrl'])));
     $this->getElement('steamGroupUrl')->setMinMaxLengths(0, 255);
     $this->addElement(Element::factory('textarea', 'blurb', 'Blurb', $organizer['blurb']));
     $this->addElement(Element::factory('file', 'banner', 'Banner image', null, 'Your organizer banner image. Preferably a PNG, maximum image size is 468x160'));
     $this->getElement('banner')->destinationDir = 'resources/images/organizer-logos/';
     $this->getElement('banner')->destinationFilename = $organizer['id'] . '.jpg';
     $this->getElement('banner')->setMaxImageBounds(468, 160);
     if (!Session::hasPriv('EDIT_ORGANIZER') && Session::getUser()->getData('organization') != $organizer['id']) {
         throw new PermissionsException();
     }
     $this->addButtons(Form::BTN_SUBMIT);
 }
Example #4
0
<?php

require_once 'includes/widgets/header.php';
$id = fromRequestRequireInt('id');
$venue = fetchVenue($id);
$tpl->assign('organizersAtVenue', fetchOrganizersFromVenueId($id));
$tpl->assign('eventsAtVenue', fetchEventsFromVenueId($id));
$tpl->assign('venue', $venue);
$tpl->display('viewVenue.tpl');
startSidebar();
require_once 'includes/widgets/infoboxListFilter.php';
if (Session::isLoggedIn()) {
    $organizer = Session::getUser()->getData('organization');
    if (Session::hasPriv('EDIT_VENUE') || $organizer == $venue['organizer']) {
        $menu = new HtmlLinksCollection('Venue admin');
        $menu->add('formHandler.php?formClazz=FormEditVenue&amp;formEditVenue-id=' . $venue['id'], 'Edit');
        $tpl->assign('linkCollection', $menu);
        $tpl->display('linkCollection.tpl');
    }
}
require_once 'includes/widgets/footer.php';
Example #5
0
    $tpl->display('infobox.organizerLogo.tpl');
}
?>

<div class = "infobox">
	<h2>Other events...</h2>
	<p>You can view list of all other events on a <a href = "eventsMap.php">map</a> or in a <a href = "eventsList.php">list</a>.</p>

	<p>Or, you might want a <a href = "listOrganizers.php">list of organizers</a>.</p>
</div>
<?php 
if (Session::isLoggedIn() && (Session::getUser()->hasPriv('MODERATE_EVENTS') || $event['organizerId'] == Session::getUser()->getData('organization') && !empty($event['organizerId']))) {
    echo '<div class = "infobox"><h2>Admin</h2>';
    echo '<p>With great power, comes great responsibility...</p><p>';
    echo '<strong>Created on:</strong> ' . $event['createdDate'] . '<br />';
    if (Session::hasPriv('USERLIST')) {
        echo '<strong>Created by:</strong> <a href = "viewUser.php?id=' . $event['createdBy'] . '">' . $event['createdByUsername'] . '</a><br />';
    } else {
        echo '<strong>Created by:</strong> ' . $event['createdByUsername'] . '<br />';
    }
    echo '</p><strong>Functions: </strong><ul>';
    echo '<li><a href = "formHandler.php?formClazz=FormEditEvent&amp;formEditEvent-id=' . $event['id'] . '">Edit</a></li>';
    echo '<li><a href = "misc.php?action=deleteEvent&id=' . $event['id'] . '">Delete</a></li>';
    echo '<li><a href = "misc.php?action=cloneEvent&id=' . $event['id'] . '">Clone</a></li>';
    if (Session::getUser()->hasPriv('TOGGLE_EVENT_PUBLISHED')) {
        echo '<li><a href = "misc.php?action=toggleEvent&id=' . $event['id'] . '">' . ($event['published'] ? 'Unpublish' : 'Publish') . '</a></li>';
    }
    echo '</ul></div>';
    require_once 'includes/widgets/infoboxLinkUs.php';
} else {
    ?>
Example #6
0
$tpl->assign('organizer', $organizer);
$events = fetchEventsFromOrganizerId($organizer['id']);
$tpl->assign('events', $events);
if (Session::isLoggedIn() && (Session::getUser()->hasPriv('SUPERUSER') || Session::getUser()->getData('organization') == $organizer['id'])) {
    $sql = 'SELECT u.id, u.username, u.lastLogin FROM users u WHERE u.organization = :organizer';
    $stmt = $db->prepare($sql);
    $stmt->bindValue(':organizer', $organizer['id']);
    $stmt->execute();
    $tpl->assign('associatedUsers', $stmt->fetchAll());
    $sql = 'SELECT v.id, v.title, count(e.id) AS eventCount FROM venues v LEFT JOIN events e ON e.venue = v.id WHERE v.organizer = :organizer GROUP BY v.id';
    $stmt = $db->prepare($sql);
    $stmt->bindValue(':organizer', $organizer['id']);
    $stmt->execute();
    $tpl->assign('associatedVenues', $stmt->fetchAll());
}
$tpl->assign('userlist', Session::hasPriv('USERLIST'));
$tpl->display('viewOrganizer.tpl');
startSidebar();
$nextEvent = getNextEvent($organizer['id']);
echo '<div class = "infobox"><h2>Next event for ' . $organizer['title'] . '</h2>';
if (empty($nextEvent)) {
    echo '<p style = "color:red">To the best of our knowledge, ' . $organizer['title'] . ' has nothing planned... :(</p>';
} else {
    echo '<p>Next event is <a href = "viewEvent.php?id=' . $nextEvent['id'] . '">' . $nextEvent['title'] . '</a></p>';
}
echo '<p>You may find another organizer near you on the <a href = "eventsMap.php">map</a> or from the <a href = "listOrganizers.php">list of organizers</a>.</p>';
echo '</div>';
if (Session::isLoggedIn() && Session::getUser()->hasPriv('EDIT_ORGANIZER') || Session::isLoggedIn() && Session::getUser()->getData('organization') == $organizer['id']) {
    echo '<div class = "infobox">';
    echo '<h2>Organizer admin</h2>';
    echo '<ul>';
Example #7
0
<?php

define('TITLE', 'Organizers of LAN Parties');
require_once 'includes/widgets/header.php';
if (Session::isLoggedIn() && Session::getUser()->hasPriv('SUPERUSER')) {
    $sql = 'SELECT o.id, o.published, o.title, o.websiteUrl, count(e.id) AS eventCount, u.username, u.id AS userId FROM organizers o LEFT JOIN events e ON e.organizer = o.id LEFT JOIN users u ON u.organization = o.id GROUP BY o.id ORDER BY o.title';
} else {
    $sql = 'SELECT o.id, o.published, o.title, o.websiteUrl, count(e.id) AS eventCount, u.username, u.id AS userId FROM organizers o LEFT JOIN events e ON e.organizer = o.id LEFT JOIN users u ON u.organization = o.id WHERE o.published = 1 GROUP BY o.id ORDER BY o.title';
}
$stmt = $db->prepare($sql);
$stmt->execute();
$tpl->assign('listOrganizers', $stmt->fetchAll());
$tpl->display('listOrganizers.tpl');
startSidebar();
require_once 'includes/widgets/infoboxListFilter.php';
require_once 'includes/widgets/infoboxFeaturedOrganizer.php';
$tpl->display('infobox.otherFormats.tpl');
if (Session::hasPriv('NEW_ORGANIZER')) {
    echo '<div>';
    echo '<a href = "formHandler.php?formClazz=FormNewOrganizer">New Organizer</a>';
    echo '</div>';
}
require_once 'includes/widgets/footer.php';
<?php

require_once 'includes/common.php';
if (!Session::hasPriv('SURVEY_OPTION_DELETE')) {
    throw new PermissionsException();
}
$sql = 'DELETE FROM survey_options WHERE id = :id ';
$stmt = $db->prepare($sql);
$stmt->bindValue(':id', $_REQUEST['id']);
$stmt->execute();
redirect('viewSurvey.php?id=' . $_REQUEST['surveyId'], 'Survey option deleted.');
<?php

if (!Session::hasPriv('CONTENT_DELETE')) {
    throw new PermissionsException();
}
$id = intval($_REQUEST['id']);
$sql = 'DELETE FROM page_content WHERE id = :id';
$stmt = $db->prepare($sql);
$stmt->bindValue(':id', $id);
$stmt->execute();
redirect('listContent.php', 'Content deleted.');