lainchan/mod.php

80 lines
1.7 KiB
PHP
Raw Normal View History

2010-12-01 05:53:11 -05:00
<?php
require 'inc/functions.php';
require 'inc/display.php';
if (file_exists('inc/instance-config.php')) {
require 'inc/instance-config.php';
}
require 'inc/config.php';
require 'inc/template.php';
require 'inc/user.php';
2010-12-02 02:26:09 -05:00
require 'inc/mod.php';
2010-12-01 05:53:11 -05:00
// If not logged in
2010-12-02 02:02:48 -05:00
if(!$mod) {
2010-12-01 05:53:11 -05:00
if(isset($_POST['login'])) {
// Check if inputs are set and not empty
if( !isset($_POST['username']) ||
!isset($_POST['password']) ||
empty($_POST['username']) ||
empty($_POST['password'])
) loginForm(ERROR_INVALID, $_POST['username']);
// Open connection
sql_open();
if(!login($_POST['username'], $_POST['password']))
loginForm(ERROR_INVALID, $_POST['username']);
// Login successful
// Set cookies
setCookies();
2010-12-02 02:02:48 -05:00
// Redirect
2010-12-02 02:07:24 -05:00
header('Location: ?' . MOD_DEFAULT, true, REDIRECT_HTTP);
2010-12-02 02:02:48 -05:00
2010-12-01 05:53:11 -05:00
// Close connection
sql_close();
} else {
loginForm();
}
} else {
2010-12-01 09:17:27 -05:00
$query = $_SERVER['QUERY_STRING'];
$regex = Array(
2010-12-02 02:02:48 -05:00
'board' => str_replace('%s', '(\w{1,8})', preg_quote(BOARD_PATH, '/'))
2010-12-01 09:17:27 -05:00
);
if(preg_match('/^\/?$/', $query)) {
2010-12-02 02:02:48 -05:00
// Dashboard
2010-12-01 09:17:27 -05:00
2010-12-02 02:26:09 -05:00
// Body
$body = '';
$body .= '<fieldset><legend>Boards</legend>' .
ulBoards() .
'</fieldset>';
die(Element('page.html', Array(
'index'=>ROOT,
'title'=>'Dashboard',
'body'=>$body
)
));
2010-12-02 02:02:48 -05:00
} elseif(preg_match('/^\/' . $regex['board'] . '(' . preg_quote(FILE_INDEX, '/') . ')?$/', $query, $matches)) {
// Board index
2010-12-01 09:17:27 -05:00
2010-12-02 02:02:48 -05:00
$boardName = $matches[1];
// Open board
openBoard($boardName);
2010-12-01 09:17:27 -05:00
2010-12-02 02:02:48 -05:00
echo Element('index.html', index(1));
2010-12-01 09:17:27 -05:00
} else {
2010-12-02 02:02:48 -05:00
error("Page not found.");
2010-12-01 09:17:27 -05:00
}
2010-12-01 05:53:11 -05:00
}
2010-12-02 02:26:09 -05:00
// Close the connection in-case it's still open
sql_close();
2010-12-01 05:53:11 -05:00
?>