public function getModerators() { $db = Core_Database::__getInstance(); $users = $db->getDataFromQuery($db->customQuery("\n\t\t\t\tSELECT\n\t\t\t\t\tplayers.*\n\t\t\t\tFROM\n\t\t\t\t\tplayers_shop\n\t\t\t\tLEFT JOIN\n\t\t\t\t\tplayers USING(plid)\n\t\t\t\tWHERE\n\t\t\t\t\tplayers_shop.s_id = {$this->getId()}\n\t\t\t")); $out = array(); foreach ($users as $v) { $p = Profile_Member::getMember($v['plid']); $p->setData($v); $out[] = $p; } return $out; }
private function processIMCommand($plid, $msg) { $player = Profile_Member::getMember($plid); if ($player->isFound()) { $commands = explode(' ', $msg); $command = array_shift($commands); echo 'Hi there, ' . $player->getUsername() . '. How are you doing?'; } else { echo 'Something went wrong. Please contact the administrator.'; } }
private function getModeratorManagement($shop) { $page = new Core_Template(); $text = Core_Text::__getInstance(); // Add a moderator $email = Core_Tools::getInput('_POST', 'moderator_mail', 'varchar'); if ($email) { // Check for player $objUser = Profile_Member::getFromEmail($email); if ($objUser) { $shop->addModerator($objUser); } else { $page->set('error', 'Er is geen gebruiker gevonden met dit email adres.'); } } // Remove moderator $id = Core_Tools::getInput('_GET', 'plid', 'int'); $do = Core_Tools::getInput('_GET', 'do', 'varchar'); if ($id && $do) { $mod = Profile_Member::getMember($id); $myself = Profile_Member::getMyself(); if ($mod && $myself && $myself->getId() != $mod->getId()) { $shop->removeModerator($mod); } else { $page->set('error', 'Deze gebruiker is niet gevonden. Je kan jezelf niet verwijderen.'); } } // Show $page->set('action', $this->getUrl('page=shop&id=' . $shop->getId() . '&action=moderator')); $page->set('title', Core_Tools::putIntoText($text->get('title', 'overview', 'shop'), array(Core_Tools::output_varchar($shop->getName())))); // Show all moderators foreach ($shop->getModerators() as $v) { $page->addListValue('moderators', array('name' => Core_Tools::output_varchar($v->getFullname()), 'url' => 'mailto:' . $v->getEmail(), 'removeUrl' => $this->getUrl('page=shop&id=' . $shop->getId() . '&action=moderator&do=remove&plid=' . $v->getId()))); } return $page->parse('shop_moderators.tpl'); }
public function getPoefboekLog($objUser, $bShowDetails = false) { $db = Core_Database::__getInstance(); $bShowDetails = $bShowDetails ? true : false; $logs = $db->getDataFromQuery($db->customQuery("\n\t\t\t\tSELECT\n\t\t\t\t\t*,\n\t\t\t\t\tUNIX_TIMESTAMP(p.l_date) AS date\n\t\t\t\tFROM\n\t\t\t\t\tplayers_poefboeklog p\n\t\t\t\tLEFT JOIN\n\t\t\t\t\torder_prods o ON p.l_action = 'order' AND p.l_actor = o.o_id AND o.plid = p.plid\n\t\t\t\tLEFT JOIN\n\t\t\t\t\tproducts prod ON o.p_id = prod.p_id\n\t\t\t\tWHERE\n\t\t\t\t\tp.c_id = {$this->getId()} AND \n\t\t\t\t\tp.plid = {$objUser->getId()} \n\t\t\t\t" . (!$bShowDetails ? 'GROUP BY p.l_id ' : null) . "\n\t\t\t\tORDER BY\n\t\t\t\t\tp.l_date DESC\n\t\t\t")); $out = array(); $text = Core_Text::__getInstance(); foreach ($logs as $v) { // Check if there are details available if ($bShowDetails && isset($v['p_name']) && isset($v['op_price']) && isset($v['op_amount'])) { $details = array('amount' => $v['op_amount'], 'price' => $v['op_price'], 'name' => $v['p_name']); } else { $details = false; } // Are we still processing the same unit? if (isset($latest) && $latest['id'] == $v['l_id']) { if ($details) { $latest['details'][] = $details; } } else { switch ($v['l_action']) { case 'order': $actor_name = $text->get('order', 'poeflog', 'company') . ' #' . $v['l_actor']; $actor_url = Pages_Page::getUrl('page=order&oid=' . $v['l_actor']); break; default: $user = Profile_Member::getMember($v['l_actor']); if ($user->isFound()) { $actor_name = $user->getUsername(); $actor_url = 'mailto:' . $user->getEmail(); } else { $actor_name = 'user_not_found'; $actor_url = '#'; } break; } $aDetails = array(); if ($details) { $aDetails[] = $details; } $out[] = array('id' => $v['l_id'], 'date' => $v['date'], 'amount' => $v['l_amount'], 'actor_name' => $actor_name, 'actor_url' => $actor_url, 'newpoef' => $v['l_newpoef'], 'comment' => $v['l_description'], 'details' => $aDetails); $latest =& $out[count($out) - 1]; } } return $out; }
private function doSubmit($order) { $db = Core_Database::__getInstance(); $db->update('orders', array('o_isDone' => 1, 'o_orderDate' => 'NOW()'), "o_id = '{$order['o_id']}'"); $company = Profile_Company::getCompany($order['c_id']); $company->setData($order); // Poefboek stuff! $userPoef = array(); foreach ($this->getOrderedProducts($order['o_id']) as $v) { $price = $v['op_amount'] * $v['op_price']; if (isset($userPoef[$v['plid']])) { $userPoef[$v['plid']] += $price; } else { $userPoef[$v['plid']] = $price; } } // Now do the actual updates foreach ($userPoef as $k => $v) { $company->takeFromMemberPoefboek(Profile_Member::getMember($k), $v, 'order', $order['o_id']); } }
public function getPoefboekLog($objCompany) { $me = Profile_Member::getMyself(); $status = $objCompany->getUserStatus($me); $bShowLogs = Core_Tools::getInput('_GET', 'details', 'int') == 1; if ($status != 'pending') { $user = Profile_Member::getMember(Core_Tools::getInput('_GET', 'uid', 'int')); if ($user->isFound()) { $text = Core_Text::__getInstance(); $text->setFile('company'); $text->setSection('poeflog'); $page = new Core_Template(); $locname = Core_Tools::output_varchar($user->getUsername()) . ' @ ' . Core_Tools::output_varchar($objCompany->getName()); $page->set('poeflog', $text->get('poeflog') . ': ' . $locname); $page->set('nologs', $text->get('nologs')); $page->set('return', $text->get('return')); $page->set('return_url', self::getUrl('page=company&id=' . $objCompany->getId())); if (!$bShowLogs) { $page->set('show_details_url', self::getUrl('page=company&id=' . $objCompany->getId() . '&action=poeflog&uid=' . $user->getId() . '&details=1')); } else { $page->set('hide_details_url', self::getUrl('page=company&id=' . $objCompany->getId() . '&action=poeflog&uid=' . $user->getId() . '&details=0')); } $page->set('datum', $text->get('datum')); $page->set('amount', $text->get('amount')); $page->set('balance', $text->get('balance')); $page->set('actor', $text->get('actor')); foreach ($objCompany->getPoefboekLog($user, $bShowLogs) as $v) { $page->addListValue('logs', array('date' => date(DATETIME, $v['date']), 'amount' => Core_Tools::convert_price($v['amount']), 'newpoef' => Core_Tools::convert_price($v['newpoef']), 'actor_name' => $v['actor_name'], 'actor_url' => $v['actor_url'], 'comment' => Core_Tools::output_varchar($v['comment']), 'details' => $v['details'])); } $page->set('showDetails', $bShowLogs); return $page->parse('company_poeflog.tpl'); } else { return '<p>User not found.</p>'; } } else { return '<p>No permission to watch logs.</p>'; } }