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/notifications.php
<?php

function send_inventory_notification($id_unit) {
	
	$semester=current_semester(); //Μόνο για το τρέχον εξάμηνο
	
	if(!permission_exists("send_inventory_notification", $id_unit)) {
		$_SESSION['error_message']="Δεν έχετε τα απαραίτητα δικαιώματα να προβάλετε αυτή τη σελίδα.";
		default_page();
		return;
	}

	if (!inventory_period_is_open($semester)){
		$_SESSION['error_message']="Μπορείτε να στείλετε ειδοποίηση μόνο κατά τη διάρκεια της περιόδου συμπλήρωσης απογραφικών δελτίων.";
		default_page();
		return;
	}
	
	
	//Περιορισμός για μία μόνο ειδοποίηση ανά 24 ώρες
	$recently_sent=mysql_num_rows(query("SELECT * FROM __email_notifications WHERE type='inventory_sheets' AND semester='".$semester."' AND (id_unit='".$id_unit."' OR id_unit='ALL') AND date BETWEEN NOW() - INTERVAL 1 DAY AND NOW()"));
	if ($recently_sent){
		$_SESSION['error_message']="Εχει ήδη σταλεί μία ειδοποίηση στις τελευταίες 24 ώρες.";
		return;
	}
	
	
	
	
	$users_moderated_d=query("SELECT DISTINCT u.id, u.last_name, u.first_name, u.email, ca.id caid, ca.course_sheet
								FROM __users u
								INNER JOIN __relations r ON r.id_user = u.id
								RIGHT JOIN __course_assignments ca ON ca.relation_chain = r.relation_chain
								INNER JOIN __classes cl ON cl.id=ca.id_class
								WHERE r.id_unit = '".$id_unit."' AND u.active =1
								AND r.id_ending_reason =1
								AND cl.semester='".$semester."'
								AND r.id = (SELECT max( r2.id ) FROM __relations r2 WHERE r2.relation_chain = r.relation_chain )
								GROUP BY r.relation_chain
								ORDER BY u.last_name ASC , u.first_name ASC");
	
	$emails="";	
	
	while ($users_moderated_i=mysql_fetch_array($users_moderated_d)){
		
		$notify_user=0;
		
		//check if teacher sheet is submited
		$teacher_sheet_data=mysql_fetch_array(query("SELECT id, submitted, id_proxy_user FROM __teacher_sheets WHERE id_user='".$users_moderated_i["id"]."' AND semester='".$semester."' AND id_unit='".$id_unit."'"));
		if($teacher_sheet_data["submitted"]!=1) $notify_user++;
		
		//check if course sheet is submited
		if($teacher_sheet_data["course_sheet"]==1){
			$course_sheet_data=mysql_fetch_array(query("SELECT submitted, id_proxy_user FROM __course_sheets WHERE id_course_assignment='".$users_moderated_i['caid']."'"));
			if($course_sheet_data["submitted"]!=1) $notify_user++;
		}
		
		if ($notify_user>0) $emails.=$users_moderated_i['email'].";";
		
	}

	require_once("lib/mailer/email.php");
	
	$email_template_i=mysql_fetch_array(query("SELECT * FROM __email_templates WHERE type='inventory_notification'"));
	
	$to_mail=$emails;
	//$to_mail="sdimitr@teiser.gr;mba_plagiarism@teiser.gr;"; //++++ να φύγει στο production version
	$from_mail=EMAIL_ADDRESS;
	$your_name=EMAIL_NAME;
	$topic=clear_string($email_template_i["subject"]);
	$topic=str_replace("{SEMESTER}", semester_id_to_text($semester), $topic);
	$message=clear_string($email_template_i["body"]);
	$message=str_replace("{SEMESTER}", semester_id_to_text(current_semester(),1), $message);
	$message=str_replace("{DEPARTMENT}", unit_id_to_name($id_unit), $message);
	$message=str_replace("{STARTDATE}", convert_date(current_semester("start_inventory")), $message);
	$message=str_replace("{ENDDATE}", convert_date(current_semester("end_inventory")), $message);
	$message=str_replace("{URL}", CURRENT_SITE, $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 ειδοποίησης στους χρήστες.";
	
	query("INSERT INTO __email_notifications (type, semester, id_unit) VALUES ('inventory_sheets', '".$semester."', '".$id_unit."')");
	
}

?>

Youez - 2016 - github.com/yon3zu
LinuXploit