Revision 1834
Added by Luisehahne almost 13 years ago
- fixed redirect checking in class.login.php
| class.login.php | ||
|---|---|---|
| 69 | 69 |
$this->password_len = strlen($this->password); |
| 70 | 70 |
} |
| 71 | 71 |
|
| 72 |
$aServerUrl = $this->mb_parse_url(WB_URL); |
|
| 73 |
|
|
| 72 | 74 |
$sServerUrl = $_SERVER['SERVER_NAME']; |
| 73 |
$sServerScheme = $_SERVER['REQUEST_SCHEME'];
|
|
| 75 |
$sServerScheme = isset($_SERVER['REQUEST_SCHEME']) ? $_SERVER['REQUEST_SCHEME'] : isset($aServerUrl['scheme']) ? $aServerUrl['scheme'] : ' http';
|
|
| 74 | 76 |
$sServerPath = $_SERVER['SCRIPT_NAME']; |
| 75 | 77 |
// If the url is blank, set it to the default url |
| 76 | 78 |
$this->url = $this->get_post('url');
|
| 77 |
$aUrl = parse_url( $this->url ); |
|
| 79 |
$aUrl = $this->mb_parse_url( $this->url );
|
|
| 78 | 80 |
$this->url = isset($aRedirecthUrl['host']) &&($sServerUrl==$aUrl['host']) ? $this->url:ADMIN_URL.'/start/index.php'; |
| 79 | 81 |
if ($this->redirect_url!='') {
|
| 80 |
$aRedirecthUrl = parse_url( $this->redirect_url ); |
|
| 82 |
$aRedirecthUrl = $this->mb_parse_url( $this->redirect_url );
|
|
| 81 | 83 |
$this->redirect_url = isset($aRedirecthUrl['host']) &&($sServerUrl==$aRedirecthUrl['host']) ? $this->redirect_url:$sServerScheme.'://'.$sServerUrl; |
| 82 | 84 |
$this->url = $this->redirect_url; |
| 83 | 85 |
} |
| 84 | 86 |
if(strlen($this->url) < 2) {
|
| 85 |
$aDefaultUrl = parse_url( $this->default_url ); |
|
| 87 |
$aDefaultUrl = $this->mb_parse_url( $this->default_url );
|
|
| 86 | 88 |
$this->default_url = isset($aDefaultUrl['host']) &&($sServerUrl==$aDefaultUrl['host']) ? $this->default_url:$sServerScheme.'://'.$sServerUrl; |
| 87 | 89 |
$this->url = $this->default_url; |
| 88 | 90 |
} |
Also available in: Unified diff