/** * * @param Ultimatum_Model_Ultplayergroupknowledge $pScan * @return string */ public function game(Ultimatum_Model_Ultplayergroupknowledge $pScan) { $game = Zend_Registry::get('ultimatum_game'); if ($game) { $user = Model_Users::current_user(); ob_start(); ?> <fieldset id="ultimatum_game"> <legend>Ultimatum</legend> <b>Game:</b> <?php echo $game; ?> , turn <?php echo $game->turn(); if ($user && $user->can('ultimatum_manage')) { echo $this->view->zupallinkbutton("/ultimatum/game/nextturn/game/" . $game->identity(), 'Next Turn'); } ?> <br /> <?php echo $this->view->zupallinkbutton("/ultimatum/game/switch/", 'Stop Playing'); ?> </fieldset> <?php return ob_get_clean(); } else { return ''; } }
/** * * @param <type> $pResource * @return <type> */ public function is_allowed($pResource, Model_Users $pUser = NULL) { if (!$pUser) { $pUser = Model_Users::current_user(); } return self::acl()->isAllowed($pUser ? $pUser->role : Model_Roles::ROLE_ANONYMOUS, $pResource); }
/** * */ public function preDispatch() { $u = Model_Users::current_user(); if (!$u || !$u->can('site_admin')) { $param = array('error' => 'This area is reserved for administrators'); $this->_forward('insecure', 'error', 'administer', $param); } }
function get_user($pReload = FALSE) { if ($pReload || is_null($this->_user)) { // process $this->_user = Model_Users::current_user(); } return $this->_user; }
/** * */ public function preDispatch() { $u = Model_Users::current_user(); if (!$u || !$u->can('ultimatum_manage')) { $param = array('error' => 'This area is reserved for administrators'); return $this->_forward('insecure', 'error', 'administer', $param); } $this->_helper->layout->setLayout('admin'); parent::preDispatch(); }
/** * * @param Model_Users $pUser = NULL * @return Ultimatum_Model_Ultplayers */ public static function user_active_player($pUser = NULL) { if ($pUser == NULL) { if (!($pUser = Model_Users::current_user())) { throw new Exception(__METHOD__ . ': no user logged in'); } $pUser = $pUser->identity(); } elseif (!($pUser = self::_as($pUser, 'Model_Users', TRUE))) { throw new Exception(__METHOD__ . ': bad user passed: ' . print_r($pUser, TRUE)); } $params = array('user' => $pUser, 'active' => 1); $game = self::getInstance()->findOne($params); return $game; }
/** * */ public function run() { $user = Model_Users::current_user(); if ($user) { $pi = Ultimatum_Model_Ultplayers::getInstance(); $params = array('user' => $user->identity(), 'active' => 1, 'status' => 'active'); $active_games = $pi->find($params, 'id DESC'); foreach ($active_games as $ag) { $ag->active = FALSE; $ag->save(); } } else { $this->view()->nouser = true; } return $this->forward('index'); }
public function zupalusermenu() { ob_start(); ?> <div id="user_menu"> <h1>User</h1> <?php $user_menu = array(); $ini = Administer_Model_Modules::getInstance()->get('default')->module_path('configuration/info.ini'); $user = Model_Users::current_user(); if ($user) { echo '<span class="tagline">Viewing As ', $user->username, '</span>'; $pages = new Zend_Config_Ini($ini, 'user_menu_in'); } else { $pages = new Zend_Config_Ini($ini, 'user_menu_anon'); } echo $this->getView()->navigation()->menu()->renderMenu(new Zend_Navigation($pages)); ?> </div> <?php return ob_get_clean(); }
/** * */ public function usergamesAction() { $data = array(); $game = $this->_getParam('game', ''); $user = $this->_getParam('user'); if ($user) { $user = Model_Users::getInstance()->get($user); } else { $user = Model_Users::current_user(); } $params = array('user' => $user->identity()); $game_type = $game ? Game_Model_Gametypes::game_type($game) : NULL; $user_sessions = Game_Model_Gamesessionplayers::getInstance()->find($prarams); foreach ($user_sessions as $us) { $session = $us->session(); if ($game_type && !$session->is_game_type($game_type)) { continue; } $out[] = $session->toArray(TRUE); } $this->_store('id', $out, 'name'); }
public function nextturnAction() { if (!$this->_prep()) { $this->_forward('index', 'index', NULL, array('error' => 'problem loading game')); } $user = Model_Users::current_user(); if ($user && $user->can('ultimatum_manage')) { $this->view->game->next_turn(); } }
public function activate($pFor_user = NULL) { $game_type = $this->game_type(); $gtid = $game_type->identity(); if ($pFor_user) { $uid = Zupal_Domain_Abstract::_as($pFor_user, 'Model_Users', TRUE); } elseif ($user = Model_Users::current_user()) { $uid = $user->identity(); } else { throw new Exception(__METHOD__ . ': no user present'); } $params = array('game_type' => $gtid, 'user' => $uid); $other_player_sessions = Game_Model_Gamesessionplayers::getInstance()->find($params); foreach ($other_player_sessions as $other_player_session) { if ($other_player_session->game_session == $this->identity()) { $other_player_session->active = 1; } else { $other_player_session->active = 0; } $other_player_session->save(); } /* $bond = new Model_Zupalbonds(); if (!$pFor_user): $pFor_user = Model_Users::current_user(); if (!$pFor_user): throw new Exception(__METHOD__ . ': trying to bond missing user to session'); endif; endif; $bond->type = 'active'; $bond->set_to_atom($this); $bond->set_from_atom($pFor_user); $bond->set_bond_atom($this->game_type()); $params = array( 'from_atom' => $bond->from_atom()->get_atomic_id(), 'bond_atom' => $bond->to_atom()->get_atomic_id(), 'type' => 'active' ); $other_bonds = $bond->find($params); $other_bond = array_pop($other_bonds); if (count($other_bonds)): foreach($other_bonds as $extra_bond): $extra_bond->delete(); endforeach; endif; // find an existing bond that is a syner-G game activation for this user. if ($other_bond): $other_bond->set_to_atom($this); $other_bond->save(); else: $bond->save(); endif; */ }
/** * Note -- becuase the processing of the user data is inherently custom * it takes place in manual form here, not via form. */ public function editmeexecuteAction() { $user = Model_Users::current_user(); if (!$user) { throw new Exception("No user found"); } extract($this->_getAllParams()); if ($username) { $user->set_username($username); } if ($new_password) { $user->set_password($password, $new_password, $new_password_2); } // note -- intentionally NOT saving email change! $user->save(); $params = array('message' => 'Updated User Record'); $this->_forward('me', NULL, NULL, $params); }