Example #1
0
 public function getHTML()
 {
     $page = new Core_Template();
     // Login first
     $page->set('login', $this->getLogin());
     $page->set('title', $this->getTitle());
     $page->set('footer', $this->getFooter());
     $page->set('content', $this->getContent());
     $page->set('menu', $this->getMenu());
     // Order baskes
     $page->set('basket', $this->getBasket());
     $text = Core_Text::__getInstance();
     // Languages:
     $langs = getLanguages();
     foreach ($langs as $v) {
         $page->addListValue('languages', array($text->get($v[0], 'languages', 'main', $v[0]), self::getUrl('page=home&language=' . $v[1])));
     }
     $langs = getLayouts();
     foreach ($langs as $v) {
         $page->addListValue('layouts', array($text->get($v[0], 'layouts', 'main', $v[0]), self::getUrl('page=home&layout=' . $v[1])));
     }
     $page->set('languages', $text->get('languages', 'main', 'main'));
     $page->set('layouts', $text->get('layout', 'main', 'main'));
     $page->set('footerSpoof', $text->get('footer', 'main', 'main'));
     $page->set('printerFooter', $text->get('printerFooter', 'main', 'main'));
     $page->sortList('languages');
     $db = Core_Database::__getInstance();
     $page->set('mysqlCount', $db->getCounter());
     $page->set('order_url', array($text->get('shoplist', 'menu', 'main'), self::getUrl('page=order')));
     return $page->parse('index.tpl');
 }
 private function getChangePassword($id, $key)
 {
     $text = Core_Text::__getInstance();
     $text->setFile('main');
     $text->setSection('lostpass');
     // Check the key
     $db = Core_Database::__getInstance();
     $chk = $db->select('players', array('plid'), "plid = " . intval($id) . " AND seckey = '" . $db->escape($key) . "'");
     if (count($chk) === 1) {
         $password1 = Core_Tools::getInput('_POST', 'pass1', 'varchar');
         $password2 = Core_Tools::getInput('_POST', 'pass2', 'varchar');
         $page = new Core_Template();
         $page->set('title', $text->get('changepass'));
         $page->set('about', $text->get('aboutchange'));
         $page->set('pass1', $text->get('pass1'));
         $page->set('pass2', $text->get('pass2'));
         $page->set('submit', $text->get('submitchange'));
         if ($password1 && $password1 === $password2) {
             $login = Core_Login::__getInstance();
             $login->setPassword($chk[0]['plid'], $password1);
             $page->set('success', $text->get('passchanged'));
         } elseif ($password1 || $password2) {
             $page->set('warning', $text->get('passmismatch'));
         }
         return $page->parse('lostPassword_res.tpl');
     } else {
         return '<p class="false">Security Key Not Found.</p>';
     }
 }
Example #3
0
 public function registerAccount($user, $email, $password, $firstname, $lastname)
 {
     $db = Core_Database::__getInstance();
     /* Hash the password */
     $hash1 = md5($password);
     $hash2 = md5('a hobbits tale' . date('dmyhis') . rand(0, 10000) . 'by Bilbo Baggings.');
     /* Make the hash */
     $hash = md5('there' . $hash2 . 'and back' . $hash1 . 'again');
     /* Add to the user database */
     $db->insert('players', array('realname' => $user, 'email' => $email, 'password1' => $hash, 'password2' => $hash2, 'firstname' => $firstname, 'lastname' => $lastname, 'activated' => 1));
     // Now: login
     $this->login($email, $password);
 }
Example #4
0
 private function getEditProfile()
 {
     $myself = Profile_Member::getMyself();
     if (!$myself) {
         return $this->getRegistrationForm();
     }
     // Process incoming data
     $firstname = Core_Tools::getInput('_POST', 'firstname', 'varchar');
     $name = Core_Tools::getInput('_POST', 'name', 'varchar');
     $nickname = Core_Tools::getInput('_POST', 'nickname', 'username');
     $email = Core_Tools::getInput('_POST', 'email', 'email');
     $page = new Core_Template();
     if ($firstname && $name && $nickname && $email) {
         // Update the database
         $db = Core_Database::__getInstance();
         $db->update('players', array('firstname' => $firstname, 'lastname' => $name, 'realname' => $nickname, 'email' => $email), "plid = {$myself->getId()}");
         $myself->reloadData();
         $page->set('done', true);
     } elseif ($firstname || $name || $nickname || $email) {
         $page->set('done', false);
     }
     $page->set('nickname', Core_Tools::output_form($myself->getUsername()));
     $page->set('firstname', Core_Tools::output_form($myself->getFirstname()));
     $page->set('name', Core_Tools::output_form($myself->getName()));
     $page->set('email', Core_Tools::output_form($myself->getEmail()));
     return $page->parse('account_edit.tpl');
 }
Example #5
0
 public function removeModerator($objUser)
 {
     $db = Core_Database::__getInstance();
     $db->customQuery("\n\t\t\tREMOVE FROM\n\t\t\t\tplayers_shop\n\t\t\tWHERE\n\t\t\t\tplid = {$objUser->getId()} AND\n\t\t\t\ts_id = {$this->id()}\n\t\t");
 }
Example #6
0
 public function sendReminder($company)
 {
     $text = Core_Text::__getInstance();
     $text->setFile('account');
     $text->setSection('reminder');
     $email = $this->getEmail();
     // Get company owner
     $owner = $company->getOwner();
     // Check for negative poefboek
     $poefboek = $company->getMemberPoefboek($this);
     if ($poefboek > 0) {
         $txt = Core_Tools::output_text($text->getFile('mails/reminder'));
     } else {
         $txt = Core_Tools::output_text(Core_Tools::putIntoText($text->getFile('mails/angry_reminder'), array('poefboek' => $poefboek, 'admin' => Core_Tools::output_varchar($owner->getFullname()))));
     }
     if ($owner) {
         Core_Tools::sendMail($text->get('subject'), $txt, $email, $this->getFullname(), $owner->getFullname(), $owner->getEmail(), false);
     }
     // Notify members by message:
     $db = Core_Database::__getInstance();
     $accounts = $db->select('im_users', array('im_user'), "im_player = " . $this->getId() . " AND im_activated = 1");
     $url = 'https://www.imified.com/api/bot/';
     foreach ($accounts as $v) {
         $data = array('botkey' => '53881418-A97D-9713-415C46EA2843C806', 'apimethod' => 'send', 'userkey' => $v['im_user'], 'msg' => 'Tijd voor broodjes! Ga snel naar http://www.1brood.be/ !');
         $ch = curl_init();
         curl_setopt($ch, CURLOPT_URL, $url);
         curl_setopt($ch, CURLOPT_HEADER, 0);
         curl_setopt($ch, CURLOPT_USERPWD, 'daedelson@gmail.com:aukv0006');
         curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
         curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
         curl_setopt($ch, CURLOPT_TIMEOUT, 100);
         curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
         $xml = curl_exec($ch);
         if (!$xml) {
             echo curl_error($ch);
         }
         curl_close($ch);
     }
 }
Example #7
0
 private function doCron()
 {
     $db = Core_Database::__getInstance();
     $hour = date('H');
     $day = date('w');
     if ($day > 0 && $day < 6) {
         // Select all companies
         $companies = $db->select('companies', array('*'), "c_hour = " . intval($hour));
         echo '<pre>';
         echo 'It\'s ' . $hour . 'h, time for reminders!' . "\n";
         $count = 0;
         foreach ($companies as $v) {
             $company = Profile_Company::getCompany($v['c_id']);
             echo 'Sending mails to ' . $company->getName() . ".\n";
             $company->sendReminders();
             $count++;
         }
         if ($count == 0) {
             echo 'No reminders were sent.';
         }
         echo '</pre>';
     } else {
         echo '<pre>It\'s weekend.</pre>';
     }
 }
 /**
  * Gets the database default instance
  */
 public function __construct($database = 'default')
 {
     $this->Connection = Core_Database::getInstance($database);
 }
Example #9
0
 private function processManagementInput($objShop)
 {
     $db = Core_Database::__getInstance();
     $iCount = 0;
     while ($iCount !== false && $iCount >= 0 && $iCount < 200) {
         $iCount++;
         $productName = Core_Tools::getInput('_POST', 'productName' . $iCount, 'varchar');
         $productText = Core_Tools::getInput('_POST', 'productText' . $iCount, 'varchar');
         $originalId = Core_Tools::getInput('_POST', 'productOrg' . $iCount, 'varchar');
         $categoryId = Core_Tools::getInput('_POST', 'categoryId' . $iCount, 'varchar');
         $okay = true;
         $productPrice = "";
         $i = 0;
         while ($okay && $i < 10) {
             $priceIn = Core_Tools::getInput('_POST', 'productPrice' . $iCount . '_' . $i, 'float');
             if ($priceIn > 0) {
                 $productPrice .= $priceIn . ',';
             } else {
                 $okay = false;
             }
             $i++;
         }
         $productPrice = substr($productPrice, 0, -1);
         /* 2 requirements: name & price */
         if ($productName) {
             if ($originalId > 0) {
                 // update
                 $db->update('products', array('p_name' => $productName, 'p_info' => $productText, 'p_price' => $productPrice, 'c_id' => $categoryId), "p_id = '" . $originalId . "' AND s_id = '" . $objShop->getId() . "'");
             } else {
                 // add
                 $db->insert('products', array('p_name' => $productName, 'p_info' => $productText, 'p_price' => $productPrice, 's_id' => $objShop->getId(), 'c_id' => $categoryId));
             }
         } elseif ($originalId > 0) {
             $db->remove('products', "p_id = '" . $originalId . "' AND s_id = '" . $objShop->getId() . "'");
         } else {
             // Get out of here!
             $iCount = false;
         }
     }
     // Last: general info
     $message = Core_Tools::getInput('_POST', 'shopMessage', 'varchar');
     $db->update('shops', array('s_message' => $message), "s_id = '" . $objShop->getId() . "'");
     $objShop->refreshData();
 }
Example #10
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 #11
0
 public function getGoogleContent()
 {
     $db = Core_Database::__getInstance();
     $shop = Core_Tools::getInput('_GET', 'sid', 'int', false);
     if ($shop > 0) {
         // Show all products of this shop
         $shop = Profile_Shop::getShop($shop);
         if ($shop) {
             $shop_page = new Pages_Shop();
             return $shop_page->getOverview($shop);
         }
     }
     // Show a list of all shops.
     $page = new Core_Template();
     $data = $db->select('shops', array('*'), null, 's_name ASC');
     foreach ($data as $v) {
         $page->addListValue('shops', array('name' => Core_Tools::output_varchar($v['s_name']), 'url' => self::getUrl('page=order&sid=' . $v['s_id']), 'location' => Core_Tools::output_varchar($v['s_gemeente'])));
     }
     return $page->parse('google_shops.phpt');
 }
Example #12
0
 public function getPoefboekManagement($objCompany)
 {
     $db = Core_Database::__getInstance();
     $text = Core_Text::__getInstance();
     $text->setFile('company');
     $text->setSection('poefboek');
     $page = new Core_Template();
     $page->set('title', Core_Tools::putIntoText($text->get('title'), array(Core_Tools::output_varchar($objCompany->getName()))));
     $page->set('about', $text->get('about'));
     $myself = Profile_Member::getMyself();
     $status = $objCompany->getUserStatus($myself);
     if ($myself && ($status == 'administrator' || $status == 'moderator')) {
         // Start with processing the input (since you're allowed to any way ;-))
         $count = 0;
         foreach ($_POST as $k => $v) {
             if (is_numeric($v) && abs($v) > 0) {
                 if (substr($k, 0, 4) == 'user') {
                     $member = Profile_Member::getMember(substr($k, 4));
                     if ($member->isFound()) {
                         $comment = Core_Tools::getInput('_POST', 'comment_' . $k, 'varchar');
                         $objCompany->addToMemberPoefboek($member, $v, 'moderator', $comment);
                         $count++;
                     }
                 }
             }
         }
         if ($count > 0) {
             //header ('Location: '.self::getUrl ('page=company&id='.$objCompany->getId ()));
         }
         $page->set('formAction', self::getUrl('page=company&id=' . $objCompany->getId() . '&action=poefboek'));
     }
     $users = $objCompany->getUsers();
     foreach ($users as $v) {
         $page->addListValue('users', array(Core_Tools::output_varchar($v[0]->getUsername()), Core_Tools::convert_price($v[2]), 'user' . $v[0]->getId(), Core_Tools::output_varchar($v[0]->getFullname())));
     }
     $page->set('noUsers', $text->get('noUsers'));
     $page->set('submit', $text->get('submit'));
     return $page->parse('company_poef.tpl');
 }