403Webshell
Server IP : 195.130.67.5  /  Your IP : 216.73.217.154
Web Server : Microsoft-IIS/10.0
System : Windows NT WEBSERVER1 10.0 build 17763 (Windows Server 2016) i586
User : IUSR ( 0)
PHP Version : 7.4.19
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /Old Sites/modip/infosystem_v7/application/controllers/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /Old Sites/modip/infosystem_v7/application/controllers/users.php
<?php

function add_user_submit() {
	
	if(!permission_exists("add_user", NULL)) {
		$_SESSION['error_message']="Δεν έχετε τα απαραίτητα δικαιώματα να προβάλετε αυτή τη σελίδα.";
		default_page();
		return;
	}


	require_once("lib/mailer/email.php");
	
	$custom_username=$_POST['custom_username'];
	$custom_password=$_POST['custom_password'];
	$first_name=$_POST['first_name'];
	$last_name=$_POST['last_name'];
	$email=$_POST['email'];
	$telephone=$_POST['telephone'];
	$mobile=$_POST['mobile'];
	$afm=$_POST['afm'];
	$send_email=$_POST['send_email'];

	if($first_name==NULL||$last_name==NULL||$email==NULL||($telephone==NULL&&$mobile==NULL)||$afm==NULL) {
		$_SESSION['error_message']="Πρέπει να συμπληρώσετε όλα τα υποχρεωτικά πεδία.";
		add_user($custom_username,$first_name,$last_name,$email,$telephone,$mobile,$afm);
		return;
	}
	
	$afm_exists=mysql_num_rows(query("SELECT * FROM __users WHERE afm='".$afm."'"));
	if($afm_exists!=0) {
		$_SESSION['error_message']="Υπάρχει ήδη χρήστης με ΑΦΜ ".$afm.".";
		add_user($custom_username,$first_name,$last_name,$email,$telephone,$mobile,$afm);
		return;
	}

	if(preg_match('/[^0-9]/',$afm)) {
		$_SESSION['error_message']="Μη έγκυρο ΑΦΜ ".$afm.".";
		add_user($custom_username,$first_name,$last_name,$email,$telephone,$mobile,$afm);
		return;
	}

	if(strlen($telephone)<10&&$telephone!=NULL) {
		$_SESSION['error_message']="Μη έγκυρο Τηλέφωνο ".$telephone.".";
		add_user($custom_username,$first_name,$last_name,$email,$telephone,$mobile,$afm);
		return;
	}
	
	if(strlen($mobile)<10&&$mobile!=NULL) {
		$_SESSION['error_message']="Μη έγκυρο Τηλέφωνο ".$mobile.".";
		add_user($custom_username,$first_name,$last_name,$email,$telephone,$mobile,$afm);
		return;
	}

	$email_exists=mysql_num_rows(query("SELECT * FROM __users WHERE email='".$email."'"));
	if($email_exists!=0) {
		$_SESSION['error_message']="Υπάρχει ήδη χρήστης με διεύθυνση e-mail ".$email.".";
		add_user($custom_username,$first_name,$last_name,$email,$telephone,$mobile,$afm);
		return;
	}

	if(!check_email($email)) {
		$_SESSION['error_message']="Η διεύθυνση email που δώσατε είναι μη έγκυρη.";
		add_user($custom_username,$first_name,$last_name,$email,$telephone,$mobile,$afm);
		return;
	}
	
	if($custom_username==NULL) {
		$trans=array("α"=>"a", "ά"=>"a", "β"=>"v", "γ"=>"g", "δ"=>"d", "ε"=>"e", "έ"=>"e", "ζ"=>"z", "η"=>"i", "ή"=>"i", "θ"=>"th", "ι"=>"i", "ί"=>"i", "ϊ"=>"i", "ΐ"=>"i", "κ"=>"k", "λ"=>"l", "μ"=>"m", "ν"=>"n", "ξ"=>"x", "ο"=>"o", "ό"=>"o", "π"=>"p", "ρ"=>"r", "σ"=>"s", "τ"=>"t", "υ"=>"y", "ύ"=>"y", "ϋ"=>"y", "ΰ"=>"y", "φ"=>"f", "χ"=>"ch", "ψ"=>"ps", "ω"=>"o", "ώ"=>"o", "ου"=>"ou", "ού"=>"ou");
	
		$username=substr(strtr(mb_substr(mb_strtolower(mb_strtoupper($first_name,'UTF-8'),'UTF-8'),0,1,'UTF-8'),$trans).strtr(mb_strtolower(mb_strtoupper($last_name,'UTF-8'),'UTF-8'),$trans),0,7);

		$username_exists=mysql_num_rows(query("SELECT * FROM __users WHERE username='".$username."'"));

		if($username_exists!=0) {
			$i=1;
			while(true) {
				$username2=$username.$i;
				$username_more_exists=mysql_num_rows(query("SELECT * FROM __users WHERE username='".$username2."'"));
				if($username_more_exists==0) break;
				$i++;
			}
			$username=$username2;
		}
	}
	else {
		$duplicate_username=mysql_num_rows(query("SELECT * FROM __users WHERE username='".$custom_username."'"));
		if($duplicate_username!=0) {
			$_SESSION['error_message']="Το όνομα χρήστη που δώσατε υπάρχει ήδη.";
			add_user($custom_username,$first_name,$last_name,$email,$telephone,$mobile,$afm);
			return;
		}
	
		if(preg_match('/[^a-z0-9]/',$custom_username)) {
			$_SESSION['error_message']="Το όνομα χρήστη μπορεί να αποτελείται μόνο από πεζούς αγγλικούς χαρακτήρες και αριθμούς.";
			add_user($custom_username,$first_name,$last_name,$email,$telephone,$mobile,$afm);
			return;
		}
		
		$username=$custom_username;
	}
	
	if($custom_password==NULL) {
		$password=substr(md5(uniqid(rand(),true)),0,10);
	}
	else {
		if(preg_match('/[^a-zA-Z0-9!@#$%\^&*()-_=+]/',$custom_password)) {
			$_SESSION['error_message']="Οι επιτρεπόμενοι χαρακτήρες για τον κωδικό είναι αγγλικά γράμματα (κεφαλαία και μικρά), οι αριθμοί και οι χαρακτήρες !@#$%^&*()-_=+.";
			add_user($custom_username,$first_name,$last_name,$email,$telephone,$mobile,$afm);
			return;
		}
	
		if(strlen($custom_password)<8) {
			$_SESSION['error_message']="Ο κωδικός πρέπει να είναι τουλάχιστον 8 χαρακτήρες.";
			add_user($custom_username,$first_name,$last_name,$email,$telephone,$mobile,$afm);
			return;
		}

		$password=$custom_password;
	}
	

	query("INSERT INTO __users (username, password, first_name, last_name, email, telephone, mobile, afm, date_added, active) VALUES ('".$username."', '".md5($password)."', '".$first_name."', '".$last_name."', '".$email."', '".$telephone."', '".$mobile."', '".$afm."', '".current_date()."', 1)");
	
	if(mysql_affected_rows()>0) $_SESSION['success_message']="Ο χρήστης εισήχθη επιτυχώς με όνομα χρήστη: ".$username.". ";
	else $_SESSION['error_message']="Απροσδόκητο σφάλμα κατά την καταχώρηση του χρήστη. ";

	$email_template_i=mysql_fetch_array(query("SELECT * FROM __email_templates WHERE type='add_new_user'"));
	
	$to_mail=$email;
	$from_mail=EMAIL_ADDRESS;
	$your_name=EMAIL_NAME;
	$topic=clear_string($email_template_i["subject"]);
	$message=clear_string($email_template_i["body"]);
	$message=str_replace("{USERNAME}", $username, $message);
	$message=str_replace("{PASSWORD}", $password, $message);
	$message=str_replace("{URL}", CURRENT_SITE, $message);
	
  
	if($send_email=='1') {
		$mail_sent=smtpmailer($to_mail,$from_mail,$your_name,$topic,$message);
		if($mail_sent==true) $_SESSION['success_message'].="Εστάλη επιτυχώς e-mail στο νέο χρήστη.";
		else $_SESSION['error_message'].="Σφάλμα κατά την αποστολή του e-mail στο νέο χρήστη.";
	}
	
	view_user(mysql_insert_id());
}


function update_user_submit() {

	$id_user=$_POST['userid'];

	if(!permission_exists("update_user", $id_user)) {
		$_SESSION['error_message']="Δεν έχετε τα απαραίτητα δικαιώματα να προβάλετε αυτή τη σελίδα.";
		default_page();
		return;
	}

	
	$username=$_POST['username'];
	$first_name=$_POST['first_name'];
	$last_name=$_POST['last_name'];
	$email=$_POST['email'];
	$telephone=$_POST['telephone'];
	$mobile=$_POST['mobile'];
	$afm=$_POST['afm'];
	

	if($first_name==NULL||$last_name==NULL||$email==NULL||($telephone==NULL&&$mobile==NULL)||$afm==NULL) {
		$_SESSION['error_message']="Πρέπει να συμπληρώσετε όλα τα υποχρεωτικά πεδία.";
		update_user($id_user);
		return;
	}

	$old_data=mysql_fetch_array(query("SELECT * FROM __users WHERE id='".$id_user."'"));
	
	$duplicate_username=mysql_num_rows(query("SELECT * FROM __users WHERE username='".$username."' AND username!='".$old_data['username']."'"));
	if($duplicate_username!=0) {
		$_SESSION['error_message']="Το όνομα χρήστη που δώσατε υπάρχει ήδη.";
		update_user($id_user);
		return;
	}

	$duplicate_afm=mysql_num_rows(query("SELECT * FROM __users WHERE afm='".$afm."' AND afm!='".$old_data['afm']."'"));
	if($duplicate_afm!=0) {
		$_SESSION['error_message']="Το ΑΦΜ που δώσατε υπάρχει ήδη.";
		update_user($id_user);
		return;
	}

	if(preg_match('/[^0-9]/',$afm)) {
		$_SESSION['error_message']="Μη έγκυρο ΑΦΜ ".$afm.".";
		update_user($id_user);
		return;
	}


	if(strlen($telephone)<10&&$telephone!=NULL) {
		$_SESSION['error_message']="Μη έγκυρο Τηλέφωνο ".$telephone.".";
		update_user($id_user);
		return;
	}
	
	if(strlen($mobile)<10&&$mobile!=NULL) {
		$_SESSION['error_message']="Μη έγκυρο Τηλέφωνο ".$mobile.".";
		update_user($id_user);
		return;
	}
	
	$duplicate_email=mysql_num_rows(query("SELECT * FROM __users WHERE email='".$email."' AND email!='".$old_data['email']."'"));
	if($duplicate_email!=0) {
		$_SESSION['error_message']="Η διεύθυνση e-mail που δώσατε υπάρχει ήδη.";
		update_user($id_user);
		return;
	}
	
	if(!check_email($email)) {
		$_SESSION['error_message']="Η διεύθυνση email που δώσατε είναι μη έγκυρη.";
		update_user($id_user);
		return;
	}
	
	if(preg_match('/[^a-z0-9]/',$username)) {
		$_SESSION['error_message']="Το όνομα χρήστη μπορεί να αποτελείται μόνο από πεζούς αγγλικούς χαρακτήρες και αριθμούς.";
		update_user($id_user);
		return;
	}

	
	$no_changes=mysql_num_rows(query("SELECT * FROM __users WHERE id='".$id_user."' AND username='".$username."' AND first_name='".$first_name."' AND last_name='".$last_name."' AND email='".$email."' AND telephone='".$telephone."' AND mobile='".$mobile."' AND afm='".$afm."'"));

	if($no_changes>0) {
		$_SESSION['error_message']="Δεν κάνατε κάποια τροποποίηση στα στοιχεία του χρήστη.";
		view_user($id_user);
		return;
	}	
	
	query("UPDATE __users SET username='".$username."', first_name='".$first_name."', last_name='".$last_name."', email='".$email."', telephone='".$telephone."', mobile='".$mobile."', afm='".$afm."' WHERE id='".$id_user."'");

	if(mysql_affected_rows()>0) $_SESSION['success_message']="Τα στοιχεία του χρήστη τροποποιήθηκαν επιτυχώς.";
	else $_SESSION['error_message']="Απροσδόκητο σφάλμα κατά την τροποποίηση των στοιχείων του χρήστη.";

	view_user($id_user);
}


function delete_user_submit() {

	$id_user=$_POST['userid'];
	$send_email=$_POST['send_email'];

	if(!permission_exists("delete_user", $id_user)) {
		$_SESSION['error_message']="Δεν έχετε τα απαραίτητα δικαιώματα να προβάλετε αυτή τη σελίδα.";
		default_page();
		return;
	}


	$relations_exist=mysql_num_rows(query("SELECT * FROM __relations WHERE id_user='".$id_user."'"));
	if($relations_exist!=0) {
		$_SESSION['error_message']="Υπάρχουν καταχωρημένες σχέσεις εξάρτησης για το συγκεκριμένο χρήστη και δε μπορεί να γίνει διαγραφή.";
		view_user($id_user);
		return;
	}

	$publications_exist=mysql_num_rows(query("SELECT * FROM __publications WHERE id_user='".$id_user."'"));
	if($publications_exist!=0) {
		$_SESSION['error_message']="Υπάρχουν καταχωρημένες δημοσιεύσεις για το συγκεκριμένο χρήστη και δε μπορεί να γίνει διαγραφή.";
		view_user($id_user);
		return;
	}
	

	$user_data_i=mysql_fetch_array(query("SELECT * FROM __users WHERE id='".$id_user."'"));
	
	query("DELETE FROM __users WHERE id='".$id_user."'");

	if(mysql_affected_rows()>0) $_SESSION['success_message']="Ο χρήστης διεγράφη επιτυχώς. ";
	else $_SESSION['error_message']="Απροσδόκητο σφάλμα κατά τη διαγραφή του χρήστη. ";

	require_once("lib/mailer/email.php");

	$email_template_i=mysql_fetch_array(query("SELECT * FROM __email_templates WHERE type='delete_user'"));
	
	$to_mail=$user_data_i['email'];
	$from_mail=EMAIL_ADDRESS;
	$your_name=EMAIL_NAME;
	$topic=clear_string($email_template_i["subject"]);
	$message=clear_string($email_template_i["body"]);

	if($send_email!=NULL) {
		$mail_sent=smtpmailer($to_mail,$from_mail,$your_name,$topic,$message);
		if($mail_sent==true) $_SESSION['success_message'].="Εστάλη επιτυχώς e-mail διαγραφής στο χρήστη.";
		else $_SESSION['error_message'].="Σφάλμα κατά την αποστολή του e-mail διαγραφής στο χρήστη.";
	}
	
	view_all_users();
}


function reset_user_password($id_user) {

	if(!permission_exists("reset_user_password", $id_user)) {
		$_SESSION['error_message']="Δεν έχετε τα απαραίτητα δικαιώματα να προβάλετε αυτή τη σελίδα.";
		default_page();
		return;
	}

	
	$user_data_i=mysql_fetch_array(query("SELECT * FROM __users WHERE id='".$id_user."'"));

	$new_password=substr(md5(uniqid(rand(),true)),0,10);
  
	require_once("lib/mailer/email.php");
	
	$email_template_i=mysql_fetch_array(query("SELECT * FROM __email_templates WHERE type='reset_user_password'"));
	
	$to_mail=$user_data_i['email'];
	$from_mail=EMAIL_ADDRESS;
	$your_name=EMAIL_NAME;
	$topic=clear_string($email_template_i["subject"]);
	$message=clear_string($email_template_i["body"]);
	$message=str_replace("{USERNAME}", $user_data_i['username'], $message);
	$message=str_replace("{PASSWORD}", $new_password, $message);

	query("UPDATE __users SET password='".md5($new_password)."' WHERE id='".$id_user."'");
	
	if(mysql_affected_rows()>0) $_SESSION['success_message']="Παρήχθη επιτυχώς νέος κωδικός για το χρήστη. ";
	else $_SESSION['error_message']="Απροσδόκητο σφάλμα κατά την επαναφορά του κωδικού του χρήστη. ";
	
	$mail_sent=smtpmailer($to_mail,$from_mail,$your_name,$topic,$message);
	if($mail_sent==true) $_SESSION['success_message'].="Εστάλη επιτυχώς e-mail στο χρήστη.";
	else $_SESSION['error_message'].="Σφάλμα κατά την αποστολή του e-mail στο χρήστη.";

	view_user($id_user);
}


function activate_user($id_user) {

	if(!permission_exists("activate_deactivate_user", $id_user)) {
		$_SESSION['error_message']="Δεν έχετε τα απαραίτητα δικαιώματα να προβάλετε αυτή τη σελίδα.";
		default_page();
		return;
	}

	$user_data_i=mysql_fetch_array(query("SELECT * FROM __users WHERE id='".$id_user."'"));
	

	$current_state=$user_data_i['active'];
	
	if($current_state==1) {
		$message1="απενεργοποιήθηκε";
		$message2="απενεργοποίηση";
	}
	else {
		$message1="ενεργοποιήθηκε";
		$message2="ενεργοποίηση";
	}
	
	query("UPDATE __users SET active=-active WHERE id='".$id_user."'");
	
	if(mysql_affected_rows()>0) $_SESSION['success_message']="Ο λογαριασμός του χρήστη ".$message1." επιτυχώς.";
	else $_SESSION['error_message']="Απροσδόκητο σφάλμα κατά την ".$message2." του λογαριασμού.";

	view_user($id_user);
}

?>

Youez - 2016 - github.com/yon3zu
LinuXploit