Example #1
0
 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;
 }
Example #2
0
 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.';
     }
 }
Example #3
0
 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');
 }
Example #4
0
 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;
 }
Example #5
0
 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']);
     }
 }
Example #6
0
 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>';
     }
 }