本文整理汇总了PHP中sfWebRequest::getScriptName方法的典型用法代码示例。如果您正苦于以下问题:PHP sfWebRequest::getScriptName方法的具体用法?PHP sfWebRequest::getScriptName怎么用?PHP sfWebRequest::getScriptName使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类sfWebRequest
的用法示例。
在下文中一共展示了sfWebRequest::getScriptName方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: executeLinklogin
/**
* Function allows LinkLogin by an email and redirects to the needed actions
* the redirect depends on systemsettings. it allows direct linklogin without authentication using loginmask
* other possibility is, if no session is set using emaillogin, loginmask is shown and user needs to login
* to fill the workflow
*
* @param sfWebRequest $request
* @return <type>
*/
public function executeLinklogin(sfWebRequest $request) {
$settings = AuthenticationConfigurationTable::instance()->getAuthenticationConfiguration()->toArray();
$user_id = $request->getParameter('userid');
if($settings[0]['allowdirectlogin'] == 1) { // allow direct login, without using login form
$userLogin = UserLoginTable::instance()->findUserById($user_id);
$arr = $userLogin->toArray(); // load User Data
if($this->getUser()->isAuthenticated() == false) { // check if user is already logged in
if(empty($arr) == false) { // a user has been found, -> user is not deleted
$settings = UserSettingTable::instance()->getUserSettingById($user_id); // user is not logged in, set the settings
$this->getUser()->setAuthenticated(true);
$this->getUser()->setAttribute('id',$user_id);
$this->getUser()->setAttribute('userrole',$userLogin[0]->getRoleId());
$this->getUser()->setCulture($settings[0]->getLanguage());
$this->getUser()->setAttribute('env', str_replace('/', '', $request->getScriptName()));
$this->redirect($this->generateUrl('default', array('module' => 'layout', 'action' => 'index', 'versionid' => $request->getParameter('versionid'), 'workflow' => $request->getParameter('workflowid'), 'window' => $request->getParameter('window'))));
}
else { // user is not found or is deleted
$this->redirect('login/index');
}
}
else { // user is already logged in
$this->redirect($this->generateUrl('default', array('module' => 'layout', 'action' => 'index', 'versionid' => $request->getParameter('versionid'), 'workflow' => $request->getParameter('workflowid'), 'window' => $request->getParameter('window'))));
}
}
else { // allow direct login is denied
if($this->getUser()->isAuthenticated() == true) { // user is already logged in
$this->redirect($this->generateUrl('default', array('module' => 'layout', 'action' => 'index', 'versionid' => $request->getParameter('versionid'), 'workflow' => $request->getParameter('workflowid'), 'window' => $request->getParameter('window'))));
}
else { // move to login page
$this->redirect($this->generateUrl('default', array('module' => 'login', 'action' => 'index', 'versionid' => $request->getParameter('versionid'), 'workflow' => $request->getParameter('workflowid'), 'window' => $request->getParameter('window'))));
}
}
return sfView::NONE;
}