aboutsummaryrefslogtreecommitdiffstats
path: root/mayor-orig/mayor-naplo/www/policy/private
diff options
context:
space:
mode:
authorM.Gergo2019-11-10 09:46:32 +0100
committerM.Gergo2019-11-10 09:46:32 +0100
commit4047b31240ac0927ee7cc575f272549f445a5b96 (patch)
tree9b71f3a0c75bb4cab7d1b38b720ed2021771fd6c /mayor-orig/mayor-naplo/www/policy/private
parentabd8cfdf391410090842081422f711779978f473 (diff)
downloadmayor-4047b31240ac0927ee7cc575f272549f445a5b96.tar.gz
mayor-4047b31240ac0927ee7cc575f272549f445a5b96.zip
Rev: 4569rev4569
Diffstat (limited to 'mayor-orig/mayor-naplo/www/policy/private')
-rw-r--r--mayor-orig/mayor-naplo/www/policy/private/naplo/admin/import-pre.php13
-rw-r--r--mayor-orig/mayor-naplo/www/policy/private/naplo/admin/import.php3
-rw-r--r--mayor-orig/mayor-naplo/www/policy/private/naplo/import/tantargyFelosztas-pre.php356
-rw-r--r--mayor-orig/mayor-naplo/www/policy/private/naplo/import/tantargyFelosztas.php6
-rw-r--r--mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankor-pre.php12
-rw-r--r--mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendModosito-pre.php14
-rw-r--r--mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/tankorCsoport-pre.php23
-rw-r--r--mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getTankorAdat-pre.php1
-rw-r--r--mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getTankorCsoportAdat-pre.php28
9 files changed, 359 insertions, 97 deletions
diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/import-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/import-pre.php
index bb34046f..3ccabded 100644
--- a/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/import-pre.php
+++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/import-pre.php
@@ -4,15 +4,16 @@ if (_RIGHTS_OK !== true) die();
require_once('include/modules/naplo/share/file.php');
-if (!__NAPLOADMIN) {
+if (__NAPLOADMIN!==true) {
$_SESSION['alert'][] = 'message:insufficient_access';
} else {
+ $dbtable = readVariable($_POST['dbtable'],'string');
+ if (isset($dbtable)) {
+
$mezo_elvalaszto = ' ';
- if (isset($_POST['dbtable'])) {
- $dbtable = $_POST['dbtable'];
- list($db,$table) = explode(':',$dbtable);
- }
+ list($db,$table) = explode(':',$dbtable);
+
//IDEIGLENESEN if (isset($_POST['fileName'])) $fileName = fileNameNormal($_POST['fileName']);
if (isset($_POST['fileName'])) $fileName = ($_POST['fileName']);
$ADATOK = array();
@@ -41,6 +42,8 @@ if (!__NAPLOADMIN) {
} // van file
} // van $table ($db)
+ }
+
} // naploadmin
$TOOL['TableSelect'] = array('tipus'=>'cella','paramName' => 'dbtable', 'post'=>array());
diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/import.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/import.php
index 8edc7d3e..3355d9fd 100644
--- a/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/import.php
+++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/import.php
@@ -15,5 +15,6 @@ if (isset($table)) {
} else {
echo 'Adatfeldolgozás kész.';
}
-} else { echo 'nincs table'; }
+}
+
?>
diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/import/tantargyFelosztas-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/import/tantargyFelosztas-pre.php
index 3e95969f..8605f4e5 100644
--- a/mayor-orig/mayor-naplo/www/policy/private/naplo/import/tantargyFelosztas-pre.php
+++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/import/tantargyFelosztas-pre.php
@@ -1,7 +1,61 @@
<?php
- if (_RIGHTS_OK !== true) die();
+ if (__PORTAL_CODE!=='vmg') die();
+
+ $IMPORT_FILES = array(
+ 'csoportba_jaro_tanulok' => _DATADIR.'/'."csoportba_jaro_tanulok.tsv",
+ 'osztalyba_jaro_tanulok' => _DATADIR.'/'."osztalyba_jaro_tanulok.tsv",
+ 'tantargyfelosztas' => _DATADIR.'/'."ttfimport.tsv",
+ 'orarendiOra' => _DATADIR.'/'."orarendiOra.tsv",
+ 'helyettesitett_tanorak' => _DATADIR.'/'."helyettesitett_tanorak.tsv",
+// 'elmaradt_tanorak' => _DATADIR.'/'."helyettesitett_tanorak.tsv",
+ );
+
+/*
+
+1. Nyilvántartás, Tanulói Adatok, Csoportok, Exportálás, Csoportba Járó tanulók
+
+ _DATADIR.'/'."csoportba_jaro_tanulok.tsv"
+
+ Csoportba Járó Tanulók:
+ Csoport neve Név Oktatási azonosító Osztály
+ 99.9.énekkar-C Allardyce Lilla Rose 71624405564 12.C
+ 99.9.énekkar-C Andrássy Blanka Éva 71614703894 12.C
+ 99.9.énekkar-C Árva Janka 72463346174 09.C
+
+2. Nyilvántartás, Tanulói Adatok, Osztályok, Exportálás, Osztályba járó tanulók
+
+ _DATADIR.'/'."osztalyba_jaro_tanulok.tsv"
+
+ Osztályba Járó Tanulók:
+ Osztály Név Oktatási azonosító
+ 07.A Ambrus Dániel 72644951895
+ 07.A Apjok Balázs 72719658348
+ 07.A Bärnkopf Janka Katalin 72660367200
+
+3. Nyilvántartás, Oktatói Adatok, Tantárgyfelosztás, Export (egyszerű)
+
+ _DATADIR.'/'."ttfimport.tsv"
+
+ Tantárgyfelosztás:
+ Osztály Csoport Tantárgy Óraszám Tanár Összevont óra
+ 12.C 12.c.m+t dráma 1,00 Széles Zsuzsanna Nem
+ 10.E fizika 2,00 Antal Erzsébet Nem
+ 10.2.n.djpr német nyelv 4,00 Dobrosi-Jelinek Piroska Rita Nem
+ 12.2.n.djpr német nyelv 3,00 Dobrosi-Jelinek Piroska Rita Nem
+ 11.D dráma 1,00 Dobrosi-Jelinek Piroska Rita Nem
+4. e-Napló, Tanórák Listája, Excel Export (jobb oldali gomb)
+
+ _DATADIR.'/'."orarendiOra.tsv
+
+ 2019.09.02 1 1 Pintér László (mat) 07.B osztályfőnöki Tanévnyitó-Margitsziget 2019.09.02
+ 2019.09.02 2 2 Pintér László (mat) 07.B osztályfőnöki Tanévnyitó-Margitsziget 2019.09.02
+
+*/
+
+
+ if (_RIGHTS_OK !== true) die();
if (!__NAPLOADMIN) {
$_SESSION['alert'][] = 'page:insufficient_access';
@@ -17,24 +71,16 @@
require_once('include/modules/naplo/share/osztaly.php');
require_once('include/modules/naplo/intezmeny/tankor.php');
+ require_once('include/modules/naplo/haladasi/helyettesites.php');
+
require_once('include/modules/naplo/share/tankorModifier.php');
require_once('include/modules/naplo/share/tankorDiakModifier.php');
-
+ require_once('include/modules/naplo/share/ora.php');
+ require_once('include/modules/naplo/share/oraModifier.php');
$selectedTargyId = $ADAT['selectedTargyId'] = readVariable($_POST['selectedTargyId'],'id');
$selectedTanarId = $ADAT['selectedTanarId'] = readVariable($_POST['selectedTanarId'],'id');
- // dump(get_defined_constants(TRUE));
-
-/*
- if ($action == 'upload') {
- // ez csak képek feltöltésére jó sajnos:
- // mayorFileUpload(array('subdir'=>_DATADIR.'/','filename'=>'ttfimport.tsv'));
- } elseif (isset($_POST['fileName']) && $_POST['fileName'] != '') {
-
- }
-*/
-
$q = "SELECT szemeszterId FROM szemeszter WHERE tanev=%u";
$v = array(__TANEV);
$ADAT['szemeszterek'] = db_query($q, array('fv' => 'pre', 'modul' => 'naplo_intezmeny', 'values' => $v, 'result'=>'idonly'), $lr);
@@ -80,7 +126,7 @@
'10.B' => 106,
'10.C' => 120,
'10.D' => 121,
- '10.E' => 122,
+ '10.E' => 112,
'11.A' => 95,
'11.B' => 96,
'11.C' => 110,
@@ -94,7 +140,7 @@
);
- $fn = fopen(_DATADIR.'/'."ttfimport.tsv","r");
+ $fn = fopen($IMPORT_FILES['tantargyfelosztas'],"r");
while(! feof($fn)) {
/*
0 => string '12.C' (length=4)
@@ -120,7 +166,7 @@
# tankorosztaly kitalálás:
# DIÁK1 -(import)-> kretaOsztalyNev -(osztalyNaplo)-> osztalyId
- $fn = fopen(_DATADIR.'/'."osztalyba_jaro_tanulok.tsv","r");
+ $fn = fopen($IMPORT_FILES['osztalyba_jaro_tanulok'],"r");
while(! feof($fn)) {
$line = (fgets($fn));
if (ord($line[0]) == 32) $line = "\t".trim($line);
@@ -156,13 +202,9 @@
########################################################£
#Csoportba Járó Tanulok:
-
-#0 => string '99.9.énekkar-C' (length=15)
-#1 => string 'Andrássy Blanka Éva' (length=21)
-#2 => string '71614703894' (length=11)
-#3 => string '12.C' (length=4)
- $fn = fopen(_DATADIR.'/'."csoportba_jaro_tanulok.tsv","r");
+ $fn = fopen($IMPORT_FILES['csoportba_jaro_tanulok'],"r");
+
while(! feof($fn)) {
$line = (fgets($fn));
if (ord($line[0]) == 32) $line = "\t".trim($line);
@@ -229,6 +271,49 @@
if ($action == 'do') {
+ $lr_intezmeny = db_connect('naplo_intezmeny');
+
+ // echo '<input type="checkbox" name="nevsorSzinkronFelulir[]" value="'.$D['csoportId'].':####:'.$D['tankorId'].'" />névsor felülír import alapján';
+ for ($i=0; $i<count($_POST['nevsorSzinkronFelulir']); $i++) {
+ list($csoportId,$tankorId) = explode(':####:',$_POST['nevsorSzinkronFelulir'][$i]);
+ if ($csoportId>0 && $tankorId>0) {
+ $csoportNev = $TANKORCSOPORTID2CSOPORTNEV[$csoportId];
+ $_tankorNevExtra = ($csoportNev!='') ? '('.$csoportNev.')' : '';
+ ## 1. lezár
+ $_TANKORDIAK = getTankorDiakjai($tankorId, $lr_intezmeny);
+ for ($j=0; $j<count($_TANKORDIAK['idk']); $j++) {
+ $_diakId = $_TANKORDIAK['idk'][$j];
+ if ($_diakId>0) {
+ $DIAKLEZAR = array(
+ 'tankorId' => $tankorId,
+ 'diakId' => $_diakId,
+ 'tolDt' => $_TANEV['kezdesDt'],
+ 'igDt' => null,
+ 'utkozes' => 'ellenorzes' // 'nemEllenoriz', 'torles' -- a kilépést nem csináljuk meg, ha van jegye, hiányzása!
+ );
+ tankorDiakTorol($DIAKLEZAR, $lr_intezmeny);
+ }
+ }
+ ## 2. felvesz
+ for ($j=0; $j<count($CSOPORTADAT[$csoportNev]['diakIds']); $j++) {
+ $_diakId = $CSOPORTADAT[$csoportNev]['diakIds'][$j];
+ if ($_diakId>0) {
+ $UJTANKORDIAK = array(
+ 'tankorId'=>intval($tankorId),
+ 'tolDt'=>$_TANEV['kezdesDt'],
+ 'igDt'=>$_TANEV['zarasDt'],
+ 'jovahagyva'=>1,
+ 'diakId' => intval($_diakId),
+ 'NO_MIN_CONTROL' => true
+ );
+ tankorDiakFelvesz($UJTANKORDIAK, $lr_intezmeny); // -- TODO lr
+ }
+ }
+ setTankorNev($tankorId, $_tankorNevExtra, $lr_intezmeny);
+ // setTankorNevByDiakok($tankorId, $tankorNevExtra = null, $olr = null); // ha a nevsorok szinkronban vannak
+ ##
+ }
+ }
for ($i=0; $i<count($_POST['ujTankor']); $i++) {
list($csoportId,$tanarId,$osztalyIds,$targyId,$szemeszter_oraszam,$csoportNev) = explode(':####:',$_POST['ujTankor'][$i]);
$_osztalyIds = explode(',',$osztalyIds);
@@ -237,6 +322,7 @@
if ($csoportId>0 && $tanarId>0 && count($_osztalyIds)>0 && $targyId>0) {
// TODO létre kell hozni a tankört majd beléptetni a csoportId - be és a tankortanárba (lásd később)
// 1. új tankör
+ $_tankorNevExtra = ($csoportNev!='') ? '('.$csoportNev.')' : '';
$UJTANKOR = array(
'tanev'=>__TANEV,
'targyId'=>$targyId,
@@ -254,8 +340,12 @@
$UJTANKOR[$k] = $v;
}
- $tankorId = ujTankor($UJTANKOR);
- setTankorNev($tankorId, '('.$csoportNev.')', null);
+ $tankorId = ujTankor($UJTANKOR) or die('FATAL ERROR'.serialize($UJTANKOR));
+ if ($tankorId<=0) {
+ echo '!fatal error';
+ var_dump($UJTANKOR);
+ }
+ setTankorNev($tankorId, $_tankorNevExtra, null);
// 2. tankorcsoport
$q = "insert ignore into tankorCsoport (tankorId,csoportId) VALUES (%u,%u)";
$v = array($tankorId,$csoportId);
@@ -265,9 +355,6 @@
tankorTanarModosit($tankorId, $tanarId, array('tanev'=>__TANEV,'tanevAdat'=>$_TANEV, 'tolDt'=>$_TANEV['kezdesDt'], 'igDt'=>$_TANEV['zarasDt']));
// 4. tagok
- // setTankorNevByDiakok($tankorId, $tankorNevExtra = null, $olr = null); // ha a nevsorok szinkronban vannak
- // setTankorNev($tankorId, null, null);
-
for ($j=0; $j<count($CSOPORTADAT[$csoportNev]['diakIds']); $j++) {
$_diakId = $CSOPORTADAT[$csoportNev]['diakIds'][$j];
if ($_diakId>0) {
@@ -276,12 +363,14 @@
'tolDt'=>$_TANEV['kezdesDt'],
'igDt'=>$_TANEV['zarasDt'],
'jovahagyva'=>1,
- 'diakId' => intval($_diakId)
+ 'diakId' => intval($_diakId),
+ 'NO_MIN_CONTROL' => true
);
tankorDiakFelvesz($UJTANKORDIAK);
}
}
- setTankorNev($tankorId, '('.$csoportNev.')', null);
+ setTankorNev($tankorId, $_tankorNevExtra, $lr_intezmeny);
+ // setTankorNevByDiakok($tankorId, $tankorNevExtra = null, $olr = null); // ha a nevsorok szinkronban vannak
}
}
for ($i=0; $i<count($_POST['tankor2csoport']); $i++) {
@@ -300,7 +389,7 @@
// Óraszám update
$q = "update tankorSzemeszter set oraszam=%f where tankorId=%u AND tanev=%u";
$v = array(floatval($oraszam),intval($tankorId),__TANEV);
- db_query($q, array('fv' => 'csoportinsert', 'modul' => 'naplo_intezmeny', 'values' => $v));
+ db_query($q, array('fv' => 'csoportinsert', 'modul' => 'naplo_intezmeny', 'values' => $v), $lr_intezmeny);
// A csoporttagság frissítése
$csoportNev = $TANKORCSOPORTID2CSOPORTNEV[$csoportId];
@@ -317,13 +406,13 @@
tankorDiakFelvesz($UJTANKORDIAK);
}
}
- setTankorNev($tankorId, '('.$csoportNev.')', null);
+ setTankorNev($tankorId, '('.$csoportNev.')', $lr_intezmeny);
}
}
-
+ db_close($lr_intezmeny);
}
@@ -354,24 +443,6 @@
// dump($ADAT['osztalyDiak']);
-## az összegyűjtott adatok alapján az végeredmény
-/*
-array (size=11)
- 0 => string '' (length=0)
- 1 => string '12.6.m.va3' (length=10)
- 2 => string 'matematika' (length=10)
- 3 => string '3,00' (length=4)
- 4 => string 'Volf Annamária' (length=15)
- 5 => string 'Nem' (length=3)
- 'oraszam' => float 3
- 'targyId' => int 6
- 'tankorCsoport' =>
- array (size=1)
- 0 => string '4368' (length=4)
- 'tanarId' => string '131' (length=3)
- 'tankorCn' => string ':4368&6&131&3' (length=13)
-*/
-
for ($i=0; $i<count($ADAT['ttf']); $i++) {
$ADAT['ttf'][$i]['oraszam'] = floatval(str_replace(',','.',$ADAT['ttf'][$i][3]));
if ($KRETATARGYNEV2TARGYID[$ADAT['ttf'][$i][2]]<=0) {
@@ -424,23 +495,35 @@ AND csoportNev = '%s'
GROUP BY tankor.tankorId";
$v = array(__TANEV,1,$_D['targyId'],$_D['oraszam'],$_D['tanarId'],$_D['csoportNev']);
$r = db_query($q,array('modul'=>'naplo_intezmeny','values'=>$v,'result'=>'indexed'));
+
if (count($r) == 1) {
// echo 'OK, a talált tankör';
$_D['tankorId'] = $r[0]['tankorId'];
$_D['action'] = 'done';
} elseif (count($r)>1) {
- // ha van legalább egy találat, akkor kihagyjuk ezt a sort, esetleg megjegyezhetjuk, hogy neki már ezek a párjai lehetnek/vannak
- // echo 'több találat van';
- // specifikálni kell tovább (pl. van csoporthozzárendelés?) ugyanolyan?
$_D['action'] = 'tankorHozzarendel';
// ha nincs
for ($j=0; $j<count($r); $j++) {
$_D['displayTankor'][] = $r[$j];
}
} else {
+
+// Belerakjuk azon tanköröket is, ahol vélhetően csak a csoport hozzárendelés hiányzik
+ $q = "select *,tankorSzemeszter.tankorId AS tankorId from tankorSzemeszter
+LEFT JOIN tankor USING (tankorId)
+LEFT JOIN tankorTanar ON (tankorTanar.tankorId=tankor.tankorId AND beDt<=NOW() AND (kiDt is null or kiDt>=NOW()))
+LEFT JOIN ".__TANEVDBNEV.".tankorCsoport ON (tankor.tankorId = tankorCsoport.tankorId)
+LEFT JOIN ".__TANEVDBNEV.".csoport USING (csoportId)
+WHERE tanev=%u AND szemeszter=%u AND targyId=%u AND oraszam=%f AND tanarId=%u
+AND csoportNev IS NULL
+GROUP BY tankor.tankorId";
+ $v = array(__TANEV,1,$_D['targyId'],$_D['oraszam'],$_D['tanarId']);
+ $rx = db_query($q,array('modul'=>'naplo_intezmeny','values'=>$v,'result'=>'indexed'));
+ for ($j=0; $j<count($rx); $j++) {
+ $_D['displayTankor'][] = $rx[$j];
+ }
+
// Ha nincs találat, ezek a tankörök felelhetnek még meg:
- // nincs még tanár hozzárendelve:
- // select * from tankorSzemeszter LEFT JOIN tankor USING (tankorId) LEFT JOIN tankorTanar ON (tankorTanar.tankorId=tankor.tankorId AND beDt<=NOW() AND (kiDt is null or kiDt>=NOW())) WHERE tanev=2019 AND szemeszter=1 AND targyId=6 AND oraszam=5 AND tanarId IS NULL GROUP BY tankor.tankorId ;
$_M = array();
if (is_array($ADAT['csoportAdat'][$_D[0]]['osztalyok']) && is_array($ADAT['csoportAdat'][$_D[1]]['osztalyok'])) {
$_M = array_merge(
@@ -457,7 +540,7 @@ GROUP BY tankor.tankorId";
if (!is_array($_M) || count($_M)==0 || is_null($_M)) {
$_M = array(0);
- $_SESSION['alert'][] = 'info:nincsenek osztályok:'.serialize($_D);
+ // $_SESSION['alert'][] = 'info:import_nincsenek osztályok:'.serialize($_D);
}
$q = "select *,tankorSzemeszter.tankorId AS tankorId from tankorSzemeszter
LEFT JOIN tankor USING (tankorId)
@@ -510,42 +593,153 @@ GROUP BY tankor.tankorId ORDER BY tankorNev";
// ami a csoportban levő legbővebb halmazúvá teszi a névsorokat
}
-/*
-Csoportba Járó Tanulók:
-Csoport neve Név Oktatási azonosító Osztály
-99.9.énekkar-C Allardyce Lilla Rose 71624405564 12.C
-99.9.énekkar-C Andrássy Blanka Éva 71614703894 12.C
-99.9.énekkar-C Árva Janka 72463346174 09.C
+ ////////////////////////////////////////////////////ORA
+
+ // dt, ora, ki, kit, tankorId, teremId, leiras, tipus, eredet, feladatTipusId, munkaido, modositasDt
+
+ // https://klik035242001.e-kreta.hu/Orarend/TanoraKereso --> TanoraTablazat
+ /*
+ 0 => string '2019.09.02' (length=10)
+ 1 => string '1' (length=1) ora
+ 2 => string '1' (length=1) oraszam
+ 3 => string 'Pintér László (mat)' (length=22) tanár vagy(!) helyettesítő
+ 4 => string '' (length=0)
+ 5 => string '07.B' (length=4) csoport
+ 6 => string 'osztályfőnöki' (length=16) targy
+ 7 => string 'Tanévnyitó-Margitsziget' (length=25) leiras
+ 8 => string '2019.09.02' (length=10)
+ */
+
+ // MaYoR: csoportId+targyId+tanarId => tankorId;
+
+ $lr_naplo = db_connect('naplo');
+
+ $q = "select csoportId, targyId, tanarId, tankor.tankorId FROM tankorCsoport LEFT JOIN csoport USING (csoportId) LEFT JOIN intezmeny_vmg.tankor USING (tankorId) LEFT JOIN intezmeny_vmg.tankorTanar ON (tankor.tankorId = tankorTanar.tankorId AND beDt>='2019-09-01' AND (kiDt IS NULL or kiDt>=NOW()))";
+ $r = db_query($q, array('fv' => 'pre', 'modul' => 'naplo', 'values' => $v, 'result'=>'indexed'),$lr_naplo);
+ for ($i=0; $i<count($r); $i++) {
+ $d = $r[$i];
+ $TRIPLE2TANKOR[$d['csoportId']][$d['targyId']][$d['tanarId']] = $d['tankorId'];
+ }
+
+ // dump($TRIPLE2TANKOR);
+ $fn = fopen($IMPORT_FILES['orarendiOra'],"r");
-Osztályba Járó Tanulók:
+ while(! feof($fn)) {
+ $line = (fgets($fn));
+ if (ord($line[0]) == 32) $line = "\t".trim($line);
+ else $line = trim($line);
+ $result = explode("\t",$line);
+ // $X[] = $result;
+ if ($TRIPLE2TANKOR[$CSOPORT2ID[$result[5]]][$KRETATARGYNEV2TARGYID[$result[6]]][$TANAR2ID[$result[3]]]>0) {
+ $X = array(
+ 'dt'=>str_replace('.','-',$result[0]),
+ 'ora' => $result[1],
+ '_csoportId' => $CSOPORT2ID[$result[5]],
+ '_targyId' => $KRETATARGYNEV2TARGYID[$result[6]],
+ 'ki' => $TANAR2ID[$result[3]],
+ 'tankorId' => $TRIPLE2TANKOR[$CSOPORT2ID[$result[5]]][$KRETATARGYNEV2TARGYID[$result[6]]][$TANAR2ID[$result[3]]],
+ 'teremId' => null,
+ 'leiras' => $result[7],
+ 'tipus' => 'normál',
+ 'eredet' => 'órarend',
+ 'munkaido'=>'lekötött'
+ );
+ // ora kulcs (dt+ora+ki+tankorId)
+ // ha van bent leiras nelkuli, kitolthetjuk
+ $q = "UPDATE ora SET leiras ='%s' WHERE dt='%s' AND ora=%u AND ki=%u AND tankorId=%u AND (leiras IS NULL or leiras='')";
+ $v = array($X['leiras'],$X['dt'],$X['ora'],$X['ki'],$X['tankorId']);
+ db_query($q, array('fv' => 'pre', 'modul' => 'naplo', 'values' => $v, 'result'=>'insert'), $lr_naplo);
+ // ha van bent leirasos, skippelhetjuk
+
+ $q = "SELECT count(*) AS db FROM ora WHERE dt='%s' AND ora=%u AND ki=%u AND tankorId=%u";
+ $v = array($X['dt'],$X['ora'],$X['ki'],$X['tankorId']);
+ $db = db_query($q, array('fv' => 'pre', 'modul' => 'naplo', 'values' => $v, 'result'=>'value'), $lr_naplo);
+ if ($db!==false && $db==0) {
+ ujOraFelvesz($X,$lr_naplo);
+ }
-Osztály Név Oktatási azonosító
-07.A Ambrus Dániel 72644951895
-07.A Apjok Balázs 72719658348
-07.A Bärnkopf Janka Katalin 72660367200
+ } // lehet, hogy nincs megfeleltetés, és az is, hogy helyettesített óra volt. Ezt külön file tartalmazza!
+ }
+ fclose($fn);
-Tantárgyfelosztás:
+ $ORATIPUSCONVERT = array(
+ 'Nem szakszerű helyettesítés (felügyelet)' => 'felügyelet',
+ 'Óraösszevonás' =>'összevonás',
+ 'Szakszerű helyettesítés'=>'helyettesítés',
+ );
-Osztály Csoport Tantárgy Óraszám Tanár Összevont óra
-12.C 12.c.m+t dráma 1,00 Széles Zsuzsanna Nem
-10.E fizika 2,00 Antal Erzsébet Nem
-10.2.n.djpr német nyelv 4,00 Dobrosi-Jelinek Piroska Rita Nem
-12.2.n.djpr német nyelv 3,00 Dobrosi-Jelinek Piroska Rita Nem
-11.D dráma 1,00 Dobrosi-Jelinek Piroska Rita Nem
+ $fn = fopen($IMPORT_FILES['helyettesitett_tanorak'],"r");
+// --TODO
+/*
+ 0 => string '2019. 09. 04. 10:00' (length=19)
+ 1 => string 'Szerda' (length=6)
+ 2 => string '3' (length=1)
+ 3 => string 'Elmaradt óra' (length=13)
+ 4 => string 'Takácsi-Nagyné Past Zsuzsanna' (length=31)
+ 5 => string 'Balkayné Kalló Ágnes Zsófia' (length=31)
+ 6 => string 'Nem szakszerű helyettesítés (felügyelet)' (length=44)
+ 7 => string '07.a.e.tnpzs' (length=12)
+ 8 => string 'etika/hit- és erkölcstan' (length=26)
+ 9 => string '111' (length=3)
+ 10 => string 'Megtartott óra' (length=15)
+ 11 => string '-' (length=1)
+ 12 => string 'Tanóra' (length=7)
*/
+/*
+ while(! feof($fn)) {
+ $line = (fgets($fn));
+ if (ord($line[0]) == 32) $line = "\t".trim($line);
+ else $line = trim($line);
+ $result = explode("\t",$line);
+ // $X[] = $result;
+dump($result);
+ if (($_tankorId = $TRIPLE2TANKOR[$CSOPORT2ID[$result[7]]][$KRETATARGYNEV2TARGYID[$result[8]]][$TANAR2ID[$result[4]]])>0) { //csoport-targy-tanar
+ $_dt = str_replace('. ','-',substr($result[0],0,12));
+ $_ora = $result[2];
+ $_ki = $TANAR2ID[$result[5]];
+ $_kit = $TANAR2ID[$result[4]];
+ $_leiras = $result[11];
+ $_tipus = $ORATIPUSCONVERT[$result[6]];
+ $_eredet = 'órarend';
+
+ $q = "SELECT * FROM ora WHERE dt='%s' AND ora=%u AND tankorId=%u";
+ $v = array($_dt,$_ora,$_tankorId);
+ $oraId = db_query($q, array('debug'=>true,'fv' => 'pre', 'modul' => 'naplo', 'values' => $v, 'result'=>'value'), $lr_naplo);
+ if ($oraId>0) { // van már óra
+
+ } else {
+ $FEL = array('dt'=>$_dt,'ora'=>$_ora,'ki'=>$_kit,'tipus'=>'normál','eredet'=>$_eredet,'tankorId'=>$_tankorId);
+ $_oraId = ujOraFelvesz($FEL,$lr_naplo);
+ $_oraAdat = getOraAdatById($_oraId,$lr_naplo);
+ helyettesitesRogzites($_ki.'/'.$_oraId.'/'.$_tipus);
+ updateHaladasiNaploOra($_oraId, $_leiras, 0, '', $_ki, $lr_naplo);
+ }
+ // ora kulcs (dt+ora+ki+tankorId)
+ // ha van bent leiras nelkuli, kitolthetjuk
+ $q = "UPDATE ora SET leiras ='%s' WHERE dt='%s' AND ora=%u AND ki=%u AND tankorId=%u AND (leiras IS NULL or leiras='')";
+ $v = array($X['leiras'],$X['dt'],$X['ora'],$X['ki'],$X['tankorId']);
+ db_query($q, array('fv' => 'pre', 'modul' => 'naplo', 'values' => $v, 'result'=>'insert'), $lr_naplo);
+ // ha van bent leirasos, skippelhetjuk
+
+ $q = "SELECT count(*) AS db FROM ora WHERE dt='%s' AND ora=%u AND ki=%u AND tankorId=%u";
+ $v = array($X['dt'],$X['ora'],$X['ki'],$X['tankorId']);
+ $db = db_query($q, array('fv' => 'pre', 'modul' => 'naplo', 'values' => $v, 'result'=>'value'), $lr_naplo);
+ if ($db!==false && $db==0) {
+ ujOraFelvesz($X,$lr_naplo);
+ }
+
+ } // lehet, hogy nincs megfeleltetés, és az is, hogy helyettesített óra volt. Ezt külön file tartalmazza!
+ }
+*/
+ fclose($fn);
+ db_close($lr_naplo);
+ ##################################################################################
-// $TOOL['tanevSelect'] = array('tipus'=>'cella','paramName' => 'tanev',
-// 'tervezett' => true,
-// 'post' => array('mkId','targyId','tankorId'));
-// $TOOL['munkakozossegSelect'] = array('tipus'=>'cella','paramName' => 'mkId', 'post' => array('tanev'));
$TOOL['targySelect'] = array('tipus'=>'cella', 'paramName' => 'selectedTargyId');
-// $TOOL['diakSelect'] = array('tipus'=>'sor','paramName'=>'diakId', 'post'=>array());
$TOOL['tanarSelect'] = array('tipus'=>'cella','paramName'=>'selectedTanarId');
-// $TOOL['tankorSelect'] = array('tipus' => 'cella','paramName' => 'tankorId', 'post' => array('tanev', 'mkId', 'targyId'));
-// $TOOL['tanevLapozo'] = array('tipus' => 'sor', 'paramName' => 'tanev', 'post' => array('mkId', 'targyId', 'tankorId'), 'tanev' => __TANEV);
getToolParameters();
?> \ No newline at end of file
diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/import/tantargyFelosztas.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/import/tantargyFelosztas.php
index e01360f8..bac83a15 100644
--- a/mayor-orig/mayor-naplo/www/policy/private/naplo/import/tantargyFelosztas.php
+++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/import/tantargyFelosztas.php
@@ -1,12 +1,11 @@
<?php
global $ADAT;
- echo 'Használt kulcs érték párok:';
+# echo 'Használt kulcs érték párok:';
# var_dump($ADAT['kulcsertektar']['osztalyjel2id']);
putTTFimport($ADAT);
-
if (count($ADAT['bug']['targy'])>0)
var_dump($ADAT['bug']['targy']);
@@ -14,4 +13,7 @@
var_dump($ADAT['bug']['diak']);
+
+
+
?> \ No newline at end of file
diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankor-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankor-pre.php
index d6c92121..3cd8dbcb 100644
--- a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankor-pre.php
+++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankor-pre.php
@@ -18,6 +18,7 @@
$ADAT['mkId'] = $mkId = readVariable($_POST['mkId'],'id',null);
$ADAT['targyId'] = $targyId = readVariable($_POST['targyId'],'id',null);
$ADAT['tankorId'] = $tankorId = readVariable($_POST['tankorId'],'id',readVariable($_GET['tankorId'],'id',null));
+ $ADAT['tanarId'] = $tanarId = readVariable($_POST['tanarId'],'id',readVariable($_GET['tanarId'],'id',null));
$_POST['tanev'] = $ADAT['tanev'] = $tanev = readVariable($_POST['tanev'],'numeric unsigned',__TANEV);
if ($tanev!=__TANEV) $_SESSION['alert'][] = 'info:nem az alapértelmezett tanévben vagyunk!';
@@ -40,6 +41,12 @@
$erintettHianyzasDb = hianyzasTankorTipusValtas($ADAT['tankorId'],$ADAT['tankorTipusId'],array('tanev'=>$ADAT['tanev']));
if ($erintettHianyzasDb>0) $_SESSION['alert'][] = 'info:db_hianyzas_tipus_modositas:'.$erintettHianyzasDb;
}
+ if ($tanev == __TANEV) {
+ $csoportId = readVariable($_POST['csoportId'],'id');
+ if ($csoportId>0 && $tankorId>0) {
+ addTankorToTankorCsoport($tankorId,$csoportId);
+ }
+ }
}
break;
case 'tankorTargyModositas':
@@ -194,7 +201,8 @@
$ADAT['tankorId'] = $tankorId;
$ADAT['tanev'] = $tanev;
$ADAT['tankorOsztalyok'] = getTankorOsztalyaiByTanev($tankorId, $tanev, array('tagokAlapjan'=>true,'result'=>'id'));
- $ADAT['tankorCsoportok'] = getTankorCsoport($tanev); // ezt nem használjuk most semmire!
+ $ADAT['tankorCsoportok'] = getTankorCsoport($tanev);
+ $ADAT['tankorTankorCsoportjai'] = getTankorCsoportByTankorId($tankorId);
if ($tanev != '') $SZEMESZTEREK = getSzemeszterek(array('filter' => array("tanev>=$tanev",'tanev<='.($tanev+7))));
@@ -205,7 +213,7 @@
$TOOL['munkakozossegSelect'] = array('tipus'=>'cella','paramName' => 'mkId', 'post' => array('tanev'));
$TOOL['targySelect'] = array('tipus'=>'cella', 'mkId' => $mkId, 'targyak' => $ADAT['targyak'], 'post' => array('mkId', 'tanev'));
// $TOOL['diakSelect'] = array('tipus'=>'sor','paramName'=>'diakId', 'post'=>array());
-// $TOOL['tanarSelect'] = array('tipus'=>'sor','paramName'=>'tanarId', 'post'=>array());
+ $TOOL['tanarSelect'] = array('tipus'=>'sor','paramName'=>'tanarId', 'post'=>array('mkId','targyId','tanev'));
$TOOL['tankorSelect'] = array('tipus' => 'cella','paramName' => 'tankorId', 'post' => array('tanev', 'mkId', 'targyId'));
$TOOL['oldalFlipper'] = array('tipus' => 'cella',
'url' => array('index.php?page=naplo&sub=intezmeny&f=tankorDiak',
diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendModosito-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendModosito-pre.php
index 6d80c3fa..17acc6ff 100644
--- a/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendModosito-pre.php
+++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendModosito-pre.php
@@ -198,9 +198,7 @@
$ADAT['felvehetoTankorok'] = getTankorByOsztalyId($osztalyId,$tanev, array('csakId'=>false,'tolDt'=>$refTolDt, 'igDt'=>$refIgDt, 'tanarral'=>true));
//TEST-TODO
$TANKORIDK = getTankorByOsztalyId($osztalyId, __TANEV, array('csakId' => true, 'tolDt' => $tolDt, 'igDt' => $igDt, 'result' => 'indexed', 'tanarral' => false));
-//TEST
$ADAT['haladasi'] = getOrak($TANKORIDK, array('tolDt'=>$tolDt,'igDt'=>$igDt, 'result'=>'likeOrarend', 'elmaradokNelkul'=>false));
-//TEST
$ADAT['vanHaladasi'] = checkHaladasi(array('tolDt'=>$refTolDt,'igDt'=>$refIgDt));
} elseif ($mkId!='') {
$ADAT['orarend'] = getOrarendByMkId($mkId,array('tolDt'=>$tolDt,'igDt'=>$igDt,'telephely'=>$telephely));
@@ -212,11 +210,15 @@
$TANKOROK['erintett'] = $ADAT['orarend']['tankorok'];
$TANKOROK['mindenByDt'] = $ADAT['orarend']['mindenTankorByDt'];
- $TANKOROK = (is_array($ADAT['orarend']['tankorok']) && is_array($ADAT['haladasi']['tankorok'])) ?
- array_unique(array_merge($ADAT['orarend']['tankorok'],$ADAT['haladasi']['tankorok']))
- :
- $ADAT['orarend']['tankorok'];
+ if (is_array($ADAT['orarend']['tankorok']) && is_array($ADAT['haladasi']['tankorok'])) {
+ $TANKOROK = array_unique(array_merge($ADAT['orarend']['tankorok'],$ADAT['haladasi']['tankorok']));
+ } elseif (is_array($ADAT['haladasi']['tankorok'])) {
+ $TANKOROK = $ADAT['haladasi']['tankorok'];
+ } else {
+ $TANKOROK = $ADAT['orarend']['tankorok'];
+ }
$ADAT['tankorok'] = getTankorAdatByIds($TANKOROK);
+
/* tankörlétszámok */
if (is_array($ADAT['tankorok'])) foreach ($ADAT['tankorok'] as $_tankorId =>$_T) {
$ADAT['tankorLetszamok'][$_tankorId] = getTankorLetszam($_tankorId,array('refDt'=>$tolDt));
diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/tankorCsoport-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/tankorCsoport-pre.php
index 39e04ec0..60060fd2 100644
--- a/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/tankorCsoport-pre.php
+++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/tankorCsoport-pre.php
@@ -14,6 +14,21 @@
if (isset($_POST['osztalyId']) && $_POST['osztalyId'] != '') $osztalyId = $_POST['osztalyId'];
+
+ if ($action == 'tankorCsoportHozzarendesTorles') {
+
+ $HM = readVariable($_POST['hozzarendelesMegszuntetes'],'string');
+ for ($i=0; $i<count($HM); $i++) {
+ list($_csoportId,$_tankorId) = explode(':',$HM[$i]);
+ $_csoportId = readVariable($_csoportId, 'numeric unsigned');
+ $_tankorId = readVariable($_tankorId, 'numeric unsigned');
+
+ tankorCsoportHozzarendelesTorles($_csoportId, $_tankorId);
+
+ }
+ }
+
+
if (isset($osztalyId)) {
$Tankorok = getTankorByOsztalyId($osztalyId, $tanev);
@@ -103,6 +118,8 @@
if ($action != '') {
+
+
$CsA = getTankorCsoportByTankorIds($tankorIds);
$Csoportok = $csTankorIds = array();
foreach ($CsA as $csoportId => $csoportAdat) {
@@ -117,10 +134,16 @@
}
+
+
+
// ----------------- action --------------------- //
}
+
+
+
$ADAT['tankorCsoport'] = getTankorCsoport();
$ADAT['tankorCsoportAdat'] = getTankorCsoportAdat();
diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getTankorAdat-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getTankorAdat-pre.php
index 01571f22..d24fff8e 100644
--- a/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getTankorAdat-pre.php
+++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getTankorAdat-pre.php
@@ -30,6 +30,7 @@
$_JSON['tankorTanar'] = getTankorTanarai($tankorId);
$_JSON['tankorDiak'] = //getTankorDiakjai($tankorId);
getTankorDiakjaiByInterval($tankorId);
+ $_JSON['tankorCsoport'] = getTankorCsoportByTankorId($tankorId,__TANEV,array('csoportNevekkel'=>true));
$_JSON['tankorBlokk'] = getTankorBlokkByTankorId(array($tankorId),__TANEV,array('blokkNevekkel'=>true));
$_JSON['tanmenetId'] = array_pop(getTanmenetByTankorIds(array($tankorId)));
$_JSON['tanmenetAdat'] = getTanmenetAdat($_JSON['tanmenetId']);
diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getTankorCsoportAdat-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getTankorCsoportAdat-pre.php
new file mode 100644
index 00000000..11cd94ce
--- /dev/null
+++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getTankorCsoportAdat-pre.php
@@ -0,0 +1,28 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (__TANAR!==true && __NAPLOADMIN !== true && __TITKARSAG !== true && __VEZETOSEG !== true) return false;
+
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/tanev/tankorCsoport.php');
+ require_once('include/modules/naplo/share/tankorBlokk.php');
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/share/tanmenet.php');
+ require_once('include/modules/naplo/share/tanar.php');
+
+ $tankorCsoportId = readVariable($_POST['tankorCsoportId'], 'id');
+
+ $CSOPORTTANKOR = getTankorCsoportTankoreiByCsoportId($tankorCsoportId);
+
+
+
+
+ $_JSON = array();
+ $_JSON['tankorCsoportId'] = $tankorCsoportId;
+ $_JSON['tankorCsoportAdat'] = getTankorCsoportAdat($tankorCsoportId);
+ $_JSON['tankorCsoportTankorei'] = $CSOPORTTANKOR;
+
+ $_JSON['tankorCsoportNev'] = $_JSON['tankorCsoportAdat'][0]['csoportNev'];
+ $_JSON['visibleData'] = true;
+?> \ No newline at end of file