aboutsummaryrefslogtreecommitdiffstats
path: root/mayor-orig/www/include/modules/naplo/admin
diff options
context:
space:
mode:
Diffstat (limited to 'mayor-orig/www/include/modules/naplo/admin')
-rw-r--r--mayor-orig/www/include/modules/naplo/admin/azonositok.php14
-rw-r--r--mayor-orig/www/include/modules/naplo/admin/checksql.php98
-rw-r--r--mayor-orig/www/include/modules/naplo/admin/intezmenyek.php117
-rw-r--r--mayor-orig/www/include/modules/naplo/admin/szemeszterek.php48
-rw-r--r--mayor-orig/www/include/modules/naplo/admin/szuloiAzonositok.php14
-rw-r--r--mayor-orig/www/include/modules/naplo/admin/tanevek.php390
-rw-r--r--mayor-orig/www/include/modules/naplo/admin/tankorok.php133
7 files changed, 0 insertions, 814 deletions
diff --git a/mayor-orig/www/include/modules/naplo/admin/azonositok.php b/mayor-orig/www/include/modules/naplo/admin/azonositok.php
deleted file mode 100644
index 9d85b3e5..00000000
--- a/mayor-orig/www/include/modules/naplo/admin/azonositok.php
+++ /dev/null
@@ -1,14 +0,0 @@
-<?php
-
- function getOsztalyNevsorEsOid($osztalyId) {
-
- $q = "SELECT diakId, TRIM(CONCAT_WS(' ',viseltNevElotag, ViseltCsaladiNev, viseltUtoNev)) AS diakNev, viseltCsaladinev, viseltUtonev, oId
- FROM diak LEFT JOIN osztalyDiak USING (diakId)
- WHERE osztalyId=%u
- AND beDt<=CURDATE() AND (kiDt >= CURDATE() OR kiDt IS NULL)
- AND (statusz != 'jogviszonya lezárva' OR jogviszonyVege < CURDATE()) ORDER BY diakNev, oId";
- return db_query($q, array('fv' => 'getOsztalyAzonositok', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => array($osztalyId)), $lr);
-
- }
-
-?>
diff --git a/mayor-orig/www/include/modules/naplo/admin/checksql.php b/mayor-orig/www/include/modules/naplo/admin/checksql.php
deleted file mode 100644
index cb751521..00000000
--- a/mayor-orig/www/include/modules/naplo/admin/checksql.php
+++ /dev/null
@@ -1,98 +0,0 @@
-<?php
-
-
-
- function checkSqlConsistency($queryFile,$db,&$Q_ERR)
- {
-
- $convert = array("%DB%" => intezmenyDbNev(__INTEZMENY));
-
- $fp = fopen($queryFile, 'r');
- $query = fread($fp, filesize($queryFile));
- fclose($fp);
-
- // A tárolt eljárásoknak, függvényeknek "DELIMITER //" és "DELIMITER ; //" között kell lenniük - egy blokkban a file végén!
- list($query, $delimiter) = explode('DELIMITER //', $query);
-
- // Tábladefiníciók - normál query-k
- $QUERIES = explode(';', str_replace("\n", '', $query));
- for ($i = 0; $i < count($QUERIES); $i++) {
- $q = $QUERIES[$i];
- if (trim($q) != '' and substr($q, 0, 2) != '--' and substr($q, 0, 3) != '/*!') {
- if (is_array($convert)) foreach ( $convert as $mit=>$mire ) $q = str_replace($mit,$mire,$q);
- }
- if (substr($q,0,6) == 'CREATE') {
- $_q = str_replace(' ','',$q);
- $first = $second = 0;
- for ($c = 0; $c<strlen($_q); $c++) {
- if ($_q[$c]==='`') {
- if ($first==0) $first = $c;
- else {
- $second = $c; break;
- }
- }
- }
- $table = substr($_q,$first+1,$second-$first-1);
- $r = db_query("SHOW CREATE TABLE $table",array('modul'=>$db,'result'=>'record'));
- $q1 = str_replace("\n",'',str_replace(' ','',$r['Create Table']));
- $q2 = str_replace(' ','',$_q);
- $q1_tmp = substr($q1,0,strrpos($q1,")"));
- $q2_tmp = substr($q2,0,strrpos($q2,")"));
- if ($q1_tmp!=$q2_tmp) {
- $Q_ERR[]=array('inDb'=>$r['Create Table'],'inFile'=>$q);
- }
- }
- }
- }
-
-
-
-/*
-Paul's Simple Diff Algorithm v 0.1
-(C) Paul Butler 2007 <http://www.paulbutler.org/>
-May be used and distributed under the zlib/libpng license.
-This code is intended for learning purposes; it was written with short
-code taking priority over performance. It could be used in a practical
-application, but there are a few ways it could be optimized.
-Given two arrays, the function diff will return an array of the changes.
-I won't describe the format of the array, but it will be obvious
-if you use print_r() on the result of a diff on some test data.
-htmlDiff is a wrapper for the diff command, it takes two strings and
-returns the differences in HTML. The tags used are <ins> and <del>,
-which can easily be styled with CSS.
-*/
-
-function diff($old, $new){
-foreach($old as $oindex => $ovalue){
-$nkeys = array_keys($new, $ovalue);
-foreach($nkeys as $nindex){
-$matrix[$oindex][$nindex] = isset($matrix[$oindex - 1][$nindex - 1]) ?
-$matrix[$oindex - 1][$nindex - 1] + 1 : 1;
-if($matrix[$oindex][$nindex] > $maxlen){
-$maxlen = $matrix[$oindex][$nindex];
-$omax = $oindex + 1 - $maxlen;
-$nmax = $nindex + 1 - $maxlen;
-}
-}
-}
-if($maxlen == 0) return array(array('d'=>$old, 'i'=>$new));
-return array_merge(
-diff(array_slice($old, 0, $omax), array_slice($new, 0, $nmax)),
-array_slice($new, $nmax, $maxlen),
-diff(array_slice($old, $omax + $maxlen), array_slice($new, $nmax + $maxlen)));
-}
-
-function htmlDiff($old, $new){
-$diff = diff(explode(' ', $old), explode(' ', $new));
-foreach($diff as $k){
-if(is_array($k))
-$ret .= (!empty($k['d'])?"<del>".implode(' ',$k['d'])."</del> ":'').
-(!empty($k['i'])?"<ins>".implode(' ',$k['i'])."</ins> ":'');
-else $ret .= $k . ' ';
-}
-return $ret;
-}
-
-
-
-?>
diff --git a/mayor-orig/www/include/modules/naplo/admin/intezmenyek.php b/mayor-orig/www/include/modules/naplo/admin/intezmenyek.php
deleted file mode 100644
index 654a4c56..00000000
--- a/mayor-orig/www/include/modules/naplo/admin/intezmenyek.php
+++ /dev/null
@@ -1,117 +0,0 @@
-<?php
-
- function updateNaploSession($sessionID,$rovidnev) {
- if (defined('__TANEV')) {
- $q = "UPDATE session SET intezmeny='%s',tanev=%u WHERE sessionID='%s'";
- $v = array($rovidnev,__TANEV,$sessionID);
- } else {
- $q = "UPDATE session SET intezmeny='%s' WHERE sessionID='%s'";
- $v = array($rovidnev,$sessionID);
- }
- $r = db_query($q, array('fv' => 'updateNaploSession', 'modul' => 'naplo_base', 'values' => $v));
- }
-
- function intezmenyBejegyzese($OMKod, $nev, $rovidnev) {
-
- $lr = db_connect('naplo_base', array('fv' => 'intezmenyBejegyzese'));
-
- $q = "SELECT COUNT(*) FROM intezmeny WHERE alapertelmezett=1";
- $num = db_query($q, array('fv' => 'intezmenyBejegyzese', 'modul' => 'naplo_base', 'result' => 'value'), $lr);
-
- if ($num > 0) $alapertelmezett = 0;
- else $alapertelmezett = 1;
-
- $q = "INSERT INTO intezmeny (OMKod, nev, rovidnev, alapertelmezett)
- VALUES ('%s', '%s', '%s', %u)";
- $v = array($OMKod, $nev, $rovidnev, $alapertelmezett);
- $r = db_query($q, array('fv' => 'intezmenyBejegyzese', 'modul' => 'naplo_base', 'values' => $v), $lr);
-
- db_close($lr);
- }
-
- function intezmenyModositas($ADAT) {
-
- $q = "UPDATE intezmeny SET nev='%s', OMKod='%s', alapertelmezett=%u, fenntarto='%s' WHERE rovidNev='".__INTEZMENY."' ";
- $v = array($ADAT['nev'], $ADAT['OMKod'], $ADAT['alapertelmezett'], $ADAT['fenntarto']);
- return db_query($q, array('fv' => 'intezmenyModositas', 'modul' => 'naplo_base', 'values' => $v));
-
- }
-
- function intezmenyTorles($intezmeny) {
-
- $q = "DELETE FROM intezmeny WHERE rovidNev='%s'";
- return db_query($q, array('fv' => 'intezmenyTorles', 'modul' => 'naplo_base', 'values' => array($intezmeny)));
-
- }
-
- function getIntezmeny($intezmeny) {
-
- $q = "SELECT * FROM `intezmeny` WHERE `rovidNev`='%s'";
- $ret = db_query($q, array('fv' => 'getIntezmeny', 'modul' => 'naplo_base', 'result' => 'record', 'values' => array($intezmeny)));
-
- $q = "SELECT * FROM `%s`.`telephely`";
- $ret['telephely'] = db_query($q, array('fv' => 'getIntezmeny', 'modul' => 'naplo_base', 'result' => 'indexed', 'values' => array(intezmenyDbNev($intezmeny))));
-
- return $ret;
-
- }
-
- function telephelyModositas($ADAT) {
-
- $v = array(
- __INTEZMENYDBNEV,
- // Telephely adatai
- readVariable($ADAT['telephelyNev'], 'sql', null),
- readVariable($ADAT['telephelyRovidNev'], 'sql', null),
- readVariable($ADAT['alapertelmezett'], 'numeric unsigned', 0, array(0,1)),
- readVariable($ADAT['cimHelyseg'], 'sql', null),
- readVariable($ADAT['cimIrsz'], 'numeric', 'NULL'),
- readVariable($ADAT['cimKozteruletNev'], 'sql', null),
- readVariable($ADAT['cimKozteruletJelleg'], 'sql', null),
- readVariable($ADAT['cimHazszam'], 'sql', null),
- readVariable($_POST['telefon'], 'string'),
- readVariable($_POST['fax'], 'string'),
- readVariable($_POST['email'], 'string'),
- readVariable($_POST['honlap'], 'string'),
- readVariable($_POST['telephelyId'], 'id')
- );
-
- $q = "UPDATE `%s`.`telephely`
- SET `telephelyNev`='%s', `telephelyRovidNev`='%s', `alapertelmezett`=%u,
- `cimHelyseg`='%s', `cimIrsz`=%u, `cimKozteruletNev`='%s',`cimKozteruletJelleg`='%s', `cimHazszam`='%s',
- `telefon`='%s',`fax`='%s',`email`='%s',`honlap`='%s'
- WHERE `telephelyId`='%s' ";
-
- return db_query($q, array('fv' => 'telephelyModositas', 'modul' => 'naplo_base', 'values' => $v));
-
- }
-
- function ujTelephely($ADAT) {
-
- $v = array(
- __INTEZMENYDBNEV,
- // Telephely adatai
- readVariable($ADAT['telephelyNev'], 'sql', null),
- readVariable($ADAT['telephelyRovidNev'], 'sql', null),
- readVariable($ADAT['alapertelmezett'], 'numeric unsigned', 0, array(0,1)),
- readVariable($ADAT['cimHelyseg'], 'sql', null),
- readVariable($ADAT['cimIrsz'], 'numeric', 'NULL'),
- readVariable($ADAT['cimKozteruletNev'], 'sql', null),
- readVariable($ADAT['cimKozteruletJelleg'], 'sql', null),
- readVariable($ADAT['cimHazszam'], 'sql', null),
- readVariable($_POST['telefon'], 'string'),
- readVariable($_POST['fax'], 'string'),
- readVariable($_POST['email'], 'string'),
- readVariable($_POST['honlap'], 'string'),
- );
-
- $q = "INSERT INTO `%s`.`telephely`
- (`telephelyNev`,`telephelyRovidNev`,`alapertelmezett`,`cimHelyseg`,`cimIrsz`,`cimKozteruletNev`,`cimKozteruletJelleg`,`cimHazszam`,
- `telefon`,`fax`,`email`,`honlap`)
- VALUES ('%s', '%s', %u,'%s', %u, '%s','%s', '%s','%s','%s','%s','%s')";
-
- return db_query($q, array('fv' => 'ujTelephely', 'modul' => 'naplo_base', 'values' => $v));
-
- }
-
-?>
diff --git a/mayor-orig/www/include/modules/naplo/admin/szemeszterek.php b/mayor-orig/www/include/modules/naplo/admin/szemeszterek.php
deleted file mode 100644
index 6e4c2149..00000000
--- a/mayor-orig/www/include/modules/naplo/admin/szemeszterek.php
+++ /dev/null
@@ -1,48 +0,0 @@
-<?php
-
- function idoszakTorles($idoszakId) {
- $q = "DELETE FROM idoszak WHERE idoszakId=%u";
- return db_query($q, array('fv' => 'idoszakTorles', 'modul' => 'naplo_intezmeny', 'values' => array($idoszakId)));
- }
-
- function idoszakModositas($idoszakId, $tolDt, $igDt) {
- $q = "UPDATE idoszak SET tolDt='%s', igDt='%s' WHERE idoszakId=%u";
- $v = array($tolDt, $igDt, $idoszakId);
- return db_query($q, array('fv' => 'idoszakModositas', 'modul' => 'naplo_intezmeny', 'values' => $v));
- }
-
- function ujIdoszak($tolDt, $igDt, $tipus, $tanev = '', $szemeszter = '', $idoszakTipusok = '') {
- // dátum ellenőrzés
- if (strtotime($tolDt) > strtotime($igDt)) {
- $_SESSION['alert'][] = 'message:wrong_data:dt:'.str_replace(':', '.', $tolDt.' - '.$igDt);
- return false;
- }
- // típus ellenőrzés
- if (!is_array($idoszakTipusok)) $idoszakTipusok = getIdoszakTipusok();
- if (!in_array($tipus, $idoszakTipusok)) {
- $_SESSION['alert'][] = 'message:wrong_data:idoszak.tipus:'.$tipus;
- return false;
- }
- // tanev/szemeszter beállítás
- if ($tanev == '' || $szemeszter == '') {
- $q = "SELECT tanev, szemeszter FROM szemeszter WHERE kezdesDt <= '%s' AND '%s' <= zarasDt";
- $v = array($igDt, $tolDt);
- $ret = db_query($q, array('fv' => 'ujIdoszak', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v));
- if (is_array($ret) && count($ret) == 1) {
- $tanev = $ret[0]['tanev'];
- $szemeszter = $ret[0]['szemeszter'];
- } else {
- return false;
- }
- }
- // idoszak felvétele
- $q = "INSERT INTO idoszak (tolDt, igDt, tipus, tanev, szemeszter) VALUES ('%s', '%s', '%s', %u, %u)";
- $v = array($tolDt, $igDt, $tipus, $tanev, $szemeszter);
- return db_query($q, array('fv' => 'ujIdoszak', 'modul' => 'naplo_intezmeny', 'values' => $v));
- }
-
- function getIdoszakTipusok() {
- return getEnumField('naplo_intezmeny', 'idoszak', 'tipus');
- }
-
-?>
diff --git a/mayor-orig/www/include/modules/naplo/admin/szuloiAzonositok.php b/mayor-orig/www/include/modules/naplo/admin/szuloiAzonositok.php
deleted file mode 100644
index 585292bf..00000000
--- a/mayor-orig/www/include/modules/naplo/admin/szuloiAzonositok.php
+++ /dev/null
@@ -1,14 +0,0 @@
-<?php
- require_once('include/modules/naplo/share/szulo.php');
- function getOsztalyNevsorEsSzulo($osztalyId) {
-
- $q = "SELECT diakId, TRIM(CONCAT_WS(' ',viseltNevElotag, ViseltCsaladiNev, viseltUtoNev)) AS diakNev, viseltCsaladinev, viseltUtonev, oId, anyaId, apaId
- FROM diak LEFT JOIN osztalyDiak USING (diakId)
- WHERE osztalyId=%u
- AND beDt<=CURDATE() AND (kiDt >= CURDATE() OR kiDt IS NULL)
- AND (statusz != 'jogviszonya lezárva' OR jogviszonyVege < CURDATE()) ORDER BY diakNev, oId";
- return db_query($q, array('fv' => 'getOsztalyAzonositok', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => array($osztalyId)));
-
- }
-
-?>
diff --git a/mayor-orig/www/include/modules/naplo/admin/tanevek.php b/mayor-orig/www/include/modules/naplo/admin/tanevek.php
deleted file mode 100644
index cf2b32db..00000000
--- a/mayor-orig/www/include/modules/naplo/admin/tanevek.php
+++ /dev/null
@@ -1,390 +0,0 @@
-<?php
-
- function updateNaploSession($sessionID,$rovidnev='',$tanev=__TANEV) {
- if ($tanev) {
- $q = "UPDATE session SET intezmeny='%s',tanev=%u WHERE sessionID='%s'";
- $v = array($rovidnev,$tanev,$sessionID);
- } else {
- $q = "UPDATE session SET intezmeny='%s' WHERE sessionID='%s'";
- $v = array($rovidnev,$sessionID);
- }
- $r = db_query($q, array('fv' => 'updateNaploSession', 'modul' => 'naplo_base', 'values' => $v));
- }
-
- function szemeszterBejegyzes($szemeszterObj) {
-
- global $mayorCache;
- $mayorCache->delType('szemeszter');
-
- $tanev = $szemeszterObj['tanev'];
- $szemeszter = $szemeszterObj['szemeszter'];
- $statusz = $szemeszterObj['statusz'];
- $kDt = $szemeszterObj['kezdesDt'];
- $zDt = $szemeszterObj['zarasDt'];
-
- if ($tanev != '' && $szemeszter != '') {
- $lr = db_connect('naplo_intezmeny', array('fv' => 'szemeszterBejegyzes'));
-
- $q = "SELECT COUNT(*) FROM szemeszter WHERE szemeszter=%u AND tanev=%u";
- $v = array($szemeszter, $tanev);
- $num = db_query($q, array('fv' => 'szemeszterBejegyzes', 'modul' => 'naplo_intezmeny', 'result' => 'value', 'values' => $v), $lr);
- if ($num == 0) {
-
- $q = "INSERT INTO szemeszter (tanev,szemeszter, statusz, kezdesDt, zarasDt)
- VALUES (%u, %u, '%s', '%s', '%s')";
- $v = array($tanev, $szemeszter, $statusz, $kDt, $zDt);
- $r = db_query($q, array('fv' => 'szemeszterBejegyzes', 'modul' => 'naplo_intezmeny', 'values' => $v), $lr);
-
- } else {
- $_SESSION['alert'][] = 'message:letezo_szemeszter:'."$tanev:$szemeszter";
- }
- db_close($lr);
- }
- }
-
- function szemeszterTorles($szemeszterId) {
-
- global $mayorCache;
- $mayorCache->delType('szemeszter');
-
- $lr = db_connect('naplo_intezmeny', array('fv' => 'szemeszterTorles'));
- if (!$lr) return false;
-
- $q = 'DELETE FROM szemeszter WHERE szemeszterId IN ('.implode(',', array_fill(0, count($szemeszterId), '%u')).')';
- $r = db_query($q, array('fv' => 'szemeszterTorles', 'modul' => 'naplo_intezmeny', 'values' => $szemeszterId), $lr);
-
- db_close($lr);
- return $r;
-
- }
-
-
- function activateTanev($tanev) {
- setTanevStatus($tanev,'aktív');
- }
-
- function closeTanev($ADAT) {
-
- global $ZaradekIndex;
- global $mayorCache;
- $mayorCache->delType('szemeszter');
-
- $tanev = $ADAT['tanev'];
-
- if (strtotime($ADAT['tanevAdat']['zarasDt']) >= time()) {
- $_SESSION['alert'][] = "message:wrong_data:A tanév még nem ért véget!:$tanev tanév vége ".$ADAT['tanevAdat']['zarasDt'];
- return false;
- }
- if (strtotime($ADAT['tanevAdat']['zarasDt']) >= strtotime($ADAT['dt'])) {
- $_SESSION['alert'][] = "message:wrong_data:A tanév csak az utolsó tanítási nap utáni hatállyal zárható le!:$tanev tanév vége ".$ADAT['tanevAdat']['zarasDt'].': zárás dátuma '.$ADAT['dt'];
- return false;
- }
- $Szemeszter = $ADAT['tanevAdat']['szemeszter'];
- $vDiakok = getVegzoDiakok(array('tanev' => $tanev));
- // A függvénynek nincs statusz paramétere // $vDiakok = getVegzoDiakok(array('tanev' => $tanev, 'statusz' => array('jogviszonyban van','magántanuló','jogviszonya felfüggesztve')));
- //vegzoOsztalyok, vjlOsztalyok, vatOsztalyok
-
- if (in_array('vegzosJogviszonyLezaras', $ADAT['step'])) {
-
- // Azoknak a jogviszonyát kell csak lezárni, akik csak végzős osztálynak tagjai - és az osztályaik meg vannak jelölve (diak tábla)
- $oDiakok = getDiakokByOsztalyId($ADAT['vjlOsztaly'], array('tanev' => $tanev, 'result' => '', 'statusz' => array('jogviszonyban van','magántanuló','jogviszonya felfüggesztve')));
- $vjlDiakIds = array();
- for ($i = 0; $i < count($oDiakok); $i++) {
- $diakId = $oDiakok[$i]['diakId'];
- if (!in_array($diakId, $vjlDiakIds)) { // Ha még nem választottuk ki (jöhet többször, mert lehet egy diák több osztályban)
- if (in_array($diakId, $vDiakok)) {
- $vjlDiakIds[] = $diakId;
- // A jogviszony lezárás egyúttal:
- // - tankörökből való kiléptetés
- // - osztályokból való kiléptetés
- $D = array(
- 'diakId' => $diakId, 'jogviszonyValtasDt' => $ADAT['dt'], 'ujStatusz' => 'jogviszonya lezárva', 'tanev' => $tanev,
- 'lezarasZaradekIndex' => $ZaradekIndex['jogviszony']['lezárás']['tanulmányait befejezte']
- );
- diakJogviszonyValtas($D);
- } else {
- $_SESSION['alert'][] = "info:wrong_data:Nem végzős:$diakId (jogviszonyát nem zárjuk le)";
- }
- }
- }
-// if (count($vjlDiakIds) > 0) diakJogviszonyLezaras($vjlDiakIds, $ADAT['dt'], $olr = '');
-
- }
-
- if (in_array('vegzosOsztalyokLezarasa', $ADAT['step'])) {
- // A megjelölt végzős osztályokból kiléptetjük a diákokat (osztaly-Diak tábla)
- $osztalyIds = array();
- for ($i = 0; $i < count($ADAT['vegzoOsztalyok']); $i++) $osztalyIds[] = $ADAT['vegzoOsztalyok'][$i]['osztalyId'];
- osztalyLezaras($osztalyIds, $ADAT['dt']);
- }
- if (in_array('vegzosAzonositokTorlese', $ADAT['step'])) {
-
- require_once('include/modules/session/search/searchAccount.php');
- // Végzősök azonosítóinak törlése (mayor_private.accounts - lezárt jogviszonyúak)
-
- $q = "SELECT oId FROM diak WHERE statusz='jogviszonya lezárva' AND oId IS NOT NULL";
- $oIds = db_query($q, array('fv' => 'closeTanev/azonosítók lekérdezése', 'modul' => 'naplo_intezmeny', 'result' => 'idonly'));
- foreach ($oIds as $index => $oId) {
- $ret = searchAccount('studyId', $oId, array('userAccount'), 'private');
- if ($ret['count'] == 1) deleteAccount($ret[0]['userAccount'][0], 'private');
- else $_SESSION['alert'][] = "info:wrong_data:nincs diák account:oId=$oId";
- }
- }
-
- if (in_array('vegzosSzuloAzonositokTorlese', $ADAT['step'])) {
-
- require_once('include/modules/session/search/searchAccount.php');
- // Végzősök szülői azonosítóinak törlése (mayor_parent.accounts - pontosabban: lezárt jogviszonyúak userAccount=NULL)
- $q = "SELECT szulo.userAccount
- FROM diak LEFT JOIN szulo ON szuloId IN (apaId,anyaId,gondviseloId)
- WHERE szulo.userAccount IS NOT NULL GROUP BY szulo.userAccount
- HAVING SUM(IF(diak.statusz IN ('jogviszonyban van','magántanuló','vendégtanuló','jogviszonya felfüggesztve'), 1, 0)) = 0
- AND SUM(IF(diak.statusz IN ('jogviszonya lezárva','felvételt nyert'),1,0)) > 0";
-
- $userAccounts = db_query($q, array('fv' => 'closeTanev/azonosítók lekérdezése', 'modul' => 'naplo_intezmeny', 'result' => 'idonly'));
- foreach ($userAccounts as $index => $userAccount) {
- $ret = searchAccount('userAccount', $userAccount, array('userAccount'), 'parent');
- if ($ret['count'] == 1)
- deleteAccount($ret[0]['userAccount'][0], 'parent');
- else
- $_SESSION['alert'][] = "message:wrong_data:nincs szülő account:userAccount=$userAccount";
-
- $q = "UPDATE szulo SET userAccount=NULL WHERE userAccount IN ('".implode("','", array_fill(0, count($userAccounts), '%s'))."')";
-
- db_query($q, array('fv' => 'closeTanev', 'modul' => 'naplo_intezmeny', 'values' => $userAccounts));
- }
-
- }
-
- if (in_array('tanevLezaras', $ADAT['step'])) {
-
- // A tanév lezárása
- setTanevStatus($tanev,'lezárt');
-
- $Wnemszamit = defWnemszamit();
- // A tanévhez tartozó hiányzási adatok lekérdezése és rögzítése
- $tanevDb = tanevDbNev(__INTEZMENY, $tanev);
- foreach ($Szemeszter as $i => $szAdat) {
- if ($szAdat['statusz'] == 'aktív') { // tervezett és lezárt szemeszter nem zárható le...
- // replace - ha megnyitunk és újra lezárunk egy tanévet...
- $q = "REPLACE INTO ".__INTEZMENYDBNEV.".hianyzasOsszesites
- SELECT diakId, %u AS tanev, %u AS szemeszter,
- COUNT(IF(tipus='hianyzas' AND statusz='igazolt',1,NULL)) AS igazolt,
- COUNT(IF(tipus='hianyzas' AND statusz='igazolatlan',1,NULL)) AS igazolatlan,
- SUM(IF(tipus='késés' AND statusz='igazolatlan',perc,NULL)) AS kesesPercOsszeg,
-
- COUNT(IF(tipus='hianyzas' AND statusz='igazolt' AND tankorTipus.jelleg='gyakorlat',1,NULL)) AS gyakorlatIgazolt,
- COUNT(IF(tipus='hianyzas' AND statusz='igazolatlan' AND tankorTipus.jelleg='gyakorlat',1,NULL)) AS gyakorlatIgazolatlan,
- SUM(IF(tipus='késés' AND statusz='igazolatlan' AND tankorTipus.jelleg='gyakorlat',perc,NULL)) AS gyakorlatKesesPercOsszeg,
-
- COUNT(IF(tipus='hianyzas' AND statusz='igazolt' AND tankorTipus.jelleg='elmélet',1,NULL)) AS elmeletIgazolt,
- COUNT(IF(tipus='hianyzas' AND statusz='igazolatlan' AND tankorTipus.jelleg='elmélet',1,NULL)) AS elmeletIgazolatlan,
- SUM(IF(tipus='késés' AND statusz='igazolatlan' AND tankorTipus.jelleg='elmélet',perc,NULL)) AS elmeletKesesPercOsszeg
-
- FROM `%s`.hianyzas ".$Wnemszamit['join']."
- WHERE (
- tipus = 'hiányzás'
- OR (tipus='késés' AND statusz='igazolatlan' AND perc IS NOT NULL)
- ) AND dt<='%s'
- ".$Wnemszamit['nemszamit']."
- GROUP BY diakId";
- $v = array($tanev, $szAdat['szemeszter'], $tanevDb, $szAdat['zarasDt']);
- $r = db_query($q, array('fv' => 'closeTanev/hianyzasOsszesites', 'modul' => 'naplo_intezmeny', 'values' => $v));
- // A hozott hiányzások hozzáadása
- $q = "UPDATE ".__INTEZMENYDBNEV.".hianyzasOsszesites SET
- igazolt = igazolt + (
- SELECT IFNULL(SUM(dbHianyzas),0) FROM `%s`.hianyzasHozott AS `hh`
- WHERE hh.diakId = hianyzasOsszesites.diakId AND hh.statusz='igazolt' AND hh.dt<='%s'
- ),
- igazolatlan = igazolatlan + (
- SELECT IFNULL(SUM(dbHianyzas),0) FROM `%s`.hianyzasHozott AS `hh`
- WHERE hh.diakId = hianyzasOsszesites.diakId AND hh.statusz='igazolatlan' AND hh.dt<='%s'
- )
- WHERE tanev=%u AND szemeszter=%u";
- $v = array($tanevDb, $szAdat['zarasDt'], $tanevDb, $szAdat['zarasDt'], $tanev, $szAdat['szemeszter']);
- $r = db_query($q, array('fv' => 'closeTanev/hianyzasOsszesites/hozott', 'modul' => 'naplo_intezmeny', 'values' => $v));
- }
- }
- }
-
- return true;
-
- }
-
- function setTanevStatus($tanev,$statusz) {
- global $mayorCache;
- $mayorCache->delType('szemeszter');
-
- $q = "UPDATE szemeszter SET statusz='%s' WHERE tanev=%u";
- $v = array($statusz, $tanev);
- return db_query($q, array('fv' => 'setTanevStatus', 'modul' => 'naplo_intezmeny', 'values' => $v));
- }
-
-
- function refreshOsztalyNaplo($dbNev, $tanev) {
-
- global $mayorCache;
- $mayorCache->flushdb();
-
- $lr = db_connect('naplo_intezmeny', array('priv' => 'Write', 'fv' => 'refreshOsztalyNaplo'));
- if (!$lr) return false;
-
- $q = "SELECT `osztalyId`,"._osztalyJel($tanev)." AS `osztalyJel`,"._evfolyam($tanev)." AS evfolyam,"._evfolyamJel($tanev)." AS evfolyamJel
- FROM `osztaly` LEFT JOIN mayor_naplo.osztalyJelleg USING (osztalyJellegId)
- WHERE kezdoTanev<=%u AND vegzoTanev>=%u
- ORDER BY evfolyam, evfolyamJel, kezdoTanev, jel";
-
- $v = array($tanev, $tanev);
- $ret = db_query($q, array('fv' => 'refreshOsztalyNaplo', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v), $lr);
- if (!is_array($ret)) return false;
- foreach ($ret as $key => $sor) {
- $q = "REPLACE INTO `%s`.osztalyNaplo (osztalyId,osztalyJel,evfolyam,evfolyamJel) VALUES (%u,'%s',%u,'%s')";
- $v = array($dbNev, $sor['osztalyId'], $sor['osztalyJel'], $sor['evfolyam'], $sor['evfolyamJel']);
- db_query($q, array('fv' => 'refreshOsztalyNaplo', 'modul' => 'naplo_intezmeny', 'values' => $v), $lr);
- }
-
- db_close($lr);
- return true;
-
-
- }
-
- function szemeszterModositasOrig($ADAT) {
-
-
- for ($i = 0; $i < count($ADAT); $i++) {
-
- $kezdesDt = $ADAT[$i]['kezdesDt']; $zarasDt = $ADAT[$i]['zarasDt'];
- $tanev = $ADAT[$i]['tanev']; $szemeszter = $ADAT[$i]['szemeszter'];
-
- $q = "SELECT zarasDt FROM szemeszter WHERE tanev=%u AND szemeszter=%u";
- $v = array($tanev, $szemeszter);
- $zDt = db_query($q, array('fv' => 'szemeszterModositas', 'modul' => 'naplo_intezmeny', 'values' => $v, 'result'=>'value'));
-
- $q = "SELECT count(*) FROM zaroJegy WHERE hivatalosDt='%s'";
- $v = array($zDt);
- $db = db_query($q, array('fv' => 'szemeszterModositas', 'modul' => 'naplo_intezmeny', 'values' => $v, 'result'=>'value'));
-
- if ($db==0) {
-
- $q = "UPDATE szemeszter SET kezdesDt='%s',zarasDt='%s' WHERE tanev=%u AND szemeszter=%u";
- $v = array($kezdesDt, $zarasDt, $tanev, $szemeszter);
- db_query($q, array('fv' => 'szemeszterModositas', 'modul' => 'naplo_intezmeny', 'values' => $v));
-
- } else {
- $_SESSION['alert'][] = 'error:wrong_data:van már a '.$zDt.'-hez rögzített zárójegy!';
- return false;
- }
- }
-
- }
-
- /*
- * A szemeszter dátumhatárainak módosítása több dolgot is érint.
- * 1. A zárójegyek hivatalos dátuma a szemszter záró dátuma - kivéve a vizsgajegyket.
- * - megoldás: módosítsuk a zárójegy dátumát
- * 2. A tanév nap táblája a tanév kezdetétől a végéig tartalmaz napokat.
- * - vegyük fel, illetve töröljük a hiányzó napokat (??)
- * 3. Elképzelhető, hogy a már beírt órákat, és ezen keresztül hiányzásokat és jegyeket is érinti a módosítás (ora tábla)
- * - Ha órák törlésével járna, akkor egyszerűbb nem megengedni a módosítást. Ha kell, akkor előre törölje az órákat külön!
- */
- function szemeszterModositas($ADAT) {
-
- global $mayorCache;
- $mayorCache->flushdb();
-
- $success = true;
- for ($i = 0; $i < count($ADAT); $i++) {
-
- unset($tolDt); unset($igDt);
- $kezdesDt = $ADAT[$i]['kezdesDt']; $zarasDt = $ADAT[$i]['zarasDt'];
- $tanev = $ADAT[$i]['tanev']; $szemeszter = $ADAT[$i]['szemeszter'];
- $tanevDb = tanevDbNev(__INTEZMENY, $tanev);
-
- $lr = db_connect('naplo_intezmeny', array('fv' => 'szemeszterModositas'));
- db_start_trans($lr);
-
- // a korábbi szemeszter zárás dátumának és státuszának lekérdezése
- $q = "SELECT statusz, kezdesDt, zarasDt FROM szemeszter WHERE tanev=%u AND szemeszter=%u";
- $v = array($tanev, $szemeszter);
- $ret = db_query($q, array('fv' => 'szemeszterModositas/select', 'modul' => 'naplo_intezmeny', 'values' => $v, 'result'=>'record'));
- $kDt = $ret['kezdesDt']; $zDt = $ret['zarasDt'];
- if ($ret['statusz'] == 'lezárt') {
- // lezárt szemeszter adatait ne változtassuk
- $_SESSION['alert'][] = 'message:wrong_data:lezárt szemeszter! (szemeszter='.$tanev.'/'.$szemeszter.')';
- db_rollback($lr); db_close($lr); $success = false; continue;
- }
- if (($szemeszter == 1 && $kezdesDt != $kDt) || ($szemeszter == 2 && $zarasDt != $zDt)) {
- // tanév kezdő vagy záró dátumának módosítása
- if ($ret['statusz'] == 'aktív') {
- // A tanév adatbázisát is érintik a változások
- if ($szemeszter == 1 && $kezdesDt > $kDt) {
- // Ha az év elejéből el kellene venni napokat, akkor ellenőrizzük, hogy vannak-e órák ezekre a napokra már beírva
- $q = "SELECT COUNT(*) FROM `$tanevDb`.`ora` WHERE `dt` < '%s'";
- $v = array($kezdesDt);
- $db = db_query($q, array('fv' => 'szemeszterModositas/ora - kezdés', 'modul' => 'naplo_intezmeny', 'values' => $v, 'result' => 'value'), $lr);
- if ($db === "0") {
- // Ha nincs betöltött óra, akkor módosíthatók a nap tábla megfelelő rekordjai; munkanapok --> szorgalmi időszakon kívüli munkanap
- $q = "UPDATE `$tanevDb`.`nap` SET tipus='szorgalmi időszakon kívüli munkanap', orarendiHet=0
- WHERE `dt` < '%s' AND tipus IN ('tanítási nap','speciális tanítási nap','tanítás nélküli munkanap')";
- $v = array($kezdesDt);
- $db = db_query($q, array('fv' => 'szemeszterModositas/delete nap', 'modul' => 'naplo_intezmeny', 'values' => $v, 'result' => 'value'), $lr);
- } else {
- // Ha van, akkor hibát üzenünk és nem hajtjuk végre a módosítást
- $_SESSION['alert'][] = 'message:insufficient_access:szemeszterMododitas/tanév később kezdés:A dátumváltoztatás már betöltött órákat érintene!';
- db_rollback($lr, 'szemeszterModositas/van betöltött óra!'); db_close($lr); $success = false; continue;
- }
- } elseif ($szemeszter == 2 && $zarasDt < $zDt) {
- // Ha az év végéből kell elvenni napokat, akkor ellenőrizzük, hogy vannak-e _lekötött_ órák ezekre a napokra már beírva
- $q = "SELECT COUNT(*) FROM `$tanevDb`.`ora` WHERE `dt` > '%s' AND munkaido='lekötött'";
- $v = array($zarasDt);
- $db = db_query($q, array('fv' => 'szemeszterModositas/ora - zárás', 'modul' => 'naplo_intezmeny', 'values' => $v, 'result' => 'value'), $lr);
- if ($db === "0") {
- // Ha nincs betöltött óra, akkor módosíthatók a nap tábla megfelelő rekordjai; munkanapok --> szorgalmi időszakon kívüli munkanap
- $q = "UPDATE `$tanevDb`.`nap` SET tipus='szorgalmi időszakon kívüli munkanap', orarendiHet=0
- WHERE `dt` > '%s' AND tipus IN ('tanítási nap','speciális tanítási nap','tanítás nélküli munkanap')";
- $v = array($zarasDt);
- $db = db_query($q, array('fv' => 'szemeszterModositas/delete nap', 'modul' => 'naplo_intezmeny', 'values' => $v, 'result' => 'value'), $lr);
- } else {
- // Ha van, akkor hibát üzenünk és nem hajtjuk végre a módosítást
- $_SESSION['alert'][] = 'message:insufficient_access:szemeszterMododitas/tanév rövidítés:A dátumváltoztatás már betöltött órákat érintene!';
- db_rollback($lr, 'szemeszterModositas/van betöltött óra!'); db_close($lr); $success = false; continue;
- }
- } elseif ($szemeszter == 1 && $kezdesDt < $kDt) {
- // éves munkaterv (nap tábla) bővítése
- $tolDt = $kezdesDt; $igDt = date('Y-m-d', strtotime('-1 day', strtotime($kDt)));
- } elseif ($szemeszter == 2 && $zarasDt > $zDt) {
- // éves munkaterv (nap tábla) bővítése
- $tolDt = date('Y-m-d', strtotime('+1 day', strtotime($zDt))); $igDt = $zarasDt;
- }
- if (isset($tolDt) && isset($igDt)) {
- $Hetek = array(1);
- $r = napokHozzaadasa($tanev, $tolDt, $igDt, $ADAT[$i], $lr);
- unset($tolDt); unset($igDt);
- if (!$r) { db_rollback($lr, 'szemeszterModositas/nap felvétel'); db_close($lr); $success = false; continue; }
- /*orarendiHetekHozzarendelese($tolDt, $igDt, $Hetek, $lr);*/
- }
- } // aktív tanév
- } // tanév hossza változik
- // Az érintett, vizsgához nem kapcsolódó zárójegyek hivatalos dátumának módosítása
- $q = "UPDATE zaroJegy LEFT JOIN vizsga USING (zaroJegyId) SET hivatalosDt='%s' WHERE hivatalosDt='%s' AND vizsgaId IS NULL";
- $v = array($zarasDt, $zDt);
- $r = db_query($q, array('fv' => 'szemeszterModositas', 'modul' => 'naplo_intezmeny', 'values' => $v, 'result'=>'value'));
- if ($r === false) { db_rollback($lr, 'szemeszterModositas/zarójegyek'); db_close($lr); $success = false; continue; }
- // A szemeszter kezdés és zárás dátumának módosítása
- $q = "UPDATE szemeszter SET kezdesDt='%s',zarasDt='%s' WHERE tanev=%u AND szemeszter=%u";
- $v = array($kezdesDt, $zarasDt, $tanev, $szemeszter);
- $r = db_query($q, array('fv' => 'szemeszterModositas', 'modul' => 'naplo_intezmeny', 'values' => $v));
- if ($r === false) { db_rollback($lr, 'szemeszterModositas/dátum módosítás'); db_close($lr); $success = false; continue; }
-
- db_commit($lr);
- db_close($lr);
-
- $_SESSION['alert'][] = 'info:success:tanev='.$tanev.', szemeszter='.$szemeszter;
-
- }
- return $success;
-
- }
-
-?> \ No newline at end of file
diff --git a/mayor-orig/www/include/modules/naplo/admin/tankorok.php b/mayor-orig/www/include/modules/naplo/admin/tankorok.php
deleted file mode 100644
index 23887dbd..00000000
--- a/mayor-orig/www/include/modules/naplo/admin/tankorok.php
+++ /dev/null
@@ -1,133 +0,0 @@
-<?php
-
- function updateTankor($file, $MEZO_LISTA, $KULCS_MEZOK, $mezo_elvalaszto = ' ', $rovatfej = false) {
-
-
- if (!file_exists($file)) {
- $_SESSION['alert'][] = 'message:file_not_found:'.$file;
- return false;
- }
-
- if (!is_array($MEZO_LISTA)) {
- $_SESSION['alert'][] = 'message:wrong_parameter:MEZO_LISTA';
- return false;
- }
-
- if (!is_array($KULCS_MEZOK)) {
- $_SESSION['alert'][] = 'message:wrong_parameter:KULCS_MEZOK';
- return false;
- }
-
- // A frissítendő attribútumok listája
- $attrList = array_values(array_filter($MEZO_LISTA));
-
- $fp = fopen($file,'r');
- if (!$fp) {
- $_SESSION['alert'][] = 'message:file_open_error:'.$file;
- return false;
- }
-
- $lr = db_connect('naplo_intezmeny', array('fv' => 'updateTankor'));
- if (!$lr) {
- fclose($fp);
- return false;
- }
-
- // Az első sor kihagyása
- if ($rovatfej) $sor = fgets($fp,1024);
-
- // TárgyId-k átváltása
- $keyNev = array_search('targyNev',$MEZO_LISTA);
- if (!$keyNev && $keyNev !== 0) $keyNev = false;
- if ($keyNev) {
- $keyId = array_search('targyId',$MEZO_LISTA);
- if (!$keyId && $keyId !== 0) { // Ha nincs targyId, akkor felvezzük a mező listába
- $keyId = count($MEZO_LISTA);
- $MEZO_LISTA[] = 'targyId';
- }
- $MEZO_LISTA[$keyNev] = ''; // A targyNev nem játszik szerepet többet, csak a targyId
- $targyak = array(); // $targyNev --> $targyId átalakítás tárolása
- $attrList = array_values(array_filter($MEZO_LISTA)); // az attrList újragenerálása (targyNev helyett targyId)
- if (in_array($keyNev,$KULCS_MEZOK)) { // Ha a targyNev kulcs lenne, akkor legyen helyette a tagyId a kulcs (ha már eleve benne volt a targyId, akkor most kétszer lesz benne - nem baj!)
- $k = array_search($keyNev,$KULCS_MEZOK);
- $KULCS_MEZOK[$k] = $keyId;
- }
- }
-
- while ($sor = fgets($fp,1024)) {
-
- $adatSor = explode($mezo_elvalaszto,chop($sor));
- $update = $hianyzoTargyId = false;
-
- // targyId megállapítása a targyNev alapján
- if (
- $keyNev !== false // Ha van targyNev mező
- && $adatSor[$keyNev] != '' // és nem üres
- && $adatSor[$keyId] == '' // de nincs megadva targyId
-
- ) {
- if (!isset($targyak[$adatSor[$keyNev]])) { // Ha még nem kérdeztük le a targyId-t
- $q = "SELECT targyId FROM targy WHERE targyNev='%s'";
- $v = array($adatSor[$keyNev]);
- $targyak[$adatSor[$keyNev]] = db_query($q, array(
- 'fv' => 'updateTankor', 'modul' => 'naplo_intezmeny', 'result' => 'value', 'values' => $v
- ), $lr);
- if (!$targyak[$adatSor[$keyNev]]) {
- $_SESSION['alert'][] = 'message:wrong_data:tárgyNév:'.$adatSor[$keyNev].':'.$num.':'.$sor;
- $hianyzoTargyId = true;
- }
- }
- $adatSor[$keyId] = $targyak[$adatSor[$keyNev]];
- }
- // Innentől ha lehetett, akkor a targyNev le lett cserélve targyId-re - minden megy a sima frissítés szerint
-
- // keresési feltétel összerakása
- $where = '';
- for ($i=0; $i<count($KULCS_MEZOK); $i++) {
- if ($adatSor[$KULCS_MEZOK[$i]] != '') {
- $where .= ' AND '.$MEZO_LISTA[$KULCS_MEZOK[$i]]."='".$adatSor[$KULCS_MEZOK[$i]]."' ";
- }
- }
- if ($where != '') {
- $where = substr($where,5);
- $q = 'SELECT COUNT(*) FROM tankor WHERE '.$where;
- $num = db_query($q, array('fv' => 'updateTankor', 'modul' => 'naplo_intezmeny', 'result' => 'value'), $lr);
- $update = ($num > 0);
- }
- if ($update) {
- $UPDATE = array();
- for ($i = 0; $i < count($MEZO_LISTA); $i++) {
- if (
- $MEZO_LISTA[$i] != ''
- and $adatSor[$i] != ''
- and !in_array($i,$KULCS_MEZOK)
- ) {
- $UPDATE[] = $MEZO_LISTA[$i]."='".$adatSor[$i]."'";
- }
- }
- if (count($UPDATE) > 0) {
- $q = 'UPDATE tankor SET '.implode(',',$UPDATE).' WHERE '.$where;
- $r = db_query($q, array('fv' => 'updateTankor', 'modul' => 'naplo_intezmeny'), $lr);
- }
- } elseif (!$hianyzoTargyId) {
- $value = array();
- for ($i=0; $i<count($MEZO_LISTA); $i++) {
- if ($MEZO_LISTA[$i] != '') $value[] .= $adatSor[$i];
- }
- $VALUES[] = "('".implode("','",$value)."')";
- }
-
- } // while
- if (count($VALUES) > 0) {
- $q = 'INSERT INTO tankor ('.implode(",",$attrList).') VALUES '.implode(",\n",$VALUES);
- $r = db_query($q, array('fv' => 'updateTankor', 'modul' => 'naplo_intezmeny'), $lr);
- }
-
- db_close($lr);
-
- fclose($fp);
-
- }
-
-
-?>