<?php
/* Ulyxex version 1.6.7.8 ***************/
/* code http://ulyxex.logz.org **********/
/* Andre Lozano http://andre-lozano.org */
class UserAdd extends Admin {
	function __construct(){
		$this->h = New Htmlz();
		$this->t = New Translate();
	}
	public function add_user(){
		$h = $this->h;$t = $this->t;
		$dt = new DateTime("now", new DateTimeZone(TIMEZONE)); 
		$date = $dt->format('Y-m-d H:i:s');
		/* check if login is in use */
		$query = SELECT."ID".FROM.USERS.WHERE."LOGIN = '".$h->safe($_POST['userlogin'])."'";
		$query = $this->q($query);
		if ($this->fetch($query)) return $h->h3($t->w("login in use !"),$h->v("class","warning"));
		/* create user */
		$h->word($_POST['userlogin']);
		if (empty($_POST['password'])){
			$result = $h->h3($t->w("password empty !"),$h->v("class","warning"));
		} elseif ($_POST['password'] != $_POST['confirm'] || $h->num($_POST['level']) < $_SESSION['level']){
			$result = $h->h3($t->w("wrong password or level !"),$h->v("class","warning"));
		} elseif ($_POST['userlogin'] == ""){
			$result = $h->h3($t->w("login field empty !"),$h->v("class","warning"));
		} elseif ($_POST['username'] == ""){
			$result = $h->h3($t->w("username field empty !"),$h->v("class","warning"));
		} elseif (!preg_match("/^[A-Za-z0-9]+$/",$_POST['userlogin'])){
			$result = $h->h3($t->w("only A-Z a-z 0-9 chars"),$h->v("class","warning"));
		} else {
			$query = INSERTINTO.USERS." (LOGIN,PASSWORD,USERNAME,MAIL,DESCRIPTION,USERLEVEL,DATEPAGE,USEROWNER) VALUES (".
											"'".$h->safe($_POST['userlogin'])."','".$h->crypt($_POST['password'])."','".
											$h->safe($_POST['username'])."','".$h->safe($_POST['mail'])."','".
											$h->safe($_POST['description'])."',".$h->num($_POST['level']).",'".$date."',".
											$_SESSION['userid'].")";
			$query = $this->q($query);
			$result = $h->h3($t->wr("user").strip_tags($_POST['username']).$t->wl("created !"));
			$result .= $h->ahref("admin.php?action=users",$t->wr("return").$t->w("users"),$h->v("class","linkbtn"));
			$result .= " ".$t->wr("or").$h->ahref("admin.php?action=add_user",$t->wr("return").$t->w("add user"),$h->v("class","linkbtn"));
		}
		return $result;
	}
	public function add_user_form(){
		$h = $this->h;$t = $this->t;
		$_[] = $h->input("hidden","add",1);
		$_[] = $h->p($h->lbl($t->wr("login"),"userlogin").$h->input("text","userlogin"));
		$_[] = $h->p($h->lbl($t->wr("password"),"password").$h->input("password","password",null,$h->v("size",(FIELDWIDTH/2))));
		$_[] = $h->p($h->lbl($t->wr("confirm password"),"confirm").$h->input("password","confirm",null,$h->v("size",(FIELDWIDTH/2))));
		$_[] = $h->p( $h->input("checkbox","checkbox",null,"onclick=\"showPassword(['password','confirm'])\"").$h->lbl($t->wl("show password"),"checkbox") );
		$scaleLevel = 4;
		$levels = array();
		if ($_SESSION['userid'] == 1) $scaleLevel = 5;
		for ($i=0;$i < ($scaleLevel - $_SESSION['level']);$i++){
			$x = 4 - $i;
			$levels[$t->wr("level").$x] =  $x;
		}
		$_[] = $h->p($h->lbl($t->wr("level"),"level").$h->select($levels,"level"),$h->alt($t->w("users levels")));
		$_[] = $h->p($h->lbl($t->w("name"),"username")).$h->p($h->input("text","username",null,$h->v("size",(FIELDWIDTH))));
		$_[] = $h->p($h->lbl($t->w("description"),"description")).$h->p($h->textarea("","description",array(8,FIELDWIDTH)));
		$_[] = $h->p($h->lbl($t->wr("mail"),"mail").$h->input("email","mail",null,$h->v("size",(FIELDWIDTH/2))));
		$_[] = $h->p($h->input("submit",null,$t->w("save")));
		$content = implode("",$_);
		return $h->form($content,"user","post","admin.php?action=add_user");
	}
}
?>

page url