assign('index_error', $_GET[error]); # Daten aufbereiten bei Fehler if(isset($_SESSION["global_domain"])){ $smarty->assign('index_domain', $_SESSION["global_domain"]); }else{ # defaultwert festlegen $smarty->assign('index_domain', "hsnet"); } if(isset($_SESSION["global_username"])){ $smarty->assign('index_user', $_SESSION["global_username"]); } } if($action == 'anmeld'){ $username=strtoupper($_POST["user"]); //remove case sensitivity on the username $password=$_POST["password"]; $domain=$_POST["domain"]; if($_POST["domain"] != ""){ $_SESSION["global_domain"]=$domain; } if($_POST["user"] != ""){ $_SESSION["global_username"]=$username; } if($username == "" OR $password == ""){ echo ""; }else{ # muss gesetzte werden nachdem die Session global_domain definiert wurde require_once("class_idee.php"); try { $idee = new idee(); } catch (adLDAPException $e) { echo $e; exit(); } //authenticate the user #$adldap -> set_domain_controllers(array("$ipdc")); if ($idee -> authenticate($username,$password)){ //establish your session and redirect $db = dbconnect(); $objectsid = $idee -> username2osid($_SESSION["global_username"]); $result_imt = $db->query("SELECT uid FROM imt_user WHERE objectsid='$objectsid' AND accountname=upper('$_SESSION[global_username]') LIMIT 1"); $row_imt = $result_imt->fetch_array(); if($row_imt[uid] == ""){ $result_1 = $db->query("INSERT INTO imt_user (objectsid, accountname) VALUES ('$objectsid', '$_SESSION[global_username]')"); $uid = $db->insert_id; }else{ $uid = $row_imt[uid]; } $_SESSION["global_uid"] = $uid; $datum=date("Y-m-d H:i:s"); $ip=getenv("REMOTE_ADDR"); $agent=getenv("HTTP_USER_AGENT"); $user= $row[dtuid]; $_SESSION["user"] = $row[dtuid]; $result_1 = $db->query("INSERT INTO imt_userlog (Datum, IP, user_agent, uid) VALUES ('$datum', '$ip', '$agent', '$_SESSION[global_uid]')"); $redir="Location: indexframe.php"; header($redir); }else{ echo ""; } } /* $db = dbconnect(); $result = $db->query("SELECT dtuid, uid, passwort FROM dt_user WHERE inaktiv != 'J' AND UPPER(uid)=UPPER('$_POST[user]')"); $row = $result->fetch_array(); // Anzahl der IPs im Monat $result1 = $db->query("SELECT count(distinct left( ip, locate( '.', ip, 5 ) -1 )) ips_monat FROM dt_userlog WHERE dtuid ='$row[dtuid]' AND DATE_SUB(NOW(), INTERVAL 1 MONTH) < Datum "); $row1 = $result1->fetch_array(); // Wenn expiredate überschritten, dann 1 $result2 = $db->query("SELECT 1 FROM dt_user WHERE pw_expire < now() AND dtuid = '$row[dtuid]' "); $row2 = $result2->fetch_array(); // Leere Textfelder if (empty($_POST['user']) or empty($_POST['passwort'])){ $smarty->assign('index_noinput', "1"); } // Benutzer nicht im System elseif (strtoupper($_POST['user']) != strtoupper($row[uid])) { $smarty->assign('index_nouser', "1"); } // Passwort falsch elseif (md5($_POST['passwort']) != $row[passwort]){ //verschlüsseltes Passwort überprüfen # Session-Cookies werden bereits gesetzt, falls sich jemand ein passwort zusenden lässt. $_SESSION["user"] = $row[dtuid]; $smarty->assign('index_passwrong', "1"); } // Passwortwechsel notwendig elseif(($row1[ips_monat] > 2 AND $row2[0] == 1) OR $row[uid] == $_POST['passwort']){ //Wenn mehr als 2 unterschiedliche Provider innerhalb eines Monats und Maximaldauer des Passworts abgelaufen, dann ändern $db = dbconnect(); $datum=date("Y-m-d H:i:s"); $ip=getenv("REMOTE_ADDR"); $agent=getenv("HTTP_USER_AGENT"); $user= $row[dtuid]; $_SESSION["user"] = $row[dtuid]; $result_dt = $db->query("SELECT dtid FROM dt_user_tankstelle WHERE dtuid='$user' LIMIT 1"); $row_dt = $result_dt->fetch_array(); $_SESSION["dtid"] = $row_dt[dtid]; $result_1 = $db->query("INSERT INTO dt_userlog (Datum, IP, user_agent, dtuid) VALUES ('$datum', '$ip', '$agent', '$user')"); $sql = $db->query ("UPDATE dt_user SET mail_inaktiv='0000-00-00 00:00:00' WHERE dtuid='$user'"); $smarty->assign('index_passswitch', "1"); }else{ $db = dbconnect(); $datum=date("Y-m-d H:i:s"); $ip=getenv("REMOTE_ADDR"); $agent=getenv("HTTP_USER_AGENT"); $user= $row[dtuid]; $_SESSION["user"] = $row[dtuid]; $result_dt = $db->query("SELECT dtid FROM dt_user_tankstelle WHERE dtuid='$user' LIMIT 1"); $row_dt = $result_dt->fetch_array(); $_SESSION["dtid"] = $row_dt[dtid]; $result_1 = $db->query("INSERT INTO dt_userlog (Datum, IP, user_agent, dtuid) VALUES ('$datum', '$ip', '$agent', '$user')"); $sql = $db->query ("UPDATE dt_user SET mail_inaktiv='0000-00-00 00:00:00' WHERE dtuid='$user'"); $smarty->assign('index_login', "1"); } mysqli_close($db); */ } if($action == 'pass_gen'){ $dtuid = $_SESSION["user"]; $pool = "qwertzupasdfghkyxcvbnm"; $pool .= "23456789"; $pool .= "WERTZUPLKJHGFDSAYXCVBNM"; srand ((double)microtime()*1000000); for($index = 0; $index < 7; $index++) { $pass_word .= substr($pool,(rand()%(strlen ($pool))), 1); } $new_pw_md5=md5($pass_word); $db = dbconnect(); $result = $db->query("SELECT distinct DATE_ADD(NOW(), INTERVAL 1 MONTH) exp_date FROM dt_user WHERE dtuid ='$dtuid' "); $row = $result->fetch_array(); $sql = $db->query ("UPDATE dt_user SET passwort='$new_pw_md5', pw_expire='$row[exp_date]' WHERE dtuid='$dtuid'"); $result2 = $db->query("SELECT uid, vorname, nachname, mail FROM dt_user WHERE dtuid='$dtuid'"); $row2 = $result2->fetch_array(); $empfaenger = "$row2[mail]"; $betreff = "RefillDB: Passwort zurückgesetzt"; $text = "
Benutzerkennung: | $row2[uid] |
Passwort: | $pass_word |
Link zu Leitgedanken-Online: RefillDB
Diese Mail wurde automatisch generiert!
Antworten Sie daher nicht auf diese Mail.
Vielen Dank!
";
$headers = "MIME-Version: 1.0\n";
$headers .= "Content-type: text/html; charset=utf-8\n";
$headers .= "From: RefillDB <$row2[mail]>\n";
$return = @mail($empfaenger, $betreff, $text, $headers);
if($return){
$smarty->assign('index_mailpass', "1");
$mailadresse = $row2[mail];
$smarty->assign('index_mailadr', "$mailadresse");
}else{
$smarty->assign('index_nomailpass', "1");
}
}
$smarty->assign('action', "$action");
$smarty->display("$template/$templatename");
?>