示例#1
0
 public function post()
 {
     $this->check_input();
     if (!(0 + $this->data('event'))) {
         $this->error(31);
     }
     $event = $this->event()->get($this->data('event'));
     if ($event['id'] != $this->data('event')) {
         $this->error(31);
     }
     if (!(0 + $this->data('persons'))) {
         $this->error(33);
     }
     $eventController = new eventController();
     $userController = new userController();
     $user = new userModel();
     $user->get($event['user']);
     $event = $eventController->public_data($event, true);
     $event['id'] = $this->data('event');
     $event['host'] = $userController->public_data($user->data(), true);
     $event['free_slots'] = $this->event()->getSlots();
     $data = ['event' => $event, 'persons' => $this->data('persons')];
     if ($event['fb_friends']) {
         Bootstrap::$main->session('fb_friends', 1);
     }
     return $this->status(Bootstrap::$main->session('book', $data));
 }
 public function index($parameters)
 {
     if ($parameters['dag'] == 'zondag') {
         $userModel = new userModel();
         $user = $userModel->getfromId(3);
         myauth::setCurrentuser($user[0]);
     }
     //	Enkel indien ingelogd
     $target = new securitytarget();
     $target->setId('voorinschrijving_index');
     if (myacl::isAllowed(myauth::getCurrentuser(), $target, 'view')) {
         $template = new ui($this);
         $starget = new securitytarget();
         $starget->setId('voorinschrijving_lijst');
         if (myacl::isAllowed(myauth::getCurrentuser(), $starget, 'view')) {
             $lijst = new pagerequest(3);
             $template->assign('lijst', $lijst);
         }
         $secTarget = new securitytarget();
         $secTarget->setId('voorinschrijving_usertype');
         //			if(!myacl::isAllowed(myauth::getCurrentuser(),$secTarget,'choose') && unserialize(serialize($_SESSION['gast'])) instanceof ingeschrevenObject ){
         //				$gast = unserialize(serialize($_SESSION['gast']));
         //				$template->assign('gast' , $gast);
         //
         //				$uurModel = new uurModel();
         //				$uur = $uurModel->getfromId($gast->getUurid());
         //				$uur = $uur[0];
         //				$template->assign('uur', $uur);
         //				$this->response->assign($this->self,'innerHTML',$template->fetch('myvoorinschrijving_success.tpl'));
         //				return;
         //			}
         $secTarget = new securitytarget();
         $secTarget->setId('voorinschrijving_usertype');
         if (myacl::isAllowed(myauth::getCurrentuser(), $secTarget, 'choose')) {
             $form = new form($parameters);
             $userModel = new userModel();
             $users = $userModel->get();
             $types = new selectField('user', 'Type', array('required'));
             $types->addOption(new selectoptionField('', '', true));
             foreach ($users as $user) {
                 if (myacl::isAllowed($user, $secTarget, 'get_chosen')) {
                     $types->addOption(new selectoptionField($user->getDescription(), $user->getId()));
                 }
             }
             $form->addField($types);
             $template->assign('form', $form);
             if ($form->validate()) {
                 $chosenUser = $userModel->getfromId($form->getFieldvalue('user'));
                 $chosenUser = $chosenUser[0];
             } else {
                 $chosenUser = myauth::getCurrentuser();
             }
         } else {
             $chosenUser = myauth::getCurrentuser();
         }
         //	uren ophalen en filteren + sorteren per traject
         $uurModel = new uurModel();
         $uren = $uurModel->get();
         $trajecten = array();
         foreach ($uren as $uur) {
             if (myacl::isAllowed($chosenUser, $uur, 'signup')) {
                 $trajecten[$uur->getTrajectid()][] = $uur;
             }
         }
         //	nog eens door alles heenlopen en alles structureren voor de template
         $mogelijkheden = array();
         $trajectModel = new trajectModel();
         $ingeschrevenModel = new ingeschrevenModel();
         foreach ($trajecten as $trajectid => $uren) {
             $temp = array();
             $traject = $trajectModel->getfromId($trajectid);
             $temp['traject'] = $traject[0];
             foreach ($uren as $uur) {
                 $uurtemp = array();
                 $total = 0;
                 $uurtemp['uur'] = $uur;
                 $gasten = $ingeschrevenModel->getfromUurid($uur->getId());
                 foreach ($gasten as $gast) {
                     $total += $gast->getAantal();
                 }
                 $uurtemp['vrij'] = $uur->getMaxaantal() - $total;
                 $uurtemp['request'] = new ajaxrequest('myvoorinschrijving', 'signup', array('uurid' => $uur->getId(), 'userid' => $chosenUser->getId()));
                 if ($uurtemp['vrij'] > 0) {
                     $temp['uren'][] = $uurtemp;
                 }
             }
             if (count($temp['uren']) > 0) {
                 $mogelijkheden[] = $temp;
             }
         }
         if (count($mogelijkheden) > 0) {
             $template->assign('mogelijkheden', $mogelijkheden);
             if ($parameters['dag'] == 'zondag') {
                 $this->response->assign($this->self, 'innerHTML', $template->fetch('myvoorinschrijving_index.tpl'));
             } else {
                 $this->response->assign($this->self, 'innerHTML', $template->fetch('myvoorinschrijving_index2.tpl'));
             }
         } else {
             $this->response->assign($this->self, 'innerHTML', $template->fetch('myvoorinschrijving_volzet.tpl'));
         }
     }
 }
示例#3
0
文件: index.php 项目: podstawski/papu
include __DIR__ . '/../head.php';
echo "Start analyzing ... <br/>";
$event = new eventModel();
$user = new userModel();
$guest = new guestModel();
$fakturownia = new fakturownia();
$events = $event->getEventsToTransferMoney() ?: [];
$users = [];
$transfers = [];
Bootstrap::$main->human_datetime_format();
foreach ($events as &$e) {
    if (!$e['persons']) {
        continue;
    }
    if (!isset($users[$e['user']])) {
        $users[$e['user']] = $user->get($e['user'], true);
    }
    $e['user'] = $users[$e['user']];
    Bootstrap::$main->session('time_delta', $e['user']['delta']);
    $e['event'] = $event->get($e['id']);
    $e['total'] = $e['persons'] * $e['event']['host_price'];
    switch (strtoupper($e['country'])) {
        case 'PL':
            if (!isset($transfers['pl'])) {
                require_once __DIR__ . '/../lib/class/bzwbk.php';
                $transfers['pl'] = new bzwbk();
            }
            $transfers['pl']->add($e);
            $guests = $guest->select(['event' => $e['id'], 'd_payment' => ['>', 0], 'd_cancel' => null, 'guest_price' => ['>', 0]]);
            $e['commision'] = [];
            foreach ($guests as $g) {
示例#4
0
文件: index.php 项目: podstawski/papu
<?php

require_once __DIR__ . '/../base.php';
require_once __DIR__ . '/../../rest/models/eventModel.php';
require_once __DIR__ . '/../../rest/models/imageModel.php';
require_once __DIR__ . '/../../rest/models/userModel.php';
$event = new eventModel();
$image = new imageModel();
$user = new userModel();
$events = $event->getEventsToPay(24 * 3600) ?: [];
Bootstrap::$main->human_datetime_format();
foreach ($events as $e) {
    $e['img'] = $image->get($e['img']);
    $data = ['guest' => $user->get($e['guest']), 'host' => $user->get($e['user'])];
    Bootstrap::$main->session('time_delta', $data['host']['delta']);
    $data['event'] = $event->get($e['id']);
    $data['event']['img'] = $e['img'];
    echo $data['guest']['firstname'] . ' ' . $data['guest']['lastname'] . ' (' . $data['guest']['email'] . '), ' . $data['guest']['lang'];
    echo ' &raquo; ';
    echo $data['event']['name'] . ' (' . $data['event']['event_start'] . ')';
    echo '<br/>';
    Tools::observe('payment-reminder', $data);
}
示例#5
0
文件: index.php 项目: podstawski/papu
    $user->get_pretend();
    Tools::log('pretend', ['admin' => Bootstrap::$main->user['email'], 'id' => $id, 'data' => $data]);
    header('location: ' . Bootstrap::$main->getConfig('app.root') . 'profile');
    die;
}
if (Bootstrap::$main->isAdmin() && isset($_GET['vip'])) {
    $vip = explode(',', $_GET['vip']);
    $model = new userModel($vip[0]);
    $model->_vip = $vip[1] + 0;
    $model->save();
}
$us = false;
if (Bootstrap::$main->isAdmin() && isset($_GET['q'])) {
    $model = new userModel();
    if ($_GET['q'] + 0 > 0) {
        $us = $model->get($_GET['q']);
    } elseif (strstr($_GET['q'], '@')) {
        $us = $model->find_one_by_email(trim(strtolower($_GET['q'])));
    } else {
        $us = $model->find_one_by_url(trim($_GET['q']));
    }
}
?>

<?php 
$title = '';
include __DIR__ . '/head.php';
//mydie();
?>

<?php 
示例#6
0
 protected function paid(paymentModel $payment, $amount)
 {
     if (0.9 * $payment->amount < $amount) {
         $image = new imageModel();
         $guest = new guestModel($payment->guest);
         if ($guest->d_payment) {
             return;
         }
         $guest->d_payment = Bootstrap::$main->now;
         $guest->save();
         $e = $this->event()->get($guest->event);
         Tools::userHasAccessToEvent($guest->event, $guest->user, true);
         $data = [];
         $data['event'] = $this->event()->data();
         $user = new userModel($data['event']['user']);
         $data['host'] = $user->data();
         Bootstrap::$main->session('time_delta', $user->delta);
         Bootstrap::$main->human_datetime_format();
         $data['event'] = $this->event()->get($guest->event);
         $data['event']['img'] = $image->get($data['event']['img']);
         $user->get($guest->user);
         $data['guest'] = $user->data();
         $data['data'] = $guest->data();
         $data['payment'] = $payment->data();
         if (isset($data['payment']['notify'])) {
             $data['notify'] = json_decode($data['payment']['notify'], true);
         }
         $ics = Ics::invitation($e, $data['host'], $data['guest'], $e['create'], $guest->create);
         Tools::observe('event-paid-to-host', $data);
         Tools::observe('event-paid-to-guest', $data, [['invite.ics' => $ics]]);
         Tools::log('guest', $data);
         $eventController = new eventController();
         $eventController->recalculate_fullhouse($guest->event);
     }
 }
示例#7
0
        $data['password'] = base64_encode(hash_hmac("sha256", isset($data['password']) ? $data['password'] : $this->get('initPWD'), $this->get('secret'), true));
        // $data = $db->insert('user', $data);
        $model = new userModel();
        $result = $model->add($data);
        // echo $db->last_query();
        return $res->write(json_encode($result));
    } else {
        return $res->withStatus(403)->write("No Post data!");
    }
});
$app->get('/{id:[0-9]+}', function ($req, $res, $args) {
    // $db = $this->get('db');
    // $data = isset($args['id']) ? $db->select('user', '*', ['id' => $args['id']]) : $db->select('user', '*', ['LIMIT' => 1]);
    // $data = $db->select('user', '*', ['id' => $args['id']]);
    $model = new userModel();
    $result = $model->get($args['id']);
    // echo $db->last_query();
    return $res->write(json_encode($result));
});
$app->post('/{id:[0-9]+}', function ($req, $res, $args) {
    if ($req->getParsedBody()) {
        $data = $req->getParsedBody();
        $model = new userModel();
        // $data = isset($args['id']) ? $db->select('user', '*', ['id' => $args['id']]) : $db->select('user', '*', ['LIMIT' => 1]);
        $result = $model->update($data);
        return $res->write(json_encode($result));
    } else {
        return $res->withStatus(403)->write("No Post data!");
    }
});
$app->delete('/{id:[0-9]+}', function ($req, $res, $args) {
示例#8
0
文件: index.php 项目: podstawski/papu
        if (isset($u['id'])) {
            Bootstrap::$main->session('time_delta', $u['delta']);
        }
    }
    $limit = 10;
    $event = new eventModel();
    $image = new imageModel();
    $user = new userModel();
    $guest = new guestModel();
    if (isset($_GET['userid'])) {
        $events = $event->select(['user' => $_GET['userid']], 'd_event_start') ?: [];
    } else {
        $events = $event->select(['active' => 1, 'd_event_start' => ['>', Bootstrap::$main->now]], 'd_event_start', $limit, $_GET['offset']) ?: [];
    }
    foreach ($events as &$e) {
        $e['user'] = $user->get($e['user']);
        $e['img'] = $image->get($e['img']);
        $e['link'] = Bootstrap::$main->getConfig('app.root') . $e['user']['url'] . '/' . $e['url'];
        $e['start'] = Bootstrap::$main->human_datetime_format($e['d_event_start']);
        $e['guests'] = $guest->getGuestCount($e['id']) ?: 0;
    }
    header('Content-type: application/json; charset=utf8');
    die(json_encode($events, JSON_NUMERIC_CHECK));
}
$title = 'Events';
$menu = 'events';
include __DIR__ . '/../head.php';
?>

<div>
    <ul id="events">