function fetchTeam($mode = 'fullPage', $page = '', $option = '') { // fetches team subtab via ajax switch ($page) { case 'team': require_once PATH_FACEBOOK . '/pages/pageTeam.class.php'; $teamObj = new pageTeam($this); $code = $teamObj->fetch($mode, $option); break; case 'wall': require_once PATH_FACEBOOK . '/pages/pageWall.class.php'; $wallObj = new pageWall($this); $code = $wallObj->fetch($mode, $option, $arg3); break; case 'rewards': require_once PATH_FACEBOOK . '/pages/pageRewards.class.php'; $prizesObj = new pageRewards($this); $code = $prizesObj->fetch($mode); break; case 'winners': require_once PATH_FACEBOOK . '/pages/pageRewards.class.php'; $prizesObj = new pageRewards($this); $code = $prizesObj->fetch($mode, 'winners'); break; case 'challenges': require_once PATH_FACEBOOK . '/pages/pageChallenges.class.php'; $challengesObj = new pageChallenges($this); $code = $challengesObj->fetch($mode); break; case 'challengeSubmit': require_once PATH_FACEBOOK . '/pages/pageChallengeSubmit.class.php'; $challengeSubmitObj = new pageChallengeSubmit($this); $code = $challengeSubmitObj->fetch($mode); break; case 'leaders': require_once PATH_FACEBOOK . '/pages/pageLeaders.class.php'; $leadersObj = new pageLeaders($this); $code = $leadersObj->fetch($mode, $option); break; case 'rules': require_once PATH_FACEBOOK . '/pages/pageRules.class.php'; $rulesObj = new pageRules($this); $code = $rulesObj->fetch($mode); break; case 'redeem': // check auth for member require_once PATH_FACEBOOK . '/pages/pageRedeem.class.php'; $redeemObj = new pageRedeem($this); $code = $redeemObj->fetch($mode); break; case 'orders': // check auth for member require_once PATH_FACEBOOK . '/pages/pageOrders.class.php'; $ordersObj = new pageOrders($this); $code = $ordersObj->fetch($mode); break; } return $code; }
function fetch($mode = 'fullPage') { // build the prizes page if (isset($_GET['currentPage'])) { $currentPage = $_GET['currentPage']; } else { $currentPage = 1; } if (isset($_GET['id'])) { $id = $_GET['id']; } else { $id = NULL; } if (isset($_GET['step'])) { $step = $_GET['step']; } else { $step = NULL; } if (isset($_GET['message'])) { $message = $_GET['message']; } else { $message = ''; } if ($_GET['debug']) { echo '<pre>' . print_r($_GET, true) . '</pre>'; } require_once PATH_FACEBOOK . '/classes/actionTeam.class.php'; $this->teamObj = new actionTeam($this->page); $tabs .= $this->teamObj->buildSubNav('rewards'); $inside = '<div id="col_left"><!-- begin left side -->'; require_once PATH_CORE . '/classes/prizes.class.php'; $rewards = new rewards($this->db); require_once PATH_CORE . '/classes/prizes.class.php'; $pt = new PrizeTable($this->db); $prize = $pt->getRowObject(); if ($step == 'submit') { $id = $_POST['prizeid']; } if (!$id || !$prize->load($id)) { $inside .= 'Error: cannot redeem a prize with no id specified'; } else { $inside .= $rewards->fetchRewardDetail($id, true); if ($step != 'submit') { if (!$this->checkOrderPossible(&$prize, &$this->page->session->u, &$this->page->session->ui, $message)) { $inside .= $this->page->buildMessage('error', "There is a problem redeeming this prize", $message); } else { // order form $inside .= $this->buildOrderForm(&$prize, &$this->page->session->u, &$this->page->session->ui); } } else { // repopulate form with get vars $user =& $this->page->session->u; $userinfo =& $this->page->session->ui; //$user->email = $_GET['email']; $uipostfields = array('address1', 'address2', 'city', 'state', 'phone', 'zip'); //echo '<pre>'.print_r($_POST, true). '</pre>'; foreach ($uipostfields as $field) { if (isset($_POST[$field])) { $userinfo->{$field} = $_POST[$field]; } } $userinfo->update(); // sync updated address info to database //echo '<pre>'.print_r($userinfo, true). '</pre>'; $message = ''; if (!$this->validateOrderFields($prize, $user, $userinfo, $message)) { $inside .= $this->page->buildMessage('error', "There was a problem with your submission", $message); $inside .= $this->buildOrderForm(&$prize, &$this->page->session->u, &$this->page->session->ui); } else { // success $orderid = $this->processPrizeOrder($prize->id, $user->userid, $message); // TODO: make this function a bit faster by using whats stored in the session if (!$orderid) { $inside .= $this->page->buildMessage('error', "There was a problem redeeming this prize", $message); } else { $inside .= $this->page->buildMessage('success', "Order received", $message); require_once PATH_FACEBOOK . '/pages/pageOrders.class.php'; $orders = new pageOrders($this->page); $inside .= '<div class="panel_1">' . '<div class="panelBar clearfix"> <h2>Order Details</h2> <div class="bar_link"><a href="?p=orders" onclick="setTeamTab(\'orders\'); return false;">See all</a></div> </div><!__end "panelBar"__>' . $orders->fetchOrderDetail($orderid) . '</div><!-- end panel_1 -->'; } } } } $inside .= '</div><!-- end left side --><div id="col_right">'; $inside .= $this->teamObj->fetchSidePanel('challenges'); $inside .= '</div> <!-- end right side -->'; //$inside.='<input type="hidden" id="pagingFunction" value="fetchChallenges">'; if ($mode == 'teamWrap') { return $inside; } $inside = $tabs . '<div id="teamWrap">' . $inside . '<!-- end teamWrap --></div>'; if ($this->page->isAjax) { return $inside; } $code = $this->page->constructPage('team', $inside, ''); return $code; }