BeCastWebEngine/admin/adduser.apnl.php

76 lines
3.7 KiB
PHP
Raw Normal View History

2025-06-20 19:10:23 +02:00
<?php
If (!defined("in_BL_ADMIN")) {
die("Dieses Script kann nicht ausserhalb des Frameworks laufen!");
}
$addnav["right"]=FALSE;
$session->page_begin("adduser", True);
class adduser_panel extends admin_module{
function output(){
global $plugin,$session,$config,$db,$panel,$admin,$module,$root,$firephp,$log,$lang;
if(isset($_POST["send"])){
if($_POST['role']==2 && $session->userdata['role']!=2){
$panel->admin_message("Error","You cannot assign a role higher then yours!",True,"editusers",3);
}
if(!empty($_POST["name"]) && !empty($_POST["password"])){
$key=$session->generate_key(50);
$plugin->run_hook('admin_user_before_create',array('data'=>$_POST,'key'=>$key,'user_fid'=>$session->userdata['fuid']));
$db->query("INSERT INTO `" . $config["prefix"] . "users` (`username`,`realname`,`password`,`loginkey`,`role`,`email`,`active`) VALUES ('".$db->escape($_POST["name"])."','".$db->escape($_POST["realname"])."','".hash("sha256",$db->escape($_POST["password"]))."','".$key."','".$db->escape($_POST["role"])."','".$db->escape($_POST["email"])."','".$_POST["active"]."')");
$_POST['uid']=$db->last_id();
$plugin->run_hook('admin_user_after_create',array('data'=>$_POST));
$panel->admin_message("Daten &uuml;bernommen!","Die Daten wurden erfolgreich &uuml;bernommen.",True,"adduser",3);
}else{
$panel->admin_message("Fehler!","Der Name und das Passwort m&uuml;ssen ausgef&uuml;lt werden.",True,"adduser",3);
}
}else{
$panel->title=$lang->_('ADDUSER');
$panel->content=$lang->_('ADDUSERTEXT');
$panel->form(array("action"=>$config["path"]."/admin/index.php?panel=adduser"));
$panel->content.="<h3>".$lang->_('USERNAME').":</h3>";
$panel->field(array("name"=>"name","typ"=>"text","value"=>$data["name"]));
$panel->content.="<h3>".$lang->_('REALNAME').":</h3>";
$panel->field(array("name"=>"realname","typ"=>"text","value"=>$data["realname"]));
$panel->content.="<h3>".$lang->_('MAIL').":</h3>";
$panel->field(array("name"=>"email","value"=>$data["email"],"typ"=>"text"));
$panel->content.="<h3>".$lang->_('PASSWORD').":</h3>";
$panel->field(array("name"=>"password","value"=>$data["password"],"typ"=>"password"));
$panel->content.="<h3>".$lang->_('LOCATION').":</h3>";
$panel->field(array("name"=>"from","value"=>$data["from"],"typ"=>"text"));
$panel->content.="<h3>".$lang->_('GENDER').":</h3>";
$panel->select(array("N/A"=>"u", "weiblich"=>"f","m&auml;nnlich"=>"m"),$data["gender"],"gender");
$panel->content.="<h3>".$lang->_('BANREASON').":</h3>";
$panel->textarea(array("name"=>"bio","value"=>$data["bio"],"typ"=>"text"));
$panel->content.="<h3>".$lang->_('HOMEPAGE').":</h3>";
$panel->field(array("name"=>"homepage","value"=>$data["homepage"],"typ"=>"text"));
$panel->content.="<h3>ICQ:</h3>";
$panel->field(array("name"=>"icq","value"=>$data["icq"],"typ"=>"text"));
$panel->content.="<h3>AIM:</h3>";
$panel->field(array("name"=>"aim","value"=>$data["aim"],"typ"=>"text"));
$panel->content.="<h3>Skype:</h3>";
$panel->field(array("name"=>"skype","value"=>$data["skype"],"typ"=>"text"));
$panel->content.="<h3>".$lang->_('ROLE').":</h3>";
$result=$db->query("SELECT `id`,`role_name` FROM `" . $config["prefix"] . "role`");
while($data = $db->fetch_array($result)){
$dd[$data["role_name"]]=$data["id"];
}
$panel->select($dd,"1","role");
$panel->content.="<h3>".$lang->_('ACTIVE').":</h3>";
$panel->select(array($lang->_('YES')=>1,$lang->_('NO')=>0),"0","active");
$panel->field(array("name"=>"send","typ"=>"hidden","value"=>"1"));
$panel->content.="<br />";
$panel->content.="<br />";
$panel->submit();
$panel->formClose();
}
}
}
?>