aboutsummaryrefslogtreecommitdiffstats
path: root/mayor-orig/www/include/modules/naplo/osztalyozo
diff options
context:
space:
mode:
authorM.Gergo2019-03-08 21:20:34 +0100
committerM.Gergo2019-03-08 21:20:34 +0100
commitf51c9ed2abe5c68211bb3736be5f70b1fe2c9ec0 (patch)
treee13e60e4b94a3b58f1e2bfbe271102c8f04b67bd /mayor-orig/www/include/modules/naplo/osztalyozo
parentc76a004b0135786f2742283f8d5f917106f58bd8 (diff)
downloadmayor-f51c9ed2abe5c68211bb3736be5f70b1fe2c9ec0.tar.gz
mayor-f51c9ed2abe5c68211bb3736be5f70b1fe2c9ec0.zip
további rendrakás
Diffstat (limited to 'mayor-orig/www/include/modules/naplo/osztalyozo')
-rw-r--r--mayor-orig/www/include/modules/naplo/osztalyozo/bizonyitvany.php134
-rw-r--r--mayor-orig/www/include/modules/naplo/osztalyozo/diak.php106
-rw-r--r--mayor-orig/www/include/modules/naplo/osztalyozo/dolgozat.php116
-rw-r--r--mayor-orig/www/include/modules/naplo/osztalyozo/stat.php247
-rw-r--r--mayor-orig/www/include/modules/naplo/osztalyozo/szempontRendszer.php56
-rw-r--r--mayor-orig/www/include/modules/naplo/osztalyozo/szovegesErtekeles.php67
-rw-r--r--mayor-orig/www/include/modules/naplo/osztalyozo/tankor.php205
-rw-r--r--mayor-orig/www/include/modules/naplo/osztalyozo/targySorrend.php55
-rw-r--r--mayor-orig/www/include/modules/naplo/osztalyozo/vizsga.php138
9 files changed, 0 insertions, 1124 deletions
diff --git a/mayor-orig/www/include/modules/naplo/osztalyozo/bizonyitvany.php b/mayor-orig/www/include/modules/naplo/osztalyozo/bizonyitvany.php
deleted file mode 100644
index 1df529a4..00000000
--- a/mayor-orig/www/include/modules/naplo/osztalyozo/bizonyitvany.php
+++ /dev/null
@@ -1,134 +0,0 @@
-<?php
-
- function getDiakBizonyitvany($diakId, $ADAT) {
-
- $tanev = $ADAT['szemeszterAdat']['tanev'];
- $szemeszter = $ADAT['szemeszterAdat']['szemeszter'];
- $sorrendNev = $ADAT['sorrendNev'];
- $osztalyId = $ADAT['osztalyId'];
- if ($tanev == '') {
- // Összes zárójegy lekérdezése
- $q = "SELECT * FROM zaroJegy
- LEFT JOIN targy USING (targyId)
- LEFT JOIN szemeszter ON kezdesDt=(SELECT MAX(kezdesDt) FROM szemeszter WHERE kezdesDt<=hivatalosDt)
- WHERE diakId=%u ORDER BY tanev,szemeszter,targyNev";
- $r = db_query($q, array('fv' => 'getDiakBizonyitvany', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => array($diakId)));
- $ret = array('tanevek' => array(), 'szemeszterek' => array(), 'tanevSzemeszterei' => array(), 'jegyek' => array());
- if (is_array($ret)) foreach ($r as $i => $jegy) {
- $ret['jegyek'][$jegy['targyId']][$jegy['tanev']][$jegy['szemeszter']][] = $jegy;
- $ret['jegyekEvfolyamonkent'][$jegy['evfolyam']][$jegy['szemeszter']][] = $jegy;
- if (!in_array($jegy['tanev'], $ret['tanevek'])) {
- $ret['tanevek'][] = $jegy['tanev'];
- $ret['tanevSzemeszterei'][$jegy['tanev']] = array();
- }
- if (!in_array($jegy['szemeszter'], $ret['tanevSzemeszterei'][$jegy['tanev']])) {
- $ret['szemeszterek'][] = array('tanev' => $jegy['tanev'], 'szemeszter' => $jegy['szemeszter']);
- $ret['tanevSzemeszterei'][$jegy['tanev']][] = $jegy['szemeszter'];
- }
- }
- } else {
- // Adott szemeszter tárgyainak
- $ret['targyak'] = getTargyakByDiakIds(array($diakId), $ADAT['szemeszterAdat'], $osztalyId, $sorrendNev, array('result' => 'assoc', 'keyfield' => 'targyId'));
- // Adott szemeszter zárójegyeinek lekérdezése
- if (isset($sorrendNev) && $sorrendNev != '') {
- $q = "SELECT *,zaroJegy.targyId FROM zaroJegy
- LEFT JOIN targy USING (targyId)
- LEFT JOIN ".__TANEVDBNEV.".targySorszam
- ON zaroJegy.targyId = targySorszam.targyId AND osztalyId=%u AND sorrendNev='%s'
- LEFT JOIN szemeszter ON kezdesDt=(SELECT MAX(kezdesDt) FROM szemeszter WHERE kezdesDt<=hivatalosDt)
- WHERE diakId=%u AND tanev=%u AND szemeszter=%u ORDER BY sorszam,targyNev";
- $v = array($osztalyId, $sorrendNev, $diakId, $tanev, $szemeszter);
- } else {
- $q = "SELECT *,zaroJegy.targyId FROM zaroJegy LEFT JOIN targy USING (targyId)
- WHERE diakId=%u AND tanev=%u AND szemeszter=%u ORDER BY targyNev";
- $v = array($diakId, $tanev, $szemeszter);
- }
- $r = db_query($q, array(
- 'fv' => 'getDiakBizonyitvany', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v
- ));
-
- if (is_array($r)) foreach ($r as $i => $jegy) {
- $ret['jegyek'][$jegy['targyId']][] = $jegy;
-// $ret['jegyekEvfolyamonkent'][$jegy['evfolyam']][$jegy['szemeszter']][] = $jegy;
- }
-
- $utolsoTanitasiNap = getOsztalyUtolsoTanitasiNap($osztalyId);
- // éves óraszámok lekérdezése - tárgyanként
- $q = "SELECT targyId,oraszam FROM tankorDiak LEFT JOIN tankorSzemeszter USING (tankorId) LEFT JOIN tankor USING (tankorId)
- WHERE diakId=%u AND tanev=%u AND beDt<='%s' AND (kiDt IS NULL OR '%s'<=kiDt)";
- //$v = array($diakId, $tanev, $ADAT['szemeszterAdat']['zarasDt'], $ADAT['szemeszterAdat']['zarasDt']);
- $v = array($diakId, $tanev, $utolsoTanitasiNap, $utolsoTanitasiNap);
- $jres = db_query($q, array(
- 'fv' => 'getDiakBizonyitvany/óraszám', 'modul' => 'naplo_intezmeny', 'result' => 'multiassoc', 'keyfield' => 'targyId', 'values' => $v
- ));
-
- $szDb = $ADAT['szemeszterAdat']['tanevAdat']['maxSzemeszter']; // Feltételezzük, hogy a szemeszterek számozása 1-től indul és folyamatos
- foreach ($jres as $targyId => $tAdat) {
- $oraszam = 0;
- for ($i = 0; $i < count($tAdat); $i++) {
- $oraszam += $tAdat[$i]['oraszam'];
- }
- $ret['targyOraszam'][$targyId]['hetiOraszam'] = $oraszam / $szDb;
- /*
- A TANITASI_HETEK_SZAMA a diák (egyik) osztályához rendelt munkaterv alapján van meghatározva - így
- csak az aktuális tanévben (__TANEV) van értelme. Ha több osztálya is van a tanulónak, akkor problémás...
- */
- if (defined('TANITASI_HETEK_SZAMA')) $ret['targyOraszam'][$targyId]['evesOraszam'] = $oraszam / $szDb * TANITASI_HETEK_SZAMA;
- }
- }
- return $ret;
- }
-
- function getHianyzasOsszesitesByDiakId($diakId, $szemeszterAdat = '') { // DEPRECATED. a függvény helyett a share/hianyzas.php getDiakHianyzasOsszesites() - t használd!
-
- $ret = array();
- if (is_array($szemeszterAdat)) {
- // Egy szemeszter hiányzási adatainak lekérdezése
- if ($szemeszterAdat['statusz'] == 'aktív') {
- // Folyó tanév - a tanév adatbázisból kérdezünk le
- $Wnemszamit = defWnemszamit();
- $q = "SELECT tankorTipus.jelleg,
- 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
- 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' AND diakId=%u".
- $Wnemszamit['nemszamit']
- ." GROUP BY tankorTipus.jelleg"
- ;
- $v = array(tanevDbNev(__INTEZMENY, $szemeszterAdat['tanev']), $szemeszterAdat['zarasDt'], $diakId);
- $ret = db_query($q, array('fv' => 'getDiakHianyzasOsszesitesByDiakId', 'modul' => 'naplo_intezmeny', 'result' => 'assoc', 'keyfield'=>'jelleg', 'values' => $v));
- if (is_array($ret))
- foreach ($ret as $_key=>$_val) {
- $ret['igazolt'] += intval($ret[$_key]['igazolt']);
- $ret['igazolatlan'] += intval($ret[$_key]['igazolatlan']);
- }
-
- $hozottHianyzas = getDiakHozottHianyzas($diakId, array('tanev'=> $szemeszterAdat['tanev'], 'igDt'=>$szemeszterAdat['zarasDt'] ));
- $ret['igazolt'] += intval($hozottHianyzas['igazolt']['db']);
- $ret['igazolatlan'] += intval($hozottHianyzas['igazolatlan']['db']);
-
- } else {
- // lezárt tanév - az intézmény adatbázisból kérdezünk le
-// Tudtommal az összesítésbe már csak a "beszámítandó" hiányzások kerülnek, így nem kell plusz feltétel... [bb - 2010-11-24]
-// $q = "SELECT * FROM hianyzasOsszesites WHERE diakId=%u AND tanev=%u AND szemeszter=%u $Wnemszamit";
- $q = "SELECT * FROM hianyzasOsszesites WHERE diakId=%u AND tanev=%u AND szemeszter=%u";
- $v = array($diakId, $szemeszterAdat['tanev'], $szemeszterAdat['szemeszter']);
- $ret = db_query($q, array('fv' => 'getDiakHianyzasOsszesitesByDiakId', 'modul' => 'naplo_intezmeny', 'result' => 'record', 'values' => $v));
- }
-
- } else {
- // A diák összes hiányzási adata ??????????????
- // ??????????????????????????? // ???????????????????????????
- $q = "SELECT * FROM hianyzasOsszesites WHERE diakId=%u ORDER BY tanev,szemeszter";
- $r = db_query($q, array('fv' => 'getDiakHianyzasOsszesitesByDiakId', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => array($diakId)));
- for ($i = 0; $i < count($r); $i++) $ret[$r[$i]['tanev']][$r[$i]['szemeszter']] = $r[$i];
- }
- return $ret;
-
- }
-
-?>
diff --git a/mayor-orig/www/include/modules/naplo/osztalyozo/diak.php b/mayor-orig/www/include/modules/naplo/osztalyozo/diak.php
deleted file mode 100644
index be285f8b..00000000
--- a/mayor-orig/www/include/modules/naplo/osztalyozo/diak.php
+++ /dev/null
@@ -1,106 +0,0 @@
-<?php
-/*
- Module: naplo
-
- getDiakJegyek($diakId, $SET, $olr)
-
- +getTankorByDiakId
- +getTankorDolgozatok
-*/
-
- function getDiakJegyek($diakId, $SET = array('sulyozas'=>'1:1:1:1:1:1'), $olr = '') {
-
- global $_TANEV, $KOVETELMENY;
-
- if ($olr == '') $lr = db_connect('naplo');
- else $lr = $olr;
-
- if (isset($SET['sulyozas']) && $SET['sulyozas']!='') {
- $suly = explode(':',':'.$SET['sulyozas']);
- } else {
- if (defined('__DEFAULT_SULYOZAS')) $suly = explode(':',':'.__DEFAULT_SULYOZAS);
- else $suly = array(1,1,1,1,1,1);
- }
- $q = "SELECT DISTINCT jegyId, tankorId, tankorNev, dt, jegy, jegyTipus, tipus, oraId, dolgozatId, megjegyzes, IF (modositasDt='0000-00-00 00:00:00',dt,modositasDt) AS modositasDt
- FROM jegy LEFT JOIN ".__INTEZMENYDBNEV.".tankorSzemeszter USING (tankorId)
- WHERE tipus <> 0 AND tanev=".__TANEV." AND diakId=%u
- ORDER BY dt, jegyId";
- $v = array($diakId);
- $jegyAdatok = db_query($q, array('fv' => 'getDiakJegyek', 'modul' => 'naplo', 'result' => 'assoc', 'keyfield' => 'jegyId', 'values' => $v), $lr);
-
- $tankorIds = getTankorByDiakId($diakId, __TANEV, array('csakId' => true, 'tolDt' => '', 'igDt' => ''), $lr);
-
- if (is_array($jegyAdatok))
- foreach ($jegyAdatok as $jegyId => $jegyAdat) {
- if (!in_array($jegyAdat['tankorId'], $tankorIds)) $tankorIds[] = $jegyAdat['tankorId'];
- }
- if (is_array($tankorIds) && count($tankorIds) > 0) {
- $q = "SELECT tankorId, targyId, targyNev FROM ".__INTEZMENYDBNEV.".tankor
- LEFT JOIN ".__INTEZMENYDBNEV.".targy USING (targyId)
- WHERE tankorId IN (".implode(',', array_fill(0, count($tankorIds), '%u')).")
- ORDER BY targyNev";
- $tankorTargyak = db_query($q, array(
- 'fv' => 'getDiakJegyek', 'modul' => 'naplo', 'result' => 'assoc', 'keyfield' => 'tankorId', 'values' => $tankorIds
- ), $lr);
- if (!is_array($tankorTargyak)) $tankorTargyak = array();
- } else { $tankorTargyak = array(); }
- $targyJegyei = array();
- foreach ($tankorTargyak as $tankorId => $tAdat) {
- $targyId = $tAdat['targyId']; $targyNev = $tAdat['targyNev'];
- if (!is_array($targyJegyei[$targyId])) $targyJegyei[$targyId] = array('targyNev' => $targyNev);
- }
- foreach ($jegyAdatok as $jegyId => $jegyAdat) {
- $tankorId = $jegyAdat['tankorId'];
- $targyId = $tankorTargyak[$tankorId]['targyId'];
- //$targyNev = $tankorTargyak[$tankorId]['targyNev'];
- list($ev,$ho,$nap) = explode('-',$jegyAdat['dt']);
- $targyJegyei[$targyId][$ev][$ho][] = $jegyId;
- if (
- in_array($jegyAdat['jegyTipus'],array('jegy','féljegy'))
- || $KOVETELMENY[ $jegyAdat['jegyTipus'] ]['átlagolható'] === true
- ) {
- $targyJegyei[$targyId]['osszeg'] += $jegyAdat['jegy']*$suly[$jegyAdat['tipus']];
- $targyJegyei[$targyId]['db'] += $suly[$jegyAdat['tipus']];
- }
- }
- foreach ($targyJegyei as $targyId => $targyAdat)
- if ($targyJegyei[$targyId]['db'] != 0)
- $targyJegyei[$targyId]['atlag'] = number_format($targyJegyei[$targyId]['osszeg'] / $targyJegyei[$targyId]['db'],2,',','');
-
- // Bizonyítvány
- // kikerült innen...
-
- // Dolgozatok lekérdezése
- $dolgozatAdat = getTankorDolgozatok($tankorIds, ($csakTervezett = false));
- // Nem megírt dolgozatok lekérdezése
- if (is_array($dolgozatAdat['dolgozatIds']) && count($dolgozatAdat['dolgozatIds']) > 0) {
- $q = "SELECT dolgozat.dolgozatId, bejelentesDt, dolgozatNev FROM dolgozat LEFT JOIN jegy ON dolgozat.dolgozatId=jegy.dolgozatId AND diakId=%u
- WHERE dolgozat.dolgozatId IN (".implode(',', array_fill(0, count($dolgozatAdat['dolgozatIds']), '%u')).")
- AND diakId IS NULL ORDER BY bejelentesDt";
- $v = mayor_array_join(array($diakId), $dolgozatAdat['dolgozatIds']);
- $nemMegirtDolgozat = db_query($q, array('fv' => 'getDiakJegyek/nem megírt dolgozat', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $v));
- } else {
- $nemMegirtDolgozat = array();
- }
- $targyHianyzoDolgozatai = array();
- for ($i = 0; $i < count($nemMegirtDolgozat); $i++) {
- $dolgozatId = $nemMegirtDolgozat[$i]['dolgozatId'];
- $tankorId = $dolgozatAdat[$dolgozatId]['tankor'][0]['tankorId'];
- $targyId = $tankorTargyak[$tankorId]['targyId'];
- //$targyNev = $tankorTargyak[$tankorId]['targyNev'];
- list($ev,$ho,$nap) = explode('-',$nemMegirtDolgozat[$i]['bejelentesDt']);
- $targyHianyzoDolgozatai[$targyId][$ev][$ho][] = $dolgozatId;
- }
- /* -------------- */
-
- if ($olr == '') db_close($lr);
- $ret = array(
- 'jegyek' => $jegyAdatok, 'targyak' => $targyJegyei,
- 'dolgozat' => $dolgozatAdat, 'hianyzoDolgozatok' => $targyHianyzoDolgozatai
- );
-
- return $ret;
-
- }
-
-?>
diff --git a/mayor-orig/www/include/modules/naplo/osztalyozo/dolgozat.php b/mayor-orig/www/include/modules/naplo/osztalyozo/dolgozat.php
deleted file mode 100644
index 136a1dbd..00000000
--- a/mayor-orig/www/include/modules/naplo/osztalyozo/dolgozat.php
+++ /dev/null
@@ -1,116 +0,0 @@
-<?php
-/*
- Module: naplo
-*/
-
- function getDolgozat($dolgozatId, $olr='') {
-
- global $_TANEV;
-
- if ($olr == '') $lr = db_connect('naplo', array('fv' => 'getDolgozat'));
- else $lr = $olr;
-
- $v = array($dolgozatId);
- // A dolgozat alapadatai
- $q = "SELECT * FROM dolgozat WHERE dolgozatId=%u";
- $Dolgozat = db_query($q, array('fv' => 'getDolgozat', 'modul' => 'naplo', 'values' => $v, 'result' => 'record'), $lr);
- $Dolgozat['diakIds'] = array();
-
- // A dolgozat jegyei
- $q = "SELECT * FROM jegy WHERE dolgozatId=%u AND tipus != 0";
- $ret = db_query($q, array('fv' => 'getDolgozat', 'modul' => 'naplo', 'keyfield' => 'tankorId', 'result' => 'multiassoc', 'values' => $v), $lr);
- $Dolgozat['ertekelt'] = (is_array($ret) && count($ret) > 0);
- if (is_array($ret)) foreach ($ret as $tankorId => $tankorJegyek) {
- for ($j = 0; $j < count($tankorJegyek); $j++) {
- $diakId = $tankorJegyek[$j]['diakId'];
- $tankorDiakJegyek[$tankorId][$diakId][] = $tankorJegyek[$j];
- }
- }
-
- // A dolgozat tankörei
- $q = "SELECT DISTINCT tankorId, targyId, tankorNev
- FROM tankorDolgozat LEFT JOIN ".__INTEZMENYDBNEV.".tankorSzemeszter USING (tankorId)
- LEFT JOIN ".__INTEZMENYDBNEV.".tankor USING (tankorId)
- WHERE tanev=".__TANEV." AND dolgozatId=%u";
- $Dolgozat['tankor'] = db_query($q, array('fv' => 'getDolgozat', 'modul' => 'naplo', 'values' => $v, 'result' => 'indexed'), $lr);
- $Dolgozat['tankorIds'] = array();
- for ($d = 0; $d < count($Dolgozat['tankor']); $d++) $Dolgozat['tankorIds'][] = $Dolgozat['tankor'][$d]['tankorId'];
- $Dolgozat['tanarIds'] = getTankorTanaraiByInterval($Dolgozat['tankorIds'], array('tanev' => __TANEV, 'result' => 'csakId'));
- $Dolgozat['targyId'] = $Dolgozat['tankor'][0]['targyId'];
- for ($i = 0; $i < count($Dolgozat['tankor']); $i++) {
- $tankorId = $Dolgozat['tankor'][$i]['tankorId'];
- $Dolgozat['tankor'][$i]['diakok'] = getTankorDiakjaiByInterval($tankorId, __TANEV);
- foreach ($Dolgozat['tankor'][$i]['diakok']['idk'] as $index => $diakId)
- if (!in_array($diakId, $Dolgozat['diakIds'])) $Dolgozat['diakIds'][] = $diakId;
- $Dolgozat['tankor'][$i]['jegyek'] = $tankorDiakJegyek[$tankorId];
- }
- //$diakTankorIds = getTankorIdsByDiakIds($Dolgozat['diakIds'],array('kovetelmeny'=>array('jegy'))); // miért csak jegy???
- $diakTankorIds = getTankorIdsByDiakIds($Dolgozat['diakIds']);
- $Dolgozat['utkozoDolgozatok'] = getTankorDolgozatok($diakTankorIds, true, date('Y-m-d'), $_TANEV['zarasDt']);
- if ($olr == '') db_close($lr);
-
- return $Dolgozat;
-
- }
-
- function dolgozatTankorHozzarendeles($dolgozatId, $torlendoTankorIds, $ujTankorIds) {
-
-
- $lr = db_connect('naplo');
- if (count($torlendoTankorIds) > 0) {
- // ellenőrizzük, hogy van-e jegy hozzá!
- $q = "SELECT COUNT(jegyId) FROM jegy WHERE dolgozatId=%u
- AND tankorId IN (".implode(',', array_fill(0, count($torlendoTankorIds), '%u')).")";
- $v = $torlendoTankorIds; array_unshift($v, $dolgozatId);
- $num = db_query($q, array('fv' => 'dolgozatTankorHozzarendeles', 'modul' => 'naplo', 'result' => 'value', 'values' => $v), $lr);
- if ($num > 0) {
- $_SESSION['alert'][] = 'message:wrong_data:dolgozatTankorHozzarendeles:Tankör hozzárendelés megszüntetése előtt a jegyeket törölni kell!:jegyek száma '.$num;
- db_close($lr);
- return false;
- }
- $q = "DELETE FROM tankorDolgozat WHERE dolgozatId=%u
- AND tankorId IN (".implode(',', array_fill(0, count($torlendoTankorIds), '%u')).")";
- db_query($q, array('fv' => 'dolgozatTankorHozzarendeles', 'modul' => 'naplo', 'values' => $v), $lr);
- }
- if (($count = count($ujTankorIds)) > 0) {
- foreach ($ujTankorIds as $key => $tankorId) $Val[] = "(%".($key+1)."\$u, %".($count+1)."\$u)";
- array_push($ujTankorIds, $dolgozatId);
- $q = "INSERT INTO tankorDolgozat (tankorId, dolgozatId) VALUES ".implode(',',$Val);
- db_query($q, array('fv' => 'dolgozatTankorHozzarendeles', 'values' => $ujTankorIds, 'modul' => 'naplo'), $lr);
- }
- db_close($lr);
- return true;
-
- }
-
- function dolgozatJegyekTorlese($dolgozatId, $tankorId) {
-
- // Törlendő jegyek lekérdezése - logolás céljából
- $q = "SELECT diakId, jegy, dt FROM jegy WHERE dolgozatId=%u AND tankorId=%u";
- $ret = db_query($q, array('fv' => 'dolgozatJegyekTorlese', 'modul' => 'naplo', 'result' => 'indexed', 'values' => array($dolgozatId, $tankorId)));
- if (!$ret) return false;
-
- for ($i = 0; $i < count($ret); $i++) {
- if (__NAPLOADMIN || (strtotime(_OSZTALYOZO_HATARIDO) <= strtotime($ret[$i]['dt']))) {
- logAction(
- array(
- 'szoveg'=>'Dolgozat jegy törlése: diakId: '.$ret[$i]['diakId'].', tankorId: '.$ret[$i]['tankorId'].', jegy: '.$ret[$i]['jegy'],
- 'table'=>'jegy'
- )
- );
- } else {
- $_SESSION['alert'][] = 'message:deadline_expired:'.$ret[$i]['dt'];
- }
- }
- $q = "DELETE FROM jegy WHERE dolgozatId=%u AND tankorId=%u";
- return db_query($q, array('fv' => 'dolgozatJegyekTorlese', 'modul' => 'naplo', 'values' => array($dolgozatId, $tankorId)));
- }
-
- function dolgozatTorles($dolgozatId) {
-
- $q = "DELETE FROM dolgozat WHERE dolgozatId=%u";
- return db_query($q, array('fv' => 'dolgozatTorles', 'modul' => 'naplo', 'values' => array($dolgozatId)));
-
- }
-
-?>
diff --git a/mayor-orig/www/include/modules/naplo/osztalyozo/stat.php b/mayor-orig/www/include/modules/naplo/osztalyozo/stat.php
deleted file mode 100644
index 26f1dbfd..00000000
--- a/mayor-orig/www/include/modules/naplo/osztalyozo/stat.php
+++ /dev/null
@@ -1,247 +0,0 @@
-<?php
-/*
- module: naplo
-
- * getTargyakByDiakIds($diakIds, $szemeszterAdat, $osztalyId, $sorrendNev) --> SHARED! (bizonyítvány nyomtatás/értesítő)
- * getDiakZarojegyAtlagok($diakIds, $tanev, $szemeszter)
- * getTargyZarojegyAtlagok($diakIds, $tanev, $szemeszter)
- * getTanarokByDiakIds($diakIds, $szemeszterAdat) --> SHARED!
- * getTargyakBySzemeszter($szemeszterAdat) --> SHARED!
- * getTargyAtlagokBySzemeszter($szemeszterAdat)
- * getOsztalyHianyzasOsszesites($szemeszterAdat)
- * getZarojegyStatBySzemeszter($SZA)
-
-*/
-
- function getDiakZarojegyAtlagok($diakIds, $tanev, $szemeszter) {
-
- if (count($diakIds)<1) return false;
- $mIdk = getMagatartas();
- $szIdk = getSzorgalom();
- $q = "SELECT diakId,FLOOR(100*AVG(jegy))/100 AS atlag FROM zaroJegy LEFT JOIN targy USING (targyId)
- LEFT JOIN szemeszter ON kezdesDt<=hivatalosDt AND hivatalosDt<=zarasDt
- WHERE diakId IN (".implode(',', array_fill(0, count($diakIds), '%u')).") AND tanev=%u AND szemeszter=%u
- AND jegy != 0 AND zaroJegy.jegyTipus ='jegy' AND targy.targyId NOT IN (".implode(',',array_merge($mIdk,$szIdk)).")
- AND felev = %u
- GROUP BY diakId WITH ROLLUP";
- array_push($diakIds, $tanev, $szemeszter, $szemeszter);
- $r = db_query($q, array('fv' => 'getDiakZarojegyAtlagok', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $diakIds));
- $ret = array();
- $sum = $db = 0;
- for ($i = 0; $i < count($r); $i++) {
- if ($r[$i]['diakId'] == '') {
- $r[$i]['diakId'] = 'osztaly';
- $ret['osztaly'] = floor(100*$r[$i]['atlag'])/100;
- } else {
- //$ret[ $r[$i]['diakId'] ] = floor(100*$r[$i]['atlag'])/100; - elvileg nem lenne baj, de php hiba: pl. 4.64, 4.14, 4.35 hibásan "kerekedik"...
- $ret[ $r[$i]['diakId'] ] = $r[$i]['atlag']; // a lekérdezésben már csonkoltunk...
- $sum += $ret[ $r[$i]['diakId'] ];
- $db++;
- }
- }
- $ret['osztaly'] = ($db==0) ? 0 : floor(100*$sum/$db)/100; // felülírjuk, mert a jegyek átlaga a tárgy átlagoknál már megvan
- return $ret;
- }
-
- function getTargyZarojegyAtlagok($diakIds, $tanev, $szemeszter) {
- /*
- * Az adott szemeszterben szerzett zárójegyek átlaga, de csak szemeszter=felev megfeleltetéssel
- */
- if (count($diakIds)<1) return false;
-
- $q = "SELECT targyId, floor(100*avg(jegy))/100 AS atlag FROM zaroJegy
- LEFT JOIN szemeszter ON kezdesDt<=hivatalosDt AND hivatalosDt<=zarasDt AND felev=szemeszter
- WHERE diakId IN (".implode(',', array_fill(0, count($diakIds), '%u')).") AND tanev=%u AND szemeszter=%u
- AND jegy != 0 AND jegyTipus='jegy' GROUP BY targyId WITH ROLLUP";
- array_push($diakIds, $tanev, $szemeszter);
- $r = db_query($q, array('fv' => 'getTargyZarojegyAtlagok', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $diakIds));
- $ret = array();
- for ($i = 0; $i < count($r); $i++) {
- if ($r[$i]['targyId'] == '') $r[$i]['targyId'] = 'osztaly';
- //$ret[ $r[$i]['targyId'] ] = floor(100*$r[$i]['atlag'])/100; // sql-ben megbízhatóbb a csonkolás működése - sajnos...
- $ret[ $r[$i]['targyId'] ] = $r[$i]['atlag'];
- }
- return $ret;
- }
-
- function getTanarokByDiakIds($diakIds, $szemeszterAdat) {
- //??? 2009. shared lib ?
-
- if (count($diakIds)<1) return false;
-
- // A tárgyak lekérdezése a szemeszterben felvett tankörök alapján (miből lehet zárójegyet kapni)
- $q = "SELECT DISTINCT targyId, TRIM(CONCAT_WS(' ',viseltNevElotag,viseltCsaladinev,viseltUtonev)) AS tanarNev
- FROM tankor LEFT JOIN tankorDiak USING (tankorId) LEFT JOIN tankorTanar USING (tankorId) LEFT JOIN tanar USING (tanarId)
- WHERE diakId IN (".implode(',', array_fill(0, count($diakIds), '%u')).")
- AND (tankorDiak.kiDt IS NULL OR tankorDiak.kiDt>='%s') AND tankorDiak.beDt<='%s'
- AND (tankorTanar.kiDt IS NULL OR tankorTanar.kiDt>='%s') AND tankorTanar.beDt<='%s'";
- array_push($diakIds, $szemeszterAdat['kezdesDt'], $szemeszterAdat['zarasDt'], $szemeszterAdat['kezdesDt'], $szemeszterAdat['zarasDt']);
- return db_query($q, array('debug'=>false,'fv' => 'getTanarokByDiakIds', 'modul' => 'naplo_intezmeny', 'result' => 'multiassoc', 'keyfield' => 'targyId', 'values' => $diakIds));
-
- }
-
- function getTargyakBySzemeszter($szemeszterAdat) {
- // A tárgyak lekérdezése a beírt jegyek alapján (lehet hozott jegy)
- $q = "SELECT DISTINCT targyId,targyNev,targyJelleg, zaroKovetelmeny
- FROM targy LEFT JOIN zaroJegy USING (targyId)
- LEFT JOIN szemeszter ON kezdesDt<=hivatalosDt AND hivatalosDt<=zarasDt
- WHERE tanev=%u AND szemeszter=%u ORDER BY targyNev";
- $v = array($szemeszterAdat['tanev'], $szemeszterAdat['szemeszter']);
- return db_query($q, array('fv' => 'getTargyakBySzemeszter', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v));
- }
-
-
- function getTargyAtlagokBySzemeszter($szemeszterAdat) {
- $q = "SELECT targyId,osztalyId,FLOOR(100*AVG(jegy))/100 AS atlag FROM zaroJegy LEFT JOIN osztalyDiak
- ON (zaroJegy.diakId=osztalyDiak.diakId AND beDt<='%s' AND (kiDt IS NULL OR '%s'<=kiDt))
- LEFT JOIN szemeszter ON kezdesDt<=hivatalosDt AND hivatalosDt<=zarasDt
- AND felev=szemeszter
- WHERE tanev=%u AND szemeszter=%u AND jegy != 0
- AND jegyTipus in ('jegy','magatartas','szorgalom')
- GROUP BY targyId,osztalyId WITH ROLLUP";
- $v = array($szemeszterAdat['zarasDt'], $szemeszterAdat['zarasDt'], $szemeszterAdat['tanev'], $szemeszterAdat['szemeszter']);
- $r = db_query($q, array('fv' => 'getTargyAtlagokBySzemeszter', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v));
- $ret = array();
- for ($i = 0; $i < count($r); $i++)
- if ($r[$i]['targyId'] != '') {
- if ($r[$i]['osztalyId'] == '') $r[$i]['osztalyId'] = 'iskola'; // tárgyanként az összes jegy átlagát írjuk ki
- $ret[ $r[$i]['targyId'] ][ $r[$i]['osztalyId'] ] = $r[$i]['atlag'];
- } else {
- $ret['iskola'] = $r[$i]['atlag']; // nem használjuk - ez az összes jegyek átlaga
- }
- return $ret;
-
- }
-
- function getOsztalyHianyzasOsszesites($szemeszterAdat, $SET = array('telephelyId'=>null)) {
- $ret = array();
- if (is_array($szemeszterAdat)) {
- // Egy szemeszter hiányzási adatainak lekérdezése
- if ($szemeszterAdat['statusz'] == 'aktív') {
- // Mindenféle típus kell?
- $Wnemszamit = defWnemszamit();
- // Folyó tanév - a tanév adatbázisból kérdezünk le
-/* $q = "SELECT osztalyId,
- 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
- FROM `%s`.hianyzas
- ".$Wnemszamit['join']."
- LEFT JOIN osztalyDiak ON (hianyzas.diakId=osztalyDiak.diakId AND beDt<='%s'
- AND (kiDt IS NULL OR '%s'<=kiDt))
- 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 osztalyId WITH ROLLUP";
-*/
- $tanevDbNev = tanevDbNev(__INTEZMENY, $szemeszterAdat['tanev']);
-
- $q = "SELECT osztalyId, SUM(igazolt) AS igazolt, SUM(igazolatlan) AS igazolatlan, SUM(kesesPercOsszeg) AS kesesPercOsszeg,
- SUM(igazolatlanKesesbol) AS igazolatlanKesesbol, SUM(osszesIgazolatlan) AS osszesIgazolatlan FROM
- (SELECT osztalyId,hianyzas.diakId,
- (COUNT(IF(tipus='hianyzas' AND statusz='igazolt',1,NULL)) + IFNULL((SELECT SUM(dbHianyzas) FROM `".$tanevDbNev."`.hianyzasHozott WHERE hianyzasHozott.diakId=hianyzas.diakId AND statusz='igazolt'),0)) AS igazolt,
- (COUNT(IF(tipus='hianyzas' AND statusz='igazolatlan',1,NULL)) + IFNULL((SELECT SUM(dbHianyzas) FROM `".$tanevDbNev."`.hianyzasHozott WHERE hianyzasHozott.diakId=hianyzas.diakId AND statusz='igazolatlan'),0)) AS igazolatlan,
- IFNULL(SUM(IF(tipus='késés' AND statusz='igazolatlan',perc,NULL)),0) AS kesesPercOsszeg,
- SUM(IF(tipus='késés' AND statusz='igazolatlan',perc,NULL)) DIV 45 as igazolatlanKesesbol,
- (
- COUNT(IF(tipus='hianyzas' AND statusz='igazolatlan',1,NULL))+IFNULL((SUM(IF(tipus='késés' AND statusz='igazolatlan',perc,NULL)) DIV 45),0)
- + IFNULL((SELECT SUM(dbHianyzas) FROM `".$tanevDbNev."`.hianyzasHozott WHERE hianyzasHozott.diakId=hianyzas.diakId AND statusz='igazolatlan'),0)
- )
- AS osszesIgazolatlan
- FROM `".$tanevDbNev."`.hianyzas
- LEFT JOIN tankorTipus USING (tankorTipusId)
- LEFT JOIN osztalyDiak ON (hianyzas.diakId=osztalyDiak.diakId AND beDt<='%s' AND (kiDt IS NULL OR '%s'<=kiDt))
- WHERE (tipus = 'hiányzás' OR (tipus='késés' AND statusz='igazolatlan' AND perc IS NOT NULL)) AND dt<='%s' AND hianyzasBeleszamit='igen'
- GROUP BY osztalyId,hianyzas.diakId
- ) AS diakHianyzas GROUP BY osztalyId WITH ROLLUP";
-// $v = array(tanevDbNev(__INTEZMENY, $szemeszterAdat['tanev']), $szemeszterAdat['zarasDt'], $szemeszterAdat['kezdesDt'], $szemeszterAdat['zarasDt']);
-// Csak az záráskori tagokat vegyük figyelembe
- $v = array($szemeszterAdat['zarasDt'], $szemeszterAdat['zarasDt'], $szemeszterAdat['zarasDt']);
- } else {
- // lezárt tanév - az intézmény adatbázisból kérdezünk le - nincs $Wnemszamit !!!
- $q = "SELECT osztalyId, SUM(igazolt) AS igazolt, SUM(igazolatlan) AS igazolatlan, SUM(kesesPercOsszeg) AS kesesPercOsszeg,
- SUM(kesesPercOsszeg DIV 45) AS igazolatlanKesebol, SUM(igazolatlan + (kesesPercOsszeg DIV 45)) AS osszesIgazolatlan
- FROM hianyzasOsszesites
- LEFT JOIN osztalyDiak ON (hianyzasOsszesites.diakId=osztalyDiak.diakId AND beDt<='%s'
- AND (kiDt IS NULL OR '%s'<=kiDt))
- WHERE tanev=%u AND szemeszter=%u
- GROUP BY osztalyId WITH ROLLUP";
-// $v = array($szemeszterAdat['zarasDt'], $szemeszterAdat['kezdesDt'], $szemeszterAdat['tanev'], $szemeszterAdat['szemeszter']);
-// Csak az záráskori tagokat vegyük figyelembe
- $v = array($szemeszterAdat['zarasDt'], $szemeszterAdat['zarasDt'], $szemeszterAdat['tanev'], $szemeszterAdat['szemeszter']);
- }
- $ret = db_query($q, array('fv' => 'getOsztalyHianyzasOsszesites', 'modul' => 'naplo_intezmeny', 'result' => 'assoc', 'keyfield' => 'osztalyId', 'values' => $v));
- }
- return $ret;
- }
-
- function getZarojegyStatBySzemeszter($SZA, $SET = array('telephelyId'=>null)) {
-
- // Le kell kérdezni minden zárójegyet osztályonként
- $tanev = $SZA['tanev'];
- $telephelyId = readVariable($SET['telephelyId'],'id');
-
- $OSZTALYOK = getOsztalyok($tanev,array('result'=>'indexed','telephelyId'=>$telephelyId));
- for ($i=0; $i<count($OSZTALYOK); $i++) {
- $osztalyIdk[] = $OSZTALYOK[$i]['osztalyId'];
- }
- $DIAKIDS = getDiakokByOsztalyId($osztalyIdk, array(
- 'result' => 'multiassoc', 'tanev' => $tanev, 'tolDt' => $SZA['zarasDt'], 'igDt' => $SZA['zarasDt'],
- 'statusz' => array('jogviszonyban van','magántanuló','jogviszonya felfüggesztve','jogviszonya lezárva'))
- );
- $ret['intezmeny'] = array('kituno' => 0, 'jeles' => 0, 'bukott' => 0, 'bukas' => 0, 'atlag' => 0, 'osztalyDb' => 0);
- foreach($DIAKIDS as $osztalyId => $DIAKOK) {
- $diakIds = array();
- $dbDiaknakVanJegye = 0;
- for ($i=0; $i<count($DIAKOK); $i++) $diakIds[] = $DIAKOK[$i]['diakId'];
- $D = getDiakZarojegyek($diakIds, $SZA['tanev'], $SZA['szemeszter'], array('arraymap'=>array('diakId')));
- $O = array('letszam' => count($diakIds), 'kituno' => 0, 'jeles' => 0, 'bukott' => 0, 'bukas' => 0, 'atlag' => 0);
- foreach ($D as $diakId => $dJegyek) {
- $lehetJeles = true; $bukas = 0; $sum = 0; $db = 0;
- for ($i = 0; $i < count($dJegyek); $i++) {
- if (in_array($dJegyek[$i]['jegyTipus'], array('jegy','magatartás','szorgalom'))) { // A statisztika csak a jegy típusra értelmes!
- if ($dJegyek[$i]['jegyTipus'] == 'jegy') {
- $sum += $dJegyek[$i]['jegy'];
- $db++;
- if ($dJegyek[$i]['jegy'] < _JELES_LEGGYENGEBB_JEGY) $lehetJeles = false;
- }
- if ($dJegyek[$i]['jegy'] == 1) {
- $bukas++;
- $ret['intezmeny']['targy'][ $dJegyek[$i]['targyId'] ]++;
- }
- }
- }
- if ($db != 0) { // volt legalább 1 jegy típusú jegye
- $dbDiaknakVanJegye++;
- $atlag = @floor(100 * $sum / $db) / 100;
- $O['atlag'] += $atlag;
- if ($atlag >= _KITUNO_ATLAG) $O['kituno']++;
- elseif ($atlag >= _JELES_ATLAG && $lehetJeles) $O['jeles']++;
- if ($bukas > 0) {
- $O['bukas'] += $bukas;
- $O['bukott']++;
- }
- }
- }
- //if (count($diakIds) > 0) $O['atlag'] = $O['atlag'] / count($diakIds);
- if($dbDiaknakVanJegye>0) $O['atlag'] = floor(100 * $O['atlag'] / $dbDiaknakVanJegye) / 100;
- $ret[$osztalyId] = $O;
- $ret['intezmeny']['kituno'] += $O['kituno'];
- $ret['intezmeny']['jeles'] += $O['jeles'];
- $ret['intezmeny']['bukott'] += $O['bukott'];
- $ret['intezmeny']['bukas'] += $O['bukas'];
- $ret['intezmeny']['atlag'] += $O['atlag'];
- if ($O['atlag'] > 0) $ret['intezmeny']['osztalyDb']++;
- }
- if ($ret['intezmeny']['osztalyDb'] > 0) $ret['intezmeny']['atlag'] = $ret['intezmeny']['atlag'] / $ret['intezmeny']['osztalyDb'];
- return $ret;
-
- }
-
- function getDiakKonferenciaZaradekok($diakIds, $utolsoTanitasiNap) {
-
- return getZaradekokByDiakIds($diakIds, array('tipus' => 'konferencia, konferencia bukás', 'tolDt' => $utolsoTanitasiNap, 'igDt' => $utolsoTanitasiNap));
-
- }
-
-?> \ No newline at end of file
diff --git a/mayor-orig/www/include/modules/naplo/osztalyozo/szempontRendszer.php b/mayor-orig/www/include/modules/naplo/osztalyozo/szempontRendszer.php
deleted file mode 100644
index e2b750f9..00000000
--- a/mayor-orig/www/include/modules/naplo/osztalyozo/szempontRendszer.php
+++ /dev/null
@@ -1,56 +0,0 @@
-<?php
-
- function ujSzempontRendszer($ADAT) {
-
- $kepzesId = readVariable($ADAT['kepzesId'], 'numeric unsigned', 'NULL');
- $targyId = readVariable($ADAT['targyId'], 'numeric unsigned', 'NULL');
- // Az új szempontRendszer felvétele
- $q = "INSERT INTO szempontRendszer (tanev,szemeszter,evfolyamJel,kepzesId,targyId,targyTipus) VALUES (%u, %u, '%s', ";
- $v = array($ADAT['szemeszter']['tanev'], $ADAT['szemeszter']['szemeszter'], $ADAT['evfolyamJel']);
- if ($kepzesId == 'NULL') $q .= "NULL, ";
- else { $q .= "%u, "; $v[] = $kepzesId; }
- if ($targyId == 'NULL') $q .= "NULL, ";
- else { $q .= "%u, "; $v[] = $targyId; }
- if ($ADAT['targyTipus'] == '') $q .= "NULL)";
- else { $q .= "'%s')"; $v[] = $ADAT['targyTipus']; }
-
- $szrId = db_query($q, array('fv' => 'ujSzempontRendszer', 'modul' => 'naplo_intezmeny', 'result' => 'insert', 'values' => $v));
- if (!$szrId) return false;
-
- // A szempontok és minősítések rögzítése
- $Szempont = $aktSz = array();
- for ($i = 0; $i < count($ADAT['txt']); $i++) {
- $txt = trim($ADAT['txt'][$i]);
- if ($txt != '') {
- if (!isset($aktSz['szempont'])) {
- $aktSz['szempont'] = $txt;
- $q = "INSERT INTO szrSzempont (szrId, szempont) VALUES (%u, '%s')";
- $v = array($szrId, $txt);
- $szempontId = db_query($q, array('fv' => 'ujSzempontRendszer/szempont', 'modul' => 'naplo_intezmeny', 'result' => 'insert', 'values' => $v));
- } else {
- $aktSz['minosites'][] = $txt;
- $q = "INSERT INTO szrMinosites (szempontId, minosites) VALUES (%u,'%s')";
- $v = array($szempontId, $txt);
- db_query($q, array('fv' => 'ujSzempontRendszer/minősítés', 'modul' => 'naplo_intezmeny', 'values' => $v));
- }
- } else {
- if (isset($aktSz['szempont'])) {
- $Szempont[] = $aktSz;
- $aktSz = array();
- }
- }
- }
-
- return true;
-
- }
-
- function szempontRendszerTorles($ADAT) {
-
- // cascade-olás miatt törli a hozzá tartozó értékeléseket is!
- $q = "DELETE FROM szempontRendszer WHERE szrId=%u";
- return db_query($q, array('fv' => 'szempontRendszerTorles', 'modul' => 'naplo_intezmeny', 'values' => array($ADAT['szrId'])));
-
- }
-
-?>
diff --git a/mayor-orig/www/include/modules/naplo/osztalyozo/szovegesErtekeles.php b/mayor-orig/www/include/modules/naplo/osztalyozo/szovegesErtekeles.php
deleted file mode 100644
index 803056a7..00000000
--- a/mayor-orig/www/include/modules/naplo/osztalyozo/szovegesErtekeles.php
+++ /dev/null
@@ -1,67 +0,0 @@
-<?php
-
- function ujErtekeles($diakId, $szrId, $targyId, $dt, $minosites, $egyediMinosites) {
-
- // A korábbi értékelés törlése
- $q = "DELETE FROM szovegesErtekeles WHERE diakId=%u AND szrId=%u AND targyId=%u AND dt='%s'";
- $v = array($diakId, $szrId, $targyId, $dt);
- db_query($q, array('fv' => 'ujErtekeles', 'modul' => 'naplo', 'values' => $v));
-
- // Szoveges értékelés felvétele
- $q = "INSERT INTO szovegesErtekeles (diakId, szrId, targyId, dt) VALUES (%u, %u, %u, '%s')";
- $v = array($diakId, $szrId, $targyId, $dt);
- $szeId = db_query($q, array('fv' => 'ujErtekeles', 'modul' => 'naplo', 'result' => 'insert', 'values' => $v));
- if (!$szeId) return false;
-
- // Minősítések felvétele
- if (count($minosites) > 0) {
- $q = "INSERT INTO szeMinosites (szeId,minositesId) VALUES ($szeId,".implode("),($szeId,", array_fill(0, count($minosites), '%u')).")";
- db_query($q, array('fv' => 'ujErtekeles', 'modul' => 'naplo', 'values' => $minosites));
- }
- // Egyedi minősítések felvétele
- if (count($egyediMinosites) > 0) {
- $v = $V = array();
- foreach ($egyediMinosites as $szempontId => $egyediMinosites) {
- $V[] = "(%u, %u, '%s')";
- array_push($v, $szeId, $szempontId, $egyediMinosites);
- }
- $q = "INSERT INTO szeEgyediMinosites (szeId,szempontId,egyediMinosites) VALUES ".implode(',', $V);
- db_query($q, array('fv' => 'ujErtekeles', 'modul' => 'naplo', 'values' => $v));
- }
-
- return true;
- }
-
- function ujZaroErtekeles($diakId, $szrId, $targyId, $tanev, $szemeszter, $minosites, $egyediMinosites) {
-
- // A korábbi értékelés törlése
- $q = "DELETE FROM szovegesErtekeles WHERE diakId=%u AND szrId=%u AND targyId=%u AND tanev=%u AND szemeszter=%u";
- $v = array($diakId, $szrId, $targyId, $tanev, $szemeszter);
- db_query($q, array('fv' => 'ujZaroErtekeles', 'modul' => 'naplo_intezmeny', 'values' => $v));
-
- // Szoveges értékelés felvétele
- $q = "INSERT INTO szovegesErtekeles (diakId, szrId, targyId, dt, tanev, szemeszter) VALUES (%u, %u, %u, CURDATE(), %u, %u)";
- $v = array($diakId, $szrId, $targyId, $tanev, $szemeszter);
- $szeId = db_query($q, array('fv' => 'ujZaroErtekeles', 'modul' => 'naplo_intezmeny', 'result' => 'insert', 'values' => $v));
- if (!$szeId) return false;
-
- // Minősítések felvétele
- if (count($minosites) > 0) {
- $q = "INSERT INTO szeMinosites (szeId,minositesId) VALUES ($szeId,".implode("),($szeId,", array_fill(0, count($minosites), '%u')).")";
- db_query($q, array('fv' => 'ujZaroErtekeles', 'modul' => 'naplo_intezmeny', 'values' => $minosites));
- }
- // Egyedi minősítések felvétele
- if (count($egyediMinosites) > 0) {
- $v = $V = array();
- foreach ($egyediMinosites as $szempontId => $egyediMinosites) {
- $V[] = "(%u, %u, '%s')";
- array_push($v, $szeId, $szempontId, $egyediMinosites);
- }
- $q = "INSERT INTO szeEgyediMinosites (szeId,szempontId,egyediMinosites) VALUES ".implode(',', $V);
- db_query($q, array('fv' => 'ujZaroErtekeles', 'modul' => 'naplo_intezmeny', 'values' => $v));
- }
-
- return true;
- }
-
-?>
diff --git a/mayor-orig/www/include/modules/naplo/osztalyozo/tankor.php b/mayor-orig/www/include/modules/naplo/osztalyozo/tankor.php
deleted file mode 100644
index 8cc06915..00000000
--- a/mayor-orig/www/include/modules/naplo/osztalyozo/tankor.php
+++ /dev/null
@@ -1,205 +0,0 @@
-<?php
-/*
- module: naplo
- version: 3.0
-
- function getJegyek($tankorId, $sulyozas='', $NEVSOR)
-
- function jegyBeiras($tankorId, $tipus, $oraId, $dolgozatId, $tanarId, $Beirando, $actionId) {
- + checkTankorDolgozata()
- + ujDolgozat()
-
- csinálmány: jó lenne, ha nem $Jegyek-nek hívnánk mindent ebben, esetleg elemjeire bonthatnánk a tömböt.
-*/
-
- function getJegyek($tankorId, $tolDt, $igDt, $sulyozas = '', $Diakok = array()) {
-
- global $_TANEV, $KOVETELMENY;
-
- // Diákok lekérdezése
- if (!is_array($Diakok['idk']) || count($Diakok['idk']) == 0) $Diakok = getTankorDiakjaiByInterval($tankorId, __TANEV, $tolDt, $igDt);
- // kezdőértékek
- $Jegyek = array('dolgozatok' => array('lista' => array()), 'tankörök' => array(), 'tanárok' => array('tanarIds' => array()));
- // A tankör adatainak lekérdezése
- list($tankorAdat) = getTankorById($tankorId, __TANEV);
- // Ha nincsenek diákok
- if (!is_array($Diakok['idk']) || count($Diakok['idk']) == 0) {
- $Tanarok = $Jegyek['tankörök'][$tankorId]['tanárok'] = getTankorTanaraiByInterval($tankorId, array('tanev' => __TANEV, 'tolDt' => $tolDt, 'igDt' => $igDt, 'result' => 'nevsor'));
- for ($t = 0; $t < count($Tanarok); $t++) {
- if (!in_array($Tanarok[$t]['tanarId'], $Jegyek['tanárok']['tanarIds'])) {
- $Jegyek['tanárok'][$Tanarok[$t]['tankorId']] = $Tanarok[$t];
- $Jegyek['tanárok']['tanarIds'][] = $Tanarok[$t]['tanarId'];
- $Jegyek['tanárok']['tanarNevek'][] = $Tanarok[$t]['tanarNev'];
- }
- }
- $Jegyek['tankörök'][$tankorId] = $tankorAdat;
- return $Jegyek;
- }
-
-
- if ($sulyozas == '') $suly = array(0,1,1,1,1,1,1);
- else $suly = explode(':', '0:'.$sulyozas);
-
-
- // A diákok tárgyhoz tartozó tankörei
- $q = "SELECT DISTINCT tankorDiak.tankorId, tankorNev, tankor.targyId, felveheto
- FROM ".__INTEZMENYDBNEV.".tankorDiak LEFT JOIN ".__INTEZMENYDBNEV.".tankor USING (tankorId)
- LEFT JOIN ".__INTEZMENYDBNEV.".tankorSzemeszter USING (tankorId)
- WHERE tankor.targyId=%u AND tanev=".__TANEV."
- AND diakId IN ('".implode("','", array_fill(0, count($Diakok['idk']), '%u'))."')
- AND beDt<='%s' AND (kiDt IS NULL OR kiDt>='%s')";
- $v = mayor_array_join(array($tankorAdat['targyId']), $Diakok['idk'], array($igDt, $tolDt));
- $Jegyek['tankörök'] = db_query($q, array('fv' => 'getJegyek (Tankör)', 'modul' => 'naplo_intezmeny', 'result' => 'assoc', 'keyfield' => 'tankorId', 'values' => $v));
- $Jegyek['tanárok']['tanarIds'] = $Jegyek['tanárok']['tanarNevek'] = array();
- if (is_array($Jegyek['tankörök']))
- foreach ($Jegyek['tankörök'] as $_tankorId => $a) {
- $Jegyek['tankörök']['tankorId'][] = $_tankorId;
- $Tanarok = $Jegyek['tankörök'][$_tankorId]['tanárok'] = getTankorTanaraiByInterval($_tankorId, array('tanev' => __TANEV, 'tolDt' => $tolDt, 'igDt' => $igDt, 'result' => 'nevsor'));
- for ($t = 0; $t < count($Tanarok); $t++) {
- if (!in_array($Tanarok[$t]['tanarId'], $Jegyek['tanárok']['tanarIds'])) {
- $Jegyek['tanárok'][$Tanarok[$t]['tankorId']] = $Tanarok[$t];
- $Jegyek['tanárok']['tanarIds'][] = $Tanarok[$t]['tanarId'];
- $Jegyek['tanárok']['tanarNevek'][] = $Tanarok[$t]['tanarNev'];
- }
- }
- }
-
- // ---
- if (count($Diakok['idk']) > 0 && count($Jegyek['tankörök']['tankorId']) > 0) { // Vannak diákok és a diákoknak adott tárgyhoz tankörei - olyankor lehet gond, ha a tankör csak egy korábbi időszakban volt, most már nem aktív
- $q = "SELECT * FROM jegy
- WHERE tankorId IN ('".implode("','", array_fill(0, count($Jegyek['tankörök']['tankorId']), '%u'))."')
- AND tipus <> 0
- AND diakId IN ('".implode("','", array_fill(0, count($Diakok['idk']), '%u'))."')
- ORDER BY jegy.dt, jegy.jegyId";
- $v = mayor_array_join($Jegyek['tankörök']['tankorId'], $Diakok['idk']);
- $ret = db_query($q, array('fv' => 'getJegyek (Tankör)', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $v));
- reset($_TANEV['szemeszter']);
- $szAdat = current($_TANEV['szemeszter']); $szemeszter = $szAdat['szemeszter'];
- foreach ($ret as $i => $a) {
- if (strtotime($a['dt']) > strtotime($szAdat['zarasDt'])) { $szAdat = next($_TANEV['szemeszter']); $szemeszter = $szAdat['szemeszter']; }
- $tipus = $a['tipus'];
- if ($tipus > 2) {
- if (!in_array($a['dolgozatId'], $Jegyek['dolgozatok']['lista'])) {
- list($ev,$ho,$napEsIdo) = explode('-', $a['dt']);
- $Jegyek['dolgozatok']['lista'][] = $a['dolgozatId'];
- $Jegyek['dolgozatok']['dátum szerint'][$ev][$ho][] = $a['dolgozatId'];
- $Jegyek['dolgozatok']['dátum szerint'][$szemeszter][$ev][$ho][] = $a['dolgozatId'];
- $Jegyek['dolgozatok'][$a['dolgozatId']] = array('év' => $ev, 'hó' => $ho, 'szemeszter' => $szemeszter);
- $Jegyek['dolgozatok'][$a['dolgozatId']]['tankorIds'] = array($a['tankorId']);
- $dSzemeszter = $szemeszter; // A dolozat első jegyének szemesztere
- } else {
- $ev = $Jegyek['dolgozatok'][$a['dolgozatId']]['év'];
- $ho = $Jegyek['dolgozatok'][$a['dolgozatId']]['hó'];
- $dSzemeszter = $Jegyek['dolgozatok'][$a['dolgozatId']]['szemeszter'];
- if (!in_array($a['tankorId'], $Jegyek['dolgozatok'][$a['dolgozatId']]['tankorIds'])) $Jegyek['dolgozatok'][$a['dolgozatId']]['tankorIds'][] = $a['tankorId'];
- }
-// $Jegyek[$a['diakId']][$ev][$ho]['dolgozat'][$a['dolgozatId']][] = $a;
- $Jegyek[$a['diakId']][$dSzemeszter][$ev][$ho]['dolgozat'][$a['dolgozatId']][] = $a;
-
- $Jegyek['dolgozatok'][$a['dolgozatId']]['jegyTipus'] = $a['jegyTipus'];
- $Jegyek['dolgozatok'][$a['dolgozatId']]['átlag'] = $Jegyek['dolgozatok'][$a['dolgozatId']]['átlag'] * $Jegyek['dolgozatok'][$a['dolgozatId']]['sulyösszeg'] + $a['jegy']*$suly[$tipus];
- $Jegyek['dolgozatok'][$a['dolgozatId']]['db']++;
- $Jegyek['dolgozatok'][$a['dolgozatId']]['sulyösszeg'] += $suly[$tipus];
- if ($Jegyek['dolgozatok'][$a['dolgozatId']]['sulyösszeg'] != 0)
- $Jegyek['dolgozatok'][$a['dolgozatId']]['átlag'] = $Jegyek['dolgozatok'][$a['dolgozatId']]['átlag'] / $Jegyek['dolgozatok'][$a['dolgozatId']]['sulyösszeg'];
- else
- $Jegyek['dolgozatok'][$a['dolgozatId']]['átlag'] = 0;
- } else {
- list($ev,$ho,$nap) = explode('-',$a['dt']);
- $Jegyek[$a['diakId']][$ev][$ho]['jegyek'][] = $a;
- $Jegyek[$a['diakId']][$szemeszter][$ev][$ho]['jegyek'][] = $a;
- }
- if (
- in_array($a['jegyTipus'],array('jegy','féljegy'))
- || $KOVETELMENY[ $a['jegyTipus'] ]['átlagolható'] === true
- ) {
- $Jegyek[$a['diakId']]['átlag'] = $Jegyek[$a['diakId']]['átlag'] * $Jegyek[$a['diakId']]['sulyösszeg'] + $a['jegy']*$suly[$tipus];
- $Jegyek[$a['diakId']]['db']++;
- $Jegyek[$a['diakId']]['sulyösszeg'] += $suly[$tipus];
-
- if ($Jegyek[$a['diakId']]['sulyösszeg'] != 0)
- $Jegyek[$a['diakId']]['átlag'] = $Jegyek[$a['diakId']]['átlag'] / $Jegyek[$a['diakId']]['sulyösszeg'];
- else
- $Jegyek[$a['diakId']]['átlag'] = 0;
- }
- }
- // Osztályátlag
- $sum = $db = 0;
- foreach ($Jegyek as $diakId => $dAdat)
- if (isset($dAdat['átlag'])) { $sum += $dAdat['átlag']; $db++; }
- if ($db > 0) $Jegyek['átlag'] = $sum / $db;
- } // vannak diákok
-
- // ------------------------------------
- // A tárgycsoporthoz tartozó zárójegyek
- // EZ NEM IDE TARTOZIK! --> share lib
- return $Jegyek;
-
- }
-
- /*
- Ez kerüljön át a share/jegyModifier-be
- */
- function jegyBeiras($tankorId, $tipus, $oraId, $dolgozatId, $tanarId, $megjegyzes, $Beirando, $actionId, $lr) {
-
-
- // ha kell, van megadva dolgozat, ami tényleg a tankörhöz tartozik, vagy 'uj'...
- if ($tipus < 3 || checkTankorDolgozata($tankorId, $dolgozatId)) {
- // Új dolgozat felvétele - ha kell
- if (($tipus > 2) and ($dolgozatId == 'uj')) $dolgozatId = ujDolgozat($tanarId, $tankorId);
- // Jegyek beírása
- $v = $Values = array();
- for ($i = 0; $i < count($Beirando); $i++) {
- /* oraId, dolgozatId 'NULL' stringet is kaphat a hívó függvénytől */
- if ($oraId == 'NULL') {
- if ($dolgozatId == 'NULL') $Values[] = "(%u, '%s', %f, %u, %u, NOW(), %s, %s, '%s',NOW())";
- else $Values[] = "(%u, '%s', %f, %u, %u, NOW(), %s, %u, '%s',NOW())";
- } else {
- if ($dolgozatId == 'NULL') $Values[] = "(%u, '%s', %f, %u, %u, NOW(), %u, %s, '%s',NOW())";
- else $Values[] = "(%u, '%s', %f, %u, %u, NOW(), %u, %u, '%s',NOW())";
- }
- array_push($v, $Beirando[$i]['diakId'], $Beirando[$i]['jegyTipus'], $Beirando[$i]['jegy'], $tipus, $tankorId, $oraId, $dolgozatId, $megjegyzes);
- }
- $q = "INSERT INTO jegy (diakId, jegyTipus, jegy, tipus, tankorId, dt, oraId, dolgozatId, megjegyzes, modositasDt)
- VALUES ".implode(',',$Values);
- $r = db_query($q, array('fv' => 'jegyBeiras', 'modul' => 'naplo', 'values' => $v), $lr);
- if (!$r) return false;
- logAction(
- array(
- 'actionId'=>$actionId,
- 'szoveg'=>"Jegybeírás: $tankorId, $tipus, $oraId, $dolgozatId",
- 'table'=>'jegy'
- )
- );
- } else {
- // dolgozat jegy lenne, de nincs dolgozat megadva, legalábbis nem a tankörhöz tartozó...
- $_SESSION['alert'][] = 'message:wrong_data:jegyBeiras:tipus '.$tipus.':dolgozatId '.$did;
- return false;
- }
-
- return true;
-
- }
-
-
-
-
- // -- 2009
- /* $jegyek[index] = assoc array, melyben a módosuló jegy adatai szerepelnek
- tankorId, targyId, actionId csak a loghoz kell!!! --> (???)
- */
- function jegyLezaras($jegyek, $tankorId, $targyId, $actionId) {
-
- zaroJegyBeiras($jegyek);
- logAction(
- array(
- 'actionId'=>$actionId,
- 'szoveg'=>"Bizonyítvány: $tankorId, $targyId",
- 'table'=>'bizonyitvany'
- )
- );
- return true;
-
- }
-
-?>
diff --git a/mayor-orig/www/include/modules/naplo/osztalyozo/targySorrend.php b/mayor-orig/www/include/modules/naplo/osztalyozo/targySorrend.php
deleted file mode 100644
index c634641a..00000000
--- a/mayor-orig/www/include/modules/naplo/osztalyozo/targySorrend.php
+++ /dev/null
@@ -1,55 +0,0 @@
-<?php
- function targySorrendValtas($osztalyId, $sorrendNev, $targyId, $irany = 'fel') {
-
- // A tárgy aktuális sorszámát lekérdezzük...
- $q = "SELECT sorszam FROM targySorszam WHERE osztalyId=%u AND targyId=%u AND sorrendNev='%s'";
- $v = array($osztalyId, $targyId, $sorrendNev);
- $s = db_query($q, array('fv' => 'targySorrendValtas', 'modul' => 'naplo', 'result' => 'value', 'values' => $v));
-
- $q = "UPDATE targySorszam SET sorszam=%u-sorszam WHERE osztalyId=%u AND sorrendNev='%s' AND sorszam IN (%u, %u)";
- if ($irany == 'fel' && $s > 0) $v = array((2*$s-1), $osztalyId, $sorrendNev, $s, ($s-1));
- elseif ($irany == 'le') $v = array((2*$s+1), $osztalyId, $sorrendNev, $s, ($s+1));
- else return false;
-
- return db_query($q, array('fv' => 'targySorrendValtas', 'modul' => 'naplo', 'values' => $v));
-
- }
-
- function checkTargySor($osztalyId, $sorrendNev, $Targyak) {
-
- $q = "SELECT COUNT(sorszam) AS db FROM targySorszam WHERE osztalyId=%u AND sorrendNev='%s'";
- $v = array($osztalyId, $sorrendNev);
- $db = db_query($q, array('fv' => 'checkTargySor', 'modul' => 'naplo', 'result' => 'value', 'values' => $v));
- if ($db == 0 && count($Targyak) > 0) {
- // feltöltjük
- $v = $V = array();
- for ($i = 0; $i < count($Targyak); $i++) {
- $V[] = "(%u, %u, '%s', %u)";
- array_push($v, $osztalyId, $Targyak[$i]['targyId'], $sorrendNev, $i);
- }
- $q = "INSERT INTO targySorszam (osztalyId, targyId, sorrendNev, sorszam) VALUES ".implode(',', $V);
- db_query($q, array('fv' => 'checkTargySor', 'modul' => 'naplo', 'values' => $v));
- }
-
- }
-
- function ujTargySorrend($osztalyId, $sorrendNev, $targyIds) {
-
- $q = "DELETE FROM targySorszam WHERE osztalyId=%u AND sorrendNev='%s'";
- db_query($q, array('fv' => 'usTargySorrend', 'modul' => 'naplo', 'values' => array($osztalyId, $sorrendNev)));
-
- if (count($targyIds) > 0) {
- $v = $V = array();
- for ($i = 0; $i < count($targyIds); $i++) {
- $V[] = "(%u, %u, '%s', %u)";
- array_push($v, $osztalyId, $targyIds[$i], $sorrendNev, $i);
- }
- $q = "INSERT INTO targySorszam (osztalyId, targyId, sorrendNev, sorszam) VALUES ".implode(',', $V);
- db_query($q, array('fv' => 'usTargySorrend', 'modul' => 'naplo', 'values' => $v));
- }
-
- return true;
-
- }
-
-?>
diff --git a/mayor-orig/www/include/modules/naplo/osztalyozo/vizsga.php b/mayor-orig/www/include/modules/naplo/osztalyozo/vizsga.php
deleted file mode 100644
index 9849255d..00000000
--- a/mayor-orig/www/include/modules/naplo/osztalyozo/vizsga.php
+++ /dev/null
@@ -1,138 +0,0 @@
-<?php
-
- function vizsgajelentkezes($ADAT) {
-
- $q = "INSERT INTO vizsga (diakId, targyId, evfolyam, evfolyamJel, felev, tipus, jelentkezesDt) VALUES (%u, %u, %u, '%s', %u, '%s', '%s')";
- $v = array($ADAT['diakId'], $ADAT['targyId'], $ADAT['evfolyam'], $ADAT['evfolyamJel'], $ADAT['felev'], $ADAT['vizsgaTipus'], $ADAT['jelentkezesDt']);
- return db_query($q, array('modul' => 'naplo_intezmeny', 'fv' => 'vizsgajelentkezes', 'result' => 'insert', 'values' => $v));
-
- }
-
- function vizsgaIdopontRogzites($VD) {
-
-
- foreach ($VD as $vizsgaId => $vizsgaDt) {
- $vizsgaAdat = getVizsgaAdatById($vizsgaId);
- if ($vizsgaAdat['vizsgaDt'] == '') {
- $q = "UPDATE vizsga SET vizsgaDt='%s' WHERE vizsgaId=%u";
- $v = array($vizsgaDt, $vizsgaId);
- db_query($q, array('modul' => 'naplo_intezmeny', 'fv' => 'vizsgaIdopontRogzites', 'values' => $v));
- } else {
- $_SESSION['alert'][] = 'message:wrong_data:már van vizsgaDt:vizsgaId='.$vizsgaId;
- }
- }
-
- }
-
- function vizsgaHalasztas($HD) {
-
- global $ZaradekIndex;
-
- foreach ($HD as $vizsgaId => $halasztasDt) {
- $vizsgaAdat = getVizsgaAdatById($vizsgaId);
- if ($vizsgaAdat['vizsgaDt'] != '' && strtotime($vizsgaAdat['vizsgaDt']) < strtotime($halasztasDt) && !isset($vizsgaAdat['zaradekId'])) {
- // vizsgahalasztás záradékai
- $zaradekIndex = $ZaradekIndex['vizsga halasztás'][ $vizsgaAdat['tipus'] ];
- $Z = array(
- 'zaradekIndex' => $zaradekIndex,
- 'diakId' => $vizsgaAdat['diakId'],
- 'dt' => date('Y-m-d'),
- 'csere' => array('%igDt%' => $halasztasDt)
- );
- $zaradekId = zaradekRogzites($Z);
- // eredeti vizsga záradékolása
- $q = "UPDATE vizsga SET zaradekId=%u WHERE vizsgaId=%u";
- $v = array($zaradekId, $vizsgaId);
- db_query($q, array('modul' => 'naplo_intezmeny', 'fv' => 'vizsgaHalasztas/záradékolás', 'values' => $v));
- // új vizsga felvétele
-// $q = "INSERT INTO vizsga (diakId, targyId, evfolyam, felev, tipus, jelentkezesDt, vizsgaDt) VALUES (%u, %u, %u, %u, '%s', '%s', '%s')";
-// $v = array($vizsgaAdat['diakId'], $vizsgaAdat['targyId'], $vizsgaAdat['evfolyam'], $vizsgaAdat['felev'], $vizsgaAdat['tipus'], $vizsgaAdat['jelentkezesDt'], $halasztasDt);
-// A halasztáskor megadott dátum nem a vizsga dátuma, hanem egy határidő, amíg le kell tenni a vizsgát.
- $q = "INSERT INTO vizsga (diakId, targyId, evfolyam, evfolyamJel, felev, tipus, jelentkezesDt) VALUES (%u, %u, %u, '%s', %u, '%s', '%s')";
- $v = array($vizsgaAdat['diakId'], $vizsgaAdat['targyId'], $vizsgaAdat['evfolyam'], $ADAT['evfolyamJel'], $vizsgaAdat['felev'], $vizsgaAdat['tipus'], $vizsgaAdat['jelentkezesDt']);
- db_query($q, array('modul' => 'naplo_intezmeny', 'fv' => 'vizsgajelentkezes', 'result' => 'insert', 'values' => $v));
-
- } else {
- $_SESSION['alert'][] = 'message:wrong_data:még nincs vizsgaDt, vagy korábbi, mint a halasztás dátuma:vizsgaId='.$vizsgaId;
- }
- }
-
- }
-
- function vizsgaErtekeles($jegyek) {
-
- global $KOVETELMENY, $ZaradekIndex;
-
- if (is_array($jegyek)) foreach ($jegyek as $vizsgaId => $jegyAdat) {
- $vizsgaAdat = getVizsgaAdatById($vizsgaId);
- // A beírandó jegy adatai szinkronban kell legyenek a vizsga adataival
- $jegyAdat['felev'] = $vizsgaAdat['felev'];
- $jegyAdat['diakId'] = $vizsgaAdat['diakId'];
- $jegyAdat['targyId'] = $vizsgaAdat['targyId'];
- $jegyAdat['evfolyamJel'] = $vizsgaAdat['evfolyamJel'];
- $jegyAdat['evfolyam'] = $vizsgaAdat['evfolyam'];
-
- $targyAdat = getTargyById($vizsgaAdat['targyId']);
- $bukas = (in_array($jegyAdat['jegy'], $KOVETELMENY[ $jegyAdat['jegyTipus'] ]['sikertelen']));
- if ($vizsgaAdat['vizsgaDt'] != '' && !isset($vizsgaAdat['zaroJegyId']) && !isset($vizsgaAdat['zaradekId'])) {
- // vizsga értékelés záradékai
- if ($bukas) {
- if ($jegyAdat['jegyTipus'] != 'jegy'
- && $jegyAdat['jegyTipus'] != 'féljegy'
- && $vizsgaAdat['tipus'] == 'javítóvizsga') {
- $zaradekIndex = $ZaradekIndex['vizsga'][$vizsgaAdat['tipus'].' nem teljesített'];
- } else {
- $zaradekIndex = $ZaradekIndex['vizsga'][$vizsgaAdat['tipus'].' bukás'];
- }
- } else {
- $zaradekIndex = $ZaradekIndex['vizsga'][ $vizsgaAdat['tipus'] ];
- }
- $Z = array(
- 'zaradekIndex' => $zaradekIndex,
- 'diakId' => $vizsgaAdat['diakId'],
- 'dt' => $vizsgaAdat['vizsgaDt'], // date('Y-m-d'),
- 'csere' => array(
- '%tantárgy%' => $targyAdat['targyNev'],
- '%dátum%' => str_replace('-','.',$vizsgaAdat['vizsgaDt']),
- '%osztályzat%' => $KOVETELMENY[ $jegyAdat['jegyTipus'] ][ $jegyAdat['jegy'] ]['rovid'].' ('.$KOVETELMENY[ $jegyAdat['jegyTipus'] ][ $jegyAdat['jegy'] ]['hivatalos'].')',
- '%évfolyam%' => $vizsgaAdat['evfolyamJel'] . (($jegyAdat['felev'] == 2) ? '.':'. ('.$jegyAdat['felev'].'. félév)') // +1 - vajon miért volt?
- )
- );
- // Ez hibás így!
- // - lehet, hogy több tárgyból is bukott! Akkor egy sikeres javítóvizsga nem jelenti azt, hogy tovább léphet
- if ($vizsgaAdat['tipus'] == 'javítóvizsga' && !$bukas) $Z['csere']['%évfolyam%'] = getKovetkezoEvfolyamJel($vizsgaAdat['evfolyamJel']).'.'; // következő évfolyamba léphet
- $zaradekId = zaradekRogzites($Z);
- // vizsga zárójegyének beírása
- $jegyAdat['dt'] = $vizsgaAdat['vizsgaDt']; // -- ez elavult
- $jegyAdat['hivatalosDt'] = $vizsgaAdat['vizsgaDt'];
- if ($jegyAdat['evfolyamJel'] != '') $jegyAdat['evfolyam'] = evfolyamJel2evfolyam($jegyAdat['evfolyamJel']);
- $zaroJegyId = zaroJegyBeiras(array($jegyAdat));
- // eredeti vizsga záradékolása és zárójegyhez kötése
- $q = "UPDATE vizsga SET zaradekId=%u, zaroJegyId=%u WHERE vizsgaId=%u";
- $v = array($zaradekId, $zaroJegyId, $vizsgaId);
- db_query($q, array('modul' => 'naplo_intezmeny', 'fv' => 'vizsgaHalasztas/záradékolás', 'values' => $v));
- }
- }
-
- }
-
- function vizsgaTorlese($vizsgaId) {
-
- $v = array($vizsgaId);
-
- // Elároljuk a vizsgához tartozó zárójegyId-t
- $q = "SELECT zaroJegyId FROM vizsga WHERE vizsgaId=%u";
- $zaroJegyId = db_query($q, array('modul' => 'naplo_intezmeny', 'fv' => 'vizsgaTorlese/zárójegy törlése', 'result' => 'value', 'values' => $v));
- // Töröljük a vizsgához tartozó zárasékot - és ezzel a vizsgát is
- $q = "DELETE FROM zaradek WHERE zaradekId=(SELECT zaradekId FROM vizsga WHERE vizsgaId=%u)";
- db_query($q, array('modul' => 'naplo_intezmeny', 'fv' => 'vizsgaTorlese/zárójegy törlése', 'values' => $v));
- // Töröljük az eltárolt vizsgajegyet
- $q = "DELETE FROM zaroJegy WHERE zaroJegyId=%u";
- db_query($q, array('modul' => 'naplo_intezmeny', 'fv' => 'vizsgaTorlese/zárójegy törlése', 'values' => array($zaroJegyId)));
- // Ha netán még nem törlődött volna a függőségek miatt, akkor most töröljük a vizsgát
- $q = "DELETE FROM vizsga WHERE vizsgaId=%u";
- return db_query($q, array('modul' => 'naplo_intezmeny', 'fv' => 'vizsgaTorlese', 'values' => $v));
-
- }
-
-?>