| 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 : |
<?php
function add_role_moderator_submit() {
$relation_chain=$_POST['relation_chain'];
$type=$_POST['type'];
$role_data_d=query("SELECT * FROM __roles WHERE type='".$type."' AND administrative=1");
$type_exists=mysql_num_rows($role_data_d);
if($type_exists==0) {
default_page();
return;
}
$role_data_i=mysql_fetch_array($role_data_d);
if(!permission_exists("add_role_".$type, $relation_chain)) {
$_SESSION['error_message']="Δεν έχετε τα απαραίτητα δικαιώματα να προβάλετε αυτή τη σελίδα.";
default_page();
return;
}
$user_data_i=mysql_fetch_array(query("SELECT u.* FROM __relations r, __users u WHERE r.relation_chain='".$relation_chain."' AND r.id_user=u.id"));
$relation_data_i=mysql_fetch_array(query("SELECT * FROM __relations WHERE relation_chain='".$relation_chain."' AND evolved_to_id IS NULL"));
$id_unit=$_POST['id_unit'];
if($id_unit==NULL) {
default_page();
return;
}
if(!is_relation_active(last_id_relation_of_chain($relation_chain))) {
$_SESSION['error_message']="Δεν μπορείτε να προσθέσετε ρόλο σε ανενεργή σχέση εξάρτησης.";
view_user($user_data_i['id']);
return;
}
$role_exists=mysql_num_rows(query("SELECT * FROM __".$role_data_i['table_name']." WHERE relation_chain='".$relation_chain."' AND id_unit='".$id_unit."' AND semester='".current_semester()."'"));
if($role_exists!=0) {
$_SESSION['error_message']="Ο συγκεκριμένος ρόλος υπάρχει ήδη.";
view_user($user_data_i['id']);
return;
}
query("INSERT INTO __".$role_data_i['table_name']." (relation_chain, id_unit, semester) VALUES ('".$relation_chain."', '".$id_unit."', '".current_semester()."')");
if(mysql_affected_rows()>0) $_SESSION['success_message']="Ο ρόλος τύπου \"".$role_data_i['description']."\" εισήχθη επιτυχώς.";
else $_SESSION['error_message']="Απροσδόκητο σφάλμα κατά την εισαγωγή του ρόλου τύπου \"".$role_data_i['description']."\".";
view_user($user_data_i['id']);
}
function delete_role_moderator($id_role_moderator, $type) {
$relation_chain=id_role_to_relation_chain($type, $id_role_moderator);
$role_data_d=query("SELECT * FROM __roles WHERE type='".$type."' AND administrative=1");
$type_exists=mysql_num_rows($role_data_d);
if($type_exists==0) {
default_page();
return;
}
$role_data_i=mysql_fetch_array($role_data_d);
if(!permission_exists("delete_role_".$type, $relation_chain)) {
$_SESSION['error_message']="Δεν έχετε τα απαραίτητα δικαιώματα να προβάλετε αυτή τη σελίδα.";
default_page();
return;
}
$user_data_i=mysql_fetch_array(query("SELECT u.* FROM __relations r, __users u WHERE r.relation_chain='".$relation_chain."' AND r.id_user=u.id"));
$relation_data_i=mysql_fetch_array(query("SELECT * FROM __relations WHERE relation_chain='".$relation_chain."' AND evolved_to_id IS NULL"));
$role_moderator_data_i=mysql_fetch_array(query("SELECT semester FROM __".$role_data_i['table_name']." WHERE id='".$id_role_moderator."'"));
if($role_moderator_data_i['semester']<current_semester()) {
$_SESSION['error_message']="Δε μπορείτε να διαγράψετε ρόλο τύπου \"".$role_data_i['description']."\" παρελθόντος εξαμήνου.";
view_user($user_data_i['id']);
return;
}
query("DELETE FROM __".$role_data_i['table_name']." WHERE id='".$id_role_moderator."'");
if(mysql_affected_rows()>0) $_SESSION['success_message']="Ο ρόλος τύπου \"".$role_data_i['description']."\" διεγράφη επιτυχώς.";
else $_SESSION['error_message']="Απροσδόκητο σφάλμα κατά τη διαγραφή του ρόλου τύπου \"".$role_data_i['description']."\".";
view_user($user_data_i['id']);
}
function add_role_managerial_submit() {
$relation_chain=$_POST['relation_chain'];
$type=$_POST['type'];
$role_data_d=query("SELECT * FROM __roles WHERE type='".$type."' AND managerial=1");
$type_exists=mysql_num_rows($role_data_d);
if($type_exists==0) {
default_page();
return;
}
$role_data_i=mysql_fetch_array($role_data_d);
if(!permission_exists("add_role_".$type, $relation_chain)) {
$_SESSION['error_message']="Δεν έχετε τα απαραίτητα δικαιώματα να προβάλετε αυτή τη σελίδα.";
default_page();
return;
}
$user_data_i=mysql_fetch_array(query("SELECT u.* FROM __relations r, __users u WHERE r.relation_chain='".$relation_chain."' AND r.id_user=u.id"));
$relation_data_i=mysql_fetch_array(query("SELECT * FROM __relations WHERE relation_chain='".$relation_chain."' AND evolved_to_id IS NULL"));
if(!is_relation_active(last_id_relation_of_chain($relation_chain))) {
$_SESSION['error_message']="Δεν μπορείτε να προσθέσετε ρόλο σε ανενεργή σχέση εξάρτησης.";
view_user($user_data_i['id']);
return;
}
$role_exists=mysql_num_rows(query("SELECT * FROM __".$role_data_i['table_name']." WHERE relation_chain='".$relation_chain."' AND semester='".current_semester()."'"));
if($role_exists!=0) {
$_SESSION['error_message']="Ο συγκεκριμένος ρόλος υπάρχει ήδη.";
view_user($user_data_i['id']);
return;
}
query("INSERT INTO __".$role_data_i['table_name']." (relation_chain, semester) VALUES ('".$relation_chain."', '".current_semester()."')");
if(mysql_affected_rows()>0) $_SESSION['success_message']="Ο ρόλος τύπου \"".$role_data_i['description']."\" εισήχθη επιτυχώς.";
else $_SESSION['error_message']="Απροσδόκητο σφάλμα κατά την εισαγωγή του ρόλου τύπου \"".$role_data_i['description']."\".";
view_user($user_data_i['id']);
}
function delete_role_managerial($id_role_managerial, $type) {
$relation_chain=id_role_to_relation_chain($type, $id_role_managerial);
$role_data_d=query("SELECT * FROM __roles WHERE type='".$type."' AND managerial=1");
$type_exists=mysql_num_rows($role_data_d);
if($type_exists==0) {
default_page();
return;
}
$role_data_i=mysql_fetch_array($role_data_d);
if(!permission_exists("delete_role_".$type, $relation_chain)) {
$_SESSION['error_message']="Δεν έχετε τα απαραίτητα δικαιώματα να προβάλετε αυτή τη σελίδα.";
default_page();
return;
}
$user_data_i=mysql_fetch_array(query("SELECT u.* FROM __relations r, __users u WHERE r.relation_chain='".$relation_chain."' AND r.id_user=u.id"));
$relation_data_i=mysql_fetch_array(query("SELECT * FROM __relations WHERE relation_chain='".$relation_chain."' AND evolved_to_id IS NULL"));
$role_managerial_data_i=mysql_fetch_array(query("SELECT semester FROM __".$role_data_i['table_name']." WHERE id='".$id_role_managerial."'"));
if($role_managerial_data_i['semester']<current_semester()) {
$_SESSION['error_message']="Δε μπορείτε να διαγράψετε ρόλο τύπου \"".$role_data_i['description']."\" παρελθόντος εξαμήνου.";
view_user($user_data_i['id']);
return;
}
query("DELETE FROM __".$role_data_i['table_name']." WHERE id='".$id_role_managerial."'");
if(mysql_affected_rows()>0) $_SESSION['success_message']="Ο ρόλος τύπου \"".$role_data_i['description']."\" διεγράφη επιτυχώς.";
else $_SESSION['error_message']="Απροσδόκητο σφάλμα κατά τη διαγραφή του ρόλου τύπου \"".$role_data_i['description']."\".";
view_user($user_data_i['id']);
}
function add_course_assignment_submit() {
$relation_chain=$_POST['relation_chain'];
if(!permission_exists("add_course_assignment", $relation_chain)) {
$_SESSION['error_message']="Δεν έχετε τα απαραίτητα δικαιώματα να προβάλετε αυτή τη σελίδα.";
default_page();
return;
}
$user_data_i=mysql_fetch_array(query("SELECT u.* FROM __relations r, __users u WHERE r.relation_chain='".$relation_chain."' AND r.id_user=u.id"));
$relation_data_i=mysql_fetch_array(query("SELECT * FROM __relations WHERE relation_chain='".$relation_chain."' AND evolved_to_id IS NULL"));
$id_class=$_POST['id_class'];
$course_sheet=$_POST['course_sheet'];
$teaches=$_POST['teaches'];
$hours_per_week=$_POST['hours_per_week'];
// Στην υποστηρικτική διδασκαλία, πάντα πρέπει να διδάσκει ο διδάσκων
if($course_sheet==0) $teaches=1;
if($teaches==0) $hours_per_week=0;
$class_is_active_i=mysql_fetch_array(query("SELECT active FROM __classes WHERE id='".$id_class."'"));
if(($teaches==1&&$hours_per_week==0)||$id_class==NULL) {
$_SESSION['error_message']="Πρέπει να συμπληρώσετε όλα τα υποχρεωτικά πεδία.";
view_user($user_data_i['id']);
return;
}
if(!$class_is_active_i['active']) {
$_SESSION['error_message']="Το συγκεκριμένο μάθημα είναι απενεργοποιημένο";
view_user($user_data_i['id']);
return;
}
$class_head_exists_d=query("SELECT relation_chain FROM __course_assignments WHERE id_class='".$id_class."' AND course_sheet=1");
if((mysql_num_rows($class_head_exists_d)!=0)&&($course_sheet==1)) {
$class_head_exists_i=mysql_fetch_array($class_head_exists_d);
$class_head_data=mysql_fetch_array(query("SELECT __users.id, __users.first_name, __users.last_name FROM __relations, __users WHERE __relations.relation_chain='".$class_head_exists_i[0]."' AND __users.id=__relations.id_user"));
$_SESSION['error_message']="Το συγκεκριμένο μάθημα έχει ήδη υπεύθυνο τον χρήστη <a href='?action=viewuser&userid=".$class_head_data[0]."'>".$class_head_data[2]." ".$class_head_data[1]."</a>";
view_user($user_data_i['id']);
return;
}
if(!is_relation_active(last_id_relation_of_chain($relation_chain))) {
$_SESSION['error_message']="Δε μπορείτε να προσθέσετε ρόλο σε ανενεργή σχέση εξάρτησης.";
view_user($user_data_i['id']);
return;
}
if(!assignment_period_is_open(current_semester())) {
$_SESSION['error_message']="Δεν μπορείτε να κάνετε ανάθεση μαθήματος εκτός της περιόδου Αναθέσεων.";
view_user($user_data_i['id']);
return;
}
$role_exists=mysql_num_rows(query("SELECT * FROM __course_assignments WHERE id_class='".$id_class."' AND relation_chain='".$relation_chain."'"));
if($role_exists!=0) {
$_SESSION['error_message']="Ο χρήστης ".$user_data_i['last_name']." ".$user_data_i['first_name']." έχει ήδη μια ανάθεση σε αυτό το μάθημα.";
view_user($user_data_i['id']);
return;
}
query("INSERT INTO __course_assignments (id_class, relation_chain, course_sheet, teaches, hours_per_week) VALUES ('".$id_class."', '".$relation_chain."', '".$course_sheet."', '".$teaches."', '".$hours_per_week."')");
if(mysql_affected_rows()>0) $_SESSION['success_message']="Η ανάθεση μαθήματος εισήχθη επιτυχώς.";
else $_SESSION['error_message']="Απροσδόκητο σφάλμα κατά την εισαγωγή του ρόλου.";
view_user($user_data_i['id']);
}
function update_course_assignment_submit() {
$id_course_assignment=$_POST['id_course_assignment'];
if(!permission_exists("update_course_assignment", $id_course_assignment)) {
$_SESSION['error_message']="Δεν έχετε τα απαραίτητα δικαιώματα να προβάλετε αυτή τη σελίδα.";
default_page();
return;
}
$assignment_data_i=mysql_fetch_array(query("SELECT * FROM __course_assignments WHERE id=".$id_course_assignment));
$relation_chain=$assignment_data_i['relation_chain'];
$user_data_i=mysql_fetch_array(query("SELECT u.* FROM __relations r, __users u WHERE r.relation_chain='".$relation_chain."' AND r.id_user=u.id"));
$relation_data_i=mysql_fetch_array(query("SELECT * FROM __relations WHERE relation_chain='".$relation_chain."' AND evolved_to_id IS NULL"));
$id_class=$_POST['id_class'];
$course_sheet=$_POST['course_sheet'];
$teaches=$_POST['teaches'];
$hours_per_week=$_POST['hours_per_week'];
// Στην υποστηρικτική διδασκαλία, πάντα πρέπει να διδάσκει ο διδάσκων
if($course_sheet==0) $teaches=1;
if($teaches==0) $hours_per_week=0;
$class_is_active_i=mysql_fetch_array(query("SELECT active FROM __classes WHERE id='".$id_class."'"));
if(($teaches==1&&$hours_per_week==0)||$id_class==NULL) {
$_SESSION['error_message']="Πρέπει να συμπληρώσετε όλα τα υποχρεωτικά πεδία.";
//view_user($user_data_i['id']);
return;
}
if(!$class_is_active_i['active']) {
$_SESSION['error_message']="Το συγκεκριμένο μάθημα είναι απενεργοποιημένο";
view_user($user_data_i['id']);
return;
}
$class_head_exists_d=query("SELECT relation_chain FROM __course_assignments WHERE id_class='".$id_class."' AND course_sheet=1 AND relation_chain!=".$relation_data_i['relation_chain']);
if((mysql_num_rows($class_head_exists_d)>0)&&($course_sheet==1)) {
$class_head_exists_i=mysql_fetch_array($class_head_exists_d);
$class_head_data=mysql_fetch_array(query("SELECT __users.id, __users.first_name, __users.last_name FROM __relations, __users WHERE __relations.relation_chain='".$class_head_exists_i[0]."' AND __users.id=__relations.id_user"));
$_SESSION['error_message']="Το συγκεκριμένο μάθημα έχει ήδη υπεύθυνο τον χρήστη <a href='?action=viewuser&userid=".$class_head_data[0]."'>".$class_head_data[2]." ".$class_head_data[1]."</a>";
view_user($user_data_i['id']);
return;
}
if(!is_relation_active(last_id_relation_of_chain($relation_chain))) {
$_SESSION['error_message']="Δε μπορείτε να προσθέσετε ρόλο σε ανενεργή σχέση εξάρτησης.";
view_user($user_data_i['id']);
return;
}
if(!assignment_period_is_open(current_semester())) {
$_SESSION['error_message']="Δεν μπορείτε να κάνετε ανάθεση μαθήματος εκτός της περιόδου Αναθέσεων.";
view_user($user_data_i['id']);
return;
}
$role_exists=mysql_num_rows(query("SELECT * FROM __course_assignments WHERE id_class='".$id_class."' AND id_class!='".$assignment_data_i['id_class']."' AND relation_chain='".$relation_chain."'"));
if($role_exists>0) {
$_SESSION['error_message']="Ο χρήστης ".$user_data_i['last_name']." ".$user_data_i['first_name']." έχει ήδη μια ανάθεση σε αυτό το μάθημα.";
view_user($user_data_i['id']);
return;
}
query("UPDATE __course_assignments SET id_class='".$id_class."', relation_chain='".$relation_chain."', course_sheet='".$course_sheet."', teaches='".$teaches."', hours_per_week='".$hours_per_week."' WHERE id=".$id_course_assignment);
if(mysql_affected_rows()>0) $_SESSION['success_message']="Η ανάθεση μαθήματος τροποποιήθηκε επιτυχώς.";
else $_SESSION['error_message']="Δεν πραγματοποιήθηκαν αλλαγές.";
view_user($user_data_i['id']);
}
function delete_course_assignment($id_course_assignment) {
if(!permission_exists("delete_course_assignment", $id_course_assignment)) {
$_SESSION['error_message']="Δεν έχετε τα απαραίτητα δικαιώματα να προβάλετε αυτή τη σελίδα.";
default_page();
return;
}
$relation_chain_i=mysql_fetch_array(query("SELECT __relations.id_user FROM __relations, __course_assignments WHERE __course_assignments.id='".$id_course_assignment."' AND __relations.relation_chain=__course_assignments.relation_chain"));
if(course_assignment_to_semester($id_course_assignment)<current_semester()) {
$_SESSION['error_message']="Δε μπορείτε να διαγράψετε ρόλο παρελθόντος εξαμήνου.";
view_user($relation_chain_i['id_user']);
return;
}
if(!assignment_period_is_open(current_semester())) {
$_SESSION['error_message']="Δεν μπορείτε να κάνετε ανάθεση μαθήματος εκτός της περιόδου Αναθέσεων.";
view_user($relation_chain_i['id_user']);
return;
}
$course_sheet_exists=mysql_num_rows(query("SELECT * FROM __course_sheets WHERE id_course_assignment='".$id_course_assignment."'"));
$teacher_sheet_exists=mysql_num_rows(query("SELECT * FROM __teacher_sheets WHERE semester='".current_semester()."' AND id_unit='".course_assignment_to_unit($id_course_assignment)."' AND id_user='".$relation_chain_i['id_user']."'"));
if($course_sheet_exists||$teacher_sheet_exists) {
$_SESSION['error_message']="Δε μπορείτε να διαγράψετε τη συγκεκριμένη ανάθεση διότι ο χρήστης έχει ήδη υποβάλει Δελτία.";
view_user($relation_chain_i['id_user']);
return;
}/*+++**/
query("DELETE FROM __course_assignments WHERE id='".$id_course_assignment."'");
if(mysql_affected_rows()>0) $_SESSION['success_message']="Η ανάθεση μαθήματος διεγράφη επιτυχώς.";
else $_SESSION['error_message']="Απροσδόκητο σφάλμα κατά τη διαγραφή της ανάθεσης μαθήματος.";
view_user($relation_chain_i['id_user']);
}
?>