Completed
Push — master ( 0e42b5...b4e470 )
by Timothy
03:05
created

pre-controller.php ➔ check_session()   A

Complexity

Conditions 3
Paths 3

Size

Total Lines 23
Code Lines 12

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 3
eloc 12
nc 3
nop 0
dl 0
loc 23
rs 9.0856
c 0
b 0
f 0
1
<?php
2
3
/**
4
 * Check Session
5
 *
6
 * Checks that the current user has a valid session, and if not, redirects
7
 * to the login page.
8
 * @return null
9
 */
10
function check_session()
11
{
12
	$CI = get_instance();
13
14
	if($CI->session->userdata('uid') == FALSE)
15
	{
16
		$referer = $CI->uri->uri_string();
17
18
		$white_list = [
19
			'login',
20
			'login/register',
21
			'register',
22
			'reminder/check_reminder',
23
		];
24
25
		if ( ! in_array($referer, $white_list))
26
		{
27
			//Redirect to login
28
			$CI->session->set_userdata('login_referer', $referer);
29
			$CI->todo->redirect_303('login');
30
		}
31
	}
32
}