Blame | Last modification | View Log | Download
<?php
/*************************************************************
* TorrentFlux - PHP Torrent Manager
* www.torrentflux.com
**************************************************************/
/*
This file is part of TorrentFlux.
TorrentFlux is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
TorrentFlux is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with TorrentFlux; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
// ADODB support.
include_once('db.php');
include_once("settingsfunctions.php");
// Create Connection.
$db = getdb();
loadSettings();
session_start("TorrentFlux");
include_once("config.php");
include("themes/".$cfg["default_theme"]."/index.php");
global $cfg;
if(isset($_SESSION['user']))
{
header("location: index.php");
exit;
}
ob_start();
?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title><?php echo $cfg["pagetitle"] ?></title>
<link rel="StyleSheet" href="themes/<?php echo $cfg["default_theme"] ?>/style.css" type="text/css" />
<meta http-equiv="pragma" content="no-cache" />
<meta content="charset=iso-8859-1" />
</head>
<body bgcolor="<?php echo $cfg["main_bgcolor"] ?>">
<script type="text/javascript">
<!--
function loginvalidate()
{
msg = "";
pass = document.theForm.iamhim.value;
user = document.theForm.username.value;
if (user.length < 1)
{
msg = msg + "* Username is required\n";
document.theForm.username.focus();
}
if(pass.length<1)
{
msg = msg + "* Password is required\n";
if (user.length > 0)
{
document.theForm.iamhim.focus();
}
}
if (msg != "")
{
alert("Check the following:\n\n" + msg);
return false;
}
}
-->
</script>
<br /><br /><br />
<div align="center">
<table border="1" bordercolor="<?php echo $cfg["table_border_dk"] ?>" cellpadding="0" cellspacing="0">
<tr>
<td>
<table border="0" cellpadding="4" cellspacing="0" width="100%">
<tr>
<td align="left" background="themes/<?php echo $cfg["default_theme"] ?>/images/bar.gif" bgcolor="<?php echo $cfg["main_bgcolor"] ?>">
<font class="title"><?php echo $cfg["pagetitle"] ?> Login</font>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td bgcolor="<?php echo $cfg["table_header_bg"] ?>">
<div align="center">
<table width="100%" bgcolor="<?php echo $cfg["body_data_bg"] ?>">
<tr>
<td>
<table bgcolor="<?php echo $cfg["body_data_bg"] ?>" width="352 pixels" cellpadding="1">
<tr>
<td>
<div align="center">
<table border="0" cellpadding="4" cellspacing="0">
<tr>
<td>
<?php
$user = strtolower(getRequestVar('username'));
$iamhim = addslashes(getRequestVar('iamhim'));
$create_time = time();
// Check for user
if(!empty($user) && !empty($iamhim))
{
/* First User check */
$next_loc = "index.php";
$sql = "SELECT count(*) FROM tf_users";
$user_count = $db->GetOne($sql);
if($user_count == 0)
{
// This user is first in DB. Make them super admin.
// this is The Super USER, add them to the user table
$record = array(
'user_id'=>$user,
'password'=>md5($iamhim),
'hits'=>1,
'last_visit'=>$create_time,
'time_created'=>$create_time,
'user_level'=>2,
'hide_offline'=>0,
'theme'=>$cfg["default_theme"],
'language_file'=>$cfg["default_language"]
);
$sTable = 'tf_users';
$sql = $db->GetInsertSql($sTable, $record);
$result = $db->Execute($sql);
showError($db,$sql);
// Test and setup some paths for the TF settings
$pythonCmd = $cfg["pythonCmd"];
$btphpbin = getcwd() . "/TF_BitTornado/btphptornado.py";
$tfQManager = getcwd() . "/TF_BitTornado/tfQManager.py";
$maketorrent = getcwd() . "/TF_BitTornado/btmakemetafile.py";
$btshowmetainfo = getcwd() . "/TF_BitTornado/btshowmetainfo.py";
$tfPath = getcwd() . "/downloads/";
if (!isFile($cfg["pythonCmd"]))
{
$pythonCmd = trim(shell_exec("which python"));
if ($pythonCmd == "")
{
$pythonCmd = $cfg["pythonCmd"];
}
}
$settings = array(
"pythonCmd" => $pythonCmd,
"btphpbin" => $btphpbin,
"tfQManager" => $tfQManager,
"btmakemetafile" => $maketorrent,
"btshowmetainfo" => $btshowmetainfo,
"path" => $tfPath
);
saveSettings($settings);
AuditAction($cfg["constants"]["update"], "Initial Settings Updated for first login.");
$next_loc = "admin.php?op=configSettings";
}
$sql = "SELECT uid, hits, hide_offline, theme, language_file FROM tf_users WHERE user_id=".$db->qstr($user)." AND password=".$db->qstr(md5($iamhim));
$result = $db->Execute($sql);
showError($db,$sql);
list(
$uid,
$hits,
$cfg["hide_offline"],
$cfg["theme"],
$cfg["language_file"]) = $result->FetchRow();
if(!array_key_exists("shutdown",$cfg))
$cfg['shutdown'] = '';
if(!array_key_exists("upload_rate",$cfg))
$cfg['upload_rate'] = '';
if($result->RecordCount()==1)
{
// Add a hit to the user
$hits++;
$sql = 'select * from tf_users where uid = '.$uid;
$rs = $db->Execute($sql);
showError($db, $sql);
$rec = array(
'hits'=>$hits,
'last_visit'=>$db->DBDate($create_time),
'theme'=>$cfg['theme'],
'language_file'=>$cfg['language_file'],
'shutdown'=>$cfg['shutdown'],
'upload_rate'=>$cfg['upload_rate']
);
$sql = $db->GetUpdateSQL($rs, $rec);
$result = $db->Execute($sql);
showError($db, $sql);
$_SESSION['user'] = $user;
session_write_close();
header("location: ".$next_loc);
exit();
}
else
{
AuditAction($cfg["constants"]["access_denied"], "FAILED AUTH: ".$user);
echo "<div align=\"center\">Login failed.<br>Please try again.</div>";
}
}
?>
<form name="theForm" action="login.php" method="post" onsubmit="return loginvalidate()">
<table width="100%" cellpadding="5" cellspacing="0" border="0">
<tr>
<td align="right">Username: </td>
<td><input type="text" name="username" value="" size="15" style="font-family:verdana,helvetica,sans-serif; font-size:9px; color:#000;" /></td>
</tr>
<tr>
<td align="right">Password:</td>
<td><input type="password" name="iamhim" value="" size="15" style="font-family:verdana,helvetica,sans-serif; font-size:9px; color:#000" /></td>
</tr>
<tr>
<td colspan="2" align="center"><input class="button" type="submit" value="Login" /></td>
</tr>
</table>
</form>
</td>
</tr>
</table>
</div>
</td>
</tr>
</table>
</td>
</tr>
</table>
</div>
</td>
</tr>
</table>
</div>
<script language="JavaScript">
document.theForm.username.focus();
</script>
</body>
</html>
<?php
ob_end_flush();
?>